3.2.7 置位与复位指令 SET,RST 1
1,指令用法
( 1) SET( 置位 ),置位指令
( 2) RST( 复位 ),复位指令用于各继电器 Y,S和 M等,置位和复位,还可在用户程序的任何地方对某个状态或事件设置或清除标志 。
2,指令说明表 3.13 置位与复位指令
3.2.7 置位与复位指令 SET,RST 2
( 1) SET和 RST指令有自保功能,在图 3.16( a) 中,
X000一旦接通,即使再断开,Y000仍保持接通 。
( 2) SET和 RST指令的使用没有顺序限制,并且 SET
和 RST之间可以插入别的程序,但只在最后执行的一条才有效 。
( 3) RST指令的目标组件,除与 SET相同的 YMS外,
还有 TCD。
例 3.10阅读图 3.16( a) 梯形图,试解答:
( 1) 写出图 3.16( a) 梯形图所对应的指令表 。
( 2) 指出各指令的步序并计算程序的总步数 。
( 3) X000和 X001的波形如图 3.17( a),画出 Y000的波形图 。
解:
3.2.7 置位与复位指令 SET,RST 3
图 3.16 SET和 RST指令举例
3.2.7 置位与复位指令 SET,RST 4
( 1) 用 FXGP先画好梯形图,然后用 工具 _ 转换 命令,即可得到图 3.16( b) 所示的指令表 。 各指令的步序已经在此程序中标出,并可得到总的程序步为 21步 。
( 2) 各指令的步序已经在此程序中标出,并可得到总的程序步为 26步 。 若人工计算,要注意图 3.16( b) 中步序 15 RST D0
,此指令为 3个程序步 。
( 3) 根据 SET和 RST指令功能,容易分析得出:常开 X000接通时,线圈 Y000得电并保持,一直至常开 X001接通时,线圈 Y000
才失电并保持,所以 Y000的波形如图 3.17( b) 所示 。
图 3.17 输入 /输出波形
3.2.8 脉冲输出指令 PLS,PLF 1
1,指令用法
( 1) PLS( 脉冲 ),微分输出指令,上升沿有效 。
( 2) PLF( 脉冲 ),微分输出指令,下降沿有效 。
指令用于目标组件的脉冲输出,当输入信号跳变时产生一个宽度为扫描周期的脉冲 。
2,指令说明表 3.14 脉冲输出指令
3.2.8 脉冲输出指令 PLS,PLF 2
( 1) 使用 PLS/PLF指令,组件 Y,M仅在驱动输入接通
/断开后一个扫描周期内动作 。
( 2) 特殊继电器 M不能用作 PLS或 PLF的目标组件 。
例 3.11阅读图 3.18( a) 梯形图,试解答:
( 1) 写出图 3.18( a) 梯形图所对应的指令表 。
( 2) 指出各指令的步序并计算程序的总步数 。
( 3) X000和 X001的波形如图 3.19( a) 所示,画出 M0,M1和
Y000的波形图 。
解,
( 1) 用 FXGP先画好梯形图,再用 工具 _ 转换 命令,即可得到图 3.18( b) 所示的指令表 。
( 2) 各指令步序已在图 3.18( b) 程序中标出,总程序步为 11步
( 3) X000接通上升沿_ M0线圈得电并保持一个扫描周期_ M0
常开闭合使 Y000得电_ X001接通下降沿_ M1线圈得电并保持一个扫描周期,M1常开闭合使 Y000复位 。
3.2.8 脉冲输出指令 PLS,PLF 3
图 3.18 PLS和 PLF指令举例图 3.19 输入 /输出波形
3.2.9 主控与主控复位指令 MC,MCR 1
1,指令用法
( 1) MC( 主控 ),公共串联接点的连接指令 ( 公共串联接点另起新母线 ) 。
( 2) MCR( 主控复位 ),MC指令的复位指令 。
这两个指令分别设置主控电路块的起点和终点 。
2,指令说明
( 1) 在图 3.20( a) 中,当输入 X000接通时,执行 MC
表 3.15 主控与主控复位指令与 MCR之间的指令 。 当输入断开时,MC与 MCR指令间各组件将为如下状态:计数器,累计定时器,用
SET/RST指令驱动的组件,将保持当前的状态;非累计定时器及用 OUT指令驱动的软组件,将处断开状态 。
( 2) 执行 MC指令后,母线 ( LD,LDI) 移至 MC接点
,要返回原母线,用返回指令 MCR。 MC/MCR指令必须成对使用 。
( 3) 使用不同的 Y,M组件号,可多次使用 MC指令 。
但是若使用同一软组件号,会出现双线圈输出 。
( 4) MC指令可嵌套使用,即在 MC指令内再使用 MC
指令,此时嵌套级的编号就顺次由小增大 。 用 MCR指令逐级返回时,嵌套级的编号则顺次由大减小,如图
3.22( a) 所示 。 嵌套最多大不要超过 8级 (N7)。
3.2.9 主控与主控复位指令 MC,MCR 2
例 3.12 阅读图 3.20( a) 梯形图,试解答:
( 1) 写出图 3.20( a) 梯形图所对应的指令表 。
( 2) 指出各指令的步序并计算程序的总步数 。
解,( 1) 用 FXGP先画好 图 3.20( a) 梯形图 ( 串联在母线上的接点 M100( 嵌套级为 N0) 可以不必画 ),再用 工具 _ 转换 命令
3.2.9 主控与主控复位指令 MC,MCR 3
图 3.20 MC和 MCR指令举例梯形图将变为图 3.21所示;同时可得到对应图 3.20( a) 梯形图的指令表如图 3.20( b) 所示 。
( 2) 各指令的步序已经在图 3.20( b) 程序中标出,并可得到总的程序步为 11步 。 注意图 3.20( b) 中两条主控指令,1 MC N0
M100和 8 MCR N0 分别为 3个和 2个程序步 。
例 3.13 分析图 3.22( a) 梯形图,指出主控嵌套级数,并且简述程序的执行过程 。
3.2.9 主控与主控复位指令 MC,MCR 4
图 3.21 MC和 MCR指令举例梯形图解,图 3.22( a) 为 2级主控嵌套,执行过程如图 3.22( b) 。 N1嵌套在 N0之中 。
3.2.9 主控与主控复位指令 MC,MCR 5
图 3.21 MC和 MCR指令举例梯形图
1,指令用法
( 1) NOP( 空操作 ),空一条指令 ( 想删除一指令 )
( 2) END( 程序结束 ),程序结束指令 。
调试中恰当使用 NOP和 END,会带来许多方便 。
2,指令说明
( 1) 在程序中事先插入 NOP指令,以备在修改或增加指令时,可使步进编号的更改次数减到最少 。
3.2.10 空操作与程序结束指令 NOP,END 1
表 3.16 NOP和 END指令
3.2.10 空操作与程序结束指令 NOP,END 2
图 3.23 用 NOP指令取代已写入的指令引起电路改变
( 2) 用 NOP指令取代已写入的指令,从而修改电路 。
LD,LDI,AND,ANI,OR,ORI,ORB和 ANB等指令若换成 NOP指令,电路结构将会改变 。
① AND和 ANI指令改为 NOP,相当于串联接点被短路,
如图 3.23( a) 示例 。
② OR和 ORI指令改为 NOP,相当于并联接点被开路,如图 3.23( b) 示例 。
③ 如用 NOP指令修改后的电路不合理,梯形图将出错
,如图 3.23( c) ~ ( e) 所示 。
( 3) NOP是一条空操作指令,CPU不执行目标指令 。
NOP在程序中占一个步序,该指令在梯形图中没有对应的软组件来表示它,但可从梯形图中的步序得到反映 。
( 4) 执行程序全清操作后,全部指令都变成 NOP。
3.2.10 空操作与程序结束指令 NOP,END 3
( 5) END指令用于程序的结束,无目标操作数 。 END
指令还可在程序调试中设置断点,先分段插入 END指令,再逐段调试,调试好后,删去 END指令 。
例 3.14 阅读图 3.24( a) 梯形图,试解答:
( 1) 将图 3.24( a) 梯形图中的接点 X001用 NOP指令代替,画出对应的梯形图 。
( 2) 将图 3.24( a) 梯形图中的接点 X001和 X003用 NOP代替
,画出对应的梯形图 。
( 3) 比较图 3.24( a) 梯形图和作上述变换后的梯形图所对应的指令表 。
解,( 1) 将图 3.24( a) 中的接点 X001用 NOP指令代替,与左母线相连的接点 X001被取消,此时编程软件 FXGP是将 X003的左端接在上一逻辑行的 Y000与 X002相连处 ( 同一逻辑层次点 )
,得到的梯形图如图 3.24( b) 所示 。
3.2.10 空操作与程序结束指令 NOP,END 4
( 2) 将图 3.24( a) 梯形图中的接点 X001和 X003都用 NOP指令代替,在图 3.24( b) 中将 X003短路,得到的梯形图如图 3.24
( c) 所示 。
( 3) 对应图 3.24( a) ~ ( c) 梯形图的指令表,分别如图 3.25
( a) ~ ( c) 所示 。
3.2.10 空操作与程序结束指令 NOP,END 5
梯形图程序设计规则
( 1) 梯形图中的阶梯都是始于左母线,终于右母线 。 每行的左边是接点的组合,表示驱动逻辑线圈的条件,而表示结果的逻辑线圈只能接在右边的母线上,接点是不能出现在线圈的右边的 。
所以,图 3.26( a) 应改画为图 3.26( b) 。
3.3 梯形图程序设计方法
3.3.1 梯形图程序编程基本原则图 3.26 接点不能出现在线圈的右边的原则
( 2) 接点应画在水平线上,不要画在垂直线上 。 如图 3.27( a
) 中接点 X005与其它接点之间的连接关系不能识别,对此类桥式电路,要将其化为连接关系明确的电路 。 按从左至右,从上到下的单向性原则,可以看出有 4条从左母线到达线圈 Y000的不同支路,于是就可以将图 3.27( a) 不可编程的电路化为在逻辑功能上等效的图 3.27( b) 的可编程电路 。
3.3.1 梯形图程序编程基本原则 2
( 3) 并联块串联时,应将接点多的支路放在梯形图的左方 。 串联块并联时,应将接点多的并联支路,放在梯形图的上方 。 这样安排,程序简洁,指令更少 。 图 3.28( a) 和图 3.29( a) 应分别改画为图 3.28( b) 和图 3.29( b) 为好 。
图 3.27 不可编程的电路化为等效的可编程电路
3.3.1 梯形图程序编程基本原则 3
( 4) 双线圈输出不宜若在同一梯形图中,同一组件的线圈使用两次或两次以上,称为双线圈输出 。 双线圈输出只有最后一次有效,一般不宜使用 。
图 3.28 上重下轻原则图 3.29 左重右轻原则
3.3.1 梯形图程序编程基本原则 4
设输入采样时,输入映象区中 X001= ON,X002= OFF。 第 1次执行时,Y003= ON,Y004= ON;第 2次执行时,X002= OFF
,Y003= OFF;输出刷新时,实际输出,Y003= OFF,Y004=
ON
图 3.30 不宜使用双线圈输出
3.3.2 梯形图的等效变换 1
在不改变逻辑关系的前提下,好的等效变换往往能化难为简,事半功倍 。
( 1) 在串联电路中,按梯形图设计规则改变组件的位置,使编程变为可能 。 如图 3.26电路中,通过将线圈
Y000移到右母处,应能使 FXGP编译通过 。
( 2) 在电路块串并联电路中,按,左重右轻,上重下轻,的原则变换梯形图,使程序更优化 。 如图 3.28和图
3.29两电路,即为典型的实例 。
( 3) 在不易识别串并联关系的电路中,按从上到下,
从左到右的单向性原则,找出所有能到达目标线圈的不同支路,变换梯形图为可编程电路,如图 3.27电路即为典型的实例 。
3.3.2 梯形图的等效变换 2
( 4) 在双线圈输出电路中,按,最后一次才有效,的原则变换梯形图,使双线圈输出电路变为单线圈输出电路,如图 3.30电路即为典型的实例 。
例 3.15 对图 3.31( a) 梯形图作等效变换,使成为合理梯形图 。
解:
接点不能出现在线圈的右边,把图 3.31( a) 梯形图改画成等效的梯形图如图 3.31( b) 所示 。
图 3.31 梯形图的等效变换
3.3.2 梯形图的等效变换 3
例 3.16 对图 3.32( a) 梯形图作等效变换,使成为合理的梯形图解,方法 1:双线圈输出时,只有最后一次才有效 。 因此,在图
3.32( a) 的虚线框中的逻辑行可忽略,剩下的梯形图与原梯形图是等效的 。
图 3.32 梯形图的等效变换
3.3.2 梯形图的等效变换 4
方法 2:
将图 3.32( a) 梯形图作相应变换,得到单线圈的梯形图如图
3.32( b) 所示 。 图 3.32( b) 梯形图对 Y000的逻辑控制关系与原梯形图是等效的 。
方法 3:
引入辅助寄存器是一个常用的好方法,往往能使一些难以解决的逻辑控制问题迎刃而解 。 在图 3.32( c) 中,A和 B接点控制
M100,C,E和 D接点控制 M101,再由 M100和 M101接点的并联组合去控制 Y000。 这样逻辑关系没有变,却把双线圈梯形图变为单线圈的梯形图 。 所以图 3.32( c) 所示梯形图是与原梯形图等效的 。
3.3.3 输入信号的最高频率 1
输入信号的最高频率限制:由于 PLC采用集中 I/ O刷新的扫描工作方式,导致了在程序执行阶段和输出刷新阶段,即使输入信号发生变化,输入映象区的内容也不会改变 。 如果输入信号变化过快,有可能被 PLC检测不到
。 所以输入信号的变化周期必须比 PLC的扫描周期长,
因此输入信号的最高频率就受到了限制 。
设扫描周期一般为 10ms,输入滤波器的响应延迟也为
10ms,则输入脉冲的宽度至少为 20ms,即其周期至少为 40ms 。 可 以 估 算 出,输 入 脉 冲 频 率 应 ≤ 1 /
40ms=25Hz。 这种滞后响应,在一般的工业控制场合是完全允许的,但对于要求响应速度快场合就不适应了 。
3.3.3 输入信号的最高频率 2
对于高速场合,PLC除了提高扫描速度,还在软硬件上采取相应的措施,以提高 I/O的响应速度 。 如在硬件方面,选用快速响应模块,高速计数模块 。 FX2系列 PLC
还提供 X0~ X7共 8个高速输入端,其 RC滤波器时间常数仅为 50μ s。 在软件方面采用 I/O立即信息刷新方式,
中断传送方式和能用指令修改的数字式滤波器等 。 因此
,可以处理的输入信号的最高频率有很大提高 。 FX2N
系列 PLC是小型化,高速度,高性能和所有方面都是相当于 FX系列中最高档次的机型,它的 1个基本指令运行时间只需 0.08μ s,可读取最大 50μ s的短脉冲输入,可见输入信号的最高频率可以达到 20KHz。
3.4 基本指令应用程序举例 1
例 3.17 参照图 3.33设计一个三相异步电机正反转 PLC控制系统 。
设计步骤
( 1) 功能要求,① 当接上电源时,电机 M不动作 。
图 3.33 三相异步电机正反转控制线路
② 按下 SB1,电机正转;按 SB3,电机停转 。
③ 按下 SB2,电机反转;按 SB3,电机停转 。
④ 热继电器触点 FR断,电机过载保护停转 。
3.4 基本指令应用程序举例 2
③ 按下 SB2,电机 M反转;按 SB3,电机 M停转 。
④ 热继电器触点 FR动作,电机 M因过载保护而停止 。
图 3.34 三相异步电机正反转控制线路的动作顺序
3.4 基本指令应用程序举例 3
( 2) 输入 / 输出端口设置表 3.17 三相异步电机正反转 PLC控制 I/O端口分配表
( 3) 梯形图三相异步电机正反转控制系统梯形图如图 3.35( a),其动作顺序完全符合表 3.17,只要按表 3.17的 I/O分配作相应替换即行 。
( 4) 指令表指令表如图 3.35( b) 所示 。
( 5) 接线图接线图如图 3.36所示 。
3.4 基本指令应用程序举例 4
为防止正反转启动按钮同时按下危险情况,一方面,在梯形图中设了互锁,将常闭 X001和 Y001串联在反转电路中,将常闭 X002
和 Y002串联在正转电路中 。 另一方面,在外部也设置了如图 3.36
所示的用实际常闭触点组成的互锁 。
图 3.35 三相异步电机正反转控制
3.4 基本指令应用程序举例 5
为防止正反转启动按钮同时按下危险情况,一方面,在梯形图中设了互锁,将常闭 X001和 Y001串联在反转电路中,将常闭 X002
和 Y002串联在正转电路中 。 另一方面,在外部也设置了如图 3.36
所示的用实际常闭触点组成的互锁 。
图 3.36 PLC控制的接线图
3.4 基本指令应用程序举例 6
例 3.18 设计一个用 FX1S- 20MT的输出端子直接驱动直流小电动机正反转控制系统 。 直流电机的规格在 12V/0.5A以下 。
直流电机正反转驱动电路,是通过电源极性的切换来控制电机转向,可参照桥式整流电路来设计 。 只要将桥式整流电路中的四个整流二极管用四个继电器的触点来取代,负载则用直流电机来取代,如图 3.37( a) 所示 。
图 3.37 直流电机正反转驱动与接线
3.4 基本指令应用程序举例 7
控制电路设计可参照例 3.17交流异步电机的控制,不同的是要控制的继电器线圈有 4个,动作过程,参看图 3.38的 动作顺序表 。
( 1) 功能要求
① 当接上电源时,电机 M不动作 。
图 3.38 直流电机正反转控制动作顺序表
3.4 基本指令应用程序举例 8
② 按下 SB1后,电机正转;再按 SB3后,电机停转 。
③ 按下 SB2后,电机反转;再按 SB3后,电机停转 。
④ 热继电器触点 FR动作后,电机 M因过载保护而停止 。
( 2) 输入 / 输出端口设置
( 3) 梯形图
( 4) 指令表
( 5) 接线图表 3.18 直流电机正反转 PLC控制 I/O端口分配表
3.4 基本指令应用程序举例 9
FX1S-20MT是晶体管输出,输出结构如图 3.41所示 。 当晶体管截止时,输出端子 Y0与公共端 COM0断开 。 当晶体管导通时,
Y0与 COM0接通,要注意的是导通是单向的,即导通时的电流流向只能是从 Y0流向 COM0。 所以图 3.37( a) 中 4个开关的实际接法应如图 3.37( b) 所示 。 图 3.40就是按此画出的接线图 。
图 3.40 PLC控制的接线图图 3.41 晶体管输出结构
3.4 基本指令应用程序举例 10
例 3.19 流水行云 ―― 设计一个彩灯控制的 PLC系统 。
( 1) 功能要求
① 合启动钮 SB2,彩灯 HL0~ HL7(Y000~ Y007)按间隔 2s点亮

② 至彩灯 HL0~ HL7全亮,维持 5s;此后全熄,维持 3s; 自动重复下一轮循环 。
( 2) 输入 / 输出端口设置 表 3.19 彩灯 PLC控制的 I/O端口分配表
3.4 基本指令应用程序举例 11
( 3) 梯形图图 3.42( a)彩灯 PLC控制的梯形图
3.4 基本指令应用程序举例 12
( 4) 指令表图 3.42( b)彩灯 PLC控制的指令表
3.4 基本指令应用程序举例 13
( 5) 接线图图 3.43 PLC彩灯控制接线图本章小结
1,三菱 FX2系列 PLC的编程组件如附录表 A.1所示,供编程时查阅 。
2,常用的梯形图,指令表,流程图等编程语言,各有其特点 。 请按需要选用 。
3.FX2系列 PLC共有 20条基本逻辑指令,这些指令已经能解决一般的继电接触控制问题,要求能熟练掌握
。 对于 20条基本逻辑指令,应当注意掌握每条指令的助记符名称,操作功能,梯形图,目标组件和程序步数 。 FX2系列 PLC基本逻辑指令表,见附录 B的,表
B.1 FX2系列 PLC基本逻辑指令表,,供查阅用 。
4.熟练掌握用梯形图进行程序设计方法 。
5.对于复杂的顺控系统,以 SFC语言的状态转移图方式进行程序设计,是解决顺序控制问题的有效方法 。