电梯控制系统的设计.docx
《电梯控制系统的设计.docx》由会员分享,可在线阅读,更多相关《电梯控制系统的设计.docx(20页珍藏版)》请在冰豆网上搜索。
![电梯控制系统的设计.docx](https://file1.bdocx.com/fileroot1/2023-1/23/2d72ee04-b17e-4123-9f80-7dde2375bcb2/2d72ee04-b17e-4123-9f80-7dde2375bcb21.gif)
电梯控制系统的设计
目录
摘要
Abstract
第1章前言………………………………………………………………………1
第2章系统硬件设计……………………………………………………………2
2.1硬件的基本组成……………………………………………………………2
2.2AT89C51单片机芯片的介绍………………………………………………3
2.2.1单片机概述……………………………………………………………3
2.2.2AT89C51单片机简介…………………………………………………3
2.3系统硬件设计………………………………………………………………10
2.3.1各楼层电梯外电路的设计……………………………………………10
2.3.2电梯内电路的设计……………………………………………………11
2.3.3控制台电路的设计……………………………………………………11
2.3.4单片机电路的设计……………………………………………………11
第3章系统软件设计……………………………………………………………13
3.1控制方案的设计……………………………………………………………13
3.2主程序的设计………………………………………………………………13
3.3定时器T0中断程序的设计…………………………………………………13
3.4定时器T1中断程序的设计…………………………………………………14
第4章系统调试…………………………………………………………………18
4.1设置SoftICE模式…………………………………………………………18
4.2设置仿真环境………………………………………………………………18
4.3程序调试……………………………………………………………………18
第5章结束语……………………………………………………………………19
答谢辞
参考文献
摘要
本文所讨论的是基于AT89C51单片机的四层楼电梯控制系统,它能控制电梯从一楼能到达二、三、四楼,从二楼能到达一、三、四楼,从三楼能到达一、二、四楼,从四楼能到达一、二、三楼。
各楼层的定位采用延时控制,相邻楼层间升降设定为2S。
用单片机AT89C51来控制,软件程序由汇编语言编写。
中国最早的一座电梯出现在上海,是由美国奥的斯公司于1901年安装的。
而今,我国电梯业已进入了高速发展的时期。
任何一座城市,商场、医院、宾馆、仓库、住宅大楼等地方的电梯都被广泛应用着,直接与人们的生活息息相关,给人们的生活带来了极大的便利,是一种必不可少的垂直运输交通工具。
四层楼电梯控制系统主要通过控制台的两个手动按键控制整个电梯的升降,即:
电梯上电之后,按下Start键后开始工作,逐层到达,按下Stop键后强制降至一楼,然后停止工作,直至再次按下Start键后重新恢复运行。
采用定时器中断服务程序实现电梯升降过程中电梯间的升降请求,中断服务程序每10ms一次检查所有按键状态,并记录在相应的存储单元,同时控制相应的指示灯。
硬件的设计要考虑多方面,以自己设计的目的为出发点,设计合理的方案。
温度采集显示系统的设计需要硬件和软件的配合、补充,软件编写要和硬件电路相对应,这样才能完成预期的效果。
关键词:
单片机;汇编语言;
Abstract
DiscussedinthisarticleisbasedontheAT89C51single-chipmicrocomputerfourfloorelevatorcontrolsystem,itcancontroltheelevatorfromthefirstfloortoreachtwoorthree,fourfloor,twofromthefloortoreachfromthethirdfloor,threeorfourfloor,canreachoneortwo,fourfloor,fourfromthefloor,canreachoneortwo,thethirdfloor.Eachfloorispositionedbyatimedelaycontrol,adjacentfloorliftissetto2S.Usingsingle-chipAT89C51tocontrol,softwareproceduresprepared,bytheassemblylanguage.
TheearliestChineseanelevatorappearedinShanghai,theUnitedStatesin1901byOtisinstalled.Now,China'selevatoralreadyenteredtheperiodofhighspeeddevelopment.Anycity,shoppingmalls,hospitals,hotels,warehouses,residentialbuildingsandotherpartsoftheelevatorarewidelyused,directlyrelatedtopeople'slives,topeople'sliveshasbroughtgreatconvenience,isakindofindispensableverticaltransportation.
Thefourfloorelevatorcontrolsystemmainlythroughtheconsole'stwomanualbuttoncontroloftheelevatorlifting,namely:
elevatorpoweron,presstheStartkeytostartwork,layer-by-layerarrive,presstheStopkeyforceddownonefloor,thenstoppedworking,untilagainpressestheStartkeytoresumeafteroperation.Usingthetimerinterruptserviceproceduresfortherealizationofelevatorliftingprocessofelevatorliftingrequest,theinterruptserviceprogramevery10mstimetocheckallthekeys,andrecordedinthecorrespondingstorageunit,andcontrolthecorrespondingindicatinglamp.
Hardwaredesignswillconsidernumerous,todesignforthepurposeofthestartingpoint,designandreasonable.Thehouseholdappliancetothedesignofhardwareandsoftwaresupportandcomplementtowritetothesoftwareandhardwarecircuit,inthiswaycantheintendedeffect.
Keywords:
monolithicintegratedcircuits;theassemblerlanguage;
第一章前言
抛开一些复杂的概念,单片机在我们的生活中触手可及,尤其是在智能仪表、实时控制、机电一体化、办公机械、家用电器等方面拥有广泛的应用领域。
毕业设计注重于对单片机的理解与应用,明白单片机的工作原理,以便以后单片机领域的开发和研制打下基础,提高自己的设计能力,培养创新能力,丰富自己的知识理论,做到理论和实际相结合。
能进一步了解单片机的工作原理,内部结构和工作状态。
理解单片机的接口技术,中断技术,存储方式,时钟方式和控制方式,这样才能更好的利用单片机来做有效的设计,提高自己的综合能力。
电梯,是现代社会的一种必不可少的垂直运输交通工具。
它能自动登记厢内的选层指令和厢外的召唤指令,关门起动运行,同向逐一应答。
当无指令时,关门返回基层,当某一层有召唤指令时再起动应答。
毕业设计是三年大专教学计划中最后一个教学环节,是各个教学环节的继续、深化和扩展,是锻炼我们分析问题、解决问题,提高综合能力的重要阶段,为我们今后从事实际的工作打好基础。
毕业设计分为两个部分,硬件部分和软件部分。
硬件部分介绍:
四层楼电梯硬件电路的设计,单片机AT89C51的功能和其在各电路中的作用。
其中的作用包括单片机AT89C51的管脚结构和每个管脚的作用及各自的连接方法。
软件部分介绍:
采用单片机汇编语言,结合单片机AT89C51的功能和其在三个主要电路中的作用进行设计编写。
对软件和硬件进行调试,让其协调工作,加上修改和检查,最终完成毕业设计。
第2章系统硬件设计
2.1硬件的基本组成
四层楼电梯控制系统的硬件主要由万能板,AT89C51单片机,CD4511译码器,数码管,LED发光二极管,按键开关,电阻器、二极管、非门、与门、或门、电容、晶振、加热丝等组成。
2.2AT89C51单片机芯片的介绍
2.2.1单片机概述
单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。
2.2.2AT89C51单片机简介
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。
AT89C51引脚图
VCC:
供电电压
GND:
接地
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
RST:
复位输入。
当振荡器复位器件时,要保持RST引脚上两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
2.3系统硬件设计
2.3.1各楼层电梯外电路的设计
电路如下图,R52、R55、R56、R59、R60和R62是上拉电阻,其作用是保证按键未按下时,端口P1.0—P1.5为高电位。
当按键按下时,端口P1.0—P1.5通过按键接地,使得P1.0—P1.5变为低电平。
电容C51—C56的作用是消除抖动和抗拒干扰。
各楼层电梯外的升降选择按键均与单片机P1口连接,上升按键与P1口的P1.0—P1.2连接,下降按键与P1口的P1.3—P1.5连接。
即由P1口可以读到电梯外上升、下降按键的状态。
每个上升、下降按键均有一只发光二极管作为指示灯与之配合,发光二极管与P0口的P0.0—P0.5连接。
每个发光二极管通过一只阻值为470Ω的限流电阻接电源(VCC),这样流经发光二极管的电流约为7.5mA,有适当的亮度,同时单片机的端口在不加驱动的情况下可以承受。
2.3.2电梯内电路的设计
电路如下图,上拉电阻R11—R14和电容C11—C14的作用均同上。
四个目标楼层选择按键F1、F2、F3、F4和四个与之配合的发光二极管作为指示灯,即FS1、FS2、FS3、FS4。
按键与P3口的P3.0—P3.3连接,指示灯与P2口的P2.0—P2.3连接。
2.3.3控制台电路的设计
电路如下图,发光二极管Power是电源指示灯,用以显示供电是否正常。
DISP是0.5in(英寸)共阴极数码管,用来显示当前的楼层。
采用CD4511作为译码器,经R31—R37(阻值为470Ω)对数码管限流。
UP、DOWN两只发光管用来显示电梯运行的方向。
2.3.4单片机电路的设计
电路如下图,单片机采用ATMEL公司的AT89C51,晶体振荡器选6MHz,CS1、CS2为30pF瓷片电容,与晶体振荡器构成时钟电路。
电容CS3、电阻RS1、RS2和按键RESET构成上电复位和手动复位电路。
第3章系统软件设计
3.1控制方案的设计
(1)电梯上电后,电梯的起始位置为一楼,等待控制台Start按键按下,数码管显示“1”。
(2)当Start按键按下后,电梯开始向上运动,控制台的上升指示灯UP亮。
2s后到达二楼,数码管显示“2”,并在二楼停留5s,然后继续上升。
每层楼停留5s,直到到达四楼。
在四楼停留5s后开始下降,控制台的下降指示灯DOWN亮。
每层楼停留5s,直到到达一楼。
然后重复上述过程。
(3)如果在一个上下循环中按下过Stop键,电梯下降到一楼后停止工作。
直到再次按下Start键后重新恢复工作。
(4)5s定时由定时器T0和R2一起完成。
T0定时100ms,每100ms中断一次。
在中断服务程序中将R2加1.当R2加到50时,中断了50次,50*100ms=5s,即完成5s定时。
(5)定时器T1定时10ms。
每10ms中断一次,在中断服务程序中检查一次Stop键是否按下,如果按下停止T1计时(TR1),并将R3置为非0(程序中向R3写#0FFH)。
电梯下降到一楼时检查R3中的内容,如果不是0就停止工作。
(6)存储单元分配:
20H—电梯外上升请求:
20H.0—1楼20H.1—2楼20H.2—3楼20H.3—4楼
21H—电梯外下降请求:
21H.0—1楼21H.1—2楼21H.2—3楼21H.3—4楼
22H—电梯内目标楼层请求:
22H.0—1楼22H.1—2楼22H.2—3楼22H.3—4楼
20H—22H:
0=无请求1=有请求
堆栈栈底:
70H单元
T1中断服务程序中6EH单元保护累加器A的内容
30H、31H单元分别临时存放P1、P3按键状态
32H作为单元按键及指示灯处理的中间单元
R3作为Stop键曾经按下过的记录
3.2主程序的设计
主程序流程图
ORG0000H
AJMPSTART
ORG000BH
AJMPTIME
ORG001BH
AJMPTIME1
START:
MOVTMOD,#11H
MOVIE,#8AH
MOVTH0,#3CH
MOVTL0,#0B0H
MOVTH1,#0ECH
MOVTL1,#78H
SETBTR0
MOVSP,#6FH
S1:
CLRP0.6
CLRP0.7
MOVR3,#0
MOVP3,#1FH
JBP1.7,$
SETBP0.6
SETBTR1
UP1:
MOVA,20H
ORLA,21H
ORLA,22H
ANLA,#0EH
JZUP1
CLRP0.7
ACALLDLY
UP2:
MOVP3,#2FH
JB20H.1,UP21
JB22H.1,UP21
SJMPUP22
UP21:
CLR20H.1
CLR22H.1
SETBP0.7
MOVR2,#0
CJNER2,#50,$
UP22:
MOVA,20H
ORLA,21H
ORLA,22H
ANLA,#0CH
JNZUP23
AJMPDOWN22
UP23:
CLRP0.7
ACALLDLY
UP3:
MOVP3,#3FH
JB20H.2,UP31
JB20H.2,UP31
SJMPUP32
UP31:
CLR20H.1
CLR22H.1
SETBP0.7
MOVR2,#0
CJNER2,#50,$
UP32:
MOVA,20H
ORLA,21H
ORLA,22H
ANLA,#08H
JNZUP33
AJMPDOWN32
UP33:
CLRP0.7
ACALLDLY
UP4:
MOVP3,#4FH
UP41:
CLR20H.3
CLR22H.3
SETBP0.7
MOVR2,#0
CJNER2,#50,$
UD4:
MOVA,20H
ORLA,21H
ORLA,22H
ANLA,#07H
JNZDOWN4
AJMPUD4
DOWN4:
CLRP0.6
ACALLDLY
DOWN3:
MOVP3,#3FH
JB21H.2,DOWN31
JB22H.2,DOWN31
SJMPDOWN32
DOWN31:
CLR21H.2
CLR22H.2
SETBP0.6
MOVR2,#0
CJNER2,#50,$
DOWN32:
MOVA,20H
ORLA,21H
ORLA,22H
ANLA,#03H
JNZDOWN33
AJMPUP32
DOWN33:
CLRP0.6
ACALLDLY
DOWN2:
MOVP3,#2FH
JB21H.1,DOWN21
JB22H.1,DOWN21
SJMPDOWN22
DOWN21:
CLR21H.1
CLR22H.1
SETBP0.6
MOVR2,#0
CJNER2,#50,$
DOWN22:
MOVA,20H
ORLA,21H
ORLA,22H
ANLA,#01H
JNZDOWN23
AJMPUP22
DOWN23:
CLRP0.6
ACALLDLY
DOWN1:
MOVP3,#1FH
DOWN11:
CLR21H.0
SETBP0.6
MOVR2,#0
CJNER2,#50,$
CJNER3,#0,DOWN12
AJMPUP1
DOWN12:
CLRP0.6
CLRP0.7
AJMPS1
3.3定时器T0中断程序的设计
5s定时,R2作为计数器。
TIME:
MOVTH0,#3CH
MOVTL0,#0B0H
INCR2
RETI
3.4定时器T1中断程序的设计
记录Stop键是否曾经按下过,R3作为标志。
定时器T1中断程序流程图
TIME1:
MOVTH1,#0ECH
MOVTL1,#78H
MOV6EH,A
MOV30H,P1
MOV31H,P3
JBP1.6,TIME2
MOVR3,#0FFH
MOV20H.#0
MOV21H,#0
MOV22H,#0
MOV30H,#0FFH
MOV31H,#FEH
CLRTR1
TIME2:
MOVA,30H
CPLA
ANLA,#07H
ORL20H,A
MOVA,30H
CPLA
ANLA,#07H
ORL20H,A
MOVA,20H
CPLA
ANLA,#07H
MOV32H,A
MOVA,30H
CPLA
ANLA,#38H
RRA
RRA
ORL21H,A
MOVA,21H
CPLA
ANLA,#0EH
RLA
RLA
ORL32H,A
MOVA,P0
ANLA,#0C0H
ORLA,32H
MOVP0,A
MOVA,31H
ANLA,#0FH
ORL22H,A
MOVA,22H
CPLA
MOVP2,A
TIME3:
MOVA,6EH
RETI
第4章系统调试
AT89C51的SoftICE模式下的调试需要仿真器结合KeiluVision2的硬件仿真运行。
系统调试主要爱分为三步:
设置SoftICE模式、设置仿真环境和程序调试。
4.1设置SoftICE模式
使用FlashMagic软件设置AT89C51进入SoftICE模式,运行Flash