波形のキャプチャ
波形をキャプチャするにはcapruteコマンドを用います。captureコマンドの基本的な書式は、
$ /cosmoz.elf capture <長さ> [オプション]
ですが、captureには様々なサブコマンドがあります。
長さは、通常モードでのサンプリングではデータ数ですが、イベントモードでは終了までの秒数、または、終了までのカウント数になります。
オプションを付けない場合のキャプチャ動作
最初に長さのみ指定して、オプションを付けない場合の動作を示します。
root@cosmoz:~# /cosmoz.elf capture 10 capture success. #Cosmo-Z RawData Text Format 0.7 #xtitle=[us] #xmult=0.012500 #min_x=0 #max_x=10 #min_y=2146 #max_y=2170 #width=640 #height=480 #sampling_rate=80.000000 #chmask=ff #resolution=12 #step chs=8 ------------ 0 2147 2169 2149 2170 2149 2164 2147 2166 1 2147 2169 2149 2170 2150 2165 2148 2165 2 2147 2169 2148 2170 2149 2165 2147 2167 3 2148 2168 2149 2169 2150 2164 2147 2166 4 2148 2169 2150 2169 2149 2164 2147 2166 5 2147 2168 2149 2169 2150 2165 2147 2166 6 2146 2168 2149 2169 2149 2165 2147 2167 7 2147 2168 2150 2170 2150 2164 2148 2165 8 2148 2169 2149 2169 2150 2165 2148 2166 9 2146 2168 2150 2169 2149 2165 2147 2166
のように、サンプリングされたデータを時系列に出力します。デフォルトでは8ch同時サンプリングとなります。上の例では長さが10が指定されているので10ポイントのデータをサンプリングして表示しています。
計測データの前に#が行がいくつかありますが、この中にsampling_rate=80.000000と書かれているため、サンプリング周波数が80MHzであることがわかり、ひとつひとつのデータが12.5ns間隔であることがわかります。
オプション
計測チャネル設定
オプション ch=CHMASK を指定することで特定のチャネルをサンプリングすることが可能になります。この指定はサンプリングしたいチャネルを2進数に見立てたビットを16進数で指定します。
例えば、ch=0x01を指定するとCH1のみをサンプリングし、ch=0xffとするとCH1~CH8をサンプリングします。
CH1,2,5,6,8をサンプリングする場合は、⑧●⑥⑤●●②①とという2進数に見立ててch=0xb3と指定します。
CH9以降をサンプリングしたい場合は、0x100のように9bit目以降のビットを立てます。
Cosmo-Zに拡張ボードを実装して32チャネルでサンプリングしたい場合はch=0xffffffffを指定します。
root@cosmoz:~# /cosmoz.elf capture 10 ch=0xb3
トリガモード指定
オプション trig=TRIGTYPEを使用すると、トリガモードを指定できます。
有効なトリガモードと動作は以下のとおりです。
- auto・・・コマンドが実行されると全体トリガの発生を待たずにサンプリングを開始
- normal・・・全体トリガが発生する待ってからサンプリングを開始
- mesunit・・・lengthに指定された時間(秒)のイベントキャプチャを行う
- event・・・lengthに指定された個数のイベントを計測するまでイベントキャプチャを行う
です。通常の計測で使用するトリガモードはautoかnormalで、mesunitとeventはイベントキャプチャモードで使用します。
タイムアウト指定
normalモードではトリガが発生するまで待機しますが、timeoutオプションを使うことでタイムアウトを設定することが可能になります。
書式は
/cosmoz.elf 1000 trig=normal timeout=10000
のように、ミリ秒単位で書きます。上の例では10秒でタイムアウトします。
ファイルへの保存
captureコマンドの計測結果は画面に表示されますが、fileオプションを使うと結果をファイルに保存することができます。
/cosmoz.elf 1000 file=test01
上の例では、計測結果はtest01というファイル名で保存されます。
なお、ファイルが保存されるディレクトリは/home/share/data となります。現在のCosmo-Zでは変更先フォルダを変更することができません。保存したファイルの形式は計測データのフォーマットのページをご覧ください。
このファイルを読み出して、計測のヘッダを読み出すには/cosmoz.elf fileinfoコマンドを、計測データをテキスト化するには/cosmoz.elf filewaveコマンドを使います。
コメントの追加
ファイルに保存する際に、短いコメントを埋め込むことができます。
root@cosmoz:~# /cosmoz.elf capture 100 file=test02 comment=コメントのテスト capture success. sync start. sync end. capture end.
シーケンシャルモード
maxseqオプションを使うと、1回の計測で終わるのではなく、トリガが発生するたびに複数回の計測を行うことができます。例えば、トリガが発生するたびに10000ポイントの計測を行い、それを200回繰り返すような場合は以下のように指定します。
root@cosmoz:~# /cosmoz.elf capture 10000 ch=0xff file=test03 maxseq=200
この場合、計測データ長は10000×200=2000000になります。