文章目錄
- 1.1 項目介紹
-
-
- 【1】開發背景
- 【2】實現需求
- 【3】項目硬件模塊組成
- 【4】設計意義
- 【5】國內外研究現狀
- 【6】摘要
- 1.2 系統總體設計
-
- 【1】系統功能需求分析
- 【2】系統總體方案設計
- 【3】系統工作原理
- 1.3 系統框架圖
- 1.4 系統功能總結
- 1.5 系統原理圖
- 1.6 實物圖
- 1.7 模塊的技術詳情介紹
-
- 【1】NBIOT-BC26模塊
- 【2】MQ2氣體傳感器
- 【3】火焰檢測模塊
- 【4】蜂鳴器模塊
- 【5】人體感應傳感器
- 【6】電磁鎖
- 【7】MQTT協議
- 1.8 參考文獻
-
- 二、硬件選型
-
- 2.1 STM32開發板+LCD顯示屏
- 2.2 USB下載線
- 2.3 電力信息采集
- 2.4 PCB板
- 2.5 BC26 NBIOT模塊
- 2.6 母對母杜邦線
- 2.7 電源擴展板
- 2.8 MQ2煙霧傳感器
- 2.9 火焰傳感器
- 2.10 電磁鎖
- 2.11 人體感應-熱釋電模塊
- 2.12 穩壓模塊
- 2.13 電源插頭
- 2.14 蜂鳴器模塊
- 2.15 繼電器
- 2.16 電機馬達
- 2.17 USB母頭)
- 三、部署華為云物聯網平臺
-
- 3.1 物聯網平臺介紹
- 3.2 開通物聯網服務
- 3.3 創建產品
-
- (1)創建產品
- (2)填寫產品信息
- (3)產品創建成功
- (4)添加自定義模型
-
-
- 【1】創建服務ID
- 【2】MQ2 煙霧檢測 浮點數類型
- 【3】Flame 火焰檢測 Bool類型
- 【4】Lock 門磁控制 Bool類型
- 【5】voltage 電壓 浮點數類型
- 【6】current 電流 浮點數類型
- 【7】power 功率 浮點數類型
- 【8】HumanBody_Flag 人體檢測
-
- (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 修改設備屬性
- 四、 NBIOT模塊調試過程
-
- 4.1 模塊調試接線
- 4.2 測試模塊
- 4.3 上電初始化操作
- 4.4 開啟GPS定位
- 4.5 連接MQTT服務器
- 4.6 完整的AT指令操作過程
- 4.7 NBIOT模塊的流量如何查詢?
- 五、Qt開發入門與環境搭建
-
- 5.1 Qt是什么?
- 5.2 Qt版本介紹
- 5.3 Qt開發環境安裝
- 5.4 開發第一個QT程序
- 5.5 調試輸出
- 5.6 QT Creator常用的快捷鍵
- 5.7 QT幫助文檔
- 5.8 UI設計師使用
- 5.9 按鈕控件組
- 5.10 布局控件組
- 5.11 基本布局控件
- 5.12 UI設計師的布局功能
- 六、上位機開發
-
- 6.1 Qt開發環境安裝
- 6.2 新建上位機工程
- 6.3 切換編譯器
- 6.4 編譯測試功能
- 6.5 設計UI界面與工程配置
-
- 【1】打開UI文件
- 【2】開始設計界面
- 6.6 設計代碼
-
- 【1】獲取token
- 【2】獲取影子數據
- 【3】解析數據更新界面
- 【4】判斷設備是否離線
- 【5】獲取設備最新數據上傳時間
- 6.7 編譯Windows上位機
- 6.8 配置Android環境
-
- 【1】選擇Android編譯器
- 【2】創建Android配置文件
- 【3】配置Android圖標與名稱
- 【3】編譯Android上位機
- 6.9 模擬設備聯調(仿真)
- 七、STM32代碼設計
-
- 7.1 硬件連線說明
- 7.2 硬件原理圖
- 7.3 硬件組裝過程
- 7.4 硬件實物圖
- 7.5 KEIL工程
- 7.6 程序下載
- 7.7 程序正常運行效果
- 7.8 取模軟件的使用
- 7.9 NBIOT與服務器通信
- 7.10 硬件初始化
- 7.11 NBIOT-初始化
-
- 代碼分析
- 關鍵功能總結
- 7.12 LCD界面顯示
- 7.13 按鍵邏輯代碼
-
- 代碼分析
- 關鍵功能總結
- 代碼特點
- 7.14 數據采集與顯示
-
- 代碼結構及邏輯分析
-
- (1)輪詢計時器的處理
- (2)人體感應檢測
- (3)煙霧檢測
- (4)火焰檢測
- (5)報警控制
- (6)獲取煙霧濃度數據
- (7)電力數據采集
- (8)顯示數據到LCD
- (9)數據上傳到云端
- 關鍵功能總結
- 7.15 上位機下發命令處理
-
- 代碼結構及邏輯分析
-
- (1)檢查接收標志
- (2)向串口 1 打印接收到的數據
- (3) 解析命令并進行控制
- (4)重置接收計數器和標志
- 關鍵功能總結
- 7.16 電流、功率超標切斷電源
- 八、使用STM32代碼的流程以及注意事項
-
- 8.1 第1步
- 8.2 第2步
- 8.3 第3步
- 九、代碼移植更改
-
- 【1】STM32代碼
- 【2】Qt上位機代碼
- 十、完整STM32的main.c代碼
基于STM32+NBIOT設計的宿舍安防控制系統
1.1 項目介紹
【1】開發背景
隨著社會的發展和技術的進步,人們對居住環境的安全性和智能化水平提出了更高的要求。特別是在校園宿舍這樣的集體生活環境里,由于人員密集且流動性大,傳統的安防措施已經難以滿足現代安全標準的需求。為了提高宿舍區的安全防范能力,減少安全隱患,本項目提出了一套基于STM32微控制器與NBIoT(窄帶物聯網)通信技術相結合的宿舍安防控制系統。
該系統的設計理念是將物聯網技術應用于日常生活中,通過集成多種傳感技術來實現對宿舍環境的全方位監控,并能夠及時響應各種異常情況,從而達到預防火災、防盜、節能等多重目的。例如,在發生火災初期,通過安裝于宿舍內的煙霧及火焰傳感器可以迅速感知火情并發出警報;同時,系統還能