-
三菱
FX
系列
PLC<
/p>
教学课程
---
一个从基础讲起的电梯控
制实例
第一节
PLC
简述
一、
PLC
的特点:
1
、高可靠性
2
、编程简单,使用方便
可采用
梯形图编程方式,与实际继电器控制电路非常接近,一般电气工作者很容易接受。
3
、环境要求低
适用于恶劣的工业环境。
4
、体积小,重量轻
5
、扩充方便,组合灵活
二、
PLC
的硬件结构:
1
、硬件框图
2
、输入接口电路
< br>为了保证能在恶劣的工业环境中使用,
PLC
输入接口都
采用了隔离措施。
如下图,
采用光电耦合
器为电流输入型,能有效地避免输入端引线可能引入的电磁场干扰和辐射干扰。
p>
在光敏输出端设置
RC
滤波器,
是为了防止用开关类触点输入时触点振颤及抖动等引起的误动作,
因此使得
PLC
内部约有
10ms
的响应滞后。
当各种传感器(如接近开关、光电开
关、霍尔开关等)作为输入点时,可以用
PLC
机内提供的
p>
电源或外部独立电源供电,且规定了具体的接线方法,使用时应加注意。
3
、输出接口电路
PL
C
一般都有三种输出形式可供用户选择,即继电器输出,晶体管输出和晶闸管输出。
p>
在线路结构上都采用了隔离措施。
特点:
继电器输出:开关速度低,负载能力大,适用于低频场合。
晶体管输出:开关速度高,负载能力小,适用于高频场合。
晶闸管输出:开关速度高,负载能力小,适用于高频场合。
注意事项:
(
1
)
PLC
输出接口是成组的,每一
组有一个
COM
口,只能使用同一种电源电压。
(
2
)
PLC
输出负载能力有限,具体参数请阅读相关资料。
<
/p>
(
3
)对于电感性负载应加阻容保护。<
/p>
(
4
)负载采
用直流电源小于
30V
时,为了缩短响应时间,可用并接续流二
极管的方法改善响应
时间。
三、三菱
FX2 PLC
实物图及面板
上的
LED
指示说明(用鼠标在各处点点)
全屏观看
第二节
PLC
的工作过程
PLC
大多采用成批输入
/
输出的周期扫描方式工作,按用户程序的先
后次序逐条运行。
一个完整的周期可分为三个阶段:
(一)输入刷新阶段
程序开
始时,监控程序使机器以扫描方式逐个输入所有输入端口上的信号,并依次存
入对应的输
入映象寄存器。
(二)程序处理阶段
所有的
输入端口采样结束后,即开始进行逻辑运算处理,根据用户输入的控制程序,
从第一条开
始,
逐条加以执行,
并将相应的逻辑运行结果,
存入对应的中间元件和输出元件映
象寄存器,当最后一条控制程序执行完毕后,
即转入输出刷新处理。
(三)输出刷新阶段
将输出
元件映象寄存器的内容,从第一个输出端口开始,到最后一个结束,依次读入
对应的输出
锁存器,从而驱动输出器件形成可编程的实际输出。
一般地
,
PLC
的一个扫描周期约
10ms<
/p>
,另外,
可编程序控制器的输入
/
输出还有响应滞
后(输入滤波约
10ms
p>
),继电器机械滞后约
10ms
,所以,一
个信号从输入到实际输出,大约
有
20--
30ms
的滞后。
输入信
号的有效宽度应大于
1
个周期
+10m
s
。
第三节
三菱
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
个),关闭电
源后重新启动后,通用继电器不能保护断电前的状态。
(
p>
2
)掉电保持辅助继电器
M500--M1023
(共
524<
/p>
个),
PLC
断电后再运行时,能保持断
电前的工作状态,采用锂电池作
为
PLC
掉电保持的后备电源。
(
3
)特殊辅助继电器
M8000--M825
5
(共
156
点),有特殊用途,将在
其它章节中另作介绍。
辅助继电器都有无数个常开、常闭
触点供编程使用,只能作为中间继电器使用,不能
作为外部输出负载使用。
四、状态继电器
S
(
1
)通用状态继电器
S0--
S499
(
2
)掉电保持型状态继电
器
S499-S899
(
3
)供信号报警用:
S900-S999
状态
继电器
S
是对工作步进控制进行简易编程的重要元件,这里不作
进一步的介绍。
(共
32
点)
(共
32
点)
?
?
?
?
?
X
、
p>
Y
还有无数个常开、常闭触点供编程使用。
Y
外部分仅有一个常开触点供带动负载使用。
< br>
可以看出每组都是
8
个
p>
输入输出点数根据实际工程需要来确定。
< br>可采用主机
+
扩展的方式来使用,扩展的编号
依次编下去。
五、定时器
T
(
1
)定时器
T0--T199
(
200
只):时钟脉冲为
100ms
的定时器,即当设
定值
K=1
时,延时
100ms
。
设定范围为
0.1--
3276.7
秒。
T200--T2
45
(
46
只):时钟脉冲为
10ms
的定时器,即当设定值
K=1
时,延时
10mS
。
设定范围为
0.01--
327.67
秒。
(
2
)积算定时器
T246
--T249
(
4
只)
:时钟脉冲为
1ms
的积算
定时器。
设定范围:
0.001--
32.767
秒。
T250--
T255 (6
只
)
:时钟脉冲为<
/p>
100ms
的积算定时器。
设定范围:
0.1--
3267.7
秒。
积算定时器的意义
:
当控制积算定时器的回路接通时,
定时器开始计算延时时间,
当设定时间
到时定时器动作,
如果在定
时器未动作之前控制回路断开或掉电,
积算定时器能保持已经计算
的时间,待控制回路重新接通时,积算定时器从已积算的值开始计算。
积算定时器可以用
RST
命令复位。
五、计数器
C
(
1
)
16bit
加计
数器
C0--C99
(
100
点):通用型
C1
00-C199
(
100
点):掉电保
持型
设定值范围:
K1--
K32767
(
2
)
32bit
可逆计数器
C200--C219
(
20
点):通用型
C220--C234
(
15
点):掉电保持型。
设定值范围:
-2147483648
< br>到
+2147483647
可逆计数器的计数方向(加
计数或减计数)由特殊辅助继电器
M8200--
M8234
设定。
即
M8△△△接通时作减计数,当
M8△△△断开时作加计数。
< br>
(
3
)高速计数器:
C235--
C255
(后面章节实例中作介绍)
六、数据寄存器
D
D0--D19
9
(
200
只):通用型数据寄存器,
即掉电时全部数据均清零。
D200--D511
(
312
只):掉电保护型数据寄存器。
七、变址寄存器
(在实例中作介绍)
第四节
FX2 PLC
基本指令
2-2-1
触点取用与线圈输出指令
LD
、
LDI
、
OUT<
/p>
2-2-2
单个触点串联指令
AND
、
ANI
2-2-3
单个触点并联指令
OR
、
ORI
2-2-4
串联电路块的并联
OR
2-2-5
并联电路块的串联
ANB
2-2-6
LDP
、
LDF
、
ANDP
、
ANDF
、<
/p>
ORP
、
ORF(FX2n
型有)
2-2-7
多重输出电路
MPS
、
MRD
、
MPP
2-2-8
主控及主控复位指令
MCMCR
2-2-9
脉冲输出
PLS
、
PLF
2-2-10
自保持与解除
SET
、
RST
2-2-11
计数器、定时器线圈输出和复位指令
OUT
、
RST
2-2-12
空操作指令
NOP
2-2-12
程序结束指令
END
2-2-13
梯形图设计的规则和技巧
2-2-14
双重输出动作及其对策
LD<
/p>
,
LDI
,
OU
T
指令
指令助记符与功能:
符号、名称
LD
取
LDI
取反
功能
a
触点逻辑运算开始
b
触点逻辑运算开始
可用元件
X
,
Y
,
M
,<
/p>
S
,
T
,
C
X
,
Y
,
M
,
S
,
T
,
C
程序步
1
1
Y
,
M<
/p>
:
1
S
,特,
M
:
2
T
:
3
C
:
3-5
OUT
输出
线圈驱动
Y
,
M
,
S
,<
/p>
T
,
C
注:当
使用
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
定时器、计数器的程序:
对于定时器
的计时线圈或计数器的计数线圈,使用
OUT
指令以后,必须设
定常数
K
。此
外,也可指定数据寄存器
的地址号。
?
< br>常数
K
的设定范围、实际的定时器常数、相对于
OUT
指令的程序步数(包括设定值)如
下表所
示。
?
定时器、计数器
K
的设定范围
实际的设定值
步数
1ms
定时器
1-32,767
0.001-32.767
秒
3
10ms
定时器
0.01-327.67
秒
1-32,767
3
100ms
定时器
0.1-3,276.7
秒
16
位计数器
1-32,767
同左
3
32
位计数器
-2,147,483,648 - +2,147,483,647
同左
3
AND
,
ANI
指令
助记符与功能:
符号、名称
AND
与
ANI
与非
功能
a
触点串联连接
b
触点串联连接
可用软元件
X
,
Y
,
M
,
S
,
T
,
p>
C
X
,
Y
,
M
,
S
,
T
,
C
程序步
1
1
p>
当使用
M1536-M3071
时,程序步
加
1
。
指令说明:
用
AND
,
ANI
指令可进行
1
个触点的串联连接。串联触点的数量不受限制,该指令可多
次使用。
?
OUT
指令后,通过触点对其他线圈使用
OU
T
指令,称之为纵接输出,(下图的
OUT
M101
与
OUT
Y004
)
这种纵接输出,如果顺序不错,可多次重复。
串联触点数和纵接输出次数不受限制,但使用图形编程设备和打印机则有限制。
建议尽量做到
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
如上图所示,紧接着
OUT M10
1
以后通过触点
T1
可以驱动
OUT Y004
,但如是驱动顺序相反(如
左
图所示)时,则必须使用后面讲到的
MPS
和
< br>MPP
命令。
OR
,
OR
I
指令
指令助记符与功能:
指令助记符、名称
OR
或
ORI
或非
功能
a
触点并联连接
b
触点并联连接
可用软元件
X
,
Y
,
M
,
S
,
T
,
p>
C
X
,
Y
,
M
,
S
,
T
,
C
程序步
1
1
当使用
M
1536-M3071
时,程序步加
1
指令说明:
OR
、
ORI
用作
1
< br>个触点的并联连接指令。
串联连接
< br>2
个以上触点时,并将这种串联电路块与其他电路并联连接时,采用后面讲到的<
/p>
ORB
指令。
?
OR
,<
/p>
ORI
是从该指令的步开始,与前面的
L
D
,
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
指令
指令助记符与功能
指令助记符、名称
ORB
电路块或
指令说明
2
个以上的触点串联连接的电路称为串联电路块。将串联电路并联连接时,分支开始用
LD
、
LDI
指令,分支结束用
ORB
指令。
?
ORB
指令与后面讲的
ANB
指令等一样,是不带软元件地址号的独立
指令。
?
有多个并联电路时,若对每个电路块使用
ORB
指令,则并联
电路没有限制。
(见正确编
程程序)
?
ORB
也
可以成批地使用,但是由于
LD
,
LD
I
指令的重复使用次数限制在
8
次以下
,请务
必注意。(见编程不佳的程序)
?
功能
串联电路块的并联连接
程序步
1
编程
正确编程程序
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
编程不佳的程序
1 LD X000
2 AND X001
3 LD X002
4 AND X003
5 LDI X004
6 AND X006
7
ORB
8
ORB
9 OUT Y006
ANB
指令
指令助记符与功能:
指令助记符、名称
ANB
电路块与
功能
并联电路块的串联连接
程序步
1
指令说明:
?
?
?
当分支电路(并联电路块)与前面
的电路串联连接时,使用
ANB
指令,分支的起点用
LD
,
LDI
指令,并联
电路块结束后用
ANB
指令,与前面的电路串联。
若多个
并联电路块按顺序和前面的电路串联连接时,
则
ANB
指令的使用次数没有限制。
也可成
批地使用
ANB
指令,但在这种场合,与
ORB
指令一样,
LD
、
LDI
指令的使用次数
是有限制的(
8
次以下),请务必请意
编程:
0 LD X000
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
、
L
DF
、
ANDP
、
ANDF
、
ORP
、
ORF
指令
指令助指符与功能:
指令助记符、名称
LDP
取脉冲
LDF
取脉冲
ANDP
与脉冲
ANDF
与脉冲
ORP
或脉冲
ORF
或脉冲
功能
上升沿检测运算开始
下降沿检测运算开始
上升沿检测串联连接
下降沿检测串联连接
上升沿检测并联连接
下降沿检测并联连接
可用软元件
X
、
Y
、
M
、
S
、
T
、
p>
C
X
、
Y
、
M
、
S
、
T
、
C
X
、
Y
、
< br>M
、
S
、
T
、
C
X
、
Y
、
M
、<
/p>
S
、
T
、
C
X
、
Y
、
M
、
S
、
T
、
C
X
、
Y
、
M
、
S
、
T
、
C
程序步
1
1
1
1
1
1
当使用
M1536--M3071
时,
程序步加
1
,以上指令
FX2N
中才有。
指令说明:
?
?
p>
LDP
、
ANDP
、
ORP
指令是进行上升沿检测的触点指令,
< br>仅在指定位软件上沿时
(即由
OFF→ON
变化时)接通
1
个扫描周期。
LDF
、
ANDF
、
ORF
指令是进行下降沿检测的触点指令,仅在指
定位软元件下降时(即由
ON→OFF
变化时)接通
1
个扫描周期。
编程:
例
1
:
0 LDP X000
1 ORP X001
2 OUT M0
3 LD M8000
4 ANDP X002
5 OUT M1
例
2
:
0 LDF X000
1 ORF X001
2 OUT M0
3 LD M8000
4 ANDF X002
5 OUT M1
图示理解
:
MPS
、
M
RD
、
MPP
指令
指令助记符与功能
指令助记符、名称
MPS
进栈
MRD
读栈
MPP
出栈
功能
进栈
读栈
出栈
程序步
1
1
1
指令说明
?
在可编程序控制器中有
11
个存储器,
用来存
储运算的中间结果,
被称为栈存储器。
< br>使用一
次
MPS
指令就将此
时刻的运算结果送入栈存
储器的第
1
段
,再使用
MPS
指令,又将此时
刻
的运算结果送入栈存储器的第
1
段,
而
将原
先存入第一段的数据移到第二段。以此类推。
使用
MPP
指令,将最上段的数据读
出,同时
该数据从栈存储器中消失,
下面的各段数据顺
序向上移动。即所谓后进先出的原则。
MR
D
是读出最上段所存的最新数据的专用指
令,栈存储器内的数据
不发生移动。
这些指令都是不带软元件地址的独立指令。
?
?
?
编程
例
1
:一段栈
0 LD X004
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
例
2
:二段栈
例
3
:四段栈
0 LD X000
1 MPS
2
AND X001
3 MPS
4 AND X002
5 OUT Y000
6 MPP
7 AND X003
8 OUT Y001
9 MPP
10 AND
X004
11 MPS
12 AND X005
13 OUT Y002
14 MPP
15 AND X006
16 OUT Y003
0
LD X000
1 MPS
2 AND X001
3 MPS
4 AND X002
5 MPS
6 AND X003
7 MPS
8 AND X004
9 OUT Y000
10
MPP
11 OUT Y001
12 MPP
13 OUT Y002
14 MPP
15 OUT 003
16 MPP
17 OUT Y004
请对照一下面的梯形图与例
3
:
0 LD X000
1 OUT Y004
2 AND X001
3 OUT Y003
4 AND X002
5 OUT Y002
6 AND X003
7 OUT Y001
8 AND X004
9 OUT Y000
例
3
中需要要三重
MP
S
指令编
程,但是如果改成左面的电
路,
实现的效果一样。编程却
很方便,
不必采用
MPS
指令。
MC
、
MCR
指令
指令助记符与功能
指令助记符、名称
MC
主控指令
MCR
主控复位
功能
公共串联触点的连接
公共串联触点的清除
程序步
3
2
指令说明
?
在下面程序示例中,输入
X000
为接通时,直接执行从
MC
到
MCR
的指令,输入
X
000
为
断开时,成为如下形式:
保持当前状态:积算定时器、计数器、用置位
/
复位指令驱动的软元件。
变成
OFF
的软件:非积算定时器,用
OUT
指令驱动的软元件。
?
?
主控(
M
C
)指令后,母线(
LD
、
LDI
点)移动主控触点后,
MCR
为将其返回原母线的指
令。
通过更改软元件地址号
Y
、
M
p>
,
可多次使用主控指令。但使用同一软元件地址号时,
就和
OUT
指令一样,成为双线圈输出。
编程
例
1
:没有嵌套时
0
LD X000
1 MC N0 M100
4 LD
X001
5 OUT Y000
6 LD X002
7 OUT Y001
8 MCR N0
没有嵌
套结构
时,通用
N0
编程。
N0
的
使用次数没有限制。有嵌
< br>套结构时,嵌套级
N
的地
址号增
大,即
N0--
N1--
N2……N7。
例
2
:有嵌套时
0
LD X000
1
MC
N0
M100
4 LD X001
5
OUT Y000
6 LD X002
7
MC
N1
M101
10 LD X003
11 OUT Y001
12 MCR N1
指令
14 LD X004
15 OUT Y002
16 MCR N0
指令
3
步指令
3
步指令
2
步
2
步
PLS
、
PLF
指令
指令助记符、名称
指令助记符、名称
PLS
上升脉冲
PLF
下沿脉冲
当使用
M1536--
M3071
时,程序步加
1
功能
上升沿微分输出
下降沿微分输出
程序步
2
2
指令说明
?
?
p>
使用
PLF
指令时,仅在驱动输入
OFF
后
1
个扫描周期
内,软元件
Y
、
M
动作。
使用
PLS
指令时,仅在驱动输入
ON
后
1
个扫描周期内,软元件
Y
、
p>
M
动作。
编程
0 LD X000
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
指令
指令助记符与功能
指令助记符、名称
SET
置位
功能
动作保持
可用软元件
Y
、
M
、
S
程序步
Y
、
M
:
1
S
、
特
M
:
2
RST
复位
消除动作保持,
Y
< br>、
M
、
S
、
T
、
C
、
D
、
V
、
p>
Z
T
、
寄存器清
零
C
:
2
D
、
V
、
Z
p>
、特
D
:
3
指令说明
?
?
?
?
在下述程序示例中,
X000
一旦接通后,即使它再次成为
OFF
,
Y000
依然被吸合。
X001
一旦接通后,即使它再次成为
OFF
,
Y000
仍然是释放状态。
对同一种软元件,
SET
、
p>
RST
可多次使用,顺序也可随意,但最后执行者有效。
此外,要使数据寄存器
D
、变址寄存器
V
、
Z
的内容清零时,也可使用
RST
指令。
积算定时器
T246--T255
的当前值的复位和触点复位也可用
RST
指令。
p>
编程
0
LD X000
1 SET Y000
2 LD X001
3 RST Y000
计数器软元件的
OUT
、
RST
指令助记符与功能
指令助记符、名称
OUT
输出
RST
复位
功能
计数线圈的驱动
输出触点的复位、当前值的清零
程序步
32
位计数器:
5
16
位计数器:
3
2
内部计数器编程
0 LD X010
1 RST C0
2
步指令
3 LD X011
4 OUT C0 K10
(
3
步指令)
7 LD C0
8 OUT Y000
C0
对<
/p>
X011
的
OFF-ON
次数进行增计数,当它达到设定值
K10
时,输出输出
点
C0
动作,
以后即使
X011
从
OFF-
ON
,计数器的当前值不变,输出触点依然动作。
?
为了清除这些当前值,让输出触点
复位,则应令
X010
为
ON
。
?
有必要在
OUT
指令后面指定常数
K
或用数据寄存器的地址号作间接设定。
?
?
p>
对于掉电保持用计数器,即使停电,也能保持当前值,以及输出触点的工作状态或复位
状态。
高速计数器的编程
0 LD
X010
1 OUT M8***
2
步
3 LD X011
4 RST C***
2
步
6 LD XO12
7 OUT C***
K
值(或
D
)
5
步
12 LD C***
13 OUT Y002
?
?
?
?
?
?
在
p>
C235-C245
的单相单输入计数器中,为了指定计数方向,采
用特殊辅助继电器
M8234-M8245
。
< br>
当
X010
为
ON
时,对应
C***
的<
/p>
M8***
也
ON
,这时
C***
为减计数。
p>
当
X010
为
OF
F
时,对应
C***
的
M8***
也
OFF
,这时<
/p>
C***
为增计数。
X011
为
ON
时,计数器<
/p>
C***
的输出触点复位,计数器的当前值也清零。
当
X012
为
ON
时,对依据计数器地址号确定的计数器输入
X000-X005
的
ON/OFF
进
行计
数。
计数器的当前值增加,通
过设定值(
K
或
D
的内容)时输出触点置位。在减少方向上通
过设定值复位。
NOP
、
END
指令
指令助记符与功能
指令助记符、名称
NOP
控操作
END
结束
功能
无动作
输入输出处理和返回到
0
步
程序步
1
1
指令说明
NOP
指令:
1
、将程序全部清除时,全部指令成为空操作
2<
/p>
、
若在普通指令与指令之间加入空操作
(
NOP
)
指令,
则可编程序控制器可继续工作,
,
而与此无关。若在编写程序
过程中加入空操作指令,则在修改或追加程序时,可以减少步序号
的变化,但是程序步需
要有空余。
3
、若将已写入的指令换成
NOP
指令,则电路会发生变化,务必请注意。