单片机电梯控制系统【基于AT89C52 单片机的电梯控制系统设计】

徐正坤 重庆三峡学院 重庆市万州区 404155

【文章摘要】

本文介绍一种基于AT89C52 单片机的电梯控制系统的设计。具有电梯控制系统所需的一些基本功能,硬件设计简单可靠,结合软件,实现了五层电梯运行的模拟仿真。

【关键词】

AT89C52; 电梯控制系统

电梯是宾馆、商场、住宅、多层仓库等高层建筑不可缺少的垂直方向的交通运输工具。电梯已不仅是一种生产环节中的重要设备, 更是一种人们频繁乘用的交通运输设备。由于传统的电梯运行逻辑控制系统采用的是继电器逻辑控制线路,存在易出故障、维护不便、运行寿命较短、占用空间大等缺点。基于单片机的电梯控制势必成为电梯今后发展的重要方向,最优化的程序设计以及更廉价的费用对促进电梯行业的发展用着重要的作用。

1 系统的总体设计

本设计以五层电梯为对象,选用AT89C52 单片机作为其控制器,由I/O 输出电压,通过驱动电路实现电梯拖动、层站呼叫、自动停层、轿厢命令响应等功能。

硬件系统具备相关按键、显示单元等。本文未涉及轿厢等机械部分。设计采用按键矩阵开关电路作为外呼内选呼叫控制;显示单元楼层电路采用数码管静态显示方式。软件系统采用中断方式来检测用户的请求信息;采用延时函数对电梯运行楼层数进行控制,当电梯到达所选层,电梯开门延时等待进人并选层,然后延时关门执行请求,若无请求则停在本层等待请求。电梯楼层位置是由延时电路控制的,延时电路包括3 秒延时和5 秒延时, 每层之间通过5 秒延时控制,3 秒延时是控制电梯的开门时间,3 秒延时后电梯关门继续运行。

电梯状态是通过发光二极管显示的, 上行灯亮表示电梯在向上运行,下行灯亮表示电梯在向下运行。键盘电路采用4×4 键盘矩阵共16 个按键分,其中8 个按键是各层楼外呼按键,5 个按键是电梯内部的选择键。

2 硬件设计

系统由单片机最小化系统、键盘模块、楼层显示模块、目的楼层显示模块组成。

最小系统包括:单片机、晶振电路、复位电路等。楼层显示模块采用LCD 数码管显示电梯所到达的楼层数。数码管采用共阴极由单片机的P2 口控制。目的楼层显示模块采用八个发光二极管显示电梯的目的楼层,置于电梯内部,分别由单片机的P1.3 到P1.7 控制,当对应的目标按键被按下时,向相应的控制口输入低电平,点亮二极管,其中亮的表示有人想前往该层楼,当电梯到达该楼层时,对应的二极管熄灭。每个二极管均用1K 的电阻进行限流。考虑到在高层建筑的应用,为了减少I/O 口的占用,采用矩阵键盘,与AT89C52 的P1 口相连,提供按键输入。

3 软件设计

3.1 软件系统整体设计

本设计采用键盘矩阵来代替外呼内选按钮,而电梯的运行方向是根据这些呼叫按键和选择按键来决定的,故需不断的扫描键盘来获取各层呼叫状态。另外还要把键盘扫描到的各层的按键信息存储起来,然后和电梯的运行状态比较,判断是否响应各层呼叫(电梯只响应同方向呼叫),最后就是楼层显示部分和警报部分。

包括:初始化程序使数码管显示“1” 表示电梯处在一楼;判断乘客进入电梯后选择去哪一层,根据判断情况来控制电梯运行;电梯在运行过程中要不断的扫描键盘,从而来判断各楼层有无呼叫请求;电梯在运行过程中只响应同方向的呼叫请求;实时显示电梯所在位置及运行状态;开关门有一定的延时来保证乘客走出/ 进入电梯。

3.2 分析键值设计

单片机在读取到键值后,分析该键值来自于哪一层楼的哪个按键,然后把该按键对应的储存单位置1,同时点亮相应的二极管。按键是按照行与列均匀分布的, 特定的行与列处的每个按键,均对应有特定的键值。在返回键值后,只需用一个switch-case 语句对相应存储数据进行置1 即可。

在程序中,定义了shang[]、xia[]、nei[] 三个数组对相应的按键状况进行存储。在程序开始之前,设置了状态变量,它们分别对应于各个按键,当某个按键按下时,其对应的状态变量就会被置位。这样做的好处是使电梯在执行判决操作时,有据可循。因为判决函数就是依靠当前都有哪些键按下以及电梯此刻所处的上下行状态来判断下一个需要停留的目标楼层的。

分析完键值的来源,再点亮相应的二极管。由于二极管是由单片机控制且是低电平使发光二极管点亮,故要点亮哪个二极管,只需在单片机向相应端口输入0 即可。当电梯到达该层后,我们再向该层对应的端口输入1 即可熄灭该二极管。

3.3 运行方向的判决

在电梯经过一个楼层时,自动调用该函数,它的作用基于高效率、人性化的基础上,合理智能的对电梯的运行进行调度,结合实际情况,最终得出电梯下一个目标停留楼层。简单地说,若电梯处于上行状态,则在该过程中响应不同顾客的优先级(或者电梯响应的先后顺序)为:高层呼叫上行顾客> 高层呼叫下行顾客> 底层呼叫下行顾客> 底层呼叫上行顾客。

4 功能测试

4.1 设计方向优先测试

电梯按某方向运行时,优先响应该运行方向的按钮;测试初始时,轿箱位于一楼,按下二楼,三楼的上下按呼叫和四楼的向下呼叫。按键顺序随意。测试结论:系统在向上运行时候,优先相应各楼层的向上呼叫信号,不响应向下的呼叫信号,向下运行时相反,符合设计要求。

4.2 距离优先测试

同一方向有多个按钮呼叫时,优先响应最近的楼层。测试初始时,电梯位于任一层,如二楼。此时三楼和四楼五楼分别向上呼叫。测试结论:电梯具有距离优先响应的功能,当多层同方向呼叫,首先响应距离当前楼层较近的呼叫,符合系统设计要求。目的按钮呼叫时指示灯显示正常,电梯响应该按钮的呼叫后,其指示灯应自动熄灭。

4.3 综合测试

测试条件:电梯位于1 楼,进入三人,其中一人要到3 楼,另两人到4 楼。电梯运行后,3 楼和4 楼有人向上呼叫,3 楼有人向下呼叫到1 楼。测试结论:系统具有方向优先、距离优先的功能,实现了电梯合理调度,完成设计目标。

5 总结与展望

设计的电梯系统具有高效、省时、人性化的特点,运行结果完美无误,通过简单修改程序可实现更多层的电梯系统调度。本系统可增加人性化的按键语音服务功能、遥控或感应操作功能和多台电梯联动运行控制功能。

不足之处,设计只是单个电梯在运行,如果某些大楼载客量过多时,当然无法满足需求,可以设计出两个或多个轿厢的电梯,便可以满足更多要求。

【参考文献】

[1] 于殿泓,王新年.单片机原理与程序设计实验教程[M].西安:西安电子科技大学出版社,2007,8.

[2]. 单片机原理及接口技术[M]. 北京:北京航空航天出版社, 2006:41-47

[3] 万长建, 张莉. 用单片机实现高层电梯运行自动控制[J]. 实验技术与管理,2007,24(5):256 ~ 261

[4] 张娅莉, 曲国峰. 单片机在电梯自动控制中的应用[J].《工业控制计算机》,2003,16(2):135 ~ 138004