毕业论文-基于Atmega128单片机的电梯控制系统设计.doc_第1页
毕业论文-基于Atmega128单片机的电梯控制系统设计.doc_第2页
毕业论文-基于Atmega128单片机的电梯控制系统设计.doc_第3页
毕业论文-基于Atmega128单片机的电梯控制系统设计.doc_第4页
毕业论文-基于Atmega128单片机的电梯控制系统设计.doc_第5页
已阅读5页,还剩104页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

梧梧 州州 学学 院院 毕毕 业业 论论 文文 论文题目 基于 Atmega128 单片机的电梯控制系统系统 系 别 电子信息工程 专 业 电子信息工程 班 级 10 电本二班 学 号 学生姓名 指导教师(签名) 完成时间 2013 年 5 月 I 摘摘 要要 本文介绍了以 Atmega128 单片机为核心控制器件的电梯自动控制系统,包括课题 概述、方案论证、硬件设计、软件设计、系统调试等几个部分。该系统采用 Atmega128 单片机作为控制核心,通过扫描内外按键按下与否引起的电平的改变,作为 用户请求信息发送到单片机,控制电动机转动,单片机根据楼层检测结果控制电机停 在目标楼层,单片机通过 hx711 称重模块,判断出此时电梯的重量。自动开关门部分 通过接近开关、霍尔限位开关等完成到达目标楼层自动开关门功能。掉电保护部分实 时保护电梯电梯时电梯厢不会往下坠,12864 液晶、数码管、蜂鸣器实时显示、提示当 前的信息。硬件部分主要有电源模块、单片机最小系统、每层楼层检测模块、12864 和 数码管显示部分、电动机驱动模块、按键模块、报警模块、自动开关门、智能防夹模 块、掉电保护等部分组成。软件部分介绍了系统程序设计思路、程序功能分析,着重 介绍了主程序的逻辑结构,还分别介绍了报警、按键扫描、层位读取、显示、电梯控 制逻辑等子程序的结构和功能。软件部分,使用 C 语言编写,易于调试。硬件设计简单 可靠,结合软件,基本实现了五层电梯运行的逼真模拟。 关键词:Atmega128;hx711 称重;液晶显示;自动开关门;电梯控制; II The Elevator Control System Based on Microprocessor Abstract This article introduces the Atmega128 microcontroller as the core control device of the elevator control system, including the issues outlined, program feasibility studies, hardware design, software design, system debugging, and several other parts.The system uses a microcontroller as the control centre, Firstly, it is by scanning the internal and external electrical level change caused by keyboard to be a user requests information to the microcontroller,control the motor rotation, the microcontroller controls the motor based on test results floors stopped in the target floor. Hardware part mainly are made of the microcontroller, floor detection module, horizon 12864, digital tube display, electric motor drive module, key scan module, alarm module, circuit directions up and down the line calls and other components.Floor detection uses photoelectric sensors. When elevator goes to the appropriate floor, Photoelectric sensors produce electrical level changes sent to the microcontroller to determine the floor,.The part of motor control uses stepper motor and 6560 stepper motor drive module.Software components intorduce System programming design ideas, procedures, functional analysis . It is not only focusing on the logical design of the main structure but also separately introduced the warning function, the demonstration function, the pressed key scanning, the position read, the demonstration, the lift control logic small steelyard procedure structure and the function. Software components use C language. This realization way is the use of Interrupt mode to detect the information of the floor sent to the Digital tube display . The hardware design of the system combined with the software is simple and reliable. So It is basically to achieve simulation of elevator running five floors. Key words: Atmega128 Key Scan LCD Display Elevator Control III 目录目录 第一章 前言.1 1.1 项目背景.1 1.2 课题提出及研究意义.1 第二章 系统总体设计.3 2.1 方案论证 .3 第三章 系统硬件电路设计.7 3.1 总体方案设计 .7 3.2 各模块设计.8 第四章 软件设计.19 4.1 电梯主程序 19 4.2 电梯逻辑控制20 4.3 电梯运行控制22 4.3 紧急停止22 第五章 系统调试.25 5.1 软件编译调试25 5.2 硬件仿真25 5.3 系统测试28 第六章 总结与展望.30 参考文献.31 附录.32 致谢.57 IV 1 第一章 前言 1.1 项目背景 随着人们生活水平的不断提高和国内经济的迅速发展。各大城市建筑物在不断向 高层发展。因此电梯在我们的生活中起着非常重要的作用。电梯已经不单单是是一种 生产环节中的重要设备,更是一种人们越来越依赖的、必须的交通运输工具。 由于传统的电梯运行逻辑控制系统采用的是继电器逻辑控制线路。采用这种控制线 路,存在易出故障、维护不便、运行寿命较短、占用空间大等缺点。从长远发展来看, 这种系统将逐渐被淘汰。而单片机价格相当便宜,体积较小,由单片机设计的控制系 统会随着设备的更新而不断完善,更完美的实现设备的升级。国内外电梯企业顺应市 场需要,加大研发投入,都准备在未来新概念电梯产业发展中占得先机。 1.2 课题提出及研究意义 电梯是集机械原理应用、电气控制技术、微处理技术、系统工程学等多科学和技 术分支于一体的机电设备,它是建筑中永久垂直交通工具。电梯作为生产生活的典型 运载工具使用已十分普及,其控制信号类型多,关系复杂,要求的控制性能特别高。 随着经济的发展高层建筑越来越多对电梯的运行速度和控制性能也提出了更高的要求。 而在我国于八十年代初至九十年代初投入使用的电梯,其中绝大部分采用继电器继电 器阵列结构该结构体积大、接线复杂、噪音大、触点易磨损、故障率高、维护工作量 大,已无法满足现代社会的需要。 自上世纪 80 年代以来,微机控制系统得到了极大的发展,现已深人到我国工农业 生产的各个方方面面,随着电力电子技术和微电子技术的发展,使得以微机为核心的控 制系统得到广泛应用。尤其是单片机的开发与应用,其深度和广度越来越大。微机应 用于电梯控制系统,与传统的采用继电接触逻辑控制系统相比,具有很大优越性,一 方面,它使整个系统的体积减小,可靠性提高,使用寿命延长;另一方面,它还简化 了安装调试和维护维修的工作量,使整个电梯的运行成本降低。更突出的优点是微机 具有灵活的算术和逻辑运算功能,具有很强的通信和可扩展功能,实现更完善的自动 控制。 常用的微机控制主要的有两种技术:基于 PLC 控制和基于单片机控制两大技术。 可编程控制器,是微机技术与继电器常规控制技术相结合的产物,是在顺序控制器和 微机控制器的基础上发展起来的新型控制器,是一种以微处理器为核心用作数字控制 的专用计算机,它有良好的抗干扰性能,适应很多工业控制现场的恶劣环境,所以现 在的电梯控制系统主要还是由可编程控制器控制。但是由于 PLC 的针对性较强,每一 台 PLC 都是根据一个设备而设计的,所以价格较昂贵。而单片机价格相当便宜,也不 像 PLC 那么有针对性,可以随着设备的更新而不断修改完善,更完美的实现设备的升 级。基于单片机控制的电梯可以大大的降低成本而且运行也较可靠,采用单片机来实 2 现老式电梯控制系统的改造无疑是最佳方案。由于单片机具有体积小、线路简单、无 噪音、可靠性高、维护方便,是一种少投入、高回报的方案。同时能方便实现多台电梯 的群控,并通过通讯接口与楼宇自动化系统联接,实施对电梯的监控电梯的应用范围很 广,可用于宾馆、饭店、办公大楼、商场、娱乐场所、仓库以及居民住宅大楼等。 3 第二章 系统总体设计 2.1.方案论证 本系统的方案论证包括主控芯片选择,定位平层模块,楼层显示模块,声音提示 模块,电动机选择,电动机驱动模块。 2.1.1 主控芯片选择 方案一:PLC 控制方案。这种方案是采用传统的电梯控制系统,其主要特点是编写 程序比较直观,通俗易懂,可靠性高,干扰抗能力强,能耗较小。但他的价格较昂贵, 不符合本设计的经济要求。 方案二 :采用 CPLD 器件作为控制中心,对整个系统的运作进行统一管理,但这 种方案要求平时有很多的知识积累和较强的专业水平,实现起来比较困难且器件较贵, 不符合经济要求,而且升降电机的控制,运行时间的测量、显示等还需要单片机的配 合。 方案三:单片机为主控制器的方案。MCU 采用一个单片机控制所有的按键、数码管、 液晶显示、步进电机、光电传感器的输出信号等,并对以上所有信号进行处理。这种 方案的控制系统相对较简单,只适用于较简单的电梯控制系统。单片机的内部资源比 较丰富,控制采用 C 语言控制,使用起来相对比较简单。 权衡以上方案的分析,结合本次次的设计的内容是 5 层电梯控制系统,基于本设 计中需要用到的管脚比较多,需要的内存比较大,所以本设计用 Atmega128 单片机, 自身资源丰富,硬件设计简单,成本低,可靠性高,结合软件完全可以实现本设计电 梯的要求。所以选用方案三。 2.1.2 定位平层部分 方案一:采用金属接近开关检测电梯层数。在轿厢安装金属片,并在竖井各个楼 层装上金属接近开关,在轿厢上装上一个当作感应作用的金属片,当轿厢运动到特定 位置,竖井上的金属接近开关探测到金属片,继而输出一个信号。单片机通过金属接 近开关输出的变化知道电梯轿厢的位置。该方案安装中的金属片会使轿厢的重量加重, 增加步进电机的负载,并且金属接近开关价格相对昂贵、体积较大、安装不便、灵敏 度不怎么高。 方案二:采用红外发射对管检测电梯层数。在竖井各个楼层设置红外接收管,在 电梯厢上装一个红外发射管。当接通电源时,红外线发射管不断发射红外线,当轿厢 运动到特定位置(即楼层位置) ,竖井上的红外线接收头接收到红外线,输出发生变化, 单片机通过红外线接收头输出的变化知道电梯轿厢的位置。该传感器的响应时间为 2.5ms,且体积小、功耗低、容易安装,但受环境的影响较大。 4 方案三:采用光电传感器。在轿厢每一层安装一个光电传感器,然后让副吊重厢 带着一个小物体,当电梯上升时,副吊重体则下降。当副吊重体上的小物体经过光电 传感器时,遮挡住了光电传感器发光体和接收光体的通道,进而传感器会输出一个高 电平,单片机通过检查该楼层光电传感器电平的变化,从而可以检测出当前电梯厢所 处楼层位置,光电传感器反应灵敏,精确度比较高,受外界干扰比较少,价格比较便 宜,容易安装,易于调试。 基于上述方案的分析,以及方案三的优点,故选择方案三。 2.1.3 楼层显示部分 方案一:采用点阵屏显示各种相关数据以及信息。点阵屏属于低功耗器件,但其 价格较贵,假如在每层都装一个液晶显示,那明显不怎么符合本设计的成本要求,并 且点阵屏制作相对比较难,线路复杂。 方案二:采用传统的 7 段数码管和液晶 12864 显示电梯实时所到的楼层。数码管 虽功耗大,但其软件驱动简单,硬件电路调试方便,价格便宜,亮度大,能满足本设 计的要求,但数码管只可以显示基本的数字,文字显示不了,所以在电梯厢内部装上 液晶 12864 来显示基本的电梯信息,这样比较美观,成本合理,在电梯的每层外部装 上一个数码管显示电梯当前所载的楼层。 结合以上的比较,在本设计的成本和难度性,所以采用方案二。 2.1.4 声音提示部分 方案一:采用语音芯片 isd400,该语音芯片外围电路简单,需要很少的外围器件 就可以实现语音的播报,它是直接多电平接模拟存储,声音不需要 A/D转换和压缩,每 个采样得到的数值直接存储在芯片 内的闪烁存储器中,没有由于 A/D 转换误差,因此它能够真 实、自然地再现语音、音乐及效果声,但调试难度相对较大。 方案二:采用蜂鸣提示音提示当轿箱到达所需的楼层时,蜂鸣器响,提示乘客到 达了所需的楼层,另外可以作为紧急停止时的报警提示信号,其程序编写、硬件电路 设计、调试比较简单,而且价格便宜,能满足本设计的要求。 比较以上两种方案中,选择方案二。 2.1.5 电动机模块 方案一:采用步进电机作为本设计电梯上升的动力,步进电机在定位性能方面十 分优越。步进电机和普通电机的区别在于它的驱动是用脉冲驱动,每给它一个脉冲, 它就转动一个角度,本设计中用的步距角是 1.8 度的步进电机,步进电机不需要 A/D 转换,能够直接将数字脉冲信号转化成为角位移。在应用中,步进电机可以同时完成 两个工作,其一是传递转矩,其二是传递信息,升降精度很高,其次步进电机只给电 不给脉冲的时候,它是不动,这有利于本设计的控制电梯厢停稳。 5 方案二:采用直流电机作为本设计的执行元件,直流电机工作是让线圈始终交替 地处于稳定状态和非稳定平衡状态,通过两个半圆环形电枢将线圈的稳定平衡状态消 除掉。这样,载流线圈在磁场中就会一直地转动下去。直流电机在高起动转矩、大转 矩、低惯量的系统中经常使用到。 此题目中电机要带动的负载不是很大,但对升降精度要求较高,并且要求在电梯 停在目的楼层时,能把电梯厢卡住,二直流电机则不能把电梯厢卡住,所以采用方案 一。 2.1.6 电动机驱动模块 我们使用的是直流电机,比较以下两种方案实现对直流电机的驱动。 方案一: 小功率驱动电路可以采用如图 2-1 所示的 H 桥开关电路。UA 和 UB 是互 补的双极性或单极性驱动信号,TTL 电平。开关晶体管的耐压应大于 1.5 倍 Us 以上。 当四个功率开关全用 NPN 晶体管时,需要解决两个上桥臂晶体管(BG1 和 BG3)的基极电 平偏移问题。图 2-2 中 H 桥开关电路利用两个晶体管实现了上桥臂晶体管的电平偏移。 但电阻 R 上的损耗较大,所以也只能在小功率电机驱动中使用。 图 2-1 桥开关电路 图 2-2 桥开关电路 方案二:采用集成电机驱动控制芯片 L298,该芯片内部包含有两个集成 H 桥,能 同时驱动两路 5 到 24 伏范围电源的直流电机,可以驱动一个 2 相 4 线的步进电机。但 6 它的驱动电路较复杂,需要用到 I/0 口比较多,一个步进电机需要 4 跟数据线,一根 使能信号线,总共需要 5 跟,占用的单片机资源比较多,编写程序较多。 方案三:采用步进电机 TB6560 模块,TB6560 是步进电机专用的驱动芯片,工业上 多数用它来控制步进电机,雕刻机,宝石机等多数用它,它的电路虽然复杂,但程序 编写简单,只需给一个高、低脉冲就可以控制它转动工作,控制它的一根使能端就可 以控制步进电机转动和脱机,一根方向端就可以实现正反转。可以通过上面的拨码开 关设置电机运行电流的大小,并且它可以细分,让步进电机工作在合适的频率,还有 自动半流,此作用能减少步进电机在不工作的时候,减少发热量,是步进电机比较理 想的驱动 综合以上方案,所以采用方案三。 2.1.7 称重模块 方案一 压电传感器 结构简单、工作可靠,适用于动态力学量的测量,不适合测频率太低的被测量, 更不能测静态量。目前多用于加速度和动态力或压力的测量。压电器件的弱点:高内 阻、小功率。功率小,输出的能量微弱,电缆的分布电容及噪声干扰影响输出特性, 这对外接电路要求很高。 方案二 电容式传感器 电容式传感器是将被测非电量的变化转换为电容变化的一种传感器。它有结构简 单、灵敏度高、动态响应好、可实现非接触测量、具有平均效应等优点。电容传感器 可用来检测压力、力、位移以及振动学非电参量。 虽然电容式传感器有结构简单和良好动态特性等诸多优点,但也有不利因素: (1)小功率、高阻抗。受几何尺寸限制,电容传感器的电容量都很小,一般仅几皮法 至几十皮法。故易受外界干扰,信号需经放大,并采取抗干扰措施。 (2)初始电容小, 电缆电容、线路的杂散电路所构成的寄生电容影响很大。 方案三 电阻应变式传感器 电阻应变式传感器是一种利用电阻应变效应,将各种力学量转换为电信号的结构 型传感器。电阻应变片式电阻应变式传感器的核心元件,其工作原理是基于材料的电 阻应变效应,电阻应变片即可单独作为传感器使用,又能作为敏感元件结合弹性元件 构成力学量传感器。 其测量原理:用应变片测量时,将其粘贴在弹性体上。当弹性体受力变形时,应 变片的敏感栅也随同变形,其电阻值发生相应变化,通过转换电路转换为电压或电流 的变化12。 本设计中选用最终方案我们选择的是电阻应变式压力传感器,额定载荷 5Kg,并且 经过 hx711A/D 转换模块,进行放大、A/D 转换。传给单片机,显示在 12864 液晶上。 7 第 3 章 系统硬件电路设计 3.1 总体方案设计 本次设计的基本思想是采用 Atmega128 单片机作为核心,利用其丰富的 I/O 接口 与外围电路配合进行控制。采用稳压芯片 LM2576 为电路提供稳定的 5V 电源,采用 5 个光电传感器实时监测电梯所到的楼层,2 个霍尔传感器限位自动开关门的位置,一个 接近开关检测关门时门的中间是有东西。否采用 TB6560 步进电机驱动 3 个步进电机, 为电梯提供动力。采用电阻传感器和 hx711A/D 芯片检测电梯的载重。采用 12864 液晶 和用 595 来驱动额数码管实现显示当前电梯当前的信息,并采用独立键盘作为外呼内 选电路,里面用 8 个按键代表 1-5 楼层、开门、关门、呼叫,外部采用 8 个按键代表 1 楼上,2 楼上、下,3 路上、下,4 楼上、下,5 楼的下呼叫。电梯模型效果图如图 3-1 所示: 5F 4F 3F 2F 1F 图 3-1 电梯模型效果图 J 8 电梯竖井部分是由铁片和螺丝组合成的铁架体总高度为 1.2 米,每层的高度为 20cm;J 是电梯厢,悬挂并由电动机 M 牵引,可在电梯间竖井模型的空间内上下运动。 电梯桥厢模型 J 是用有机玻璃粘和而成的,电梯桥箱中有一个自动开关门装置通过小 皮带传送带动小门进行自动开开关门,在门的中间有个接近开关,当在电梯在关门的 时候,只要接近开关感应到中间有东西,就会自动开门,光电开关不断地检测中间用 没有东西,从而实现智能防夹功能。 图 3-2 总体组成图 3.2 各模块设计 3.2.1 按键电路 本电路所需按键有 16 个,基于本设计用的是有 64 个 I/0 口的 atmega128 单片, 外部资源比较多,为了写程序的简单方便,本设计用独立按键。如图 3-3 所示,PA.1- PA.8 是接单片机的 PA 端口,此按键是电梯厢内部的按键,外部的按键同理,单片机 采独立按键扫描方式,这样简单,程序少,单片机响应速度快。虽然这样所占用的单 片机管脚比较多,但对于 Atmega128 来说,管脚是足够的,完全符合本设计的要求。 ATMEGAL 128 单 片 机 电 梯 模 型 自动开关门 楼层检测 安全保护 部分 键盘呼叫信号 输入 滑轮 步进电机 电机驱动模块 楼层外显示 内部 12864 显 示 蜂鸣器提示 电梯运动方向指示 称重部分 9 单片机通过读取按键的状态,然后可根据每个按键的功能来通过单片机控制电梯的运 行。键盘电路如图 3-3 所示: S1 S2 S3 S4 S5 S6 S7 S8 2 3 4 5 6 7 8 1 P1 G N D A 1A 2A 3A 4A 5A 6A 7A 8 上上上上上 1 2 3 4 5 6 7 8 9 P7 A1A2A3A4A5A6A7A8 V CC A 1 A 2 A 3 A 4 A 5 A 6 A 7 A 8 上上上上 上上 图 3-3 外键盘电路 各按钮开关说明: 按钮开关 s1:轿厢内一楼呼叫开关;按钮开关 s2:轿厢内二楼呼叫开关; 按钮开关 s3:轿厢内三楼呼叫开关;按钮开关 s4:轿厢内四楼呼叫开关; 按钮开关 s5:轿厢内五楼呼叫开关;按钮开关 s6:轿厢内开门呼叫开关; 按钮开关 s7:轿厢内关门呼叫开关;按钮开关 s8:轿厢内紧急呼叫开关; 外部 8 个按键同理。实物图如下图 3-4、3-5 所示。 10 图3-4 内部按键 图3-5 外部按键 3.2.2 显示电路 数码管显示,电梯的基本功能是具备显示电梯当前的楼层,所以设计中在轿厢和 每个楼层中都放置了一个数码显示管来显示当前电梯所在的楼层。接线图如图 3-6 所 示,图中共有 1 个数码管,通过 74hc595 控制数码显示。本设计中只需要显示当前电 梯所要到达的楼层,所以只需要数码管的 7 段就够了。本设计采用串转并芯片 11 74hc595,它主要有一个时钟接口 Tcp,数据接口 DS,数据输出控制接口 Hcp。每当 Tcp 有一个上升沿时,存储寄存器则把 DS 口的数据存储起来,当 Hcp 口有一个上升沿 时,移位寄存器则把存储器中的数据进行移位, 当 OE 使能时,595 则把存储器中的数 据输出到总线中去,从而实现了,由串口转并口的功能。本设计中除了使用数码管外, 还增加了液晶 12864 显示,电路图如图 3-7. a1 a2 a3 a4 a5 a6 a7 VCC 上上上上上 1 2 3 P2 f 9 g 10 e 1 d 2 A 3 c 4 DP 5 b 6 a 7 A 8 DS1 Dpy Blue-CA Q1 1 Q2 2 Q3 3 Q4 4 Q5 5 Q6 6 Q7 7 GND 8 Q7 9 M R 10 SHcp 11 STcp 12 OE 13 DS 14 Q0 15 VCC 16 U1 74HC595 1 2 P1 a1 a2 a3 a4 a5 a6 a7 GND VCC上上 图 3-6 数码管显示部分接线图 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 P2112864 LCD上上 VCC VCC VCC 10 R14 R34 PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 PG0 PG1 PG2 图 3-7 12864 显示电路 3.2.3 电机驱动模块 本设计用的是 TB6560 驱动模块 TB6560 两相混合式步进电机驱动芯片,内部二个 全桥 MOSFET 驱动、内部设置温度保护及过流保护,自带 2、8、16 细分可选,足够满 12 足每分钟从几到近千转的应用要求。该芯片还有自动半流的功能,能有效地减少驱动 器发热量。并且支持各种步进电机选型,可选择力矩稍大的混合式或者永磁式步进电 机,使电机工作在允许最大转矩的百分之 30 至 50 之间,并且该芯片提供多档电流设 置和电流衰减模式,支持相同动力指标下各种不同参数的步进。本驱动模块采用高速 光耦 6N137 进行单片机的与步进电机隔离,有效地保护了主控电路。6N1376 光耦合器 是单通道的光耦速度比较高的光耦合器,其内部有一个发光二级管和一个光敏二极管、 当发光二级被点亮,光敏二极管导通,从而实现了信号的传递。6N137 的转换速率高达 10MBit/s,是典型的高速数字开关。在此电路中 6N1376 用在 TB6560 的时钟接口上, 这样能快速有效地接收单片输出给 TB6560 的信号,为了节约成本,但不失使用性,对 于 TB6560 的使能端,则采用光电转换速度稍微慢点的 PC817。驱动电路如图 3-8 所示。 TQ1 1 TQ2 2 CLK 3 EN 4 RESET 5 SGND 6 OSC 7 VMB 8 MB 9 PGNDB 10 RB 11 MB- 12 MA 13 RA 14 PGNDA 15 MA- 16 17 VMA 18 TSD 19 VCC 20 DIR 21 M2 22 M1 23 PFD2 24 PFD1 25 *TB1 TB6560 1 2 3 4 5 6 12 11 10 9 8 7 S4 SW DIP-6 13 2 VV GND IN OUT U4 7805 3 NC 4 6 5 NC 1 27 8 A Vcc VE Vo GND K U3 6N137 3 NC 4 6 5 NC 1 27 8 A Vcc VE Vo GND K U2 6N137 104 C2 1001000pf C7 VCC VCC VCC GND GND 200 R1 200 R2 200 R3 GND : 10k R4 10 R5 10 R6 VCC EN CW EN1 EN1 CW1 CW1 CLK1 U1 PC817 VCC GND 1 Diode 1N4148 2 Diode 1N4148 3 Diode 1N4148 4 Diode 1N4148 GND GND vbb VCC VCC SM1 SM2 SM1 SM2 DCY1 DCY2 DCY1 DCY2 1000u C9 220u C10 GND +5v vbb 1 2 3 4 P2 Header 4 1 2 3 4 5 6 P1 Header 6 vbb 1 2 3 4 5 6 7 8 9 P4 Header 9H VCC 1001000pf C8 10 R7 EN CW SM1 SM2 DCY1 DCY2 EN CW CLK1 D1 LED0 1K R16 Res1 1K R17 Res1 GND clk clk D60 IN4148 D61 IN4148 D62 IN4148 D63 IN4148 图3-8 TB6560驱动电路图 3.2.4 Atmegal128最小系统模块 13 Atmegal128 是高性能、低功耗的 AVR 8 位微处理,128K 字节的系统内可编程 Flash,4K 字节的 EEPROM,4K 字节的内部 SRAM,多达 64K 字节的优化的外部存储器空 间;53 个通用 I/O 口,两个具有独立的预分频器和比较器功能的 8 位定时器/计数器, 两个具有预分频器、比较功能和捕捉功能的 16 位定时器/计数器,具有独立预分频器 的实时时钟计数器。8 路 10 位 ADC 并且具有独立片内振荡器的可编程看门狗定时器, 片内模拟比较器。通过熔丝位可以选择 ATmega103 兼容模式。寿命: 100,000 次写/擦 除周期,可以对锁定位进行编程以实现软件加密,可以通过 SPI 实现系统内编程,它 的工作电压是 2.7 - 5.5(2.7 - 5.5V ATmega128L4.5 - 5.5V ATmega128) 。如图 3-9 是 Atmegal128 芯片图。Atmegal128 的最小系统包括晶振电路,和复位电路,如图 3- 10 是复位电路,Atmegal128 是低电平复位。如图 3-11 是晶振电路,本设计采用的是 8M 晶振。 PEN 1 PE0 (RXD0/PDI) 2 PE1 (TXD0/PDO) 3 PE2 (XCK0/AIN0) 4 PE3 (OC3A/AIN1) 5 PE4 (OC3B/INT4) 6 PE5 (OC3C/INT5) 7 PE6 (T3/INT6) 8 PE7 (IC3/INT7) 9 PB0 (SS) 10 PB1 (SCK) 11 PB2 (M OSI) 12 PB3 (M ISO) 13 PB4 (OC0) 14 PB5 (OC1A) 15 PB6 (OC1B) 16 PB7 (OC2/OC1C) 17 TOSC2/PG3 18 TOSC1/1PG4 19 RESET 20 VCC 21 GND 22 XTAL2 23 XTAL1 24 PD0 (SCL/INT0) 25 PD1 (SDA/INT1) 26 PD2 (RXD1/INT2) 27 PD3 (TXD1/INT3) 28 PD4 (IC1) 29 PD5 (XCK1) 30 PD6 (T1) 31 PD7 (T2) 32 PG0 (WR) 33 PG1 (RD) 34 PC0 (A8) 35 PC1 (A9) 36 PC2 (A10) 37 PC3 (A11) 38 PC4 (A12) 39 PC5 (A13) 40 PC6 (A14) 41 PC7 (A15) 42 PG2 (ALE) 43 PA7 (AD7) 44 PA6 (AD6) 45 PA5 (AD5) 46 PA4 (AD4) 47 PA3 (AD3) 48 PA2 (AD2) 49 PA1 (AD1) 50 PA0 (AD0) 51 VCC 52 GND 53 PF7 (ADC7/TDI) 54 PF6 (ADC6/TDO) 55 PF5 (ADC5/TM S) 56 PF4 (ADC4/TCK) 57 PF3 (ADC3) 58 PF2 (ADC2) 59 PF1 (ADC1) 60 PF0 (ADC0) 61 AREF 62 GND 63 AVCC 64 U3 ATm ega128L-8AI 3-9 是 Atmegal128 芯片图 VCC RESET S1 10u C3 10K R1 14 3-10 复位电路 12 Y1 XTAL GND 104 C8 104 C9 XTL1 XTL2 3-11 晶振电路 3.2.5 电源模块 本设计用的是 LM2576 稳压芯片,它有 5 个管脚,LM2576 内部设有含 52kHz 振荡器、 和 1.23V 基准稳压电路、过热关断电路、过电流限制电路、放大器、以及比较器和内 部稳压电路等。如图 3-12 是电源电路图,途图中 R6 是滑动电阻器,通过调节 R6 电阻 的大小,可以调节 LM2576 反馈端 4 电压的大小,从而可以改变输出电压的大小。 D2 1N5819 GND 1000U C1 Cap Pol1 C3 Cap 220u 1 2 P1 FB 4 ON/OFF 5 GND 3 IN 1 OUT 2 U1 LM2576HVT-3.3 GND C44 GND S1 SW-DPDT 10mH L1 Inductor Iron C45 GND 12 L3 12 L2 10 R1 10 R3 10 R4 S2 SW-DPDT GND GND 1 2 3 4 5 6 7 8 9 P7 1 2 3 4 5 6 7 8 9 P6 1 2 3 4 5 6 7 8 9 P4 1 2 3 4 5 6 7 8 9 P5 2 3 4 5 1 P3 12 L4 S3 SW-DPDT GND 12V上上 12V上上 GND 5V上 R6 3-12 电源电路图 15 3.2.6 光电传感器模块 在竖井各个楼层设置光电传感器,在副轿厢上安装一个小薄木棍,当轿厢往上运 动,副轿厢则向下运动,轿厢往下运动,副轿厢则向上运动;当副轿厢运动时它上面 的小木棍经过光电传感器,则光电传感器接收光线段接收不到光线,则传感器输出端 输出一个高电平。单片机通过检测每个楼层的光电传感器电平的变化,知道电梯轿厢 的位置。如图由于传感器的输出端输出比较弱,所以在传感器的输出端接一个 1K 的上 拉电阻,增强它的输出特性。传感器的内部结构如图 3-13。 图 3-13 光电传感器电路图 图 3-14 光电传感器 3.2.7 自动开关门模块 本设计中,设计了一个自动开关门,它的功能有,当电梯运行到目标楼层后,自 动打开、关闭门,当在关门的时候,假如检测到中间有东西,则门自动打开。本模块 是有 2 个限位开关,霍尔传感器,1 个接近开关,一个步进电机,以及其他小滑轮、小 皮带等组成。由步进电机提供开关门的动力,2 个霍尔传感器控制开关、关门时门移动 的位置,光电传感器检测门中间是否有东西,有则输出一个低电平。如图 3-14 是实物 图。 1 2 3 P2 1 1k 12 L1 VCC 1 2 3 P3 GND 上上上上上 上上上 16 图3-15 自动开关门 3.2.8 紧急报警 轿厢内设紧急报警按钮,当电梯突然发生故障使轿箱内的人被困时,可以通过按 下紧急停止按钮,清除所有呼叫信号,并将电梯直接运行至一楼,并发出报警信号。 由于这个部分要求电梯的任何运行状况下都要有效,为保险起见,我们将此作为一个 独立的模块。 图 3-16 蜂鸣器报警原理图 3.2.9 称重模块 在选用 A/D 芯片时,选用了一款专为高精度电子秤而设计的 24 位 A/D 转换芯片 HX711,该芯片具有集成度高、响应速度快、抗干扰性强等优点,内部还自带放大,具 有 A/D 采样和信号放大等双重功能。本设计中,把传感器装在电梯桥厢的顶部,当桥 厢里面的重量变化时,可以测量出此时的重量,当电梯的重量超出一个限定阀值时, 电梯将不暂时运行,并发出警报,直到电梯的重量在限定值内。如图 3-17 是 Hx117 运 行流程图,3-18 是 Hc117 的电路图。 紧急停止 按钮 求救信号 清除所有呼叫信号 电梯运行至一楼 发出报警信号 维修电梯解 救被困人员 电梯管理 人员 清除警报 等待启动 17 称重传感器 HX711 内部放大 HX711A/D 转换 ATMEGA128 单片机 12864 液晶显示 器 报警模块 图 3-17 HC117 运行流程图 VSUP 1 BASE 2 AVDD 3 VFB 4 AGND 5 VBG 6 INNA 7 INPA 8 INNB 9 INPB 10 PD_SCK 11 DOUT 12 XO 13 XI 14 RATE 15 DVDD 16 U2 HX711 20K R2 Res2 8.2K R3 Res2 1K R4 Res2 1KR5 0.1uF C5 Cap 1uF C3 Cap 1uF C4 Cap 0.1uF C13 P37 P36 1 2 3 4 5 6 P3 Header 6H 0.1uF C6 Cap 1 2 3 4 P6 Header 6 P37 P36 E+ E- A- A+ B- B+ Q2 8550 VCC 图 3-18 Hx117 电路图 18 第四章 软件设计 本设计由于采用键盘矩阵来代替外呼内选按钮,而电梯的运行方向是根据这些 呼叫按键和选择按键来决定的,所以单片机要不断的扫描键盘来获取各层呼叫状态, 从而控制电梯的运行。故键盘矩阵扫描是本系统软件设计的重要一部分,另外还要 把从键盘扫描到的各层的按键信息存储起来,然后和结合电梯的运行状态比较,判 断响应的方向,当电梯到达目的楼层时牵引上升电机停止转动,此时自动开关门系 统响应,当在关门的过程中,光电传感器检测到中间有人时,门自动再次打开,稍 等一会,在关门,直到门合上。电梯在没有到达目标楼层时,门不会自动打开。假 如在关门的时候电梯厢的重量超出了设定值,则电梯停止运行,启动蜂鸣器发出警 报。直到电梯厢的重量小于设定值,电梯在继续响应下个操作,乘客进入电梯之后 可选择去哪一层,然后电梯根据乘客的选择判断去哪一层,继续运行。通过单片机 控制电梯在上升过程中只响应上升呼叫,下降过程中只响应下降呼叫,当外部的响 应和电梯现在的运动方向反向,则单片机把此响应储存起来,等执行完原来方向上 的响应后,再反过来执行此方向上的响应。在电梯运行的同时,显示部分也在不停 地显示此时电梯所在的楼层和运动方向,以及当前电梯的重量。假如电梯在运行的 时候整个系统掉电了,则掉电保护部分的弹簧怎自动复位,把上升电机上的轮子卡 住。 由于本设计采用单片机实现控制,其中主程序部分主要完成系统的初始化,如 中定时器的设置,开中断等。在中断子程序中完成紧急呼叫,特殊呼叫等,其它的 如数码管的显示,键盘的响应,转动电机的控制,称重,延时等均由相应的子程序 来完成。 软件设计思想:采用模块化,分函数的分层次设计方法,将程序分成多个模块, 分层编写。通过调用不同的子程序,实现了复杂功能控制。这样便于调试、修改。 软件编程是实现多功能、智能化、操作方便的关键。在本设计中,可以把程序的各 部分相互结合起来,达到完成各项设计的功能。 4.1 电梯主程序 根据系统要求,电梯的程序应满足以下要求: (1)初始化程序使数码管显示“1”表示电梯处在一楼,等待人进入电梯; (2)主程序主要包括: 判断乘客进入电梯后选择去哪一层,根据判断情况来控制电梯运行,到达目 标楼层后自动开关门; 19 电梯在运行过程中要不断的扫描键盘,从而来判断各楼层有无呼叫请求,并 把当前楼层按键的值给储存起来; 提示模块的控制; 实时显示电梯所在位置及运行状态(上行/下行) ; 开关门有一定的延时来保证乘客走出/进入电梯; 实时检测此时电梯厢的重量; 实时检测楼层检测模块; 实时控制上升电机,开关门电机的转动; 主程序流程图如图 4-1 所示。 开始 初始化 启动 紧急停止 功能演示 按键查询 楼层检测 楼层、方 向显示 电梯逻辑控制 电动机转动 Y N N 演示子程序 Y N Y 图 4-1 主程序流程图 电梯的整个软件设计包括一下几部分:电梯逻辑控制模块、电梯运行模块、键盘扫 描模块、楼层显示模块、楼层检测模块、电梯紧急停止模块、称重模块。 4.2 电梯逻辑控制 20 电梯控制中,单片机扫描楼层外呼内选信号,将楼层呼叫信号与当前楼层运行 状 态进行比较,确定电梯响应上升、下降队列,然后电梯按照运行队列进行电机控制。 而将呼叫信号转化为响应队列的程序模块是电梯控制的核心部分,其算法的严谨性, 决定了电梯的控制性能。其程序源代码见附录一 1.1,逻辑框图如图 4-2 所示: 图 4-2 电梯逻辑图 21 4.3 电梯运行控制 电梯响应上升下降队列时,要对相应的指示灯、上下行状态,以及响应队列做相 应的改变,而实现这一功能模块的就是电梯运行函数。其程序源代码见附录一 1.2, 逻辑框图如图 4-3 所示: 图 4-3 电梯运行逻辑图 4.4 键盘扫描、楼层检测 键盘扫描采用独立按键取值法扫描法,是一种最常用的按键识别方法。若某个 按键按下了,则此时单片机把此时的键值储存下来,产生相应的呼叫信号,并使相 应的呼叫楼层指示灯灯点亮。程序源代码见附录一 1.6。 4.5 紧急停止 为了提高电梯安全性能,设置紧急停止功能,当紧急停止键按下,所有呼叫信 号清空,同时电梯向一楼方向运行,蜂鸣器报警,当电梯运行到一楼,停止报警, 并打开门,等待电梯重新启动信号。程序源代码见附录一 1.3。 22 第五章 系统系统测试测试 由于所设计的基于单片机的电梯控制系统包括软件和硬件两部份, 测试时先对 硬件模块逐个进行测试,然后再将已编译无误的软件结合硬件在一起进行仿真,完 成整个系统的仿真工作。 5.1 软件编译调试 在软件调试中,采用 ICCAVR 软件进行程序调试。首先分别调试各个功能程序, 再对整个程序进行调试,以便修改错误码。具体的调试方法如下: 首先在 ICCAVR 软件中选择建立一个工程,然后新建一个.c 文件,并将.c 文件 添加到工程中,这个功能进行编写,然后再整合各个模块,编写组合。软件调试界 面如下: 图 5-1 软件调试界面 5.2 系统测试 5.2.1 方向优先测试 电梯按某方向运行时,优先响应该运行方向的按钮; 23 测试初始时,轿箱位于一楼,按下二楼,三楼的上下按呼叫,和四楼的向下呼 叫。按键顺序可随意。 测试结果: 表1-1 方向优先测试 结论:系统在向上运行时候,优先相应各楼层的向上呼叫信号,不响应向下的 呼叫信号,向下运行时相反,符合设计要求。 5.2.2 距离优先测试 同一方向有多个按钮呼叫时,优先响应最近的楼层。测试初始时,电梯位于任 一层,如二楼。此时三楼和四楼分别向上呼叫。测试结果:先响应三楼呼叫,再响 应四楼呼叫。 结论:电梯具有距离优先响应的功能,当多层同方向呼叫,首先响应距离当前 楼层较近的呼叫,符合系统设计要求。 各按钮呼叫时指示灯显示正常,电梯响应该按钮的呼叫后,其指示灯应自动熄 灭。 5.2.3 综合测试 测试条件:电梯位于 1 楼,进入三人,其中一人要到 3 楼,另两人到 4 楼。电 梯运行后,3 楼和 4 楼有人向上呼叫,3 楼有人向下呼叫到 1 楼。 测试结果: 表1-2 综合测试 停止楼层 电梯方向 显示 2 上 2 楼上呼叫注销 3 上 3 楼上呼叫注销 4 上 4 楼下呼叫注销 3 下 3 楼下呼叫注销 2 下 2 楼下呼叫注销 24 测试结论:系统具有方向优先、距离优先的功能,基本模拟了实际电梯运行, 完成题目设计指标。 5.2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论