基于MQTT协议实现点对点和一点对多点通信
|
一、概述 |
MQTT是一个由IBM主导开发的物联网传输协议,它是通过发布/订阅的方式实现报文的传输,特别适合远程连接现场串口设备的应用场景。
|
物联网通信应用中,一种场景是需要实现设备和设备之间的通信,例如PLC和一个现场仪表的通信。
|
DTU点对点通信 |
 |
另一种应用场景是一个中心设备(PLC或者触摸屏),基于modbus rtu协议读取多个现场仪表
|
DTU一点对多点通信 |
 |
|
二、MQTT通信的建立 |
在Comway 4G DTU加载MQTT动态程序,设置连接MQTT服务器通信参数,配置发布和订阅主题,即可实现基于MQTT协议的通信
|
- 设置Comway MQTT服务器地址和端口:mqtt.comway.com.cn:2883(永久免费服务)
- 设置MQTT通信的用户名和密码:联系公司技术支持申请
- 设置MQTT的Client ID:缺省为空,即DTU自动生成随机client ID(避免冲突)
- 设置MQTT的工作模式: MQTT透传模式
|
|
 |
三、实现点对点和一点对多点通信: |
DTU点对点或者一点对多点通信,是通过发布和订阅的方式实现数据通信。
DTU之间点对点通信,DTU(A)的订阅和发布主题,设置如下图:。
|
 |
在主题中,添加编号的目的是避免在一个comway账号中,存在多个相同的主题
。
DTU(B)的的订阅和发布主题正好和DTU(A)相反,设置如下图
。
|
 |
基于modbus rtu协议,在一个中心主设备连接多个从设备的应用场景中,连接modbus主设备的Dtu(主)可以设置发布和订阅主题,详见相关文档
|
|
|