LabVIEW中遠程數據采集的實(shí)現
(1)TCP與UDP
TCP與UDP為傳輸層協(xié)議,當需要保證數據傳輸的完整性與可靠性時(shí),TCP為當然的選擇;UDP則適合于大量的連接和高速度傳輸。。LabVlEW 中對這兩種協(xié)議的編程進(jìn)行了高度集成,將Winsock DLL封起來(lái),形成TCP與UDP圖形化編程節點(diǎn)與VI。
(2)DataSocker
DataSocket是NI提供的一種編程工具,借助它可以在不同的應用程序和數據源之間傳遞數據。。DataSocket可以訪(fǎng)問(wèn)本地文件以及HTTP和FTP服務(wù)器上的數據。DataSocket為低層通訊協(xié)議提供了一致的API,編程者無(wú)需為不同的數據格式和通信協(xié)議編寫(xiě)具體的程序代碼,而且這些數據源可以分布在不同的計算機上。使用一種增強數據類(lèi)型來(lái)交換儀器類(lèi)型的數據,這種數據類(lèi)型包含數據特性和實(shí)際測試數據。用類(lèi)似于Web中的統一資源定位器(URL)定位數據源,URL不同的前綴表示了不同的數據類(lèi)型。
(3)VI Server
VI Server是LabVlEW 獨有的一項技術(shù)。利用VI Server技術(shù)用戶(hù)可以編程動(dòng)態(tài)控制位于本地或遠程計算機上的LabVlEW Vls,但不能在本地打開(kāi)位于遠程計算機上的VI前面板。
使用VI Server,首先需要對VI Server進(jìn)行設置,設置內容有三項:Configuration、TCP/IP Access、Exported VIs;接著(zhù)利用LabVlEW 定義好的Application類(lèi)和VI類(lèi)的屬性和方法進(jìn)行編程來(lái)控制應用程序和VI。
中打開(kāi)并操作它。也可以開(kāi)發(fā)與服務(wù)器端的數據采集應用程序進(jìn)行TCP/UDP/DSTP通信的ActiveX控件,并將其嵌入網(wǎng)頁(yè),用Web服務(wù)器提供Web服務(wù),客戶(hù)端通過(guò)下載的ActiveX控件與服務(wù)器端的數據采集程序通信。
2. 遠程數據采集實(shí)現
基于NI PCI-6221的簡(jiǎn)單采集VI如圖1所示,采集數據為一個(gè)帶噪聲的方波電壓波形信號。
圖1(a)前面板
圖1(b)框圖程序
圖1 DAQ.vi前面板和框圖程序
下文基于LabVIEW 的上述四種通信方式分別以此DAQ.vi做為子程序,將電壓信號進(jìn)行網(wǎng)絡(luò )通信,從而實(shí)現遠程數據采集。
2.1 基于TCP/IP通信的數據采集


圖2 TCP遠程采集服務(wù)器端前面板及框圖程序


圖3 TCP遠程采集客戶(hù)端前面板及框圖程序
利用TCP進(jìn)行雙機通信實(shí)現遠程數據采集如圖2和圖3所示。運行這兩個(gè)程序,若首先運行服務(wù)器端VI,高亮運行可以觀(guān)察到VI不進(jìn)入循環(huán),直到運行客戶(hù)端VI時(shí),服務(wù)器端VI才采集數據,同時(shí)服務(wù)器端和客戶(hù)端顯示數據。兩臺PC顯示器上的波形圖數據一致,表明遠程數據采集成功。關(guān)閉時(shí)若先關(guān)閉客戶(hù)端,服務(wù)器端繼續采集;若關(guān)閉服務(wù)器,則客戶(hù)端停止數據顯示。
2.2 基于DataSocket技術(shù)的數據采集
DataSocket通信的三要素為:Publisher、DataSocket Server和Subscriber。Publisher將數據寫(xiě)到DataSocket中,而Subscriber讀出數據。
利用DataSocket分別編寫(xiě)服務(wù)器端和客戶(hù)端軟件,可以實(shí)現客戶(hù)端與服務(wù)器端運行狀態(tài)完全相同,即客戶(hù)端不僅可以顯示服務(wù)器前面板上的數據和控件狀態(tài),而且可以控制服務(wù)器端面板上的控件動(dòng)作,因此也是一種實(shí)現網(wǎng)絡(luò )測控的方法。
創(chuàng )建客戶(hù)端程序,只需將服務(wù)器端前面板的所有控件復制到一個(gè)新的VI中,即客戶(hù)端前面板與服務(wù)器端前面板完全相同。由于DataSocket只能傳遞控件對應變量的值,而不能傳遞控件的屬性,因此客戶(hù)端需要對控件值的變化而引起的控件屬
性的變化進(jìn)行編程。利用DataSocket通信實(shí)現遠程數據采集的程序如圖4所示。
性的變化進(jìn)行編程。利用DataSocket通信實(shí)現遠程數據采集的程序如圖4所示。
關(guān)鍵詞:
LabVIEW遠程數據采
技術(shù)專(zhuān)區
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線(xiàn)
- 開(kāi)關(guān)電源
- 單片機
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開(kāi)發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機控制
- 藍牙
- PLC
- PWM
- 汽車(chē)電子
- 轉換器
- 電源管理
- 信號放大器
評論