文章目錄
- 一、前言
-
- 1.1 項目介紹
-
- 【1】項目開發背景
- 【2】設計實現的功能
- 【3】項目硬件模塊組成
- 【4】設計意義
- 【5】國內外研究現狀
- 【6】摘要
- 1.2 設計思路
- 1.3 系統功能總結
- 1.4 開發工具的選擇
-
- 【1】設備端開發
- 【2】上位機開發
- 1.5 參考文獻
- 1.6 系統框架圖
- 1.7 系統原理圖
- 1.8 實物圖
- 1.9 模塊的技術詳情介紹
-
- 【1】合宙Air724UG 4G模塊
- 【2】BH1750傳感器
- 【3】SHT30溫濕度模塊
- 【4】MQ135氣體傳感器
- 【5】GPS模塊
- 【6】MQTT協議
- 二、硬件選型
-
- 2.1 STM32開發板
- 2.2 USB下載線
- 2.3 杜邦線(2排)
- 2.4 OLED顯示屏(SPI協議7針)
- 2.5 GPS模塊
- 2.6 Air724UG 4G模塊
- 2.7 LED白色路燈模塊
- 2.8 BH1750光敏傳感器
- 2.9 人體感應-熱釋電模塊
- 2.10 SHT30溫濕度模塊
- 2.11 MQ135空氣質量檢測
- 2.12 獨立按鍵
- 2.13 洞洞板
- 2.14 太陽能充電板【可選】
- 2.15 電源擴展板
- 三、部署華為云物聯網平臺
-
- 3.1 物聯網平臺介紹
- 3.2 開通物聯網服務
- 3.3 創建產品
-
- (1)創建產品
- (2)填寫產品信息
- (3)產品創建成功
- (4)添加自定義模型
-
-
- 【1】創建服務ID
- 【2】環境溫度 SHT30_T 浮點數
- 【3】環境濕度 SHT30_H 浮點數
- 【4】HumanBody_Flag 人體感應 0無人 1有人
- 【5】BH1750 環境光強 浮點數
- 【6】LED_SW 路燈開關 布爾類型 1開 0關
- 【7】MQ135 空氣質量 浮點數
- 【8】LED_SW_Flag 路燈的狀態 布爾類型 1故障 0正常
- 【9】SOS_Info SOS緊急求助 布爾類型 1求助 0正常
- 【10】gps_lng 經度定位信息 浮點數類型
- 【11】gps_lat 緯度定位信息 浮點數類型
- 【12】mode_type 運行模式 整型枚舉 1自動 0手動
-
- (5)創建完成
- 3.4 添加設備
-
- (1)注冊設備
- (2)根據自己的設備填寫
- (3)保存設備信息
- (4)設備創建完成
- (5)設備詳情
- 3.5 MQTT協議主題訂閱與發布
-
- (1)MQTT協議介紹
- (2)華為云平臺MQTT協議使用限制
- (3)主題訂閱格式
- (4)主題發布格式
- 3.6 MQTT三元組
-
- (1)MQTT服務器地址
- (2)生成MQTT三元組
- 3.7 模擬設備登錄測試
-
- (1)填入登錄信息
- (2)打開網頁查看
- (3)MQTT登錄測試參數總結
- 3.8 項目憑證
- 3.9 創建IAM賬戶
- 3.10 獲取影子數據
- 3.11 修改設備屬性
- 四、Qt開發入門與環境搭建
-
- 4.1 Qt是什么?
- 4.2 Qt版本介紹
- 4.3 Qt開發環境安裝
- 4.4 開發第一個QT程序
- 4.5 調試輸出
- 4.6 QT Creator常用的快捷鍵
- 4.7 QT幫助文檔
- 4.8 UI設計師使用
- 4.9 按鈕控件組
- 4.10 布局控件組
- 4.11 基本布局控件
- 4.12 UI設計師的布局功能
- 五、上位機開發
-
- 5.1 Qt開發環境安裝
- 5.2 新建上位機工程
- 5.3 切換編譯器
- 5.4 編譯測試功能
- 5.5 設計UI界面與工程配置
-
- 【1】打開UI文件
- 【2】開始設計界面
- 5.6 設計代碼
-
- 【1】獲取token
- 【2】獲取影子數據
-
- (1)獲取當前時間并更新界面上的時間標簽
- (2)設置請求URL和初始化網絡請求
- (3)構造API請求URL
- (4)設置請求的頭部信息
- (5)設置請求URL并發送請求
- (6)總結
- 【3】解析數據更新界面
-
-
- (1)**設備屬性查詢 (function_select == 0)**
- (2)**接收并解析 JSON 數據**
- (3)**解析 JSON 對象**
- (4)提取和解析設備狀態數據
- (5)**提取具體的設備屬性數據**
- (6)**時間處理和顯示**
- (7)**數據顯示和界面更新**
- (8)**根據數據值調整顯示樣式**
- (9)**設備離線狀態判斷**
- (10)**更新 UI 控件的狀態**
- (11) **界面更新方法**
- (12)總結
-
- 5.5 編譯Windows上位機
- 5.6 配置Android環境
-
- 【1】選擇Android編譯器
- 【2】創建Android配置文件
- 【3】配置Android圖標與名稱
- 【4】編譯Android上位機
- 5.7 設備仿真調試
- 六、 Air724UG 模塊調試過程
-
- 6.1 官方文檔
- 6.2 模塊調試接線
- 6.3 串口調試過程
-
- 【1】AT命令
- 【2】讀取模塊廠商信息
- 【3】讀取詳細的固件版本
- 【4】查詢卡是否插好
- 【5】查詢信號質量
- 【6】查詢網絡注冊狀態
- 【5】查詢模組是否注冊上GPRS網絡
- 【6】查詢附著GPRS網絡
- 七、硬件開發
-
- 7.1 硬件連線
- 7.2 硬件原理圖
- 7.3 硬件組裝過程
- 7.4 硬件實物圖
- 7.5 KEIL工程截圖
- 7.6 程序下載
- 7.7 程序正常運行效果
- 7.8 取模軟件的使用
- 7.9 4G模塊與服務器通信
-
- (1)**組合JSON報文數據**
- (2)**上報數據到云平臺**
- (3)**判斷數據上傳是否成功**
- (4)總結
- 7.10 硬件初始化
-
- (1)**釋放PA15**
- (2)**按鍵初始化**
- (3)**LED燈初始化**
- (4)**串口1初始化(用于打印)**
- (5)**ADC初始化**
- (6)**初始化定時器,輸出PWM信號**
- (7)**默認關燈**
- (8)**紅外熱釋電模塊初始化**
- (9)**環境溫濕度傳感器初始化(SHT30)**
- (10)**環境光強檢測模塊初始化(BH1750)**
- (11)**串口2初始化(用于與4G模塊通信)**
- (12)**定時器2初始化(輔助串口2接收)**
- (13)**串口3初始化(用于接收GPS模塊數據)**
- (14)**定時器3初始化(輔助串口3接收)**
- (15)**定時器4初始化(用于人體檢測傳感器濾波算法)**
- (16)**OLED顯示屏初始化**
- (17)**OLED清屏**
- (18)**刷新OLED屏幕數據**
- (19)總結
- 7.11 4G模塊-初始化
-
- (1)**OLED清屏并顯示初始化信息**
- (2)**重試次數初始化**
- (3)**檢測Air724UG 4G模塊硬件是否正常**
- (4)**4G模塊初始化**
- (5)**4G網絡通訊服務初始化**
- (6)**MQTT協議初始化**
- (7)**MQTT主題訂閱**
- (8)總結
- 7.12 數據采集與顯示
-
- (1)**時間計數器控制** (`time_cnt > 150`)
- (2)**LED指示燈控制**
- (3)**空氣質量采集** (MQ135)
- (4)**溫濕度數據采集** (SHT30)
- (5)**光強度數據采集** (BH1750)
- (6)**人體檢測** (紅外熱釋電傳感器)
- (7)**自動模式下的路燈亮度調節**
- (8)**路燈故障檢測**
- (9)**OLED顯示更新**
- (10)**數據上傳到MQTT云端**
- (11)總結
- 7.13 按鍵代碼
-
- (1)**按鍵掃描**
- (2)**切換顯示頁面**
- (3)**觸發緊急信號**
- (4)**模式切換**
- (5)**開關路燈**
- (6)**總結**
- 7.14 上位機命令處理
-
- (1)**接收 4G 模塊的數據**
- (2)**分析接收到的數據**
- (3)**路燈控制**
- (4)**模式切換**
- (5)**解析請求 ID**
- (6)**上報屬性修改響應**
- (7)**清理和標志位重置**
- (8)**總結**
- 7.15 GPS定位信息處理
-
- (1)**接收GPS模塊的數據**
- (2)**解析GPS數據**
- (3)**輸出經緯度信息**
- (4)**清理接收緩存**
- **(5)GPS 數據格式**
- (6)**總結**
- 八、使用STM32代碼的流程以及注意事項
-
- 8.1 第1步
- 8.2 第2步
- 8.3 第3步
- 九、代碼移植更改
-
- 【1】STM32代碼
- 【2】Qt上位機代碼
- 任務書
-
-
- 任務書
-
- 一、課題名稱
- 二、課題背景及意義
- 三、設計任務
- 四、設計內容
- 五、計劃安排
- 六、預期成果
- 七、指導教師意見
- 八、學生簽名
- 九、指導教師簽名
-
- 開題報告
-
-
-
- 一、項目背景與意義
- 二、研究現狀與發展趨勢
- 三、設計目標
- 四、技術方案
-
- (1)系統總體架構
- (2)硬件設計
- (3)軟件設計
- 五、創新點
- 六、預期成果
- 七、工作計劃
- 八、參考文獻
-
-
基于STM32設計的智慧路燈(華為云IOT)
一、前言
1.1 項目介紹
【1】項目開發背景
隨著智慧城市建設的快速推進,智慧路燈作為城市物聯網的重要組成部分,正逐漸成為城市基礎設施數字化改造的核心內容。傳統路燈存在能耗高、維護成本高、功能單一等問題,無法滿足現代城市對節能、環保和智能化管理的需求。因此,設計一款基于STM32的智慧路燈系統,不僅可以實現路燈的節能高效管理,還能提升城市整體管理水平,為智慧城市的發展奠定基礎。
本項目旨在通過STM32F103C8T6微控制器為核心,結合先進的傳感技術和無線通信技術,實現智慧路燈的多功能化和智能化管理。通過整合環境溫度、濕度、光照強度、空氣質量的實時監測功能,可以為市政部門