继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

10分钟物联网设备接入阿里云IoT平台

wongxming
关注TA
已关注
手记 4
粉丝 5
获赞 44
1. 准备工作

1.1 注册阿里云账号

使用个人淘宝账号或手机号,开通阿里云账号,并通过实名认证(可以用支付宝认证)

1.2 免费开通IoT物联网套件

产品官网 https://www.aliyun.com/product/iot

Screen Shot 2018-06-01 at 13.53.55.png | center | 569x357

1.3 软件环境

Nodejs安装 https://nodejs.org/en/download/
编辑器 sublimeText/nodepad++/vscode

2. 开发步骤

2.1 云端开发

1) 创建高级版产品

image.png | left | 747x253

2) 功能定义,产品物模型添加属性

image.png | left | 747x186

3) 注册设备,获得身份三元组

image.png | left | 747x188

2.2 设备端开发

我们以nodejs程序来模拟设备,建立连接,上报数据。

1) 应用程序目录结构

image.png | left | 412x159

2) package.json添加阿里云IoT套件sdk依赖

{
  "name": "aliyun-iot",
  "dependencies": {
    "aliyun-iot-mqtt": "^0.0.4"
  },
  "author": "wongxming",
  "license": "MIT"
}

下载安装SDK

$npm install

3) 模拟设备thermometer.js代码

/**
"dependencies": { "aliyun-iot-mqtt": "^0.0.4" }
*/
const mqtt = require('aliyun-iot-mqtt');
//设备属性
const options = {
    productKey: "产品productKey",
    deviceName: "设备deviceName",
    deviceSecret: "设备的secret",
    regionId: "cn-shanghai"
};
//建立连接
const client = mqtt.getAliyunIotMqttClient(options);

//属性上报的Topic
const topic = `/sys/${options.productKey}/${options.deviceName}/thing/event/property/post`;
setInterval(function() {
    //发布数据到topic
    client.publish(topic, getPostData());
}, 5 * 1000);

function getPostData(){
    const payloadJson = {
        id: Date.now(),
        params: {
            temperature: Math.floor((Math.random() * 20) + 10),
            humidity: Math.floor((Math.random() * 20) + 60)
        },
        method: "thing.event.property.post"
    }

    console.log("===postData topic=" + topic)
    console.log(payloadJson)

    return JSON.stringify(payloadJson);
}
3. 启动运行

3.1 设备启动

$node thermometer.js

3.2 云端查看设备运行状态

image.png | left | 602x225

打开App,阅读手记
5人推荐
发表评论
随时随地看视频慕课网APP

热门评论

如果想从物联网平台上获取这些数据怎么办?

查看全部评论