基于NI CompactRIO和LabVIEW的海洋環(huán)境多物理場(chǎng)測(cè)量系統(tǒng)
1.軟件簡(jiǎn)介:
軟件所使用的開發(fā)平臺(tái)為NI公司的LabVIEW軟件。LabVIEW是NI公司開發(fā)的一種目前應(yīng)用最廣、發(fā)展最快、功能最 強(qiáng)的圖形化開發(fā)平臺(tái)。它是一種適合任何編程任務(wù),具有擴(kuò)展函數(shù)庫(kù)的通用編程環(huán)境,定義了數(shù)據(jù)模型、結(jié)構(gòu)類型和模塊調(diào)用語(yǔ)法規(guī)則等編程語(yǔ)言的基本要素;它的擴(kuò)展函數(shù)庫(kù)面向數(shù)據(jù)采集、GPIB和串行儀器控制,以及數(shù)據(jù)分析、數(shù)據(jù)顯示和數(shù)據(jù)存儲(chǔ);提供了與遵從GPIB、VXI、RS-232、RS-485協(xié)議的硬件及數(shù)據(jù)采集卡的全部功能,還內(nèi)置了TCP/IP,ActiveX等軟件標(biāo)準(zhǔn)的庫(kù)函數(shù),不需要編寫程序代碼,而是利用編程人員熟悉的術(shù)語(yǔ),圖表和概念,來繪制程序流程圖,直觀清晰,并且包括了常用的程序調(diào)試工具,簡(jiǎn)化了程序的開發(fā)時(shí)間和難度。
2.編程思路說明
本系統(tǒng)的軟件編程主要是需要實(shí)現(xiàn)對(duì)各個(gè)物理場(chǎng)采集的控制,按需要的采樣率要求進(jìn)行數(shù)據(jù)采集;將采集信號(hào)傳送到上位機(jī)的用戶界面上,實(shí)時(shí)顯示,方便測(cè)試人員對(duì)測(cè)量體的布放、調(diào)試以及對(duì)目標(biāo)的測(cè)量。
對(duì)于本系統(tǒng)來說,工作的重點(diǎn)是編譯各個(gè)物理場(chǎng)采集控制模塊,并將各采集模塊同姿態(tài)儀控制模塊集成在一起,形成一個(gè)成熟的系統(tǒng)采集控制軟件,可以便捷的對(duì)各個(gè)采集模塊進(jìn)行控制,實(shí)時(shí)的顯示采集結(jié)果、存儲(chǔ)數(shù)據(jù),更重要的是要讓程序的采集模塊之間即不相互產(chǎn)生沖突,也不會(huì)因?yàn)檫\(yùn)行速度的問題產(chǎn)生丟點(diǎn)和串道。
圖3 程序流程圖
2.1 NI cRIO-9233控制采集部分
利用NI cRIO-9233采集水下物理場(chǎng)交變部分,軟件設(shè)計(jì)的關(guān)鍵問題首先是要保證兩個(gè)NI cRIO-9233的同步,這在Project中通過設(shè)置兩個(gè)cRIO-9233的硬件屬性,可以將兩個(gè)NI cRIO-9233的時(shí)鐘設(shè)為同步,達(dá)到要求;其次是保證信號(hào)不會(huì)產(chǎn)生丟點(diǎn)和串道,根據(jù)采樣率的要求,最高要達(dá)到10K的采樣率,選擇DMA FIFO的方式,可以解決這個(gè)問題。采集到的數(shù)據(jù),通過對(duì)DMA的讀取,經(jīng)過二進(jìn)制到十進(jìn)制的轉(zhuǎn)換,進(jìn)行顯示和存儲(chǔ)以及后期的數(shù)據(jù)處理。同時(shí),在程序中還集成了錯(cuò)誤報(bào)警,當(dāng)程序出錯(cuò)時(shí),可以及時(shí)的提醒測(cè)量人員。
2.2 cRIO-9004與單片機(jī)的串口通信
在本系統(tǒng)中,集成了對(duì)于海洋環(huán)境物理場(chǎng)直流信號(hào)的采集模塊以及姿態(tài)儀與漏水報(bào)警的控制和數(shù)據(jù)采集模塊,利用單片機(jī)控制各個(gè)模塊的采集,將信號(hào)通過串口傳給NI cRIO-9004,并在上位機(jī)顯示與存儲(chǔ)。
姿態(tài)儀和環(huán)境物理場(chǎng)采集模塊的工作通過上位機(jī)給單片機(jī)發(fā)送命令進(jìn)行切換,方便測(cè)量人員的觀測(cè)和控制,同時(shí),當(dāng)漏水報(bào)警啟動(dòng)時(shí),單片機(jī)將傳送報(bào)警信號(hào)而不再發(fā)送其他信號(hào),通過對(duì)信號(hào)的判斷,進(jìn)行軟件報(bào)警。
在對(duì)水下測(cè)量體進(jìn)行布放的時(shí)候,程序發(fā)送姿態(tài)儀工作指令給單片機(jī),然后,讀取串口數(shù)據(jù),并按照姿態(tài)儀的數(shù)據(jù)傳輸格式,將從串口得到的姿態(tài)儀數(shù)據(jù)提取出來并顯示,同時(shí)增加報(bào)警判斷,根據(jù)需要設(shè)定姿態(tài)判斷規(guī)則,當(dāng)系統(tǒng)姿態(tài)達(dá)到一定的角度,程序開始報(bào)警。
FPGA.vi的程序部分
圖4 FPGA.vi的程序部分
當(dāng)水下測(cè)量體姿態(tài)穩(wěn)定之后,通過程序設(shè)定的切換按鈕,給單片機(jī)發(fā)送指令,結(jié)束姿態(tài)儀數(shù)據(jù)的采集并發(fā)送穩(wěn)恒物理場(chǎng)傳感器工作指令,開始穩(wěn)恒物理場(chǎng)的數(shù)據(jù)采集,根據(jù)單片機(jī)的數(shù)據(jù)傳輸格式,讀出串口中的字符串,并將其分解,轉(zhuǎn)換為10進(jìn)制數(shù)值,并根據(jù)規(guī)則將其換算為實(shí)際的物理量,顯示出來。
圖5 上位機(jī)中DMA的數(shù)據(jù)讀取和轉(zhuǎn)換
四、結(jié)論
本文討論了基于National Instruments公司的NI CompactRIO控制和采集系統(tǒng)和圖形化的編程開發(fā)平臺(tái)LabVIEW而構(gòu)建的海洋環(huán)境多物理場(chǎng)測(cè)量系統(tǒng)。由于很好的利用了NI CompactRIO——小巧而堅(jiān)固的工業(yè)化控制和采集系統(tǒng)靈活,可靠等多項(xiàng)特性,并且結(jié)合了LabVIEW這一強(qiáng)大、高效的軟件開發(fā)平臺(tái),使得整個(gè)自動(dòng)化控制和采集系統(tǒng)能成功的應(yīng)用于海洋環(huán)境多物理場(chǎng)的測(cè)量中,解決了傳統(tǒng)測(cè)量系統(tǒng)體積龐大,靈活性差,且操作繁瑣的難題。這也使海上實(shí)驗(yàn)變得更加的方便、快捷和易于維護(hù)。通過已研制樣機(jī)的實(shí)驗(yàn),其多點(diǎn)同測(cè),穩(wěn)定可靠,實(shí)時(shí)便捷,靈活小巧,低功耗,布放方便等諸多優(yōu)點(diǎn),很好地證明了測(cè)量系統(tǒng)能夠滿足海上多種物理場(chǎng)實(shí)驗(yàn)的不同參數(shù)要求。該系統(tǒng)的成功開發(fā),也展現(xiàn)了NI公司的虛擬儀器技術(shù)在測(cè)試測(cè)量領(lǐng)域內(nèi)的良好應(yīng)用前景,為今后海洋環(huán)境多物理場(chǎng)測(cè)量陣的研制提供了極為有力的參考。
評(píng)論