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