Appearance
提示
当前模拟的整个过程上报数据;与真实设备RTU/DTU上报数据的原理一样;
【RTU/DTU】作为网关设备,具有网络传递功能,负责发送/接收数据;
【温湿度传感器】是属于网关子设备,【温湿度传感器】通过串口连接到【RTU/DTU】。
MQTT 全称是 Message Queuing Telemetry Transport,MQTT 是一种基于客户端与服务端架构的发布/订阅模式的消息传输协议。与 HTTP 协议一样,MQTT 协议也是应用层协议,MQTT 最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。设备可以作为客户端的形式通过它来发布和接收消息,实现数据上报和实时控制。
通过 MQTT 上报数据 ¶
为了方便演示,我们使用 MQTT-Explorer 来模拟设备端与 ThingsKit 建立 MQTT 连接以及上报数据。
MQTT-Explorer下载地址,见上一篇文章,准备工作。
接上一篇;连接成功
下图为设备连接成功的状态;从图中我们不难看出 “Publish”处,作为上报数据;上报数据需要 “ Topic ”和 “ json内容 ”。
接上一篇,咱们创建的是网关设备;所以这里咱们上报数据的逻辑则是由网关子设备上报数据。
提示:网关设备与网关子设备区别
网关设备:能够直接连接物联网平台的设备,且具有子设备管理功能,能够代理子设备连接云端。
网关子设备:本质上也是设备。子设备不能直接连接物联网平台,只能通过网关连接。
接下就是找到 “ 网关子设备 ”的 配置 “ Topic ”和 “ json内容 ”
准备好,网关子设备上报平台的“ Topic ”:
v1/gateway/telemetry
1
平台产品详情中也有体现,见下图:
接下来是准备 网关子设备 上报平台的 Json 格式为:
{
"温湿度传感器": [
{
"shidu":49.2,
"wendu":23.7
}
]
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
PS:如果是 直连设备,上报到平台的Json格式为:
{
"shidu":49.2,
"wendu":23.7
}
1
2
3
4
2
3
4
“ Topic ”和 “ json内容 ” 已经准备好;
在MQTT-Explorer,推送一下数据;单击 “ PUBLISH ” 【发布】;
回到,平台界面;不难看出,平台已经自动创建了一条【温湿度传感器】;见下图
说明数据已经发送成功,设备类型为网关子设备,所属产品为default;
提示
所属产品为default ;它是平台默认创建,属于MQTT的网关子设备一类。
所以,此时咱们需要创建一个,温湿度传感器 的 网关子设备 产品。
创建 【温湿度传感器】 产品 操作步骤 ¶
接下来我们开始创建 “ 温湿度传感器产品 ”,操作步骤如下:
- 单击“设备管理”下的“产品”;
- 进入产品列表页,单击“新增产品”按钮;
在弹出的“新增产品”框,操作步骤如下:
- 选择设备类型“网关子设备”;【PS:因为我们的温湿度传感器是属于网关子设备】
- 填写“产品名称”
- 单击“确认”按钮,即可完成产品创建。
提示
由于咱们平台,默认的协议为MQTT;所以这里没有点击下一步去选择协议;如果是TCP则需要点击下一步。
温湿度传感器产品 创建成功,效果见如下图:
增加物模型 ¶
为 【温湿度传感器产品】增加物模型 操作步骤 ¶
接下来我们为 **“ 温湿度传感器产品 ”**增加物模型,操作步骤如下:
- 单击“温湿度传感器产品”的“详情”按钮;
- 进入产品详情弹出框,单击“物模型管理”标签页;
- 然后,单击“编辑物模型”;进行物模型的编辑操作;
接下来,为“温湿度传感器产品” 增加物模型具体的属性;操作步骤如下:
- 单击“新增物模型”按钮
为“温湿度传感器产品” 增加 温度和湿度 属性
由于MQTT上报的标识为 【wendu】;这里咱们用物模型转换为中文名称【温度】;
由于MQTT上报的标识为 【shidu】;这里咱们用物模型转换为中文名称【湿度】;
两个属性添加成功;接下来,需要将物模型发布上线。
状态,则由之前的“待发布”;变为“已发布”;
物模型准备就绪;回到设备列表页;
把 【温湿度传感器】这个网关子设备,将原来的 【Default产品】修改为【温湿度传感器产品】;
这样咱们刚刚准备的温湿度传感器产品 下的物模型,也会生效。
找到“温湿度传感器”的“编辑”按钮;单击打开;
调整所属产品;由【原来的Default产品】改为 【温湿度传感器产品】;
由于【温湿度传感】是属于网关子设备;产品发送了变化;重新选择一下 网关设备 【MQTT网关设备】
单击“确认”;修改完成。
查看设备数据 ¶
提示
对于设备列表中的两个设备,再次提示一下;【温湿度传感器】是网关子设备;它是属于【MQTT网关设备】的子设备。
查看网关子设备的数据 ¶
接下来,回到设备列表页面,查看实时上报的数据;
- 进入【设备列表】页面
- 单击【温湿度传感器】的【详情】按钮
单击详情之后,进入【温湿度传感器】的详情弹出框
单击“物模型数据”;切换到【物模型数据】标签页;即可看到【MQTT - Explorer】推送过来的实时数据。