张岩电梯控制器的设计终稿打印版_第1页
张岩电梯控制器的设计终稿打印版_第2页
张岩电梯控制器的设计终稿打印版_第3页
张岩电梯控制器的设计终稿打印版_第4页
张岩电梯控制器的设计终稿打印版_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

1、 理 工 学 院 本科生毕业设计(论文) 学院(系): 电子与电气工程系 专 业: 电气工程及其自动化 学 生: 张 岩 指导教师: 张 燕 完成日期 2011 年 5 月 理工学院本科生毕业设计(论文)电梯控制器的设计 Design of elevator controller总计: 毕业设计(论文)33 页表 格: 0 个插 图 : 22 幅理 工 学 院 本 科 毕 业 设 计(论文)电梯控制器的设计 Design of elevator controller学 院(系): 电子与电气工程系 专 业: 电气工程及其自动化 学 生 姓 名: 张 岩 学 号: 97107007 指

2、 导 教 师(职称):张 燕(讲师) 评 阅 教 师: 完 成 日 期: 理工学院Institute of Technology电梯控制器的设计电气工程及其自动化专业 张岩 摘 要 针对我国电梯业现状,本设计以电子设计自动化技术中的高速集成电路硬件描述语言编写四层电梯控制程序,实验调试平台是Altera公司的QuartusII软件。此程序具有VHDL语言设计里最为常用的三个模块:实体entity,结构体architecture,进程执行单元process。通过程序调试及运行仿真,结果表明,本程序可以完成:电梯运行所在楼层指示、电梯运行方向指示、关门延时设置、超载报警等。本设计对更高层的电梯控制

3、设计具有一定的拓展性。关键词 电梯控制;电子设计自动化;现场可编程门阵列;高速集成电路硬件描述语言Design of elevator controller Electrical Engineering and Automation Specialty ZHANG Yan Abstract: Against the status of China's elevator industry,this thesis designs the eight-floor liftcontroll on the basis of the electron basic on the electronic

4、 design automation(EDA) technologys the very four-story integrated circuit hardware describe language(VHDL),it is debuged in the Altera companys QuartusII software as a platform in experiment.This procedure has commonly most used three pieces of module in language designs:the entity,the architecture

5、 and the process.Through testing the connection of the EDA case,realize the following main functions:The lifts floor shows;the lift operation direction shows;closes prolonging ;overloads reorting to the police,etc.The design can make some evolution for designing to on the senior level lift control.K

6、ey words: Lift control;Electronic design automation;Field programmable gate array; Very high speed integrated circuit hardware description language;目 录1 引言11.1 选题背景11.2 课题的目的和意义11.3 本文的主要工作12 电梯控制器设计的基础依据22.1 FPGA可编程逻辑器件简介22.2 VHDL语言及程序概述22.3 Quartus II的介绍43 电梯控制器的硬件系统设计43.1 FPGA最小系统模块53.1.1 复位和晶振电路

7、53.1.2 电源电路63.2请求信号输入模块63.2.1 按键输入电路63.2.2 电梯位置监测电路7 电梯超重监测电路73.3 信号的输出、显示模块93.3.1 输出显示电路9 电机驱动电路104 电梯控制器软件系统的设计104.1 电梯控制器的控制要求104.2 电梯控制器软件系统总体设计114.3 电梯系统状态图分析125 电梯控制系统的调试与实现165.1各模块设计说明165.2 VHDL源程序仿真18结束语22参考文献23附录一:电梯控制器源程序24附录二:电梯控制器硬件原理图32致谢331 引言1.1 选题背景随着科学技术的发展、近年来,我国的电梯生产技术得到了迅速发展一些电梯厂

8、家也在不断设计创新、修改工艺。更新换代生产更新型的电梯。电梯主要分为机械系统与控制系统两大部份,随着自动控制理论与微电子技术的发展,电梯的拖动方式与控制手段均发生了很大的变化,交流调速是当前电梯拖动的主要发展方向。目前电梯控制系统主要有三种控制方式:继电路控制系统(早期安装的电梯多位继电器控制系统)、FPGA/CPLD控制系统、微机控制系统。继电器控制系统由于故障率高、可靠性差、控制方式不灵活以及消耗功率大等缺点,目前已逐渐被淘汰。微机控制系统虽在智能控制方面有较强的功能,但也存在抗扰性差,系统设计复杂,一般维修人员难以掌握其维修技术等缺陷。而FPGA/CPLD控制系统由于运行可靠性高,使用维

9、修方便,抗干扰性强,设计和调试周期较短等优点,倍受人们重视等优点,已成为目前在电梯控制系统中使用最多的控制方式。1.2 课题的目的和意义目前国内八九十年代安装的许多电梯电气部分用继电器接触器控制系统,线路复杂,接线多,故障率高,维修保养难,许多已处于闲置状态,其拽引系统多采用交流双速电机系统换速,效率低,调速性能指标较差,严重影响电梯运行质量。由于这些电梯交流调压调速系统,交流双速电机拖动系统性能及乘坐舒适感较差,交流调压调速系统属能耗型调速的机械部分无大问题,为节约资金,大部分老式电梯用户希望对电梯的电气控制系统进行改造,提高电梯的运行性能。因此对电梯控制技术进行研究,利用FPGA可编程逻辑

10、器件对老旧电梯的控制系统进行改造,对寻找适合我国老式电梯的改造方法具有十分重要的意义。1.3本文的主要工作本文从应用角度出发,围绕FPGA可编程逻辑器件,设计满足应用要求的四层电梯控制器问题,展开了如下研究工作:熟悉电梯的工作原理,对电梯控制器的外围硬件进行初步设计。熟悉采用Quartus软件进行FPGA系统设计的流程,学习使用VHDL语言设计简单模块并进行调试、仿真。分析系统控制要求,完成电梯控制器的软件系统的设计。利用Quartus 软件进行仿真得出结果。2 电梯控制器设计的基础依据2.1 FPGA可编程逻辑器件简介FPGA是英文Field Programmable G

11、ate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、EPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。FPGA的基本特点主要有: 1采用FPGA设计ASIC电路,用户不需要投片

12、生产,就能得到合用的芯片。 2FPGA可做其它全定制或半定制ASIC电路的中试样片。3FPGA内部有丰富的触发器和IO引脚。4FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。 5FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。 可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。2.2 VHDL语言及程序概述(1) VHDL语言的发展 VHDL诞生于1982年,1987年底被IEEE 和美国国防部确认为标准硬件描述语言。自IEEE公布了VHDL的标准版本(IEEE-1076)之后,各EDA公司相继推出了自己的VHDL设

13、计环境,或宣布自己的设计工具可以和VHDL接口4。 此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本。 现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在未来的很长一段时间内,VHDL与Verilog语言将承担起几乎全部的数字系统设计任务。 VHDL主要用于描述数字系统的结构、行为、功能和接口。除了含有

14、许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件、一个电路模块或一个系统)分成外部(或称可视部分,即端口)和内部(或称不可视部分),即设计实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。(2) VHDL语言的特点 1.与其他的硬件描述语言相比,VHDL具有更强的行为描述能力。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重

15、要保证。 2.VHDL具有丰富的仿真语句和库函数,使得在任何大系统的设计早期,就能查验设计系统的功能可行性,随时可对系统进行仿真模拟,对整个工程的结构和功能可行性做出判断。 3.VHDL语句的行为描述能力和程序结构,决定了它具有支持大规模设计的分解和已有设计的再利用功能。VHDL中设计实体的概念、程序包的概念、设计库的概念为设计的分解和并行工作提供了有利的支持。 4.用VHDL完成一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动把VHDL描述设计转变成门级网表。 5.VHDL对设计的描述具有相对独立性。设计者可以不懂硬件的结构,也不必管最终设计的目标器件是什么,而进行独立的设计。6

16、. 由于VHDL具有类属描述语句和子程序调用等功能,对于完成的设计,在不改变源程序的条件下,只需改变类属参量或函数,就能轻易地改变设计的规模和结构。 (3) VHDL语言程序的基本结构 一个相对完整的VHDL程序(或称为设计实体)具有如图1所示4的比较固定的结构。通常包含实体(Entity)、结构体(Architecture)、配置(Configuration)、程序包(Package)和库(Library)5个部分。库,程序包使用说明设计实体实体(ENTITY)结构体(ARCHITECTURE)配置(CONFIGURATION)GENERIC类属说明PORT端口说明结构体说明结构体功能描述

17、图1 VHLD程序结构图 其中,库、程序包使用说明用于打开(调用)本设计实体将要用到的库、程序包,程序包存放各个设计模块共享的数据类型、常数和子程序等;库是专门存放预编译程序包的地方。实体用于描述所设计的系统的外部接口信号,是可视部分;结构体用于描述系统内部的结构和行为,建立输入和输出之间的关系,是不可视部分。在一个实体中,可以含有一个或一个以上的结构体,而在每一个结构体中又可以含有一个或多个进程以及其他的语句。根据需要,实体还可以有配置说明语句。配置说明语句主要用于以层次化的方式对特定的设计实体进行元件例化,或是为实体选定某个特定的结构体。 如何才算一个完整的VHDL程序(设计实体),并没有

18、完全一致的结论,因为不同的程序设计目的可以有不同的程序结构。通常认为,一个完整的设计实体的最低要求应该能为VHDL综合器所接受,并能作为一个独立设计单元,即以元件的形式存在的VHDL程序。2.3 Quartus II的介绍 Quartus II是Altera公司推出的CPLD/FPGA开发工具,支持原理图、VHDL、VerilogHDL以及AHDL等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。 Quartus II提供了完全集成且与电路结构无关的开发包环境,具有数字逻辑设计的全部特性1。其主要特性包括:可利用原理图、结构框图、VerilogH

19、DL、AHDL和VHDL完成电路描述,并将其保存为设计实体文件;芯片(电路)平面布局连线编辑;LogicLock增量设计方法,用户可建立并优化系统,然后添加对原始系统的性能影响较小或无影响的后续模块;功能强大的逻辑综合工具;完备的电路功能仿真与时序逻辑仿真工具;定时/时序分析与关键路径延时分析;可使用SignalTap II逻辑分析工具进行嵌入式的逻辑分析;支持软件源文件的添加和创建,并将它们链接起来生成编程文件;使用组合编译方式可一次完成整体设计流程;自动定位编译错误;高效的期间编程与验证工具;可读入标准的EDIF网表文件、VHDL网表文件和Verilog网表文件;能生成第三方EDA软件使用

20、的VHDL网表文件和Verilog网表文件。 此外,Quartus II 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。 Quartus II 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。3 电梯控制器的硬件系统设计该系统采用单片FPGA器件实现一个四楼层单个载客箱的电梯控制器,而且遵循方向优先的原则,能够提供提前关电梯门和延迟关电梯门,超载报警,同时指

21、示电梯运行情况,楼层间的运行情况以及电梯所在楼层的等待情况。 根据设计任务和要求电梯控制硬件系统可分为FPGA最小系统模块,请求信号输入模块,信号输出显示模块几个部分,系统框图如图2所示2。时钟信号超 载延时关门提前关门电梯位置检测清除报警FPGA控制模块楼层请求请求信号输入模块运行状态显示所在楼层显示门控制信号超载报警电机驱动信号请求信号显示信号输出显示模块图2 电梯控制器硬件系统框图3.1 FPGA最小系统模块本设计以Altear公司的Cyclone II系列的EP2C5T114C8芯片为控制核心,FPGA最小系统为控制器实现电梯控制的各项功能,最小系统包括EP2C5T114C8芯片,复位

22、电路,晶振电路,电源电路1。 复位和晶振电路 一个芯片,尤其是可编程芯片,通常在上电的瞬间需要一个短暂的时间进行内部参数的初始化,这个时候芯片无法立即进入工作状态。通常称上电初始化这些工作为复位, 完成这个功能的电路称之为复位电路,如图3所示。FPGA芯片使用的是低电平复位,支持上电复位和手动复位,RESET按下之后产生低电平。 图3 复位电路原理图晶振是为电路提供频率基准的元器件,通常分成有源晶振和无源晶振两个大类,无源晶振需要芯片内部有振荡器,并且晶振的信号电压根据起振电路而定,允许不同的电压,但无源晶振通常信号质量和精度较差,需要精确匹配外围电路如电容、电感、电阻等,需要更换晶振时同时更

23、换外围电路。有源晶振不需要芯片的内部振荡器,可以提供高精度的频率基准,信号质量也较无源晶振要好。本课题FPGA芯片采用50MHZ的有源贴片晶振作为芯片工作的时钟输入,如图4所示。 图4 晶振电路原理图 电源电路 电源是整个系统的能量来源,电源的好坏影响整个系统的稳定性和可靠性,所以电 源电路的设置至关重要。直流稳压电源的工作电路,传统方式采用分立元件构成,目前均采用集成三端稳压器1085,1117构成。本系统使用的电源电压有:1.2V 1.5V,3.3V,5V。其中1.2V 是FPGA的核心电压;3.3V是FPGA的IO端口电压,电路如图5所示1。 图5 FPGA电源电路原理图LM1085是一

24、款典型的低压差线性稳压集成电路,具有限流及过热保护功能,输入输出电压差低至1.5 V,输出电流可达3A。LM1085可以固定输出3.3V,5V,12V电压。LM1117是一个低压差电压调节器,具有限流和热保护功能,压差在1.2V输出,负载电流为800mA时为1.2V。3.2请求信号输入模块请求信号输入模块主要用于采集乘客请求输入信号,楼层的位置信号和轿厢的超载信号。乘客请求输入信号用按键输入电路实现输入,楼层到达信号来自光敏传感器,轿厢超载信号则产生于压力传感器。 按键输入电路 根据电梯请求信号,设置一到四层轿厢呼梯按键,提前关门按键,延时关门按键。厅外设置上升,下降和电梯锁按键。考虑到FPG

25、A负载电流能力有限,因此按键一段均通过10K电阻再与FPGA引脚相连,电路原理如图6所示,图中REL为10K排阻。图6 按键输入电路原理图 电梯位置监测电路 电梯位置监测由光电传感器实现,红外发射器安装在电梯轿厢底部,接收器安装在电梯井道各楼层入口处,光电传感器电路由两部分电路组成:红外发射器及由光敏二极管构成的接收器。光敏二极管在没有光照射的时候,反向电阻很大,二极管处于截止状态。当红外发射管经驱动之后,会发出一定频率的红外光,光敏二极管通过一条长闭合(只在顶端开个小孔)的通道接收来自红外发射器发射的红外光,从而驱动光敏二极管,使得光敏二极管导通,则控制输出为高电平。光电传感器电路原理图如图

26、7所示6。 图7 电梯位置监测电路原理图电梯超重监测电路 电梯超重监测模块采用悬臂梁式称重传感器,它是一种电阻应变式传感器。将其固定在电梯模型的最上端,将滑轮固定在称重传感器上,当称重传感器上所承受的重力变化时,也就是装载物的重量发生变化时,重传感器内部将会产生相应的电阻变化,从而导致最终输出电压发生变化。 称重传感器的内部结构如图8所示6。它由4片应变片组成,能将试件上的应变变化转换成电阻变化,其电阻相对变化R/R与轴向应变L/L成正比。 (1) 将称重传感器接上电源E,分别为应变片的电阻 图8称重传感器内部结构图 当输出端接高输入阻抗时,可视电桥为开路状态,得输出电压: (2) 当应变片受

27、重力作用产生应变时: (3)若4片应变片性能一致,且相邻桥臂所接应变片承受相反应变,相对桥臂所接应变片承受相同应变(如悬臂梁在一端受压时,上测两应变片拉长,下测两应变片压短),则有 (4)则 (5) 即与应变L/L成正比,的变化反映了重量的变化。 因为称重传感器输出的是一个毫伏级的电压信号,所以在其输出端应加微弱信号放大电路。其放大电路原理图如图9所示6。 图9 信号放大电路原理图 该电路第一级采用AD620高精度放大器,第二级采用OP07双极性运算放大器进行后级再放大。其中AD620的放大倍数A的计算公式为 (6)由图9可知,传感信号首先通过AD620放大将近100倍,再通过OP07构成的放

28、大倍数可调电路,从而能更灵活的调节放大倍数。在OP07构成的电路中接了一个20K的调零电位器,以便于电压补偿。3.3 信号的输出、显示模块本系统的输出信号有两种: 一种是控制电机的升降控制信号和开门/关门控制信号;另一种是面向用户的提示信号(含楼层显示、方向显示、已接受请求显示等),用户提示信号分别用数码管和发光二极管实现。 输出显示电路电梯轿厢内显示输出为四段七位数码管显示,其显示功能主要由软件的设计实现,为了节省系统的资源,本系统采用动态显示。动态显示原理如下:当向LED的段码数据口发送第一个8位数据,这时只有一个数码管显示该数码,延时一段时间后可以发送第二个8位数据,显示器分时轮流工作,

29、虽然每次只有一个显示器显示,但由于人的视觉暂留现象,我们仍能感觉到所有显示器都在同时显示。考虑到FPGA驱动能力有限,我们采用三极管 9012驱动数码管。并由74HC138译码器控制位码的选通,只有当使能G1为1,G2A,G2B为0时译码器有效,故G1接VCC。G2A, G2B接地,否则所有的输出被封锁在高电平上。数码管的段码由FPGA通过一个低功耗的锁存器(74HC573)给出,电路如图10所示。 图10 数码管显示电路原理图 厅外电梯所在层,超重报警信号,电梯锁信号输出由发光二极管显示, FPGA主控电路发出的信号通过74HC573锁存器然后驱动发光二极管LED工作。当74HC573输出端

30、(如:Q1、Q2、Q3)为低电平时使得发光二极管两端正向电压大于发光二极管的导通电压,发光二极管发光,如图11所示。 图11 楼层指示灯电路原理图电机驱动电路本系统使用变频器驱动三相交流电机如图12所示2。,其中的VCC是三相交流电经过整流稳压而得,FPGA IO口与变频器IO口连接,FPGA通过IO口发出SPWM脉冲驱动6个IGBT,IGBT输出的电压波形也是SPWM波,SPWM波经过电机的电感后波形变成近似正弦波的电压,所以SPWM波驱动电机的效果与三相交流电驱动电机的效果是一样的。使用SPWM波驱动电机的优点是:SPWM波的频率是可以根据需要改变的。通过改变驱动电机的SPWM波的频率可以

31、改变电机的速度,改变电机的输出功率。 图12 电动机驱动电路原理图 4 电梯控制器软件系统的设计4.1 电梯控制器的控制要求 用VHDL语言完成4层的电梯控制系统。要求指示电梯所在楼层位置等其它必要的信号。通过仿真结果验证其正确性。系统的要求如下: 1.电梯运行锁用一按钮代替(开锁上电),低电平可以运行,高电平不能运行。 2.每层电梯入口处设有上行、下行请求按钮,电梯内设有乘客到达层次的停站要求开关,高电平有效。 3.有电梯所处楼层指示灯和电梯上行、下行状态指示灯。 4.电梯到达某一层时,该层指示灯亮,并一直保持到电梯到达另一层为止。电梯上行或下行时,相应状态指示灯亮。 5.电梯接收到停站请求

32、后,每层运行2秒,到达停站层,停留2秒后门自动打开,开门指示灯亮,开门6秒后电梯自动关门。 6.能记忆电梯内、外的请求信号,并按照电梯的运行规则依次响应,请求信号保留至响应后撤除。 7.人数超载或超重用一按钮代替,高电平有效,超载时电梯不能运行,并有相应指示。 8.事故报警按钮高电平有效,事故报警后系统停止运行,并有指示灯,信号保留至事故消除。4.2 电梯控制器软件系统总体设计根据系统设计要求,并考虑系统设计的可验证性,整个系统的顶层原理图如图13所示。 图13 电梯控制器顶层原理图输入端口:时钟clk1频率为2Hz,电梯锁lock,超载overweight、警报器开关alarm、提前关门qu

33、ick,延时关门delay,不马上关门delaydengwo,UP1、UP2、UP3分别表示一楼、二楼、三楼有向上请求、down2、down3、down4分别表示二楼、三楼、四楼有向下请求,It3.0分别表示电梯停在一、二、三、四楼。输出端口:开门状态 dooropen、上升状态up、下降状态down、报警灯alarmled 超重灯overweightled,上行状态灯upled,下降状态灯downled,开门灯dooropenled 。led3.0分别表示一二三四楼层的指示灯。该设计中,电梯的控制状态包括运行状态,停止状态及等待状态,其中运行状态又包含向上和向下状态。主要动作有开、关门,停靠

34、和启动。乘客可通过键入开、关门按钮,呼唤按钮,指定楼层按钮控制电梯。因此,整个电梯控制器应包括5个组成部分:时序输出控制器;电梯服务请求处理器;电梯升降控制器;上升及下降寄存器和电梯次态生成器。图14为电梯控制器的内部结构12。Clk1LED3.0DELARYQUICK时序输出电梯升降控制器电梯次态生成器电梯服务请求处理器上升请求寄存器下降请求寄存器DOWNLOCKUPLEDDOWNLEDDOOROPEN up DOWN LOCK ALARM图14 电梯控制器的内部结构4.3电梯系统状态图分析定义电梯工作状态如下:初始状态、开门状态、关门状态、开门等待第1秒、开门等待第2秒、开门等待第3秒、开

35、门等待第4秒、上升状态、下降状态和停止状态。在每个状态下,判断输入信号的请求,转入下一状态且产生对应的输出信号。 初始状态 开门状态 图15电梯初始状态流程图图15为电梯初始状态。电梯经过复位按键,进入初始状态,到达一层后开门,转入开门状态。开 门 等待1秒 等待4秒 关 门 等待3秒 等待2秒 图16 电梯关门状态流程图图16为电梯开门之后经过等待1秒、等待2秒、等待3秒、等待4秒状态之后关闭电梯门,实现了开门4秒后关门的功能。 上/下 在1层 上关 门 无请求无请求 下 在4层无请求 在3层 在2层无请求 任何请求 关门状态 上其他请求4层请求 3层请求任何请求请求 图17电梯运行状态流程

36、图1 上/下 在4层 下 关 门 无请求无请求 上 在1层无请求 在2层 在3层无请求求 任何请求 关门状态 下其他请求1层请求 2层请求任何请求请求 图18电梯运行状态流程图2 图17、18中电梯进入关门状态,并开始判断电梯处于上升或下降状态,如电梯无任何请求,则维持状态直到有请求信号。如电梯在四层并处于上升状态,则收到任何请求信号时,电梯进入下降状态。如电梯在三层并处于上升状态,则收到一、二层请求信号时,电梯进入下降状态;收到四层请求信号时,电梯进入上升状态。如电梯在一层并处于上升状态,则收到任何请求信号时,电梯进入上升状态。如电梯在四层并处于下降状态,则收到任何请求信号时,电梯进入下降状

37、态。如电梯在三层并处于下降状态,则收到一、二层请求信号时,电梯进入下降状态;收到三、四层请求信号时,电梯进入上升状态。如电梯在一层并处于下降状态,则收到任何请求信号时,电梯进入上升状态。 下 未到达 下降一层 已到达下 停止 图19电梯下降状态流程图图19中当电梯进入下降状态,则向下一层并判断是否到达停站请求楼层,如已到达目的层,则电梯转入停止状态;如未到达目的层,则持续下降状态再向下一层并判断是否到达停站请求楼层,如此循环直到到达目的楼层。 上 未到达 上升一层 已到达 上 停止 图20电梯上升状态流程图 图20中当电梯进入上升状态,则向上一层并判断是否到达停站请求楼层,如已到达目的层,则电

38、梯转入停止状态;如未到达目的层,则持续上升状态再向上一层并判断是否到达停站请求楼层,如此循环直到到达目的楼层。 停止状态指示灯清零 开门 图21电梯停止状态流程图开始系统初始化是否有乘客请求光电传感器给出现在电梯厢的位置比较电梯目前位置与乘客所在位置,控制电梯向乘客方向运动。乘客进入电梯,测量称重电梯厢的重量,判断是否超重?超重灯亮电梯向乘客申请的楼层运动,光电传感器给出轿厢位置是否到达乘客申请的楼层?是,电梯停止,开电梯厢门;否,继续运动。判断所有的申请是否被响应完?继续响应乘客的请求结束图21中当电梯转入停止状态,则马上清除所到层的呼叫请求及指示灯,并进入开门状态。 是 否 是 否 是 否

39、 图22 电梯超重监测流程图 图22中,当有乘客请求时,光电传感器给出轿厢位置,比较电梯目前位置与乘客所在位置,控制电梯向乘客方向运动,乘客进入电梯,测量称重电梯厢的重量,判断是否超重?如果超重,控制器报警,超重警报灯点亮,警报解除后电梯正常动作。电梯向乘客申请的楼层运动,光电传感器给出到达楼层位置,电梯门开。判断所有的申请是否被响应完,如果没有继续响应。5电梯控制系统的调试与实现5.1各模块设计说明本程序由三个基本模块组成,包括调用VHDL库模块、实体设计模块和结构体设计模块。而在结构体模块中又内嵌有进程执行单元4。(1)调用VHDL库通过library语句,本程序应用了VHDL库中的“通用

40、ieee库”和“标准std库”。library ieee;(2)entity实体设计模块entity contrl is port(clk1,lock,alarm,overweight,It1,It2,It3,It4,up1,up2,up3,down2,down3,down4:in std_logic;-lock为电梯锁开关 alarm为警报器开关 overweight为超重开关 It1、It2、It3、It4分别表示电梯停在一二三四楼 up1表示一楼有向上请求 Up2表示二楼有向上请求 up3表示三楼有向上请求 down2表示二楼有向下的请求-down3表示三楼有向下请求 down4表示四楼

41、有向下请求quick,delay,dengwo:in std_logic;-分别表示快速关门 延长一段时间关门 不马上关门 led1,led2,led3,led4:out std_logic;- 一二三四楼层的指示灯alarmled,overweightled,upled,downled,dooropenled:out std_logic;-报警灯 超重灯 上行状态灯 下降状态灯 开门灯 end contrl;实体语句用关键词entity开头,本程序以contrl作为所要描述的实体名,在结束实体语句的时候使用end contrl。在entity语句的实体说明部分,用port()语句描述实体对外

42、界连接的端口(数目、方向和数据类型),输入模式是clk1/up1/up2/up3/quick /down2/down3/down4/alarm/lock/overweight/delay/dengwo;其余的都是输出模式。(3)architecture结构化设计模块和process进程执行单元实体xin以结构化与行为化描述的结构体如下:architecture xin of contrl istype.state_typeis(start,rukou,up,down,dooropen,stop,wait1,wait2,wait3,wait4,wait5,wait6,wait7,wait8,wa

43、it9,upwait1,upwait2,dnwait1,dnwait2);-start表示初始化状态 rukou表示程序执行状态 up上行状态 down下降状态 dooropen开门状态 stop停止运行状态-后面几个状态用来延时signal state:state_type:=start;signal stopcun: std_logic_vector(3 downto 0);-电梯停止楼层存储器signal upcun,downcun: std_logic_vector(2 downto 0);-上升请求存储器 下降请求存储器signal dd1,dd2,dd3: std_logic_ve

44、ctor(3 downto 0);-信号用来交换数据beginend xin;由于篇幅的关系,结构体部分并不能尽录。本模块以关键字architecture做结构体的开头,描述contrl实体的结构体xin。architecture和begin之间是结构体说明区,列举了电梯运行的各个状态;begin和end之间是结构体语句区,在此将嵌入process进程语句去对实体行为作出说明。process(clk1)begincase when isend case;end process;关键字process后面括号中的信号为时钟信号,它列举可激活进程语句的信号,唯有这些信号上的事件能引起进程语句执行。关

45、键字begin把进程语句分为进程说明和进程语句两部分。进程说明在时钟信号和begin之间,说明局部变量或某些仅在进程内部用的内容。进程语句部分在begin和end process之间,进程内的所有语句都是按顺序一个接一个执行的。5.2 VHDL源程序仿真(1) 电梯上锁模拟电梯上锁,有请求也不执行; (2) 电梯报警模拟当有紧急情况时,报警灯亮,有请求不会执行;(3) 电梯超载模拟当电梯超载时,超载警报灯亮,有请求不执行(4) 电梯运行模拟这个图模拟的是多个请求时,电梯的运行情况。先是一楼有向上请求想到二楼去同时二楼有向上请求到四楼去,接着四楼有下降请求回到一楼,电梯运行情况是:电梯在一楼(一

46、楼指示灯led1亮)时开门持续6秒(波形上可以看到开门灯亮),关门后,电梯向上运行(上行指示灯亮2秒),到二楼后(二楼指示灯led2亮),电梯开门(同样开门灯持续亮六秒),接着电梯继续上升,上行指示灯亮2秒,到三楼时,三楼指示灯led3亮,电梯继续向上运行,上行指示灯亮2秒,到达四楼时四楼指示灯亮,同时电梯门打开(开门灯亮6秒),关门后,电梯向下运行(下降指示灯亮2秒),到达三楼时三楼指示灯亮,电梯继续向下运行(下降指示灯亮2秒),到达2楼时二楼指示灯亮,电梯继续向下运行(下降指示灯亮两秒),到达一楼时,电梯门打开(开门灯亮),关门后没有其它请求,电梯停止运行。 四楼有个向下的请求要到三楼去,

47、二楼有个向下的请求要到一楼,电梯运行情况为:电梯开始时在一楼,一楼指示灯亮,电梯向上运行(上升指示灯亮2秒),到达二楼,二楼指示灯亮,电梯继续向上运行(上升指示灯亮2秒),到达三楼,三楼指示灯亮,电梯仍向上运行(上升指示灯亮2秒),到达四楼,四楼指示灯亮,电梯门打开(开门灯亮6秒),电梯关门后,电梯向下运行(下降指示灯亮2秒),到达三楼(三楼指示灯亮),电梯开门(开门指示灯亮6秒),电梯继续下降(下降指示灯亮2秒),到达二楼(二楼指示灯亮),电梯开门(开门指示灯亮6秒),电梯继续下降(下降指示灯亮2秒),到达一楼,电梯门打开,电梯运行结束。(5) 电梯开门延时模拟 电梯受到一个不马上关门信号(

48、dengwo=1),电梯关上的门重新打开,并延长一段时间门。(6) 电梯紧急开门模拟在这幅波形图上,当第二次开门时有一个快速关门信号(quick=1)开门灯亮了四秒就灭了(电梯关门了),当第三次开门时收到一个延时信号(delay=1),开门灯亮了8秒才灭。结束语本系统从硬件和软件两方面阐述了基于FPGA的电梯控制系统的设计。设计是以FPGA来控制电梯的逻辑运行,具有编程灵活,性能可靠等优点,可以实现对电梯方向优先的控制。通过超载监测模块可以实现轿厢的重量监测,以保证乘客的安全通过本系统的设计,可以得出以下结论:(1)系统硬件电路设计应简洁合理,既可以降低系统成本,又减小系统的体积,更加满足现场

49、控制的实际要求;(2)用VHDL硬件描述语言的形式来进行数字系统的设计方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发成本,这种设计方法必将在未来的数字系统设计中发挥越来越重要的作用。(3)本系统有良好的扩展性,对程序进行修改可实现多层控制。(4)在本设计过程中还需要改进的地方有,电梯运行规则的优化、设计更多的报警功能等。参考文献1 徐志军,徐光辉.CPLD/FPGA的开发和应用M.北京:电子工业出版社.2008.4:30-422 李惠升电梯控制技术M.北京:机械工业出版社.2009.2:18-403 杨晓慧电子技术EDA实践教程M北京:国防工业出版

50、社. 2010.1:5-124 潘松,黄继业EDA技术实用教程M北京:科学出版社.2009.2:4-605 王诚,吴继华.Altera FPGA/CPLD设计M.北京:人民邮电出版社.2008.3(2):32-526 陈嘉盛,电梯结构原理M.机械工业出版社.2009.5(3):68-937 杨则,龙海燕VHDL与数字系统设计M北京:电子工业出版社.2010.4:64-738 潭会生,张昌凡EDA技术及应用M西安:电子科技大学出版社.2009.8(4):112-1309 李伯宗,蓉晖译VHDL设计表示和综合M北京:机械工业出版社.2010.3:40-5210 曾繁秦. EDA 工程的理论与实践M.电子工业出版社.20010.5:72-8011 边计年,薛宏熙译用VHDL设计电子线路M北京:清华大学出版社.2008.8:98-12312 刘燕萍,高振斌.EDA实用技术和应用M.国防工业出版社.2009.4:74-8013 谢自美.电子线路设计实验测试(第二版)M,华中科技大学.2010.5:47-5214 Ma

温馨提示

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

评论

0/150

提交评论