接下來,我將通過一個(gè)小案例,來講解如何開發(fā)一個(gè)智能水產(chǎn)養(yǎng)殖控制系統(tǒng)設(shè)計(jì)。
一位開發(fā)者針對傳統(tǒng)魚塘的養(yǎng)殖和管理現(xiàn)狀,面向中小型魚塘養(yǎng)殖戶設(shè)計(jì)開發(fā)了一套基于機(jī)智云AIoT開發(fā)平臺(tái)的魚塘智能控制系統(tǒng),滿足魚塘養(yǎng)殖環(huán)境的數(shù)據(jù)采集、無線傳輸、實(shí)時(shí)顯示、遠(yuǎn)近程手動(dòng)控制和自動(dòng)控制等功能上的需求,可及時(shí)檢測和控制影響魚類生存生長的環(huán)境因素,避免人工判斷觀察失誤或者操作的不及時(shí)造成大量魚類死亡,有效減少人工成本消耗,而且還能降低系統(tǒng)運(yùn)行維護(hù)成本,以適應(yīng)中小型魚塘養(yǎng)殖戶節(jié)約成本的問題。
系統(tǒng)總體設(shè)計(jì)
本魚塘控制系統(tǒng)主要由下位機(jī)設(shè)備控制端、機(jī)智云AIoT云平臺(tái)以及 APP 端組成。系統(tǒng)整體框架圖如圖所示:
下位機(jī)
下位機(jī)是整個(gè)系統(tǒng)的控制執(zhí)行部分,通過傳感器對魚塘環(huán)境因子進(jìn)行檢測以及控制通過控制設(shè)備調(diào)節(jié)魚塘環(huán)境因子,通過本地顯示面板實(shí)現(xiàn)近程控制。
通過 APP端,可以遠(yuǎn)程觀測魚塘環(huán)境因子情況,并實(shí)現(xiàn)對魚塘的遠(yuǎn)程控制。機(jī)智云AIoT云平臺(tái)作為數(shù)據(jù)中轉(zhuǎn)站,APP通過機(jī)智云云平臺(tái)接收下位機(jī)上傳的數(shù)據(jù)以及向下位機(jī)的控制設(shè)備發(fā)送控制命令。
本系統(tǒng)在運(yùn)行時(shí),下位機(jī)設(shè)備控制端利用串口通過 WiFi 模塊與外界通信,機(jī)智云開發(fā)平臺(tái)作為數(shù)據(jù)中轉(zhuǎn)中心,WiFi 和云平臺(tái)利用廣域網(wǎng)通過云端平臺(tái)進(jìn)行通信。
云平臺(tái)選擇
本系統(tǒng)設(shè)計(jì)選用機(jī)智云AIoT云平臺(tái),為物聯(lián)網(wǎng)開發(fā)者提供方便,機(jī)智云AIoT平臺(tái)搭建好后,平臺(tái)可直接提供相應(yīng)的 API 和 SDK,在開發(fā) APP 時(shí)無需考慮繁雜的通訊協(xié)議,只需要考慮功能開發(fā)便可,降低了開發(fā)者的開發(fā)難度,也提高了開發(fā)效率。
APP端
使用機(jī)智云提供的 APP開源框架設(shè)計(jì)一款魚塘控制APP進(jìn)行遠(yuǎn)程控制,并選用機(jī)智云官方提供地終端進(jìn)行調(diào)試。
相關(guān)硬件:
主控芯片:STM32F103ZET6顯示面板:SDWa050T04屏幕控制輸出模塊:繼電器溫度傳感器:DS18B20水位傳感器: HC-SR04 超聲波傳感器溶解氧/溫度氣壓傳感模塊:BMP180溫度氣壓模塊PH傳感模塊:E201-C-9傳感器、外加 CA3140運(yùn)算放大器WiFi模塊:ESP8266電源模塊:AMS1117 芯片
系統(tǒng)軟件設(shè)計(jì)
1、主程序流程圖如下:
2、下位機(jī)顯示面板設(shè)計(jì)
使用VGUS 軟件在對串口屏界面進(jìn)行設(shè)計(jì)時(shí),根據(jù)本系統(tǒng)的實(shí)際情況,完成四個(gè)功能界面設(shè)計(jì),分別是主界面、環(huán)境監(jiān)控、環(huán)境控制以及閥值設(shè)置界面。
主界面主要是為用戶提供一個(gè)功能導(dǎo)航頁面,根據(jù)用戶當(dāng)時(shí)的需要來選擇要進(jìn)入的界面,可用作設(shè)備異常時(shí)進(jìn)行顯示和報(bào)警,還可通過實(shí)時(shí)監(jiān)控界面查看當(dāng)前魚塘環(huán)境的實(shí)時(shí)參數(shù);控制界面可以對外圍設(shè)備進(jìn)行直接控制。
通過主界面可選擇進(jìn)入環(huán)境監(jiān)測這個(gè)界面,可以看到魚塘環(huán)境各種參數(shù)的實(shí)時(shí)信息,包括被控制設(shè)備的狀態(tài),方便魚塘工作人員進(jìn)行管理,結(jié)合底層傳感器上傳的數(shù)據(jù),直觀地觀察到當(dāng)前魚塘環(huán)境參數(shù)以及各種設(shè)備地控制狀態(tài),該實(shí)時(shí)監(jiān)測界面如圖所示。
從主界面進(jìn)入到控制界面,在控制界面可以對調(diào)節(jié)環(huán)境的外圍硬件設(shè)備進(jìn)行手動(dòng)的方式控制或者設(shè)置自動(dòng)控制;同時(shí)可以聯(lián)合閾值設(shè)定,對各種環(huán)境變量進(jìn)行控制,更加方面快捷的對魚塘環(huán)境因子做出最敏捷的反饋,實(shí)現(xiàn)魚塘環(huán)境控制控制的自動(dòng)化,閾值設(shè)定界面如圖所示。
3、上位機(jī)軟件設(shè)計(jì)
通過在ESP8266中燒寫機(jī)智云Gagent,賦予ESP8266傳輸數(shù)據(jù)的能力,將主控MCU和傳感器收集到的數(shù)據(jù)傳輸?shù)綑C(jī)智云AIoT平臺(tái);為了能在手機(jī)App以及PC端能查看到相關(guān)數(shù)據(jù),使用機(jī)智云AIoT云平臺(tái)進(jìn)行開發(fā),以便將設(shè)備收集到的數(shù)據(jù)同步到云平臺(tái)。
下面來了解一下使用機(jī)智云開發(fā)產(chǎn)品的步驟流程:
在機(jī)智云開發(fā)平臺(tái) dev.gizwits.com 注冊一個(gè)屬于自己的帳號,以后在上面創(chuàng)建地項(xiàng)目也是通過個(gè)人賬號來管理;
賬號登錄后,進(jìn)入到機(jī)智云開發(fā)者中心,點(diǎn)擊開發(fā)一個(gè)新的產(chǎn)品,在里面根據(jù)自己項(xiàng)目需要新建數(shù)據(jù)點(diǎn),項(xiàng)目的云平臺(tái)數(shù)據(jù)點(diǎn)如圖所示;
定義好數(shù)據(jù)點(diǎn)后,再在線生成MCU代碼包,進(jìn)行移植。使用機(jī)智云賽博坦App在線生成器或者是機(jī)智云開源框架開發(fā)一款A(yù)pp。
最終得到整體實(shí)物效果圖如下所示:
通過使用機(jī)智云AIoT開發(fā)平臺(tái)來設(shè)計(jì)魚塘智能控制系統(tǒng),開發(fā)過程簡單易上手,能滿足實(shí)時(shí)采集數(shù)據(jù)、監(jiān)測數(shù)據(jù)、遠(yuǎn)程控制(加氧、控溫)、異常及時(shí)提醒的功能,使魚塘養(yǎng)殖變得更加簡單,可以降低勞動(dòng)強(qiáng)度,節(jié)省勞動(dòng)成本,提高了養(yǎng)殖效率。
以上設(shè)計(jì)僅是一個(gè)大學(xué)生借助機(jī)智云AIot平臺(tái)的力量,做的一個(gè)創(chuàng)新型產(chǎn)品。若是企業(yè)團(tuán)隊(duì)來借助機(jī)智云AIoT平臺(tái)的能力,將賦予智慧養(yǎng)殖更多可能性。