版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、-基于单片机控制的电梯控制器机电113 硕1 引言随着现代高科技的开展,住房和办公用楼都已经逐渐向高层开展。电梯是高层宾馆、商店、住宅、多层仓库等高层建筑不可缺少的垂直方向的交通运输工具。1889年美国奥梯斯升降机公司推出的世界上第一部以电动机为动力的升降机,同年在纽约市马累特大厦安装成功。随着建筑物规模越来越大,楼层也越来越高,对电梯的调速精度、调速围等静态和动态特性都提出了更高的要求。由于传统的电梯运行逻辑控制系统采用的是继电器逻辑控制线路。采用这种控制线路,存在易出故障、维护不便、运行寿命较短、占用空间大等缺点。而由单片机设计的控制系统可以随着设备的更新而不断修改完善,更完美的实现设备的
2、升级,且有价格廉价,电路简单,出现故障容易维护等优点。2 总体设计方案电梯控制系统由外部呼叫,部呼叫电机局部组成。电梯在各楼层的定位本应采用行程开关或者传感器,由于条件限制,采用延时控制。相邻楼层间升降时间设为3秒。2.1 设计思路本设计是六层电梯的单片机控制系统。在电梯停靠的每一层都有上下呼叫按钮六楼只有向下呼叫按钮,一楼只有向上呼叫按钮,需要电梯的乘客只需按一下呼叫按钮,然后等待电梯,进入电梯后电梯有六个楼层的部呼叫按钮,乘客要到哪一层只需按下其按钮,轿厢有一个由数码管组成的显示屏,它用来显示轿厢的楼层,在每一层厅站的门外有两个发光二极管用来显示轿厢此刻的上下行。2.2 设计方框图楼层电梯
3、呼叫按键电梯内部呼叫按键楼层显示数码管电机控制电路单片机图1 设计方框图3电梯控制系统原理分析3.1硬件系统实现 硬件由单片机最小系统、电梯外呼叫电路、显示电路、电机控制电路等组成。3.1.1AT89C51简介本设计主要采用AT89S51芯片,如图2所示。AT89S51是一个低功耗,高性能CMOS 8位单片机,片含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚构造,芯片集成了通用8位中央处理器和ISP Flash存储单元,
4、功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89S51具有如下特点:40个引脚,4k Bytes Flash片程序存储器,128 bytes的随机存取数据存储器RAM,32个外部双向输入/输出I/O口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗WDT电路,片时钟振荡器。此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作。掉电模式冻结振荡器而保存RAM的数据,停顿芯片其它功能直至外中断激活或硬件复位。同时
5、该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。图2 AT89C513.1.2电梯部呼叫电路电梯电路如图3所示,六个目标楼层选择按键K1、K2、K3、K4、K5、K6与单片机P0口的P0.0、P0.1、P0.2、P0.3、P0.4、P0.5连接P0口作为输出端驱动外部电路时须外界上拉电阻。人进入轿厢按下要去的楼层对应的按键,就会控制电机转动,到达相应楼层。假设按下的外部呼叫按键为上升的,则在轿厢按比该楼层低的按键,电梯不会响应;反之亦然。图3 电梯部呼叫电路3.1.3 电梯外部呼叫电路 电梯外部呼叫电路如图4所示,按键UP1、UP2、DOWN2、UP3、DOWN3
6、、UP4、DOWN4、UP5、DOWN5、DOWN6接单片机的P2口和P1.0、P1.1。假设按下上升键,则电梯在上升过程中不响应下降键;反之亦然。图4 电梯外部呼叫电路3.1.4 显示楼层电路 显示电路的作用是实时显示电梯所在楼层,用一个八段数码管来实现。电路如图5所示。图5 显示楼层电路3.1.5 电机控制电路 电机采用普通直流电机,直流电机具有优良的调速特性,调速平滑、方便,调整围广;过载能力强,能承受频繁的冲击负载,可实现频繁的无极快速启动、制动和反转;能满足生产自动化系统各种不同的特殊运行要求。用电机驱动芯片L298来驱动。电机控制电路用来控制电机的正反转,当按下上升键时,电机正转,
7、按下下降键时,电机反转。电路如图6所示。图6 电机控制电路3.2 软件系统的实现调用选择当前要去的停留3s电梯未运行或虽运行但还没停顿电梯已到目的层.是否是否启动电梯显示在一楼图7 主程序流程图电梯改为上升电梯改为下降电梯到达最顶层电梯到达最底层电梯在下降当前楼层=目的楼层继续下行查找下一个要去的楼层假设无下行需求,则反向查询向上查找下一个要去的楼层假设无按键需求则停顿当前楼层=目的楼层延时等待3s开场是24是24是24是24是24延时等待3s否否否否图8 选择当前要去的楼层子程序流程图4 总电路工作原理分析电路通电,显示器显示1,当按下相应的外部呼叫按键时,电梯运行到目的楼层,显示器实时显示
8、所在楼层。当人进入轿箱,按下要去的楼层对应的按键,电梯就会运行到相应位置。电梯上升途中只响应上升呼叫,下降途中只响应下降呼叫,任何反方向呼叫均无效。两相邻楼层之间电机运行时间为3秒。5 总结与体会 这次单片机实习已经完毕,我们学到了很多东西。查资料对于学习是很重要的,又快又好的查到想要的资料,可以提高工作效率。我们设计的电梯自动控制用到了电机,实物出来时,没能成功控制电机正反转,让我们知道了理论与实际的差距,也意识到理论与实际相结合的重要性。在写程序时需要极大的耐心,一点一点的改正,到达想要的效果。附录1 总体电路原理附录2 PCB图附录3 源程序sbit k1=P00;sbit k2=P01
9、;sbit k3=P02;sbit k4=P03;sbit k5=P04;sbit k6=P05;sbit km=P06;sbit gm=P07;sbit up1=P20;sbit up2=P21;sbit down2=P22;sbit up3=P23;sbit down3=P24;sbit up4=P25;sbit down4=P26;sbit up5=P27;sbit down5=P10;sbit down6=P11;sbit d11=P12;sbit d12=P13;sbit d21=P14;sbit d22=P15;sbit pwm1=P16;sbit pwm2=P17;sbit Le
10、dUp=P37;sbit LedDown=P36;*include<reg51.h>*include"电梯.h"void DianTiKey(); *define uchar unsigned charchar KeyValueOld; /部按键上次值char KeyValueOOld;/外部按键上次值char NowFloor;/当前所在楼层char KeyValue;/电梯部按键暂存值char KeyValueO;/电梯外部按键暂存值char GoFloor5;/要去楼层暂存GoFloor1=1 2楼在呼叫上升 GoFloor1=2 2楼在呼叫下降char
11、t;/电梯 运行/停顿标/上升/下降 志位 t=0电梯没有运行 t=11电梯在上升 t=10电梯下降uchar code play=0*ff,0*d7,0*32,0*92,0*d4,0*98,0*18;/串口显示字型码unsigned int TimeValue;/ 定时器计数char Num;void delay(unsigned int a)/unsigned int i;TH0=(65535-10000)/256;TL0=(65535-10000)%256;TimeValue=0;TR0=1;while(TimeValue<a)DianTiKey(); /多人电梯功能添加局部TR0
12、=0;void ShangSheng()/驱动电机上升函数int i;t=11;LedUp=0;LedDown=1;for(i=0;i<10;i+)d11=1,d12=0,d21=0,d22=0;delay(5);d11=1,d12=1,d21=0,d22=0;delay(5);d11=0,d12=1,d21=0,d22=0;delay(5);d11=0,d12=1,d21=1,d22=0;delay(5);d11=0,d12=0,d21=1,d22=0;delay(5);d11=0,d12=0,d21=1,d22=1;delay(5);d11=0,d12=0,d21=0,d22=1;d
13、elay(5);d11=1,d12=0,d21=0,d22=1;delay(5);t=0;/d11=1,d12=1,d21=1,d22=1;LedDown=1;LedUp=1;void *iaJiang()/驱动电机下降函数 int i;t=10;LedDown=0;LedUp=1;for(i=0;i<10;i+)d11=0,d12=0,d21=0,d22=1;delay(5);d11=0,d12=0,d21=1,d22=1;delay(5);d11=0,d12=0,d21=1,d22=0;delay(5);d11=0,d12=1,d21=1,d22=0;delay(5);d11=0,d
14、12=1,d21=0,d22=0;delay(5);d11=1,d12=1,d21=0,d22=0;delay(5);d11=1,d12=0,d21=0,d22=0;delay(5);d11=1,d12=0,d21=0,d22=1;delay(5);t=0;/d11=1,d12=1,d21=1,d22=1;LedDown=1;LedUp=1;void Go() /电梯部按键响应程序char temp;if(KeyValue!=KeyValueOld)KeyValueOld=KeyValue;temp=NowFloor-KeyValue;if(t=0)if(temp>0) /电梯执行上升
15、while(temp>0)ShangSheng();Num+;if(GoFloorNum!=0)if(GoFloorNum&0*01)+(GoFloorNum&0*04)>0);temp-;SBUF=play-NowFloor;while(!TI);TI=0;NowFloor=KeyValue;if(temp<0) /电梯执行下降while(temp<0)*iaJiang();temp+;SBUF=play+NowFloor;while(!TI);TI=0;NowFloor=KeyValue; /此电梯功能只适合一个人乘车 多人程序还没有实现 /*els
16、e /多人乘坐电梯处理局部KeyValue=GoFloori;temp=NowFloor-KeyValue;if(tt=11)if(temp>0)while(temp>0)ShangSheng();temp-NowFloor=KeyValue;else if(t=10)if(temp<0) /电梯执行下降while(temp<0)*iaJiang();temp+NowFloor=KeyValue; */void OutKey() /外部按键响应程序char temp;if(KeyValueO!=KeyValueOOld)/按键是否按下KeyValueOOld=KeyVa
17、lueO;temp=NowFloor-KeyValueO;if(t=0) if(temp>0) /电梯执行上升while(temp>0)ShangSheng();temp-;SBUF=play-NowFloor;while(!TI);TI=0;NowFloor=KeyValueO;if(temp<0) /电梯执行下降while(temp<0)*iaJiang();temp+;SBUF=play+NowFloor;while(!TI);TI=0;NowFloor=KeyValueO; void DianTiKey() /电梯按键扫描函数switch(P0)case 0*0
18、1:KeyValue=1;GoFloor0|=4;break;case 0*02:KeyValue=2;GoFloor1|=4;break;case 0*04:KeyValue=3;GoFloor2|=4;break;case 0*08:KeyValue=4;GoFloor3|=4;break;case 0*10:KeyValue=5;GoFloor4|=4;break;case 0*20:KeyValue=6;GoFloor5|=4;break;case 0*40:break;case 0*80:break;if(t=0) switch(P2) /上升按键扫描case 0*01:GoFloo
19、r0|=1;KeyValueO=1;break;/1楼呼叫上升case 0*02:GoFloor1|=1;KeyValueO=2;break;/2楼呼叫上升case 0*04:GoFloor2|=1;KeyValueO=3;break;/3楼呼叫上升case 0*08:GoFloor3|=1;KeyValueO=4;break;/4楼呼叫上升case 0*10:GoFloor4|=1;KeyValueO=5;break;/5楼呼叫上升case 0*20:GoFloor0|=2;KeyValueO=2;break;/2楼呼叫下降case 0*40:GoFloor1|=2;KeyValueO=3;
20、break;/3楼呼叫下降case 0*80:GoFloor2|=2;KeyValueO=4;break;/4楼呼叫下降 if(!down6)GoFloor4|=2; /6楼呼叫下降KeyValueO=6;if(!down5) /5楼呼叫下降GoFloor3|=2; KeyValueO=5;else if(t=11) /电梯在上升时响应上升呼叫switch(P2) /上升按键扫描case 0*01:GoFloor0|=1;KeyValueO=1;break;/1楼呼叫上升case 0*02:GoFloor1|=1;KeyValueO=2;break;/2楼呼叫上升case 0*04:GoFloor2|=1;KeyValueO=3;break;/3楼呼叫
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校园安全知识普及:平安校园你我他小学主题班会课件
- 2026仰韶酒厂面试题及答案
- 2026营商投资面试题及答案
- 2026郑州附小面试题目及答案
- 2026党建统领面试题及答案
- 安全从我做起人人都是安全卫士一年级主题班会课件
- 2026公司创意面试题目及答案
- 2026邯郸外贸面试题及答案
- 对项目验收完成的事宜函3篇
- 小学主题班会课件:探索诚信的力量培育道德基石
- 20kV及以下配电网工程不停电作业补充定额
- 2026年检察院书记员速录技能考试试题及答案
- 员工工资月度分析
- 鲜风生活商品陈列技巧
- 《连栋温室节能设计规范》
- 2026年中电金信数字科技集团股份有限公司招聘备考题库及答案详解参考
- 2026年北京医院备考题库中心招聘备考题库及一套完整答案详解
- 2026年安全培训考试题及答案
- 2025年阿坝州直属机关遴选公务员考试真题汇编附答案解析
- 2026年ESG分析培训课件
- 慢性下腰痛核心肌群核心-呼吸-盆底协同方案
评论
0/150
提交评论