12 个最受欢迎的 PLC AI 工具:能写代码的多,能进工程的少
英文侧四份最新对比都在比"谁写的 SCL 像样",但工程里卡住人的是代码进项目之后:接口、变量表、实例背景,以及编译之后那一遍时序。
2026 年 10 月,英文侧被引用最多的四份 PLC AI 工具对比——AnyAutomation 的九工具表(10-25 更新)、LADX 的选型与测试指南(10-12)、Wartens 的厂商 Copilot 对比(10-12)、ACM 上的 SemaPLC 论文(10-03)——几乎都在比同一件事:模型把 SCL 写得像不像。
而现场卡住人的是另一段:代码进了项目之后。接口对不对、变量表有没有、实例背景在不在、静态区有没有落、编译通过之后时序跑不跑得通。这几件事,模型一句都管不了。
所以"最受欢迎的 PLC AI 工具"这个问题,混在一起比是比不出结论的。把它按工具链的四层拆开,每层都有明确的判据和明确的短板,谁缺位一目了然。
下面这 12 个工具,取自上述四份对比文中出现频率最高的那些(再补上"云端验证"这一类),按四层归位。这不是排行榜,是分层——排在前面的不等于更好,只代表它站的那一层被讨论得最多。
一、四层模型:每层一句判据
| 层 | 这一层要做到什么 | 判据(不满足就不算完成) |
|---|---|---|
| 1 写代码 | 在你用的语言里产出可读代码(SCL / ST / LAD) | 拿到代码的人不用回头问"这是什么意思" |
| 2 进工程 | 看到你项目里的块、接口、变量表、实例背景;把产物落到工程里 | 落进去之后能撤回,且改动可 diff |
| 3 生成可导入的块 | 从描述或中间表示产出能直接导入并编译的块 | 导入后编译 0 错误,且图形语义没丢 |
| 4 跑起来 / 看得见 | 仿真里按扫描周期跑一遍;把程序变成人能评审的图 | 别人(不看博途的人)能复核你的改动 |
一个具体反例,说明第 2 层为什么比第 1 层难:一段 SCL 编译 0 错误、0 警告,但静态区没建、背景 DB 没生成、变量表里少了两个符号——把这段代码粘进博途,一样过不了编译;就算改到能编译,下载到 PLC 上跑第一个周期就可能出事。第 1 层产出的是文本,第 2 层产出的是"能用的东西"。
二、第 1 层:最热门的那批,都在这一层
厂商内置 agent,是 2026 年被推荐最多的一类,因为它们装在你已经在用的软件里:
- Siemens Industrial Copilot:西门子 2024 年 4 月宣布,同年夏天起在 Siemens Xcelerator 上架。按西门子发布口径,它能生成 SCL、给出可以直接被 TIA Portal 采纳的代码建议(不用复制粘贴),还能帮你在 WinCC Unified 里起第一版可视化;数据侧提供私有 Azure OpenAI 实例,不用客户数据训练模型。
- Siemens Eigen Engineering Agent:TIA Portal 的 add-in,覆盖 V19(Update 5+)、V20(Update 4+)与 V21,面向 S7-1200 / S7-1500;通过 Openness 直接在项目里动作,能给 S7 块生成测试用例并在 PLCSIM Advanced 上跑。按对比表口径,它仅云端、需要联网。
- Rockwell FactoryTalk Design Studio Copilot:在云端 IDE 里用自然语言建系统模型、生成 PLC 代码、处理报错;官方强调工程师要先复核再采纳建议。
- Beckhoff TwinCAT Chat:2023 年 11 月推出,模型底座按 TwinCAT 调过,生成的结构化文本能直接转进工程,常用请求做成了预置的一键动作。
- CODESYS 在 3.5 上卖一个 MCP server,让外部 AI 客户端也能读写工程——这是厂商里少见的"开放给任意客户端"路线,代价是验证要自己配(Test Manager 是另一个东西)。
- 施耐德在 EcoStruxure Machine Expert 里有代码生成 Copilot。
这里有个值得注意的区分:聊天助手和 agent 不是一回事。Industrial Copilot 那类是"聊天窗口 + 能采纳的建议",Eigen Engineering Agent 那类是"能自己在项目里动手"。前者更像加速打字,后者才碰第 2 层。
通用大模型。 ChatGPT / Claude / Gemini 在浏览器里能写出相当像样的 SCL,也讲得清 RS 与 SR 的区别。但它们看不见你的工程,你贴多少它看多少。这一类真正的用法不是"聊天框",是挂一个 MCP 服务让它能读工程——于是问题就从第 1 层跑到了第 2 层。
开源与研究项目。 LLM4PLC(面向可验证的 PLC 代码生成)、Agents4PLC(多智能体框架)、AutoPLC(按厂商差异生成结构化文本)、SemaPLC(ACM 论文,交付两个可复用组件:一个 web IDE 加一套 PLC 工具套件,把自然语言变成经典控制场景的程序)。这一类自由度最高,代价是验证链要自己搭。
这一层的共同点只有一句:它们对自己手里的文本负责,不对你的工程负责。
三、第 2 层:让 AI 真的进到工程里
第 2 层难,是因为决定对错的从来不是语法。工程文件里真正重要的是接口定义、变量表与系统常量、实例背景落在哪个块里、网络之间谁先执行、以及你改了别人块里的什么。这些信息在工程文件里,不在你的提示词里。
所以这一层绕不开一个问题:AI 怎么"够到"工程。 目前只有两条路。
一条是模拟人操作界面:识屏、点按钮、填表格。它不需要任何接口许可,看起来什么软件都能用;问题是软件一升级、布局一变、弹窗一多就崩,而且它做的每一步都不可 diff、不可回滚。用它做一次性迁移可以,做日常工程不行。
另一条是走工程软件自己提供的自动化接口。西门子这边就是 Openness:TIA Portal 官方提供的 API,读写的是同一份工程数据——块的接口、变量表、实例背景、网络顺序都在里面。按官方口径,Openness 需要在本机安装并授权,且与 TIA Portal 同版本。
TiaLink 是第二条路上比较完整的一个例子:它在你自己的机器上,通过 Openness 驱动已经打开的 TIA Portal(V19 / V20),让 AI 助手能做到——配置硬件与网络、创建 FB / FC / DB / UDT、写 SCL、编译、下载到 S7-PLCSIM 做仿真、再把工程读回来。细节见 TiaLink 页面。
真正值得写下来的是它的三条限制,因为它们决定了"能不能撤回":
- 导入前先预检:要写进去的东西先过一遍,冲突在写入之前暴露;
- 默认不覆盖同名对象:你工程里已有的块不会被默默替换;
- 导入后不自动保存、不自动运行:工程文件的状态由你决定。
这三条合起来才是第 2 层的判据——不是“AI 能不能改你的工程”,而是“改坏了能不能退回上一个版本”。
举个具体例子:要让 AI 给一台输送机加一段控制逻辑,它需要知道的东西比想象的多——FB_ConveyorControl 的输入里哪个是急停回路(常闭,FALSE 才是停)、UDT_Motor 里有没有“运行中”这个成员、实例背景是单实例还是多重背景、这个 FB 被哪几个网络调用过。这些都不在自然语言里,在工程的符号表与块接口里。变量表少一个符号,编译能过,跑起来错——这就是第 2 层与第 1 层的分界。
同层对照:厂商 agent 也能"直接进项目",但天花板是品牌边界,它只服务自家硬件;第三方的 TIA Portal MCP 服务能进项目,验证要你自己搭;独立工具的取舍在于把"确认"放在哪——比如 AnyAutomation Studio 把 diff 与确认做在导入前,LADX 干脆不下载、把下载留给你自己的 IDE。
边界也要说清:TiaLink 是网关,不是模型。它保证的是"AI 的改动看得见、可撤回、可 diff",不保证逻辑对——逻辑对不对,仍然是人的事,是第 4 层的事。
四、第 3 层:从描述到"能导入的块"
这一层的判据只有一个:导入后能编译,而且图形语义没丢。
- LAD 生成(LadDoc Cloud):LadDoc 是一种 JSON 格式的梯形图文档,专为 AI 生成和修改梯形图设计。它的做法是先按 lad-ir 的 D9 规则校验,再确定性生成 SimaticML 块文件(FC / FB / OB),产物可以直接导入 TIA Portal。关键词是"确定性":同一份 LadDoc 每次生成的块一模一样,所以能进版本库、能被评审。
- LADX:把逻辑放在一个基于 PLCopen 的中间表示里,从同一份源写出 IEC 61131-3 结构化文本、西门子 SCL、罗克韦尔中性文本或 PLCopen XML,并给出"哪些干净转换了、哪些需要人决策"的报告。它的草稿在给你看之前先过 matiec 编译与 iec-checker 检查。
- AutoPLC:按厂商差异生成结构化文本,解决"同一段逻辑换一家 PLC 就写不出来"的问题。
这一层最容易被误判——看起来只是"格式转换",实际决定成败的是图形语义能不能保住:触点串并联、置位/复位、边沿、定时器实例、多重背景调用、跳转与标号。跳转在 SCL 里没有对应物,只能重写成状态机或结构化分支;这类"必须人来决定"的地方,工具越早说清楚越好。
顺带一个反直觉的点:这一层里"聪明"不如"确定"。能一次生成 90% 正确率的工具,如果你无法复现它为什么这么生成,就没法把它放进有审计要求的项目;反之,生成能力一般但每次输出一致的工具,反而能进版本库、能过评审。
五、第 4 层:跑起来,和看得见
跑起来。 云仿真服务把 LAD 按网络逐条执行:触点、线圈、定时器/计数器、FC/FB 调用与跳转,按真实 PLC 的扫描语义推进,结果确定可复现;SCL 源码也可以直接提交进去仿真。它解决的是第 1、2 层都解决不了的问题——"编译通过"和"跑起来对"是两件事。要说清的是:仿真是仿真,不是真机,I/O 时序、扫描周期余量、真实设备抖动都要在现场验证。
看得见。 云渲染把 SimaticML 渲染成图(PNG),给评审、给不看博途的人、给归档用。这一步常被忽略,但它是"改动能不能被非作者复核"的前提:一份能贴进评审文档的梯形图,比一段只有作者看得懂的 SCL 更容易拦住错误。
同层的官方对照是 PLCSIM Advanced——本地、官方、能力最全(上面提到的 Eigen Engineering Agent 就用它跑测试用例),代价是要装、要许可、要一台 Windows。选哪条路取决于你希望验证发生在谁的机器上:在自己机上,就本地;要多人、要留痕、要跑在没装博途的机器上,就云端。
这一层还有一个隐藏作用:它把"验收"从人的记忆里搬到记录里。改了哪几个网络、哪条时序跑过、谁签的字——没有这一层,这些信息一周后就没了。
六、总表
| 工具 | 装在哪 | 看得到工程 | 能改工程 | 谁验证 | 离线 |
|---|---|---|---|---|---|
| Siemens Industrial Copilot | TIA Portal 内 | 部分 | 是(项目内) | 聊天里的测试建议 | 云端,另有本地部署方案 |
| Siemens Eigen Engineering Agent | TIA Portal add-in | 是 | 是(Openness) | PLCSIM Advanced 测试用例 | 需联网 |
| Rockwell FTDS Copilot | 云端 IDE | 是 | 是 | 工程师复核 | 云端 |
| Beckhoff TwinCAT Chat | TwinCAT 内 | 是 | 是 | 无内置 | 云端 |
| CODESYS MCP server | CODESYS 3.5 | 是 | 是 | 另配 Test Manager | 取决于客户端 |
| 通用大模型(裸用 / 挂 TIA MCP) | 浏览器 / 终端 | 裸用否;挂 MCP 是 | 挂 MCP 后可改 | 自行搭建 | 可用本地模型 |
| TiaLink | 本机网关 | 是 | 是(预检、不覆盖、不自动保存) | 自行搭建(可接云仿真) | 局域网内 |
| AnyAutomation Studio | 独立 IDE | 是 | 是(带 diff 确认) | SCL 单元测试、CI | 支持本地模型 |
| LADX | 浏览器 / 桌面 | 部分 | 否(下载在厂商 IDE 里) | matiec + iec-checker | 支持本地模型 |
| LAD 生成(LadDoc Cloud) | 云端 MCP | 输入是 LadDoc | 产出可导入的块 | 导入后编译 | 云端 |
| 云仿真 | 云端 MCP | 输入是 LAD / SCL | 否(只读执行) | 扫描周期仿真 | 云端 |
| 云渲染 | 云端 MCP | 输入是 SimaticML | 否(只读渲染) | 出图供评审 | 云端 |
七、三类常见误判
误判一:模型排行榜 = 工具排行榜。 同一个模型,裸用和挂在工程接口上,产出质量差一个数量级——差别不在模型,在它能不能看到你的变量表和实例背景。看榜单时先问:这个分数是在什么上下文里拿到的。
误判二:加了 MCP 就等于能用。 MCP 只定义"AI 怎么调工具",不定义"工具怎么验证"。你能连上工程、能写块,仍然可能写出一个编译得过、跑起来错的程序。协议解决连接,不解决正确性。
误判三:编译 0 错误 = 上线没问题。 这是现场最常见的一条。编译器只查语法和一致性:它不会告诉你"没有箱子的时候进料输送机还在转",也不会告诉你"急停被写成了普通逻辑"。跨网络的逻辑缺陷,只有按清单过一遍加仿真跑时序才拦得住。
八、半天测一条链:拿 18 个网络的分拣箱当靶子
选一个真实规模的小项目——18 个网络的分拣箱程序足够。让工具做同一件事:把"有箱子才进料、满了停送、急停优先"这类描述变成程序,并且落进工程。
然后盯四类必错项,它们不报错,只在特定工况下爆:
- 边沿位放错区:上升沿/下降沿的边沿位必须在静态区;放到临时变量里每个周期重建一次,沿就丢了;
- 多重背景 FB 的引脚漏传:漏传的引脚不报错,只是保持上一次的值,错误被推迟到某个工况才出现;
- RS 与 SR 同时为真谁赢:两个在梯形图里外形几乎一样,选错不报错;
- 跳转与标号:SCL 没有 GOTO,只能重写成状态机或结构化分支。
判据只有一条:编译 0 错误不算验收,仿真里跑通时序才算。 记录三样东西:改前改后的 diff、谁做的验收、怎么回滚。没有这三样,工具再聪明也别进真项目。
| 记录项 | 通过的样子 | 不通过的样子 |
|---|---|---|
| diff | 能看出改了哪几个网络、哪个块接口 | 只有一个"已导入"的提示 |
| 回滚 | 一条命令或一次不保存就回到原状 | 只能靠备份工程 |
| 时序 | 仿真里急停优先、满料停机都验过 | "编译通过,应该没问题" |
| 归属 | 谁写的、谁审的、哪天 | 说不清是谁改的 |
九、我们的整理
第一,"模型强"和"工具强"是两件事。模型只占四层里的第一层,另外三层(看到工程、写进工程、验证)才是难的部分;这也解释了为什么厂商 Copilot 用固定模型却往往比通用大模型好用——它补的是后三层。
第二,厂商 Copilot 的天花板是品牌边界,独立工具的天花板是验证深度。现场是单一品牌,从厂商 agent 起步最省事;三个品牌混着跑,跨品牌中间表示加编译检查才是正解;工程文件不能离开自己网络,就只剩自托管网关这一条路。
第三,这批工具共同缺的是第四层。MCP 解决了"看和改",几乎没人替你解决"对不对"——所以云仿真、编译检查、出图评审这些看起来"不像 AI"的环节,反而决定了 AI 能不能真的进项目。
工具清单会继续变,这四层不会。选型时先把四层摆出来,看它站在哪一层、把哪一层的活留给了你。
相关阅读
- AI 做 PLC 编程的 7 个教训:从编译通过到现场可用
- 梯形图转 SCL 迁移指南(TIA Portal)
- AI 读 PLC 程序评审:一次真实的代码评审课
- 西门子梯形图指令手册:113 条指令一条一页
- AI × 工业 / PLC 支柱页
来源
- AnyAutomation,《Best AI for PLC Programming 2026: 9 Tools Compared》,更新于 2026-10-25:https://anyautomation.ch/en/best-ai-for-plc-programming
- LADX,《Best AI for PLC programming in 2026: how to choose and test one》,首发 2026-10-12、更新 2026-10-13:https://ladx.ai/resources/best-ai-for-plc-programming
- Wartens,《PLC Copilot Compared: Vendor-Neutral vs Vendor AI》,2026-10-12(转述西门子 2024 年 4 月新闻稿、罗克韦尔 FactoryTalk Design Studio 页面、倍福 2023 年 11 月发布):https://wartens.com/news/plc-copilot-vendor-neutral-vs-vendor-ai
- SemaPLC,《An Open-Source Agentic IDE for Generation, Verification…》,ACM,2026-10-03:https://dl.acm.org/doi/10.1145/3837729.3840496
- LLM4PLC(AICPS)、Agents4PLC(Luoji-zju)、AutoPLC(cangkui)三个开源项目的仓库说明页;西门子 Openness 安装与授权要求在官方文档中说明。
本文由汇智网(hubwiz.com)编译整理,转载请注明出处。文中工具能力均引自各家公开页面与上述对比文,未做未公开的实测;仿真与真机的差异、验证责任仍在工程团队。