四通道称重测力仪表使用Modbus TCP协议与PLC网络连接参数设置指南。
通常很多客户不理解如何将Modbus-TCP协议的称重仪表与PLC链接。下面是一些常见的问题指南。
首先先了解一下什么是网络?
一、网络基础概念
-
IP地址
- 定义:唯一标识网络中设备的逻辑地址,格式为
192.168.x.x
(IPv4)。 - 作用:确保设备间唯一性,避免通信冲突。
- 示例:PLC设为
192.168.1.10
,设备设为192.168.1.20
。
- 定义:唯一标识网络中设备的逻辑地址,格式为
-
子网掩码(Subnet Mask)
- 定义:划分IP地址的网络部分和主机部分。
- 作用:判断设备是否在同一子网。
- 常见配置:
255.255.255.0
(即/24
),表示前3字节为网络地址,最后1字节为主机地址。 - 规则:同一子网的设备可直接通信,无需网关。
-
网关(Gateway)
- 定义:连接不同子网的“出口”设备(如路由器)。
- 作用:跨子网通信时,数据需通过网关转发。
- 示例:若设备在
192.168.1.0/24
,PLC在192.168.2.0/24
,双方需设置网关为路由器的接口IP(如192.168.1.1
和192.168.2.1
)。
-
端口号(Port)
- 定义:标识应用程序的通信端点(0~65535)。
- Modbus TCP默认端口:502。
- 作用:确保数据正确路由到目标服务(如PLC的Modbus服务)。
二、网络连接场景设置
1. 直连(PLC与设备直接通过网线连接)
- 物理连接:使用直通线或交叉线(现代设备通常支持自动协商)。
- IP配置原则:
- 设备与PLC的IP必须在同一子网。
- 子网掩码相同,网关无需设置(不跨网段)。
- 示例配置:
- PLC:
IP=192.168.1.10
,掩码=255.255.255.0
,网关=空。 - 设备:
IP=192.168.1.20
,掩码=255.255.255.0
,网关=空。
- PLC:
- 验证方法:
- 使用
ping
命令测试连通性(如ping 192.168.1.20
)。
- 使用
2. 通过路由器连接(跨子网)
- 物理连接:所有设备接入同一路由器。
- IP配置原则:
- 各设备IP需属于路由器连接的子网。
- 子网掩码匹配路由器配置。
- 网关必须设为路由器的接口IP。
- 示例配置:
- 路由器接口1:
IP=192.168.1.1
,子网=192.168.1.0/24
。 - 路由器接口2:
IP=192.168.2.1
,子网=192.168.2.0/24
。 - PLC:
IP=192.168.1.10
,掩码=255.255.255.0
,网关=192.168.1.1
。 - 设备:
IP=192.168.2.20
,掩码=255.255.255.0
,网关=192.168.2.1
。
- 路由器接口1:
- 验证方法:
- 确认路由器已启用路由功能,并允许Modbus TCP流量(端口502)。
三、Modbus TCP协议核心细节
-
协议栈:
- 基于TCP/IP,应用层协议(OSI第7层)。
- 默认端口502,可自定义(需双方一致)。
-
报文结构:
- MBAP头(Modbus Application Header):
- 事务标识符(2字节):匹配请求与响应。
- 协议标识符(2字节):固定为
0x0000
(表示Modbus TCP)。 - 长度字段(2字节):后续数据的字节数。
- 单元标识符(1字节):标识从站设备(如PLC的站号)。
- PDU(协议数据单元):
- 功能码(1字节):如
0x03
(读保持寄存器)、0x10
(写多寄存器)。 - 数据区:寄存器地址、数量、写入值等。
- 功能码(1字节):如
- MBAP头(Modbus Application Header):
-
与Modbus RTU的区别:
- 无需CRC校验(TCP本身提供可靠性)。
- 通过IP和端口寻址,而非串口地址。
四、网络设置关键点
-
IP规划:
- 确保所有设备IP唯一且子网掩码一致。
- 避免IP冲突(如DHCP与静态IP混用时需隔离)。
-
端口与防火墙:
- 开放端口502(或自定义端口)的TCP入站规则。
- 关闭不必要的防火墙或安全组策略。
-
路由配置:
- 跨子网时,路由器需配置正确的路由表。
- 使用
traceroute
或tracert
检查路径是否可达。
-
测试工具:
- Ping:验证基础网络连通性。
- Telnet/Nmap:测试端口502是否开放(如
telnet 192.168.1.10 502
)。 - Modbus调试软件:如ModScan(客户端)、ModSim(服务器)。
五、常见问题与解决
- 无法连接:
- 检查IP、子网掩码、网关是否正确。
- 确认端口502未被占用或拦截。
- 响应超时:
- 排查物理链路(网线、交换机故障)。
- 确认PLC的Modbus服务已启用。
- 跨子网通信失败:
- 检查路由器是否允许Modbus TCP流量。
- 确认网关配置正确且路由表完整。
通过以上步骤,可系统化配置Modbus TCP设备与PLC的网络连接,确保通信稳定可靠。实际应用中需结合具体设备手册调整参数。