← 返回程序库

单按钮启停控制

西门子 电机控制 👁 29 浏览

用一个按钮的上升沿交替控制电机启动与停止,实现单按钮启停。

⬇ 下载程序包(指令表+梯形图+参数+说明)
🧩 梯形图
AI0.0ANM0.2=M0.1按钮上升沿检测:本次为1且上次为0时,M0.1接通一个扫描周期LDI0.0=M0.2记忆按钮当前状态,供下一扫描周期比较AM0.1ANM0.0SM0.0状态翻转:每次上升沿到来,M0.0状态取反(启动↔停止)AM0.1AM0.0RM0.0状态翻转:M0.0已置位时,上升沿将其复位LDM0.0=Q0.0输出:运行标志M0.0驱动电机接触器Q0.0
📋 指令表(可复制)
// 单按钮启停控制(西门子S7 STL风格) // 1. 按钮上升沿检测 A I0.0 AN M0.2 = M0.1 // 2. 记忆按钮当前状态 LD I0.0 = M0.2 // 3. 上升沿将运行标志置位 A M0.1 AN M0.0 S M0.0 // 4. 上升沿将运行标志复位 A M0.1 A M0.0 R M0.0 // 5. 运行标志驱动输出 LD M0.0 = Q0.0
点击上方面板可复制指令表
⚙️ 参数说明
名称说明示例值
I0.0启停按钮输入,常开触点,按一次切换一次状态ON/OFF脉冲
Q0.0电机接触器输出线圈ON=运行
M0.0运行状态标志位,1=运行,0=停止0或1
M0.1按钮上升沿脉冲,仅保持一个扫描周期0或1
M0.2按钮上一扫描周期状态记忆位0或1
📖 原理讲解

用一个按钮的上升沿交替控制电机启动与停止,实现单按钮启停。

点位说明

类型地址说明
II0.0启停按钮(常开,按一次切换状态)
QQ0.0电机输出接触器线圈
MM0.0运行状态标志位
MM0.1按钮上升沿脉冲辅助位
MM0.2按钮上一扫描周期状态记忆位

指令表

// 单按钮启停控制(西门子S7 STL风格)
// 1. 按钮上升沿检测
A I0.0
AN M0.2
= M0.1
// 2. 记忆按钮当前状态
LD I0.0
= M0.2
// 3. 上升沿将运行标志置位
A M0.1
AN M0.0
S M0.0
// 4. 上升沿将运行标志复位
A M0.1
A M0.0
R M0.0
// 5. 运行标志驱动输出
LD M0.0
= Q0.0

原理讲解

本程序用一只常开按钮I0.0实现电机的启动/停止交替控制。核心思路是:把按钮的每一次按下(上升沿)当作一次“切换命令”,用一个中间标志位M0.0记录电机当前应处于运行还是停止状态。

第一、二行构成边沿检测电路:M0.2保存按钮上一扫描周期的状态,当I0.0由0变1(本次为1、上次为0)时,M0.1在一个扫描周期内为1,即产生一个上升沿脉冲。

第三、四行是状态翻转逻辑:当M0.1为1时,若M0.0当前为0则执行S置位(启动),若M0.0当前为1则执行R复位(停止)。由于S与R分处两行且条件互斥,同一时刻只会执行其中一个,不会出现双线圈冲突。

第五行将运行标志M0.0送到输出Q0.0,驱动电机接触器。

工程要点:
1. 必须使用上升沿检测,否则按住按钮时M0.0会被反复翻转,无法稳定控制。
2. M0.1为脉冲信号,只在按钮按下的那一扫描周期有效,保证一次按下只切换一次。
3. 若现场按钮存在抖动,可在I0.0输入侧加硬件RC滤波或在程序中加入10~20ms的TON去抖定时器。
4. 实际工程中建议在输出回路串入热继电器常闭触点(如I0.1)作过载保护,即把第五行改为:LD M0.0 / A I0.1 / = Q0.0,并在故障时复位M0.0。
5. 若需断电保持运行状态,可将M0.0换成有保持功能的M位或DB位。

本程序由 PLC工控网 AI 生成,供参考学习使用;投入生产前请结合现场实际点位、保护与安全要求核对。

🔗 相关程序
电机正反转互锁控制(三菱FX系列)
mitsubishi · motor · 👁 101
电机启停自锁控制(三菱FX)
mitsubishi · motor · 👁 111
星三角降压启动(三菱FX,T0延时切换)
mitsubishi · motor · 👁 119
单按钮启停控制(三菱FX,ALT指令)
mitsubishi · motor · 👁 82
多台电机顺序启动(三菱FX,前级互锁)
mitsubishi · motor · 👁 105
变频器多段速控制(三菱FX,端子选速)
mitsubishi · motor · 👁 72
🤖 用 AI 生成类似程序 🧰 更多PLC工具
💬 工程师点评 (0)
暂无点评,来抢沙发~