999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于ESP32的遠程環境監測系統的設計

2024-09-12 00:00:00張來洪魯興黃正宏葉琛
物聯網技術 2024年8期

摘 要:針對普通的環境監測系統存在感知信息不全面、監測接口單一、開發不夠便捷等不足,文中基于ESP32設計了遠程環境監測系統,充分發揮了ESP32管腳充足、控制器豐富、片內集成WiFi收發器、開發便捷等優勢。利用傳感器等采集環境中的溫度、濕度、光照強度、二氧化碳含量、TVOC含量、氣壓、海拔、磁偏角、紫外線強度、煙霧濃度、噪音強度、火焰告警狀態、風力、雨量、地理位置、時間等信息;使用TFT彩色顯示屏實時顯示環境信息;借助片內收發器及外接無線傳輸模塊實現WiFi近距離、LoRa遠距離、GSM短信不限制距離的無線遠程監測,并采用終端軟件或手機短信等方式對環境進行遠程監測。實驗結果表明:系統功能完善、運行穩定,可為同類方案提供參考和借鑒。

關鍵詞:ESP32;傳感器;遠程環境監測;WiFi;LoRa;GSM

中圖分類號:TP391 文獻標識碼:A 文章編號:2095-1302(2024)08-00-04

DOI:10.16667/j.issn.2095-1302.2024.08.008

0 引 言

隨著傳感器技術、微處理器技術、無線傳輸技術的發展,環境監測系統的運用變得更為廣泛,相應方案或產品可用于室內、城市、農田、機房、倉庫等場景,便于作業人員對環境進行監測并針對出現的異常采取相應措施[1-5]。然而,目前的環境監測系統仍然存在若干不足,例如文獻[2]選用單片機作為主芯片,因單片機管腳不足只能接少量傳感器導致感知信息不全。文獻[3]只外接窄帶物聯網模塊、文獻[4]只使用片上收發器,均導致監測接口單一。文獻[5]選用樹莓派作為主芯片,需要先移植系統和驅動才能開始業務代碼的編程,開發不夠便捷。

針對上述不足,文中基于ESP32設計了遠程環境監測系統。ESP32采用兩個哈佛結構Xtensa LX6 CPU構成雙核系統,體積小,價格低,片上集成通用型輸入輸出(General Purpose Input/Output, GPIO)、通用異步收發傳輸器(Universal Asynchronous Reveiver Transmitter, UART)、集成電路總線 (Inter Integrated Circuit, I2C)、串行外設接口(Serial Peripheral Interface, SPI)、模數轉換(Analog to Digital Convert, ADC)等控制器以及WiFi收發器,芯片引出的管腳充足且多數管腳具備復用功能,利于外接其他功能模塊,支持Arduino集成開發環境下導入各種庫后直接進行業務應用程序的開發,綜合優勢顯著。

1 整體設計

文中設計的遠程環境監測系統由供電模塊、主芯片、參數存儲模塊、環境信息采集模塊、狀態顯示模塊、無線傳輸接口、上位機組成,如圖1所示[6-7]。

供電模塊提供系統所需的電壓。主芯片ESP32運行業務代碼,驅動調度所有外圍設備。參數存儲模塊的AT24C256存儲系統具備掉電后保持參數的特性。環境信息采集模塊包含各類傳感器,可獲取環境中的各項信息值。狀態顯示模塊包括3.5寸薄膜晶體管(Thin Film Transistor, TFT)彩色顯示屏和有源蜂鳴器,提供本地顯示和告警鳴響功能。無線傳輸接口具備三類不同距離的傳輸方式:基于WiFi實現近距離的信息傳輸,基于LoRa模塊實現遠距離的信息傳輸,基于GSM模塊實現不限制距離的信息傳輸。上位機可以是手機、筆記本電腦、PC等,通過網頁瀏覽器、終端軟件、短信等對ESP32進行訪問和控制。

2 硬件設計

采用12 V直流降壓模塊作為系統的下位機供電電源,

12 V直流電壓經降壓后得到5 V和3.3 V電壓,供主芯片和各外設模塊工作。

I2C接口的外設包括AHT20溫濕度傳感器、BH1750光照傳感器、SGP30二氧化碳及總揮發性有機化合物(Total Volatile Organic Compounds, TVOC)含量傳感器、BMP180氣壓海拔傳感器、HMC5883磁偏角傳感器以及AT24C256存儲芯片。供電模塊為各I2C接口的外設提供3.3 V電壓,ESP32選用2個數字I/O管腳產生I2C時序,利用I2C總線一對多的特點,與多個從機外設通信。時鐘、數據信號線上均設計上拉電阻。硬件連接關系如圖2(a)所示。

ADC接口的外設包括紫外線傳感器、煙霧傳感器、噪音傳感器、火焰傳感器、風力傳感器、雨量傳感器,供電模塊為各ADC接口的傳感器提供5 V電壓。ESP32選用6個模擬I/O管腳作為輸入管腳,分別讀取各傳感器的模擬輸出值。硬件連接關系如圖2(b)所示。

GPIO接口的外設包括蜂鳴器。ESP32選用1個數字I/O

管腳作為輸出管腳驅動蜂鳴器。硬件連接關系如圖2(c)

所示。

SPI接口的外設包括分辨率為320×480的3.5寸TFT顯示屏、供電模塊(為顯示屏提供5 V電壓)。ESP32選用3個

數字I/O管腳產生SPI時序控制顯示屏,額外用到3個數字I/O管腳產生復位等信號。硬件連接關系如圖2(d)

所示。

UART接口的外設包括GPS模塊、LoRa模塊、GSM模塊。ESP32內有3個串口控制器,Serial0的發送管腳TX作為調試打印管腳,Serial0的接收管腳RX接GPS模塊,型號為GY-NEO-6M,供電模塊為GPS模塊提供3.3 V電壓。硬件連接關系如圖2(e)所示。

系統用到一對LoRa模塊,型號為正點原子ATK-MW1268D,其中一個與ESP32的Serial1串口連接,另一個由PC通過USB轉串口連接。ATK-MW1268D配置射頻參數且工作為串口透傳模式,兩個模塊正常配對工作后,向一個模塊的RX腳寫入的字節將從另一個模塊的TX腳發出,使得ESP32的Serial1與PC的USB轉串口能通過無線信道實現遠程互通。硬件連接關系如圖2(f)所示。

ESP32的Serial2連接GSM模塊,型號為SIM900A,供電模塊為SIM900A提供5 V和3.3 V電壓,SIM900A模塊插入SIM卡后可接入移動通信等網絡。ESP32通過對SIM900A發送AT命令實現短信功能,使得ESP32與手機能通過移動網絡實現短信互通。硬件連接關系如圖2(g)所示。

ESP32片上集成WiFi收發器,可以配置為AP-Station模式提供無線局域網(Wireless Local Area Networks, WLAN)服務和DHCP服務,手機、筆記本電腦等通過WLAN接入ESP32后能實現TCP/IP協議的網絡互通。

3 軟件設計

3.1 業務流程

在Arduino集成開發環境下,遵循setup-loop軟件框架設計原則,使用C語言對ESP32進行軟件程序設計。Arduino工具為開發者提供了豐富的函數庫,使得開發人員不必關注系統移植和驅動編程,而只需遵循軟件框架進行應用層業務程序開發即可[8]。系統的業務流程如圖3所示。在初始化的setup函數中,首先初始化調試串口、通信串口、I2C總線,通過AT24C256存儲芯片讀取工作參數后初始化各傳感器外設,配置模擬輸入管腳和數字輸出管腳,并初始化SPI總線和TFT顯示屏,然后開啟WiFi的AP基站功能,最后進入循環loop函數。在輪循執行的loop函數中,首先從各傳感器讀取環境信息,然后在TFT彩色顯示屏更新顯示,并依次判斷是否從WLAN網口、LoRa模塊、GSM短信模塊收到有效命令,若是,則執行命令并返回響應,按需向上位機報送告警信息。

3.2 外圍設備驅動

Arduino集成開發環境下有大量應用編程接口(Application Programming Interface, API)函數可以調用,例如analogRead可以讀取ADC接口傳感器的模擬管腳電壓值,進一步換算為環境信息強度等級;Serial.read和Serial.write可以通過串口收字節或發字節;digitalWrite可以寫數字管腳的輸出電平驅動蜂鳴器和顯示屏;Wire.begin、Wire.read、Wire.write系列的API用于驅動I2C接口的外設。

3.3 GPS定位信息解析功能

GPS模塊接收衛星信號并定位成功后,每秒通過串口輸出美國國家海事電子協會 (National Marine Electronics Association, NMEA)協議的一系列字符串信息給ESP32,ESP32通過Serial2.read()函數接收GPS模塊發出的全部字節,基于狀態機分析$GPRMC信息,解析出經度、緯度、時間等[9]。

3.4 LoRa傳輸功能

LoRa模塊需配置成透傳模式,當ESP32利用LoRa模塊與PC的USB串口通信時,為便于串行數據分包被正確解析,需將通信內容進一步封裝,對于N字節待傳內容,添加2字節頭部表示內容長度,添加2字節尾部表示內容校驗,然后將(2+N+2)字節通過串行線路(Serial Line Internet Protocal, SLIP)幀協議轉換后發送。接收方收到字節后,先解析SLIP幀,再解析出其中的內容進行分析和反饋,反饋內容也遵循2+N+2協議[10]。

3.5 短信收發功能

ESP32通過AT命令對GSM模塊進行控制,本系統使用的是字符短信功能[11]。在初始化時,ESP32發送AT+CSCS=\"GSM\"和AT+CMGF=1指令設置字符集為英文,發送AT+CNMI=2, 1指令,SIM卡收到短信后告知ESP32。ESP32需要發短信時,先發送AT+CMGS=\"{11位電話號碼}\"指令設置目標電話號碼,然后輸入英文字符串的短信內容再發送0x1A,告知GSM模塊開始發送短信。發送完成后,GSM模塊向ESP32回復+CMGS指令表示發送短信成功。當GSM模塊收到短信后,向ESP32報送+CMTI:\"SM\", n指令,表明收到新的短信且存儲在SIM卡的n位置,ESP32發送AT+CMGR=n讀取SIM卡n位置處的短信內容,GSM模塊的回復+CMGR指令傳送給ESP32。+CMGR指令后跟來源電話號碼、短信時間、短信內容等信息,ESP32從中解析出所需信息,然后ESP32發出AT+CMGD=n,刪除SIM卡位置n處的短信內容,便于下一次接收短信。在實現了收短信、發短信功能的基礎上,ESP32對收到的短信中信息部分的內容進行解析,如果是特定的協議內容,則回復

短信。

3.6 WiFi訪問功能

ESP32使用WiFi.softAP函數開啟WiFi功能,定義全局變量WiFi udp和WiFiServer tcp,通過tcp.begin和udp.begin函數分別開啟一個UDP和TCP的套接字。基于UDP編程實現自定義協議通信,當udp.parsePacket函數返回成功則表明收到UDP包,調用udp.read 函數讀取UDP內容,如果是特定的命令內容,則構成反饋包后調用udp.write函數返回發出,UDP包的用戶數據部分與LoRa傳輸時的2+N+2協議格式一致。基于TCP編程實現HTTP協議最終實現Web服務功能,當tcp.hasClient及tcp.available函數返回成功,則表明TCP鏈接成功,調用tcp.read函數讀取TCP包的內容。如果是HTTP協議格式的包,則構成反饋包后調用tcp.write發出,然后調用tcp.stop函數斷開TCP連接,便于下一次連入[12]。

3.7 上位機軟件設計

使用Visual Studio開發PC計算機終端軟件。調用USB串口利用LoRa模塊的透傳功能向ESP32發送串口命令,收到反饋信息后,根據協議內容更新顯示界面。

4 聯調演示

基于前述設計制作遠程環境監測系統演示板,如圖4所示。GSM模塊插入SIM卡,GPS天線放置到能接收到衛星信號的地方,演示板正常工作后采集環境信息并在顯示屏顯示。手機搜索演示板的WiFi信號并接入熱點后,通過瀏覽器訪問演示板從而顯示環境信息,如圖5所示。PC運行上位機終端軟件,通過LoRa模塊與演示板通信,從而顯示環境信息以及控制演示板的工作狀態,如圖6所示。使用手機的短信功能向演示板上GSM模塊的SIM卡電話號碼發送特定短信指令,能收到演示板的回復短信,如圖7所示。經測試,系統各項功能正常,與設計相符。

5 結 語

文中設計的基于ESP32的遠程環境監測系統,使用傳感器采集了多項環境信息值并通過彩色屏顯示,同時提供了多種遠程監測接口。基于WiFi實現了近距離手機網頁瀏覽器監測、基于LoRa實現了遠距離PC終端軟件監測、基于GSM模塊實現了不限制距離手機短信監測。本系統感知信息全面、監測接口多樣、開發便捷,可為同類方案或產品提供參考與借鑒。

參考文獻

[1]王忠. ESP32在物聯網通信課程教學中的應用[J].物聯網技術,2022,12(4):128-129.

[2]陳達.基于單片機的室內環境監測設計[J].電子測試,2018,25(z1):25-26.

[3]徐思燕.基于窄帶物聯網的城市環境監測系統設計[J].物聯網技術,2021,11(4):31-33.

[4]李國利.基于ESP32的溫室大棚環境遠程監控系統設計[J].中國農機化學報,2022,43(3):47-52.

[5]朱林.基于樹莓派的通信機房溫濕度監控系統設計[J].電聲技術,2022,46(10):98-100.

[6]肖鑫海.基于STM32的環境監測系統設計[J].化工自動化及儀表,2023,50(1):33-36.

[7]夏長權.基于STM32的環境監測系統設計[J].電子制作,2023,31(4):3-7.

[8]吳越.基于Arduino和LabVIEW的家居環境測量報警系統[J].現代信息科技,2023,7(10):150-153.

[9]楊栩生.基于STM8的低成本GPS數據幀解析與定位系統設計[J].電子技術,2023,52(4):31-33.

[10]李逸楠.一種基于SLIP協議的串行數據解析方法[J].科技與創新,2019,23(12):25-28.

[11]李建杰.一種基于SIM800C通信模塊的遠程防盜報警器設計[J].電子設計工程,2022,30(23):130-133.

[12]汪海兵.基于TCP/IP硬件協議棧的嵌入式HTTP服務器設計與實現[J].電氣自動化,2018,40(5):8-9.

收稿日期:2023-07-26 修回日期:2023-08-29

作者簡介:張來洪(1989—),男,碩士,工程師,研究方向為嵌入式技術、電臺主控及波形。

魯 興(1992—),男,博士,工程師,研究方向為嵌入式技術、通信技術。

黃正宏(1989—),男,碩士,工程師,研究方向為嵌入式技術、硬件設計。

葉 琛(1988—),女,碩士,工程師,研究方向為嵌入式技術、通信技術。

主站蜘蛛池模板: 亚洲国产精品VA在线看黑人| 国产乱子伦无码精品小说| 在线观看无码av免费不卡网站| 欧美午夜性视频| 国模视频一区二区| 久久91精品牛牛| 国产亚洲精品va在线| 久久不卡国产精品无码| 亚洲欧美不卡视频| 国产理论一区| 91麻豆精品国产高清在线| 久久久久九九精品影院| 国产黑丝视频在线观看| 67194亚洲无码| 91亚洲视频下载| 妇女自拍偷自拍亚洲精品| 激情爆乳一区二区| 日韩高清中文字幕| 亚洲中文字幕手机在线第一页| 欧美一级片在线| 国产成在线观看免费视频| 中文字幕欧美日韩高清| 欧美一区二区人人喊爽| 中文字幕佐山爱一区二区免费| 美女免费黄网站| 国产另类乱子伦精品免费女| 亚洲免费人成影院| 亚洲精品人成网线在线| 国产91丝袜在线播放动漫| 成人中文字幕在线| 一级做a爰片久久免费| 在线观看国产精美视频| 午夜视频www| 久草国产在线观看| 久久永久精品免费视频| 亚洲综合极品香蕉久久网| 色噜噜狠狠狠综合曰曰曰| 婷婷色狠狠干| 亚洲欧洲日产国码无码av喷潮| 日韩二区三区无| 国产精品熟女亚洲AV麻豆| 国产91透明丝袜美腿在线| 国产一区二区三区精品欧美日韩| 国产91透明丝袜美腿在线| 无码人中文字幕| 亚洲国产精品国自产拍A| 国产高清免费午夜在线视频| 妇女自拍偷自拍亚洲精品| 国产一级视频久久| 欧美视频二区| 久久精品丝袜| 亚洲精品久综合蜜| 99九九成人免费视频精品| 色综合中文| 国产在线一区二区视频| 国产黑人在线| 国产精彩视频在线观看| 精品午夜国产福利观看| 国产视频一区二区在线观看| 十八禁美女裸体网站| 成人小视频网| 无码区日韩专区免费系列| 国产原创第一页在线观看| www.精品国产| 精品视频一区在线观看| a级毛片毛片免费观看久潮| 免费不卡视频| 91娇喘视频| 一本大道AV人久久综合| 婷婷成人综合| 伊伊人成亚洲综合人网7777| 毛片免费试看| 欧美丝袜高跟鞋一区二区 | 在线国产91| 亚洲成aⅴ人在线观看| 亚洲黄色片免费看| 国产黄在线观看| 女人18毛片久久| 中文一级毛片| 国产乱人伦精品一区二区| jizz在线免费播放| 色综合a怡红院怡红院首页|