□李兵 □徐帆 □王艦威
隨著現(xiàn)代工業(yè)、農(nóng)業(yè)技術(shù)的發(fā)展,人們對精確的溫濕度測量技術(shù)的需求越來越高,溫度作為工農(nóng)業(yè)中一個重要的參數(shù),影響著棚中農(nóng)作物的產(chǎn)量和質(zhì)量[1]。目前,溫度檢測與傳輸系統(tǒng)主要有兩種方式:一種是成熟的有線傳輸方式,如現(xiàn)場總線和RS485總線,該方式雖然具有數(shù)據(jù)傳輸率高、抗干擾能力較強等優(yōu)點,但同時也具有現(xiàn)場鋪設(shè)線纜成本高、設(shè)備維護難度較大以及故障檢測復(fù)雜等缺點;第二種傳輸方式是無線傳輸方式,隨著射頻技術(shù)和集成技術(shù)的不斷發(fā)展,無線數(shù)據(jù)傳輸系統(tǒng)實現(xiàn)起來越來越容易,數(shù)據(jù)傳輸速率越來越高,抗干擾能力也越來越強,而且具有成本低、維護簡單、穩(wěn)定性高等優(yōu)點。因此,筆者針對有線傳輸方式的不足,提出了一種分布式無線溫濕度檢測與傳輸系統(tǒng),該系統(tǒng)具有可靠性高、傳輸距離遠、維護方便等優(yōu)點。
本文采用的技術(shù)方案如圖1所示,為了滿足無線系統(tǒng)傳輸?shù)男枰?,整個技術(shù)方案可分為上位機子系統(tǒng)和下位機子系統(tǒng)兩部分。其中上位機子系統(tǒng)放置在監(jiān)控的機房中,通過nRF905無線傳輸模塊接受下位機采集到的溫度和濕度等信息,并利用RS232串口協(xié)議將不同下位機節(jié)點采集的溫濕度信息實時顯示在上位機的控制界面上,當溫度超出了一定范圍時,發(fā)出報警提示,也可以將溫濕度保存并繪制成曲線進行數(shù)據(jù)分析。下位機子系統(tǒng)主要分布在溫濕度的采集現(xiàn)場,單片機AT89C52實時采集由數(shù)字式溫濕度傳感器SHT11檢測到的溫濕度值并實時顯示在1602液晶屏上,同時通過無線數(shù)據(jù)傳輸模塊nRF905以無線載波的形式將溫濕度信息傳輸給上位機。
上位機子系統(tǒng)的結(jié)構(gòu)原理圖如圖2所示,由圖中可以看出,上位機子系統(tǒng)主要由液晶顯示、存儲器、nRF905無線傳輸模塊和232通信模塊組成。其工作原理:由單片機AT89C52單片機組成的CPU模塊發(fā)出輪詢命令,當無線傳輸模塊檢測到頻率相同的載波時,nRF905芯片對其進行解調(diào)并進行地址解析和CRC校驗,當數(shù)據(jù)接受完成后,以外部中斷的形式觸發(fā)單片機進入到中斷程序,通過單片機與nRF905芯片之間模擬的SPI接口從芯片中提取溫濕度數(shù)據(jù)并在液晶屏上顯示出來,同時CPU模塊將采集到的溫濕度數(shù)據(jù)通過232轉(zhuǎn)換電路上傳給上位機PC機中。

▲圖1 技術(shù)方案示意圖

▲圖2 上位機子系統(tǒng)結(jié)構(gòu)原理圖
下位機子系統(tǒng)結(jié)構(gòu)原理如圖3所示,由圖中可以看出,下位機子系統(tǒng)由SHT11溫濕度傳感器、CPU模塊、nRF905無線傳輸模塊、液晶顯示等模塊組成。其工作原理:當下位機的無線傳輸模塊檢測到上位機發(fā)送的輪詢命令載波信號時對其進行解析,數(shù)據(jù)接受完成后,CPU模塊進入到中斷程序通過SPI模擬接口讀取nRF905芯片中存儲的數(shù)據(jù),并對其中的地址進行匹配比較,當匹配成功后,CPU模塊通過SPI接口配置nRF905激活無線傳輸模塊,將采集到的現(xiàn)場溫濕度數(shù)據(jù)以載波的形式發(fā)送給上位機;如果匹配不成功,則不予采集。

▲圖3 下位機子系統(tǒng)結(jié)構(gòu)原理圖
本文采用SHT11傳感器,它具有I2C總線接口的單片全校準數(shù)字式相對濕度和溫度傳感器。該傳感器采用獨特的CMOSensTM技術(shù),具有數(shù)字式輸出、免調(diào)試、免標定、免外圍電路及全呼喚等特點。其內(nèi)部集成了14位A/D轉(zhuǎn)換器,采用數(shù)字信號輸出,且測量精度可編程調(diào)節(jié),溫度測量范圍為-40~123.8℃,精度為±0.01℃,濕度測量范圍為0~100%RH,精度為±0.03%RH。此外其具有可靠的CRC數(shù)據(jù)傳輸校驗功能,傳輸可靠性高,抗干擾能力強[2],低功耗,測量時平均電流為28 μA,休眠時電流為3 μA。
nRF905芯片是挪威Nordic公司生產(chǎn)的單片射頻收發(fā)器芯片,工作電壓為1.9~3.6V,載波頻段允許433、868和915MHz等3個ISM頻道(可以免費使用)。nRF905無線收發(fā)器采用硬件曼徹斯特編碼/解碼方式,芯片自動實現(xiàn)字頭處理和CRC校驗。nRF905采用非實時數(shù)據(jù)傳輸方式,當接收端接收到數(shù)據(jù)后,首先存儲在片內(nèi)存儲器內(nèi),然后外部控制器采用中斷或查詢的方法讀取接收數(shù)據(jù)。
nRF905的工作模式由TRX_CE、TX_EN和PWR_UP的設(shè)置來決定,nRF905采用串行外圍設(shè)備接口SPI與單片機連接。由于單片機不具備SPI接口,本文采用單片機的I/O口來模擬SPI接口,接口電路如圖4所示,AT89C52單片機對nRF905進行讀、寫操作時,必須通過CSN引腳由高電平到低電平跳變使nRF905芯片處于工作狀態(tài)。由于nRF905模塊內(nèi)部有完整的通信協(xié)議,所以與nRF905進行SPI通信時,主要是實現(xiàn)對nRF905模塊的有效初始配置,以及CPU與nRF905模塊之間SPI通信的實現(xiàn)[3]。

▲圖4 無線傳輸電路
本文采用的SHT11傳感器具有I2C接口,單片機通過I/O引腳來模擬與傳感器的I2C通信協(xié)議,從而讀取現(xiàn)場采集到的溫度和濕度值。接口電路如圖5所示。
由于下位機子系統(tǒng)分布在采集溫濕度現(xiàn)場,只需要顯示溫度和濕度,顯示的內(nèi)容不多,所以選用小型的1602液晶屏。上位機子系統(tǒng)布置在控制室內(nèi),需要顯示多個從機的信息,所以采用240×128點陣液晶。存儲模塊主要用于存儲CPU模塊采集的溫度和濕度值。

▲圖5 SHT11硬件電路圖

▲圖6 數(shù)據(jù)發(fā)送軟件流程圖

▲圖7 數(shù)據(jù)接收軟件流程圖
本系統(tǒng)主要由溫濕度傳感器SHT11、無線傳輸模塊nRF905以及液晶顯示部分組成,溫度傳感器與CPU模塊之間主要通過SPI進行通信,該軟件比較簡單,因此,整個軟件設(shè)計的重點是nRF905的收發(fā)。
nRF905收發(fā)芯片接受數(shù)據(jù)的軟件流程如圖6所示,單片機首先將PWR_UP引腳置為“1”、TRX_CE置為“0”,使nRF905處于待機模式,CPU模塊將下位機子系統(tǒng)的接受地址和待發(fā)送的輪詢命令寫入nRF905對應(yīng)的寄存器中,然后將PWR_UP、TRX_CE和TX_EN引腳全部置為“1”,使nRF905進入發(fā)送模式,此時射頻寄存器自動開啟,數(shù)據(jù)打包(加字頭和CRC校驗碼)后被高速發(fā)送出去,數(shù)據(jù)發(fā)送完成時DR自動置為“1”。若配置寄存器中的自動重發(fā)位(AUTO_RETRAN)被置高,則nRF905將不斷重復(fù)發(fā)送數(shù)據(jù)包,直到TRX_CE被置為“0”;TRX_CE被置“0”時,nRF905發(fā)送過程完成,自動進入待機模式[4][5]。
接收數(shù)據(jù)流程圖如圖7所示,當nRF905接受數(shù)據(jù)時,CPU在nRF905芯片處于待機模式時將地址寫入到nRF905中的配置寄存器中,然后單片機使TRX_CE為“1”,TX_EN為“0”,使nRF905處于接受模式。此時,nRF905不斷檢測下位機子系統(tǒng)發(fā)送的載波信號。當nRF905檢測到與接收頻率相同的載波信號時,其載波檢測引腳(CD)被置為高電平,然后nRF905將接收到的數(shù)據(jù)進行地址匹配和校驗,如果地址匹配成功且數(shù)據(jù)校驗正確時,DR引腳會自動置高,單片機進入中斷處理程序,使nRF905處于待機模式,最終通過SPI協(xié)議,從nRF905的數(shù)據(jù)寄存器中讀取有效數(shù)據(jù)。
(1)針對傳統(tǒng)的有線溫濕度檢測與傳輸系統(tǒng)維護成本高、故障檢測難等缺點,設(shè)計了一種以AT89C52單片機為控制核心,采用SHT11為溫濕度傳感,nRF905為無線傳輸模塊的分布式無線檢測與傳輸系統(tǒng)。
(2)經(jīng)過試驗驗證,該系統(tǒng)在空曠的場地內(nèi)無線傳輸距離可以達到1 000 m左右,驗證了該系統(tǒng)的可靠性和穩(wěn)定性。
[1]鄒家柱.多點溫度無線檢測與控制系統(tǒng)設(shè)計[J].價值工程,2011(21):35-36.
[2]張偉,戈振揚.烤煙房溫濕度無線數(shù)據(jù)采集系統(tǒng)[J].計算機工程,2010(2):240-242.245.
[3]王何宇,朱莉.基于nRF905的溫濕度無線傳輸系統(tǒng)[J].電子測試,2011(5):78-81.
[4]薛敏迪.基于nRF905的低功耗溫濕度無線測量系統(tǒng)[J].現(xiàn)代電子技術(shù),2010(1):135-138.
[5]題原,宋飛,劉樹東,等.基于nRF905的無線溫濕度檢測與傳輸系統(tǒng)設(shè)計[J].化工自動化及儀表,2011(4):404-407.