电控学习网欢迎你:PLC技术.PLC解密服务.PLC编程软件.自动化学习.工控学习.自动化控制.工控FTP.工控破解.PLC电缆.PLC维修.三菱PLC学习.组态王多媒体.数控维修.www.dkxxw.com
第一节 PLC简述
1、高可靠性
2、编程简单,使用方便
可采用梯形图编程方式,与实际继电器控制电路非常接近,一般电气工作者很容易接受。
3、环境要求低
适用于恶劣的工业环境。
4、体积小,重量轻
5、扩充方便,组合灵活
2、输入接口电路
为了保证能在恶劣的工业环境中使用,PLC输入接口都采用了隔离措施。如下图,采用光电耦合器为电流输入型,能有效地避免输入端引线可能引入的电磁场干扰和辐射干扰。
在光敏输出端设置RC滤波器,是为了防止用开关类触点输入时触点振颤及抖动等引起的误动作,因此使得PLC内部约有10ms的响应滞后。
当各种传感器(如接近开关、光电开关、霍尔开关等)作为输入点时,可以用PLC机内提供的电源或外部独立电源供电,且规定了具体的接线方法,使用时应加注意。
PLC一般都有三种输出形式可供用户选择,即继电器输出,晶体管输出和晶闸管输出。
在线路结构上都采用了隔离措施。
特点:
继电器输出:开关速度低,负载能力大,适用于低频场合。
晶体管输出:开关速度高,负载能力小,适用于高频场合。
晶闸管输出:开关速度高,负载能力小,适用于高频场合。
注意事项:
(1)PLC输出接口是成组的,每一组有一个COM口,只能使用同一种电源电压。
(2)PLC输出负载能力有限,具体参数请阅读相关资料。
(3)对于电感性负载应加阻容保护。
(4)负载采用直流电源小于30V时,为了缩短响应时间,可用并接续流二极管的方法改善响应时间。
三、三菱FX2 PLC实物图及面板上的LED指示说明(用鼠标在各处点点)全屏观看
第二节 PLC的工作过程
PLC大多采用成批输入/输出的周期扫描方式工作,按用户程序的先后次序逐条运行。一个完整的周期可分为三个阶段:
(一)输入刷新阶段
程序开始时,监控程序使机器以扫描方式逐个输入所有输入端口上的信号,并依次存入对应的输入映象寄存器。
(二)程序处理阶段
所有的输入端口采样结束后,即开始进行逻辑运算处理,根据用户输入的控制程序,从第一条开始,逐条加以执行,并将相应的逻辑运行结果,存入对应的中间元件和输出元件映象寄存器,当最后一条控制程序执行完毕后,即转入输出刷新处理。
(三)输出刷新阶段
将输出元件映象寄存器的内容,从第一个输出端口开始,到最后一个结束,依次读入对应的输出锁存器,从而驱动输出器件形成可编程的实际输出。
一般地,PLC的一个扫描周期约10ms,另外,可编程序控制器的输入/输出还有响应滞后(输入滤波约10ms),继电器机械滞后约10ms,所以,一个信号从输入到实际输出,大约有20--30ms的滞后。
输入信号的有效宽度应大于1个周期+10ms。
第三节 三菱FX PLC中各种元件介绍(以FX2-64MR为例)
一、输入继电器 X
X0--X7
X10-X17
X20-X27
X30-X37
二、输出继电器 Y
Y0--Y7
Y10--Y17
Y20--Y27
Y30--Y37
三、辅助继电器 M
(1)通用辅助继电器
M0--M499(共500个),关闭电源后重新启动后,通用继电器不能保护断电前的状态。
(2)掉电保持辅助继电器
M500--M1023(共524个),PLC断电后再运行时,能保持断电前的工作状态,采用锂电池作为PLC掉电保持的后备电源。
(3)特殊辅助继电器
M8000--M8255(共156点),有特殊用途,将在其它章节中另作介绍。
辅助继电器都有无数个常开、常闭触点供编程使用,只能作为中间继电器使用,不能作为外部输出负载使用。
四、状态继电器 S
(1)通用状态继电器 S0--S499
(2)掉电保持型状态继电器 S499-S899
(3)供信号报警用:S900-S999
状态继电器S是对工作步进控制进行简易编程的重要元件,这里不作进一步的介绍。
五、定时器 T
(1)定时器
T0--T199 (200只):时钟脉冲为100ms的定时器,即当设定值K=1时,延时100ms。
设定范围为0.1--3276.7秒。
T200--T245(46只):时钟脉冲为10ms的定时器,即当设定值K=1时,延时10mS。
设定范围为0.01--327.67秒。
(2)积算定时器
T246--T249(4只) :时钟脉冲为1ms的积算定时器。
设定范围:0.001--32.767秒。
T250--T255 (6只) :时钟脉冲为100ms的积算定时器。
设定范围:0.1--3267.7秒。
积算定时器的意义:当控制积算定时器的回路接通时,定时器开始计算延时时间,当设定时间到时定时器动作,如果在定时器未动作之前控制回路断开或掉电,积算定时器能保持已经计算的时间,待控制回路重新接通时,积算定时器从已积算的值开始计算。
积算定时器可以用RST命令复位。
五、计数器 C
(1)16bit加计数器
C0--C99(100点):通用型
C100-C199(100点):掉电保持型
设定值范围:K1--K32767
(2)32bit可逆计数器
C200--C219(20点):通用型
C220--C234(15点):掉电保持型。
设定值范围:-2147483648到+2147483647
可逆计数器的计数方向(加计数或减计数)由特殊辅助继电器M8200--M8234设定。
即M8△△△接通时作减计数,当M8△△△断开时作加计数。
(3)高速计数器:C235--C255(后面章节实例中作介绍)
六、数据寄存器 D
D0--D199(200只):通用型数据寄存器,即掉电时全部数据均清零。
D200--D511(312只):掉电保护型数据寄存器。
七、变址寄存器(在实例中作介绍)
2-2-13 梯形图设计的规则和技巧
LD,LDI,OUT指令
符号、名称
功能
可用元件
程序步
LD 取
a触点逻辑运算开始
X,Y,M,S,T,C
1
LDI 取反
b触点逻辑运算开始
OUT 输出
线圈驱动
Y,M,S,T,C
Y,M:1
S,特,M:2
T:3
C:3-5
注:当使用M1536-M3071时,程序步加1。
指令说明:
LD,LDI指令用于将触点接到母线上。另外,与后面讲到的ANB指令组合,在分支起点处也可使用。
OUT指令是对输出继电器、辅助继电器、状态、定时器、计数器的线圈驱动指令,对输入继电器不能使用。
OUT指令可作多次并联使用。(在下图中,在OUT M100之后,接OUT T0)
0 LD X000
1 OUT Y000
2 LDI X001
3 OUT M100
4 OUT T0 K19 ——程序步自动管理空2步
7 LD T0
8 OUT Y001
AND,ANI指令
OUT指令后,通过触点对其他线圈使用OUT指令,称之为纵接输出,(下图的OUT M101 与OUT Y004)
这种纵接输出,如果顺序不错,可多次重复。 串联触点数和纵接输出次数不受限制,但使用图形编程设备和打印机则有限制。 建议尽量做到1行不超过10个触点和1个级圈,总共不要超过24行。
这种纵接输出,如果顺序不错,可多次重复。
串联触点数和纵接输出次数不受限制,但使用图形编程设备和打印机则有限制。
建议尽量做到1行不超过10个触点和1个级圈,总共不要超过24行。
0 LD X002
1 AND X000
2 OUT Y003
3 LD Y003
4 ANI X003
5 OUT M101
6 AND T1
7 OUT Y004
OR,ORI指令
OR、ORI用作1个触点的并联连接指令。
串联连接2个以上触点时,并将这种串联电路块与其他电路并联连接时,采用后面讲到的ORB指令。
OR,ORI是从该指令的步开始,与前面的LD,LDI指令步,进行并联连接。并联连接的次数不受限制,但使用图形编程设备和打印机时受限制(24行以下)
0 LD X004
1 OR X006
2 ORI M102
3 OUT Y005
4 LDI Y005
5 AND X007
6 OR M103
7 ANI X010
8 OR M110
9 OUT M103
ORB 指令
2个以上的触点串联连接的电路称为串联电路块。将串联电路并联连接时,分支开始用LD、LDI指令,分支结束用ORB指令。
ORB 指令与后面讲的ANB指令等一样,是不带软元件地址号的独立指令。
有多个并联电路时,若对每个电路块使用ORB指令,则并联电路没有限制。(见正确编程程序)
ORB也可以成批地使用,但是由于LD,LDI指令的重复使用次数限制在8次以下,请务必注意。(见编程不佳的程序)
正确编程程序
1 LD X000
2 AND X001
3 LD X002
4 AND X003
5 ORB
6 LDI X004
7 AND X006
8 ORB
9 OUT Y006
编程不佳的程序
5 LDI X004
6 AND X006
7 ORB
ANB 指令
当分支电路(并联电路块)与前面的电路串联连接时,使用ANB指令,分支的起点用LD,LDI指令,并联电路块结束后用 ANB 指令,与前面的电路串联。
若多个并联电路块按顺序和前面的电路串联连接时,则 ANB 指令的使用次数没有限制。
也可成批地使用ANB指令,但在这种场合,与ORB指令一样,LD、LDI指令的使用次数是有限制的(8次以下),请务必请意
1 OR X001
2 LD X002
3 AND X003
4 LDI X004
5 AND X005
6 ORB
7 OR X006
8 ANB
9 OR X003
10 OUT Y007
LDP、LDF、ANDP、ANDF、ORP、ORF 指令
指令助指符与功能:
当使用M1536--M3071时,程序步加1,以上指令FX2N中才有。
LDP、ANDP、ORP指令是进行上升沿检测的触点指令,仅在指定位软件上沿时(即由OFF→ON变化时)接通1个扫描周期。
LDF、ANDF、ORF指令是进行下降沿检测的触点指令,仅在指定位软元件下降时(即由ON→OFF变化时)接通1个扫描周期。
0 LDP X000
1 ORP X001
2 OUT M0
3 LD M8000
4 ANDP X002
5 OUT M1
0 LDF X000
1 ORF X001
4 ANDF X002
MPS、MRD、MPP 指令
指令助记符与功能
指令说明
在可编程序控制器中有11个存储器,用来存储运算的中间结果,被称为栈存储器。使用一次 MPS 指令就将此时刻的运算结果送入栈存储器的第1段,再使用 MPS 指令,又将此时刻的运算结果送入栈存储器的第1段,而将原先存入第一段的数据移到第二段。以此类推。
使用 MPP指令,将最上段的数据读出,同时该数据从栈存储器中消失,下面的各段数据顺序向上移动。即所谓后进先出的原则。
MRD是读出最上段所存的最新数据的专用指令,栈存储器内的数据不发生移动。
这些指令都是不带软元件地址的独立指令。
编程
例1:一段栈
1 MPS
2 AND X005
3 OUT Y002
4 MRD
5 AND X006
6 OUT Y003
7 MRD
8 OUT Y004
9 MPP
10 AND X007
11 OUT Y005
3 MPS
4 AND X002
5 OUT Y000
6 MPP
7 AND X003
10 AND X004
11 MPS
12 AND X005
13 OUT Y002
14 MPP
15 AND X006
16 OUT Y003
5 MPS
6 AND X003
7 MPS
8 AND X004
9 OUT Y000
10 MPP
11 OUT Y001
12 MPP
15 OUT 003
16 MPP
17 OUT Y004
1 OUT Y004
3 OUT Y003
5 OUT Y002
7 OUT Y001
MC、MCR 指令
在下面程序示例中,输入X000为接通时,直接执行从MC到MCR的指令,输入X000为断开时,成为如下形式:
保持当前状态:积算定时器、计数器、用置位/复位指令驱动的软元件。 变成OFF的软件:非积算定时器,用OUT指令驱动的软元件。
保持当前状态:积算定时器、计数器、用置位/复位指令驱动的软元件。
变成OFF的软件:非积算定时器,用OUT指令驱动的软元件。
主控(MC)指令后,母线(LD、LDI点)移动主控触点后,MCR为将其返回原母线的指令。
通过更改软元件地址号Y、M,可多次使用主控指令。但使用同一软元件地址号时,就和OUT指令一样,成为双线圈输出。
例1:没有嵌套时
1 MC N0 M100
4 LD X001
6 LD X002
8 MCR N0
1 MC N0 M100 3步指令
7 MC N1 M101 3步指令
10 LD X003
12 MCR N1 2步指令
14 LD X004
15 OUT Y002
16 MCR N0 2步指令
PLS、PLF 指令
指令助记符、名称
当使用M1536--M3071时,程序步加1
使用PLF指令时,仅在驱动输入OFF后1个扫描周期内,软元件Y、M动作。
使用PLS指令时,仅在驱动输入ON后1个扫描周期内,软元件Y、M动作。
1 PLS M0 2步指令
3 LD M0
4 SET Y000
5 LD X001
6 PLF M1 2步指令
8 LD M1
9 RST Y000
SET、RST 指令
Y、M: 1
S、特M: 2
T、C: 2
D、V、Z、特D:3
消除动作保持,
寄存器清零
在下述程序示例中,X000一旦接通后,即使它再次成为OFF,Y000依然被吸合。X001一旦接通后,即使它再次成为OFF,Y000仍然是释放状态。
对同一种软元件,SET、RST可多次使用,顺序也可随意,但最后执行者有效。
此外,要使数据寄存器D、变址寄存器V、Z的内容清零时,也可使用RST指令。
积算定时器T246--T255的当前值的复位和触点复位也可用RST指令。
1 SET Y000
2 LD X001
3 RST Y000
计数器软元件的 OUT、RST
32位计数器:5
16位计数器:3
内部计数器编程
0 LD X010
1 RST C0 2步指令
3 LD X011
4 OUT C0 K10 (3步指令)
7 LD C0
8 OUT Y000
C0对X011的OFF-ON次数进行增计数,当它达到设定值K10时,输出输出点C0动作,以后即使X011从OFF-ON,计数器的当前值不变,输出触点依然动作。
为了清除这些当前值,让输出触点复位,则应令X010为ON。
有必要在OUT指令后面指定常数K或用数据寄存器的地址号作间接设定。
对于掉电保持用计数器,即使停电,也能保持当前值,以及输出触点的工作状态或复位状态。
1 OUT M8*** 2步
4 RST C*** 2步
6 LD XO12
7 OUT C*** K值(或D) 5步
12 LD C***
在C235-C245的单相单输入计数器中,为了指定计数方向,采用特殊辅助继电器M8234-M8245。
当X010为ON时,对应C***的M8***也ON,这时C***为减计数。
当X010为OFF时,对应C***的M8***也OFF,这时C***为增计数。
X011为ON时,计数器C***的输出触点复位,计数器的当前值也清零。
当X012为ON时,对依据计数器地址号确定的计数器输入X000-X005的ON/OFF进行计数。
计数器的当前值增加,通过设定值(K或D的内容)时输出触点置位。在减少方向上通过设定值复位。
NOP、END 指令
NOP指令:
1、将程序全部清除时,全部指令成为空操作
2、若在普通指令与指令之间加入空操作(NOP)指令,则可编程序控制器可继续工作,,而与此无关。若在编写程序过程中加入空操作指令,则在修改或追加程序时,可以减少步序号的变化,但是程序步需要有空余。
3、若将已写入的指令换成NOP指令,则电路会发生变化,务必请注意。
END指令:
1、可编程序控制器反复进行输入处理、程序执行、输出处理。若在程序的最后写入END指令,则END以后的其余程序步不再执行,而真接进行输出处理。
2、在程序中没有END指令时,则处理到最终的程序步再执行输出处理,然后返回0步处理程序。
3、在调试期间,在各程序段插入END指令,可依次检测各程序段的动作。这种场合,在 确认前面电路块动作正确无误后,依次删去END指令。
4、RUN(运行)开始时的首次执行,从执行END指令开始。
梯形图设计的规则和技巧
一、梯形图中的触点应画在水平线上,而不能画在垂直分支上,如图1(a),由于X005画在垂直分支上,这样很难判断与其他触点的关系,也很难判断X005与输出线圈Y001的控制方向,因此应根据从左至右,自上而下的原则。正确的画法如图1(b)
图1(a)
图1(b)
二、不包含触点的分支应放放在垂直方向,不应放在水平线上,这样便于看清触点的组和对输出线圈的控制路线,以免编程时出错。如图2所示。
图2(a)不正确画法
图2(b)正确画法
三、在有几个串联电路相并联时,需钭触点最多的那条串联电路放在梯形图的最上面,在有几个并联电路串联时,应将触点最多的那个并联放在梯形图的最左面,这样所编的程序比较明了,使用的指令较少,如图3所示。
图3(a)不正确画法
图3(b)正确的画法
图4(a)不正确画法
图4(a)正确画法
双重输出动作及其对策
若在顺控程序内进行线圈的双重输出(双线圈),则后面的动作优先。
如左图所示:考虑一下在多处使用同一线圈Y003的情况。
例如:X001=ON,X002=OFF
初次的Y003,因X001接通,因此YOO3 ON。输出Y004也ON。
但是第二次的Y003,因输入X002断开,因此其输出改为OFF。
因此,实际上外部输出成为:
Y003=OFF
Y004=ON
FX2n应用指令一览表
指令助记符
功 能
序
流
程
CJ
条件跳转
CALL
调用子程序
SRET
子程序返回
IRET
中断返回
EI
开中断
DI
关中断
FEND
主程序结束
WDT
监视定时器
FOR
循环区开始
NEXT
循环区结束
送
与
比
较
CMP
比较
ZCP
区间比较
MOV
传送
SMOV
移位传送
CML
取反
BMOV
块传送
FMOV
多点传送
XCH
数据交换
BCD
求BCD码
BIN
求二进制码
四
则
运
算
逻
辑
ADD
二进制加法
SUB
二进制减法
MUL
二进制乘法
DIV
二进制除法
INC
二进制加一
DEC
二进制减一
WADN
逻辑字与
WOR
逻辑字或
WXOR
逻辑字与或
ENG
求补码
环
转
移
ROR
循环右移
ROL
循环左移
RCR
带进位右移
RCL
带进位左移
SFTR
位右移
SFTL
位左移
WSFR
字右移
WSFL
字左移
SFWR
FIFO写
SFRD
FIFO读
据
处
理
ZRST
区间复位
DECO
解码
ENCO
编码
SUM
求置ON位的总和
BON
ON位判断
MEAN
平均值
ANS
标志位置
ANR
标志复位
SOR
二进制平方根
FLT
二进制整数与浮点数转换
速
REF
刷新
REFE
滤波调整正
MTR
矩阵输入
HSCS
比较置位(高速计数器)
HSCR
比较复位(高速计数器)
HSZ
区间比较(高速计数器)
SPD
脉冲密度
PLSY
脉冲输出
PWM
脉宽调制
PLS