Modbus RTU、Modbus TCP转MQTT网关实现Modbus设备与云平台的无缝通信

电子说

1.3w人已加入

描述

钡铼Modbus转MQTT网关,简而言之,就是通过将Modbus协议(包括Modbus RTU和Modbus TCP)的数据转换为MQTT协议的数据格式,从而实现设备数据的上传和云端控制指令的下发。这一转换过程使得设备能够与基于MQTT协议的云平台进行通信,实现数据的实时传输和远程监控。本文将带大家学习如何配置云平台,感兴趣的朋友可以跟着一起操作。
 

一、MQTT Client
MQTT Client 支持有证书连接和无证书连接,其数据模板支持“KingPigeon”、“thingsboard”、“sparkplug b”格式的JSON数据格式(可以定制客户自己的MQTT数据格式)。
 

MODBUS RTU


操作步骤:(1)双击“MQTT Client”弹出MQTT Client配置框。(2)点击启用按钮,启用MQTT Client。默认:关闭。灰色表示:不启用,绿色表示:启用。(3)IP/域名:填写MQTT服务器的IP/域名。(4)端口:填写MQTT服务器端口,默认填写:1883。(5)Client ID:MQTT连接报文用到的客户端标识符,服务端使用客户端标识符识别客户端。(6)用户名:MQTT连接报文用到的用户名,服务端可以将它用于身份验证和授权。(7)密码:MQTT连接报文用到的密码,服务端可以将它用于身份验证和授权。(8)数据模板:根据MQTT服务器支持的JSON数据格式选择,默认“KingPigeon”。(9)订阅主题:MQTT订阅报文用到的主题名,订阅后服务器可以向客户端发送发布报文实现控制。(10)发布主题:MQTT发布报文用到的主题名,主题名用于识别有效载荷数据应该被发布到哪一个信息通道。(11)上传周期:数据定时发布间隔时间,默认30S。(12)MQTT数据补传:是否启用掉线数据补传,点击按钮启用。灰色表示:不启用,绿色表示:启用。(13)选择数据点上传:在配置框右边的方框内选择要上传的数据点,默认空白表示全部上传。(14)点击“确定”,确定金鸽MQTT的配置。(15)点击“写入配置”,网关设备重启后,MQTT Client才启用。重新打开配置软件登录设备,可以在基本信息页面可以看到“MQTT Client上线状态”的提示灯是绿色,表示MQTT Client已连接上。最右边显示从机设备在线的状态。
 

查看和下发数据
 

MODBUS RTU


二、阿里云
 

MODBUS RTU


操作步骤:(1)双击“阿里云IoT”弹出阿里云配置框。(2)点击启用按钮,启用阿里云。默认:关闭。灰色表示:不启用,绿色表示:启用。(3)认证方式:选择是密钥连接还是证书连接,默认是密钥连接。(4)地域:选择阿里云地域,默认华东2(上海)。(5)IP:企业版阿里云IP地址,公共版不填写。(6)ProductKey:填写与阿里云设备里面ProductKey一致。(7)DeviceName:填写与阿里云设备里面DeviceNam一致。(8)DeviceSecret:填写与阿里云设备里面DeviceSecret一致。(9)CA证书:启用证书连接时,要选择根证书文件上传。(10)客户端证书:启用证书连接时,要选择客户端证书文件上传。(11)客户端密钥:启用证书连接时,要选择客户端密钥文件上传。(12)上传周期:数据定时发布间隔时间,默认30S。(13)选择数据点上传:在配置框右边的方框内选择要上传的数据点,默认空白表示全部上传。(14)点击“确定”,确定阿里云的配置。(15)点击“写入配置”,网关设备重启后,阿里云才启用。重新打开配置软件登录设备,可以在基本信息页面可以看到“阿里云上线状态”的提示灯是绿色,表示阿里云已连接上。最右边显示从机设备在线的状态。
注:阿里云设备影子功能暂不支持,数据下发要到在线调试里面下发,多个下发暂不支持。
 

查看和下发数据
 

MODBUS RTU

三、华为云
 

MODBUS RTU


操作步骤:(1)双击“华为云IoT”弹出华为云配置框。(2)点击启用按钮,启用华为云。默认:关闭。灰色表示:不启用,绿色表示:启用。(3)认证方式:选择是密钥连接还是证书连接,默认是密钥连接。(4)IP/域名:连接华为云的地址,进入控制台,点击总览,设备接入服务控制台的平台接入地址,可以查看到服务器地址。(5)端口:默认1883,密钥连接填写1883,证书连接填写8883。(6)设备ID:设置与华为云上的设备ID一致。(7)设备密钥:设置与华为云上的密钥一致,在创建设备时,输入的密钥。(8)CA证书:启用证书连接时,要选择根证书文件上传。(9)客户端证书:启用证书连接时,要选择客户端证书文件上传。(10)客户端密钥:启用证书连接时,要选择客户端密钥文件上传。(11)服务ID:设置与华为云上的服务ID一致,创建产品时设置的服务ID。可以设置一个服务ID或多个服务ID。本次示例介绍多个服务ID应用,添加了“FX3U”和“S7_200SMART”服务ID。(12)上传周期:数据定时发布间隔时间,默认30S。(13)数据补传:是否启用掉线数据补传,点击按钮启用。灰色表示:不启用,绿色表示:启用。(14)选择数据点上传:在配置框右边的方框内选择要上传的数据点,默认空白表示全部上传。本示例服务ID“FX3U”选择FX3U设备的数据点上传,服务ID项选择“FX3U”,在右边方框内鼠标右键,弹出数据点框,选择“FX3U”的数据点,如:点击FX3U的数据点Y0,鼠标左键点击不放,鼠标下移到要上传的数据点,点击“确定”,方框内就显示你选择的数据点。选择服务ID“S7_200SMART”,在方框内点击鼠标右键,弹出数据点框,选择数据点,点击“确定”。(15)点击“确定”,确定华为云的配置。(16)点击“写入配置”,网关设备重启后,华为云才启用。重新打开配置软件登录设备,可以在基本信息页面可以看到“华为云上线状态”的提示灯是绿色,表示华为云已连接上。最右边显示从机设备在线的状态。
 

查看和下发数据
 

MODBUS RTU


四、亚马逊云
亚马逊云支持多个发布主题,配置与华为云多个服务ID配置原理一致。本示例只介绍单个主题,数据点全部上传配置。
 

MODBUS RTU


操作步骤:(1)双击“亚马逊IoT”弹出亚马逊云配置框。(2)点击启用按钮,启用亚马逊云。默认:关闭。灰色表示:不启用,绿色表示:启用。(3)IP/域名:填写终端节点,进入控制台,点击“物品”的“交互”查看。(4)端口:8883。(5)物品名称:填写物品的ARN,点击“物品”的“详细信息”查看物品ARN。(6)Client ID:填写账号ID,在用户信息里面查看。(7)CA证书:选择根证书文件上传。(8)客户端证书:选择客户端证书文件上传。(9)客户端密钥:选择客户端密钥文件上传。(10)发布主题:创建规则时创建的主题,MQTT发布报文用到的主题名,点击“添加”填写发布主题名。可以填写多个发布主题,选择发布主题,点击“删除”就可以删除选择的主题。如:在“行动”的“规则”查看到的主题是“iot/topic”,故填写“iot/topic”。 

MODBUS RTU


(11)上传周期:数据定时发布间隔时间,默认30S。(12)选择数据点上传:在配置框右边的方框内选择要上传的数据点,默认空白表示全部上传。(13)点击“确定”,确定亚马逊云的配置。(14)点击“写入配置”,网关设备重启后,亚马孙云才启用。重新打开配置软件登录设备,可以在基本信息页面可以看到“亚马逊云上线状态”的提示灯是绿色,表示亚马逊云已连接上。最右边显示从机设备在线的状态。


查看和下发数据
 

MODBUS RTU



审核编辑 黄宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分