随着Vibe Coding类AI编程工具快速普及,越来越多工控工程师开始尝试通过自然语言口述需求,让AI直接生成西门子S7-1500的SCL、LAD程序,标准化子程序的编写效率得到大幅提升。
但在现场实际落地之后,软件开发领域提出的效率反噬现象,在工控场景被进一步放大。依据西门子TIA Portal官方手册、S7-1500系统规范要求:PLC程序必须满足扫描周期约束、PN实时同步、安全逻辑冗余、工艺中断规范等硬性约束;普通软件代码BUG可以在线迭代修复,PLC程序一旦违背上述规范,会直接造成产线停机、设备误动作,安全风险远高于传统IT后端开发。结合三个行业内高频出现的现场真实案例,能够直观体现AI编程在工控领域的固有短板。
一、三个行业真实高频踩坑案例
1. Profinet实时性考虑缺失,引发总线抖动与IO闪断
工程师借助AI快速完成伺服联动运动控制FC功能块,语法编译无报错,下载至CPU后联机调试,频繁出现PN总线波动、远程IO不定时掉线。依据西门子《SIMATIC S7-1500 系统手册》中Profinet IRT同步规范,运动控制程序必须绑定对应OB35/OB61等循环中断,严格匹配PN同步周期。而AI仅完成基础逻辑语句编写,并不会主动适配PLC循环扫描周期、IRT实时同步机制、工艺中断OB块分配等工控底层约束。后续重构与周期优化消耗的工时,往往是手动规范化编写该模块的两倍以上。
可参考:https://docs.tia.siemens.cloud/r/simatic_s7_1500_et_200mp_manual_collection_eses_20/comprehensive-information/communication-function-manuals/profibus-with-step-7-v13/diagnostics/diagnostics-using-the-display-of-the-s7-1500
2. PID闭环仅保留调节算法,缺失设备安全联锁逻辑
通过自然语言指令让AI生成温控PID闭环程序,基础调节算法可以快速生成,但传感器断线诊断、超温急停保护、设备启停安全联锁、故障反馈判定等工业必备逻辑全部缺失。按照西门子PID_Compact标准工艺指令使用规范,闭环控制必须配套硬件诊断与安全保护逻辑。但是AI输出的通用模板只包含运算逻辑,完全脱离现场安全规范,在空载调试阶段极易出现工艺超限风险,工程师需要手动逐条补齐安全判断条件,AI带来的编码提速优势被后期整改完全抵消。


3.边缘上云通信代码适配性差,协议版本老旧
使用AI编写S7-1500对接工业边缘网关、物联网平台的数据交互程序,模型生成的PUT/GET通信代码大多沿用老旧S7基本通信范式。而西门子当下主推的边缘对接方案,优先采用OPC UA、MQTT加密报文架构,旧版PUT/GET已经不再适配主流边缘网关安全规范,AI原生代码兼容性较差,大量工时消耗在通信报文调试与协议适配中。

二、工控行业效率反噬的特殊性
通用应用软件开发可以依靠后续版本迭代修补漏洞,PLC程序深度绑定实体设备与生产安全,西门子官方也多次强调:工控程序的稳定性、安全性优先级远高于开发速度。前期省略的工艺思考、硬件约束、总线稳定性考量,最终都会在现场调试阶段以故障、停机的方式,成倍增加工程师的整改工作量。
三、工控场景AI编程四条落地使用边界
1. 总线通讯配置、Profinet实时逻辑、安全急停联锁、多轴运动控制核心程序,必须由工程师人工手动编写,严格遵循西门子系统手册规范,禁止交由AI全权生成;
2. 数据格式转换、基础数值运算等无安全风险的标准化子程序,可由AI生成,完成后必须人工逐条校验工艺规范与硬件约束;
3. 不得因AI编码速度随意压缩项目调试周期,PLC工程项目必须预留模拟调试、空载试运行的缓冲时间;
4. 定期脱离AI独立完成完整功能块编写,避免长期依赖大模型,弱化自身故障排查、架构设计与工艺适配的核心能力。
AI是工控工程师优秀的辅助工具,能够解放大量重复标准化编码工作,但无法替代工艺理解、现场安全设计、总线稳定性规划这类工控核心能力。一味追求程序编写速度,只会不断陷入效率反噬的困境。
各位同行有没有在现场正式使用AI编写博图PLC程序?大家都遇到过哪些由AI生成代码引发的现场故障?欢迎一起交流探讨。