彭安娜,袁愿,馮金垣
(華南理工大學 廣東 廣州 510641)
基于RFID和LABVIEW的分布式溫濕度監控系統的設計
彭安娜,袁愿,馮金垣
(華南理工大學 廣東 廣州510641)
研究一種基于RFID和LABVIEW的分布式溫濕度監控系統,采用單片機AT89C2051作為控制核心,用SHT10作為溫濕度采集傳感器,再通過無線芯片nRF24L01發送數據,同時單片機接收發送來的數據并進行處理,接收端接收數據并通過串口與計算機相連,在計算機上顯示數據并進行處理分析。實驗結果表明,溫度為26.76?C,與Lab-VIEW中顯示的結果相一致,可以準確地顯示環境溫度,相對濕度為59.33%RH,與LabVIEW顯示的濕度58.52%RH稍有偏差,在誤差允許范圍內,能滿足對實時性的需求,實現監控溫濕度變化的預期目標。
RFID;LABVIEW;無線數據傳輸;溫濕度監控
隨著科技的進步和現代工農業技術的發展,溫度和濕度的測量和控制對人類生活、工業生產、氣象預報、物資倉儲等都將起著越來越重要的作用[1]。隨著經濟發展,人們生活水平的大幅提高,對生活環境提出了更高的要求,而且在其它特殊場合下對環境的要求更為嚴格,所以環境監測日益被人們關注。
論文設計了基于射頻技術的無線數據傳輸的溫濕度監控系統。該系統由硬件和軟件兩部分組成。系統結構簡單,可靠,功耗較低,電路簡單。該系統能實時監控溫濕度的變化,當溫濕度超過警戒值,系統會報警甚至停止工作。整個系統安裝方便布置容易,而且具有成本低、應用廣、穩定性高的優點,可以適用于很多場合。
1.1系統工作原理
溫濕度監控系統主體是由單片機和無線通訊模塊,由采集溫濕度信號的采集電路、時鐘模塊、控制電路的電源電路、顯示模塊等組成。該監控系統是通過溫濕度傳感器對環境中的溫濕度進行數據采集,然后經過A/D轉換將數據信號傳輸到單片機中,單片機再對數據信號進行分析、處理,同時將得到的信號傳輸到發射模塊,將數據發射至接收模塊,通過單片機控制顯示模塊對接收到的數據進行顯示。
1.2系統的組成
本次設計的基于RFID的分布式溫濕度監控系統有上位機子系統和下位機子系統兩個部分組成。上位機子系統由主控芯片AT89C2051單片機、無線射頻接收模塊、天線、電源模塊、時鐘模塊、串口通信模塊、終端設備等組成,原理框圖如圖1所示。
下位機子系統由主控芯片AT89C2051單片機、溫濕度傳感器、無線射頻發射模塊、天線、電源模塊以及時鐘模塊等組成。
在下位機子系統中,由溫濕度傳感器 SHT10分別對溫度和濕度信號進行實時采集,在主控芯片AT89C2051單片機的控制下通過無線發送模塊nRF24L01將溫濕度數字信號發送到上位機子系統;在上位機子系統中,在AT89C2051主控單元的作用下,通過無線射頻接收模塊接收下位機子系統發送過來的溫濕度數字信號,通過串口通信模塊與終端設備進行通信,在終端設備中利用軟件讀取數據并繪制曲線。

圖1 上方圖為上位機子系統原理框圖,下方圖為下位子系統原理框圖
2.1溫濕度傳感器的電路設計
溫濕度傳感器SHT10需將采集到溫濕度信號傳輸至AT89C2051單片機上,因此需將SHT10芯片的DATA端口與SCK端口與單片機的I/0引腳口相連[2]。具體電路設計如圖2所示。

圖2 溫濕度傳感器SHT10的電路設計
2.2無線射頻識別電路設計
無線射頻識別技術是本次設計中最為關鍵的模塊,它串聯著上位機子系統和下位機子系統,有著承上啟下的作用。下位機子系統只有通過無線射頻識別技術才能將采集到的溫濕度信號傳給上位機子系統,并最終顯示出來。
nRF24L01是由NORDIC生產的工作在2.4~2.5 GHz的ISM頻段的單片無線收發器芯片[3]。89C2051單片機與nRF24L01無線收發模塊之間利行口SPI進行雙向通信。
nRF24L01的SPI總線有SCK(SPI時鐘)、MISO(主入從出)、MOSI(主出從入)、CSN(SPI使能)。89C2051通過控制PWR_UP、PRIM_RX以及CE3個引腳平使nRF24L01分別處于發射模式、接收模式、待機掉電模式,IRQ是中斷標志位[4]。89C2051與nRF24L01的連接圖如圖3所示。

圖3 89C2051與nRF24L01的連接圖
2.3系統電源電路設計
電源電路作為整個溫濕度監控系統的最關鍵部分,對監控系統能否正常工作有著舉足輕重的作用,本設計電源電路采用輸入5 V電壓輸出3.3 V電壓。如下圖4為系統的電源電路圖。

圖4 系統電源電路圖
圖中接在電源引腳VCC與地GND之間的0.01 μF的電容,用以去耦濾波。這兩個電容起到了穩壓的作用。它們都屬于安全電容,從而要求電容值不能偏大,而耐壓必須較高。從而達到控制在額定頻率及額定電壓作用下,流過它的漏電流的大小和對系統EMC性能影響的目的。GJB151規定Y電容的容量應不大于0.1 μF[5]。
2.4串口通信電路
由于RS-232C電平采用負邏輯,即邏輯0電平規定為+ 5~+15 V,邏輯1電平規定為-15~-5 V,而單片機的采用CMOS電平[6]。因此,單片機的SCI口要通過電平轉化芯片將與TTL兼容的CMOS高電平轉化成RS-232的負電壓信號,把低電平轉化成RS-232的正電壓信號[7]。本方案中選用了常用的MAX3232芯片,由MAX3232設計的RS-232串口連接電路框圖如圖5所示。

圖5 串口通信電路框圖
串行串口將實現單片機與上位機之間的通信,無線接收模塊通過串口將發射模塊采集到的溫濕度信息傳送到計算機中,以供處理顯示。
3.1收發模式程序設計
程序流程圖如圖6所示。
3.2SHT10相關函數介紹
3.2.1SHT10啟動傳輸程序
SHT10作為數字式的溫濕度一體化傳感器,不僅要采集溫濕度數據而且要將采集到的溫濕度數據傳輸給單片機,因此傳輸程序是保證整個過程能順利進行的基礎。
當SHT10芯片的DATA端口和SCK端口出現下面情況時,芯片才能進行傳輸。

即起初DATA端口和SCK端口分別置于高電平和低電平,當SCK端口轉換成高電平1 μs后DATA端口轉換成低電平,又隔1 μs后SCK端口恢復至低電平。由此反復,直到DATA端口和SCK端口恢復至起初一樣。

圖6 左圖為無線發射程序流程圖,右圖為無線接收程序流程圖
3.2.2SHT10連接復位程序
啟動傳感器后,傳感器在通電后11ms后進入休眠狀態,此時必須連接復位才能啟動傳輸功能。要想通訊復位,必須要DATA端口處于高電平時,SCK時鐘信號觸發9次,然后啟動傳輸。具體脈沖如下所示:

3.2.3溫濕度測量程序
溫濕度的測量是整個系統的基礎,故溫濕度數據的測量關系到接下來所有步驟的運行。因為溫濕度測量可以有各自的代碼,溫度測量的代碼為 00011,濕度測量的代碼為00101。所以進行溫濕度測量時,先啟動傳輸,然后發送命令代碼,進行溫濕度測量,然后將溫濕度數據讀取出來。
3.3串口發送程序設計
通過單片機控制串口發送接收到的溫濕度數據是監控系統能否起到監控功能的基礎,串口發送需要用到緩沖寄存器SBUF,SBUF是字節尋址的寄存器,字節地址均為99H。當串口發送數據是,單片機向SBUF寫入數據,此時99H表示發送SBUF。
3.4LabVIEW程序設計
LabVIEW軟件是接收串口通信發射的數據,通過轉換最終顯示出溫度和濕度,其程序圖如圖7所示。
下面對程序進行簡單介紹:
1)首先設置波特率為9 600,然后將接收到的數據(字符串)轉換成字節數組;
2)由于轉換過來的為 16進制數,所以進一步轉換成十進制數;
3)根據公式T=0.01SOT-39.7得到實際的溫度數值;
4)根據公式 RHlinear=2.0468+0.0367·SORH-1.5955E-6· SORH2(%RH)和公式 RHture=(T℃-25)(0.01+0.00008·SORH)+ RHlinear算出實際的濕度數值;
5)通過面板將溫度和濕度的數值顯示出來。
LabVIEW上顯示出溫濕度的變化將驗證整個系統的設計是否成功,在將串口電路接入電腦后,我們對串口通信電路進行了測試,測試結果如下所示。
通過圖8可以得到,串口接收到的溫度信號是19F6、濕度信號為070F,首先將溫度信號轉換成為十進制,0x19F6= 6646。根據公式 T=0.01SOT-39.7,得到 T=26.76℃,與LabVIEW中顯示的結果相一致,可以準確地顯示環境溫度,很好地實現了監控系統的要求。
計算濕度首先得計算出相對濕度,然后再對濕度信號進行溫度補償。
首先轉換濕度信號,0x070F=1807,根據公式 RHlinear=-2.0468+0.0367·SORH-1.5955E-6·SORH2(%RH)得到 RHlinear= 59.06,將T℃=26.76℃以及RHlinear代入下面的公式RHture=(T℃-25)(0.01+0.00008·SORH)+RHlinear得:RHture=59.33%RH,與LabVIEW顯示的濕度的溫度稍有偏隔,但這卻是因為面板顯示的濕度與串口采集的數據不同步造成的,即使當做誤差,也基本上也達到了監控系統的要求。
文中通過對實驗程序的無線收發系統的調試,可以明顯看到基于射頻技術的分布式溫濕度監控系統能成功的對環境溫濕度變換情況進行監控,效果明顯。實驗結果表明,溫度為26.76℃,與LabVIEW中顯示的結果相一致,可以準確地顯示環境溫度,相對濕度為59.33%RH,與LabVIEW顯示的濕度58.52%RH稍有偏差,在誤差允許范圍內,能滿足對實時性的需求,實現監控溫濕度變化的預期目標。

圖7 LabVIEW程序圖

圖8 左圖為串口傳輸數據圖,右圖溫濕度變化波形圖
[1]衣翠平.基于無線傳感器網絡的糧庫溫濕度實時監控系統研究[D].長春:長春理工大學,2012.
[2]樊建明,陳淵睿.基于SHT11的溫室多點測量系統設計[J].國外電子測量技術,2006,25(11):4-8
[3]劉曉紅,何永洪.基于nRF2401的無線數據通信系統[J].電視技術,2008,32(318):72-81.
[4]朱玉穎,蔡占輝.基于nRF24L01的遠程溫度檢測系統設計[J].自動化技術與應用,2010,29(5):56-58.
[5]楊毓.近距離低功耗無線通信技術的研究[D].太原:中北大學,2008.
[6]黃燕妮,王少云.USB、RS232/RS422接口轉換電路的設計[J].電子設計工程,2012,20(22):27-29.
[7]王強,張建喜.RS232通信網絡與CAN總線通信網絡互聯設計[J].電子技術應用,2010,36(9):158-160.
[8]程時潤,萬鈞力,劉浩.基于LabVIEW的光伏電池建模與仿真[J].陜西電力,2015(7):17-21,26.
[9]宋曉林,王正杰,寇喆.基于LabVIEW和Matlab綜合平臺的高精度多功能虛擬數字電能表的研究[J].陜西電力,2015 (8):39-44,49.
[10]劉斌許紅軍陳樨.基于OPNET的智能配電變電站通信網絡研究與仿真[J].陜西電力,2013(10):35-38.
Design of distributed temperature and humidity monitoring system based on RFID and LABVIEW
PENG An-na,YUAN Yuan,FENG Jin-yuan
(South China University of Technology,Guangzhou 510641,China)
The text researches one kind of distributed temperature and humidity monitoring system based on radio frequency technology and LABVIEW,which uses a single chip microcomputer AT89C2051 as the control core,a chip SHT10 as a sensor for collecting temperature and humidity,then,transmitting data over the wireless chip nRF24L01,at the same time,the SCM receives the data and processes,receiving end receives the data and connects to a computer through the serial port,displaying data on the computer and beginning analysis.Experimental results show that temperature is 26.76?C,consistented with the results shown in LabVIEW,which can accurately display the ambient temperature.The humidity is 59.33%RH,with the 58.52%RH shown in LabVIEW of slight deviation.In the range of allowable error,it can meet the needs of real-time,successfully achieve the desired objective of monitoring temperature and humidity.
RF technology;LABVIEW;wireless data transmission;temperature and humidity monitoring
TN99
A
1674-6236(2016)06-0145-04
2015-05-04稿件編號:201505014
彭安娜(1990—),女,湖北鄂州人,碩士研究生。研究方向:光電子學與光電技術。