3. 通信基础配置

在Schneider PLC与工业机器人协同工作的场景中,通信配置是决定系统能否正常联动的第一道门槛。本节聚焦两种最常用的工业以太网协议——Modbus TCP/IP与EtherNet/IP,从协议定位、参数设置到网络组态,给出可落地的配置思路与示例。

一、两种协议的定位差异

Modbus TCP/IP是施耐德电气传统优势协议,基于TCP/IP栈,采用“请求—响应”模式,报文结构简单、调试直观,适合PLC与机器人之间交换少量控制字、状态字和寄存器数据。EtherNet/IP则基于CIP(Common Industrial Protocol),采用生产者—消费者模型,支持隐式(I/O)与显式(消息)两类通信,实时性和数据吞吐能力更强,适合需要周期性高速交换I/O或多轴协同的场合。

选择哪种协议,取决于机器人控制柜支持的通信选件、所需数据量、刷新周期以及是否需要与第三方设备共用同一网络。若机器人仅需接收启停、程序号、报警复位等少量信号,Modbus TCP/IP即可满足;若需要实时交换关节位置、力矩或安全信号,EtherNet/IP更合适。

Modbus TCP/IP 与 EtherNet/IP 通信组态对照 Modbus TCP/IP 通道 Schneider PLC M241 / M262 机器人控制柜 Modbus TCP 从站 请求 响应 关键参数 • PLC IP:192.168.1.10 / 255.255.255.0 • 机器人 IP:192.168.1.20 • 端口:502(默认) • 单元ID:1,功能码 03/06/16 数据映射示例 %MW100 → 机器人启动命令 %MW101 → 程序号选择 %MW200 ← 机器人状态字 %MW201 ← 当前报警代码 EtherNet/IP 通道 Schneider PLC 扫描器 / Scanner 机器人控制柜 适配器 / Adapter 隐式 I/O 显式消息 关键参数 • PLC IP:192.168.1.10 / 255.255.255.0 • 机器人 IP:192.168.1.30 • RPI:10 ms(请求包间隔) • 输入/输出实例各 32 字节 EDS 与组态要点 • 导入机器人 EDS 文件 • 设置连接点与数据长度 • 配置 RPI 与超时倍率 • 检查 DHCP/静态 IP 一致性

二、Modbus TCP/IP 参数设置与组态

在Schneider PLC侧,以M241/M262为例,首先在EcoStruxure Control Expert或Machine Expert中为PLC以太网口分配静态IP,例如192.168.1.10,子网掩码255.255.255.0。机器人控制柜的通信板卡同样设置同网段静态IP,例如192.168.1.20,避免使用DHCP造成地址漂移。

PLC作为Modbus TCP客户端(主站),通过功能块或指令向机器人从站发起请求。常用功能码包括:03读保持寄存器、06写单个寄存器、16写多个寄存器。机器人侧需在通信配置中启用Modbus TCP从站,并定义寄存器映射表。例如将机器人启动命令映射到地址0,程序号映射到地址1,状态字映射到地址100,报警代码映射到地址101。

在PLC程序中,使用READ_VAR和WRITE_VAR指令时,需要指定从站IP、单元ID、起始地址、数据长度和超时时间。典型调用如下:

WRITE_VAR(
  ADR := '192.168.1.20',
  UNIT := 1,
  OBJ := '%MW',
  FIRST := 100,
  LEN := 2,
  DATA := %MW100:2,
  TIMEOUT := T#1S
);

该指令将PLC的%MW100和%MW101两个寄存器写入机器人地址0和1。读取状态时使用READ_VAR,将机器人地址100和101读入%MW200和%MW201。配置完成后,通过PLC的在线诊断查看通信状态字,若返回码为0表示成功,非0则根据错误码排查IP、端口、单元ID或寄存器地址是否匹配。

三、EtherNet/IP 参数设置与组态

EtherNet/IP的组态流程与Modbus不同,核心在于EDS文件与连接参数。首先从机器人厂商获取对应型号的EDS文件,在PLC工程中导入。随后在设备树中添加机器人作为EtherNet/IP适配器,设置其IP地址,例如192.168.1.30。

关键参数是RPI(Requested Packet Interval),即扫描器与适配器之间交换I/O数据的周期。对于一般协同控制,RPI可设为10 ms;若机器人运动控制要求更高,可缩短至5 ms,但需评估网络负载。同时设置输入和输出实例的数据长度,例如各32字节,对应机器人侧的输入输出映射区。

在PLC侧,EtherNet/IP扫描器会自动生成输入输出变量,例如Robot_Input[0..31]和Robot_Output[0..31]。PLC程序直接读写这些变量即可与机器人交换数据。组态完成后,观察扫描器状态字:若显示“Connected”且无超时错误,说明通信正常;若出现“Timeout”或“Connection Failed”,需检查RPI是否过小、网络是否丢包、EDS文件版本是否匹配。

四、网络组态与常见问题

两种协议可以共存于同一物理网络,但建议通过VLAN或独立交换机端口隔离,避免广播风暴影响实时性。交换机应选用支持IGMP Snooping和QoS的工业级型号。IP地址规划上,PLC、机器人、HMI、编程电脑应统一网段,并保留地址表以便维护。

常见问题包括:IP冲突导致通信中断、子网掩码不一致导致跨网段失败、Modbus寄存器地址偏移(部分机器人从1开始计数,而PLC从0开始)、EtherNet/IP的RPI设置过小导致适配器响应超时。排查时先用ping确认链路,再用协议诊断工具查看报文,最后核对参数表。

配置检查要点:① 所有设备IP同网段且唯一;② Modbus端口502未被防火墙拦截;③ EtherNet/IP的EDS文件与固件版本匹配;④ RPI与机器人扫描周期协调;⑤ 寄存器/实例地址映射表双方一致。

完成上述配置后,建议先进行单点信号测试:PLC写一个启动位,观察机器人是否响应;机器人置一个状态位,观察PLC是否读取到。确认无误后再扩展到完整协同逻辑。通信配置的稳定性直接决定后续联动程序的可靠性,因此参数记录与版本管理同样不可忽视。