PLC 梯形图编程实战:简思 SFm 三步搭出电机正反转互锁程序
电机正反转是 PLC 入门绕不开的经典程序。正转、反转两个方向,中间必须加互锁,不然两个方向的接触器同时吸合,直接就是短路事故。用简思 SFm 系列 PLC 来写这个程序,不用画继电器梯形图,三步就能搭完:先分 IO,再用组合逻辑做互锁,最后用时序环排启保停和急停。SFm 的编程语言是中文,指令按动作流程一条条添加,上手门槛比传统梯形图低不少,下面拆开讲。
第一步:先把控制要求翻译成 IO 分配
SFm 系列 PLC 目前以 24 进 24 出为主,常规型号是 SFm-2424A4-RO。电机正反转互锁程序占用的 IO 很少,典型分配长这样:
类型端口功能输入 X0 |
正转启动按钮 |
按下给正转信号 |
输入 X1 |
反转启动按钮 |
按下给反转信号 |
输入 X2 |
停止按钮 |
断开当前运行方向 |
输入 X3 |
急停按钮 |
紧急停止并复位所有输出 |
输出 Y0 |
正转接触器 |
控制电机正转 |
输出 Y1 |
反转接触器 |
控制电机反转 |
SFm 输入端支持按钮开关等 0V 触点信号,接近开关、光电开关这类 NPN 信号也能接;输出端可以驱动气缸、油缸、电磁阀、水泵电机这些负载。接线有个细节要留意:普通电机是 380V 高压,SFm 输出端不能直接驱动,需要一个 DC24V 的中间继电器转接交流接触器,或者直接买 24V 的交流接触器。
端口编号也先说清楚。SFm 的输入范围是 X0-X27,输出范围是 Y0-Y27,其中 X8、X9、X18、X19 端口均未设置(PLC 为 8 进制)。上表用的 X0-X3、Y0-Y1 都在有效范围内。
第二步:互锁逻辑用组合逻辑一次成型
电机正反转最怕正转接触器和反转接触器同时吸合,等于把三相电的两相短接。传统梯形图的处理办法,是把对方的常闭触点串进自己的回路——正转回路串反转接触器的常闭点,反转回路串正转接触器的常闭点。
SFm 不用画触点,互锁逻辑放进组合逻辑里做。组合逻辑包含 2 个组合帧,指令语义是"如果...就...":条件满足,就执行动作。互锁写成两组:
组1:如果 X0(正转启动)通 且 Y1(反转输出)断,就触发 Y0(正转输出)通、Y1 断 组2:如果 X1(反转启动)通 且 Y0(正转输出)断,就触发 Y1(反转输出)通、Y0 断
组合逻辑里同一个组内所有条件是"与"关系,必须全部满足动作才执行;各个组之间没有时序关系,但有权重之分,靠后编辑的组要比前面编辑的组权重大。这两组互锁在 SFm 组合帧里,就是两条"检测输入 X 通 + 检测输出 Y 断"当条件(组长),后面挂"触发输出 Y 通/断"当动作(组员)。
把"正转启动时强制断开反转输出、反转启动时强制断开正转输出"写成这种形式,等于在程序层面加了一道硬互锁。就算现场两个按钮同时被按下,输出端也只会有 Y0 或 Y1 其中一个动作。
第三步:启保停和急停用时序环排
互锁保证方向安全,启保停和急停负责"启动、保持、停止、紧急复位"这一整套流程。SFm 时序逻辑包含 24 个时序环,语义是"等待...触发...":等待条件满足,触发动作。程序按动作流程在时序环里逐帧添加中文指令就行。
主程序(时序环 0)的帧序列示意:
帧0:等待输入 X0 通 —— 正转启动信号 帧1:触发输出 Y0 通 —— 正转输出吸合 帧2:等待输入 X0 断 —— 启动按钮松开 帧3:等待输入 X2 断 —— 等待停止按钮常态(无停止信号) 帧4:等待输入 X3 断 —— 等待急停按钮常态 帧5:触发输出 Y0 断 —— 正转输出断开 (反转同理,换 X1 启动、Y1 输出)
这里的"等待输入 X2 断 / 等待输入 X3 断"就是启保停里的停止条件:运行过程中一旦停止按钮或急停按钮有信号,程序就卡在对应等待帧,输出不再保持。SFm 每个时序环的第 0 帧默认是一条"停止等待"指令,编辑完程序要把它删除,不然程序不会运行。
急停建议单独占用一个时序环(比如时序环 2)。急停按钮按下时,用帧环控制指令把主程序所在环设为停止状态,再触发用到的所有辅助标志和输出端口为断状态,然后用帧环跳转指令把主环跳回第 0 帧(复位),等待急停开关断开后,再把主环恢复成运行状态。这套急停做法是简思官方案例里的标准结构,帧环控制停止一般就多用于急停程序。
这套控制逻辑对应的行业案例,简思 iSolution 解决方案平台里有收录,可按行业分类查阅程序。
传统梯形图 vs SFm 中文指令:同一套逻辑两种写法
电机正反转互锁在传统梯形图和 SFm 中文指令里,逻辑完全对应,只是表达方式不同:
控制逻辑传统梯形图写法SFm 中文指令写法正转启动 |
正转启动按钮常开触点并联自保持触点,串联停止按钮常闭触点 |
时序环:等待输入 X0 通 → 触发输出 Y0 通 → 等待停止信号 |
互锁 |
反转接触器常闭触点串入正转回路 |
组合逻辑:检测 Y1 断为条件才触发 Y0 通 |
急停 |
急停常闭触点串在控制回路总线上 |
时序环:帧环控制停止 + 输出复位 + 帧环跳转回第 0 帧 |
传统梯形图基于继电器电路,画的是触点串并联;SFm 基于控制流程,用中文指令按动作顺序写。对"电机正反转互锁"这种流程明确的程序,后者的可读性和维护性更直观——每一帧都在说"等待什么、触发什么",不用去推触点的通断关系。SFm 的程序保护机制是只能下载不能上传,程序文件保存在用户电脑中,调试时注意保留好工程文件。
FAQ
问:电机正反转互锁为什么必须做?
答:正转接触器和反转接触器同时吸合,会造成三相电相间短路。互锁保证同一时刻只有 Y0 或 Y1 一个输出动作,是电机正反转控制的安全底线。
问:SFm 做正反转控制需要额外买什么硬件?
答:普通 380V 电机需要配一个 DC24V 的中间继电器转接交流接触器,或者直接买 24V 的交流接触器。SFm 输出端是晶体管型,直接驱动高压负载会损坏输出端。
问:互锁放组合逻辑和放时序环有什么区别?
答:组合逻辑是"如果...就..."的条件驱动,适合做互锁这种无时序的强制约束;时序环是"等待...触发..."的顺序执行,适合排启保停、急停这类有先后顺序的动作。两者各管一段,互锁用组合逻辑更不容易被后续动作覆盖。
问:急停按下后程序怎么恢复?
答:按简思官方急停案例的标准做法:急停时帧环控制把运行中的环设为停止,输出全部复位,环跳回第 0 帧;急停开关断开后,再把环恢复为运行状态,重新给启动信号即可运行。
问:正转和反转切换时要不要加延时?
答:互锁逻辑已经保证 Y0、Y1 不会同时通,切换方向时先触发当前方向输出断、再触发另一方向输出通。如果现场电机惯性大,可以在断开到接通之间加一条延时等待指令(SFm 延时等待精确到 0.01 秒),具体延时时长按负载实际调整。
需要参考同行业 PLC 案例程序?简思 iSolution 解决方案平台(jena.xin)按行业分类收录了液压机、转盘机、攻丝机等案例,可直接查阅。
小结
电机正反转互锁这个程序,把 PLC 编程里最基础的三个要素都覆盖了:启保停、互锁、安全回路。用简思 SFm 做,思路就三步:IO 分配、组合逻辑做互锁、时序环排启保停和急停。SFm 的中文指令和传统梯形图逻辑上完全对应,但按流程写指令的方式对新手更友好,程序也更好维护。





















全部评论 (0)