进入物联网虚拟仿真系统,拉入传感器并正确接好线后,双击配置仿真设备的随机值。



打开物联网虚拟仿真系统本地工具,开启HTTP Server的服务于HTTP端口后,即可看到数据存入客户端



在网页上搜索本地IP:8000的网址,即可看到JSON格式的仿真设备数据。

Node-RED作为数据传输中转站,处理数据将数据最后通过MQTT上传至迅通云平台。
如有网迅通GW56网关,即可直接进入Node-Red可视化编程。 如果没有要去官网下载本地Node-Red
本次案例实验使用的是网迅通GW56网关的可视化编程
首先进入Node-RED,通过HTTP进行GET请求读取仿真数据

拉入时间戳节点作为触发,HTTP节点读取,将数值打印出来。

双击HTTP节点进行配置

部署后即可看到仿真数值在调试窗口中打印出来。




模型类别
属性:大部分适用于只可读的传感器设备。设定整数或小数数据类型即为仪表盘展示。
功能:适用于控制设备,设定整数或小数数据类型即为滑杆发送数据。
模型特征
图表展示:设备详细中以图表方式显示
实时监测:实时显示监测数据,但是不会存储到数据库
只读数据:设备上报数据,但是平台不能下发指令
历史存储:设备上报的数据会存储到数据库作为历史数据
分享权限:设备分享时需要指定是否拥有该权限

导入完通用物模型后,发布产品。
根据上一节创建完产品后,我们可以创建设备。进入到产品管理,找到创建的产品点击查看设备。



创建产品详细操作可查看:
新增完后是未激活状态,当MQTT连接上后,就能自动激活
在 MQTT 接入方式中,设备需要和云平台建立 TCP 长连接,并通过 MQTT 协议特有的方式完成身份认证。当设备成功连接到云平台后,通过 发布 和 订阅 相应的 主题(Topic),来完成和云平台的消息通信。
已数据上报为例,如果采用 MQTT 方式上报,设备首先要和云平台建立MQTT连接,创建好设备后查看设备详情页,点击认证信息即可知道用户名、密码以及client ID。
点击认证信息,查看MQTT连接参数

{productId} 代表产品ID, {deviceNum} 代表设备编号。通过web端获取产品ID和设备编号,如果使用自动添加设备,设备编号可以使用唯一编码或者使用设备MAC地址,设备认证成功后会在后端自动添加一个对应的设备实体
例如简单认证的客户端ID组成
客户端Id等于 认证类型 + 设备编号 + 产品编号 + 用户ID
clientId = S & deviceNumber & productId & userId
迅通云的连接MQTT的地址为
mqtt:/cloud.rpdiot.com:1883
设备发布数据到云平台的主题为
/{productId}/{deviceNum}/property/post
发布数据 (实时显示,属性/功能和监测数据,可定时上报监测数据)
设备发布数据到云平台的格式为
发布数据和事件,对应主题:/{productId}/{deviceNum}/property/post可不上报remark
解释# 描述:属性、功能、事件都属于物模型,Json定义是一样的。`value` 的值如果是布尔类型,值为"0"或者"1",代表打开/关闭;枚举类型对应枚举项的键值(例如 "1",代表中速档位);数组类型是以英文逗号分隔的字符串。
# id 标识符,产品详情中查看物模型,对应物模型的标识符
# value 值,对应物模型中定义,以字符串类型传递
# remark 可以直接使用订阅到的备注信息,设备日志信息中查看到该备注
[{
"id": "gear",
"value": "1",
"remark": "档位设置成功"
}, {
"id": "switch",
"value": "0",
"remark": "开关已关闭"
}]
回到Node-RED拉入MQTT节点配置通信按照MQTT连接参数填写服务端信息,设备发布数据到云平台的主题



部署后显示已连接

迅通云平台也显示在线

配置数据上传格式,拉入函数节点将仿真设备数据转化成设备发布数据到云平台的格式



设备订阅云平台下发消息的主题为
/{productId}/{deviceNum}/function/get 平台订阅指令云平台下发的格式为
订阅平台指令,对应主题:/{productId}/{deviceNum}/function/get
解释# 描述:属性、功能、事件都属于物模型,Json定义是一样的。例如都订阅到消息打开开关,设备的处理都是把开关打开。
# id 标识符,产品详情中查看物模型,对应物模型的标识符
# value 值,对应物模型中定义,以字符串类型传递
# remark 平台中告警、场景联动和定时下发的指令有备注信息
[{
"id": "gear",
"value": "1",
"remark": "设备定时"
},{
"id": "switch",
"value": "0",
"remark": "场景联动触发"
}]
网迅通物联网虚拟仿真系统控制格式
{"设备名":{"value":数值}}
例如
{
"fan":{"value":1}
}
拉入MQTT订阅主题,选择相同的通信服务端,订阅对应主题:/{productId}/{deviceNum}/function/get

MQTT节点

函数节点

HTTP节点


