西门子6ES7216-2BD23-0XB8安装调试
FN2X系列有基本顺序指令20条,步进指令2条,功能指令128条。
一、基本指令
1、输入输出指令LD、LDI、OUT
LD、LDI、OUT三条指令的功能、梯形图表示形式、操作元件见表1。
表1 LD、LDI、OUT指令的功能、梯形图表示形式、操作元件
LD与LDI指令用于与母线相连的触点,此外还可用于分支电路的起点。OUT 指令是线圈的驱动指令,可用于输出继电器、辅助继电器、定时器、计数器、状态寄存器等,但不能用于输入继电器。输出指令用于并行输出,能连续使用多次。图1是LD、OUT指令的示例。
图1 LD、OUT指令
2、触点串联指令AND、ANDI和并联指令OR、ORI
AND、ANDI指令用于一个触点的串联,OR、ORI指令用于一个触点的并联。其功能、梯形图表示形式、操作元件见表2。
表2 AND、ANDI和OR、ORI指令的功能、梯形图表示形式、操作元件
3、电路块的并联指令ORB和串联指令ANB
含有两个以上触点串联连接的电路称为“串联连接块”,串联电路块并联连接时,支路的起点使用LD或LDI指令,而支路的终点要用ORB指令。ORB指令是一种独立指令,其后不带操作元件号,因此,ORB指令不表示触点,可以看成电路块之间的一段连接线。如需要将多个电路块并联连接,应在每个并联电路块之后使用一个ORB指令,用这种方法编程时并联电路块的个数没有限制;也可将所有要并联的电路块依次写出,然后在这些电路块的末尾集中写出ORB的指令,但这时ORB指令最多使用7次。
将分支电路(并联电路块)与前面的电路串联连接时使用ANB指令,各并联电路块的起点使用LD或LDI指令;与ORB指令一样,ANB指令也不带操作元件,如需要将多个电路块串联连接,应在每个串联电路块之后使用一个ANB指令,用这种方法编程时串联电路块的个数没有限制,若集中使用ANB指令,最多使用7次。图2是ANB、ORB指令的示例。
图2 ANB、ORB指令
4、多重输出指令MPS、MRD、MPP
MPS为进栈指令,MRD为读栈指令,MPP为出栈指令。
FX2N系列PLC中有11个存储运算中间结果的存储器,称之为栈存储器。进栈MPS指令是将运算中间结果存入栈存储器,使用一次MPS指令,该时刻的运算结果就压入栈存储器第一级,再使用一次MPS指令时,当时的运算结果压入栈的第一级,先压入的数据依次向栈的下一级推移。出栈MPP指令是将存入栈存储器的各数据依次上移,最上级数据读出后就从栈内消失。读栈MRD指令是存入栈存储器的最上级的最新数据的读出专用指令,栈内的数据不发生上、下移。
图3 MPS、MRD、MPP指令
使用MPS、MRD、MPP指令时应注意以下几点:
(1)MPS、MRD、MPP指令用于多重输出电路。
(2)MPS与MPP必须配对使用。
(3)MPS与MPP连续使用必须少于11次。
5、主控指令MC和主控复位指令MCR
MC为主控指令,用于公共串联触点的连接。MCR叫主控复位指令,即MC的复位指令。在编程时,经常遇到多个线圈同时受一个或一组触点控制的情况。如果在每个线圈的控制电路中都串入同样的触点,则将多占用存储单元,应用主控指令可以解决这一问题。
使用主控指令的触点称为主控触点,它在梯形图中与一般的触点垂直。它们是与母线相连的??サ悖强刂埔蛔榈缏返淖芸?。MC、MCR指令的使用说明如图4所示。
MC指令是3程序步,MCR指令是2程序步,两条指令的操作目标元件是Y、M,但不允许使用特殊辅助继电器M。
当图4中的X000接通时,执行MC与MCR之间的指令;当输入条件断开时,不执行MC与 MCR之间的指令。此时,非积算定时器和用OUT指令驱动的元件复位,积算定时器、计数器、用SET/RST指令驱动的元件保持当前的状态。使用MC指令后,母线移到主控触点的后面,与主控触点相连的触点必须用LD或LDI指令。MCR使母线返回到原来的位置。在MC指令区内使用MC指令称为嵌套,嵌套级N的编号(0~7)顺次增大,返回时用MCR指令,从大的嵌套级开始解除。通过更改软元件号Y、M,可多次使用主控指令MC。但如果使用同一软元件号,就同OUT指令一样,会出现双线圈输出。
图4 MC、MCR指令
6、置位指令SET与复位指令RST
SET为置位指令,其功能是使元件置位,并保持直至复位为止。RST为复位指令,其功能是使元件复位并保持,直至置位为止。SET、RST指令的使用说明如图5所示。由波形图可见,X000接通后,即使再变成断开,Y000也保持接通。X001接通后,即使再变成断开,Y0也将保持断开。SET指令的操作目标元件为Y、M、S,而RST指令的操作元件为Y、M、S、D、V、Z、T、C。对同一编程元件,如例中Y000、M000、S000等,SET、RST指令可以多次使用,且不限制使用顺序,以最后执行者有效。
RST指令可以对定时器、计数器、数据寄存器、变址寄存器的内容清零?;箍梢杂美锤次换愣ㄊ逼鳎?/span>T246~T255)和计数器。
图5 SET、RST指令
7、脉冲输出指令PLS、PLY
PLS指令在输入信号上升沿产生脉冲输出,而PLF在输入信号下降沿产生脉冲输出,这两条指令都是2程序步,它们的目标元件是Y和M,但特殊辅助继电器不能作目标元件。
PLS、PLF指令的使用说明如图6所示。使用PLS指令,元件Y、M仅在驱动输入接通后的一个扫描周期内动作(置1),即PLS指令使M0产生一个扫描周期脉冲,而使用PLF指令,元件Y、M仅在驱动输入断开后的一个扫描周期内动作;PLF指令使元件M1产生一个扫描周期脉冲。
图6 PLS、PLY指令
8、空操作指令NOP
NOP指令是一条无动作、无目标的程序步指令??杀喑绦蚩刂破鞯谋喑唐饕话愣加兄噶畹牟迦牒蜕境δ埽诔绦蛑幸话愫苌偈褂?/span>NOP指令。执行完清除用户存储器的操作后,用户存储器的内容全部变为空操作指令。
9、程序结束指令END
END是一条无目标元件的程序步指令。PLC反复进行输入处理、程序运算、输出处理,若在程序最后写入END指令,则END以后的程序不再执行,直接进行输出处理。在程序调试过程中,按段插入END指令,可以顺序扩大对各程序段动作的检查。采用END指令将程序划分为若干段,在确认处于前面电路块的动作正确无误之后,依次删去END指令。要注意的是,在执行END指令时,也刷新监视时钟。
二、编程规则及注意事项
三菱PLC的梯形图编程规则与OMRON PLC的编程规则基本相同。下列各图(图7~图10)中左边的均是错误或不当的写法,右边才是正确的写法。
(1)每个继电器的线圈和它的触点均用同一编号,每个元件的触点使用时没有数量限制。
(2)梯形图每一行都是从左逻辑母线开始,线圈接在最右边,即线圈右边不允许再有触点,如图7所示。
图7 输出线圈的位置
(3)线圈不能直接接在左边母线上,如有需要可在线圈之前加一常闭触点。
(4)为简化程序并节省程序步数,应将串联触点多的回路写在上方,并联触点多的回路写在左方,如图8所示。
图8 节省指令的写法
在一个程序中,同一编号的线圈如果使用两次,称为双线圈输出,这很容易引起误操作,应尽量避免,如图9所示。
图9 双线圈的处理
在梯形图中并没有真实的电流流动,为了便于分析PLC的周期扫描原理和逻辑上的因果关系,假定在梯形图中有“电流”流动,这个“电流”只能在梯形图中从左向右单方向流动,不能双向流动,层次的改变只能从上向下
1.位元件
FX系列PLC有4种基本编程元件,为了分辨各种编程元件,给它们分别了专用的字母符号:
x:输入继电器,用于直接输入给PLC的物理信号。
Y:输出继电器,用于从PLC直接输出物理信号。
M(辅助继电器)和S(状态继电器):PLC内部的运算标志。
上述的各种元件称为“位(bit)元件”,它们只有两种不同的状态,即ON和OFF,可以分别用二进制数l和0来表示这两种状态。
2.字元件
8个连续的位组成一个字节(Byte),16个连续的位组成一个字(Word),32个连续的位组成一个双字(Double Word)。定时器和计数器的当前值和设定值均为有符号字,最高位(第15位)为符号位,正数的符号位为0,负数的符号位为1。有符号字可表示的最大正整数为32767。
FX系列三菱PLC内部结构和用户应用程序中使用着大量的数据。
这些数据从结构或数制上具有以下几种形式。
(1)十进制数
十进制数在PLC中又称字数据。它主要存在于定时器和计数器的设定值K;辅助继电器、定时器、计数器、状态继电器等的编号;定时器和计数器当前值等方面。
(2)二进制数
十进制数、八进制数、十六进制数、BCD码在PLC内部均是以二进制数的形态存在。但使用外围设备进行系统运行监控显示时,会还原成原来的数制。一位二进制数在PLC中又称位数据。它主要存在于各类继电器、定时器、计数器的触点及线圈。
(3)八进制数
FX系列PLC的输入继电器、输出继电器的地址编号采用八进制。
(4)十六进制数
十六进制数用于应用指令中的操作数或动作。
(5)常数K、H
常数是PLC内部定时器、计数器、应用指令不可分割的一部分。常数K用来表示十进制数,16位常数的范围为-32768~+32767,32位常数的范围为-2147483648~+2147483647。
常数H用来表示十六进制数,十六进制包括0~9和A~F这16个数字,16位常数的范围为0~FFFF,32位常数的范围为0~FFFFFFFF。
(6)BCD码
BCD码是以4位二进制数表示与其对应的一位十进制数的方法。PLC中的十进制数常以BCD码的形态出现,它还常用于BCD输出形式的数字式开关或七段码的显示器控制等方面。