楊方
摘要:針對糧倉環境溫濕度監測工作量比較大的問題,設計了基于單片機的糧倉溫濕度實時監控系統。該系統利用傳感器節點采集糧倉環境溫濕度參數,單片機對數據進行處理后,再利用無線傳輸技術將數據發送到主控機。該系統具有實用性強、穩定性好和價格便宜等優點,不僅能監測糧倉環境參數,也可推廣到其他領域,具有較好的實用價值。
關鍵詞:傳感器;單片機;監測與控制;無線通信技術
中圖分類號:TP277 文獻標識碼:A 文章編號:0439-8114(2016)09-2370-03
中國是產糧大國,糧食的存儲工作尤為重要。在糧倉管理工作中最重要的是防潮、防霉和防腐,傳統手段采用濕度試紙和溫度計、干濕度表、毛發濕度計等人工進行溫、濕度的監控工作。這些方法費時費力、效率低、測試結果不穩定、誤差大。
近年來由于糧食產量不斷增長,糧倉容量隨之擴大,傳統的糧倉溫、濕度監控方式已不能滿足需要,亟需設計一種便于操作、性能可靠的高效監控系統。為此,本研究設計了一種以PC機為核心,基于數字溫、濕度傳感器的自動監控系統,對糧倉中各重要位置的溫度和濕度等參數進行實時自動監控,從而提高糧倉管理的科學化和自動化水平。
1 系統設計架構
基于單片機的糧倉溫濕度實時監控系統結構如圖1所示。由用戶監控層、主控機控制層和分機測量層三部分構成,用戶監控層由微型計算機系統構成。主控機控制層由單片機系統構成,分機測量層由傳感器構成。分機與主控機采用主從式分布連接結構,通過無線通信技術實現數據傳輸。總體結構也可以分為溫濕度采集模塊、短距離無線通信模塊、系統控制及數據處理模塊。
2 系統硬件設計
系統硬件設計主要包括溫濕度采集電路設計、無線通信子系統電路接口設計和溫濕度顯示電路設計三部分。
2.1 溫濕度采集電路
在進行溫濕度采集電路設計時首先要選取好傳感器和單片機。傳感器主要有數字和模擬兩種。數字式傳感器可得到數字信號,就能直接與數字設備進行信號的處理,具有抗干擾能力強、可靠性高、測量精度和分辨率高、穩定性好等優點。模擬式傳感器的優點主要表現為測量速度快。測溫范圍寬:但對信號處理過程復雜,且模擬信號傳輸易受干擾。本系統從傳感器的特點和設計成本綜合考慮,溫度傳感器選取數字式的DS18820,濕度傳感器選取模擬電壓集成式的HM1500,DS18820能總線供電,具有使用方便、成本低、體積小、傳輸距離遠和MCU的通信協議簡單等優點。HM1500濕度傳感器具有精度較高、測溫面廣、響應較快、穩定性好、使用方便、價格實惠、性價比高等優點。采用多只DS18820和HM1500建成的多點溫濕度監測網絡如圖2。HM1500輸出為模擬量,因此要用A/D轉換器ADC0809將HM1500濕度傳感器采集的模擬信號轉換為數字信號。系統以16個溫濕度監測點為例,則要用2個CD4051模擬開關進行擴展,CD4051選通地址A-C由單片機P2口的低位地址P2.2-P2.4進行控制。將選中的信號送到ADC0809的兩個通道IN0和IN1后轉換為數字信號,再由DO-D3口輸出到89C51的P0口,送入單片機進行數據處理。
2.2 無線通信子系統電路接口
無線通信子系統電路接口如圖3所示。無線射頻收發芯片是無線通信模塊的關鍵元件,主要有nRF401、nRF905、RF2915等。其中nRF401集成了高頻發射、接收,FSK調制、解調,雙頻道切換等功能,具有性能優異、功耗低,且外圍元件很少,使用方便等特點。因此本設計選用nRF401。CPU采用89C51,它接收上位機傳來的數據,同時通過nRF401發送到各子系統,nRF401的DIN端與89C51的TXD端連接,需發射的串行數據由DIN輸入:DOUT輸出數字信號與89C51的微控制器的RXD相連,nRF401解調出來的信號由DOUT輸出到微處理器:PWRUP為模式選擇,與微處理器的P1.1相連。PWRUP=1時nRF401正常工作:當PWRUP=0時芯片處于待機模式,此時工作電流為8μA,不能進行接收和發射數據。TXEN為發射允許控制端,與微處理器的P1.0相連,TXEN=1時nRF401工作在發射模式,此時系統向外發送數據,當TXEN=0時為接收模式。CS為信道選擇輸入,通過微處理機P1.2端進行控制,CS=0表示芯片工作在信道0(433.92MHz),CS=1則工作在信道1(434.33MHz)。
2.3 顯示電路
顯示模塊選擇PS7219芯片,因為PS7219采用同步串行外設接口(SPI),與單片機連接方便,能驅動8位LED。顯示器件主要有液晶顯示器(LCD)和數碼管顯示器(LED)。考慮到要適合各種環境,因此本設計采用數碼管顯示器。把89C51的P1.6作串行數據的輸出。與PS7219的DIN端口連接,P1.5和P1.7通過程序產生PS7219的LOAD信號及其CLK。PS7219的SA-SG、SDP端接各LED數碼管的a-f和DP,DIG1-DIG8分別接LED的共陰極進行位選。
3 系統軟件設計
系統的軟件設計采用模塊化結構,主要由參數設置模塊、數據采集處理模塊、數據存儲管理模塊和控制模塊組成。
3.1 主控機主程序
主控機(上位機)的結構如圖4。其中PC機負責數據存儲和管理,主單片機負責數據收發。當主控機主單片機進入中斷服務狀態時,向分機(下位機)發出測試指令,當主控機接收數據完成后再置為接收數據模式,待數據接受完成后,由中斷指令進行顯示(或上傳)并保持。新的中斷指令到來時才結束。主控機主程序流程圖如圖5所示。
3.2 分機主程序
分機程序設計一般先要初始化,再循環執行主要功能。主控機定時收到監測點傳來的數據存儲且顯示。上電復位后能顯示各倉位號、監測數據和監測時間。分機程序設計的流程如圖6所示。
4 小結
本研究設計的基于單片機和無線傳輸技術的多路溫濕度數據監控系統,利用分時掃描監測區內的傳感器,從而達到對數據的監測與控制。系統應用了傳感技術、無線收發技術和計算機技術,實現多點溫濕度數據的監測和無線傳輸。但是還存在很多不足。比如溫度傳感器的測溫范圍不寬、傳輸速率慢,濕度傳感器反應慢,無線發射距離較近等。下一步將對系統進行優化,期望能對糧倉的更多參數實現精確監測與控制。