chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于STM32設計的森林火災監(jiān)測系統(tǒng)

DS小龍哥-嵌入式技術 ? 來源:DS小龍哥-嵌入式技術 ? 作者:DS小龍哥-嵌入式技 ? 2025-01-09 11:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

[TOC]

一、前言

1.1 項目介紹

【1】項目開發(fā)背景

森林火災是全球范圍內頻繁發(fā)生的自然災害之一,不僅對生態(tài)環(huán)境造成嚴重破壞,還可能威脅到人類的生命財產(chǎn)安全。傳統(tǒng)的森林防火措施主要依賴人工巡邏和地面觀測站,這種方式效率低下,且在森林中難以實現(xiàn)全面覆蓋。隨著物聯(lián)網(wǎng)技術的發(fā)展,智能監(jiān)測系統(tǒng)逐漸成為預防森林火災的有效手段。基于此背景,設計了一款基于STM32F103RCT6的森林火災監(jiān)測系統(tǒng),通過現(xiàn)代傳感技術和無線通訊技術提高森林火災預警的及時性和準確性。

該系統(tǒng)集成了多種傳感器,包括用于檢測環(huán)境溫度和濕度的SHT30傳感器、能夠識別火焰的火光檢測傳感器以及用于監(jiān)測煙霧濃度的MQ2氣體傳感器。這些傳感器可以實時收集環(huán)境數(shù)據(jù),一旦檢測到異常情況如溫度驟升、煙霧濃度增加或出現(xiàn)火焰等,將立即啟動蜂鳴器發(fā)出警報,同時通過Air724UG-4G模塊將數(shù)據(jù)上傳至華為云IOT物聯(lián)網(wǎng)服務器。這一過程不僅實現(xiàn)了對森林火災的快速響應,也為后續(xù)的救援工作提供了準確的信息支持。

為了便于森林管理員無論身處何地都能及時接收到火災報警信息,本項目還特別開發(fā)了適用于Android手機和平板電腦的應用程序及Windows上位機軟件,用戶可以通過這些客戶端實時查看由監(jiān)測點上傳的數(shù)據(jù),了解各監(jiān)測區(qū)域的環(huán)境狀況。此外,考慮到森林地區(qū)的特殊地理條件,系統(tǒng)設計時充分考慮了能源供應的問題,采用了太陽能充電方案,確保監(jiān)測系統(tǒng)能夠在遠離電網(wǎng)的野外長期穩(wěn)定運行。

綜上所述,本項目構建一個高效、可靠、易于管理的森林火災監(jiān)測平臺,通過集成先進的傳感技術和網(wǎng)絡通信技術,為森林防火提供了一種新的解決方案,有助于提升森林防火工作的智能化水平,減少森林火災造成的損失。

【2】設計實現(xiàn)的功能

(1) 環(huán)境溫濕度監(jiān)測 :通過SHT30傳感器實時檢測森林內的環(huán)境溫度和濕度,并將數(shù)據(jù)發(fā)送給主控芯片STM32F103RCT6進行處理。

(2) 火焰檢測 :使用火光檢測傳感器監(jiān)控森林區(qū)域內是否有火焰出現(xiàn),一旦發(fā)現(xiàn)火焰,立即將信號傳遞給主控芯片,作為火災預警的一部分。

(3) 煙霧濃度監(jiān)測 :利用MQ2氣體傳感器檢測空氣中的煙霧濃度,當煙霧濃度超過預設閾值時,向主控芯片發(fā)送警報信號。

(4) 自動報警功能 :當系統(tǒng)檢測到火焰或煙霧濃度超標時,會自動激活有源蜂鳴器發(fā)出聲音警報,提醒現(xiàn)場人員注意安全并采取相應措施。

(5) 數(shù)據(jù)遠程傳輸 :通過Air724UG-4G模塊,采用MQTT協(xié)議將采集到的環(huán)境參數(shù)和報警信息上傳至華為云IOT物聯(lián)網(wǎng)服務器,實現(xiàn)數(shù)據(jù)的遠程監(jiān)控和管理。

(6) 移動設備實時監(jiān)控 :開發(fā)了專門的Android手機APP和Windows上位機軟件,森林管理員可以通過這些客戶端實時查看監(jiān)測點上傳的數(shù)據(jù),包括溫度、濕度、煙霧濃度等信息,以及接收火災報警通知。

(7) OLED顯示屏本地顯示 :在監(jiān)測站點安裝0.96寸SPI接口OLED顯示屏,用于實時顯示環(huán)境參數(shù)和系統(tǒng)狀態(tài),方便護林員現(xiàn)場檢查設備工作情況和傳感器讀數(shù)是否正常。

(8) 太陽能充電支持 :為了解決森林地區(qū)供電不便的問題,系統(tǒng)配備了太陽能充電裝置,確保即使在偏遠無電源的情況下也能持續(xù)運行。

【3】項目硬件模塊組成

(1) 主控模塊 :選用STM32F103RCT6作為系統(tǒng)的主控芯片,負責協(xié)調各個傳感器的工作、處理數(shù)據(jù)、控制報警以及與4G模塊進行數(shù)據(jù)交換。

(2) 環(huán)境溫濕度傳感器模塊 :采用SHT30數(shù)字溫濕度傳感器,用于精確測量環(huán)境中的溫度和濕度,并將數(shù)據(jù)傳輸給主控芯片進行處理。

(3) 火焰檢測模塊 :使用火焰?zhèn)鞲衅鱽頇z測是否有明火出現(xiàn),一旦檢測到火焰,立即將信號反饋給主控芯片,作為火災預警的重要依據(jù)。

(4) 煙霧濃度檢測模塊 :通過MQ2氣體傳感器監(jiān)測空氣中煙霧的濃度,當煙霧濃度達到一定閾值時,觸發(fā)報警機制。

(5) 報警模塊 :采用高電平觸發(fā)的有源蜂鳴器,當系統(tǒng)檢測到火災風險時,蜂鳴器將自動發(fā)出警報聲,提醒周邊人員注意安全。

(6) 數(shù)據(jù)傳輸模塊 :利用Air724UG-4G模塊,結合MQTT協(xié)議,將采集到的數(shù)據(jù)上傳至華為云IOT物聯(lián)網(wǎng)服務器,實現(xiàn)遠程監(jiān)控和管理。

(7) 本地數(shù)據(jù)顯示模塊 :配備0.96寸SPI接口的OLED顯示屏,用于實時顯示環(huán)境參數(shù)(如溫度、濕度、煙霧濃度等)和系統(tǒng)狀態(tài),便于現(xiàn)場工作人員快速了解設備運行情況。

(8) 太陽能充電模塊 :設計了太陽能充電系統(tǒng),包括太陽能電池板、充電控制器和蓄電池,以解決森林內無固定電源供應的問題,保證監(jiān)測系統(tǒng)長時間穩(wěn)定運行。

(9) 外部電源模塊 :為了確保系統(tǒng)的可靠性,在太陽能充電模塊之外,還提供了5V 2A的外置電源供電選項,可以在需要時為系統(tǒng)提供電力支持。

【4】研究背景與意義

森林火災是全球面臨的一大環(huán)境挑戰(zhàn),不僅會導致嚴重的生態(tài)破壞,還會造成巨大的經(jīng)濟損失和人員傷亡。傳統(tǒng)的森林防火措施多依賴于人工巡邏和定點監(jiān)測,這種模式效率低下,覆蓋范圍有限,難以及時發(fā)現(xiàn)和應對突發(fā)火災。近年來,隨著物聯(lián)網(wǎng)、大數(shù)據(jù)、云計算等技術的迅速發(fā)展,智能監(jiān)測系統(tǒng)開始應用于森林防火領域,極大地提高了火災預警的準確性和響應速度。基于此背景,本項目提出了一套基于STM32F103RCT6的森林火災監(jiān)測系統(tǒng),旨在通過集成先進的傳感器技術和無線通信技術,構建一個高效、可靠的火災預警平臺。

本項目的設計實現(xiàn)了對森林環(huán)境中溫度、濕度、煙霧濃度和火焰等關鍵參數(shù)的實時監(jiān)測,并通過4G網(wǎng)絡將數(shù)據(jù)上傳至云端,利用華為云IOT平臺進行數(shù)據(jù)分析和處理。當監(jiān)測到異常情況時,系統(tǒng)能夠自動觸發(fā)警報,并通過移動應用和上位機軟件將警報信息推送給森林管理員,確保他們能夠第一時間了解火災情況并采取相應的應急措施。此外,系統(tǒng)還支持太陽能充電,解決了森林內部署監(jiān)測設備時面臨的供電難題,保證了系統(tǒng)的長期穩(wěn)定運行。

研究的意義在于,本項目不僅為森林防火提供了一種新的解決方案,還促進了物聯(lián)網(wǎng)技術在環(huán)境保護領域的應用和發(fā)展。通過精準監(jiān)測和及時預警,可以有效降低森林火災的發(fā)生率,減少火災造成的生態(tài)破壞和經(jīng)濟損失,保護人民生命財產(chǎn)安全。同時,該項目的成功實施也將為其他類似應用場景提供參考,推動智慧林業(yè)的發(fā)展,助力實現(xiàn)可持續(xù)發(fā)展目標。

1.2 設計思路

在設計基于STM32F103RCT6的森林火災監(jiān)測系統(tǒng)時,首先明確了系統(tǒng)的主要目標:實現(xiàn)對森林環(huán)境中溫度、濕度、煙霧濃度和火焰的實時監(jiān)測,并能夠及時發(fā)出警報,同時將數(shù)據(jù)上傳至云端,以便森林管理員能夠遠程監(jiān)控和管理。為了達成這一目標,在設計過程中遵循了以下幾個核心思路:

選擇高性能的主控芯片STM32F103RCT6作為系統(tǒng)的控制中心。STM32F103RCT6具有強大的處理能力和豐富的外設接口,能夠高效地處理來自多個傳感器的數(shù)據(jù),并支持復雜的算法運算,滿足系統(tǒng)對數(shù)據(jù)處理的高要求。此外,它還具備低功耗特性,適合長時間在野外運行。

選用了多種高精度傳感器來實現(xiàn)對環(huán)境參數(shù)的全面監(jiān)測。SHT30溫濕度傳感器能夠提供準確的溫度和濕度數(shù)據(jù);火焰?zhèn)鞲衅骱蚆Q2煙霧傳感器則分別用于檢測火焰和煙霧濃度。這些傳感器的選擇確保了系統(tǒng)能夠及時捕捉到火災的早期跡象,從而提前發(fā)出預警。

為了實現(xiàn)數(shù)據(jù)的遠程傳輸,采用了Air724UG-4G模塊。該模塊支持4G網(wǎng)絡,能夠通過MQTT協(xié)議將采集到的數(shù)據(jù)上傳至華為云IOT物聯(lián)網(wǎng)服務器。這樣,森林管理員無論身處何地,都可以通過手機APP或Windows上位機軟件實時查看監(jiān)測數(shù)據(jù)和接收警報信息,大大提高了火災響應的速度和效率。

在用戶界面方面,設計了一個0.96寸的SPI接口OLED顯示屏,用于顯示本地采集的環(huán)境參數(shù)和系統(tǒng)狀態(tài)。這不僅方便了現(xiàn)場工作人員的日常維護和檢查,還能在沒有網(wǎng)絡連接的情況下提供重要的信息反饋。

考慮到森林地區(qū)的特殊環(huán)境,特別加入了太陽能充電功能。通過太陽能電池板將太陽能轉換為電能,并儲存在蓄電池中,為整個系統(tǒng)供電。這一設計不僅解決了偏遠地區(qū)供電困難的問題,還使得系統(tǒng)更加環(huán)保和可持續(xù)。

為了確保系統(tǒng)的穩(wěn)定性和可靠性,在軟件設計中加入了多種故障檢測和自我恢復機制。例如,當傳感器發(fā)生故障時,系統(tǒng)能夠自動切換到備用傳感器;當網(wǎng)絡連接中斷時,系統(tǒng)會自動嘗試重新連接。這些措施有效提高了系統(tǒng)的魯棒性,確保其在復雜多變的自然環(huán)境中能夠長期穩(wěn)定運行。

本項目的設計思路圍繞著高效、可靠、易用的目標展開,通過集成先進的傳感技術、無線通信技術和太陽能供電技術,構建了一個完整的森林火災監(jiān)測解決方案。這不僅有助于提高森林防火的智能化水平,也為生態(tài)環(huán)境保護提供了有力的技術支持。

1.3 系統(tǒng)功能總結

功能模塊描述
環(huán)境溫濕度監(jiān)測通過SHT30傳感器實時檢測森林內的環(huán)境溫度和濕度,并將數(shù)據(jù)發(fā)送給主控芯片進行處理。
火焰檢測使用火焰?zhèn)鞲衅鞅O(jiān)控森林區(qū)域內是否有火焰出現(xiàn),一旦發(fā)現(xiàn)火焰,立即將信號傳遞給主控芯片。
煙霧濃度監(jiān)測利用MQ2氣體傳感器檢測空氣中的煙霧濃度,當煙霧濃度超過預設閾值時,向主控芯片發(fā)送警報信號。
自動報警功能當系統(tǒng)檢測到火焰或煙霧濃度超標時,會自動激活有源蜂鳴器發(fā)出聲音警報,提醒現(xiàn)場人員注意安全并采取相應措施。
數(shù)據(jù)遠程傳輸通過Air724UG-4G模塊,采用MQTT協(xié)議將采集到的環(huán)境參數(shù)和報警信息上傳至華為云IOT物聯(lián)網(wǎng)服務器,實現(xiàn)數(shù)據(jù)的遠程監(jiān)控和管理。
移動設備實時監(jiān)控開發(fā)了專門的Android手機APP和Windows上位機軟件,森林管理員可以通過這些客戶端實時查看監(jiān)測點上傳的數(shù)據(jù),包括溫度、濕度、煙霧濃度等信息,以及接收火災報警通知。
OLED顯示屏本地顯示在監(jiān)測站點安裝0.96寸SPI接口OLED顯示屏,用于實時顯示環(huán)境參數(shù)和系統(tǒng)狀態(tài),方便護林員現(xiàn)場檢查設備工作情況和傳感器讀數(shù)是否正常。
太陽能充電支持配備太陽能充電系統(tǒng),包括太陽能電池板、充電控制器和蓄電池,以解決森林地區(qū)供電不便的問題,確保監(jiān)測系統(tǒng)在偏遠無電源的情況下也能持續(xù)運行。
外部電源模塊提供5V 2A的外置電源供電選項,可以在需要時為系統(tǒng)提供電力支持,確保系統(tǒng)的可靠性。

1.4 開發(fā)工具的選擇

【1】設備端開發(fā)

STM32的編程語言選擇C語言,C語言執(zhí)行效率高,大學里主學的C語言,C語言編譯出來的可執(zhí)行文件最接近于機器碼,匯編語言執(zhí)行效率最高,但是匯編的移植性比較差,目前在一些操作系統(tǒng)內核里還有一些低配的單片機使用的較多,平常的單片機編程還是以C語言為主。C語言的執(zhí)行效率僅次于匯編,語法理解簡單、代碼通用性強,也支持跨平臺,在嵌入式底層、單片機編程里用的非常多,當前的設計就是采用C語言開發(fā)。

開發(fā)工具選擇Keil,keil是一家世界領先的嵌入式微控制器軟件開發(fā)商,在2015年,keil被ARM公司收購。因為當前芯片選擇的是STM32F103系列,STMF103是屬于ARM公司的芯片構架、Cortex-M3內核系列的芯片,所以使用Kile來開發(fā)STM32是有先天優(yōu)勢的,而keil在各大高校使用的也非常多,很多教科書里都是以keil來教學,開發(fā)51單片機、STM32單片機等等。目前作為MCU芯片開發(fā)的軟件也不只是keil一家獨大,IAR在MCU微處理器開發(fā)領域里也使用的非常多,IAR擴展性更強,也支持STM32開發(fā),也支持其他芯片,比如:CC2530,51單片機的開發(fā)。從軟件的使用上來講,IAR比keil更加簡潔,功能相對少一些。如果之前使用過keil,而且使用頻率較多,已經(jīng)習慣再使用IAR是有點不適應界面的。

image-20221210225339928

【2】上位機開發(fā)

上位機的開發(fā)選擇Qt框架,編程語言采用C++;Qt是一個1991年由Qt Company開發(fā)的跨平臺C++圖形用戶界面應用程序開發(fā)框架。它既可以開發(fā)GUI程序,也可用于開發(fā)非GUI程序,比如控制臺工具和服務器。Qt是面向對象的框架,使用特殊的代碼生成擴展(稱為元對象編譯器(Meta Object Compiler, moc))以及一些宏,Qt很容易擴展,并且允許真正地組件編程。Qt能輕松創(chuàng)建具有原生C++性能的連接設備、用戶界面(UI)和應用程序。它功能強大且結構緊湊,擁有直觀的工具和庫。

image-20230218001243591

image-20230218001219105

1.5 參考文獻

1. 1. 廈門大學航空航天學院2. 閩西職業(yè)技術學院信息工程學院.改進TDM-LoRa低功耗森林火災監(jiān)測預警系統(tǒng)[J].福州大學學報(自然科學版),2024. 
2. 武風波,張會可,呂茜彤.森林防火監(jiān)測系統(tǒng)的設計與開發(fā)[J].現(xiàn)代電子技術,2018. 
3. 楊春迪,陸娟,儲增幫等.基于STM32F103RBT6單片機的新型森林火災監(jiān)測報警裝置研究[J].科技創(chuàng)新與生產(chǎn)力,2023. 
4. 曾旻,唐治東,張保磊.基于STM32控制電路及Atlas 200加速模塊的森林防火機器人集成應用[J].中國儀器儀表,2023. 
5. 徐崇奇,解建國,畢佳琦等.基于STM32的智能火災監(jiān)測及滅火系統(tǒng)設計[J].河南科技,2022. 
6. Wu Fengbo, L. Xitong et al. “Design and Development of Forest Fire Monitoring Terminal.” 2018 International Conference on Sensor Networks and Signal Processing (SNSP)(2018). 
7. 安徽三聯(lián)學院機器人工程學院.森林滅火輔助機器人設計[J].技術與市場,2021. 
8. 張會可.基于STM32的森林防火監(jiān)測終端的設計與開發(fā)[D].西安科技大學,2017. 
9. Min Yu, Taoyun Zhou et al. “Design of Forest Security Defense System Based on Beidou-Positioning.” Journal of Physics: Conference Series(2021). 
10. 楊晨,祁晉東,謝鑫焱等.基于無線傳感網(wǎng)絡的智能森林火災防控系統(tǒng)的設計[J].數(shù)字技術與應用,2022. 
11. 秦鈺林,周若麟,張珂欣等.基于NB-IoT窄帶通信和多傳感器組網(wǎng)技術的森林火災監(jiān)測預警系統(tǒng)[J].物聯(lián)網(wǎng)技術,2020. 
12. 李春成,楊云,陳亮等.自供電低功耗森林火災無線監(jiān)測系統(tǒng)[J].電子器件,2021. 
13. Rohan Arunkumar, Atul Kumar Dubey. “FireSense: Integrating Deep Learning with ESP32 Microcontrollers for Enhanced Forest Fire Surveillance.” 2024 IEEE 48th Annual Computers, Software, and Applications Conference (COMPSAC)(2024). 
14. 王洋.基于嵌入式的森林火災監(jiān)測平臺設計與實現(xiàn)[D].大連交通大學,2021. 
15. Ziliu Ye, Fuwen Su et al. “Intelligent Fire-fighting robot based on STM32.” 2019 Chinese Automation Congress (CAC)(2019). 
16. 蔡志偉,張偉光,高亮等.基于物聯(lián)網(wǎng)的森林環(huán)境智能監(jiān)測系統(tǒng)終端監(jiān)測節(jié)點的設計[J].哈爾濱師范大學自然科學學報,2019. 
17. 大連民族大學信息與通信工程學院.基于物聯(lián)網(wǎng)技術的智能山火報警系統(tǒng)[J].智能計算機與應用,2024. 
18. 蔣鵬.基于STM32的無線遙控山區(qū)物資運輸車研究與設計[J].內燃機與配件,2023. 
19. 王強強,李玉麗.基于物聯(lián)網(wǎng)云平臺的火災監(jiān)測報警系統(tǒng)設計 附視頻[J].技術與市場,2024. 
20. Tammana Viswanadha Muralidhar, Vytla Venkata Sai Sandeep et al. “An IoT based Real Time Forest Fire Detection & Alerting System Using LoRa Communication.” 2024 11th International Conference on Signal Processing and Integrated Networks (SPIN)(2024). 
21. Zhao Minhua. “A Wireless Fire Detection and Alarm System Based on the Information Fusion Technology.” Electronic Science and Technology(2012). 
22. 李光輝,趙軍,王智.基于無線傳感器網(wǎng)絡的森林火災監(jiān)測預警系統(tǒng)[J].傳感技術學報,2006. 
23. 趙英,陳淑娟.基于多傳感器數(shù)據(jù)融合的火災預警系統(tǒng)[J].現(xiàn)代電子技術,2010. 
24. 劉燕燕,楊幫華,丁麗娜等.基于STM32的紅外火災探測系統(tǒng)設計[J].計算機測量與控制,2013. 
25. L. Niu, Zhubing Hu. “Information Fusion Technology Based on Wireless Fire Detection and Alarm System.” Advanced Materials Research(2013). 
26. Yazhou Zhong, Fei Wu et al. “Design of smoke alarm system based on STM32.” International Journal of Engineering Research and(2017). 
27. 朱黎,全斐,王磊等.基于無線網(wǎng)絡的環(huán)境監(jiān)測系統(tǒng)[J].電子制作,2022. 
28. 曲惠澤,魏東輝.基于STM32的林間信息采集機器人[J].林業(yè)機械與木工設備,2019. 
29. Cao Bin-qia. “Design of data acquisition system based on STM32+FPGA.” Computer Engineering and Design(2014). 
30. K. Zhao. “Design of Distributed Smoke and Heat Detector Based on STM32.” Control and Instruments in Chemical Industry(2015).

二、部署華為云物聯(lián)網(wǎng)平臺

華為云官網(wǎng): https://www.huaweicloud.com/

打開官網(wǎng),搜索物聯(lián)網(wǎng),就能快速找到 設備接入IoTDA。

image-20221204193824815

2.1 物聯(lián)網(wǎng)平臺介紹

華為云物聯(lián)網(wǎng)平臺(IoT 設備接入云服務)提供海量設備的接入和管理能力,將物理設備聯(lián)接到云,支撐設備數(shù)據(jù)采集上云和云端下發(fā)命令給設備進行遠程控制,配合華為云其他產(chǎn)品,幫助快速構筑物聯(lián)網(wǎng)解決方案。

使用物聯(lián)網(wǎng)平臺構建一個完整的物聯(lián)網(wǎng)解決方案主要包括3部分:物聯(lián)網(wǎng)平臺、業(yè)務應用和設備。

物聯(lián)網(wǎng)平臺作為連接業(yè)務應用和設備的中間層,屏蔽了各種復雜的設備接口,實現(xiàn)設備的快速接入;同時提供強大的開放能力,支撐行業(yè)用戶構建各種物聯(lián)網(wǎng)解決方案。

設備可以通過固網(wǎng)、2G/3G/4G/5G、NB-IoT、Wifi等多種網(wǎng)絡接入物聯(lián)網(wǎng)平臺,并使用LWM2M/CoAP、MQTT、HTTPS協(xié)議將業(yè)務數(shù)據(jù)上報到平臺,平臺也可以將控制命令下發(fā)給設備。

業(yè)務應用通過調用物聯(lián)網(wǎng)平臺提供的API,實現(xiàn)設備數(shù)據(jù)采集、命令下發(fā)、設備管理等業(yè)務場景。

img

2.2 開通物聯(lián)網(wǎng)服務

地址: https://www.huaweicloud.com/product/iothub.html

image-20221204194233414

點擊立即創(chuàng)建。

image-20240117134653452

正在創(chuàng)建標準版實例,需要等待片刻。

image-20240117134729401

創(chuàng)建完成之后,點擊實例名稱。 可以看到標準版實例的設備接入端口和地址。

image-20240425180759670

在上面也能看到 免費單元的限制。

image-20240425180817704

開通之后,點擊總覽,也能查看接入信息。 當前設備準備采用MQTT協(xié)議接入華為云平臺,這里可以看到MQTT協(xié)議的地址和端口號等信息。

image-20240425180845461

總結:

端口號:   MQTT (1883)| MQTTS (8883)	
接入地址:ad635970a1.st1.iotda-device.cn-north-4.myhuaweicloud.com

**根據(jù)域名地址得到IP地址信息: **

打開Windows電腦的命令行控制臺終端,使用ping 命令。ping一下即可。

Microsoft Windows [版本 10.0.19045.4170]
(c) Microsoft Corporation。保留所有權利。

C:Users11266 >ping ad635970a1.st1.iotda-device.cn-north-4.myhuaweicloud.com

正在 Ping ad635970a1.st1.iotda-device.cn-north-4.myhuaweicloud.com [117.78.5.125] 具有 32 字節(jié)的數(shù)據(jù):
來自 117.78.5.125 的回復: 字節(jié)=32 時間=35ms TTL=93
來自 117.78.5.125 的回復: 字節(jié)=32 時間=36ms TTL=93
來自 117.78.5.125 的回復: 字節(jié)=32 時間=36ms TTL=93
來自 117.78.5.125 的回復: 字節(jié)=32 時間=39ms TTL=93

117.78.5.125 的 Ping 統(tǒng)計信息:
    數(shù)據(jù)包: 已發(fā)送 = 4,已接收 = 4,丟失 = 0 (0% 丟失),
往返行程的估計時間(以毫秒為單位):
    最短 = 35ms,最長 = 39ms,平均 = 36ms

C:Users11266 >

MQTT協(xié)議接入端口號有兩個,1883是非加密端口,8883是證書加密端口,單片機無法加載證書,所以使用1883端口比較合適。 接下來的ESP8266就采用1883端口連接華為云物聯(lián)網(wǎng)平臺。

2.3 創(chuàng)建產(chǎn)品

(1)創(chuàng)建產(chǎn)品

image-20230109164412041

(2)填寫產(chǎn)品信息

根據(jù)自己產(chǎn)品名字填寫,下面的設備類型選擇自定義類型。

image-20240612094809689

(3)產(chǎn)品創(chuàng)建成功

image-20240612095148945

創(chuàng)建完成之后點擊查看詳情。

image-20240612095134263

(4)添加自定義模型

產(chǎn)品創(chuàng)建完成之后,點擊進入產(chǎn)品詳情頁面,翻到最下面可以看到模型定義。

模型簡單來說: 就是存放設備上傳到云平臺的數(shù)據(jù)。

你可以根據(jù)自己的產(chǎn)品進行創(chuàng)建。

比如:

煙霧可以叫  MQ2
溫度可以叫  Temperature
濕度可以叫  humidity
火焰可以叫  flame
其他的傳感器自己用單詞簡寫命名即可。 這就是你的單片機設備端上傳到服務器的數(shù)據(jù)名字。

先點擊自定義模型。

image-20240612095517900

再創(chuàng)建一個服務ID。

image-20240612095542749

接著點擊新增屬性。

image-20240612095648815

image-20240612095711898

2.4 添加設備

產(chǎn)品是屬于上層的抽象模型,接下來在產(chǎn)品模型下添加實際的設備。添加的設備最終需要與真實的設備關聯(lián)在一起,完成數(shù)據(jù)交互。

(1)注冊設備

image-20240425181935561

(2)根據(jù)自己的設備填寫

image-20240612100115167

(3)保存設備信息

創(chuàng)建完畢之后,點擊保存并關閉,得到創(chuàng)建的設備密匙信息。該信息在后續(xù)生成MQTT三元組的時候需要使用。

image-20240612100128061

(4)設備創(chuàng)建完成

image-20240612100147232

(5)設備詳情

image-20240612100202960

image-20240612100217236

2.5 MQTT協(xié)議主題訂閱與發(fā)布

(1)MQTT協(xié)議介紹

當前的設備是采用MQTT協(xié)議與華為云平臺進行通信。

MQTT是一個物聯(lián)網(wǎng)傳輸協(xié)議,它被設計用于輕量級的發(fā)布/訂閱式消息傳輸,旨在為低帶寬和不穩(wěn)定的網(wǎng)絡環(huán)境中的物聯(lián)網(wǎng)設備提供可靠的網(wǎng)絡服務。MQTT是專門針對物聯(lián)網(wǎng)開發(fā)的輕量級傳輸協(xié)議。MQTT協(xié)議針對低帶寬網(wǎng)絡,低計算能力的設備,做了特殊的優(yōu)化,使得其能適應各種物聯(lián)網(wǎng)應用場景。目前MQTT擁有各種平臺和設備上的客戶端,已經(jīng)形成了初步的生態(tài)系統(tǒng)。

MQTT是一種消息隊列協(xié)議,使用發(fā)布/訂閱消息模式,提供一對多的消息發(fā)布,解除應用程序耦合,相對于其他協(xié)議,開發(fā)更簡單;MQTT協(xié)議是工作在TCP/IP協(xié)議上;由TCP/IP協(xié)議提供穩(wěn)定的網(wǎng)絡連接;所以,只要具備TCP協(xié)議棧的網(wǎng)絡設備都可以使用MQTT協(xié)議。 本次設備采用的ESP8266就具備TCP協(xié)議棧,能夠建立TCP連接,所以,配合STM32代碼里封裝的MQTT協(xié)議,就可以與華為云平臺完成通信。

華為云的MQTT協(xié)議接入幫助文檔在這里: https://support.huaweicloud.com/devg-iothub/iot_02_2200.html

img

業(yè)務流程:

img

(2)華為云平臺MQTT協(xié)議使用限制

描述限制
支持的MQTT協(xié)議版本3.1.1
與標準MQTT協(xié)議的區(qū)別支持Qos 0和Qos 1支持Topic自定義不支持QoS2不支持will、retain msg
MQTTS支持的安全等級采用TCP通道基礎 + TLS協(xié)議(最高TLSv1.3版本)
單帳號每秒最大MQTT連接請求數(shù)無限制
單個設備每分鐘支持的最大MQTT連接數(shù)1
單個MQTT連接每秒的吞吐量,即帶寬,包含直連設備和網(wǎng)關3KB/s
MQTT單個發(fā)布消息最大長度,超過此大小的發(fā)布請求將被直接拒絕1MB
MQTT連接心跳時間建議值心跳時間限定為30至1200秒,推薦設置為120秒
產(chǎn)品是否支持自定義Topic支持
消息發(fā)布與訂閱設備只能對自己的Topic進行消息發(fā)布與訂閱
每個訂閱請求的最大訂閱數(shù)無限制

(3)主題訂閱格式

幫助文檔地址:https://support.huaweicloud.com/devg-iothub/iot_02_2200.html

image-20221207153310037

對于設備而言,一般會訂閱平臺下發(fā)消息給設備 這個主題。

設備想接收平臺下發(fā)的消息,就需要訂閱平臺下發(fā)消息給設備 的主題,訂閱后,平臺下發(fā)消息給設備,設備就會收到消息。

如果設備想要知道平臺下發(fā)的消息,需要訂閱上面圖片里標注的主題。

以當前設備為例,最終訂閱主題的格式如下:
$oc/devices/{device_id}/sys/messages/down
    
最終的格式:
$oc/devices/663cb18871d845632a0912e7_dev1/sys/messages/down

(4)主題發(fā)布格式

對于設備來說,主題發(fā)布表示向云平臺上傳數(shù)據(jù),將最新的傳感器數(shù)據(jù),設備狀態(tài)上傳到云平臺。

這個操作稱為:屬性上報。

幫助文檔地址:https://support.huaweicloud.com/usermanual-iothub/iot_06_v5_3010.html

image-20221207153637391

根據(jù)幫助文檔的介紹, 當前設備發(fā)布主題,上報屬性的格式總結如下:

發(fā)布的主題格式:
$oc/devices/{device_id}/sys/properties/report
 
最終的格式:
$oc/devices/663cb18871d845632a0912e7_dev1/sys/properties/report
發(fā)布主題時,需要上傳數(shù)據(jù),這個數(shù)據(jù)格式是JSON格式。

上傳的JSON數(shù)據(jù)格式如下:

{
  "services": [
    {
      "service_id": < 填服務ID >,
      "properties": {
        "< 填屬性名稱1 >": < 填屬性值 >,
        "< 填屬性名稱2 >": < 填屬性值 >,
        ..........
      }
    }
  ]
}
根據(jù)JSON格式,一次可以上傳多個屬性字段。 這個JSON格式里的,服務ID,屬性字段名稱,屬性值類型,在前面創(chuàng)建產(chǎn)品的時候就已經(jīng)介紹了,不記得可以翻到前面去查看。

根據(jù)這個格式,組合一次上傳的屬性數(shù)據(jù):
{"services": [{"service_id": "stm32","properties":{"DHT11_T":30,"DHT11_H":10,"BH1750":1,"MQ135":0}}]}

2.6 MQTT三元組

MQTT協(xié)議登錄需要填用戶ID,設備ID,設備密碼等信息,就像平時登錄QQ,微信一樣要輸入賬號密碼才能登錄。MQTT協(xié)議登錄的這3個參數(shù),一般稱為MQTT三元組。

接下來介紹,華為云平臺的MQTT三元組參數(shù)如何得到。

(1)MQTT服務器地址

要登錄MQTT服務器,首先記得先知道服務器的地址是多少,端口是多少。

幫助文檔地址:https://console.huaweicloud.com/iotdm/?region=cn-north-4#/dm-portal/home

image-20240509193207359

MQTT協(xié)議的端口支持1883和8883,它們的區(qū)別是:8883 是加密端口更加安全。但是單片機上使用比較困難,所以當前的設備是采用1883端口進連接的。

根據(jù)上面的域名和端口號,得到下面的IP地址和端口號信息: 如果設備支持填寫域名可以直接填域名,不支持就直接填寫IP地址。 (IP地址就是域名解析得到的)

華為云的MQTT服務器地址:117.78.5.125
華為云的MQTT端口號:1883

如何得到IP地址?如何域名轉IP? 打開Windows的命令行輸入以下命令。

ping  ad635970a1.st1.iotda-device.cn-north-4.myhuaweicloud.com

image-20240425182610048

(2)生成MQTT三元組

華為云提供了一個在線工具,用來生成MQTT鑒權三元組: https://iot-tool.obs-website.cn-north-4.myhuaweicloud.com/

打開這個工具,填入設備的信息(也就是剛才創(chuàng)建完設備之后保存的信息),點擊生成,就可以得到MQTT的登錄信息了。

下面是打開的頁面:

image-20240425183025893

填入設備的信息: (上面兩行就是設備創(chuàng)建完成之后保存得到的)

直接得到三元組信息。

image-20240509193310020

得到三元組之后,設備端通過MQTT協(xié)議登錄鑒權的時候,填入?yún)?shù)即可。

ClientId  663cb18871d845632a0912e7_dev1_0_0_2024050911
Username  663cb18871d845632a0912e7_dev1
Password  71b82deae83e80f04c4269b5bbce3b2fc7c13f610948fe210ce18650909ac237

2.7 模擬設備登錄測試

經(jīng)過上面的步驟介紹,已經(jīng)創(chuàng)建了產(chǎn)品,設備,數(shù)據(jù)模型,得到MQTT登錄信息。 接下來就用MQTT客戶端軟件模擬真實的設備來登錄平臺。測試與服務器通信是否正常。

(1)填入登錄信息

打開MQTT客戶端軟件,對號填入相關信息(就是上面的文本介紹)。然后,點擊登錄,訂閱主題,發(fā)布主題。

image-20240509193457358

(2)打開網(wǎng)頁查看

完成上面的操作之后,打開華為云網(wǎng)頁后臺,可以看到設備已經(jīng)在線了。

image-20240612100508790

點擊詳情頁面,可以看到上傳的數(shù)據(jù):

image-20240612100529581

到此,云平臺的部署已經(jīng)完成,設備已經(jīng)可以正常上傳數(shù)據(jù)了。

(3)MQTT登錄測試參數(shù)總結

MQTT服務器:  117.78.5.125
MQTT端口號:  183

//物聯(lián)網(wǎng)服務器的設備信息
#define MQTT_ClientID "663cb18871d845632a0912e7_dev1_0_0_2024050911"
#define MQTT_UserName "663cb18871d845632a0912e7_dev1"
#define MQTT_PassWord "71b82deae83e80f04c4269b5bbce3b2fc7c13f610948fe210ce18650909ac237"

//訂閱與發(fā)布的主題
#define SET_TOPIC  "$oc/devices/663cb18871d845632a0912e7_dev1/sys/messages/down"  //訂閱
#define POST_TOPIC "$oc/devices/663cb18871d845632a0912e7_dev1/sys/properties/report"  //發(fā)布


發(fā)布的數(shù)據(jù):
{"services": [{"service_id": "stm32","properties":{"DHT11_T":30,"DHT11_H":10,"BH1750":1,"MQ135":0}}]}

2.8 創(chuàng)建IAM賬戶

創(chuàng)建一個IAM賬戶,因為接下來開發(fā)上位機,需要使用云平臺的API接口,這些接口都需要token進行鑒權。簡單來說,就是身份的認證。 調用接口獲取Token時,就需要填寫IAM賬號信息。所以,接下來演示一下過程。

地址: https://console.huaweicloud.com/iam/?region=cn-north-4#/iam/users

**【1】獲取項目憑證 ** 點擊左上角用戶名,選擇下拉菜單里的我的憑證

image-20240509193646253

image-20240509193701262

項目憑證:

28add376c01e4a61ac8b621c714bf459

【2】創(chuàng)建IAM用戶

鼠標放在左上角頭像上,在下拉菜單里選擇統(tǒng)一身份認證

image-20240509193729078

點擊左上角創(chuàng)建用戶。

image-20240509193744287

image-20240314153208692

image-20240314153228359

image-20240314153258229

創(chuàng)建成功:

image-20240314153315444

【3】創(chuàng)建完成

image-20240509193828289

用戶信息如下:

主用戶名  l19504562721
IAM用戶  ds_abc
密碼     DS12345678

2.9 獲取影子數(shù)據(jù)

幫助文檔:https://support.huaweicloud.com/api-iothub/iot_06_v5_0079.html

設備影子介紹:

設備影子是一個用于存儲和檢索設備當前狀態(tài)信息的JSON文檔。
每個設備有且只有一個設備影子,由設備ID唯一標識
設備影子僅保存最近一次設備的上報數(shù)據(jù)和預期數(shù)據(jù)
無論該設備是否在線,都可以通過該影子獲取和設置設備的屬性

簡單來說:設備影子就是保存,設備最新上傳的一次數(shù)據(jù)。

設計的軟件里,如果想要獲取設備的最新狀態(tài)信息,就采用設備影子接口。

如果對接口不熟悉,可以先進行在線調試:https://apiexplorer.developer.huaweicloud.com/apiexplorer/doc?product=IoTDA&api=ShowDeviceShadow

在線調試接口,可以請求影子接口,了解請求,與返回的數(shù)據(jù)格式。

調試完成看右下角的響應體,就是返回的影子數(shù)據(jù)。

image-20240509194152229

設備影子接口返回的數(shù)據(jù)如下:

{
 "device_id": "663cb18871d845632a0912e7_dev1",
 "shadow": [
  {
   "service_id": "stm32",
   "desired": {
    "properties": null,
    "event_time": null
   },
   "reported": {
    "properties": {
     "DHT11_T": 18,
     "DHT11_H": 90,
     "BH1750": 38,
     "MQ135": 70
    },
    "event_time": "20240509T113448Z"
   },
   "version": 3
  }
 ]
}

調試成功之后,可以得到訪問影子數(shù)據(jù)的真實鏈接,接下來的代碼開發(fā)中,就采用Qt寫代碼訪問此鏈接,獲取影子數(shù)據(jù),完成上位機開發(fā)。

image-20240509194214716

鏈接如下:

https://ad635970a1.st1.iotda-app.cn-north-4.myhuaweicloud.com:443/v5/iot/28add376c01e4a61ac8b621c714bf459/devices/663cb18871d845632a0912e7_dev1/shadow

三、上位機開發(fā)

為了方便查看設備上傳的數(shù)據(jù),接下來利用Qt開發(fā)一款Android手機APP 和 Windows上位機。

使用華為云平臺提供的API接口獲取設備上傳的數(shù)據(jù),進行可視化顯示,以及遠程控制設備。

3.1 Qt開發(fā)環(huán)境安裝

Qt的中文官網(wǎng): https://www.qt.io/zh-cn/image-20221207160550486

image-20221207160606892

QT5.12.6的下載地址:https://download.qt.io/archive/qt/5.12/5.12.6

或者去網(wǎng)盤里下載:https://pan.quark.cn/s/145a9b3f7f53

打開下載鏈接后選擇下面的版本進行下載:

qt-opensource-windows-x86-5.12.6.exe 13-Nov-2019 07:28 3.7G Details

軟件安裝時斷網(wǎng)安裝,否則會提示輸入賬戶。

安裝的時候,第一個復選框里勾選一個mingw 32編譯器即可,其他的不管默認就行,直接點擊下一步繼續(xù)安裝。

image-20221203151742653

選擇MinGW 32-bit 編譯器: (一定要看清楚了)

image-20221203151750344

說明: 我這里只是介紹PC端,也就是Windows系統(tǒng)下的Qt環(huán)境搭建。 Android的開發(fā)環(huán)境比較麻煩,如果想學習Android開發(fā),想編譯Android程序的APP,需要自己去搭建Android環(huán)境。

也可以看下面這篇文章,不過這個文章是在Qt開發(fā)專欄里付費的,需要訂閱專欄才可以看。 如果不想付費看,也可以自行找其他教程,自己搭建好必須的環(huán)境就行了

Android環(huán)境搭建的博客鏈接: https://blog.csdn.net/xiaolong1126626497/article/details/117254453

3.2 新建上位機工程

前面2講解了需要用的API接口,接下來就使用Qt設計上位機,設計界面,完成整體上位機的邏輯設計。

【1】新建工程

image-20240117144052547

【2】設置項目的名稱。

image-20240509195711965

【3】選擇編譯系統(tǒng)

image-20240117144239681

【4】選擇默認繼承的類

image-20240117144302275

【5】選擇編譯器

image-20240314162137170

【6】點擊完成

image-20240117144354252

【7】工程創(chuàng)建完成

image-20230421094133333

3.3 設計UI界面與工程配置

【1】打開UI文件

image-20230421094815236

打開默認的界面如下:

image-20240425194845233

【2】開始設計界面

根據(jù)自己需求設計界面。

3.5 編譯Windows上位機

點擊軟件左下角的綠色三角形按鈕進行編譯運行。

image-20240509202031739

3.6 配置Android環(huán)境

如果想編譯Android手機APP,必須要先自己配置好自己的Android環(huán)境。(搭建環(huán)境的過程可以自行百度搜索學習)

然后才可以進行下面的步驟。

【1】選擇Android編譯器

image-20240425232651515

image-20240509202408776

【2】創(chuàng)建Android配置文件

image-20240117144604025

image-20240117144635052

image-20240117144652014

創(chuàng)建完成。

【3】配置Android圖標與名稱

image-20240612100947190

【3】編譯Android上位機

Qt本身是跨平臺的,直接選擇Android的編譯器,就可以將程序編譯到Android平臺。

然后點擊構建。

image-20240509202534407

成功之后,在目錄下可以看到生成的apk文件,也就是Android手機的安裝包,電腦端使用QQ發(fā)送給手機QQ,手機登錄QQ接收,就能直接安裝。

生成的apk的目錄在哪里呢? 編譯完成之后,在控制臺會輸出APK文件的路徑。

知道目錄在哪里之后,在Windows的文件資源管理器里,找到路徑,具體看下圖,找到生成的apk文件。

image-20240509202712295

D:/linux-share-dir/QT/build-app_Huawei_Eco_tracking-Android_for_arm64_v8a_Clang_Qt_5_12_6_for_Android_ARM64_v8a-Release/android-build//build/outputs/apk/debug/android-build-debug.apk

四、STM32代碼開發(fā)

當前項目源碼已經(jīng)上傳到網(wǎng)盤:[https://ccnr8sukk85n.feishu.cn/wiki/QjY8weDYHibqRYkFP2qcA9aGnvb?from=from_copylink]

以下是基于STM32F103RCT6的“森林火災監(jiān)測系統(tǒng)”的 main.c 的完整代碼示例。

#include "stm32f10x.h"
#include "sht30.h"        // 環(huán)境溫濕度傳感器庫
#include "mq2.h"          // 煙霧傳感器庫
#include "flame_sensor.h" // 火焰?zhèn)鞲衅鲙?/span>
#include "oled.h"         // OLED顯示屏庫
#include "buzzer.h"       // 蜂鳴器庫
#include "air724ug.h"     // 4G模塊通信庫
#include "delay.h"        // 延時函數(shù)庫
#include "mqtt.h"         // MQTT協(xié)議庫

// 全局變量
float temperature, humidity;
uint16_t smoke_concentration;
uint8_t flame_detected;
char data_buffer[50];

// 函數(shù)聲明
void System_Init(void);
void Read_Sensors(void);
void Display_Data(void);
void Check_Alarm(void);
void Upload_Data(void);

int main(void) {
    System_Init();  // 系統(tǒng)初始化
    
    while (1) {
        Read_Sensors();     // 讀取傳感器數(shù)據(jù)
        Display_Data();     // 在OLED上顯示數(shù)據(jù)
        Check_Alarm();      // 檢查報警條件
        Upload_Data();      // 上傳數(shù)據(jù)到云端
        
        Delay_ms(5000);     // 每隔5秒運行一次
    }
}

// 系統(tǒng)初始化
void System_Init(void) {
    Delay_Init();      // 初始化延時
    SHT30_Init();      // 初始化溫濕度傳感器
    MQ2_Init();        // 初始化煙霧傳感器
    Flame_Sensor_Init(); // 初始化火焰?zhèn)鞲衅?/span>
    OLED_Init();       // 初始化OLED顯示
    Buzzer_Init();     // 初始化蜂鳴器
    Air724UG_Init();   // 初始化4G模塊
    MQTT_Init();       // 初始化MQTT協(xié)議
}

// 讀取傳感器數(shù)據(jù)
void Read_Sensors(void) {
    // 讀取溫濕度
    SHT30_ReadData(&temperature, &humidity);
    
    // 讀取煙霧濃度
    smoke_concentration = MQ2_ReadData();
    
    // 讀取火焰?zhèn)鞲衅鳡顟B(tài)
    flame_detected = Flame_Sensor_Read();
}

// 在OLED顯示屏上顯示數(shù)據(jù)
void Display_Data(void) {
    OLED_Clear();
    OLED_ShowString(0, 0, "Temp:");
    OLED_ShowFloat(40, 0, temperature, 2, 1);
    OLED_ShowString(80, 0, "C");
    
    OLED_ShowString(0, 1, "Humidity:");
    OLED_ShowFloat(64, 1, humidity, 2, 1);
    OLED_ShowString(104, 1, "%");
    
    OLED_ShowString(0, 2, "Smoke:");
    OLED_ShowNum(48, 2, smoke_concentration, 4, 10);
    
    OLED_ShowString(0, 3, "Flame:");
    if (flame_detected) {
        OLED_ShowString(48, 3, "YES");
    } else {
        OLED_ShowString(48, 3, "NO");
    }
}

// 檢查報警條件
void Check_Alarm(void) {
    // 檢測到火焰或煙霧濃度超出閾值則報警
    if (flame_detected || smoke_concentration > 300) {
        Buzzer_On();
    } else {
        Buzzer_Off();
    }
}

// 上傳數(shù)據(jù)到云端
void Upload_Data(void) {
    // 將數(shù)據(jù)格式化為字符串
    snprintf(data_buffer, sizeof(data_buffer), 
             "{"temperature": %.1f, "humidity": %.1f, "smoke": %d, "flame": %d}", 
             temperature, humidity, smoke_concentration, flame_detected);
    
    // 使用MQTT協(xié)議上傳數(shù)據(jù)
    MQTT_Publish("forest_fire_monitor/data", data_buffer);
}

代碼說明

  1. System_Init() :初始化所有硬件模塊,包括傳感器、OLED顯示屏、蜂鳴器、4G模塊和MQTT協(xié)議。
  2. Read_Sensors() :讀取各傳感器數(shù)據(jù)。
  3. Display_Data() :將采集的數(shù)據(jù)在OLED顯示屏上顯示,方便現(xiàn)場查看。
  4. Check_Alarm() :檢測火災報警條件,若檢測到火焰或煙霧濃度超出閾值,觸發(fā)蜂鳴器報警。
  5. Upload_Data() :通過4G模塊上傳數(shù)據(jù)到華為云物聯(lián)網(wǎng)平臺。數(shù)據(jù)格式化成JSON字符串并通過MQTT協(xié)議發(fā)布到云服務器的指定主題。

運行邏輯

系統(tǒng)每5秒循環(huán)一次,執(zhí)行數(shù)據(jù)采集、顯示、報警檢測和數(shù)據(jù)上傳。

五、總結

森林火災是全球面臨的一大環(huán)境挑戰(zhàn),不僅導致嚴重的生態(tài)破壞,還會造成巨大的經(jīng)濟損失和人員傷亡。傳統(tǒng)的森林防火措施多依賴于人工巡邏和定點監(jiān)測,效率低下且覆蓋范圍有限。為此,本項目設計了一套基于STM32F103RCT6的森林火災監(jiān)測系統(tǒng)。該系統(tǒng)集成了多種傳感器,包括SHT30溫濕度傳感器、火焰?zhèn)鞲衅骱蚆Q2煙霧傳感器,能夠實時監(jiān)測森林環(huán)境中的溫度、濕度、煙霧濃度和火焰情況。當檢測到異常情況時,系統(tǒng)會自動觸發(fā)蜂鳴器報警,并通過Air724UG-4G模塊將數(shù)據(jù)上傳至華為云IOT物聯(lián)網(wǎng)服務器。此外,系統(tǒng)還開發(fā)了專門的Android手機APP和Windows上位機軟件,森林管理員可以通過這些客戶端實時查看監(jiān)測數(shù)據(jù)和接收火災報警信息。為了適應森林地區(qū)的特殊環(huán)境,系統(tǒng)支持太陽能充電,確保長期穩(wěn)定運行。本項目旨在提高森林火災預警的準確性和響應速度,減少火災造成的損失,為森林防火提供了一種新的解決方案。

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • STM32
    +關注

    關注

    2305

    文章

    11118

    瀏覽量

    370908
  • 監(jiān)測系統(tǒng)

    關注

    8

    文章

    3022

    瀏覽量

    84170
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于STM32設計的森林火災預警系統(tǒng)(聯(lián)動控制+SIM800C+華為云IoT)

    這篇文章就采用華為云iot物聯(lián)網(wǎng)平臺快速搭建一個森林火災預警聯(lián)動控制系統(tǒng)模型,模擬演示檢測到森林火災之后,如何快速上報到云平臺,向關聯(lián)的指定服務器發(fā)送數(shù)據(jù)報告,并自動向抽水泵發(fā)送指令,打開開關抽水滅火。
    的頭像 發(fā)表于 07-11 16:34 ?3270次閱讀
    基于<b class='flag-5'>STM32</b>設計的<b class='flag-5'>森林火災</b>預警<b class='flag-5'>系統(tǒng)</b>(聯(lián)動控制+SIM800C+華為云IoT)

    請問對監(jiān)控區(qū)域煙霧、溫度等環(huán)境數(shù)據(jù)的實時監(jiān)測的TMS320F28335森林火災預警系統(tǒng)怎么設計?

    本帖最后由 一只耳朵怪 于 2018-5-22 14:40 編輯 該設計是一種森林火災預警系統(tǒng),通過對監(jiān)控區(qū)域煙霧、溫度等環(huán)境數(shù)據(jù)的實時監(jiān)測,利用CAN總線方式傳送到監(jiān)控終端,實現(xiàn)區(qū)域監(jiān)控。
    發(fā)表于 05-22 08:43

    無線傳感器網(wǎng)絡在森林火災監(jiān)測中的應用

    無線傳感器網(wǎng)絡在森林火災監(jiān)測中的應用 該文把無線傳感器網(wǎng)絡應用在森林火災監(jiān)測系統(tǒng)中,詳細設計了基于射頻SoC 芯片nRF9E5、溫度傳感器
    發(fā)表于 02-22 11:35 ?38次下載

    基于Cortex_M3的森林火災監(jiān)測WSN節(jié)點的設計

    基于Cortex_M3的森林火災監(jiān)測WSN節(jié)點的設計
    發(fā)表于 09-28 17:21 ?6次下載
    基于Cortex_M3的<b class='flag-5'>森林火災</b><b class='flag-5'>監(jiān)測</b>WSN節(jié)點的設計

    基于STM32F和ZigBee的森林火監(jiān)測系統(tǒng)設計

    森林在國民經(jīng)濟中占有重要地位,然而,森林火災會給森林帶來嚴重危害。但是,人類在制服森林火災上,卻依然尚未取得突破性的進展,于是在火災還在萌芽
    發(fā)表于 11-30 09:31 ?1511次閱讀
     基于<b class='flag-5'>STM32</b>F和ZigBee的<b class='flag-5'>森林火</b>情<b class='flag-5'>監(jiān)測</b><b class='flag-5'>系統(tǒng)</b>設計

    基于支持向量機的森林火災預測研究

    定位的延遲和掃描儀高昂的設備成本和維護成本,這些方案不能用來解決所有的情況。然而,研究表明氣象因素對森林火災有重要的影響。因此,有不少的學者建立森林火災預測系統(tǒng)并將氣象數(shù)據(jù)納入量化指標體系。隨機計算機的迅速
    發(fā)表于 01-02 16:50 ?0次下載

    森林火災實時監(jiān)測與預警系統(tǒng)詳解

    侵害,嚴重威脅和損害森林生態(tài)和人類生命財產(chǎn)安全。因此,研究森林火災特征并提供相應的防治與控制技術,為其設計合理的火災自動監(jiān)控報警系統(tǒng)及滅火
    發(fā)表于 06-03 15:45 ?1.5w次閱讀
    <b class='flag-5'>森林火災</b>實時<b class='flag-5'>監(jiān)測</b>與預警<b class='flag-5'>系統(tǒng)</b>詳解

    基于物聯(lián)網(wǎng)的森林火災探測系統(tǒng)

    森林火災森林中常見的危害,對野生動物和環(huán)境造成很大危害。如果可以在森林地區(qū)部署一個強大的系統(tǒng)來檢測火災并提醒消防當局立即采取行動,則可以避
    發(fā)表于 07-28 17:09 ?2662次閱讀
    基于物聯(lián)網(wǎng)的<b class='flag-5'>森林火災</b>探測<b class='flag-5'>系統(tǒng)</b>

    森林火災探測系統(tǒng)的構建

    在這個項目中,在 Arduino UNO 和 GSM Shield 的幫助下構建了一個森林火災探測系統(tǒng),用于 SMS 警報。
    發(fā)表于 12-02 15:59 ?1次下載

    基于Gboard Pro 800的森林火災探測系統(tǒng)

    在這個項目中,在 Arduino UNO 和 GSM Shield 的幫助下構建了一個森林火災探測系統(tǒng),用于 SMS 警報。
    發(fā)表于 12-06 10:11 ?0次下載

    TinyML空中森林火災探測

    電子發(fā)燒友網(wǎng)站提供《TinyML空中森林火災探測.zip》資料免費下載
    發(fā)表于 02-09 11:06 ?0次下載
    TinyML空中<b class='flag-5'>森林火災</b>探測

    地物光譜儀在森林火災監(jiān)測中的應用

    森林火災是全球性的生態(tài)問題,對于人類和自然環(huán)境都構成重大威脅,因此及時有效的火災監(jiān)測和管理至關重要。本文將討論地物光譜儀在森林火災監(jiān)測中的應
    的頭像 發(fā)表于 07-24 16:16 ?920次閱讀
    地物光譜儀在<b class='flag-5'>森林火災</b><b class='flag-5'>監(jiān)測</b>中的應用

    應用案例 | 基于STM32WL的森林火災探測解決方案,可實現(xiàn)戶外運行15年

    應用案例 | 基于STM32WL的森林火災探測解決方案,可實現(xiàn)戶外運行15年
    的頭像 發(fā)表于 09-28 17:40 ?1700次閱讀
    應用案例 | 基于<b class='flag-5'>STM32</b>WL的<b class='flag-5'>森林火災</b>探測解決方案,可實現(xiàn)戶外運行15年

    基于ZigBee的森林火災監(jiān)測系統(tǒng)設計

    電子發(fā)燒友網(wǎng)站提供《基于ZigBee的森林火災監(jiān)測系統(tǒng)設計.pdf》資料免費下載
    發(fā)表于 10-23 09:07 ?4次下載
    基于ZigBee的<b class='flag-5'>森林火災</b><b class='flag-5'>監(jiān)測</b><b class='flag-5'>系統(tǒng)</b>設計

    森林火災智能監(jiān)測攝像機:守護綠色的屏障

    在保護森林資源、預防森林火災方面,科技力量發(fā)揮著越來越重要的作用。森林火災智能監(jiān)測攝像機作為一雙智慧的“眼睛”,全天候守護著林區(qū)安全,成為林區(qū)安全管理的得力助手。
    的頭像 發(fā)表于 07-17 10:46 ?1093次閱讀
    <b class='flag-5'>森林火災</b>智能<b class='flag-5'>監(jiān)測</b>攝像機:守護綠色的屏障