沈加銳 王韜 楊娜 顧鴻虹
摘 要:針對大學公共區(qū)域資源浪費,設(shè)計實現(xiàn)基于物聯(lián)網(wǎng)計數(shù),集環(huán)境智能調(diào)節(jié)、遠程監(jiān)管、互聯(lián)網(wǎng)通信以及實施人數(shù)于一體的新型現(xiàn)代化智能控制系統(tǒng),方便師生使用及學校管理。擬在教學樓內(nèi)安裝必要的硬件設(shè)備,采用紅外對射實現(xiàn)人數(shù)統(tǒng)計,通過物聯(lián)網(wǎng)技術(shù)實現(xiàn)照明設(shè)施、控溫設(shè)施的節(jié)能使用,將相關(guān)數(shù)據(jù)實時顯示在各類終端設(shè)施。傳輸協(xié)議采用MQTT協(xié)議發(fā)布/訂閱機制,可遠程查看或控制教室設(shè)備開關(guān)情況。
關(guān)鍵詞:物聯(lián)網(wǎng);教學樓;MQTT協(xié)議;ESP32;智能調(diào)節(jié);遠程監(jiān)控
中圖分類號:TP274文獻標識碼:A文章編號:2095-1302(2019)04-0-03
0 引 言
大學教育在不斷發(fā)展,相應(yīng)大學教育的支出也逐年增加,尤其體現(xiàn)在教室和實驗室等公共區(qū)域支出等方面,而在這些區(qū)域中,照明以及納涼設(shè)施費電量尤為突出。在這些公共區(qū)域會經(jīng)常出現(xiàn)人走燈未關(guān)、人空設(shè)備未停的現(xiàn)象,多數(shù)高校也采用人工管理的方式,由于管理人員并不能及時了解每個教室的實時情況,造成了能源消耗,不符合現(xiàn)代社會綠色節(jié)能理念。
隨著物聯(lián)網(wǎng)的發(fā)展,人們對無人監(jiān)管區(qū)域有了更好的掌控方法,將物聯(lián)網(wǎng)和大學結(jié)合起來,在大學布置一個物聯(lián)網(wǎng)型、智能的調(diào)控公共區(qū)域。本文系統(tǒng)基于MQTT(Message Queuing Telemetry Transport,MQTT)發(fā)布/訂閱機制具有實現(xiàn)教室信息監(jiān)控和教室設(shè)備控制的功能,MQTT協(xié)議是在計算能力不高、低寬帶、網(wǎng)絡(luò)不可靠的傳感器和單片機上實現(xiàn)信息傳遞的協(xié)議,由于其具有開銷小、代碼開源、可簡化開發(fā)流程、便于后期維護等優(yōu)點,在信息高效傳輸?shù)那闆r下能夠做到減少學校布置開支[1]。
1 系統(tǒng)總體設(shè)計方案
基于MQTT協(xié)議及時信息傳遞功能的智能型教學樓實現(xiàn)以下三個功能。系統(tǒng)總體框圖如圖1所示。
(1)通過ESP32控制各個傳感器讀取教室內(nèi)有用信息,并發(fā)送至服務(wù)端,同時接收服務(wù)端發(fā)來的控制信息,調(diào)控教室內(nèi)設(shè)備的狀態(tài);
(2)服務(wù)端架設(shè)MQTT服務(wù)功能,作為信息“中轉(zhuǎn)站”,發(fā)送來自教室的信息到各客戶端,接收來自管理員的控制信息發(fā)送至教室;
(3)普通客戶端顯示來自教室的實時信息,管理員端除顯示信息還可發(fā)送控制信息至教室。
2 系統(tǒng)部分軟硬件設(shè)計
教室部分分為主控芯片、溫度傳感器、光照強度傳感器、紅外對射器四部分。服務(wù)器以及PC端(包括管理員)均為軟件設(shè)計,搭建MQTT協(xié)議通道以及觀察記錄界面[2]。
2.1 教室部分主控芯片的選擇
充分考慮教室過多,成本隨教室的增多而增多等問題,以及考慮到網(wǎng)絡(luò)環(huán)境并非理想網(wǎng)絡(luò),同時又要連接三種傳感器,所以選擇使用ESP32boards作為主控芯片,ESP32 可作為獨立系統(tǒng)運行應(yīng)用程序或主機 MCU 的從設(shè)備,通過SPI/SDIO或I2C/UART接口提供WiFi和藍牙功能,同時其包括精細分辨時鐘門控、省電模式和動態(tài)電壓調(diào)整等功能,工作溫度在-40~125 ℃,能夠囊括絕大部分中國地區(qū)溫度,減少因為溫度而引起的主控芯片不穩(wěn)定、失控現(xiàn)象[3-5]。
溫度模塊選擇使用DS18b20,該模塊測溫范圍為-55~125 ℃,誤差為±1 ℃,輸出為數(shù)字信號,體積小、抗干擾能力強、高精度等特點都是測溫的最佳選擇。光照強度傳感器使用BH1750,其內(nèi)置數(shù)模轉(zhuǎn)換器,可以直接輸出一個數(shù)字信號,使用I2C接口,測量范圍為1~65 535 lx。
2.2 MQTT協(xié)議
MQTT消息隊列遙測傳輸協(xié)議是IBM公司采用TCP/IP進行的即時通信協(xié)議,此協(xié)議可以運行在所有平臺,并且在單片機這樣不可靠的網(wǎng)絡(luò)中也能高效地傳輸信息。它通過發(fā)布/訂閱機制實現(xiàn)一對多的消息傳輸,減少了信息傳遞的開銷,消息頭部采用2 B,協(xié)議交換最小化,降低了信息流量[6-7]。MQTT消息頭見表1所列。
MQTT發(fā)布/訂閱機制實現(xiàn)消息一對多的傳輸中,服務(wù)器不需要對每個客戶端都開通一個TCP連接,其通過消息代理機制中的主題作為通信中介。MQTT協(xié)議就像一個有多入口的箱子,放東西的人可以往箱子里放進東西,多個取東西的人也都有入口取東西,取東西和放東西的人,以及取東西和取東西的人之間并不會妨礙到對方。
2.3 軟硬件實現(xiàn)通信
在教學樓布置溫濕度傳感器、光照強度傳感器、紅外對射傳感器等,將ESP32board作為每間教室的信息處理中心,溫濕度傳感器感應(yīng)室內(nèi)溫度濕度,以此作為教室內(nèi)部控溫設(shè)備開關(guān)的依據(jù),每個門口放置兩個紅外對射傳感器,判斷教室門口進出的人數(shù)。根據(jù)教室內(nèi)部的人數(shù)和光照強度傳感器讀到的數(shù)據(jù)判斷室內(nèi)光照情況,即判斷白天或夜晚,是否陰天光強不足。當判斷白天光照充足時,教室內(nèi)部電燈不開,當夜晚或光照不足,且教室內(nèi)部人數(shù)多于一個人時,自動打開燈,當人走空時,關(guān)閉燈光。收集傳感器信息、教室人數(shù)信息和設(shè)備狀態(tài)信息,通過ESP32模塊使用MQTT協(xié)議發(fā)送至總服務(wù)器,為實現(xiàn)信息校內(nèi)外的共享,本文將服務(wù)器位置設(shè)置在阿里云外網(wǎng)[8]。
在PC端連接阿里云MQTT服務(wù),訂閱查看教室信息,服務(wù)器會定時將數(shù)據(jù)發(fā)送至PC端。在教學樓管理員PC端,多增加訂閱控制教室設(shè)備消息,發(fā)送控制消息至服務(wù)器,服務(wù)器將控制消息發(fā)送至教室ESP32board,再由ESP32board控制教室設(shè)備開關(guān)[9]。系統(tǒng)信息傳遞示意如圖2所示。
傳感器塊、服務(wù)器塊、PC端功能明確,能夠降低程序的耦合性,每個模塊注重自己功能的實現(xiàn),消息通過MQTT協(xié)議傳遞在各個部分之間。
3 具體實現(xiàn)過程
3.1 教室部分
中心處理板使用ESP32實現(xiàn)信息的收集和發(fā)送,ESP32板有多種固件選擇,既可以采用Arduino式編程,也可采用MicroPython編程,板子本身提供3.3 V和5 V兩種電壓,為不同傳感器提供實現(xiàn)條件。官方提供多種傳感器庫,在開源社區(qū)也有MQTT在ESP32上實現(xiàn)的庫,方便制作者開發(fā)。
教室端收集信息,每隔一定時間將數(shù)據(jù)發(fā)送到服務(wù)器,多次測試,調(diào)整發(fā)送格式,方便客戶端接受。同時訂閱由管理員發(fā)來的控制信息,讀取信息,若為電燈關(guān)閉信號,則關(guān)閉教室內(nèi)電燈。同理,讀取其他設(shè)備控制信號,做出相應(yīng)的改變。
3.2 服務(wù)器部分
租用阿里云服務(wù)器搭建MQTT環(huán)境,將服務(wù)器作為一個消息中介,教室模塊以及PC端模塊都可連接到服務(wù)器發(fā)布/訂閱消息。在Windows中通過網(wǎng)頁形式訪問服務(wù)器MQTT連接發(fā)送情況。Windows中訪問頁面形式如圖3所示。
3.3 PC部分
實際采用方案前,先通過第三方軟件連接服務(wù)器進行測試,包括IP、端口號、MQTT賬戶、密碼、訂閱機制、發(fā)布機制。同時測試服務(wù)器端發(fā)送的數(shù)據(jù)和PC測試軟件收到的數(shù)據(jù)是否一致,發(fā)送時間是否有延遲,多個連接是否會造成擁擠堵塞、有信息收不到或服務(wù)器有信息發(fā)送不出去的情況。
通過軟件測試,調(diào)整教室部分發(fā)送數(shù)據(jù)的格式,便于讀取接收。通信測試如圖4所示。
通過測試后,做一個PC自己可用的客戶端,專門用于接收數(shù)據(jù)和輸出數(shù)據(jù),便于師生查看。若PC為管理員,再發(fā)布控制消息,最終實現(xiàn)遠程控制。PC端顯示界面如圖5所示。
4 結(jié) 語
MQTT協(xié)議應(yīng)用于類似單片機這樣通信功能不強,但又需要遠程顯示、收集信息的場景。同時,MQTT為了應(yīng)對不同場景的應(yīng)用,也擁有三種不同形式的通信質(zhì)量服務(wù),可以根據(jù)自己單片機和周邊網(wǎng)絡(luò)環(huán)境選擇使用通信質(zhì)量服務(wù)類型,不僅增加了服務(wù)質(zhì)量,還有效減少了通信流量。師生可以在第一時間了解教室的使用情況,管理員也可以遠程管理教室,有助于改善資源浪費的情況。
參 考 文 獻
[1]王瑞,兀玉潔,李燕蘋.基于MQTT協(xié)議的物聯(lián)網(wǎng)實訓云平臺設(shè)計[J].工業(yè)控制計算機,2018,31(9):101-103.
[2]謝琳,莊建.基于MQTT協(xié)議的智慧農(nóng)場智能化管理系統(tǒng)[J].單片機與嵌入式系統(tǒng)應(yīng)用,2018,18(9):62-65.
[3]張玉杰,李楨,馮春倩.基于MQTT的DALI照明擴展系統(tǒng)的設(shè)計與實現(xiàn)[J].照明工程學報,2018,29(4):84-88.
[4]邱雨,彭大芹,梁吉申,等.基于消息過濾算法實現(xiàn)MQTT協(xié)議智能家居的識別[J].現(xiàn)代電子技術(shù),2018,41(16):64-67.
[5]潘慧慧,吳磊,管守榮,等.智能照明系統(tǒng)在照明節(jié)能改造中的應(yīng)用[J].集成電路應(yīng)用,2018,35(8):78-80.
[6]邢賽楠.MQTT傳輸安全問題淺析[J].科技與創(chuàng)新,2018(1):17-18.
[7]方霞.基于MQTT協(xié)議的農(nóng)業(yè)物聯(lián)網(wǎng)消息推送系統(tǒng)[J].計算機技術(shù)與發(fā)展,2018,28(9):168-171.
[8]王培元,杜玉勝.一種基于MQTT協(xié)議的物聯(lián)網(wǎng)智能監(jiān)控系統(tǒng)[J].信息技術(shù)與信息化,2018(1):107-110.
[9]白昊.基于MQTT協(xié)議的物聯(lián)網(wǎng)平臺設(shè)計與實現(xiàn)[D].西安:西安郵電大學,2018.
[10]馮春倩.基于MQTT的物聯(lián)網(wǎng)設(shè)備接入及網(wǎng)絡(luò)通信方法的研究[D].西安:陜西科技大學,2018.