湖北工業大學機械工程學院 涂文奇 朱鄖濤 劉嘉誠
基于物聯網的智能農業監控系統
湖北工業大學機械工程學院 涂文奇 朱鄖濤 劉嘉誠
針對目前的人工成本日益高漲,而傳統的農業生產方式制約農業進一步發展空間,因此需要設計一種智能農作物監控系統,使能夠遠程監控農作物的生長情況,以便及時作出相應的處理,此系統采用CC2530作為ZigBee監控網絡節點,采集農作物生長環境的各種數據,STM32F407作為網關負責對數據的接受、處理和轉發,通過Internet網絡使用電腦或手機對農作物的生長環境進行監控,本系統有著操作簡單,自動化程度高,方便擴展和集中式監控等特點,滿足農業對大規模的監控的要求。
智能農業;ZigBee;STM32F407;Internet
隨著現代農業的發展,農業智能化生產廣泛的使用,一定程度地提高了農業的生產水平,但由于缺乏統一的管理,導致管理任務繁重,制約了智能農業的進一步發展,最近幾年物聯網的快速發展,尤其是zigbee低功耗,低成本,高安全性的特性,被廣泛應用于傳感與控制領域。尤其是強大的組網能力,可對農業智能生產的統一管理,減輕管理人員的工作負擔,對農業生產水平的提高具有重要的意義。
整個監控系統由ZigBee網絡節點、網關+zigbee協調器、電腦或手機監控終端3部分組成。其中ZigBee網絡節點連接著空氣溫濕度傳感器、光照傳感器、二氧化碳傳感器、土壤溫濕度傳感器和電磁閥等,并通過zigbee網絡將各自的監測數據傳送給zigbee協調器統一轉發。STM32F407微處理器作為網關,負責一定區域的zigbee網絡節點的管理維護,主要是負責節點數據的分析,控制終端數據的處理和轉發,并按照TCP/IP協議編寫數據包轉發機制,使用網絡模塊將數據包發送至Internet網絡。監控終端可由電腦的應用程序或手機的APP應用程序負責監控。
2.1 網關結構設計
網關采用組合式設計,組裝簡單,便于后期升級維護。網關結構見圖2,網關主板與各部分連接,主板連接zigbee協調器和網絡模塊,電源部分采用5V1A直流供電。網關采用STM32103ZET6微處理器芯片,具有SPI、UART、USB、CAN等多種的類型的接口,可實現高效的系統管理功能;支持UC/OS-II、嵌入式Linux等操作系統。

圖1 系統設計總體框圖

圖2 網關模塊結構圖
2.2 ZigBee節點方案設計
Zigbee是一種具有低功耗、低成本、短延時、高安全、自動組網能力強等特點的無線通信技術。遵循IEEE802.15.4標準和zigbee聯盟定義標準,完整的zigbee協議層由物理層、介質訪問控制層、網絡層、安全層和高層應用規范組成,支持樹形、網狀等多種拓撲結構。
cc2530是TI公司的zigbeesoc解決方案,它能夠以非常低的成本建立起強大的網絡節點,cc2530結合了領先的RF收發器的優良性能,業界標準的增強型8051cpu,系統內可編程閃存,8-KBram和許多其他強大的功能。Cc2530具有不同的運行模式,使得它尤其適應超低功耗要求的系統。運行模式之間的轉換時間短進一步確保了低能耗消耗。

3.1 節點數據幀
Zigbee節點上電啟動后,開始自動組建網絡,組網成功后開始上傳組網信息數據包,并開始采集農作物的生長環境,定時上傳數據,節點如圖3所示,在zigbee數據協議幀格式的基礎上加入自定義的數據,包括傳感器類型占用4bit,判斷數據來自何種傳感器,傳感器編號占用8bit,用來區分節點,數據類型占用4bit,用來判斷是數據還是命令。采集時間占用6byte,方便分析對應時間點的數據,節點電量占用1byte,用于查詢節點電量,便于掌握節點工作情況,傳感器數據占用20byte,用于傳感器接受的命令指令或發送的傳感器采集數據,也便于以后的數據幀擴展等組成。

表1 節點數據幀格式
3.2 網關軟件設計
LWIP是瑞典計算機科學院(SICS)的AdamDunkels等開發的一個小型開源的TCP/IP協議棧,是TCP/IP的一種實現方式。,LWIP實現的重點是在保持TCP協議主要功能的基礎上減少對RAM的占用,它只需十幾KB的RAM和40K左右的ROM就可以運行,包括TCP、UDP、ICMP、DHCP、PPP和ARP等常見協議的所有或部分功能,而且提供了類似伯克利TCP/IP的API函數,使LWIP協議棧十分適合在低端的嵌入式系統中使用。
網關采用可靠的tcp傳輸協議,保證了數據傳輸的可靠性。
如下圖所示,數據發送的發起者是應用層。首先是應用層調用ip_write()函數,接著就是再將控制權交給tcp_ enqueue()函數,使數據分割成適當大小的TCP段,然后放到所屬連接的傳輸隊列中。然后通過tcp_output()函數判斷接收器窗口是否有足夠大的空間,如果空間滿足,就使用ip_route()及ip_output_if()函數發送數據。

數據接受的發起者是網口接口層,首先是網口接口將數據包傳送給ip_input()函數,經過驗證IP頭后傳給TCP段給tcp_input()函數。經過TCP解析和TCP連接。這個TCP段到達tcp_process()函數,實現了TCP狀態機,任何必要的狀態轉換在這里實現,最終tcp_receive()函數將數據傳送給上層的應用程序,完成接受過程。
本文設計了基于zigbee和STM32F407的智能農業監控系統。系統采用zigbee協議組建監控網絡,實現了對農作物生長環境和設備的統一管理,讓管理者通過終端訪問和控制監控系統的信息和設備。整個系統安裝簡單、擴展性強、時間便捷,管理者可通過自己需要合理配置不同的zigbee終端節點,為系統大規模應用打下了奠定的基礎。
[1]彭剛,春志強.基于ARMCortex-M3的STM32系列嵌入式微控制器應用實踐[M].北京電子工業出版社2011
[2]羅俊海,周應賓,鄧霄博.物聯網網關系統設計[J].電信科學,2011(02):105—106.
[3]謝東.基于ARM的嵌入式遠程測控系統網關的設計[J].現代電子技術,2006(13)∶85-88.
[4]王永虹等.STM32系列ARMCortex-M3微控制器原理與實踐[M],北京∶北京航天大學出版社,2008.
[5]韓華峰,杜克明,孫忠富,等.基于ZigBee網絡的溫室環境遠程監控系統設計與應用巨[J].農業工程學報,2009,(7)∶158一163.
2016-02-25)