设备模拟上云——小白新手篇

简介: 简单了解设备模拟上云全过程

第一步 创建产品

1.png

2.png

3.png

第二步 定义物模型

4.png

5.png

6.png

7.png

8.png

第三步 创建设备

9.png

10.png

完成三步之后就可以进行设备模拟上云啦!

第四步 设备上云

第一种方案,利用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

点击上方链接进行下载

11.png

安装成功后,打开CMD窗口,通过以下命令查看node版本。

windows电脑:12.png

Mac电脑:打开终端即可,打开桌面搜索终端


在终端中输入node --version,查看相应node版本。

13.png

第二步重点步骤:编写代码

在本地计算机创建一个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-查看

14.png

修改完后即可,TXT的同学,记得保存好后,修改文件后缀名,改为.js

第三步:下载阿里云iot的mqtt库

打开CMD/终端窗口,使用cd命令找到代码文件(XXX.Js)所在路径,在该路径下使用NPM命令下载阿里云IoT的MQTT库。

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

下载后的MQTT库文件如下图所示15.png

最后一步:运行代码文件(XXXX.js)

在CMD/终端窗口输入如下命令,运行XXXX.js代码,启动设备.

命令:node XXXX.js

如下图则表示设备运行成功,在往平台时时发送数据。

16.png

17.png

18.png


第二种方案,使用Mqtt模拟器进行上云

第一步:下载安装模拟器

模拟器下载地址:

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


第二步:设备三元组信息,连接上云

下载安装成功后,打开mqtt模拟器,设置完三元组信息后,点击连接即可。

19.png

连接成功后,设备就已经上云了,但是在物模型上是不会上报任何数据的,只是表示设备上线了。


第三步:编写topic上报数据(属性)


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

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

如下图中

20.png

具体的payload内容有固定格式,参考ALINK协议里

https://help.aliyun.com/document_detail/89301.html?spm=a2c4g.11186623.6.738.18922437ArvRZZ

21.png

简单payload可参考:

22.png

点击发送后,云平台会回复相关消息,code:200则为发送成功,可在云平台物模型中查看相关数据,日志中也可查看。

23.png


第三种方案,使用在线设备模拟器模拟上云并实现数据上报

第一步:进入设备模拟器

24.png

第二步:上报属性即可

25.png

相关属性上报后,可新开一个页面观察设备的属性。

相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
前端开发 测试技术 UED
产品从0到1的全过程【新手小白必看】
产品从0到1的全过程【新手小白必看】
128 0
|
存储 弹性计算 大数据
阿里云服务器全方位介绍(看这一篇就够了)
阿里云服务器全方位介绍包括云服务器ECS优势、云服务器租用价格、云服务器使用场景及限制说明,阿里云服务器网分享云服务器ECS介绍、个人和企业免费试用、云服务器活动、云服务器ECS规格、优势、功能及应用场景详细你说明:
193 0
|
安全 Java 关系型数据库
新手初次使用服务器遇到的坑及解决方案
1.第一次在服务器上部署网站,外网无法访问 2.安全组开了端口后,依然无法访问 3.服务器上的数据库无法远程连接
540 0
新手初次使用服务器遇到的坑及解决方案
|
存储 弹性计算 人工智能
基础存储服务新手体验营
有奖体验!7月7日-7月20日活动期间,完成以下任意一个场景即可抢10元猫超卡!工作日每日10点发放30张,可提前完成任务,下个工作日10点来抢!先到先得!
202 0
基础存储服务新手体验营
|
弹性计算 缓存 对象存储
云服务器的体验过程和感受
计算机相关专业的学生,大学期间都会学习计算器网络、计算器操作系统等课程,然而这些课程学习起来多为理论,非常抽象,不少细节知识对于还没有还没接触过计算器底层的学生来说,理解起来都比较困难! 此时拥有自己的一台云服务器,将非常加深对所学知识的理解。
|
弹性计算 Linux 网络安全
【在家实践】准服务端开发ECS学习使用体验记录
笔者是机械研三的学生,自己在研究生期间自学后,在秋招拿到服务端开发的职位,确定工作之后想在就职前先预习下各种技术(没错我就是卷王,我只想卷死各位,或者被各位卷死(狗头))。其实在之前自学的时候已经接触过Linux系统,不过一直是在虚拟机里使用,而因为我从事的是游戏开发,又想用untiy做些客户端的工作开发,这就导致同时开虚拟机和unity时我的小笔电有些吃不消。所以准备把服务端的运行放在云上。几番比较以后,了解到阿里云的技术以及服务比相同产品优势大,所以果断先试用了一个月,最近放假在家一个月到期,但想继续学习使用,发现了【在家实践】这个学生(白嫖)活动,赶紧参与一手!!
【在家实践】准服务端开发ECS学习使用体验记录
|
弹性计算 Linux 云计算
阿里云学生机体验感受
云服务器ECS(Elastic Compute Service)是阿里云提供的性能卓越、稳定可靠、弹性扩展的IaaS(Infrastructure as a Service)级别云计算服务。云服务器ECS免去了您采购IT硬件的前期准备,让您像使用水、电、天然气等公共资源一样便捷、高效地使用服务器,实现计算资源的即开即用和弹性伸缩。
|
弹性计算 关系型数据库 MySQL
从零到一上手玩转云服务器体验报告
1,动手实战-初识上云基础,动手实操ECS云服务器新手上路 2,动手实战-上云必备环境准备,动手实操快速搭建LAMP环境 3,动手实战-云上多产品学习,使用ECS服务器部署MySQL数据库 4,动手实战-最佳应用实践,使用PolarDB和ECS搭建门户网站
从零到一上手玩转云服务器体验报告
|
弹性计算 算法 Ubuntu
使用云服务器辅助编程学习体验
本学期选修了南京大学面向对象编程基础这门课。课程主线是学习C++语言和面向对象编程技能,并利用云服务器ECS辅助教学。有了云服务器ECS的帮助,我们可以实现很多Linux上的编程实践。