PLC 与机器人握手信号:状态机、信号和故障恢复

可靠的 PLC 与机器人接口是一台双方约定的状态机,带有应答、超时和明确的重启条件,而不是几个时序松散的位。

plc robot handshake state machine recovery

要点:可靠的 PLC 与机器人接口是一台双方约定好的状态机:每个请求都得到应答,每项任务都以“完成”或“故障”结束,每次等待都有超时,每次重启都有明确的条件。靠几个时序大致对得上的位来配合,只能撑到第一次中断。

零散的位为什么会出问题

两台交换信号的控制器既不共用时钟,也不共用程序周期。PLC 和机器人控制器各自按自己的节奏读取输入、执行逻辑、写出输出,连接两者的现场总线还有自己的刷新间隔。一方很快置位又复位的信号,另一方可能根本看不到;一直保持接通的信号,则可能被读到两次。正常运行时这些情况很少出现,所以只用一个“启动”位和一个“完成”位搭成的接口也能通过演示。麻烦出在停机、复位或通信中断之后:这时两台控制器对“请求了什么”和“完成了什么”的认识已经不一致。

用状态来定义约定

应把这种交互描述为各有归属的状态,而不是一张变量清单。一个示意性的序列是:空闲/就绪、请求、已接受、忙、完成、故障。这些名称只是教学示例,既不是标准,也不是任何厂商的信号表。对每一次状态转移,都要写明由哪台控制器触发、什么条件下才有效、对方最长可以用多久来响应,以及超过这个时间后怎么处理。

基本模式包含四步:PLC 置位请求、机器人应答、PLC 撤销请求、机器人撤销应答。保持每个状态直到对方响应,可以避免依赖捕捉短脉冲,但不会消除时间要求。仍须规定通信周期、看门狗、应答期限,以及握手停止推进时双方应如何处理。

防止过期指令和重复指令

复位时一直保持的请求,可能在重启后被误认为新命令。接受下一次请求前,应要求完成明确的返回空闲状态流程。回传作业或配方标识可以确认请求的操作,但不能仅靠它标识某一次执行,因为连续工件可能使用同一配方。接口支持时,应增加命令序列标识,并规定持久化、计数回绕及重启或会话规则,明确重复请求和完成状态不确定时如何核对。重启后,先确认设备与工件的真实状态,例如夹爪是否有件、夹具是否装件,再恢复自动运行。仅有标识不能证明物理动作恰好完成了一次。

PLC 与机器人握手信号的示意流程图,分为四个状态:就绪、请求、忙、完成或故障。
示意图(AYXWORKS 原创图形):握手信号状态的简化序列。

把安全与普通控制分开

通过标准接口传送的就绪位、心跳信号或名为“可安全进入”的标志,都是普通的控制数据。不管叫什么名字,它都不是安全功能。保护性停止、进入防护以及其他安全功能要单独设计、单独确认,依据是对整个机器人应用所做的风险评估,这正是 ISO 10218-2:2025 的主题。握手信号仍应把安全事件作为信息上报,让操作员能分清工艺故障和安全停止,从而选择正确的恢复方式。人工恢复属于非常规作业,而 OSHA 指出,许多机器人事故发生在非常规运行条件下。

测试被中断的情况

见证的内容不应只有正常运行,还应包括:连续快速发出的请求、通信中断、任务执行到一半时分别对每台控制器断电再上电、夹爪反馈信号缺失,以及一次受控的人工恢复。两台控制器上的事件都要带时间戳记录,以便还原先后顺序。在术语方面,由 OMAC 开发并被 ISA 采纳的 PackML(ISA-TR88.00.02)是一个已公开发布的机器状态模型。它描述的是机器状态,而不是机器人信号。

确定预算或范围之前的检查清单

  • 经双方编程人员共同确认的信号归属表和状态转移图。
  • 每一次等待都有超时时间和明确的处理方式。
  • 针对过期请求和重复请求的规则,必要时带任务标识。
  • 其中一台控制器或两台控制器重启之后的重新启动流程。
  • 安全功能与握手信号分开评估、分开确认。
  • FAT 中关于被中断情况的记录,包括报警和操作员的操作。

本指南不能确定的内容

本指南是一份规划辅助材料。它不定义任何标准信号表,不描述任何具体的机器人或 PLC,也不报告任何测试。输出在停机、总线中断和重启时如何动作,因产品而异,必须以制造商的文件为准。本文的任何内容都不能替代风险评估或安全功能的确认,这些工作必须由具备相应资质的人员针对实际系统完成。

资料来源与进一步核实

下一步建议

如果您正在制定 PLC 与机器人接口的规格,请在写任何代码之前先画出状态图和信号表,然后查看机器人与自动化页面。从该页面发起的项目通过 Eurobots/ReBots 界定范围并交付,评估从可行性和责任边界开始,而不是预设一个交钥匙安装。这些指南背后的工程背景见 AYXWORKS 作品集。

图片来源: ayxworks — Original / rights held.