2. Sysmac自动化平台与机器人协同控制架构

在Omron Sysmac体系中,机器人协同控制并不是把机器人控制器与PLC简单用一根网线连起来,而是围绕NJ/NX系列控制器建立一套分层、分网、分职责的自动化平台架构。理解这套架构的关键,是分清“谁做逻辑与运动协调、谁做实时数据交换、谁做信息层交互、谁做机器人本体控制”,以及这些角色之间通过什么网络、以什么周期和方式交换数据。

NJ/NX控制器:协同控制的中枢

NJ与NX是Sysmac平台的核心控制器。NJ偏重运动控制与顺序控制一体化,NX在保持EtherCAT高速控制能力的同时,更强调与信息层、数据库和上位系统的开放连接。两者在协同控制中的定位一致:作为“协同控制框架”的执行中枢,负责把来自机器人控制器的状态、来自传感器与安全链路的信号、来自上位系统的指令统一编排成可执行的设备动作。

NJ/NX内部通常按IEC 61131-3标准组织程序,包含ST、梯形图、功能块等。协同控制中最重要的不是单个轴的点位控制,而是把机器人当作一个“可编程设备对象”纳入整体节拍。例如,一条装配线上,NJ控制器先控制伺服定位夹具,再通过EtherNet/IP向机器人控制器发出“取件允许”信号,机器人完成抓取后回传“抓取完成”,NJ再启动下一工位。这个过程中,NJ/NX承担的是任务调度、状态机管理、异常处理与节拍控制。

EtherCAT:实时运动与I/O的主干

EtherCAT在Sysmac架构中主要承担高速、确定性要求最高的控制任务,例如伺服轴、远程I/O、安全I/O、视觉触发等。它采用主从结构,NJ/NX作为EtherCAT主站,周期通常可配置为0.25 ms、0.5 ms、1 ms等。对于协同控制而言,EtherCAT的价值在于:把与机器人节拍强相关的夹具、输送线、定位机构、传感器等纳入同一实时域,使这些设备与机器人之间的“握手”不依赖慢速网络。

需要明确的是,机器人本体控制通常由机器人控制器完成,EtherCAT并不直接替代机器人内部伺服环。协同控制中,EtherCAT更多用于机器人外围的实时设备,以及与机器人控制器之间的高速I/O或运动协调接口(具体取决于机器人品牌与接口能力)。因此,架构设计时要区分:哪些信号必须走EtherCAT实时域,哪些可以走EtherNet/IP信息域。

EtherNet/IP:信息层与机器人指令交互

EtherNet/IP基于标准以太网与CIP协议,在Sysmac平台中承担信息层通信和部分设备层通信。它与EtherCAT的分工可以概括为:EtherCAT管“硬实时”,EtherNet/IP管“指令、状态、参数与信息”。在机器人协同控制中,NJ/NX与机器人控制器之间常通过EtherNet/IP交换控制字、状态字、目标位置、程序号、报警码、节拍统计等数据。

典型的数据交换方式包括:NJ/NX向机器人发送启动、停止、复位、程序选择、允许动作等命令;机器人向NJ/NX回传运行中、到位、抓取完成、报警、当前程序号等状态。这些数据通常以标签或映射地址方式配置,周期一般在几毫秒到几十毫秒量级,适合做协同逻辑判断,但不适合替代EtherCAT的硬实时同步。

机器人控制层与协同控制框架的关系

机器人控制层是机器人本体厂商提供的控制器及其编程环境,负责机器人关节插补、轨迹规划、奇异点处理、碰撞检测、伺服驱动等。协同控制框架则位于NJ/NX之上,负责多设备任务编排、节拍同步、安全互锁、异常恢复与信息汇聚。两者不是替代关系,而是上下协同关系:机器人控制层保证“机器人自己动得对”,协同控制框架保证“机器人与产线其他设备配合得对”。

因此,架构设计中最容易出问题的地方,往往不是网络通不通,而是职责边界不清。例如,把机器人轨迹规划放到NJ/NX里做,会失去机器人控制器的专用算法优势;把产线节拍调度全部交给机器人控制器,又会导致多设备协同困难。合理的做法是:机器人控制器负责本体运动与局部逻辑,NJ/NX负责全局节拍、互锁与信息集成。

Sysmac机器人协同控制架构分层关系 信息层 / 上位系统 MES / SCADA 数据库 / 看板 HMI / 编程终端 EtherNet/IP 信息通信 协同控制层 / NJ·NX 控制器 任务调度与状态机 节拍 / 互锁 / 异常恢复 运动控制与I/O逻辑 EtherCAT主站 机器人指令接口 控制字 / 状态字 安全与互锁逻辑 安全I/O / 急停链 设备层 / 机器人控制层与现场设备 机器人控制器 轨迹规划 / 插补 关节伺服 / 碰撞检测 本地程序与报警 伺服与执行机构 夹具 / 输送线 定位机构 EtherCAT从站 传感器与视觉 光电 / 接近开关 视觉触发 结果判定 安全设备 安全门 急停 安全继电器 EtherNet/IP EtherCAT / EtherNet/IP 机器人指令与状态 实时I/O 触发与反馈 安全信号 说明:EtherCAT 承担硬实时运动与I/O;EtherNet/IP 承担指令、状态与信息交互;机器人控制层负责本体运动,NJ/NX 负责全局协同。

协同控制框架中的关键数据流

从数据流角度看,协同控制框架通常包含三条主要链路。第一条是“指令下行链”:NJ/NX根据生产任务生成机器人启动、程序选择、目标位置等指令,经EtherNet/IP写入机器人控制器的输入区。第二条是“状态上行链”:机器人控制器把运行状态、到位信号、报警码等经EtherNet/IP回传给NJ/NX,NJ/NX据此判断是否进入下一节拍。第三条是“实时同步链”:夹具、输送线、安全门等通过EtherCAT与NJ/NX保持毫秒级同步,确保机器人在抓取或放置时外围设备已处于正确位置。

这三条链路的时间尺度不同,设计时必须分开处理。例如,机器人程序启动指令可以容忍几十毫秒延迟,但夹具到位信号如果延迟过大,机器人就可能撞到工件。因此,在NJ/NX中通常把EtherCAT设备的状态直接映射到过程数据区,用于高速互锁;而机器人状态则通过EtherNet/IP标签映射,用于节拍管理和信息记录。

架构设计中的职责边界与配置要点

实际工程中,建议先画出一张“设备—网络—数据”对应表,明确每个信号走哪条网络、由谁产生、由谁消费、刷新周期是多少。例如:机器人“抓取完成”信号由机器人控制器产生,经EtherNet/IP送入NJ/NX,刷新周期约10 ms;夹具“夹紧到位”信号由EtherCAT从站产生,刷新周期1 ms,直接参与NJ/NX的互锁逻辑。这样在编程时,就不会把高速互锁信号放到慢速信息层,也不会把信息层的大数据包塞进EtherCAT过程数据。

此外,NJ/NX中的任务分配也要与架构匹配。通常把EtherCAT过程数据刷新放在高速任务中,把机器人指令交互和状态判断放在中速任务中,把信息上报和数据库写入放在低速任务中。这样既能保证实时性,又能避免高速任务被信息处理拖慢。

配置提示:在Sysmac Studio中建立EtherNet/IP连接时,先确认机器人控制器的EDS文件或标签映射方式;若机器人支持CIP标签,可直接用标签名通信,减少地址映射错误。EtherCAT侧则需确认从站ESI文件版本与NJ/NX固件兼容。

示例:一个抓取—放置协同节拍

假设某装配单元由NJ控制器、一台六轴机器人、一套EtherCAT夹具和一条EtherCAT输送线组成。节拍过程如下:NJ通过EtherCAT启动输送线,工件到位后光电传感器触发;NJ通过EtherNet/IP向机器人发送“程序1启动”和“取件位置”;机器人完成抓取后回传“抓取完成”;NJ确认夹具已夹紧后,再向机器人发送“放置允许”;机器人放置完成并回传“放置完成”,NJ复位节拍并准备下一循环。整个过程中,NJ/NX是节拍指挥者,机器人控制器是动作执行者,EtherCAT保证夹具与输送线的实时响应,EtherNet/IP保证指令与状态可靠交互。

理解这套架构后,后续学习EtherCAT组态、EtherNet/IP标签通信、机器人指令接口编程时,就能清楚每个配置项在整体中的位置,而不是孤立地记命令和参数。