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