精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內(nèi)不再提示

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

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

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

實物圖和App操作界面

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

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

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

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

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

圖2:ZigBee 組網(wǎng)示意圖

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

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

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

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

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

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

? STM32主控單元的選擇與設(shè)計

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

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

圖4:STM32F103VBT6 芯片實物圖

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

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

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

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

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

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

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

1)溫濕度采集模塊

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

圖6:DHT11 傳感器的實物圖

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

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

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

2)風(fēng)速傳感器模塊電路設(shè)計

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

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

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

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

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

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

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

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

圖10:風(fēng)速傳感器電路原理圖

? 通信傳輸模塊的電路設(shè)計

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

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

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

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

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

圖11:DL-LN33 模塊實物圖

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

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

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

圖12:DL-LN33 電路原理圖

2) 4G 通信電路設(shè)計

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

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

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

圖13:GA211轉(zhuǎn)接板實物圖

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

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

圖14:GA211 模塊電路原理圖

? 電源模塊設(shè)計

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

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

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

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

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

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

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

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

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

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

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

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

? 信息采集終端的軟件設(shè)計

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

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

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

1) 溫濕度采集程序設(shè)計

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

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

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

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

2) 風(fēng)速采集程序設(shè)計

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

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

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

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

圖20:風(fēng)速傳感器的代碼流程圖

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

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

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

圖21:風(fēng)速傳感器的代碼流程圖

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

1) 機智云云端配置

步驟①:創(chuàng)建相應(yīng)的產(chǎn)品

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

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

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

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

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

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

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

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

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

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

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

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

圖27:MCU SDK 文件內(nèi)容目錄結(jié)構(gòu)

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

2) 機智云程序流程圖

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

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

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

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

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

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

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

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

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

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

圖29:串口3初始化

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

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

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

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

圖31:數(shù)據(jù)上報的機智云協(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ù)據(jù)預(yù)測過程

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

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

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

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

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

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

圖34:DL-LN33 無線通信模塊的網(wǎng)絡(luò)結(jié)構(gòu)

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

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

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

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

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

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

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

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

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

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

圖36:GA211 轉(zhuǎn)接板與機智云連接通信測試

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

圖37:設(shè)備上線記錄

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

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

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

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

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

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

圖39:設(shè)備接入云端的上下線記錄

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

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

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

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

圖41:手機 APP 使用測試圖

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

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

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

圖42:設(shè)備對接 APP 運行測試圖

06 系統(tǒng)設(shè)計總結(jié)

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

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

    關(guān)注

    48

    文章

    7496

    瀏覽量

    151083
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2904

    文章

    44304

    瀏覽量

    371456
  • STM32
    +關(guān)注

    關(guān)注

    2266

    文章

    10876

    瀏覽量

    354922

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

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

收藏 人收藏

    評論

    相關(guān)推薦

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

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

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

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

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

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

    基于機智平臺聯(lián)網(wǎng)實驗平臺設(shè)計

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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