基于無(wú)線傳感器網(wǎng)絡(luò)農(nóng)田信息自動(dòng)檢測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:農(nóng)田信息的及時(shí)準(zhǔn)確獲取是精準(zhǔn)農(nóng)業(yè)實(shí)施的基礎(chǔ)?;诋?dāng)前無(wú)線傳感器網(wǎng)絡(luò)在農(nóng)田信息采集中的應(yīng)用現(xiàn)狀,提出了設(shè)計(jì)體積小、成本低、低功耗、工作持續(xù)時(shí)間長(zhǎng)的農(nóng)田信息采集無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的必要性。系統(tǒng)采用Atmel公司的低功耗處理器芯片ATmega1281和AT86RF23 1射頻芯片,最終實(shí)現(xiàn)了低功耗、低成本、低復(fù)雜度的檢測(cè)系統(tǒng),通過(guò)對(duì)溫濕度等環(huán)境因子的檢測(cè),能夠達(dá)到對(duì)作物種植環(huán)境進(jìn)行實(shí)時(shí)監(jiān)測(cè)的要求。
關(guān)鍵詞:無(wú)線傳感器網(wǎng)絡(luò);農(nóng)田信息采集;低功耗;實(shí)時(shí)監(jiān)測(cè);節(jié)點(diǎn)
精準(zhǔn)農(nóng)業(yè)已成為我國(guó)農(nóng)業(yè)發(fā)展的趨勢(shì),農(nóng)田信息的及時(shí)準(zhǔn)確獲取是精準(zhǔn)農(nóng)業(yè)實(shí)施的基礎(chǔ)。傳統(tǒng)農(nóng)業(yè)主要使用孤立的、沒(méi)有通信能力的機(jī)械設(shè)備和傳感設(shè)備,主要依靠人力監(jiān)測(cè)作物的生長(zhǎng)狀況。不但要耗費(fèi)大量的人力,而且不能夠做到實(shí)時(shí)監(jiān)控,如果采用有線測(cè)控系統(tǒng),則需要鋪設(shè)光纖或者電纜,這樣不但增加了成本,而且降低了系統(tǒng)的靈活性和可擴(kuò)展性。隨著傳感器技術(shù)、無(wú)線通信技術(shù)及嵌入式技術(shù)的發(fā)展,孕育出了一種新的信息獲取、傳輸、處理的智能網(wǎng)絡(luò)——無(wú)線傳感器網(wǎng)絡(luò)。無(wú)線傳感器網(wǎng)絡(luò)可以實(shí)時(shí)監(jiān)測(cè)、感知和采集監(jiān)控區(qū)域的信息,并將采集到的數(shù)據(jù)經(jīng)處理后發(fā)送給終端用戶。目前,國(guó)內(nèi)外科研人員已有將無(wú)線傳感器網(wǎng)絡(luò)應(yīng)用于農(nóng)業(yè)領(lǐng)域,本文主要針對(duì)當(dāng)前環(huán)境監(jiān)測(cè)中面臨的網(wǎng)絡(luò)布線困難、成本高及實(shí)時(shí)性差等問(wèn)題,提出了基于無(wú)線傳感器網(wǎng)絡(luò)農(nóng)田信息自動(dòng)檢測(cè)系統(tǒng)的設(shè)計(jì),該系統(tǒng)具有低功耗、體積小、工作時(shí)間長(zhǎng)、成本低的特點(diǎn),同時(shí)可實(shí)現(xiàn)危險(xiǎn)區(qū)域的低成本無(wú)人連續(xù)在線監(jiān)測(cè)。
1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
無(wú)線傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)部署在監(jiān)控領(lǐng)域,對(duì)感興趣的數(shù)據(jù)進(jìn)行采集、處理、融合,并通過(guò)主節(jié)點(diǎn)路由到基站,用戶可以通過(guò)因特網(wǎng)進(jìn)行查看、控制。其系統(tǒng)結(jié)構(gòu)如圖1所示。其中,網(wǎng)關(guān)(基站)負(fù)責(zé)對(duì)各節(jié)點(diǎn)傳感器數(shù)據(jù)的收集、處理及與外網(wǎng)的通信;傳感器節(jié)點(diǎn)負(fù)責(zé)采集周圍的信息,如溫度、濕度等,同時(shí)還要兼具有路由功能,通過(guò)路由協(xié)議直接或者通過(guò)“多跳”的方式將數(shù)據(jù)傳給網(wǎng)關(guān),再借助臨時(shí)建立的sink鏈路把整個(gè)區(qū)域內(nèi)的數(shù)據(jù)傳輸?shù)奖O(jiān)控中心;監(jiān)控中心主要負(fù)責(zé)將采集的數(shù)據(jù)進(jìn)行綜合計(jì)算得到所需的信息,并對(duì)各傳感器節(jié)點(diǎn)進(jìn)行管理。同時(shí)開(kāi)發(fā)了客戶端界面,方便用戶對(duì)服務(wù)器的數(shù)據(jù)進(jìn)行查詢和控制,并能以圖形的方式直觀地顯示出用戶所需要的信息。
2 系統(tǒng)硬件設(shè)計(jì)
無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)總體架構(gòu)由傳感器模塊、數(shù)據(jù)處理器模塊、無(wú)線通信模塊和電源模塊4個(gè)部分組成。傳感器模塊負(fù)責(zé)環(huán)境信息的采集和數(shù)據(jù)轉(zhuǎn)換,本系統(tǒng)主要是負(fù)責(zé)采集土壤溫濕度傳感器,傳感器模塊上還預(yù)留了數(shù)字和模擬接口,可以方便地?cái)U(kuò)展傳感器的種類;數(shù)據(jù)處理模塊負(fù)責(zé)控制整個(gè)傳感器節(jié)點(diǎn)的存儲(chǔ)和處理本身采集的數(shù)據(jù)和其它節(jié)點(diǎn)發(fā)來(lái)的數(shù)據(jù),還要負(fù)責(zé)節(jié)點(diǎn)組網(wǎng)和數(shù)據(jù)路由選擇以及系統(tǒng)功耗的控制等。數(shù)據(jù)處理模塊的核心是高性能的ATmega1281處理器;無(wú)線通信模塊負(fù)責(zé)與其它傳感器節(jié)點(diǎn)進(jìn)行無(wú)線通信,交換控制消息和收發(fā)采集數(shù)據(jù);電源模塊為傳感器節(jié)點(diǎn)提供運(yùn)行所需的所有電源。
2.1 傳感器模塊
傳感器模塊是節(jié)點(diǎn)的數(shù)據(jù)采集部分,根據(jù)實(shí)際需求,確定合適的傳感器,系統(tǒng)采用溫濕度傳感器,并留有通用傳感器擴(kuò)展接口,傳感器模塊為獨(dú)立電路板,通過(guò)51PIN連接器與主控模塊電路板連接。
本系統(tǒng)采用的溫濕度傳感器為瑞士Sensirion公司生產(chǎn)的SHT10溫濕度一體傳感器。該傳感器的特點(diǎn)是體積微小、功耗極低,兩線數(shù)字輸出,濕度測(cè)量范圍:0~100%RH,濕度的測(cè)量精度為±4.5%RH,溫度測(cè)量范圍:-40~-+123.8℃,在25℃時(shí),溫度的測(cè)量精度為±0.5℃,響應(yīng)時(shí)間:8 s,可完全浸沒(méi)。SHT10采用兩條串行線(SCK,DATA)與處理器進(jìn)行數(shù)據(jù)通信。SCK用于處理器、SHT10之間的通訊同步,串行數(shù)據(jù)(DATA)用于數(shù)據(jù)的讀取,在SCK時(shí)鐘下降沿之后改變狀態(tài),并僅在SCK時(shí)鐘上升沿有效。SHT10完整的測(cè)量時(shí)序由啟動(dòng)傳輸時(shí)序、發(fā)布命令、等待測(cè)量完成、讀回?cái)?shù)據(jù)這四個(gè)部分組成。處理器用一組“啟動(dòng)傳輸”時(shí)序來(lái)發(fā)起一個(gè)通信過(guò)程。它包括:當(dāng)SCK時(shí)鐘高電平時(shí)DATA翻轉(zhuǎn)為低電平。在DATA為低電平期間,SCK變?yōu)榈碗娖?,再翻轉(zhuǎn)為高電平,隨后是在SCK時(shí)鐘高電平時(shí)DATA翻轉(zhuǎn)為高電平。在“啟動(dòng)傳輸”時(shí)序之后,微控制器可以向SHT10發(fā)送命令。微控制器在發(fā)布一組濕度或者溫度測(cè)量命令后,需要等待測(cè)量的結(jié)束,SHT10通過(guò)將DATA線拉低表示測(cè)量的完成。重新啟動(dòng)時(shí)鐘線SCK讀取測(cè)量結(jié)果時(shí),2個(gè)字節(jié)的測(cè)量數(shù)據(jù)和1個(gè)字節(jié)的CRC校驗(yàn)將被傳送。為節(jié)能VDD接在處理器1281的PC0口,需采集數(shù)據(jù)時(shí)傳感器上電,采集完數(shù)據(jù)傳感器斷電。
2.2 數(shù)據(jù)處理模塊和無(wú)線通信模塊
數(shù)據(jù)處理模塊采用Atmel公司的低功耗ATmega1281芯片,該芯片具有片內(nèi)256 kB的Flash存儲(chǔ)器、8 kB的SRAM數(shù)據(jù)存儲(chǔ)器(可外接擴(kuò)展到64 kB)和4 kB的EPROM存儲(chǔ)器。該芯片還有8/16通道的10位ADC,2個(gè)8位和4個(gè)16位硬件定時(shí)/計(jì)數(shù)器,4個(gè)8位PWM通道、可編程看門狗定時(shí)器和片上振蕩器、片上模擬比較器,2/4個(gè)可編程串行USART、51/86個(gè)可編程I/O口線。SPI、I2C總線接口;可以采用JTAG編程和ISP編程兩種方式。除正常工作模式外,ATmega1281還具有6種睡眠模式:空閑模式、ADC噪聲抑制模式、省電模式、掉電模式、Standby模式以及擴(kuò)展的Standby模式。因此ATmega1281非常適合于低能耗的應(yīng)用場(chǎng)合。
無(wú)線通信模塊采用AT86RF231芯片,該芯片是一款低功耗、低電壓,SH接口,支持2.4GHZ IEEE802.15.4標(biāo)準(zhǔn)的無(wú)線收發(fā)芯片。AT86RF231通過(guò)SPI接口與處理器ATmega1281連接,通過(guò)串行輸出(MOSI)和串行輸入(MISO)進(jìn)行數(shù)據(jù)讀寫操作,由串行時(shí)鐘(SCK)控制讀寫操作。
數(shù)據(jù)處理模塊、無(wú)線通信模塊及外圍設(shè)備的硬件連接如圖2所示。傳感器節(jié)點(diǎn)上設(shè)計(jì)528kB的串行FLASH存儲(chǔ)器AT45DB041來(lái)完成信息在本節(jié)點(diǎn)的輔助存儲(chǔ)功能。處理器通過(guò)UART接口與AT45DB041連接。通過(guò)TXD1和RXD1進(jìn)行數(shù)據(jù)讀寫操作,由時(shí)鐘(XCK1)控制讀寫操作。處理器通過(guò)3根通用I/O引腳與溫濕度傳感器SHT10連接。軟件控制I/O引腳的電平來(lái)完成對(duì)SHT10的操作。處理器還預(yù)留了ADC模擬輸入通道、I/O接口、I2C接口到傳感器擴(kuò)展接口,對(duì)系統(tǒng)擴(kuò)展其它傳感器提供硬件支持。處理器ADC的PF0與系統(tǒng)電池電壓檢測(cè)電路連接,提供對(duì)系統(tǒng)電池剩余能量的檢測(cè)。
2.3 電源模塊
節(jié)點(diǎn)的能量供應(yīng)是節(jié)點(diǎn)工作的重要前提,如果供電不足,將會(huì)導(dǎo)致整個(gè)系統(tǒng)癱瘓。為延長(zhǎng)節(jié)點(diǎn)的使用壽命,多種降低功耗的方法已經(jīng)被提出,如:數(shù)據(jù)壓縮技術(shù)和低功耗路由技術(shù)等,但任何降低功耗的方法都不能徹底解決節(jié)點(diǎn)壽命有限的問(wèn)題。可再生能源的利用,如:太陽(yáng)能、振動(dòng)、潮汐和風(fēng)能等的利用,被認(rèn)為是解決上述問(wèn)題的可行方案。對(duì)于室外系統(tǒng),太陽(yáng)能具有技術(shù)相對(duì)成熟,能量密度較大等優(yōu)勢(shì),被認(rèn)為是為節(jié)點(diǎn)提供額外能源的可行方法。圖3是電源電路框圖。分壓器將3.3 V的穩(wěn)壓器輸出電壓降至2.75 V。比較器比較此值于電池的電壓值。當(dāng)陽(yáng)光充足并且電池的電壓低于2.75 V時(shí),比較器打開(kāi)開(kāi)關(guān),對(duì)電池充電。否則,當(dāng)電池的電壓等于或大于2.75 V時(shí),開(kāi)關(guān)關(guān)閉阻止充電過(guò)程。二極管用來(lái)阻止電流由電池流入太陽(yáng)能電池板。
3 系統(tǒng)軟件設(shè)計(jì)
3.1 系統(tǒng)軟件結(jié)構(gòu)圖
無(wú)線傳感器網(wǎng)絡(luò)采集監(jiān)測(cè)區(qū)域內(nèi)的數(shù)據(jù),通過(guò)傳輸網(wǎng)絡(luò)將各種傳感數(shù)據(jù)傳輸?shù)胶笈_(tái)管理軟件,后臺(tái)管理軟件對(duì)這些數(shù)據(jù)進(jìn)行分析、處理、存儲(chǔ),以便獲得相關(guān)信息,并對(duì)無(wú)線傳感器網(wǎng)絡(luò)的運(yùn)行和監(jiān)測(cè)區(qū)域內(nèi)的環(huán)境狀況進(jìn)行監(jiān)控。另外,后臺(tái)管理軟件也可以發(fā)起任務(wù)并通過(guò)傳輸網(wǎng)絡(luò)告知WSN,以便完成特定的任務(wù)。這些功能主要是在應(yīng)用程序服務(wù)器上實(shí)現(xiàn),其結(jié)構(gòu)如圖4所示。
系統(tǒng)通過(guò)串口接收到的溫濕度數(shù)據(jù)如圖5所示。無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)運(yùn)行的是TinyOS操作系統(tǒng),系統(tǒng)傳遞信息數(shù)據(jù)包幀格式如圖6所示。每一幀用同步字節(jié)SYNC_BYTE(0x7E)包裝。其中的負(fù)載數(shù)據(jù)TOS_mag是傳感網(wǎng)絡(luò)數(shù)據(jù)鏈路層所使用的數(shù)據(jù)包格式。信息中包括了目的節(jié)點(diǎn)地址、信息類型、信息長(zhǎng)度、信息組別以及數(shù)據(jù)載荷等。其中,數(shù)據(jù)載荷Data是提供給用戶的有效消息載體,包含為實(shí)現(xiàn)多跳路由功能而設(shè)置的源地址、數(shù)據(jù)采集節(jié)點(diǎn)地址及電壓、濕度、溫度等高層應(yīng)用信息。根據(jù)上述數(shù)據(jù)包的幀格式,處理后的數(shù)據(jù)如圖7所示。
4 結(jié)束語(yǔ)
文中基于當(dāng)前無(wú)線傳感器網(wǎng)絡(luò)在農(nóng)田信息采集中的應(yīng)用現(xiàn)狀,提出了體積小、成本低、低功耗、工作持續(xù)時(shí)間長(zhǎng)的農(nóng)田信息采集無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的必要性。該系統(tǒng)利用無(wú)線收發(fā)設(shè)備傳輸數(shù)據(jù),無(wú)需專門架線,系統(tǒng)結(jié)構(gòu)簡(jiǎn)單,節(jié)省了人力物力,通過(guò)監(jiān)控中心可實(shí)現(xiàn)對(duì)農(nóng)田溫濕度的監(jiān)控等功能,實(shí)現(xiàn)真正意義上的無(wú)人值守,與普通無(wú)線技術(shù)相比,還具有低功耗、低成本和網(wǎng)絡(luò)容量大等特點(diǎn),為實(shí)現(xiàn)大規(guī)模農(nóng)田監(jiān)控的信息化、自動(dòng)化、提高工作效率具有很高的實(shí)際應(yīng)用價(jià)值。