4. C-V測定の記述

測定器1台を用いて測定を行う場合の例です。測定器1台の場合は、同じ操作を手動でも実施できますが、測定に長時間かかる場合や、複雑な設定が必要な場合は、LabViewを使用すると楽です。ただし、LabViewのプログラムをするには、対象計測器の取説をよく読んで機能を把握している必要があります。

  1. 計測器の概要
    HP 4284A LCRメータを使用します。この計測器は、自作インダクタのインダクタンスやバラクタ容量を測定するときに重宝します。また、直流電圧バイアス(または直流電流バイアス)を印加しながら、20Hz〜1MHzのLCR値を測定する機能があるため、1台で半導体のC-V特性を調べることができます。

    LCR Meter

  2. ブロックダイアグラムの作成
    1. 関数ブロックの接続
      • 関数パレットから計測器ドライバを捜し、計測器ドライバに含まれている各種関数をブロックダイアグラムウインドウに貼り付ける。
      • 計測器ドライバは、各種の関数の集合となっており、構成や使い方は、計測器メーカによって異なるが、ヘルプ>詳細ヘルプを表示を選んでおくと説明が現れる。
      • 通常は、各種設定毎に関数が用意されていて、これらを制御BUSを表す紫の線とステータスBUS(エラー情報などが出力される)を表す黄色の線を互いに繋ぎ合わせて使用する。
      • 制御命令の送信は、制御BUSの入力から出力方向への接続に従って移っていくようだが、実行タイミングがこの順序になるとは限らないので(開始遅延時間、実行時間は考慮されていない)、実行順序を決めたい場合はフラット・シーケンス(後述)を使用する。
      • 下の例では、各種の測定条件の初期設定(実行順序は気にしない)を行っている。
    2. 入出力器の接続
      • 各関数は、左側と上下に入力端子、右側に出力端子を持っている。
      • 各端子を右クリックするとメニューが表示され、作成メニューの中の定数、制御器、表示器のいずれかを選ぶと、その端子に必要な形式の入出力器が接続される。
      • 定数はダブルクリックして初期値を与えておく。
      • 制御器、表示器を配置すると、フロントパネル・ウインドウに対応するオブジェクトが作成され、フロントパネル上で値の入力や、表示を行う。
      • 配線には、文字列、実数、整数、ブール(論理値)などの型があり、色分けされている。

      [NOTE] 紫の線(制御BUS)には、VISAリソースネーム(GPIB0::17::INSTR のような形式の文字列)を与えます。17の部分が計測器のGPIBアドレスです。USB機器のベンダID, プロダクトID,シリアルNo., TCPIPのホストアドレスなども指定できます。詳しくは、こちらの解説を参照

      Block Diagram 1

    3. 制御シーケンスの作成
      • 実行順序を決めるために、フラット・シーケンス(フィルムの絵)を配置する。
      • 必要なステップ数(フィルムのコマ数)のフレームを用意する。フィルムの枠を右クリックすると、メニューからフレームの追加と削除が選べる。
      • 左から右の順に実行する関数ブロックを貼り付け配線を行う。
      • 下記の例では、DC Bias Level(直流電圧の設定)、Send Trigger(サンプリングのトリガ)、Fetch(測定結果の読み出し)を順に行っている。

    4. ループの作成
      • 電圧掃印や周波数掃印など、パラメータを変更して測定を繰り返す場合には、whileループ(灰色の枠)を使用する。
      • 条件端子(赤丸)、ストップボタン、ループカウンタ(iマーク)が同時に配置される。条件端子を右クリックすると、メニューから、True停止/True継続を選択できる。
      • ここでは、DC Start Voltage, DC Voltage Step,の制御器に設定された値とループカウンタから、ループ毎の電圧値を計算して、電圧値がDC Stop Voltageを超えるまでループを繰り返している。
      • 各ループ毎の電圧値とFetchにより読み取った容量値は、表示器により表示している。
      • LCRメータの出力は、"容量値[F],直列抵抗値[ohm],ステータス" 形式の文字列データなので、これを実数ベクトルに変換するスプレッドシート-文字列変換器で実数に変換してから表示を行う。,はデリミタ、%^.3eは、小数以下3桁の浮動小数点(SI表記)を指定している。

    5. グラフの表示とファイルへの保存
      • グラフとファイルへの書き込みはループを抜けてから実行するため、ループの外に配置する。(ループ毎に行っても良いが)
      • whileループの外にデータを渡す場合は、ループを抜ける時点でデータの授受が行われる。このため、最終ループのデータだけが出力される。
      • ループ毎のデータを全て保存したい場合は、データ線とループ枠の交点の四角を右クリックして、自動指標トンネルを選択する(四角が[]に変更される)。これにより、ループするたびにデータが配列に蓄積される。(ループ毎にグラフに測定点を追加したい場合は、測定結果の経過をグラフに表示させるにはを参照)
      • グラフのオブジェクトは、制御器パレットに用意されているので、フロントパネル上にXYグラフを配置すると、ブロックダイアグラム上に、XYグラフ作成関数とXYグラフのアイコンが表示される。
      • XYグラフのアイコンを右クリック>プロパティで開くと、グラフ表示の各種設定が行える。 計測ファイルへの書き込み処理関数は、関数パレットでExpress>出力から配置することが出来る。右クリックで、データフォーマット、ファイル指定操作などの指定が出来る。
      • 直流電圧値と測定値を一つのファイルに書き込むため、信号の結合関数によりマージを行っている。
      • XYグラフ作成関数や、ファイル書き込み関数への入力は、ダイナミックデータという形式になっているため、実数をそのまま書き込むことはできない。ここでは、実数配列-ダイナミックデータ変換器を挿入している。
      • 上手くキャストが出来ない場合は、配線に×マークがつくので、その付近にマウスカーソルを持って行くと、どのように型変換すべきかヘルプが表示される。

      Block Diagram 2

    6. 終了処理
      • 最後に計測器出力をゼロまたはOFFに変更して、Errorの出力とClose(IEEE488の終了)を実行する。
      • 計測器が出力したエラー番号は、Close関数のエラー出力に表示器を接続して確認することが出来る。

      プログラムが完成したら、初期値を見直し、できるだけ詳しく実行コマンドと入力内容に関するコメントを書いておこう。

      Block Diagram 3

  3. フロントパネルの作成
    フロントパネルは、計測の実行時にユーザインタフェースとして使用するものです。フロントパネル上には、ブロックダイアグラムで作成した、制御器、表示器、グラフなどが配置されていますので、見やすく分類して、できたら、入力値の範囲などコメントを表示して、計測器やDUTを破損しないようにしておいてください。

    Front Pannel

  4. デバッグ
    ブロックダイアグラム・ウインドウのツールバーで、電球アイコンをクリックしてから、実行ボタン(右矢印アイコン)をクリックすると、ブロックダイアグラムに制御の移動を表示しながら低速動作します。エラーが無く関数が実行されるとOKマークがつき、エラーがあるとメッセージが表示されます。多くの場合は、計測器のレンジを超えた値の設定や、オーバロードが原因です。停止ボタンで停めた場合は、終了処理が行われていないので、出力が出たままになっています。本体操作により計測器出力をOFFにする必要があります。

    Debag Tool


up