2. PLC基础回顾
在AI+PLC项目交付中,AI并不是替代PLC,而是围绕PLC的确定性控制能力,补足感知、预测、优化与决策辅助。因此,做AI落地前必须先把PLC的底层运行逻辑重新梳理清楚:它如何扫描、如何读写I/O、如何执行程序、不同品牌和语言有什么差异,以及AI究竟能接在哪一层。本节从工程交付视角回顾PLC基础,并给出AI介入的典型切入点。
一、PLC工作原理:循环扫描与映像区
PLC最核心的特征是循环扫描执行,而不是像PC那样按事件随机执行。一个完整扫描周期通常包含四个阶段:输入采样、程序执行、输出刷新、系统通信与自诊断。关键点在于:输入采样阶段把物理输入状态读入输入映像区,程序执行阶段只访问映像区,输出刷新阶段再把输出映像区结果一次性送到物理输出模块。这意味着在一个扫描周期内,程序看到的输入是“冻结”的,输出也不会立即变化。
这个机制带来两个工程后果:第一,扫描周期直接影响响应实时性,周期越长,信号捕捉越容易漏掉窄脉冲;第二,AI若通过外部接口读写PLC,必须理解映像区与物理I/O之间的时间差,否则会出现“AI算得对、现场动作慢半拍”的交付问题。
二、扫描周期与实时性:AI必须尊重的硬约束
扫描周期由程序规模、指令类型、通信负载和硬件性能共同决定。小型逻辑控制可能只有1~5ms,复杂运动或大量模拟量处理可能达到20~50ms甚至更长。对于AI应用,必须区分三类任务:
- 硬实时任务:急停、安全门、伺服使能等,必须由PLC本地逻辑保证,AI不得直接干预。
- 软实时任务:温度调节、速度给定、配方切换,可由AI输出建议值,经PLC限幅和斜坡处理后执行。
- 非实时任务:报表、趋势分析、模型训练、排产优化,可在上位机或云端完成。
三、I/O类型与AI数据接入
PLC的I/O分为数字量输入DI、数字量输出DO、模拟量输入AI、模拟量输出AO,以及温度、称重、编码器等特殊模块。AI项目最常接触的是模拟量输入和通信数据。模拟量涉及量程、分辨率、滤波和工程值换算,若量纲不统一,模型输入会严重失真。
| I/O类型 | 典型信号 | AI接入方式 | 注意事项 |
|---|---|---|---|
| DI 数字量输入 | 按钮、限位、光电开关 | 状态采集、事件触发 | 注意去抖与扫描周期漏脉冲 |
| DO 数字量输出 | 继电器、指示灯、阀 | 一般不直接由AI驱动 | 必须保留PLC互锁与安全回路 |
| AI 模拟量输入 | 4-20mA、0-10V、PT100 | 模型特征输入、趋势预测 | 量程、滤波、采样周期要统一 |
| AO 模拟量输出 | 变频器给定、比例阀 | AI优化值经PLC限幅后输出 | 设置变化率限制,防止冲击 |
| 通信数据 | Modbus、OPC UA、Profinet | 批量采集与指令下发 | 关注地址映射、字节序、超时 |
四、常见品牌与编程语言
不同品牌PLC在编程习惯、通信协议和工程工具上差异明显。交付AI项目时,先确认品牌与协议,再决定数据采集方案。
- 西门子:S7-1200/1500,TIA Portal,支持LAD、FBD、SCL、GRAPH,OPC UA与Profinet生态成熟。
- 三菱:FX、Q、iQ-R系列,GX Works,梯形图为主,CC-Link与MC协议常用。
- 欧姆龙:CP、CJ、NJ/NX,Sysmac Studio,支持ST与运动控制。
- 罗克韦尔:ControlLogix、CompactLogix,Studio 5000,LAD、FBD、ST、SFC。
- 汇川、台达、信捷:国产主流,性价比高,Modbus与以太网通信普遍。
IEC 61131-3定义的五大语言中,LAD适合电气逻辑,FBD适合信号流,SCL/ST适合算法与数据处理,SFC适合流程状态机,IL已逐步淘汰。AI工程师若要与PLC程序协同,至少应能读懂LAD和SCL,并理解变量表、DB块和地址映射。
// SCL示例:AI建议值限幅后写入AO
IF aiSpeedSet > 1500.0 THEN
aiSpeedSet := 1500.0;
ELSIF aiSpeedSet < 0.0 THEN
aiSpeedSet := 0.0;
END_IF;
aoSpeed := aiSpeedSet * 27648.0 / 1500.0; // 归一化到模拟量输出
五、案例场景:AI视觉分拣与PLC协同
某包装线使用PLC控制输送带与气缸分拣,新增AI视觉识别瑕疵品。交付方案是:相机与边缘盒子运行视觉模型,识别结果通过数字量I/O或Modbus写入PLC;PLC在下一个扫描周期读取该信号,结合编码器位置触发气缸动作。这里AI不直接控制气缸,只提供“判断结果”,PLC负责时序与安全。调试时重点检查扫描周期是否小于物料经过检测工位的时间,以及信号保持时间是否足够被PLC采样到。
六、复盘:AI介入PLC项目的四个常见坑
- 把AI当实时控制器:AI推理有延迟和抖动,不能替代PLC的硬实时逻辑。
- 忽略扫描周期:窄脉冲信号、快速事件可能被漏采,需用中断或高速计数模块。
- 量纲与地址映射错误:模拟量未换算、字节序不一致,导致模型输入完全错误。
- 缺少安全边界:AI输出未限幅、未互锁,异常值直接下发可能造成设备损坏。
总结来看,PLC提供确定性的执行底座,AI提供数据驱动的优化能力。理解扫描周期、映像区、I/O类型和品牌语言差异,是设计AI介入方案的前提。只有把AI放在合适的层级,并保留PLC的安全与实时职责,项目才能稳定交付。