当前位置:首页 >> 能源/化工 >>

基于VHDL的四层电梯控制器


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

相关文章:
更多相关标签: