【摘 要】本實驗旨在通過Mind+編程和Arduino主板搭建一個物聯(lián)網(wǎng)空氣質(zhì)量監(jiān)測儀。通過本實驗,學(xué)生可通過Easy IoT平臺的使用和OBLOQ模塊的應(yīng)用,提高物聯(lián)網(wǎng)技術(shù)的實踐應(yīng)用能力。
【關(guān)鍵詞】Mind+編程;Arduino主板;Easy IoT物聯(lián)網(wǎng)平臺
【中圖分類號】G434 【文獻標志碼】B
【論文編號】1671-7384(2024)07-062-02
實驗背景及原理
隨著我國工業(yè)化和城市化的快速發(fā)展,空氣質(zhì)量問題日益凸顯,對人們的健康和生活質(zhì)量產(chǎn)生了嚴重影響。因此,對空氣質(zhì)量進行實時監(jiān)測和預(yù)警顯得尤為重要。物聯(lián)網(wǎng)技術(shù)的快速發(fā)展為空氣質(zhì)量監(jiān)測提供了新的解決方案。物聯(lián)網(wǎng)空氣質(zhì)量監(jiān)測儀能夠?qū)崟r采集空氣質(zhì)量數(shù)據(jù),并通過網(wǎng)絡(luò)傳輸?shù)竭h程平臺進行分析和處理,為環(huán)境保護和公眾健康提供了有力保障。
本實驗旨在通過設(shè)計一個基于Mind+編程和Arduino主板的物聯(lián)網(wǎng)空氣質(zhì)量監(jiān)測儀,探索物聯(lián)網(wǎng)技術(shù)在空氣質(zhì)量監(jiān)測領(lǐng)域的應(yīng)用。實驗通過空氣質(zhì)量傳感器測得空氣質(zhì)量數(shù)據(jù)后,利用網(wǎng)絡(luò)通信模塊和MQTT協(xié)議將數(shù)據(jù)上傳到Easy IoT物聯(lián)網(wǎng)平臺進行記錄,用戶可通過登錄平臺直接查看數(shù)據(jù)。這種基于物聯(lián)網(wǎng)的空氣質(zhì)量監(jiān)測方案具有實時性、遠程性和智能化等特點,對于提高空氣質(zhì)量監(jiān)測的效率和準確性具有重要意義。
實驗所需資源
1.硬件
(1)Arduino Uno主板;(2)Arduino接口擴展板;(3)OBLOQ物聯(lián)網(wǎng)模塊(串口);(4)ENS160空氣質(zhì)量傳感器模塊(I2C接口);(5)計算機;(6)連接線材。
2.軟件
(1)計算機安裝Mind+編程軟件;(2)Easy IoT物聯(lián)網(wǎng)平臺。
實驗內(nèi)容及過程
1.注冊和設(shè)置Easy IoT物聯(lián)網(wǎng)平臺
物聯(lián)網(wǎng)平臺是一種管理和處理物聯(lián)網(wǎng)設(shè)備和數(shù)據(jù)的軟件平臺。它能夠遠程管理和控制設(shè)備,并能夠?qū)崟r傳輸、收集和分析數(shù)據(jù),實現(xiàn)設(shè)備端和用戶端的互聯(lián)互通。
Easy IoT物聯(lián)網(wǎng)平臺是一個旨在簡化和加速物聯(lián)網(wǎng)設(shè)備的連接和管理的物聯(lián)網(wǎng)平臺。它提供了易于使用的工具和界面,使用戶能夠輕松地將各種設(shè)備和傳感器連接到云平臺,并實時監(jiān)控和控制這些設(shè)備。
該平臺使用方法是:(1)打開平臺地址:https://iot.dfrobot.com.cn/。(2)利用手機號注冊Easy IoT物聯(lián)網(wǎng)平臺后,進入“工作間”,點“+”號,依次創(chuàng)建三個設(shè)備,名稱分別為“CO2濃度”“TVOC濃度”和“空氣質(zhì)量指數(shù)”。這時可以看到每個設(shè)備都有一個“Topic”,從左起編號分別為“Topic0”“Topic1”“Topic2”,這三個“Topic”的值在編程時會用到。另外,一個用戶一共可以記錄10 000個數(shù)據(jù),每個設(shè)備默認可以記錄的數(shù)據(jù)為1000個,可自行調(diào)整?!肮ぷ鏖g”左側(cè)Iot_id(user)和Iot_pwd(password)十分重要,可以點擊“”進行查看和復(fù)制,在編程時要用到這兩個值。
2.連接硬件
Arduino主控板是一個微控制器板,包含微處理器、輸入/輸出引腳、電源和其他功能模塊,可用于構(gòu)建相關(guān)電子項目和設(shè)備。Arduino主控板可以通過各種擴展板來增強功能,擴展板可以添加傳感器、執(zhí)行器、顯示器、無線模塊等。Arduino主控板可用于各種相關(guān)項目,從簡單的家庭自動化到復(fù)雜的機器人和科學(xué)儀器等。它們也被廣泛應(yīng)用于教育、藝術(shù)、研究和工業(yè)自動化等領(lǐng)域。
Arduino主控板與OBLOQ物聯(lián)網(wǎng)模塊和ENS160空氣質(zhì)量傳感器連接過程是:(1)組合Arduino主板和接口擴展板;(2)將OBLOQ物聯(lián)網(wǎng)模塊連接到擴展板,紅線接V(電源),黑線接G(地),綠線接數(shù)字2引腳,藍線接數(shù)字3引腳;(3)將ENS160空氣質(zhì)量傳感器模塊接到擴展板。注意ENS160模塊SCL、SDA引腳要和接擴展板上的SCL、SDA引腳對應(yīng)相接;VCC、GND引腳和主板上V、G引腳對應(yīng)相接。
3.程序編寫
Mind+是由DFRobot公司開發(fā)的圖形化編程軟件,旨在幫助用戶通過拖拽圖形化程序塊的方式進行編程,無需深厚的編程知識即可控制各種開源硬件,如Arduino、micro:bit和掌控板等。該軟件支持與Scratch3.0兼容,同時也支持使用Python、C、C++等高級編程語言進行編程,使得用戶可以輕松體驗創(chuàng)造的樂趣。
Mind+是一款功能豐富、易于上手的編程軟件,適合不同年齡段和不同編程水平的用戶使用,無論是進行教育學(xué)習(xí)還是創(chuàng)新項目開發(fā),Mind+都能提供強大的支持。本實驗Mind+編程如下。
(1)啟動Mind+軟件,選擇上傳模式。
(2)在左下角擴展中將Arduino UNO主控板、ENS160空氣質(zhì)量傳感器和OBLOQ物聯(lián)網(wǎng)模塊添加入Mind+中。
(3)在主程序中進行OBLOQ物聯(lián)網(wǎng)模塊的初始化。
①在通信模塊中選擇“Obloq mqtt初始化”命令,接口選“軟串口”,Rx(綠)選“2”,Tx(藍)選“3”。
②點擊進行網(wǎng)絡(luò)和物聯(lián)網(wǎng)平臺配置。在Wi-Fi配置中,配置好無線網(wǎng)(只支持2.4G頻率,不支持5G頻率)。將Iot_id、Iot_pwd和三個對應(yīng)的Topic值分別復(fù)制粘貼到物聯(lián)網(wǎng)平臺參數(shù)對應(yīng)位置,服務(wù)器選擇“中國”。
(4)對ENS160模塊進行初始化。在左側(cè)模塊區(qū)傳感器中選擇初始化“ENS160 I2C地址”命令,設(shè)置I2C地址為“0x52”(具體數(shù)值要參考ENS160模塊說明書,有些模塊地址為“0x53”)。
(5)編寫讀取和發(fā)送數(shù)據(jù)程序。①左側(cè)模塊區(qū)通信模塊中選取“Obloq發(fā)送消息‘hello’至Topic_0”;②傳感器中選擇“ENS160讀取CO2濃度”,并將此條命令與OBLOQ發(fā)送消息命令組合;③復(fù)制兩個組合好的命令,參數(shù)分別對應(yīng)修改為“TVOC濃度、Topic_1”和“空氣質(zhì)量指數(shù)、Topic_2”;④左側(cè)“控制”中選擇“等待1秒”命令,根據(jù)需求修改等待的數(shù)值后,組合在三條發(fā)送消息命令后;⑤左側(cè)“控制”中選擇“循環(huán)執(zhí)行”,將發(fā)送消息和等待命令放到“循環(huán)執(zhí)行”中,使讀取數(shù)據(jù)和發(fā)送消息持續(xù)循環(huán)執(zhí)行,并根據(jù)等待時間讀取和發(fā)送一個數(shù)據(jù)(圖1)。
圖1 圖形化程序
(6)將主控板用USB連接線與計算機連接后,在Mind+菜單中選擇“連接設(shè)備>COM*-CH340”。設(shè)備連接后點擊右側(cè)“上傳到設(shè)備”,將程序上傳主控板。
(7)程序上傳后主控板自動重啟,觀察OBLOQ模塊指示燈,如果網(wǎng)絡(luò)連接成功,指示燈會變?yōu)榫G色。
(8)設(shè)備網(wǎng)絡(luò)連接成功后,設(shè)備會讀取相應(yīng)的空氣質(zhì)量數(shù)據(jù),并發(fā)送到Easy IoT物聯(lián)網(wǎng)平臺,平臺會自動記錄。相關(guān)人員登錄Easy IoT物聯(lián)網(wǎng)平臺即可查看數(shù)據(jù)。
總 結(jié)
本實驗是一個典型的物聯(lián)網(wǎng)應(yīng)用實驗,通過實驗有助于學(xué)生理解物聯(lián)網(wǎng)應(yīng)用中硬件連接協(xié)議(串口通信、I2C協(xié)議等)及MQTT物聯(lián)網(wǎng)通信協(xié)議。本實驗中涉及的硬件在電商平臺均有銷售,價格低廉。Easy IoT物聯(lián)網(wǎng)平臺也可免費使用,10 000條數(shù)據(jù)的記錄量可滿足學(xué)習(xí)需要。本實驗線路連接不復(fù)雜,操作難度較低,程序結(jié)構(gòu)也比較簡單,適于初學(xué)編程及物聯(lián)網(wǎng)學(xué)習(xí)者。