基于STM32的智慧土壤監測系統
摘要:為了實現更精確、更智能、常態化的土壤成分檢測,設計了一種可靠、便利的智慧土壤監測系統。該系統是利用STM32F103單片機連接氮磷鉀、土壤PH、電導率傳感器以及溫濕度傳感器綜合檢測土壤的當前狀態。該監測裝置一方面利用傳感器檢測土壤的各項指標,另一方面利用Wi-Fi通信模塊進行數據傳輸,把從STM32主控芯片傳輸的數據傳送到騰訊云服務器,從而在農田與專家之間搭建一個溝通的橋梁,實現智慧農業。
本文引用地址:http://www.czjhyjcfj.com/article/202207/436655.htm關鍵詞:土壤檢測;STM32芯片;Wi-Fi通信;騰訊云服務器;智慧農業
近幾年來,在素有“大蒜之鄉”的金鄉縣,由于長期重茬種植,每臨近收獲季節大蒜會出現爛根、壞苗等現象,導致產量和品質不斷下降。當地蒜農由于知識水平有限,不了解科學解決辦法,盲目大量施肥,不僅沒有起到良好效果,反而造成了土質的進一步破壞。同時由于種植方式為個體戶種植,蒜田狀況多元化,而有關農業方面的專家人數也十分稀缺,指導方式也為傳統的線下指導,無法大規模普及。市場上現有的檢測裝置需耗費大量人力,且在檢測常態化方面亦不易實現。為解決此問題,構建了一種高效、便捷、有針對性的土壤監測系統—智慧土壤云監測系統。該系統不僅拓寬了傳統線下指導模式的局限性,而且讓大蒜種植更加精準化,優化了專家資源配置,減少了化肥、農藥等農資消耗,實現技術創新與產業振興同步共贏。
本系統采用 STM32F103C8T6 芯片作為核心處理器,無線通訊方式采用 Wi-Fi(無線保真)通信,系統將傳感器實時采集到的氮磷鉀、PH 值、土壤濕度、電導率等土壤參數信息傳送到騰訊云服務器,與專家系統數據庫中的土壤數據進行比對和分析,最終將監測數據及指導方案反饋給用戶。
1 智慧土壤監測系統總體設計
1.1 系統性能指標
系統設計目標主要是精準實時地檢測土壤狀況,并將土壤參數傳輸到平臺,由專家進行分析評估,從而給出合理的施肥方案并反饋給農戶,從而進行有針對性的施肥,以解決大蒜減產問題。其設計主要體現在以下幾個方面。
1)將設備的遠程監測優勢發揮出來,使用戶可通過手機、電腦隨時查看蒜田的土壤參數。
2)主控芯片能實現對土壤各項參數的集中采集,保證系統安全可靠運行。
3)為了節省勞動力,增設水泵電機和配肥電機,有手動和遠程控制兩種方式。
4)網絡通信系統在保障正常通信的情況下,盡可能地提升信息傳遞速率,保證用戶快速獲取指導信息。
5)在保證專用性需求的情況下,保證具有一定的可移植性,方便用于其它農作物的土壤參數監測管理。
1.2 系統總體設計
智慧土壤監測系統主要由電源模塊、主控模塊、土壤參數檢測模塊、通信模塊幾個部分組成。電源模塊采用 220 V 交流電通過變壓器變成 24 V,然后整形、濾波、穩壓芯片獲得 12 V、5 V 和 3.3 V 的直流電,分別給繼電器線圈、土壤參數傳感器、Wi-Fi 通信模塊供電。系統中,各種土壤參數傳感器負責采集各種數據并傳送到主控芯片,主控芯片對數據進行接收并處理。一方面通過通信系統傳輸到終端控制器或用戶,另一方面根據反饋信息可以手動或遠程操控完成對水泵和配肥電機的驅 動控制,進而完成對土壤環境參數的調控。系統的總體設計框架如圖 1 所示。
圖1 智慧土壤檢測系統總體設計
2 系統硬件設計
根據系統總體設計,硬件電路主要包括主控制器 STM32F103C8T6 電路、傳感器接口電路、電機啟停電路和無線傳輸電路,各模塊之間相互配合,共同完成對土壤參數的檢測與反饋工作。
2.1 STM32主控模塊
本系統的主控芯片選用的是 STM32F103C8T6,一款基于 Cortex-M3 內核的單片機,其電壓供電范圍為 2.0 V ~ 3.6 V,CPU(中央處理器)的最大工作頻率可以達到 72 MHz,具有接口多、功耗低、功能強大、性能穩定等特點。豐富的外部接口,保障了系統的開發需要。其卓越的單周期乘法指令和硬件除法,以及優先級可編程的中斷系統使其數據處理快、性能優越。該芯片完善的功能模塊,極大簡化了系統電路設計并減少了外圍電路的成本。因此智慧土壤系統設計選用 STM32F103C8T6作為主控芯片能實現多個傳感器連接、控制設備的啟停、數據的無線傳輸等系統需要實現的功能。
2.2 傳感器接口電路
土壤氮磷鉀測量傳感器采用的是恩賽電子公司生產的 PR-3000-TR-NPK-N01,該傳感器由電源模塊、變送模塊、溫度補償模塊、數據處理模塊等部分組成。用戶接口簡潔、方便,可以測量土壤中氮磷鉀離子含量,測量量程分別為 0 ~ 500 mg/kg,0 ~ 20 000 mg/kg, 0 ~ 30 000 mg/kg,RS485 型傳感器,通過 MAX485 接單片機的 UART(通用異步收發器)3 口,其接口電路如圖 2 所示。
圖2 氮磷鉀傳感器485通訊引腳接線圖
PH 值傳感器采用的是 JXBS-3001-TR、電導率傳感器采用的是PR-3000-TR-EC-N01,都適用485協議 , 也通過 MAX485 與單片機的 UATR 口連接,其接口電路與土壤氮磷鉀測量傳感器的連接類似,這里不再贅述。
2.3 水肥控制電路
當傳感器測試的數據經平臺專家系統診斷后,根據反饋結果可以采用手動方式或者遠程操控方式啟動水泵電機進行灌溉,也可以同時啟動配肥電機完成肥料的同時加配。水肥控制電路如圖 3 所示。單片機的信號通過光電隔離 TLP281 進行隔離后再經過 MMBTA06 三極管驅動后控制直流 12 V 繼電器的通斷,進而控制水泵電機的啟停。
2.4 無線傳輸電路
無線通信采用 ESP8266Wi-Fi 通信模塊。ESP8266 是上海樂鑫信息科技設計的低功耗 Wi-Fi 芯片,集成完整的 TCP/IP 協議棧和 MCU(微控制器),通過串口 AT 指令與單片機進行通訊,具有成本低、使用簡便、功能強大等特點。ESP8266 通信模塊接口芯片共有 8 個引腳,其引腳功能如表 1 所示。
表1 ESP8266Wi-Fi通信模塊引腳功能介紹表
正常工作時該模塊與單片機的接口電路如圖 4 所示,VCC 接 3.3 V 電源正極。UTXD D 引腳分別接單片機 UART2 口的 PA2 與 PA3。其中 UTXD 為串行輸出端, URXD 是串行輸入端,完成URX成系統的串行通訊任務。當使用串口調試時把模塊與下載器的 TXD 和 RXD 交叉連接 , 通過串口助手進行系統調試。
引腳 CH_PD 為芯片通斷電控制,因需頻繁啟動,連接 10 K 上拉電阻,方便進行供電。
引腳 GPIO16 為 RST 外部復位引腳,連接 PA6 引腳,工作時保持高電平。
引腳 GPIO 0 外接一個按鍵,通過 10 kΩ 的電阻接 3.3 V 電壓,用于工作模式選擇,ESP8266 有兩種工作模式,當按鍵按下時,GPIO 0 接地,此時為燒錄模式,不按則為 VCC,正常工作 [5]。
電路連接完成后,需將 GPIO 0 引腳懸空,通過串口調試助手發送 AT 指令,對 ESP8266 進行設置。發送 AT+CIPMUX = 0 設置為單路連接模式,再通過 AT+CIPSTART =“TCP”,“IP”,port 設置上報服務器,當設備運行后,會自動向服務器發起 TCP 連接請求,成功并建立連接后,服務器端即可獲取客戶端鑒權數據,并做好數據通信準備。
3 系統軟件設計
如圖 5 所示,底層檢測設備通過互聯網將數據傳送到數據庫,有兩種通訊方式,一種是將下位機連接網關,然后與服務器實現連接,優點是直接與網關連接 , 操作簡單,連接穩定,持續運營成本較低,但是存在網絡布線成本,需要檢測設備被網絡覆蓋。另一種方式為下位機通過物聯網卡等通過移動網絡直接與服務器相連接,這種方式的優點在于可以不需要進行網絡布線,能夠擺脫地理位置的限制,但成本高,且連接可能存在不穩定的情況。
綜合考慮,我們采用下位機通過網關與服務器相連接的方式,數據通過網關連接到數據上報接口,從而連接到服務器,服務器分為數據處理服務器和數據存儲服務器,數據處理服務器主要用來處理下位機上報的數據,進行用戶鑒權,同時判斷是否需發出警告信息,并將數據上報至數據存儲接口,最終保存至數據庫中。
數據處理服務器對性能要求更高,因此采用一主一副一備的設計,保證穩定運行,而數據庫采用一主一備的設計,保證數據安全。最終,用戶端通過APP或網頁端,訪問數據庫中的數據。
下位機客戶端通過 ESP8266 串口 Wi-Fi 模塊, 連接至 Wi-Fi,通過互聯網上報至位于騰訊云的服務器,云服務器獲取數據后,通過用戶登錄的 User_ID 及 access_token 確定用戶身份,將其上報的數據分析,將數據存入數據庫。
圖5 系統數據傳輸架構圖
接口服務器組采用一主一副一備的設計,主、副服務器組位于同一區域,當主服務器出現超負載時,及時啟用副服務器進行數據分流,倘若主副服務器所在區域遭遇網絡障礙或其他故障,及時啟用不同區域內的備用服務器,保證業務暢通。
數據庫采用單獨的服務器來保證在接口服務器切換時的可靠性以及與其他組件(如用戶面板,監測系統等)的連通性,同時便于數據庫進行備份。另設一臺物理服務器,將云服務器中的數據實時備份至本地,便于數據管理 [7]。
在線服務器單臺采用騰訊云 8 核 16 G 云服務器,保證足夠的數據吞吐能力,本地物理服務器采用 E5- 2651V2,24 核,128 G,ECC 內存,同時增設 RAID(磁盤陣列)1 保證數據可用性。
4 系統調試
首先給整個系統通電,系統對各個模塊初始化配置,電源燈亮表示通電正常。接著看 LED(發光二極管)屏幕顯示各數據是否精確,若顯示精確,則開始測試通信模塊是否能正常工作。
在安裝好 USB-TTL 模塊的驅動程序后,接通設備,通過設備管理器查看模塊串口號,打開串口調試工具 XCOM,選擇模塊所對應的串口號,其中默認波特率為 115200,數據 - 停止 - 校驗 - 流控:8-1-None-None, 勾選“發送新行”,點擊“打開串口”按鈕,然后發送 AT 指令,若串口打印亂碼后看到“OK”,則說明模塊此時進入 AT 模式。和某些需要按鍵進入 AT 指令模式的藍牙模塊不同,ESP8266 上電后就自動運行在 AT 指令模式下,極大簡化了操作流程。
圖6 傳感器檢測結果對比圖
將氮磷鉀傳感器等插入到土壤中,打開電源,觀察 LED 顯示屏以及騰訊云服務器信號接入情況及土壤參數實時動態變化。當向土壤倒入鉀肥水溶液時,若服務器顯示鉀含量明顯增高(如圖 6 所示),且系統發出提醒則證明系統各功能可正常運行,即測試完成,其它參數的測試也類似。經過上述測試,對中間調試過程中出現的問題及時進行解決,測試結果分析如下:整個智慧土壤監測系統基本實現了實時監測、遠程分析等功能,達到了預期目標,完成了本次系統設計要求。
5 結語
本文給出了一種基于 STM32 單片機的智慧土壤監測系統的設計方案,通過 STM32F103C8T6 單片機主控模塊、Wi-Fi 通信模塊、傳感器模塊等各個單元相互配合來檢測土壤的各項參數指標,同時針對目前蒜農對于蒜田土壤監測及指導的需求,通過騰訊云服務器開發了專家系統數據庫,將檢測到的土壤數據發送到數據庫進行比對分析,從而有針對性的對蒜田進行施肥指導。用戶可通過登錄網址實時查看土壤各項參數指標,實現對蒜田蒜苗生長狀況的隨時監測,讓每塊蒜田都能得到專業的守護,擺脫農業專家傳統線下指導帶來的局限,實現真正的高效現代農業。
參考文獻:
[1] 趙丹丹,李紅.基于STM32的遠程廚房安全系統設計[J].電子產品世界,2021,28(11):74-76.
[2] 李學亮.基于WSN的土壤環境質量智能監測研究[D].南京:南京林業大學,2013.
[3] 程麗平,謝清勇,孫茜,等,一種智能土壤檢測用土壤快速篩分設備[P].國家實用新型專利,第14221817號.
[4] 李得至,鄧鵬,唐文濤,等.基于云平臺的智能實驗室遠程監控系統[J].機電工程技術,2021,50(3):132-134.
[5] 張彬露.農業專家系統概述與優化研究[J].農村經濟與科技,2020,31(15):341-342+354.
[6] 蔡倩,劉奇,顧敏明.基于WSN的多通道室內環境智能評價研究[J].物聯網技術,2020,10(11):3.
[7] 王國杰,趙繼春,王敏,等.基于NB-IoT技術的土壤墑情遠程智能監測系統設計[J].中國農機化學報,2021,42(5):7-9.
[8] 趙磊.基于云平臺的溫室智能灌溉系統的研究與開發[D].蘭州:蘭州理工大學,2020.
(注:本文轉載自《電子產品世界》2022年7月期)
評論