使用指南
用 AI 编写 CODESYS 梯形图(LD)
很多机器和工厂统一使用梯形图,而大多数面向 CODESYS 的 AI 工具只会写 ST。借助 Rung Coder,AI 能创建真正的 LD 网络,并修改现有梯形图中的单个网络。本指南列出支持的内容,以及每次修改如何核对。
AI 能画什么
只有你明确要求时才使用梯形图;没有特别说明时,AI 用 ST 编写新代码。
- 触点:常开、常闭,以及上升沿、下降沿触点。
- 串联(与)和并联(或)逻辑,包括自锁电路。
- 线圈:普通、置位、复位和取反;一个网络可以驱动多个线圈。
- 比较和运算块,例如 GT、LT、EQ、ADD、MUL、MOVE、LIMIT 和 SEL,可带或不带使能输入。
- TON、CTU 等功能块以及库功能块,每个输出引脚都单独连到线圈或变量。
- 跳转、标签、返回、网络标题和注释。
修改现有梯形图
AI 可以把 LD POU 读成由网络、触点、线圈和功能块组成的模型,因此能理解没有文本形式的图形化代码。修改时一次只改一个网络,可以追加、插入、更新或删除,其他网络、声明、动作和方法都原样保留。LD 动作和 LD 方法也能用同样方式修改,还可以新增 LD 动作。
每次修改如何核对
- 用结构化的格式描述网络,写入 CODESYS 梯形图编辑器。
- 随后 Rung Coder 从 CODESYS 读回这个网络,与预期进行对比。
- 如果 CODESYS 实际保存的逻辑与写入的不一致,就撤销这次修改,不留下改了一半的状态。
- 重新编译工程;错误和警告与其他代码一样逐一修复。
提示词示例
新建 LD 程序 PRG_LD_Pump: 网络 1:bStartPump 或 bPumpOn(自锁),与 非 bStopPump,与 非 bDryRun -> 线圈 bPumpOn。 网络 2:TON_Dry,IN := bPumpOn 与 非 bFlowOk,PT := T#5S;Q -> 置位线圈 bDryRun。 网络 3:bReset -> 复位线圈 bDryRun。 编译直到 0 错误 0 警告。
使用边界
修改网络适用于当前的 CODESYS 梯形图编辑器;用旧版 FBD/LD/IL 组合编辑器做的梯形图可以读取,但不能修改。每个网络最多包含一个功能块或运算块。全部功能已在 CODESYS V3.5 SP22 上验证。对于其他图形化语言(FBD、CFC 和 SFC),AI 可以创建对象和声明,但实现部分只用 ST 或 LD 编写。
CODESYS 官方 MCP Server 能读取图形化语言,但不能新建或修改,详见对比文章。