1
PLC控制系统的设计
第六章
2
PLC控制系统设计概述
逻 辑 设 计 法
时 序 图 设 计 法
经 验 设 计 法
顺 序 控 制 设 计 法
继电器控制电路转换设计法
多种工作方式系统的程序设计
3
PLC控制系统设计概述
一、PLC控制系统设计的基本步骤
1. 对控制任务作深入的调查研究
●弄清哪些是PLC的输入信号,是模拟量还是开关量信号,用什么方式来获取信号;
● 哪些是PLC的输出信号,通过什么执行元件去驱动负载;
●弄清整个工艺过程和欲完成的控制内容,;
4
●了解运动部件的驱动方式,是液压、气动还是电动;
●了解系统是否有周期运行、单周期运行、手动调整等控制要求等;
●了解哪些量需要监控、报警、显示,是否需要故障诊断,需要哪些保护措施等;
●了解是否有通信连网要求等。
5
2. 确定系统总体设计方案
在深入了解控制要求的基础上,确定电气控制总体方案。
● 确定主回路所需的各电器,确定输入、输出元件的种类和数量;
3. 确定系统的硬件构成
● 确定保护、报警、显示元件的种类和数量;
● 计算所需PLC的输入/输出点数,并参照其他要求选择合适的PLC机型。
6
4.确定PLC的输入/输出点分配
确定各输入/输出元件并作出PLC的I/O分配表。
● 根据控制要求,拟订几个设计方案,经比较后选择出最佳编程方案。
●当控制系统较复杂时,可分成多个相对独立的子任务,分别对各子任务进行编程,最后将各子任务的程序合理地连接起来。
5.设计应用程序
7
6.应用程序的调试
编写的程序必须先进行模拟调试。经过反复调试和修改,使程序满足控制要求。
●在开始制作控制柜及控制盘之前,要画出电气控制主回路电路图。
7.制做电气控制柜和控制盘
●要全面地考虑各种保护、连锁措施等问题。
●在控制柜布置和敷线时,要采取有效的措施抑制各种干扰信号。
●要注意解决防尘、防静电、防雷电等问题。
8
8.连机调试程序
●调试前要制定周密的调试计划,以免由于工作的盲目性而隐藏了故障隐患。
●程序调试完毕,必须运行实际一段时间,以确认程序是否真正达到控制要求。
9.编写技术文件
整理程序清单并保存程序,编写元件明细表,整理电气原理图及主回路电路图,整理相关的技术参数,编写控制系统说明书等。
9
二、PLC的应用程序
1.应用程序的内容
应能最大限度地满足控制要求。
(1)初始化程序。
将某些数据区清零;使某些数据区恢复所需数据;对某些输出位置位/复位;显示某些初始状态等。
初始化程序可以为系统启动作好必要的准备,如:
应用程序还应包括以下内容:
10
(2)检测、故障诊断、显示程序。
这些内容可以在程序设计基本完成时再进行添加。有时,它们也是相对独立的程序段。
(3)保护、连锁程序。其作用为:
杜绝由于非法操作等引起的逻辑混乱,保证系统安全、可靠地运行。
通常在PLC外部也要设置连锁和保护措施。
11
2.应用程序的质量
(1)程序的正确性。
正确的程序必须能经得起系统运行实践的考验。
(2)程序的可靠性。
●能保证系统在正常和非正常(短时掉电、某些被控量超标、某个环节有故障等)情况下都能安全可靠地运行。
●能保证在出现非法操作(如按动或误触动了不该动作的按钮等)情况下不至于出现系统失控。
12
(3)参数的易调整性好。
经常修改的参数,在程序设计时必须考虑怎样编写才能易于修改。
(4)程序结构简练。
简练的程序,可以减少程序扫描时间、提高PLC对输入信号的响应速度。
(5)程序的可读性好。
13
逻 辑 设 计 法
① 根据控制功能,将输入与输出信号之间建立起逻辑函数关系(可先列出逻辑状态表);
② 对上述所得的逻辑函数进行化简或变换;
③ 对化简后的函数,利用PLC的逻辑指令实现其函数关系(作出I/O分配,画出PLC梯形图);
逻辑设计法的基本步骤
④ 添加特殊要求的程序。
⑤ 上机调试程序,进行修改和完善。
14
逻 辑 设 计 法 举 例 之一
某系统中有3台通风机,欲用一台指示灯显示通风机的各种运行状态。
要求:2台及2台以上风机开机时,指示灯常亮;若只有一个台开机时,指示灯以0.5Hz的频率闪烁;全部停机时,指示灯以2Hz的频率闪烁。用一个开关控制系统的工作。
分析控制要求可知:
反映台风机运行状态的信号是PLC的输入信号;
要用PLC的输出信号来控制指示灯的亮、灭。
15
对逻辑关系简单的控制,可以直接进行I/O分配。
I/O分配为如下:
输 出
01000
00003
00002
00001
00000
指示灯
控制开关
风机3
风机2
风机1
输 入
16
用辅助继电器20000~20002表示指示灯的几种状态。
0 1 0
1 0 0
1 0 0
1 0 0
1 0 0
1 0 1
1 1 0
1 1 1
0 0 1
0 1 0
0 1 0
1 0 0
0 0 0
0 0 1
0 1 0
0 1 1
20000 20001 20002
00000 00001 00002
输 出
输 入
由表可看出:
20001=20000·20002
常亮
2 Hz闪
0.5 Hz闪
风机1
风机3
风机2
设开机为‘1’、停为‘0’ ;指示灯亮和闪为‘1’,灭为‘0’。
20000= 00000 · 00001 · 00002 + 00000 · 00001 · 00002
00000 · 00001 · 00002 + 00000 · 00001 · 00002
20002= 00000 · 00001 · 00002
17
将20000~20002的逻辑表达式化简:
化简得:
20000=00000 · 00001+ 00000 · 00002 + 00001· 00002
20002=00000 · 00001 · 00002
20001=20000 · 20002
20000= 00000 · 00001 · 00002 + 00000 · 00001 · 00002
00000 · 00001 · 00002 + 00000 · 00001 · 00002
18
设计梯形图程序
20002=00000·00001·00002
20000 = 00000 · 00001
+ 00000 · 00002
+ 00001 · 00002
20001=20000·20002
常亮
控制开关
2 Hz闪
0.5 Hz闪
00003 00001 00002
20000
20002
20001
01000
00000 00002
00000 00001
00000 00001 00002
20000 20002
20001 TIM000
20002 TIM002
TIM001
TIM000
#0010
TIM001
#0010
TIM000
20000
a
TIM003
#0003
TIM002
TIM002
#0002
TIM003
a
19
逻 辑 设 计 法 举 例 之二
某系统中有4台通风机,欲用两台指示灯显示通风机的各种运行状态。
要求:3台及3台以上风机开机时,绿灯常亮;两台开机时,绿灯以5Hz的频率闪烁;一台开机时,红灯以5Hz的频率闪烁;全部停机时,红灯常亮。
分析控制要求得知:
反映各台风机运行状态的信号是PLC的输入信号;
要用PLC的输出信号来控制各指示灯的亮、灭。
上述几种运行情况可分开考虑,以简化程序设计。
20
本例,用A、B、C、D表示4台通风机,红灯为F1,绿灯为 F2;设灯亮为“1”、灯灭为“0”; 风机开为“1”、停为“0” 。
1. 红灯(F1)常亮的程序设计
当4台风机都不开机时,红灯常亮,其逻辑关系可列表为:
由表可得函数:
F1 = A B C D (1)
A B C D
F1
由式(1)可画出梯形图如下:
A B C D F1
0 0 0 0 1
21
2. 绿灯(F2)常亮的程序设计
A B C D F2
0 1 1 1 1
1 0 1 1 1
1 1 0 1 1
1 1 1 0 1
1 1 1 1 1
能引起绿灯常亮的情况有5种,列逻辑状态表如下:
由此得逻辑函数为:
将式(2)化简为:
F2 = AB(D+C)+CD(A+B) (3)
F2 = ABCD + ABCD + ABCD
+ ABCD + ABCD (2)
根据式(3)画梯形图:
F2
C A B
D
A C D
B
22
3. 红灯(F1)闪烁的程序设计
A B C D F1
0 0 0 1 1
0 0 1 0 1
0 1 0 0 1
1 0 0 0 1
根据红灯闪烁的情况列表如下(设闪烁为“1” ):
由表得逻辑函数为:
将式(4)化简为:
F1 = ABCD + ABCD
+ ABCD + ABCD (4)
根据式(5)画梯形图:
F1
C D A B 25501
C D
A B C D
A B
F1 = AB(CD + CD)
+ CD(AB + AB)(5)
25501产生5Hz的脉冲
23
4. 绿灯(F2)闪烁的程序设计
A B C D F2
0 0 1 1 1
0 1 0 1 1
0 1 1 0 1
1 0 0 1 1
- 0 1 0 1
1 1 0 0 1
根据绿灯闪烁的情况列表如下(设闪烁为“1” ):
由此得逻辑函数为:
将式(6)化简为:
F2 = ABCD + ABCD + ABCD
+ ABCD + ABCD + ABCD (6)
F2 = (AB + AB)(CD + CD)
+ AB CD + AB CD (7)
24
F2 = (AB + AB)(CD + CD)
+ AB CD + AB CD (7)
根据式(7)画梯形图如下:
F2
A B C D 25501
A B C D
A B C D
A B C D
25
5. 根据所选用的PLC机型,作出I/O分配表。用PLC的I/O点编号替换梯形图中的变量。
(1)作I/O分配表(本例使用的PLC是CPM1A):
01102
01101
00104
00103
00102
00101
F2
F1
D
C
B
A
输 出
输 入
(2)将上面各梯形图中的A、D、C、D、F1、F2用
表中的PLC输入/输出点编号替换。
作其梯形图如下:
A B C D
F1
00101 00102 00103 00104
01101
F1 = A B C D
26
下面以红灯的程序为例说明合并的方法。
00101 00102 00103 00104
F1
F1
00103 00104 00101 00102 25501
00103 00104
00101 00102 00103 00104
00101 00102
6. 综合几个梯形图,得出最后的程序。
两张图的合并应作如图处理。
照此处理绿灯及整个程序。
红灯的程序
7. 上机调试程序,进一步修改、完善。
27
时 序 图 设 计 法
若PLC各输出信号的状态变化有一定的时间顺序,可由时序图入手进行程序设计。
(1) 根据各输入、输出信号之间的时序关系,画出输入和输出信号的工作时序图。
(2) 把时序图划分成若干个区段,确定各区段的时间长短。找出区段间的分界点,弄清分界点处各输出信号状态的转换关系和转换条件。
一般方法为:
28
(3) 确定所需的定时器个数,分配定时器号,确定各定时器的设定值。
(4) 明确各定时器开始定时和定时到两个时刻各输出信号的状态。最好作一个状态转换明细表 。
(5) 作PLC的I/O分配表。
(6) 根据时序图、状态转换明细表和I/O分配表,画出PLC梯形图。
(7) 作模拟实验,进一步修改、完善程序。
29
时序图设计法举例
图为十字路口上的红、黄、绿交通信号灯。绿灯亮放行、红灯亮禁行。
控制要求:
① 放行时间:南北方向为30秒,东西方向为20秒。
②禁行预告:欲禁行方向的黄灯和欲放行方向的红灯
以5Hz的频率闪烁5秒, 5秒后另一个方向放行。
③ 只用一个控制开关对系统进行运行控制。
南
北
西
东
30
(1)分析控制要求,确定输入和输出信号。
原则:在满足控制要求的前提下,应尽量少占用PLC的I/O点数。
对本例,由控制开关输入的信号是输入信号;指示灯的亮、灭由PLC的输出信号控制。
由于同方向的同色灯在同一时间亮、灭,可将同色灯并联,用一个输出信号控制。这样只占6个输出点。
南
北
西
东
31
(2)画出各方向三色灯的工作时序图。
5s
5s
南北黄灯
南北绿灯
30 s
30 s
5s
东西红灯
5s
20s
20 s
东西绿灯
东西黄灯
5s
5s
南北红灯
20 s
5s
20 s
5s
启 动
t0 t1 t2 t3 t4
一个循环
一个循环
(3)由时序图分析各输出信号之间的时间关系。
红灯和绿灯常亮的时间相同(30s/ 20s) ;黄灯和红灯闪烁的时间相同(5s) 。
32
一个循环有4个时间分界点:t1 、 t2 、 t3 、 t4 。
在这4个分界点处信号灯的状态将发生变化。
5s
5s
南北黄灯
南北绿灯
30 s
30 s
5s
东西红灯
5s
20s
20 s
东西绿灯
东西黄灯
5s
5s
南北红灯
20 s
5s
20 s
5s
启 动
t0 t1 t2 t3 t4
(4)确定信号灯的状态转换点。
33
用TIM000~TIM003 4个定时器控制信号灯的状态转换。
(5)确定定时器的个数及编号。
5s
5s
南北黄灯
南北绿灯
30 s
30 s
5s
东西红灯
5s
20s
20 s
东西绿灯
东西黄灯
5s
5s
南北红灯
20 s
5s
20 s
5s
启 动
t0 t1 t2 t3 t4
TIM000
TIM001
TIM002
TIM003
34
(6)列出定时器的功能明细表。
5s
5s
南北黄灯
南北绿灯
30 s
30 s
5s
东西红灯
5s
20s
20 s
东西绿灯
东西黄灯
5s
5s
南北红灯
20 s
5s
20 s
5s
启 动
t0 t1 t2 t3 t4
TIM000
TIM001
TIM002
TIM003
开始下一个循环的定时。
ON
ON
TIM000ON。南/北绿灯灭,南/北黄、东西红灯开始闪。
开始定时。(为南/北绿灯、东/西红灯亮定时)
TIM000
(通电延时OFF控制 )
t4
t3
t2
t1
t0
定时器
35
5s
5s
南北黄灯
南北绿灯
30 s
30 s
5s
东西红灯
5s
20s
20 s
东西绿灯
东西黄灯
5s
5s
南北红灯
20 s
5s
20 s
5s
启 动
t0 t1 t2 t3 t4
TIM000
TIM001
TIM002
TIM003
开始下一个循环的定时。
ON
ON
TIM000ON。南/北绿灯灭,南/北黄、东西红灯开始闪。
开始定时。(为南/北绿灯、东西红灯亮定时)
TIM000
(定时30 s )
t4
t3
t2
t1
t0
定时器
开始下一个循环的定时。
ON
TIM001ON。闪烁的灯灭,东西绿、南北红灯亮。
继续定时。
开始定时。
TIM001
(定时35 s )
36
定时器
t0
t1
t2
t3
t4
TIM000
定时30秒
开始定时。
南北绿、东西红灯开始亮
ON且保持。
南北绿灯灭;南北黄、东西
红灯开始闪
ON
ON
开始下一个循环的定时
TIM001
定时35秒
开始定时
继续定时
ON且保持。
南北黄、东西红灯灭;
东西绿、南北红灯亮
ON
开始下一个循环的定时
TIM002
定时55秒
开始定时
继续定时
继续定时
ON且保持。
东西绿灯灭;
东西黄、南北红灯开始闪
开始下一个循环的定时
TIM003
定时60秒
开始定时
继续定时
继续定时
继续定时
ON,随即复位且开始下一个循环的定时。
37
输 入
输 出
控制开关
南北绿灯
南北黄灯
南北红灯
东西绿灯
东西黄灯
东西红灯
00000
01000
01001
01002
01003
01004
01005
(6)根据定时器功能明细表和I/O分配,画出PLC的梯形图。
(7)作PLC的I/O分配表。
本例要求用一个控制开关进行控制。这里将全部程序放在指令IL/ILC 之间,用00000作为指令IL的执行条件,即可实现控制要求。
38
IL( 02 )
00000
TIM000
# 0300
TIM003
TIM001
# 0350
TIM002
# 0550
TIM003
# 0600
TIM000
01000
系统启动
南北绿/东西
红亮30秒定时
南北黄/东西
红闪5秒定时
东西绿/南北
红亮20秒定时
东西黄、南北
红闪5秒定时
TIM000 25501 TIM001
ILC( 03 )
END(01)
01000
01005
01001
01003
01004
TIM002 25501 TIM003
TIM001 TIM002
01001
01003
01002
01004
南北绿亮30秒
东西红亮30秒
东西绿亮20秒
南北红亮20秒
南北黄闪5秒
东西红闪5秒
东西黄闪5秒
南北红闪5秒
39
经 验 设 计 法
经验设计法的基础是:具有继电器控制的设计经验,熟练掌握PLC指令的功能。
典型控制电路包括:电动机的启保停控制、正/反转控制、点动控制、 Y-△启动控制、几台电动机的连锁控制、异地控制、掉电保持等等。
一、典型控制电路的PLC程序设计
所谓设计经验,是指能熟练掌握典型继电器控制电路的设计思路,并能将这种设计思路移植到PLC程序设计中。
40
1. 启保停控制程序
00002
00003
KEEP
01000
01000
01000
00002
00003
00002
00003
SET 01000
RESET 01000
(a)
(b)
(c)
下图是常用的启保停PLC控制程序。
要区别不同场合,采用不同的启保停控制程序。
41
2. 电动机正反转控制程序
下面是正反转控制的程序设计(尚有其他方案)。
为确保运行可靠,要采取软、硬件两种互锁措施。
01001
00002
00000
01001
01002
00001
01002
01002
00002
01001
SB3
00000 01001
00001 01002
00002
COM COM
SB1
~ 220V
SB2
DC24V
KM1
KM2
PLC
KH
KM1
KM2
正转启动
反转启动
停车按钮
正转接触器
反转接触器
触点互锁
触点互锁
42
00000
00001
IL(02)
ILC(03)
20000
20000
01001
TIM001
TIM001
01001
01002
△
Y
SV1
TIM001
01002
00000 01001
00001 01002
COM COM
SB1
~ 220V
SB2
DC24V
KM1
KM2
PLC
KH
KM1
KM2
3. 电动机Y- △启动控制程序
下面是电动机Y- △启动控制的程序设计(尚有其他方案).
必须有硬件互锁!
启动按钮
停车按钮
注意20000的作用!
43
01001
01000
00003
01001
01000
00000
01001
00002
00001
4. 电动机顺序启/停控制程序
下面是两台电动机顺序启/停控制的程序设计(尚有其他方案)。
启动时,只有电动机M1启动(01000 ON)、电动机M2才可能启动(01001 ON);停止时,只有M1先停、 M2才可能停。
M2停车 00003
M2启动 00002
KM2 01001
M1停车 00001
KM1 01000
M1启动 00000
输 出
输 入
44
01000
00002
00000
20000
00001
20000
20000
5. 电动机既可长动、又可点动的控制程序
下面是电动机长/点动控制的程序(尚有其他方案)。
长动按钮SB2 00001
停车按钮SB3 00002
KM 01000
点动按钮SB1 00000
输 出
输 入
长动: 按一下SB2。
点动: 按住SB1不放,电动机转动,释放SB1电动机停转。
停车: 按一下SB3。
45
6. 电动机异地控制程序
下面是电动机在三地启/停控制的程序(尚有其他方案)。
丙地启/停SB2 00002
乙地启/停SB2 00001
KM 01000
甲地启/停SB1 00000
输 出
输 入
本例,各地电动机的启动和停车都共用一个按钮。
20000
20000
DIFD(14) 20000
KEEP
01000
01000
00003
00001
00002
无论在何地,第一次按动按钮是启动电动机,第二次按动按钮就是停车。
46
7. 掉电保持程序
常用方法:
●使用KEEP指令以及SET、RESET等指令编写程序,并用保持继电器HR的某一位作输出;
●将系统的运行状态或参数存放在具有掉电保持功能的DM区等。
除了上述各种典型程序外,脉冲发生器程序、分频器程序、优先权程序等,最好能熟练掌握。
47
二、经验法编程举例
在两处往返装料/卸料的小车,工作过程如图。
ST1
ST3
ST2
右
左
装料处
卸料处
卸料处
要求:小车单数次运行时,在ST3卸料。偶数次运行时,ST3处不卸,而在ST2处卸料。
装料15s 、卸料10s。
行程开关ST2 00003
装料KM 01002
停车按钮SB3 00002
卸料KM 01003
行程开关ST1 00004
行程开关ST3 00005
左行KM 01001
左行启动SB2 00001
右行KM 01000
右行启动SB1 00000
输 出
输 入
I/O分配表
48
01000
00002
00000
01000
00001
01001
01001
00005
00002
00003
00001
01001
20000
TIM001
00004
00000
01000
TIM000
01000
00003
01001
01003
TIM000
#0100
00005
00004
01002
TIM001
#0150
00005
20000
20000
01001
00003
右行
左行
卸料
装料
右行启动
左行启动
ST3
ST1
ST3
ST2
进
退
装料
卸料
卸料
ST2
ST1
系统程序
00004
00005
00003
单数次运行
49
01000
00002
00000
01000
00001
01001
01001
00005
00002
00003
00001
01001
20000
TIM001
00004
00000
01000
TIM000
01000
00003
01001
01003
TIM000
#0100
00005
00004
01002
TIM001
#0150
00005
20000
20000
01001
00003
右行
左行
卸料
装料
右行启
左行启
ST3
ST1
ST3
ST2
进
退
装料
卸料
卸料
ST2
ST1
偶数次运行
00004
00005
00003
50
顺 序 控 制 设 计 法
功能表图是顺序控制设计法的重要的工具。
1. 功能表图的组成
一、功能表图
下面以某动力头的控制为例来说明功能表图的组成。
动力头的运动有三种状态:快进→工进→快退。
各状态的转换条件为:
快进结束压限位开关ST1则转为工进;
工进结束压限位开关ST2则转为快退;
退回原位压ST3自动停止。
51
●矩形框表示各步,框内数字是步的号。初始步用双线框。
●功能表图的组成:
步、有向连线、转换条件、动作说明。
1
启动
压ST1
2
压ST2
3
工进
车停原位
快退
快进
压ST3
4
控制动力头的功能表图如图所示。
●正在执行的步叫活动步,当前一步为活动步且转换条件满足时,启动下一步并终止前一步。
52
2. 功能表图的类型
(1) 单序列结构
1
启动
压ST1
2
压ST2
3
工进
车停原位
快退
快进
压ST3
4
单序列
单序列——没有分支
选择序列
并行序列
每个步后只有一个步
各步间需要转换条件
后一步成为活动步时,前一步变为不活动步。
53
(2) 选择序列结构
● 序列的开始称为分支,各分支不能同时执行。
分支1
分支3
●当前一步为活动步、且转换条件满足时,才能转向下一步。
●后一步成为活动步时,前一步变为不活动步。
●若选择转向某个分支,其他分支的首步不能成为活动步。
a
b
c
d
e
f
j
1
4
2
6
8
g
h
i
5
3
7
分支2
54
● 选择序列的结束称为合并。
当某个分支的最后一步成为活动步、且转换条件满足,时都要转向合并步。
a
b
c
d
e
f
j
1
4
2
6
8
g
h
i
5
3
7
55
e
a
c
1
b
2
3
d
4
7
6
5
8
(3) 并行序列结构
●并行序列的开始用双线表示,转换条件放在双线之上。
●当并行序列首步为活动步且条件满足时,各分支首步同时变为活动步。
●并行序列的结束称为合并,用双线表示并行序列的合并,转换条件放在双线之下。
分支2
分支1
●当各分支的末步都为活动步、且条件满足时,将同时转换到合并步,且各末步都变为不活动步。
分支3
56
B1
Si
B2
Si+1
Si
Si-1
Si+1
Si
Ci
Si+1
Si+2
Si+1
Si
Ci+1
…
…
3. 功能表图与梯形图的对应关系
步程序的梯形图结构如图。
●每个步有一个控制位,当某步的控制位为ON时,该步成为活动步(激活下一步的条件之一),同时与该步对应的程序开始执行;
●当转换条件满足时(激活下一步的条件之二),则下一步的控制位为ON,而上一步的控制位变为OFF,上一步对应的程序停止执行。
57
●由于转换条件常是短信号,因此每步要加自锁。
●当后续步成为活动步时,前一步要变为不活动步。
B1
Si
B2
Si+1
Si
Si-1
Si+1
Si
Ci
Si+1
Si+2
Si+1
Si
Ci+1
…
…
必须将常闭触点Si+1和Si+2与前一步的控制位线圈串联。
●当某一步成为活动步时,其控制位为ON,可以利用这个ON信号实现相应的控制。
58
4. 根据功能表图画PLC梯形图
由功能表图画梯形图:
(1) 初始步20000的梯形图
● 步20000是两个分支的合并步
20000成为活动步的条件是:
或00000为ON,或步20008为活动步且HR0001为ON;
20000成为不活动步的条件是:
20000
TIM004
00001
TIM001
00000
CNT002
00002
CNT003
HR0000
HR0001
20004
TIM000
20001
20002
20005
20003
20006
20007
20008
20001和20004成为活动步。
根据上述分析,画出梯形图如下
59
(2) 步20001的梯形图
20008
20000
00000
20000
20001
HR0001
20000
TIM004
00001
TIM001
00000
CNT002
00002
CNT003
HR0000
HR0001
20004
TIM000
20001
20002
20005
20003
20006
20007
20008
● 它是单序列的首步
20001成为活动步的条件是:
步20000活动且条件00001为ON
20001成为不活动步的条件是:
步20002成为活动步。
步20000的梯形图
60
20000
TIM004
00001
TIM001
00000
CNT002
00002
CNT003
HR0000
HR0001
20004
TIM000
20001
20002
20005
20003
20006
20007
20008
20000
20001
20001
20002
00001
(3) 步20004的梯形图
● 它是选择序列的开始步
20004成为活动步的条件是:
步20000活动、且00001为ON。
20004成为不活动步的条件是:
步20002、20003与20001相似。
步20005或步20007成为活动步 。
步20001的梯形图
61
20000
TIM004
00001
TIM001
00000
CNT002
00002
CNT003
HR0000
HR0001
20004
TIM000
20001
20002
20005
20003
20006
20007
20008
(4) 步20005的梯形图
20005成为活动步的条件是:
步20004活动、且TIM001 ON。
20005成为不活动步的条件是:
步20006或步20007成为活动步 。
20000
20004
20004
20005
00001
20007
步20004的梯形图
62
20000
TIM004
00001
TIM001
00000
CNT002
00002
CNT003
HR0000
HR0001
20004
TIM000
20001
20002
20005
20003
20006
20007
20008
(5) 步20006的梯形图
20006成为活动步的条件是:
步20006是选择分支的合并。
20006成为不活动步的条件:
20008成为活动步。
20005
20004
20005
20007
TIM001
20006
或步20005活动且条件00002为ON,或20007活动且条件HR0000为ON。
步20005的梯形图
63
20000
TIM004
00001
TIM001
00000
CNT002
00002
CNT003
HR0000
HR0001
20004
TIM000
20001
20002
20005
20003
20006
20007
20008
(6) 步20008的梯形图
20008成为活动步的条件是:
步20008是并行序列的合并。
20008成为不活动步的条件:
20000成为活动步。
步20003和20006均为活动步、且转换条件TIM004为ON。
20005
20006
20006
20007
20008
00002
HR0000
步20006的梯形图
64
步20008的梯形图
20000
TIM004
00001
TIM001
00000
CNT002
00002
CNT003
HR0000
HR0001
20004
TIM000
20001
20002
20005
20003
20006
20007
20008
掌握了由功能表图画梯形图的方法,就可以使用顺序控制设计法编写应用程序。
20008
20003
20008
20000
TIM004
20006
65
二、用顺序控制设计法编写用户程序
用顺序控制设计法编程的基本步骤:
(1)根据控制要求将控制过程分成若干个工作步。
① 明确每个工作步的功能,弄清步的转换是单向进行(单序列)还是多向进行(选择或并行序列);
② 确定各步的转换条件(可能是多个信号的“与”、“或”等逻辑组合)。
③ 必要时可画一个工作流程图,它有助于理顺整个控制过程的进程。
66
(2)为每个步设置控制位,确定转换条件。
控制位最好使用同一个通道的若干连续位。
(3)确定所需输入和输出点,选择PLC机型,作出I/O分配。
(4)在前两步的基础上,画出功能表图。
(5)根据功能表图画梯形图。
(6)添加某些特殊要求的程序。
67
顺序控制设计举例之一
某动力头工作流程如图。
ST3
ST1
ST2
快进
工进
快退
动力头停在原位(ST3)。
按一下按钮动力头启动。
01002
反转
电磁阀
01001
01000
00003
00002
00001
00000
正转
电磁阀2
正转
电磁阀1
ST3
ST2
ST1
启动
按钮
输 出
输 入
(1) 作出 I/O分配:
动力头退回原位后重复上述动作。
68
(2) 画出动力头的功能表图。
1
启动
压ST3·按启动按钮
2
压ST1
3
快进
工进
等待
压ST2
4
快退
压ST3
20000
启动
00003 · 00000
20001
00001
20002
01000ON · 01001ON
01001
00002
20003
01002
00003
正转
电磁阀1
正转
电磁阀2
正转
电磁阀2
反转
电磁阀
69
(3) 根据功能表图设计出梯形图。
20000 00000 00003 20002
20003 00003 20001
20000
25315
20002 00002 20000
20003
20001
20001 00001 20003
20001
20002
20003
01001
20000
20001
01000
20002
01002
20002
20000
启动
00003 · 00000
20001
00001(ST1)
20002
01000ON · 01001ON
01001
00002(ST2)
20003
01002
00003(ST3)
快进
快进
工进
快退
ST3
ST1
ST2
快进
工进
快退
70
顺序控制设计举例之二
用传送带传送长物体的系统结构如图示。
GK1
GK2
皮带A
皮带B
为减少皮带机运行时间,两个皮带机分段工作。
光电开关
光电开关
工作过程:
按一下启动按钮,皮带机A运行,B停;
当物体前端接近GK1时,A与B都运行;
当物体后端离开GK1时, B 运行,A停;
当物体后端离开GK2时, A与B都不运行。
71
01001
01000
00001
00000
00002
皮带机B接触器
皮带机A接触器
GK2
GK1
启动按钮
输 出
输 入
(1) 作出 I/O分配:
(2) 功能表图
20000
25315
00002
20001
00000
20002
01000ON · 01001ON
01000
00000
20003
01001
00001
A运行
A、B 运 行
B 运行
GK1
GK2
72
(3) 设计梯形图程序。
20000 00002 20002
20003 20100 20001
20000
25315
20002 00000 20000
20003
20001
20001 00000 20003
20001
20002
20003
01000
20000
20001
20002
20002
01001
20002
20003
DIFD(14) 20100
00001
GK2
20000
25315
00002
20001
00000
20002
01000ON · 01001ON
01000
00000
20003
01001
00001
A运行
A、B 运 行
B 运行
启动按钮
01000
GK1
73
PLC上电
系统启动
1号工进I
1号工进II
1号快退
1号快进
2号快进
2号工进
2号快退
原位等待
压ST1
快进到位
压ST2
工进到位
压ST3
工进到位
压ST0
退到原位
快进到位
压ST5
工进到位
压ST6
退到原位
压ST4
顺序控制举例之三
某控制系统中有两个动力头,工作流程图如图。
1. 控制要求:
(1)系统启动后,两个动力头同时开始按图中的工步顺序运行。
它们都退回原位后,延时10秒,再同时进入下一个循环的运行。
74
PLC上电
系统启动
1号工进I
1号工进II
1号快退
1号快进
2号快进
2号工进
2号快退
原位等待
压ST1
快进到位
压ST2
工进到位
压ST3
工进到位
压ST0
退到原位
快进到位
压ST5
工进到位
压ST6
退到原位
压ST4
(2)若断开控制开关,各动力头必须将当前的运行过程结束(完成所有工作步)退回原位后,才能自动停止运行。
以确保每个循环开始时,动力头都停在原位。
75
1号动力头
-
+
-
+
快退
+
+
+
-
工进2
-
-
+
+
工进1
-
+
+
-
快进
YV4
YV3
YV2
YV1
动作
+
+
-
快退
+
-
+
工进
-
+
+
快进
YV7
YV6
YV5
动作
四个工步
三个工步
2号动力头
(3)各动力头的运行取决于电磁阀线圈的通、断电。
表中 ‘+’表示线圈通电,‘-’表示不通电。
76
PLC上电
系统启动
1号工进I
1号工进II
1号快退
1号快进
2号快进
2号工进
2号快退
原位等待
压ST1
快进到位
压ST2
工进到位
压ST3
工进到位
压ST0
退到原位
快进到位
压ST5
工进到位
压ST6
退到原位
压ST4
2. 分析流程图
① 注意流程图中各动力头的工作步数和转换条件。
②由于两个动力头退回原位的时间不同,先退回原位后的要进入等待状态。
只有当两个动力头都退回原位时,定时器才开始计时,定时到,两个动力头同时进入下一个循环。
77
3. 作PLC的I/O分配表
用CPM1A时的I/O分配:
00106
2号动力头工进限位ST6
01007
YV7线圈
00105
2号动力头快进限位ST5
01006
YV6线圈
00104
2号动力头原位限位ST4
01005
YV5线圈
00103
1号动力头工进II限位ST3
01004
YV4线圈
00102
1号动力头工进I限位ST2
01003
YV3线圈
00101
1号动力头快进限位ST1
01002
YV2线圈
00100
1号动力头原位限位ST0
01001
YV1线圈
00000
系统启动控制开关
输 出
输 入
78
200通道中的位作控制位
01006和01007 ON
01005和01007 ON
01005和01006 ON
20000
00000
25315
TIM000
快进
快退
工进
原位等待
原位等待
快退
20009
20008
20007
20006
01002和01003 ON
快进
00101
工进I
00102
工进II
01002、01003和01004 ON
00103
00100
00105
00106
00104
20005
20004
20003
20002
20001
01001、01002 ON
01001和01003 ON
4. 画出功能表图
1号动力头
2号动力头
79
01006和01007 ON
01005和01007 ON
01005和01006 ON
20000
00000
25315
TIM000
快进
快退
工进
原位等待
原位等待
快退
20009
20008
20007
20006
01002和01003 ON
快进
00101
工进I
00102
工进II
01002、01003和01004 ON
00103
00100
00105
00106
00104
20005
20004
20003
20002
20001
01001、01002 ON
01001和01003 ON
PLC上电后,20000即 ON。当00000ON时系统启动。
80
01006和01007 ON
01005和01007 ON
01005和01006 ON
20000
00000
25315
TIM000
快进
快退
工进
原位等待
原位等待
快退
20009
20008
20007
20006
01002和01003 ON
快进
00101
工进I
00102
工进II
01002、01003和01004 ON
00103
00100
00105
00106
00104
20005
20004
20003
20002
20001
01001、01002 ON
01001和01003 ON
只有20005与20009都 ON时,TIM000才开始计时。
执行各步时的输出状态
执行各步时的输出状态
等待步
81
01006和01007 ON
01005和01007 ON
01005和01006 ON
20000
00000
25315
TIM000
快进
快退
工进
原位等待
原位等待
快退
20009
20008
20007
20006
01002和01003 ON
快进
00101
工进I
00102
工进II
01002、01003和01004 ON
00103
00100
00105
00106
00104
20005
20004
20003
20002
20001
01001、01002 ON
01001和01003 ON
TIM000 ON,为进入下一个循环的运行作好准备。
等待步
82
01006和01007 ON
01005和01007 ON
01005和01006 ON
20000
00000
25315
TIM000
快进
快退
工进
原位等待
原位等待
快退
20009
20008
20007
20006
01002和01003 ON
快进
00101
工进I
00102
工进II
01002、01003和01004 ON
00103
00100
00105
00106
00104
20005
20004
20003
20002
20001
01001、01002 ON
01001和01003 ON
TIM000 ON、且00000ON,进入下一个循环的运行。
等待步
83
5. 根据功能表图作出梯形图程序
阅读书中程序,考虑以下几个问题:
② 一个循环结束时,怎样保证两个动力头一起在原位停留10秒后再进入下一个循环的运行;
③步 20001 和步 20006 的启动条件都是触点 20000 和 00000 的“与”,其作用是什么;
④检查SET、RESET语句的操作数是否正确,其依据是什么。
① 初始步20000如何启动,何时变成不活动步,运行过程中怎样使步20000自动成为活动步;
84
归纳顺序控制设计法:
① 理顺动作顺序、明确各步的转换条件,作流程图;
② 准确地画出功能表图;
③ 根据功能表图正确地画出相应的梯形图;
④ 根据某些特殊功能要求,添加部分特殊要求程序。
85
继电器控制电路转换设计法
在继电器控制电路的基础上,经过转换,将继电器控制设计出PLC控制。
关于转换的几个问题
1.各种继电器、接触器、电磁阀、电磁铁等的转换
这些电器的线圈是PLC的执行元件,要为它们分配相应的PLC输出继电器号。
中间继电器可以用PLC的内部辅助继电器来代替。
86
2.常开、常闭按钮的转换
用PLC控制时,启动和停车一般都用常开按钮。
使用常开和长闭按钮时,PLC的梯形图画法不同。
00000
01000
01000
00001
00000
01000
01000
00001
SB2
00000
00001
01000
COM
COM
~
SB1
PLC
KM
SB2
00000
00001
01000
COM
COM
~
SB1
PLC
KM
启动
停车
启动
停车
87
一般热继电器触点不接入PLC中,而接在PLC外部的启动控制电路中。
4. 时间继电器的处理
●时间继电器可用PLC的定时器代替。
3.热继电器的处理
● PLC定时器的触点只有接通延时闭合和接通延时断开两种。可以通过编程设计出所需的时间控制。
88
用PLC的定时器实现延时接通的控制举例
触点KA闭合后延时接通KM的控制。
KT
KM
KA
KT
01000
TIM000
SV
00000
TIM000
通电延时型
89
用PLC的定时器实现延时断开的控制举例
触点KA闭合后延时断开KM的控制。
KT
KM
KA
KT
01000
TIM000
SV
00000
TIM000
90
5.对继电器控制电路连接顺序的处理
调整部分电路的连接,以方便转换成PLC梯形图。
ST
SB2
KM1
KM1
KT
KM2
K
KM1
KM2
SB1
KT
继电器控制电路连接顺序调整的举例
线圈KM2和K之间连接着常开触点KM2 。
PLC的梯形图不允许有这种结构。
91
调整电路连接的方法
KM1
KT
KM2
K
SB1
KM1
KM1
ST
KM2
KT
SB2
ST
SB2
KM1
KM1
KT
KM2
K
KM1
KM2
SB1
KT
线圈K接通的条件为:或常开触点KM2闭合、或常开触点KT闭合。
可将常开触点KM2与常开触点KT并联,作为线圈K的接通条件。
92
KM1
KT
KM2
K
SB1
KM1
KM1
ST
KM2
KT
SB2
TIM 000
SV
01000
01000
00000
01001
01000
00002
20000
01001
TIM000
00001
输 入
输 出
SB1
00000
KM1
01000
SB2
00001
KM2
01001
ST
00002
将继电器控制电路转换成PLC梯形图
先对图中的电器进行I/O分配。
93
具有多种工作方式系统的程序设计
控制设备的工作方式可分为:
手动、单步、单周期、连续(自动) 。
手动:与点动相似,按下按钮运行、释放按钮停止;
单步:启动一次只能运行一个工作步;
单周期:启动一次只运行一个工作周期;
连续:启动后连续地、周期性地运行一个过程。
可分别设计各种工作方式的程序,最后综合起来。
94
多种工作方式系统的程序设计举例。
小车工作方式:手动、单步、单周期、自动。
ST1
ST2
右(01000)
(01001)左
(01002)装料15s
卸料10s (01003)
00004
00003
操 作 盘
运料小车
控 制
执行自动方式之前,要用手动方式将小车调回装料(ST1)处。
00101
单 步
00102
单周期
手 动
00100
连 续
00103
00104
右行
左行
00105
启动
停止
00106
00107
00000
00001
装料
卸料
方式选择开关
95
单周期工作方式:方式开关拨在单周期档。
小车完成一次循环回到00004即停,再启动需按00000。
启动按钮
20000
00000
00004
01002ON装料
TIM000
00003
TIM001
00004
20004
20003
20002
20001
01000 ON右行
01003ON卸料
01001ON左行
控制位
单周期方式的功能表图
00101
单 步
00102
单周期
手 动
00100
连 续
00103
00104
右行
左行
00105
启动
停止
00106
00107
00000
00001
装料
卸料
96
00101
单 步
00102
单周期
手 动
00100
连 续
00103
00104
右行
左行
00105
启动
停止
00106
00107
00000
00001
装料
卸料
连续工作方式:方式开关拨在连续档。
完成一次循环回到00004,自动进入下个循环的运行。
连续方式的功能表图
连续状态控制
20000
20100
00004
01002ON装料
TIM000
00003
TIM001
00004
20004
20003
20002
20001
01000 ON右行
01003ON卸料
01001ON左行
控制位
97
启动按钮
20000
00000
00004
01002ON装料
TIM000 · 00000
00003 · 00000
TIM001 · 00000
00004 · 00000
20004
20003
20002
20001
01000 ON右行
01003ON卸料
01001ON左行
单步工作方式:方式开关拨在单步档。
按一次00000,小车完成一个工作步。
单步方式的功能表图
例如,按一次启动按钮00000,小车装料。装料结束(TIM000ON)即停。
再按一次启动按钮00000小车右行,到达卸料处 ST2 ( 00003 )即停。
ST2
再按一次启动按钮00000,小车卸料…。
98
单步、单周期和连续的功能表图可以合并成一个。
单步时00101断开,每步结束时都要按启动按钮,使00000 ON→20101 ON。
单周期
20000
00102 · 00000 +00101 · 00000 + 00103 · 20100
00004
01002ON装料
TIM000 · 20101
00003 · 20101
TIM001 · 20101
00004 · 20101
20004
20003
20002
20001
01000 ON右行
01003ON卸料
01001ON左行
自动方式
单步
连续
20101
00000
00101
连续状态控制位(ON)
99
程序采用指令JMP/JME控制各种工作方式。
共用程序
手动程序
自动程序
JMP(04) 00
JME(05) 00
JMP(04) 01
JME(05) 00
00100
00101
程序的总体结构
00100是手动/自动方式转换。
方式开关拨在手动方式时,常开触点00100 ON,故执行手动程序。
方式开关拨在其他自动方式时,常开触点00100 OFF,常闭触点00100 ON,故执行自动程序。
100
手动方式的程序
01000
01001
00104
00003
01001
01000
00105
00004
01002
00106
00004
01003
00107
00003
按住右行启动按钮→ 00104ON, 线圈00100 ON,小车右行。
卸料ST2
小车右行到位压ST2 →常闭触点00003断开→ 01000 OFF →小车停。
按住卸料按钮→00107ON,由于常开触点00003ON → 00103 ON →小车卸料。
卸料结束→按住左行启动按钮→ 00105ON→ 00101 ON →小车左行。
小车左行到位压ST1→常闭触点00004断开→小车停。
装料ST1
按住装料按钮→00106ON,由于常开触点00004ON→ 00102 ON →小车装料。
按住右行启动按钮→…重复以上过程。
手动方式时不使用启动和停车按钮。
101
自动方式程序
20100
00000
00001
20101
00000
00101
20000
20004
00004
20001
00102
00000
20100
20101
20001
00004
20000
20000
20002
00103
20100
00101
00000
20001
连续状态
单步
连续
单周期
等待
自动/手动状态转换
01000
20002
00003
20002
20001
TIM000
20101
20003
20002
20003
20002
00003
20101
20004
20003
20004
20003
TIM001
20101
20000
20004
01002
20001
TIM000
TIM000
#0150
01003
TIM001
#0100
20003
TIM001
01001
20004
00004
右行
右行
左行
左行
装料
装料
卸料
卸料
启动按钮
原位
终点
102
控制位复位程序,即公用程序。
当自动方式转换到手动方式时,应将连续状态位20100和各步的控制位(手动方式不使用这些位)复位。
否则在返回到自动方式时会引起误动作。
RESET 20100
RESET 20001
RESET 20004
RESET 20000
RESET 20002
RESET 20003
00100
手动方式
连续状态控制位
等待控制位
装料控制位
右行控制位
卸料控制位
装料控制位
103
多种工作方式的系统编程小结
① 一般要用转换开关来完成各种方式之间的转换。
② 一般要用跳转指令实现手动/自动程序的转换。
③由自动方式转换为手动方式时,要注意编写复位程序,以免在转回自动方式时出现误动作。