电梯控制器的设计与分析

上传人:san****019 文档编号:71760802 上传时间:2019-01-21 格式:PPT 页数:53 大小:793.31KB
返回 下载 相关 举报
电梯控制器的设计与分析_第1页
第1页 / 共53页
电梯控制器的设计与分析_第2页
第2页 / 共53页
电梯控制器的设计与分析_第3页
第3页 / 共53页
电梯控制器的设计与分析_第4页
第4页 / 共53页
电梯控制器的设计与分析_第5页
第5页 / 共53页
点击查看更多>>
资源描述

《电梯控制器的设计与分析》由会员分享,可在线阅读,更多相关《电梯控制器的设计与分析(53页珍藏版)》请在金锄头文库上搜索。

1、第9章 电梯控制器的设计与分析,9.1 系统设计要求 9.2 系统设计方案 9.3 主要VHDL源程序 9.4 系统仿真/硬件验证 9.5 设计技巧分析 9.6 系统扩展思路,9.1 系统设计要求,随着社会的发展,电梯的使用越来越普遍,已从原来只在商业大厦、宾馆使用,过渡到在办公楼、居民楼等场所使用,并且对电梯功能的要求也不断提高,相应地其控制方式也在不停地发生变化。对于电梯的控制,传统的方法是使用继电器接触器控制系统进行控制,随着技术的不断发展,微型计算机在电梯控制上的应用日益广泛,现在已进入全微机化控制的时代。,电梯的微机化控制主要有以下几种形式: PLC控制; 单板机控制; 单片机控制;

2、 单微机控制; 多微机控制; 人工智能控制。随着EDA技术的快速发展,CPLD/FPGA已广泛应用于电子设计与控制的各个方面。本设计就是使用一片CPLD/FPGA来实现对电梯的控制的。,9.2 系统设计方案,根据系统设计要求,并考虑到系统的可验证性,整个系统的输入输出接口设计如图9.1所示:系统工作用2 Hz基准时钟信号CLKIN,楼层上升请求键UPIN,楼层下降请求键DOWNIN,楼层选择键入键ST_CH,提前关门输入键CLOSE,延迟关门输入键DELAY,电梯运行的开关键RUN_STOP,电梯运行或停止指示键LAMP,电梯运行或等待时间指示键RUN_WAIT,电梯所在楼层指示数码管ST_O

3、UT,楼层选择指示数码管DIRECT。,图9.1 电梯控制器DTKZQ的输入输出接口图,电梯的控制状态包括运行状态、停止状态及等待状态,其中运行状态又包含向上状态和向下状态。主要动作有开、关门,停靠和启动。乘客可通过键入开、关门按钮,呼唤按钮,指定楼层按钮等来控制电梯的行与停。 据此,整个电梯控制器DTKZQ应包括如下几个组成部分: 时序输出及楼选计数器; 电梯服务请求处理器; 电梯升降控制器; 上升及下降寄存器; 电梯次态生成器。该电梯控制器设计的关键是确定上升及下降寄存器的置位与复位。整个系统的内部组成结构图如图9.2所示。,图9.2 电梯控制器的内部组成结构图,9.3 主要VHDL源程序

4、,-DTKZQ.VHD LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; ENTITY DTKZQ IS,PORT(CLKIN:IN STD_LOGIC; -2 Hz时钟输入信号 UPIN:IN STD_LOGIC; -楼层上升请求键 DOWNIN:IN STD_LOGIC; -楼层下降请求键 ST_CH:IN STD_LOGIC; -结合DIRECT完成楼层选择的键入 CLOSE:IN STD_LOGIC; -提前关门输入键 DEL

5、AY:IN STD_LOGIC; -延迟关门输入键 RUN_STOP:IN STD_LOGIC; -电梯运行的开关键 LAMP:OUT STD_LOGIC; -电梯运行或停止指示键,RUN_WAIT:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); -结合LAMP指示电梯运行或等待时间 ST_OUT:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); -电梯所在楼层指示数码管 DIRECT:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); -楼层选择指示数码管 END ENTITY DTKZQ; ARCHITECTURE ART OF DTK

6、ZQ IS,SIGNAL UR,DR:STD_LOGIC_VECTOR(16 DOWNTO 1); -上升或下降楼层请求寄存器 SIGNAL DIR,LIFTOR:STD_LOGIC_VECTOR(3 DOWNTO 0); -楼选指示及楼层数计数器 SIGNAL WAI_T:STD_LOGIC_VECTOR(2 DOWNTO 0); -运行或等待计数器 SIGNAL DIVID,HAND:STD_LOGIC; -时钟2分频和楼选复位变量 SIGNAL LADD:STD_LOGIC_VECTOR(1 DOWNTO 0); -电梯运行状态变量 SIGNAL CLOSEX,DELAYX,LAMP0:

7、STD_LOGIC; -提前关门及延迟变量,BEGIN -内部信号值的输出 DIRECT=DIR+1; ST_OUT=LIFTOR+1; RUN_WAIT=0,HAND=WAI_T(2)AND (NOT WAI_T(1)AND WAI_T(0); CLOSEX=CLOSE AND (NOT LADD(1); DELAYX=DELAY AND (NOT LADD(1); -分频及楼选信号产生进程 P1:PROCESS(CLKIN) BEGIN,IF (CLKINEVENT AND CLKIN=1) THEN DIVID=NOT DIVID; IF (DIR=“1111“) THEN DIR=“0

8、000“; ELSE DIR=DIR+1; END IF; END IF; END PROCESS;,-楼层请求寄存器的置位与复位进程 P2:PROCESS(UR, DR, UPIN, DOWNIN, ST_CH, LIFTOR, WAI_T, RUN_STOP, HAND) VARIABLE NUM,T:INTEGER RANGE 0 TO 15 ; BEGIN NUM:=CONV_INTEGER(LIFTOR)+1; T:=CONV_INTEGER(DIR)+1; IF (RUN_STOP=1) THEN,IF (TNUM)AND (ST_CH=1)OR (UPIN=1)THEN CASE

9、 T IS WHEN 1 = UR(1) UR(2) UR(3) UR(4) UR(5) UR(6) UR(7) UR(8)=1;,WHEN 9 = UR(9) UR(10) UR(11) UR(12) UR(13) UR(14) UR(15) UR(16)NULL; END CASE;,ELSIF (HAND=1)THEN CASE NUM IS WHEN 1 = UR(1) UR(2) UR(3) UR(4) UR(5) UR(6) UR(7) UR(8) UR(9)=0;,WHEN 10 = UR(10) UR(11) UR(12) UR(13) UR(14) UR(15) UR(16)

10、NULL; END CASE; END IF;,IF (T DR(1) DR(2) DR(3) DR(4) DR(5) DR(6) DR(7) DR(8) DR(9)=1;,WHEN 10 = DR(10) DR(11) DR(12) DR(13) DR(14) DR(15) DR(16)NULL; END CASE; ELSIF (HAND=1) THEN CASE NUM IS,WHEN 1 = DR(1) DR(2) DR(3) DR(4) DR(5) DR(6) DR(7) DR(8) DR(9) DR(10)=0;,WHEN 11 = DR(11) DR(12) DR(13) DR(

11、14) DR(15) DR(16)NULL; END CASE; END IF;,ELSE UR=“0000000000000000“; DR=“0000000000000000“; END IF; END PROCESS; -电梯运行次态的控制进程 P3:PROCESS(UR,DR,LIFTOR,LADD,WAI_T,RUN_STOP),BEGIN IF (RUN_STOP=1) THEN IF (WAI_T=“110“) THEN IF (UR OR DR)=“0000000000000000“) THEN LADD(1)=0; -初始状态 ELSE CASE LIFTOR IS,WHEN

12、 “0000“=IF (UR(1)OR DR(1)0) THEN LADD(1)IF (UR(2)OR DR(2)0) THEN LADD(1)=0; -等待状态 ELSIF ( LADD(0)=1)AND (UR(16 DOWNTO 3),OR DR(16 DOWNTO 3)“00000000000000“) OR(UR(1)OR DR(1)=0) THEN LADD =“11“; -上升状态 ELSE LADD=“10“; -下降状态 END IF;,WHEN “0010“=IF (UR(3) OR DR(3)0) THEN LADD(1)“0000000000000“) OR(UR(2

13、DOWNTO 1) OR DR(2 DOWNTO 1)=“00“) THEN LADD=“11“; ELSE LADD=“10“; END IF;,WHEN “0011“=IF (UR(4) OR DR(4)0) THEN LADD(1)“000000000000“) OR(UR(3 DOWNTO 1) OR DR(3 DOWNTO 1)=“000“) THEN LADD=“11“; ELSE LADD=“10“; END IF;,WHEN “0100“=IF (UR(5) OR DR(5)0) THEN LADD(1)“00000000000“) OR(UR(4 DOWNTO 1) OR D

14、R(4 DOWNTO 1)=“0000“) THEN LADD=“11“; ELSE LADD=“10“; END IF;,WHEN “0101“=IF (UR(6) OR DR(6)0) THEN LADD(1)“0000000000“ ) OR(UR(5 DOWNTO 1) OR DR(5 DOWNTO 1)=“00000“) THEN LADD=“11“; ELSE LADD=“10“; END IF;,WHEN “0110“=IF (UR(7) OR DR(7)0) THEN LADD(1)“000000000“) OR(UR(6 DOWNTO 1) OR DR(6 DOWNTO 1)

15、=“000000“) THEN LADD=“11“; ELSE LADD=“10“; END IF;,WHEN “0111“=IF (UR(8) OR DR(8)0) THEN LADD(1)“00000000“ ) OR(UR(7 DOWNTO 1) OR DR(7 DOWNTO 1)=“0000000“) THEN LADD=“11“; ELSE LADD=“10“; END IF;,WHEN “1000“=IF (UR(9) OR DR(9)0) THEN LADD(1)“0000000“ ) OR(UR(8 DOWNTO 1) OR DR(8 DOWNTO 1)=“00000000“) THEN LADD=“11“; ELSE LADD=“10“; END IF;,WHEN “1001“=IF (UR(10) OR DR(10)0) THEN LADD(1)“000000“ ) OR(UR(9 DOWNTO 1) OR DR(9 DOWNTO 1)=“000000000“) THEN LADD=“11“; ELSE LADD=“10“; END IF;,WHEN “1010“=IF (UR(11) OR DR(11)0) THEN LADD(1)“00000“) OR(UR(10 DOWNTO 1) OR DR(10 DOWNTO 1)=“000000

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号