4、离散信号设计:如何将AI分类结果映射为PLC的DO/DI点,包括信号分配和电气隔离
AI视觉检测、缺陷分类或语音识别模型输出的结果,本质上是软件层面的数据(如“OK/NG”“类别A/B/C”)。要让这些结果驱动产线执行机构(如气缸剔除、报警灯、蜂鸣器)或参与PLC逻辑联锁,必须将AI分类结果转换为PLC可识别的离散信号(DI/DO)。本章聚焦于这一转换过程的核心设计:信号分配策略、电气隔离方案以及工程落地中的关键细节。
4.1 核心原理:从AI分类结果到物理离散点的映射逻辑
AI分类结果通常是枚举型数据(如缺陷类型0~5)或布尔型判断(合格/不合格)。PLC的DO/DI点本质上是单比特物理量,因此映射的核心是编码与解码。工程上常用三种映射模式:
- 直接映射(1对1):每个分类结果占用一个独立DO点。例如“OK”对应DO0.0,“NG”对应DO0.1。适用于类别少(≤8类)、逻辑简单的场景。
- 二进制编码映射(N对2^N):用N个DO点编码2^N种状态。例如3个DO点可表示8种分类结果。适用于类别多、节省I/O点的场景,但PLC侧需解码。
- 脉冲/握手映射:AI输出一个短脉冲(如50ms)表示“结果有效”,配合数据线或寄存器读取具体类别。适用于高速、频繁触发的场景,但需要PLC程序配合锁存。
无论采用哪种模式,都必须考虑信号时序:AI推理完成时刻、DO输出建立时间、PLC扫描周期之间的配合。若AI输出持续时间短于PLC扫描周期,PLC可能丢失信号,因此通常需要输出锁存或握手确认机制。
4.2 信号分配方法:DO/DI点规划与地址分配
信号分配需要结合PLC的I/O模块类型(源型/漏型)、电压等级(DC24V常见)、以及现场执行机构需求。以下是标准分配流程:
- 列出所有AI分类结果:明确类别数量、是否包含“无效/超时”状态、是否需要“结果有效”标志。
- 确定映射模式:根据类别数和PLC剩余I/O点数选择直接映射或编码映射。一般建议类别≤4时用直接映射,>4时用二进制编码。
- 分配物理地址:在PLC组态中指定模块起始地址,例如AI输出DO点从Q0.0开始,PLC握手输入DI点从I0.0开始。地址分配需避开已有占用点,并预留备用点。
- 定义电气规格:确认DO输出类型(晶体管/继电器)、输出电流能力(0.5A/2A等)、DI输入类型(漏型/源型)、滤波时间(通常10ms~20ms)。
- 设计握手协议:若需要PLC确认,可增加“AI结果有效”DO点(AI→PLC)和“PLC已读取”DI点(PLC→AI),形成双向握手。
| 信号类型 | 方向 | PLC地址示例 | 电气规格 | 用途说明 |
|---|---|---|---|---|
| 分类结果DO0 | AI→PLC | Q0.0 | DC24V/0.5A 晶体管 | 类别0(如OK) |
| 分类结果DO1 | AI→PLC | Q0.1 | DC24V/0.5A 晶体管 | 类别1(如NG-A) |
| 分类结果DO2 | AI→PLC | Q0.2 | DC24V/0.5A 晶体管 | 类别2(如NG-B) |
| 结果有效DO | AI→PLC | Q0.3 | DC24V/0.5A 晶体管 | 上升沿表示新结果就绪 |
| PLC确认DI | PLC→AI | I0.0 | DC24V 漏型输入 | PLC读取完成后置位 |
| AI故障DI | AI→PLC | I0.1 | DC24V 漏型输入 | AI系统自检异常 |
4.3 电气隔离设计:光耦、继电器与电源隔离
AI系统(通常为嵌入式设备或工控机)与PLC分属不同电气环境,地电位可能不一致,且现场存在电机启停、变频器等强干扰源。电气隔离是防止共地干扰、保护I/O模块的关键措施。常用隔离方式如下:
- 光耦隔离(推荐用于DO输出):AI侧输出信号驱动光耦LED,光耦输出侧接PLC输入。隔离电压通常≥1500Vrms,响应时间μs级。注意光耦输出侧需独立电源(与PLC侧共地)。
- 继电器隔离(推荐用于大电流或AC负载):AI输出驱动继电器线圈,继电器触点接PLC或执行机构。隔离效果最好,但响应时间ms级,且触点寿命有限(约10万次)。
- DI输入隔离:PLC的DI模块本身通常自带光耦隔离,但AI侧若需读取PLC信号(如握手确认),建议在AI侧增加光耦或使用隔离式DI模块。
- 电源隔离:AI系统与PLC的24V电源应分开供电,或使用DC-DC隔离模块。若共用电源,需确保电源容量充足且地线连接可靠。
4.4 实战案例:视觉检测NG信号接入PLC剔除系统
背景与约束:某汽车零部件产线,AI视觉系统检测产品表面划痕,分类结果为“OK”或“NG(划痕深度>0.1mm)”。产线PLC为西门子S7-1200,AI系统为NVIDIA Jetson工控机。要求NG信号触发气缸剔除,且需记录剔除次数。现场存在变频器干扰,且AI与PLC安装距离约15米。
初始目标与关键参数:
- 分类结果:OK(0)、NG(1),共2类。
- PLC扫描周期:10ms。
- AI推理周期:约80ms(含图像采集)。
- 气缸响应时间:50ms。
分析与设计过程:
- 信号分配:采用直接映射,DO0.0=NG信号,DO0.1=结果有效。PLC侧DI0.0=PLC确认信号。
- 电气隔离:AI输出侧使用光耦隔离模块(型号TLP521-4),输出侧电源独立24V,与PLC电源分开。光耦输出接PLC的DI模块(漏型输入)。
- 握手协议:AI推理完成后,置位DO0.1(结果有效),同时DO0.0输出NG状态。PLC检测到DO0.1上升沿后,读取DO0.0状态,执行剔除动作,然后置位DI0.0(确认)。AI检测到DI0.0后,清除DO0.1,完成一次握手。
- 抗干扰措施:信号线使用双绞屏蔽电缆,屏蔽层单端接地(PLC侧)。光耦输出侧并联RC吸收电路(100Ω+0.1μF)抑制高频干扰。
实施结果与复盘:系统运行稳定,未出现误触发。但初期发现PLC偶尔丢失“结果有效”信号,经排查为AI侧DO0.1输出脉宽仅20ms,而PLC数字量输入滤波时间设置为10ms,加上光耦延迟约5ms,导致临界状态。后将AI侧输出脉宽延长至50ms,并调整PLC输入滤波为5ms,问题解决。
4.5 常见误区与设计复盘
- 误区1:忽略PLC扫描周期——AI输出脉冲过短导致PLC未捕获。解决:使用锁存输出或握手协议。
- 误区2:共地导致干扰——AI与PLC直接共地,变频器干扰通过地线窜入。解决:光耦隔离+独立电源。
- 误区3:地址分配冲突——未预留备用点,后续扩展困难。解决:分配时预留20%备用点。
- 误区4:忽视DI滤波时间——PLC输入滤波时间过长,导致快速信号丢失。解决:根据信号频率调整滤波时间。
总结:离散信号设计是AI与PLC集成的“最后一公里”,信号分配决定了逻辑正确性,电气隔离决定了物理可靠性。设计时应先明确分类结果与PLC逻辑的映射关系,再通过光耦/继电器隔离消除电气干扰,最后用握手协议保证时序确定性。工程中需结合PLC扫描周期、I/O响应时间、现场干扰源等参数综合权衡,并通过实测验证信号完整性。