STM32F103C8T6通過ESP8266連接阿里雲物聯網平臺

阿里雲lot Studio控制 Web開發(程序已精簡)

分享一下自己使用stm32f103c8t6通過ESP_01模塊連接阿里雲物聯網平臺,實現溫溼度上傳和控制命令下達的過程,能力有限,用的是最簡單的方法,如有錯誤,多多擔待。

一、成果展示 (三路數據上傳和兩路開關控制)

在這裏插入圖片描述

二、硬件選型

1、 stm32f103c8t6
2、ESP_01 wifi模塊
3、其他

三、硬件連接

WSP_01 STM32F103C8T6
RXD PA2
TXD PA3
RES PA4
VCC 3.3
GDN GND

連接圖如下:

在這裏插入圖片描述

四、連接步驟

1、登錄物聯網平臺,選擇:設備管理 --》產品 --》創建產品

在這裏插入圖片描述

2、創建新產品

產品名稱:隨便寫
所屬品類:智能生活/家居安防/溫溼度採集單元
其他的默認即可
在這裏插入圖片描述

3、設置產品的功能

功能定義 —》編輯草稿
在這裏插入圖片描述
點擊:添加自定義功能—》屬性
功能名稱(1):當前溫度
標識符:隨便寫 注:這個地方的標識符可以隨便寫,但是程序中,必須和這個標識符對應
數據類型:int 32 注:這個數據類型決定了顯示數據的精度,爲了提高精度,可以設置成float型
取值範圍:0-100
步長:1
單位:攝氏度
在這裏插入圖片描述
用類似的方法,定義另外一個功能—當前溼度
在這裏插入圖片描述
再定義一個指令下達的功能(這裏以控制開關燈爲例)
在這裏插入圖片描述

4、在新建立的產品下面,添加設備

設備名:隨便寫
注意:一定要在對應的產品下面

5、複製設備證書(重要)——需要修改的2處之一

在這裏插入圖片描述
此時,產品和設備就已經建立完成。設備的狀態是”未激活“。
在這裏插入圖片描述

6、激活設備

修改程序,將程序燒錄c8t6即可激活
程序改動1:mqtt.h (就是將剛剛複製的設備證書添加到對應的位置)

#define  PRODUCTKEY           "a1kpb6iULSE"                       //產品ID
#define  PRODUCTKEY_LEN       strlen(PRODUCTKEY)                  //產品ID長度
#define  DEVICENAME           "A001"                              //設備名  
#define  DEVICENAME_LEN       strlen(DEVICENAME)                  //設備名長度
#define  DEVICESECRE          "9gyc2OcDRamSN17bOdJrdWpmSgv8KqsN"  //設備祕鑰   
#define  DEVICESECRE_LEN      strlen(DEVICESECRE)  
                         
#define  S_TOPIC_NAME         "/sys/a1kpb6iULSE/A001/thing/service/property/set"   						//需要訂閱的主題  
#define  P_TOPIC_NAME         "/sys/a1kpb6iULSE/A001/thing/event/property/post"

程序改動2:wifi.h (改成自己的wifi名和密碼 )

#define SSID   "337"                     //路由器SSID名稱
#define PASS   "1234567890"              //路由器密碼

程序燒寫好以後,c8t6通過AT指令,控制ESP_01 wifi模塊連接到服務器
此時,設備顯示在線
在這裏插入圖片描述

7、創建web界面

在這裏插入圖片描述

8、新建空白項目

項目名稱:隨便寫
在這裏插入圖片描述

9、關聯產品和設備

在這裏插入圖片描述
在這裏插入圖片描述
此時,我們建立的Wed應用就和剛剛建立好的產品和設備之間相關聯了。

10、設計可視化界面 (用來顯示數據和下達指令)

在這裏插入圖片描述

11、界面設計

在這裏插入圖片描述
在這裏插入圖片描述
用同樣的方法,設計其他兩個界面即可

五、 結語

代碼粗糙,就不公開了。評論區留下郵箱,我會及時回覆

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章