1、 2014届毕业设计 题 目 基于51单片机的四层楼电梯控制系统设计 学 院 自动化与电气工程学院 专 业 自动化 班 级 学 号 学生姓名 指导教师
2、 完成日期 2014年5月24日 二○一四年 五 月 浙 江 科 技 学 院 本 科 毕 业 设 计 (2014届) 题 目 基于51单片机的四层楼电梯控制系统设计 学 院 自动化与电气工程学院 专 业 自动化 班 级
3、 自动化103 学 号 110031068 学生姓名 朱圣军 指导教师 陈剑萍 完成日期 2014年5月24日 浙江科技学院毕业设计、学位论文 版权使用授权书 本人 朱圣军 学号 110031
4、068 声明所呈交的毕业设计、学位论文《基于51单片机的四层楼电梯控制系统设计》,是在导师指导下进行的研究工作及取得的研究成果。除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,与我一同工作的人员对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。 本毕业设计、学位论文作者愿意遵守 浙江科技学院 关于保留、使用学位论文的管理办法及规定,允许毕业设计、学位论文被查阅。本人授权 浙江科技学院 可以将毕业设计、学位论文的全部或部分内容编入有关数据库在校园网内传播,可以采用影印、缩印或扫描等复制手段保存、汇编毕业设计、学位论文。 (保密的学位
5、论文在解密后适用本授权书) 论文作者签名: 导师签名: 签字日期: 年 月 日 签字日期: 年 月 日 摘 要 随着经济的高速发展,微电子技术、计算机技术和自动控制技术也得到迅捷的发展,人们的生活水平也显著提高,对电梯的安装也有了更高的要求。基于单片机控制的电梯可以大大的降低成本而且运行也较可靠,所以现在电梯控制中大多数采用单片机控制,已成为电梯运行中的关键技术。 以单片机为核心控制器件的电梯模拟自动控制系统,包括课题概述、硬件
6、设计、软件设计、系统调试等几个部分。通过相关的设计,对单片机在电梯应用领域有了更加深入的了解,该系统采用单片机作为控制核心,通过扫描内外按键按下与否引起的电平的改变,作为用户请求信息发送到单片机,控制电动机转动,单片机根据楼层检测结果控制电机停在目标楼层。设计成果在降低电梯成本方面具有重要意义。硬件设计简单可靠,结合软件,基本实现了四层楼电梯系统的运行。设计内容能够充分体现出单片机在电梯行业中广泛应用的原因和特点。 关键词:单片机;电梯;控制 I 浙江科技学院本科毕
7、业设计 Abstract With the fast development of economy, microelectronics technology, computer technology and automatic control technology also get fast development. People's living standards improve significantly. As a result, the requirements of the elevator installation become higher. Because eleva
8、tor which is controlled by the single chip processor can greatly reduce the costs and the operation is more reliable, most of the elevators are controlled by the single chip processor now. Control of the single chip processor has become the key technology of elevator operation. Elevator analog aut
9、omatic control system, which regards the single chip processor as the core control device, includes an overview of subject, hardware design, software design, system debugging and so on. Through the related design, people have more in-depth understanding of the single chip processor in the area of el
10、evator applications. This system uses the single chip processor as the core of control. It sends the requesting information of users to single chip processor through scanning the change of electrical level caused by whether inside and outside buttons be pressed or not. Then it controls the twirl of
11、electromotor, and the single chip processor controls the target floor where electromotor stays according to the testing result of floor.Design results have great significance in reducing the costs of the elevator. Hardware design is simple and reliable, combining software, it basically achieves the
12、running of four floors elevator system. The design content can fully reflect the reasons and characteristics that the single chip processor is widely applied in the elevator industry. Keywords: MCU;elevator;control II 目录 摘 要 I Abstract II 1 绪论 1 1.1 电梯的定义 1 1.2 选题目的
13、背景及意义 1 1.3 国内外电梯发展状况及发展趋势 2 1.4 本文主要研究内容 3 2 方案论证............................................................................................................................................4 2.1 总体设计方案 5 2.2 主控芯片选择 6 2.3 楼层显示模块选择 6 2.4 电动机模块选择 6 3 硬件设计...............................
14、8 3.1 AT89S52功能简介 8 3.2 单片机最小系统 9 3.3 按键电路 10 3.4 显示电路 12 3.5 电源模块 13 3.6 步进电机模块 13 4 软件设计.......................................................................................
15、15 4.1 软件设计思想 15 4.2 电梯主程序 15 4.3 电梯逻辑运行控制 16 4.4 按键方式 17 4.5 显示系统 18 4.6 电机演示系统 18 5 软件调试及系统测试 19 5.1 软件编译调试 19 5.2 实物制作及系统测试 20 6 小结 21 致谢........................................................................................
16、22 参考文献.................................................................................................................................................23 附录1 C语言程序代码 24 附录2 电路板图及焊接图 33 附录3 材料 34 附录4 实物图 35 1绪论 1.1 电梯
17、的定义 电梯是一种利用制动力驱动,沿刚导轨运行的箱体或者固定线路运行的梯级进行升降或者平行运送人、货物的机电设备,包括载人和载货电梯、自动扶梯、自动人行道等。 1.2 选题目的背景及意义 电梯是集机械原理应用、电气控制技术、微处理技术、系统工程学等多科学和技术分支于一体的机电设备,它是建筑中永久垂直交通工具。电梯作为生产生活的典型运载工具使用已十分普及,其控制信号类型多,关系复杂,要求的控制性能特别高。 很久之前,人们就开始使用一些原始的升降工具来运送人和货物。公元前1100年的前后,我国的古人发明了辘轳,它采用了卷筒的回转运动来完成升降动作,因此增加了所能提升物品的高
18、度。公元前的236年,希腊数学家Archimedes设计和制作了由绞车还有滑轮组构成的起重装置。这些是由人力或畜力作为升降工具的驱动力。 在十九世纪初,欧洲和美国开始提供电源由蒸汽机起重工具。1845年,威廉·汤姆逊研制1由液压升降台,水驱动的液压介质。尽管起重工具提高了一代又一代的创新工程师不断,但是可以解除公认的行业并没有出现,直到1852年,世界第一部电梯的诞生。1889年,电梯就开始用它来驱动电梯,真正的电力。电梯通过下面的阶段,在驱动控制技术,直流电动机驱动控制的发展去了,控制驱动交流单速电机,控制驱动交流双速电机,直流无齿轮,无齿轮驱动系统,交流调压调速驱动控制,变频调速驱动控制
19、交流永磁同步电机驱动控制阶段。在19世纪由Ward伦纳德年底,直流电梯驱动系统控制时,使电梯的性能有明显的提高。20世纪初,开始出现了电梯驱动交流异步电机,电梯和槽轮驱动代替电梯鼓鼓驱动,奠定了现代电梯的长行程,高安全性能的坚实基础。20世纪上半叶,直流调速系统的系统中占有较大的比例,高速电梯。1967年,晶闸管开始为电梯驱动,交流变频调压调速电梯变频器的控制出现了。1983年,电梯因其良好的性能,舒适和节能的尘世VVVF控制,迅速成为主流产品电梯。1996年,无机房电梯曳引机驱动齿轮交流永磁同步,电梯技术,并再次进入创新。曳引机和控制柜在轴上,没有独立的房间,节约建设成本,提高建筑物的有效
20、面积,提高了建筑美学的设计自由度。这种电梯具有节能,无油无污染,免维护,高安全性的特点。电梯控制模式的发展经历了手柄开关控制,按钮控制,信号控制,并集体选择性的控制过程,为电梯并联控制,智能群控。如今,随着经济的发展,越来越的运行速度和控制电梯的性能更高楼大厦也提出了更高的要求。现在,世界各地的电梯公司都在不断的进行电梯产品研发,维修及保养服务体系,满足现代建筑交通和人日益并迅速增长的需求。 常用的微机控制主要的有两种技术:基于PLC控制和基于单片机控制两大技术。可编程控制器,是微机技术与继电器常规控制技术相结合的产物,是在顺序控制器和微机控制器的基础上发展起来的新型控制器,是一种
21、以微处理器为核心用作数字控制的专用计算机,它有良好的抗干扰性能,适应很多工业控制现场的恶劣环境,所以现在的电梯控制系统主要还是由可编程控制器控制。但是由于PLC的针对性较强,每一台PLC都是根据一个设备而设计的,所以价格较昂贵。而单片机价格相当便宜,也不像PLC那么有针对性,可以随着设备的更新而不断修改完善,更完美的实现设备的升级。基于单片机控制的电梯可以大大的降低成本而且运行也较可靠,采用单片机来实现老式电梯控制系统的改造无疑是最佳方案。由于单片机具有体积小、线路简单、无噪音、可靠性高、维护方便,是一种少投入、高回报的方案[2]。为了了解电梯的结构和控制技术,有必要将这些大集的机械,电气,传
22、感器产品在一个仿真,应用软件开发多功能的PLC,单片机,微电脑,频率转换器控制装置,将是提高学生的综合应用设计能力是非常有用和有效的。所以设计了一组电梯控制系统,该系统可连接作为下位机的任何自动调节装置,也可以作为一般的控制系统,以验证各个电梯调度算法。通过本次对单片机控制电梯运行的设计开发,了解随着时代进步该领域的进步发展,在实践中自我尝试创新,展现自我。 1.3国内外电梯发展状况及发展趋势 电梯进入人们的生活已经150年了。一个半世纪的风风雨雨,翻天覆地的是历史的变迁,永恒不变的是电梯提升人类生活质量的承诺。电梯的存在,使得每幢大型高楼都可以成为一座垂直的城市。在纽约的前世界贸易中心大
23、楼里,除每天有5万人上班外,还有8万人次的来访和旅游,因此250台电梯和75台自动扶梯的设置和正常运行,才使得合理调运人员、充分发挥大楼的功能成为现实。中国第一高楼、坐落在上海浦东的金茂大厦,高度420.5m,主楼地上88层,建筑面积220000㎡,集金融、商业、办公和旅游为一体,其中60台电梯、18台扶梯的作用是显而易见的。 1889年,美国奥梯斯升降机公司推出了世界上第一部用电动机来提供动力的升降机,同年在纽约市的马累特大厦安装成功,标志着电梯的诞生。1915年已设计成功电梯自动平层控制系统。1933年美国制造出6m/s的高速电梯。1949年研制出4-6台电梯群控系统。19
24、55年出现真空电子管小型计算机控制电梯。1962年在美国已出现8.5m/s的超高速电梯。1967年将固体晶闸管用于电梯拖动系统。电梯使用的驱动由最初的直流电机到单速交流感应电机,后来的交流双速电机的发明,才基本满足了电梯的运行要求。1976年将微处理器应用于电梯。1977年日本三菱电机开发出10m/s的超高速电梯。至今,电梯的控制技术已有了很大的发展。 中国在上海的第一个电梯,被美国奥的斯安装在1901年,1932年美国奥的斯电梯安装在天津顺德酒店仍然安全运行。1951年,党中央提出要安装在天安门是一个电梯由我们自己制造完成后,天津从生日电机厂荣仁,经过近四个月已成功地执行一项任务,顺利完成
25、了任务。经过11的十七届三中全会,沐浴着改革开放的春风,中国的电梯行业已经进入了一个高速发展的时期。目前,在我国每一个城市,电梯都在广泛使用。电梯带来的方便了人们的生活,而且还提供了有力保证我国现代化建设。 电梯发展到今天,在使用需求和新技术的应用进入了全面发展时期。随着智能化,信息化建设的发展,提高电梯的要求,不仅只能进行垂直运输的基本功能,也应以人为本,改善其舒适性,特别是从控制的智能电梯,电梯的角度考虑服务不再是“时间”的问题,而是采用模糊理论,神经网络,专家系统等方法,实现了电梯群控管理和最佳模式,合理配置和安全使用,远程监控和故障诊断,节约能源和减少环境污染。 1.4主要研究内容
26、 随着科技的发展,微型计算机领域的不断进步,将使得将来电梯的体积大大减小,功能不断完善,过程的控制更平稳、可靠、抗干扰性能增强、机械与电气部件被机结合在一个设备内,把仪表、电子和计算机的功能综合在一起。因此微型计算机控制技术将会成为电梯运行中的关键技术。 本设计的研究题目是“ 基于51单片机的四层楼电梯控制系统设计”。系统采用单片机(AT89S52)作为控制核心,通过C语言编程,内外均使用按键按下与否引起的单片机相应端口电平变化的原理,作为用户请求信息发送到单片机,单片机根据判断的结果最终驱动步进电机做相应的运动,在运动的过程中,单片机依照请求信息通过模拟的传感器使步进电机停止运动
27、并利用彩灯指示和电机正反转作为上升和下降的状况显示,数码管显示当前楼层,红绿LED灯表示电梯开关门,来完成整个请求和响应的过程。其中利用电机的正反转来更直观的表达电梯的升降。根据问题的提出、意义和文献综述,本设计研究的具体内容包括以下四个方面: (1)对电梯系统常用的控制方法的研究 (2)电梯控制系统硬件组成及其原理 (3)电梯的单片机系统软件设计 (4)电梯的软件编译调试及系统测试 2 方案论证 2.1 总体设计方案 设计的基本思想是采用AT89S52单片机作为核心,是一种低功耗高
28、性能CMOS 8位单片机,片内8k Bytes ISP(In-system programmable)的可反复擦写1000次的FLASH只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准 MCS-51指令系统及80C51引脚结构,片上Flash允许程序存储器在系统可编程,亦适于常规编程器。单芯片上,拥有8 位CPU及在系统可编程FLASH,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效之解决方案[1]。 AT89S52的特点:拥有40个引脚,8k Bytes Flash的片内程序存储器,256 bytes 的随机存取数据存储器(RAM)
29、32个外部双向输入/输出(I/O)口,5个中断优先级及2层中断嵌套中断,2个16位可编程的定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。采用8位LED静态显示来实时显示电梯所在楼层。采用行列式键盘矩阵作为外呼内选电路,由于是4层楼,故选用4×4矩阵键盘,键盘矩阵共16个按键,其中4个按键是各层楼外呼按键,2个表示电梯开关门的选择键,电梯状态是通过两排指示箭头发光二极管显示的,向上箭头灯亮表示电梯在向上运行,向下箭头灯亮表示电梯在向下运行,另设有红绿LED灯表示开门状态,绿灯表示开门状态绿灯表示关门状态。 总体方框图如图2-1所示: 键盘电路 楼层显
30、示电路 单片机AT89S52 复位电路 电机状态 时钟电路 图2-1 总体方框图 2.2 主控芯片选择 方案一:多片单片机控制方案。这种方案是使用多片单片机,其中一片是作为主控制器,另外设置了轿厢控制系统,每层的控制系统分别由一个单片机控制,然后通过主控制器和副控制器之间的通讯,实现电梯系统的控制。这种方案的控制系统的结构简单明了,各个系统之间相互独立便于维护和修检。所以根据功能要求需要选用5片AT89C2051单片机就能可以实现该电梯的功能。不过单片机之间的通讯较多,在目
31、前通讯是个难点,可能导致电梯运行过程不稳定。 方案二 :CPLD器件作为控制核心,对整个系统的运行进行统一管理,但这种方案要求通常有很多的知识积累和较强的专业水平,更难以实现和设备价格昂贵,不符合经济的要求,同时也控制升降电机,运行时间测量,显示,而且还需要采取MCU。 方案三:一片单片机为主控制器的方案。MCU采用一个单片机控制所有的按键、数码管显示、电动机的转动等,并对以上所有信号进行处理。这种方案的控制系统相对复杂,只适用于较简单的电梯控制系统,因为这次的设计是四层电梯控制系统,所以选用这种方案。单片机技术目前较为成熟,自身资源丰富,硬件设计简单,成本低,可靠性高,结合软件完全可以实
32、现电梯运行状况的简单模拟。 权衡以上三种方案方案分析,采用方案三。 2.3 楼层显示模块选择 方案一:采用点阵式的液晶显示器(LCD)来显示各种相关的数据以及相关的信息。点阵式的液晶显示器虽然属于低功耗的器件,但其价格比较贵。 方案二:采用传统的八段数码管(LED)显示电梯实时所到的楼层。虽功耗大,但其软件驱动相对比较简单,硬件电路调试也比较方便,价格便宜,亮度大,能满足本设计的要求。 以上两种方案中,选择方案二。 2.4 电动机模块选择 方案一:步进电机作为设计的执行部件,在定位性能的步进电机是非常优越的。步进电机和普通电机的区别主要在于其脉冲驱动形式,步进
33、电机不需要A/D 转换,能够直接将数字脉冲信号转化为角位移。常用的步进电机每转一步,角度转1.8°,在应用中,步进电机可以同时来完成两个工作,一个是传递转矩,第二个是传递信息,在本设计中作为传递信息用。 方案二:直流电机作为执行元件的设计,直流电机的功能是让线圈总是交替地处于稳定状态和不稳定的平衡状态,通过两个半圆环形电枢将稳定平衡线圈消除。这样一个载流线圈总是降低磁场。直流电机中常用的系统,高转矩,高扭矩,低惯量。 以上两种方案采用方案一。 利用Protel画图软件构建原理图如图2-2所示: 图2-2 原理图
34、 3 硬件设计 3.1 AT89S52功能简介 AT89S52是一种低功耗高性能CMOS 8位单片机,片内8k Bytes ISP(In-system programmable)的可反复擦写1000次的FLASH只读程序存储器,器件采用ATMEL公司之高密度、非易失性存储技术制造,兼容标准 MCS-51指令系统及80C51引脚结构,片上Flash允许程序存储器在系统可编程,亦适于常规编程器。单芯片上,拥有8 位CPU及在系统可编程FLASH,使AT89S52为众多嵌入式控制应用系统提供高灵活、超有效之解决方案[2]。 AT89S52特点:有40针,8K字节的Flas
35、h片内程序存储器,随机存取数据存储器256字节(RAM),32个外部双向输入/输出(I / O),5个中断优先级2中断嵌套中断,2个16位可编程定时计数器,一个全双工串行通信2出口,看门狗(WDT)电路,片内时钟振荡器。 单片机AT89S52如图3-1所示: 图3-1 单片机AT89S52 P0口——8位漏极开路之双向I/O口。作为一个输出端口,每个可以驱动8个TTL逻辑电平。 P0口写入“1”时,引脚用作高阻抗输入。 P1口——有8位双向I / O内部上拉电阻,P1输出缓冲器可驱动4个TTL逻辑电平。 P1口,写“1”
36、时,内部上拉电阻拉高端口,此时可以作为输入。当作为输入,外部向下引线由于内部电阻和输出电流。 P2口——有8位双向I / O内部上拉电阻,P2输出缓冲器可驱动4个TTL逻辑电平。 P2口,写“1”时,内部上拉电阻拉高端口,此时可以作为输入。作为输入,被拉低外部引脚内部电阻和输出电流。 P3口——有8位双向I / O内部上拉电阻,P3输出缓冲器可驱动4个TTL逻辑电平。 P3口,写“1”时,内部上拉电阻拉高端口,此时可以作为输入。作为输入,被拉低外部管脚用于内部电阻的原因,并输出电流。 RST——复位输入。当RST引脚振荡器,还有高水平的两个以上的机器周期将被重置。 ALE / PROG
37、 访问外部存储器时,ALE(地址锁存使能)输出脉冲为低8字节锁存地址。 PSEN——程序存储使能(PSEN)输出是读选通到外部程序存储器的信号,从外部程序存储器(或数据)AT89S52取指令,2 PSEN每个机器周期,即输出两个脉冲,在此期间,当访问外部数据内存,可以跳两次PSEN信号。 EA/VPP——外部访问使能,CPU只访问外部程序存储器(地址0000H-FFFFH),EA端必须保持低电平(接地)。注意:如果加密位LB1编程,复位内部锁存的EA最终状态。如果EA为高电平(VCC结束),指令CPU执行内部程序存储器。 XTAL1——振荡器反相放大器及内部时钟发生电路之输入端。 XT
38、AL2——振荡器反相放大器之输出端[3]。 3.2 单片机最小系统 最小系统包括复位电路和时钟电路两部分,其中复位电路采用上电自动复位,其中9 脚为单片机的复位端,时钟电路如图3所示:晶振采用的是12MHZ的,C2、C3为30p瓷片电容,XATL2和XATL1分别为单片机的18和19脚。 时钟电路如图3-2所示: 图3-2 时钟电路图 3.3 按键电路 本电路采用的是4×4键盘矩阵。P34-P37是接单片机的P3 端口,单片机采用行和列扫描法来判别这些按键中哪个键按下,P00-P02接单片机P0端口,S1-S6为微动按键,分别控制电梯开关门和电梯楼层呼叫开关,然后可根据每
39、个按键的功能来通过单片机控制电梯的运行。D1-D14为3mmLED二极管,D1,D4,D7,D10,D13并联并串联一个100欧姆的电阻R1,D3,D9,D12并联并串联一个100欧姆的电阻R3,D2,D5,D8,D11,D14并联并串联一个100欧姆的电阻R2。排布成上下箭头形状,利用箭头指示灯分别来表示电梯上下楼情况。电梯开关门按键如图3-6所示,P20-P21是接单片机的P2端口,利用微动按键按下与否的高低电平来使两个发光二极管亮,由两个红绿5mmLED发光二极管并联并串联一个1K欧姆的电阻R12,红灯亮表示电梯关门,绿灯亮表示电梯开门。电梯按钮模块如图3-3和图3-4所示:
40、 图3-3 电梯按钮模块 图3-4 电梯按钮模块 各按钮开关说明: 按钮开关S3:四层楼呼叫开关;按钮开关S4:三层楼呼叫开关; 按钮开关S5:二层楼呼叫开关;按钮开关S6:一层楼呼叫开关; 电梯门指示模块及电梯开关门按键如图3-5和3-6所示: 图3-5 电梯门指示模块 图3-6 电梯开关门按键 3.4 显示电
41、路 采用传统的八段数码管(LED)显示电梯实时所到的楼层。其软件驱动简单,硬件电路调试方便,价格便宜,亮度大,能满足本设计的要求。 用数码管显示,电梯的基本功能具备显示电梯当前的楼层,所以设计中设置了一个数码显示管,用来显示当前电梯所在的层数,P10-P17都串联一个1K欧姆的电阻接单片机的P1接口,由P1口来驱动8位数码管显示电梯所到达的楼层数。接线图如图6所示,图中共有1个数码管,通过对8根数据线进行写操作进行楼层显示。 楼层显示模块如图3-7所示: 图3-7 楼层显示模块 3.5 电源模块 本系统采用LM7805稳压电路提供电压
42、5V,对各部分电路供电,电源可以采用USB接口的方式输入,也可以采用标准的电源输入头输入。C1为0.1uF瓷片电容。 电源模块如图3-8所示: 图3-8 电源模块 3.6 步进电机模块 采用步进电机作为本设计的执行元件,步进电机在定位性能方面非常优越。步进电机和普通电机的区别主要就在于其脉冲驱动的形式,步进电机不需要A/D 转换,能够直接将数字脉冲信号转化为角位移[4]。常用的步进电机每转一步,角度转1.8°,在应用中,步进电机可以同时完成两个工作,其一是传递转矩,其二是传递信息,在本设计中作为传递信息用,步进电机使用的是28BYJ-5V。 步进电机由ULN200
43、3A驱动,ULN是集成有IC达林顿管,还集成了一个弧形线圈电动势的二极管,它可以用来驱动继电器。它是双列16脚封装,NPN晶体管矩阵,最大驱动电压=50V,电流=500毫安,输入电压=5V,适用于TTL COMS,达林顿管驱动电路。通常芯片ULN2003驱动,上拉电阻2K是合适的,同时,COM引脚悬空或连接电源。本设计中COM引脚接电源,GND脚接地。输入端IN4-IN7连P24-P27分别接主单片机的P2口P2.4-P2.7。 步进电机模块如图3-9所示: 图3-9 步进电机模块
44、 4 软件设计 4.1 软件设计思想 设计采用键盘矩阵来代替外呼按钮,而电梯的运行方向和电梯开关门是根据这些呼叫按键和选择按键来决定的,所以单片机通过扫描键盘来获取各层呼叫状态,从而控制电梯的运行。故键盘矩阵扫描是本系统软件设计中的重要一部分,另外要把键盘扫描到的各层的按键信息存储起来,然后和电梯的运行状态比较,判断是否响应各层呼叫,当电梯到达目的楼层时电机停止,可随意选择去哪一层,然后电梯选择判断去哪一层,继续运行。 由于本设计采用单片机实现自动控制,
45、主要完成了整个系统系统如数码管的显示,键盘的响应,转动电机的控制,延时等均由相应的子程序来完成。 软件设计思想:使用模块化的C语言编程,软件系统的功能层次化设计方法,包括多个单一功能的子程序的。通过调用不同的子程序,实现复杂的控制功能。这是方便调试,修改。软件编程是一种多功能,智能化,操作简便。在本设计中,可以把程序的各部分相互结合起来,达到完成各项设计的功能[5]。 4.2 电梯主程序 根据系统要求,电梯的程序应满足以下要求: (1)初始化程序使数码管显示“1”表示电梯处在一楼,等待人进入电梯; (2)主程序主要包括: ①判断电梯选择去哪一层,根据判断情况来控制电梯运行
46、到达目标楼层后相应的开关门指示灯熄灭; ②电梯在运行过程中要不断的扫描键盘,从而来判断各楼层是否有其他呼叫请求; ③设置电梯上下楼功能按键、开关门按键; ④实时显示电梯所在位置及运行状态(上行/下行); ⑤开关门有一定的延时来保证乘客走出/进入电梯; 主程序流程图如图4-1所示: 开始 初始化 按键查询 调用按键子程序 控制电机转动 楼层检测 显示所在楼层 返回 图4-1 主程序流程
47、图 电梯的整个软件设计包括一下几部分:电梯逻辑控制模块、电梯运行模块、键盘模块、楼层显示模块。 4.3 电梯逻辑运行控制 电梯控制中,单片机扫描楼层外呼信号,将楼层呼叫信号与当前楼层运行状态进行比较,确定电梯响应上升、下降队列,然后电梯按照运行队列进行电机控制。而将呼叫信号转化为响应队列的程序模块是电梯控制的核心部分,其算法的严谨性,决定了电梯的控制性能。其C语言程序源代码见附录1。 电梯响应上升下降队列时,要对相应的箭头指示灯、上下运行状态,以及响应队列做相应的改变,而实现这一功能模块的就是电梯运行函数。其程序源代码见附录1。 逻辑框图如图4-2所示: 上升下降队列为空:停
48、止运行 未到达楼层:向上运行,并显示运行方向当前楼层数 上升队列不为空 除去向下楼层队列电梯停转 到达楼层 方向向上 显示开关门状态 电梯运行函数 上升队列为空,下降不为空:判断下降 未到达楼层:向下运行,显示运行方向当前楼层数 除去向上楼层队列电梯停转 下降队列不为空 到达楼层 方向向下 显示开关门状态 下降队列为空,上升不为空:判断上升 图4-2 电梯运行逻辑图 4.4 按键方式 键盘是独立按键,采用的是查询方式,即外接独立
49、按键的时候,是按键的一端接地,另一端与I/O引脚相连,当按键按下的时候,引脚输入的是低电平,而按键未按下的时候,引脚输入的是高电平[6]。利用C语言编程时只要用检测高低电平来判断是否有按键按下就可以了。其程序源代码见附录1。 4.5 显示系统 楼层显示部分用数码管显示,电梯的基本功能具备显示电梯当前的楼层,所以设计中设置了一个数码显示管,用来显示当前电梯所在的层数,P10-P17都串联一个1K欧姆的电阻接单片机的P1接口,由P1口来驱动8位数码管显示电梯所到达的楼层数。程序源代码见附录1。 4.6 电机演示系统 采用步进电机作为本设计的执行元件,步进电机在定位性能方面十分优
50、越。步进电机和普通电机的区别主要就在于其脉冲驱动的形式,步进电机不需要A/D 转换,能够直接将数字脉冲信号转化为角位移。常用的步进电机每转一步,角度转1.8°,在应用中,步进电机可以同时完成两个工作,其一是传递转矩,其二是传递信息,在本设计中作为传递信息用,步进电机使用的是28BYJ-5V。电梯运行前先关门,步进电机8个节拍循环旋转,电梯每上升或下降一层电机顺时针或者逆时针转动半周也就是180度,旋转一周360度帧数是512,半周是256帧。程序源代码见附录1。






