CoDeSys入门实战一起学习(二十五):梯形图(LD)触点与线圈指令精讲及电机启停案例

一、触点指令核心解析

触点是梯形图中控制能流通断的核心元件,对应布尔变量状态,分为基础触点和特殊触点,均为"软触点",无物理损耗,状态由PLC映像寄存器存储单元控制。

|-------|---------|--------------|---------|
| 触点类型 | 图形符号 | 逻辑状态 | 应用场景 |
| 常开触点 | ──┤ ├── | 变量为1时闭合 | 正常启动条件 |
| 常闭触点 | ──┤/├── | 变量为0时闭合 | 停止、互锁条件 |
| 上升沿触点 | ──┤P├── | 0→1变化时接通一个周期 | 单次触发 |
| 下降沿触点 | ──┤N├── | 1→0变化时接通一个周期 | 下降沿检测 |

1. 基础触点(常开/常闭)

  • 常开触点(NO):默认状态为断开(FALSE),当对应布尔变量为TRUE时闭合,允许能流通过;变量为FALSE时保持断开。状态传递规则:仅左侧能流为TRUE时,才将自身状态同步至右侧,否则右侧状态为FALSE。
  • 常闭触点(NC):默认状态为闭合(TRUE),当对应布尔变量为TRUE时断开,阻断能流;变量为FALSE时保持闭合。传递规则与常开触点一致,仅初始状态和触发逻辑相反。

2. 特殊触点(上升沿/下降沿)

用于检测变量状态跳变,仅在跳变瞬间传递能流,持续1个扫描周期后复位,适用于触发一次性动作(如计数器启动、信号报警)。

  • 上升沿触点:当变量从FALSE→TRUE跳变时,触点瞬间闭合(1个周期),传递能流;其他状态均断开。
  • 下降沿触点:当变量从TRUE→FALSE跳变时,触点瞬间闭合(1个周期),传递能流;其他状态均断开。

3. 线圈指令核心解析

线圈对应实际设备状态,接收左侧能流信号并控制变量状态,核心分为瞬时线圈、置位/复位线圈,需严格规避双线圈问题。

  • 瞬时线圈:左侧能流为TRUE时,线圈通电(变量为TRUE);能流为FALSE时,线圈断电(变量为FALSE),状态随能流实时变化。
  • 置位线圈(S):左侧能流为TRUE时,线圈置位(变量锁定为TRUE),即使后续能流消失,仍保持TRUE;需对应复位线圈触发才能恢复FALSE。
  • 复位线圈(R):左侧能流为TRUE时,线圈复位(变量锁定为FALSE),即使后续能流消失,仍保持FALSE;需对应置位线圈触发才能恢复TRUE。

二、实操案例:电机启停控制(带自锁与急停)

1. 控制需求

实现电机的手动启停控制:① 按下启动按钮(bStart),电机运行(bMotorRun)并自锁;② 按下停止按钮(bStop)或急停按钮(bEmgStop),电机停止;③ 急停优先级最高,触发后需复位急停才能再次启动。

2. 变量声明

|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| PROGRAM PLC_PRG VAR bStart:BOOL; //启动按钮(常开,TRUE=按下) bStop:BOOL; //停止按钮(常开,TRUE=按下) bEmgStop:BOOL; //急停按钮(常闭,TRUE=触发急停) bMotorRun AT%QX0.1:BOOL; //电机运行输出(TRUE=运行) END_VAR |

3. 程序及指令应用解析

  1. 自锁逻辑:通过bMotorRun常开触点与bStart常开触点并联,触发后保持能流,实现电机持续运行。当bStart按下时,能流通过触点触发bMotorRun瞬时线圈通电,同时并联的bMotorRun触点闭合,即使bStart松开,能流仍可通过并联触点维持,实现自锁。
  2. 停止逻辑:串联bStop常开触点和bEmgStop常闭触点,当bStop按下(触点闭合,阻断能流)或bEmgStop触发(常闭触点断开,阻断能流)时,bMotorRun线圈断电,电机停止。
  3. 优先级控制:bEmgStop采用常闭触点,默认闭合,触发后直接断开能流,无需依赖其他逻辑,确保急停优先级最高。
相关推荐
做cv的小昊6 小时前
大语言模型系统:【CMU 11-868】课程学习笔记02——GPU编程基础1(GPU Programming Basics 1)
人工智能·笔记·学习·语言模型·llm·transformer·agent
sunxunyong11 小时前
CGroup配置
linux·运维·服务器
炽烈小老头11 小时前
【每天学习一点算法 2026/03/08】相交链表
学习·算法·链表
hy____12311 小时前
Linux_网络编程套接字
linux·运维·网络
智算菩萨11 小时前
GPT-5.4原生操控电脑揭秘:从Playwright脚本到屏幕截图识别,手把手搭建你的第一个自动化智能体
人工智能·gpt·ai·chatgpt·自动化
小夏卷编程12 小时前
Ubuntu 20.04.4 宝塔 docker showdoc v3.2 更新到v3.7.3
运维·docker·容器
康康的AI博客12 小时前
农业工业变革:如何通过DMXAPI中转提升自动化效率
运维·人工智能·自动化
北京耐用通信12 小时前
协议融合的工业钥匙:耐达讯自动化网关如何打通CC-Link IE转DeviceNet的通信壁垒
人工智能·物联网·网络协议·自动化·信息与通信
2301_8035545212 小时前
linux 以及 c++编程里对于进程,线程的操作
linux·运维·c++
LuDvei12 小时前
windows 中 vs code远程连接linux
linux·运维·服务器·windows