组态MGGS课程设计.doc_第1页
组态MGGS课程设计.doc_第2页
组态MGGS课程设计.doc_第3页
组态MGGS课程设计.doc_第4页
组态MGGS课程设计.doc_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

组态软件课程设计 题 目: 基于MCGS组态软件实现自动门的控制 组 员: 孙文飞 院 系: 电气工程学院 专业班级: 自动化3班 2014年06月08日 基于MCGS组态软件实现自动门设计摘 要:运用MCGS组态软件,制作出自动门的控制画面,并编写出相应程序实现对门、人等的控制。工作人员通过控制画面可以实时了解自动门的运行状态,及时对自动门系统故障进行报警,分析故障原因,并通过计算机直接控制自动门的运行。通过此监控,可足不出户地了解自动门的状况,大大的简化了工作员的操控流程。关键字: 自动门 MCGS组态软件 监控 ABSTRACTThe paper describes how the dynamic monitoring screen on HMI for the automatic doors automated control system is designed and built by the configuration software MCGS and in module form .The staff can monitor the operational status of the door by the HM I, and give the alarm in time to solve the problems without delay if some accident happens in the automatic system .Also , the staff can control the doors operation by PLC .It is of theoretical and practical valuesKey Words : Automatic door ,MCGS software, monitor40目录1绪论21.1 立题背景21.2 研究对象21.3 设计思路32 MCGS组态主界面的设计32.1新建工程32.2新建用户窗口3 2.2.1建立画面3 2.2.2编辑画面4 2.2.3编辑组态动画界面42.3 变量的添加62.4 变量关联62.5动画连接及程序编写9 2.5.1进门小人的动画设置10 2.5.2车的动画设置13 2.5.3建筑物窗户的动画设置143运行策略组态194总结215参考文献216附录227辞谢38 1绪论1.1 立题背景 随着自动控制技术的飞速发展,人民生活水平的逐渐提高,去商场或超市购物的时间越来越多,为了方便顾客随时进入或走出商场或超市,许多商场或超市原来的手推玻璃门逐渐被自动玻璃门所取代,而且商场或超市在冬天或夏天开空调,采用自动玻璃门可以减少顾客推门或关门这个烦琐的动作,而且还可提高室内的舒适度,自动门已成为人们日常生活中不可缺少的工具 ,其运行的可靠性也成为人们关注的焦点。近几年来随着组态软件的广泛应用 ,结合门监控系统的实际要求和组态软件的特点开始将组态软件应用到自动门的控制系统。组态软件本身所具有的操作简便、可视性好、可维护性强、高性能、高可靠性等突出优点,可以使管理人员不到现场就能直观、清晰、准确地了解门的运行状态,及时对自动门系统中的故障进行报警,分析判断故障原因,并可通过计算机直接控制门的运行,充分提高系统的工作效率和监控力度,保障人们进入和出门的可靠性。与以往自动门控制中采用的单片机等软件相比, MCGS操作更简便,其动画显示使人机界面更加人性化,因此基于组态软件的车库控制系统的研究具有重要的现实意义。1.2研究对象 对自动门控制中的小人、卡车、窗户以及门进行监控。此论文主要研究的是对各种类型自动门的控制,小人进门及窗户闪烁的过程。1.3设计思路此设计的研究命题为自动门的控制,我们在组态中建立四个不同的门:位移检测门、感应门、密码门、以及按钮伸缩门。第一个自动门通过位移传感器检测人的位置来控制门的开关。第二个门通过感应元件检测到有人来时,门自动打开;人进门后,门自动关门。第三个门是密码门,当密码输入正确时门自动打开。第四个门通过按钮来控制伸缩门的开关以及停止。这些都是通过程序实现的。此外,还要对建筑物上的窗户进行闪烁的控制,顺序闪烁,中心线两边的闪烁等。2 MCGS组态主界面的设计2.1 新建工程进入MCGS组态环境后,执行“文件”菜单中的“新建工程”命令,系统自动创建一个名为“新建工程0.MCG”的新工程。选择文件菜单中的“工程另存为”菜单项,弹出文件保存窗口。在文件名一栏内输入“基于MCGS组态软件课程设计”,点击“保存”按钮,工程创建完毕。2.2 建立用户窗口2.2.1 建立画面在“用户窗口”中单击“新建窗口”按钮,建立完成如下图: 窗口的建立2.2.2编辑画面设置用户窗口属性:选择对应用户窗口图标,单击窗口属性,出现“用户窗口属性设置”对话框,按图所示的设置完成用户窗口的设置后,单击确定按钮。 2.2.3编辑组态动画界面 利用 MCGS组态软件中的工具箱,选择相应的作图工具完成主界面图形的设计制作,单击工具箱图标,打开右图所示的工具箱开始图形编辑制作。画出进门的小人、运动的卡车、建筑物、以及建筑物上的门等。效果图如下图所示:1、位移检测自动门控制系统全图2、 感应自动门控制系统全图3、 密码自动门控制系统全图4、按钮伸缩自动门控制系统全图5、单击工具箱图标,利用相应作图工具绘制出人的模型。效果图如右图所示 6、由于卡车图形比较复杂,从素材文件中直接引用卡车模型。如右图所示2.3变量的添加在实时数据库中单击右侧的“新增对象”按钮,对新建的数据对象右键属性,进入如下图所示的“数据对象属性设置”对话框,并完成对应所需的属性设置,注意变量的数据类型。 数据对象属性设置完成后生成如下图所示的“实时数据库” 实时数据库中添加变量截图2.4变量关联通过以上一系列操作,已经形成了所有的数据库变量文件,接下来则要完成MCGS组态用户窗口中主界面上动画图形与变量对应的关联过程。打开用户窗口,双击“感应门”进入用户窗口组态界面,双击“窗户”图形,弹出“动画组态属性设置”对话框,在属性设置中勾选“填充颜色”,进入填充颜色的设置,在表达式中单击图标,弹出下图所示窗口,双击“自动门”,变量关联工作完成。填充颜色的链接参照下图设置分段点及对应颜色 动画组态属性设置 至此,变量的关联工作完成。 仿照窗户的变量关联方法,依次对进门的小人以及车、自动门进行变量关联设置。2.5动画连接及程序编写至此,关联工作已经完成,但是我们由图形对象搭制而成的图形界面是静止的,需要我们对这些图形对象进行动画属性设置,使它们“动”起来,真实地描述外界对象的状态变化,达到过程实时监控的目的。MCGS实现图形动画设计的主要方式是将用户窗口中的图形对象与实时数据库中的数据对象建立相关性连接,并设置相应的动画属性,这样在系统运行过程中,图形对象的外观和状态特征,就会由数据对象的实时采集结果进行驱动,从而实现图形的动画效果,使图形界面“动”起来。 2.5.1进门小人的动画设置(1) 对于小人的动画设置,我们可以通过垂直移动来对其控制;其次我们通过其可见度的设置来实现小人的进门动作画面。小人的垂直移动和可见度的设置如下图(2) 动画程序的编写 在“运行策略”窗口下双击“循环策略”进入循环策略的编辑窗口右击图标选择“新增策略行”,单击按钮,弹出“策略工具箱”,选择“脚本程序”,将其拖动至中。双击图标,进入程序编辑窗口,就可以编写相应的程序。示例程序如下:(位移检测门中部分程序)angle1 = angle1 + 10IF angle1200 THEN angle1 = angle1 - 200IF angle1 100 THEN angle = 200 - angle1ELSE angle = angle1ENDIFgy=gy+5wheel=gyIF gy350 AND gy 50 THEN men1=50 men2=-50IF gy 600 THEN men1=men1 +3 men2=men2 - 3IF men1 0 THEN men1=0 men2=0ENDIFENDIFENDIFENDIFIF gy 1000 THEN gy=0 ENDIF2.5.2 车的动画设置(1)要实现行驶中的车停在指定位置到人进门这一过程,简单的阐述一下过程中的动画变化,车停,人下车,门开,人不见,门关,车开走。 现在对卡车进行如下设置:(2)卡车1与卡车2程序的编写如下:IF wheel21500 THEN 垂直=0IF wheel21500 THEN wheel1=0IF wheel21500 THEN wheel2=0IF wheel2=629 and wheel2629 and wheel2660 and wheel2660 THEN 可见度=1IF wheel2680 and wheel2=700 THEN wheel2=wheel2+5IF wheel2=700 THEN wheel1=wheel1+15IF wheel21100 THEN 可见度2=12.5.3建筑物门的动画设置(1)以“密码门”为例,双击密码门对应的窗户图形,打开下图所示的“动画组态属性设置”对话框。进行如图设置: 当变量“开门34”或变量“改变”为0时,密码门可见,表示为门关;当变量“门34”或变量“改变”为1时,密码门不可见,表现为门开。(2) 下面分块介绍动画连接 1.位移检测门的动画连接 当人移动到检测范围内时,主要是通过门1与门2自动的水平移动来实现;当人进门后,可以通过开关按钮调用行策略来控制门的开关。各属性设置如下: 门1 门2门1与门2的控制程序如下:IF 开门12 = 1 THEN men1=men1 - 2men2 = men2 +2IF men2 50 THEN men1=-50 men2=50 ENDIFENDIFIF 开门12 = 0 THEN IF men2 0 THEN men1=men1 + 2 men2=men2-2ELSE men2 0ENDIFIF men2 1500 THEN car1=0 ENDIF3.car2=car2 - 5 IF car2 50 THEN men1=-50 men2=50 ENDIFENDIF5.IF 开门12 = 0 THEN IF men2 0 THEN men1=men1 + 2 men2=men2-2 ELSE men2 0 ENDIF IF men2 200 THEN angle1 = angle1 - 200 IF angle1 100 THEN angle = 200 - angle1 ELSE angle = angle1 ENDIF7.gy=gy+5wheel=gyIF gy350 AND gy 50 THEN men1=50 men2=-50IF gy 600 THEN men1=men1 +3 men2=men2 - 3IF men1 0 THEN men1=0 men2=0ENDIFENDIFENDIFENDIFIF gy 1000 THEN gy=0 ENDIF8.IF 开门12 = 0 THEN IF men2 0 THEN men1=men1 + 2 men2=men2-2ELSE men2 0ENDIFIF men2 50 THEN men1=-50 men2=50 ENDIFENDIF9.IF 开门12 = 1 THEN men1=men1 - 2men2 = men2 +2IF men2 50 THEN men1=-50 men2=50 ENDIFENDIF附录2IF wheel21500 THEN 垂直=0IF wheel21500 THEN wheel1=0IF wheel21500 THEN wheel2=0IF wheel2=629 and wheel2629 and wheel2660 and wheel2660 THEN 可见度=1IF wheel2680 and wheel2=700 THEN wheel2=wheel2+5IF wheel2=700 THEN wheel1=wheel1+15IF wheel21100 THEN 可见度2=1附录31.IF 改变=1 THEN 门前字幕显示=欢迎鹏哥! ENDIF2. 右行车=右行车-10 IF 右行车1350 THEN 左行车=左行车-25004.!WaitFor( 按键0=1 OR 按键1=1 OR 按键2=1 OR 按键3=1 OR 按键4=1 OR 按键5=1 OR 按键6=1 OR 按键7=1 OR 按键8=1 OR 按键9=1,999999)while(第一=0) IF 按键0=1 THEN 一次=0: 第一=1: endif IF 按键1=1 THEN 一次=1: 第一=1: endif IF 按键2=1 THEN 一次=2: 第一=1: endif IF 按键3=1 THEN 一次=3: 第一=1: endif IF 按键4=1 THEN 一次=4: 第一=1: endif IF 按键5=1 THEN 一次=5: 第一=1: endif IF 按键6=1 THEN 一次=6: 第一=1: endif IF 按键7=1 THEN 一次=7: 第一=1: endif IF 按键8=1 THEN 一次=8: 第一=1:endif IF 按键9=1 THEN 5.!WaitFor( 重新输入密码=1,9999999)一次=0二次=0三次=0四次=0五次=0密码输入次数=1!WaitFor( 按键0=1 OR 按键1=1 OR 按键2=1 OR 按键3=1 OR 按键4=1 OR 按键5=1 OR 按键6=1 OR 按键7=1 OR 按键8=1 OR 按键9=1,999999)while(第二=0) IF 按键0=1 THEN 一次=0: 第二=1: endif IF 按键1=1 THEN 一次=1: 第二=1: endif IF 按键2=1 THEN 一次=2: 第二=1: endif IF 按键3=1 THEN 一次=3: 第二=1: endif IF 按键4=1 THEN 一次=4: 第二=1: endif IF 按键5=1 THEN 一次=5: 第二=1: endif IF 按键6=1 THEN 一次=6:第二=1:endif IF 按键7=1 THEN 一次=7:第二=1:endif IF 按键8=1 THEN 一次=8:第二=1:endif IF 按键9=1 THEN 一次=9:第二=1:endifendwhile!Sleep(1000 )!WaitFor( 按键0=1 OR 按键1=1 OR 按键2=1 OR 按键3=1 OR 按键4=1 OR 按键5=1 OR 按键6=1 OR 按键7=1 OR 按键8=1 OR 按键9=1,999999)while(第二=1) IF 按键0=1 THEN 二次=0:第二=2:endif IF 按键1=1 THEN 二次=1:第二=2: endif IF 按键2=1 THEN 二次=2:第二=2:endif IF 按键3=1 THEN 二次=3:第二=2:endif IF 按键4=1 THEN 二次=4:第二=2:endif IF 按键5=1 THEN 二次=5:第二=2:endif IF 按键6=1 THEN 二次=6:第二=2:endif IF 按键7=1 THEN 二次=7:第二=2:endif IF 按键8=1 THEN 二次=8:第二=2:endif IF 按键9=1 THEN 二次=9:第二=2: endifendwhile!Sleep(1000 )!WaitFor( 按键0=1 OR 按键1=1 OR 按键2=1 OR 按键3=1 OR 按键4=1 OR 按键5=1 OR 按键6=1 OR 按键7=1 OR 按键8=1 OR 按键9=1,999999)while(第二=2) IF 按键0=1 THEN 三次=0:第二=3:endif IF 按键1=1 THEN 三次=1:第二=3: endif IF 按键2=1 THEN 三次=2:第二=3:endif IF 按键3=1 THEN 三次=3:第二=3:endif IF 按键4=1 THEN 三次=4:第二=3:endif IF 按键5=1 THEN 三次=5:第二=3:endif IF 按键6=1 THEN 三次=6:第二=3:endif IF 按键7=1 THEN 三次=7:第二=3:endif IF 按键8=1 THEN 三次=8:第二=3:endif IF 按键9=1 THEN 三次=9:第二=3: endifendwhile!Sleep(1000 )!WaitFor( 按键0=1 OR 按键1=1 OR 按键2=1 OR 按键3=1 OR 按键4=1 OR 按键5=1 OR 按键6=1 OR 按键7=1 OR 按键8=1 OR 按键9=1,999999)while(第二=3) IF 按键0=1 THEN 四次=0:第二=4:endif IF 按键1=1 THEN 四次=1:第二=4: endif IF 按键2=1 THEN 四次=2:第二=4:endif IF 按键3=1 THEN 四次=3:第二=4:endif IF 按键4=1 THEN 四次=4:第二=4:endif IF 按键5=1 THEN 四次=5:第二=4:endif IF 按键6=1 THEN 四次=6:第二=4:endif IF 按键7=1 THEN 四次=7:第二=4:endif IF 按键8=1 THEN 四次=8:第二=4:endif IF 按键9=1 THEN 四次=9:第二=4: endifendwhile!Sleep(1000 )!WaitFor( 按键0=1 OR 按键1=1 OR 按键2=1 OR 按键3=1 OR 按键4=1 OR 按键5=1 OR 按键6=1 OR 按键7=1 OR 按键8=1 OR 按键9=1,999999)while(第二=4) IF 按键0=1 THEN 五次=0:第二=5:endif IF 按键1=1 THEN 五次=1:第二=5: endif IF 按键2=1 THEN 五次=2:第二=5:endif IF 按键3=1 THEN 五次=3:第二=5:endif IF 按键4=1 THEN 五次=4:第二=5:endif IF 按键5=1 THEN 五次=5:第二=5:endif IF 按键6=1 THEN 五次=6:第二=5:endif IF 按键7=1 THEN 五次=7:第二=5:endif IF 按键8=1 THEN 五次=8:第二=5:endif IF 按键9=1 THEN 五次=9:第二=5: endifendwhile!Sleep(1000 )密码输入次数=2if 一次=1 and 二次=1 and 三次=5 and 四次=5 and 五次=8 then!WaitFor(确定=1,77777788 )改变=1 门前字幕显示=欢迎鹏哥!else 门前字幕显示=密码错喽!!Sleep(1000 ) 门前字幕显示=请输入密码 endif!WaitFor( 重新输入密码=1 ,9999999)一次=0二次=0三次=0四次=0五次=0 !WaitFor( 按键0=1 OR 按键1=1 OR 按键2=1 OR 按键3=1 OR 按键4=1 OR 按键5=1 OR 按键6=1 OR 按键7=1 OR 按键8=1 OR 按键9=1,999999)while(第三=0) IF 按键0=1 THEN 一次=0: 第三=1: endif IF 按键1=1 THEN 一次=1: 第三=1: endif IF 按键2=1 THEN 一次=2: 第三=1: endif IF 按键3=1 THEN 一次=3: 第三=1: endif IF 按键4=1 THEN 一次=4: 第三=1: endif IF 按键5=1 THEN 一次=5: 第三=1: endif IF 按键6=1 THEN 一次=6:第三=1:endif IF 按键7=1 THEN 一次=7:第三=1:endif IF 按键8=1 THEN 一次=8:第三=1:endif IF 按键9=1 THEN 一次=9:第三=1:endifendwhile!Sleep(1000 )!WaitFor( 按键0=1 OR 按键1=1 OR 按键2=1 OR 按键3=1 OR 按键4=1 OR 按键5=1 OR 按键6=1 OR 按键7=1 OR 按键8=1 OR 按键9=1,999999)while(第三=1) IF 按键0=1 THEN 二次=0:第三=2:endif IF 按键1=1 THEN 二次=1:第三=2: endif IF 按键2=1 THEN 二次=2:第三=2:endif IF 按键3=1 THEN 二次=3:第三=2:endif IF 按键4=1 THEN 二次=4:第三=2:endif IF 按键5=1 THEN 二次=5:第三=2:endif IF 按键6=1 THEN 二次=6:第三=2:endif IF 按键7=1 THEN 二次=7:第三=2:endif IF 按键8=1 THEN 二次=8:第三=2:endif IF 按键9=1 THEN 二次=9:第三=2: endifendwhile!Sleep(1000 )!WaitFor( 按键0=1 OR 按键1=1 OR 按键2=1 OR 按键3=1 OR 按键4=1 OR 按键5=1 OR 按键6=1 OR 按键7=1 OR 按键8=1 OR 按键9=1,999999)while(第三=2) IF 按键0=1 THEN 三次=0:第三=3:endif IF 按键1=1 THEN 三次=1:第三=3: endif IF 按键2=1 THEN 三次=2:第三=3:endif IF 按键3=1 THEN 三次=3:第三=3:endif IF 按键4=1 THEN 三次=4:第三=3:endif IF 按键5=1 THEN 三次=5:第三=3:endif IF 按键6=1 THEN 三次=6:第三=3:endif IF 按键7=1 THEN 三次=7:第三=3:endif IF 按键8=1 THEN 三次=8:第三=3:endif IF 按键9=1 THEN 三次=9:第三=3: endifendwhile!Sleep(1000 )!WaitFor( 按键0=1 OR 按键1=1 OR 按键2=1 OR 按键3=1 OR 按键4=1 OR 按键5=1 OR 按键6=1 OR 按键7=1 OR 按键8=1 OR 按键9=1,999999)while(第三=3) IF 按键0=1 THEN 四次=0:第三=4:endif IF 按键1=1 THEN 四次=1:第三=4: endif IF 按键2=1 THEN 四次=2:第三=4:endif IF 按键3=1 THEN 四次=3:第三=4:endif IF 按键4=1 THEN 四次=4:第三=4:endif IF 按键5=1 THEN 四次=5:第三=4:en

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论