找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1389|回復: 0
打印 上一主題 下一主題
收起左側(cè)

基于arduino +機智云物聯(lián)網(wǎng)平臺的陽臺生態(tài)控制系統(tǒng)的設(shè)計

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:729078 發(fā)表于 2020-7-16 12:29 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
基于arduino +機智云物聯(lián)網(wǎng)平臺的陽臺生態(tài)控制系統(tǒng)的設(shè)計
李軍輝
北京農(nóng)業(yè)職業(yè)學院

摘要
以基質(zhì)培養(yǎng)的綠色植物所在的半封閉陽臺系統(tǒng)為研究對象,設(shè)計基于Arduino Uno WIFI +機智云物聯(lián)網(wǎng)平臺的遠程環(huán)境控制系統(tǒng)。系統(tǒng)通過傳感器實時采集溫度、濕度、光照等環(huán)境參數(shù),通過WIFI無線網(wǎng)絡(luò)上傳機智云物聯(lián)網(wǎng)平臺的服務(wù)器。用戶通過手機等移動終端下載應(yīng)用APP,訪問機智云服務(wù)器,實時了解系統(tǒng)的環(huán)境參數(shù),通過遠程啟動灌溉、補光、關(guān)窗等操作調(diào)節(jié)環(huán)境參數(shù)。系統(tǒng)采用無線連接的WIFI +云服務(wù)器的形式,不需布線和支付移動費用,整個硬件系統(tǒng)經(jīng)濟實用,可應(yīng)用在城市居民的陽臺植物種植上。


作者簡介: 李軍輝(1972—),男,河北石家莊人,北京農(nóng)業(yè)職業(yè)學院機電工程學院講師,碩士。研究方向:農(nóng)業(yè)機械工程。

1 陽臺生態(tài)控制系統(tǒng)研究現(xiàn)狀分析

關(guān)于陽臺農(nóng)業(yè)控制系統(tǒng),國內(nèi)外學者開展了一些研究。浙江大學周趙鳳等基于ST M8S208C8T6芯片, 設(shè)計了基于TJA1050芯片CAN總線營養(yǎng)液循環(huán)控制系統(tǒng)和無土栽培的陽臺農(nóng)業(yè)立體栽培機控制器[1];西北農(nóng)業(yè)大學梁鑫等研究了陽臺農(nóng)場控制系統(tǒng)[2];國家農(nóng)業(yè)智能裝備工程技術(shù)研究中心郭文忠等基于STM32F103微控制器,設(shè)計了陽臺農(nóng)業(yè)立體栽培自動控制系統(tǒng),實現(xiàn)了軟硬件結(jié)合的自動補水與補光控制[3];電子科技大學高虎等設(shè)計開發(fā)了基于Android系統(tǒng)的手機APP為遠程控制端, 以STM32單片機為控制中心,實現(xiàn)了遠程操控陽臺上晾衣、澆花等功能[4];南陽理工學院李云強以Arduino Uno作為主控芯片,通過GSM模塊與手機通信,設(shè)計了基于Arduino的智能溫室大棚控制系統(tǒng)[5]。還有大量學者對控制策略進行了研究。


2 陽臺植物環(huán)境監(jiān)測控制系統(tǒng)硬件平臺設(shè)計


陽臺植物生態(tài)環(huán)境是一個半封閉、空間小的生態(tài)系統(tǒng),是一個時變非線性的多輸入多輸出系統(tǒng)。系統(tǒng)的溫度、濕度、光照強度等各個參數(shù)相互作用、相互耦合,難以建立比較準確的控制模型。簡單的控制策略難以實現(xiàn)準確的調(diào)控,生態(tài)系統(tǒng)的環(huán)境控制策略一般采用智能控制組合策略,可解決各個參數(shù)相互耦合造成的超調(diào)和震蕩,實現(xiàn)對環(huán)境參數(shù)更好地控制,使系統(tǒng)具有穩(wěn)定性和適應(yīng)性[6]。常用的控制策略有基于模糊的PID模糊控制策略、遺傳模糊控制策略、神經(jīng)網(wǎng)絡(luò)控制策略、專家控制策略等,根據(jù)陽臺生態(tài)系統(tǒng)的特點,采用比較成熟的模糊PID控制策略,設(shè)計控制系統(tǒng),見圖1。








2.1控制系統(tǒng)的組成

由圖1可知,陽臺植物生態(tài)監(jiān)測控制系統(tǒng)由環(huán)境感知模塊、環(huán)境調(diào)整控制模塊、環(huán)境參數(shù)顯示模塊和環(huán)境調(diào)節(jié)執(zhí)行模塊四部分構(gòu)成。環(huán)境感知模塊包括土壤濕度傳感器、溫度傳感器、光照強度傳感器等,用于實時采集生態(tài)環(huán)境系統(tǒng)參數(shù)數(shù)據(jù);環(huán)境調(diào)整控制模塊是整個系統(tǒng)的核心,采用Arduino Uno開發(fā)板,一方面實時接收感知模塊的數(shù)據(jù),上傳物聯(lián)網(wǎng)云服務(wù)器,另一方面接收遠程控制指令,下發(fā)執(zhí)行模塊;調(diào)節(jié)執(zhí)行模塊由灌溉控制電機、開窗控制電機等組成;環(huán)境參數(shù)顯示模塊由LCD顯示器、遠程移動終端構(gòu)成。

2.2 控制系統(tǒng)的運行

環(huán)境感知模塊的傳感器實時采集陽臺植物生態(tài)環(huán)境的溫度、濕度、光照參數(shù),并上傳至Arduino開發(fā)控制板,控制板將環(huán)境參數(shù)顯示在本地LCD顯示器上,并通過網(wǎng)絡(luò)擴展部分上傳至物聯(lián)網(wǎng)云服務(wù)器,供移動終端遠程實時訪問。遠程終端用戶根據(jù)植物的環(huán)境參數(shù),在APP上通過云服務(wù)器向Arduino開發(fā)板下達指令,通過灌溉、開窗等調(diào)整生態(tài)系統(tǒng)的環(huán)境參數(shù)。另外,控制系統(tǒng)也可設(shè)置環(huán)境參數(shù)閾值,自動調(diào)整生態(tài)系統(tǒng)的環(huán)境參數(shù)。環(huán)境執(zhí)行模塊接到云端指令后,啟動灌溉電機進行灌溉,開啟開窗電機、補光燈進行環(huán)境參數(shù)調(diào)節(jié)。

3 控制系統(tǒng)硬件組成

控制系統(tǒng)主要應(yīng)用在城市家庭陽臺,為了便于推廣應(yīng)用,硬件選用原則為價格便宜、性能可靠、精度夠用。

3.1 Arduino控制板

Arduino控制板是應(yīng)用廣泛的開源硬件平臺,其價格便宜、功能強大,對硬件配置要求低。本文選用Arduino Uno開發(fā)版作為系統(tǒng)控制核心,開發(fā)版通過WIFI 擴展模塊連接網(wǎng)絡(luò)。微控制器采用的是Atmel的ATmega328。在軟件方面,Arduino有基于Eclipse 的IDE開發(fā)環(huán)境自身的軟件平臺,采用類C的語言進行編程,模塊化的封裝函數(shù)供程序開發(fā)者調(diào)用,預裝了Bootloader程序,不需要外部燒寫,很容易編寫代碼并通過USB端口下載到開發(fā)板上。簡化嵌入式系統(tǒng)的設(shè)計過程,其主要性能參數(shù)見表1。






Arduino Uno 開發(fā)板通過輸入輸出通道接受溫度、濕度、光照傳感器采集的環(huán)境參數(shù)信號,通過I2C接口驅(qū)動在LCD顯示屏上顯示。移動終端通過機智云發(fā)來的遠程指令和智能控制策略,驅(qū)動補光、灌溉電機、開窗電機等,調(diào)節(jié)生態(tài)系統(tǒng)環(huán)境。將傳感器上傳的參數(shù)通過WIFI模塊,上傳到機智云服務(wù)器,供移動終端遠程訪問。


3.2.1 土壤濕度傳感器


本文選用奧松機器人的土壤濕度傳感器,它通過測量土壤相對含水率來確定土壤濕度大小。工作原理是土壤的電阻值因含水量的不同而不同,通過2個探頭間的阻值變化來反映土壤的濕度情況,如圖3所示。當傳感器探頭懸空時,三極管基極處于開路狀態(tài),輸出為0。土壤濕度不同使三極管的基極提供了大小變化的導通電流,發(fā)射極經(jīng)過下拉電阻后轉(zhuǎn)換成電壓[7]。設(shè)定輸出與濕度的關(guān)系,0~30為干土壤、30~70為濕土壤、70~95為水。土壤濕度傳感器共引出3個引腳,分別是電源正 Vcc、電源地 GND、信號端 S,將土壤濕度傳感器直接連接到 Arduino UNO 控制器的模擬引腳,例如 A1引腳,見圖3。

3.2.2溫度傳感器采用DHT11


DHT11溫濕度傳感器體積小、功耗低、響應(yīng)快、抗干擾能力強,輸出數(shù)字信號已校準。內(nèi)部的8位單片機與空氣濕度元件和空氣溫度元件相連,輸出數(shù)據(jù)可由數(shù)據(jù)采集設(shè)備直接讀取。傳感器的OTP內(nèi)存中存有程序形式的校準系數(shù),在檢測信號的處理過程中調(diào)用校準系數(shù)進行校正[8]。采用單線制串行輸出接口,4針單排引腳封裝。DHT11數(shù)字溫度傳感器模塊共引出3個引腳,分別是地線GND、電源Vcc和數(shù)據(jù)線S。實際應(yīng)用時,將S端接在Arduino Uno的一個數(shù)字輸入接口。傳感器分辨率為0.1°C,精度為±0.5°C,檢測范圍為- 40°C ~80°C,工作電壓為3.3~5.5 V。如圖4所示。



3.2.3光照強度傳感器


GY-30光照強度傳感器,采用ROHM原裝BH1750FVI芯片,I2C數(shù)字接口,支持速率最大為400 Kbps。傳感器內(nèi)置16bitAD轉(zhuǎn)換器直接數(shù)字輸出,省略復雜的計算,省略標定,通過計算電壓獲得有效數(shù)據(jù)。供電電源為3~5V,光照度范圍為0~65535 lx,分辨率最小到1 lx,精度誤差最大值為±20%。不區(qū)分環(huán)境光源,接近視覺靈敏度分光特性,可對廣泛亮度進行1 lx高精度測定。標準NXP IIC通信協(xié)議模塊內(nèi)部包含通信電平轉(zhuǎn)換,與5V單片機IO直接連接。在Arduino Uno硬件上,A4、A5連接GY-30的SDA、SCL引腳,見圖5。

3.2.4 esp8266 WIFI接入模塊

Arduino采用WIFI形式接入互聯(lián)網(wǎng),采用ESP8266模塊集成到Arduino Uno 開發(fā)版上。它是超低功耗的UART-WIFI 模塊,封裝尺寸小,可將用戶的物理設(shè)備連接到WIFI 上,進行互聯(lián)網(wǎng)或局域網(wǎng)通信,實現(xiàn)聯(lián)網(wǎng)功能。

3.2.5 物聯(lián)網(wǎng)云服務(wù)平臺機智云

物聯(lián)網(wǎng)云服務(wù)平臺接受系統(tǒng)傳感器上傳的參數(shù),供遠程客戶訪問;接受遠程客戶下達的命令,發(fā)送給Arduino控制器,通過執(zhí)行模塊調(diào)節(jié)系統(tǒng)環(huán)境參數(shù)。平臺向開發(fā)者提供API接口,為開發(fā)者提供數(shù)據(jù)處理和存儲服務(wù)。規(guī)模比較大的平臺有 Scinan、Arrayent、COSM/Pachube 、機智云等。COSM是目前用戶量最大的開放物聯(lián)網(wǎng)平臺,能通過簡單的開源硬件或者單片機,實現(xiàn)傳感器數(shù)據(jù)的上傳和存儲,還提供一系列的數(shù)據(jù)展現(xiàn)方式。

本文采用機智云平臺,它向開發(fā)者提供了非常方便的智能硬件開發(fā)框架和云服務(wù)功能。在平臺上可以直接定義產(chǎn)品和進行設(shè)備端開發(fā)調(diào)試,并提供應(yīng)用開發(fā)、產(chǎn)品測試、云端開發(fā)、數(shù)據(jù)服務(wù)功能,覆蓋智能硬件的全生命周期服務(wù)

4 軟件設(shè)計及主要工作流程


在機智云創(chuàng)建開發(fā)者帳號,輸入物理地址創(chuàng)建新產(chǎn)品,輸入產(chǎn)品數(shù)據(jù)點,創(chuàng)建產(chǎn)品數(shù)據(jù)信息,見圖6


4.1.創(chuàng)建虛擬設(shè)備



機智云數(shù)據(jù)點設(shè)置


4.1.1 應(yīng)用開發(fā)


硬件層面上,機智云提供已經(jīng)燒錄GAgent(固件)的通訊模塊,實現(xiàn)上層應(yīng)用(APP應(yīng)用、機智云云端)到設(shè)備的雙向數(shù)據(jù)通訊,以及配置入網(wǎng)、發(fā)現(xiàn)綁定。軟件層面,機智云提供開發(fā)框架代碼實現(xiàn)了底層通信協(xié)議的解析封包,通信數(shù)據(jù)與傳感器數(shù)據(jù)的轉(zhuǎn)換,并供開發(fā)API接口。在本系統(tǒng)設(shè)計中,在代碼框架事件處理邏輯中添加環(huán)境傳感器、電機、水泵等控制函數(shù)。當設(shè)備偵聽到云端或APP端的數(shù)據(jù)后,代碼將數(shù)據(jù)轉(zhuǎn)換成事件通知應(yīng)用層設(shè)備。下發(fā)設(shè)備數(shù)據(jù)是APP、云端控制設(shè)備,經(jīng)過云端直接下發(fā)給GAgent。上報設(shè)備數(shù)據(jù)通過系統(tǒng)中設(shè)備主動上報當前狀態(tài),當設(shè)備MCU收到WIFI模組控制產(chǎn)生的狀態(tài)變化,設(shè)備MCU立刻主動上報當前狀態(tài),發(fā)送頻率不受限制。

4.2 Arduino Uno 控制板開發(fā)


智能陽臺生態(tài)系統(tǒng)以Arduino Uno為控制核心,支持C 語言與匯編語言混合編寫, 底層驅(qū)動程序由匯編語言編寫, 對外采用C 語言接口。程序開發(fā)環(huán)境選用軟件Arduino IDE5.0,操作系統(tǒng)為Microsoft Windows 7(32位)。在Arduino IDE5.0配置開發(fā)環(huán)境,導入機智云物聯(lián)網(wǎng)平臺的硬件開發(fā)庫文件,開發(fā)各模塊庫函數(shù),編譯好程序后下載到開發(fā)版進行調(diào)試。該系統(tǒng)程序主要由主程序、初始化子程序、偵聽遠程讀指令函數(shù)、遠程控制模塊APP、讀取環(huán)境光照子程序、讀取土壤濕度子程序、讀取空氣溫度子程序組成。程序流程見圖7。








4.3遠程控制端APP開發(fā)


機智云物聯(lián)網(wǎng)平臺的Android平臺SDK封裝了手機與機智云智能硬件的通訊過程,手機與云端的通訊過程。提供配置入網(wǎng)、發(fā)現(xiàn)、連接、控制、心跳、狀態(tài)上報、報警通知等。APP開源框架提供用戶注冊登錄、配置設(shè)備入網(wǎng)、設(shè)備發(fā)現(xiàn)控制、消息推送等功能,見圖8。



遠程app控制



5系統(tǒng)實驗


本系統(tǒng)在陽臺實訓室測試時,陽臺已經(jīng)裝入寬帶并提供WIFI環(huán)境,控制板通過WIFI接入網(wǎng)絡(luò)。首先,打開手機APP,讀取陽臺的溫度、土壤濕度、光照環(huán)境參數(shù),檢測溫度、濕度和光照傳感器是否正常工作,也可遠程通過Arduino終端節(jié)點控制照明燈、澆水和開窗繼電器的開關(guān),見圖9。



Android APP工程工作

6結(jié)論

通過設(shè)計和實驗室模擬測試,基于Arduino +機智云物聯(lián)網(wǎng)平臺的陽臺生態(tài)控制系統(tǒng)可有效地實現(xiàn)遠程控制陽臺生態(tài)系統(tǒng)環(huán)境,具有安全可靠、擴展性強和經(jīng)濟的優(yōu)點,可以推廣到寵物飼喂等系統(tǒng)。該系統(tǒng)具有很強的可實施性,在城市具有很大的應(yīng)用空間,并有較好的社會效益和經(jīng)濟效益。


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表