【導(dǎo)讀】如何實(shí)現(xiàn)對(duì)示波器的遠(yuǎn)程控制?很多初級(jí)的工程師都想知道對(duì)不對(duì)?今天我們就來(lái)說(shuō)說(shuō)如何使用LabVIEW實(shí)現(xiàn)對(duì)ZDS2024示波器的控制。
1、LabVIEW基礎(chǔ)介紹
計(jì)算機(jī)通過(guò)LAN(網(wǎng)口)或者USB接口與示波器建立連接來(lái)控制示波器。如圖1所示。
圖1 硬件連接圖
一聽(tīng)到要控制示波器,大家都會(huì)想到通過(guò)SCPI命令來(lái)控制示波器。那如何來(lái)實(shí)現(xiàn)呢?可選的方案有:
(1)通過(guò)編寫(xiě)程序代碼,如使用C,C++,C#等語(yǔ)言結(jié)合開(kāi)發(fā)環(huán)境(如VS2012)來(lái)編寫(xiě)代碼;
(2)通過(guò)LabVIEW,使用圖形界面來(lái)實(shí)現(xiàn)。
今天我們就來(lái)說(shuō)說(shuō)如何使用LabVIEW實(shí)現(xiàn)對(duì)ZDS2024示波器的控制。
LabVIEW的定義:
LabVIEW由National Instruments公司開(kāi)發(fā),于1986年發(fā)布第一個(gè)版本,是一種用圖標(biāo)和連線(xiàn)代替文本行來(lái)創(chuàng)建應(yīng)用程序的圖形化編程語(yǔ)言。LabVIEW提供了一門(mén)編程語(yǔ)言所擁有的語(yǔ)法功能,只是它以圖形的方式提供。
LabVIEW基本由一個(gè)個(gè)VI文件組成。每個(gè)VI由前面板和程序框圖組成??梢詮膬蓚€(gè)角度來(lái)理解VI文件:
(1)從用戶(hù)交互來(lái)說(shuō),前面板負(fù)責(zé)設(shè)計(jì)用戶(hù)交互界面,類(lèi)似UI設(shè)計(jì)工具,一般包括用戶(hù)操作控件和輸出結(jié)果控件,像文本框、按鈕、波形顯示控件等;而程序框圖負(fù)責(zé)將用戶(hù)的操作經(jīng)過(guò)一系列的處理,并最終輸出結(jié)果,顯示在前面板上。
(2)從功能模塊來(lái)說(shuō),每個(gè)VI文件類(lèi)似于C語(yǔ)言中的一個(gè)函數(shù),前面板用來(lái)設(shè)計(jì)函數(shù)的參數(shù)(輸入)和返回值(輸出),程序框圖類(lèi)似函數(shù)體,實(shí)現(xiàn)具體邏輯。
2、 安裝軟件和ZDS2024驅(qū)動(dòng)庫(kù)
首先必須安裝好LabVIEW和NI-VISA。將ZDS2024的驅(qū)動(dòng)庫(kù)文件夾Zhiyuan ZDS2000 Series for TCP,拷貝到LabVIEW安裝目錄instr.lib目錄下。Zhiyuan ZDS2000 Series for TCP針對(duì)以太網(wǎng)連接。
3、配置NI-VISA來(lái)控制示波器
啟動(dòng)Masurement & Automation Explorer軟件,選擇設(shè)備和接口,在添加網(wǎng)絡(luò)設(shè)備中,使用Manual Entry of Raw Scoket(手動(dòng)輸入原始SOCKET)方式連接,ZDS2024示波器采用端口號(hào)5025來(lái)接收SCPI命令。如圖2和圖3所示。設(shè)置好后,可進(jìn)行測(cè)試,確保連接成功。
圖3 RAW SCOKET配置
4、例程設(shè)計(jì)
啟動(dòng)LabVIEW創(chuàng)建一個(gè)新的VI文件。這里以從示波器讀取數(shù)據(jù),并顯示在波形控件上為例。設(shè)計(jì)的VI前面板為如圖4所示。
圖4 VI前面板
左邊的三個(gè)控制用于輸入設(shè)置,包括連接的VISA資源名稱(chēng),獲取數(shù)據(jù)的通道,最大延遲時(shí)間。右邊為結(jié)果波形顯示控件。設(shè)計(jì)好前面板以后,就可以進(jìn)入程序框圖設(shè)計(jì)了。在VI的程序框圖中的Function 面板中,選擇“儀器I/O”可以找到有關(guān)ZDS2024的驅(qū)動(dòng)庫(kù)的模塊,可以在程序框圖中直接使用,設(shè)計(jì)結(jié)果如圖5所示。
圖5程序框圖
在程序框圖中,先初始化示波器,并啟動(dòng)示波器的AutoSetup功能,然后循環(huán)獲取示波器的數(shù)據(jù),并送顯示,直到用戶(hù)中止或者獲取數(shù)據(jù)過(guò)程中出現(xiàn)錯(cuò)誤。最后可以在前面板啟動(dòng)運(yùn)行,結(jié)果如圖6所示。
圖6 運(yùn)行結(jié)果
以上是使用LabVIEW來(lái)控制ZDS2024示波器的整個(gè)過(guò)程,相對(duì)使用C,C++這種來(lái)開(kāi)發(fā)是不是要方便很多呢?