用 Claude AI 进行 PLC 编程 ?
我们将使用 Claude AI Desktop 来测试我们能否用梯形图对 PLC 进行编程。
AI模型价格对比 | AI工具导航 | ONNX模型库 | Vibe Coding教程 | PLC在线仿真器 | Tripo 3D | Meshy AI | ElevenLabs | KlingAI | ArtSpace | Phot.AI | InVideo
我们将使用 Claude AI Desktop 来测试我们能否用梯形图对 PLC 进行编程。AI 学到的东西已经足够多,能在编程时派上用场了吗?我们将把结果输入 Do-More Designer PLC 模拟器中验证。
请记住,任何 AI 输出的结果都需要验证,以确保信息的准确性。在部署到现实世界之前,一定要测试你的逻辑。这是调试(commissioning)流程的一部分。
1、Claude AI Desktop 能对 PLC 编程吗?
从头开始,我们先提出这个问题:
你能用梯形图对 PLC 编程吗?
是的,我可以帮你用梯形图进行 PLC 编程!我可以:
- 编写梯形图程序,用于各种控制应用
- 解释梯形图概念,比如梯级、触点、线圈、定时器和计数器
- 把过程描述转换为梯形图
- 对现有的梯形图代码进行故障排除和优化
- 提供显示梯形图结构的图(不过是以文本形式)
- 处理常见指令,比如常开/常闭触点、锁存器、定时器(TON、TOF、RTO)、计数器(CTU、CTD)、比较指令和数学函数
我不能做的:
- 在实际硬件上下载或测试程序
- 使用专有的 PLC 编程软件(如 RSLogix、TIA Portal 等)
- 在没有详细信息的情况下调试与硬件相关的问题
如果你有一个具体的控制问题或应用需要帮助,只要描述你需要 PLC 做什么即可——比如:
- 要控制的过程
- 输入和输出
- 期望的行为和顺序
- 你正在使用的具体 PLC 品牌/型号
然后我就能为你编写梯形图逻辑,并解释它是如何工作的。你想编程什么?
2、AI 创建简单的启停电路
我想用一个常开的启动按钮和一个常闭的停止按钮来编程一个启停电路。这应该用梯形图来实现。
我将用梯形图为你创建一个基本的启停电路。这是最基础的 PLC 程序之一!
START-STOP CIRCUIT LADDER LOGIC
================================
Rung 1:
| |
| I:0/0 I:0/1 O:0/0 O:0/0 |
|—-| |——–| |————( )———-| |
| STOP START MOTOR |
| | |
| | O:0/0 |
| |———-| | |
| SEAL-IN |
| |图示:
I:0/0 = Stop pushbutton (Normally Closed)
I:0/1 = Start pushbutton (Normally Open)
O:0/0 = Motor output
—-| |—- = Normally Open contact
—-| |—– = Normally Closed contact
——-( )— = Output coil工作原理:
- 静止状态: 停止按钮(NC)闭合,启动按钮断开,电机处于关闭状态。
- 启动: 当你按下 START 按钮(I:0/1)时,电流流过闭合的 STOP 触点和现在已闭合的 START 触点,使 MOTOR 输出(O:0/0)通电。
- 自锁/保持: 当 O:0/0 通电时,自锁触点(也是 O:0/0)与 START 按钮并联闭合。这样即使你松开 START 按钮,电路也能保持导通。
- 停止: 按下 STOP 按钮会断开 NC 触点,切断电路并使电机断电。自锁触点也随之断开,电路复位。
要点:
- STOP 按钮具有优先权(因为它在串联回路中)
- 自锁触点形成一个"记忆",保持输出导通
- 这也被称为"锁存"电路
你希望我添加一些功能吗?比如指示灯、定时器或额外的安全互锁?
梯形图看起来不正确。
你说得完全对!让我重新画得更清楚一些:
START-STOP CIRCUIT LADDER LOGIC
================================
Rung 1:
| |
| I:0/0 I:0/1 O:0/0 |
|—–| |———-| |———————( )————-|
| STOP | MOTOR |
| | |
| | O:0/0 |
| +—–| | |
| SEAL-IN |
| |布局的更好说明:
- 左侧竖线 = 电源轨
- 右侧竖线 = 回流轨
- I:0/0(停止)= 串联的常闭触点
- I:0/1(启动)和 O:0/0(自锁)= 两条并联支路("+"表示分支点)
- O:0/0 = 末端的电机输出线圈
电流路径:
- 电流流过 NC STOP 触点
- 然后分成两条并联路径:
- 通过 NO START 按钮,或者
- 通过 NO SEAL-IN 触点
- 只要任一路径闭合,电源就能到达 MOTOR 线圈
你希望我把它创建为可视化图形吗?或者梯形图你更喜欢特定的格式?
尝试把梯形图创建为可视化图形。
我来为你创建一个可视化的梯形图!

完美!现在你可以正确地看到梯形图的视觉效果了。下面是怎么解读它:
电路流向:
1. 左侧电源轨 → STOP 按钮(NC) → 连接点
2. 从连接点,电流可以流过两条并联路径:
- 上路径: 通过 START 按钮(NO)
- 下路径: 通过 SEAL-IN 触点(NO)
3. 两条路径重新汇合,继续通向 MOTOR 输出线圈 → 右侧电源轨
运行方式:
- 按下 START: 闭合 I:0/1,使 O:0/0 通电(电机运转),并且 O:0/0 自锁触点闭合以保持电路
- 松开 START: 因为自锁触点已经闭合,电机继续运转
- 按下 STOP: 断开 I:0/0,切断电路并停止电机
这就是工业控制中使用的标准自保持(锁存)电路。现在清楚了吗?
梯形图仍然看起来不正确。
你说得对,让我修复它!我会用正确的梯形图符号重新绘制。

好了!现在梯形图有了正确的符号:
关键特征:
- STOP(I:1/0): 常闭触点,用斜线表示
- START(I:1/1): 常开触点,中间有明显断口
- MOTOR 自锁(O:2/0): 与 START 并联的另一个常开触点
- MOTOR(O:2/0): 输出线圈,用圆圈和 ( ) 符号表示
- 并联支路: START 和 SEAL-IN 触点并联,所以任何一个都能使电机通电
底部的图例显示了每个符号的含义。现在看起来正确了吗?
是的,现在看起来正确了,但停止按钮接线是常闭的,所以梯形图符号应该是常开才能工作。
你说得完全对!这是 PLC 编程中我搞错的一个关键点。
当物理 STOP 按钮接成常闭时,梯形图符号应该是常开,因为:
- 物理 NC 按钮未按下 = 触点闭合 = 输入为 ON(1)= 梯形图中的 NO 触点闭合
- 物理 NC 按钮按下 = 触点断开 = 输入为 OFF(0)= 梯形图中的 NO 触点断开
让我修正这个图:

完美!现在正确了。谢谢你抓住了这个重要的细节!
关键原则:
- 物理 STOP 按钮: 常闭(NC)——静止时触点是闭合的
- 梯形图符号: 常开(NO)——因为当输入 I:1/0 得电时(按钮未按下),触点闭合
现在它是如何工作的:
- 正常运行: 物理 NC 停止按钮闭合 → 输入 I:1/0 为 ON → 梯形图中的 NO 触点闭合 → 允许电流流过
- 按下 STOP 时: 物理 NC 停止按钮断开 → 输入 I:1/0 为 OFF → 梯形图中的 NO 触点断开 → 切断电路并停止电机
这是 PLC 编程中的一个基本概念——你编程的是物理设备接线的相反状态,因为你读取的是输入状态,而不是物理触点状态。
现在电路可以正确工作了!感谢你让我保持准确。
3、针对 Do-More Designer 模拟器修正 AI 输出
谢谢。我使用的是带模拟器的 Do-More Designer 编程软件。你能把输入和输出地址改一下吗?
当然可以!Do-More Designer 使用不同的寻址约定。让我把它更新为正确的 Do-More 地址:
完美!我已经把地址更新为 Do-More Designer 格式了:
输入地址:
- X0 = STOP 按钮(物理 NC 按钮)
- X1 = START 按钮(物理 NO 按钮)
输出地址:
- Y0 = MOTOR 输出(既是输出线圈,也是自锁触点)
这些是 Do-More Designer 的标准离散 I/O 地址。当你在模拟器中编程时,你将能够:
- 切换 X0 和 X1 来模拟按下按钮
- 观察 Y0 在你按下 START 时通电并锁存
- 观察 Y0 在你按下 STOP 时断电
现在电路在 Do-More Designer 模拟器中应该可以完美运行了!
梯形图显示不正确。
让我把整个图重新画一遍,确保所有内容都正确显示:

好了!我已经用正确的 Do-More Designer 地址把整个图重新画干净了:
地址:
- X0 = STOP 按钮输入(梯形图中用 NO 符号,因为物理按钮是 NC)
- X1 = START 按钮输入(NO 符号)
- Y0 = MOTOR 输出(既用于输出线圈,也用于自锁触点)
现在图显示正确了吗?
是的,谢谢你。我现在将在 PLC 编程软件中试试。
太好了!祝你在 Do-More Designer 中编程顺利。
当你在模拟器中测试时,请记住:
- X0 初始应为 ON(因为物理 NC 停止按钮静止时是闭合的)
- 点击 X1 模拟按下 START——Y0 应该通电并保持导通
- 点击 X0 模拟按下 STOP——Y0 应该断电
如果你遇到任何问题,或者想添加定时器、指示灯或额外控制等功能,随时可以问我。编程愉快! 👍
4、编写 AI 生成的启停电路梯形图
使用我们的 Do-More Designer PLC 编程软件,我们可以输入 AI 创建的梯形图。你会看到它提供了程序工作方式的全面描述,以及完整的文档。我们可以把它用在实际程序中。

这个梯形图提供了尽可能最快的梯级。你会看到 Stop 输入是第一个触点。如果这个触点未闭合,逻辑将停止扫描,并进入下一级逻辑。

Claude AI Desktop 应用创建的 PLC 梯形图最终运行良好。AI 为了最终提供一个可运行的程序而经历的迭代过程,也教会了那些不熟悉梯形图工作原理及其循环特性的人。

Do-More 系列介绍了如何使用带内置 PLC 模拟器的 Do-More Designer 软件。这是一个免费的完整软件包,还可以通过运行 PLC 模拟器的计算机的以太网端口进行通信。
原文链接: Can I Use CLAUDE AI to Program a PLC Successfully?
汇智网翻译整理,转载请标明出处