標題: 云上OneNET智慧大棚STM32程序(YL69土壤濕度 SGP30二氧化碳濃度 GY30光照 SHT20溫濕度) [打印本頁]

作者: 渦輪增壓    時間: 2021-4-11 16:06
標題: 云上OneNET智慧大棚STM32程序(YL69土壤濕度 SGP30二氧化碳濃度 GY30光照 SHT20溫濕度)
白嫖51黑電子論壇幾年了,現(xiàn)在該回饋平臺分享知識了!
壓縮文件中包含所有代碼和項目文檔!

為了解決傳統(tǒng)農業(yè)生產效率低下,消耗大量的人力物力,不能精確的對農作物實現(xiàn)監(jiān)控的問題,從而最大限度的提高農業(yè)生產力,實現(xiàn)優(yōu)質、高產、低耗、環(huán)保的可持續(xù)發(fā)展物聯(lián)網[1]農業(yè)。云上OneNET的智慧大棚采用STM32MCU[2][3]接收GY30[4]光照強度傳感器、SGP30二氧化碳/TVOC傳感器、SHT20[5]溫濕度傳感器、YL-69[6]土壤濕度傳感器測得的參數(shù),通過ESP8266wifi[7]模塊上傳至OneNET[8][9]云平臺,云上OneNET的智慧大棚實現(xiàn)了在物聯(lián)網,多終端的條件下實時監(jiān)控大棚里的重要生產環(huán)境因素(光照強度、CO?、TVOC濃度、空氣溫濕度、土壤濕度),以及超過設定閥值的系統(tǒng)自動調節(jié)或從終端人為下發(fā)命令調節(jié)的功能。云上OneNET智慧大棚創(chuàng)新的將農業(yè)加上互聯(lián)網,可以精準的及時監(jiān)控大棚里的環(huán)境因素數(shù)據(jù)(上傳數(shù)據(jù)時間間隔最低可達3s)并通過中移物聯(lián)網OneNET平臺將離散的數(shù)據(jù)可視化(中移OneNET平臺支持多種數(shù)據(jù)展示方式:曲線圖,柱狀圖,表盤,按鍵),方便長期的監(jiān)控和分析最適宜作物生長的環(huán)境因素,可以高效率低成本的維持大棚內的穩(wěn)態(tài)。


二、作品介紹
1、創(chuàng)作動機

為了解決傳統(tǒng)農業(yè)生產效率低下,消耗大量的人力物力,不能足夠精確的對農作物實現(xiàn)監(jiān)控的問題,最大限度的提高農業(yè)生產力,實現(xiàn)優(yōu)質、高產、低耗、環(huán)保的可持續(xù)發(fā)展農業(yè)。云上OneNet的智慧大棚實現(xiàn)了在互聯(lián)網,多終端的條件下實時監(jiān)控大棚里的環(huán)境因素(光照強度,空氣溫度,空氣濕度,土壤濕度等),以及超過設定閥值的系統(tǒng)自動調節(jié)或從終端人為下發(fā)命令調節(jié)的功能。云上OneNet的智慧大棚創(chuàng)新的將農業(yè)加上互聯(lián)網,可以更加精準的及時監(jiān)控大棚里的環(huán)境因素數(shù)據(jù)(上傳數(shù)據(jù)時間間隔最低可達8s)并通過中移物聯(lián)網OneNet平臺將離散的數(shù)據(jù)可視化(中移OneNet平臺支持多種數(shù)據(jù)展示方式:曲線圖,柱狀圖,表盤,按鍵),方便長期的監(jiān)控和分析,此外還可以更加高效率低成本的維持大棚內的穩(wěn)態(tài)。

2、創(chuàng)作目的

為了解決傳統(tǒng)農業(yè)生產效率低下,消耗大量的人力物力,不能足夠精確的對農作物實現(xiàn)監(jiān)控的問題,最大限度的提高農業(yè)生產力,實現(xiàn)優(yōu)質、高產、低耗、環(huán) 保的可持續(xù)發(fā)展農業(yè)。

(1)、內容和技術

云上 OneNet 智慧大棚由 STM32F103 單片機作為主控芯片處理來自 SHT20 溫濕度傳感器、GY30 光線傳感器、土壤濕度傳感器、CO2等傳感器的數(shù)據(jù)再通過 ESP8266WiFi 模塊將多種影響生產因素的數(shù)據(jù)上傳至中移物聯(lián)網 OneNet 平臺上,多終端(PC 端、移動端、Pad 端)條件下實時監(jiān)控大棚里的環(huán)境因素并從終端人為下發(fā)命令調節(jié)外設 和超過設定閥值的系統(tǒng)自動處理調節(jié)的功能。

(2)、應用和前景

農業(yè)物聯(lián)網,即在大棚控制系統(tǒng)中,運用物聯(lián)網系統(tǒng)的溫度傳感器、 濕度傳感器、Ph 值傳感器、光傳感器、CO2 傳感器等設備,檢測環(huán)境中的溫度、相對濕度、 Ph 值、光照強度、土壤養(yǎng)分、CO2 濃度等物理量參數(shù),通過各種儀器儀表實時顯示或作為 自動控制的參變量參與到自動控制中,保證農作物有一個良好的、適宜的生長環(huán)境。遠程 控制的實現(xiàn)使種植人員在辦公室就能對多個大棚的環(huán)境進行監(jiān)測控制。采用無線網絡來測 量獲得作物生長的適宜條件,可以為溫室精準調控提供科學依據(jù),達到增產、改善品質、 調節(jié)生長周期、提高經濟效益。通過物聯(lián)網技術開啟的智慧風暴,讓農業(yè)實現(xiàn)了“環(huán)境可測、生產可控、質量可溯”的目標。確保農產品質量安全,引領現(xiàn)代農業(yè)發(fā)展。

3、作品改良

針對傳統(tǒng)生態(tài)大棚數(shù)據(jù)不便于收集分析展示的缺點,我們采用中移物聯(lián)網OneNet平臺,能輕松實現(xiàn)平臺的搭建,設備的聯(lián)網,數(shù)據(jù)的收集分析展示,為尋找作物最佳生長狀態(tài)提供實際指導。

4、芯片及功能

云上OneNet智慧大棚使用了一塊麒麟座迷你開發(fā)板作為主控,其上包含一塊STM32F103C8T6MCU,STM32 作為主控芯片處理來自空氣SHT20溫濕度傳感器、YL69土壤濕度傳感器、GY30光強度傳感器、SGP30二氧化碳傳感器的數(shù)據(jù);采用 ESP8266wifi 模塊將本地數(shù)據(jù)實時上傳至互聯(lián)網;接入中移物聯(lián)網 OneNet 云平臺實現(xiàn)對數(shù)據(jù)的可視化處理和多終端共享以及命令的下發(fā)

三、作品功能與實用性

1.功能:基于 OneNet 的智慧大棚統(tǒng)可以在多終端上實現(xiàn)對植物補光燈、排氣 扇、灌溉系統(tǒng)及其遮光簾的控制。還可以通過中移物聯(lián)網網關攜帶的圖形人機界面,在室內智能網關控制系統(tǒng)上設置補光燈控制模塊、排氣扇控制模塊、灌溉系統(tǒng)控制模塊和遮光簾控制模塊。監(jiān)控溫濕度、光照強度報警模塊、土壤濕度模塊、CO 2 濃度模塊、PH 值模塊、云端實時遙控命令等功能。由于“OneNet”物聯(lián)網技術,移動應用程序可以與智能網關保持快速的數(shù)據(jù)通信。智能網關是整個設計的核心,可以起到連接的作用。為此,設計了 STM32主控芯片、WiFi 模塊的方案。STM32 主芯片負責處理來自 WiFi 模塊的數(shù)據(jù),并對數(shù)據(jù)進行重新打包和分發(fā)。WIFI 模塊負責與路由器的通信。燈光控制模塊負責實際的植物補光燈,排氣扇控制模塊負責實際的風扇運行、灌溉系統(tǒng)控制模塊負責實際的大棚內的澆水和遮光簾控制模塊負責實際的遮光簾的升降。因此整個系統(tǒng)分為六個部分:PC 控制終端、智能網關控制器、補光燈控制模塊、排氣扇控制模塊、灌溉系統(tǒng)控制模塊、遮光簾控制模塊。


2.將互聯(lián)網和農業(yè)有機結合起來,實現(xiàn)農業(yè)的物聯(lián)網化,接入中移物聯(lián)網 OneNet 平臺,不僅讓各種大棚內的生產因素數(shù)據(jù)可視化(曲線圖、柱狀圖、表盤、按 鍵),便于對生產因素的管理以獲得作物生長的適宜條件,可以為溫室精準調控提供科學依據(jù),而且還獲得了電信級的穩(wěn)定,這對于滿足農業(yè)生產的穩(wěn)定性和可靠性有非常大的支撐。

3.具有市場競爭力方面:數(shù)據(jù)服務

通過農業(yè)大數(shù)據(jù),不斷收集智能大棚產生的各種環(huán)境生產因素,提供各地不同時節(jié)不同作物的相關生長數(shù)據(jù)包,支持農戶選擇不同數(shù)據(jù)包以快速適應種植地與作物;


4.OneNET平臺端定義功能:

平臺端定義功能

功能類型

功能名稱

標識符

數(shù)據(jù)類型

數(shù)據(jù)定義

屬性

室內溫度

Temperature

浮點型

取值范圍:-50~100C°

屬性

室內濕度

Humidity

浮點型

取值范圍:0-100%

屬性

風扇

Electric_fan

布爾型

布爾值:關0;開1;

屬性

土壤濕度

SoilHumidity

浮點型

取值范圍:1-4

屬性

土壤濕度

SoilHumidity1

浮點型

取值范圍:1-4

屬性

燈光

Color_Led

布爾型

布爾值:關0;開1

屬性

水泵

Water_pump

布爾型

布爾值:關0;開1

屬性

水泵1

Water_pump1

布爾型

布爾值:關0;開1

屬性

二氧化碳

Carbon_dioxide

浮點型

取值范圍:0-60000ppm

屬性

總揮發(fā)性有機物

TVOC

浮點型

取值范圍:0-60000ppb

屬性

光照強度

illumination

浮點型

取值范圍:1-65535lx


四、設計原理

1.工作原理:采用 STM32F103 為主控芯片處理來自溫度傳感器、濕度傳感器、 Ph 值傳感器、光傳感器、CO2 傳感器的數(shù)據(jù);采用 ESP8266wifi 模塊將本地數(shù)據(jù)實時上傳至互聯(lián)網,接入中移物聯(lián)網 OneNet 云平臺實現(xiàn)對數(shù)據(jù)的可視化處理和多終端共享以及命令的下發(fā)。

2.對于如何同云平臺進行數(shù)據(jù)交換曾考慮過使用NB-IOT,但是NB的模塊相比于esp8266來說價格略高,除此之外NB還需要專門申請物聯(lián)網卡,進一步加深了項目的成本,相對而言,使用esp8266既能滿足項目需求,價格又合理。

3.技術來源:中移物聯(lián)網社區(qū)、CSDN、Baidu。屬于參賽者自主研發(fā)內容:硬件連接邏輯、按需進行代碼編寫、整體物理模型的構建。



五、設計作品結構1、硬件部分(1)、 SHT20溫濕度傳感器

SHT20[6]是一款采用 DFN 封裝-適于回流焊、數(shù)字輸出,I2C 接口具有低功耗、優(yōu)異的長期穩(wěn)定性的溫濕度傳感器�?梢酝ㄟ^I2C通信模式與MCU進行數(shù)據(jù)通信。SHT20傳感器與STM32MCU相連,電路圖如圖3.1所示。其中VDD是傳感器內部模擬電路電源端;SCL、SDA分別是12C通信模式時鐘信號、數(shù)據(jù)信號;VSS接低電平。NC和NC_1本設計未使用,故懸空。

圖 5.1.1SHT20傳感器電路

(2)、 SGP30二氧化碳傳感器

SGP30多像素氣體傳感器分線板提供完全集成的MOX氣體傳感器,這是Sensirion的一款非常精細的空氣質量傳感器,具有I 2 C接口和完全校準的輸出信號,測量值的典型精度為15%。SGP在一個芯片上結合了多個金屬氧化物傳感元件,以提供更詳細的空氣質量信號。該傳感器可檢測各種揮發(fā)性有機化合物(VOC)和H2,用于室內空氣質量監(jiān)測。SGP30具有標準的熱板MOX傳感器,以及控制電路板電源,讀取模擬電壓,跟蹤基線校準,計算TVOC和CO 2 值的小型微控制器,并提供I 2 C接口。從中讀取。與CCS811不同,該傳感器不需要I 2 C時鐘延長。該傳感器VCC接3.3V,GND接MCU的GND,SCL和SDA分別接MCU的PB8和PB9.

圖 5.1.2  SGP30二氧化碳傳感器


(3)、GY30數(shù)字光照強度傳感器

數(shù)字光強度檢測模塊:GY30采用ROHM原裝BH1750FVI[7]芯片,供電電源3~5V,光照范圍:0~65535lex,傳感器內置16bitAD轉換器直接數(shù)字輸出,省略復雜計算,省略標定,不區(qū)分環(huán)境光源,接近視覺靈敏度實物的分光特性可對廣泛的亮度進行1勒克斯的高精度測定標準,采用IIC通信協(xié)議。引腳VCC、GND和ADDR(器件地址0100011)分別接MCU的3.3/5V,GND和GND,SCL和SDA分別接PB6和PB7.


圖 5.1.3  GY30數(shù)字光照強度傳感器


(4)、 YL69土壤濕度傳感器

YL69[8]是一款比較器采用LM393 芯片,工作穩(wěn)定,電源:3.3V ~ 5V,設有固定螺栓孔,方便安裝,獲取濕度信息的方式從傳感器的A0引腳:獲取到模擬量,更加精確。傳感器板上的VCC接電源,GND接地,A0接單片機模擬輸入PA0,再經過ADC采樣,量化,編碼計算,最終得到精確的土壤濕度值。

圖 5.1.4  YL69土壤濕度傳感器


(5)、NLN2003步進電機驅動模塊和28BYJ48步進電機

ULN2003是高耐壓、大電流復合晶體管陣列,由七個硅NPN 復合晶體管組成,每一對達林頓都串聯(lián)一個2.7K 的基極電阻,在5V 的工作電壓下它能與TTL 和CMOS 電路直接相連,可以直接處理原先需要標準邏輯緩沖器來處理的數(shù)據(jù)。ULN2003是大電流驅動陣列,多用于單片機、智能儀表、PLC、數(shù)字量輸出卡等控制電路中�?芍苯域寗永^電器等負載。輸入5VTTL電平,輸出可達500mA/50V。    步進電機相數(shù):4,減速比:1/64,步距角:5.625°/64,驅動方式:四相八拍。ULN2003模塊的引腳VCC接5V電源,GND接MCU的GND,MCU的PB0、1、3、4分別接IN4(步進電機橙線)、3(黃)、2(粉)、1(藍)。


圖 5.1.5  步進電機驅動電路


(6)、STM32主控電路

本設計采用STM32最小系統(tǒng)板,主芯片采用STM32F103C8T6,該MCU是ST公司出品的高性能低功耗系列MCU之一,供電電壓范圍1.65V-3.6V,采用超低漏電工藝技術,使得MCU的運行速度和功耗與其供電無關;具有48個引腳、128kB程序Flash、lOkBRAM、8個16位定時器、2路USART、2路SPI、2路I2C和1路USB通信接口;內置16MHz和38kHzRC振蕩器,使得電路無需外部晶振也能正常運行。該系列MCU可長時間運行在低功耗狀態(tài),具有周期性喚醒功能,快速喚醒時間低至4us,且數(shù)據(jù)量較小、數(shù)據(jù)傳輸間隔周期較大。

為了盡可能降低功耗,本設計未使用外部晶振,而使用內部16MHz的MSI RC振蕩器作為系統(tǒng)主時鐘源,經160分頻成lOOkHz供I2C外設使用,I2C采用低速率,可以穩(wěn)定傳輸且降低功耗。MCU長時間處于停止狀態(tài),內部除RTC實時時鐘(采用內部LSI 40kHzRC振蕩器,低于luF電流)外,其余定時器全部停止計數(shù),RTC實時時鐘每隔30秒喚醒MCU,內部16MHz RC振蕩器開始工作,主控程序正常運行,讀取傳感器參數(shù),并上傳至OneNET云平臺。

為了進一步降低功耗,最小系統(tǒng)板上電后,IO端口全部初始化為無上拉的模擬輸入模式,以降低漏電電流;USART的Rxd引腳設置成模擬輸入模式,Txd引腳設置成開漏無上下拉輸出模式;關閉中斷源;MCU停止前關閉USART、I2C等所有外設,然后進入停止狀態(tài);當RTC時鐘周期性喚醒MCU后重新初始化之前配置的10和外設設置。


圖3.6是STM32主控電路圖,采用最小系統(tǒng)板,其中VBAT為系統(tǒng)電源,使用USB供電;BOOTO和BOOT1引腳都接地,系統(tǒng)上電后默認從用戶Flash啟動。STM32F103C8T6通過I2C接口連接SHT20溫濕度傳感器、GY30光照強度傳感器、YL69土壤濕度傳感器和SGP30二氧化碳傳感器;通過USART串口連接ESP8266 WIFI模塊。

圖 5.1.6 STM32F103C8T6主控電路


2、軟件部分

云上OneNET智慧大棚主要功能為遠程實時采集溫室的溫濕度、光照強度、土壤濕度、二氧化碳濃度等信息,對采集的信息進行通風、遮光、灌溉等操作。實現(xiàn)方法為STM32MCU處理來自溫濕度傳感器SHT20、外接土壤濕度傳感器YL69、GY30光強傳感器、SGP30二氧化碳傳感器等采集的信息,再通過板載ESP8266將數(shù)據(jù)傳送到OneNET云平臺,在云平臺上設計監(jiān)控界面來顯示接收到的數(shù)據(jù),既可以實現(xiàn)超過閾值的自動操作又可以人為遠程控制溫室內的抽水系統(tǒng)進行澆灌、直流風扇換器、遮光簾降下、陰天補光等操作。

(1)、OneNET接入流程


本設計采用中國移動物聯(lián)網有限公司的OneNET方案,OneNET接入流程如圖4.1所示。其中賬號注冊、創(chuàng)建產品、添加設備3個步驟需要用戶在https://open.iot.10086.cn/頁面上進行操作。賬號注冊時填寫用戶的個人信息;創(chuàng)建產品時,產品信息的聯(lián)網方式須選擇“wifi”,協(xié)議須選擇“EDP[3]”;添加設備時填寫“云上OneNET智慧大棚”,并添加麒麟座迷你開發(fā)板的產品ID和鑒權信息;STM32主控OneNET.c程序完成接入流程中的上報數(shù)據(jù)步驟,將傳感器參數(shù)上傳至OneNET云平臺;通過瀏覽器或中國移動的“設備云”APP可以查看展示數(shù)據(jù)。

圖 5.2.1 OneNET接入流程

(2)、上報數(shù)據(jù)

STM32主控程序完成接入流程中的上報數(shù)據(jù)步驟,其流程如圖4.2所示。

圖 5.2.2上報數(shù)據(jù)子流程






圖 5.2.3主程序框架流程圖


3、核心代碼

圖 5.3.1與OneNET創(chuàng)建連接


圖 5.3.2具體數(shù)據(jù)(json)上傳至OneNET云平臺

圖 5.3.3數(shù)據(jù)包上傳至OneNET平臺


圖 5.3.4數(shù)據(jù)包從OneNET云平臺下傳

圖 5.3.5主程序代碼





4、云平臺應用界面

圖 5.4.1云平臺應用界面



5、各個功能部分調試方法,測試情況以及注意事項

各個功能部分進行調試的方法和測試的情況以及注意事項

功能部件

調試方法

測試情況

注意事項

數(shù)據(jù)上傳至云平臺部分

用串口助手代替wifi模塊檢測能否有效顯示數(shù)據(jù)

串口連接成功后,先自動發(fā)送AT指令,然后源源不斷收到溫濕度、光強、CO2、土壤濕度等數(shù)據(jù)

1:串口助手波特率要和代碼一致;

2:代碼中主函數(shù)和串口部分要把傳送到OneNET.c的數(shù)據(jù)傳送到相應串口做相應修改。

功能部件

調試方法

測試情況

注意事項

云平臺數(shù)據(jù)可視化部分

1:對棚內溫濕度、光強等連續(xù)性強的數(shù)據(jù)采用折線圖元素;

2:對CO2/TVOC、土壤濕度等數(shù)據(jù)采用表盤元素;

3:對需從云端下發(fā)命令LED、電機等采用按鈕元素


設備在線后,所有代表環(huán)境數(shù)據(jù)的基礎元素每隔10s不間斷更新數(shù)據(jù)

1:每個元素要和數(shù)據(jù)流正確的對應;

2:表盤元素自帶的標題和背景顏色重合,要單獨弄一個文本標識;

3:合理的設置數(shù)據(jù)個數(shù)會影響應用的更新顯示

CO2傳感器與排風扇

往SGP30傳感器哈氣使CO2濃度>700ppm(植物生長是需要CO2的,CO2不足才加干冰/換氣,為方便演示,換成濃度高換氣)


CO2濃度>700ppm,排風扇轉動,反之停止

1:電機不能直接接MCU的+5V,要連接直流電機驅動模塊再外接+9V的DC電源;


土壤濕度(植)與水泵0

提起YL69傳感器,使其干燥

YL69傳感器干燥,水泵0開始針對植物少量灌溉

1:YL69經ADC轉換后的閾值選擇;

2:灌溉噴頭不同,噴灑面積的也不同,此處需要小流量但覆蓋面積大的。

功能部件

調試方法

測試情況

注意事項

土壤濕度(池)與水泵1

提起YL69傳感器,使其干燥

YL69傳感器干燥,水泵1開始針對池塘大量灌溉

1:YL69經ADC轉換后的閾值選擇;


光照強度傳感器與遮光簾

照射GY30,使得光強>2000lex

光強>2000lex,遮光簾降下

注意調節(jié)步進電機運動速度

光照強度傳感器與補光燈

遮住GY30,使得光強<400lex

光強<400lex,遮光簾上升,紅黃LED亮起

注意結合實際選擇普通陰天的光強數(shù)據(jù)

從云平臺數(shù)據(jù)下發(fā)部分

從云端下發(fā)命令LED、電機等采用按鈕元素

按下LED、電機的開關LED亮,電機運動

注意按鈕元素開關值的01數(shù)據(jù)格式



全部代碼51hei下載地址:
云上Onenet智慧大棚代碼.7z (1.59 MB, 下載次數(shù): 588)

作者: 隨風飄揚的小白    時間: 2021-4-19 14:57
UP,深入學習
作者: 阿九九    時間: 2021-9-25 16:44
壓縮包里是不是少一部分主程序代碼啊,那個截圖里的代碼沒看見
作者: Toi.    時間: 2021-10-14 11:12
你好,有沒有云上平臺的Proteus仿真圖
作者: 阿戰(zhàn)    時間: 2021-10-26 13:47
請問有沒有protues仿真圖啊,大佬
作者: 1213877680    時間: 2022-5-26 10:55
有架構圖嗎

作者: 渦輪增壓    時間: 2022-8-3 16:32
1213877680 發(fā)表于 2022-5-26 10:55
有架構圖嗎

沒有架構圖,只有  圖 5.2.3主程序框架流程圖
作者: zxcvbnm12344    時間: 2023-5-28 19:24
可惜沒有原理圖文件啊
作者: xx不放火    時間: 2023-6-7 16:14
有部分代碼就夠用了
作者: 2979181478    時間: 2023-6-29 00:38
有沒有人搭建出來啊




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1