陳拓 [email protected] 2019/12/14-2020/01/15
1. 概述
如何讓設備連接上雲?參考如下路徑。
本文以一個溫度傳感器爲例,演示創建產品、定義物模型、創建設備、虛擬設備調試,這幾部分。
2. 阿里雲開通
2.1 註冊阿里雲賬號
瀏覽器打開 https://aliyun.com ,開通阿里雲賬號,並通過支付寶實名認證。
登錄阿里雲
2.2 免費開通物聯網平臺
在產品分類,找到“物聯網平臺”。
點擊“查看詳情”。
立即開通。
3. 創建產品
使用物聯網平臺的第一步:在控制檯創建產品。產品是設備的集合,通常是一組具有相同功能定義的設備集合。例如:產品指同一個型號的產品,設備就是該型號下的某個設備。
下面我們以一個帶電燈開關和溫度預警的溫度傳感器爲例創建一個產品。
3.1 進入控制檯
點擊“控制檯”進入物聯網平臺的控制檯
3.2 創建產品
- 設備管理 > 產品
- 填寫創建產品表
保存。
3.3 定義物模型
- 產品 > 查看
- 功能定義
- 自定義功能 > 添加自定義功能
物模型將產品功能類型分爲三類:屬性、服務、和事件。定義了這三類功能,即完成了物模型的定義。
3.3.1 添加屬性
- 添加“臥室溫度”屬性
確認。
- 添加“臥室燈開關”屬性
點擊“確認”。
- 添加“溫度預警”屬性
點擊“確認”。
3.3.2 添加服務
添加一個輸入參數,點擊“增加參數”:
確認。
添加一個輸出參數,點擊“增加參數”:
確認,確認。
3.3.3 添加事件
事件分爲三種,信息、告警和故障,我們添加一個信息事件。
增加一個輸出參數:
確認,確認。
3.3.4 查看最後的結果
3.4 導出物模型
點擊“查看物模型”:
導出模型文件model.json以備後用。以後需要相同或類似的定義就可以通過“導入物模型”快速實現。
3.5 生成設備端代碼
點擊“生成設備端代碼”,可以下載一個以ProductKey命名的c語言程序,作爲編程參考。
4. 創建設備
在產品下注冊設備,獲得身份三元組
- 物聯網平臺 > 設備管理 > 設備
- 點擊“添加設備”
確認。
三元組:PublicKey、DeviceName、DeviceSecret
PublicKey:物聯網平臺爲產品頒發的唯一標識,在設備通信及認證中都要用到。
DeviceName:在註冊設備時,自定義的設備名稱,在通信及認證中都要用到。
DeviceSecret:物聯網平臺爲設備頒發的設備祕鑰,和DeviceName成對出現,在設備認證時會用。
一鍵複製:
{
"ProductKey": "a14U7TTbz9q",
"DeviceName": "BedroomTemp",
"DeviceSecret": "xxxxxxxxxxx"
}
- 點擊“關閉”
- 激活設備
點擊未激活旁邊的綠色開關2次:
已激活,狀態爲離線。
5. 調試虛擬設備
- 阿里雲物聯網平臺 > 監控運維 > 在線調試 > 調試虛擬設備
- 啓用虛擬設備
設備進入在線狀態:
5.1 屬性上報
- 如圖選擇,並直接輸入溫度值23.4和開關量。
- 推送
- 查看實時日誌
- 查看運行狀態
5.2 屬性調試
和屬性上報功能不同之處在於有反饋消息。
- 如圖選擇,並輸入JSON格式的數據{"RoomTemp": 20.5}
- 發送指令
- 查看實時日誌
比屬性上報多了雲端下發的反饋數據。
- 查看運行狀態
5.3 燈開關屬性調試
如圖選擇,並輸入JSON格式的數據{"RoomLamp": 1}
- 發送指令
- 查看實時日誌
- 查看運行狀態
5.4 服務調用
- 如圖選擇和輸入
- 發送指令
- 查看實時日誌
5.5 事件上報
- 如圖選擇並輸入
- 推送
- 查看實時日誌
- 查看事件管理
參考文檔:
- 自己寫微信小程序MQTT模擬器https://blog.csdn.net/chentuo2000/article/details/102507560
- 微信小程序MQTT模擬器 阿里雲物聯網平臺測試https://blog.csdn.net/chentuo2000/article/details/102216865
- 樹莓派連接阿里雲物聯網平臺-屬性(nodejs)https://blog.csdn.net/chentuo2000/article/details/103705694
- 樹莓派連接阿里雲物聯網平臺-服務(nodejs)https://blog.csdn.net/chentuo2000/article/details/103754860
- 樹莓派連接阿里雲物聯網平臺-訂閱(nodejs)https://blog.csdn.net/chentuo2000/article/details/103769449
- 樹莓派連接阿里雲物聯網平臺-事件(nodejs)https://blog.csdn.net/chentuo2000/article/details/103805559