0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于 STM32和機智云物聯(lián)網平臺的農作物需水量統(tǒng)計系統(tǒng)

9GxC_IoTMaker ? 來源:機智云開發(fā)者 ? 作者:機智云開發(fā)者 ? 2022-10-27 09:21 ? 次閱讀

本文利用農業(yè)物聯(lián)網的相關優(yōu)勢,搭建了一個基于 STM32 、機智云平臺的農作物需水量計算系統(tǒng),利用傳感器采集農作物的現(xiàn)場環(huán)境信息后通過 ZigBee 協(xié)議發(fā)送到數(shù)據處理終端,根據設置的作物生長系數(shù)計算出對應的作物需水量;同時將相關的數(shù)據經過 4G 模塊傳輸至機智云物聯(lián)網平臺,實現(xiàn)用戶足不出戶即可了解到農作物的相關信息,為制定合理的灌溉制度提供數(shù)據參考,達成適時灌溉和節(jié)約用水等目的。

實物圖和App操作界面

01 系統(tǒng)總體設計

基于機智云物聯(lián)網平臺的農作物需水量計算系統(tǒng),利用嵌入式微控制器采集作物的溫濕度、風速環(huán)境信息,同時采用 ZigBee 技術進行數(shù)據的傳輸,將采集的作物環(huán)境信息傳輸至數(shù)據處理終端;當數(shù)據處理終端接收到相關的數(shù)據后,對作物需水量進行計算;然后通過 4G 技術將相關的數(shù)據與機智云平臺建立連接,農業(yè)管理者可以在任一地點通過機智云后臺或移動設備查看和設置相關的數(shù)據。該系統(tǒng)框圖和ZigBee 組網示意圖如下所示。

0b9082a0-5593-11ed-a3b6-dac502259ad0.png

圖1:系統(tǒng)框圖

0b9d8d6a-5593-11ed-a3b6-dac502259ad0.png

圖2:ZigBee 組網示意圖

02 系統(tǒng)硬件設計

系統(tǒng)硬件主要分為農作物現(xiàn)場環(huán)境信息采集終端和數(shù)據處理終端兩個部分。農作物現(xiàn)場環(huán)境信息采集終端的主要作用是通過 STM32 主控單元采集農作物的溫濕度、風速信息并通過 ZigBee 無線通信協(xié)議將相應的數(shù)據傳輸?shù)綌?shù)據處理終端。

數(shù)據處理終端則是依據農作物數(shù)據參數(shù)和環(huán)境數(shù)據信息實現(xiàn)對作物騰發(fā)量的實時預測,并根據作物系數(shù)計算出相應的作物需水量,同時通過 4G 模塊接入機智云平臺和 APP,實現(xiàn)數(shù)據的遠程監(jiān)測和管理。整個硬件設計的架構框圖如所示。

0bb359e2-5593-11ed-a3b6-dac502259ad0.png

圖3:硬件系統(tǒng)總體框圖

03 系統(tǒng)硬件模塊及電路設計介紹

? STM32主控單元的選擇與設計

對農作物生長環(huán)境信息進行采集和傳輸?shù)闹骺?a href="http://srfitnesspt.com/v/tag/137/" target="_blank">芯片選擇了STM32F103VBT6 芯片,其內核使用Cortex-M3 架構,芯片內部包含有 ADC/DAC/2I C /USART/SPI 等外設資源,為數(shù)據通信的采集傳輸提供了足夠豐富的接口資源。

0bcb8ec2-5593-11ed-a3b6-dac502259ad0.jpg

圖4:STM32F103VBT6 芯片實物圖

此外,以 STM32F103VBT6 為核心的主控單元的最小外圍電路還應包括時鐘電路、復位電路、Flash啟動電路和調試電路。最小外圍電路圖如圖5所示。復位電路采用 RC電路實現(xiàn),防止剛上電時不穩(wěn)定的電源對系統(tǒng)產生影響,同時也可通過按鍵實現(xiàn)手動復位。

本系統(tǒng)主要應用于野外對相關信息進行采集,經常面臨惡劣的使用環(huán)境,可能導致芯片內部集成的時鐘源精度的下降而影響系統(tǒng)的正常運行。為了維持系統(tǒng)時鐘源的穩(wěn)定和精確,在片外使用 8MHz 的無源晶振與內部鎖相回路(PLL)相結合來為各模塊提供穩(wěn)定的時鐘源。

0bee0510-5593-11ed-a3b6-dac502259ad0.png

圖5:STM32 主控芯片及其最小外圍電路原理

為了實現(xiàn)軟件設計與硬件資源間的調試和下載,需要在單片機中預留出下載調試電路。STM32調試方式有JTAG模式和SWD模式,與 JTAG 模式的 20 個引腳相比,SWD模式(串行調試接口)只需要連接 GND、SWDIO、SWDCLK 和 3.3V 的引腳。其傳輸速率可高達 10M/s,在高速模式下具有比 JTAG 更加可靠的性能。因此本文中采用 SWD 接口進行程序的下載和調試。

? 數(shù)據采集模塊的電路設計

在實際應用中需要對溫濕度和風速這三種主要環(huán)境因素進行實時的監(jiān)測,為此分別設有溫濕度采集模塊和風速傳感器模塊,通過實測值來完成對作物騰發(fā)量的預測。

1)溫濕度采集模塊

0bff5c7a-5593-11ed-a3b6-dac502259ad0.png

圖6:DHT11 傳感器的實物圖

采用 DHT11 溫濕度傳感器對農作物生長環(huán)境中的溫濕度進行測量,該模塊可同時提供經過嚴格校準后誤差精度在±2℃的溫度值和±5%的濕度值數(shù)字信號,滿足在現(xiàn)代農業(yè)監(jiān)測技術領域中的應用。DHT11 傳感器的電路原理圖如圖所示。

0c18d59c-5593-11ed-a3b6-dac502259ad0.png

圖8:DHT11 傳感器的電路原理圖

2)風速傳感器模塊電路設計

我們采用模擬量風速變送器 RS-FSJT-V05 來對現(xiàn)場風速進行測量,RS-FSJT-V05 風速變送器通過三個夾角相同的風杯來完成對風速的測量。測量風速時,其內部的信號信號處理結構可將測量結果轉換為 0-5V的電壓模擬量進行輸出,通過與單片機 A/D 轉換電路的連接即可方便快捷地讀出對應的風速信號。其實物圖如下所示。

0c2f7e8c-5593-11ed-a3b6-dac502259ad0.png

圖9:RS-FSJT-V05 傳感器實物圖

風速變送器 RS-FSJT-V05 主要參數(shù)如下表所示。

0c5af15c-5593-11ed-a3b6-dac502259ad0.jpg

表:RS-FSJT-V05 傳感器主要參數(shù)

RS-FSJT-V05 風速傳感器與 STM32 單片機通過三線制進行連接,其中棕色 VCC 與 5V電源進行連接,黑色 GND 接 STM32 上的 GND,藍色正輸出信號接 STM32 中的 PA1。同時為了避免采集到的電壓信號超過單片機 A/D 模塊的最大采集電壓,采用分壓電阻來將采集到電壓降低后再輸入到單片機中的 A/D 轉換模塊,否則將會有數(shù)據溢出產生的可能,導致測量錯誤。其電路原理圖如圖所示。

0c7f2dba-5593-11ed-a3b6-dac502259ad0.png

圖10:風速傳感器電路原理圖

? 通信傳輸模塊的電路設計

對傳感器采集數(shù)據的傳輸可以通過有線或無線的方式進行,但有線通信需架設錯綜復雜的線纜,既不利于農業(yè)的種植,也不容易進行調整。因此在本文中數(shù)據處理單元通過 ZigBee 協(xié)議來獲取采集的數(shù)據。

此外,為了使農作物管理人員可以方便地隨時隨地查看相關的信息,通過 4G 通信技術將相關的數(shù)據傳輸至機智云平臺,用戶可以通過機智云后臺或者 APP 方便地查看相關的數(shù)據,實現(xiàn)對農田作物進行精細化管理。

1) ZigBee 無線傳輸模塊電路設計

本文采用 DL-LN33 多跳自組織 ZigBee 模塊,實物圖如圖11所示。該模塊是具有無線自組網功能的多跳模塊,將無線模塊和 Z-stack 協(xié)議棧的優(yōu)點融于一身,無需依賴基站、WiFi 等外部設備的幫助即可完成自動組網過程,適用于需要進行多跳自組網的應用場景。

0cb1adbc-5593-11ed-a3b6-dac502259ad0.png

圖11:DL-LN33 模塊實物圖

該模塊完成上電后,會自動尋找周圍同一網絡下的節(jié)點進行通訊,與通信范圍外的節(jié)點間的通訊將通過范圍內的其它節(jié)點代為轉發(fā)完成。即進行多跳通信,在一次通信過程中信息最多可以經過 16 次的轉發(fā)。與傳統(tǒng)的 ZigBee 芯片相比,DL-LN33 模塊與相鄰模塊間建立網絡時,無需指定協(xié)調器和其它形式的關鍵節(jié)點,使同一網絡中的每個模塊的地位都是相等的,網絡的運行并不會因為部分模塊的損壞而受到影響。

此外,DL-LN33 模塊拋棄了復雜的 Z-stack 協(xié)議棧協(xié)議,將相關的協(xié)議棧和芯片驅動程序進行了封裝,用戶只需掌握簡單的串口通信即可實現(xiàn)模塊與主控芯片間的通信。DL-LN33 模塊通過 STM32 的USART 3 進行數(shù)據交換,其電路原理圖如圖所示。

0ce148d8-5593-11ed-a3b6-dac502259ad0.png

圖12:DL-LN33 電路原理圖

2) 4G 通信電路設計

由于農田一般都處于遠離人群的地方,用戶不太可能實時地去現(xiàn)場查看作物的環(huán)境監(jiān)測信息,因此本文選擇使用 4G 遠程通信技術將傳感器采集的相關的數(shù)據以及通過計算的作物騰發(fā)量和作物需水量數(shù)據發(fā)送到機智云物聯(lián)網平臺中,使用戶可以在任何地點實現(xiàn)對數(shù)據的實時查看。

4G通訊模組選擇GA211模塊,其搭載了一塊有數(shù)據接收處理功能無線通信模組 EC20,支持移動、聯(lián)通、電信的 4G 網絡,確保在各種網絡條件下均可正常工作。內置了機智云的 GAgent 固件,使用時無需研究繁瑣的網絡通信協(xié)議和信號處理電路的架構設計,只需開發(fā) STM32 單片機的串口功能,即可輕松實現(xiàn)產品設備與機智云平臺之間的通信。GA211模塊實物圖如圖所示。

0cf271a8-5593-11ed-a3b6-dac502259ad0.png

圖13:GA211轉接板實物圖

GA211 轉接板采用 5V 電壓供電,與 STM32 之間通過 USART 2 進行通信,整個轉接板使用 5P 排線端子與 STM32 連接在一起,具體電路圖如圖所示。

0d1f275c-5593-11ed-a3b6-dac502259ad0.png

圖14:GA211 模塊電路原理圖

? 電源模塊設計

本系統(tǒng)采用常見的+24V 電源做為系統(tǒng)的總電源,經過處理后分別供給不同的電路使用。系統(tǒng)共有三種工作電壓:一是由外接電源提供的+24V電壓,用來為系統(tǒng)提供總的電源;二是供給 STM32 芯片和溫濕度傳感器的+3.3V 電壓;三是供給風速傳感器模塊和 GA211 轉接板+5V 電壓。

電源模塊的設計過程中要考慮到各模塊工作時的額定電壓、電流和功率,各通信模塊的最佳供電方案等,以及上電時的紋波濾波、電涌保護、電磁兼容、瞬時電壓和瞬時電流的問題。其電路原理如圖所示。

0d48177a-5593-11ed-a3b6-dac502259ad0.png

圖15:電源模塊電路原理圖

系統(tǒng)涉及到兩種不同功能的硬件終端:農作物現(xiàn)場環(huán)境信息采集終端和數(shù)據處理終端,由于其功能的不同,在相應的硬件設計上也有所區(qū)別。為了方便系統(tǒng)的維護和降低設計的成本,采用主控單元和功能單元相隔離的設計思路,兩種不同的終端設備共用一套相同的主控單元,將不同的功能使用拓展板進行拓展,且傳感器與電路板之間通過端口進行連接。

當使用中遇到部分功能失效時,只需維護損壞的部分即可,降低了維護的難度和成本。功能模板部分的設計原理如圖16、圖17所示。

0d4f2d6c-5593-11ed-a3b6-dac502259ad0.png

圖16:數(shù)據處理終端電路原理圖

0d905efe-5593-11ed-a3b6-dac502259ad0.png

圖17:信息采集終端電路原理圖

04 系統(tǒng)軟件設計

系統(tǒng)軟件部分基于的 STM32F103VBT6 進行開發(fā),主要功能是通過傳感器采集作物生長環(huán)境中的溫濕度和風速信息,利用 ZigBee 無線通信網絡向數(shù)據處理節(jié)點發(fā)送采集到相關數(shù)據,將其與作物系數(shù)相結合計算出作物需水量,并將相應的數(shù)據傳輸?shù)綑C智云物聯(lián)網平臺上。因此軟件部分也相應的分為信息采集終端和數(shù)據處理終端兩個部分,下面將對相應部分的軟件設計進行詳細的介紹。

? 信息采集終端的軟件設計

信息采集終端主要的功能是對作物現(xiàn)場的環(huán)境信息進行采集,并通過 DL-LN33 模塊將采集的數(shù)據傳輸?shù)綌?shù)據處理終端。當信息采集終端上電后,首先完成STM32 單片機和相關硬件設備的初始化,隨后 DL-LN33 無線通信模塊將進行信道掃描,與數(shù)據處理終端建立通信。待其與數(shù)據處理終端成功建立通信后,將采集到的溫濕度和風速數(shù)據周期性的發(fā)送給數(shù)據處理終端。信息采集終端的工作流程圖如圖所示。

0d9c1154-5593-11ed-a3b6-dac502259ad0.png

圖18:信息采集終端的工作流程圖

1) 溫濕度采集程序設計

本文以 DHT11 傳感器為基礎來實現(xiàn)對農作物生長環(huán)境溫濕度的實時采集,并將其轉換為數(shù)字信號后傳輸?shù)?STM32F103VBT6 中。

DHT11 與 STM32 之間基于單總線協(xié)議進行數(shù)據通信時,需要遵循嚴格的時序關系。溫濕度采集的程序流程圖如圖所示。

0db2bc9c-5593-11ed-a3b6-dac502259ad0.png

圖19:溫濕度采集的程序流程圖

2) 風速采集程序設計

本文中所采用的 RS-FSJT-V05 風速傳感器的輸出量為模擬信號,在實際使用過程中需要對其進行AD 轉換。STM32F103VBT6 內部含有2個12位的 ADC 轉換通道,其數(shù)字量的最大值為4096,其范圍為0~4095。本文通過 ADC1 的通道1來完成對風速的A/D 轉換,其轉換公式如下:

0dd3798c-5593-11ed-a3b6-dac502259ad0.png

公式中,adcx是RS-FSJT-V05 傳感器輸出的模擬量經過 A/D 轉換后的數(shù)字量,MAX_WIND_SPEED 是最大可測風速。風速傳感器的代碼流程圖如圖所示。

0de2c6c6-5593-11ed-a3b6-dac502259ad0.jpg

圖20:風速傳感器的代碼流程圖

RS-FSJT-V05 傳感器的模擬量輸出容易受到基準電壓浮動或其他外部因素的干擾,導致其采集的單次信號并不能完全準確的反應真實的數(shù)據,因此在返回采樣值之前需要進行濾波處理來盡可能地消除干擾誤差,來提高數(shù)據的精確度。

通過中位值平均濾波算法來對采樣值進行數(shù)字濾波,該方法將中位值濾波和算術平均值濾波兩種濾波技術的優(yōu)點綜合在一起,對于偶然條件下發(fā)生的脈沖性干擾具有較強的濾除作用。其代碼如圖所示。

0df9f88c-5593-11ed-a3b6-dac502259ad0.png

圖21:風速傳感器的代碼流程圖

3) DL-LN33 無線通信模塊的軟件設計

DL-LN33 無線通信模塊采用自主研發(fā)的的通信協(xié)議進行數(shù)據的傳輸與通信,其通信過程與 ZigBee 類似,但封裝了更加復雜的協(xié)議棧和芯片驅動程序,只需了解簡單的串口協(xié)議即可進行通信,操作過程得到了極大的簡化。

上電后,同一網絡下的不同地址的 DL-LN33 無線通信模塊在通信之前需要指定相同的信道和網絡 ID,并通過軟件來重啟設備使相關的設置生效。然后擁有相同信道和網絡 ID 的DL-LN33 通信模組之間將自動地組建一個通信網絡,即可通過其內部協(xié)議封裝的數(shù)據發(fā)送和接收函數(shù)來進行數(shù)據間的正常交互。

系統(tǒng)利用 STM32 單片機實現(xiàn)對 DL-LN33無線通信模塊的初始化和數(shù)據傳輸,程序的處理流程如圖所示。

0e19dcec-5593-11ed-a3b6-dac502259ad0.png

圖22:DL-LN33 無線通信程序流程圖

DL-LN33 無線通信模塊初始化完成后,信息采集終端即可將采集到溫濕度和風速數(shù)據賦給 DL-LN33 模塊中的數(shù)據部分,并通過協(xié)議中的發(fā)送函數(shù)傳輸給數(shù)據處理節(jié)點,對應的代碼如圖所示。

0e3bc442-5593-11ed-a3b6-dac502259ad0.png

圖23:DL-LN33 無線通信模塊接收數(shù)據代碼

數(shù)據處理終端接收到來自信息采集終端的指令信息后,將相應的數(shù)據從結構體包中提取出來,以便進行后續(xù)的處理,對應的代碼如下圖所示。

0e47321e-5593-11ed-a3b6-dac502259ad0.png

圖24:DL-LN33 無線通信模塊接收數(shù)據代碼

? 數(shù)據處理終端的軟件設計

數(shù)據處理終端的主要作用是通過 DL-LN33 無線通信模塊接收信息處理終端發(fā)送過來的農作物環(huán)境信息的相關數(shù)據和算法計算得到的最佳網絡參數(shù),再根據計算出作物需水量,并將相應的數(shù)據信息通過 GPRS 模塊傳輸至機智云物聯(lián)網平臺??蓪C智云平臺自動生成的代碼進行修改移植,來達到數(shù)據通過機智云平臺進行遠程顯示和控制的目的。

機智云物聯(lián)網平臺的優(yōu)勢在于通過為設計人員提供各種簡單易用的的智能應用硬件開發(fā)工具和豐富多樣的 SDK 和 開放API 等數(shù)據開發(fā)服務,可以極大降低傳統(tǒng)的產品的研發(fā)運營成本。同時其提供的 GAgent 開發(fā)固件可以自主完成數(shù)據在設備、機智云平臺和應用端之間的轉發(fā)和處理。開發(fā)過程中,開發(fā)人員只需通過串口將燒錄好 GAgent 固件的 WiFi、GPRS等聯(lián)網模塊與硬件產品進行連接,即可實現(xiàn)設備和云之間的數(shù)據通信功能。

1) 機智云云端配置

步驟①:創(chuàng)建相應的產品

開發(fā)人員根據硬件資源在機智云平臺創(chuàng)建相應的產品,指定產品的名稱和通訊技術方案。產品創(chuàng)建成功后,平臺將會提供 Product Key 和 Product Secret 兩個數(shù)據。進行不同產品區(qū)分時主要依據 Product Key 參數(shù),該參數(shù)在生成代碼時自動寫入 MCU 中,主要用于機智云平臺據此來識別相應的 WiFi/GPRS 設備。Product Secret參數(shù)則用于 APP 或服務器與平臺進行數(shù)據交互。

0e70bf94-5593-11ed-a3b6-dac502259ad0.png

圖25:機智云平臺創(chuàng)建的產品相關信息

步驟②:創(chuàng)建相應的數(shù)據點

數(shù)據點的功能是用來比較抽象地描述產品的主要功能,創(chuàng)建成功后云端將自動將為其定義合適的數(shù)據格式并生成相應的通訊協(xié)議。

本設計需要把作物環(huán)境信息(溫濕度、風速)、作物騰發(fā)量和作物需水量的數(shù)據傳輸?shù)綑C智云平臺中,這四個參數(shù)均通過相應的數(shù)字進行顯示且只能讀取不能修改。由于制定灌溉策略時多是依據作物需水量來計算,所以設置一個可進行修改的的作物系數(shù)來根據作物騰發(fā)量計算出作物需水量。

實際操作為通過客戶端設置一個可以根據實際情況進行修改的數(shù)值,該數(shù)據可通過云端修改主控芯片中相應的參數(shù)大小,主控芯片可利用此數(shù)值和作物騰發(fā)量計算出作物需水量,參數(shù)類型為數(shù)值,對于云端來說可寫。創(chuàng)建相應的數(shù)據點如圖所示。

0eb4a934-5593-11ed-a3b6-dac502259ad0.png

圖26:植物騰發(fā)量計算的相關數(shù)據點信息

步驟③:下載代碼并移植修改

數(shù)據點設置完成后,即可選擇對應的硬件平臺,輸入對應的Product Secret 后生成相應的代碼。下載生成的 MCU 代碼結構如圖所示。

0ed353ac-5593-11ed-a3b6-dac502259ad0.png

圖27:MCU SDK 文件內容目錄結構

開發(fā)人員無需關注黑色部分標注的基本的 STM32 開發(fā)文件,只需根據項目的需要完成相關的驅動配置和數(shù)據處理即可,其中嵌入式設備與機智云平臺間的數(shù)據交互處理函數(shù)主要位于 Gizwits_product.c 和Gizwits_product.h 文件中中,根據設備的功能編寫相應的硬件動作執(zhí)行函數(shù)即可。

2) 機智云程序流程圖

機智云自動生成代碼后,開發(fā)人員需要將代碼移植到 Keil MDK 平臺的工程文件中。得益于 GAgent 固件中 gizwits 串口協(xié)議層代碼的完整性,MCU 與機智云的交互過程已經被全部封裝,開發(fā)人員只需完成 MCU 中串口函數(shù)的發(fā)送、中斷以及 Giziwits_product.c 中的業(yè)務邏輯即可。機智云串口協(xié)議層在 STM32上代碼結構框圖如圖所示。

0f1a15f8-5593-11ed-a3b6-dac502259ad0.jpg

圖28:機智云串口協(xié)議層代碼的結構框圖

由圖28可知,MCU 上電后,首要的工作是對外設、用戶和協(xié)議進行初始化。當GA211 模塊通過串口協(xié)議配置成功并與機智云平臺成功連接后,該模塊就可用來接收來自云平臺或手機 APP 的信息。

信息接收完成后,將通過 GA211 模塊內部的 GAgent 協(xié)議幀的方式發(fā)送到 STM32 主控芯片進行處理,主控芯片將接收到的數(shù)據存放在緩沖區(qū),通過程序定時對緩沖區(qū)中的數(shù)據進行解析處理,并推送給數(shù)據處理函數(shù)進行相應的事件處理。

STM32主控單元也可以將信息采集終端發(fā)送過來的數(shù)據存入各個數(shù)據點,以數(shù)據點協(xié)議棧格式發(fā)送到 GA211 模塊,再由 GA211 模塊將數(shù)據傳輸?shù)綑C智云平臺,云平臺根據報文中的數(shù)據信息進行相應的事件處理。

3) STM32 上的串口協(xié)議棧移植

系統(tǒng)的數(shù)據處理終端需要通過 USART3 來接收數(shù)據采集終端經過 DL-LN33 模塊傳輸來的數(shù)據,并根據這些數(shù)據和作物需水量的計算。

由于機智云自動生成的代碼中只包含 USART1、2 的初始化和處理函數(shù),因此首先需要對 USART3 進行初始化處理。串口3 主要用于 DL-LN33 模塊與 STM32 之間傳輸數(shù)據,DL-LN33 模塊接收到來自信息采集終端的數(shù)據后,先將數(shù)據存入緩沖區(qū),然后主控芯片將串口中的數(shù)據一位位的讀取出來,相應的代碼如圖29、圖30所示。

0f3ac154-5593-11ed-a3b6-dac502259ad0.png

圖29:串口3初始化

0f4d5904-5593-11ed-a3b6-dac502259ad0.png

圖30:MCU 讀取串口數(shù)據

完成數(shù)據的讀取和作物騰發(fā)量的預測后,需要將相關的數(shù)據傳輸?shù)綑C智云物聯(lián)網平臺,并完成作物系數(shù)與 STM32 主控芯片之間的通信,機智云平臺與主控芯片間數(shù)據上報和下行控制的程序流程圖如圖31、圖32所示。

0f857e06-5593-11ed-a3b6-dac502259ad0.png

圖31:數(shù)據上報的機智云協(xié)議

0f9b08fc-5593-11ed-a3b6-dac502259ad0.jpg

圖32:下行控制的機智云協(xié)議

由于作物系數(shù)只是完成對作物騰發(fā)量的校準來計算作物需水量,并未觸發(fā)事件的處理,因此只需將上述提到的串口接收函數(shù)和作物需水量計算函數(shù)放入 gizwitsHandle() 函數(shù)中的代碼即可,如下圖所示。

0fb16b42-5593-11ed-a3b6-dac502259ad0.png

圖33:基于 C 語言的數(shù)據預測過程

05 系統(tǒng)調試與運行

為了驗證基于 STM32 和機智云物聯(lián)網平臺的農作物需水量計算系統(tǒng)各部分是否可以達到既定的設計目標,以及系統(tǒng)運行時是否存在問題,需要對其進行一系列的軟硬件測試。驗證測試可以分為三個部分,包括無線通信測試、作物環(huán)境信息的采集和數(shù)據與機智云平臺進行交互通訊。

?無線通信模塊的功能驗證

無線通信模塊的主要功能是在信息采集終端和數(shù)據處理終端之間建立無線通信網絡,使數(shù)據可以在信息采集終端和數(shù)據處理終端之間進行通信,以便進行后續(xù)數(shù)據的處理。

為了可以方便地查看模塊間的通信網絡,使用專用的 DL-LN33 網絡拓撲結構顯示軟件,將 DL-LN33 模塊與 USB轉 TTL 的 CP2102 連接后,即可在該軟件中顯示出 DL-LN33 模塊間的網絡結構。驗證實驗采用了一個信息采集終端和一個數(shù)據處理終端的模式,其網絡結構如圖所示。

0fd0aaac-5593-11ed-a3b6-dac502259ad0.png

圖34:DL-LN33 無線通信模塊的網絡結構

將其同時上電稍等片刻后,兩個 DL-LN33 無線通信模塊即可建立如圖34所示的網絡結構。其中紅色的 3AD4 節(jié)點為數(shù)據處理節(jié)點中的 DL-LN33 模塊,可以用來傳輸整個自組網的網絡信息;另外一個 11BF 節(jié)點為信息采集終端中的 DL-LN33 模塊,用來將信息采集端點采集的數(shù)據發(fā)送到數(shù)據處理端點。

? 作物環(huán)境信息采集功能驗證

作物環(huán)境信息的采集功能驗證主要通過 Keil μvision 的在線調試功能完成。設計好信息采集終端的軟硬件后,通過Keil μvision 進入在線調試模式并將溫濕度、風速的變量數(shù)據導入到內存窗口中進行顯示,如圖所示。

0ff453c6-5593-11ed-a3b6-dac502259ad0.png

圖35:作物環(huán)境信息采集功能驗證

從圖中可以看出,信息采集終端采集到的溫度為10℃,濕度為37%,風速為0.6m/s。這說明信息采集終端可以有效地對作物的生長環(huán)境進行采集,其軟硬件設計符合預期的要求。

?數(shù)據與機智云的交互通信功能驗證

驗證環(huán)境信息數(shù)據與機智云的交互過程,主要包括溫濕度、風速和作物需水量等數(shù)據的上傳和作物系數(shù)的下發(fā)過程。該過程首先要驗證 GA211 模塊是否可以正常接入機智云平臺。

GA211模塊內部封裝了 機智云GAgent 固件,插入電話卡后,通過 STM32主控芯片的 USART2 與機智云建立通信,其功能驗證可以通過機智云串口工具進行驗證,將其與電腦接口通過 USB 轉 CP2102 模塊進行連接,然后在串口工具的配置中輸入產品的 Product Key 和 Product Secret。輸入完成后切換到模擬 MCU 功能,等待一段時間后即可看到模塊連接上基站和 M2M 服務器(即機智云)。此時,在機智云平臺上可以看到相應的設備處于在線狀態(tài)。

1016962a-5593-11ed-a3b6-dac502259ad0.png

圖36:GA211 轉接板與機智云連接通信測試

10231d64-5593-11ed-a3b6-dac502259ad0.png

圖37:設備上線記錄

經過測試,GA211轉接板可以正常接入機智云物聯(lián)網平臺。經過以上分析,系統(tǒng)各部分的功能均可正常工作,且滿足設計的要求。接下來對整個系統(tǒng)的功能進行測試,由于受實驗條件的限制,通過在實驗室中來完成對系統(tǒng)的整體測試驗證。測試運行的實物圖如圖所示。

10315adc-5593-11ed-a3b6-dac502259ad0.png

圖38:系統(tǒng)實物圖

上電啟動一段時間后,信息采集終端所采集的到的溫濕度、風速數(shù)據通過 DL-LN33模塊發(fā)送至數(shù)據處理終端,經過計算得出作物騰發(fā)量和作物需水量,并經 4G 模塊的GA211 轉接板轉發(fā)到機智云物聯(lián)網平臺。農業(yè)管理人員可直接使用通過 PC 端的用戶網頁登錄機智云平臺,實現(xiàn)對采集數(shù)據的遠程訪問。

此外管理人員可通過機智云管理后臺查看設備的運行記錄和通信日志,也可通過折線圖來顯示實時的監(jiān)測數(shù)據。需要注意的是,在折線圖中,若當前的監(jiān)測數(shù)值與前個時間間隔的數(shù)據一致,則不會上傳至機智云平臺,仍以上個時間間隔的數(shù)據顯示,直至數(shù)據發(fā)送變化時才會顯示最新的數(shù)據。

10809c64-5593-11ed-a3b6-dac502259ad0.png

圖39:設備接入云端的上下線記錄

10a55324-5593-11ed-a3b6-dac502259ad0.png

圖40:設備運行數(shù)據記錄詳情

為了解決電腦使用不方便的問題,機智云提供了基于 APP 的遠程數(shù)據查看工具,通過 APP 可以隨時查看設備的狀態(tài)以及在線設備的監(jiān)測數(shù)據。手機 APP 的使用測試圖如圖所示。

10c548aa-5593-11ed-a3b6-dac502259ad0.png

圖41:手機 APP 使用測試圖

APP Demo 是機智云提供的一款可以運行在 AndroidiOS 系統(tǒng)上的遠程數(shù)據查看程序。使用時,通過 APP中的二維碼掃描 GAgent_Debugger_V3.5 助手中生成的二維碼界面即可完成與對應設備的綁定,二維碼生成時需要提供 Product Key 和 MAC/IMEI,其中MAC/IMEI 為 GA211 轉接板的識別碼,連接機智云后可在設備日志中找到。

設備綁定完成后即可通過APP 遠程查看系統(tǒng)采集到的溫濕度及風速等數(shù)據,也可通過 APP 設置相應的作物系數(shù),完成對作物需水量的計算,并在 APP 中進行顯示。產品設備與 APP 連接成功后的測試如圖42所示。說明設計的系統(tǒng)可以根據采集到的農作物的環(huán)境信息完成對作物需水量的計算,并通過 APP 進行顯示,到達了預期的設計要求。

10dc91b8-5593-11ed-a3b6-dac502259ad0.png

圖42:設備對接 APP 運行測試圖

06 系統(tǒng)設計總結

本系統(tǒng)為設計遠程智能作物需水量控制方案,提出了基于 STM32和機智云物聯(lián)網平臺的農作物需水量統(tǒng)計系統(tǒng),可以廣泛應用于分析和計算作物的真實需水量,且可以隨時隨地通過機智云的管理后臺或手機 APP 來查看相應的數(shù)據,為農田管理人員提供真實的作物需水量情況,為其制定合理的灌溉策略提供數(shù)據參考。

審核編輯:彭靜
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    7396

    瀏覽量

    150640
  • 物聯(lián)網

    關注

    2899

    文章

    43793

    瀏覽量

    369154
  • STM32
    +關注

    關注

    2263

    文章

    10847

    瀏覽量

    353783

原文標題:方案|基于STM32+機智云物聯(lián)網平臺的農作物需水量計算系統(tǒng)

文章出處:【微信號:IoTMaker,微信公眾號:機智云開發(fā)者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    基于 STM32機智聯(lián)網平臺農作物需水量統(tǒng)計系統(tǒng)

    系統(tǒng)為設計遠程智能作物需水量控制方案,提出了基于 STM32機智
    發(fā)表于 09-26 17:56 ?969次閱讀

    基于STM32+機智聯(lián)網平臺的家電狀態(tài)顯示及控制系統(tǒng)

    使用機智平臺時,先做了一個點燈的小系統(tǒng),使用STM32最小系統(tǒng),通過串口2(PA2、PA3),
    發(fā)表于 08-08 14:31

    基于STM32+機智聯(lián)網自助開發(fā)平臺打造的環(huán)境智能監(jiān)測系統(tǒng)

    遠程抽水,在一樓,就不用爬上四樓抽水了。1 系統(tǒng)設計整個系統(tǒng)是典型的聯(lián)網三角形架構:設備端、云端、移動端。云端采用機智
    發(fā)表于 08-10 10:35

    基于機智平臺聯(lián)網實驗平臺設計

    、制作和調試。平臺采用wifi模塊進行通訊,用戶通過APP軟件控制電路實驗板。實驗平臺的結構示意圖如圖1所示。 基于機智平臺
    發(fā)表于 09-09 14:39

    STM32+機智WebSocket實現(xiàn)聯(lián)網游戲

    0、簡介  本人在大學本科最后的一個課程設計,做的比較有趣味,同時最近的聯(lián)網逐漸大熱,所以分享一下自己的作品設計過程。作品是在機智最為簡單的ST
    發(fā)表于 07-16 14:30

    機智聯(lián)網平臺)上新了

    方式,如GPRS、NB-IoT、4G全網通;支持RS232、RS485等方式接入;甚至是可通過APP、后臺、小程序等方式進行設備管理。機智聯(lián)網
    發(fā)表于 11-05 19:21

    【IoT開發(fā)】基于機智聯(lián)網的智能澆花教程

    控制器,esp8266聯(lián)網模塊作為通信設備,底層采用MQTT協(xié)議,連接到聯(lián)網平臺
    發(fā)表于 07-13 15:39

    澳大利亞研發(fā)出新型農業(yè)傳感器可預測農作物水量

    澳大利亞聯(lián)邦科學與工業(yè)研究組織(CSIRO)報道稱,該機構與該國農業(yè)技術公司Goanna Ag合作,研發(fā)出可智能預測農作物未來7天需水量的灌溉節(jié)水系統(tǒng)WaterWise。據了解,該系統(tǒng)
    發(fā)表于 07-14 14:12 ?1106次閱讀

    基于機智平臺農作物需水量計算系統(tǒng)

    本文利用農業(yè)聯(lián)網的相關優(yōu)勢,搭建了一個基于 STM32 、機智平臺
    的頭像 發(fā)表于 03-31 15:04 ?2648次閱讀
    基于<b class='flag-5'>機智</b><b class='flag-5'>云</b><b class='flag-5'>平臺</b><b class='flag-5'>農作物</b><b class='flag-5'>需水量</b>計算<b class='flag-5'>系統(tǒng)</b>

    識別農作物病害以及遠程云端交互功能的農作物生長狀況監(jiān)測系統(tǒng)

    農作物生長狀況遠程動態(tài)監(jiān)測系統(tǒng)主要分為識別監(jiān)測系統(tǒng)、無線通信系統(tǒng)、數(shù)據交互系統(tǒng)、移動小車系統(tǒng)等,
    的頭像 發(fā)表于 09-07 10:17 ?2772次閱讀

    采用AdaCore的農作物監(jiān)測系統(tǒng)

    電子發(fā)燒友網站提供《采用AdaCore的農作物監(jiān)測系統(tǒng).zip》資料免費下載
    發(fā)表于 10-21 14:30 ?0次下載
    采用AdaCore的<b class='flag-5'>農作物</b>監(jiān)測<b class='flag-5'>系統(tǒng)</b>

    農作物監(jiān)控系統(tǒng)開源硬件

    電子發(fā)燒友網站提供《農作物監(jiān)控系統(tǒng)開源硬件.zip》資料免費下載
    發(fā)表于 02-01 10:51 ?0次下載
    <b class='flag-5'>農作物</b>監(jiān)控<b class='flag-5'>系統(tǒng)</b>開源硬件

    土壤墑情監(jiān)測系統(tǒng)農作物種植作用

    的智能化,土壤墑情監(jiān)測系統(tǒng)的應用,是發(fā)展智慧農業(yè)的基礎。 所謂的土壤墑情,指的是土壤的干濕程度,含水量高低。含水量的多少,直接影響農作物的生長和成長。而土壤墑情監(jiān)測
    的頭像 發(fā)表于 04-13 15:59 ?651次閱讀

    方案|基于STM32+機智聯(lián)網平臺農作物需水量計算系統(tǒng)

    本文利用農業(yè)聯(lián)網的相關優(yōu)勢,搭建了一個基于STM32機智平臺
    的頭像 發(fā)表于 10-28 10:00 ?1349次閱讀
    方案|基于<b class='flag-5'>STM32</b>+<b class='flag-5'>機智</b><b class='flag-5'>云</b><b class='flag-5'>物</b><b class='flag-5'>聯(lián)網</b><b class='flag-5'>平臺</b>的<b class='flag-5'>農作物</b><b class='flag-5'>需水量</b>計算<b class='flag-5'>系統(tǒng)</b>

    農作物生長環(huán)境的遠程監(jiān)控與智能調控

    農作物生長環(huán)境的遠程監(jiān)控與智能調控 農作物生長環(huán)境的遠程監(jiān)控與智能調控技術,作為現(xiàn)代農業(yè)科技的核心組成部分,正逐步革新傳統(tǒng)農業(yè)的生產模式,推動農業(yè)向精準化、智能化轉型。這一技術體系綜合應用了
    的頭像 發(fā)表于 07-04 17:44 ?441次閱讀
    <b class='flag-5'>農作物</b>生長環(huán)境的遠程監(jiān)控與智能調控