天津大学仁爱学院
PLC课程设计报告
设计题目:
交通灯自控与手控(触摸屏)
专业班级: 自动化3班
学生姓名: 康振南
学生学号: 6010202346
指导教师: 张海玮 扈书亮
成绩:
2013年 9 月 27 日
一 、引言
(1)设计目的
城市的快速发展,机动车拥有量的增长,给交通带来了许多问题,如交通拥堵、交通事故频发、环境污染加剧和燃油损耗上升,其中最为关键的是交叉口的车流量己处于饱和状态。分析其原因主要是由于现有交叉口的几何条件所限,以及缺少完善的的交通管理设施。道路上交通标志不规范,路口渠化不合理等问题加剧了交通拥挤的矛盾,而作为城市交通命脉的主干道的交通阻塞会使整个城市交通陷入瘫痪。解决城市交通拥挤状况,完善路网来缓解交通拥挤不是短时间所能解决的,目前急需做的是进一步挖掘路网的潜力并改善交通现状,特别是改善交通信号控制。可见,研制一种高效的智能交通控制系统是很有必要的,因此,城市交通的智能控制目前已成为国内外交通工程界研究的热点领域之一。而各交叉口是是城市道路网的咽喉要道,是人流和车辆汇集的地方,最容易发生交通阻塞现象,因此交叉口信号的智能控制显得更为迫切。最大程度提高交叉口的通行能力,为经济的发展和人民生活提供一个安全、畅通、高效、低公害低能耗的交通环境已成为必然。
通常新型的工业自动控制系统被划分为控制层、监控层、管理层 3 个层次结构。监控层的硬件以 IPC 为主, 其软件采用工业组态软件, 实现完成现场数据采集、实时和历史数据处理、报警和安全机制、流程控制、动画显示、趋势曲线和报表输出以及企业监控网络等功能;
本文以交通灯控制系统统为例提出了一种基于工业组态软件 MCGS虚拟控制监控系统, 即利用现有的计算机资源, 在计算机上通过组态软件的工作界面和功能来仿真现场控制对象, 进行虚拟控制。
(2) 设计内容
绘制一个模拟的十字路口交通灯组态图,用一个开关控制交通灯的运行与停止,当开关为开时,先南北红灯、东西绿灯亮此时东西方向的车辆运行,延时8秒东西绿灯变为闪烁状态,闪烁4秒后跳到黄灯亮,此时东西方向的车辆停止运行,东西黄灯亮4秒后,变为东西红灯、南北绿灯,则南北方向车辆运行,延时8秒南北绿灯变为闪烁,闪烁4秒后跳到南北黄灯,则南北方向的车辆停止运行,南北黄灯亮4秒后,再回到南北红灯、东西绿灯的状态,循环下去。无论运行到那个状态当开关由开变为关闭时,所有的灯都处于不亮状态;其中需要一个数码屏显示东西方向上每种灯的亮灯时长;同时实现亮灯时长的双向可调。
(3)实现目标
自行设计动画要求,充分利用图形编辑功能,方便地构成十字路口交通灯自动指挥画面,并以动画方式显示交通灯的状态,完成对交通灯东西方向时长的控制的控制。
二、系统总体方案设计
(1)MCGS组态软件原理
MCGS软件系统包括组态环境和运行环境两个部分。组态环境相当于一套完整的工具软件,帮助用户设计和构造自己的应用系统。运行环境则按照组态环境中构造的组态工程,以用户指定的方式运行,并进行各种处理,完成用户组态设计的目标和功能。
MCGS组态软件(以下简称MCGS)由“MCGS组态环境”和“MCGS运行环境”两个系统组成。两部分互相独立,又紧密相关。
MCGS组态环境是生成用户应用系统的工作环境,由可执行程序McgsSet.exe支持,其存放于MCGS目录的Program子目录中。用户在MCGS组态环境中完成动画设计、设备连接、编写控制流程、编制工程打印报表等全部组态工作后,生成扩展名为.mcg的工程文件,又称为组态结果数据库,其与MCGS 运行环境一起,构成了用户应用系统,统称为“工程”。MCGS运行环境是用户应用系统的运行环境,由可执行程序McgsRun.exe支持,其存放于MCGS目录的Program子目录中。在运行环境中完成对工程的控制工作。
(2)系统变量定义及分配表
变量名 | 类型 | 初值 | 注释 |
水平右移 | 数值型 | 0 | 水平右移为东西路的卡车走的路程。 |
水平左移 | 数值型 | 0 | 水平左移为东西路的货车走的路程。 |
垂直上移 | 数值型 | 0 | 垂直上移为南北路的翻斗车的路程。 |
垂直下移 | 数值型 | 0 | 垂直下移为南北路的罐车走的路程。 |
东西绿灯 | 开关型 | 0 | 东西绿灯=1时绿灯亮,东西绿灯=0时绿灯灭。 |
东西黄灯 | 开关型 | 0 | 东西黄灯=1时黄灯亮,东西黄灯=0时黄灯灭。 |
东西红灯 | 开关型 | 0 | 东西红灯=1时红灯亮,东西红灯=0时红灯灭。 |
南北绿灯 | 开关型 | 0 | 南北绿灯=1时绿灯亮,南北绿灯=0时绿灯灭。 |
南北黄灯 | 开关型 | 0 | 南北黄灯=1时黄灯亮,南北黄灯=0时黄灯灭。 |
南北红灯 | 开关型 | 0 | 南北红灯=1时红灯亮,南北红灯=0时红灯灭。 |
开关 | 开关型 | 0 | 开关=1时运行,开关=0时停止 |
z | 字符型 | 0 | 定时器的时长 |
d | 字符型 | 0 | 东西方向每种颜色灯亮灯时长(倒计时) |
a | 字符型 | 0 | 定时器的当前值 |
l | 字符型 | 0 | 绿灯可调亮灯时长(起始值默认为12) |
b | 字符型 | 0 | 调试器自定义时长 |
(3)系统可靠性
该系统是中文界面,具有人机界面友好、结果可视化的优点。对用户而言,操作 简单易学且编程简单,参数输入与修改灵活,具有多次重复仿真运行的控制能力,可以实时地显示参数变化前后中系统的特性曲线,能很直观地显示系统的实时趋势曲线,这些交互能力使其在自动控制系统中发挥理想的效果。
3、控制系统设计
(1)控制画面
根据设计要求,在MCGS组态环境中,按要求画出模拟十字路口交通灯指挥图。
(2)交通灯系统控制时序图
根据实际情况,绘制系统的时序图。
(3)交通灯控制流程图
根据控制要求,绘制出交通灯系统流程图。
(4)交通灯各时段效果
东西绿灯亮(闪),南北红灯亮。
东西黄灯亮,南北红灯亮。
东西红灯亮,南北绿灯亮。
调时长画面
4、上位监控系统设计
系统调试可按离线调试与在线调试两阶段进行。其中离线调试主要是对程序的编制工作进行检查和调试,采用STEP7能对用户编制程序进行自动诊断处理,用户也可通过各种逻辑关系判断编制程序的正误。而在线调试是一个综合调试过程,包括程序本身、外围线路、外围设备以及所控设备等的调试。在线调试过程中,系统在监控状态下运行,可随时发现问题、随时解决问题,从而使系统逐步完善。因此,一般系统所存在的问题基本上可在此过程中得到解决。
如果设置正确,组态环境就与plc建立连接,组态中交通灯的变化就会反映到plc上,从而实现控制功能。同理,如果plc中有相应的交通灯程序,将组态中的脚本程序屏蔽,组态环境就会显示plc控制下交通灯的变化情况,这样便实现了监控功能。
交通灯I\O分配表
输入 | 功能说明 | 输出 | 功能说明 |
0.00 | 起动/断开 | 1.03 | 南北绿灯 |
1.04 | 南北黄灯 | ||
1.05 | 南北红灯 | ||
1.00 | 东西绿灯 | ||
| 1.01 | 东西黄灯 | |
1.02 | 东西红灯 | ||
5、系统调试及结果分析
经过设计,想一次性把程序完成是非常难的,在调试中就出现了不少的错误。刚开始的时候把程序写进去然后运行却发现有些灯亮不起来而且在完成了一个周期后就循环不起来了。那时真的不知道从哪里入手,只好一条一条地检查才发现了一条指令把常闭写成了输出真正的输出口就没有收到信号了。灯虽然是亮了但仍然循环不起来。从程序中又仔细的看了一次却看不出什么问题出来。突然想起来编程器还可以进行监控于是再在运行的同时进行监控,于是发现了在程序的第一周期一切都运行正常但再运行下去的时候第二周期就再没有反应了,一看才知道是时间范围的设定出现了差错,后来就这样把加上其他功能出现的错误也找出来了。虽然找错误是一个枯燥无味的工作,但只要你耐心的去做的话,你肯定能学到有用的动西。
6、结束语
经过一个多星期的艰苦奋斗,设计成果终于要出来了,我才松了一口气,俗话说:“万事开头难。”这话一点也不假,回想当初确定这个,还是挺茫然的。不知怎下手。最后采用了先采集资料、进行实际考察后设计的方法。
查找资料也是一件繁琐的事情,虽说网上有资料但要找到一些真正有用的资料也不是一件容易的事,需要耐心查找。
终于到了设计的时候了,花了整整几天,终于完成了设计,不过调试的时候却发现结果和想的有所不同,通过监控和修改才得出了需要的设计。这次的设计让我们增长了实践技能,还增加了有关交通知识,这些对于我们真是受益匪浅。最后,我们觉得,不见风雨,怎么能见彩虹呢?我把体会用十个字概括:天下无难事,只怕有心人。
一次又一次的学习,探索,我们慢慢地在体会,研究和感悟,终于开始领会到将近成功的那一份喜悦,从开始撰写报告,查找资料,程序设计,到整理,每一个次的调试,我们学会了细心和耐心,也品尝到了酸、甜、苦、辣,无数的成功与失败,更加肯定了我们的研究成果。兴趣是自发形成的,而默契是慢慢培养出来的。当前的社会,科技迅速发展,知识更新速度大大加快,只有我们共同去探索,用自己的双手去征服每一片天空,用我们新的力量去打造一片创新的领域。
七、参考文献
[1] 唐伟杰 《基于组态王和PLC交通灯仿真控制系统》 2010年06期 北京理工大学珠海学院
[2] 曹金福、谭胜富 《电气控制与PLC》 2010年02月 化学工业出版社
[3] 赵燕、周新建 《可编程控制器原理与应用》 2010年03月 北京大学出版社
[4] 薛士龙 《电气控制与可编程控制器》 2011年3月 电子工业出版社
[5] 王文义 《可编程原理与应用》 2010年01月 科学出版社
[6] 袁任光 《可编程控制器选用手册》 2003年10月1日 机械工业出版社
[7] 卢巧 《PLC编程指令与梯形图快速入门》 2010年11月 电子工业出版社
[8] 岂兴明 《PLC与变频器快速入门与实践》 2011年1月1日 人民邮电出版社
[9] 姚福来 《变频器、PLC及组态软件实用技术速成教程》 2010年6月 机械工业出版社
[10] 李红萍 《工控组态技术及应用——组态王》 2011年8月 西安电子科技大学出版社
[11] 龚仲华 韩晓新 《从基础到实践——PLC与组态王》 2011年8月 机械工业出版社
[12] 龚仲华 《三菱FX系列PLC应用技术》 2010年10月1日 人民邮电出版社
[13] 张凯 《可编程控制器教程》 2005年2月 东南大学出版社
[14] 组态王初级培训教程 北京亚控科技发展有限公司 2005年1月 版本号:V1.5
8、附录
!TimerSetLimit(2,z,0)
!TimerSetOutput(2,a )
if 开关 = 0 then
南北红灯 = 0
南北黄灯 = 0
南北绿灯 = 0
东西绿灯 = 0
东西红灯 = 0
东西黄灯 = 0
d=0
l=12
if(b>0)then
l=b
endif
z=2*(l+4)
!TimerReset(2,0)
!TimerStop(2)
endif
if 开关 = 1 then
!TimerRun(2)
endif
if a=0 and 开关 = 1 then
南北绿灯 = 0
南北黄灯 = 0
南北红灯 = 1
东西绿灯 = 1
东西红灯 = 0
东西黄灯 = 0
endif
if a=l-4 then
东西绿灯 = 0
endif
if a=l-3 then
东西绿灯 = 1
endif
if a=l-2 then
东西绿灯 = 0
endif
if a=l-1 then
东西绿灯 = 1
endif
if a=l then
东西绿灯 = 0
东西黄灯 = 1
endif
if a=l+4 then
南北红灯 = 0
南北绿灯 = 1
东西红灯 = 1
东西黄灯 = 0
endif
if a=2*l then
南北绿灯 = 0
endif
if a=2*l+1 then
南北绿灯 = 1
endif
if a=2*l+2 then
南北绿灯 = 0
endif
if a=2*l+3 then
南北绿灯 = 1
endif
if a=2*l+4 then
南北绿灯 = 0
南北黄灯 = 1
endif
if a=2*l+8 then
!TimerReset(2,0 )
endif
if(开关=1)and(a
水平左移=水平左移-7
水平右移=水平右移+7
else
水平左移=0
水平右移=0
endif
if(开关=1)and(a>=(l+4))and(a<(2*l+4))then
垂直下移=垂直下移+5
垂直上移=垂直上移-5
else
垂直下移=0
垂直上移=0
endif
if (a>=0)and(a<=l)then
d=l-a
endif
if(a>=l)and(a<=(l+4))then
d=l+4-a
endif
if(a>=(l+4))and(a<=(2*l+8))then
d=2*l+8-a
endif
本文来源:https://www.2haoxitong.net/k/doc/a224e4585acfa1c7aa00cc97.html
文档为doc格式