USR-M300 网口接MODBUS TCP连接远程服务器Json下发示例
备注:本案例是USR-M300联网,和TCP远程服务器建立连接,USR-M300的网口LAN口接网口 MODBUS TCP从机,TCP远程服务器JSON下发写从机寄存器地址数据。
一、资料下载
USR-M300 说明书:https://www.usr.cn/Download/1332.html
USR-M300 规格书:https://www.usr.cn/Download/1333.html
USR-M300 应用指导:https://www.usr.cn/Download/1369.html
【PC端调试工具】网络调试助手 串口调试助手二合一https://www.usr.cn/Download/27.html
MODBUS SLAVE软件可以自己百度下载。
二、硬件连接
1、所需物品
USR-M300 产品 1台
12V电源适配器 1个
超五类网线 2根
笔记本电脑 1台
2、硬件连接
USR-M300 接好4G天线,可以内置卡上网,也可以插外置SIM卡上网,也可以WAN口用网线接上级路由器上网。
USR-M300 的LAN口用网线和电脑直连。
电源端子接12V电源适配,注意正负极不要接反。
电脑下载安装MODBUS SLAVE软件模拟USR-M300 LAN口接的MODBUS TCP从机设备。
3、查看电脑获取的IP
打开控制面板,打开网络和Internet,打开网络连接,查看本地有线网卡状态,详细信息。本案例,电脑从USR-M300获取的IP是192.168.1.11,电脑模拟网口MODBUS TCP设备的IP也就是192.168.1.11。
三、产品参数设置
1、登陆USR-M300网页
电脑打开浏览器,输入192.168.1.1,登陆USR-M300内置网页,用户名和密码都是admin。
2、数据点位:添加从机和点位
(1)点开数据点位,在从机一栏,点击添加。
(2)从机名称:device1,采集协议:Modbus TCP,IP填LAN口接的网口MODBUS TCP从机IP:192.168.1.11,端口号填102,从机地址1,点击确定,等设置完所有参数,最后网页重启USR-M300。
(3)从机--点位列表,点击添加
(4)点位名称:data1(和后面上报数据都点位名称保持一致),寄存器功能码04,寄存器地址1(对应实际十进制寄存器地址0),读写状态读写,点击确定。
(5)再添加第二个点位,点位名称:data2(和后面上报数据的点位名称保持一致),寄存器功能码04,寄存器地址1(对应实际十进制寄存器地址0),读写状态读写,点击确定。
(6)添加完,可以列表检查
3、边缘网关:通信链路--链路1--TCP参数设置
(1)点击链路1,打开链路1开关。
(2)在基础设置,
通信协议:TCP client
服务器地址:填USR-M300 连接的远程服务器地址IP
本地端口0,远程端口8234(和远程服务器端口号保持一致,用于TCP连接)。
其他参数保持默认。
点击应用。
4、边缘网关:协议转换--Json
(1)点击协议转换,点击Json,开启Json
(2)开启Json之后点击添加
(3)链路选择链路1,点击确定
(4)点击应用
5、最后网页点击重启,等待USR-M300重启完成。
四、MODBUS SLAVE软件设置
1、MODBUS SLAVE软件设置
(1)在电脑上安装Modbus Slave软件,点击Setup
Slave ID:1(从机地址测试用1)
Function: 03(读寄存器功能码)
Address:0(寄存器起始地址用0)
Quantity:2(从起始地址开始寄存器地址数量)
(2)Modbus Slave软件,点击Connection,选择Modbus TCP/IP。选择Port 102,对应USR-M300 添加从机时填写的端口号102。最后点击OK。
五、登陆远程桌面,打开网络助手
登陆远程桌面,打开网络助手,协议类型做TCP server,本地主机端口8234,点击打开。
六、远程服务器JSON下发写数据
1、远程服务器JSON下发写寄存器地址0数据666,写寄存器地址1数据888
发送区按照格式输入下发JSON格式命令:
{
"rw_prot": {
"Ver": "1.0.1",
"dir": "down",
"id": "12345",
"r_data": [{
"name": "data1"
},
{
"name": "data2"
}
],
"w_data": [{
"name": "data1",
"value": "666"
},
{
"name": "data2",
"value": "888"
}
]
}
}
2、远程服务器JSON下发写寄存器地址数据之后,远程服务器收到回复
接收回复数据。
{
"rw_prot": {
"dir": "up",
"Ver": "1.0.1",
"id": "12345",
"w_data": [{
"name": "data1",
"value": "666",
"err": "0"
}, {
"name": "data2",
"value": "888",
"err": "0"
}],
"r_data": [{
"name": "data1",
"value": "666",
"err": "0"
}, {
"name": "data2",
"value": "888",
"err": "0"
}]
}
}
回复JSON格式内容:
编写人:金志方 编写日期:2024-08-02
审核人:金志方 审核日期:2024-08-02
订正版本:V1.0 订正内容:初稿