EDA电梯控制器课程设计报告

合集下载

EDA课程设计(电梯)

EDA课程设计(电梯)

课程设计(综合实验)报告( 2010 -- 2011 年度第 1 学期)名称:EDA课程设计题目:电梯控制的实现院系:班级:学号:学生姓名:指导教师:设计周数:1周成绩:日期:年月日一、课程设计的目的与要求用Mealy有限状态机设计二个楼层电梯控制程序。

用VHDL语言写出Mealy有限状态机控制模块。

Mealy有限状态机的输出受控于当前的状态和信号输入的变化,一旦这敏感信号被测,输出的信号就依赖于它们得到确定。

电梯控制器的工作原理:当电梯空闲时,其状态等待着其他楼层的请求,一旦有请求输入信号,电梯移动到该请求信号的楼层,这时引起电梯门被关闭。

引起电梯门关闭的条件有如下二个:①必须在地面楼层状态StateGround;②首层有请求输入信号ReqFirst。

电梯开始移动到请求层,在移动过程中State从Ground转变为GoingFirst。

当到达请求层后,电梯门被打开并且请求灯熄灭,此状态转换为First状态。

这时如有其他楼层请求信号输入将引起电梯门的关闭(如地面层有楼层请求信号ReqGround)。

当电梯门正在做关闭动作时,同时又要做重新打开电梯门的动作,其条件必须有当前楼层请求信号ReqFirst输入(其他请求信号均被忽略)。

电梯门关闭以后,电梯可再次响应其他楼层请求,即这时电梯State状态为First状态,并且又从地面层来一个请求信号ReqGround,将会引起电梯State状态从First状态改变为GoingGround状态,电梯开始往下运行。

在未到达目的地之前,其他请求信号均被忽略。

二、设计正文本设计是基于VHDL语言开发的两层电梯控制器。

以Quartus Ⅱ为开发环境,最终在EDA实验箱上实现其演示的基本功能。

其功能包括:显示电梯当前所在楼层,显示有请求发生的楼层,响应楼层请求,关门延时设置,电梯开关门显示。

具体描述为:1、电梯外部有请求开关,一楼一个,二楼一个;电梯内部有乘客到达层次的请求开关。

电梯控制器课设报告

电梯控制器课设报告

SPOC/EDA综合课程设计——电梯控制器设计目录第一章设计的性质与目的 (2)第二章设计任务与要求 (3)第三章方案选择与论证 (4)第四章设计原理 (5)4.1 原理图 (5)4.2 流程图 (5)4.3 结构框图 (6)4.4 程序描述 (6)第五章部分时序仿真图 (15)5.1 电梯上锁 (15)5.2 电梯报警 (15)5.3 电梯超载 (15)5.4 电梯运行模拟 (16)5.5 电梯开门延时模拟 (18)5.6 电梯紧急开门 (19)第七章调试过程中出现的问题及解决措施 (20)第八章设计总结 (21)8.1 设计方案的优缺点比较 (21)8.2 心得体会 (22)作者:吴鑫自动化071 29号第一章设计的性质与目的SOPC/EDA综合课程设计是继《EDA技术及应用》和《数字电子技术》课程之后开出的实践环节教学。

目的是训练学生综合运用学过的《数字电子技术》和《EDA技术及应用》的基本知识,培养独立设计比较复杂的数字逻辑系统的能力。

设计工作建立在硬件和软件两个平台的基础上。

硬件平台是可编程逻辑器件,所选的器件可保证在一片芯片上设计出题目要求的数字电路系统。

软件平台是ALTERA公司的Quartus II。

通过课程设计,学生要掌握使用EDA(电子设计自动化)工具设计数字逻辑的方法,包括设计输入、编译、软件仿真、下载和硬件仿真等全过程。

SPOC/EDA综合课程设计——电梯控制器设计第二章设计任务与要求1.设计一个4层电梯全自动控制电路。

2.电梯运行锁用一按钮代替(开锁上电),低电平可以运行,高电平不能运行。

3.每层电梯入口处设有上行、下行请求按钮,电梯内设有乘客到达层次的停站要求开关,高电平有效。

4.有电梯所处楼层指示灯和电梯上行、下行状态指示灯。

5.电梯到达某一层时,该层指示灯亮,并一直保持到电梯到达另一层为止。

电梯上行或下行时,相应状态指示灯亮。

6.电梯接收到停站请求后,每层运行2秒,到达停站层,停留2秒后门自动打开,开门指示灯亮,开门6秒后电梯自动关门。

EDA课程设计模板

EDA课程设计模板

EDA 课程设计报告书课题名称 基于EDA 的电梯升降控制系统的设计姓 名 *** 学 号 ***** 院、系、部航空工程学院 专 业电子信息科学与技术 指导教师 ***2016年10月28日※※※※※※※※※ ※※ ※※※※ ※※※※※※※※※2013级学生 EDA 课程设计智能数字抢答器的设计1 设计目的(1)熟悉集成电路的引脚安排。

(2)掌握各芯片的逻辑功能及使用方法。

(3)了解面包板结构及其接线方法。

(4)了解数字抢答器的组成及工作原理。

(5)熟悉数字抢答器的设计与制作。

2 设计思路(1)设计抢答器电路。

(2)设计可预置时间的定时电路。

(3)设计报警电路。

(4)设计时序控制电路。

3 设计过程3.1方案论证数字抢答器总体方框图如图1所示。

图 1 数字抢答器框图其工作原理为:接通电源后,主持人将开关拨到“清除”状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开关置于“开始”状态,宣布“开始”抢答器工作。

定时器倒计时,扬声器给出声响提示。

选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。

当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。

如果再次抢答必须由主持人再次操作“清除”和“开始”状态开关。

3.2电路设计抢答器电路如图2所示。

图2 数字抢答器电路该电路完成两个功能:一是分辨出选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号;二是禁止其他选手按键操作无效。

工作过程:开关S 置于“清除”端时,RS 触发器的R 端均为0,4个触发器 图 3 可预置时间的定时电路输出置0,使74LS148的ST =0,使之处于工作状态。

当开关S 置于“开始”时,抢答器处于等待工作状态,当有选手将键按下时(如按下S5),74LS148的输出,010012=Y Y Y ,0=EX Y 经RS 锁存后,1Q=1,BI =1,74LS48处于工作状态,4Q3Q2Q=101,经译码显示为“5”。

eda课课程设计电梯

eda课课程设计电梯

eda课课程设计电梯一、教学目标本课程的教学目标是使学生掌握eda课程的基本知识和技能,能够运用所学知识分析和解决实际问题。

具体分为以下三个部分:1.知识目标:学生需要掌握eda课程的基本概念、原理和方法,包括数据的采集、处理、分析和可视化等。

2.技能目标:学生需要能够运用eda课程的知识,进行数据的处理和分析,能够独立完成数据分析的项目。

3.情感态度价值观目标:学生通过学习eda课程,能够培养对数据的敏感性和好奇心,形成积极探究数据背后信息的意识。

二、教学内容本课程的教学内容主要包括eda课程的基本概念、原理和方法。

具体包括以下几个部分:1.数据的采集:介绍数据采集的基本方法,包括问卷、实验设计等。

2.数据的处理:介绍数据处理的基本方法,包括数据的清洗、转换和整合等。

3.数据分析:介绍数据分析的基本方法,包括描述性统计、推断性统计和机器学习等。

4.数据可视化:介绍数据可视化的基本方法,包括图表的绘制和信息的呈现等。

三、教学方法本课程的教学方法主要包括讲授法、案例分析法和实验法。

具体包括以下几个部分:1.讲授法:通过讲解和演示,使学生掌握eda课程的基本概念、原理和方法。

2.案例分析法:通过分析实际案例,使学生能够运用所学知识分析和解决实际问题。

3.实验法:通过实验操作,使学生能够亲手处理和分析数据,提高学生的实践能力。

四、教学资源本课程的教学资源主要包括教材、参考书、多媒体资料和实验设备。

具体包括以下几个部分:1.教材:选用权威、实用的教材,为学生提供基本的学习资料。

2.参考书:推荐一些相关的参考书,丰富学生的知识体系。

3.多媒体资料:制作精美的多媒体课件,提高学生的学习兴趣。

4.实验设备:配置齐全的实验设备,为学生提供实践操作的机会。

五、教学评估本课程的评估方式包括平时表现、作业和考试三个部分,以全面客观地评价学生的学习成果。

1.平时表现:通过观察学生在课堂上的参与程度、提问和回答问题的情况,了解学生的学习态度和理解能力。

EDA电梯控制器设计

EDA电梯控制器设计

EDA技术综合课程设计课程:EDA技术综合课程设计题目:电梯控制器所属院系:电气工程学院专业班级:自控1304班姓名:王军学号:1317014092 指导老师:张立众完成地点:陕西理工学院目录1.设计任务 (2)2.可选器材 (2)3.设计框图 (2)4.设计思路 (4)5.引脚分配 (5)6程序清单 (9)7.主控模块仿真 (16)8.问题及改进 (17)9.总结及感受 (18)10.参考文献 (19)一.[设计任务]1、设计一个三层的电梯控制器。

2、用数码管显示电梯所在的楼层号,电梯初始化后状态在第一层楼。

3、每层电梯外都有上下楼请求开关,电梯内部有到各楼层的请求开关及紧急故障开关;用数码管显示上行或下行状态,用发光二极管显示是否有紧急情况。

4、电梯每秒升(降)一层,电梯到达有停站请求的楼层后,经1秒电梯开门,开门指示灯亮,开门4秒后指示灯灭,关门,电梯继续运行。

5、当电梯被锁定或发生紧急情况后,电梯停止运行,直到解除锁定或紧急故障后才可以从停止时的状态继续运行。

6、当电梯处于上升状态时,只响应比电梯所在位置高的上楼请求信号,直到最后一个上楼请求执行完毕,再进入下降模式;同理,电梯处于下降状态时,只响应比电梯所在位置低的下楼请求信号,直到最后一个下楼请求执行完毕,再进入上升模式。

二.[可选器件]1.计算机组成/ISP实验箱一台(含电源)2.电源线一根FPGA/CPLD下载板一块(或多块,可选)(其中下载版选择以下型号Cyclone EP1C6Q240C8)3.并行口下载电缆一根4.电压表棒一付5.实验指导书一份6.配套集成电路芯片若干三.[设计框图]系统主要分为:主控制模块control,包含状态机,控制电梯的运行及状态转换;消抖模块unshake,消除开关电路的抖动现象,确保逻辑的正确性;显示模块display,内含译码功能,配合控制器显示电梯的工作状态。

模块框图见图1,总体框图详见图2。

eda课程设计电梯

eda课程设计电梯

eda课程设计电梯一、教学目标本课程的学习目标包括知识目标、技能目标和情感态度价值观目标。

知识目标要求学生掌握电梯的基本原理、结构和工作方式,了解电梯的安全使用和维护知识。

技能目标要求学生能够运用所学知识进行电梯的简单设计和分析,提高学生的工程实践能力。

情感态度价值观目标要求学生培养对电梯工程技术的兴趣和热情,增强对工程技术的敬畏之心。

通过对学生的特点和教学要求的分析,我们将课程目标分解为具体的学习成果。

首先,学生需要理解并能够描述电梯的基本原理和结构,包括电动机、控制系统、电梯门等关键部分的作用。

其次,学生需要掌握电梯的工作方式,能够分析电梯的运行过程和故障原因。

再次,学生需要了解电梯的安全使用和维护知识,能够进行简单的电梯故障排查和修复。

最后,学生需要通过实际操作和案例分析,提高自己的工程实践能力,培养对电梯工程技术的兴趣和热情。

二、教学内容根据课程目标,我们选择和了以下教学内容。

首先,介绍电梯的基本原理,包括电动机的工作原理、控制系统的功能等。

然后,讲解电梯的结构,包括轿厢、对重、导向系统、门系统等部分的作用和设计要求。

接着,讲解电梯的工作方式,包括电梯的启动、运行、停止过程以及故障原因分析。

此外,还讲解电梯的安全使用和维护知识,包括电梯的故障排查、修复方法等。

最后,通过实际操作和案例分析,让学生亲身参与电梯的设计和分析,提高学生的工程实践能力。

三、教学方法为了实现课程目标,我们选择了一系列合适的教学方法。

首先,采用讲授法,由教师讲解电梯的基本原理、结构和工五、教学评估为了全面反映学生的学习成果,我们设计了一系列评估方式。

首先,通过平时表现评估学生的课堂参与度和学习态度。

其次,通过作业评估学生的理解和应用能力,要求学生完成电梯设计、分析等实际任务。

最后,通过考试评估学生的综合运用能力和复习效果。

这些评估方式应客观、公正,能够全面反映学生的学习成果。

六、教学安排教学安排规定了教学进度、教学时间和教学地点等。

EDA技术 电梯

EDA技术 电梯

EDA技术与实践综合实验报告题目名称:电梯控制器的设计作者所在系部:电子工程系作者所在专业:电子工艺与管理作者所在班级:作者姓名:作者学号:22号指导教师姓名:完成时间:2012年6月北华航天工业学院电子工程系制综合实验任务书摘要随着社会的发展。

使用电梯越来越普遍,已从原来只在商业大厦、宾馆过渡到在办公室、居民楼等多种建筑中,并且对电梯功能的要求也不断提高,其相应控制方式也在不断发生变化。

电梯的微机化控制主要有:PLC控制、单板机控制、单片机控制、单微机控制、多微机控制和人工智能控制等。

随着EDA技术的高速发展,电子系统设计技术和工具发生了深刻的变化,大规模可编程逻辑器件FPGA的出现,给设计人员带来了诸多的方便。

VHDL语言是随着可编程逻辑器件( PLD)发展起来的一种硬件描述语言,主要用于描述数字系统的结构、行为、功能和接口,是电子设计自动化(EDA)的关键技术之一。

它采用一种自上而下的设计方法,即从系统总体要求出发进行设计。

本文介绍了以Altera公司可编程逻辑器件为控制核心,采用VHDL语言设计电梯控制器的方法,并进行了QuartusII 软件仿真。

这里使用Altera公司开发的DE2开发板作为目标器件。

采用VHDL语言设计一个四层楼的单个载客箱的电梯控制系统,此控制系统设计有一定的扩展性,而且可以作为更多层电梯控制器实现的基础。

关键词:EDA、VHDL、FPGA、状态机目录一.概述 (1)二.方案设计与论证 (1)1.设计说明 (1)2.设计思想 (1)三.单元模块设计介绍 (2)1.状态机 (2)2.分频器 (3)3.按键扫描模块 (3)4.显示模块 (3)四.程序设计(包括总体原理图或符号、程序、仿真结果和工作原理) (4)1.总体原理 (4)2.程序设计 (4)3.仿真结果 (15)4.工作原理 (17)五.器件编程和硬件调试过程 (17)六.心得体会 (18)参考文献 (18)一.概述本设计是运用状态机方法进行设计的,现的情况的四层楼的电梯。

课程设计EDA电梯控制器

课程设计EDA电梯控制器

目录概述 (1)一、设计任务与要求 (1)二、总体框图 (2)1.控制器的设计方案‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥•3 2.三层电梯控制器的设计思路‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥•43.三层电梯控制器的模块‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥•4三、选择器件 (4)四、功能模块 (4)1.主控制器模块‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥•5 2.楼层显示模块‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥11 3.状态显示模块‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥14五、总体设计 (15)1.顶层电路原理图‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥16 2.全局仿真结果‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥17 3.管脚分配图‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥18 4.硬件连接及验证情况‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥‥18六、硬件验证 (18)七、心得体会 (19)三层电梯控制概述电梯的使用越来越普遍,已从原来只在商业大厦、宾馆使用,过渡到在办公室、居民楼等场所使用,并且对电梯功能的要求也不断提高,相应地其控制方式也在不停地发生变化。

对于电梯的控制,传统的方法是使用继电器——接触器控制系统进行控制,随着技术的不断发展,微型计算机在电梯控制上的应用日益广泛,现在已进入全微机化控制的时代。

电梯的微机化控制主要有以下几种形式:①PLC控制;②单板机控制;③单片机控制;④单微机控制;⑤多微机控制;⑥人工智能控制。

随着EDA技术的快速发展,CPLD/FPGA已广泛应用于电子设计与控制的各个方面。

本设计就是使用CPLD/FPGA来实现对电梯的控制。

一、设计任务与要求1.每层电梯入口设有上下请求开关,电梯内设有乘客到达层次的停站请求开关。

2.设有电梯所处位置及电梯运行模式(上升或下降)指示装置。

3.电梯3秒升降一层楼的高度。

EDA课程设计

EDA课程设计

三层电梯PLC控制程序设计1.课程设计的目的EDA技术及应用是电类专业的主要技术基础课。

通过本课程的学习,能够使学生掌握近代EDA技术及应用的基础知识、程序分析与仿真的基本方法,具备进行试验的初步技能,并为后续课程的学习打下必要的基础。

现代电子设计技术的核心是EDA技术,基于EDA技术开发的实现三层电梯自动控制与目前主流的利用可编程逻辑控制器实现电梯控制紧密相连。

硬件描述语言是EDA 技术的重要组成部分,VHDL是作为电子设计主流硬件的描述语言。

实用VHDL语言进行程序的设计,在MAXPLUSI I软件上对程序进行编译、仿真,在MAXPLUSSII平台上开发具有控制灵活方便、抗干扰能力强、运行稳定、易学易懂的梯形图语言。

2.设计方案论证2.1 设计内容与思路三层电梯广泛应用于大型的货运之中,其使用具有便捷、货运周期短、效率高、成本低等经济价值。

在客运上,上层电梯虽然涉及楼层不高,应用范围不大,但就特殊而言,他可以为那些上下楼层不方便的人群提供方便,照顾了这些特殊群体,所以三层电梯的设计也具有一定的社会价值本控制设计拟实现一下功能:(1)指示电梯运行所在楼层;(2)指示电梯运行方向;(3)关门延时设计;(4)看门狗报警;(5)超载报警;(6)故障报警;2.2 三层电梯控制的源程序如下:library ieee;use ieee.std_logig_1164.all;use ieee.std_logic_unsigned.all;use iee.std_logic_arith.all;entity dianti isport(clk;in std_logic;full,deng,quick,clr;in std_logic;c_u1,c_u2;in std_logic;c_d2,c_d3;in std_logic;d1,d2,d3;in std_logic;g1,g2,g3;in std_logic;door: out std_logic_vector(1 down to 0);led:out std_logic_vector(6 down to 0);led_c_u:out std_logic_vector(2 down to 0);led_c_d:out std_logic_vector(2 down to 0);led_d:out std_logic_vector(2 down to 0);wahaha:out std_logic;ud,alarm:out std_logic;up,down:out std_logic);end dianti;architecture behave of dianti issignal d11,d22,d33:std_logic;signal c_u11,c_u22:std_logic;signal c_d11,c_d22:std_logic;signal q:integer range 0 to 1;signal q1:integer range 0 to 6;signal q2:integer range 0 to 9;signal dd,cc_u,cc_d,dd_cc;std_logic_vector(2 down to 0); signal opendoor:std_logic;signal updown:std_logic;signal en_up,en_dw:std_logic;begincom:process(clk)beginif clk‟event and clk=…1‟thenif clr=…1‟then q1<=0;q2<=0;wahaha<=…0‟;else if full=…1‟then alarm<=…1‟;q1<=0;if q1>=3 then door<=“10”;else door<=“00”end if;else if q=1 then q<=0;alarm<=…0‟;if q2=3 then wahaha<=…1‟;elseif open door=…1‟ then door<=…10‟;q1<=0;up<=…0‟;down<=…0‟;else if en_up=…1‟thenif de ng=1 then door<=“10”;q1<=0;q2<=q2+1;else if quick=…1‟then q1<=3;else if q1=6 then door<=“00”;updown<=…1‟;up<=…1‟;else ifq1>=3 then door<=“01”;q1<=q1+1;else q1<=q1+1;door<=“00”;end if;else if en_dw=…1‟thenif deng=…1‟ then door<=“10”; q1<=0;q2<=q2+1;else quick=…1‟ then q1<=3;else q1=6 then door<=“00”;updown<=…0‟;down<=…1‟;else q1>=3 then door<=“01”;q1<=q1+1;else q1<=q1+1 ;door<=“00”;end if;end if;if g1=…1‟then led<=“1001111”;if d11=…1‟or c_u11=…1‟then d11<=…0‟;c_u11<=…0‟;;opendoor<=…1‟;else if dd_cc>000001 then en_up<=1;opendoor<=1;else if dd_cc=000000 then opendoor<=0;end if;else if g2=1 then led<=0010010;if updown=1 thenif d22=1 or c_u22=1 then d22<=0;c_u22<=0;opendoor<=1;else if dd_cc>000011 then en_up<=1;opendoor<=0;else if dd_cc<000010 then en_dw<=1;opendoor<=0;end if;else d22=1 or c_d22=1 then d22<=0;c_d22<=0;opendoor<=1;else dd_cc<000010 then en_dw<=1;opendoor<=0;else dd_cc>000011 then en_up<=1;opendoor<=0;end ifelse if g3=1 then led<=0000110;if d33=1 or c_d33=1 then d33<=0;c_d33<=0;opendoor<=1;else if dd_cc<011 then en_dw<=1;opendoor=<0;end if;else en_up<=0;en_dw<=0;end if;end if;else q<=1;alarm<=0;if d1=1 thend11<=d1;else if d2=1 then d22<=d2;else ifd3=1 then d33<=d3;end if;if c_u1=1 then c_u11<=c_u1;else if c_u2=1 then c_u22<=c_u2;end if;if c_d2=1 then c_d22<=c_d2;else if c_d3=1 then c_d33<=c_d3;end if;dd<=d33&d22&d11;cc_u<=0&c_u22&c_u11;cc_d<=c_d33&c_d22&0;dd_cc<=dd or cc_u or cc_d;end if;ud<=updown;led_d<=dd;led_c_u<=cc_u;led_c_d<=cc_d;end if;end process;end behave;2.3 程序调制(1)建立好工作库路径,以便设计工程项目的存储,打开Maxplus软件,其初始界面如图1所示:图1 初始界面(2)在工具栏中选择“新建”按钮,在选择输入路径时,选择“Text Editor File”以进行文本输入,如图2所示:图2 文本输入(3)在文本输入界面内进行程序输入,如图3所示:图3 程序图(4)输入完毕时,需要对程序进行保存。

EDA课程设计 三层电梯控制程序设计_实训报告

EDA课程设计 三层电梯控制程序设计_实训报告

目录1.任务要求---------------------------------------------------------------------------2 2.程序分析---------------------------------------------------------------------------22.1电梯运行规则--------------------------------------------------------------------22.2程序设计说明--------------------------------------------------------------------5 3.程序调试--------------------------------------------------------------------------12 4.程序仿真-------------------------------------------------------------------------144.1波形输入建立------------------------------------------------------------------144.2电梯运行情况仿真--------------------------------------------------------------164.3电梯功能仿真-------------------------------------------------------------------195.实训感想---------------------------------------------------------------------------20 参考文献----------------------------------------------------------------------------201.任务要求在电子技术飞速发展的今天,现代电子产品几乎渗透到了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,加速了电子设计技术的普及进程及技术革新。

eda电梯课程设计

eda电梯课程设计

eda电梯课程设计一、教学目标本课程旨在让学生了解和掌握eda电梯的基本原理、设计和应用,培养学生对电梯工程的兴趣和热情。

1.掌握eda电梯的基本原理和结构。

2.了解电梯的设计和制造过程。

3.熟悉电梯的主要部件和功能。

4.能够分析电梯的工作过程和故障原因。

5.能够运用eda电梯的相关知识解决实际问题。

6.能够进行简单的电梯维修和保养。

情感态度价值观目标:1.培养学生对电梯工程的热情和兴趣。

2.培养学生对生命的尊重和安全的重视。

3.培养学生团队合作和解决问题的能力。

二、教学内容根据课程目标,本课程的教学内容主要包括以下几个部分:1.eda电梯的基本原理和结构:介绍eda电梯的工作原理、主要部件及其功能。

2.电梯的设计和制造:讲解电梯的设计流程、制造工艺以及相关技术要求。

3.电梯的主要部件和功能:详细介绍电梯的各个部件,如轿厢、对重、导轨、电动机等,并解释其作用。

三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法:1.讲授法:通过讲解eda电梯的基本原理、结构和设计方法,使学生掌握相关知识。

2.案例分析法:分析实际电梯故障案例,让学生学会运用所学知识解决实际问题。

3.实验法:学生进行电梯模型实验,让学生亲身体验电梯的工作过程,提高动手能力。

四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:选用权威、实用的电梯工程教材,为学生提供系统的学习材料。

2.参考书:提供相关领域的参考书籍,丰富学生的知识储备。

3.多媒体资料:制作精美的PPT、视频等多媒体资料,增强课堂教学的趣味性。

4.实验设备:准备电梯模型等实验设备,让学生亲自动手操作,提高实践能力。

五、教学评估为了全面、客观地评估学生的学习成果,本课程将采用以下评估方式:1.平时表现:通过观察学生在课堂上的参与程度、提问回答等情况,评估学生的学习态度和积极性。

2.作业:布置适量的作业,让学生巩固所学知识,通过批改作业了解学生的掌握情况。

EDA课程设计《电梯控制器》

EDA课程设计《电梯控制器》

目录前言 (1)1 绪论 (2)1.1 课程设计题目 (2)1.2 设计目的 (2)1.3 课程设计要求 (2)1.4 课程设计思想 (3)2 软件介绍 (4)3课程设计步骤 (6)3.1 状态机的基本原理 (6)3.2 电梯控制器的功能模块 (6)3.3 电梯控制器的流程图 (7)3.4 电梯控制器的VHDL描述模块流程 (8)3.5 实体设计 (8)3.6 结构体设计 (8)3.7 VHDL源代码语法的简单说明 (9)3.8 电梯输入输出端口图 (10)4 三层电梯控制器的调试及仿真 (11)4.1 程序的调试 (11)4.2 波形仿真 (11)5课程设计的意义 (15)5.1 设计背景 (15)5.2 课程设计的意义 (15)5.2.1 中国电梯的现状 (15)5.2.2 电梯的节能和环保 (16)5.2.3 电梯的智能化 (16)6 总结 (17)参考文献 (18)附录 (19)前言电梯作为垂直方向的交通工具,在高层建筑和公共场所已成为不可或缺的设备。

中国是全球最大的电梯市场,也具有最强的电梯生产能力,但由于缺乏自主知识产权和核心技术,自主品牌占市场的份额很少。

因此要加大对电梯技术的创新和发展,提升电梯的性能,就需要引进更好的技术,电梯控制器就是很好的装置,大力开发控制器是很必要的。

电梯控制器可以有很多实现方式,本设计用了EDA技术进行操作。

EDA 技术打破了软件和硬件间的壁垒,使计算机的软件技术与硬件实现、设计效率与产品性能合二为一,它代表了电子设计技术和应用技术的发展方向。

VHDL主要用于描述数字系统的接口,结构和功能,它的语法简单易懂,移植性好。

我设计的是一个3层电梯控制器。

分为主控制器和分控制器。

主控制器是电梯内部的控制器,每层电梯入口处有一个分控制器。

本设计采用VHDL,源程序Altera公司的Quartus II软件仿真。

运用有限状态机的设计方法,设计了两个进程相互配合,状态机进程作为主要进程,信号灯控制进程作为辅助进程。

基于eda技术的电梯控制系统设计

基于eda技术的电梯控制系统设计

本科生毕业论文(设计)基于EDA技术的电梯控制器设计院系:信息工程学院专业:电子信息工程目录中文摘要 (2)外文摘要 (3)引言 (4)1. 绪论 (5)1.1EDA技术 (5)1.1.1 EDA的介绍与发展 (5)1.1.2 EDA的设计流程及优点 (5)1.1.3 VHDL介绍 (5)1.2国内外研究现状及发展趋势 (6)1.2.1 电梯智能化及其实现 (6)1.2.2 接口层的实现 (7)2. 四层电梯控制器的系统设计 (8)2.1四层电梯控制器的功能及设计要求 (8)2.2四层电梯控制器的设计思路 (9)2.2.1 电梯控制器流程 (9)2.3电梯控制器的功能 (11)2.4电梯系统的设计 (12)3.四层电梯控制器的调试及仿真 (13)3.1MAX+PLUSⅡ的流程介绍 (13)3.2各模块的VHDL语言 (13)3.2.1 主控制器模块 (13)3.2.2 数据选择器模块设计 (15)3.2.3 译码器模块 (17)3.2.4 分频器模块 (18)4. 四层电梯控制器的波形仿真 (19)结束语 (23)参考文献 (24)致谢 (25)1基于EDA技术的电梯控制器设计*****指导老师:*****(*****)摘要:电梯作为现代化的产物,早在上个世纪就进入了我们的生活之中。

对于电梯的控制,传统的使用继电器-接触器系统进行控制已不能满足人们的要求。

随着EDA技术的发展FPGA已经广泛运用于电子设计控制的各个方面。

本设计是基于VHDL语言开发的四层电梯控制器。

以Max+PlusⅡ为开发环境。

其功能包括:显示电梯当前所在楼层、显示有请求发生的楼层、相应楼层请求、关门延时控制、电梯开关门显示。

关键字:电梯控制器;EDA;VHDL状态机2The Elevator Controller Based on VHDL*****Director:*****(Information Engineering College, *****)Abstract:The lift, as the modernized result, is entered our life in last century. For the elevator control,the traditional approach is to use relay-contactor control system to control. With the development of EDA technology, FPGA has been widely use in all aspects of electronic design control. The graduation project is best on the VHDL language development of four elevator control. To Max+PlusⅡdevelopment. Its features include: show floor where the lift current, show that the request happenedfloors, floor to respond to the request, closing delay setting, elevate door open display.Key Words:Elevator controller;EDA;VHDL condition machine3引言在现代化城市的高速发展中,一幢幢高楼拔地而起。

eda电梯控制课程设计

eda电梯控制课程设计

eda电梯控制课程设计一、课程目标知识目标:1. 学生能理解EDA电梯控制的基本原理,掌握电梯控制系统的组成及功能。

2. 学生能掌握电梯控制程序的设计方法,了解电梯运行过程中各环节的逻辑关系。

3. 学生了解电梯行业的发展现状和未来趋势,认识电梯在现代建筑中的重要性。

技能目标:1. 学生能运用所学知识,设计简单的电梯控制程序,实现电梯的基本功能。

2. 学生能通过小组合作,完成电梯控制系统的仿真测试,提高实际操作能力。

3. 学生能运用EDA工具进行电梯控制电路的绘制,提高电路设计能力。

情感态度价值观目标:1. 学生培养对电梯控制技术的兴趣,激发学习热情,提高自主学习能力。

2. 学生通过课程学习,认识到科技对社会生活的重要性,增强社会责任感和使命感。

3. 学生在小组合作中,培养团队协作精神,提高沟通与交流能力。

课程性质:本课程为电子设计自动化(EDA)领域的一门实践性课程,旨在帮助学生掌握电梯控制技术,提高实际操作能力。

学生特点:本年级学生具备一定的电子技术基础,对新技术有较高的兴趣,喜欢动手实践。

教学要求:结合学生特点,注重理论与实践相结合,强调动手实践和创新能力培养,提高学生的综合素养。

通过课程目标分解,使学生在知识、技能和情感态度价值观方面取得具体的学习成果,为后续教学设计和评估提供依据。

二、教学内容1. 电梯控制原理及系统组成- 理解电梯的基本工作原理- 掌握电梯控制系统的结构及功能- 分析电梯控制系统的主要部件及其作用2. 电梯控制程序设计- 学习电梯控制程序的基本逻辑- 掌握电梯运行过程中各环节的程序设计方法- 应用EDA工具进行程序编写和调试3. 电梯控制电路设计- 学习电梯控制电路的基本元件及其连接方式- 掌握电梯控制电路的绘制方法- 完成电梯控制电路的仿真测试4. 电梯控制系统实践- 小组合作,设计并实现一个简易电梯控制系统- 分析实际电梯控制系统案例,进行故障排查与优化- 了解电梯行业的发展趋势及新技术应用教学大纲安排:第一周:电梯控制原理及系统组成第二周:电梯控制程序设计第三周:电梯控制电路设计第四周:电梯控制系统实践教材章节关联:第一章:电梯概述第二章:电梯控制系统第三章:电梯控制程序设计第四章:电梯控制电路设计第五章:电梯控制系统实践教学内容根据课程目标制定,注重科学性和系统性,结合教材章节,合理安排教学进度,确保学生能够循序渐进地掌握电梯控制相关知识。

EDA课程设计电梯控制器

EDA课程设计电梯控制器

初始化:设置电梯初始状态,如楼层、方向等 输入处理:接收用户输入,如楼层、方向等 逻辑判断:根据用户输入和电梯当前状态,判断是否需要改变方向、楼层等 输出处理:根据逻辑判断结果,输出电梯运行状态,如楼层、方向等 结束:电梯到达指定楼层,停止运行,等待下一次输入
编写代码:根据设计要求编写C语 言代码
交流方式:小组讨论、课堂 展示、报告撰写
课程设计成果:电梯控制器 的设计与实现
成果展示:电梯控制器的功 能演示、性能测试
展望未来:电梯控制器的改 进方向、应用前景
智能化:实现电梯的自动化控制,提高运行效率和安全性
节能环保:采用节能技术,降低能耗,减少对环境的影响
物联网技术:实现电梯与物联网的连接,提高管理效率和服务 质量
电缆:选择耐高温、耐腐蚀、抗干扰的 电缆
开关:选择安全、耐用、易操作的开关
电机:选择高效、节能、低噪音的电机
电源:选择稳定、高效、低噪音的电源
设计原则:遵循电气性能、机械性能、热性能等要求 设计工具:使用Altium Designer、Protel等专业软件 设计步骤:绘制原理图、生成PCB文件、布局布线、生成生产文件 制作工艺:采用SMT贴片、回流焊等工艺进行生产
调试代码:使用Keil uVision5进行 调试,解决编译错误
添加标题
添加标题
添加标题
添加标题
编译代码:使用Keil uVision5进行 编译
测试代码:使用Keil uVision5进行 测试,验证功能是否正确
测试方法:单元测试、集成测试、 系统测试
优化目标:提高软件性能、稳定性、 安全性
添加标题
● 功能: a. 运行控制:控制电梯的启动、停止、加速、减速、制动等动作。 b. 安全保护:检测电梯的 运行状态,如超速、过载、门未关等,并采取相应的安全措施。 c. 故障处理:检测电梯的故障,如过 热、短路、断路等,并采取相应的故障处理措施。 d. 信息显示:显示电梯的运行状态、楼层、方向等 信息。 e. 通信接口:与电梯的其他部件进行通信,如电梯门、楼层显示板等。

EDA课设四层电梯控制器

EDA课设四层电梯控制器

1、引言1.1 EDA技术的概念随着EDA技术发展和应用领域的扩大与深入,EDA技术在电子信息、通讯、自动控制及计算机应用等领域的重要性突出,随着技术市场与人才市场对EDA的需求不断提高,产品的市场需求和市场的要求也必然会反映到教学领域和科研领域中来,因此学好EDA技术对我们有很大的一处,EDA是指以计算机为工具,在EDA软件平台上,根据设计描述的源文件,自动完成系统的设计,包括编译、仿真、优化、综合、适配以及下载。

EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。

1.2 EDA技术的特点利用EDA技术进行电子系统的设计,具有以下几个特点:①用软件的方式设计硬件;②用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;③设计过程中可用有关软件进行各种仿真;④系统可现场编程,在线升级;⑤整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。

因此,EDA技术是现代电子设计的发展趋势。

1.3 EDA设计流程典型的EDA设计流程如下:(1)、文本/原理图编辑与修改。

首先利用EDA工具的文本或图形编辑器将设计者的设计意图用文本或图形方式表达出来。

(2)、编译。

完成设计描述后即可通过编译器进行排错编译,变成特定的文本格式,为下一步的综合做准备。

(3)、综合。

将软件设计与硬件的可实现性挂钩,是将软件转化为硬件电路的关键步骤。

(4)、行为仿真和功能仿真。

利用产生的网表文件进行功能仿真,以便了解设计描述与设计意图的一致性。

(5)、适配。

利用FPGA/CPLD布局布线适配器将综合后的网表文件针对某一具体的目标器件进行逻辑映射操作,其中包括底层器件配置、逻辑分割、逻辑优化、布局布线。

适配报告指明了芯片内资源的分配与利用、引脚锁定、设计的布尔方程描述情况。

EDA电梯实验报告

EDA电梯实验报告

数字电路与逻辑设计实验报告电梯控制电路设计学院:电子工程学院班级:020951班姓名:杨凯学号:02095006日期:2011.12.30指导教师:李甫一、实验名称我选的实验题目是“电梯电路控制设计”。

二、实验要求设计一个4层楼房全自动电梯控制电路,其功能如下:1、每层楼梯入口处设有上,下请求开关个1,电梯内设有乘客到达层次的停站要求开关。

2、有电梯所处位置指示装置和电梯上行,下行状态批示装置。

3、地体每秒升(降)一层楼。

到达某一层楼时,致使该层的灯光发亮,并一直保持到电梯到达新一层为止。

4、电梯到达有停站请求的楼层后,该层次的指示灯亮,经过0.5S,电梯门自动打开,开门指示灯亮,开门5S后,电梯门自动关闭(开门指示灯灭),电梯继续运行。

5、能记忆电梯内外的所有请求信号,并案中案电梯运行规则此地响应,每个请求信号保留至执行后撤销6、电梯运行规则,电梯处于上升模式时,至响应比电梯所在位置高的层次的上楼请求信号,由下而上逐个执行完毕。

如更高层次有下楼请求,则直接升到又下楼请求的楼层接客,然后便进入下降模式。

电梯处于下降模式是与之相反,进响应比电梯所在位置低的楼层的下楼请求。

电梯执行完所有的请求后,应停在最后所在位置不变,等待新的请求。

7、开机(接通电源)时,电梯应停留在一楼,而各种上,下请求皆被消除。

三、实验目的1、用实验板上提供的按键开关为上楼(3个)下楼(3个)请求,立即乘客进行电梯后,要求停靠楼层的开关。

按键状态用发光二极管显示。

2、电梯所在楼层位置用数码管显示,领用而至发光二极管显示上行状态和下行状态。

3、利用发光二极管(6只)作为开门提示,其时序下图所示。

4、电梯开门时间可以要求延长,没按一次延长键,自按键时开始延长5S,可以连续使用。

也可提前关门(按动关门键)。

5、电梯与行过程中,不断判断前进方向是否存在上楼请求或下楼请求信号,如到达某层后,上,下方均无请求,则电梯厅在该层,终止运行。

四、实验原理电梯要正常上升、下降并比较实时地响应用户的请求,这需要一个核心模块对其进行管理,我们称这个核心模块为主控制模块。

EDA-电梯控制器课程设计

EDA-电梯控制器课程设计

EDA-电梯控制器课程设计目录1 绪论 (1)1.1 电梯控制系统的发展史 (1)1.2 电梯的发展方向 (2)2 基于EDA技术的四层电梯控制器设计 (2)2.1 系统控制要求 (2)2.1.1 四层电梯控制器的功能 (2)2.1.2 控制方案的制定 (3)3 系统仿真 (6)4 结束语 (6)参考文献 (7)附录: (9)摘要:电梯是机械电器紧密结合的大型机电产品.主要由机房、井道、轿厢、门系统和电气控制系统组成。

伴随建筑业的发展,为建筑内提供上下交通运输的电梯工业也在日新月异地发展着。

电梯已不仅是一种生产环节中的重要设备,更是一种工作和生活中的必需设备,完全可以预想到,随着社会的发展,电梯产品在人们物质文化生活中的地位将和汽车一样,成为重要的运输设备之一。

关键字:电梯控制器,CPLD,VHDL状态机,EDA。

1 绪论1.1 电梯控制系统的发展史从1889年出现第一台名副其实的电梯后,电梯控制技术经历了四次大的发展。

1)继电器控制阶段。

在计算机技术还没有广泛应用于工业控制领域时,继电器一直充当着工业控制中的核心部件,电梯控制系统领域也不例外。

上世纪八十年代以前,继电器控制一直是我国电梯控制系统的全部。

到了八十年代,继电器控制仍然是电梯控制系统中的主导技术。

(2)PLC控制阶段。

PLC实际上是一种通用的工业控制技术,在进入电梯控制系统以前,已被广泛应用于其他各种工业控制领域。

在我国,从上世纪八十年代末开始,PLC逐渐被各电梯厂家成功应用到电梯控制系统中。

九十年代,国内自己开发、设计的电梯控制系统中,PLC系统占绝对主导地位。

(3)微机控制系统。

实际上,在发达国家的著名电梯生产厂家中,如奥的斯、三菱等,它们根本就没有用过PLC作为电梯控制系统。

早在上世纪七十年代末期或八十年代初,专用的微机电梯控制系统已经投入市场。

早期中国国内生产的专用微机电梯控制系统,基本上都是从国外引进技术的产品。

直到上世纪九十年代中期起,才逐渐有国内自行开发设计的比较成功的专用微机电梯控制系统产品投入市场。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

成绩评定表课程设计任务书摘要随着EDA技术发展和应用领域的扩大与深入,EDA技术在电子信息、通讯、自动控制及计算机应用等领域的重要性突出。

随着技术市场与人才市场对EDA 的需求不断提高,产品的市场需求和技术市场的要求也必然会反映到教学领域和科研领域中来。

因此学好EDA技术对我们有很大的益处。

电梯行业也随着科技的发展,不断地出现在人们生活的各个场所,因此,对电梯控制器的设计是一个很实用的例子,对我们掌握EDA技术的应用也有很大的帮助。

关键词:EDA技术电子信息通信自动控制目录1、设计要求概述 (1)1.1 设计要求 (1)1.2 总体设计思路 (1)1.3 具体设计思路 (2)2、功能模块整体结构设计 (2)2.1 电梯控制器功能 (2)2.2 电梯控制器设计 (3)3、各模块详细设计 (3)3.1底层模块设计 (3)3.2 顶层模块设计 (6)4、逻辑仿真与时序仿真的实现 (12)4.1 底层设计模块的方针及参数设置 (12)4.2 电梯分层控制模块的仿真及参数设置 (13)4.3电梯主控制器仿真波形 (15)5、设计结论 (15)5.1 设计功能实现情况 (15)5.2 设计心得 (16)6、参考文献 (17)1 电梯控制器的设计要求与设计思路1.1 设计要求十层电梯控制器的功能电梯控制器是控制电梯按顾客要求自动上下的装置。

设计要求如下:(1)每层电梯入口处设有上下请求开关,电梯内设有顾客到达层次的停站请求开关。

(2)设有电梯入口处位置指示装置及电梯运行模式(上升或下降)指示装置。

(3)电梯每秒升(降)一层楼(4)电梯到达有停站请求的楼层,经过1秒电梯门打开,开门指示灯亮,开门4秒后,电梯门关闭(开门指示灯灭),电梯继续进行,直至执行完最后一个请求信号后停留在当前层。

(5)能记忆电梯内外所有请求,并按照电梯运行规则按顺序响应,每个请求信号保留至执行后消除。

(6)电梯运行规则——当电梯处于上升模式时,只响应比电梯所在位置高的上楼请求信号,由下而上逐个执行,直到最后一个上楼请求执行完毕;如果高层有下楼请求,则直接升到有下楼请求的最高楼层,然后进入下降模式。

当电梯处于下降模式时则与上升模式相反,只响应比电梯所在位置低的下楼请求信号,由下而下逐个执行,直到最后一个下楼请求执行完毕;如果低层有上楼请求,则直接降到有上楼请求的最低楼层,然后进入上升模式。

(7)电梯初始状态为一层开门状态1.2 总体设计思路实验模拟生活中电梯运动控制,电梯总共十层,最简单的控制思想如下: (1)采集用户呼叫楼层,并放入相应的记忆单元中。

(2)不考虑电梯轿厢所在楼层。

若有用户呼叫,电梯上行直到达到用户呼叫最大层,再下行直到到达最低层,由此构成一次行程。

(3)每完成一次行程,检测是否所用用户呼叫均已响应完毕。

如果没有,电梯继续运行,直到响应完所有用户呼叫。

否则,电梯停止运行。

其中用户请求包括外部请求和内部请求。

有外部升降请求信号需点亮相应的外部请求指示灯,内部升降请求信号同外呼。

(4)根据电梯所在楼层,七段数码管显示楼层数。

(5)根据用户运行方向,点亮相应升降指示灯。

(6)当电梯运行到有相应外部呼叫或内部呼叫楼层时,电梯停止运行,灭掉相应的呼叫显示灯,电梯开关门后,继续运行。

1.3 具体设计思路电梯控制可以通过多种方法进行设计,其中采用状态机来实现,思路比较清晰。

可以将电梯等待的每秒钟以及开门,关门都看成一个独立的状态。

由于电梯又是每秒上升或下降一层,所以就可以通过一个统一的一秒为周期的时钟来触发状态机。

根据电梯的实际工作情况,可以把状态机设置10个状态,分别是“电梯停留在1层”,“开门”,“关门”,“开门等待第一秒”,“开门等待第二秒”,“开门等待第三秒”,“开门等待第四秒”,“上升”,“下降”和“停止”状态。

各个状态之间的转换条件可以由上面的设计要求所决定。

2.功能模块整体结构设计2.1 电梯控制器功能本电梯控制器分为主控制器和分控制器。

主控制器是电梯内部的控制器,每个楼层有一个分控制器。

主控制器的功能:(1)完成10个楼层多用户的载客服务控制。

(2)电梯运行时显示电梯的运行方向和所在的楼层。

(3)当电梯到达选择的楼层时,电梯自动开门。

(4)具有提前关电梯门和延时关电梯门的功能。

(5)响应分控制器的有效请求,如果到达有请求的楼层,电梯自动开门。

分控制器的功能:(1)显示电梯的运行状态和所在的楼层。

(2)显示乘客的上升和下降请求。

分控制器的有效请求原则:(1)电梯处于等待状态时,上升和下降请求都响应。

(2)电梯处于上升状态时,有上升请求的分控制器所在楼层数大于电梯所在的楼层数。

(3)电梯处于下降状态时,有下降请求的分控制器所在楼层数小于电梯所在的楼层数。

2.2 电梯控制器设计控制器的功能模块如图2.1所示,包括主控制器、分控制器、楼层选择器、状态显示器、译码器和楼层显示器。

乘客在电梯中选择所要到达的楼层,通过主控制器的处理,电梯开始运行,状态显示器显示电梯的运行状态,电梯所在的楼层数通过译码器译码从而在楼层显示器中显示。

分控制器把有效的请求传给主控的楼层数。

由于分控制器相对简单很多,所以主控制器是核心部分。

图2.1 控制器的功能模块图3.各模块详细设计3.1底层模块设计及参数设置①电梯控制计时模块的源程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity counter isport(clk,reset,clr,en:in std_logic;q:out integer range 0 to 8);end;architecture art of counter issignal temp:integer range 0 to 8;beginprocess(clk,reset,clr,en)beginif(clr='1')thentemp<=0;elsif(rising_edge(clk))thenif(reset='1')thentemp<=5;elsif(en='1')thenif temp=5 thentemp<=temp;elsetemp<=temp+1;end if;end if;end if;end process;q<=temp;end art;②电梯每层的分控制器源程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity layercontrol isport(clk,switch,upkey,downkey,opendoor:in std_logic;qin: in std_logic_vector(10 downto 1);ur,dr:out std_logic;disp1:out std_logic_vector(3 downto 0));end;architecture art of layercontrol isconstant id:std_logic_vector(10 downto 1):="0000001000";signal upkey_data:std_logic;signal downkey_data:std_logic;signal opendoor1:std_logic;signal opendoor2:std_logic;signal req_opendoor:std_logic;signal req_upr:std_logic;signal req_downr:std_logic;signal disp:std_logic_vector(3 downto 0);beginprocess(clk)beginif rising_edge(clk)thenupkey_data<=upkey;downkey_data<=downkey;opendoor2<=opendoor1;opendoor1<=opendoor;end if;end process;req_opendoor<=(opendoor1 and not(opendoor2));process(switch,clk)beginif(switch='0')thenreq_upr<='0';req_downr<='0';elsif(rising_edge(clk))thenif(req_opendoor='1' and qin=id)thenreq_upr<='0';req_downr<='0';elsif(upkey='1' and upkey_data='0')thenreq_upr<='1';elsif(downkey='1' and downkey_data='0')then req_downr<='1';end if;end if;end process;ur<=req_upr;dr<=req_downr;with qin selectdisp<="0001" when "0000000001","0010" when "0000000010","0011" when "0000000100","0100" when "0000001000","0101" when "0000010000","0110" when "0000100000","0111" when "0001000000","1000" when "0010000000","1001" when "010*******","1010" when "1000000000","0000" when others;disp1<=disp;end art;3.2顶层模块设计10层全自动电梯控制器顶层模块源程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity elevator10 isport(clk:in std_logic; --时钟信号switch:in std_logic; --电梯电源开关,高电平时电梯正常工作close:in std_logic; --强制关门信号,高电平时电梯门立即关闭delay:in std_logic; --延时信号sel:in std_logic_vector(10 downto 1); --楼层选择信号uplift:in std_logic_vector(10 downto 1); --电梯上升请求输入信号downlift:in std_logic_vector(10 downto 1); --电梯下降请求输入信号qout:out std_logic_vector(10 downto 1); --电梯状态显示输出信号opendoor:out std_logic); --强制开门信号end;architecture art of elevator10 iscomponent counterport(clk,reset,clr,en:in std_logic;q:out integer range 0 to 8);end component;type state_type is(up,m_up,down,m_down,stop,pause);signal state:state_type; --电梯的各种状态signal clk1:std_logic; --1Hz时钟信号signal clk4:std_logic; --4Hz时钟信号signal req_up:std_logic; --上升请求信号signal req_down:std_logic; --下降请求信号signal runen:std_logic; --电梯运行使能signal runclr:std_logic; --电梯运行复位signal stopen0:std_logic; --电梯停止使能signal stopen1:std_logic;signal stopclr:std_logic; --电梯停止复位signal req_upr:std_logic_vector(10 downto 1); ---上升请求寄存器信号signal req_downr:std_logic_vector(10 downto 1); --下降请求寄存器信号signal position:std_logic_vector(10 downto 1); --电梯当前位置信号signal uplift_data:std_logic_vector(10 downto 1); --上升楼层数据显示信号signal downlift_data:std_logic_vector(10 downto 1); --下降楼层数据显示信号signal sel_data:std_logic_vector(10 downto 1); --选择楼层数据显示信号signal runtime: integer range 0 to 8; --电梯运行时间signal opentime:integer range 0 to 8; --电梯开门时间signal openagain:std_logic; --电梯再次开门信号signal voidreset:std_logic; --电梯超载复位信号beginqout<=position;p0:process(clk)variable cnt0:integer range 0 to 4;beginif rising_edge(clk)thenif cnt0=4 thenclk4<='1';cnt0:=0;elseclk4<='0';cnt0:=cnt0+1;end if;end if;end process;p1:process(clk4)variable cnt1:integer range 0 to 3;beginif rising_edge(clk4)thenif cnt1=3 thenclk1<='1';cnt1:=0;elseclk1<='0';cnt1:=cnt1+1;end if;end if;end process;p2:process(switch,clk,uplift,downlift)beginif rising_edge(clk)thenuplift_data<=uplift;downlift_data<=downlift;sel_data<=sel;if state=pause thenreq_upr<=req_upr and not(position);req_downr<=req_downr and not(position);if(uplift/=uplift_data and req_up/='1' and position>uplift)then req_downr<=(req_downr or uplift);elsif(downlift/=downlift_data and req_up/='1' and position>downlift)then req_downr<=(req_downr or downlift);elsif(uplift/=uplift_data and req_down/='1' and position<uplift)thenreq_upr<=(req_upr or uplift);elsif(downlift/=downlift_data and req_down/='1' and position<downlift)then req_upr<=(req_upr or downlift);elsif(sel/=sel_data)thenif(sel<position and req_up/='1')thenreq_downr<=(req_downr or sel);elsif(sel>position and req_down/='1')thenreq_upr<=(req_upr or sel);end if;end if;elsif(state=up or state=m_up)thenif(uplift/=uplift_data and req_down/='1' and position<uplift)thenreq_upr<=(req_upr or uplift);end if;elsif(state=down or state=m_down)thenif(downlift/=downlift_data and req_up/='1' and position>downlift)thenreq_downr<=(req_downr or downlift);end if;end if;end if;end process;req_up<='1' when req_upr/="0000000000" else '0';req_down<='1' when req_downr/="0000000000"else '0';p3:process(switch,clk)beginif(switch='0')thenstate<=stop;opendoor<='0';openagain<='1';elsif rising_edge(clk) thencase state iswhen stop=>state<=pause;when pause=>if((opentime=0 and openagain='0' and (req_up='1'or req_down='1'))or(uplift/=uplift_data and position=uplift)or(downlift/=downlift_data and position=downlift))thenopendoor<='1';stopclr<='0';stopen1<='1';end if;if(opentime=3 or (openagain='1' and (req_up='1' or req_down='1')))then if(req_up='1')thenstate<=up;opendoor<='0';stopen1<='0';stopclr<='1';openagain<='0';elsif(req_down='1')thenstate<=down;opendoor<='0';stopen1<='0';stopclr<='1';openagain<='0';elsestate<=pause;opendoor<='0';stopen1<='0';stopclr<='1';openagain<='1';end if;end if;when up=>if(runtime=4)thenrunen<='0';runclr<='1';if(position=(req_upr and position))thenstate<=pause;elsestate<=m_up;end if;elserunclr<='0';runen<='1';end if;when m_up=> state<=up;when down=>if(runtime=4)thenrunen<='0';runclr<='1';if(position=(req_downr and position))thenstate<=pause;elsestate<=m_down;end if;elserunclr<='0';runen<='1';end if;when m_down=>state<=down;end case;end if;end process;p4:process(switch,clk4,delay)beginif(switch='0')thenposition<="0000000001"; --电梯电源低电平时,电梯停在第一层elsif(rising_edge(clk4))thenstopen0<=(not(delay)and stopen1);if(runtime=3) thenif(state=up)thenposition<=(position(9 downto 1)&'0');elsif(state=down)thenposition<=('0'&position(10 downto 2));end if;end if;end if;end process;voidreset<='0';run_time:counterport map(clk=>clk4,reset=>voidreset,clr=>runclr,en=>runen,q=>runtime);door_time:counterport map(clk=>clk1,reset=>close,clr=>stopclr,en=>stopen0,q=>opentime);end art;4.逻辑仿真与时序仿真的实现4.1 底层设计模块的方针及参数设置图4-1 电梯控制计时模块仿真波图Q为输出结果,其他参量是输入结果,其参数设置如下:图4-2 clk和en对应的参数图4-3 en对应的参数4.2 电梯分层控制模块的仿真及参数设置图4-4 电梯分控制器仿真图在分层控制模块中,clk,switch,upkey,downkey,opendoor是输入信号,通过人工输入,其参数设置如下:图4-5 clk和switch对应的参数图4-6 upkey和downkey的对应参数图4-7 opendoor的参数4.3电梯主控制器仿真波形图4-3 电梯主控制器仿真波图5 结论5.1 设计功能实现情况对程序进行调试,经计算机仿真分析,结果表明本电梯控制程序实现了以下功能:(1)电梯到达楼层时,能发出指示信号;(2)能指示电梯的运行状态;(3)电梯的门操作具有关门延时功能和立即关门功能;(4)基本能正确响应各楼层的上行和下行请求(各楼层设置上行和下行选择按钮)。

相关文档
最新文档