金玉龍 趙何麗莎 郝巖 樊金學
【摘 要】基于LabView的溫度測控系統(tǒng)開發(fā)軟件能夠完成對溫度的精確測控,該軟件具有數(shù)據(jù)的采集、分析、處理、顯示及溫度的報警功能,仿真實驗表明,該測控系統(tǒng)開發(fā)過程簡潔、測溫準確、運行穩(wěn)定可靠,且成本低廉,具有較高應用價值。本文主要對基于LabView的無線測控系統(tǒng)的實現(xiàn)進行了分析探討。
【關鍵詞】LabView;無線測控;系統(tǒng)實現(xiàn)
一、中央控制系統(tǒng)的功能
中央控制系統(tǒng)作為整個測控系統(tǒng)的核心,需要具備下面幾個基本功能。
1、數(shù)據(jù)傳輸功能
由負責數(shù)據(jù)采集的傳感部件采集到的各種數(shù)據(jù),經(jīng)過網(wǎng)關匯總后,要實時的傳輸?shù)街醒肟刂葡到y(tǒng)中。這個傳輸過程,可以采用多種方法進行。近距離的可以通過有線和無線的局域網(wǎng)絡完成,遠距離的可以通過Internet或移動通訊的2G/3G網(wǎng)絡完成。
2、顯示功能
由傳感部件傳輸來的數(shù)據(jù),經(jīng)過變換解析,還原出各種被測參數(shù),通過直觀的人性化的界面,提供給操作人員。在程序設計中,不僅要合理的進行界面布局,菜單層次設計,還要充分利用各種顯示元素的特性,最人性化的顯示各種測量參數(shù)的數(shù)值。
如用溫度計顯示溫濕度實時測量值,用曲線顯示歷史數(shù)據(jù),用發(fā)光二極管顯示閾值報警或狀態(tài)值等等。
3、控制功能
接收操作人員的指令,或者根據(jù)預先設定的控制程序,完成對現(xiàn)場的生產(chǎn)要素的調控。為了實現(xiàn)方便清晰的控制功能,要求能夠實現(xiàn)開/關、計時、定時、狀態(tài)回顯、操作鎖定等等功能。
4、記錄功能
系統(tǒng)應該能對實時采集到的監(jiān)測數(shù)據(jù)、傳感網(wǎng)絡的運行狀態(tài)信息、操作人員的登錄信息和控制指令等各種生產(chǎn)要素進行記錄。數(shù)據(jù)記錄的結構設計,會對數(shù)據(jù)的整理分析以及與其他系統(tǒng)的信息交換的便利性產(chǎn)生影響。這里采用通用數(shù)據(jù)庫MySQL進行數(shù)據(jù)的存儲。
二、軟件平臺的選擇
1、軟件開發(fā)平臺的需求
與辦公或工具類的桌面應用軟件不同,測控系統(tǒng)的軟件要有快速的事件響應,并且需要長時間穩(wěn)定可靠的運行。開發(fā)平臺的選用,需要考慮以下幾個因素。
1.1運行穩(wěn)定可靠
這就要求軟件有很好的進程管理和內存調度能力,并有較高的自查錯自糾錯能力,最好編程平臺的基礎模塊都是經(jīng)過長期運行和實踐驗證的模塊。
使用如C語言這類的語言編程,往往會因為考慮不周,導致一些不可預料的內存沖突或進程崩潰。那么,開發(fā)平臺是否有完備的基礎庫函數(shù),例如時序控制、通訊管理、接口控制、內存調度、數(shù)據(jù)庫接口等等模塊,對開發(fā)實時測控類程序是十分必要的。
1.2易于實現(xiàn)并行計算
從軟件功能的分析可以看出,測控系統(tǒng)是一種實時軟件,對及時性的要求是非常高的。
程序運行時,需要同時進行測量數(shù)據(jù)的傳輸、數(shù)據(jù)的處理和記錄、控制指令的執(zhí)行、設備狀態(tài)的巡檢、程序界面監(jiān)控和數(shù)據(jù)的顯示等多個處理進程。這就要求軟件開發(fā)平臺具備實施并行計算的機制,能夠很好地協(xié)調進程之間對處理器、內存、IO接口等資源的爭用,能夠有效地管理資源的分配和釋放。
1.3清晰的數(shù)據(jù)結構和程序結構
中控系統(tǒng)軟件的開發(fā),需要定義各種數(shù)據(jù),如監(jiān)測數(shù)據(jù),控制指令、設備狀態(tài)信息等等,這些數(shù)據(jù)的結構非常復雜,可能在一個結構體內就包含了整型、實型、布爾、日期、引用、類和變體等等。要求開發(fā)系統(tǒng)能對復雜的數(shù)據(jù)結構進行清晰的定義。從程序結構方面看,要求能夠實現(xiàn)循環(huán)、條件、事件、順序等結構,能夠實現(xiàn)定時、隊列、通知、同步的機制,并且具有完備的功能模塊,如TCP通訊、ODBC接口等功能模塊。
1.4易于維護
中控系統(tǒng)因為涉及很多因素,所以往往程序的體量很大。程序的開發(fā)平臺,應該自身具備軟件維護的工程方法,各種基礎模塊的功能和接口表述簡潔清晰,模塊易于進行調用和重組,所產(chǎn)生的程序代碼易讀易懂。
2、開發(fā)平臺的選用
基于以上對開發(fā)平臺的需求,我們選用了Labview程序設計系統(tǒng)。這是一款由美國NationalInstrument公司推出的圖形的軟件開發(fā)平臺。
NI公司的這款LabView軟件,雖然是針對它的專業(yè)的硬件模塊的集成應用而開發(fā)的,但是這并不是說離開了NI提供的硬件,這款軟件就沒有用武之地了。通過我們的實踐,證明LabView完全可以脫離NI的硬件來構建自己的測控系統(tǒng),甚至可以用它來開發(fā)純軟件產(chǎn)品。
LabView的開發(fā)環(huán)境提供了圖形化編程方法和前所未有的硬件集成,旨在幫助工程師和科學家快速設計和部署測量和控制系統(tǒng),提高生產(chǎn)力。借助這一靈活的平臺,工程師可以完成從設計到測試等一系列步驟以及開發(fā)大中小型系統(tǒng),同時重用IP和簡化流程,實現(xiàn)性能的最優(yōu)化。
三、測控軟件
1、軟件整體說明
如圖1所示,該軟件由四個小模塊組成:(1)程序運行過程控制可以控制數(shù)據(jù)開始采集、暫停\繼續(xù)采集、退出采集、設置圖標顯示方式以及對圖表的清除;(2)數(shù)據(jù)采集及溫度曲線設置實現(xiàn)對溫度數(shù)據(jù)采集間隔、報警上下限以及對實時溫度曲線、溫度上下限曲線、平均溫度曲線顯示顏色的設置;(3)溫度及報警顯示模塊顯示實時采集的溫度數(shù)據(jù)以及對超過設定溫度上下限的溫度值進行報警;(4)溫度曲線的顯示模塊,其中包括測試溫度變化曲線、溫度上限值、溫度下限值、平均溫度。
2、軟件操作
圖2中6個按鈕控制數(shù)據(jù)開始采集、顯示方式為層疊、顯示方式為分格、清除圖表、退出數(shù)據(jù)的采集和暫停\繼續(xù)數(shù)據(jù)采集。
(1)按下開始采集按鈕,系統(tǒng)開始自動模擬采集溫度數(shù)據(jù)。(2)按下層疊顯示或分格顯示按鈕來改變數(shù)據(jù)顯示方式。(3)按下清除圖表按鈕來清空數(shù)據(jù),以便系統(tǒng)開始重新采集溫度數(shù)據(jù)。(4)按下退出程序按鈕來安全退出溫度測控系統(tǒng)。(5)打開或關閉連續(xù)、暫停按鈕來控制系統(tǒng)對溫度數(shù)據(jù)的采集。
如圖3所示,這七個下拉列表分別控制溫度數(shù)據(jù)采集間隔、設置溫度報警上限(高溫報警)、設置溫度上限曲線的顏色、設置報警下限(低溫報警)、設置溫度下限曲線的顏色、設置實時溫度曲線的顏色和對平均溫度曲線顏色的設置。
如圖4,兩個指示燈實現(xiàn)過高溫和過低溫的報警,現(xiàn)為不報警狀態(tài),若溫度過高,則高溫報警指示燈變?yōu)榧t色,若溫度過低,則低溫報警指示燈變?yōu)樗{色。
四、測控系統(tǒng)
(1)如圖5所示為溫度測控系統(tǒng)總原理圖。
(2)溫度數(shù)據(jù)的采集間隔如圖6所示,這部分用隨機數(shù)模擬-20℃~170℃范圍的溫度數(shù)據(jù)源,設置一定長短的時間延遲來設置溫度數(shù)據(jù)的采集間隔,來有效的在圖像上表現(xiàn)出平均溫度的變化趨勢。
(3)溫度報警的上下限如圖7所示,這部分是用下拉列表設置溫度報警的上下限,通過下拉選擇,能夠測控不同的溫度,滿足實驗內容所需要求。
(4)溫度數(shù)據(jù)求和
如圖8所示,由于有時候需要求出某一段時間內的平均溫度數(shù)據(jù),所以本程序使用移位寄存器將此次采集數(shù)據(jù)之前連續(xù)四次數(shù)據(jù)進行求和,然后再與本次采集的數(shù)據(jù)求平均溫度。
(5)暫停/繼續(xù)顯示設置
通過判斷所采集的溫度是否在報警區(qū)間內,來實現(xiàn)溫度采集的暫停與繼續(xù)。假如采集到的溫度超過設定的上限值或下限值,則系統(tǒng)將報警并停止對數(shù)據(jù)的采集。
(6)各條顏色曲線的設置
這部分是以下拉列表的方式通過修改圖表屬性節(jié)點中指定活動曲線顏色來對各條曲線顏色進行設置,優(yōu)化系統(tǒng)界面,有利于對溫度變化和溫度平均值變化的有效區(qū)別。
(7)曲線的顯示格式設置
使用時間結構控制選項卡控件選項卡的切換來實現(xiàn)曲線顯示為層疊顯示還是分格顯示。既可以對所有數(shù)據(jù)進行對比,也可以對單一數(shù)據(jù)進行分析。
(8)清除圖表:通過給圖表屬性節(jié)點中歷史數(shù)據(jù)賦零值的方式對溫度曲線進行清除。
(9)系統(tǒng)的停止控制程序如圖9所示。
結束語
使用圖形化的設計方法開發(fā)測控系統(tǒng),具有開發(fā)周期短、運行穩(wěn)定可靠、程序功能強大、擴展能力強、后期維護方便等諸多優(yōu)點。LabView還具備狀態(tài)圖設計模式、消費者/生產(chǎn)者循環(huán)等多種獨具特色的程序設計模式,便于進行各種類型的程序開發(fā)。掌握LabView的虛擬儀器設計思想,熟練應用各種設計模式,對于實時測控項目的開發(fā)有著很大的實際意義。
參考文獻:
[1]侯國屏,葉齊鑫,王坤.LabVIEW7.1編程與虛擬儀器設計[M].北京:清華大學出版社,2005.
[2]豈興明,田京京,夏寧.LabVIEW入門與實踐開發(fā)100例[M].北京:電子工業(yè)出版社,2011.