蘭元帥 李洋 舒靜 李春全 鄧欽洋
摘要:該系統(tǒng)采用LUA開發(fā)ESP8266,實(shí)現(xiàn)兩種功能:聯(lián)網(wǎng)與數(shù)據(jù)轉(zhuǎn)發(fā)功能;數(shù)據(jù)采集、控制功能,和傳統(tǒng)物聯(lián)網(wǎng)有很大區(qū)別。在實(shí)現(xiàn)遠(yuǎn)程監(jiān)管功能上,該系統(tǒng)采用了阿里云平臺作為數(shù)據(jù)的收發(fā)。ESP8266 將收集到的數(shù)據(jù)通過 MQTT協(xié)議發(fā)送至云端,然后通過阿里云轉(zhuǎn)發(fā)到手機(jī)App即可監(jiān)測終端數(shù)據(jù)。為了實(shí)現(xiàn)遠(yuǎn)程移動端的監(jiān)控,還用Android開發(fā)了手機(jī)App客戶端,一旦網(wǎng)絡(luò)連接成功,即可隨時(shí)隨地實(shí)現(xiàn)遠(yuǎn)程監(jiān)管。
關(guān)鍵詞:ESP8266;數(shù)據(jù)采集;遠(yuǎn)程監(jiān)管;云平臺;App客戶端
中圖分類號:TN948.6? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2021)27-0101-02
物聯(lián)網(wǎng)(Internet of Thing)[1-2]技術(shù)是互聯(lián)網(wǎng)的重要部分,現(xiàn)代生活很多場景都運(yùn)用物聯(lián)網(wǎng)技術(shù)。其應(yīng)用已經(jīng)延伸到生活的各個(gè)方面,在現(xiàn)代的物聯(lián)網(wǎng)控制應(yīng)用當(dāng)中,主要強(qiáng)調(diào)的是智能監(jiān)管。本文采用全新MQTT通信物聯(lián)網(wǎng)技術(shù)實(shí)現(xiàn)智能控制和數(shù)據(jù)接收。
現(xiàn)如今遠(yuǎn)程智能監(jiān)管系統(tǒng)的實(shí)現(xiàn)方式通常較為復(fù)雜,其中,大部分的方案都是基于Zigbee自組網(wǎng)加處理器ARM [3],這種方案實(shí)現(xiàn)成本高。針對這一問題,本系統(tǒng)采用了ESP8266模塊[4]和阿里云。該系統(tǒng)布局簡單,終端模塊和無線通信模塊被巧妙的融合,相對傳統(tǒng)的物聯(lián)網(wǎng)解決方案而言,省去了主控芯片,在阿里云平臺的MQTT服務(wù)器不需要專門的開發(fā),只需要在云平臺上配置MQTT服務(wù)器,我們的WIFI模塊和手機(jī)與云端的MQTT通信,便可實(shí)現(xiàn)移動端監(jiān)測管理[5],節(jié)省了開發(fā)周期和成本。
1監(jiān)管系統(tǒng)的總體方案設(shè)計(jì)
本研究設(shè)計(jì)的遠(yuǎn)程智能監(jiān)管系統(tǒng)包括電源模塊、數(shù)據(jù)采集端(火焰探測,溫濕度檢測和燃?xì)鈾z測),8266控制端、阿里云平臺和遠(yuǎn)程控制端。
終端數(shù)據(jù)經(jīng)由ESP8266WIFI模塊接收,然后將接收到的數(shù)據(jù)發(fā)送到MQTT中轉(zhuǎn)服務(wù)器,從而實(shí)現(xiàn)智能采集控制終端與云平臺建立穩(wěn)定的TCP網(wǎng)絡(luò)連接[6],將數(shù)據(jù)經(jīng)過MQTT協(xié)議發(fā)送給云端的MQTT服務(wù)器,中轉(zhuǎn)服務(wù)器將對這些數(shù)據(jù)做相應(yīng)的存儲或轉(zhuǎn)發(fā)。當(dāng)收到遠(yuǎn)程的控制信號時(shí),將數(shù)據(jù)一樣經(jīng)過MQTT協(xié)議傳輸給ESP8266模塊做出相應(yīng)操作。
手機(jī)App同樣是以MQTT協(xié)議與云平臺進(jìn)行數(shù)據(jù)交流,實(shí)現(xiàn)客戶端到服務(wù)端的通訊,兩者之間是雙工通訊,即手機(jī)App可以發(fā)控制信號給云平臺,物聯(lián)網(wǎng)云平臺將此數(shù)據(jù)轉(zhuǎn)發(fā)給終端,從而實(shí)現(xiàn)遠(yuǎn)距離操控[7]。
因?yàn)镋SP8266資源有限,本設(shè)計(jì)用兩塊ESP8266實(shí)現(xiàn),ESP8266用于數(shù)據(jù)收集環(huán)境溫濕度、檢測燃?xì)鉂舛仁遣皇浅瑯?biāo)、探測火焰環(huán)境、監(jiān)控人體進(jìn)入、遠(yuǎn)程操作繼電器開關(guān),此空氣濕度可監(jiān)測的范圍在10%-95%,溫度范圍在5-45攝氏度??刂葡到y(tǒng)用手機(jī)實(shí)現(xiàn)實(shí)時(shí)在線。本研究的設(shè)計(jì)框架如圖1所示。
2系統(tǒng)硬件電路設(shè)計(jì)
本系統(tǒng)著眼于物聯(lián)網(wǎng)現(xiàn)代化,重點(diǎn)打造簡潔的智慧工廠監(jiān)管系統(tǒng),與物聯(lián)網(wǎng)技術(shù)建立緊密聯(lián)系,進(jìn)而使物聯(lián)網(wǎng)遠(yuǎn)程技術(shù)成為智慧工廠監(jiān)管系統(tǒng)的最終形態(tài)。
針對基于云智慧監(jiān)管系統(tǒng)的現(xiàn)實(shí)需求,本系統(tǒng)選用了一系列軟硬件無線產(chǎn)物,其中硬件物聯(lián)網(wǎng)設(shè)備主要分為三大類:一、可以使用無線傳輸協(xié)議的智能終端。二、傳感器種類多。三、采用繼電器控制的智能化控制設(shè)備。
2.1 ESP8266外圍電路設(shè)計(jì)
本設(shè)計(jì)的核心電路包括ESP8266最小系統(tǒng)電路、電源電路、繼電器控制電路,在這些基本電路的基礎(chǔ)上外加各種傳感器,實(shí)現(xiàn)對智慧工廠的各項(xiàng)數(shù)據(jù)的檢測和遠(yuǎn)程控制功能[8]。
ESP8266最大的好處是既可以WIFI通信,又可以作主控MCU,在實(shí)際開發(fā)里的互聯(lián)網(wǎng)或者局域網(wǎng)部分中,均可作為通訊終端,已達(dá)到聯(lián)網(wǎng)特點(diǎn)。通過使用5V電壓對模塊供電,可以檢驗(yàn)ESP8266芯片是否正常工作,檢查晶振是否起振,通過ESP8266模塊[9]與傳感器進(jìn)行數(shù)據(jù)交流,然后將采集的數(shù)據(jù)發(fā)往云平臺。
2.2 繼電器控制電路
在萬物互聯(lián)時(shí)代智慧工廠系統(tǒng)中,設(shè)備實(shí)現(xiàn)自動化、智能化是至關(guān)重要的問題。本系統(tǒng)采用App下發(fā)的命令控制繼電器,由于繼電器采用電平原理設(shè)計(jì),因此本系統(tǒng)可在+5V供電的情況下,完成對系統(tǒng)各類模塊的控制,此繼電器可以控制4種不同的負(fù)載裝備。
3軟件程序的設(shè)計(jì)
3.1無線通信軟件程序的設(shè)計(jì)
在智能監(jiān)管中,數(shù)據(jù)采集和移動端遠(yuǎn)程控制通信功能是必須實(shí)現(xiàn)的。此外在主程序設(shè)計(jì)時(shí)實(shí)現(xiàn)了重連機(jī)制,保證二者持續(xù)連接。本設(shè)計(jì)采用輕量級LUA開發(fā),使用它的通信功能的同時(shí),也使用內(nèi)部剩余的MCU資源,利用率極高。本設(shè)計(jì)采用LUA編程,因此,需要刷入LUA固件,在其基礎(chǔ)上實(shí)現(xiàn)WIFI連接和控制功能[10]。
ESP8266主程序?qū)崿F(xiàn)了物聯(lián)網(wǎng)智能監(jiān)管的各項(xiàng)功能,具有簡單的程序結(jié)構(gòu)。當(dāng)給系統(tǒng)上電時(shí),首先初始化輸入輸出端口、內(nèi)外部時(shí)鐘等內(nèi)部模塊。
當(dāng)系統(tǒng)中一些必要的模塊完成初始化以后,ESP8266模塊需要與外網(wǎng)進(jìn)行連接,在這之后需要連接云端服務(wù)器的IP地址和端口號。ESP8266無線WIFI終端模塊與物聯(lián)網(wǎng)設(shè)備云平臺進(jìn)行雙向數(shù)據(jù)傳輸。本設(shè)計(jì)與云端的數(shù)據(jù)傳輸協(xié)議使用的是MQTT網(wǎng)絡(luò)通信協(xié)議,使用訂閱主題的方式采集數(shù)據(jù),使用發(fā)布主題的方式云端發(fā)出控制命令。
3.2 Android應(yīng)用程序開發(fā)
本設(shè)計(jì)的智慧工廠遠(yuǎn)程監(jiān)管系統(tǒng)是以Android為控制終端,用戶可以在Android設(shè)備上遠(yuǎn)程無線監(jiān)測和管理工廠流水線,并且Android App客戶端需要作為智慧工廠網(wǎng)關(guān)的控制器,共同組建物聯(lián)網(wǎng)網(wǎng)關(guān)[11-12]。當(dāng)用戶有網(wǎng)時(shí),能接收數(shù)據(jù)并且發(fā)送控制指令,用戶可以選擇智慧工廠的4個(gè)模塊,檢測和控制不同的場景。
根據(jù)系統(tǒng)設(shè)計(jì)的功能需求,驗(yàn)證智慧工廠阿里云監(jiān)管系統(tǒng)的具體功能的App實(shí)現(xiàn)過程[3],由于四個(gè)控制子模塊實(shí)現(xiàn)的功能基本上相同,所以只針對一個(gè)控制子模塊的代碼實(shí)現(xiàn)做一定的闡述。