USR-M300接网口MODBUS TCP连接HTTP服务器JSON数据上报示例
一、资料下载
USR-M300 说明书:http://www.kewodl.com/Download/1332.html
USR-M300 规格书:http://www.kewodl.com/Download/1333.html
USR-M300 应用指导:http://www.kewodl.com/Download/1369.html
【PC端调试工具】网络调试助手 串口调试助手二合一http://www.kewodl.com/Download/27.html
MODBUS SLAVE和带时间戳的网络助手软件可以自己百度下载。
二、硬件连接
1、所需物品
USR-M300 产品 1台
12V电源适配器 1个
USB-RS485串口线 1条
外网路由器 1个
超五类网线 2根
笔记本电脑 1台
2、硬件连接
USR-M300 接好4G天线,电源端子接12V电源适配,注意正负极不要接反。
USR-M300 的串口1的485接USB-RS485串口线到电脑USB口。
USR-M300 的LAN口网线直连电脑,WAN口可以用网线接外网路由器的LAN口上外网,USR-M300也支持内置卡上网,可以登陆USR-M300网页切换联网方式。
接好线之后,产品接12V电源适配器上电。
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,端口号填50,从机地址1,点击确定,等设置完所有参数,最后网页重启USR-M300。
(3)从机--点位列表,点击添加
(4)点位名称:data1(和后面上报数据都点位名称保持一致),寄存器功能码04,寄存器地址1(对应实际十进制寄存器地址0),读写状态读写,点击确定。
(5)再添加第二个点位,点位名称:data2(和后面上报数据的点位名称保持一致),寄存器功能码04,寄存器地址1(对应实际十进制寄存器地址0),读写状态读写,点击确定。
(6)添加完,可以列表检查
3、边缘网关:通信链路--链路1--HTTP参数设置
(1)点击链路1,打开链路1开关。
(2)在基础设置,配置HTTP参数,这里以USR-M300 LAN口网线直连电脑,电脑做HTTP服务器测试,电脑的本地网卡IPv4 IP是192.168.1.11
通信协议:HTTP
远程地址:192.168.1.11
远程端口:100(这里自定义用100)
请求方式:POST
HTTP URL:/2.php?
其他参数保持默认。
(3)点击应用
4、边缘网关:数据上报--上报规则--点位表设置
(1)打开边缘网关,点击数据上报,点击创建
(2)基础信息,分组名称test,上行通道链路-1。上报规则,开启周期上报,上报周期时间设置10S。
上报数据格式,原类型。上报json模板,填:{"data-1":"data1","data-2":"data2"}
data1、data2和前面上报数据的点位名称保持一致。点击确定。
(3)点位表,点击添加
(4)选择从机device1,勾选2个点位,点击确定。
5、最后网页点击重启,等待USR-M300重启完成。
四、上报数据测试
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 50,对应USR-M300 添加从机时填写的端口号50。最后点击OK。
2、从机在线
USR-M300网页,点击数据点位,可以看到从机device1状态是在线。
3、上报数据
在MODBUS SLAVE软件修改寄存器地址0的数据填10,寄存器地址1的数据填20。
(1)电脑打开网络助手,协议类型TCP server,本地主机地址填电脑IP 192.168.1.11,本地主机端口号填100,模拟HTTP服务器。可以接收USR-M300数据上报的内容,包含了网口从机的2个寄存器地址的数值。
POST /2.php? HTTP/1.1
Accept:text/html
Content-Length: 25
Host: 192.168.1.11:100
{"data-1":10,"data-2":20}
用带时间戳的网络助手,接收数据,可以看到是5s上报。
编写人:金志方 编写日期:2024-08-23
审核人:金志方 审核日期:2024-08-23
订正版本:V1.0 订正内容:初稿