




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计EDA技术与VHDL语言课程设计报告题 目: 电梯控制器设计 班 级: 电信10-2班 姓 名: 学 号: 指导教师: 成 绩: 电子与信息工程学院信息与通信工程系目录1引言41.1设计背景41.2设计基础41.2.1 EDA技术介绍41.2.2硬件描述语言(VHDL)介绍52电梯控制器的设计要求与设计思路52.2 设计要求63电梯控制器的综合设计63.1 电梯控制器功能63.2 电梯控制器设计方案63.3 电梯控制器实体设计73.4各模块设计说明83.4.1调用VHDL库93.4.2 entity实体设计模块93、5电梯控制器程序9 3、6 电梯控制器仿真图形164总结与体会175参考文献18摘要:随着EDA技术的快速发展,电子设计自动化(EDA)逐渐成为重要的设计手段,已经广泛应用于模拟与数字电路系统等许多领域。它是一种实现电子系统或电子产品自动化设计的技术,与电子技术、微电子技术的发展密切相关,并吸收了计算机科学领域的大多数最新研究成果,以高性能的计算机作为工作平台,促进了工程发展。传统单片机设计的电梯控制外围电路复杂,性能不稳定,而采用EDA设计,却拥有电子系统小型化、低功耗、高可靠性、开发过程投资小、周期短等优点,而且还可以通过软件编程对硬件结构和工作方式进行重构,使得硬件设计如软件设计那般方便快捷。关键字:EDA VHDL 电梯控制1引言1.1设计背景 近年来,随着我国房地产业的持续高速发展,高层建筑越来越多。因此,一种能使人们快速、便捷地到达目的楼层的电梯便应运而生了。分析近几年房地产业的发展趋势,特别是商品住宅的高速发展,将使住宅对电梯的需求量持续攀升。人们对电梯安全性、高效性、舒适性的不断追求也推动了电梯技术的进步。随着电梯技术的发展, 绿色化、低能耗、智能化、网络化、蓝牙技术的电梯成为一段时间内的发展趋势。为保证人们能更安全、更快捷地到达目的楼层,实现人性化的功能,对电梯系统中的控制部分进行优化设计是非常必要。因此这部分的设计也就成了在电梯设计领域里最为核心的技术。为了实现电梯的智能化,可以采用许多方法。本次设计就是应用EDA电子电路技术来设计电梯控制器,从而使用一片芯片就可以实现对电梯的控制的。1.2设计基础 EDA技术已成为现代电子设计技术的核心。基于EDA技术上开发的实现三层电梯自动控制与目前主流的利用可编程逻辑控制器实现电梯控制紧密相连。硬件描述语言是EDA技术的重要组成部分,VHDL是作为电子设计主流硬件的描述语言。EDA功能强大,一台计算机、一套EDA软件和一片或几片大规模可编程芯片,就能完成电子系统的设计。EDA技术涉及面广,内容丰富,但在教学和技术推广层面上,应用较为广泛的是基于可编程器件的EDA技术,它主要包括如下四大要素:1大规模可编程器件,它是利用EDA技术进行电子系统设计的载体;2硬件描述语言,它是利用EDA技术进行电子系统设计的主要手段;3软件开发工具,它是利用EDA技术进行电子系统的智能化的自动化设计工具;4实验开发系统,它是利用EDA技术进行电子系统设计的下载工具及硬件验证工具。1.2.1 EDA技术介绍 EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。利用EDA技术进行电子系统的设计,具有以下几个特点:1.用软件的方式设计硬件;2.用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;3.设计过程中可用有关软件进行各种仿真;4.系统可现场编程,在线升级;5.整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。因此,EDA技术是现代电子设计的发展趋势。1.2.2硬件描述语言(VHDL)介绍 VHDL作为一个规范语言和建模语言,具有很强的电路描述和建模能力,能从多个层次对数字系统进行建模和描述,从而大大简化了硬件设计任务,提高了设计效率和可靠性。VHDL具有与具体硬件电路无关和设计平台无关的特性,并且具有良好的电路行为描述和系统描述的能力,并在语言易读性和层次化结构化设计方面,表现了强大的生命力和应用潜力。 VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。2电梯控制器的设计要求与设计思路2.1 设计目的 通过设计应完成工作内容和具体的设计方法,通过设计也有出于复习,巩固以往的学习内容,达到灵活应用的目的。在设计完成后,还要将设计的电路进行安装,调试及加强我们的动手能力。在此过程中培养从事设计工作的整体观念。本次设计的目的就是通过实践深入理解EDA技术并掌握VHDL硬件描述语言的设计方法和思想。通过学习的VHDL语言结合电子电路的设计知识理论联系实际,掌握所学的课程知识和基本单元电路的综合设计应用。通过对实用电梯控制系统的设计,巩固和综合运用所学知识,提高设计能力,提高分析、解决计算机技术实际问题的独立工作能力。2.2 设计要求电梯控制器是控制电梯按顾客要求自动上下的装置。采用VHDL语言来设计实用四层电梯控制器,而且遵循方向优先的原则,提前关电梯门和延迟关电梯门,对电梯的运行(上升和下降)、停止、等待状态进行控制。同时,能显示电梯的运行情况、电梯所在楼层。3电梯控制器的综合设计3.1 电梯控制器功能(1)、每层电梯的入口处设有上下请求开关,电梯内设有乘客到达层次的停站请求开关。(2)、设有电梯所处位置指示装置及电梯运行模式(上升或下降)指示装置。(3)、电梯每秒升降一层。(4)、电梯到达有停站请求的楼层后,经过1s电梯打开,开门只是灯亮,开门4s后电梯门关闭(关门指示灯灭),电梯继续运行,直至执行完请求信号后停在当前楼层。(5)、能记忆电梯内外的所以请求信号,并按照电梯运行规则依次响应,每个请求信号保留至执行后消除。(6)、电梯运行规则:当电梯处于上升模式时,只响应比电梯所在位置高的上楼信号,由下至上依次执行,直到最后一个上楼请求执行完毕,如更高层有下楼请求时,则直接升到有下降请求的最高楼接客,然后进入下降模式,但电梯处于下降模式时,则与上升模式相反。(7)、电梯初始状态为一层门开。3.2 电梯控制器设计方案 包括主控制器、分控制器、楼层选择器、状态显示器、译码器和楼层显示器。乘客在电梯中选择所要到达的楼层,通过主控制器的处理,电梯开始运行,状态显示器显示电梯的运行状态,电梯所在楼层数通过译码器译码从而在楼层显示器中显示。分控制器把有效的请求传给主控制器进行处理,同时显示电梯的运行状态和电梯所在楼层数。由于分控制器相对简单很多,所以主控制器是核心部分。 电梯控制器采用状态机来实现。可以将电梯等待的每秒钟以及开门、关门都看成一个独立的状态。由于电梯又是每秒上升或下降一层,所以就可以通过一个统一的1秒为周期的时钟来触发状态机。根据电梯的实际工作情况,可以把状态机设置10个状态,分别是“电梯停留在第1层”、“开门”、“关门”、“开门等待第1秒”、“开门等待第2秒”、“开门等待第3秒”、“开门等待第4秒”、“上升”、“下降”和“停止状态”。各个状态之间的转换条件可由上面的设计要求所决定3.3 电梯控制器实体设计首先考虑输入端口,一个异步复位端口reset,用于在系统不正常时回到初始状态;在电梯外部,必须有升降请求端口,一层是最低层,不需要有下降请求,四层是最高层,不需要有上升请求,二层则上升、下降请求端口都有;在电梯的内部,应该设有各层停留的请求端口:一个电梯时钟输入端口,该输入时钟以1秒为周期,用于驱动电梯的升降及开门关门等动作;另有一个按键时钟输入端口,时钟频率比电梯时钟高。其次是输出端口,有升降请求信号以后,就得有一个输出端口来指示请求是否被响应,有请求信号以后,该输出端口输出逻辑l。被响应以后则恢复逻辑O;同样,在电梯内部也应该有这样的输出端口来显示各层停留是否被响应;在电梯外部,需要一个端口来指示电梯现在所处的位置;电梯开门关门的状态也能用一个输出端口来指示;为了观察电梯的运行是否正确,可以设置一个输出端口来指示电梯的升降状态.图3-1输入框图Fig. 3-1 input block diagram3.4各模块设计说明程序开始VHDL库调用设置控制器的端口设置相关的寄存器各状态转换条件描述电梯信号处理程序结束 图3-2模块设计说明 Fig.3-2 module design specification3.4.1调用VHDL库通过library语句,本程序应用了VHDL库中的“通用ieee库”和“标准std库”。library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;3.4.2 entity实体设计模块entity diantitt is port ()end diantitt;3、5电梯控制器程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY diantitt IS PORT(buttonclk:IN STD_LOGIC; liftclk:IN STD_LOGIC; reset:IN STD_LOGIC;-重启 f1upbutton:IN STD_LOGIC;-电梯外上楼按键 f2upbutton:IN STD_LOGIC; f2dnbutton:IN STD_LOGIC;-电梯外下楼按键 f3upbutton:IN STD_LOGIC; f3dnbutton:IN STD_LOGIC; f4dnbutton:IN STD_LOGIC; fuplight:BUFFER STD_LOGIC_VECTOR(4 DOWNTO 1);-电梯外要上 fdnlight:BUFFER STD_LOGIC_VECTOR(4 DOWNTO 1); -电梯外要下 stop1button,stop2button,stop3button,stop4button:IN STD_LOGIC;-电梯内选楼按键 stoplight:BUFFER STD_LOGIC_VECTOR(4 DOWNTO 1);-电梯内选择楼层信号 position:BUFFER INTEGER RANGE 1 TO 4;-电梯在第几层 doorlight:OUT STD_LOGIC;-门的开关 ceshi:out std_logic; ceshi1:out std_logic; udsig:BUFFER STD_LOGIC);-门的状态判断标志END diantitt;ARCHITECTURE art OF diantitt ISTYPE lift_stata IS(stopon1,dooropen,doorclose,doorwait1,doorwait2,doorwait3,doorwait4,up,down,stop);SIGNAL mylift:lift_stata; SIGNAL clearup:STD_LOGIC;-清楚当前楼层的按钮 SIGNAL cleardn:STD_LOGIC;-清楚按钮BEGINctrlift:PROCESS(reset,liftclk)VARIABLE pos:INTEGER RANGE 4 DOWNTO 1;beginIF reset=1 THEN mylift=stopon1; clearup=0; cleardn=0; ELSE IF liftclkEVENT AND liftclk=1 THEN ceshi=fuplight(2);ceshi1doorlight=1; position=1;pos:=1;-电梯在1层 myliftmyliftclearup=0; cleardn=0; myliftmyliftmyliftdoorlight=0;-门关 IF udsig=0 THEN -前一状态为上 IF position=4 THEN IF stoplight=0000AND fuplight=0000 AND fdnlight=0000 THEN udsig=1; mylift=doorclose; ELSE udsig=1;mylift=down;clearup=1; END IF; ELSIF position=3 THEN IF stoplight=0000 AND fuplight=0000 and fdnlight=0000 THEN udsig=0; mylift=doorclose; ELSIF stoplight(4)=1 OR fdnlight(4)=1 THEN udsig=0; mylift=up;clearup=1; ELSE udsig=1;mylift=down;clearup=1; END IF; ELSIF position=2 THEN IF stoplight=0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=0;mylift=doorclose; ELSIF (stoplight(3)=1 OR fuplight(3)=1) THEN udsig=0;mylift=up;clearup=1; ELSIF (stoplight(4)=1 OR fdnlight(4)=1) THEN udsig=0;mylift=up;clearup=1; ELSIF (fdnlight(3)=1) THEN udsig=0;mylift=up;clearup=1; ELSE udsig=1;mylift=down;clearup=1; END IF; ELSIF position=1 THEN IF stoplight=0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=0;mylift=doorclose; ELSE udsig=0;mylift=up;clearup=1; END IF; END IF; ELSIF udsig=1 THEN clearup=0;-前一状态为下 IF position=1 THEN IF stoplight=0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=0; mylift=doorclose; ELSE udsig=0;mylift=up;cleardn=1; END IF; ELSIF position=2 THEN IF stoplight=0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=1;mylift=doorclose; ELSIF stoplight(1)=1 OR fuplight(1)=1 THEN udsig=1; mylift=down;cleardn=1; ELSE udsig=0;mylift=up;-clearup=1; END IF; ELSIF position=3 THEN IF stoplight=0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=1;mylift=doorclose; ELSIF (stoplight(2)=1 OR fdnlight(2)=1) THEN udsig=1;mylift=down;cleardn=1; ELSIF (stoplight(1)=1 OR fuplight(1)=1) THEN udsig=1;mylift=down;cleardn=1; ELSIF (fuplight(2)=1) THEN udsig=1;mylift=down;cleardn=1; ELSE udsig=0;mylift=up;-clearup=1; END IF; ELSIF position=4 THEN IF stoplight=0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=1;mylift=doorclose; ELSE udsig=1;mylift=down;cleardnposition=position+1;-上状态并且判断是否停 clearup=0; pos:=pos+1; IF pos4 AND(stoplight(pos)=1 OR fuplight(pos)=1) THEN mylift=stop; ELSIF pos=4 AND (stoplight(pos)=1 OR fdnlight(pos)=1) THEN mylift=stop; ELSE myliftposition=position-1;-下状态并且判断是否停 cleardn1 AND(stoplight(pos)=1 OR fdnlight(pos)=1) THEN mylift=stop; ELSIF pos=1 AND (stoplight(pos)=1 OR fuplight(pos)=1) THEN mylift=stop; ELSE myliftmyliftdoorlight=1;-门开状态 之后关 IF udsig=0 THEN IF position=3 AND(stoplight(position)=1 OR fuplight(position)=1)THEN clearup=1; ELSE clearup=1;cleardn=2 AND(stoplight(position)=1 OR fdnlight(position)=1)THEN cleardn=1; ELSE clearup=1;cleardn=1; end if;end if; mylift=doorwait1;-等待关门 end case; end if; end if;end process ctrlift;ctrlight:PROCESS(reset,buttonclk)BEGINIF reset=1 THEN stoplight=0000;fuplight=0000;fdnlight=0000;ELSE IF buttonclkEVENT AND buttonclk=1 THEN IF clearup=1 THEN stoplight(position)=0;fuplight(position)=0; end if; IF f1upbutton=1 THEN fuplight(1)=1; ELSIF f2upbutton=1 THEN fuplight(2)=1;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 风机叶片涂装质量检验考核试卷及答案
- 滴水法松香工抗压考核试卷及答案
- 推土犁司机内部技能考核试卷及答案
- 石作文物修复师职业考核试卷及答案
- 翻罐工适应性考核试卷及答案
- 劳动定员定额师技术考核试卷及答案
- 医院环境卫生学监测试题及答案解析
- 影像学技术面试题及答案
- 地产项目前期营销策划合同
- 银行招聘考试题库及答案
- 2025年化妆品代理合同范本模板
- 2025年江苏省农垦集团有限公司人员招聘笔试备考及参考答案详解
- 2025至2030年中国粗杂粮及粗杂粮加工行业市场调研分析及投资战略咨询报告
- 军用无人机讲解课件
- 2025年中国移动校园招聘笔试试题解析及答题技巧
- 长宏国际安全知识培训课件
- 2025-2026学年地质版(2024)小学体育与健康三年级(全一册)教学设计(附目录P123)
- 项目四旅游电子商务网络营销92课件
- 电缆桥架设备知识培训课件
- 快乐的牛仔课件
- 2025年组织部招聘笔试冲刺
评论
0/150
提交评论