1、本科毕业设计(论文)(20 届)基于 FPGA 六层电梯控制系统所在学院专业班级 通信工程学生姓名指导教师完成日期目 录摘要 .IIIAbstract.IV第一章 绪论 .11.1 课题设计的背景 .11.2 课题设计的目的和意义 .11.3 课题设计思路与原理 .21.4 论文的组织结构与安排 .2第二章 FPGA 设计流程与方法 .42.1 EDA 技术介绍 .42.2 FPGA 简介 .42.2.1 FPGA 的基本结构 .52.2.2 FPGA 的特点 .62.3 自顶向下(Top to Down)设计方法 .62.4 VHDL 概述 .92.4.1 VHDL 语言简介 .92.4.2
2、 VHDL 设计的特点 .102.5 系统开发平台 .112.5.1 QUARTUS 简介 .112.5.3 Quartus II 开发界面 .122.6 小结 .13第三章 电梯控制方案确定 .143.1 基于 PLC 技术的电梯控制设计方案 .143.2 PLC 电梯的缺点 .143.3 基于 EDA 技术的电梯控制设计方案 .153.3.1 内部请求优先控制方式 .163.3.2 单向层层停控制方式 .163.3.3. 方向优先控制方式 .173.4 总体方案决定 .17第四章 电梯控制系统的模块设计 .184.1 电梯控制原理方框图 .184.1.1 外部数据高速采集模块设计 .184
3、.1.2 信号存储模块 .194.1.3 基于 FPGA 的中央处理模块 .194.1.4 信号的输出、显示模块 .194.2 各模块 VHDL 语言描述 .204.2.1 开关门控制 .204.2.2 内外升降请求控制 .214.3 小结 .22第五章 系统设计与仿真 .235.1 新建项目 .235.1.1 输入源程序 .235.1.2 创建工程 .245.2 编译 .265.2.1 编译 .265.2.2 查看编译结果 .265.3 电梯功能的实现与仿真 .275.3.1 仿真步骤 .275.3.2 电梯功能实现与仿真结果分析 .275.4 小结 .32第六章 总结与展望 .336.1
4、总结 .336.2 展望 .33参考文献 .34致谢 .35附录 .36基于 FPGA 六层电梯控制系统摘 要电梯作为现代化的产物,早在上个世纪就进入了我们的生活之中。本设计就是基于电子设计自动化(Electronic Design Automation)技术中的甚高速集成电路硬件描述语言(Very High Speed Integrated Circuit Hardware Description Language)语言所开发的六层电梯控制程序。VHDL 具有与具体硬件电路无关和设计平台无关的特性,并且具有良好的电路行为描述和系统描述的能力,并在语言易读性和层次化结构化设计方面,表现了强大的
5、生命力和应用潜力。本文介绍了基于 VHDL 语言设计的电梯控制器,并进行了电路综合和仿真。该控制器遵循方向优先的原则,提供 6 个楼层多用户的载客服务并指示电梯的运行情况。通过程序调试及运行仿真,结果表明,本程序可以完成:电梯运行所在楼层指示、电梯运行方向指示、关门延时设置、看门狗报警、超载报警、故障报警等。关键词:VHDL;控制器;EDA;电梯The control system of six floors lift based on FPGAAbstractThe lift , as the modernized result, are entered in our life in las
6、t century. This thesis designs the six - floor lift control on the basis of the electron basic on the electronic design automation(EDA) technologys the very high-speed integrated circuit hardware describe language(VHDL). VHDL has with the concrete hardware electric circuit has nothing to do with and
7、 designs the characteristic which the platform has nothing to do with, and has the good electric circuit behavior description and the system description ability, and in language legible and has orderliness the structurization design aspect, has displayed the formidable vitality and the application p
8、otential. Introduced based on the VHDL language design elevator controller, and has carried on the electric circuit synthesis and the simulation. This controller follows the direction first principle, provides 6 floors multi user to carry passengers to serve and to instruct the elevator the movement
9、 situation. Through testing the connection of the EDA case, realize the following main functions: The lift s floor shows, the lift operation direction shows; closes prolonging the dog reports to the police; overloads reporting to the police fault alarm ,etc.Keyword: VHDL, Controller, EDA, Elevator第一
10、章 绪论1.1 课题设计的背景随着科学技术的发展、近年来,我国的电梯生产技术得到了迅速发展一些电梯厂也在不断改进设计、修改工艺。更新换代生产更新型的电梯,电梯主要分为机械系统与控制系统两大部份,随着自动控制理论与微电子技术的发展,电梯的拖动方式与控制手段均发生了很大的变化,交流调速是当前电梯拖动的主要发展方向。目前电梯控制系统主要有三种控制方式:继电路控制系统(早期安装的电梯多位继电器控制系统)、FPGA/CPLD 控制系统、微机控制系统。继电器控制系统由于故障率高、可靠性差、控制方式不灵活以及消耗功率大等缺点,目前已逐渐被淘汰。微机控制系统虽在智能控制方面有较强的功能,但也存在抗扰性差,系统
11、设计复杂,一般维修人员难以掌握其维修技术等缺陷。而FPGA/CPLD 控制系统由于运行可靠性高,使用维修方便,抗干扰性强,设计和调试周期较短等优点,倍受人们重视等优点,已成为目前在电梯控制系统中使用最多的控制方式,目前也广泛用于传统继电器控制系统的技术改造。目前国内七八十年代安装的许多电梯电气部分用继电器接触器控制系统,线路复杂,接线多,故障率高,维修保养难,许多已处于闲置状态,其拽引系统多采用交流双速电机系统换速,效率低,调速性能指标较差,严重影响电梯运行质量。由于这些电梯交流调压调速系统,交流双速电机拖动系统性能及乘坐舒适感较差,交流调压调速系统属能耗型调速的机械部分无大问题,为节约资金,
12、大部分老式电梯用户希望对电梯的电气控制系统进行改造,提高电梯的运行性能。因此对电梯控制技术进行研究,寻找适合我国老式电梯的改造方法具有十分重要的意义 1 。电梯作为高层建筑物的重要交通工具与人们的工作和生活日益紧密联系。FPGA/CPLD 作为新一代工业控制器,以其高可靠性和技术先进性,在电梯控制中得到广泛应用,从而使电梯由传统的继电器控制方式发展为计算机控制的一个重要方向,成为当前电梯控制和技术改造的热点之一 2。1.2 课题设计的目的和意义采用可编程逻辑器件通过对器件内部的设计来实现系统功能,是一种基于芯片的设计方法可以根据需要定义器件内部逻辑和引出端,将电路板设计的大部分工作放在芯片的设
13、计中进行,通过对芯片设计实现数字系统的逻辑功能。灵活的内部功能块组合,引出端定义等,可大大减轻电路设计和电路板设计的工作量和难度,有效的增强设计的灵活性,提高工作效纠。同时采用可编程逻辑器件,设计人员在实验室可反复编程,修改错误,以期尽快开发产品,迅速占领市场。基于芯片的设计方法可以减少芯片的数量,缩小系统体积,降低能源消耗,提高系统性能和可靠性。1.3 课题设计思路与原理1)电梯的输入信号分析电梯的输入信号分析主要包括外部输入信号和内部输入信号的分析。对于电梯外部输入信号:每层电梯门外需要有上升请求按钮和下降请求按钮,其中1 楼门外只有上升请求按钮,6 层电梯门外只有下降请求按钮。电梯内部输
14、入信号包括 6 个前往楼层按钮、提前关门按钮、延时关门按钮、电梯异常求救按钮,另外还有超重等警告信号输入。2)电梯的输出信号分析电梯的输出信号分析也主要包括外部输出信号和内部输出信号的分析。对于电梯外部输出信号包括上升请求按钮和下降请求按钮是否被按下指示信号灯、电梯当前所在楼层指示信号、电梯运行方向指示信号。电梯内部输出信号包括 6 个前往楼层按钮是否被按下指示信号、是否超重等告警指示信号、电梯当前所在楼层指示信号、以及电梯运行方向指示信号。3)电梯运行规则当电梯处于上升模式时,只响应比电梯所在位置高的上楼信号,有下至上以此执行,直到最后一个上升请求执行完毕,如更高层有下楼请求时,则直接升到下
15、降请求的最高楼,然后进入下降模式,电梯处于下降模式时,则与上升模式想法。1.4 论文的组织结构与安排本论文研究的对象是 6 层电梯的 FPGA 实现,论文共由六个章节组成:第一章是绪论,简要介绍电梯的发展背景、现状,提出论文设计思路及原理;第二章是 FPGA 技术及其设计方法介绍,简要介绍 FPGA 的设计流程和方法、VHDL 硬件描述语言以及设计仿真工具;第三章是 DCT/IDCT 算法的定义,主要介绍了一维二维算法的定义及相关性,本章节是本次论文的理论基础;第四章是解码器总设计方案,通过对 2D-IDCT 模块进行分析,利用快速行列式分解法设计其硬件结构,然后分布完成各子模块的 VHDL
16、语言描述;第五章是系统的功能仿真,利用 VHDL 硬件描述语言进行算法模块的总体设计与功能仿真,达到预期效果;第六章是结束语与展望,结了自己所做的工作与不足,并提出改进方案,阐述了论文研究的感想与收获,展望今后的研究方向、即将开展的下一步工作。最后是致谢和参考文献。第二章 FPGA 设计流程与方法2.1 EDA 技术介绍EDA 技术是 20 世纪 90 年代初从计算机辅助设计(Computer Aided Design)、计算机辅助制造(Computer Aided Manufacture)、计算机辅助测试(Computer Aided Testing)和计算机辅助工程(Computer Ai
17、ded Engineering)的概念发展而来的。随着超大规模集成电路(Very Large Scale Integration)规模和技术复杂度的急剧增长,一块芯片内集成门已可达几十万甚至几百万门,并且还在迅速增长,电子系统的人工设计已十分困难,必需依靠电子设计自动化技术。在利用 EDA 进行集成电路设计时,应采用高效率的 TOP-DOWN 设计方法,即根据系统的行为和功能要求,自上而下地依次完成相应的描述、综合、优化、仿真与验证,直到生成器件。在电路描述时主要采用硬件描述语言(HDL )。硬件描述语言是用于设计硬件电子系统的计算机语言,它描述电子系统的逻辑功能、电路结构和连接方式。设计者可
18、以利用 HDL 程序来描述所希望的电路系统,规定其结构性和电路的行为方式;然后利用 EDA 工具将此程序变成能控制场效应可编程门阵列(Field Programmable Gate Array)/ 复杂可编程逻辑器件(Complex Programmable Logic Device)内部结构并实现相应逻辑功能的门级或更底层的结构网表文件和下载文件。现代 EDA 技术的基本特征是采用高级语言描述,具有系统级仿真和综合能力。它主要采用从系统设计入手,在顶层进行功能方框图的划分和结构设计,在方框图一级进行仿真、纠错、并用 VHDL、 ABEL 等硬件描述语言对高层次的系统行为进行描述,在系统一级进
19、行验证然后再用逻辑综合优化工具生成具体的门级逻辑电路的网表,其对应的物理实现级可以是印刷电路板或专用集成电路。简单来说就是依赖功能强大的计算机,在 EDA 工具软件平台上,对以硬件描述语言 HDL 为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译、逻辑化简、逻辑分割、逻辑综合、结构综合(布局布线),以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能 3 。2.2 FPGA 简介FPGA 是英文 Field Programmable Gate Array 的缩写,既现场可编程逻辑门阵列,它是在 PLA(Programmable Logic Array,可编程逻辑阵列) 、GAL(Gene
20、ric Array Logic,通用阵列逻辑 ) 、EPLD(Erasable Programmable Device,可编程逻辑器件)等可编程器件的基础上进一步发展的产物。FPGA 一般用于逻辑仿真。电路设计工程师设计一个电路首先要确定线路,然后进行软件模拟,以确定所设计电路的功能及性能。然而随着电路规模的不断增大,工作频率的不断提高,将会给电路引入许多分布参数的影响,而这些影响用软件模拟地方法较难反映出来,所以有必要做硬件仿真。FPGA 就可以实现硬件仿真以做成模型机。将软件模拟后的线路经一定处理后下载到FPGA,就可容易的得到一个模型机,从该模型机,设计者就很直观地测试其逻辑功能及性能指
21、标。它由许多独立的可编程逻辑模块组成,用户可以通过编程将这些模块连接起来实现不同的设计。FPGA 兼容了 EPGA(掩膜可编程阵列)和阵列型 PLD 两者的优先,因而具有更高的集成度,更强的逻辑实现能力和更好的设计灵活性 4 。FPGA 是由存放在片内 RAM 中的程序来设置其工作状态的,因此,工作时需要对片内 RAM 进行编程。用户可以根据不同的配置模式,采用不用的编程方式。FPGA 有多种配置模式:并行主模式为一片 FPGA 加一片 EPROM 的 方式;主从模式可以支持一片 PROM 编程多片 FPGA;串行模式可以采用串行PROM 编程 FPGA;外设模式可以将 FPGA 作为微处理器
22、的外设,由微处理器对其编程。加电时,FPGA 芯片将 EPROM 中数据读入片内编程 RAM 中,配置完成后,FPGA 进入工作状态。掉电后,FPGA 恢复成白片,内部逻辑关系消失,因此,FPGA 能反复使用。FPGA 的编程无须专用的 FPGA 编程器,只需用通用的EPROM、PROM 编程器即可。当需要修改 FPGA 功能时,只需换一片 EPROM即可。这样,同一片 FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA 的使用非常灵活 5 。2.2.1 FPGA 的基本结构FPGA 一般由三种可编程电路和一个用于存放编程数据的静态存储器SRAM 组成。这三种可编程电路是:可编程逻辑块(CLB-Configurable logic Block),输入 /输出模块(IOB-I/0 Block)和互联资源(IR-Interconnect Resource) 。可编程逻辑块(CLB)是实现逻辑功能的基本单元,它们通常规则地排列成