胡天水,陳其工,魏利勝,林園勝
(安徽工程大學安徽省檢測技術與自動化裝置重點實驗室,安徽蕪湖 241000)
無論是在工業生產還是農業生產當中,溫度和濕度都是生產過程中的兩個重要環境參數,其測量的實時性和準確度直接影響到生產效率[1].使用Proteus軟件仿真,能夠檢驗系統的可行性,無需硬件制作,修改方便,便于調試,既高效又節約成本;Lab VIEW設計的人機界面簡潔直觀,便于用戶使用,擴展性較高.所以設計一個既能對環境溫濕度實時監測,又能使用戶方便、快捷、高效地監測溫濕度信息的系統,具有很重要的現實意義.
傳統的監測系統雖然能夠實現對溫濕度的采集,甚至能夠通過串口將數據傳輸到PC機上[2],但其人機界面不夠友好,對環境監測的效率較低.本設計在實現基本的溫濕度實時監測的基礎上,添加了系統時間模塊,并且使用液晶顯示器來顯示溫濕度的值和系統的時間.這樣不但可以獲得溫濕度數據,同時還可以記錄采集到數據的時刻,便于用戶分析溫濕度隨時間的變化關系.Lab VIEW設計的用戶界面簡潔直觀[3],既有超限時LED燈報警,同時又有聲音報警.
首先在Proteus中設計溫濕度采集系統的仿真,該系統能夠液晶顯示溫濕度數值,同時顯示此時的時刻.然后,通過虛擬串口將溫濕度值和采樣時刻打包發送給Lab VIEW設計的人機界面,系統結構框圖如圖1所示.其中人機界面功能包括:顯示溫度和濕度的值、顯示溫度和濕度變化曲線、設定溫濕度報警的上下限及記錄溫濕度的歷史數據.

圖1 系統結構框圖
使用SHT11傳感器芯片構成溫濕度采集模塊,負責對環境溫濕度的采集;由單片機AT89C52及其最小系統構成數據分析、處理和控制模塊;以時鐘芯片DS1302為核心的模塊構成時間系統,用來給采集到的數據打上時間戳,記錄采集溫濕度數據的年月日和時分秒;液晶顯示器1602顯示溫度和濕度的值及此時刻的時間;串口模塊負責將帶有時間戳的溫濕度數據傳給Lab VIEW設計的人機交互界面.Proteus下的電路仿真如圖2所示.為了獲取更精確的數據,需要對傳感器的非線性進行補償,可以使用公式RHlinear=C1+進行補償.式中的各個數據參數如表1所示.當實際溫度與常溫25℃(77℉)相差較大時,濕度傳感器的溫度系數需要進行如下調整:式中數據的各個參數如表2所示.

圖2 Proteus電路仿真

表1 濕度轉換系數

表2 溫度補償系數
采集系統軟件設計流程圖如圖3所示.設計中,使用兩個狀態標志位Readflag、Uartflag和與標志位對應的計數變量num、num1.Readflag是系統是否讀取傳感器和時鐘數據的標志位,Uartflag是系統是否將數據通過串口發送給Lab VIEW上位機的標志位.使用Timer0中斷,每中斷一次,num、num1各自加上1.當計數變量達到一定的數值,就將相應的狀態標志位置1,從而執行相應的程序,這種軟件設計的方法比較高效實用[4].

圖3 采集系統軟件設計流程圖
Lab VIEW(Laboratory Virtual Instrument Engineering Workbench)是由美國NI公司開發研制的一種利用圖標代替文本行創建應用程序的圖形化編程語言,使用非常方便.Lab VIEW人機界面的設計過程可分為前面板設計和后面板設計.通過(Virtual Instrument Software Architecture,VISA)用戶能與大多數儀器總線連接,包括GPIB、USB、串口、PXI、VXI和以太網等[5].用戶成功登錄之后,首先為VISA配置串口的各種參數,如設置波特率為“9600”、數據位為“8”、停止位為“1”、校驗位為“無校驗”等;然后VISA讀取函數通過屬性節點讀取串口緩沖區中的數據[6-7],串口傳輸數據格式為“Hum:82 Temp:26 Time:11:04:11 2013/10/23”,故在后面板程序中掃描字符串函數VI的偏移量設為4和14,用來提取濕度和溫度的數值;最后將溫濕度數值分別于設定的上下限進行比較,如果不在設定的范圍,則系統的報警指示燈會亮起同時會有聲音報警,同時通過串口向下位機發送控制指令,以調節下位機加濕或干燥、加熱或降溫的繼電器通斷狀態,從而使溫濕度穩定在設定的范圍.與此同時,在前面板中“數據接收窗口”將接收數據并實時顯示,同時,記錄保存數據.后面板設計的流程圖如圖4所示,設計的后面板如圖5所示.

圖4 后面板程序流程圖

圖5 后面板的程序設計
使用Eltima公司開發虛擬串口驅動器(Virtual Serial Port Driver,VSPD)模擬仿真Proteus與Lab-VIEW之間的串口數據傳輸.在Proteus和Lab VIEW進行通信之前,要配置串口的基本參數,如COM口、波特率、數據位等.Lab VIEW保存的歷史采集數據信息如圖6所示.其數據含義為:Hum代表采集到的濕度,Temp代表采集到的溫度,Time為系統時間及日期.Lab VIEW人機界面如圖7所示.

圖6 Lab VIE記錄的歷史數據

圖7 Lab VIEW人機界面
本文設計實現了基于Lab VIEW和Proteus溫濕度監測系統的聯合仿真,仿真結果證實該系統穩定可靠,且設計簡單便利,降低系統開發成本,用戶能夠方便快捷地對生產環境的溫濕度進行實時監測,極具推廣潛力和應用前景[7].
[1] 趙建華,曹超.一種遠程無線環境溫濕度檢測系統[J].西安工業大學學報,2012,32(4):340-344.
[2] 呂向鋒,高洪林,馬亮,等.基于Lab VIEW串口通信的研究[J].國外電子測量技術,2009,28(12):27-30.
[3] 許鋼,林園勝,胡天水,等.虛擬儀器技術在溫度采集系統中的應用[J].武漢工程大學學報,2013,35(7),81-86.
[4] 郭天祥.51單片機C語言教程[M].北京:電子工業出版社,2009:147-149.
[5] 陳錫輝,張銀鴻.Lab VIEW 8.20程序設計從入門到精通[M].北京:清華大學出版社,2007:7-9,229.
[6] 馬草原,郭雙雙,李國欣,等.基于LABVIEW的串口調試與數據分析[J].工礦自動化,2005,8(4):74-76.
[7] 周鵬,許鋼,郭旭東,等.基于Lab VIEW的廣義線性擬合在成本預測中的應用[J].安徽工程大學學報:自然科學版,2013,28(3):44-46.