收藏级干货:三菱PLC全系列核心指令详解
发布时间:2025-12-24来源: 点击:35
一、基础核心:取指令与输出指令(LD/LDI/LDP/LDF/OUT)
这组指令是梯形图编程的“起点”,负责搭建逻辑行的基础触点与输出线圈,是所有程序的入门必备。
1. 指令功能拆解
LD(取指令):将一个常开触点与左母线连接,每一个以常开触点开头的逻辑行,都必须用LD指令开启。比如用X0常开触点控制Y0,逻辑行开头就用LD X0。
LDI(取反指令):与LD功能类似,但连接的是常闭触点,是常闭触点开头逻辑行的“标配”。
LDP(取上升沿指令):检测常开触点的上升沿(由OFF→ON的瞬间),仅在这个瞬间接通一个扫描周期,常用于触发一次性动作,比如启动信号的边沿检测。
LDF(取下降沿指令):检测常闭触点的下降沿(由ON→OFF的瞬间),同样仅接通一个扫描周期,适合捕捉信号断开的瞬间动作。
OUT(输出指令):驱动线圈动作的指令,相当于逻辑运算结果的“执行端”,比如将LD X0的逻辑结果输出到Y0线圈,就用OUT Y0。
2. 关键使用说明
LD、LDI不仅能连接左母线的触点,还能与ANB、ORB(块操作指令)配合,实现复杂的块逻辑运算。
LDP、LDF是“瞬间触发”指令,无论信号后续是否保持,都只在边沿瞬间有效,这是与LD、LDI的核心区别。
这组指令的目标元件限定为X(输入)、Y(输出)、M(辅助继电器)、T(定时器)、C(计数器)、S(状态继电器),不能用于其他类型元件。
OUT指令可以连续使用(相当于线圈并联),但对定时器和计数器,OUT之后必须跟常数K设置参数;另外,OUT不能用于输入元件X。
二、逻辑运算:触点串联与并联指令
如果说取指令是“搭建单个触点”,那串联和并联指令就是“组装逻辑链条”,通过触点的串并联实现与、或、与非、或非等基础逻辑运算。
1. 触点串联指令(AND/ANI/ANDP/ANDF)
用于在已有逻辑行上串联单个触点,实现“同时满足多个条件”的逻辑判断。
AND(与指令):串联常开触点,完成逻辑“与”运算。比如LD X0之后串联X1,就表示“X0和X1都接通时,后续逻辑才有效”。
ANI(与反指令):串联常闭触点,实现“与非”运算,即“前序条件满足且该触点断开时,逻辑有效”。
ANDP/ANDF:分别是上升沿、下降沿检测的串联指令,功能与LDP、LDF类似,但作用于串联触点而非开头触点。
使用要点:这组指令都针对单个触点,串联次数没有限制,但目标元件同样仅限X、Y、M、T、C、S。比如OUT M101之后,用T1的触点串联驱动Y4,这种情况属于“连续输出”,完全合规。
2. 触点并联指令(OR/ORI/ORP/ORF)
用于在逻辑行中并联单个触点,实现“满足任一条件即可”的逻辑判断。
OR(或指令):并联常开触点,完成“或”运算。比如LD X0之后并联X1,就表示“X0或X1任一接通,后续逻辑都有效”。
ORI(或非指令):并联常闭触点,实现“或非”运算。
ORP/ORF:上升沿、下降沿检测的并联指令,作用于并联触点。
使用要点:并联触点的左端需接在LD、LDI等开头指令处,右端与前一触点右端相连,且并联次数不限。比如LD X0之后,连续用OR X1、OR X2,就构成了“X0、X1、X2任一接通即可”的逻辑。
三、复杂逻辑:块操作指令(ORB/ANB)
当逻辑电路由多个“触点组”构成时,单个触点的串并联已无法满足需求,这时候就需要块操作指令来实现“组与组”之间的运算。
ORB(块或指令):用于两个及以上串联电路块之间的并联。比如“X0与X1串联”和“X2与X3串联”这两个电路块,要实现“任一电路块接通即可”,就需要用ORB将两者并联。
ANB(块与指令):用于两个及以上并联电路块之间的串联。比如“X0或X1并联”和“X2或X3并联”这两个电路块,要实现“两个块都接通才有效”,就用ANB将两者串联。
使用核心规则
无论是ORB还是ANB,每个电路块的开头都必须用LD或LDI指令,这是块操作的“前提”。
多个电路块并联/串联时,ORB/ANB的使用次数理论上无限制,但连续使用不能超过8次,否则会导致程序逻辑混乱。
推荐将每个电路块编写完成后立即使用ORB/ANB,避免集中使用造成逻辑判断失误。
四、状态保持:置位与复位指令(SET/RST)
在工业控制中,经常需要“按下启动键后保持运行,按下停止键才停止”的功能,这就离不开SET(置位)和RST(复位)指令,它们能让元件状态稳定保持。
SET(置位指令):使目标元件置为ON并保持,即使触发信号断开,元件状态仍不变。比如X0接通时SET Y0,X0断开后Y0依然保持ON。
RST(复位指令):使目标元件置为OFF并保持清零,与SET功能相反。比如X1接通时RST Y0,X1断开后Y0仍保持OFF。
实战应用与说明
典型场景:用X0(启动)、X1(停止)控制Y0(电机运行)。程序编写为“LD X0 SET Y0;LD X1 RST Y0”,就能实现“启动后保持运行,停止后保持停机”的效果。
SET目标元件为Y、M、S;RST目标元件更广泛,包括Y、M、S、T、C、D、V、Z,常用来给数据寄存器清零或复位定时器/计数器。
同一元件可多次使用SET和RST,最终状态由最后执行的指令决定。比如先SET Y0再RST Y0,Y0最终为OFF。
五、瞬间触发:微分指令(PLS/PLF)
微分指令与LDP、LDF类似,都是捕捉信号边沿,但PLS/PLF是直接控制线圈的瞬间动作,更适合需要“脉冲触发”的场景。
PLS(上升沿微分指令):在输入信号上升沿(OFF→ON)时,使目标元件ON一个扫描周期,之后自动恢复OFF。
PLF(下降沿微分指令):在输入信号下降沿(ON→OFF)时,使目标元件ON一个扫描周期。
使用说明
比如用PLS X0控制M0,当X0由OFF变ON时,M0仅接通一个扫描周期,可用于触发计数器计数或数据寄存器赋值等一次性操作。目标元件仅限Y和M,且PLS/PLF仅捕捉边沿,不依赖信号持续状态。
六、批量控制:主控指令(MC/MCR)
当多个线圈同时受一个或一组触点控制时,逐一串联触点会浪费存储空间,主控指令能实现“一个总开关控制多组逻辑”,大幅简化程序。
MC(主控指令):将左母线移到MC触点后面,使后续所有逻辑都受该触点控制,相当于“总开关”。
MCR(主控复位指令):恢复原左母线位置,结束MC的控制范围,是MC的“配套指令”。
实战案例
用X0(总开关)控制Y0、Y1两个线圈,程序编写为“LD X0 MC N0 M100;LD M100 OUT Y0;LD M100 OUT Y1;MCR N0”。当X0接通时,M100有效,Y0、Y1可正常受控;X0断开时,MC与MCR之间的逻辑被跳过,Y0、Y1复位。
MC/MCR目标元件为Y、M(非特殊辅助继电器),MC占3个程序步,MCR占2个程序步。
嵌套等级最多8级,编号从N0到N7,复位时需从大编号开始。
MC触点断开时,非积算定时器、OUT驱动的元件会复位,而积算定时器、SET/RST驱动的元件会保持状态。
七、多重输出:堆栈指令(MPS/MRD/MPP)
在多重输出电路中,比如一个触点控制多个后续逻辑分支,堆栈指令能存储中间运算结果,避免重复编写相同触点,是复杂程序的“简化工具”。三菱FX系列PLC有11个栈存储单元,专门用于这类操作。
MPS(进栈指令):将当前运算结果存入栈存储器第一段,原有数据依次下移。
MRD(读栈指令):读取栈存储器第一段数据,数据不移动,可反复读取。
MPP(出栈指令):读取栈存储器第一段数据,该数据从栈中删除,其余数据依次上移。
核心规则:MPS与MPP必须配对使用,栈层次最多11层;堆栈指令无目标元件,仅负责数据的存储与读取。
八、程序控制:逻辑反、空操作与结束指令(INV/NOP/END)
这组指令不直接参与逻辑运算,而是负责程序的逻辑调整、调试与结束控制,是编程与调试的“辅助工具”。
INV(反指令):将当前运算结果取反,比如原结果为ON,执行INV后变为OFF。注意INV不能直接连接母线,也不能单独使用,需接在逻辑串中间。
NOP(空操作指令):不执行任何操作,但占一个程序步,可用于短接触点、覆盖无用指令或调试时预留程序位置。PLC清除用户程序后,存储器内容会全部变为NOP。
END(结束指令):标记程序结束,扫描到END时停止执行后续程序,缩短扫描周期。调试时可插入多个END,分段验证程序正确性。
九、写在最后:指令学习的核心技巧
很多新手学指令时容易陷入“死记硬背”的误区,其实指令学习的关键是“理解场景+实战练习”:
按功能分类记忆:将指令按“基础触点-逻辑运算-状态保持-程序控制”分类,比零散记忆更高效。
免责声明:本站所提供信息均来源于网友提供或网络搜集,由本站编辑整理,如涉及版权问题,请联系本站管理员予以更改或删除