目录
概述
1 ThingsCloud平台介绍
2 ThingsCloud创建项目
2.1 创建项目
2.2 创建数据类型
2.3 创建设备类型
3 发布和订阅主题
3.1 发布Topic
3.2 订阅主题Topic
4 使用MQTT.fx 测试ThingsClond
4.1 使用MQTT.fx连接ThingsClond
4.2 MQTT.fx 订阅ThingsCloud Message
4.2.1 订阅下发属性
4.2.2 使用MQTT.fx接收属性数据
4.3 MQTT.fx 发布messge至ThingsCloud
4.3.1 定义属性数据
4.3.2 使用MQTT.fx发布属性数据
概述
本文介绍了一个可以攻开发者免费试用的物联网平台ThingsCloud,并通过案例介绍使用这个平台创建项目,然后使用MQTT.fx工具实现订阅和发布数据。
1 ThingsCloud平台介绍
ThingsCloud 是新一代物联网设备统一接入平台,帮助企业在极短的时间内搭建个性化的物联网平台和应用,并适应不断变化的发展需求。目前广泛应用于制造、电力、能源、环境、农业、楼宇、家居、教育、交通、物流、自动化等领域。
ThingsCloud 可接入各类网关,传感器、执行器、控制器、通信模组、智能硬件等,实现数据采集、远程控制,数据分析、告警通知、智能联动。还可以零代码生成项目应用 SaaS 和用户应用 App,并开放 API 和实时消息,便于业务系统集成和扩展开发。
ThingsCloud 官网地址:
https://www.thingscloud.xyz/
进入官网地址后,点击"进入控制台"按钮,就可以创建自己的项目了
2 ThingsCloud创建项目
2.1 创建项目
ThingsCloud提供两种版本可供用户选择: 免费版 和 付费版 。但对于仅用于测试或者评估的开发者而言,免费版功能已经够用了。
免费版包含较少的设备数和消息量,以及部分高级功能的限制,但完全不影响您对物联网平台基本功能的评估和体验,以及硬件原型的开发,或少量设备的个人使用。一个用户账号下只可以创建一个免费版项目。
首次登录ThingsCloud后,需要创建自己的项目,才能使用它提供的服务。进入控制台后。看见如下页面,点击“创建项目” button就可以创建项目了。
下面我创建测试项目,实现功能:基于MQTT.fx测试平台搭建一个物联网项目,连接TingsCloud。通信协议:MQTT;实现功能:数据的发布和订阅。
具体操作步骤如下:
Step-1: 填写项目信息
2.2 创建数据类型
创建设备类型,定义订阅数据和发布数据的类型,这里我选择使用ThingsCloud标准协议,当然还有其他协议可供选择。
选择如下选项后,点击保存,数据类型定义完成
2.3 创建设备类型
在 ThingsCloud 中,设备代表一个物理设备在云平台对应的一个实体,这个物理设备可以是一个光照传感器或智能开关,也可以是一个智能水表或网关。
创建设备时,必须填写设备名称,并选择数据类型。
创建完毕之后,可以在如下页面中看见创建设备的信息
3 发布和订阅主题
3.1 发布Topic
以下主题用于 设备向云平台发布消息。 请注意,以下主题只能用于设备端发布消息,不能订阅。
消息类型 | 主题 |
---|---|
设备上报属性值 | attributes |
设备获取当前属性值 | attributes/get/ |
设备上报事件 | event/report/ |
设备回复命令 | command/reply/ |
设备自定义数据上报 | data/ |
3.2 订阅主题Topic
以下主题用于 设备接收云平台下发的消息。
消息类型 | 主题 | 注释 |
---|---|---|
接收属性上报的响应 | attributes/response | |
接收属性获取的响应 | attributes/get/response/+ | |
接收下发的属性 | attributes/push | |
接收事件上报的响应 | event/response/+ | |
接收下发的命令 | command/send/+ | |
接收命令回复的响应 | command/reply/response/+ | |
接收自定义数据下发 | data/< identifier>/set | 自定义数据相关主题中的 identifier,是指自定义数据流的标识符 |
4 使用MQTT.fx 测试ThingsClond
4.1 使用MQTT.fx连接ThingsClond
在ThingsClond上创建设备类型完毕之后,就可以使用MQTT.fx来连接ThingsClond平台,具体连接方法如下:
step-1: 在MQTT.fx上配置Broker address
step-2: 在MQTT.fx上配置用户认证信息
step-3: 确认参数配置后,点击connect连接平台,指示灯变成绿色说明,连接平台成功,这时可以使用MQTT.fx工具订阅或者发布message。
4.2 MQTT.fx 订阅ThingsCloud Message
4.2.1 订阅下发属性
在MQTT.fx 上订阅这种类型的数据,其定义如下:
attributes/push
ThingsCloud下发的数据类型如下:
{"switch": false
}
4.2.2 使用MQTT.fx接收属性数据
首先在MQTT.fx订阅下图标号为1的属性,订阅成功后,窗口会列出标号为2的信息,此时说明订阅属性成功。接下来可以在ThingsCloud平台上发布属性数据了。
在ThinsCloud平台上已经定义两个Relay类型的设备,现在使用期发布message。
使用Relay-1发布消息
使用Relay-2发布消息
4.3 MQTT.fx 发布messge至ThingsCloud
4.3.1 定义属性数据
发布如下属性的数据至ThingsCloud,属性规则如下:
attributes
消息内容必须是 JSON
格式,如果不是 JSON
格式的消息,设备会被云平台主动断开连接。 该属性对应的上报消息如下:
{"temperature": 28.5,"light": 2000,"switch": true
}
4.3.2 使用MQTT.fx发布属性数据
在MQTT.fx的publish页面填写属性信息和要发布的数据,点击Publish后,MQTT.fx立即发布了数据。
在ThingsCloud平台上,可以看见页面上显示的数据,和MQTT.fx发布的数据一致