VHDL电梯控制器程序设计与仿真

合集下载

vhdl三层电梯设计及QuartusII仿真实验.doc

vhdl三层电梯设计及QuartusII仿真实验.doc

基于VHDL的三层电梯控制器的设计姓名:班级:学号:指导老师:一、研究目的及意义第一节中国电梯的现状及发展趋势一、中国电梯市场的现状近年来,随着中国房地产业的快速发展,与之配套的电梯生产制造业也经历了迅猛发展的阶段,电梯产量保持了每年20%以上的增长速度。

我国电梯的出口年均增长率将保持在35%以上,电梯行业逐步成为国内比较重要的行业。

随着我国经济持续增长、城镇化建设的加速和房地产行业的进一步发展,对电梯的需求越来越大。

估计未来50年中国新增住房面积将达到200亿平方米。

国家规定20米以上高楼就应安装电梯,因此未来电梯最大的市场就是住宅市场。

此外,机场、商场、地铁等大型公共设施建设对自动扶梯、观光电梯等电梯的需求量也十分可观。

目前,中国不但是全球最大的电梯市场,而且形成了全球最强的电梯生产能力,但由于缺乏自主的知识产权和核心技术,产品的附加价值不高,利润非常低。

目前,全国注册电梯企业约400家,但美国奥的斯、瑞士迅达、芬兰通力、德国蒂森、日本三菱、日立、富士达、东芝等13家大型外企占据中国电梯市场75%左右的份额,而自主品牌只占25%左右的市场份额。

电梯作为终端消费品,品牌在市场竞争中的作用非常明显。

品牌往往成为人们在选择电梯产品时的重要考虑因素,电梯生产要想建立良好的品牌并获得市场的认可,也必须经过市场一定时间的不断考验。

面对外资巨头的贴身进逼,我国电梯品牌在服务和营销上难以匹敌,其生存状况不容乐观。

二、电梯的发展方向电梯作为垂直方向的交通工具,在高层建筑和公共场所已经成为重要的建筑设备而不可或缺。

电梯产业的前景和走势随着社会的需求而悄然发生着改变,除了考虑安全、舒适、豪华装修等要求外,市场对新一代的绿色电梯、节能电梯和智能电梯的需求越来越旺盛。

国内外电梯企业顺应市场需要,加大研发投入,都准备在未来新概念电梯产业发展中占得先机。

1、电梯的节能和环保“绿色”已成为21世纪的主流色调,一个全球性的绿色市场为企业的发展提供了广阔的空间,当今社会谁先推出绿色产品,抢占绿色营销市场,谁就能掌握竞争的主动权。

基于VHDL的电梯控制系统设计

基于VHDL的电梯控制系统设计

VHDL数字系统设计与测试实验报告基于VHDL的电梯控制系统设计一、设计背景及说明随着高层建筑的不断涌现,对电梯的需求也与日俱增,电梯已经成为我们日常生活中不可缺少的部分,稳定可靠性高的电梯系统成为了电梯领域的新需求。

现在基于VHDL硬件描述语言,用FPGA为控制芯片控制完成一个简单的6层楼的电梯控制系统设计。

我们常见的电梯控制系统功能都包括:上升请求、下降请求、电梯门控、楼层显示灯、电梯运动方向显示、超载、报警、电梯内请求信号等。

根据这些常用的信号设计一个电梯系统,实现所要求的功能。

控制方式的选择:1)内部请求优先控制方式内部请求控制方式类似于出租车的工作方式,先将车上的人送至目地,再去载客。

作为通用型电梯应该服务于大多数人,必须考虑电梯对内外请求的响应。

在内部请求优先控制方式中,当电梯外部人的请求和电梯内部人的请求冲突时,外部人的请求信号可能被长时间忽略,因为它不能作为通用型电梯的设计方案。

2)单层层停控制方案单层层停控制方式等同于火车运行方式,遇到站即停止、开门。

这种方案保证所有的人的请求都能得到响应。

然而这样对电梯的效率产生了消极的影响:不必要的等待消耗了大量时间,而且电梯的运作与用户的请求无关,当无请求时电梯也照常跑空车,浪费了大量的电能。

对于用户而言这种控制方式的请求响应时间也不是很快,因而也不是理想的电梯控制设计方案。

3)方向优先控制式方式方案方向优先控制是指电梯运行到某一层楼时,先考虑这一层楼是否有请求:有则停止;无则继续上升或者下降。

停止后再启动时,考虑上方或者下方是否有请求,有则继续前进,无则停止。

检测后方是否有请求,有请求则转向运行,无请求则维持停止状态。

这种运作方式下,电梯对用户的请求相应率为100%,而且响应的时间较短。

方向优先控制方式的效率远远大于单向层层停等控制方式的效率。

而且,方向控制方式下,电梯在维持停止状态的时候可以进入省电模式,又能节省大量的电能。

在本设计中采用方向优先控制方式。

电梯控制系统VHDL课程设计

电梯控制系统VHDL课程设计

电梯控制系统VHDL课程设计一、课程目标知识目标:1. 学生能理解电梯控制系统的基本原理,掌握VHDL语言在电梯控制系统中的应用;2. 学生能运用VHDL语言编写简单的电梯控制程序,实现电梯的基本功能,如楼层召唤、楼层到达等;3. 学生了解电梯控制系统的模块化设计,掌握模块之间的通信与协同工作原理。

技能目标:1. 学生能够运用所学知识,设计并实现一个简单的电梯控制系统;2. 学生通过课程学习,培养解决实际问题的能力,提高逻辑思维和编程技能;3. 学生能够利用仿真工具对电梯控制系统进行测试与优化。

情感态度价值观目标:1. 学生培养对电子工程领域的兴趣,激发创新精神,提高自主学习能力;2. 学生通过课程学习,认识到团队合作的重要性,培养团队协作精神;3. 学生能够关注电梯控制系统在现实生活中的应用,理解技术发展对社会进步的推动作用。

课程性质:本课程为电子工程专业高年级的实践课程,旨在通过电梯控制系统的设计,帮助学生巩固VHDL语言知识,提高实际工程应用能力。

学生特点:学生具备一定的电子工程基础和VHDL编程经验,具有较强的学习能力和动手能力。

教学要求:教师需引导学生将理论知识与实际应用相结合,注重培养学生的实践能力和团队合作精神,提高学生的综合素质。

通过课程目标的分解与实现,使学生在实践中掌握电梯控制系统的设计方法。

二、教学内容1. 电梯控制系统原理回顾:讲解电梯控制系统的基本组成、工作原理及功能模块划分,对应教材第3章;2. VHDL语言基础:复习VHDL的基本语法、数据类型、信号与变量等概念,对应教材第2章;3. 电梯控制系统模块设计:分析电梯控制系统的各个功能模块,如楼层召唤、楼层显示、电梯运行控制等,对应教材第4章;- 楼层召唤模块:设计并实现楼层召唤信号的检测与处理;- 楼层显示模块:设计并实现楼层显示功能;- 电梯运行控制模块:设计并实现电梯运行方向与速度的控制;4. VHDL代码编写与仿真:根据设计要求,运用VHDL语言编写各模块程序,利用仿真工具进行测试与验证,对应教材第5章;5. 电梯控制系统整体设计与实现:将各个模块整合,完成电梯控制系统的整体设计,进行系统级仿真与优化,对应教材第6章;6. 课程项目实践:学生分组进行电梯控制系统的设计、编程、仿真及测试,培养团队协作能力和实际工程应用能力。

基于vhdl六层电梯控制系统-设计

基于vhdl六层电梯控制系统-设计

摘要电梯作为垂直方向的交通工具,在高层建筑和公共场所已成为不可或缺的设备。

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

随着社会需求的变化,电梯朝着节能、环保及智能化方向发展。

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

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

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

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

在主进程中定义了7个状态,分别是“stopon1”“dooropen”“doorclose”“doorwait4”“up”“down”和“stop”,在电梯时钟的触发下,通过当前状态和信号灯信号判定下一状态。

信号灯控制进程中,信号灯存储按键请求情况,它的熄灭是由状态机进程中传出的信号来控制。

关键字:电梯控制器;VHDL;状态机;CPLDABSTRACTElevator has become an indispensable device as a vertical transport in high-rise buildings and public places. China is the world’s largest elevator market ,and also has the highest lift capacity. But the lack of independent intellectual property rights and core technologies, the market share of own brands account for very little. With the changing of the community’s needs, elevator develop towards energy saving, environmental protection and intelligent.EDA breaks the barriers between hardware and software. Not only the computer software technology and hardware but also the design efficiency and product performance are combined. EDA represents the electronic design technology and application technology’s development. VHDL digital system is mainly used to describe the interface, structure and function. Its syntax is easy and transplantable.This design which uses VHDL simulated by Altera’s Quartus II software. I use method named finite state machine which two processes complement each other. The state machine process act as the main process, and the signal control process act as a assistant. Seven states were defined in the main process, namely “stopon1” “dooropen” “doorclose” “doorwait4” “up”“down” and “stop”. Triggered by the lift’s clock, the next state is determined by the current state and the signal. In signal control process, registers keep input value, and lamps black out when the control process, registers keep input value, and lamps black out when the control signal in the main process is high value.Key words: Elevator Controller;VHDL State Machine;CPLD目录第1章绪论 (1)第2章 EDA技术的介绍 (2)2.1 EDA技术的基本特征 (2)2.2 EDA技术的基本设计方法 (4)2.3 QuartusII软件介绍 (7)第三章EDA实验箱使用和介绍 (8)3.1 GW48系统使用注意事项 (8)3.2 GW48系统主板结构与使用方法 (8)3.3模式选择 (12)第四章总体方案设计 (12)4.1设计的目的 (13)4.2 设计要求 (13)4.3设计的基础依据 (13)4.3.1VHDL语言介绍 (14)4.3.2 VHDL的特点 (14)4.3.3 VHDL的设计步骤 (15)4.3.4 VHDL语言编程格式 (15)第五章电梯控制设计方案 (17)5.1 电梯控制器的总体设计方案 (17)5.2电梯运行控制流程图如下 (18)5.3 六层电梯控制器的设计思路 (19)第六章程序设计及调试 (20)6.1 程序流程分析 (20)6.2 程序设计说明 (20)6.2.1端口、寄存器设计说明 (20)6.2.2模块设计说明 (22)6.2.3具体语句设计说明 (23)6.3 程序调试 (26)第7章程序仿真 (28)7.1建立波形输入 (29)7.2电梯功能的实现与仿真 (30)7.2.1 仿真步骤 (30)7.2.2 电梯功能实现与仿真结果分析 (33)第8 章设计总结 (37)参考文献 (38)致谢 (39)附录一 (40)附录二 (48)第1章绪论随着社会的发展,电梯的使用越来越普遍,已经从原来只在商业大厦,宾馆使用,过度到在办公楼,居民楼等场所使用,并且对电梯功能的要求也不断提高,相应地其控制方式也在不停地发生变化.对于电梯的控制,传统的方法是使用继电器—接触器控制系统进行控制,随着技术的不断发展,微型计算机在电梯控制上的应用日益广泛,现在已进入全微化控制的时代。

vhdl课程设计电梯

vhdl课程设计电梯

vhdl课程设计电梯一、教学目标本节课的教学目标是使学生掌握VHDL语言的基本知识,能够使用VHDL语言设计并实现一个简单的电梯控制系统。

具体来说,知识目标包括理解VHDL语言的基本语法、数据类型和信号处理方法;技能目标包括能够使用VHDL语言编写电梯控制系统的代码、进行仿真和测试;情感态度价值观目标包括培养学生对电子工程领域的兴趣,增强其创新意识和团队协作能力。

二、教学内容本节课的教学内容主要包括VHDL语言的基本语法、数据类型和信号处理方法,以及电梯控制系统的原理和设计。

具体来说,将讲解VHDL语言的基本结构和关键字,介绍数据类型和信号处理方法的应用,并通过实例展示如何使用VHDL语言设计电梯控制系统的各个模块。

此外,还将介绍电梯控制系统的原理和运行方式,并让学生进行实际操作,以加深对电梯控制系统的理解和掌握。

三、教学方法本节课将采用讲授法、案例分析法和实验法相结合的教学方法。

首先,通过讲授法向学生介绍VHDL语言的基本语法和数据类型,使学生掌握VHDL语言的基本知识;其次,通过案例分析法讲解信号处理方法的应用,让学生在实际案例中学习和理解信号处理方法;最后,通过实验法让学生动手设计并实现电梯控制系统的各个模块,培养学生的实际操作能力和创新意识。

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

教材和参考书将提供VHDL语言的基本知识和电梯控制系统的原理;多媒体资料将展示电梯控制系统的实际运行情况,帮助学生更好地理解电梯控制系统的原理和运行方式;实验设备将用于让学生进行实际操作,培养其实际操作能力和创新意识。

五、教学评估本节课的教学评估将采用多元化的评估方式,包括平时表现、作业和考试等。

平时表现评估将关注学生在课堂上的参与程度、提问回答和团队协作等情况,以全面了解学生的学习态度和积极性。

作业评估将根据学生提交的VHDL代码和电梯控制系统设计报告,评价其对VHDL语言的掌握程度和实际设计能力。

电梯控制器的VHDL程序设计与仿真

电梯控制器的VHDL程序设计与仿真

论文题目:电梯控制器的VHDL程序设计与仿真专业:微电子学本科生:陈伟伟(签名)___________指导教师:岳改丽(签名)___________摘要本设计(改为论文)主要介绍了基于FPGA设计的五层电梯控制器,采用VHDL语言进行编译,并进行了电路综合和仿真。

该控制器具备了FPGA芯片的硬件体积小、实时性好、工作效率高、提高系统的集成度等特点且遵循方向优先的原则,提供五个楼层多个用户的载客服务,并指示电梯的运行情况。

本设计的亮点是使用状态机的方法来完成电梯的几个运行状态。

(改,)将主控制器的状态分为6种,停止、等待、上升、连续上升、下降及连续下降,状态的划分与楼层无关(增加,)因此具有很强的通用性。

本课题试验调试平台是Altera公司的Quartus Ⅱ软件和EDA实验开发系统。

(改,)通过程序的调试和(改、)运行及仿真表明本设计可以完成电梯所在楼层显示和电梯运行方向指示。

关键字:FPGA,VHDL,电梯控制器,状态机大红色要删去,下同Subject: The study and simulation of elevator controller based on VHDL Specialty: MicroeletronicsName: Weiwei Chen (Signature) ___________ Instructor: G aili Yue (Signature) ___________ABSTRCTThis design introduces the five floors elevator controller compiled with VHDL and the synthesis and simulation of the circuit. The controller follows the direction of the principle of priority, to provide the service of multiple users, and indicates the operation of the lift. This controller has FPGA chip compact hardware, good real-time, high efficiency, improve the system integration characteristics .Using state machine is a strong point of this design. The main controller is divided into six states. The state has nothing to do with floors, so it has a strong common use. The debugging platform of this topic is Altera QuartusⅡsoftware and EDA experiment development system. Through the process of debugging、running and the simulation shows that this design can finish the function of the elevator direction and floor’s display.KEY WORDS: FPGA, VHDL, Elevator Controller, State Machine目录1绪论 (1)1.1 选题的背景 (1)1.2 电梯控制器的研究背景 (1)1.3 我国电梯的发展状况 (1)1.4 电梯设计的具体目的及控制要求..................................................................... .2 2设计基础依据(改为工具介绍). (4)2.1EDA技术介绍 (4)2.2FPGA简介 (6)2.2.1EDA实验开发平台 (7)2.2.2 EP2C5核心板(字号?) (7)2.3硬件描述语言 (8)2.3.1VHDL和VerilogHDL比较 (8)2.3.2VHDL语言的基本特点 (8)2.3.3 VHDL的设计流程 (9)2.3.4 VHDL程序的基本结构 (9)2.3.5 状态机的简介 (10)2.4 QuartusII软件介绍 (11)3电梯控制器的设计及仿真 (14)3.1 电梯及电梯控制器的功能简介 (14)3.1.1 电梯的机械组成 (14)3.1.2电梯控制器的工作原理 (15)3.2 电梯控制器的程序设计 (15)3.2.1 电梯的总体控制思想 (16)3.2.2 电梯控制器的程序流程图 (17)3.2.3模块设计与实现 (18)3.3程序调试与下载 (28)3.3.1 程序调试 (28)3.3.2从设计文件到目标器件的下载 (29)3.3.3 加载及显示结果 (29)结论 (33)致谢.................................................................................... 错误!未定义书签。

毕业设计--基于VHDL的电梯控制系统设计

毕业设计--基于VHDL的电梯控制系统设计

论文题目:基于VHDL的电梯控制系统设计专业:电气工程及其自动化摘要电梯是标志现代物质文明的垂直运输工具,是机—电一体化的复杂运输设备。

而电梯的核心是电梯控制器。

对于电梯的控制,传统的方法是使用继电器—接触器控制系统进行控制,随着技术的不断发展,采用硬件描述语言VHL来完成电梯控制器的设计, 是设计智能化的标志。

本文结合EDA自上而下的设计特点分析了电梯控制系统的工作原理,给出了电梯控制系统的设计框图,并用VHDL语言描述出了整个系统,最后用QuartusⅡ软件进行了仿真,分析了仿真结果,进行了总结。

本文结构主要分成四大部分:第一章介绍了电梯控制系统的发展情况及发展趋势,交代了课题的研究背景,并对要完成的工作做了介绍;第二章介绍了EDA技术的主要特点,并对VHDL语言的功能及其结构进行了描述,并着重介绍了状态机的含义;第三章以VHDL语言作为描述工具,对四层电梯的结构进行分析,给出了电梯控制器的设计流程和状态机描述;第四章用QuartusⅡ软件对程序进行了仿真,并对仿真结果进行了说明和分析,并进行总结。

关键字:电梯控制器,EDA,VHDL状态机AbstractElevator is the symbol of modern vertical transport of material is machine - the complexity of transport equipment, electrical integration. The elevator is the core of elevator controller. For the elevator control, the traditional approach is to use relay - contactor control system to control, as technology continues to develop, using hardware description language VHL to complete the elevator controller design, is a sign of intelligent design.This paper EDA Design features of a top-down elevator control system working principle of the elevator control system block diagram and describe the use of VHDL, the whole system, and finally with Quartus Ⅱsimulation software to analyze the simulation results , is summarized.This structure is divided into four parts:The first chapter describes the elevator control system development and trends, explain the topic of the research background, and to complete the work have been described;Chapter II describes the main features of EDA technologies, and VHDL language features and structure are described, with an emphasis on the meaning of the state machine;The third chapter describes VHDL language as a tool for analyzing the structure of four elevators, the elevator controller is given the design process and the state machine description;Chapter IV with Quartus Ⅱ software process simulation, and simulation results are described and analyzed and summarized.Keywords: elevator controller, EDA, VHDL State Machi ne目录1 绪论........................................................................................ 错误!未定义书签。

VHDL电梯控制器程序设计与仿真

VHDL电梯控制器程序设计与仿真

电梯控制器VHDL程序与仿真。

----文件名:dianti.vhd。

--功能:6层楼的电梯控制系统。

library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity dianti isport ( clk : in std_logic; --时钟信号(频率为2Hz)full,deng,quick,clr : in std_logic; --超载、关门中断、提前关门清除报警信号c_u1,c_u2,c_u3,c_u4,c_u5: in std_logic; --电梯外人的上升请求信号c_d2,c_d3,c_d4,c_d5,c_d6 : in std_logic; --电梯外人的下降请求信号d1,d2,d3,d4,d5,d6 : in std_logic; --电梯内人的请求信号g1,g2,g3,g4,g5,g6 : in std_logic; --到达楼层信号door : out std_logic_vector(1 downto 0); --电梯门控制信号led : out std_logic_vector(6 downto 0); --电梯所在楼层显示led_c_u:out std_logic_vector(5 downto 0); --电梯外人上升请求信号显示led_c_d:out std_logic_vector(5 downto 0); --电梯外人下降请求信号显示led_d : out std_logic_vector(5 downto 0); --电梯内请求信号显示wahaha : out std_logic; --看门狗报警信号ud,alarm : out std_logic; --电梯运动方向显示,超载警告信号up,down : out std_logic ); --电机控制信号和电梯运动end dianti;architecture behav of dianti issignal d11,d22,d33,d44,d55,d66:std_logic; --电梯内人请求信号寄存信号signal c_u11,c_u22,c_u33,c_u44,c_u55:std_logic; --电梯外人上升请求信号寄存信号signal c_d22,c_d33,c_d44,c_d55,c_d66: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(5 downto 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'; --清除故障报警elsif full='1' then alarm<='1'; q1<=0; --超载报警if q1>=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<='1'; --关门完毕,电梯进入上升状态elsif q1>=3 then door<="01";q1<=q1+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;elsif q1=6 then door<="00";updown<='0';down<='1';elsif q1>=3 then door<="01";q1<=q1+1;else q1<=q1+1;door<="00";end if;end if;if g1='1' then led<="1001111"; --电梯到达1楼,数码管显示1if d11='1' or c_u11='1' then d11<='0'; c_u11<='0';opendoor<='1';--有当前层的请求,则电梯进入开门状态elsif dd_cc>"000001" then en_up<='1'; opendoor<='0';--有上升请求,则电梯进入预备上升状态elsif dd_cc="000000" then opendoor<='0'; --无请求时,电梯停在1楼待机end if;elsif g2='1' then led<="0010010"; --电梯到达2楼,数码管显示2 if updown='1' then --电梯前一运动状态位上升if d22='1' or c_u22='1' then d22<='0'; c_u22<='0'; opendoor<='1';--有当前层的请求,则电梯进入开门状态elsif dd_cc>"000011" then en_up<='1'; opendoor<='0';--有上升请求,则电梯进入预备上升状态elsif dd_cc<"000010" then en_dw<='1'; opendoor<='0';--有下降请求,则电梯进入预备下降状态end if;--电梯前一运动状态为下降elsif d22='1' or c_d22='1' then d22<='0'; c_d22<='0';opendoor<='1';--有当前层的请求,则电梯进入开门状态elsif dd_cc<"000010" then en_dw<='1'; opendoor<='0';--有下降请求,则电梯进入预备下降状态elsif dd_cc>"000011" then en_up<='1'; opendoor<='0';--有上升请求,则电梯进入预备上升状态end if;elsif g3='1' then led<="0000110"; --电梯到达3楼,数码管显示3 if updown='1' thenif d33='1' or c_u33='1' then d33<='0'; c_u33<='0';opendoor<='1';elsif dd_cc>"000111" then en_up<='1'; opendoor<='0';elsif dd_cc<"000100" then en_dw<='1'; opendoor<='0';end if;elsif d33='1' or c_d33='1' then d33<='0'; c_d33<='0'; opendoor<='1';elsif dd_cc<"000100" then en_dw<='1'; opendoor<='0';elsif dd_cc>"000111" then en_up<='1'; opendoor<='0';end if;elsif g4='1' then led<="1001100"; --电梯到达4楼,数码管显示4 if updown='1' thenif d44='1' or c_u44='1' then d44<='0'; c_u44<='0'; opendoor<='1';elsif dd_cc>"001111" then en_up<='1'; opendoor<='0';elsif dd_cc<"001000" then en_dw<='1'; opendoor<='0';end if;elsif d44='1' or c_d44='1' then d44<='0'; c_d44<='0'; opendoor<='1';elsif dd_cc<"001000" then en_dw<='1'; opendoor<='0';elsif dd_cc>"001111" then en_up<='1'; opendoor<='0';end if;elsif g5='1' then led<="0100100"; --电梯到达5楼,数码管显示5if updown='1' thenif d55='1' or c_u55='1' then d55<='0'; c_u55<='0';opendoor<='1';elsif dd_cc>"011111" then en_up<='1'; opendoor<='0';elsif dd_cc<"010000" then en_dw<='1'; opendoor<='0';end if;elsif d55='1' or c_d55='1' then d55<='0'; c_d55<='0';opendoor<='1';elsif dd_cc<"010000" then en_dw<='1'; opendoor<='0';elsif dd_cc>"011111" then en_up<='1'; opendoor<='0';end if;elsif g6='1' then led<="0100000"; --电梯到达6楼,数码管显示6 if d66='1' or c_d66='1' then d66<='0'; c_d66<='0';opendoor<='1';elsif dd_cc<"100000" 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' then d11<=d1; --对电梯内人请求信号进行检测和寄存elsif d2='1' then d22<=d2;elsif d3='1' then d33<=d3;elsif d4='1' then d44<=d4;elsif d5='1' then d55<=d5;elsif d6='1' then d66<=d6;end if;if c_u1='1' then c_u11<=c_u1; --对电梯外人上升请求信号进行检测和寄存elsif c_u2='1' then c_u22<=c_u2;elsif c_u3='1' then c_u33<=c_u3;elsif c_u4='1' then c_u44<=c_u4;elsif c_u5='1' then c_u55<=c_u5;end if;if c_d2='1' then c_d22<=c_d2; --对电梯外人下降请求信号进行检测和寄存elsif c_d3='1' then c_d33<=c_d3;elsif c_d4='1' then c_d44<=c_d4;elsif c_d5='1' then c_d55<=c_d5;elsif c_d6='1' then c_d66<=c_d6;end if;dd<=d66&d55&d44&d33&d22&d11; --电梯内人请求信号并置cc_u<='0'&c_u55&c_u44&c_u33&c_u22&c_u11; --电梯外人上升请求信号并置cc_d<=c_d66&c_d55&c_d44&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 behav;电梯程序仿真注:由于以上输入信号在下面仿真中没用到,所以在下面仿真图中将不再出现。

课程设计--基于VHDL的三层电梯控制器的设计

课程设计--基于VHDL的三层电梯控制器的设计

防盗报警器课程设计指导教师学生姓名学号专业教学单位一、摘要本设计运用有限状态机的方法,在结构体最前端首先定义了十个状态;然后在结构体中设计了两个进程,状态机进程作为主要进程,信号灯控制进程作辅助进程。

在状态机进程中,电梯关门后根据信号灯的情况,来决定下一个状态是上升、下降还是停止;在信号灯控制进程中,而信号灯的熄灭是由状态机进程中传出clearup和cleardn信号来控制。

实现了三层电梯的基本功能,电梯的的运行情况完全符合它的运行规则,电梯的位置变化合情合理。

二、设计的基本思路及其设计出发点本设计采用VHDL,源程序经A1tera公司的MAX+plus II软件仿真。

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

电梯作为垂直方向的交通工具,在高层建筑和公共场所已成为不可或缺的设备。

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

随着社会需求的变化,电梯朝着节能、环保及智能化方向发展。

三、方案原理论述3.1 电梯控制器原理电梯控制器的功能模块如所示,包括主控制器、分控制器、楼层选择器、状态显示器、译码器和楼层显示器。

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

分控制器把有效的请求传给主控制器进行处理,同时显示电梯的运行状态和电梯所在楼层数。

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

图3.1 电梯控制器原理图三层电梯控制器的设计思路电梯控制器设计两个进程相互配合,状态机进程作为主要进程,信号灯控制进程作为辅助进程。

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

用VHDL语言设计电梯控制器

用VHDL语言设计电梯控制器

石家庄经济学院数字逻辑课程设计报告题目电梯控制器的设计姓名 meng hao学号班号 3 班指导老师成绩2011年6月目录1. 课程设计目的····························2.········································································································设计任务3.········································································································开发工具选择·································3. 设计方案······························4.模块描述······························5. VHDL实现······························6. 调试仿真······························7. 课程设计回顾总结·························参考文献······························1. 课程设计目的1) 使学生更好地巩固和加深对基础知识的理解,学会设计中小型数字系统的方法,独立完成调试过程,增强学生理论联系实际的能力,提高学生电路设计和分析的能力。

EDA技术-VHDL-5.8电梯控制程序设计

EDA技术-VHDL-5.8电梯控制程序设计

5.8 电梯控制器程序设计与仿真实验1.实验目的练习复杂VHDL语言程序设计,设计一个电梯控制器。

2.实验原理设计一个6层楼的电梯控制器,该控制器可控制电梯完成6层楼的载客服务,而且遵循方向优先原则,并能响应提前关门延时关门,并具有超载报警和故障报警;同时指示电梯运行情况和电梯内外请求信息。

电梯方向优先控制方式控制器系统方框图如图5.8.1所示。

图5.8.1 电梯方向优先控制方式控制器系统方框图(1)外部数据高速采集模块设计控制器采用FPGA作为系统控制的核心,系统时钟频率是32.0000MHz,完全可以满足实时采集数据的要求。

由于电路中毛刺现象的存在,信号的纯净度降低,单个毛刺往往被误作为系统状态转换的触发信号,严重影响电梯的正常工作。

可以采用多次检测的方法解决这个问题,对一个信号进行多次采样以保证信号的可信度。

外部请求信号的输入形式为按键输入,到达楼层信号来自光敏传感器,关门中断信号及超载信号则产生于压力传感器。

键盘、光敏外部输入接口电路未设计。

(2)信号存储模块电梯控制器的请求输入信号有18个(电梯外有6个上升请求和6个下降请求的用户输入端口,电梯内有6个请求用户输入端口),由于系统对内、外请求没有设置优先级,各楼层的内、外请求信号被采集后可先进行运算,再存到存储器内。

电梯运行过程中,由于用户的请求信号的输入是离散的,而且系统对请求的响应也是离散的,因此请求信号的存储要求新的请求信号不能覆盖原来的请求信号,只有响应动作完成后才能清除存储器内对应的182请求信号位。

对应某一楼层的请求信号的存储、清除电路如图5.8.2所示。

图5.8.2 请求信号操作电路(3)基于FPGA的中央处理模块中央数据处理模块是系统的核心,通过对存储的数据(含请求、到达楼层等信号)进行比较、判断以驱动系统状态的流转。

电梯工作过程中共有9种状态:等待、上升、下降、开门、关门、停止、休眠、超载报警以及故障报警状态。

一般情况下,电梯工作起始点是第一层,起始状态是等待状态,启动条件是收到上升请求。

基于VHDL的电梯控制系统设计说明

基于VHDL的电梯控制系统设计说明

VHDL数字系统设计与测试实验报告基于VHDL的电梯控制系统设计一、设计背景及说明随着高层建筑的不断涌现,对电梯的需求也与日俱增,电梯已经成为我们日常生活中不可缺少的部分,稳定可靠性高的电梯系统成为了电梯领域的新需求。

现在基于VHDL硬件描述语言,用FPGA为控制芯片控制完成一个简单的6层楼的电梯控制系统设计。

我们常见的电梯控制系统功能都包括:上升请求、下降请求、电梯门控、楼层显示灯、电梯运动方向显示、超载、报警、电梯请求信号等。

根据这些常用的信号设计一个电梯系统,实现所要求的功能。

控制方式的选择:1)部请求优先控制方式部请求控制方式类似于出租车的工作方式,先将车上的人送至目地,再去载客。

作为通用型电梯应该服务于大多数人,必须考虑电梯对外请求的响应。

在部请求优先控制方式中,当电梯外部人的请求和电梯部人的请求冲突时,外部人的请求信号可能被长时间忽略,因为它不能作为通用型电梯的设计方案。

2)单层层停控制方案单层层停控制方式等同于火车运行方式,遇到站即停止、开门。

这种方案保证所有的人的请求都能得到响应。

然而这样对电梯的效率产生了消极的影响:不必要的等待消耗了大量时间,而且电梯的运作与用户的请求无关,当无请求时电梯也照常跑空车,浪费了大量的电能。

对于用户而言这种控制方式的请求响应时间也不是很快,因而也不是理想的电梯控制设计方案。

3)方向优先控制式方式方案方向优先控制是指电梯运行到某一层楼时,先考虑这一层楼是否有请求:有则停止;无则继续上升或者下降。

停止后再启动时,考虑上方或者下方是否有请求,有则继续前进,无则停止。

检测后方是否有请求,有请求则转向运行,无请求则维持停止状态。

这种运作方式下,电梯对用户的请求相应率为100%,而且响应的时间较短。

方向优先控制方式的效率远远大于单向层层停等控制方式的效率。

而且,方向控制方式下,电梯在维持停止状态的时候可以进入省电模式,又能节省大量的电能。

在本设计中采用方向优先控制方式。

基于vhdl三层电梯控制器的设计说明书

基于vhdl三层电梯控制器的设计说明书

基于VHDL的三层电梯控制器的设计
姓名:
学号:
班级:
一.设计课题的任务要求:
简易电梯控制器:
模拟真实电梯的运行情况,设计制作一个简易电梯控制器控制二层电梯的运行。

基本要求:
1、电梯设有一层、二层外部呼叫按钮和内部一层、二层指定按钮(BTN)。

2、利用数码管显示电梯所在楼层,用LED显示电梯运行状态如上行、下行、开门、关
门等。

提高要求:
1、点阵显示楼层;
2、用点阵显示楼层的上下滚动移出移入表示电梯的上行或下行运行方向
3、增加为三层电梯控制器
二.系统设计:
电梯控制器的功能模块如图所示,包括主控制器、分控制器、楼层选择器、状态显示器、译码器和楼层显示器。

乘客选择所要到达的楼层,通过主控制器的处理之后,电梯开始运行,状态显示器显示当前电梯的上升下降运行状态,电梯所在楼层数通过译码器译码在数码管上显示。

分控制器把有效的请求传给主控制器进行处理,同时显示电梯的运行状态和电梯所在层数。

电梯控制器原理图如下:
根据电梯的实际工作情况,可以为状态机设置八个状态,它们分别是“电梯停在一层”“电梯停在二层”“电梯停在三层”“开门”“关门”“上升”“下降”和“停止”。

由于电梯每秒上升或下降一层,则可以用周期为1s的信号来作为电梯状态转换的触发时钟。

VHDL描述模块流程如下图所示:
三层电梯控制器的VHDL描述模块流程电梯控制器流程图:
三.仿真波形及波形分析:。

基于VHDL的电梯控制系统设计

基于VHDL的电梯控制系统设计

基于VHDL的电梯控制系统设计【摘要】本文介绍了基于VHDL的六层电梯控制系统设计的总体设计方案,详细描述了六层电梯内部功能模块的工作原理。

利用硬件描述语言VHDL对功能模块进行编译,仿真结果表明,此设计能够遵循方向优先的原则正常工作。

【关键词】六层电梯;控制系统;VHDL;设计1.引言随着社会的发展,对电梯功能的要求也不断提高,其相应控制方式也在不断发生变化。

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

随着专用集成电路设计技术和电子设计自动化技术的发展,可编程逻辑器件的广泛使用,可编程逻辑控制逐渐成为控制领域的主流[1]。

本设计使用现场可编程门阵列(FPGA)器件作为主控制芯片,采用Verilog-HDL语言设计一个六层载客电梯控制系统,整体设计采用模块化处理,便于修改和升级,可以实现多层电梯的仿真控制[2-3]。

2.系统设计方案电梯控制系统设计的总体原理框图如图1所示,包括主控制器、楼层选择器、状态显示器、译码器和楼层显示器。

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

图1 电梯控制系统总体原理框图主模块控制器是核心部分,设计通过一个以1秒为周期的时钟来触发状态机,再根据电梯的实际工作情况,把状态机设置10个状态,分别是“电梯初始状态为1层”、“开门”、“关门”、“开门等待第1秒”、“开门等待第2秒”、“开门等待第3秒”、“开门等待第4秒”、“上升”、“下降”和“停止”状态。

2.1 六层电梯控制系统的实体设计首先考虑的是输入端口,一个异步复位端口reset,用于电梯初始状态为一楼;在电梯外部,必须有升降请求端口,一楼最低,不需要下降请求,六楼是最高层,不需要有上升请求,二楼、三楼、四楼、五楼则上升、下降请求端口都有;在电梯内部,应该设有一楼到六楼停留的请求端口;一个电梯时钟输入端口,用于进行电梯的升降及开门关门等动作;另有一个是按键时钟输入端口,按键时钟频率应该比电梯时钟频率高。

基于VHDL的电梯控制系统设计

基于VHDL的电梯控制系统设计

基于VHDL的电梯控制系统设计摘要:按照电梯控制系统的一般要求,设计了基于VHDL语言的电梯控制系统。

该系统遵循方向优先的设计原则,可以提供楼层用户的载客服务并指示电梯的运行情况。

通过对整个系统进行了综合仿真,得到了电梯控制系统的时序仿真波形,仿真结果表明该控制系统符合设计要求。

关键词:VHDL语言电梯控制系统电梯控制系统是控制电梯按顾客的要求自动上下的装置。

电梯的控制状态包括运行状态、停止状态及等待状态,其中运行状态又包含向上状态和向下状态。

主要动作有开、关门,停靠和启动。

乘客通过键入开关门按钮、呼唤按钮、制定楼层按钮等来控制电梯停与行。

1 电梯控制系统的设计要求电梯控制系统分为主控制器和分控制器。

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

主控制器的设计要求:①完成三层楼多用户的载客服务控制;②电梯运行时显示电梯的运行方向和所在的楼层;③当电梯到达选择的楼层时,电梯自动开门;④电梯每秒升(将)一层;⑤响应分控制器的有效请求,如果到达有请求的楼层,电梯经过一秒门打开,打开四秒后,电梯门关闭(开门指示灯灭),电梯继续运行,直至执行完最后一个请求信号后停留在当前层;⑥能记忆电梯内外的所有请求信号,并按照电梯运行规则次序响应,每个请求信号留至执行后消除;⑦电梯初态为一层开门状态。

分控制器的设计要求:①显示电梯的运行状态和所在的楼层;②显示乘客的上升和下降请求。

分控制器还需满足有效请求原则:①电梯处于等待状态时,上升和下降请求都响应;②电梯处于上升状态时,有上升请求的分控制器所在楼层数大于电梯所在楼层数;③电梯处于下降状态时,有下降请求的分控制器所在楼层数小于电梯所在楼层数。

2 电梯控制系统设计思路比较而言,基于CPLD/FPGA的电梯控制系统的设计,以可编程逻辑器件为核心,采用VHDL(超高速硬件描述语言)来实现。

它具有集成度高、逻辑功能强的特点。

一般采用分段式结构,走线灵活,便于复杂功能的实现,且具有研制周期短,设计成本低,设计灵活性高,高性能的特点。

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

电梯控制器VHDL程序与仿真。

----文件名:dianti.vhd。

--功能:6层楼的电梯控制系统。

library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity dianti isport ( clk : in std_logic; --时钟信号(频率为2Hz)full,deng,quick,clr : in std_logic; --超载、关门中断、提前关门清除报警信号c_u1,c_u2,c_u3,c_u4,c_u5: in std_logic; --电梯外人的上升请求信号c_d2,c_d3,c_d4,c_d5,c_d6 : in std_logic; --电梯外人的下降请求信号d1,d2,d3,d4,d5,d6 : in std_logic; --电梯内人的请求信号g1,g2,g3,g4,g5,g6 : in std_logic; --到达楼层信号door : out std_logic_vector(1 downto 0); --电梯门控制信号led : out std_logic_vector(6 downto 0); --电梯所在楼层显示led_c_u:out std_logic_vector(5 downto 0); --电梯外人上升请求信号显示led_c_d:out std_logic_vector(5 downto 0); --电梯外人下降请求信号显示led_d : out std_logic_vector(5 downto 0); --电梯内请求信号显示wahaha : out std_logic; --看门狗报警信号ud,alarm : out std_logic; --电梯运动方向显示,超载警告信号up,down : out std_logic ); --电机控制信号和电梯运动end dianti;architecture behav of dianti issignal d11,d22,d33,d44,d55,d66:std_logic; --电梯内人请求信号寄存信号signal c_u11,c_u22,c_u33,c_u44,c_u55:std_logic; --电梯外人上升请求信号寄存信号signal c_d22,c_d33,c_d44,c_d55,c_d66: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(5 downto 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'; --清除故障报警elsif full='1' then alarm<='1'; q1<=0; --超载报警if q1>=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<='1'; --关门完毕,电梯进入上升状态elsif q1>=3 then door<="01";q1<=q1+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;elsif q1=6 then door<="00";updown<='0';down<='1';elsif q1>=3 then door<="01";q1<=q1+1;else q1<=q1+1;door<="00";end if;end if;if g1='1' then led<="1001111"; --电梯到达1楼,数码管显示1if d11='1' or c_u11='1' then d11<='0'; c_u11<='0';opendoor<='1';--有当前层的请求,则电梯进入开门状态elsif dd_cc>"000001" then en_up<='1'; opendoor<='0';--有上升请求,则电梯进入预备上升状态elsif dd_cc="000000" then opendoor<='0'; --无请求时,电梯停在1楼待机end if;elsif g2='1' then led<="0010010"; --电梯到达2楼,数码管显示2 if updown='1' then --电梯前一运动状态位上升if d22='1' or c_u22='1' then d22<='0'; c_u22<='0'; opendoor<='1';--有当前层的请求,则电梯进入开门状态elsif dd_cc>"000011" then en_up<='1'; opendoor<='0';--有上升请求,则电梯进入预备上升状态elsif dd_cc<"000010" then en_dw<='1'; opendoor<='0';--有下降请求,则电梯进入预备下降状态end if;--电梯前一运动状态为下降elsif d22='1' or c_d22='1' then d22<='0'; c_d22<='0';opendoor<='1';--有当前层的请求,则电梯进入开门状态elsif dd_cc<"000010" then en_dw<='1'; opendoor<='0';--有下降请求,则电梯进入预备下降状态elsif dd_cc>"000011" then en_up<='1'; opendoor<='0';--有上升请求,则电梯进入预备上升状态end if;elsif g3='1' then led<="0000110"; --电梯到达3楼,数码管显示3 if updown='1' thenif d33='1' or c_u33='1' then d33<='0'; c_u33<='0';opendoor<='1';elsif dd_cc>"000111" then en_up<='1'; opendoor<='0';elsif dd_cc<"000100" then en_dw<='1'; opendoor<='0';end if;elsif d33='1' or c_d33='1' then d33<='0'; c_d33<='0'; opendoor<='1';elsif dd_cc<"000100" then en_dw<='1'; opendoor<='0';elsif dd_cc>"000111" then en_up<='1'; opendoor<='0';end if;elsif g4='1' then led<="1001100"; --电梯到达4楼,数码管显示4 if updown='1' thenif d44='1' or c_u44='1' then d44<='0'; c_u44<='0'; opendoor<='1';elsif dd_cc>"001111" then en_up<='1'; opendoor<='0';elsif dd_cc<"001000" then en_dw<='1'; opendoor<='0';end if;elsif d44='1' or c_d44='1' then d44<='0'; c_d44<='0'; opendoor<='1';elsif dd_cc<"001000" then en_dw<='1'; opendoor<='0';elsif dd_cc>"001111" then en_up<='1'; opendoor<='0';end if;elsif g5='1' then led<="0100100"; --电梯到达5楼,数码管显示5if updown='1' thenif d55='1' or c_u55='1' then d55<='0'; c_u55<='0';opendoor<='1';elsif dd_cc>"011111" then en_up<='1'; opendoor<='0';elsif dd_cc<"010000" then en_dw<='1'; opendoor<='0';end if;elsif d55='1' or c_d55='1' then d55<='0'; c_d55<='0';opendoor<='1';elsif dd_cc<"010000" then en_dw<='1'; opendoor<='0';elsif dd_cc>"011111" then en_up<='1'; opendoor<='0';end if;elsif g6='1' then led<="0100000"; --电梯到达6楼,数码管显示6 if d66='1' or c_d66='1' then d66<='0'; c_d66<='0';opendoor<='1';elsif dd_cc<"100000" 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' then d11<=d1; --对电梯内人请求信号进行检测和寄存elsif d2='1' then d22<=d2;elsif d3='1' then d33<=d3;elsif d4='1' then d44<=d4;elsif d5='1' then d55<=d5;elsif d6='1' then d66<=d6;end if;if c_u1='1' then c_u11<=c_u1; --对电梯外人上升请求信号进行检测和寄存elsif c_u2='1' then c_u22<=c_u2;elsif c_u3='1' then c_u33<=c_u3;elsif c_u4='1' then c_u44<=c_u4;elsif c_u5='1' then c_u55<=c_u5;end if;if c_d2='1' then c_d22<=c_d2; --对电梯外人下降请求信号进行检测和寄存elsif c_d3='1' then c_d33<=c_d3;elsif c_d4='1' then c_d44<=c_d4;elsif c_d5='1' then c_d55<=c_d5;elsif c_d6='1' then c_d66<=c_d6;end if;dd<=d66&d55&d44&d33&d22&d11; --电梯内人请求信号并置cc_u<='0'&c_u55&c_u44&c_u33&c_u22&c_u11; --电梯外人上升请求信号并置cc_d<=c_d66&c_d55&c_d44&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 behav;电梯程序仿真注:由于以上输入信号在下面仿真中没用到,所以在下面仿真图中将不再出现。

相关文档
最新文档