基于vhdl四层电梯控制器设计说明书.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于vhdl四层电梯控制器设计说明书

PAGE 40 PAGE 16 1,实验目的 1、掌握更复杂的VHDL设计。 2、掌握状态机设计方法。 2,实验原理 电梯控制器的功能模块如下图所示,包括主控制器、分控制器、楼层选择器、状态显示器、译码器和楼层显示器。乘客在电梯中选择所要到达的楼层,通过主控制器的处理,电梯开始运行,状态显示器显示电梯的运行状态,电梯所在楼层数通过译码器译码从而在楼层显示器中显示。分控制器把有效的请求传给主控制器进行处理,同时显示电梯的运行状态和电梯所在楼层数。由于分控制器相对简单很多,所以主控制器是核心部分。 状态显示器 状态显示器 主控制器 楼层选择器 分控制器 译码器 楼层显示器 图2-1电梯控制器原理图 外部按键 外部按键 请求信号寄存器 状态寄存器 内部软件执行机构 外部硬件执行机构 图2-2 总流程图 初始化 判定电梯运行方向 是否有请求? 等待 电梯运行 楼层检测 否 电梯停止 目标层与本层是否同层? 是 是否目标层? 开门 延时 关门 是否停止运行? 是 否 是 否 是 否 停止 图2—3 电梯控制主流程图 2.1,四层电梯控制器实现的功能及运行规则 eq \o\ac(○,1)电梯一层入口处设有上升请求开关,二三层入口处设有上、下请求开关,四层入口处设有下降请求开关,电梯内部设有顾客到达楼层的停站请求开关。 eq \o\ac(○,2)每层电梯入口处设有位置指示装置及电梯运行模式 (上升或下降)指示装置。 eq \o\ac(○,3)电梯初始状态为一层开门状态。 eq \o\ac(○,4)电梯每秒上升(下降)一层楼。 eq \o\ac(○,5)电梯到达需要停止的楼层,经过1秒电梯门打开,开门指示灯亮,开门4秒后,电梯门关闭(开门指示灯灭),电梯继续运行,直至执行完最后一个请求信号后停留在当前层。 eq \o\ac(○,6)电梯需要寄存器来记忆电梯内外所有请求,并按照电梯运行规则按顺序响应,每个请求信号保留至执行后消除。 eq \o\ac(○,7)电梯的运行规则:当电梯处于上升模式时,只响应比电梯所在位置高的上楼请求信号和停站请求信号,由下而上逐个执行,直到最后一个上楼请求执行完毕;如果高层有下楼请求,则直接上升到有下楼请求的最高层,然后进入下降模式。当电梯处于下降模式时则与上升模式相反。 2.2,四层电梯控制器的设计思路 电梯控制器设计两个进程相互配合,状态机进程作为主要进程,信号灯控制进程作为辅助进程。根据电梯的实际工作情况,可以为状态机设置十个状态,它们分别是“电梯停在一层”“开门”“关门”“开门等待第一秒”“开门等待第二秒”“开门等待第三秒”“开门等待第四秒”“上升”“下降”和“停止”。由于电梯每秒上升或下降一层,则可以用周期为1s的信号来作为电梯状态转换的触发时钟。状态机进程中的很多判断条件是以信号灯控制进程产生的信号灯信号为依据,而信号灯控制进程中信号灯的熄灭又是由状态机进程中传出的信号来控制。 四层电梯控制器的设计主要是对实体和结构体的设计,它的VHDL描述模块流程如图2-2-1所示:元件库的说明 元件库的说明 定义实体 结构体 端口 状态机进程 信号灯控制进程 结束 按键信号灯 图2-2-1 四层电梯控制器的VHDL描述模块流程 3,VHDL源代码说明 library IEEE; --库的说明 use IEEE.std_logic_1164.all; --程序包的说明 use IEEE.std_logic_unsigned.all; use IEEE.std_logic_arith.all; (arith) entity fourlift is 实体名称fourlift port(clk1:in std_logic; 按键读取时钟信号 clk2:in std_logic; led_7数码管显示扫描时钟信号 reset:in std_logic; 异步复位端口 close:in std_logic; 关门请求 f1upbutton:in std_logic; 一层上升请求端口 f2upbutton:in std_logic; 二层上升请求端口 f2dnbutton:in std_logic; 二层下降请求端口 f3dnbutton:in std_logic; 三层下降请求端口 f3upbutton:in

文档评论(0)

mmrs369 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档