基于plc的电梯控制系统的设计毕业论文初稿3481476.docx
《基于plc的电梯控制系统的设计毕业论文初稿3481476.docx》由会员分享,可在线阅读,更多相关《基于plc的电梯控制系统的设计毕业论文初稿3481476.docx(31页珍藏版)》请在冰豆网上搜索。
基于plc的电梯控制系统的设计毕业论文初稿3481476
(此文档为word格式,下载后您可任意编辑修改!
)
河北科技师范学院
本科毕业设计
基于plc的电梯控制系统的设计
院系名称:
机电科学与工程系
专业名称:
电气工程及其自动化
学生姓名:
杨超
学生学号:
指导教师:
陈秀宏
2013年5月21日
河北科技师范学院教务处制
学术声明
本人呈交的学位论文,是在导师的指导下,独立进行研究工作所取得的成果,所有数据、图片资料真实可靠。
尽我所知,除文中已经注明引用的内容外,本学位论文的研究成果不包含他人享有著作权的内容。
对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确的方式标明。
本学位论文的知识产权归属于河北科技师范学院。
本人签名:
日期:
指导教师签名:
日期:
摘要
随着社会的发展,尤其是现代城市的建设高速发展所带来的高层建筑猛烈的增多,在高层建筑之间的垂直交通工具——电梯,对人们生活也就显得特别重要。
在电梯出现的早期,其控制方式多为继电器控制方式,但这种控制方式有个致命的缺点——安全性差。
随着微电子技术、计算机技术、和自动控制理论技术的发展,电梯的逻辑控制也由PLC代替了原来的继电器控制,安全性、可靠性得到了质的飞越。
本文针对某楼栋六层电梯模型控制系统。
对其PLC系统的设计和调试进行了详细的阐述。
其系统控制的核心部分是日本三菱公司制造的FX2NC系列的PLC,其控制适应性强、控制速度快、安装调试简便、运行费用较低PLC控制技术已成为现代电梯控制的一个热点。
Abstract
Withthedevelopmentofsociety,especiallytheconstructionofmoderncitybroughtbyrapidgrowthofthethe!
Intheearly,whenliftisinvented,itscontrolwayisrelaycontrolway,butthiskindofcontrolmodethispaper,thedesignanddebuggingofPLCsystemarestatedindetailinastoriedbuildingsixelevatormodelcontrolsystem.ThecoreofthesystemcontrolpartismadeofmitsubishiJapanFX2NCseriesofPLC.PLCcontroltechnologyelevatorcontrolofa,loweroperationcost.SoPLCcontroltechnologyelevatorcontrolofa.Width*0.7'设置窗口初始大小
Me.Height=Screen.Height*0.8
Me.Hide'设置首先登录窗口
frmLogin.Show
EndSub
(2)主界面如图4-2所示。
图4-2主界面
4.2.2用户管理模块
用户管理模块,包括用户的登录和退出。
(1)登录界面的控件如表4-1所示。
表4-1登录界面各对象属性设置
对象
属性
设置
对象
属性
设置
窗体
Caption
登录界面
标签2
Caption
Label2
名称
Form1
其他属性
在代码中设置
文本框1
Caption
Text1
按钮1
Caption
Command1
Text
置空
名称
登录
文本框2
Caption
Text2
按钮2
Caption
Command2
Text
置空
名称
退出
标签1
Caption
Label1
Adodc控件
名称
密码
名称
用户名
Caption
Adodc1
(2)用户登录界面主要代码。
‘*************登录界面代码***************
PrivateSubCommand1_Click()
StaticmicountAsInteger'用于记录输入密码次数
DimsqlstrAsString
Adodc1mandType=adCmdUnknown‘查询数据库的用户表
sqlstr="Select*From用户表Where用户名='"&Text1&"'"
Adodc1.RecordSource=sqlstr
Adodc1mandType=adCmdUnknown
Adodc1.Refresh
IfAdodc1.Recordset.BOFThen'若没找到符合Where条件的记录
MsgBox"用户名错误,重新输入",vbExclamation,"警告"
Text1.Text=""
Text1.SetFocus'Text1获得焦点
Else'判断密码是否正确
IfAdodc1.Recordset.Fields("密码")=Text2Then
MDIForm1.Show
MDIForm1.Enabled=True
UnloadMe
Else
MsgBox"密码错误,重新输入",vbExclamation,"警告"
Text2.Text=""
Text2.SetFocus
micount=micount+1
Ifmicount=3ThenUnloadMe
EndIf
EndIf
EndSub
PrivateSubCommand2_Click()
UnloadMe'退出按钮
End
EndSub
PrivateSubForm_Load()
Me.Left=0'设置登录界面的起始位置
Me.Top=0
EndSub
(3)登录界面如图4-3所示。
图4-3登录界面运行图
4.2.3数据存储模块
数据存储模块包括发送单片机设置参数、循环提取数据和显示数据等功能。
把这些功能安排在同一模块中,可以方便用户操作上下位机之间的通信。
(1)数据存储模块控件表如表4-2所示。
表4-2数据存储界面各对象属性设置
对象
属性
设置
对象
属性
设置
窗体
Caption
数据存储
文本框
Caption
Text2
名称
Form2
Text
置空
标签1
Caption
Label1
按钮
Caption
Command1
名称
时间
名称
打开串口
续表
对象
属性
设置
对象
属性
设置
标签2
Caption
Label2
按钮
Caption
Command2
名称
温度值
名称
测试温度
标签3
Caption
Label3
MSComm控件
Caption
MSComm1
名称
置空
其他属性
在代码中设置
文本框
Caption
Text1
Timer控件
Caption
Timer1
Text
置空
其他属性
在代码中设置
(2)数据存储模块主要代码。
‘***********数据存储界面代码****************
PrivateSubCommand1_Click()
IfCommand1.Caption="打开串口"Then
MSComm1.PortOpen=True
a=MsgBox("串口已经打开",vbOKOnly,"提示")
Command1.Caption="关闭串口"
ElseIfCommand1.Caption="关闭串口"Then
MSComm1.PortOpen=False
a=MsgBox("串口已经关闭",vbOKOnly,"提示")
Command1.Caption="打开串口"
EndIf
EndSub
PrivateSubCommand2_Click()
IfCommand2.Caption="开始测试"Then
IfMSComm1.PortOpen=FalseThen
a=MsgBox("请先打开串口",vbDefaultButton1,"提示")
Else
a=MsgBox("测试已经开始",vbOKOnly,"提示")
Command2.Caption="结束测试"
Timer1.Enabled=True
EndIf
ElseIfCommand2.Caption="结束测试"Then
a=MsgBox("测试已经结束",vbOKOnly,"提示")
Command2.Caption="开始测试"
EndIf
EndSub
PrivateSubCommand3_Click()
IfMSComm1.PortOpen=TrueThen
MSComm1.PortOpen=False'先判断串口是否打开,如果打开则先关闭
EndIf
UnloadMe'卸载窗体,并退出程序
'End
EndSub
(3)数据存储模块图如图4-4所示。
图4-4数据存储运行图
4.2.4数据记录查询模块
历史数据记录查询模块包括查询自设定时间段的地下水数据记录并显示在相应控件中的功能。
(1)数据查询模块控件表如表4-3所示。
表4-3数据查询界面各对象属性设置
对象
属性
设置
对象
属性
设置
窗体
Caption
名称
数据查询
文本框
Caption
Text2
Form3
Text
在代码中设置
续表
对象
属性
设置
对象
属性
设置
标签1
Caption
Label1
文本框
Caption
Text3
名称
开始时间
Text
在代码中设置
标签2
Caption
Label2
文本框
Caption
Text4
名称
终止时间
Text
在代码中设置
标签3
Caption
Label3
文本框
Caption
Text5
名称
查询日期
Text
在代码中设置
标签4
Caption
Label4
按钮
Caption
Command1
名称
起始时间(小时)
名称
查询
标签5
Caption
Label5
按钮
Caption
Command2
名称
终止时间(小时)
名称
查询
文本框
Caption
Text1
SSTab控件
Caption
按日期查询
续表
对象
属性
设置
对象
属性
设置
Text
在代码中设置
名称
SSTab1
DataGrid控件
Caption
查询结果
Adodc控件
Caption
Adodc1
名称
DataGrid1
其他属性
在代码中设置
(3)数据查询运行图如图4-5所示。
图4-5数据查询模块运行图
4.2.5数据分析功能模块
数据分析功能模块主要是选择图的样式,并生成相应的图类型,以便总体的地下水温度的变化。
(1)数据分析模块控件表如表4-4所示。
表4-4数据分析界面各对象属性设置
对象
属性
设置
对象
属性
设置
窗体
Caption
数据分析
按钮
Caption
Command3
名称
Form4
名称
生成散点图
按钮
Caption
Command1
按钮
Caption
Command4
名称
生成立体直方图
名称
生成直方图
按钮
Caption
Command2
按钮
Caption
Command5
名称
生成折线图
名称
生成饼状图
(2)数据分析运行图如图4-6,图4-7,图4-8,图4-9所示。
图4-6折线图图4-7立方图
图4-8饼状图图4-9直方图
4.2.6数据管理模块
数据管理模块主要是通过控件显示数据库中地下水温度的数值并且能查到某一个精确时间的地下水温度。
(1)数据管理模块运行图如图4-10所示。
图4-10数据管理界面图
(2)数据管理模块控件表如表4-5所示。
表4-5数据管理界面各对象属性设置
对象
属性
设置
对象
属性
设置
窗体
Caption
数据管理
按钮
Caption
Command3
名称
Form5
名称
下一条
按钮
Caption
Command1
按钮
Caption
Command4
名称
首记录
名称
尾记录
按钮
Caption
Command2
按钮
Caption
Command5
名称
上一条
名称
返回
续表
对象
属性
设置
对象
属性
设置
DataGrid控件
Caption
地下水温度表
Adodc控件
Caption
Adodc1
名称
DataGrid1
其他属性
在代码中设置
4.2.7关于模块
关于模块用于显示软件版本,软件简要介绍等信息,关于界面运行图如图4-11所示。
图4-11关于界面图
4.3系统工作流程图
4.3.1登录界面
(1)用户输入用户名和密码。
(2)系统检查用户名是否存在,如果存在则进行后台提交查询用户信息;否则提示用户“用户名不存在!
”,并要求用户重新输入。
(3)系统检查密码是否有效,如果有效则进入主界面;否则提示用户“密码错误!
”,并要求用户重新输入。
表4-2登录界面流程图
4.3.2数据存储
(1)进入用户存储界面。
(2)点击“打开串口”,系统检查串口打开是否成功,如果成功则点击“测试数据”;否则提示“串口打开有误”,并要求重新打开串口。
(3)点击“测试数据”后,显示测试数据,系统检查系统是否循环,如果是循环则重新测试数据;否则结束测试数据,并且关闭串口。
图4-3数据显示流程图图4-4数据存储流程图
4.3.3数据查询
(1)进入数据查询界面。
(2)用户输入查询日期,系统检查日期是否合法,如果日期合法则进行后台提交查询日期,并进行数据库查询;否则提示“日期不合法!
”,并要求重新输入日期。
(3)系统查询数据是否有效,如果存在则显示数据;否则提示“查询数据不存在!
”,并要求用户重新输入日期。
图4-5数据查询流程图
4.3.4数据分析
(1)进入数据分析界面。
(2)选择图的类型并点击其按钮,则显示相应类型的图。
例如:
点击折线图按钮,则显示折线图。
图4-6数据分析流程图图4-7数据管理界面流程图
4.3.5数据管理
(1)进入数据管理界面。
(2)选择条件按钮并点击,则执行相应的功能。
例如:
点击首记录按钮,则指向首记录的数据。
4.4通信程序设计
通信程序的设计主要是行通信程序设计。
上位机通过RS-485串行通讯口,该串口完成串行数据转换和串行数据接收、发送任务,采用RS-485通信标准,其结构和使用比较简单。
而地下水监测系统界面设计软件VB的MSComm控件[17]提供了事件驱动和查询方式两种方法实现串行通信。
其中事件驱动是处理串行通信的一种非常有效的方法,实时性较强。
本设计采用事件驱动方式实现。
4.4.1串口初始化
我们在系统主界面窗体中放置一个MSComm控件(MSComm控件名为mscom),
主界面程序开始运行时执行串口初始化操作[18]。
程序如下:
mscommPort=1'选用COM1串行口
mscom.Settings="9600,n,8,1"'9600波特率,无校验,8位数据,1位停止位
Ifmscom.PortOpen=FalseThen
mscom.PortOpen=True
EndIf
statedisplay.Caption="COM1打开"'在主界面上显示COM1串行口的状态
mscom.InBufferCount=0'清空接收缓冲区
mscom.OutBufferCount=0'清空发送缓冲区
mscom.InputMode=comInputModeBinary'以二进制形式读取数据
mscom.RThreshold=1'当收到数据时产生OnComm事件
4.4.2OnComm事件处理
本系统的串行通信程序中采用了事件驱动方式,它可以利用OnComm事件捕获并处理通信中发生的事件或错误,实时性较强[19]。
当一个通信事件或错误发生时,就触发此事件,CommEvent属性中含有触发OnComm事件的真正错误或事件的标志代码。
本系统的通信程序设计中可根据CommEvent属性值来编写相应的处理程序。
使用OnComm事件处理的通信事件包括:
(1)接收和判断地下水温度告警报头并进行处理。
(2)接收和判断地下水温度发送的数据并进行处理。
(3)接收和判断设置参数后地下水温度的回执码。
当第一个字节数据到达接收缓冲区时即触发OnComm事件[20][21],此时程序进入此时程序进入OnComm事件内部执行。
进入OnComm事件内部处理程序后,先延时一定时间后以二进制形式读取接收缓冲区中所有数据,然后根据各标志位的状态判断执行相应的处理程序。
5地下水监测系统数据库设计
5.1CS数据库管理系统概述(DBMS)
5.1.1数据库管理系统
数据库管理系统[22][23](DataBaseManagementSystem)是为数据库的建立、使用和维护而配置的软件。
它建立在操作系统的基础上,对数据库进行统一的管理和控制。
用户使用的各种数据库名称以及应用程序的执行,都要通过数据库管理系统。
同时,数据库管理系统还担负着数据库的维护工作,保证数据库的安全性和完整性。
数据库管理系统的主要功能有以下几个方面:
(1)描述数据库:
描述数据库的逻辑结构、存储结构、语义信息和保密要求等。
(2)管理数据库:
控制整个数据库系统的运行,控制用户的并发性访问,检验数据的安全、保密与完整性,执行数据检索、插入、删除和修改等操作。
(3)维护数据库:
控制数据库初始数据的装入,记录工作日志,监视数据库的性能,修改新数据库,重新组织数据库以及恢复出现故障的数据库。
数据通信:
组织数据的传输。
5.1.2CS体系结构的数据库应用系统
CS体系结构的数据库应用系统随着关系数据库管理系统的不断成熟和系统硬件的发展,以及日益增长的中小企业系统的需求而诞生的。
最简单的CS体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。
一旦服务器程序被启动,就随时等待响应客户程序发来得请求。
客户应用程序运行在用户自己的计算机上,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则做出应答,送回结果。
这种系统具有以下特点:
把处理任务在客户和服务器间分开。
客户提交请求,服务器完成数据查询任务并返回结果。
减少工作站的网络负载。
网络上传输的只是客户请求和查询结果,不再是整个数据库文件。
因此工作站网络负载变小,特别有利于低速连接的远程客户。
数据库平台与工作站无关。
由于数据库采用集中管理,客户通过SQL语言访问数据库数据。
因此,客户不限于一种操作系统平台。
数据库与客户程序无关。
当数据库结构改变,数据库平台更换时,客户程序不需要或极少量的改变。
维护数据库的完整性。
数据库采用基于事务的关系数据库,保留事务日志和数据库备份恢复机制。
5.2SQLServer2000数据库管理系统
在数据库服务器上使用SQLServer2000数据库管理系统,与监控中心计算机上的界面软件形成CS体系结构。
SQLServer2000是Microsoft公司开发的一个大型的关系型数据库管理系统,它为用户提供了一个安全、可靠、易管理和高端的客户服务器数据库平台。
SQLServer2000数据库的中心数据驻留在一个中心计算机上,该计算机被称为服务器。
用户通过客户机的应用程序来访问服务器上的数据库。
在被允许访问数据库之前,SQLServer2000首先对来访问的用户请求进行安全验证,只有验证通过后才能处理请求,并将处理的结果返回给客户机应用程序。
5.2.1SQLServer2000简介
SQLServer2000[24]是微软公司最新版的大型数据库服务器,其性能指标在各方面都有赶超Oracle数据库的趋势。
用它可以方便地管理数据库和开发应用程序,它使用了最先进的数据库构架,与WindowsNT2000平台紧密集成,具有完全的Web功能。
通过对高端硬件平台、网络和存储技术的支持,为WEB站和企业的应用最大限度地提供了可扩展性和高可靠性,能在Internet商业领域快速建立并应用。
此外,还增强了安全性,保护防火墙内外的数据。
支持基于角色的安全并拥有安全审计工具。
在经历了SQLServer6.5和7.0两个版本的尝试后,微软公司终于开始了大规模的业务。
记得在以前各种关于SQLServer的文章,都会将其定位成中小型应用方面,这种感觉被大家自然的延续到了2000版之中。
其实这是一种误解。
在过去的很长一段时间中,微软公司聘请了世界上最优秀的数据库专家以及专门搭建了信息量可谓空前的地理信息系统,励精图治,就是为了摘掉扣在自己头上的这顶帽子。
有了强大的性能和功能支持,再配合其一向为人称道的易用性,SQLServer可以说成为了开发者手中的一柄利器!
另外,目前国内的一些关于微软平台的数据库编程教程,喜欢使用Access作为数据库平台的案例,并展开相关的内容。
这其实对于开发真正的数据库应用并没有直接的帮助作用,只能使大家停留在应用的初级阶段。
SQLServer2000提供的非常傻瓜的缺省安装和使用模式,其上手难度并不比Access大。
另外,SQLServer2000可以兼顾小、中、大规模的应用,有着远远比Access强大的伸缩性。
5.2.2SQLServer数据库特点
概括起来,SQLServer2000数据库管理系统具有以下主要特点。
(1)丰富的图形管理工具,使系统管理、操作更为直观方便。
SQLServer企业管理器是一个基于图形用户界面(GUI)的集成管理工具,利用它可以配置管理SQLServer服务器、管理数据库和数据库对象、备份和恢复数据、调度任务和管理警报、实现数据复制和转换操作等[25]。
此外,SQLServer2000还提供了SQL事件探查器、SQL查询分析器、SQLServer服务管理器和多种操作向导等图形界面管理工具,大大简化了用户操作,从而增强了系统的易用性。
(2)动态自动管理和优化功能。
即使SQLServer数据库管理员不做任何