VISA関数
LabVIEW基本講座 ハードウェア編14
LabVIEWのVISA関数を説明します。VISA関数は、LabVIEWでイーサネット/LXI、GPIB、シリアル、USB、PXI、VXI計測器との制御・通信をプログラムができるVI関数です。
![VISA関数](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-palette.png?resize=744%2C339&ssl=1)
VISA関数一覧
VISA関数の中で代表的な関数を紹介します。
VISA制御器
VIフロントパネルの制御器パレットから「I/O」→「VIリソース名」で選択できます。また、VISA関数のVISAリソース名端子を右クリック→「作成」で制御器、定数を作成できます。
VISAリソース名
VISAセッションを開いて、そのセッションとクラスを保持するリソースを指定します。クリックすると選択できるリソース名リストを表示します。
VISAセッションは、リソースとの通信にVISAが使用する固有の論理識別子です。
![VISAリソース名](https://i0.wp.com/peritec-si.com/wp/wp-content/uploads/labview-visa-resourse.png?resize=153%2C38&ssl=1)
VISA
関数パレット→「計測器I/O」から選択できます。
VISA書き込み
VISAリソース名で指定されたデバイスまたはインタフェースに書き込みバッファからのデータを書き込みます。
![VISA書き込み](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-write.png?resize=328%2C47&ssl=1)
VISA読み取り
VISAリソース名で指定されたデバイスまたはインタフェースから指定されたバイト数を読み取り、読み取りバッファにデータを返します。
![VISA読み取り](https://i0.wp.com/peritec-si.com/wp/wp-content/uploads/labview-visa-read-1.png?resize=330%2C58&ssl=1)
VISAクリア
デバイスの入出力バッファをクリアします。
![VISAクリア](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-clear.png?resize=304%2C38&ssl=1)
VISA STB読み取り
VISAリソース名で指定されたメッセージベースのデバイスから、サービス要求のステータスバイト(STB)を読み取ります。
![VISA STB読み取り](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-read-stb.png?resize=314%2C44&ssl=1)
VISAトリガアサート
インタフェースのタイプに応じて、ソフトウェアトリガまたはハードウェアトリガをアサート(有効)します。
![VISAトリガアサート](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-assert-trigger.png?resize=318%2C42&ssl=1)
VISA上級
関数パレット→「計測器I/O」 →「VISA上級」 から選択できます。
VISAを開く
VISAリソース名によって指定されたデバイスに対してセッションを開き、そのデバイスの他の操作を呼び出すのに使用できるセッション識別子を返します。
![VISAを開く](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-open.png?resize=332%2C73&ssl=1)
VISAを閉じる
VISAリソース名で指定されたデバイスセッションまたはイベントオブジェクトを閉じます。
![VISAを閉じる](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-close.png?resize=264%2C44&ssl=1)
VISAリソース検索
システムをクエリして、指定されたインタフェースに関連付けられたデバイスを検索します。
![VISAリソース検索](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-find-resourse.png?resize=300%2C44&ssl=1)
VISAタイムアウト設定
VISAセッションのタイムアウト値をミリ秒で設定します。
![VISAタイムアウト設定](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-set-timeout.png?resize=95%2C33&ssl=1)
VISAプロパティノード
VISAリファレンスのプロパティ取得(読み取り)と設定(書き込み)を行うことができます。
![VISAプロパティノード](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-property-node.png?resize=60%2C33&ssl=1)
VISAファイルデータを書き込む
ファイル名で指定されたファイルからデータを取得し、そのデータをデバイスに同期的に書き込みます。
![VISAファイルデータを書き込む](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-write-from-file.png?resize=342%2C58&ssl=1)
VISA読み取りファイルに保存
バイトカウントを同期的に読み取り、転送されたデータをファイル名で指定されたファイルに保存します。
![VISA読み取りファイルに保存](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-read-to-file.png?resize=330%2C56&ssl=1)
シリアル
シリアル通信(RS232/485) で使用するVISA関数です。
関数パレット→「計測器I/O」 →「シリアル」 から選択できます。
VISAシリアルポート構成
VISAリソース名で指定されたシリアルポートを指定された設定に初期化します。
シリアル通信(RS232/485)では、「VISAを開く」関数に代わり使用します。
![VISAシリアルポート構成](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-configer-sirial.png?resize=417%2C191&ssl=1)
VISA I/Oバッファサイズ設定
I/Oバッファのサイズを設定します。
![VISA I/Oバッファサイズ設定](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-flach-io-buffer.png?resize=319%2C57&ssl=1)
VISA I/Oバッファ排出
入力マスクで指定したで、I/Oバッファをフラッシュ(バッファ内に残っているデータを排出)します。
![VISA I/Oバッファ排出](https://i0.wp.com/www.peritec-si.com/wp/wp-content/uploads/labview-visa-set-io-buffer-size.png?resize=319%2C57&ssl=1)