メニュー
▼ アクセス(地図)
▼ Windowsアプリ開発 ▼ マイコン開発 ▼ CGI・PHP制作 |
▼ サイトマップ(全投稿記事)
▼ タイトル(画像一覧) ▼ 事業内容 |
お問い合わせメールフォームが開きます。
2015年04月27日
Tektronixオシロスコープ制御
Tektronixオシロスコープ: TBS 1052B を制御用のアプリケーションを作ってみました。
ベースとしたのは、通信用ライブラリTekVISAをインストールした際にサンプルとして用意されていたVC++のプロジェクト(下記フォルダ下)です。
C:\Program Files (x86)\IVI Foundation\VISA\WinNT\TekVISA\VisaSamples\simple
これを参考にテキストファイルを読み込んでコマンドを実行できるようにしました。
コマンドは、ユーティリティとして用意されている「OpenChoice Talker Listener」であらかじめ動作確認してテキストファイルに保存しておくだけです。
コマンドについては 「TekVISA Programming Manual」(英文)を参考にしたり、「テクトロニクス社/ケースレーインスツルメンツ社 お客様コールセンター」でアドバイスをいただけます。
<参考:OpenChoice Talker Listenerの画面>
テキストファイル例は下記のようにほとんどがVISAのコマンドそのものを記述したものなります。
ベースとしたのは、通信用ライブラリTekVISAをインストールした際にサンプルとして用意されていたVC++のプロジェクト(下記フォルダ下)です。
C:\Program Files (x86)\IVI Foundation\VISA\WinNT\TekVISA\VisaSamples\simple
これを参考にテキストファイルを読み込んでコマンドを実行できるようにしました。
コマンドは、ユーティリティとして用意されている「OpenChoice Talker Listener」であらかじめ動作確認してテキストファイルに保存しておくだけです。
コマンドについては 「TekVISA Programming Manual」(英文)を参考にしたり、「テクトロニクス社/ケースレーインスツルメンツ社 お客様コールセンター」でアドバイスをいただけます。
<参考:OpenChoice Talker Listenerの画面>
テキストファイル例は下記のようにほとんどがVISAのコマンドそのものを記述したものなります。
USB::0x0****::0x0***::C0******::INSTR
' 波形情報計測用
FACtory
ACQUIRE:STATE STOP
LOCk ALL
HEADer OFF
CH1:PROBE 10
SELECT:CH1 ON
SELECT:CH2 OFF
CH1:SCALE 1E0
CH1:POS -3E0
HORIZONTAL:MAIN:SCALE 5E-4
'
TRIGger:MAIn:EDGE:SOUrce CH1
TRIGger:MAIn:EDGE:SLOpe FALL
TRIGger:MAIn:EDGE:COUPling DC
TRIGger:MAIn:LEVel 2.0E0
TRIGger:MAIn:MODe NORMal
ACQUIRE:STATE RUN
*OPC?
ACQUIRE:STATE STOP
'
MEASUrement:MEAS1:SOURCE1 CH1
MEASUrement:MEAS1:TYPe FREQuency
MEASUrement:MEAS2:TYPe PK2PK
*OPC?
MEASUrement:MEAS1:VALue?
READ
MEASUrement:MEAS2:VALue?
READ
(1行目のデバイスID指定や 「’」、 「READ」 などはアプリケーションで機能追加)
これを今回制作したコンソールアプリケーションで呼び出して実行するとコンソール画面に下記のように出力されます。
実行後は結果のみが下記のようなフォーマットのテキストファイルとして保存されるため、これを読みだして利用できます。
(今回の結果は周波数とピーク値)
1.0080650024414E3
5.0799999237E0
APIを使って直接制御する方法もありますが、今回のようなコマンドスクリプトを使うことで、テキストファイルを任意に書き換えることで計測手順、結果を操作させました。