第4章FX系列PLC的指令系统及编程方法.ppt
第4章FX系列PLC的指令系统及编程方法,4.1FX系列PLC的内部系统配置4.2FX系列PLC的基本指令4.3常用单元电路及编程4.4步进指令和功能指令,4.1FX系列PLC的内部系统配置,PLC内部存储器的每一个存储单元均称为元件,各个元件与PLC的监控程序、用户的应用程序合作,会产生或模拟出不同的功能。后面介绍的各类继电器、定时器、计数器都指此类软元件。元件的数量及类别是由PLC监控程序规定的,它的规模决定着PLC整体功能及数据处理的能力。FX系列PLC是三菱公司后期的产品。命名方式如下,下一页,返回,4.1FX系列PLC的内部系统配置,序列号0,0S,0N,2,2C,1S,2N,2NC。I/O总点数0-256。单元类型M基本单元;E输入输出混合扩展单元及扩展模块;EX输入专用扩展模块;EY输出专用扩展模块。输出形式R继电器输出;T晶体管输出;S晶闸管输出。,上一页,下一页,返回,4.1FX系列PLC的内部系统配置,特殊品种区别DDC电源、直流输入;A1AC电源、交流输入;H大电流输出扩展模块1A/点;V立式端子排的扩展模块;C接插口输入/输出方式;F输入滤波1ms的扩展模块;LTTL输入扩展模块;S独立端子无公共端扩展模块。,上一页,下一页,返回,4.1FX系列PLC的内部系统配置,4.1.1输入/输出I/O继电器输入继电器用X表示,是PLC中用来专门存储系统输入信号的内部虚拟继电器。它又被称为输入的映像区,它可以有无数个动合触点和动断触点,在PLC编程中可以随意使用。这类继电器的状态不能用程序驱动,只能用输入信号驱动。FX系列PLC的输入继电器采用八进制编号。输出继电器用Y表示,是PLC中专门用来将运算结果信号经输出接口电路及输出端子送达并控制外部负载的虚拟继电器。它在PLC内部直接与输出接口电路相连,它有无数个动合触点与动断触点,这些动合与动断触点可在PLC编程时随意使用。如表4-1所示。,上一页,下一页,返回,4.1FX系列PLC的内部系统配置,4.1.2辅助继电器MPLC内有很多辅助继电器。辅助继电器的线圈与输出继电器一样,由PLC内各软元件的触点驱动。辅助继电器的动合和动断触点使用次数不限,在PLC内可以自由使用。但是,这些触点不能直接驱动外部负载,外部负载的驱动必须由输出继电器执行。在逻辑运算中经常需要一些中间继电器作为辅助运算用。1.通用辅助继电器FXON-60M型PLC的通用辅助继电器编号为MO-M383共384点在FX系列PLC中除了输入/输出继电器外,其他所有的器件都采用十进制数编号。,上一页,下一页,返回,4.1FX系列PLC的内部系统配置,2.保持辅助继电器保持继电器的编号为M384-M511共128点。保持继电器有后备铿电池供电,所以在电源中断时能够保持它们原来的状态不变,可用于要求保持断电前状态的控制系统。3.特殊辅助继电器这些特殊辅助继电器各自具有特殊的功能,一般分成两大类。一类是只能利用其触点,其线圈由PLC自动驱动。例如M8000运行监视、M8002初始脉冲,M80131s时钟脉冲。另一类是可驱动线圈型的特殊辅助继电器,用户驱动其线圈后,PLC做特定的动作。,上一页,下一页,返回,4.1FX系列PLC的内部系统配置,4.内部状态器状态器是使用步进指令的基本元件,其编号为SO-S127,共128点。这128点状态器的动合触点供PLC编程时使用,且使用次数不限。不用步进指令时,状态器S可以作为辅助继电器在程序中使用。状态器S属于掉电保护继电器。,上一页,下一页,返回,4.1FX系列PLC的内部系统配置,4.1.3定时器T定时器在PLC相当于一个时间继电器,它有一个设定值寄存器一个字、一个当前值寄存器字以及无数个触点位。对于每一个定时器,这三个量使用同一个名称,但使用场合不一样,其所指的也不一样。通常在一个可编程控制器中有几十个至数百个定时器,可用于定时操作。,上一页,下一页,返回,4.1FX系列PLC的内部系统配置,4.1.4计数器C计数器是PLC重要内部部件,它是在执行扫描操作时对内部元件X,Y,M,S,T,C的信号进行计数。当计数达到设定值时,计数器触点动作。计数器的动合、动断触点可以无限使用。,上一页,下一页,返回,4.1FX系列PLC的内部系统配置,4.1.5常数K/H常数计数器也作为器件对待,它在存储器中占有一定的空间,十进制常数用K表示,如18,表示为K18;十六进制常数用H表示,如18表示为H18。,上一页,下一页,返回,4.1FX系列PLC的内部系统配置,4.1.6数据寄存器D可编程控制器用于模拟量控制、位置控制、数据I/O时,需要许多数据寄存器存储参数及工作数据。这类寄存器的数量随着机型不同而不同。数据寄存器分为以下几类1通用数据寄存器DO-D199只要不写入数据,则数据将不会变化,直到再次写入。这类寄存器内的数据,一旦PLC状态由运行RUN转成STOP时全部数据均清零。2停电保持数据寄存器D200-D7999除非改写,否则数据不会变化。即使PLC状态变化或断电,数据仍可以保持。,上一页,下一页,返回,4.1FX系列PLC的内部系统配置,3特殊数据寄存器D8000-D8255用于监视PLC内各种元件的运行方式用,其内容在电源接通ON时,写入初始化值全部清零,然后由系统ROM安排写入初始值。4文件寄存器D1000-D7999实际上是一类专用数据寄存器,用于存储大量的数据,例如采集数据、统计计算器数据、多组控制参数等。其数量由CPU的监视软件决定。在PLC运行中,用BMOV指令可以将文件寄存器中的数据读到通用数据寄存器中,但不能用指令将数据写入文件寄存器。5V/Z变址寄存器变址寄存器通常用于修改器件的地址编号。V和Z都是16位的寄存器,可进行数据的读与写;当进行32位操作时,将V,Z合并使用,指定Z为低位。,上一页,返回,4.2FX系列PLC的基本指令,4.2.1逻辑取及输出线圈指令LD,LDI,OUTLDLoad从母线取用常开触点指令。LDILoadInverse从母线取用常闭触点指令。OUTOut是对输出继电器、辅助继电器、状态继电器、定时器、计数器的线圈进行驱动的指令,但不能用于输入继电器。上述3条指令的使用如图4-1所示。,下一页,返回,4.2FX系列PLC的基本指令,1LD,LDI两条指令用于将触点接到母线上。2OUT是驱动线圈的输出指令,对于x不能使用。OUT指令可以连续使用多次。使用OUT指令驱动定时器,必须设定常数K,常数K的设定在编程中也占一个步序位置。定时器的设定常数见表4-2。定时器的动作时序如图4-2所示。,上一页,下一页,返回,4.2FX系列PLC的基本指令,4.2.2触点并联指令OR,ORIOROR或指令,用于动合触点;ORIORInverse或非指令,用于动断触点。OR,ORI指令紧接在LD,LDI指令后使用,亦即对LD,LDI指令规定的触点再并联一个触点,并联的次数无限制,但限于编程器和打印机的幅面限制,尽量做到24行以下。使用说明如图4-3所示。,上一页,下一页,返回,4.2FX系列PLC的基本指令,4.2.3触点串联指令AND,ANIANDAnd与指令,是动合触点的串联指令;ANIAndInverse与非指令,动断触点的串联指令。AND,ANI指令是单个触点的串联指令,串联触点的次数不限,即可以多次使用。使用说明如图4-4所示。在图4-5中的连续输出不能采用图4-3所对应的指令语句,必须采用后面要讲的堆找指令,否则将使得程序步增多,因此不推荐使用图4-5中梯形图的形式。,上一页,下一页,返回,4.2FX系列PLC的基本指令,4.2.4电路块串联连接指令ANBANBAndBlock块与指令,即电路块串联连接指令。无操作数。两个或两个以上触点并联连接的电路称为并联电路块。当分支电路并联电路块与前面的电路串联连接时,使用ANB指令。即分支起点用LD,LDI指令,并联电路块结束后使用ANB指令,表示与前面的电路串联。使用说明如图4-6a所示。,上一页,下一页,返回,4.2FX系列PLC的基本指令,4.2.5电路块并联连接指令ORBORBOrBlock块或指令,即电路块并联连接指令。无操作数。两个以上的触点串联连接的电路为串联电路块,将串联电路块并联使用时,用LD,LDI指令表示分支开始,用ORB指令表示分支结束。使用说明如图4-7所示。,上一页,下一页,返回,4.2FX系列PLC的基本指令,4.2.6栈指令MPS,MRD,MPPMPS进栈指令;MRD读栈指令;MPP出栈指令。栈指令用于多重输出电路。可将连续点先存储,用于连接后面的电路。MPS,MRD和MPP指令的使用分别如图4-8、图4-9和图4-10所示。FX2系列可编程序控制器中有11个用来存储运算的中间结果的存储区域被称为栈存储器。使用一次MPS指令,便将此刻的运算结果送入堆栈的第一层,而将原存在第一层的数据移到堆栈的下一层。使用MPP指令,各数据顺次向上一层移动,最上层的数据被读出。同时该数据就从堆栈内消失。,上一页,下一页,返回,4.2FX系列PLC的基本指令,4.2.7置位与复位指令SET,RSTSETSe小置位指令,操作保持指令;RSTReset复位指令,操作复位指令。SET,RST指令的使用如图4-11所示。图中的XO触点闭合,YO得电,处于保持的状态,即使XO再断开对YO也无影响,YO得电的状态一直保持到X1触点闭合,复位信号RST到来。,上一页,下一页,返回,4.2FX系列PLC的基本指令,4.2.8主控指令MC,MCRMCMasterControl主控指令,用于公共串联触点的连接指令。MCRMasterControlReset主控复位指令,即MC指令的复位指令。主控指令所完成的操作功能是当某一触点或一组触点的条件满足时,按正常顺序执行;当这一条件不满足时,则不执行某部分程序,与这部分程序相关的继电器状态全为OFF。MC,MCR指令的使用说明如图4-12所示。,上一页,下一页,返回,4.2FX系列PLC的基本指令,4.2.9脉冲输出指令PLS,PLFPISpluse脉冲上微分指令,在输入信号的上升沿产生脉冲输出。PLFPulse脉冲下微分指令,在输入信号的下降沿产生脉冲输出。PLS,PLF指令使用如图4-13所示。使用PLS指令时,元件Y,M仅在驱动输入触点闭合的一个扫描周期内动作,而使用PLF指令,元件Y,M仅在驱动输入触点断开后的一个扫描周期内动作。MO在XO由OFF-ON时刻动作,其动作时间为一个扫描周期。M1在X1由ON-OFF时刻动作,其动作时间为一个扫描周期。,上一页,下一页,返回,4.2FX系列PLC的基本指令,4.2.10空操作指令NOPNOPNoOperation空操作指令。无动作、无操作数的程序步。在程序中加入空操作指令,在变更或增加指令时可以减少步序号的变化。用NOP指令替换一些已写入的指令,可以改变电路。当执行程序全部清零操作时,所有指令均变成NOP。使用说明如图4-14所示。,上一页,下一页,返回,4.2FX系列PLC的基本指令,4.2.11程序结束指令ENDEND是一个无操作数的指令。PLC的工作原理为循环扫描方式,即开机执行程序均由第一句指令语句步序号为000开始执行,一直执行到最后一条语句END,依次循环执行,END后面的指令无效,即PLC不执行。所以利用在程序的适当位置上插人END,可以方便地进行程序的分段调试。但要注意在某段程序调试完毕后,及时删去END指令。,上一页,返回,4.3常用单元电路及编程,4.3.1画梯形图的规则和技巧.梯形图的左母线与线圈间一定要有触点,而线圈与右母线间不能有任何触点。触点应画在水平线上,不能画在垂直分支上,根据从左至右,自上而下的原则,如图4-15所示;.同一编号的线圈如果使用两次则称为双线圈,双线圈输出容易引起误操作,所以在一个程序中应尽量避免使用双线圈;.有串联电路相并联时,应将触点最多的那个串联支路放在梯形图的最上面,这种安排可减少指令语句,使程序简练,如图4-16所示;,下一页,返回,4.3常用单元电路及编程,.如果电路结构复杂,用ANB,ORB等难以处理,可以重复使用一些触点改成等效电路,再进行编程,如图4-17所示;.桥式电路不能直接编程,必须画出相应的等效梯形图,如图4-18所示。,上一页,下一页,返回,4.3常用单元电路及编程,4.3.2常用基本单元电路的编程1.定时器、计数器的应用1图4-19所示为定时器构成的延时断开电路当输入继电器X002闭合时,输出继电器Y003得电,并由本身的触点自保,同时由于X002的动断触点断开,使T50的线圈不能得电;当输入X002断开时,其动断触点闭合,T50线圈得电,经过15s使设定值减到零,T50的动断触点断开,Y003线圈断开。,上一页,下一页,返回,4.3常用单元电路及编程,2图4-20所示为延时闭合/断开电路当输入X000闭合时,T50得电,延时5s后,T50所带的动合触点闭合,Y004得电且自保。当输入断开时,其动断触点X000闭合,T51得电,延时5s后,T51所带的动断触点断开,Y004线圈解除自保断电。2.基本控制环节的编程1PLC控制电路的最基本环节有启动、自保、停止电路它经常用于对内部辅助继电器和输出继电器进行控制。此电路有两种不同的构成形式,启动优先和停止优先控制方式,如图4-21所示。,上一页,下一页,返回,4.3常用单元电路及编程,2互锁控制图4-22为互锁控制的梯形图,为了使Y1和Y2不能同时得电,用Y1和Y2的动断触点,分别串接于线圈Y2,Y1的控制电路中。3连锁控制图4-23所示为连锁控制梯形图,线圈YO的动合触点串接于线圈Y1的控制电路中,线圈Y1的接通是以YO的接通为条件。4顺序步进控制在PLC的顺序控制中,经常采用顺序步进控制,使控制系统能按照固定的步骤,一步接着一步地执行。图4-24所示顺序步进控制线路,其中图4-24a为采用停止优先控制方式,图4-24b为采用启动优先控制方式。,上一页,下一页,返回,4.3常用单元电路及编程,5手动与自动控制的切换图4-25所示,为自动控制系统的手动与自动切换梯形图,输入信号X000为系统设置的手动/自动选择开关。当选择手动工作状态时,X000闭合;当选择自动工作状态时,X000断开。不满足主控指令执行条件,则不执行手动程序,执行自动程序。,上一页,返回,4.4步进指令和功能指令,4.4.1FX系列PLC的步进指令1.步进指令STL/RET步进指令是专为顺序控制而设计的指令。在工业控制领域许多的控制过程都可用顺序控制的方式来实现,使用步进指令实现顺序控制既方便实现又便于阅读修改。FX2N中有两条步进指令STL步进触点指令和RET步进返回指令。STL和RET指令只有与状态器S配合才能具有步进功能。如STLS200表示状态常开触点,称为STL触点,它没有常闭触点。,下一页,返回,4.4步进指令和功能指令,2.状态转移图一个顺序控制过程可分为若干个阶段,也称为步或状态,每个状态都有不同的动作。当相邻两状态之间的转换条件得到满足时,就将实现转换,即由上一个状态转换到下一个状态执行。我们常用状态转移图功能表图描述这种顺序控制过程。如图4-26所示。图中,S22被置位时,Y2得电,S22采用SET指令置位,Y2采用OUT指令驱动;当满足转移条件X2X2ON时,状态就由S22转移到S23,此时S23被置位,执行Y3,同时S22自动复位。,上一页,下一页,返回,4.4步进指令和功能指令,3.步进指令的使用说明.STL触点是与左侧母线相连的常开触点,某STL触点接通,则对应的状态为活动步;.与STL触点相连的触点应用LD或LDI指令,只有执行完RET后才返回左侧母线;.STL触点可直接驱动或通过别的触点驱动Y,M,S,T等元件的线圈;.由于PLC只执行活动步对应的电路块,所以使用STL指令时允许双线圈输出;.STL触点驱动的电路块中不能使用MC和MCR指令,但可以用CJ指令;.在中断程序和子程序内,不能使用STL指令。,上一页,下一页,返回,4.4步进指令和功能指令,4.4.2功能指令的格式功能指令和基本逻辑指令的形式不同,功能指令用编号FNC00-FNC294表示,并给出对应的助记符大多用英文名称或缩写表示。表4-3为FXON系列PLC的部分功能指令。1.功能指令的表示形式功能指令的基本格式如图4-27a所示。图中的前一部分表示指令的代码和助记符,后一部分S表示源操作数,当源操作数不止一个时,可以用Sl,S2表示;D表示目的操作数,当目的操作数不止一个时,可以用D1,D2表示。,上一页,下一页,返回,4.4步进指令和功能指令,2.执行方式FX系列PLC的功能指令有连续执行型和脉冲执行型两种形式。图4-27b梯形图程序为连续执行方式。当X1和X2为ON状态时,图b中的指令在每个扫描周期都被重复执行。图4-27c梯形图程序为脉冲执行方式。助记符后附的P符号表示脉冲执行。P和D可以重复使用,如DMOVP。图中脉冲执行的指令仅在X1由OFF转变为ON时有效。在不需要每个扫描周期都执行时,用脉冲方式可以缩短程序处理时间。,上一页,下一页,返回,4.4步进指令和功能指令,3.数据长度功能指令可以处理16位数据和32位数据。例如,图4-27b为数据传送指令的使用,图中MOV为指令的助记符,表示数据传送功能指令,指令的代码是12用编程器编程时输入代码“12”而非“MOV“。功能指令中有符号D表示处理32位数据。处理32位数据时,用元件号相邻的两个元件组成元件对。元件对的首位地址用奇数、偶数均可以建议元件对首位地址统一用偶数编号。,上一页,下一页,返回,4.4步进指令和功能指令,4.数据格式在FX系列PLC内部,数据是以二进制BIN补码的形式存储,所有的四则运算都使用二进制数。二进制补码的最高位为符号位,正数的符号位为0,负数的符号位为FX系列PLC可实现二进制码与BCD码的相互转换。为更精确地进行运算,可采用浮点数运算。在FX系列PLC中提供了二进制浮点运算和十进制浮点运算,设有将二进制浮点数与十进制浮点数相互转换的指令。二进制浮点数采用编号连续的一对数据寄存器表示。,上一页,下一页,返回,4.4步进指令和功能指令,5.位元件与字元件像X,Y,M,S等只处理ON/OFF信息的软元件称为位元件;而像T,C,D等处理数值的软元件则称为字元件,一个字元件由16位二进制数组成。位元件可以通过组合使用,4个位元件为一个单元,通用表示方法是由Kn加起始的软元件号组成,n为单元数。例如K2M0表示MO一M7组成两个位元件组K2表示2个单元,它是一个8位数据,MO为最低位。如果将16位数据传送到不足16位的位元件组合n4时,只传送低位数据,多出的高位数据不传送,32位数据传送也一样。,上一页,下一页,返回,4.4步进指令和功能指令,4.4.3FX系列PLC的功能指令1.条件跳转指令CJCJ条件跳转指令用于程序中的跳转。采用跳转指令,在执行程序的过程中可以跳过一段程序,减少扫描时间,提高程序执行速度。CJ条件跳转指令的使用如图4-28所示,满足跳转条件XOON时,程序跳到标号处,执行下面的程序;如果XOOFF时,跳转不执行,按原顺序执行程序。,上一页,下一页,返回,4.4步进指令和功能指令,2.子程序调用与子程序返回指令子程序调用指令CALL的编号为FNCO1。操作数为PO-P127,此指令占用3个程序步。子程序返回指令SRET的编号为FNC02。无操作数,占用1个程序步。如图4-29所示,如果XO接通,则转到标号P10处去执行子程序。当执行SRET指令时,返回到CALL指令的下一步执行。使用子程序调用与返回指令时应注意.转移标号不能重复,也不可与跳转指令的标号重复;.子程序可以嵌套调用,最多可5级嵌套。,上一页,下一页,返回,4.4步进指令和功能指令,3.与中断有关的指令与中断有关的三条功能指令是中断返回指令IRET,编号为FNC03;中断允许指令EI,编号为FNC04;中断禁止DI,编号为FNCOS。它们均无操作数,占用1个程序步。PLC通常处于禁止中断状态,由EI和DI指令组成允许中断范围。在执行到该区间,如有中断源产生中断,CPU将暂停主程序执行转而执行中断服务程序。当遇到IRET时返回断点继续执行主程序。EI/DI中断指令的使用如图4-30所示,图中程序处理到允许中断区间时,出现XO或X1为ON状态,则转而处理相应的中断子程序1或2。,上一页,下一页,返回,4.4步进指令和功能指令,4.主程序结束指令FEND主程序结束指令FEND的编号为FNC06,无操作数,占用1个程序步。FEND表示主程序结束,当执行到FEND时,PLC进行输入/输出处理,监视定时器刷新,完成后返回起始步。FEND主程序结束指令使用时应注意,子程序和中断子程序必须写在主程序结束指令FEND和END指令之间。FEND主程序结束指令使用如图4-31所示。,上一页,下一页,返回,4.4步进指令和功能指令,5.比较指令比较指令包括CMP比较和ZCP区间比较两条。1比较指令CMP编号为FNC10,是将源操作数[S1.]和源操作数[S2.]的数据进行比较,比较结果用目标元件[D.]的状态来表示。它的使用如图4-32所示。2区间比较指令ZCPDZCPP指令的编号为FNC11,指令执行时源操作数[S.]与[S1.]和[S2.]的内容进行比较,并比较结果送到目标操作数[D.]中。,上一页,下一页,返回,4.4步进指令和功能指令,6.传送指令MOVSMOVCMOVBMOVFMOVMOV传送指令的编号为FNC12,是将源操作数送到指定的目的操作数去,即S-DoMOV指令的使用如图4-32b所示。当XOON时源操作数S中的数据K126被传送到目标操作地址D26中。当指令执行时,常数K126自动转换成二进制数。当XOOFF时,指令不执行,数据保持不变。应用MOV指令时应注意.源操作数可取所有数据类型,目标操作数可以是KnY,KnM,KnS,T,C,D,V,Z;.16位运算时占5个程序步,32位运算时则占9个程序步。,上一页,下一页,返回,4.4步进指令和功能指令,移位传送指令SMOV的编号为FNC13。该指令的功能是将源数据二进制自动转换成4位BCD码,再进行移位传送,传送后的目标操作数元件的BCD码自动转换成二进制数。如图4-33所示,当XO为ON时,则将[S.]中的数据K100传送到目标操作元件[D.]即D10中。在指令执行时,常数K100会自动转换成二进制数。使用移位传送指令时应该注意.源操作数可取所有数据类型,目标操作数可为KnY,KnM,KnS,T,C,D,V,Z;“SMOV指令只有16位运算,占11个程序步。,上一页,下一页,返回,4.4步进指令和功能指令,取反传送指令CML的编号为FNC14。它是将源操作数元件的数据逐位取反并传送到指定目标。如图4-34所示,当XO为ON时,执行CML,将DO的低4位取反向后传送到Y3–Y0中。使用取反传送指令CML时应注意.源操作数可取所有数据类型,目标操作数可为KnY,KnM,KnS,T,C,D,V,Z,若源数据为常数K,则该数据会自动转换为二进制数;.16位运算占5个程序步,32位运算占9个程序步。,上一页,下一页,返回,4.4步进指令和功能指令,块传送指令BMOV的ALCE编号为FNC15,是将源操作数指定元件开始的n个数据组成数据块传送到指定的目标。如图4-35所示,传送顺序既可从高元件号开始,也可从低元件号开始,传送顺序自动决定。若用到需要指定位数的位元件,则源操作数和目标操作数的指定位数应相同。使用块传送指令时应注意.源操作数可取KnX,KnY,KnM,KnS,T,C,D和文件寄存器,目标操作数可取KnT,KnM,KnS,T,C和D;只有16位操作,占7个程序步;.如果元件号超出允许范围,数据则仅传送到允许范围的元件。,上一页,下一页,返回,4.4步进指令和功能指令,多点传送指令FMOV的编号为FNC16。它的功能是将源操作数中的数据传送到指定目标开始的n个元件中,传送后n个元件中的数据完全相同。如图4-36所示,当XO为ON时,把KO传送到DO-D9中。使用多点传送指令FMOV时应注意.源操作数可取所有的数据类型,目标操作数可取KnX,KnM,KnS,T,C、和D,n小于等于512.16位操作占7的程序步,32位操作则占13个程序步;.如果元件号超出允许范围,数据仅送到允许范围的元件中。,上一页,下一页,返回,4.4步进指令和功能指令,7.监视定时指令WDT监视定时器指令WDTP编号为FNC07,没有操作数,占有1个程序步。WDT指令的功能是对PLC的监视定时器进行刷新。WDT警戒指令的使用如图4-37a所示,图中将一个240ms的程序分成了两个扫描时间为120ms的程序,在两个程序之间插人一条WDT指令。如果希望执行程序的每次扫描时间均能超过200ms,可以将限定值写入特殊数据的寄存器D8000中,如图4-37b所示,这里采用数据传送指令实现。用此方法可以将警戒时钟值改成很大的数值。,上一页,下一页,返回,4.4步进指令和功能指令,8.循环指令FOR,NEXT循环指令共有两条循环区起点指令FOR,编号为FNC08,占3个程序步;循环结束指令NEXT,编号为FNC09,占用1个程序步,无操作数。在程序运行时,位于FOR-NEXT间的程序反复执行n次由操作数决定后再继续执行后续程序。循环的次数n1-32767。如果N-32767-0之间,则当作n1处理。如图4-38b所示,图中程序A的循环次数为4,程序B的循环次数由DO中的数据决定。假如DO中的数据是5,则程序A每执行一次,程序B要执行5次,则程序B一共要执行20次。,上一页,下一页,返回,4.4步进指令和功能指令,9.数制变换指令1BCD变换指令的ALCE编号为FNC18它是将源元件中的二进制数转换成BCD码送到目标元件中,BCD变换指令的使用如图4-39a所示,XO是指令的执行条件。当XOON时,源地址D12中的二进制数转换成。BCD码送到YO-Y7的目标地址去;XOOFF时指令不执行。如果指令进行16位操作时,执行结果超出0-9999范围将会出错;当指令进行32位操作时,执行结果超过0-99999999范围也将出错。PLC中内部的运算为二进制运算,可用BCD指令将二进制数变换为BCD码输出到七段显示器。,上一页,下一页,返回,4.4步进指令和功能指令,2BIN变换指令的编号为FNC19它是将源元件中的BCD数据转换成二进制数据送到目标元件中。BIN变换指令的使用如图4-39b所示,图中的XO是执行条件。当XOON时,将D12中的BCD数据变换成二进制数据,送到1YO一Y7目标地址去。BIN指令常用于将BCD数字开关串的设定值输入到PLC中。常数K不能作为本指令的操作元件,因为在任何处理之前它会被转换成二进制数。,上一页,下一页,返回,4.4步进指令和功能指令,10.算数运算指令1加法指令ADD的编号为FNC20它是将指定的源元件中的二进制数相加结果送到指定的目标元件中去。ADD加法指令的使用如图4-40a所示,图中的操作可表示为S1S2--D即D10D12--D14。2减法指令SUB的编号为FNC21它是将[Sl.]指定元件中的内容以二进制形式减去[S2.]指定元件的内容,其结果存人由[D.]指定的元件中。SUB减法指令的使用说明如图4-40b所示,图中操作可表示为Sl-S2--D即D10-D12D14。,上一页,下一页,返回,4.4步进指令和功能指令,3乘法指令MUL的编号为FNC22数据均为有符号数。16位乘法运算如图4-41a所示,XO为乘法执行条件,满足执行条件则将两个源地址S1,S2中的数相乘,并以32位的形式送到指定目标数据寄存器D032位数据结果的低16位存放在指定目的地址D4,高16位存放在相连的下一个目标元件D5中。4除法指令DIVDDIVP指令的编号为FNC23。其功能是将[S1.]指定为被除数,[S2.]指定为除数,将除得的结果送到[D.]指定的目标元件中,余数送到[D.]的下一个元件中。16位除法运算如图4-41b所示。,上一页,下一页,返回,4.4步进指令和功能指令,11.加1和减1指令INC/DEC加1指令的编号为FNC24;减1指令的编号为FNC25。INC和DEC指令分别是当条件满足则将指定元件的内容加1或减1。如图4-42所示,当XO为ON时,D101--D10;当x1为ON时,D111--D11。若指令是连续指令,则每个扫描周期均作一次加1或减1运算。,上一页,下一页,返回,4.4步进指令和功能指令,12.初始状态指令IST该指令的名称、助记符、指令代码和操作数见表4-4。初始状态指令IST用于自动设置初始状态和特殊辅助继电器。该指令的使用如图4-43所示,图中[S]为指定操作方式输入的首元件,一共是8个连号的元件。这些元件可以是X,Y,M和S。X20手动X21回原点X22步动运行X23一个周期运行X24全自动运行X25回原点X26全自动运行启动X27停止,上一页,下一页,返回,4.4步进指令和功能指令,1.写出图4-44所示梯形图的指令语句。2.画出表4-5所示的指令语句对应的梯形图。,上一页,返回,表4-1FXON系列PLCAC电源DC输入I/O继电器点数,返回,图4-1LD,LDI,OUT指令的使用,返回,表4-2定时器的设定常数,返回,图4-2定时器的动作时序图,返回,图4-3OR,ORI的使用,返回,图4-4AND,ANI指令使用,返回,图4-5不推荐的梯形图形式,返回,图4-6ANB使用说明,返回,图4-7ORB使用说明,返回,图4-8栈指令的使用,返回,图4-9栈指令使用说明之一,返回,图4-10栈指令使用说明之二,返回,图4-11SET,RST指令的使用,返回,图4-12MC,MCR指令使用说明,返回,图4-13PLS,PLF指令的使用,返回,图4-14用NOP指令修改,返回,图4-15梯形图的设计规则说明之一,返回,图4-16梯形图的设计规则说明之二,返回,图4-17复杂电路的处理,返回,图4-18桥式电路的处理,返回,图4-19延时断开电路,a梯形图;b指令语句;c波形图,返回,图4-20延时闭合、断开电路,a梯形图;b指令语句;c波形图,返回,图4-21启动、保持、停止控制方式,a启动优先控制方式;b停止优先控制方式,返回,图4-22互锁控制,返回,图4-23连锁控制,返回,图4-24步进控制线路,a采用停止优先控制方式;b采用启动优先控制方式,返回,图4-25手动控制与自动控制,返回,图4-26STL,RET指令的用法,asTL功能图;bSTL梯形图;c指令语句,返回,表4-3FXON系列PLC的部分功能指令,返回,图4-27功能指令的基本形式,a基本格式;b数据传送指令的使用;c脉冲执行方式;dV和Z变址寄存器的使用,返回,图4-28CJ指令的使用,返回,图4-29CALL指令的使用,返回,图4-30中断指令的使用,返回,图4-31FEND指令的使用,返回,图4-32CMP,MOV指令的使用,aCMP指令;bMOV指令,返回,图4-33移位传送指令的使用,返回,图4-34取反传送指令的使用,返回,图4-35块传送指令的使用,返回,图4-36多点传送指令的使用,返回,图4-37WDT指令的使用,返回,图4-38FOR,NEXT指令的使用,aFOR,NEXT指令;b2级嵌套,返回,图4-39数值变换指令的使用,aBCD指令;bBIN指令,返回,图4-40ADD,SUB指令的使用,aADD指令;bSUB指令,返回,图4-41MUL,DIV指令的使用,aMUL乘法指令;bDIV除法指令,返回,图4-42INC,DEC指令的使用,返回,表4-4初始状态指令表,返回,图4-43IST指令的作用,返回,图4-44梯形图,返回,表4-5,返回,