本技術文件概述 NI-VISA,也就是 NI 的 Virtual Instrument Software Architecture (VISA) API。
NI-VISA 是一種 API,用於提供程式設計介面,在 LabVIEW、LabWindows/CVI 和 Measurement Studio 之類的 NI 應用程式開發環境中控制乙太網路/LXI、GPIB、序列、USB、PXI 及 VXI 儀器。要安裝這款 API,需使用 NI-VISA 驅動程式。
NI-VISA 具有下列 3 項優點,因此備受推崇。
1. 介面獨立
NI-VISA 採用許多相同的作業與儀器通訊,不受介面類型影響。因此,要切換介面十分輕鬆,而且只要學習一種語言就能適用於多種不同的儀器。舉例來說,不論是序列、GPIB 或 USB,將 ASCII 字串寫入訊息架構 (Message-based) 儀器所用的 VISA 指令均相同。
2. 平台流通性
NI-VISA 的設計旨在支援不同的平台使用以 VISA 函式呼叫撰寫的程式。透過定義自身資料型態,VISA 得以提供這項功能。這樣能夠確保應用程式在不同的平台上都能發揮一致的執行效能。因此,在 LabVIEW 中撰寫的 VISA 應用程式,很容易就能移轉到任何一個支援 LabVIEW 的平台。NI-VISA 支援數種作業系統,包括 Windows OS 版、MacOS 版與 Linux 流通版。
3. 使用簡易
NI-VISA 是相當簡單易學的介面。它所提供的 API 具備不因匯流排而異的函式,適用於大多數的 I/O 功能。最常用的儀器功能均由一組相當精簡的指令集提供,因此不需要學習多種介面類型的低階通訊協定。
開始使用 NI-VISA 之前,最好先了解開發流程中常用的一些術語。
VISA 資源
VISA 資源是指系統中的任何儀器。若有多台儀器連接至同一台主機,每一台儀器各是一項 VISA 資源。VISA 資源就代表著儀器的完整功能。
VISA 資源類型取決於您的儀器。VISA 資源分數種類型:INSTR、SOCKET、RAW 等
VISA 資源名稱 (儀器描述子)
VISA 資源名稱就是 VISA 資源的確切名稱。資源名稱指定儀器介面類型、儀器位址,以及 VISA 工作階段類型。VISA 資源名稱控制功能用於與開發環境中的儀器進行通訊。您可以運用這項資訊了解程式能否辨識您的儀器並正確定址。
VISA 工作階段
VISA 工作階段是與 VISA 資源進行通訊的路徑。使用 viOpen() 運算式即可開啟工作階段。只要想和儀器進行 VISA 通訊,就必須開啟 VISA 工作階段。
VISA 別名
VISA 別名是 VISA 資源的暱稱。別名的作用是方便識別儀器。
典型的 VISA 應用會執行以下步驟。
如果儀器的類型是序列、USB、乙太網路,或是 VISA 支援的任何其他介面類型,您也需比照使用完全相同的格式。唯一要更改的只有連接至 VISA Open 輸入端的 VISA 資源名稱。
LabVIEW 範例
這款 LabVIEW 應用程式能開啟與 GPIB 儀器連線的工作階段、執行寫入 *IDN?\n,以及自裝置讀取指定的位元組數。如需 VISA 函式相關說明,請參閱 VISA VI 與函式。
Visual C++ 範例
Visual Basic 範例
請依照 Windows 或 Mac 作業系統分別下載適用的版本。若是 Linux 作業系統,NI-VISA 與其他 NI 裝置驅動程式合併於同一個下載項目,名稱是 NI Linux Device Drivers。
請參閱下列項目,進一步了解作業系統相容性:
請參閱下列按儀器介面類型分類的儀器控制逐步教學文件,了解如何與儀器通訊。
NI 也透過儀器控制討論區提供支援。使用者可以張貼問題並分享資訊以參與更廣泛的社群。