物聯網平臺提供設備上云、設備上報消息、云端訂閱設備消息、云端下發指令到設備等服務,本文以路燈設備接入物聯網平臺為例,介紹設備如何接入物聯網平臺,及如何從物聯網平臺控制設備開關,幫助您快速了解物聯網平臺的基礎能力。
準備工作
開始接入設備前,您需要做如下準備:
- 開通物聯網平臺服務。
- 準備C語言開發環境。本文中設備端開發是在Linux下,使用阿里云提供的C語言SDK進行開發。
- 準備Java開發環境。本文中服務端下發指令,使用物聯網平臺的在線調試功能;服務端接收設備消息,使用Java語言的AMQP SDK。
本文使用Java開發如下:
- 操作系統:Windows 10 64位
- JDK版本:JDK8
- 集成開發環境:IntelliJ IDEA社區版
消息通信流程
上圖中序號對應以下操作步驟:
- 設備上報數據到阿里云物聯網平臺。
- 創建產品與設備:在物聯網平臺上為設備注冊一個身份,獲取設備證書信息(ProductKey、DeviceName和DeviceSecret)。該證書信息將燒錄到設備上,用于設備連接物聯網平臺時,進行身份認證。
- 為產品定義物模型:可以從屬性、服務和事件三個維度定義產品功能。物聯網平臺根據您定義的功能構建出產品的數據模型,用于云端與設備端進行指定數據通信。
- 建立設備與平臺的連接:開發設備端SDK,傳入設備的證書信息,將設備連接到物聯網平臺,使設備激活。
- 服務端訂閱設備消息:服務端通過訂閱消息類型,接收設備相關消息,如設備上下線通知、設備生命周期變更、設備上報消息等。
- 云端下發指令:使用物聯網平臺的在線調試功能,從控制臺下發指令到設備端。