計測装置をユーザーがソフトウエアで制御できれば、実験の省力化・高速化・定型化・自動化・自律化が可能です。DigitalMicrograph (DM) scriptにより、Gatan社の製品群(Camera, EELS, STEMなど)だけでなくTEM装置も制御できます。
2002年、我々はEELSでエネルギー損失スペクトルをlow-loss, core-loss, low-lossと三重露光して一度に読み出したり(当時まだDualEELSという製品は無かったことに注意してください)、ドリフトを補正するスクリプトを作り、実効的なエネルギー分解能の向上を実現しました(Journal of Microscopy, 2002)。この2002年の論文では、Editorの勧めにしたがって、多重計測、半値幅の計測、ドリフトの計測などのscriptをappendixとして提供しました。私の知る限り、学術論文にDM scriptが最初に掲載された例だと思います。一連の計測を手動で行うことは不可能ではありませんが、スピードや労力などを考えると簡単ではありません。ソフトウエアを作れば、高速かつ桁違いに大量のデータをだれでも取得できるようになります。
データ解析用のソフトウエアとしてはIgor ProやImageJ(FIJI)あるいはPythonの様々なライブラリーがあります。それに対してDMScriptでは、計測と解析を融合させることが容易にできます。例えば、単原子ドーパント(APL 2009)やピコメータオーダーの原子位置計測では、STEM画像を連続して取得していますが、ドリフト量を測って次の画像を観察するときに予想されるドリフト量を加味して走査範囲をずらしていくtrackingを組み込んでいます(Ultramicroscopy 2010)。
私が最初に使ったGatan製品はGatan Imaging Filter model-678 (1993)でした。その後GIF-2000 (2000)が無機材質研究所で導入されたので、EELS用のスクリプトを作成しました。当時は画像検出器はSlow-Scan CCDあるいはMulti-Scan CCD カメラであり、SSCGainNormalizedBinnedAcquireなどのコマンドを使っていました。驚くことにこのコマンドはその後開発されたCCDカメラ(UltraScan)などでも長年動作し、GIF-Tridiem (2005)やGIF-Quantum (2010)でも利用しました。
その後カメラ用検出素子はCCDからCMOSにかわりました。OneView(2019)やGIF-Continuum(2022)では、新たなコマンドとしてCameraAcquire を使うようになりました。また、複数のカメラを一台のPCで制御することもあるため、CameraIDを使ってカメラを切り替える必要がでてきました。CMOSカメラの場合は決まった周期で画像を読み出し続けるContinuous modeで高速に画像取得することもできるようになりました。CameraIDを切り替えるだけで、同じscriptでOneViewもGIF-Continuumもデータが取れたときには、ソフトウエアの進歩に感動し、恩恵に感謝しました。
例えばHRTEMで一般的なThrough Focus像取得を考えてみます。まずカメラで画像を取得するためにEMSetScreenPositionで蛍光版を上げて、対物レンズの焦点を EMChangeFocusで変え、Delayで数秒待たせたのち、TEM像をCameraAcquireで取得、SliceNあるいはicol,irowなどを使って3Dスタックにするとともに、設定枚数を撮影後に入射電子をEMSetBeamBlankedで遮断して試料損傷を防ぎ、撮影条件をimage tagに書き込み、データ名を撮影時間にする、・・・など一連の計測を自動的に行えます(Ultramicroscopy 2012, Ultramicroscopy 2013)。
日立ハイテク・日本電子・Thermo Fisher Scientificの装置は、いずれもEMChangeFocusで対物レンズのfocusが変えられます。その昔(1990年代)TEM装置を制御するPCとGatan装置制御用PCとの間の通信は設定されておらずEMChangeFocusが使えなかった時は、GIF用の加速電圧変調機能を使って(対物レンズの色収差を使って)焦点を変えていました(例えばUltramicroscopy 2003)。
EMChangeFocusによりfocusを変えられますが、引数の単位はメーカーによって異なります。JEOLの場合には対物レンズ電源のbit単位、Thermo Fisher Scientificではnm単位です。2010年以前、Thermo Fisher Scientificでは引数は整数でしたが、その後まもなく実数(例えば0.5 nm)でも受け付けるようになりました。球面収差補正装置を使うようになると、細かな1nm以下のfocus調整が必要になります。
対物レンズの2回非点をScriptで調整することも可能です。例えばRonchigramと呼ばれる電子回折図形を焦点を変えて2枚撮影し、そのフーリエ変換から収差(2次幾何収差まで)を計測し、EMChangeObjectiveStigmationを使って自動で焦点と2回非点を修正するscriptを書いたこともあります(Ultramicroscopy 2017)。
EMGet~EMSet~のコマンド群で、TEM装置の条件の読み出しや制御が可能です。例えば、現在の加速電圧を EMgetHighTensionで取得し、加速電圧に依存するカメラの感度(1電子がどれくらいのCCD/CMOSカウント数になるかの変換係数)を変更することなどを我々の装置では組み込んでいます。そのため、我々の信号強度は「任意単位[arb. unit]」ではなく、「電子数[e-]」になり、試料損傷や量子ノイズを正しく議論できます(科研費の研究成果でもあります)。
残念ながら、DM scriptからTEM装置の全情報を読み出せるわけではありません。電子顕微鏡装置メーカーの制御ソフトウエアがDM scriptからの要求に応えていない場合や、そもそもDMに該当するコマンドが無い場合もあります。例えば、STEM像を取得する場合には収束角や検出角範囲が基本パラメーターですが、DMから直接取得することは困難です。一方、例えばThermo Fisher Scientificが自ら開発しているソフトウエアVeloxでは、取得データに実験条件が詳細にメタデータとして保存されています。Velox上で計測と解析がscript等でできるようになれば(すでにpythonを使ってできると聞いています)、とても便利になるでしょう。
Gatan製品もTEM装置も、新たな製品や機能が提供されています。上述のように、私たちは多重計測してドリフトを補正するEELS用のscriptやDualEELSのような多重計測(2002)、TEM用Through Focus計測(2003)、TEM用多重計測(2013)、STEM用の多重計測(2009, 2010)、低次幾何収差計測(2017)などのほか、プローブ電流の計測scriptも作ってきました。装置に組み込みだれでも使えるようにしています。
これらは研究のために作ったものですが、その後よりsophisticateされた製品が、装置メーカーからリリースされています。最初に述べた3重露光EELS計測の報告後、もっと高速動作するものがDualEELSとして製品化されました。現在はZero-Loss-Peak lock機能として、動的にゼロロスピークのずれを補正できるようになっています。STEMの多重計測は2009年にAPLに発表(2006年の国際顕微鏡学会で発表)しましたが、多重計測・ドリフト補正は、Thermo Fisher Sientific社製ではVelox上でDCFI(Drift Corrected Frame Integration)として製品化されていますし、GatanのOneViewでもドリフト補正が標準機能として提供されています。低次収差を計測するソフトウエアは2017年報告しましたが、全く異なるコンセプトのThermo Fisher ScientificのOpti-STEMの方が優れており、現在はOpti-STEMを使っています。DualEELSする際にLow-lossとcore-lossのfocusが違っていることを指摘し(Microscopy 2017)その違いはscriptを使って補正していたのですが、最新のGIFでは動的に静電レンズを使ってそれを補正(DFM)してくれています。
装置メーカーが開発した便利な機能は、積極的に使った方が良いことは間違いありません。ただし先端計測装置には「完成~開発終了」はなく必ず限界と課題があり、改良の余地と要求があります。例えばCold-FEGを使ってエネルギードリフトを補正し、0.23eVのエネルギー分解が実現しましたが、同じ不安定性はmonochromatorでも問題になり、同様のドリフト補正技術を用いました。最先端計測は材料のニーズを踏まえながら、「できないことをできるようにする」点にあると思っています。ソフトウエア・ハードウエア両方の観点からのアプローチが必要と思います。