SlideShare a Scribd company logo
LabVIEW NXG Training Course
Session9 - 計測器制御
Yusuke Tochigi
NXG 5.0 Version
LabVIEW NXG Training Course 2
計測器制御
LabVIEW NXG の前身 LabVIEW は、もともと GPIB 制御を得意とするソフトウェア
として開発されました。 LabVIEW NXG も当然その流れを受け継ぎ、 3rd Party 計
測器の制御が容易にできます。このセッションでは計測器制御について紹介しますが、
DAQmx の時と同様、詳細は別トレーニング機会で紹介します。
LabVIEW NXG Training Course 3
ドライバのインストール
計測器制御のドライバは複数あるため混乱しがちです。一度整理しましょう。
●
NI-488.2
NI 製の GPIB 製品 (PCI-GPIB など ) を使用する際に必要です。
●
NI-Serial
NI 製のシリアル変換器等 (USB-232 など ) を使用する際に必要です。
●
NI-VISA
計測器制御を行う最も基本的な API 群です。
NI 製品を使用せず、 USB やイーサネットで計測器と通信をする場合は NI-VISA の
インストールのみで十分です。 NI-488.2 や NI-Serial が必要な NI 製品を使用する
場合であっても、 NI-VISA を使用することで拡張性の高い制御アプリケーションを容易
に開発できます。
LabVIEW NXG Training Course 4
NI-VISA
NI-VISA は LabVIEW NXG の API 群であり、 VISA を使用することでインタフェー
スの種類に依存しない制御アプリケーションを開発できます。例えば以下の例は、 GPIB
や USB などどのインタフェースでも正常に実行し、戻り値を取得することができます。
LabVIEW NXG Training Course 5
System Designer
パソコンに接続された計測器は、 DAQ デバイスと同様に System Designer に表示
されます。計測器ドライバをインストールするなど、計測器に対する操作を行えます。
LabVIEW NXG Training Course 6
NI-VISA の基本
まずは NI-VISA の基本について紹介します。 NI-VISA はハードウェアインタフェース
》 通信バス 》 VISA に関数が用意されています。
基本はファイル I/O と同じように、一度開いて最後に閉じます。制御の目的にもよります
が、計測器にコマンドを送り、応答を読む場合には書き込み 》 読み取りの順で、計測
器から継続的に応答が返っている場合は読み取りのみ使用します。
送信文字列には注意します。計測器は終端文字を必要とするものがあり、終端文字を
末尾に加えることで、コマンドの終了を判断します。終端文字がないと、コマンドが終了
していないと認識し、次の文字列を待ち続けます。
文字列制御器で終端文字を使用する場合は、構成ペーンからエスケープシーケンスを
表示を有効にします。
LabVIEW NXG Training Course 7
繰り返し処理
NI-VISA の繰り返し処理も考え方はファイル I/O と同じです。ループの外側に開く関
数と閉じる関数を配置し、ループの中では読み書きの関数を配置します。
注意点として、計測器との通信速度は計測器によりますがそこまで早くありません。例え
ば 1m 秒毎にコマンドを送るような処理では、計測器側が正しく処理を行えないことが
あるので、読み書きのタイミングには注意します。
LabVIEW NXG Training Course 8
通信設定
NI-VISA はインタフェースに依存しませんが、例えばシリアル通信では Baud Rate を
設定したいように、インタフェース個々で設定や操作に若干の違いがあります。 NI-
VISA はそれらの違いも吸収できるよう、 NI-VISA 自身に各インタフェース向けの API
を提供しており、それらを使用してインタフェース固有の設定を行うことができます。
LabVIEW NXG Training Course 9
計測器ドライバ
計測器ドライバは計測器ベンダーが作成した LabVIEW NXG の API セットで
す。 NI-488.2 などのように本当の意味でのドライバではなく、計測器を制御するための
サブ VI やサンプルがまとめられたものです。
計測器ドライバは System Designer または Web 上の IDNetから無料で入手でき
ます。ダウンロードの際、使用する計測器がサポートされるモデルであるか確認した上でダ
ウンロードするようにしてください。
LabVIEW NXG Training Course 10
計測器ドライバのインストール
LabVIEW では計測器ドライバをインストールする際、手動でファイルを移動しなくては
ならないようなケースがありました。 LabVIEW NXG では計測器ドライバは NI
Package Manager からインストールされ、 API やサンプルは自動的に適切な場所へ
配置されます。

More Related Content

What's hot

nGrinder3 : だれもが簡単にできる性能テスト
nGrinder3 : だれもが簡単にできる性能テストnGrinder3 : だれもが簡単にできる性能テスト
nGrinder3 : だれもが簡単にできる性能テストJunHo Yoon
 
今日から使おうSmalltalk
今日から使おうSmalltalk今日から使おうSmalltalk
今日から使おうSmalltalkSho Yoshida
 
Decsx launcherv 2.5
Decsx launcherv 2.5Decsx launcherv 2.5
Decsx launcherv 2.5
Etsuji Nomura
 
何が変わった? VisualWorks 8.0
何が変わった? VisualWorks 8.0何が変わった? VisualWorks 8.0
何が変わった? VisualWorks 8.0
Masashi Umezawa
 
Visual studio 2013 debugging
Visual studio 2013 debuggingVisual studio 2013 debugging
Visual studio 2013 debugging
Kazushi Kamegawa
 
LionでOpenMP
LionでOpenMPLionでOpenMP
LionでOpenMP14159265
 
Jenkins tips 20161014
Jenkins tips 20161014Jenkins tips 20161014
Jenkins tips 20161014
Hideaki Ishijima
 
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
aha_oretama
 
20210515 cae linux_install_vb
20210515 cae linux_install_vb20210515 cae linux_install_vb
20210515 cae linux_install_vb
YohichiShiina
 
Windows Windows上に作るチーム開発環境
Windows Windows上に作るチーム開発環境Windows Windows上に作るチーム開発環境
Windows Windows上に作るチーム開発環境
Tadahiro Ishisaka
 
react勉強会 #2
react勉強会 #2react勉強会 #2
react勉強会 #2
KentaIwadate
 
CruiseControl.NET設置
CruiseControl.NET設置CruiseControl.NET設置
CruiseControl.NET設置
Kuniaki Igarashi
 
Laravel5.1 Release
Laravel5.1 ReleaseLaravel5.1 Release
Laravel5.1 Release
Yuuki Takezawa
 
react勉強会 #3
react勉強会 #3react勉強会 #3
react勉強会 #3
KentaIwadate
 
組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)
Tetsuyuki Kobayashi
 
Engine Yardで作る NetCommons3のクラウド環境
Engine Yardで作る NetCommons3のクラウド環境Engine Yardで作る NetCommons3のクラウド環境
Engine Yardで作る NetCommons3のクラウド環境
Yusuke Ando
 
Bat vb script_power_shellの単体テスト自動化
Bat vb script_power_shellの単体テスト自動化Bat vb script_power_shellの単体テスト自動化
Bat vb script_power_shellの単体テスト自動化
Naoyuki Sano
 
SubversionServer設置
SubversionServer設置SubversionServer設置
SubversionServer設置
Kuniaki Igarashi
 
Nc3開発環境(vagrant)構築(Windows編)
Nc3開発環境(vagrant)構築(Windows編)Nc3開発環境(vagrant)構築(Windows編)
Nc3開発環境(vagrant)構築(Windows編)
snakajima
 

What's hot (20)

nGrinder3 : だれもが簡単にできる性能テスト
nGrinder3 : だれもが簡単にできる性能テストnGrinder3 : だれもが簡単にできる性能テスト
nGrinder3 : だれもが簡単にできる性能テスト
 
今日から使おうSmalltalk
今日から使おうSmalltalk今日から使おうSmalltalk
今日から使おうSmalltalk
 
Decsx launcherv 2.5
Decsx launcherv 2.5Decsx launcherv 2.5
Decsx launcherv 2.5
 
何が変わった? VisualWorks 8.0
何が変わった? VisualWorks 8.0何が変わった? VisualWorks 8.0
何が変わった? VisualWorks 8.0
 
Visual studio 2013 debugging
Visual studio 2013 debuggingVisual studio 2013 debugging
Visual studio 2013 debugging
 
Reactive programming
Reactive programming Reactive programming
Reactive programming
 
LionでOpenMP
LionでOpenMPLionでOpenMP
LionでOpenMP
 
Jenkins tips 20161014
Jenkins tips 20161014Jenkins tips 20161014
Jenkins tips 20161014
 
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
 
20210515 cae linux_install_vb
20210515 cae linux_install_vb20210515 cae linux_install_vb
20210515 cae linux_install_vb
 
Windows Windows上に作るチーム開発環境
Windows Windows上に作るチーム開発環境Windows Windows上に作るチーム開発環境
Windows Windows上に作るチーム開発環境
 
react勉強会 #2
react勉強会 #2react勉強会 #2
react勉強会 #2
 
CruiseControl.NET設置
CruiseControl.NET設置CruiseControl.NET設置
CruiseControl.NET設置
 
Laravel5.1 Release
Laravel5.1 ReleaseLaravel5.1 Release
Laravel5.1 Release
 
react勉強会 #3
react勉強会 #3react勉強会 #3
react勉強会 #3
 
組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)
 
Engine Yardで作る NetCommons3のクラウド環境
Engine Yardで作る NetCommons3のクラウド環境Engine Yardで作る NetCommons3のクラウド環境
Engine Yardで作る NetCommons3のクラウド環境
 
Bat vb script_power_shellの単体テスト自動化
Bat vb script_power_shellの単体テスト自動化Bat vb script_power_shellの単体テスト自動化
Bat vb script_power_shellの単体テスト自動化
 
SubversionServer設置
SubversionServer設置SubversionServer設置
SubversionServer設置
 
Nc3開発環境(vagrant)構築(Windows編)
Nc3開発環境(vagrant)構築(Windows編)Nc3開発環境(vagrant)構築(Windows編)
Nc3開発環境(vagrant)構築(Windows編)
 

Similar to Session9 - LabVIEW NXG Training Course

OSSで作るOpenStack監視システム
OSSで作るOpenStack監視システムOSSで作るOpenStack監視システム
OSSで作るOpenStack監視システム
satsuki fukazu
 
ネットワークスイッチ構築実践 1.VLAN・LinkAggregation編
ネットワークスイッチ構築実践 1.VLAN・LinkAggregation編ネットワークスイッチ構築実践 1.VLAN・LinkAggregation編
ネットワークスイッチ構築実践 1.VLAN・LinkAggregation編
株式会社 NTTテクノクロス
 
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
統合監視ソフトウェア Zabbix新バージョン2.0の紹介統合監視ソフトウェア Zabbix新バージョン2.0の紹介
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
takanori suzuki
 
EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活
Kuninobu SaSaki
 
GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化
GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化
GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化
Shigeru Tsubota
 
Pythonを中心としたチーム開発
Pythonを中心としたチーム開発Pythonを中心としたチーム開発
Pythonを中心としたチーム開発
Ryo Takahashi
 
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
akira6592
 
kube-system落としてみました
kube-system落としてみましたkube-system落としてみました
kube-system落としてみました
Shuntaro Saiba
 
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
ManaMurakami1
 
Ansible ネットワーク自動化チュートリアル (JANOG42)
Ansible ネットワーク自動化チュートリアル (JANOG42)Ansible ネットワーク自動化チュートリアル (JANOG42)
Ansible ネットワーク自動化チュートリアル (JANOG42)
akira6592
 
Myfirst cloudfoundry intro_20161201
Myfirst cloudfoundry intro_20161201Myfirst cloudfoundry intro_20161201
Myfirst cloudfoundry intro_20161201
Tomohiro Ichimura
 
20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会samemoon
 
IBM Cloud Community Summit JIMUC 活動のご紹介
IBM Cloud Community Summit JIMUC 活動のご紹介IBM Cloud Community Summit JIMUC 活動のご紹介
IBM Cloud Community Summit JIMUC 活動のご紹介
kazuki masuda
 
Interact2016:Introduction of Hyper-V Network Virtualization ver.2
Interact2016:Introduction of Hyper-V Network Virtualization ver.2Interact2016:Introduction of Hyper-V Network Virtualization ver.2
Interact2016:Introduction of Hyper-V Network Virtualization ver.2
wind06106
 
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコシステムズ合同会社
 
OpenStack with SR-IOV
OpenStack with SR-IOVOpenStack with SR-IOV
OpenStack with SR-IOV
Hideki Saito
 

Similar to Session9 - LabVIEW NXG Training Course (17)

OSSで作るOpenStack監視システム
OSSで作るOpenStack監視システムOSSで作るOpenStack監視システム
OSSで作るOpenStack監視システム
 
ネットワークスイッチ構築実践 1.VLAN・LinkAggregation編
ネットワークスイッチ構築実践 1.VLAN・LinkAggregation編ネットワークスイッチ構築実践 1.VLAN・LinkAggregation編
ネットワークスイッチ構築実践 1.VLAN・LinkAggregation編
 
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
統合監視ソフトウェア Zabbix新バージョン2.0の紹介統合監視ソフトウェア Zabbix新バージョン2.0の紹介
統合監視ソフトウェア Zabbix新バージョン2.0の紹介
 
EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活
 
GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化
GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化
GNS3上の仮想アプライアンス+GitLabRunner+BDDによるテスト自動化
 
Pythonを中心としたチーム開発
Pythonを中心としたチーム開発Pythonを中心としたチーム開発
Pythonを中心としたチーム開発
 
AgilePM#3
AgilePM#3AgilePM#3
AgilePM#3
 
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
 
kube-system落としてみました
kube-system落としてみましたkube-system落としてみました
kube-system落としてみました
 
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
「NVIDIA プロファイラを用いたPyTorch学習最適化手法のご紹介(修正前 typoあり)」
 
Ansible ネットワーク自動化チュートリアル (JANOG42)
Ansible ネットワーク自動化チュートリアル (JANOG42)Ansible ネットワーク自動化チュートリアル (JANOG42)
Ansible ネットワーク自動化チュートリアル (JANOG42)
 
Myfirst cloudfoundry intro_20161201
Myfirst cloudfoundry intro_20161201Myfirst cloudfoundry intro_20161201
Myfirst cloudfoundry intro_20161201
 
20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会20130714 July Tech Festa 日本CloudStackユーザー会
20130714 July Tech Festa 日本CloudStackユーザー会
 
IBM Cloud Community Summit JIMUC 活動のご紹介
IBM Cloud Community Summit JIMUC 活動のご紹介IBM Cloud Community Summit JIMUC 活動のご紹介
IBM Cloud Community Summit JIMUC 活動のご紹介
 
Interact2016:Introduction of Hyper-V Network Virtualization ver.2
Interact2016:Introduction of Hyper-V Network Virtualization ver.2Interact2016:Introduction of Hyper-V Network Virtualization ver.2
Interact2016:Introduction of Hyper-V Network Virtualization ver.2
 
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
 
OpenStack with SR-IOV
OpenStack with SR-IOVOpenStack with SR-IOV
OpenStack with SR-IOV
 

More from Yusuke Tochigi

Test Driven Development in LabVIEW
Test Driven Development in LabVIEWTest Driven Development in LabVIEW
Test Driven Development in LabVIEW
Yusuke Tochigi
 
LabVIEW NXG OOP Training
LabVIEW NXG OOP TrainingLabVIEW NXG OOP Training
LabVIEW NXG OOP Training
Yusuke Tochigi
 
Session7 - LabVIEW NXG Training Course
Session7 - LabVIEW NXG Training CourseSession7 - LabVIEW NXG Training Course
Session7 - LabVIEW NXG Training Course
Yusuke Tochigi
 
Session11 - LabVIEW NXG Training Course
Session11 - LabVIEW NXG Training CourseSession11 - LabVIEW NXG Training Course
Session11 - LabVIEW NXG Training Course
Yusuke Tochigi
 
Session10 - LabVIEW NXG Training Course
Session10 - LabVIEW NXG Training CourseSession10 - LabVIEW NXG Training Course
Session10 - LabVIEW NXG Training Course
Yusuke Tochigi
 
Session6 - LabVIEW NXG Training Course
Session6 - LabVIEW NXG Training CourseSession6 - LabVIEW NXG Training Course
Session6 - LabVIEW NXG Training Course
Yusuke Tochigi
 
Session4 - LabVIEW NXG Training Cours
Session4 - LabVIEW NXG Training CoursSession4 - LabVIEW NXG Training Cours
Session4 - LabVIEW NXG Training Cours
Yusuke Tochigi
 
Session2 - LabVIEW NXG Training Course
Session2 - LabVIEW NXG Training CourseSession2 - LabVIEW NXG Training Course
Session2 - LabVIEW NXG Training Course
Yusuke Tochigi
 
Automotive QMS IATF16949
Automotive QMS IATF16949Automotive QMS IATF16949
Automotive QMS IATF16949
Yusuke Tochigi
 

More from Yusuke Tochigi (9)

Test Driven Development in LabVIEW
Test Driven Development in LabVIEWTest Driven Development in LabVIEW
Test Driven Development in LabVIEW
 
LabVIEW NXG OOP Training
LabVIEW NXG OOP TrainingLabVIEW NXG OOP Training
LabVIEW NXG OOP Training
 
Session7 - LabVIEW NXG Training Course
Session7 - LabVIEW NXG Training CourseSession7 - LabVIEW NXG Training Course
Session7 - LabVIEW NXG Training Course
 
Session11 - LabVIEW NXG Training Course
Session11 - LabVIEW NXG Training CourseSession11 - LabVIEW NXG Training Course
Session11 - LabVIEW NXG Training Course
 
Session10 - LabVIEW NXG Training Course
Session10 - LabVIEW NXG Training CourseSession10 - LabVIEW NXG Training Course
Session10 - LabVIEW NXG Training Course
 
Session6 - LabVIEW NXG Training Course
Session6 - LabVIEW NXG Training CourseSession6 - LabVIEW NXG Training Course
Session6 - LabVIEW NXG Training Course
 
Session4 - LabVIEW NXG Training Cours
Session4 - LabVIEW NXG Training CoursSession4 - LabVIEW NXG Training Cours
Session4 - LabVIEW NXG Training Cours
 
Session2 - LabVIEW NXG Training Course
Session2 - LabVIEW NXG Training CourseSession2 - LabVIEW NXG Training Course
Session2 - LabVIEW NXG Training Course
 
Automotive QMS IATF16949
Automotive QMS IATF16949Automotive QMS IATF16949
Automotive QMS IATF16949
 

Session9 - LabVIEW NXG Training Course

  • 1. LabVIEW NXG Training Course Session9 - 計測器制御 Yusuke Tochigi NXG 5.0 Version
  • 2. LabVIEW NXG Training Course 2 計測器制御 LabVIEW NXG の前身 LabVIEW は、もともと GPIB 制御を得意とするソフトウェア として開発されました。 LabVIEW NXG も当然その流れを受け継ぎ、 3rd Party 計 測器の制御が容易にできます。このセッションでは計測器制御について紹介しますが、 DAQmx の時と同様、詳細は別トレーニング機会で紹介します。
  • 3. LabVIEW NXG Training Course 3 ドライバのインストール 計測器制御のドライバは複数あるため混乱しがちです。一度整理しましょう。 ● NI-488.2 NI 製の GPIB 製品 (PCI-GPIB など ) を使用する際に必要です。 ● NI-Serial NI 製のシリアル変換器等 (USB-232 など ) を使用する際に必要です。 ● NI-VISA 計測器制御を行う最も基本的な API 群です。 NI 製品を使用せず、 USB やイーサネットで計測器と通信をする場合は NI-VISA の インストールのみで十分です。 NI-488.2 や NI-Serial が必要な NI 製品を使用する 場合であっても、 NI-VISA を使用することで拡張性の高い制御アプリケーションを容易 に開発できます。
  • 4. LabVIEW NXG Training Course 4 NI-VISA NI-VISA は LabVIEW NXG の API 群であり、 VISA を使用することでインタフェー スの種類に依存しない制御アプリケーションを開発できます。例えば以下の例は、 GPIB や USB などどのインタフェースでも正常に実行し、戻り値を取得することができます。
  • 5. LabVIEW NXG Training Course 5 System Designer パソコンに接続された計測器は、 DAQ デバイスと同様に System Designer に表示 されます。計測器ドライバをインストールするなど、計測器に対する操作を行えます。
  • 6. LabVIEW NXG Training Course 6 NI-VISA の基本 まずは NI-VISA の基本について紹介します。 NI-VISA はハードウェアインタフェース 》 通信バス 》 VISA に関数が用意されています。 基本はファイル I/O と同じように、一度開いて最後に閉じます。制御の目的にもよります が、計測器にコマンドを送り、応答を読む場合には書き込み 》 読み取りの順で、計測 器から継続的に応答が返っている場合は読み取りのみ使用します。 送信文字列には注意します。計測器は終端文字を必要とするものがあり、終端文字を 末尾に加えることで、コマンドの終了を判断します。終端文字がないと、コマンドが終了 していないと認識し、次の文字列を待ち続けます。 文字列制御器で終端文字を使用する場合は、構成ペーンからエスケープシーケンスを 表示を有効にします。
  • 7. LabVIEW NXG Training Course 7 繰り返し処理 NI-VISA の繰り返し処理も考え方はファイル I/O と同じです。ループの外側に開く関 数と閉じる関数を配置し、ループの中では読み書きの関数を配置します。 注意点として、計測器との通信速度は計測器によりますがそこまで早くありません。例え ば 1m 秒毎にコマンドを送るような処理では、計測器側が正しく処理を行えないことが あるので、読み書きのタイミングには注意します。
  • 8. LabVIEW NXG Training Course 8 通信設定 NI-VISA はインタフェースに依存しませんが、例えばシリアル通信では Baud Rate を 設定したいように、インタフェース個々で設定や操作に若干の違いがあります。 NI- VISA はそれらの違いも吸収できるよう、 NI-VISA 自身に各インタフェース向けの API を提供しており、それらを使用してインタフェース固有の設定を行うことができます。
  • 9. LabVIEW NXG Training Course 9 計測器ドライバ 計測器ドライバは計測器ベンダーが作成した LabVIEW NXG の API セットで す。 NI-488.2 などのように本当の意味でのドライバではなく、計測器を制御するための サブ VI やサンプルがまとめられたものです。 計測器ドライバは System Designer または Web 上の IDNetから無料で入手でき ます。ダウンロードの際、使用する計測器がサポートされるモデルであるか確認した上でダ ウンロードするようにしてください。
  • 10. LabVIEW NXG Training Course 10 計測器ドライバのインストール LabVIEW では計測器ドライバをインストールする際、手動でファイルを移動しなくては ならないようなケースがありました。 LabVIEW NXG では計測器ドライバは NI Package Manager からインストールされ、 API やサンプルは自動的に適切な場所へ 配置されます。