自动升降电梯控制设计内容摘要:

EDA系统就能以规则驱动的方式自动完成整个设计。 这样,新的概念就能迅速有效地成为产品,大大缩短了产品的研制周期。 不仅如此,高层次设计只是定义系统的行为特性,可以不涉及实现工艺,因此还可以在厂家综合库的支持下,利用综合优化工具将高层次描述转换成针对某种工艺优化的网络表,使工艺转化变得轻而易举。 系统级设计的工作流程图。 首先,工程师按照“自顶向下”的设计方法进行系统划分。 其次,输入 VHDL 代码,这是高层次设计中最为普遍的输入方式。 此外,还可以采用图形输入方式(框图,状态图等),这种输入方式具有直 观、容易理解的优点。 第三步是,将以上的设计输入编译成标准的 VHDL文件。 第四步是进行代码级的功能仿真,主要是检验系统功能设计的正确性。 这一步骤适用大型设计,因为对于大型设计来说,在综合前对源代码仿真,就可以大大减少设计重复的次数和时间。 一般情况下,这一仿真步骤可略去。 第五步是,利用综合器对 VHDL 源代码进行综合优化处理,生成门级描述的网络表文件 ,这是将高层次描述转化为硬件电路的关键步骤。 综合优化是针对 ASIC 芯片供应商的某一产品系列进行的,所以综合的过程要在相武汉理工大学FPGA课程设计 8 应的厂家综合库支持下才能完成。 第六步是,利用产生 的网络表文件进行适配前的时序仿真,仿真过程不涉及具体器件的硬件特性,是较为粗略的。 一般的设计,也可略去这一仿真步骤。 第七步是利用适配器将综合后的网络表文件针对某一具体的目标器件进行逻辑映射操作,包括底层器件配置、逻辑分割、逻辑优化、布局布线。 第八步是在适配完成后,产生多项设计结果: (1)适配报告,包括芯片内部资源利用情况,设计的布尔方程描述情况等; (2)适配后的仿真模型; (3)器件编程文件。 根据适配后的仿真模型,可以进行适配后的时序仿真,因为已经得到器件的实际硬件特性(如时延特性),所以仿真结果能比较精确地 预期未来芯片的实际性能。 如果仿真结果达不到设计要求,就需要修改 VHDL 源代码或选择不同速度和品质的器件,直至满足设计要求;最后一步是将适配器产生的器件编程文件通过编程器或下载电缆载入到目标芯片 FPGA 或 CPLD 中。 如果是大批量产品开发,则通过更换相应的厂家综合库,轻易地转由 ASIC 形式实现。 图 系统级设计的工作流程 综上所述, EDA 技术是电子设计领域的一场革命,目前正处于高速发展阶段,每年都有新的 EDA 工具问世。 广大电子工程人员掌握这一先进技术,这不仅是提高设计效率的需要,系 统 划 分V H D L 代 码 或 图 形 方式 输 入编 译 器代 码 级 功 能 仿 真综 合 器适 配 前 时 序 仿 真适 配 器器 件 编 程 文 件C P L D / F P G AP 实 现适 配 后 仿 真模 型适 配 后 时 序仿 真适 配 报 告A S I C 实 现厂 家 综 合 库武汉理工大学FPGA课程设计 9 更是我国电子工业在世界市 场上生存、竞争与发展的需要,正因 EDA 在设计控制系统中的这些特点,在电梯控制电路上采用 EDA 技术进行开发,越来越受到人们的重视。 QuartusII 软件介绍 Altera 公司的 QuartusII 软件提供了可编程片上系统( SOPC)设计的一个综合开发环境。 Quartus II 开发工具人机界面友好、易于使用、性能优良,并自带编译、仿真功能。 QuartusII 软件支持 VHDL 和 Verilog 硬件描述语言的设计输入、基于图形的设计输入方式以及集成系统级设计工具。 QuartusII 软件可以将设计、综合、布 局和布线以及系统的验证全部都整合到一个无缝的环境之中,其中也包括和第三方 EDA 工具的接口。 QuartusII 设计软件根据设计者需要提供了一个完整的多平台开发环境,它包含整个 FPGA 和 CPLD 设计阶段的解决方案。 在实际应用设计中,对程序原理性及可执行性的验证主要集中在程序修改阶段,尤其在处理的数据复杂、繁多时, Quartus II 自带的波形输入仿真就很难实现程序的验证,而且输出的数据不能方便的以波形图示直观的呈现,给程序设计者在校验程序阶段带来了很多的不便。 再有,在很多数字电路设计中,考虑成本的问题, FPGA 实现的往往是设计的核心部分,而很多的外围电路如 A/D 转换器、 D/A 转换器等仍然使用传统的接口芯片来实现。 而 QuartusII 设计只是针对数字信号,并不支持模拟量的输入。 而仅仅为了便于程序的验证而用 FPGA 实现这些外围电路,会大大延长程序的开发周期,更会增大开发的成本。 而 MATLAB 具有强大的运算功能,可以容易的实现 A/D、 D/A 转换等外围电路功能,并能以波形形式将结果直观地呈现,极大地方便了程序设计人员设计应用系统。 武汉理工大学FPGA课程设计 10 第三章 总体方案设计 设计的目的 针对我国楼层层数的基本水平,本着“一 理通,百理明”的原则,本设计希望通过简单的六层电梯控制器的设计,为广大电梯设计者提供一个基础。 针对目前中小型电梯所能实现的功能,本控制器虚拟实现以下功能: 指示电梯所在楼层 电梯基本运行 关门延时设置 提前关门设置 超载报警 故障报警 设计要求 六层电梯控制器将实现的功能: (1)每层电梯入口处设有上下请求开关,电梯内设有顾客到达层次的停站请求开关。 (2)设有电梯入口处位置指示装置及电梯运行模式 (上升或下降 )指示装置。 (3)电梯每秒升 (降 )一层楼。 (4)电梯到达有停站请求的楼层,经过 1 秒电梯门 打开,开门指示灯亮,开门 4 秒后,电梯门关闭 (开门指示灯灭 ),电梯继续进行,直至执行完最后一个请求信号后停留在当前层。 (5)能记忆电梯内外所有请求,并按照电梯运行规则按顺序响应,每个请求信号保留至执行后消除。 (6)电梯运行规则:当电梯处于上升模式时,只响应比电梯所在位置高的上楼请求信号,由下而上逐个执行,直到最后一个上楼请求执行完毕;如果高层有下楼请求,则直接升到由下楼请求的最高层,然后进入下降模式。 当电梯处于下降模式时则与上升模式相反。 (7)电梯初始状态为一层开门状态。 武汉理工大学FPGA课程设计 11 设计的基础依据 现代电 子设计技术的核心是 EDA 技术。 基于 EDA 技术开发的实现六层电梯自动控制与目前主流的利用可编程逻辑控制器实现电梯控制紧密相连。 硬件描述语言是 EDA 技术的重要组成部分, VHDL 是作为电子设计主流硬件的描述语言。 使用 VHDL 语言进行程序设计,在 QuartusII 软件上对程序进行编译、仿真。 在 MAX2win 平台上开发具有易学易懂、控制灵活方便、抗干扰能力强、运行稳定可靠等优点。 语言介绍 VHDL( Very High Speed Integrated Circuit Hardware Description Language)语言于 1983年由美国国防部发起创建,由电工和电子工程师协会( the institute of electrical and electronics engineer)进一步发展并在 1987 年作为“ IEEE1076”发布。 从此, VHDL 成为硬件描述语言的业界标准之一。 VHDL 作为一个规范语言和建模语言,具有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描述,从而大大简化了硬件设计任务,提高了设计效率和可靠性。 VHDL 具有与具体硬件电路无关和设计平台无关的特性,并且 具有良好的电路行为描述和系统描述的能力,并在语言易读性和层次化结构化设计方面,表现了强大的生命力和应用潜力。 VHDL 的特点 应用 VHDL 进行系统设计,有以下几方面的特点 : 功能强大 : VHDL 具有功能强大的语言结构。 它可以用明确的代码描述复杂的控制逻辑设计。 并且具有多层次的设计描述功能,支持设计库和可重复使用的元件生成。 VHDL 是一种设计、仿真和综合的标准硬件描述语言。 可移植性 : VHDL 语言是一个标准语言,其设计描述可以为不同的 EDA 工具支持。 它可以从一个仿真工具移植到另一个仿真工具,从一个 综合工具移植到另一个综合工具,从一个工作平台移植到另一个工作平台。 此外,通过更换库再重新综合很容易移植为 ASIC 设计。 武汉理工大学FPGA课程设计 12 独立性 : VHDL 的硬件描述与具体的工艺技术和硬件结构无关。 设计者可以不懂硬件的结构,也不必管最终设计实现的目标器件是什么,而进行独立的设计。 程序设计的硬件目标器件有广阔的选择范围,可以是各系列的 CPLD、 FPGA 及各种门阵列器件。 可操作性 : 由于 VHDL 具有类属描述语句和子程序调用等功能,对于已完成的设计,在不改变源程序的条件下,只需改变端口类属参量或函数,就能轻易地改变设计的规模和结构。 灵活性 : VHDL 最初是作为一种仿真标准格式出现的,有着丰富的仿真语句和库函数。 使其在任何大系统的设计中,随时可对设计进行仿真模拟。 所以,即使在远离门级的高层次(即使设计尚未完成时),设计者就能够对整个工程设计的结构和功能的可行性进行查验,并做出决策。 VHDL 的设计步骤 采用 VHDL 的系统设计,一般有以下 6 个步骤。 ( 1) 要求的功能模块划分; ( 2) VHDL 的设计描述(设计输入); ( 3) 代码仿真模拟(前仿真); ( 4) 计综合、优化和布局布线; ( 5) 布局布线后的仿真模拟(后仿真); ( 6) 设 计的实现(下载到目标器件)。 VHDL 语言编程格式 ( 1)一个完整的 VHDL 程序是以下五部分组成的: 库( LIBRARY):储存预先已经写好的程序和数据的集合。 程序包( PACKAGE):声明在设计中将用到的常数、数据类型、元件及子程序。 实体( ENTITY):声明到其他实体或其他设计的接口,即定义本定义的输入输出端口。 构造体( ARCHITECTUR):定义实体的实现。 电路的具体描述配置( CONFIGURATION):一个实体可以有多个构造体,可以通过配置 来为实体选择其中一个构造体。 武汉理工大学FPGA课程设计 13 ( 2)实体 实体( ENTITY)是 VHDL 设计中最其本的组成部分之一(另一个是结构体), VHDL 表达的所有设计均与实体有关。 实体类似于原理图中的一个部件符号,它并不描述设计的具体功能,只是定义所需的全部输入 /输出信号。 实体格式如下: ENTITY 实体名 IS [GENERIC(常数名:数据类型 [:设定值 ]) ] 类属说明 PORT 端口说明 (端口信号名 1;模式 类型;端口信号名 2: 模式 类型;端口信号名 3:模式 类型;端口信号名 4:模式 类型语句或常量定义申 明实体语句 END 实体名; ( 3)结构体 所有能被仿真的实体都由结构体( ARCHITECTURE)描述,即结构体描述实体的结构或行为,一个实体可以有多个结构体,每个结构体分别代表该实体功能的不同实现方案。 结构体格式: ARCHITECTURE 结构体名 OF 实体名 IS [定义语句(元件例化); ] BEGIN 并行处理语句; END 结构体名; 武汉理工大学FPGA课程设计 14 第四章 电梯控制设计方案 电梯 控制器的总体设计方案 控制器的功能模块如图 所示,包括主控制器、楼层选择器、状态显示器、译码器和楼层显示器。 乘客在电梯中选择所要到达的楼层,通过主控制器的处理,电梯开始运行,状态显示器显示电梯的运行状态,电梯所在楼层数通过译码器译码从而在楼层显示器中显示。 由于其他模块相对简单很多,所以主控制器是核心部分。 图 电梯控制流程图 状 态 显 示 主 控 制 器楼 层 选择 器译 码 器 楼 层 显 示武汉理工大学FPGA课程设计 15 电梯运行控制流程图如下 电梯运行控制流程图如下 图 电梯运行控制流程图 开 始电 梯 是 否 复 位用 户 输 入 程 序 段是 否 在 开 关 门是 否 空 闲是 否 处 于 上 行是 否 处 于 下 行结 束电 梯 复 位 程 序开 关 门 程 序是 否 上 行 召 换 是 否 下 行 召 换定 上 行 指 示 定 下 行 指 示执 行 运 行 程 序 段执 行 运 行 程 序 段否是否 否否否是是是是否是是武汉理工大学FPGA课程设计 16 六层电梯控制器的设计思路 电梯控制器运用状态机的设 计方法,思路比较清晰。 可以将电梯等待的每秒钟以及开门、关门都看成一个独立的状态 [2]。 由于电梯又是每秒上升或下降一层,所以就可以通过一个统一的 1 秒为周期的时钟来触发状态机。 根据电梯的实际工作情况,可以把状态机设置 7个状态,分别是“电梯停留在第 1 层”、“开门”、“关门”、 “开门等待 4 秒”、“上升”、“下降”和“停止状态”。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。