资源预览内容
第1页 / 共24页
第2页 / 共24页
第3页 / 共24页
第4页 / 共24页
第5页 / 共24页
第6页 / 共24页
第7页 / 共24页
第8页 / 共24页
第9页 / 共24页
第10页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
基于单片机原理的电梯自动控制系统 摘要:本文介绍了基于单片机的电梯控制系统,硬件部分主要由单片机最小系统模块、电梯内外电路按键矩阵模拟检测模块、电梯外请求发光管显示模块、楼层显示数码管模块、电梯上下行及开关门模拟显示模块等5部分组成。该系统采用单片机(AT89S51)作为控制核心,内外招使用按键按下与否而引起的电平的改变,作为用户请求信息发送到单片机,单片机控制电动机转动,单片机根据楼层检测结果控制电机停在目标楼层。软件部分使用汇编语言,利用查询方式来检测用户请求的按键信息,根据电梯运行到相应楼层时,模拟按键引起电平变化,送到单片机计数来确定楼层数,并送到数码管进行显示。硬件设计简单可靠,结合软件,基本实现了六层电梯运行的模拟。关键词:AT89S51、电梯控制、单片机1 引言随着现代高科技的发展,住房和办公用楼都已经逐渐向高层发展。电梯是高层宾馆、商店、住宅、多层仓库等高层建筑不可缺少的垂直方向的交通运输工具。由于传统的电梯运行逻辑控制系统采用的是继电器逻辑控制线路。采用这种控制线路,存在易出故障、维护不便、运行寿命较短、占用空间大等缺点。从技术发展来看,这种系统将逐渐被淘汰。而单片机价格相当便宜,由单片机设计的控制系统可以随着设备的更新而不断修改完善,更完美的实现设备的升级。2 电梯控制系统原理电梯应用中大多采用交流变频电机拖动原理,其厢体由一条曳引钢缆连接,由安装在顶层的曳引轮和曳引电机拖动,电机的功率随着曳引重量的不同大小不等。其主要的拖动及控制系统有:a) 外呼内选系统,外部呼叫信号和指示以及厢体内选层和指示系统;b) 平层换速系统,电梯快速到达指定楼层之前切换为慢速并到达平层位置停车;c) 厢体状态指示系统,随时显示厢体所在位置;d) 开关门控制系统,平层开门,关门行车;e) 安全保护系统,含有上下限位、消防、满载、门电锁等功能;电梯运行基本过程是:由外部呼叫信号给出呼叫,控制系统判断厢体目前所处位置并与呼叫楼层进行对照,同方向还是反方向。若反方向,则改变方向到呼叫层,如同方向,直接运行到呼叫层。在方向上,以同方向呼叫优先,且具有最远方向接车功能。厢体的运动方式是:启动慢速快速,到达指定楼层之前则是快速慢速平层停车。在所有呼叫中,消防优先级最高。一旦消防呼叫,电梯就近平层,然后直接返回基站,不再响应任何外呼叫信号,只响应内选操作,以保证消防工作的使用。3 总体设计方案3.1 设计思路3.1.1 方案比较如果每个选层按钮都采用独立的按键设置,可以很大程度上简化扫描按键程序,采集信号也容易得多,但是由于单片机接口有限,模拟电梯自动控制系统所需按键较多,如此会有接口不足的问题,所以本设计采用了44矩阵按键实现电梯内部六个选层按钮和电梯外十个上下行按钮,正好十六个按钮。出于同样问题,显示楼层电路采用74LS164驱动数码管从串口输出而没有采用驱动实现简单但需接口较多的74LS245芯片。为了更接近实际的电梯控制系统,设计中还应该添加电梯外上下行请求显示,可用十个发光二极管表示请求按键是否按下,有则亮,无则暗。考虑单片机的驱动能力有限,必须得使用驱动单元来驱动发光二极管,可以采用三极管驱动电路,但是由于要驱动的发光管较多,采用74LS245芯片作为驱动比较显示且硬件电路又美观整洁。软件方面至于采用中断方式还是采用查询的方式来检测用户的请求信息,本人习惯使用查询方式,所以就采用了查询的方式。要想准确地采集按键请求状态,就必须时时刻刻调用键盘矩阵扫描程序,也就增加了软件编程的难度。3.1.2 方案确立本设计采用AT89S51单片机作为核心,配以适当接口作为输入输出通道。采用44按键矩阵开关电路作为外呼内选呼叫控制。实际电梯控制系统每层装有一个传感器,从而判断车厢所在位置,本模型由六个独立按键作为楼层到达信号传输给单片机,而后通过74LS164从串口驱动数码管显示楼层数。当电梯到达所选层,电梯开门延时等待进人并选层,然后延时关门执行请求,若无请求则停在本层等待请求。软件部分使用汇编语言,利用查询方式来检测用户请求的按键信息,采用74LS245芯片驱动发光二极管。3.2 设计方框图89S51复位电路内部选层电路电机控制电路楼层感应电路外部呼叫电路厢门开关电路外部呼叫显示时钟电路楼层显示电路74LS24574LS164延时电路本设计方框图如图1所示,电路由复位电路复位后,电梯初始位置在一楼,通过软件设置显示电路显示1, AT89S51将楼层感应电路得来的数据通过74LS164驱动显示电路显示出来;如有用户在厢外呼叫,经外呼叫电路把信号输入单片机,由楼层感应电路判断电梯为上升还是下降图1 设计电路总框图状态,若方向一致则打开电梯门,用户进入后关门执行操作。用户通过选层电路把目的层告知AT89S51,控制电机把用户送至目的层,而后系统等待下次呼叫。系统的正常工作由时钟电路来保证,显示电路实时显示电梯所在的楼层位置。4 电梯控制系统单元电路的设计系统硬件电路总图见附录一。4.1 单片机最小系统单片机最小系统包括复位电路和时钟电路。具体电路如图2所示。复位电路虽然简单,但其作用非常重要。一个单片机系统能否正常运行,首先要检查是否能复位成功。初步检查可用于示波器探头监视RST引脚,按下复位键,观察是否有足够幅度的波形输出(瞬时的),还可以通过改变复位电路阻容值进行试验。本复位电路采用上电自动复位和手动复位组合。上电自动复位是在加电瞬间电容通过充电来实现的,在通电瞬间,电容C3通过R1K电阻充电,RST端出现正脉冲,用以复位。只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就完成了系统的复位初始化。手动复位是通过按下S111后,通过电阻RR直接给服务端一个高电平使之复位。编程初始化设置数码管显示为1,并且等待楼层模拟传感器读取数据。89S51芯片内部有一个高增益反相放大器,用以构成振荡器。反相放大器的输入端为XTAL1,输出端为XTAL2分别为AT89S51,分别为芯片的19和18脚,之间跨接12MHz石英晶振和两个对称30pF的电容构成稳定的自激振荡器,也就是时钟振荡电路,从而保证系统正常工作。图2 单片机最小系统电路4.2 信号输入电路4.2.1 内外请求输入电路现以呼叫信号的输入为例,来说明信号输入及单片机识别原理。如图3所示,采用P0口外接上拉电阻的并行输入形式,来输入外呼叫信号,本电路采用44矩阵键盘,行扫描法识别键值的原理,具体原理如下:a) 判断键盘中有无键按下 将全部行线P0.0-P0.3置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。若所有列线均为高电平,则键盘中无键按下。 b) 判断闭合键所在的位置 在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。SOO-S05为一到六楼的电梯内部呼叫请求按键,S06-S15为电梯外部请求按键。S00-S15的扫描键值分别为01H0FFH。图3 内外请求呼叫电路4.2.2 厢体位置模拟输入电路由于没有电梯控制硬件模型,只能用按键来模拟电梯到达位置的触发信号。本电路采用独立式按键非编码键盘接口查询方式。当任何一个键按下时,与之相连的输入数据线即被清0(低电平),而平时该线为1(高电平)。要判断是否有键按下,用单片机的位处理指令十分方便。这种键盘结构的优点是电路简单;缺点是当键数较多时,要占用较多的I/O口。查询方式键盘的处理程序比较简单。本处理程序中没有使用散转指令,并且省略了软件去抖动措施,只包括键查询、键功能程序转移。S1-S6分别为一楼到六楼的厢体位置到达触发信号使能端。当S1按下时,表明厢体已经到达一楼,并使用键功能程序转移到显示电路,发出数字1的字型码,使数码管显示为1。其余按键功能均如此设置,注意模拟程序时不能越键按下,要依次顺序按下进行模拟测试。具体电路如图4所示:图4 厢体位置模拟电路4.3 信号模拟输出电路4.3.1 楼层显示电路在实际中,厢外六个显示和厢内一个共七个数码管显示厢体位置楼层数,由于显示的数据是一致的,所以本设计中只用一个LED数码管显示代替。由于AT89S51的串行口RXD和TXD为一个全双工串行通信口,工作在方式0下可作同步移位寄存器,其数据由RXD(P3.0)串行输出或输入,而同步移位时钟由TXD(P3.1)端串行输出,在同步时钟作用下,在不需要使用串行通信的场合,利用串行口加外围芯片74LS164就可构成一个或多个串并口输入/输出电路,用于串-并转换、并-串转换、键盘驱动或显示器LED驱动。本电路中应用了其串-并转换来实现了电梯所在位置的实时显示。数据显示采用共阴数码管,其共阴端接低电平。具体电路如下图5所示:图5 数码显示楼层电路74LS164是串行输入、并行输出移位寄存器,并带有清零端,其引脚功能如下:a) Q0Q7:并行输出端,分别接LED显示各引脚。b) A、B:串行输入端,并联接入RXD端。c) CLR:清除端,零电平时,使74HC164输出清零,因此本设计中接高电平。d) CLK:时钟脉冲输入端,在脉冲的上升沿实现移位。CLK=0、CLK=1时,74LS164保持原来的数据状态,接入TXD端。4.3.2 电梯外部请求显示电路电路如图6所示,本电路采用74LS245加限流电阻驱动发光管,高电平有效,只要给单片机的P2口任意位置1,相应的发光管就会亮。10个发光管从低到高依次为一楼到六楼的上下行请求显示。由于P2口只有8位,本电路又加入了两个采用电源驱动的低电平有效的发光管,分别接在P3.5和P3.6口。每个发光管显示都是独立的,只要有外部请求按键按下,程序会用置位或清零指令就可以随意改变发光管的显示状态使相应的发光管点亮。需要注意的是74LS245与发光管之间的限流电阻不能过大,更不能省略,一般选在200到300欧之间为宜。74LS245从传到,要使E非端与DIR端接低电平才能正常工作,所一本电路将其直接接地。图6 外部请求显示电路4.3.3 电梯方向及开关门电路本电路采用发光二极管接上拉电阻由电源直接驱动的方式,低电平有效。DG为关门绿色灯,DK为开门红色灯,Ddwon为电梯下行绿色灯,Dup为电梯上行红色灯。要注意的是电梯在运行期间,不管上行还是下行,开关门信号灯必须为绿灯亮。程序控制十分简单,只需要对相应的接口清零,所对应的发光管就会点亮,表示正在执行相应的功能。具体电路如图7所示:图7 电机控制电路5 系统软件设计具体程序见附录二。5.1 初始化程序由于本设计用到了定时器和串口输出,所以要先用SETB EA指令开总中断,用MOV P2,#00H指令将P2口置为低电平(高电平有效),然后调用数码管显示子程序LCALL XIANSHI显示为1(初始状态电梯在一楼),转入处理一楼子程序,进入程序执行状态。5.2 各楼层子程序若电梯在一楼或六楼,直接调用键盘矩阵扫描子程序KEY,判断是否有键按下,没键按下则继续扫描;如有键按下则判断是那个键按下并输出键值,转入键值识别子程序再合并电梯内外的请求,驱动电梯到达请求层。在电梯运行期间,程序仍然继续调用键盘矩阵扫描子程序KEY和电梯位置子程序ASK1,以便随时响应适当的请求。若电梯在其它楼层,先判断位地址28H中的数据是0还是1,0为上升状态,1为
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号