plc在进行输入输出处理、模拟量控制、位置控制时,需要许多数据寄存器存储数据和参数。数据寄存器为16位,高位为符号位。可用两个数据寄存器来存储32位数据,高位仍为符号位。数据寄存器有以下几种类型:
1.通用数据寄存器(D0~D199)
共200点。当M8033为ON时,D0~D199有断电保护功能;当M8033为OFF时则它们无断电保护,这种情况PLC由RUN →STOP或停电时,数据全部清零。
2.断电保持数据寄存器(D200~D7999)
共7800点,其中D200~D511(共12点)有断电保持功能,可以利用外部设备的参数设定改变通用数据寄存器与有断电保持功能数据寄存器的分配;D490~D509供通信用;D512~D7999的断电保持功能不能用软件改变,但可用指令清除它们的内容。根据参数设定可以将D1000以上做为文件寄存器。
3.特殊数据寄存器(D8000~D8255)
共256点。特殊数据寄存器的作用是用来监控PLC的运行状态。如扫描时间、电池电压等。未加定义的特殊数据寄存器,用户不能使用。具体可参见用户手册。
4.变址寄存器(V/Z)
FX2N系列PLC有V0~V7和Z0~Z7共16个变址寄存器,它们都是16位的寄存器。变址寄存器V/Z实际上是一种特殊用途的数据寄存器,其作用相当于微机中的变址寄存器变,用于改变元件的编号(变址),例如V0=5,则执行D20V0时,被执行的编号为D25(D20+5)。变址寄存器可以象其它数据寄存器一样进行读写,需要进行32位操作时,可将V、Z串联使用(Z为低位,V为高位)。
三菱FX系列plc有基本逻辑指令20或27条、步进指令2条、功能指令100多条(不同系列有所不同)。本节以FX2N为例,介绍其基本逻辑指令和步进指令及其应用。
一、三菱FX系列PLC的基本逻辑指令
三菱FX2N的共有27条基本逻辑指令,其中包含了有些子系列PLC的20条基本逻辑指令。
1.取指令与输出指令(LD/LDI/LDP/LDF/OUT)
(1)LD(取指令) 一个常开触点与左母线连接的指令,每一个以常开触点开始的逻辑行都用此指令。
(2)LDI(取反指令) 一个常闭触点与左母线连接指令,每一个以常闭触点开始的逻辑行都用此指令。
(3)LDP(取上升沿指令) 与左母线连接的常开触点的上升沿检测指令,仅在指定位元件的上升沿(由OFF→ON)时接通一个扫描周期。
(4)LDF(取下降沿指令) 与左母线连接的常闭触点的下降沿检测指令。
(5)OUT(输出指令) 对线圈进行驱动的指令,也称为输出指令。
取指令与输出指令的使用如图1所示。
图1 取指令与输出指令的使用
取指令与输出指令的使用说明:
1)LD、LDI指令既可用于输入左母线相连的触点,也可与ANB、ORB指令配合实现块逻辑运算;
2)LDP、LDF指令仅在对应元件有效时维持一个扫描周期的接通。图3-15中,当M1有一个下降沿时,则Y3只有一个扫描周期为ON。
3)LD、LDI、LDP、LDF指令的目标元件为X 、Y 、M 、T、C、S;
4)OUT指令可以连续使用若干次(相当于线圈并联),对于定时器和计数器,在OUT指令之后应设置常数K或数据寄存器。
5)OUT指令目标元件为Y、M、T、C和S,但不能用于X。
2.触点串联指令(AND/ANI/ANDP/ANDF)
(1)AND(与指令) 一个常开触点串联连接指令,完成逻辑“与”运算。
(2)ANI(与反指令) 一个常闭触点串联连接指令,完成逻辑“与非”运算。
(3)ANDP 上升沿检测串联连接指令。
(4)ANDF 下降沿检测串联连接指令。
触点串联指令的使用如图2所示。
图2 触点串联指令的使用
触点串联指令的使用的使用说明:
1)AND、ANI、ANDP、ANDF都指是单个触点串联连接的指令,串联次数没有限制,可反复使用。
2)AND、ANI、ANDP、ANDF的目标元元件为X、Y、M、T、C和S。
3)图3-16中OUTM101指令之后通过T1的触点去驱动Y4称为连续输出。
3.触点并联指令(OR/ORI/ORP/ORF)
(1)OR(或指令) 用于单个常开触点的并联,实现逻辑“或”运算。
(2)ORI(或非指令) 用于单个常闭触点的并联,实现逻辑“或非”运算。
(3)ORP 上升沿检测并联连接指令。
(4)ORF 下降沿检测并联连接指令。
触点并联指令的使用如图3所示。
图3 触点并联指令的使用
触点并联指令的使用说明:
1)OR、ORI、ORP、ORF指令都是指单个触点的并联,并联触点的左端接到LD、LDI、LDP或LPF处(例图4-4的左母线),右端与前一条指令对应触点的右端相连。触点并联指令连续使用的次数不限;
2)OR、ORI、ORP、ORF指令的目标元件为X、Y、M、T、C、S。
4.块操作指令(ORB /ANB)
(1)ORB(块或指令) 用于两个或两个以上的触点串联连接的电路之间的并联。ORB指令的使用如图4所示。
图4 ORB指令的使用
ORB指令的使用说明:
1)几个串联电路块并联连接时,每个串联电路块开始时应该用LD或LDI指令;
2)有多个电路块并联回路,如对每个电路块使用ORB指令,则并联的电路块数量没有限制;
3)ORB指令也可以连续使用,但这种程序写法不推荐使用,LD或LDI指令的使用次数不得超过8次,也就是ORB只能连续使用8次以下。
(2)ANB(块与指令) 用于两个或两个以上触点并联连接的电路之间的串联。ANB指令的使用说明如图5所示。
图5 ANB指令的使用
ANB指令的使用说明:
1)并联电路块串联连接时,并联电路块的开始均用LD或LDI指令;
2)多个并联回路块连接按顺序和前面的回路串联时,ANB指令的使用次数没有限制。也可连续使用ANB,但与ORB一样,使用次数在8次以下
5.置位与复位指令(SET/RST)
(1)SET(置位指令) 它的作用是使被操作的目标元件置位并保持。
(2)RST(复位指令) 使被操作的目标元件复位并保持清零状态。
SET、RST指令的使用如图6所示。当X0常开接通时,Y0变为ON状态并一直保持该状态,X0断开Y0的ON状态仍维持不变;只有当X1的常开闭合时,Y0才变为OFF状态并保持,X1常开断开,Y0也仍为OFF状态。
图6 置位与复位指令的使用
SET 、RST指令的使用说明:
1)SET指令的目标元件为Y、M、S,RST指令的目标元件为Y、M、S、T、C、D、V 、Z。RST指令常被用来对D、Z、V的内容清零,还用来复位积算定时器和计数器。
2)对于同一目标元件,SET、RST可多次使用,顺序也可随意,但后执行者有效。
6.微分指令(PLS/PLF)
(1)PLS(上升沿微分指令) 在输入信号上升沿产生一个扫描周期的脉冲输出。
(2)PLF(下降沿微分指令) 在输入信号下降沿产生一个扫描周期的脉冲输出。
微分指令的使用如图7所示,利用微分指令检测到信号的边沿,通过置位和复位命令控制Y0的状态。
图7 微分指令的使用
PLS、PLF指令的使用说明:
1)PLS、PLF指令的目标元件为Y和M;
2)使用PLS时,仅在驱动输入为ON后的一个扫描周期内目标元件ON,如图7所示,M0仅在X0的常开触点由断到通时的一个扫描周期内为ON;使用PLF指令时只是利用输入信号的下降沿驱动,其它与PLS相同。
7.主控指令(MC/MCR)
(1)MC(主控指令) 用于公共串联触点的连接。执行MC后,左母线移到MC触点的后面。
(2)MCR(主控复位指令) 它是MC指令的复位指令,即利用MCR指令恢复原左母线的位置。
在编程时常会出现这样的情况,多个线圈受一个或一组触点控制,如果在每个线圈的控制电路中都串入同样的触点,将占用很多存储单元,使用主控指令就可以解决这一问题。MC、MCR指令的使用如图8所示,利用MCN0M100实现左母线右移,使Y0、Y1都在X0的控制之下,其中N0表示嵌套等级,在无嵌套结构中N0的使用次数无限制;利用MCRN0恢复到原左母线状态。如果X0断开则会跳过MC、MCR之间的指令向下执行。
图8 主控指令的使用
MC、MCR指令的使用说明:
1)MC、MCR指令的目标元件为Y和M,但不能用特殊辅助继电器。MC占3个程序步,MCR占2个程序步;
2)主控触点在梯形图中与一般触点垂直(如图8中的M100)。主控触点是与左母线相连的常开触点,是控制一组电路的总开关。与主控触点相连的触点必须用LD或LDI指令。
3)MC指令的输入触点断开时,在MC和MCR之内的积算定时器、计数器、用复位/置位指令驱动的元件保持其之前的状态不变。非积算定时器和计数器,用OUT指令驱动的元件将复位,如图3-22中当X0断开,Y0和Y1即变为OFF。
4)在一个MC指令区内若再使用MC指令称为嵌套。嵌套级数多为8级,编号按N0→N1→N2→N3→N4→N5→N6→N7顺序增大,每级的返回用对应的MCR指令,从编号大的嵌套级开始复位。
8.堆栈指令(MPS/MRD/MPP)
堆栈指令是FX系列中新增的基本指令,用于多重输出电路,为编程带来便利。在FX系列PLC中有11个存储单元,它们专门用来存储程序运算的中间结果,被称为栈存储器。
(1)MPS(进栈指令) 将运算结果送入栈存储器的段,将先前送入的数据依次移到栈的下一段。
(2)MRD(读栈指令) 将栈存储器的段数据(后进栈的数据)读出且该数据继续保存在栈存储器的段,栈内的数据不发生移动。
(3)MPP(出栈指令) 将栈存储器的段数据(后进栈的数据)读出且该数据从栈中消失,将栈中其它数据依次上移。
堆栈指令的使用如图9所示,其中图9a为一层栈,进栈后的信息可无限使用,后一次使用MPP指令弹出信号;图9b为二层栈,它用了二个栈单元。
图9 堆栈指令的使用
a) 一层栈 b) 二层栈
堆栈指令的使用说明:
1)堆栈指令没有目标元件;
2)MPS和MPP必须配对使用;
3)由于栈存储单元只有11个,栈的层次多11层。
9.逻辑反、空操作与结束指令(INV/NOP/END)
(1)INV(反指令) 执行该指令后将原来的运算结果取反。反指令的使用如图10所示,如果X0断开,则Y0为ON,否则Y0为OFF。使用时应注意INV不能象指令表的LD、LDI、LDP、LDF那样与母线连接,也不能象指令表中的OR、ORI、ORP、ORF指令那样单独使用。
图10 反指令的使用
(2)NOP(空操作指令) 不执行操作,但占一个程序步。执行NOP时并不做任何事,有时可用NOP指令短接某些触点或用NOP指令将不要的指令覆盖。当PLC执行了清除用户存储器操作后,用户存储器的内容全部变为空操作指令。
(3)END(结束指令) 表示程序结束。若程序的后不写END指令,则PLC不管实际用户程序多长,都从用户程序存储器的步执行到后一步;若有END指令,当扫描到END时,则结束执行程序,这样可以缩短扫描周期。在程序调试时,可在程序中插入若干END指令,将程序划分若干段,在确定前面程序段无误后,依次删除END指令,直至调试结束。
二、三菱FX系列PLC的步进指令
1.步进指令(STL/RET)
步进指令是专为顺序控制而设计的指令。在工业控制领域许多的控制过程都可用顺序控制的方式来实现,使用步进指令实现顺序控制既方便实现又便于阅读修改。
FX2N中有两条步进指令:STL(步进触点指令)和RET(步进返回指令)。
STL和RET指令只有与状态器S配合才能具有步进功能。如STLS200表示状态常开触点,称为STL触点,它在梯形图中的符号为 ,它没有常闭触点。我们用每个状态器S记录一个工步,例STLS200有效(为ON),则进入S200表示的一步(类似于本步的总开关),开始执行本阶段该做的工作,并判断进入下一步的条件是否满足。一旦结束本步信号为ON,则关断S200进入下一步,如S201步。RET指令是用来复位STL指令的。执行RET后将重回母线,退出步进状态。
2.状态转移图
一个顺序控制过程可分为若干个阶段,也称为步或状态,每个状态都有不同的动作。当相邻两状态之间的转换条件得到满足时,就将实现转换,即由上一个状态转换到下一个状态执行。我们常用状态转移图(功能表图)描述这种顺序控制过程。如图3-25所示,用状态器S记录每个状态,X为转换条件。如当X1为ON时,则系统由S20状态转为S21状态。
图11 状态转移图与步进指令
状态转移图中的每一步包含三个内容:本步驱动的内容,转移条件及指令的转换目标。如图11中S20步驱动Y0,当X1有效为ON时,则系统由S20状态转为S21状态,X1即为转换条件,转换的目标为S21步。
3.步进指令的使用说明
1)STL触点是与左侧母线相连的常开触点,某STL触点接通,则对应的状态为活动步;
2)与STL触点相连的触点应用LD或LDI指令,只有执行完RET后才返回左侧母线;
3)STL触点可直接驱动或通过别的触点驱动Y、M、S、T等元件的线圈;
4)由于PLC只执行活动步对应的电路块,使用STL指令时允许双线圈输出(顺控程序在不同的步可多次驱动同一线圈);
5) STL触点驱动的电路块中不能使用MC和MCR指令,但可以用CJ指令;
6)在中断程序和子程序内,不能使用STL指令。
在使用FX系列plc之前,需对其的主要性能指标进行认真查阅,只有选择了符合要求的产品才能达到既可靠又经济的要求。
1.FX系列PLC性能比较
以上我们已对FX系列PLC的基本单元、扩充单元及特殊功能模块等做了介绍,FX系列中FXOS、FX1S、FX1N、FX2N等在外形尺寸上相差不多,但在性能上有较大的差别,其中FX2N和FX2NC子系列,在FX系列PLC**能强、性能好。FX系列PLC主要产品的性能比较如表1所示。
表1FX系列PLC主要产品的性能比较
型号
I/0点数
基本指令执行时间
功能指令
模拟模块量
通信
FX0S
10~30
1.6~3.6μs
50
无
无
FX0N
24~128
1.6~3.6μs
55
有
较强
FX1N
14~128
0.55~0.7μs
177
有
较强
FX2N
16~256
0.08μs
298
有
强
2.FX系列PLC的环境指标
FX系列PLC的环境指标要求如表2所示。
表2 FX系列PLC的环境指标
环境温度
使用温度0~550C,储存温度-20~700C
环境湿度
使用时35%~85%RH(无凝露)
防震性能
JISC0911标准,10~55HZ,0.5㎜(大2G),3轴方向各2次(但用DIN导轨安装时为0.5G)
抗冲击性能
JISC0912标准,10G,3轴方向各3次
抗噪声能力
用噪声模拟器产生电压为1000伏(峰-峰值)、脉宽1цs、30~100Hz的噪声
绝缘耐压
AC1500V,1min(接地端与其他端子间)
绝缘电阻
5MΏ以上(DC500V兆欧表测量,接地端与其他端子间)
接地电阻
第三种接地,如接地有困难,可以不接
使用环境
无腐蚀性气体,无尘埃。
3.FX系列PLC的输入技术指标
FX系列PLC对输入信号的技术要求如表3所示。
表3 FX系列PLC的输入技术指标
输入端
项目
X0~X3(FX0S)
X4~X17(FX0S)
X0~X7(FX0N、1S、1N、2N)
X10~
(FX0N、
1S、1N、2N)
X0~X3(FX0S)
X4~X17(FX0S)
输入电压
DC24V±10%
DC12V±10%
输入电流
8.5mA
7mA
5mA
9mA
10mA
输入阻抗
2.7kΩ
3.3 kΩ
4.3 kΩ
1 kΩ
1.2 kΩ
输入ON电流
4.5mA以上
4.5mA以上
3.5mA以上
4.5mA以上
4.5mA以上
输入OFF电流
1.5mA以下
1.5mA以下
1.5mA以下
1.5mA以下
1.5mA以下
输入响应时间
约10ms, 其中:FX0S、FX1N的X0~X17和FX0N的X0~X7为0~15ms可变,FX2N的X0~X17为0~60ms可变
输入信号形式
无电压触点,或NPN集电极开路晶体管
电路隔离
光电耦合器隔离
输入状态显示
输入ON时LED灯亮
4.FX系列PLC的输出技术指标
FX系列PLC对输出信号的技术要求如表4所示。
表4 FX系列PLC的输出技术指标
项目
继电器输入
晶闸管输出
晶体管输出
外部电源
AC250V或DC30V以下
AC85~240V
DC5V~30V
大电阻负载
2A/1点、8A/4点、8A/8点
0.3A/点、0.8A/4点
(1A/1点2A/4点)
0.5A/1点、0.8A/4点
(0.1A/1点、0.4A/4点)
(1A/1点、2A/4点)
(0.3A/1点、1.6A/16点)
大感性负载
80VA
15VA/AC100V、
30VA/AC200 V
12W/DC24V
大灯负载
100W
30W
1.5W/DC24V
开路漏电流
─
1mA/AC100V
2mA/AC200v
0.1mA以下
响应时间
约10ms
ON:1ms,OFF:10ms
ON:<0.2ms、OFF:<0.2ms
大电流OFF为0.4ms以下
电路隔离
继电器隔离
光电晶闸管隔离
光电耦合器隔离
输出动作显示
输出ON时LED亮