PLC 基本指令 FX2N系列的PLC共有基本指令27条,本章主要介绍这些基本指令的功能。并掌握由梯形图转化成指令表,指令表转化成梯形图的方法;然后通过一些编程的示例理解基本指令的应用和一些编程的规则。 3.1 基本指令 3.1.1 LD、LDI、OUT指令 LD,取指令,表示每一行程序中第一个与母线相连的常开触点。另外,与后面讲到的ANB、ORB指令组合,在分支起点处也可使用。 LDI,取反指令,与 LD的用法相同,只是LDI是对常闭触点。 LD、LDI两条指令的目标元件是X、Y、M、S、T、C。 OUT,线圈驱动指令。是对输出继电器(Y)、辅助继电器(M)、状态器(S)、定时器(T)、计数器(C)的线圈驱动,对输入继电器(X)不能使用。 file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image002.png 当OUT指令驱动的目标元件是定时器T和计数器C时,如设定值是常数K时,则K的设定范围如表3-1所示:程序步序号是自动生成,在输入程序时不用输入程序步号,不同的指令,程序步号是有所不同的。 表3-1 K值设定范围: 3.1.2 触点串联指令AND、ANI 用于单个常开接点的串联。 ANI,与非指令。用于单个常闭接点的串联。 AND与ANI都是一个程序步指令,串联触点的个数没有限制,该指令可以多次重复使用。使用说明如图3-2所示。这两条指令的目标元件为X、Y、M、S、T、C。
| | | | | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image005.png | | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image006.png | |
OUT指令后,通过接点对其他线圈使用OUT指令称为纵接输出或连续输出,如图3-2中的OUT Y3。这种连续输出如果顺序不错,可以多次重复。但是如果驱动顺序换成图3-3的形式,则必须用后述的MPS指令和MPR指令。
3.1.3 接点并联指令OR、ORI OR,或指令。 ORI,或非指令。 这两条指令都用于单个的常开触点并联,操作的对象是X、Y、M、S、T、C。OR是用于常开触点,ORI用于常闭触点,并联的次数可以是无限次。使用说明如图3-4所示。 file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image008.png 3.1.4 取脉冲指令LDP、LDF、ANDP、ANDF、ORP、ORF LDP,ANDP,ORP指令是进行上升沿检测的触点指令,仅在指定的位元件上升沿(OFF→ON变化时)时,接通一个扫描周期,操作的目标元件是X、Y、M、S、T、C。应用如图3-5所示。
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image010.jpg |
file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image012.jpg
file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image014.jpg | | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image015.png |
LDF、ANDF、ORF指令是进行下降沿检测的触点指令,仅在指定位元件下降时(即由ON→OFF变化时)接通1个扫描周期。操作的目标元件是X、Y、M、S、T、C。使用说明如图3-6所示。
3.1.5 串联电路块并连指令ORB 两个或两个以上的接点串联的电路称为串联电路块;当串联电路块和其它电路并联时连接时,分支开始用LD、LDI。分支结束用ORB。ORB指令和后面的ANB指令是不带操作数的独立指令。电路中有多少个串联电路块就用多少次ORB,ORB使用的次数不受限制。 ORB指令也可成批使用,但是由于LD、LDI指令的重复使用次数受限制在8次以下,请务必注意。ORB指令使用说明见图3-7所示。
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image016.png |
3.1.6 并联电路块的串联连接指令ANB
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image017.png |
两个或两个以上接点并联的电路称为并联电路块。并联电路块和其它接点串联连接时,使用ANB。电路块的起点用LD、LDI指令,并联电路块结束后,使用ANB指令与前面串联。ANB指令是无操作目标元件的指令。ANB指令的使用说明见图3-8所示。
3.1.7 多重输出指令MPS、MRD、MPP 生移动。 这些指令都是不带操作数的独立指令。MPS、MRD、MPP的使用见下例各图(图3-9、3-10、3-11)所示。
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image020.jpg |
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image021.png |
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image022.png |
3.1.8 主控及主控复位指令MC、MCR
MC,主控指令。用于公共串联触点的连接。 file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image026.png 图3-13 MC、MCR指令的应用 file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image028.png 3.1.9 取反INV指令 INV指令是在将执行INV指令之前的运算结果反转的指令,是不带操作数的独立指令。使用如图3-15所示。当X0断开,则Y0接通,如果X0接通则Y0断开。 file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image032.png (a) 梯形图 (b)指令表 (c) 时序图 图3-15 取反指令INV 3.1.10 置位与复位指令SET、RST。 SET为置位指令,使动作保持; RST复位指令,使操作保持复位。SET、RST指令的使用说明如图3-16所示。由波形图可见,当X0接通,即使再变成断开,Y0也保持接通。X1接通后,即使再断开,Y0也将保持断开。SET指令的操作目标元件为Y、M、S。而RSTfile:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image033.png
指令的操作元件是Y、M、S、D、V、Z、T、C。
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image034.png |
3.1.11 微分输出指令PLS、PLF PLS—上升沿微分输出。当输入条件为ON时(上升沿),相应的输出位元件Y或M接通一个扫描周期。 PLF—下降沿微分输出。当输入条件为OFF时(下降沿),相应的输出位元件Y或M接通一个扫描周期。 这两条指令都是2个程序步,它们的目标元件是Y和M,但特殊辅助继电器不能作为目标元件。其动作过程如图3-17所示。 使用这两条指令时,要特别注意目标元件。例如,在驱动输入接通时,PLC由运行→停止→运行,此时PLS M0动作,但PLS M600(断电保持辅助继电器)不动作。这是因为M600在断电停机时其动作也能保持。
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image037.png |
(a) (b)
file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image038.png(a)梯形图 (b)指令表 (c) 波形图 3.1.12 NOP、END指令 NOP—空操作指令。 END—程序结束指令。
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image040.png |
NOP指令是不带操作数,在普通指令之间插入NOP指令,对程序执行结果没有影响,但是将已写入的指令换成NOP,则被换的程序被删除,程序发生变化。所以用NOP指令可以对程序进行编辑。如图3-18,当把AND X1换成NOP,则触点X1被消除,ANI X2换成NOP,触点X2被消除。
END是程序结束指令,当一个程序结束时,后面用END,写在END后的程序不能被执行。如果程序结束不用END,在程序执行时会扫描完整个用户存储器,延长程序的执行时间,有的PLC还会提示程序出错,程序不能运行。 例3-1:根据下例梯形图写出指令表。 file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image045.png file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image046.png file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image047.png 图3-19 例1梯形图和指令表 3.2 基本指令的应用 了解了PLC的基本指令后,我们学习利用基本指令进行编程,用基本指令能完成大部分逻辑控制的编程。 3.2.1 可编程控制器梯形图编程规则。 1、水平不垂直。 file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image050.pngfile:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image051.png 图3-20 触点水平不垂直 2、多上串右。
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image054.png |
file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image057.png (a) 多上 (b) 串右 图3-21 多上串右 3、线圈右边无接点
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image060.png |
图3-22 线圈右边无触点 4、不能有双线圈输出。 Y3是双线圈输出,当出现双线圈输出时,前面的输出不起作用,只有最后的一条输出才起作用。避免双线圈的方法是把触点并联。如图3-23。 file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image063.png file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image064.png 图3-23 不能有双线圈输出 3.2.2 程序举例 当我们要进行一个程序设计时,一般要按照这么几个过程进行:(1)、理解控制过程。这是写程序非常关键的一步,不了解控制过程,也就无法写出正确的程序。这一过程可以是客户提出,如果不能准确理解,可以到现场进行观测。(2)、选择所需的硬件,并分配I/O地址,画出I/O图。(3)、进行程序设计,画出梯形图。(4)、对程序进行调试。下面我们通过一些简单例子来说明如何进行编程。 例3-2: 电动机正反转的控制。控制要求:当按下正转按钮时,电动机正转;按下反转按钮,电动机反转;按下停止按钮,电动机马上停止。当电动机发生过热时,也能自动停止。 分析:要控制电动机正反转,必须要两个交流接触器, 图3-24(a)正反转控制主电路 其主电路如图3-24(a)。所以PLC有两个输出信号;有四个输入信号,其I/O图如图3-24(b)。另外,由于电动机控制正反转的接触器不能同时接通,所以必须进行互锁。根据控制要求写出梯形图和指令表如图3-25:
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image068.png |
(a) 梯形图 (b) 指令表 图3-25 正反转控制梯形图和指令表 例3-3:有两台电动机:按下启动按钮,第一台电动机运行10分钟后停止,切换到第二台运转,20分钟后,第二台自动停止。试编出PLC控制程序。 分析:输入信号可以用一个启动按钮。每个电动机用一个交流接触器控制,所以有两个输出信号。控制I/O图如图3-26。程序中要计时,所以要用到定时器。其地址分配和梯形图、指令表如下。 X0—启动按钮 Y1—电动机1 Y2—电动机2
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image070.png |
图3-26 两台电动机控制的I/O图
file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image075.png
file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image076.png 图3-27 例3梯形图和指令表 讨论:将上题改成两台电机按上述规律运行5个周期后自动停止,另外要求在程序中添加一个急停按钮,应如何修改程序? 例3-4: file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image079.png喷泉控制设计:有A、B、C三组喷头,要求启动后A组先喷5s,之后B、C同时喷,5s后B停止,再过5s,C停止而A、B同时喷,再过半2s C也喷;A、B、C同时喷5s后全部停止,再过3s重复前面过程;当按下停止按钮后,马上停止。时序图如3-28。试编出PLC的控制程序。 图3-28 喷泉控制时序图 分析:这是一个关于时序循环的问题,这一类的问题编程有一定的规律,掌握这个规律,编程是一件很容易的事。 第一步,根据时序图中各负载发生的变化,定下要用定时器的编号和各定时器要延时的时间,如图3-28。 第二,由于各定时器是按先后循序接通的,所以要用前一个定时器的触点接通后一个定时器的线圈,再用最后一个定时器的触点去断开最前一个定时器的线圈,这样就能完成了定时器的循环计时。 第三,写驱动负载的程序,根据时序图中各负载上升沿和下降沿的变化,上升沿表示是负载要接通,用相应的常开触点,下降沿表示负载断开,用相应的常闭触点。在一个周期中负载有多次接通的,用各路触点并联。其程序和I/O地址分配如下。 X0—启动按钮 X1—停止按钮 Y0—A组喷头 Y1—B组喷头 Y2—C组喷头
| | | | | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image088.png | | | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image089.png | |
图3-29 喷泉控制程序梯形图和指令表 例3-5:交通灯的控制 假设有一个十字路口的交通信号灯控制要求时序图如图3-30。南北方向:红灯亮25秒,转到绿灯亮25秒,再按1秒钟一次的规律闪烁3次,然后转到黄灯亮2秒。东西方向:绿灯亮20秒,再闪烁3次,转到黄灯亮2秒,然后红灯亮30秒。完成一个周期,如此循环运行。试编写PLC控制程序。
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image090.png |
| | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image091.png |
图3-30 交通灯的平面示意图和控制时序图
分析:这也是有关时序循环的问题,所以编程方法和例3是一样的。一秒钟的闪烁可用M8013。 X0—启动按钮 X1—停止按钮 各信号灯的地址如控制时序图所示。控制程序如下。 file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image096.pngfile:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image101.pngfile:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image100.png file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image099.png 图3-31 交通灯控制梯形图 习 题 3-1 根据题3-32图(a)、(b)的梯形图写出指令表 file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image106.png file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image108.jpg
图3-32(a) 图3-32(b)
| | | | | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image110.png | | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image109.png | |
3-2 根据题3-33图的指令表写出梯形图。
图3-33图 3-3 有三台电动机,要求启动时每隔10min依此起动一台,每台运转2小时后自动停机。运行中还可以用停止按钮将三台电动机同时停机;试编出PLC的控制程序。 3-4 某皮带运输机由M1、M2、M3、M4四台电动机拖动,要求:(1)、起动时,按M1→M2→M3→M4顺序启动,间隔均为3秒。(2)、停止时,按M4→M3→M2→M1顺序停止,间隔也为3秒。试编写PLC的控制程序。 3-5 一台电动机运转20s后停止5s,重复如此动作5次,试编写PLC控制程序。 file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image112.png | | file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image113.png |
file:///C:/WINDOWS/TEMP/msohtmlclip1/01/clip_image114.png3-6某广告招牌有四个灯,要求动作如图3-34时序图所示,循环进行,当按下停止按钮时能马上停止。试编出PLC控制程序。
图3-34 图3-35 3-7 某一车库门要求自动控制,如图3-35所示,车库的门内外各有一传感器,用来检测是否有车通过,当有车要进车库时,门外传感器检测到有车来,门自动打开,车开进车库,开到上限时,开门过程结束,当门内传感器测到车已通过时,开始关门。碰到下限,关门结束。当车要出车库时,门内传感器检测到有车通过,库门打开,当车通过门外的传感器后,车库门自动关上。车库门外有一数字牌,用来显示车库内停车的数量,当车库内停满10辆车后,如外面再有车进来,车库门不开,但库内的车可以开出车库,试用PLC编出控制程序,完成车库门的控制。 3-8做一个四路枪答器,每一位枪答者台上有一个枪答按钮和一个指示灯。主持人,台上有一个开始按钮和一个复位按钮;另外还有一个七段数码管和一个蜂鸣器。枪答规则:当主持人喊开始后(按下了开始按钮),四位枪答者开始枪答,谁先枪到,相应台上的指示灯亮,而且数码管显示他的位号。主持人按了复位按钮,下一循环又可以开始枪答。如果主持人没有喊开始,谁先按下枪答按钮,相应台上的指示灯亮,数码管显示他的位号,同时风鸣器发出报警声,表示其违规,主持人按下复位,才能消除。试用PLC编出控制程序。 m8000是特殊的辅助继电器,在运行时m8000就一直闭合,m8001和m8002,是初始化脉冲,在plc刚启动时闭合一个周期,只不过8001是常闭,8002是常开,m8011,8012,8013,是时间脉冲,周期分别是,10ms,100ms,1000ms(一秒),m8020,m8021,m8022,是标实位,代表益处,零位,结尾。还有其他的特殊辅助继电器,常用的就这些,想了解的更多,你需要一本编程手册。 LD X0ALTP Y0按一下X0,Y0=ON,再按一下,Y0=OFF,交替输出。 FX2N三菱PLC设计4次/秒闪烁 要一秒里闪四次 ,I/O输入x1,输出Y5用FXGPWIN软件编程,给出IL,你写入FXGP也好,写入GX Developer也好,T246是1ms定时器所以设置K125就可以,这种双分频电路使用一个定时器足以。LD X1 ALTP M0 LDI M0RST Y5LD M0OUT T246 K125LD T246ALTP Y5RST T246ENDM0,M1,M241,M251,M384都是通用继电器,用法是一样的。 M0 ~M499为通用辅助继电器 共500个M500~M3071为断电保持继电器 共2572个M500~M1023可通过设定改为通用辅助继电器。
|