电梯系统控制的设计--毕业论文.doc_第1页
电梯系统控制的设计--毕业论文.doc_第2页
电梯系统控制的设计--毕业论文.doc_第3页
电梯系统控制的设计--毕业论文.doc_第4页
电梯系统控制的设计--毕业论文.doc_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

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

文档简介

五邑大学本科毕业论文 目 录摘 要IABSTRACTII第1章 绪 论11.1电梯的发展史11.2电梯的分类11.3课题的提出及研究意义21.4课题研究的内容3第2章 方案论证42.1主要控制器的选择42.2平层定位模块的选择42.3楼层显示模块42.4 声音提示模块52.5电动机模块52.6 电机驱动模块5第3章 硬件设计73.1总体方案的设计73.2单片机最小系统83.3各模块电路的设计93.3.1按键电路模块93.3.2显示模块103.3.3电源模块113.3.4霍尔传感器模块123.3.5电机驱动模块133.3.6按键指示模块143.3.7紧急报警模块14第4章 软件系统设计154.1电梯主程序154.2电梯逻辑控制164.3电梯运行控制184.4键盘扫描和楼层检测194.4.1键盘扫描194.4.2楼层检测204.5紧急停止224.6程序中位操作问题的分析24第5章 系统仿真与测试255.1软件编译调试255.2硬件仿真26第6章 总 结27参考文献28致谢29附录30II摘 要本设计是以 STC12C5A60S2单片机为核心控制器的电梯自动控制系统。系统中采用单片机作为核心控制器,通过扫描电梯内外按键按下与否引起的电平变化,作为电梯用户请求信息传送到单片机。单片机通过判断传送到单片机的信息控制电机转动把桥厢送到相应目标楼层并自动完成开关门等一系列动作。硬件部分主要由单片机最小系统模块、楼层检测模块、按键及其指示灯模块、数码管显示模块、H桥驱动模块、报警模块、运行指示模块等部分电路构成。楼层检测使用了磁敏霍尔传感器,电梯运行到相应楼层时,桥厢底部的磁铁引起霍尔传感器产生电平变化,送到单片机来确定楼层数,电动机控制部分采用直流电机及H桥驱动电路。软件部分使用C语言编程,利用中断方式来检测楼层的信息,并送到数码管进行显示。它主要是由主程序、报警、按键扫描、层位读取、显示、电梯控制等程序构成的。该系统设计简单可靠,实现了五层电梯运行的控制。关键词 STC12C5A60S2;直流电机;霍尔传感器;电梯控制; ABSTRACTThe design is based on microcontroller as the core controller STC12C5A60S2 elevator control system. The system uses a microcontroller as the core control button is pressed or not by scanning the internal and external level changes caused as a user request message is sent to the microcontroller, control the motor rotation, the microcontroller controls the motor according to test results floors stopped at the destination floor. Hardware modules mainly by the smallest single-chip system, floor detection module, the layer digital display, the motor drive module, key scan module, alarm module, down the line call indication circuit components. Floors detection using magnetic Hall-sensors, elevator operation to the appropriate floor, the compartment at the bottom of the bridge caused by the Hall sensor generates a magnet level changes, to determine the number of floors to the MCU, the motor control part of the DC motor and H-bridge driver circuit . Software components using the C programming language, using the interrupt method to detect the floors of information, and sent to the digital display. It is dominated by the main program, alarm, key scan, layer read, display, consisting of elevator control and other procedures. The system is designed to be simple and reliable, to achieve a five-story elevator control.Keywords STC12C5A60S2; DC motor; Hall Sensor; elevator control;第1章 绪 论1.1电梯的发展史1854年,在纽约水晶宫举行的世界博览会上,美国人伊莱沙格雷夫斯奥的斯第一次向世人展示了他的发明历史上的第一台安全升降电梯。 从那以后,升降电梯在全球范围内得到了广泛的应用。以奥的斯而命名的电梯公司也开始了她的辉煌的旅程。150多年以来,她已经发展成为了世界领先的电梯公司。生活在继续,科技在发展,人类在进步,电梯同样也在进步。150年以来,电梯的样式由直式到斜式,材质由黑白到彩色,在操纵控制方面更是步步出新手柄开关操纵、按钮控制、信号控制、集选控制、人机对话等等,随着电梯的迅速发展,还出现了多台电梯并联控制,智能群控;变速式自动人行道扶梯的出现大大节省了行人的时间; 随着电力电子技术的发展,晶闸管变流装置越来越多地用于电梯系统,使电梯的拖动系统简化,性能提高。同时交流调压调速系统的研制和开发,使交流电梯的调速性能有了明显的改善。1993年,日本生产了12.5m/s的世界最高速交流变压变频调速电梯,结束了直流电梯独占高速电梯领域的历史。电梯发展到了今天,在使用需求和新技术应用方面都到了全面发展的时期。随着智能化、信息化建筑的兴起与完善,要求电梯不只是完成垂直运输的基本功能,还应以人为本,提高舒适度,特别从电梯运行的控制智能化、人性化、舒适度的角度考虑,电梯的优质服务以上的综合,采用模糊理论、遗传算法、神经网络等方法,以期实现单个梯与多个电梯控制管理的最佳模式、合理的配置与使用、远程监控与故障诊断、节能以及减少环境污染等。1.2电梯的分类根据国家标准GB/T7024-1997电梯、自动扶梯、自动人行道术语,电梯的定义为:服务于规定楼层的固定式升降设备。它具有一个桥厢,运行在至少两列垂直的或倾斜角小于15度的刚性导轨之间。桥厢尺寸与结构形式便于乘客出入或装卸货物。由于建筑物的用途不同,客、货流量也不同,故配备各种类型的电梯,因此各个国家对电梯的分类也采用不同的方法。依我国电梯行业的习惯,大致归纳如下:(一)按速度分类1、低速电梯 电梯运行的额定速度在1m/s以下,常用于10层以下的建筑物。2、快速电梯 电梯运行的额度速度在12m/s之间,常用于10层以上的建筑物内。3、高速电梯 电梯运行的额定速度在23m/s之间,常用于16层以上的建筑物。4、超高速电梯 电梯运行的额度速度在310m/s。常用于楼层高于100m的建筑物内。随着电梯速度的提高,对高、中、低速电梯的限值的划分也将作相应的提高和调整。(二)按用途分类1、乘客电梯 为运送乘客设计的电梯,要求有完善的安全设施和一定的轿内装饰。2、载货电梯 主要为运送货物而设计, 通常有人伴随的电梯。3、医用电梯 为运送病床、担架、医用车而设计的电梯,轿厢具有长而窄的特点。4、杂物电梯 供图书馆、办公楼、饭店运送图书、文件、食品等设计的电梯。5、观光电梯 轿厢壁透明,供乘客观光用的电梯。6、车辆电梯 用作装运车辆的电梯7、船舶电梯 船舶上使用的电梯。8、建筑施工电梯 建筑施工与维修用的电梯。1.3课题的提出及研究意义随着现代技术的日益发展,鳞次栉比的摩天大楼在全世界拔地而起。随着楼层的不断突破,人们已经不可能仅仅依靠人力来达到更高的楼层,所以电梯就随之诞生。随着楼层的越来越多,对电梯的调速、调速范围、稳定性、安全性、舒适性等静态和动态特性提出了更高的要求。电梯是一个复杂的控制系统,涉及机械传动、电气控制和土建等多个学科领域知识,而且要考虑可靠性、安全性、舒适感和美观等问题。而对现代电梯的设计,最重要的是具有十分把握的安全性。为了能达到电梯的安全标准,必须在电梯的制造、安装调试、售后服务和维修保养都要细心检测,认真测试检验,才能为电梯的安全性提供保障。自上世纪80年代以来,微机控制系统得到了极大的发展,现已深人到我国工农业生产的方方面面,随着电力电子技术和微电子控制技术的发展,使得以微处理器为核心的控制系统得到广泛应用。尤其是单片机的开发与应用的发展,其深度和广度越来越大。微机在电梯控制系统的应用,与传统的采用继电接触逻辑控制系统相比,具有很大优越性,一方面,它使整个系统的体积减小,可靠性提高,使用寿命延长;另一方面,它还简化了安装调试和维护维修的工作量,使整个电梯的运行成本降低。更突出的优点是微机具有灵活的算术和逻辑运算功能,具有很强的通信和可扩展功能,实现更完善的自动控制。常用的微机控制主要的有两种技术:基于PLC控制和基于单片机控制两大技术。可编程控制器,是微机技术与继电器常规控制技术相结合的产物,是在顺序控制器和微机控制器的基础上发展起来的新型控制器,是一种以微处理器为核心用作数字控制的专用计算机,它有良好的抗干扰性能,适应很多工业控制现场的恶劣环境,所以现在的电梯控制系统主要还是由可编程控制器控制。但是由于PLC的针对性较强,每一台PLC都是根据一个设备而设计的,所以价格较昂贵。而单片机价格相当便宜,也不像PLC那么有针对性,可以随着设备的更新而不断修改完善,更完美的实现设备的升级。基于单片机控制的电梯可以大大的降低成本而且运行也较可靠,采用单片机来实现老式电梯控制系统的改造无疑是最佳方案。由于单片机具有体积小、线路简单、无噪音、可靠性高、维护方便,是一种少投入、高回报的方案。同时能方便实现多台电梯的群控,并通过通讯接口与楼宇自动化系统联接,实施对电梯的监控。1.4课题研究的内容随着科技的发展,微型计算机领域的不断进步,将使得将来电梯的体积大大减小,功能不断完善,过程的控制更平稳、可靠、抗干扰性能增强、机械与电气部件被有机结合在一个设备内,把仪表、电子和计算机的功能综合在一起。因此微型计算机控制技术将会成为电梯运行中的关键技术。本次设计的主要内容是以单片机为主控制器的电梯控制系统。本来电梯系统是一个相对复杂的系统,由于能力和经验有限,所以只能实现基本的功能如:层站呼叫、自动停层、轿厢命令响应等。通过单片机输出PWM通过驱动电路然后控制电梯拖动。在此,本文以五层电梯为研究对象,选用51单机(该机芯片选为STC12C5A60S2)作为主要控制器,研究微机控制梯系统的设计方法。根据问题的提出、意义和文献综述,本课题研究的具体内容包括以下四个方面:(1)对电梯系统常用的控制方法的研究(2)电梯控制系统硬件组成及其原理(3)电梯的单片机系统软件设计(4)电梯在信号传输中遇到的问题第2章 方案论证2.1主要控制器的选择方案一 采用可编程逻辑器(PLC)作为控制中心,对整个系统的运作进行统一管理。PLC是工业领域里的单片机集成系统,可靠、稳定、安全。现实中几乎全部的电梯都用PLC作为主要控制器,其抗干扰能力强,安全系数高,程序编写相对简单。方案二采用单片机为主要控制器。采用单片机控制竖井电梯门外和电梯桥厢内的呼叫按键、楼层显示、电动机的转动、霍尔传感器的输出信号的采集、信号灯等,并对以上所有信号进行统一处理和控制。单片机技术较为成熟,自身资源也丰富。并随着单片机衍生的嵌入式系统和电力电子技术的发展,嵌入式系统的应用将会广泛的应用到工业控制的各个领域。权衡以上方案的分析,采用方案二。2.2平层定位模块的选择方案一采用红外发射对管检测电梯层数。在竖井各个楼层设置红外发射对管。当接通电源时,红外发射管连续向外发射红外线,当轿厢运动到特定位置(即楼层位置),红外接收头接收到红外线使得其输出发生变化,单片机通过红外接收头输出的变化判断电梯轿厢的位置。该传感器的响应时间为2.5ms,且体积小、功耗低、容易安装。但红外对管要在对准的情况下才能检测到红外线,对于电梯的应用不太可靠。方案二采用OH3144磁敏霍尔传感器检测电梯楼层。在桥厢安装一块刚性强力永磁铁,在竖井各个楼层设置OH3144传感器。当桥厢运动到特定的位置时,OH3144传感器检测到电梯桥厢上的磁铁使传感器输出电平的变化,单片机通过检测传感器输出的变化知道电梯桥厢的位置并记录。该传感器响应时间快,体积小,灵敏度高,而且在桥厢内不用给磁体供电,进一步降低系统功耗,提升检查的稳定性。基于上述方案的分析,选择方案二。2.3楼层显示模块方案一采用点阵式液晶显示器(LCD12864)显示各种相关数据以及信息。并行控制引用I/O多,接线复杂,串行控制多个LCD屏速度慢。所以不合适每层电梯都用。方案二采用传统的7段数码管显示电梯实时所到的楼层。方案三楼层内外采用7段数码管显示电梯实时所到的层数,桥厢内采用LCD12864液晶显示器显示预计到达的楼层、当前楼层和运行方向。以上两种方案中,选择方案三,采用数码管和LCD结合。2.4 声音提示模块方案一:采用ISD公司的2590语音芯片,该语音芯片录放时间可达90 秒。ISD2500 系列具有抗断电、音质好,使用方便等优点。方案二采用蜂鸣提示音提示。当轿箱到达所需的楼层时,蜂鸣器响,提示乘客到达了所需的楼层,另外可以作为紧急停止时的报警提示信号,其软件驱动、硬件电路调试非常简洁方便,能满足设计的要求。以上两种方案中,选择方案二。2.5电动机模块方案一采用步进电机作为本设计的执行元件。步进电机常用于点位拖动,这方面的性能十分突出。步进电机和普通电机的区别主要就在于其脉冲驱动的形式,步进电机能够直接将数字脉冲信号转化成为角位移量。不过其驱动电路复杂。方案二采用直流减速电机作为本设计的执行元件。直流减速电机,即齿轮减速电机,是在普通直流电机的基础上,加上配套齿轮减速箱。齿轮减速箱的作用是,提供较低的转速,较大的力矩。此设计中电机要带动的负载较大,所以采用方案二。2.6 电机驱动模块我们使用的是直流减速电机,比较以下两种方案实现对直流电机的驱动。方案一图2-1是一个典型的直流电机H桥驱动电路。当Q1管和Q4管导通时,电流就从电源正极经Q1从左至右流过电机,然后再经Q4回到电源负极,电机正转。当三极管Q3和Q2导通时,电流从电源正极经Q3从右至左流过电机,再经Q2回到负极,电机反转。方案二采用集成电机驱动控制芯片的半桥芯片BTS7960。在BTS7960内部集成的驱动IC使得和微控制器的接口变得非常容易,不需要和控制器进行电气隔离,并且具有逻辑电平输入电流检测、诊断斜率校正死区时间产生和过温、过压、欠压、过流及短路保护的功能。两块BTS7960能够进行连接构成H全桥。经比较,方案二的电路接口简洁且功能完善,所以采用方案二。第3章 硬件设计3.1总体方案的设计图3-1 电梯模型效果图本系统采用了STC12C5A60S2单片机作为核心控制器,利用其丰富的I/O接口与外围电路配合进行控制。采用LCD12864和7段LED数码管来实时显示电梯所在楼层和预到达的楼层,并用74HC595串入并出驱动数码管,节省I/O的使用。采用行列式矩阵键盘作为外呼内选呼叫电路。本设计的是5层电梯,故采用44矩阵键盘,键盘共16个按键,其中8个是各层楼外呼按键,5个是电梯内部的楼层选择按键,另外设有紧急停止按键,开门按键。电梯运行状态是通过两个不同颜色的LED显示的,左边黄色灯亮表示电梯在向上运行,右边蓝色灯亮表示电梯在向下运行,另设有一盏红色LED灯,灯亮表示开门状态,灯熄表示关门状态。图3-1所示的是电梯模型效果图。电梯间竖井部分由六面体ABCDEFGH构成。电梯桥厢模型T通过直流减速电机拖动,桥厢T可在电梯间竖井模型的空间内上下运动。单片机检测到外呼内选信号时,控制直流减速电机M拖动桥厢T向目标楼层运动。图3-2所示的是系统总体结构方框。系统总体由单片机最小系统模块、位置检测模块、按键输入模块、电源模块、紧急报警模块、电机驱动模块、数码管显示模块、LCD12864显示模块构成。图3-2 系统总体框架图3.2单片机最小系统单片机采用宏晶公司的STC12C5A60S2/AD/PWM系列单片机。它是STC生产的单时钟/机器周期(1T)单片机,是高速、低功耗、超强抗干扰的新一代8051单片机,专门针对电机控制和强干扰场合设计。LQFP-44封装还扩展了P4口。其特点:增强型8051CPU ,1T时钟/机械周期,指令代码完全兼容传统8051。内部集成了MAX810专用复位电路片上集成1280字节RAM通用I/O可设置成四种模式 1、准双向口输出。其灌电流可达20mA,拉电流230A。 2、强推挽输出。强上拉输出,输出电流可达20mA。 3、输入高阻。其I/O做为AD采样时使用。 4、开漏输出。其I/O做为AD采样时使用。有8路10位精度的ADC,其转换速度可达250K/S。具有双串口。外部掉电检测电路:在P4.6口有一个低压门槛比较器,5V单片机为1.32V。ISP/IAP,无需专用编程器,无需专用仿真器。3个时钟输出口,可由T0的溢出在P3.4/T0输出时钟,可由T1的溢出在P3.5/T1输出时钟,独立波特率发生器在可在P1.0口输出时钟。图3-3 单片机最小系统电路图单片机最小系统包括复位电路和时钟电路两部分,其中采用按键手动复位和上电自动复位组合,电路如图3-3所示,电容C3按键RESET构成上电复位和手动复位电路,晶振采用的是12MHz的,C1、C2为30pF瓷片电容。外部RST引脚复位就是从外部向RST管脚施加一定宽度的复位脉冲。也就是将RST引脚拉高并维持至少24个时钟加10S后,单片机进入复位状态,将RST引脚拉回低电平后,单片机结束复位状态并从用户程序区0000H开始正常工作。3.3各模块电路的设计3.3.1按键电路模块由于设计所需要的按键较多,为了节省单片机的I/O口的使用,设计中采用行列式矩阵键盘。由于设计的是五层电梯,所以采用的是44矩阵键盘。其电路如图3-4 所示,AN0AN7是接单片机的P1端口,单片机采用行和列扫描法来判别这16个按键中哪个键按下,然后可根据每个按键的功能来通过单片机控制电梯的运行。图3-4 矩阵按键电路各按钮开关功能如下:按钮开关S1: 轿厢外一楼上呼叫开关;按钮开关S8 :轿厢外二楼上呼叫开关;按钮开关S3: 轿厢外二楼下呼叫开关;按钮开关S4: 轿厢外三楼上呼叫开关;按钮开关S5: 轿厢外三楼下呼叫开关;按钮开关S6: 轿厢外四楼上呼叫开关;按钮开关S7: 轿厢外四楼下呼叫开关;按钮开关S8: 轿厢外五楼上呼叫开关;按钮开关S9: 轿厢内一楼呼叫开关; 按钮开关S10:轿厢内二楼呼叫开关;按钮开关S11:轿厢内三楼呼叫开关; 按钮开关S12:轿厢内四楼上呼叫开关;按钮开关S13:轿厢内五楼呼叫开关;按钮开关S14:桥厢门开关按键;按钮开关S15:紧急停止按键;按钮开关S16:无。3.3.2显示模块3.3.2.1竖井电梯外楼层显示电梯的基本功能是具备实时楼层检测和显示电梯当前的运行状态,所以设计每个竖井楼层外都设置了一个数码显示管,用来显示当前电梯所在的层数。其中用74HC595来驱动7段数码管,其驱动电流最大可达35mA。74HC595是一个串入并出的集成数字芯片。接线图3-5如所示,通过对四根信号线控制进行楼层显示。图3-5 74HC595接线图图3-6 74HC595引脚图74HC595是8位串入并出移位寄存器,100MHz的移位频率,硅结构的CMOS器件,兼容低电压TTL电平。数据在SCHcp的上升沿输入,在STcp的上升沿进入的存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。移位寄存器有一个串行移位输入Ds,和一个串行输出,和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE时(为低电平),存储寄存器的数据输出到总线。图3-6所示74HC595引脚图。Q1-Q8:八位并行输出端。:级联输出端。SI:串行数据输入端。MR:低点平时将移位寄存器的数据清零。SCHcp:上升沿时数据寄存器的数据移位。STcp:上升沿时移位寄存器的数据进入数据存储器,下降沿时存储寄存器数据不变。OE:高电平时禁止输出,低电平时允许输出。3.3.2.2电梯桥厢内显示本设计桥厢内显示采用LCD12864液晶显示器。LCD12864是一种图形点阵液晶显示器,内带字库,可完成图形显示,也可以显示84个汉字,与外部CPU接口可采用串行或并行方式控制。本设计采用并行数据通信模式。图3-7 是LCD12864并行接口电路图。其中15脚用于串行/并行方式控制的选择位。当15脚高电平时为并行控制,为低电平是串行控制。3脚接电位器用于调节液晶的背景灯亮度。图3-7 LCD12864接口电路图3.3.3电源模块本系统需要+12V用于电机运行,其他电路工作电压则是+5V。电源设计采用AC-DC模式的线性稳压电源。其主要包括工频电源变压器、输出整流滤波电路、控制稳压电路等组成。稳压芯片采用LM7812和LM2576-5V。AC-DC部分采用单相桥式整流滤波电路。LM7812是个线性稳压芯片,最大输出电流为1.5A,最大输入电压为19V。所以电路的性能参数的工程估算如下。变压器二次侧输出电压为U2,其整流滤波后输出为U0。U0=(1.11.2)U2U0最大为17V。所以变压器输出用16V的。图3-8所示是单相桥式整流滤波电路。在线性降压电路中应注意以下事项:1、 输入电压与输出电压之间的压差不能偏大。如果相差太大的话,会降低其转换效率,而且很容易击穿LM7812内部的晶体管,造成芯片的损坏;2、 输出的电流也不能太大。根据它出产文档显示,其最大输出电流为1.5A。如果输出电流很大,则需要安装足够大的散热片,不然容易造成高温保护或热击穿损坏芯片。3、 输入电压与输出电压之间的压差不能太大,太大的话转换效率下降。图3-8 单相桥式整流滤波电路+5V电源直接用LM2576-5V从+12V降压得到。其输出电压在8V-12V间。图3-9所示电路是LM2576-5V的典型用接线图。图3-9 LM2576-5V电路图3.3.4霍尔传感器模块OH3144霍尔开关集成电路应用霍尔效应原理,其输入为磁感应强度,输出是一个数字电压信号。其正常工作电压在4.5V24V间,负载输出电流为25mA左右。当传感器检测到磁场时,信号输出脚输出低电平。使用电路中需要对信号输出脚上拉一个4.7K10K的上拉电阻,确保其灵敏度。图3-10所示时霍尔传感器模块电路图。图3-10 霍尔传感器模块电路图在竖井各个楼层设置OH3144霍尔传感器,在桥厢内安装有磁钢,轿厢在上下运行的过程中利用单片机的中断检测OH3144信号输出变化。当轿厢运动到特定位置,竖井上的OH3144检查到磁钢,传感器输出低电平,使单片机进入中断,判断出桥厢所到达的楼层。3.3.5电机驱动模块图3-11所示的是由BTS7960搭建的直流电机驱动电路。BTS7960半桥芯片的内部集成了驱动IC使得和微控制器的接口变得非常容易,不需要和控制器进行电气隔离,并且具有逻辑电平输入电流检测、诊断斜率校正死区时间产生和过温、过压、欠压、过流及短路保护的功能。图中MOTO_EN是使能端,高电平时使能,低电平时芯片进入睡眠状态。当PWM1开启时,PWM2关闭并置低电平时,电机正转。当PWM2开启,PWM1关闭并置低电平时,电机反转。通过调节PWM的占空比可以实现对电机加速、减速过程。图中两个LED是电机正反转指示灯。图3-11 BTS7960电路图3.3.6按键指示模块图3-12所示是按键指示模块电路图。按键指示模块主要是显示每层按下按键的指示灯,所以采用高亮度的发光二级管。此外,由于一楼和五楼只能分别按上和按下,故我们在一楼和五楼都只安装一个发光二级管。而且由于单片机I/O口资源有限,通过74HC573锁存器实现电梯外部的八个发光二极管与矩阵键盘的P1口复用,通过P4.1选通,当需要对八个发光二极管进行操作时,需要先将P4.1置高进行选通,改变P1口数值,再置低对74HC573进行锁存。图3-12 按键指示灯电路图图3-13 按键指示模块电路图3.3.7紧急报警模块图3-13所示是紧急报警电路。轿厢内设紧急报警按钮,当电梯突然发生故障使轿箱内的人被困时,可以通过按下紧急停止按钮,清除所有呼叫信号,将电梯直接运行至一楼,并发出报警信号。由于这个部分要求电梯的任何运行状况下都要有效,为保险起见,我将此作为一个独立的模块。并且此按键在系统运行中占最高级别。图中Q1使用NPN型三极管,BELL接单片机P4.6口,当电梯突发故障按下紧急按钮时,单片机P4.6输出高电平驱动蜂鸣器响,并直接将桥厢下降到一楼打开门。图3-13 紧急报警模块电路图第4章 软件系统设计由于本系统采用了矩阵键盘来代替外呼内选按钮,而电梯的运行方向则是根据这些外层呼叫按键和内层选择按键来决定的,所以单片机要连续不断的扫描键盘来获取各层呼叫状态,从而控制电梯的运行方向和所需要停止的目标楼层。故矩阵键盘的扫描是本系统软件设计的重要组成部分,另外还要把键盘扫描到的各楼层的按键的信息存储起来,然后和电梯的运行状态比较,判断是否响应各层呼叫。当电梯到达目的楼层时电机停止,此时即可进、出乘客,乘客进入电梯之后可选择去哪歌楼层,然后电梯根据乘客的选择判断去哪个楼层。通过单片机控制电梯在上升过程中只响应上升呼叫,下降过程中只响应下降呼叫。软件系统中主程序开始部分主要完成系统的初始化。如中断方式的设置,定时器的设置,PWM的初始化、I/O的输入输出方式等。在中断子程序中完成楼层检测和楼层显示的刷新等。其它的如呼叫逻辑判断、呼叫指示灯的点亮与清除、转动电机的控制、延时等均由相应的子程序来完成。软件设计思想:采用模块化的分层次设计方法,将软件系统功能由多个实现单一功能的子程序实现。通过调用不同的子程序,实现了复杂功能控制。这样模块化的分层次的软件设计方法便于调试、修改、阅读。4.1电梯主程序根据系统要求,电梯的程序应满足以下要求:(1)初始化程序先判断电梯是否在一楼。如果在一楼则数码管和LCD12864显示当前楼层为“1”。如果不在一楼,运行电机向下,使桥厢达到一楼在显示当前楼层。表示电梯处在一楼,等待乘客的进入。(2)主程序主要包括:1)、判断乘客在竖井楼层的哪个楼层,其选择的是上行还是下行和当前桥厢的位置,再根据判断的情况来控制电梯,到达目标楼层时对相应的指示灯清零并完成自动开关门的动作。2)、判断乘客进入电梯桥厢后选择去哪个楼层,再根据判断情况来控制电梯运行,到达目标楼层后对相应的呼叫指示灯熄清零并完成自动开关门的动作。3)、电梯在运行和停止进出乘客的过程中都要不断的扫描键盘,从而来判断各楼层有无呼叫请求,并点亮相应的呼叫指示灯。4)、设置紧急停止按键、开关门按键,电梯在上行或者下行过程中开关门按键无效,平层后有效,紧急停止按键在电梯运行过程中始终具有最高控制权。5)、实时显示电梯所在位置及运行方向。电梯的整个软件设计由以下几部分构成:电梯逻辑判断模块、电梯运行控制模块、键盘扫描模块、楼层显示模块、指示灯操作模块、楼层检测模块、电梯紧急停止模块。图4-1所示是主程序流程图。图4-1 主程序流程图4.2电梯逻辑控制图4-2所示的是电梯运行的逻辑框图。电梯控制中,单片机扫描楼层外呼内选信号,将楼层呼叫信号与当前楼层运行状态进行比较,确定把呼叫信号插入上升队列还是下降队列,然后电梯按照运行队列进行上升、下降的控制。将呼叫信号转化为响应队列的程序模块是电梯控制的核心部分,其算法的严谨性,决定了电梯的控制性能。图4-2 电梯逻辑控制图4.3电梯运行控制图4-3所示的是电梯运行控制框图。电梯检测外呼内选按键、进行运行逻辑判断后,得到相应的上升/下降逻辑队列。在响应上升下降队列时,要对相应的指示灯、上下行状态,以及响应队列做相应的清零或置位,而实现这一功能模块的就是电梯运行函数。图4-3 电梯运行控制图4.4键盘扫描和楼层检测4.4.1键盘扫描矩阵键盘的扫描采用行列扫描法。行列扫描法是一种常用的矩阵按键识别方法。矩阵键盘的8根线接单片机的P1口,高四位接行,低四位接列。扫描开始时,首先置P1口的高四位为高电平,低四位置低电平,读取P1的状态存储到line,然后置P1口的高四位为低电平,低四位为高电平,读取P1口的状态存储到row,最后得到的键盘码为key=line+row。每个按键在接线固定之后,若按这种方法扫描的话,都有与其相应固定的键盘码。如按键1接在单片机的P1.0和P1.7口上。扫描时先在P1口上写0XF0,按键1按下时,P1口的状态变为line=0X70,再给P1写入0X0F时,按键1按下,P1口的状态变为row=0X07,所以按键1的按键码为key=line+row=0X77。其他按键码依此类推。其扫描程序如下。/* 名称 : keyscan()* 功能 : 键盘扫描函数*/unsigned char keyscan0(void) unsigned char line,row,key;/定义局部变量,用l得出低4位的值,用h得出高4位的值 P1=0x0f;/给P1赋值00001111 line=P1&0x0f; if(line!=0x0f) delay_ms(10);if(line!=0x0f) delay_ms(10); if(line!=0x0f) line=P1&0x0f;/若有键按下,得出低四位的值 P1=0xf0;/给P1赋值11110000 row=P1&0xf0; if(row!=0xf0) delay_ms(10); if(row!=0xf0) delay_ms(10); if(row!=0xf0) row=P1&0xf0;/若有键按下,得出高4位的值 key=line+row;/高4位的值与低4位的值相加 return key;4.4.2楼层检测楼层的检测也是电梯软件系统的重要组成部分。为了确保楼层检测的实时性,检测采用中断和定时中断扫描的方式。由于本设计的是五层电梯的控制系统,就有五个楼层的检测,而且楼层检测传感器输出的信号为低电平,所以设计中二、三楼采用外部中断0和1,一楼、四楼、五楼则采用定时中断扫描判断,为了保证实时性,选择每5ms扫描一次。为了防止楼层二、三一直响应中断,在检测到中断的时候立即关闭相应层检测的中断,当电梯运行到其相邻层的时候再打开。其程序代码如下。/*外部中断0 楼层2*/void EXint0() interrupt 0 storey=2; InPut595(0x5b); OutPut595(); v_Lcd12864PutString_f( 0,2, 当前层: 2 ); ONE_TIMES_FLAG=1; EX0=0; EX1=1;/*外部中断1 楼层3*/void EXint1() interrupt 2 storey=3; InPut595(0x4f); OutPut595(); v_Lcd12864PutString_f( 0,2, 当前层: 3 ); FOUR_TIMES_FLAG=1; EX1=0; EX0=1;/*定时器1中断 楼层1 4 5*/void Timer1Interrupt(void) interrupt 3 TH1 = 0x15; TL1 = 0x0A0; /判断第一层if(ONE=0&ONE_TIMES_FLAG=1) storey=1; InPut595(0x06); OutPut595(); v_Lcd12864PutString_f( 0,2, 当前层: 1 ) ; EX0=1; stopPWM0();stopPWM1(); ONE_TIMES_FLAG=0;else if(FOUR=0&FOUR_TIMES_FLAG=1) storey=4; InPut595(0x66); OutPut595(); v_Lcd12864PutString_f( 0,2, 当前层: 4 ); FIRE_TIMES_FLAG=1; EX1=1; FOUR_TIMES_FLAG=0;else if(FIRE=0&FIRE_TIMES_FLAG=1) storey=5; InPut595(0x6d); OutPut595();/ v_Lcd12864PutString_f( 0,2, 当前层: 5 ); stopPWM0();stopPWM1(); FIRE_TIMES_FLAG=0; FOUR_TIMES_FLAG=1;4.5紧急停止为了提高电梯的安全性能,设置紧急停止功能,当紧急停止键按下,所有的上升下降队列信号都清空,楼层呼叫指示信号灯熄清零,蜂鸣器开启,同时改变电梯向一楼方向运行,当电梯运行到一楼,关闭蜂鸣器,打开门让乘客出去后关闭,电梯程序进入死循环,外部呼叫按键不能对其进行任何操作,排除故障后,重新启动电梯方可正常运行。图4-4所示的是电梯紧急报警处理的流程图。图4-4 电梯紧急报警流程图其程序代码如下。void lift_stop(void) unsigned char i; for(i=0;i6;i+) up_listi=0; down_listi=0; EA=0; BELL=0;/ UP=1; DOWN=1; P1=0xff; LED_CON=1; _nop_(); LED_CON=0; Lift_Move_Down(5); MOTO_EN=0; v_Lcd12864PutString_f( 0,0, 电梯出现故障,现); v_Lcd12864PutString_f( 0,1, 在下回一楼,到达); v_Lcd12864PutString_f( 0,2, 一楼后请迅速离开); v_Lcd12864PutString_f( 0,3, 电梯。谢谢合作!); while(1) if(ONE=0) stopPWM0(); stopPWM1(); MOTO_EN=1; v_Lcd12864PutString_f( 0,0, 电梯故障 ); v_Lcd12864PutString_f( 0,1, 注意安全 ); BELL=0; 4.6程序中位操作问题的分析由于系统显示、控制信号较多,管脚多处复用,在程序里的几个地方需要对单片机的某一个管脚进行位操作,并且不能改变同一端口其他管脚的值,下面进行分别分析。楼层显示部分:楼层数码管显示采用74HC595驱动,所连接的单片机的管脚为P0.0P0.3,剩下P0.4P0.7四个管脚连接运行指示灯用,所以需要对P0口前四位进行位操作显示楼层信息,先将74HC595的驱动程序封装为子程序,子程序中对P0.0P0.4管脚进行相应的位操作。在楼层显示中调中子程序即可。按键指示灯部分:电梯外部按键指示灯是利用74HC573锁存后与矩阵键盘共同连接至单片机P1口,在扫描键盘时需要用74HC573对八个指示灯的数据进行锁存,而对按键指示灯进行操作时,要求对任意一个指示灯进行点亮、熄灭操作,而且不能改变其他位的状态。这就需要对八个指示灯当前状态进行储存,并将位赋值转化为端口赋值的方式。程序中定义变量temp用以保存当前P1口值,当指示灯的某一位需要熄灭时,将此位与temp进行“或”操作形成新的temp赋给P1口,当指示灯某一位需要点亮时,将除了此位其他位的高与temp进行“与”操作形成新的temp值赋给P1口,从而完成位操作。第5章 系统仿真与测试由于本设计的基于单片机的电梯控制系统包括软件、硬件两个部分, 仿真时先对软件进行编译,然后再将已编译无误的软件结合硬件在一起进行仿真

温馨提示

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

评论

0/150

提交评论