资源描述
课程设计说明书
设计题目:霓虹灯广告屏装置PLC 控制程序的设计与调试
学生姓名: 施雷
学 号: 14104031
专业班级: 14机制3班
指导教师: 刘璐
2017年5月1日
内容摘要
为展现商家的形象和“品位”,在夜晚展现出一个美好的夜景,一般都会采用“个性”霓虹灯广告屏来装饰商场。这就涉及到如何去控制商家所需的霓虹灯的亮灭、闪烁时间及流动方向等诸多控制问题。如何去快捷、可靠、简单的去控制,成为人们考虑的重点。PLC是一种用程序来改变控制功能的工业控制计算机,霓虹灯和流水灯的亮灭、闪烁时间及流动方向等,均可以通过PLC来达到控制的要求。
本课程设计根据课题上的5点要求,进行I/O口估算,并选择PLC型号、绘制流程图和设计梯形图。以及编写程序清单、调试程序、修改程序并最终确定程序,最终实现课程要求。在编写程序的时候用到了传送指令和位移指令,使程序变得更加简洁。同时在单步控制的时候用到了计数器和比较指令,使程序简洁明了。基本实现对霓虹灯的正确、简洁、稳定的控制。
关键词:
广告屏;PLC控制;单步/连续控制;位移指
目 录
第1章 引言 1
1.1 课程设计内容和要求 1
1.2 总体设计思路 2
第2章 霓虹灯PLC控制的系统总体方案设计 2
2.1 设计原理及方案选择 2
2.2所需元器件介绍 2
2.3控制流程图设计 2
2.4 I/O分配 3
2.5 I/O接线图 3
第3章 软件设计 3
3.1 单步/连续控制的实现 3
3.2 连续控制的设计 3
3.3单步程序的设计 8
第4章 调试说明 8
4.1调试说明 8
4.2调试要求 8
4.3确定程序 8
结论 9
谢辞与设计总结 10
附录1 梯形图 11
附录2 语句表 28
第1章 引言
1.1 课程设计内容和要求
1. 霓虹灯广告屏装置PLC 控制梯形图的设计与调试
该广告屏由8 根灯管和24 只流水灯组成,每4 只流水灯为一组,如图1所示:
图 1 霓虹灯广告屏示意图
2. 控制要求
(1)该广告屏中间8 根灯管亮灭的时序为:第1 根亮→2 亮→3 亮→……→第8 根亮,时间间隔为1s,全亮后,显示10s,再反过来从8→7→……→1 按1s 间隔顺序熄灭,全灭后停亮2s;再从第8 根开始亮,顺序点亮7→6→……→1,时间间隔1s,显示5s,再从1→2→……→8 按1s 间隔顺序熄灭,全灭后停亮2s,然后重复运行,周而复始。
(2)24只流水灯,4个一组分成6组,从Ⅰ→Ⅱ→……→Ⅵ按1s 时间间隔依次向前移动,且点亮时每相隔1 灯为亮,即从Ⅰ“①、③”亮→Ⅱ“⑤、⑦”亮,同时Ⅰ“①、③”灭→Ⅲ“ 、 ”亮,同时Ⅱ“⑤、⑦”灭……,如此移动一段时间(如30s)后,再反过来移动一段时间:Ⅵ“ (24)(22) ”亮 →Ⅴ“ (20)(18) ”亮,同时Ⅵ“ (24)(22) ”灭,……如此循环往复。
(3)系统有单步/连续控制,有起动和停止按钮。
(4)起动时,灯管和流水灯能同时起动,关闭时,可同时也可分别关闭。
(5)要求有移位指令的应用。
1.2 总体设计思路
通过分析本课程设计的控制要求,进而确定PLC的I/O接口的数目、选择合适的PLC型号和扩展模块、选择合适的流程并绘制流程图、根据流程图设计梯形图、编写程序并调试程序、修改不合理程序、并最终确定程序。从而实现控制8个霓虹灯和周围的24流水灯的有规律的闪烁。
第2章 霓虹灯PLC控制的系统总体方案设计
2.1 设计原理及方案选择
根据要求,8个长灯管分别单独控制,24个流水灯每两个一组进行控制。八个长灯管用到8个输出,24个流水灯每两个一组公用一个输出,所以流水灯共用到12个输出,整个控制程序一共用到20个输出。选择PLC:西门子S7-200本身自带16个输出口在加上一个扩展模块EM223的8个输出口,一个有24个输出口,因此可以实现要求。硬件的配置主要有:电源;西门子S7-200PLC和扩展模块EM223;8个长灯管;24个流水灯;足够数量的导线。
2.2所需元器件介绍
(1)电源:普通用电电压交流220V
(2)长灯管:8个适合本广告屏使用的长灯管,所需电压为交流220V
(3)流水灯:24个适合本广告屏使用的流水灯,所需电压为交流220V
(4)PLC:西门子S7-200 CPU226 PLC一个,EM223 DI8/DO8*DC24V/继电器扩展模块一个
(5)各类导线及开关:若干
2.3控制流程图设计
根据要求,此广告屏控制装置需要连续控制和单步控制。使用转化开关,当转换开关放到连续控制时,广告屏便以连续控制的方式运行;当装好开关放到单步控制时,广告屏便以单步控制的方式运行。
2.3.1连续控制
连续控制时采用顺序控制的方式来实现。当按下启动按钮时,长灯管和流水灯一起启动。当按下总关闭按钮时,长灯管和流水灯一起熄灭。在启动按钮按下后,广告屏正在工作时,单独按下长灯管关闭按钮或者流水灯关闭按钮,实现单独熄灭长灯管和流水灯。连续控制流程图如图2所示
2.3.2单步控制
采用计数器,用计数器的值与比较指令比较进行单步控制操作。如图3所示
2.4 I/O分配
经估算并最终确定输入口为7个、输出口为20个。其中
(1)输入口:包括1个启动按钮SB1,1个总停止按钮SB2,1个长灯管单独停止按钮SB3,1个流水灯单独停止按钮SB4,1个单步控制按钮SB5,以及一个两个点位的转化开关SA。
(2)输出口:包括控制8个长灯管的8个输出口,控制24个流水灯的12个输出口(流水灯每两个一组为一个输出口)。
I/O分配表如图表1
2.5 I/O接线图
根据需要选择西门子S7-200 CPU226 PLC和扩展模块EM223 DI8/DO8*DC24V/继电器.I/O接线图如图4所示
第3章 软件设计
3.1 单步/连续控制的实现
为实现单步和连续控制,使用了单步的常开开关来常开单步控制软件部分,只有当单步常开开关闭合时,才能使后面的单步控制程序运行。同样使用了连续的常开开关来常开连续控制软件部分,只有当连续常开开关闭合时,才能使后面的连续控制程序运行。
3.2 连续控制的设计
设计连续控制时,使用了顺序控制程序和移位指令,并用定时器来实现定时
和跳转。在连续控制时,同时启动长灯管和流水灯。在长灯管程序前加上自锁程序,当单独直接关闭长灯管时,长灯管熄灭并初始化长灯管程序。同样在流水灯程序前加上其自锁程序,当单独关闭流水灯时,流水灯熄灭并初始化流水灯程序。
图2 连续控制流程图
图3 单步控制流程图
表1 I/O分配表
编程元件
I/O端子
电路器件
作用
输入继电器
I0.0
SB1
总启动按钮
I0.1
SB2
总停止按钮
I0.2
SB3
长灯管单独关闭按钮
I0.3
SB4
流水灯单独关闭按钮
I0.4
SB5
单步控制按钮
I0.5
SA点位1
转换开关/连续控制
I0.6
SA点位2
转换开关/单步控制
输出电器
Q0.0
HL1
灯管1
Q0.1
HL2
灯管2
Q0.2
HL3
灯管3
Q0.3
HL4
灯管4
Q0.4
HL5
灯管5
Q0.5
HL6
灯管6
Q0.6
HL7
灯管7
Q0.7
HL8
灯管8
Q1.0
HL9和HL10
流水灯1和3
Q1.1
HL11和 HL12
流水灯5和7
Q1.2
HL13和 HL14
流水灯9和11
Q1.3
HL15和 HL16
流水灯13和15
Q1.4
HL17和 HL18
流水灯17和19
Q1.5
HL19和 HL20
流水灯21和23
Q2.0
HL21和 HL22
流水灯24和22
Q2.1
HL23和 HL24
流水灯20和18
Q2.2
HL25和 HL26
流水灯16和14
Q2.3
HL27和 HL28
流水灯12和10
Q2.4
HL29和 HL30
流水灯8和6
Q2.5
HL31和 HL32
流水灯4和2
图4 I/O接线图
3.3单步程序的设计
设计单步程序时用到了计数器、移位指令和比较指令。当转换开关放到单步时,每按一次单步按钮,计数器加1。同时使用比较指令,把计数器的当前值和设定值进行比较。通过计数器当前值的大小来顺序控制灯管和流水灯的亮灭。
第4章 调试说明
4.1调试说明
(1)硬件调试:接通电源前,检查S7-200 PLC可编程控制器接头是否接触良好,其与电脑的通信口连接是否正常。
(2)软件调试:输入编写好梯形图,并进行语法的检查(编译),正确后设置正确的通信口,将编写好的梯形图下载到S7-200可编程控制器ROM中,进行的调试。
(3)运行调试:在硬件调试和软件调试正确的基础上,打开S7-200 PLC可编程控制器的“RUN”开关进行调试;观察运行的情况,看运行情况是否按照控制要求进行工作。
4.2调试要求
(1)连续控制时:按下启动按钮,长灯管和流水灯同时运行。按下总关闭按钮,长灯管和流水灯同时熄灭。
(2)连续控制时:按下启动按钮,长灯管和流水灯同时运行。此时,按下长灯管单独关闭按钮,长灯管熄灭。或者按下流水灯单独关闭按钮,流水灯熄灭。并且,在单独停止长灯管或者流水灯其中任何一个时,再次按下启动按钮是无任何反应。只有当按下总停止按钮之后,再按下启动按钮才能同时启动长灯管和流水灯。
(3)单步控制时:按下启动按钮之后,每按下一次单步运行按钮,长灯管或者流水灯状态变化一次。单步运行为长灯管先按要求单步运行,之后是流水灯按要求顺序运行。
4.3确定程序
根据以上的调试情况,调试出满足本广告屏装置控制要求的PLC程序,并确定程序。
结论
本设计能满足一般的霓虹灯广告屏的基本控制,可充分发挥PLC可编程控制器的性能。经过调试运行,其性能稳定可靠,性价比高。而且编程简单易懂,方便以后变换不同的程序进行不同的控制。
在编程此梯形图时大量采用了功能指令,简化了程序,减少了工作量。采用了移位指令、传送指令、比较指令和计数器指令。精简程序的同时,为CPU在每个扫描周期减轻负担。
除此之外,编程中出现一些问题。如怎样才能更巧妙的使用传送指令和移位指令的配合,在一个扫描周期里,程序时如何在这些程序中按什么样的顺序执行的。同样也由于没有实体PLC,而模拟器不能全部模拟器全部指令,并且模拟器使用的电脑CPU和PLC上的CPU扫描周期有很大的不同。所以不确定在模拟器上能成功运行的程序,在实体PLC上也同样能按照要求运行。
设计总结
经过这次的课程设计,使得我对PLC的掌握进一步的增强,加深了对PLC它们的理解,并对PLC产生了浓厚的兴趣,但是我也深深的知道自己的不足之处,比如说对应用指令的不熟悉,大大地加深了我的程序复杂程度。多在学习过程中不能想通的问题,在PLC调试过程中,终于得以解决。可以看出它对理论教学起到了必要的补充和额拓宽作用,对培养既具有扎实理论功底又具有相当实践能力的人才必不可少。在这次的课程中,我发现PLC在工业控制中的作用很大,它能使人的控制转变成电脑的控制,大大地降低了产品的成本,很大地提高生产效率。 在此过程中我还发现到修改完善程序的重要性。当时编完一个程后感觉是正确的。就是这样还要仔细检查自己的程序。考虑到各种可能发生的情况。
附录1 梯形图
附录2 语句表
ORGANIZATION_BLOCK 主程序:OB1
TITLE=
BEGIN
Network 1
// 连续控制时,总开启与总关闭
LD I0.0
O M0.2
A I0.5
AN I0.1
= M0.2
Network 2
// 连续控制时,开启灯管和流水灯点亮
LD M0.2
EU
= M0.3
Network 3
// 连续控制时,单独关闭灯管或者流水灯
LD M0.2
LPS
LD M0.3
O M0.0
ALD
AN I0.2
= M0.0
LPP
LD M0.3
O M0.1
ALD
AN I0.3
= M0.1
Network 4
// 连续控制时,停止灯管运行的同时,复位控制灯管的输出和顺序控制
LD M0.2
A I0.2
R Q0.0, 8
R S0.1, 8
Network 5
// 连续控制时,停止流水灯运行的同时,复位控制流水灯的输出和顺序控制
LD M0.2
A I0.3
R Q1.0, 8
R Q2.0, 8
R S2.0, 8
Network 6
// 全停时复位全部输出和S0.0
LD I0.1
R Q0.0, 24
S S0.0, 1
Network 7
// 连续控制时,接通时置位S0.0
LD SM0.1
S S0.0, 1
Network 8
LSCR S0.0
Network 9
// 分别跳转到S0.1和S2.0
LD M0.2
LPS
A M0.0
SCRT S0.1
LPP
A M0.1
SCRT S2.0
Network 10
SCRE
Network 11
// 连续控制时,灯管控制程序S0.1到S1.0
LSCR S0.1
Network 12
// 连续控制时,灯管从1到8顺序点亮,用时8s
LD M0.0
LPS
TON T37, 80
EU
MOVW 0, VW0
LPP
AN SM0.5
EU
+I 1, VW0
MOVB VB1, QB0
SLB VB1, 1
Network 13
// 8s后跳转到S0.2
LD T37
SCRT S0.2
Network 14
SCRE
Network 15
LSCR S0.2
Network 16
// 全亮并保持10s
LD M0.0
TON T38, 100
Network 17
// 10s后跳转到S0.3
LD T38
SCRT S0.3
Network 18
SCRE
Network 19
LSCR S0.3
Network 20
// 连续控制时,灯管从8到1顺序熄灭,用时8s
LD M0.0
TON T39, 80
A SM0.5
EU
SRB QB0, 1
Network 21
// 8s后跳转到S0.4
LD T39
SCRT S0.4
Network 22
SCRE
Network 23
LSCR S0.4
Network 24
// 全熄灭后保持2s
LD M0.0
TON T40, 20
Network 25
// 2s后跳转到S0.5
LD T40
SCRT S0.5
Network 26
SCRE
Network 27
LSCR S0.5
Network 28
// 连续控制时,灯管从8到1顺序点亮,用时8s
LD M0.0
LPS
TON T41, 80
EU
MOVW 0, VW0
LPP
A SM0.5
EU
+I 1, VW0
RRB VB1, 1
MOVB VB1, QB0
Network 29
// 8s后跳转到S0.6
LD T41
SCRT S0.6
Network 30
SCRE
Network 31
LSCR S0.6
Network 32
// 全亮后保持5s
LD M0.0
TON T42, 50
Network 33
// 5s后跳转到S0.7
LD T42
SCRT S0.7
Network 34
SCRE
Network 35
LSCR S0.7
Network 36
// 连续控制时,灯管从1到8依次熄灭,用时8s
LD M0.0
TON T43, 80
A SM0.5
EU
SLB QB0, 1
Network 37
// 8s后跳转到S1.0
LD T43
SCRT S1.0
Network 38
SCRE
Network 39
LSCR S1.0
Network 40
// 全熄灭后保持2s
LD M0.0
TON T44, 20
Network 41
// 2s后跳转到S0.1
LD T44
SCRT S0.1
Network 42
SCRE
Network 43
// 连续控制时,流水灯控制程序S2.0到S2.5
LSCR S2.0
Network 44
// 连续控制时,流水灯①③到⑤⑦等第一次循环控制
LD M0.1
LPS
TON T50, 60
EU
MOVB 128, QB1
LPP
AN SM0.5
EU
RLB QB1, 1
Network 45
// 跳转到S2.1并复位QB1
LD T50
SCRT S2.1
R Q1.0, 8
Network 46
SCRE
Network 47
LSCR S2.1
Network 48
// 连续控制时,流水灯①③到⑤⑦等第二次循环控制
LD M0.1
LPS
TON T51, 60
EU
MOVB 128, QB1
LPP
AN SM0.5
EU
RLB QB1, 1
Network 49
// 跳转到S2.2并复位QB1
LD T51
SCRT S2.2
R Q1.0, 8
Network 50
SCRE
Network 51
LSCR S2.2
Network 52
// 连续控制时,流水灯①③到⑤⑦等第三次循环控制
LD M0.1
LPS
TON T52, 60
EU
MOVB 128, QB1
LPP
AN SM0.5
EU
RLB QB1, 1
Network 53
// 跳转到S2.3并复位QB1
LD T52
SCRT S2.3
R Q1.0, 8
Network 54
SCRE
Network 55
LSCR S2.3
Network 56
// 连续控制时,流水灯(24)(22)到(20)(18)等第一次循环控制
LD M0.1
LPS
TON T53, 60
EU
MOVB 128, QB2
LPP
A SM0.5
EU
RLB QB2, 1
Network 57
// 跳转到S2.4并复位QB2
LD T53
SCRT S2.4
R Q2.0, 8
Network 58
SCRE
Network 59
LSCR S2.4
Network 60
// 连续控制时,流水灯(24)(22)到(20)(18)等第二次循环控制
LD M0.1
LPS
TON T54, 60
EU
MOVB 128, QB2
LPP
A SM0.5
EU
RLB QB2, 1
Network 61
// 跳转到S2.5并复位QB2
LD T54
SCRT S2.5
R Q2.0, 7
Network 62
SCRE
Network 63
LSCR S2.5
Network 64
// 连续控制时,流水灯(24)(22)到(20)(18)等第三次循环控制
LD M0.1
LPS
TON T55, 60
EU
MOVB 128, QB2
LPP
A SM0.5
EU
RLB QB2, 1
Network 65
// 跳转到S2.0并复位QB2
LD T55
SCRT S2.0
R Q2.0, 8
Network 66
SCRE
Network 67 // 单步控制程序
// 单步控制时,启动和关闭
LD I0.0
O M1.0
A I0.6
AN I0.1
= M1.0
Network 68
// 关闭或者单步到终点时复位QB0、QB1和QB2
LD M1.0
LPS
LD I0.1
O C1
ALD
EU
R Q0.0, 24
LPP
A I0.6
ED
R Q0.0, 24
R C1, 1
Network 69
// C1计数器用于单步控制
LD M1.0
A I0.4
EU
LD M1.0
LD I0.1
O C1
ALD
EU
CTU C1, 69
Network 70
// 单步控制时,灯管1到8顺序点亮
LD M1.0
LPS
AW= C1, 1
EU
MOVW 0, VW0
LPP
A I0.4
AW>= C1, 1
AW<= C1, 8
EU
+I VW0, VW0
+I 1, VW0
MOVB VB1, QB0
Network 71
// 单步控制时,灯管8到1顺序熄灭
LD M1.0
A I0.4
AW<= C1, 16
AW>= C1, 9
EU
SRB QB0, 1
Network 72
// 单步控制时,灯管8到1顺序点亮
LD M1.0
LPS
AW= C1, 17
EU
MOVW 0, VW0
LPP
A I0.4
AW<= C1, 24
AW>= C1, 17
EU
+I 1, VW0
RRB VB1, 1
MOVB VB1, QB0
Network 73
// 单步控制时,灯管1到8顺序熄灭
LD M1.0
A I0.4
AW>= C1, 25
AW<= C1, 32
EU
SLB QB0, 1
Network 74
// 单步控制时,流水灯(1)(3)到(5)(7)等三次顺序点亮前准备动作
LD M1.0
LDW= C1, 33
OW= C1, 39
OW= C1, 45
ALD
EU
MOVB 128, QB1
Network 75
// 单步控制时,流水灯(1)(3)到(5)(7)等三次顺序点亮
LD M1.0
A I0.4
LDW>= C1, 33
AW<= C1, 38
LDW>= C1, 39
AW<= C1, 44
OLD
LDW>= C1, 45
AW<= C1, 50
OLD
ALD
EU
RLB QB1, 1
Network 76
// 单步控制时,流水灯(24)22)到(20)(18)等三次逆序点亮前,复位QB1
LD M1.0
AW= C1, 51
R Q1.0, 8
Network 77
// 单步控制时,流水灯(24)22)到(20)(18)等三次逆序点亮前准备动作
LD M1.0
LDW= C1, 51
OW= C1, 57
OW= C1, 63
ALD
EU
MOVB 128, QB2
Network 78
// 单步控制时,流水灯(24)22)到(20)(18)等三次逆序点亮
LD M1.0
A I0.4
LDW>= C1, 51
AW<= C1, 56
LDW>= C1, 57
AW<= C1, 62
OLD
LDW>= C1, 63
AW<= C1, 68
OLD
ALD
EU
RLB QB2, 1
Network 79
// 单步控制时,全部步数读完后复位QB2
LD M1.0
A C1
R Q2.0, 8
END_ORGANIZATION_BLOCK
SUBROUTINE_BLOCK SBR_0:SBR0
TITLE=子程序注释
BEGIN
参考文献
[1]罗宇航.流行PLC实用程序及设计(西门子S7-200系列).西安:西安电子科技大学出版社.2006
[2] 陈在平、赵相宾.可编程序控制器技术及应用系统设计.北京:机械工业出版社,2002
[3] 陈忠华.可编程序控制器与工业自动化系统.北京:机械工业出版社,2006
[4]王宗才.机电传动与控制.北京.电子工业出版社.2012
展开阅读全文