検索された製品ページを表示しています その他の検索結果:

 

お問い合わせ窓口

[プログラミング] :DIGitizeと:SINGleには、どのような違いがありますか?

アジレント社のオシロスコープには、波形を取り込むコマンドとして、:DIGitizeと:SINGleの2種類のコマンドが備わっています。

大きな違いとして、:SINGleのコマンドは、トリガが掛かる、掛からないに関わらず、次のコマンドを実施します。そのため、トリガ条件に適合した波形の入力が遅く、トリガが掛かる前に、そのまま測定が行われてしまうと、何も波形が入っていないため、正しい測定ができなくなります。:SINGleでは、トリガが掛かったかどうかを調べるルーチンを組み込む必要があります。
また、:SINGleは、アベレージングであっても、1回だけ、波形収集を行い停止します。指定回数のアベレージングをさせる場合には、:DIGitizeを用いてください。

:DIGitizeは、波形のキャプチャが完了するまで、コマンドが完了しないコマンドとなります。プログラムが、キャプチャが完了するまで次のステップに進まないため、トリガがかかったかどうか調べるなどをプログラム上で考慮する必要がありません。ただし、トリガに適合する波形の入力が遅い場合、タイムアウトを長くしないと、:DIGitizeにてタイムアウトエラーが発生します。それ以外については、:Runを1回だけ行いストップするのと等価です。トリガは設定したトリガ条件に従います。また、特徴として、InfiniiVisionシリーズでは、Run相当のコマンドとなりますため、画面の横幅の長さ分だけをメモリに取り込みます。もし、オシロのフルメモリ分(画面表示領域+画面に表示されていない領域)を取る場合は、:SINGleをお使い下さい。

【:DIGitizeの注意点】
:DIGitizeを送った場合、条件に見合うトリガが入り、オシロがキャプチャが完了するまで、他のコマンドが有効になりません。ロックアウトされたようになります。例えば、:DIGitizeの後に、Waveform:data? 等で待っている場合、トリガが入らないと、Waveform:data?はタイムアウトになる可能性があります。
そのため、トリガが入るまでに時間がかかる場合には、Waveform:data?でのタイムアウトを長く設定して下さい。タイムアウトは、ライブラリの関数にて実施します。例えば、VISAというインターフェイス制御用ライブラリの場合、

/* Set I/O timeout to ten seconds */
viSetAttribute(visa,VI_ATTR_TMO_VALUE,10000);

にて、タイムアウトの設定が可能です。

なお、ロックアウト状態になった場合、デバイスクリアを送ることで、:DIGitizeのロックアウト状態が解除できます。デバイスクリアは、ライブラリの関数にて実施します。例えば、VISAというインターフェイス制御用ライブラリの場合、viClear(vi) という関数で実施なされることが出来ます。こちらに関しましては、お使いになられているライブラリのマニュアル、もしくはヘルプ等でご確認下さい。

【お知らせ】
アジレント社では、Windows上のExcel VBAやVisual Basicなどから、GPIB、LAN、USBにて、オシロスコープやスペアナ、ネットアナなどの計測器を制御する際の基礎知識や、計測器制御入門書、Excel VBAやVisual Basicなどの各種言語によるサンプルプログラムをご用意させて頂いております。

http://www.agilent.co.jp/find/sample_program
※ 上記ページより、InfiniiVisionの項目を選択してください。

このサイトでは、制御プログラムを、これらから作り始める方のために、自動計測の基礎知識や、Excel VBAやVisual Basicなどでの一般的なプログラムの作成方法、更に、オシロスコープをはじめとする計測器のサンプルプログラムを公開しています。
一般的なプログラム作成方法の部分は、弊社の計測器に限らず、一般的な測定器を制御する際にも、お役立ていただけるものと思います。