1. 程式人生 > 其它 >201-STM32G070+Air724UG(4G)基本控制篇(阿里雲物聯網平臺)-裝置使用一機一密方式連線雲平臺,並使用物模型Topic上報溫溼度資料

201-STM32G070+Air724UG(4G)基本控制篇(阿里雲物聯網平臺)-裝置使用一機一密方式連線雲平臺,並使用物模型Topic上報溫溼度資料

<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/ZLIOTD/Air724UG/aliyun.html" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>

 

說明

這一節咱們使用平臺提供的物模型Topic把溫溼度資料展示在平臺上

為了是這一節可以單獨使用!故和前面有內容重複.

注意:如果使用者已經看了前面的  關於阿里雲物聯網平臺物模型Topic  章節,不需要在平臺上重複新增溫溼度功能!

 

 

 

 

給產品新增上溫溼度功能

1.點選產品,檢視

 

 

2.各個版本不一樣,阿里雲總是在更新.....

選擇功能定義  點選編輯草稿

 

 

 

3.新增自定義功能

 

 

 

4.新增一個溫度

使用者請先按照我下面的填寫,待熟悉以後再自己自定義

識別符號是 temp,咱通訊的時候作為溫度的欄位

 

5.再新增一個溼度

使用者請先按照我下面的填寫,待熟悉以後再自己自定義

識別符號是 humi,咱通訊的時候作為溼度的欄位

 

 

 

6.提交

 

 

 

7.回到裝置裡面

 

 

 

 

 

使用微控制器裝置測試

1.安裝好模組

GPRS模組和底板安裝說明

 

 

 

安裝到第三排排母!模組的第一個VCC引腳和底板的5V引腳相連線

 

 

WiFi模組和GSM模組都是串列埠2通訊, 為避免通訊衝突, 去掉下面的WiFi模組

 

2.開啟這節的微控制器程式

3.根據自己的裝置修改資訊,然後下載程式

 

 

4.使用usb口列印串列埠日誌

 

 

5.檢視日誌

連線上伺服器以後,每隔一段時間上報溫溼度資料

 

 

 

6.檢視網頁端

 

 

 

 

 

 

 

程式說明

1.整體概況

 

 

①:控制模組連線TCP伺服器(MQTT伺服器)

②:計算MQTT密碼

③:MQTT訊息處理封裝包(快取管理,支援訊息等級0,1,2)

④:使用Mbedtls裡面的sha1或者md5 計算密碼檔案

 

2.初始化MQTT,註冊相應的回撥函式

 

 

 

 

我編寫的包是以註冊回撥函式的形式使用.

 

 

 

 

4.先使用TCP連線上TCP伺服器(MQTT伺服器就是TCP伺服器嘛)

 

 

配置模組是TCP透傳模式,後面模組接收的資料直接通過串列埠輸出, 往模組串列埠傳送資料,資料直接發到TCP

 

 

 

 

 

5.連線上TCP以後,傳送連線MQTT協議(關於組合計算密碼在最後面會有詳細說明)

 

 

 

 

 

 

 

6.傳送連線協議給伺服器以後,如果伺服器返回連線成功訊息,便會呼叫MQTT連線成功回撥函式

 

在連線成功回撥函式裡面組合訂閱的物模型主題,並執行api函式訂閱;   組合釋出的物模型主題

 

7.連線上了以後就輪訓mqtt_send_function函式

咱們後面呼叫訂閱,釋出的函式的時候, 資料都會儲存在快取裡面, 然後通過輪訓 mqtt_send_function函式,把MQTT的資料傳送出去

 

 

 

這個函式裡面也實時檢測傳送心跳包.

 

 

 

 

8.接收訊息

連線MQTT成功以後收到的伺服器傳送的資料需要讓 mqtt_read_function函式處理, 該函式內部會處理訊息並呼叫相應的回撥函

 

 

 

 

9.輪訓傳送溫溼度資料給伺服器