

在物联网应用中,串口设备接入云平台是常见的需求。MQTT作为物联网领域最主流的轻量级消息协议,具有低带宽占用、支持双向通信、QoS质量分级等优势。E840-DTU(EC05-485)系列高性价比4G DTU通信设备支持MQTT协议,可以将RS485串口设备的数据直接发布到MQTT服务器,同时也能订阅服务器的下发行主题,实现设备的远程监控和控制。本文详细演示E840-DTU(EC05-485)系列高性价比4G DTU做MQTT客户端如何部署Mosquitto MQTT服务器,并通过内网穿透将E840-DTU接入MQTT网络。其他4G DTU设备如E840-DTU(EC05-485)E、E840-DTU(EC05-485)E-V2也可参考此教程中的操作,若使用的是EC05系列的4G模块,配置产品参数部分可直接参考本教程,接线部分因接口不同,请用户查阅对应手册接线。
E840-DTU(EC05-485)是亿佰特基于4G CAT1技术开发的一款高性价比4G DTU。4G DTU可以将RS485串口设备的数据通过4G网络传输到云服务器,支持TCP/UDP/MQTT/HTTP等多种协议。
参数 | 数值 |
数据接口 | RS485(2.54mm弹簧端子) |
工作电压 | DC 8V~28V |
网络制式 | LTE-TDD: B34/B38/B39/B40/B41;LTE-FDD: B1/B3/B5/B8 |
网络协议 | TCP/UDP/MQTT/HTTP/DNS |
波特率 | 1200-230400,默认115200bps |
工作温度 | -40℃~+85℃ |
产品尺寸 | 102×28×27mm |
产品重量 | 40g |
安装方式 | 导轨+定位孔 |
防护 | 三防漆(防霉菌/防潮湿/防盐雾) |
· PWR(蓝):电源接通时常亮;
· STATE(橙):熄灭=搜索SIM卡;闪烁=附着网络;常亮=网络就绪;
· DATA(绿):数据收发时闪烁;
· LINK(橙):常亮=与服务器连接成功。
MQTT基于发布/订阅模型,设备可以发布消息到某个主题,也可以订阅感兴趣的主题。这种解耦的通信方式非常适合物联网场景——发送方和接收方不需要直接建立连接,只需通过服务器中转消息。
Mosquitto是Eclipse基金会开发的开源MQTT Broker,支持MQTT v3.1.1和v5.0协议,轻量、稳定、配置灵活,是学习和部署MQTT的首选。
本教程的整体方案如下:
① 在本地电脑上部署Mosquitto MQTT服务器;
② 通过内网穿透工具(贝瑞花生壳)将MQTT服务器的端口映射到公网;
③ E840-DTU插入SIM卡,通过4G网络连接到公网MQTT服务器;
④ E840-DTU的RS485串口数据发布到MQTT主题,同时订阅另一个主题接收下行的数据。
① 访问Mosquitto官网(mosquitto.org),进入Download页面;
② 选择对应操作系统的版本下载(本教程使用Windows版本);
③ 双击安装文件,按照安装向导完成安装;
① 打开Mosquitto的安装目录(如D:Mosquitto);
② 在文件路径栏中输入 cmd 打开命令行窗口;
③ 输入以下命令启动MQTT服务器:mosquitto -c "D:Mosquittomosquitto.conf" -v。
· -c:指定配置文件路径;
· -v:开启详细日志输出。
命令行窗口不能关闭,否则服务器进程会被终止。
注意:本教程使用的Mosquitto服务器配置为监听端口1884,且未开启客户端接入验证。如果需要开启用户名/密码验证,请参考Mosquitto官方文档配置。
另开一个命令行窗口,在Mosquitto安装目录下输入:
mosquitto_sub -h localhost -p 1884 -u test -P 123456789 -t "test/topic" -v
参数说明:
· -h localhost:服务器地址(本地);
· -p 1884:服务器端口;
· -u test -P 123456789:用户名和密码(本教程未启用验证,可随意填写);
· -t "test/topic":订阅的主题;
· -v:显示详细信息。
这个命令行窗口会实时显示收到的消息,用于验证E840-DTU的数据是否成功上传。
由于Mosquitto部署在本地局域网,E840-DTU通过4G公网无法直接访问。需要通过内网穿透工具将本地端口映射到公网。
本教程使用贝瑞花生壳实现内网穿透:
① 下载并安装贝瑞花生壳;
② 添加映射规则:将本地的1884端口映射到公网;
③ 在花生壳详情页复制公网访问地址和端口(如 15s8t2a86436j594.hfsdata.cn:45775)。
这个公网地址和端口就是E840-DTU连接MQTT服务器时使用的目标地址。
① 将4G天线连接到E840-DTU的SMA天线接口;
② 插入Nano SIM卡(芯片向上,缺口向内);
③ 使用USB转485转换器按以下方式接线:
· 转换器A → DTU的RS485-A;
· 转换器B → DTU的RS485-B;
· 转换器GND → DTU的GND。
④ 接入DC 8~28V电源。
打开EbyteAtConfigTool配置软件:
① 型号选择:E840-DTU(EC05-485);
② 选择对应的串口号;
③ 串口参数:115200 8N1;
④ 点击"打开串口";
⑤ 点击"进入配置",确认日志栏显示"进入AT模式成功";
⑥ 点击"读取参数",读取设备当前配置。
第一步:设置基本连接参数
切换到"链路1"标签,在链路基本参数中:
· 连接类型:选择 MQTT Client;
· 服务器地址:填写花生壳提供的公网地址(如 15s8t2a86436j594.hfsdata.cn);
· 目标端口:填写花生壳映射的公网端口(如 45775);
· 其他参数保持默认。
第二步:设置MQTT协议参数
在MQTT连接参数中如下所示:
· MQTT目标平台:选择标准MQTT3.1.1;
· Client ID:随意填写(本教程未启用验证);
· 用户名:随意填写;
· 密码:随意填写;
· 订阅主题:随意填写一个主题(如 down/topic),用于接收服务器下发的数据;
· 发布主题:填写 test/topic(与Mosquitto命令行中订阅的主题一致);
· QoS:选择0;
· 勾选"开启订阅";
· 勾选"开启发布"。
第三步:保存并重启
配置完成后,点击"保存参数",设备会自动重启使配置生效。
观察E840-DTU的指示灯:
· STATE灯常亮:4G网络附着成功
· LINK灯常亮:已成功连接到MQTT服务器
同时,Mosquitto的命令行窗口会显示新的客户端连接日志。
在EbyteAtConfigTool的调试区域,或在XCOM串口调试助手中(退出配置模式后),通过串口发送数据。
发送数据后,Mosquitto订阅的命令行窗口(mosquitto_sub)会实时显示收到的消息,格式为:test/topic 收到的数据内容;
这验证了E840-DTU已成功将串口数据通过MQTT发布到指定主题。
在Mosquitto的命令行中,使用mosquitto_pub 命令发布消息到E840-DTU订阅的主题:
mosquitto_pub -h localhost -p 1884 -t "down/topic" -m "hello from server"
E840-DTU的串口会收到这条消息,并在配置软件或串口助手中显示。
至此,MQTT双向通信验证完成。
工厂现场的PLC、仪表等RS485设备通过E840-DTU接入MQTT云平台,管理人员可以在远程查看设备运行状态、接收告警信息。
分布在各地的环境监测站(温湿度、PM2.5、水质等传感器)通过4G DTU将数据实时发布到MQTT主题,数据中心统一订阅处理。
自动售货机、充电桩、快递柜等无人值守设备,通过MQTT协议与云端平台保持长连接,实现实时状态上报和远程控制指令下发。
检查SIM卡是否正确安装,确认SIM卡已开通数据业务。检查天线是否接好。确认DTU的工作电压在8-28V范围内。
确认内网穿透服务正常运行,公网地址和端口可访问。检查DTU配置中的服务器地址和端口是否与花生壳映射的一致。确认Mosquitto服务器已启动并监听对应端口。检查MQTT协议版本是否选择标准MQTT3.1.1。
确认DTU已成功连接到MQTT服务器(LINK灯常亮)。检查发布主题是否与服务器订阅的主题一致。确认QoS等级设置正确(建议先使用QoS 0)。检查串口参数(波特率、数据位、停止位、校验位)是否匹配。
确认DTU已开启订阅功能,且订阅主题与服务器发布的主题一致。检查Mosquitto服务器的权限设置是否允许发布到该主题。
Mosquitto的服务器进程依赖命令行窗口。如需后台运行,可以将Mosquitto注册为Windows服务运行。
E840-DTU(EC05-485)系列高性能高性价比4G DTU的MQTT客户端功能,让RS485串口设备能够便捷地接入物联网云平台。通过标准的MQTT协议,设备可以实现与云端的双向数据通信,既可以将现场数据发布到服务器,也可以接收服务器下行的控制指令。
搭配Mosquitto等标准MQTT Broker,可以快速搭建从设备到云端的完整数据链路。对于需要远程监控、数据采集和设备管理的物联网项目来说,4G DTU + MQTT客户端是一种成熟可靠的解决方案。
今天的分享就到这里啦,EBYTE每一天都致力于更好的助力物联化、智能化、自动化的发展,提升资源利用率,更多4G DTU通信设备产品和物联网技术应用方案资料,感兴趣的小伙伴可以登录我们的亿佰特官网和企业公众号(微信号:cdebyte)进行了解,也可以直接拨打400电话咨询技术专员!
相关阅读:
2、4G DTU设备接入华为云IoTDA平台配置与设备注册篇
3、基于4G DTU与远程IO模块的水质动态监测系统物联网方案
4、E840-DTU系列CAT.1方案4G DTU数传终端快速调试教程
联系我们:
技术支持:support@cdebyte.com 销售咨询:4000-330-990