4G DTU基于MQTT接入 ThingsCloud 物联网平台

这一次我们介绍的是来自网迅通公司的4G DTU,它支持通过 MQTT 接入 ThingsCloud,在很多用户的物联网项目中运行非常稳定。

ThingsCloud 上的准备工作

在实践中,我们通常将 DTU 作为透传网关,用于在 Modbus 子设备和云平台之间起到消息转发作用。这里我们使用 DTU 的 MQTT 透传方式,准备工作只需要以下几步:

  • 创建设备类型和设备。

  • 在设备类型中建立自定义数据流,用于在 MQTT 通信中透传 Modbus 消息。例如创建一个标识符为 stream 的自定义数据流。

    自定义数据流

  • 拿到设备的 MQTT 主机名、端口、证书。

    MQTT连接

DTU 设备端的配置

打开 DTU 的配置软件,连上串口,只需要填写以下几个部分:

  • 目标地址:填写 MQTT 主机名

  • 目标端口:填写 MQTT 端口

  • 设备账号:填写设备普通证书中的 AccessToken

  • 设备密码:填写设备普通证书中的 ProjectKey

  • ClientID:随意填写即可

  • 订阅主题:填写前边创建的自定义数据流的订阅 Topic(设备订阅云平台下发数据),本例中是 data/stream/set请以您实际创建的为准

  • 发布主题:填写前边创建的自定义数据流的发布 Topic(设备推送数据到云平台),本例中是 data/stream请以您实际创建的为准

  • 注册包:DTU使用MQTT不需要用到注册包

如下图:

DTU配置

DTU配置

写入配置后,提交更改,复位DTU模块,即可自动进入透传模式,和 ThingsCloud 建立连接。

连接 RS485 Modbus 传感器

这里我们给 DTU RS485 端口连接了 7 个 Modbus 传感器和2个Modbus执行器:

  • 温湿度传感器

  • 光照度传感器

  • 空气质量传感器

  • 红外对射传感器

  • 人体红外传感器

  • 门磁传感器

  • 烟雾传感器

  • 报警灯

  • 风扇

这些传感器为智能家居实现的实时监测,项目中使用了 ThingsCloud 控制台看板,以及为家庭成员分配 App 来查看负责家庭的环境和安防。

添加Modbus传感器

创建项目后,进入功能定义创建属性,根据数据类型和寄存器类型定义。如下图:

添加属性

进入Modbus配置,开启属性智能转换后,进行Modbus寄存器设置,如下图:

Modbus寄存器设置

使用任务下发Modbus查询

通过为设备创建任务,可以下发 Modbus 查询指令给传感器,并且可以设置定时任务,按一定时间间隔来读取传感器数据。

我们可以创建多个任务,来分别读取每一个传感器的数据,如下图:

任务下发读取

具体的步骤请浏览:自定义任务下发

在ThingsCloud控制台查看数据

进入设备,可以看到设备的多个属性,每个属性对应一个采集数值,我们可以看到当前最新数值,也可以查看历史数值和时序曲线图。如下图:

设备概览

搭建可视化看板实时监测数据

看板中放置我们需要的各种数据组件。如下图:

搭建看板

如果有更多组的 DTU 接入,可以在看板中放置更多的可视化组件,或者建立多个自定义看板。

看板支持全屏,以及共享链接,可以在一些支持浏览器的电视上打开看板,作为监控大屏。

具体的步骤请浏览:搭建可视化看板

生成用户APP

在 ThingsCloud 控制台上可以管理所有设备,除此之外,我们还可以给项目中的人员提供移动端的设备管理 App,通过 ThingsCloud 的零代码通用 App 设计工具,几分钟就可以生成支持多端运行的 App,包括 iOS、Android、微信小程序、Webh5 等。

App 设计中主要对设备面板进行自定义设计,使用现成的组件像搭积木一样,放好位置并绑定数据即可。如下图:

APP设计

APP展示

关于用户通用 App 和用户账号管理的详细介绍,请浏览 通用用户应用 App

这一篇我们介绍了网迅通 4G DTU 通过 MQTT透传方式接入 ThingsCloud 的详细步骤,将多个传感器数据采集到云平台,并生成自定义看板和 App。这些步骤也适用于其它厂商的支持 MQTT 透传的 DTU 产品。

如果您的物联网项目不是使用 DTU,而是自主开发单面机或嵌入式硬件产品,接入 ThingsCloud 也完全适用,详情请浏览 设备接入

### 物联网智能家居相关开源项目 在物联网领域,许多开源项目提供了针对智能家居的功能支持,尤其是涉及4G网络连接的部分。以下是几个可能满足需求的相关开源项目及其特点: #### 1. **ThingsCloud** ThingsCloud 是一个开放的物联网开发平台,支持多种硬件设备接入,其中包括基于 TCP 协议的 4G DTU 设备[^3]。该平台允许用户通过简单的配置完成传感器数据上传至云端的操作,并能够生成自定义仪表盘和移动端应用程序。 #### 2. **Home Assistant** Home Assistant 是一款流行的开源家庭自动化软件,它支持广泛的第三方插件扩展功能。虽然其核心设计主要面向局域网内的设备互联,但也可以借助外部服务(如 MQTT Broker 或其他云服务)来实现远程访问和支持 4G 网络下的操作[^1]。对于希望构建具备广域网能力的家庭控制系统来说,这是一个不错的选择。 #### 3. **Node-RED** Node-RED 提供了一种图形化编程界面用于快速创建 IoT 应用程序流图。它可以轻松集成各种输入源与输出目标之间的交互过程,包括但不限于串口通信、HTTP 请求以及 MQTT 订阅发布等功能模块。当配合支持 LTE Cat-M/NB-IoT 技术或者传统蜂窝移动通讯标准(比如 GSM/UMTS/LTE) 的嵌入式计算单元一起工作时,则可进一步拓展到更广阔的地理范围之内[^1]。 #### 示例代码片段 (以 Node.js 实现基础 MQTT 客户端为例): ```javascript const mqtt = require('mqtt'); // 创建客户端实例并指定代理地址 let client = mqtt.connect('mqtt://broker.example.com', { clientId: 'iot_device_001', username : 'your_username', password : 'your_password' }); client.on('connect', function () { console.log("Connected to broker."); // 发布消息到主题 test/topic 下 client.publish('test/topic', JSON.stringify({status:"online"})); }); client.on('message', function (topic, message) { // 打印接收到的消息内容 console.log(`Received Message on ${topic}:`,message.toString()); }); ``` 此段脚本展示了如何利用 `node-mqtt` 包建立基本的 MQTT 连接,并执行简单的信息交换任务。实际部署过程中还需要考虑安全性设置等问题。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值