把PLC仿真搬进浏览器
2026-08-26 04:25:12 · chineseheadlinenews.com · 来源: 量子位
AI正在改变软件开发方式。过去需要从零编写的程序,现在可以用自然语言描述需求,再由AI生成代码初稿。
PLC开发中也是如此,工程师只需描述一个电机启停逻辑、一套水箱液位控制,或者一个四层电梯控制器,AI就能生成相应的PLC程序。
但从工业现场的角度看,问题并没有到此结束。
PLC控制的是产线、设备、阀门、电梯和安全联锁。它不是“代码看起来对”就可以交差,而是必须确认:程序能不能编译,运行时是否符合需求,异常场景下会不会出错,现场人员能不能理解它的控制行为。
一个共识正在形成:AI写PLC代码不是终点,工程闭环才是PLC智能化开发的关键。
针对这一方向,上海交通大学联合Sema研究团队推出SemaPLC:把AI Agent与PLC工程工具链彻底连接起来,让自然语言需求可以一路走到可编译、可验证、可仿真的控制程序。
这不是一次普通的功能增强,而是一次开发方式的变化:从“AI帮人写一段代码”,变成“AI参与PLC程序从需求到验证的完整流程”。

SemaPLC架构:Agent即工程闭环
SemaPLC不是把一个聊天窗口简单接到代码编辑器上,而是一个面向PLC开发全流程的AI智能工作台。
它的核心设计思路是:将AI Agent与PLC编译、运行、变量读写、行为验证、过程仿真等工程能力解耦封装,并以工具套件的形式提供,让PLC智能化开发能力既能在IDE里使用,也能被其他系统集成和复用。
这意味着SemaPLC不是一个孤立的终端应用,而是一套面向工程团队的基础设施:上层可以接入不同的大模型,中间由Agent组织任务闭环,下层由PLC工具套件执行真实工程动作。

Web IDE:把复杂流程放进一个窗口
Web IDE是用户直接使用的浏览器工作台。工程师可以在同一个界面里完成需求输入、代码查看、梯形图阅读、变量监控、验证结果查看和过程仿真。
这让原本分散在多个软件里的工作,被收拢到一个连续的交互流程中。
PLC工具套件:让AI真正接入工程能力
PLC工具套件负责底层工程动作,包括编译、部署运行、变量读取与强制、轨迹记录、行为验证和仿真生成。
PLC开发通常遵循IEC 61131-3标准,其中结构化文本ST是一类常用的文本化编程语言。SemaPLC围绕ST程序的生成、编译、运行和验证建立工具链,让AI生成的结果可以进入真实的PLC工程流程。
这些工具既可以被Web IDE调用,也可以通过命令行和MCP服务对外提供能力。也就是说,SemaPLC不是一个只能在单一界面里使用的产品,而是一套可以被其他系统、插件或自动化流程复用的PLC智能化基础能力。
核心能力:从生成代码到验证行为
用自然语言生成PLC程序
用户可以直接描述控制需求,例如:
设计一个四层电梯控制器:按下楼层呼叫按钮后,对应指示灯亮起,电梯运行到目标楼层,到达后开门三秒,再自动关门。
SemaPLC会根据需求生成PLC结构化文本程序。工程师可以直接阅读、修改和继续完善这份代码。
它适合快速生成常见控制逻辑的初稿,例如电机启停、急停联锁、交通灯、停车场闸机、水箱液位控制、电梯运行控制和顺序动作控制。
这里的重点不是替代工程师,而是让工程师更快进入“审查逻辑、完善工艺、确认行为”的阶段。
自动验证程序行为
SemaPLC不只检查程序能不能编译,还会进一步检查程序运行起来是否符合需求。
以电梯控制为例,系统可以检查:

如果某个场景没有通过,SemaPLC会给出变量变化和预期结果之间的差异,并让AI根据反馈继续修复程序。
这让PLC开发从“写完后凭经验判断”,变成“写完后有验证结果支撑”。
在浏览器里看到设备怎么动
PLC控制逻辑通常藏在变量和代码里,不够直观。SemaPLC把过程仿真直接放进浏览器,让用户能看到程序控制下的设备动作。
程序运行时,系统会实时读取PLC变量,并驱动画面中的设备元素变化。变量不再只是表格里的数字,而会变成可见的动作:电梯移动、门打开、指示灯点亮、水位上升、阀门开关。
这对开发、演示和培训都很有帮助。工程师可以更快发现逻辑问题,非专业人员也能更直观地理解程序到底在控制什么。
一个界面完成开发、验证和仿真
SemaPLC把过去分散在多个工具里的工作,整合到一个浏览器窗口中。

对工程师来说,这意味着更少的工具切换、更快的调试反馈,以及更清晰的程序理解方式。
产品价值:让PLC智能化开发真正落到流程里
SemaPLC的价值,不只是提高写代码的速度,更重要的是让PLC开发流程更清晰、更可验证、更容易协作。

实验验证:效果优于业界代表性方案
SemaPLC的Agent闭环不只是产品理念。团队对它进行了系统的实证评估,研究结果已整理成论文在arXiv公开(SemaPLC: A Project-Grounded, Verification-Gated Agent Harness for PLC Code Generation),代码已在GitHub开源。
实验选取业界三个代表性系统作为基线:LLM4PLC、AutoPLC和Agents4PLC。为保证对比公平,所有方法调用相同的模型接口,并在GPT、DeepSeek、Qwen、GLM、MiniMax等7个主流大模型上分别评测。评测设置包含两个基准:函数级基准由117个独立的PLC功能块生成任务组成,由独立于生成过程的形式化验证工具统一判分;项目级基准由65个真实工业项目任务组成,覆盖十类工业装置,生成的控制逻辑必须能在既有项目中编译、部署并正确运行。
函数级评测:全部7个模型上第一
在最严格的验证通过率指标上,SemaPLC在全部7个模型上均排名第一,平均通过率72.6%,比最强基线Agents4PLC(63.9%)高8.8个百分点。值得注意的是,即使搭配其中表现最弱的模型,SemaPLC仍达到67.5%,高于所有基线方法的平均水平。

项目级评测:三层指标全部领先
项目级评测从三个层面度量生成质量:程序能否在真实项目中通过编译(集成编译)、程序文本是否满足需求断言(静态行为)、部署到真实PLC运行时后行为是否与参考实现一致(动态行为)。SemaPLC在三项指标的均值上均排名第一。

差距最显著的是动态行为:SemaPLC得分52.2,比最强基线(31.4分)高出20.8分,约为其1.7倍。这一优势在全部7个模型上保持稳定,得分从未低于30分。相比之下,三个基线方法在各自表现最差的模型上会跌至个位数。
关键发现:真实运行验证不可替代
实验中最值得注意的现象是:各方法的静态行为得分相差不足10分,动态行为得分却差距悬殊。这说明代码“看起来正确”并不等于“运行正确”,只有把程序部署到真实运行时执行,才能区分方法的可靠性。这正是SemaPLC坚持验证闭环的依据:逐层对照的消融实验显示,规范检查、编译、运行时验证每叠加一层,动态行为分都会显著提升,从仅生成的23.1分逐步提升到54.1分。
实验还验证了这套闭环的模型无关性:与去掉验证闭环、仅让模型直接生成代码的对照组相比,接入闭环后所有模型均有提升,且模型越弱提升越大,最高提升33.3个百分点,模型之间的表现差距也显著收窄。对企业而言,这意味着无需绑定特定大模型,即可获得稳定的工程质量。
写在最后
过去,PLC开发往往依赖分散工具和个人经验,AI生成代码之后,工程师仍然需要承担大量确认、调试和验证成本。SemaPLC希望改变这一点:工程师只需在第一步表达需求,后续的代码生成、编译检查、自动验证、过程仿真与结果反馈,都可以在闭环中自动完成。
这让AI不再只是“写代码的工具”,而是开始进入真实工程流程,成为PLC开发中的智能协作者。它最终交付的不是一段需要反复确认的代码,而是一个可验证、可仿真、可复用、可被信任的工程结果。SemaPLC的核心价值,也正在于此:让AI编程从“能生成”走向“可交付”,真正成为工程师的助力。