电子电路]毕业论文——基于fpga的电梯控制器的内容摘要:
域中的一种半定制电路 而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点; FPGA 采用了逻辑单元阵列 LCA( Logic Cell Array)这样一 3 个概念,内部包括可配置逻辑模块 CLB( Configurable Logic Block)、 输入 输出模块IOB( Input Output Block)和内部连线( Interconnect)三个部分。 CPLD 和 FPGA 性能比较 尽管 FPGA 和 CPLD 都是可编程 ASIC 器件,有很多共同点,但是由于其结构的不同使得各自又具有不同的特点,具体的有一下 区别 : 1) CPLD 内部逻辑单元比较多,而触发器资源较少,适合各种算法和组合逻辑电路的设计;而 FPGA 内部触发器资源多,而门级单元较少,适合时序逻辑电路的设计。 2) CPLD 的连续式布线结构决定了其时序延时是均匀的、可预测性的,而 FPGA的分段式布线结构决定了其延时是不可预测性的。 3) 在编程上, FPGA 比 CPLD 具有更大的灵活性, CPLD 通过修改具有固定内部连线电路的逻辑功能来编程, FPGA 主要是修改内部连线的布线来编程。 4) 相对 CPLD 而言, FPGA 的集成度高,可实现的规模也较大,并具有更负责的布线结构和逻辑实现,同时 CPLD 的功耗比 FPGA 的大,并且随着集成度的增加而更明显。 5) 相对于 FPGA 而言, CPLD 使用起来更方便; CPLD 编程采用 PROME2 或Fast Flash 技术,无须外部存储器芯片,使用简单;而 FPGA 的编程信息必须存放在外部存储器上,使用较复杂;由于存储的信息的方式就决定了两者的保密性,一般情况, CPLD 保密性好, FPGA 的保密性差。 6) CPLD 的运行速度比 FPGA 的快,在编程方式上, CPLD 编程采用 PROME2或 Fast Flash 存储器编程,编程次数可达 1 万次,其特点是系统在掉电时编程信息不会丢失;而 FPGA 大部分是基于 SRAM 编程,编程信息在掉电时丢失,每次上电时,需从外部存储器将编程数据重新写入 SRAM 中,其特点是可编程任意次,可在工作中快速编程。 FPGA 体系结构 FPGA 采用逻辑单元阵列( LCA, Logic Cell Array)新概念,内部包括可配置逻 4 辑模块( CLB, Configurable Logic Block)、输入输出模块( IOB, Input Output Block)和内部互连资源( IR, Interconnect Resources)三部分组成。 1) 可 配置 逻辑 块 ( CLB, Configurable Logic Block)是 FPGA 的主要组成部分,主要是由逻辑函数发生器、触发器、数据选择器等电路组成。 2) 输入输出模块( IOB, Input Output Block)提供了器件引脚和内部逻辑阵列之间的连接,主要是由输入触发器、输入缓冲器和输出触发 、 锁存器、输出缓冲器组成。 3) 可编程互连资源( IR, Interconnect Resources)可以将 FPGA 内 部的 CLB 和CLB 之间、 CLB 和 IOB 之间连接起来,构成各种具有复杂功能的系统, IR主要由许多金属线段构成,这些金属线段带有可编程开关,通过自动布线实现各种电路的连接。 FPGA 常用芯片介绍 目前世界上有很多生产 FPGA 芯片的公司,常用的主要有: Altera、 XIlinx、 Lattice和 Actel,其中 Altera 和 XIlinx 占据主流市场。 1) Altera 的主流 FPGA 分为两大类:一种是侧重低成本、容量中等、性能可以满足一般逻辑设计要求的,如 Cyclone 系列;另一种是侧重高性能、容量大、性能可以 满足各类高端应用,如 Stratix 系列。 2) XIlinx是 FPGA发明者,是老牌 PLD,产品的种类较全,主要有: XC9500/4000、Cool Runner( XPLA3)、 Spartan、 Virtex 等系列。 3) Lattice 是在系统编程( ISP)技术的发明者,主要有: ispLSI2020/5000/8000、MACH4/ ispMACH4000 等系列。 4) Actel 公司是世界反熔丝技术的 FPGA 领先供应商,主要有两大系列的反熔丝 FPGA 产品 SXA 和 MX 高速系列。 3 VHDL 硬件描述语言 VHDL 语言特点 VHDL( VeryHighSpeed Integrated Circuit Hardware Description Language)是一 5 种标准的硬件描述语言,中文意思是超高速集成电路硬件描述语言;利用 VHDL 进行系统行为级设计已经成为 FPGA 与 ASIC 设计的主流,使用 VHDL 不仅可以快速的描述和综合 FPGA 设计,还可以提供一下的一些性能。 1) 功能强大且很具有灵活性, VHDL 具有很强大的语言结构,可以用简洁明确的代码描述复杂的控制逻辑,语言很灵活,支持设计库和可重复使用的元件生成。 2) 不依赖于器 件的设计, VHDL 允许设计者生成一个设计而不需要首先选择一个用来实现设计的器件,对于同一个设计描述,可以采用多种不同的器件结构来实现其功能。 3) 具有可移植性,因为 VHDL 是一种标准的语言,所以它可以被不同的工具所支持,这意味着同一个 VHDL 设计描述可以在不同的设计项目中采用 4) 可以对其设计性能进行评估,设计者可以进行一个完整的设计描述,并对其进行综合,生产选定的器件结构的逻辑功能,然后评估结果,选用最适合设计需求的器件。 5) 上市时间快、成本低、开发周期短, VHDL 语言的设计将大大提高数字单片化设计实现的速度,为生 产者大大节约开发成本。 状态机的 VHDL实现 有限状态机以及其设计技术是使用数字系统设计中的重要组成部分,也是实现高效率、高可靠和高速控制逻辑系统的重要途径,广义而论,只要是涉及到触发器的电路,都属于状态机,由此也可以看出其重要性。 用 VHDL 设计的状态机根据不同的标准可以分为不同的形式: 1) 从状态机的信号输出方式上分: Mealy 型和 Moore 型; 2) 从状态机的描述结构上分:单进程状态机和多进程状态机; 3) 从状态机表达形式上分:符号化状态机和确定状态编码状态机; 4) 从状态机编码方式上分:顺序编码状态机、一位热 编码状态机和其他编码方式状态机。 实际设计过程中,接触最多的分类方法就是 Mealy 型和 Moore 型;从输出时序 6 上看,前者是异步输出,后者是同步输出。 Mealy 型状态机的输出是当前状态和所有输入信号的函数,它的输出是输入变化后立即变化的,不依赖时钟的同步。 Moore 型状态的输 出 仅为当前状态的函数,但是在输入发生变化时还必须等到时钟的到来,输出才会变化,由此可见, Moore 型要多等待一个时钟周期。 本次论文 中,电梯控制模块部分就利用 Moore 型状态机的方法实现对电梯运行状态的同步控制,通过将电梯运行过程分解为一 些实质性的状态来进行转换,使得电梯的运行变得方便、快捷、稳定。 4 电梯控制器的工作原理 本次论文 是实现 6 层电梯的运行控制,当在某一楼层按下上升或者下降请求按钮时,控制器响应该请求并控制电梯前往该楼层,当到达该楼层时 , 电梯开门,当进入电梯后,电梯关门,此时按下要到达的楼层按钮,控制器响应该请求并控制电梯前往该楼层,当到达前往楼层后,电梯开门,走出电梯,然后关门 ......,就这样往复的实现电梯的控制功能。 在电梯运行时遵循如下规则:当电梯处于上升模式时,只响应比电梯所在位置高的上楼信号,由下至上 依次 执行;直 到最后一个上楼请求执行完毕,如有更高层有下楼请求时,则直接升到有下降请求的最高楼,然后进入下降模式,电梯处于下降模式时,则与上升相反。 电梯的输入信号主要包括外部输入信号和内部输入信号;对于电梯外部输入信号主要有 :每一层电梯门外都有上升请求和下降请求按钮,其中一楼电梯门外只有上升请求按钮, 6 楼电梯门外只有下降请求按钮。 对于电梯内部输入信号主要有: 6 个前往楼层的按钮、提前关门按钮、延时关门按钮、电梯异常按钮。 电梯输出信号也主要包括外部输出信号和内部输出信号;对于电梯外部输出信号包括上升请求按钮和下降按钮指示 信号、电梯当前所在楼层指示信号、电梯运行方向指示信号。 电梯内部输出信号包括 6 个前往楼层按钮指示信号、超重等警告指示信号、电梯当前所在楼层指示信号、电梯运行方面指示信号。 7 5 电梯控制系统的设计内容 本次论文 是基于 FPGA 的电梯控制器的 研究 ,是电梯控制的核心技术,通过电梯控制器可以对电梯运行模式和状态进行全面的控制,这也是次论文的研究重要性;电梯的层数为 6 层, 本次论文 采用模块化设计 方法 ,主要分为四大模块:时钟分频模块、按键处理模块、电梯运行控制模块、数码管显示模块。 其 方框 原理图 50 如下: 图 50 电梯控制器原理图 时钟分频模块 时钟分频模块功能是将系统频率分频为两种不同的频率,一个是 2 分频时钟供电梯运行控制模块使用,另一个 8 分频时钟供其他模块使用,其源代码如下: 时钟分频模块: Library Ieee。 Use。 Use。 // 定义所用的标准库 Entity clkdiv Is Port( clk: In Std_Logic。 //系统 时钟频率 clk_2: Out Std_Logic。 //2 分频脉冲(作为电梯控制时钟) clk_8: Out Std_Logic //8 分频脉冲(作为按键处理时钟) )。 //定义输入输出变量 End clkdiv。 时钟分频 数码管显示 按键处理 电梯运行控制 系统时钟 2 倍分频 8 倍分频 按键请求 按键处理响应 显示电梯所在楼层 8 Architecture one of clkdiv is Signal t: Std_Logic_Vector(7 Downto 0)。 //定义一个 8 位的变量 Begin Process(clk) //时钟分频进程 Begin If clk39。 event and clk=39。 139。 Then //时钟脉冲上升沿有效 t=t+1。 clk_2=t(1)。 //变量 t 的第 1 位输出 2 分频 clk_8=t(4)。 //变量 t 的第 3 位输出 8 分频 End If。 End Process。 End one。 源程序编写完成后,进行调试、运行并生成模块文件,确认没有错误之后进行功能仿真、时序分析。 其模块原理图 51 如下: 图 51 时钟分频模块原理图 按键处理模块 按键处理模块的功能是把电梯外部与内部的按键信号进行处理,把处理好的按键信号送到电梯运行控制模块;根据电梯外部按键信号转化为电梯运行控制模块的外部请求信号,根据电梯内部的按键信号转化为电梯运行控制模块的电梯前往信号,根据电梯楼层信号及时清除电梯外部与内部按键信号。 其源代码编写如下: c lk c lk _ 2c lk _ 8c lk d ivin s t 9 按键处理模块: Library Ieee。 Use。 Use。 Use。 // 定义所用的标准库 Entity keypro Is Port( clk: In Std_Logic。 //按键时钟 rst: In Std_Logic。 //异步置位按键 up: In Std_Logic_Vector(5 Downto 1)。 //上升请求按键 (低电平有效) down: In Std_Logic_Vector(6 Downto 2)。 //下降请求按键 (低电平有效) up_light: Out Std_Logic_Vector(6 Downto 1)。 //电梯外部上升请求指示灯 down_light: Out Std_Logic_Vector(6 Downto 1)。 //电梯外部下降请求指示灯 inside: in Std_Logic_Vector(6 Downto 1)。 //电梯内 部楼层请求按键 (低电平有效) inside_light: Out Std_Logic_Vector(6 Downto 1)。 //电梯内部楼层请求指示灯 position: in integer range 1 to 6。 //电梯位置变量 clear_up: in Std_Logic。 //用于清除上升请求指示。电子电路]毕业论文——基于fpga的电梯控制器的
相关推荐
选用它作为开发平台,易于功能的扩展和软件升级。 编程语言选用 Visual 作为程序设计语言。 系统模块结构图 学生信息管理系统的设计与实现 7 根据需求分析,设计出如下图所示的学生信息管理系统的结构图。 系统模块功能设计 以下对系统各模块进行功能设计: ( 1)应用系统运行后出现的第一个界面即为“系统登录”界面。 “系统登录”表单主要是为验证用户的操作权限,即对用户表中的标识数据进行验证。
时内部会锁存 EA 端状态。 如 EA 端为高电平(接 Vcc 端),CPU 则执行内部程序存储器中的指令。 Flash 存储器编程时,该引脚加上 +12V的编程允许电源 Vpp,当然这必须是该器件是使用 12V 编程电压 Vpp。 XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。 XTAL2:振荡器反相放大器的输出端。 XXXXXXXX 学院(论文) 9 单片机最小原理图如图 222
治偏晚有的农户不是根据麦蚜的防治指标进行防治,而是在麦蚜布满麦穗以后再进行防治,不仅对小麦造成危害,而且防治偏晚还会影响防治效果。 对策麦蚜的防治指标是百穗有蚜虫 500 头。 达到防治指标的地块要立即用药防治。 问题二:用药不更新用药不更新会使麦蚜对所用农药产生抗药性,防治效果极差。 对策在蚜虫发生的初期每亩用 3%啶虫咪乳油 25003000 倍液喷雾,或在蚜虫发生的中后期用
作后期喷施叶面肥料,可以延长冠层叶片功能期,促进光合产物向籽粒运输,增加实粒数,提高千粒重和品质,一般可增产 5%10%。 常用叶面肥有以下几种:1、叶面宝内含腐植酸和微量元素,可以增强麦予抗逆能力,补充微量元素。 于孕穗期和抽穗扬花后各喷施 1 次,每次每亩 710 毫升,加 2%尿素,对水 30千克喷雾。 一般可提高千粒重 12 克,增产 5%6%。 2
五、流动人员情况 流动人员情况 序号 姓 名 性别 职称 研究方向 工作单位 国别 进入实验室时间 1 Helmut Moritz 男 教授 大地测量 奥地利格拉茨大学 国外 202011 2 A Stewart Fotheringham 男 教授 空间分析与 GIS、空间选择建模 National University of Ireland 国外 202011 3 Fujiwara
层下有厚度较小的淤泥 或淤泥质土层,在碾压荷载下抛石能挤入该层底面时,可采取挤淤处 理。 先在软弱土面上堆填块石、片石等,然后将其压入以置换和挤出 软 弱土,再做垫层。 ( 5)垫层应分层铺设,分层历或压实,基坑内预先安好 5m5m 网格标桩,控制每层砂垫层的铺设厚度。 振夯压要做到交叉重益 1/3,防止漏振、漏压。 夯实、碾压遍数、振实时间应通过试验确。 用细砂作垫层材料时