• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于MicroPython 和ESP32 的家庭環(huán)境監(jiān)控系統(tǒng)設(shè)計

      2021-12-02 05:51:02李東明
      科技創(chuàng)新與應(yīng)用 2021年34期
      關(guān)鍵詞:固件溫濕度空氣質(zhì)量

      李東明

      (廣西科技職業(yè)學(xué)院,廣西 崇左 532200)

      目前Python 編程語言是市場較受歡迎的編程語言之一,而MicroPython 是基于Python3 語法實現(xiàn)的一種可以在單片機上運行的Python 語言分支[1],它擁有獨立的解析器、類庫、編譯器等完全可以實現(xiàn)對單片機底層的訪問與操作,可以輕松實現(xiàn)I2C 讀取數(shù)據(jù),ADC、DAC 的轉(zhuǎn)換,SD 卡的訪問,對電機的控制等功能。MicroPython 支持的單片機類型有 STM32F4 系列、ESP32、W800、TI CC3200 等[2-3],它的創(chuàng)始人是一位澳大利亞的程序員、物理學(xué)家Damien George。

      眾多的通信協(xié)議和云計算數(shù)據(jù)的交換,在智能家居的開發(fā)中給開發(fā)者帶來了更高的門檻和不便[4],這些問題運用MicroPython 編寫系統(tǒng)可以得到很好地解決。MicroPython 對大部分的通信協(xié)議做了封裝且使其具有良好的二次開發(fā)特性,還具有腳本語言易讀的性質(zhì)[5-9]。因此本設(shè)計采用ESP32 作為載體MicroPython 編寫邏輯與通信協(xié)議來實現(xiàn)一種家庭環(huán)境監(jiān)測和控制系統(tǒng)。

      1 總體設(shè)計

      監(jiān)測系統(tǒng)的總體框架如圖1 所示,通信Wi-Fi 模塊集成在ESP32 單片機模塊中,遠程控制運用手機APP 實現(xiàn),ESP32 模塊通過傳感器獲取室內(nèi)的環(huán)境信息并通過Wi-Fi 上傳到網(wǎng)絡(luò)從而傳送到使用者的手機,使用者可以通過手機APP 查看家里的煤氣是否泄漏、環(huán)境質(zhì)量情況和溫濕度等情況,系統(tǒng)會根據(jù)檢測到的環(huán)境值自動驅(qū)動相關(guān)設(shè)備工作,如有可燃氣體泄漏時會自動實現(xiàn)驅(qū)動外接設(shè)備,使用者可以在手機APP控制繼電器外接設(shè)備。可在OLED 屏幕顯示可燃氣體與空氣質(zhì)量情況。

      圖1 家庭監(jiān)測系統(tǒng)總體框架

      2 系統(tǒng)硬件選用及物聯(lián)網(wǎng)平臺的選用

      2.1 ESP32 的選用

      ESP32 采用兩個哈佛結(jié)構(gòu)Xtensa LX6 CPU 構(gòu)成雙核系統(tǒng)。它將天線開關(guān)、RF balun、功率放大器、接收低噪聲放大器、濾波器、電源管理模塊等功能集于一體。ESP32 只需極少的外圍器件,即可實現(xiàn)強大的處理性能、可靠的安全性能和Wi-Fi 及藍牙功能,工作溫度范圍達到-40°C 到+125°C。集成的自校準電路實現(xiàn)了動態(tài)電壓調(diào)整,可以消除外部電路的缺陷并適應(yīng)外部條件的變化。獨立系統(tǒng)運行應(yīng)用程序或主機MCU 的從設(shè)備,通過SPI/SDIO 或I2C/UART 接口提供Wi-Fi 和藍牙功能。如圖2 所示。此板供電為2.7-3.6V,12 個ADC,2 個 DAC,2 個 I2C?;緟?shù)如表格 1 所示。

      圖2 本設(shè)計使用的核心板正(左)反(右)圖

      2.2 Blinker 物聯(lián)網(wǎng)平臺的選用

      Blinker 物聯(lián)網(wǎng)平臺是由點燈科技(成都)有限責(zé)任公司基于物聯(lián)網(wǎng)技術(shù)和產(chǎn)業(yè)需求打造的輕量級平臺。適用多種現(xiàn)今市場上熱門智能硬件和多種開發(fā)板的快速接入。

      可以在 Windows、Linux、MacOS 系統(tǒng)下開發(fā)設(shè)備,使用云服務(wù)器進行存儲以及傳輸。手機端提供了Blinker APP,模塊化拼圖的形式對APP 應(yīng)用界面進行編輯,此功能符合物聯(lián)網(wǎng)設(shè)備開發(fā)的特性也為開發(fā)者提供了極大方便。提供了多種SDK 和開發(fā)文檔,簡潔明了的交互界面,升級更新方便等優(yōu)點[10]。

      3 MicroPython 的移植

      本設(shè)計使用的MicroPython 編程語言遵照MIT 許可,由MicroPython.org 組織編寫的支持ESP32 的MicroPython 固件為基礎(chǔ)進行開發(fā)。ESP32 單片機與傳統(tǒng)單片機開發(fā)有所不同,它與計算機的連接只需要運用USB 連接即可。將MicroPython 移植到ESP32 中,具體操作如下:

      (1)在 Windows 的環(huán)境下,從 MicroPython 的官網(wǎng)獲取ESP32 的固件。

      (2)運用uPyCraft 軟件將ESP32 的固件下載到ESP32 單片機中。

      ESP32 的固件下載完成之后,下載由點燈物聯(lián)網(wǎng)平臺提供的MicroPython 封裝庫實現(xiàn)與Blinker APP通信。

      4 遠程監(jiān)控系統(tǒng)軟件設(shè)計

      軟件部分設(shè)計主要分為五個階段,溫濕度數(shù)據(jù)的采集和處理、可燃氣體的采集和處理、空氣質(zhì)量數(shù)據(jù)的采集和處理、光照強度的采集和上傳處理、數(shù)據(jù)包的上傳。

      溫濕度的采集和處理運用DHT11 溫濕度傳感器完成,在處理和采集的階段,在程序中需要調(diào)用固件中自帶的dht 封裝庫,然后在主程序中調(diào)用端口獲取data 數(shù)據(jù),接下來進行讀取即可獲得溫度與濕度值。在程序中應(yīng)綁定數(shù)據(jù)組件,將數(shù)據(jù)發(fā)送到Blinker APP,使用者即可在手機上看到溫濕度情況。

      可燃氣體的采集和處理在本次設(shè)計中以液態(tài)丁烷作為測試對象,運用ESP32 單片機的ADC 口進行電壓數(shù)值的讀取。在程序中將可燃氣體泄漏情況分為三個階段:第一階段無泄漏狀態(tài),在此情況下程序照常運行。第二階段輕度泄漏,在此情況下,通過程序驅(qū)動IO口從而控制繼電器工作,根據(jù)實際使用需要可使輸出設(shè)備揚聲器、警報工作。第三個階段嚴重泄漏,在此情況下,通過程序驅(qū)動IO 口從而控制繼電器工作。根據(jù)實際使用需要外接步進電機、揚聲器等設(shè)備。在程序運行后無論是否有可燃氣體泄漏都會在OLED 顯示屏和手機APP 上顯示監(jiān)測狀態(tài)。

      運用ESP32 單片機的ADC 口進行電壓數(shù)值的讀取??諝赓|(zhì)量值檢測分為四個階段:分別是空氣質(zhì)量優(yōu)、良、中、差。在程序運行后會在OLED 顯示屏和手機APP 上顯示監(jiān)測狀態(tài)。

      光照強度值通過ESP32 單片機的I2C 進行數(shù)值的讀取,通過獲取到的數(shù)值程序自動判斷是白天或夜晚,根據(jù)實際使用需要可外接步進電機。

      隨后每一分鐘將數(shù)據(jù)寫進心跳包傳輸給Blinker APP,在選擇服務(wù)器時選用了阿里云,此平臺提供的云服務(wù)器、云平臺、云計算,為海量數(shù)據(jù)計算提供了很好的解決方案。系統(tǒng)軟件流程如圖3 所示。

      圖3 系統(tǒng)軟件流程圖

      5 運行測試結(jié)果

      根據(jù)需求列寫清單,購買所需要元器件,測試各元器件本身是否良好,將MicroPython 固件下載到ESP32之中,然后進行調(diào)試。所制作的家庭環(huán)境監(jiān)測系統(tǒng)物理樣機如圖4 所示。

      圖4 家庭環(huán)境監(jiān)測系統(tǒng)物理樣機

      調(diào)試方式如下:通過Blinker APP 界面查看實時數(shù)據(jù)和數(shù)據(jù)傳輸是否正常,數(shù)據(jù)是否有變化通過將系統(tǒng)斷電之后重啟進行測試,控制指令的測試通過APP界面的按鈕操縱來完成,通過人為干擾的形式來查看溫室度傳感器、繼電器、可燃氣體傳感器等設(shè)備是否正常。

      圖5 是本次設(shè)計正常使用的情況下手機界面,界面分為兩列,從左往右看,第一列第一個模塊是光照度,第二個模塊是溫度,第三個模塊是濕度。第二列第一個模塊是可燃氣體檢測,第二個模塊是空氣質(zhì)量值。其余的兩個按鈕分別可手動控制兩個繼電器。調(diào)試信息位于最下方,可以手動刷新數(shù)據(jù)。

      圖5 監(jiān)測手機界面

      6 結(jié)束語

      本次設(shè)計將MicroPython 編程語言與ESP32 單片機應(yīng)用在家庭環(huán)境監(jiān)測中,系統(tǒng)采用Wi-Fi 方式搭建傳輸網(wǎng)絡(luò),使用手機APP 獲取所采集到的家庭環(huán)境數(shù)據(jù)。系統(tǒng)能夠監(jiān)測判斷家庭的可燃氣體、空氣質(zhì)量、溫濕度等情況,可在手機APP 控制相應(yīng)設(shè)備,在較大程度上保障了家庭人員的安全和創(chuàng)建良好的環(huán)境,另外系統(tǒng)所使用的設(shè)備成本低、工作可靠、開發(fā)簡單周期短,可以遠程操控,使用簡單方便,并有許多IO 口提供開發(fā)升級拓展使用。

      猜你喜歡
      固件溫濕度空氣質(zhì)量
      溫濕度控制器在回收砂冷卻系統(tǒng)中的應(yīng)用
      基于DSP的多路溫濕度監(jiān)測系統(tǒng)
      基于溫濕度控制的天氣預(yù)測裝置
      電子制作(2018年11期)2018-08-04 03:26:02
      “空氣質(zhì)量發(fā)布”APP上線
      蒸發(fā)冷卻溫濕度獨立控制空調(diào)系統(tǒng)的應(yīng)用
      車內(nèi)空氣質(zhì)量標準進展
      汽車與安全(2016年5期)2016-12-01 05:22:14
      重視車內(nèi)空氣質(zhì)量工作 制造更環(huán)保、更清潔、更健康的汽車
      汽車與安全(2016年5期)2016-12-01 05:22:13
      開展“大氣污染執(zhí)法年”行動 加快推動空氣質(zhì)量改善
      基于固件的遠程身份認證
      提取ROM固件中的APP
      電腦愛好者(2015年7期)2015-04-09 08:54:02
      灵璧县| 大同市| 石渠县| 十堰市| 东光县| 古蔺县| 日照市| 东光县| 沛县| 木兰县| 平远县| 贵定县| 阳城县| 体育| 宜黄县| 多伦县| 新邵县| 昌吉市| 襄汾县| 呼玛县| 巴南区| 漳浦县| 南康市| 德钦县| 东城区| 岳普湖县| 巨野县| 南京市| 竹山县| 公主岭市| 临猗县| 通州市| 白水县| 榆树市| 枞阳县| 大方县| 南陵县| 绥阳县| 若尔盖县| 西充县| 行唐县|