VHDL项目设计“三层电梯控制系统”.doc

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
VHDL项目设计“三层电梯控制系统”

三层电梯控制系统 设计功能与要求 电梯控制系统是的设计目标是按照使用者的要求控制电梯的运行。要求用VHDL设计出三层电梯的控制系统,基本功能要求如下: 每层电梯入口处设有上、下请求开关,使用者可以根据自身的上下楼需要按下相应按键;电梯内部设有到达楼层按钮,使用者可以选择到达楼层。 设有电梯运行模式(上、下)标识和当前所在楼层标识。 电梯运行模式等同于普通电梯运行模式,电梯一般按照提出请求的先后顺序进行响应。程序根据电梯当前位置和使用者所在楼层以及进入电梯后的要求控制运行状态。 电梯初始模式为一层关门状态。 设计思路 本系统的主要输入有电梯外上下控制按钮Button(其中Button(0)表示一楼电梯外上升请求,Button(1)表示二楼电梯外上升请求, Button(2)表示二楼电梯外下降请求, Button(3)表示三楼电梯外下降请求);电梯内到达楼层控制按钮floor(其中floor(0)表示请求到达一层, floor(1)表示请求到达二层, floor(2)表示请求到达三层)。 系统的输出包括电梯位置标识position,表示电梯当前所在楼层;电梯开门关门显示按钮door(当door=1时表示开门,door=0表示关门);电梯当前运行状态按钮up_down(当up_down=1时表示电梯处于上升状态,当up_down=0时表示电梯处于下降状态)。 系统主要通过当前所在楼层以及运行状态、后续请求判断运行方式。电梯处在第一层时,当它收到二层电梯外上下楼请求、三层电梯外下楼请求、一层电梯内到达二层和三层请求时,电梯会按照指令上升到相应楼层并开门、关门;若收到一层电梯外上楼请求只做开门响应,随后根据使用者进入电梯后请求进行响应;其他请求不响应。 当电梯处在第二层时,若系统收到二层电梯外上下楼请求只做开门响应;若收到三层电梯外下楼或二层电梯内到达三层请求,则做上楼响应、开门;若收到一层电梯外上楼或二层电梯内到达一层请求,则做下楼楼响应并开门;其他请求不响应。 当电梯处在第三层时,若它收到二层电梯外上下楼请求、一层电梯外上楼请求、电梯内到达二层和一层请求时,电梯会按照指令下降到相应楼层并开门、关门;若收到三层电梯外下楼请求只做开门响应,随后根据使用者进入电梯后请求进行响应;其他请求不响应。 若电梯正处在上升状态中收到外部请求,则只响应比当前所在楼层高的楼层的请求,到达需要到达最高楼层时再响应低层请求。若电梯正处在下降状态中收到外部请求,则只响应比当前所在楼层低的楼层的请求,到达需要到达最低楼层时再响应高层请求。 状态原理图说明 本系统的状态比较复杂,状态中嵌套状态。图3.1为系统状态原理说明图,其中b0、b1、 b2、 b3 分别表示Button(0) 、Button(1)、 Button(2)、 Button(3);f0、f1、f2分别表示 floor(0)、 floor(1)、 floor(2);S0表示一层上状态、S1U和S1D分别表示二层上和下状态、S2表示三层下状态。 图3.1 状态原理图 本状态图主要说明系统运行当前状态与下一个状态的关系,考虑了从当前状态到下一状态的所有触发因素,较为复杂。 源程序以及注释 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.all; USE IEEE.STD_LOGIC_UNSIGNED.all; ENTITY elevator15 IS PORT( CLK: IN STD_LOGIC; reset: IN STD_LOGIC; Button : IN STD_LOGIC_VECTOR(3 DOWNTO 0); --button(0)为一上请求,button(1)为二上请求, --button(2)为二楼请求utton(3)为三层外下降请求; floor : IN STD_LOGIC_VECTOR(2 DOWNTO 0); --floor(0)为电梯内一请求按钮, floor(1)为电梯内二请求按钮, --floor(2)为电梯内三请求按钮; position : OUT STD_LOGIC_VECTOR(3 DOWNTO 0);position表示电梯当前位置信息; door : OUT STD_LOGIC; -- 1为开门,0为关门; up_down : OUT STD_LOGIC --

文档评论(0)

aicencen + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档