張順鋒,溫宗周,田強明,張陽陽
(西安工程大學電子信息學院,西安710600)
我國是農業大國,農業的發展對于國家經濟意義重大,而水資源是農業的命脈[1]。我國作為缺水國之一,對水資源的充分利用就顯得尤為重要,但傳統的灌溉方式對水資源造成了極大的浪費。《“十三五”農業科技發展規劃》中指出“充分發揮科技對加快農業現代化建設、促進農村經濟社會發展的重要支撐引領作用”,因此發展智慧農業節水灌溉技術響應了國家科技發展的號召,既可實現節約水資源的目標,又可促進現代化、智能化農業技術發展,這對國家經濟建設具有重要的戰略意義[2]。
基于我國國情,融合物聯網、嵌入式、傳感器、智能控制和無線通信等技術,開發出一套基于STM32的智慧農業系統,系統結構圖如圖1 所示,該系統采用三層結構模型,包括農業物聯網感知控制層、網絡傳輸層和應用服務層[3]。其中,感知層通過傳感器采集大棚內土壤溫濕度、空氣溫濕度、光照強度和CO2 濃度等環境因子,將采集數據通過無線網絡傳輸至中心站,然后通過應用層的計算分析得到控制指令并通過網絡傳輸層發送給感控層來控制繼電器、電磁閥、電機、燈等,從而調節大棚環境(土壤濕度、溫度、CO2含量等),使作物生長在適宜的環境,有利于提高產量[4]。

圖1 系統結構圖
本系統的主控模塊采用的是太陽能供電系統。太陽能輸出電壓為12V,并將其存儲在電池上,最后將12V 電壓通過5V 轉變和3.3V 轉變后供給微處理器。此設計的優點是不需要額外的供電電源,太陽能板給蓄電池充滿電后可用20 天以上,成本低,可靠性高。其中12V 轉5V 電壓芯片選用LM78M05 芯片,5V 轉 3.3V 電壓芯片選用LM1117 芯片,其電路圖如圖2 所示。此兩種芯片是穩定性良好且高效、低功耗的電壓轉換芯片。LM78M05 是一款輸入5~15V、輸出電壓5V、電流大于0.5A 的芯片,內部采用三端陽極穩壓器,使芯片具有限流、熱關斷、安全保護的功能,可以不受輸出超載的損害。LM1117-3.3是一款輸入直流電壓5~15V,輸出電壓3.3V、電流大于0.5A 的電壓轉換芯片,在此用于將5V 電壓轉換為3.3V 電壓供給微處理器。

圖2 電源轉換電路
本設計主要用到的傳感器包括土壤溫濕度傳感器、空氣溫濕度傳感器、光照傳感器、CO2傳感器、流量傳感器等。
其中,土壤溫濕度傳感器選用TDR- 6,其測量土壤濕度的原理是利用高頻電子技術制造的高精度、高靈敏度的測量土壤水分的傳感器,來測定田間土壤的介電常數,用來反映土壤的水分含量[5]。輸出的是電壓信號,通過相應的數據轉換公式進行轉換,可得到土壤含水率。土壤濕度傳感器可與數據傳輸模塊連接,將數據傳送給MCU,以供后續使用。其具有測量精度高,響應速度快、耐腐蝕、價格便宜等優點,符合我國國情,便于推廣使用。
上述土壤溫濕度傳感器、空氣溫濕度傳感器、光照傳感器、CO2傳感器均采用RS485 通信方式。RS485 總線傳輸數據方便,可以實現一對多的連接。以UART2 RS485 為例,通信接口電路如圖3 所示。又因為系統工作在戶外,容易受雷電天氣的影響,因此加入放電管、保險絲等對電路進行保護。

圖3 RS485 數據采集電路
低功耗廣域網(LPWAN)是近年來問世的一種物聯網網絡層技術, 具有通信距離遠、穩定性高和功耗低等特點,LoRa 正是其中一項關鍵技術[6]。LoRa可以自主在免費頻段搭建網絡, 具有功耗低、抗干擾性能強、傳輸距離遠、準確度高等優點。此處采用的LoRa 模塊是S32-TTL-100,連線情況如圖4 所示。它是一款433MHz、100mW,具有高穩定性的工業級無線數據傳輸模塊,采用射頻芯片SX1278 設計開發,通過LoRa 擴頻調制和TTL 電平輸出,大大提高模塊的抗干擾能力,獲得很高的穩定性。模塊有四種工作狀態,可在運行時自由切換。在省電工作狀態下,消耗電流極低,非常適合超低功耗應用。

圖4 S32-TTL-100 接線圖
此處使用RS485 總線通信的傳感器有土壤濕度傳感器、空氣溫濕度傳感器、光照傳感器、CO2傳感器,此類傳感器都遵循ModBus 協議[7]。傳感器與灌溉控制終端間的數據按幀來傳送,有命令幀,應答幀和數據幀3 種幀結構。
以土壤溫濕度傳感器為例,灌溉控制終端向傳感器發送命令幀,通過命令字來區分溫度、濕度。首先主機向傳感器發送命令幀,若應答幀正確,進行數據校驗,若正確則對數據幀進行解析,得到數據內容。土壤墑情傳感器軟件設計流程如圖5 所示。

圖5 RS485 數據采集流程圖
流量傳感器屬于脈沖/中斷接口傳感器,此類傳感器輸出信號為脈沖信號,信號通過光電耦合器接入RTU 中,MCU 通過監測脈沖的下降沿信號產生中斷,然后在中斷服務程序中計數。本設計中流量傳感器采用0.1m3分辨率的傳感器。
流量傳感器軟件設計流程如圖6 所示。首先進行初始化,初始化完成后配置參數,包括傳感器地址和存儲地址等。然后等待中斷的產生,當有水流過傳感器時,傳感器磁盤指針開始計數,當流經水量到達0.1m3時傳感器引出線導通產生下降沿中斷,MCU在中斷服務函數中對流量計數單元進行計數,同時將計數值存入EEPROM 中保存,最后將數據發送至中心站對用戶余額進行相應的扣除。

圖6 流量采集流程圖
繼電器控制軟件流程是首先對控制方式進行判斷。在自動灌溉模式下,等待智能灌溉模塊的決策。智能灌溉模塊發出控制命令后,繼電器執行相應的操作。手動模式時,用戶需要按下控制器面板上的按鈕,或者通過客戶端進行手動操作,然后繼電器執行相應的灌溉操作,最后記錄并保存用戶的操作情況以及繼電器的工作狀態,上傳至中心站[8]。此外,繼電器還用來控制電機、開關等設備。
首先對電路板進行測試,檢查各元器件的擺放是否正確,如二極管、電解電容極性是否放反,檢查電路有無虛焊、漏焊等情況。確認無誤后進行供電,觀察是否有異味、是否發熱異常等。在排除異常情況的存在后,進行靜態測試,如各個模塊的接電電壓是否正常,確認電壓正常后加輸入輸出信號進行動態測試。
將如圖7 所示的手持設備與智能控制終端連接,首先對RS485 通信進行調試,查看是否能讀取到相關的土壤溫濕度、空氣溫濕度等數據,若無接收數據,則先后對相應傳感器硬件、軟件進行排查。通過測試,手持設備能正常讀取各傳感器數據。最后用手持設備對控制終端編號、種植作物類型、種植時間等進行設定。

圖7 手持設備實物圖
控制模塊的測試主要分為手動人工控制和遠程控制。首先進行人工控制測試,在控制終端面板上,將控制方式開關打到現地模式,然后分別對閥1 和閥2 進行測試。將開關打到開,看電磁閥是否運作,有無出水,開關狀態與出水狀態是否一致,若相反,對相應接線進行調整。然后在服務器端進行手動召測調試,遠程控制電磁閥開關。通過測試,人工控制和遠程控制均正常,可以完成控制任務。
在楊凌職業農民創新創業園對智能農業系統進行安裝,實地安裝的現場情況及服務器操作界面如圖8 所示。

圖8 智慧農業系統實地安裝及服務器操作界面
以STM32F103 微控制器為核心,結合了物聯網技術、嵌入式技術、無線通信技術設計了一套智慧大棚控制系統,可工作在自動模式、手動模式和遠程控制方式下,大大節約了人力和財力。進而根據傳感器實時測得的數據進行灌溉決策,可以提高水的利用率,有利于節約水資源和使作物生長在最佳狀態,提高產量。