MQTT.fx实现(MQTT Client)连接物联网平台(ThingsCloud )

目录

概述

[1 ThingsCloud平台介绍](#1 ThingsCloud平台介绍)

[2 ThingsCloud创建项目](#2 ThingsCloud创建项目)

[2.1 创建项目](#2.1 创建项目)

[2.2 创建数据类型](#2.2 创建数据类型)

[2.3 创建设备类型](#2.3 创建设备类型)

[3 发布和订阅主题](#3 发布和订阅主题)

[3.1 发布Topic](#3.1 发布Topic)

[3.2 订阅主题Topic](#3.2 订阅主题Topic)

[4 使用MQTT.fx 测试ThingsClond](#4 使用MQTT.fx 测试ThingsClond)

[4.1 使用MQTT.fx连接ThingsClond](#4.1 使用MQTT.fx连接ThingsClond)

[4.2 MQTT.fx 订阅ThingsCloud Message](#4.2 MQTT.fx 订阅ThingsCloud Message)

[4.2.1 订阅下发属性](#4.2.1 订阅下发属性)

[4.2.2 使用MQTT.fx接收属性数据](#4.2.2 使用MQTT.fx接收属性数据)

[4.3 MQTT.fx 发布messge至ThingsCloud](#4.3 MQTT.fx 发布messge至ThingsCloud)

[4.3.1 定义属性数据](#4.3.1 定义属性数据)

[4.3.2 使用MQTT.fx发布属性数据](#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 上订阅这种类型的数据,其定义如下:

TypeScript 复制代码
attributes/push

ThingsCloud下发的数据类型如下:

TypeScript 复制代码
{
    "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,属性规则如下:

TypeScript 复制代码
attributes

消息内容必须是 JSON 格式,如果不是 JSON 格式的消息,设备会被云平台主动断开连接。 该属性对应的上报消息如下:

TypeScript 复制代码
{
    "temperature": 28.5,
    "light": 2000,
    "switch": true
}
复制代码

4.3.2 使用MQTT.fx发布属性数据

在MQTT.fx的publish页面填写属性信息和要发布的数据,点击Publish后,MQTT.fx立即发布了数据。

在ThingsCloud平台上,可以看见页面上显示的数据,和MQTT.fx发布的数据一致

相关推荐
深圳市青牛科技实业有限公司 小芋圆5 小时前
开关电源特点、分类、工作方式
前端·科技·单片机·物联网·分类·数据挖掘·新能源
电子科技圈7 小时前
芯科科技蓝牙、Wi-Fi、Wi-SUN产品广获业界认可,技术创新引领行业潮流
科技·mcu·物联网·iot
极客小张7 小时前
基于STM32的智慧农业控制系统设计:python可视化、UART、I2C、TCP/HTTP技术
python·stm32·单片机·物联网·tcp/ip·毕业设计·课程设计
html组态11 小时前
web组态可视化编辑器
前端·物联网·编辑器·web组态·组态·组态软件
中科岩创13 小时前
中科岩创桥梁自动化监测解决方案
大数据·网络·物联网
豪宇刘1 天前
MyBatis的面试题以及详细解答二
java·servlet·tomcat
中科岩创1 天前
中科岩创边坡自动化监测解决方案
大数据·网络·物联网
Rinai_R1 天前
计算机组成原理的学习笔记(7)-- 存储器·其二 容量扩展/多模块存储系统/外存/Cache/虚拟存储器
笔记·物联网·学习
老刘莱国瑞1 天前
STM32 与 AS608 指纹模块的调试与应用
python·物联网·阿里云
三月七(爱看动漫的程序员)1 天前
HiQA: A Hierarchical Contextual Augmentation RAG for Multi-Documents QA---附录
人工智能·单片机·嵌入式硬件·物联网·机器学习·语言模型·自然语言处理