版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目 录摘要IVAbstractV第 1 章 绪 论11.1 课题设计的背景11.2 课题设计的目的和意义21.3 课题设计思路与原理21.4的组织结构与安排3第 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 VHDL 设计的特点102.5 系统开发. 112.5.1 QUARTUS 简介112.5.3 Quartus II 开发界面122.6 小结13第 3 章 电梯控制方案确
2、定143.1基于PLC 技术的电梯控制设计方案143.2PLC 电梯的缺点143.3基于EDA 技术的电梯控制设计方案153.3.1请求优先控制方式163.3.2 单向层层停控制方式163.3.3. 方向优先控制方式173.4总体方案决定17第 4 章电梯控制系统的模块设计184.1电梯控制原理方框图184.1.1外部数据高速模块设计184.1.2信号模块194.1.3基于FPGA 的处理模块194.1.4信号的输出、显示模块194.2 各模块 VHDL 语言描述204.2.1 开关门控制204.2.2 内外升降请求控制214.3 小结22第 5 章 系统设计与仿真235.1 新建项目235.
3、1.1 输入源程序235.1.2 创建工程245.2 编译265.2.1 编译265.2.2 查看编译结果265.3 电梯功能的实现与仿真275.3.1 仿真步骤275.3.2 电梯功能实现与仿真结果分析275.4 小结32第 6 章 总结与展望336.1 总结336.2 展望33参考文献34致谢35基于 VHDL 六层电梯控制系统摘要电梯作为现代化的产物,早在上个世纪就进入了的生活之中。本设计就是基于电子设计自动化(Electronic Design Automation)技术中的甚高速集成电路硬件描述语言(Very High Speedegrated Circuirdware Descri
4、ption Language)语言所开发的六层电梯控制程序。VHDL 具有与具体硬件电路无关和设计无关的特性,并且具有良好的电路行为描述和系统描述的能力,并在语言易读性和层次化结构化设计方面,表现了强大的生命力和应用潜力。本文介绍了基于 VHDL语言设计的电梯控制器,并进行了电路综合和仿真。该控制器遵循方向优先的原则,提供 6 个楼层多用户的载务并指示电梯的运行情况。通过程序调试及运行仿真,结果表明,本程序可以完成:电梯运行所在楼层指示、电梯运行方向指示、关门延时设置、看门狗、超载、故障等。:VHDL、控制器、EDA、电梯The control system of six floors lif
5、t based on VHDLAbstractThe lift , as the modernized result, are entered in our life in last century. This thesisdesigns the six - floor lift control on the basis of the electron basic on the electronicdesign automation(EDA) technologys the very high-speedegrated circuirdwaredescribe language(VHDL).
6、VHDL has with the concrete hardware electric circuisnothing to do wind designs the characteristic which the platform has nothing to dowith, and has the goectric circuit behavior description and the system descriptionability, and in language legible and has orderliness the structurization design aspe
7、ct, has displayed the formidable vitality and the application potential.roduced based on theVHDL language design elevator controller, and has carried on the electric circuitsynthesis and the simulation. This controller follows the directionprinciple,provides 6 floors multi user to carry passengers t
8、o serve and to instruct the elevator the movement situation. Through testing the connection of the EDA case, realize thefollowing main functions: The lift s floor shows, the lift operation direction shows;closes prolonging the dog reports to thealarm ,etc.; overloads reporting to thefaultKey word: V
9、HDL, Controller, EDA,Elevator第 1 章 绪 论1.1 课题设计的背景随着科学技术的发展、近年来,我国的电梯生产技术得到了迅速发展一些电梯厂也在不断改进设计、修改工艺。更新换产更新型的电梯,电梯主要分为机械系统与控制系统两大部份,随着自动控制理论与微电子技术的发展,电梯的拖动方式与控制均发生了很大的变化,交流调速是当前电梯拖动的主要发展方向。目前电梯控制系统主要有三种控制方式:继电路控制系统(早期安装的电梯多位继电器控制系统)、FPGA/CPLD 控制系统、微机控制系统。继电器控制系统由于故障率高、可靠性差、控制方式不灵活以及消耗功率大等缺点,目前已逐渐被淘汰。微机
10、控制系统虽在智能控制方面有较强的功能,但也存在抗扰性差,系统设计复杂,一般维修难以掌握其维修技术等缺陷。而 FPGA/CPLD 控制系统由于运行可靠性高,使用维修方便,性强,设计和调试周期较短等优点,倍受人们重视等优点,已成为目前在电梯控制系统中使用最多的控制方式,目前也广泛用于传统继电器控制系统的技术改造。目前国内七八十年代安装的许多电梯电气部分用继电器接触器控制系统,线路复杂,接线多,故障率高,维修保养难,许多已处于闲置状态,其拽引系统多采用交流双速电机系统换速,效率低,调速性能指标较差,严重影响电梯运行质量。由于这些电梯交流调压调速系统,交流双速电机拖动系统性能及乘坐舒适感较差,交流调压
11、调速系统属能耗型调速的机械部分无大问题,为节约,大部分老式电梯用户希望对电梯的电气控制系统进行改造,提高电梯的运行性能。因此对电梯控制技术进行研究,寻找适合我式电梯的改造方法具有十分重要的意义。电梯作为建筑物的重要交通工具与人们的工作和生活日益紧密联系。FPGA/CPLD 作为新一代工业控制器,以其高可靠性和技术先进性,在电梯控制中得到广泛应用,从而使电梯由传统的继电器控制方式发展为计算机控制的一个重要方向,成为当前电梯控制和技术改造的热点之一。1.2 课题设计的目的和意义采用可编程逻辑器件通过对器件的设计来实现系统功能,是一种基于芯片的设计方法可以根据需要定义器件逻辑和引出端,将电路板设计的
12、大部分工作放在的设计中进行,通过对设计实现数字系统的逻辑功能。灵活的功能块组合,引出端定义等,可大大减轻电路设计和电路板设计的工作量和难度,有效的增强设计的灵活性,提高工作效纠。同时采用可编程逻辑器件,设计在可反复编程,修改错误,以期尽快开发产品,迅速占领市场。基于的设计方法可以减少的数量,缩小系统体积,降低能源消耗,提高系统性能和可靠性。1.3 课题设计思路与原理1)电梯的输入信号分析电梯的输入信号分析主要包括外部输入信号和输入信号的分析。对于电梯外部输入信号:每层电梯门外需要有上升请求按钮和下降请求按钮,其中 1楼门外只有上升请求按钮,6 层电梯门外只有下降请求按钮。电梯输入信号包括 6
13、个前往楼层按钮、提前关门按钮、延时关门按钮、电梯异常求救按钮,另外还有超重等警告信号输入。2)电梯的输出信号分析电梯的输出信号分析也主要包括外部输出信号和输出信号的分析。对于电梯外部输出信号包括上升请求按钮和下降请求按钮是否被按下指示信号灯、电梯当前所在楼层指示信号、电梯运行方向指示信号。电梯输出信号包括 6 个前往楼层按钮是否被按下指示信号、是否超重等告警指示信号、电梯当前所在楼层指示信号、以及电梯运行方向指示信号。3)电梯运行规则当电梯处于上升模式时,只响应比电梯所在位置高的上楼信号,有下至上以此执行,直到最后一个上升请求执行完毕,如更有下楼请求时,则直接升到下降请求的最高楼,然后进入下降
14、模式,电梯处于下降模式时,则与上升模式想法。1.4的组织结构与安排本研究的对象是 6 层电梯的FPGA 实现,共由六个章节组成:第 1 章是绪论,简要介绍电梯的发展背景、现状,提出设计思路及原理;第 2 章是 FPGA 技术及其设计方法介绍,简要介绍 FPGA 的设计流程和方法、VHDL 硬件描述语言以及设计仿真工具;第 3 章是 DCT/IDCT 算法的定义,主要介绍了一维二维算法的定义及相关性,本章节是本次的理论基础;第 4 章是器总设计方案,通过对 2D-IDCT 模块进行分析,利用快速行列式分解法设计其硬件结构,然后分布完成各子模块的 VHDL 语言描述;第 5 章是系统的功能仿真,利
15、用 VHDL 硬件描述语言进行算法模块的总体设计与功能仿真,达到预期效果;第 6 章是结束语与展望,结了自己所做的工作与,并提出改进方案,阐述了研究的感想与收获,展望今后的研究方向、即将开展的下一步工作。最后是致谢和参考文献。第 2 章 FPGA 设计流程与方法2.1 EDA 技术介绍EDA 技术是 20 世纪 90 年代初从计算机辅助设计( Computer Aided Design)、计算机辅助制造(Computer Aided Manufacture)、计算机辅助测试(Computer Aided Testing)和计算机辅助工程(Computer Aided Engineering)的
16、概念发展而来的。随着超大规模集成电路(Very Large Scaleegration)规模和技术复杂度的急剧增长,一块内集成门已可达几十万甚至几百万门,并且还在迅速增长,电子系统的人工设计已十分,必需依靠电子设计自动化技术。在利用EDA 进行集成电路设计时,应采用高效率的 TOP-DOWN 设计方法,即根据系统的行为和功能要求,自上而下地依次完成相应的描述、综合、优化、仿真与验证,直到件。在电路描述时主要采用硬件描述语言(HDL)。硬件描述语言是用于设计硬件电子系统的计算机语言,它描述电子系统的逻辑功能、电路结构和连接方式。设计者可以利用 HDL 程序来描述所希望的电路系统,规定其结构性和电
17、路的行为方式;然后利用 EDA 工具将此程序变成能控制场效应可编程门阵列(Field Programmable Gate Array)/复杂可编程逻辑器件(ComplexProgrammable Logic Device)结构并实现相应逻辑功能的门级或更底层的结构网表文件和文件。现代 EDA 技术的基本特征是采用高级语言描述,具有系统级仿真和综合能力。它主要采用从系统设计入手,在顶层进行功能方框图的划分和结构设计,在方框图一级进行仿真、纠错、并用 VHDL、 ABEL 等硬件描述语言对次的系统行为进行描述,在系级进行验证然后再用逻辑综合优化工具生成具体的门级逻辑电路的网表,其对应的物理实现级可
18、以是印刷电路板或集成电路。简单来说就是依赖功能强大的计算机,在 EDA 工具平台上,对以硬件描述语言 HDL 为系统逻辑描述完成的设计文件,自动地完成逻辑编译、逻辑化简、逻辑分割、逻辑综合、结构综合(布局布线),以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。2.2 FPGA 简介FPGA 是英文Field Programmable Gate Array 的缩写,既现场可编程逻辑门阵列,它是在 PLA(Programmable Logic Array,可编程逻辑阵列)、GAL(Generic Array Logic,通用阵列逻辑 ) 、EPLD(Erasable Programmabl
19、e Device,可编程逻辑器件)等可编程器件的基础上进一步发展的产物。FPGA 一般用于逻辑仿真。电路设计工程师设计一个电路首先要确定线路,然后进行模拟及优化,以确定所设计电路的功能及性能。然而随着电路规模的不断增大,工作频率的不断提高,将会给电路引入许多分布参数的影响,而这些影响用模拟地方法较难反映出来,所以有必要做硬件仿真。FPGA 就可以模拟后的线路经一定处理后到 FPGA,实现硬件仿真以做成模型机。将就可容易的得到一个模型机,从该模型机,设计者就很直观地测试其逻辑功能及性能指标。它由许多独立的可编程逻辑模块组成,用户可以通过编程将这些模块连接起来实现不同的设计。FPGA 兼容了EPG
20、A(掩膜可编程阵列)和阵列型 PLD两者的优先,因而具有更高的集成度,更强的逻辑实现能力和更好的设计灵活性。FPGA 是由存放在片内 RAM 中的程序来设置其工作状态的,因此,工作时需要对片内RAM 进行编程。用户可以根据不同的配置模式,采用不用的编程方式。FPGA 有多种配置模式:并行主模式为一片 FPGA 加一片EPROM 的 方式;主从模式可以支持一片 PROM 编程多片 FPGA;串行模式可以采用串行 PROM编程FPGA;外设模式可以将 FPGA 作为微处理器的外设,由微处理器对其编程。加电时,FPGA将EPROM 中数据读入片内编程RAM 中,配置完成后,FPGA 进入工作状态。掉
21、电后,FPGA 恢复成白片,逻辑关系,因此,FPGA 能反复使用。FPGA 的编程无须的 FPGA 编程器,只需用通用的EPROM、PROM 编程器即可。当需要修改 FPGA 功能时,只需换一片 EPROM即可。这样,同一片 FPGA,不同的编程数据,可以产生不同的电路功能。因此, FPGA 的使用非常灵活。2.2.1 FPGA 的基本结构FPGA 一般由三种可编程电路和一个用于存放编程数据的静态器SRAM 组成。这三种可编程电路是:可编程逻辑块(CLB-Configurable logic Block),输入/输出模块(IOB-I/0 Block)和互联资源(IR-erconnect Res
22、ource)。可编程逻辑块(CLB)是实现逻辑功能的基本单元,它们通常规则地排列成一个阵列,散布整个;可编程输入/输出模块(IOB)主要完成上的逻辑与外部封装脚的接口,它通常排列在的四周;可编程互联资源(IR)包括各种长度的连线线段和一些可编程连接开关,他们将各个 CLB 之间或CLB、IOB 之间以及IOB 之间连接起来,特定功能的电路。FPGA 的功能由逻辑结构的配置数据决定。工作时,这些配置数据存放在片内的SRAM 或熔丝图上。基于SRAM 的FPGA 器件,在工作前需要从外部加载配置数据,配置数据可以在片外的EPROM 或其它器上。用户可以控制加载过程,在现场修改器件的逻辑功能,即所谓
23、现场编程。CLB 是 FPGA 的主要组成部分,由逻辑函数的发生器、触发器、数据选择器等电路组成。其中的逻辑函数发生器为查表结构,工作原理类似于 ROM,输入等效于 ROM 的地址码,通过查找 ROM 中的地址表可以得到相应的组合逻辑函数输出。触发器可以配置成上升沿触发或下降沿触发;数据选择器用来选择触发器激励输入信号、时钟有效边沿、时钟使能信号以及输出信号。IOB 提供了器件引脚和逻辑阵列之间的连接。它主要是由输入触发器、输入缓冲器和输出触发/锁存器、输出缓冲器组成。每个 IOB 控制一个引脚,他们可被配置为输入、输出或双向I/O 功能。可编程互联资源(IR)可以将FPGA的CLB 和CLB
24、 之间、CLB 和IOB 之间连接起来,各种具有复杂功能的系统。IR 主要由许多金属线段,这些金属线段带有可编程开关,通过自动布线实现各种电路的连接14。2.2.2 FPGA 的特点FPGA 的基本特点主要有:采用FPGA 设计 ASIC 电路,用户不需要投片生产,就能得到合适的FPGA 可做其它全定制或半定制 ASIC 电路的中试样片。(3) FPGA有丰富的触发器和I/O 引脚。(4) FPGA 是 ASIC 电路中设计周期最短、开发费用最低、风险最小的器件之一。OS 工艺,功耗低,可以与CMOS、TTL 电平兼容15。(5) FPGA 采用高速2.3 自顶向下(Top to Down)设
25、计方法自顶向下的设计(Top to Down)是先对设计进行功能描述,然后逐步分块细化,直至结构化的最底层。采用结构化单元和有少数行为级模块的层次式模型,进行层次式设计。次设计是采用“自顶向下”的设计方法数字集成系统的次设计是一种“概念式”设计,设计无需通过门级原理图描述电路,而是针对设计目标进行功能描述,由于摆脱了电路细节的,设计可以把精力集中于创造性的概念构思与方案上,一旦这些概念构思以次描述的形式输入计算机后,EDA工具就能以规则驱动的方式自动完成整个设计。这样,新的概念得以有效地变为产品,大大缩短了产品的研制周期16。不仅如此,次设计只是定义系统的行为特性,而不涉及实现工艺,在厂家综合
26、库的支持下,利用综合优化工具可以将次描述转换成针对某种工艺优化的网表,工艺转化变得轻松容易。在采用传统的电原理输入方法时,FPGA/CPLD 器件的采用受到器件库的制约,由于不同厂家 FPGA/CPLD 的结构完全不同,甚至同一厂家不同系列的产品也存在结构上的差别,因此,在设计一开始,工程师的设计思路和器件选择的灵活性。而采用Top Down 设计方能输入采用国际标准的 HDL 输入方法,HDL 可不含有任何器件的物理信息,因此工程师可以有很多空间去集中精力进行功能描述,设计师可以在“次”对电路进行设计,其步骤如下:图 2.1 FPGA 设计流程按照“自顶向下”的设计方法进行系统规划;输入 H
27、DL 代码;这是次设计中最为普遍的输入方式。此外,还可以采用图形输入方式(框图、状态图等)。这种输入方式具有直观、容易理解的特点。(3)将以上的设计输入编译成标准的 VHDL 文件;对于大型设计,还要进行代码级的功能仿要是检查系统功能设计的正确性。因此对于大型设计,综合、适配要花费数小时,就可以大大减少设计重复的次数和时间。(4)转化成网表文件;利用综合器对 VHDL 源代码进行综合优化处理,这是将成硬件电路的关键步骤。次描述转化(5)逻辑;在综合前对源代码仿真,生成门级描述的网表文件,利用适配器将综合后的网表文件针对某一具体的目标器件进行逻辑,包括底层器件配置、逻辑分割、逻辑优化和布局布线。
28、(6)到目标;将适配器产生出的器件编程文件通过编程器或电缆载入到目标中。在自顶向下的设计过程中,在设计的各个阶段和级别,每一级设计都以上一级的设计结果作为设计目标,得到本级的设计结果的结果描述,这是设计或综合的过程23。验证的任务就是使所得到的结果正确实现其设计要求。2.4 VHDL 概述EDA之一是采用硬件描述语言来描述电路系统,包括电路结构、行为方式、逻辑功能以及接口。就 FPGA 和 CPLD 开发来说,比较流行的 HDL主要有 VHDL,Verilog HD,LABEL-HDL 等,其中,VHDL 对系统的行为描述能力最强,已被 IEEE 确定为标准 HDL,并得到目前所有流行 EDA
29、进而成为系统设计领域最佳的硬件描述语言。2.4.1 VHDL 语言简介的支持,VHDL 的英文全名是 Very-High-Speedegrated Circuirdware DescriptionLanguage,诞生于 1982 年,1987 年底,被 IEEE 和国防部确认为标准硬件描述语言。自 IEEE了 VHDL 的标准版本之后,各 EDA 公司相继推出了自己的 VHDL 设计环境,或宣布自己的设计工具可以和 VHDL 接口。此后 VHDL 在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993 年,IEEE 对 VHDL 进行了修订,从更高的抽象层次和系统描
30、述能力上扩展VHDL 的内容,了新的 VHDL 版本。VHDL 主要用于描述数字系统的结构、行为、功能和接口,非常适用于可编程逻辑的应用设计。与其它的 HDL 相比,VHDL 具有更强的行为描述能力,从而决定了它成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。就目前流行的EDA 工具和 VHDL 综合器而言,将基于抽象的行为描述风格的 VHDL程序综为具体的FPGA 和 CPLD 等目标器件的网表文件已不成问题。VHDL 语言在硬件设计领域的作用将与 C 和 C+在领域的作用一样,在大规模数字系统的设计中,它将逐步取代
31、如逻辑状态表和逻辑电路图等级别较低的繁琐的硬件描述方法,而成为主要的硬件描述工具,它将成为数字系统设计领域中所有技术必须掌握的一种语言。VHDL 和编程逻辑器件的结为一种强有力的设计方式,将为设计者的产品上市带来创的速度。一个 VHDL 程序通常包含实体( Entity ), 构造体(Architecture) ,配置(Configuration),包集合(Package),库(Library)5 个部分。其中实体是一个 VHDL 程序的基本单元,由实体说明和结构体两部分组成。实体说明用于描述设计系统的外部接口信号;结构体用于描述系统的行为,系统数据的流程和组织结构形式。配置用于从库中选取所需
32、单元来描述层与层之间的连接关系。包集合存放各设计模块能共享的数据类型,常数,子程序等。库用于存放与编译的实体,构造体,包集合,配置。库分为两种,一种是制造商提供的库;另一种是用户自行生成的 work 库,包括用户设计的模块,可以重复使用。2.4.2 VHDL 设计的特点用 VHDL 设计电路系统,可以把任何复杂的电路系统视为一个模块,对应一个设计实体。在 VHDL 层次化设计中,它所设计的模块既可以是顶层实体,又可以是较低层实体,但对不同层次模块应选择不同的描述方法(如行为描述或结构描述)。集成电路规模越是庞大,VHDL 语言的优越性就越显突出。目前,数百万门规模的FPGACPLD 己进入实用
33、,VHDL 强大的系统描述能力、规范的程序设计结构和灵活的语句表达风格使其必将担负起大系统设计的几乎全部设计任务。VHDL 语言可以支持自上而下和基于库的设计方法,并支持同步电路、异步电路、FPGA 以及其它随机电路的设计。目前大多数 EDA 工具几乎在不同程度上都支持 VHDL 语言。这给 VHDL 语言进一步推广和应用创造了良好的环境。设计是在较高的抽象层次上进行,设计者不用地考虑门级,可花费的时间考虑概念级方面。利用 VHDL 具有的自动优化和快速探索各种设计方案的能力,可使设计者迅速而成功地得到高质量设计的最终结果,从而改善了设计质量。VHDL 是一种全方位,多层次的硬件描述语言,包括
34、系统行为级描述、寄存器传输级描述和结构描述多个设计层次,因此 VHDL 几乎覆盖了以往各种硬件描述语言的功能,整个自顶向下或自底向上的电路设计过程都可以用 VHDL 来完成。VHDL 还具有以下优点:(1) VHDL 的宽范围描述能力使它成为次设计的,将设计的工作重心提高到了系统功能的实现与调试,而花较少的精力于物理实现上。(2) VHDL 可以用简洁明确的代码描述来进行复杂控制逻辑的设计,灵活且方便,而且也便于设计结果的交流、保存和重用。(3) VHDL 的设计不依赖于特定的器件,方便了工艺的转换。VHDL 是一个标准语言,为众多的EDA 厂商支持,因此移植性好16。2.5 系统开发2.5.
35、1 QUARTUS 简介Quartus II为大容量FPGA 设计提供了最先进的技术,允许设计者充分地发挥ALTERA 器件的全部潜力。新版 Quartus II具有业界最易用的设计流程、系统设计能力、时序收敛和验证方案,能够为 FPGA 设计提供最先进的开发使用功能强大的 QuatrusII 8.0 软环境,成为业界的里程碑。在系统设计中件来完成设计任务。Quartus II结合了 ALTERA EDA 伙伴的技术,为大容量FPGA 提供业界最先进的设计方法。ALTERA 的 QuartusII是唯一允许设计者针对 FPGA 和结构化 ASIC 进行无缝开发的设计环境。Quartus II采
36、用了ALTERA 的Logic Lock(tm)设计方法,是一款非常优秀的FPGA 设计工具,能够提供真正的模块化设计流程,这在支持团队设计上是无可匹敌的。而且,ALTERA的 Quartus II是唯一具有工业标准TCL接口的FPGA 设计工具,允许设计者在 GLl7 和设计技术之间混合使用。新版的 Quartus II采用了新的编译器的波形,它通过动态地产生用户参数化结构的操作波形显示。2.5.2 Quartus II 设计仿真过程基于 VHDL 的 Quartus II 开发流程为:分析与综合,布局布线,配置,时序分析,生成逻辑网表,功能仿真,时序仿真,如图 2.2。图 2.2 Quar
37、tus II 流程2.5.3 Quartus II 开发界面Quartus II 的开发主界面如图 2.3 所示。它分为四个主要的子窗口。其中左上方的子窗口为工程的浏览窗口,它显示的是用户设计的顶层模块,设计所包含的所有输入文件以及整个设计的模块结构;左下方的子窗口为设计状态图,在进行工程的编译综合以及仿真的时候,窗口内会显示每一步的进度以及所耗费的时间;右边为设计输入窗口,用户可以选择通过不同的设计输入,如原理图,VHDL 或 Verilog HDL 来进行FPGA 设计:最下方的子窗口为信息提示窗口,在程序的综合仿真过程中,Quartus II 会显示警告和错误信息,提示用户设计中可能出现
38、所在。Quartus II完全支持VHDL 和Verilog HDL 语言嵌有VHDL、VerilogHDL 逻辑综合器,同时也支持第综合工具。QuartusII 自身具备仿真功能,。也支持第的仿真工具,如图 2.3 Quartus II 主界面2.6 小结本章主要是对FPGA 的基本原理,设计方法和流程作简要介绍,以及在本次设计中涉及到的开发仿真工具,VHDL 硬件描述语言作了一个大体地介绍。第 3 章 电梯控制方案确定电梯的微机化控制主要有以下几种形式:1 PLC 控制;2 单板机控制;3 单片机控制;4 单微机控制;5 多微机控制;6 人工智能控制。随着 EDA 技术的快速发展,CPLD
39、/FPGA 已广泛应用于电子设计与控制的各个方面。但是本设计屏弃以前老式的采用 PLC 设计电梯控制器,而是使用一片来实现对电梯的控制的。3.1 基于 PLC 技术的电梯控制设计方案可编程控制系统是一种专门为在工业环境下应用而设计的数字运算操作电子系统。它采用一种可编程的器,在其执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,通过数字式或模拟式的输入输出来控制各种类型的机械设备或生产过程。 可编程控制器是计算机技术与自动化控制技术相结合而开发的一种适用工业环境的新型通用自动控制装置,是作为传统继电器的替换产品而出现的。随着微电子技术和计算机技术的迅猛发展,可编程控制器地具有了计算机的
40、功能,不仅能实现逻辑控制,还具有了数据处理、通信、网络等功能。由于它可通过来改变控制过程,而且具有体积小、组装方便、编程简单、可靠性高、能力强等特点,已广泛应用于工业控制的各个领域,大大推进了机电的进程。PLC 的特点可综述如下: (1)高可靠性 (2)编程简单,使用方便(可采用梯形图编程方式,与实际继电器控制电路非常接近,一般电气工作者很容易接受) (3)环境要求低(适用于恶劣的工业环境)(4)体积小,重量轻 (5)扩充方便。3.2PLC 电梯的缺点电梯市场已经有多种电梯控制器的设计方案。但大多数仍然是采用PLC 实现电梯的升降控制,但是采用 PLC 实现电梯控制器的设计存在大量的缺点。如果
41、采用硬件描述语言来完成电梯控制器的设计,就可以克服 PLC 电梯的大部分缺点。目前,在我国国产电梯大部分为继电器及 PLC 控制方式,继电器控制系统性能不稳定、故障率高,大大降低了电梯的舒适性、可靠性和安全性,经常造成停梯,给乘用的生活和工作带来了很多不便, 因而传统的电梯控制系统(PLC)的更新势在必行。当前电梯发展的智能化发方向是智能电梯,但最终的发展是声控智能电梯,智能电梯 PLC 都需通过外加 IC 读卡才能实现,PLC 单独是不能实现的,那以后的声控智能电梯 PLC 就能不能单独实现,然而采用 VHDL技术就可以实现电梯的智能化,节能,也可以提高电梯的舒适性,可靠性和安全性。3.3
42、基于 EDA 技术的电梯控制设计方案EDA 技术开发发,而其中又数 VHDL多样,其中应用最为广泛的就是通过程序对硬件进行开语言最受设计者的欢迎。 EDA 技术使得设计者的工作仅限于利用的方式,即利用硬件描述语言和 EDA来完成对系统硬件功能的实现。近几年来,硬件描述语言等设计数据格式的逐步标准化,不同设计风格和应用的要求导致各具特色的 EDA 工具被集成在同一个工作站上,从而使 EDA 框架日趋标准化。VHDL 丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。VHDL语言的设计单元包括实体(entity)、结构体(architectu
43、re)、程序包(package)以及配置(configuration)。 初级设计单元实体(entity),是设计的基本模块和设计的初级单元,在分层次设计中,顶层有顶级实体,含在顶级实体中的较低层次的描述为低级实体,靠配置把顶层实体和底层实体连接起来。实体说明中还可以说明数据类型、子程序和常量等数据信息,实体语句常用于描述设计常用到的判断和检查信息。 次级设计单元结构体(architecture),实体的结构体具有描述实体的行为功能,一个实体可以有多个结构体,一种可能为行为描述,另一种为结构描述。结构体能以行为、数据流和结构等多种方式描述实体。VHDL 语言还包括程序包和配置初级设计单元。 V
44、HDL 语言的基本术语往往能体现其严密的逻辑结构: VHDL 语言的基本术语包括进程(pros)、类属(generic)、属性(attribute)以及驱动(drive)。 进程(pros)是 VHDL 中的基本执行单元,仿真时把所有的操作划分为单个或多个进程。进程只含顺序执行的语句,即一串信号赋值中仅最后的赋值有效。进程内不能说明信号,而变量在进程内说明。 其具体的流程图如图 3.1 所示。图 3.1 电梯控制方式选择3.3.1请求优先控制方式请求优先控制方式类似于出租车的工作方式,先将车上的人送至目的地,再去载客。作为通用型电梯应该服务于大多数人,必须考虑电梯对内、外请求的响应率P:Pin
45、 = 100%;Pout = 0-100%;在请求优先控制方式中,当电梯外部人的请求和电梯人状态请求冲突时,外部人的请求信号可能被长时间忽略,因而它不能作为通用型电梯的设计方案。3.3.2 单向层层停控制方式单向层层停控制方式等同于火车的运行方式,遇站即停止、开门。这种方案的优点在于“面面俱到”,可以保证所有人的请求都能得到响应。然而这样对电梯的效率产生消极影响:不必要的等待消耗了大量时间,而且电梯的与用户的请求无关,当无请求时电梯也照常跑空车,就浪费了大量电能。对用户而言,此系统测试器件编程设计仿真设计实现设计输入设计及模块化种控制方式的请求响应时间也不是很快。因而这不是理想的方案。3.3.
46、3. 方向优先控制方式方向优先控制是指电梯运行到某一楼层时先考虑这一楼层是否有请求:有,则停止; 无,则继续前进。停下后再启动时,考虑前方上方、或下方是否有请求:有,则继续前进;无,则停止;检测后方是否有请求, 有请求则转向运行, 无请求则维持停止状态。这种方式下,电梯对用户的请求响应率为 100%,且响应的时间较短。假设: 电梯每两层间的运行时间为 T ,楼层数为 6, 在每层楼的停止时间为 t, 如果每层楼都有请求,则这种控制方式的效率和上面的单向每层停等控制方式的效率一样, 然而, 当不是每层楼都有请求 (假定为只有第 6 层有请求输入)时,上面的方式 2(设为A 方式)的响应时间T=5
47、*(T + t )而方向优先控制方式(设为B 方式)对同一请求的响应时间T1=5*T效率比b/a = 1 + t /T方向优先控制方式的效率远大于单向层层停等控制方式的效率。 而且,方向优先控制方式下,电梯在维持停止状态的时候可以进入省电模式,又能节省大量电能,本设计选择方向优先控制方式3.4 总体方案决定本次设计尝试用硬件描述语言(VHDL)来实现电梯控制,可进行多层次的逻辑设计,也可进行、时序分析等以保证设计的正确。在使用VHDL 进行电梯控制器的设计,主要就是对电梯部分进行设计,使用 VHDL 中的逻辑关系建立电梯的升降模式,开门,关门达到动作,而外部的硬件设备基本上保持不变。但是使用
48、VHDL 硬件描述语言设计电梯控制器可以为以后电梯实现智能控制奠定基础。第 4 章 电梯控制系统的模块设计4.1 电梯控制原理方框图电梯方向优先控制方式控制系统方框图中断信号及超载信号则产生于压力传感器。4.1.2 信号模块电梯控制器的请求输入信号有 18 个(电梯外有 6 个上升请求和 6 个下降请求的用户输入断口,电梯内有 6 个请求用户输入断口),由于系统对内、外请求没有设置优先级,各楼层的内、外请求信号被后可先进行运算,再存到器内。电梯运行过程中,由于用户的请求信号的输入是离散的,而且系统对请求的响应也是离散的,因此请求信号的要求新的请求信号不能覆盖原来的请求信号,只有响应动作完成后才
49、能清除器内对应的请求信号位。4.1.3 基于FPGA 的处理模块数据处理模块是系统的,通过对的数据(含请求、到达楼层等信号)进行比较、判断以驱动系统状态的流转。电梯工作过程有种状态:等待、上升、下降、开门、关门、停止、休眠、超载以及故障状态。一般情况下,电梯工作起始点是第一层,起始状态是等待状态,启动条件是收到上升请求。超载状态时电梯关门动作取消,同时发出警报,直到警报被清除; 故障时电梯不执行关门动作,同时发出警报,直到警报被清除(看门狗信号有效的条件是一层楼连续发生关门中断情况超过 3 次)。本系统由请求信号启动,运行中每检测到一个到达楼层信号,就将信号器的请求信号和楼层状态信号进行比较,
50、再参考原方向信号来决定是否停止,转向等动作。4.1.4 信号的输出、显示模块本系统的输出信号有两种: 一种是电机的升降控制信号(两位)和开门/关门控制信号;另一种是面向用户的提示信号(含楼层显示、方向显示、已接受请求显示等)。电机的控制信号一般需要两位,本系统中电机有 3 种工作状态: 正转、反转和停转状态。 两位控制信号作为一个三路开关的选通信号,此三路开关选用模拟电子开关。系统的显示输出包括数码管楼层显示、数码管请求信号显示和表征运动方向的箭头形指示灯的开关信号。完全可以满足人们的需要,而且效率比较高本系统具有请求信号显示功能,结合方向显示,可以减少用户对同一请求的输入次数,这样就延长了电
51、梯按键的使用。假如电梯处于向上运动状态,初始位置是底层,初始请求是 6 楼,2 楼时进入一人,如果他的目的地也是 6 楼,他看到初始请求是 6 楼,就可以不再按键。同时,电梯外部的人也可根据请求信号显示(上升请求、下降请求、无请求),就可以避免没必要的重复请求信号输入。电梯使用时,系统结合相应的电梯使用规范。4.2 各模块 VHDL 语言描述现将本次设计的主要的模块对其进行VHDL 语言描述4.2.1 开关门控制if clkevent and clk=1 thenif clr=1 then q1=0;q2=0;wahaha=0;-清除故障elsif full=1 thenalarm=1; q1
52、=3 then door=10;else door=00; end if;elsif q=1 then q=0;alarm=0;if q2=3 then wahaha=1;-故障elseif opendoor=1 then door=10;q1=0;q2=0;up=0;down=0;-开门操作 elsif en_up=1 then-上升预操作if deng=1 then door=10;q1=0;q2=q2+1; -关门中断 elsif quick=1 then q1=3;-提前关门elsif q1=6 then door=00;updown=1;up=3 then door=01;q1=q1
53、+1; -电梯进入关门状态 else q1=q1+1;door=00;-电梯进入等待状态 end if;elsif en_dw=1 then-下降预操作if deng=1 then door=10;q1=0;q2=q2+1; elsif quick=1 then q1=3;end if;4.2.2 内外升降请求控制当乘客在一楼时,内外只有请求上升请求;当乘客在六楼时,内外只有下降请求;其余楼层均会产生升降请求;在编写此过程时必要考虑前一状态,即:预备上升与预备下降状态。此部门的VHDL 语言如下:电梯在一楼有请求:if g1=1 then led=1001111;-电梯到达 1 楼,数码管显示
54、 1 if d11=1 or c_u11=1 then d11=0; c_u11=0;opendoor000001 then en_up=1; opendoor=0;-有上升请求,则电梯进入预备上升状态elsi_cc=000000 then opendoor=0;-无请求时,电梯停在 1 楼待机end if;电梯在二楼有请求(三四五楼相似):elsif g2=1 then led=0010010;-电梯到达 2 楼,数码管显示 2if updown=1 then-电梯前一运动状态位上升 if d22=1 or c_u22=1 then d22=0; c_u22=0; opendoor00001
55、1 then en_up=1; opendoor=0;-有上升请求,则电梯进入预备上升状态elsi_cc000010 then en_dw=1;opendoor=0;-有下降请求,则电梯进入预备下降状态 end if;-电梯前一运动状态为下降elsif q1=6 then door=00;updown=0;down=3 then door=01;q1=q1+1;else q1=q1+1;door=00;end if;4.3 小结本章主要是研究六层电梯控制器的实现方法,重点研究的是设计中各个模块的实现功能,并编写出各个模块的 VHDL 硬件描述语言,对本次其重要。的完成极elsif d22=1
56、or c_d22=1 then d22=0; c_d22=0;opendoor=1;-有当前层的请求,则电梯进入开门状态elsi_cc000010 then en_dw=1;opendoor000011 then en_up=1;opendoor=0;-有上升请求,则电梯进入预备上升状态 end if;电梯在六楼有请求:elsif g6=1 then led=0100000;-电梯到达 6 楼,数码管显示 6 if d66=1 or c_d66=1then d66=0; c_d66=0;opendoor=1; elsi_cc100000 then en_dw=1; opendoor=0;end
57、 if;else en_up=0;en_dw=0;-电梯进入上升或下降状态第 5 章 系统设计与仿真本章主要是应用Altera 公司的Quartus II 8.0 进行了算法模块的实现与功能仿真,得出仿真波形并验证与预期结果相一致。5.1 新建项目在进行设计前,首先应创建工作目录,每个设计都是一项工程(Project),一般都单独建一个工作目录。在此设立的工作目录为 E:BYSJdianti。启动 QuartusII,进入 QuartusII 设计界面。5.1.1 输入源程序选择菜单FileNew,在弹出的菜单 New框的 Device Design Files 页面中选择源文件的类型,此处应
58、选中选择 VHDL File 类型,如图 5.1 所示。图 5.1 选择源文件类型框然后就可以在文本编辑器中输入dianti 的 VHDL 源程序图 5.2 输入 dianti 源程序完成输入后,选择FileSave As,将源程序保存于已建的文件夹中 E:BYSJdiantit 中,文件名为dianti.vhd.5.1.2 创建工程在此利用 New Project Wizard 建立设计工程(1) 启动 New Project Wizard;择FileNew Project Wizard,弹出如图 5.3 所示的框。单击该框最上面一栏右侧的按钮,找到文件夹E:BYSJdianti 作为当前的
59、工作目录。第二栏的dianti 是当前工作的名三栏顶层文件的实体名也命名为dianti。图 5.3 使用New Project Wizard 创建工程将设计文件加入工程中。单击图 5.3 中的 Next 按钮,弹出 Add Files 的框,单击 Add All 按钮,将相关文件加入到当前工程中,在本工程中,只需将源文件 dianti.vhd 加入即可。(4) 选择综合器和仿真器。(5) 继续单击 Next 按钮,则弹出选择仿真器和综合器的框,如果选择默认的None,则表示现在 QuartusII 自带的综合器和仿真器。也可以选择其它第综合器和仿真器等专业工具。选择目标器件。继续单击 Next
60、 按钮,前面现在的 None,则此处的所有目标器件都为自带默认。结束设置。继续单击 Next 按钮,出现如图 5.4 所示的当前工程设置信息显示框,对前面所做的设置情况进行了汇总。单击 Finsih 按钮,即完成了当前工程的创建。图 5.4工程设置信息显示5.2 编译5.2.1 编译QuartusII 编译器是由几个处理模块的,分别对设计文件进行分析检错,综合,适配等,并产生多种输出文件,如定时分析文件,器件编程文件,各种报表文件等。选择菜单ProsingStart Compilation,或者单击按钮 ,即启动完全编译,这里的完全编译包括分析和综合,适配,装配文件,定时分析,网表文件提取等过
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024劳务施工合同协议书
- 2024年合作伙伴商业运营协议版B版
- 第21课 马克思主义的诞生和国际共产主义运动的兴起(学案)-【帮课堂】2023-2024学年九年级历史上册同步学与练(部编版)
- 2024年二期别墅建设劳务服务协议版
- 2024家装施工服务协议范本版
- 2024年度加工承揽合同承揽方负责加工制造产品3篇
- 2024年城市建筑设计与施工合同
- 2024年医院集团化经营管理合作合同一
- 2024年全球能源互联网建设与运营合作合同
- 2024年城市供水供电特许经营合同
- 浙江省2023年1月学业考试物理物理试题(解析版)
- 2025年高考数学热点题型:切线问题综合(十一类题型)含答案
- 深圳2020-2024年中考英语真题专题07 书面表达(解析版)
- 天津市2024年七年级上学期数学期中考试试卷【附答案】
- 基础plc自学入门单选题100道及答案解析
- 《篮球原地运球 原地单手肩上投篮》教案(三篇)
- 2025届三新背景下生物学高考备考策略
- 朗读艺术入门学习通超星期末考试答案章节答案2024年
- “情指行”一体化运行机制中情报工作职能定位、运行困境与优化路径
- JJF(鲁) 159-2023 重点排放单位碳排放计量审查规范
- 2025届福建省福州市鼓楼区英语高三上期末综合测试试题含解析
评论
0/150
提交评论