4. PLC与机器人通信基础
在三菱iQ-R机器人与PLC协同系统中,通信不是“把线接上”这么简单,而是决定协同节拍、数据一致性和故障恢复能力的基础。iQ-R系列PLC通常通过RJ71EN71、RJ71GF11-T2等通信模块对外连接,机器人侧则通过CR800/CR750控制器的以太网口或现场总线接口接入。不同通信方式在协同系统中承担的角色差异很大:有的负责周期性I/O刷新,有的负责按需读写寄存器,有的负责传输任意字节流。理解它们的定位,才能选对方案并正确配置。
一、四种通信方式在协同系统中的角色
以太网(Ethernet)是物理与链路层基础,本身不规定应用层协议。iQ-R的RJ71EN71模块提供两个端口,可分别接入不同网段,支持1000BASE-T。它承载上层协议,是SLMP和Socket的传输通道。
CC-Link IE是三菱的工业实时以太网,分CC-Link IE Field(现场网络)和CC-Link IE Control(控制网络)。在协同系统中,CC-Link IE Field最常用:PLC作为主站,机器人控制器作为智能设备站或远程设备站,实现周期性数据交换。其优势是刷新周期确定,典型1ms~10ms可设,适合机器人启停、模式切换、安全信号等对时序敏感的数据。
SLMP(Seamless Message Protocol)是三菱的报文协议,运行在以太网或CC-Link IE之上。它采用请求/响应模式,PLC侧作为服务器,机器人或上位机作为客户端,通过二进制或ASCII报文读写PLC的软元件(D、M、X、Y、W等)。SLMP适合非周期、按需访问的数据,如配方下发、坐标点写入、状态查询。
Socket通信是通用TCP/UDP套接字。iQ-R可通过内置以太网或RJ71EN71的Socket服务功能,与机器人控制器建立TCP连接,传输自定义格式的数据。它灵活但需自行定义帧格式和校验,适合SLMP无法覆盖的定制数据交互。
二、通信方式对比与选型依据
| 通信方式 | 典型角色 | 数据周期 | 配置要点 |
|---|---|---|---|
| 以太网 | 物理通道 | — | IP、子网掩码、端口 |
| CC-Link IE Field | 周期I/O刷新 | 1~10ms | 站号、刷新范围、主站参数 |
| SLMP | 按需读写软元件 | 非周期 | 端口号、二进制/ASCII、软元件地址 |
| Socket | 自定义字节流 | 非周期/自定义 | TCP/UDP、端口、帧格式 |
选型时先问三个问题:数据是否需要确定性刷新?访问的是PLC软元件还是自定义数据?机器人侧支持哪种客户端能力?例如,机器人抓取节拍中,夹具开合和启动允许信号必须每周期刷新,选CC-Link IE;而工件坐标从PLC下发到机器人,只需在换型时执行一次,选SLMP即可。
三、配置示例:CC-Link IE Field与SLMP协同
以下示例参数为教学假设,实际项目需按设备手册调整。假设PLC为iQ-R,主站模块RJ71GF11-T2,机器人控制器作为远程设备站,站号1,占用32点输入/32点输出。CC-Link IE Field刷新周期设为2ms,主站将机器人状态映射到X100~X11F,控制指令映射到Y100~Y11F。
CC-Link IE Field 主站参数(示例):
模块:RJ71GF11-T2
站号:0(主站)
刷新周期:2ms
远程设备站:站号1,占用32点/32点
映射:X100~X11F ← 机器人状态
Y100~Y11F → 机器人指令
SLMP 客户端参数(机器人侧,示例):
PLC IP:192.168.1.10
端口:5000(二进制)
软元件:D100~D199(坐标数据)
命令:0401(批量读取)、1401(批量写入)
配置顺序建议:先给PLC和机器人分配同网段IP,确认ping通;再在GX Works3中设置CC-Link IE Field参数并下载,观察模块LED“L ERR”是否熄灭;然后启用SLMP,在机器人侧用测试报文读取D100,确认返回数据正确;最后联调,检查CC-Link IE刷新区与SLMP读写区不冲突。
四、数据流与协同关系
下图展示四种通信方式在协同系统中的位置与数据流向。CC-Link IE Field承担周期刷新,SLMP承担按需读写,Socket承担自定义数据,以太网作为共同承载。
五、配置中的关键判断与排障
实际调试中,通信故障往往集中在三类:物理层、参数层、数据层。物理层看LED和ping;参数层看站号、IP、端口、刷新范围是否一致;数据层看软元件地址和字节序。例如,CC-Link IE Field的“L ERR”灯闪烁,通常表示站号重复或刷新范围超限;SLMP读取返回错误码C059,表示软元件地址超出范围;Socket连接建立但收不到数据,需检查机器人侧是否按约定帧头发送。
最后强调数据一致性:CC-Link IE Field的周期刷新区与SLMP读写区应避免地址重叠。若SLMP写入D100,而CC-Link IE也映射D100,会出现周期刷新覆盖按需写入的问题。建议在PLC侧划分独立区域,例如CC-Link IE使用X/Y和W,SLMP使用D和M,并在GX Works3的软元件分配表中标注用途。这样,协同系统的通信层才能既稳定又清晰。