1. 课程导入

在智能制造产线中,视觉系统负责“看”,PLC负责“控”,而真正决定产线能否稳定、柔性、可追溯运行的,是两者之间能否形成低延迟、可判定、可复位的联动闭环。本课程围绕工业视觉AI与PLC联动展开,目标不是单独讲相机或单独讲梯形图,而是把“检测结果如何变成控制动作”这条链路讲透。学完本课程,你应能独立完成从视觉AI模型输出、通信协议映射、PLC逻辑判定,到执行机构动作与异常复位的完整方案设计与调试。

学习目标可以概括为四句话:看得准、传得快、判得稳、控得住。看得准指视觉AI能给出稳定的类别、坐标、置信度与缺陷等级;传得快指视觉结果通过Profinet、EtherNet/IP、Modbus TCP或IO-Link等通道进入PLC;判得稳指PLC根据置信度、节拍、工件状态做去抖与互锁;控得住指PLC驱动气缸、伺服、剔除机构并输出追溯数据。

核心概念:视觉AI输出与PLC控制语义的映射

工业视觉AI通常输出结构化结果,例如目标类别、边界框、像素坐标、置信度、分割掩膜或异常分数。PLC并不直接理解“图像”,它只理解布尔量、整数、浮点数与寄存器。因此联动的核心是语义映射:把视觉结果映射为PLC可判定的控制条件。例如,当“缺陷类别=划伤”且“置信度≥0.85”且“工件在位=1”时,置位剔除输出;当连续3帧无目标时,置位“视觉超时”报警。

常见映射对象包括:触发信号(PLC→视觉)、结果就绪(视觉→PLC)、分类码、坐标偏移量、测量值、NG标志、心跳与故障码。理解这些对象的时序关系,比记住某个品牌PLC的指令更重要。

工业视觉AI与PLC联动整体框架 感知层 → 通信层 → 控制层 → 执行层 → 数据层 感知层 工业相机 / 3D相机 光源与镜头 AI推理模型 类别/坐标/置信度 通信层 Profinet / EtherNet/IP Modbus TCP / IO-Link 触发与结果就绪 心跳与故障码 控制层 PLC梯形图/SCL 置信度阈值判定 去抖 / 互锁 / 状态机 节拍与复位逻辑 执行层 气缸 / 伺服 / 机器人 剔除与分拣机构 报警灯与安全回路 动作确认反馈 数据层:追溯与优化 MES / SCADA / 数据库:工件ID、图像路径、缺陷类别、置信度、PLC时间戳、动作结果 用于良率分析、模型迭代、报警追溯与OEE统计 典型联动时序(单工件) ① PLC置位触发 → ② 相机采图与AI推理 → ③ 结果写入寄存器并置位Ready → ④ PLC读取并判定 → ⑤ 执行剔除/放行 → ⑥ 复位触发,等待下一工件 关键约束:单件节拍内完成“触发—推理—判定—动作”,并保证异常时可复位、可追溯。

方法流程:从视觉结果到PLC动作的六步闭环

一个可落地的联动方案,通常按以下步骤推进。第一步,定义检测项与判定规则,明确哪些结果由AI给出,哪些阈值由PLC判定。第二步,设计通信数据块,约定触发位、就绪位、类别码、置信度、坐标、心跳与故障码的地址与数据类型。第三步,编写PLC状态机,把“等待触发、采图、等待结果、判定、动作、复位”拆成明确状态。第四步,加入去抖与超时,避免单帧误判导致误剔除。第五步,联调时序,用示波器或PLC跟踪功能观察触发与就绪的先后关系。第六步,接入追溯,把工件ID、图像路径与动作结果写入数据库。

// PLC侧伪代码:视觉结果判定与剔除
IF TriggerDone AND VisionReady THEN
    IF DefectClass <> 0 AND Confidence >= 0.85 AND PartPresent THEN
        RejectOutput := TRUE;
        ResultCode := 16#02;   // NG
    ELSE
        RejectOutput := FALSE;
        ResultCode := 16#01;   // OK
    END_IF;
    VisionReady := FALSE;
    TriggerDone := FALSE;
END_IF;

IF NOT Heartbeat THEN
    Alarm := TRUE;             // 视觉离线
END_IF;

案例与场景:三个典型应用

  • 3C外观缺陷剔除:AI输出划伤、脏污、缺角类别与置信度,PLC在皮带线跟踪位置到达剔除工位时驱动气缸,NG品进入不良品盒,同时记录图像路径。
  • 汽车零部件尺寸测量:视觉给出孔径、间距等测量值,PLC与公差带比较,超差时置位报警并禁止机器人抓取,避免装配干涉。
  • 物流包裹分拣:AI识别条码、面单与包裹类型,PLC根据分类码控制摆轮或交叉带,把包裹送入对应格口,并回传分拣结果。

常见误区与复盘要点

误区一:只关注模型精度,忽略通信时序。模型再准,若结果晚于节拍,PLC也只能放行或停机。误区二:把置信度阈值写死在视觉端,导致PLC无法按产线状态动态调整。误区三:缺少心跳与超时,视觉掉线后PLC仍按旧结果动作。误区四:不做去抖,单帧误判造成频繁误剔除。
联动要素视觉侧关注点PLC侧关注点常见参数
触发硬触发/软触发、曝光延迟触发脉宽、防重复触发触发间隔≥50ms
结果类别、坐标、置信度寄存器映射、字节序置信度阈值0.80~0.95
时序推理耗时、结果就绪等待超时、节拍余量超时200~500ms
异常故障码、心跳报警、复位、安全互锁心跳周期100ms
追溯图像路径、模型版本工件ID、时间戳、结果码保留≥30天
学习本课程时,建议每学完一个模块,就在自己的PLC编程软件中搭一个最小联动Demo:一个触发位、一个就绪位、一个结果寄存器、一个输出线圈。把这条最小链路跑通,再逐步加入去抖、超时、追溯与多工位协同,理解会非常牢固。

整体来看,工业视觉AI与PLC联动是一条从感知到执行的完整工程链路。视觉AI解决“是什么、在哪里、有多严重”,PLC解决“什么时候动、动多久、异常怎么办”,数据层解决“可追溯、可优化”。三者协同,才能让智能检测真正落到产线节拍与良率上。