资源描述
《现场总线与组态技术》
—— 课 程 设 计 报 告
题目: 十字路口交通灯
设计作者: 专业班级/学号:
合作者1: 专业班级/学号:
指导教师:
设计时间: 2012-12-8
目录
一、MCGS组态软件简介 2
二、设计任务和目的 2
1、设计任务 2
2、设计目的 2
三、系统的方案和总体设计 2
1、系统控制要求与实现的功能 2
2、创建用户窗口 3
3、建立实时数据库 3
4、用户窗口动画组态设计 4
5.循环策略属性设置 8
四、组态画面仿真 9
参考文献 11
附录 12
一、 MCGS组态软件简介
MCGS是一套基于Windows平台的用于快速构造和生成上位机监控系统的组态软件系统主要完成现场数据的采集与监测、前端数据的处理与控制。组态控制技术构成的计算机测控系统与一般的计算机测控系统在结构上没有本质的区别他们由被控对象、传感器、I/O接口、计算机和执行结构几部分组成。 MCGS组态软件包括三个版本分别是网络版、通用版、嵌入版。 具有功能完善、操作简便、可视性好、可维护性强的突出特点。通过与其他相关的硬件设备结合可以快速、方便的开发各种用于现场采集、数据处理和控制的设备。用户只需要通过简单的模块化组态就可构造自己的应用系统如可以灵活组态各种智能仪表、数据采集模块无纸记录仪、无人值守的现场采集站、人机界面等专用设备。
二、设计任务和目的
1、设计任务
运用MCGS组态环境设计一个十字路口交通灯的监控环境,来实现对交通灯的控制与监督。熟悉阻态软件对交通灯的控制功能。
2、设计目的
在设计的过程中对已学过的MCGS软件知识进行复习,并在这一基础上,进行自主完成一个十字路口交通灯演示系统的设计,在设计的过程中发现问题并加以总结。掌握MCGS软件的编程基本动画设置方法及步骤。
三、系统的方案和总体设计
1、系统控制要求与实现的功能
绘制一个模拟的十字路口交通灯组态图,用一个开关控制交通灯的运行与停止,当开关为开时,先西到东绿灯、西到北绿灯、东到北绿灯亮,延时10秒后西到东绿灯、西到北绿灯、东到北绿灯亮都变黄灯,再2秒后都变为红灯亮同时南到北绿灯、南到东侧绿灯、北到东绿灯亮,延时10秒后,南到北绿灯、南到东侧绿灯、北到东绿灯亮都变黄灯,再2秒后都变为红灯;以此规律类推,循环显示交通灯。无论运行到那个状态当开关由开变为关闭时,所有的灯都处于不亮状态。
2、创建用户窗口
图1 用户窗口
3、建立实时数据库
(1)单击工作台中的“实时数据库”窗口标签,进入实时数据库窗口页。
(2)单击“新增对象” 按钮,在窗口的数据对象列表中,增加了一个名为“Data1”的对象,双击进入“Data1”的属性栏,把“Data1”改名为“南北红灯”,类型为“开关型”。
(3)重复上述步骤,共设置其它变量,并正确设置其属性,如图2。。
图2 实时数据库
4、用户窗口动画组态设计
(1)先确定控制界面的整体布局,然后点击工具栏中的“对象元件库管理”,在弹出的窗口中,选择相应的小车,树木,显示灯等元件,如图3。
(2)最后再微调各元件的位置,做到布局合理,最终如图4。
图3 元件库管理
图4 用户组态画面
(3)参数设置
①红绿灯属性设置,如图5、图6、图7 ,相同的步骤设置其余方向的红绿灯。
图5 红绿灯可见度度属性设置 图6 红绿灯动画连接设置
②小车属性设置,如图7、如图8、如图9、如图10 ,相同的步骤方法设置其他方向的小车。
图7车水平移动设置 图8车水平可见度设置
图9 车垂直可见度设置 图10 小车垂直移动设置
③开关属性设置,如图11、图12、图13。
图11 开关动画连接设置
图12 开动作设置 如图13关动作设置
④复位按钮属性设置
图14 复位按钮操作属性设置 图15 复位按钮脚本程序设置
5.循环策略属性设置
(1)单击工作台中的“运行策略”窗口标签,进入策略组态窗口页。
(2)双击“循环策略” 按钮,在循环策略下新增策略行。
(3)将策略工具箱中的脚本程序和定时器放置到新增策略行中,如图16。
图16 新增策略行
(4)单击策略属性,将策略执行方式中循环时间修改成200ms,如图17。
(5)定时器属性设置,如图18
图17 修改循环时间 图18 定时器属性设置
四、组态画面仿真
按下启动按钮,先西到东绿灯、西到北绿灯、东到北绿灯亮,同时三部小车朝着指定的绿灯方向行驶,延时10秒后西到东绿灯、西到北绿灯、东到北绿灯亮都变黄灯,再2秒后都变为红灯亮同时南到北绿灯,仿真效果图如下,如图19、图20、图21、图22。
图19仿真效果图
图20 仿真效果图
图21 仿真效果图
图22 仿真效果图
参考文献
[1]包建华,丁启胜《工控组态软件MCGS及其应用》[M].工矿自动化,2007
[2]MCGS用户指南[Z].北京:北京昆仑通态自动化软件科技有限公司, 2003
附录
脚本运行程序
if 开关 = 0 then
定时器复位=1
定时器启动=0
东西右红灯=0
东西右绿灯=0
东西右黄灯=0
南北红灯=0
南北黄灯=0
南北绿灯=0
东西左绿灯=0
东西左红灯=0
东西左黄灯=0
东西黄灯=0
东西红灯=0
东西绿灯=0
南北右绿灯=0
南北右红灯=0
南北右黄灯=0
南北左红灯=0
南北左绿灯=0
南北左黄灯=0
西东黄灯= 0
西东红灯=0
西东绿灯=0
西东右绿灯=0
西东右红灯=0
西东左黄灯=0
西东右黄灯=0
西东左红灯=0
西东左绿灯=0
北南红灯=0
北南黄灯=0
北南绿灯=0
北南右绿灯=0
北南右红灯=0
北南左红灯=0
北南左黄灯=0
北南左绿灯=0
北南右黄灯=0
车1水平=0
车1垂直=0
车1=0
车2水平=0
车3水平=0
车3垂直=0
车3=0
车4水平=0
车5水平=0
车5垂直=0
车5=0
车6水平=0
车6垂直=0
车6=1
定时器启动=0
定时器复位=1
endif
if 开关 = 1 then
定时器启动=1
定时器复位=0
endif
if 定时器时间>=0 and 开关 = 1 then
西东绿灯=1
西东左绿灯=1
西东右红灯=1
东西红灯=1
东西右绿灯=1
东西左红灯=1
南北红灯=1
南北右红灯=1
南北左红灯=1
北南红灯=1
北南右红灯=1
北南左红灯=1
endif
if 定时器时间>0 and 定时器时间<5 then
车1水平=车1水平+1
车1=0
车3水平=车3水平-1
车3=0
endif
if 定时器时间>=5 and 定时器时间<10 then
车1垂直=车1垂直-1
车3垂直=车3垂直-1
车1=1
车3=1
endif
if 定时器时间>0 and 定时器时间<10 then 车2水平=车2水平+1
if 定时器时间>10 then
西东绿灯=0
西东黄灯=1
西东左绿灯=0
西东左黄灯=1
西东右红灯=1
东西红灯=1
东西右绿灯=0
东西右黄灯=1
东西左红灯=1
南北红灯=1
南北右红灯=1
南北左红灯=1
北南红灯=1
北南右红灯=1
北南左红灯=1
endif
if 定时器时间>12 then
西东黄灯=0
西东红灯=1
西东左黄灯=0
西东左红灯=1
西东右红灯=1
东西红灯=1
东西右黄灯=0
东西右红灯=1
东西左红灯=1
南北红灯=0
南北绿灯=1
南北右红灯=1
南北左红灯=0
南北左绿灯=1
北南红灯=1
北南右红灯=0
北南右绿灯=1
北南左红灯=1
endif
if 定时器时间>22 then
西东红灯=1
西东左红灯=1
西东右红灯=1
东西红灯=1
东西右红灯=1
东西左红灯=1
南北绿灯=0
南北黄灯=1
南北右红灯=1
南北左绿灯=0
南北左黄灯=1
北南红灯=1
北南右绿灯=0
北南右黄灯=1
北南左红灯=1
endif
if 定时器时间>24 then
西东红灯=1
西东左红灯=1
西东右红灯=0
西东右绿灯=1
东西红灯=0
东西绿灯=1
东西右红灯=1
东西左红灯=0
东西左绿灯=1
南北黄灯=0
南北红灯=1
南北右红灯=1
南北左黄灯=0
南北左红灯=1
北南红灯=1
北南右黄灯=0
北南右红灯=1
北南左红灯=1
endif
if 定时器时间>34 then
西东红灯=1
西东左红灯=1
西东右绿灯=0
西东右黄灯=1
东西绿灯=0
东西黄灯=1
东西右红灯=1
东西左绿灯=0
东西左黄灯=1
南北红灯=1
南北右红灯=1
南北左红灯=1
北南红灯=1
北南右红灯=1
北南左红灯=1
endif
if 定时器时间>24 and 定时器时间<34 then 车4水平=车4水平-1
if 定时器时间>24 and 定时器时间<29 then
车5水平=车5水平-1
车5=0
车6水平=车6水平+1
车6=0
endif
if 定时器时间>=29 and 定时器时间<34 then
车5垂直=车5垂直+1
车6垂直=车6垂直+1
车5=1
车6=1
endif
if 定时器时间>36 then
西东红灯=1
西东左红灯=1
西东右黄灯=0
西东右红灯=1
东西黄灯=0
东西红灯=1
东西右红灯=1
东西左黄灯=0
东西左红灯=1
南北红灯=1
南北右红灯=0
南北右绿灯=1
南北左红灯=1
北南红灯=0
北南绿灯=1
北南右红灯=1
北南左红灯=0
北南左绿灯=1
endif
if 定时器时间>46 then
西东红灯=1
西东左红灯=1
西东右红灯=1
东西红灯=1
东西右红灯=1
东西左红灯=1
南北红灯=1
南北右绿灯=0
南北右黄灯=1
南北左红灯=1
北南绿灯=0
北南黄灯=1
北南右红灯=1
北南左绿灯=0
北南左黄灯=1
endif
if 定时器时间>48 then
西东红灯=1
西东左红灯=1
西东右红灯=1
东西红灯=1
东西右红灯=1
东西左红灯=1
南北红灯=1
南北右黄灯=0
南北右红灯=1
南北左红灯=1
北南黄灯=0
北南红灯=1
北南右红灯=1
北南左黄灯=0
北南左红灯=1
车1水平=0
车1垂直=0
车1=0
车2水平=0
车3水平=0
车3垂直=0
车3=0
车4水平=0
车5水平=0
车5垂直=0
车5=0
车6水平=0
车6垂直=0
车6=1
定时器复位=1
endif
展开阅读全文