1. 协同控制认知与系统全景

三菱iQ-F系列PLC(如FX5U、FX5UC)与工业机器人的协同控制,本质上是把“逻辑控制”和“运动控制”两类能力放进同一条生产节拍里。PLC擅长处理传感器、气缸、变频器、安全信号和工序互锁,机器人擅长在空间内完成搬运、焊接、装配、码垛等轨迹动作。两者不是谁替代谁,而是通过通信把“什么时候可以动、动到哪里、动完告诉谁”这件事串起来。理解这一章,重点不是记住某个指令,而是先看清系统由哪些层组成、数据沿什么路径流动、不同通信方式各自适合什么场景。

一、典型架构:三层设备与两条链路

一个典型的iQ-F与机器人协同工位,可以按“管理层—控制层—执行层”来理解。管理层通常是触摸屏GOT、上位机或MES终端,负责人机交互、配方下发和产量统计;控制层是iQ-F PLC,承担主控逻辑、安全联锁、节拍调度和通信中转;执行层包括机器人控制器、伺服/变频器、气缸阀岛、光电传感器、安全门锁等。PLC与机器人控制器之间构成一条“协同链路”,PLC与现场I/O之间构成另一条“设备链路”。两条链路在PLC内部通过软元件(X/Y/M/D/R)交汇,形成完整的控制闭环。

需要特别注意的是,机器人控制器本身也是一个独立的运动控制系统。它内部有自己的程序、点位和状态机。PLC并不直接控制机器人每一个关节,而是通过通信向机器人发送“启动、暂停、复位、选择程序号”等命令,并接收“运行中、到位、报警、当前程序号”等状态。这种“命令—状态”的交互方式,是协同控制最基本的认知。

iQ-F PLC 与工业机器人协同控制全景 管理层 GOT 触摸屏 上位机 / MES 配方与产量 报警记录 以太网 / 串行 控制层 三菱 iQ-F PLC(FX5U) 主控逻辑 · 安全联锁 · 节拍调度 · 通信中转 软元件:X / Y / M / D / R CC-Link IE Field Basic / 以太网 I/O 硬线 / 总线 执行层 机器人控制器 程序号 / 启动 / 暂停 运行中 / 到位 / 报警 内部状态机 伺服 / 变频器 输送线速度 定位完成信号 阀岛 / 气缸 夹爪开合 升降定位 传感器 光电 / 接近 安全门锁 协同链路:命令 + 状态 设备链路:I/O 采集 + 执行输出

二、通信方式:选型先看距离、实时性和数据量

iQ-F与机器人之间常见的通信方式有三类。第一类是硬线I/O:PLC的晶体管输出点接机器人控制器的输入端子,机器人输出点接PLC输入点。这种方式最简单、延迟最低,适合“启动、暂停、急停、到位”这类开关量信号,但线缆多、信息量小,无法传递程序号或坐标数据。第二类是以太网通信:FX5U自带以太网口,可通过MC协议、SLMP或Socket方式与机器人控制器交换数据。它适合传递程序号、配方参数、报警代码等字节级信息,但需要约定好端口号、数据格式和握手时序。第三类是现场总线:通过CC-Link IE Field Basic或加装通信模块,把机器人作为从站接入,实现周期性数据交换。这种方式布线简洁、扩展性好,适合多机器人或多工位协同。

选择时先问三个问题:信号是开关量还是数据量?允许的响应延迟是多少?现场是否已有总线网络?如果只是单工位上下料,硬线I/O加少量以太网数据往往最经济;如果是多机器人联动、需要实时交换位置或状态字,则应优先考虑总线或高速以太网。

三、控制层级:谁发命令,谁给反馈

协同控制中,PLC通常担任“主控”角色,机器人担任“执行与反馈”角色。但这不意味着PLC可以随意打断机器人动作。正确的做法是:PLC发出启动命令后,机器人按自身程序运行;PLC通过周期读取机器人状态字,判断其处于“运行中”“等待中”还是“报警中”,再决定下一步工序是否放行。例如,当机器人完成抓取并发出“到位”信号后,PLC才允许输送线前进;当机器人报警时,PLC立即切断相关输出并点亮报警灯。

这种“命令—执行—反馈—判断”的循环,是协同控制的基本节拍。PLC程序里通常用M软元件做握手标志,用D软元件存放程序号或报警代码,用X/Y做硬线信号映射。理解这些软元件如何与机器人信号对应,是后续编写通信程序的基础。

四、学习路线:从单机到协同

建议按四步推进。第一步,熟悉FX5U的I/O分配和基本逻辑指令,能独立完成气缸、传感器和指示灯的控制。第二步,掌握GX Works3的工程创建、参数设置和在线监控,学会用软元件批量监视观察信号变化。第三步,学习一种通信方式,建议从硬线I/O加MC协议以太网入手,先实现“PLC发启动、机器人回到位”的最小闭环。第四步,引入节拍与异常处理,练习机器人报警时PLC如何安全停机、如何复位、如何记录报警代码。每一步都应在真实或仿真设备上验证,而不是只看手册。

学习提示:初学阶段最容易犯的错误,是把PLC和机器人的程序各自写完后再联调。更高效的做法是先定义好“接口表”——列出每一个交互信号的名称、方向、地址、有效电平和含义,再分别编写两侧程序。接口表是协同控制的“合同”,后续调试和排障都依赖它。

五、接口表示例

下面给出一份最小协同工位的接口表示例,用于说明PLC与机器人之间需要约定哪些字段。表中地址为示例假设,实际项目应按硬件接线和通信配置调整。

信号名称 方向 PLC侧地址 机器人侧地址 有效电平/含义
启动命令 PLC → 机器人 Y10 DI0 高电平有效,脉冲≥100ms
暂停命令 PLC → 机器人 Y11 DI1 高电平有效,保持
程序号选择 PLC → 机器人 D100 寄存器R0 16位整数,1~8
运行中 机器人 → PLC X20 DO0 高电平表示机器人正在执行
到位完成 机器人 → PLC X21 DO1 高电平脉冲,宽度≥50ms
报警 机器人 → PLC X22 DO2 高电平有效,需PLC切断输出
报警代码 机器人 → PLC D200 寄存器R10 16位整数,0表示无报警

有了这张表,PLC程序中的X20、X21、X22就不再是抽象编号,而是对应机器人真实状态的“窗口”。调试时,可以在GX Works3的软元件监视界面中同时观察Y10是否发出、X20是否返回、D200是否变化,从而快速判断问题出在命令侧还是反馈侧。这就是系统全景认知带来的实际价值:知道信号从哪来、到哪去、在哪个环节可能断掉。