天天看點

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

第一步 建立産品

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲
裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲
裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

第二步 定義物模型

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲
裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲
裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲
裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲
裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

第三步 建立裝置

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲
裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

完成三步之後就可以進行裝置模拟上雲啦!

第四步 裝置上雲

第一種方案,利用Node.js進行上雲

完整流程可參考此文檔

https://help.aliyun.com/document_detail/189226.html?spm=a2c4g.11186623.6.573.5d52712dyEFako

第一步:下載下傳安裝node.js

https://nodejs.org/en/download/?spm=a2c4g.11186623.2.7.60213acbG0fqIo

點選上方連結進行下載下傳

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

安裝成功後,打開CMD視窗,通過以下指令檢視node版本。

windows電腦:

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

Mac電腦:打開終端即可,打開桌面搜尋終端

在終端中輸入node --version,檢視相應node版本。

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

第二步重點步驟:編寫代碼

在本地計算機建立一個JavaScript檔案(例如iot_device.js),用來存放Node.js示例代碼,如沒有JS開發工具也沒關系,建立一個TXT文檔。

代碼如下:

const mqtt = require('aliyun-iot-mqtt');
// 1. 裝置身份資訊
var options = {
    productKey: "g34q2******",  
    deviceName: "hxt93489234",
    deviceSecret: "b42db5a4fb95deb947f61655ad******",
    host: "iot-cn-6ja1y******.mqtt.iothub.aliyuncs.com"
};
// 2. 建立MQTT連接配接
const client = mqtt.getAliyunIotMqttClient(options);
//訂閱雲端指令Topic
client.subscribe(`/g34q2******/hxt93489234/user/get`)
client.on('message', function(topic, message) {
    console.log("topic " + topic)
    console.log("message " + message)
})
setInterval(function() {
    // 3.定時上報溫濕度資料
    client.publish(`/sys/g34q2******/hxt93489234/thing/event/property/post`, getPostData(), { qos: 0 });
}, 5 * 1000);
function getPostData() {
    const payloadJson = {
        id: Date.now(),
        version: "1.0",
        params: {
            temperature: Math.floor((Math.random() * 20) + 10),
            humidity: Math.floor((Math.random() * 20) + 10)
        },
        method: "thing.event.property.post"
    }
    console.log("payloadJson " + JSON.stringify(payloadJson))
    return JSON.stringify(payloadJson);
}      

下方所示資料都要進行修改,

host:企業執行個體-執行個體詳情-檢視開發配置-公網終端節點。

三元組資訊:企業執行個體-裝置管理-裝置-Devicesecret-檢視

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

修改完後即可,TXT的同學,記得儲存好後,修改檔案字尾名,改為.js

第三步:下載下傳阿裡雲iot的mqtt庫

打開CMD/終端視窗,使用cd指令找到代碼檔案(XXX.Js)所在路徑,在該路徑下使用NPM指令下載下傳阿裡雲IoT的MQTT庫。

指令:npm install aliyun-iot-mqtt -S

下載下傳後的MQTT庫檔案如下圖所示

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

最後一步:運作代碼檔案(XXXX.js)

在CMD/終端視窗輸入如下指令,運作XXXX.js代碼,啟動裝置.

指令:node XXXX.js

如下圖則表示裝置運作成功,在往平台時時發送資料。

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲
裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲
裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

第二種方案,使用Mqtt模拟器進行上雲

第一步:下載下傳安裝模拟器

模拟器下載下傳位址:

https://developer.aliyun.com/article/781940

第二步:裝置三元組資訊,連接配接上雲

下載下傳安裝成功後,打開mqtt模拟器,設定完三元組資訊後,點選連接配接即可。

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

連接配接成功後,裝置就已經上雲了,但是在物模型上是不會上報任何資料的,隻是表示裝置上線了。

第三步:編寫topic上報資料(屬性)

topic:/sys/{productKey}/{deviceName}/thing/event/property/post

​topic中的productkey和devicename一定要改成自己的,括号不要!

如下圖中

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

具體的payload内容有固定格式,參考ALINK協定裡

https://help.aliyun.com/document_detail/89301.html?spm=a2c4g.11186623.6.738.18922437ArvRZZ
裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

簡單payload可參考:

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

點選發送後,雲平台會回複相關消息,code:200則為發送成功,可在雲平台物模型中檢視相關資料,日志中也可檢視。

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

第三種方案,使用線上裝置模拟器模拟上雲并實作資料上報

第一步:進入裝置模拟器

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

第二步:上報屬性即可

裝置模拟上雲——小白新手篇第一步 建立産品第二步 定義物模型第三步 建立裝置第四步 裝置上雲

相關屬性上報後,可新開一個頁面觀察裝置的屬性。

繼續閱讀