




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第9章电梯控制器的设计与分析9.1系统设计要求
9.2系统设计方案
9.3主要VHDL源程序
9.4系统仿真/硬件验证
9.5设计技巧分析
9.6系统扩展思路
9.1系统设计要求随着社会的开展,电梯的使用越来越普遍,已从原来只在商业大厦、宾馆使用,过渡到在办公楼、居民楼等场所使用,并且对电梯功能的要求也不断提高,相应地其控制方式也在不停地发生变化。对于电梯的控制,传统的方法是使用继电器—接触器控制系统进行控制,随着技术的不断开展,微型计算机在电梯控制上的应用日益广泛,现在已进入全微机化控制的时代。电梯的微机化控制主要有以下几种形式:①PLC控制;②单板机控制;③单片机控制;④单微机控制;⑤多微机控制;⑥人工智能控制。随着EDA技术的快速开展,CPLD/FPGA已广泛应用于电子设计与控制的各个方面。本设计就是使用一片CPLD/FPGA来实现对电梯的控制的。9.2系统设计方案根据系统设计要求,并考虑到系统的可验证性,整个系统的输入输出接口设计如图9.1所示:系统工作用2Hz基准时钟信号CLKIN,楼层上升请求键UPIN,楼层下降请求键DOWNIN,楼层选择键入键ST_CH,提前关门输入键CLOSE,延迟关门输入键DELAY,电梯运行的开关键RUN_STOP,电梯运行或停止指示键LAMP,电梯运行或等待时间指示键RUN_WAIT,电梯所在楼层指示数码管ST_OUT,楼层选择指示数码管DIRECT。图9.1电梯控制器DTKZQ的输入输出接口图电梯的控制状态包括运行状态、停止状态及等待状态,其中运行状态又包含向上状态和向下状态。主要动作有开、关门,停靠和启动。乘客可通过键入开、关门按钮,呼唤按钮,指定楼层按钮等来控制电梯的行与停。据此,整个电梯控制器DTKZQ应包括如下几个组成局部:①时序输出及楼选计数器;②电梯效劳请求处理器;③电梯升降控制器;④上升及下降存放器;⑤电梯次态生成器。该电梯控制器设计的关键是确定上升及下降存放器的置位与复位。整个系统的内部组成结构图如图9.2所示。图9.2电梯控制器的内部组成结构图9.3主要VHDL源程序--DTKZQ.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;ENTITYDTKZQISPORT(CLKIN:INSTD_LOGIC;--2Hz时钟输入信号UPIN:INSTD_LOGIC; --楼层上升请求键DOWNIN:INSTD_LOGIC; --楼层下降请求键ST_CH:INSTD_LOGIC; --结合DIRECT完成楼层选择的键入CLOSE:INSTD_LOGIC; --提前关门输入键DELAY:INSTD_LOGIC; --延迟关门输入键RUN_STOP:INSTD_LOGIC; --电梯运行的开关键LAMP:OUTSTD_LOGIC; --电梯运行或停止指示键RUN_WAIT:OUTSTD_LOGIC_VECTOR(3DOWNTO0); --结合LAMP指示电梯运行或等待时间ST_OUT:OUTSTD_LOGIC_VECTOR(3DOWNTO0); --电梯所在楼层指示数码管DIRECT:OUTSTD_LOGIC_VECTOR(3DOWNTO0)); --楼层选择指示数码管ENDENTITYDTKZQ;ARCHITECTUREARTOFDTKZQISSIGNALUR,DR:STD_LOGIC_VECTOR(16DOWNTO1); --上升或下降楼层请求存放器SIGNALDIR,LIFTOR:STD_LOGIC_VECTOR(3DOWNTO0); --楼选指示及楼层数计数器SIGNALWAI_T:STD_LOGIC_VECTOR(2DOWNTO0); --运行或等待计数器SIGNALDIVID,HAND:STD_LOGIC; --时钟2分频和楼选复位变量SIGNALLADD:STD_LOGIC_VECTOR(1DOWNTO0); --电梯运行状态变量SIGNALCLOSEX,DELAYX,LAMP0:STD_LOGIC;--提前关门及延迟变量BEGIN--内部信号值的输出DIRECT<=DIR+1;ST_OUT<=LIFTOR+1;RUN_WAIT<='0'&WAI_T;P0:PROCESS(CLKIN)ISBEGINIF(CLKIN'EVENTANDCLKIN='1')THENLAMP<=LADD(1);ENDIF;ENDPROCESSP0;HAND<=WAI_T(2)AND(NOTWAI_T(1))ANDWAI_T(0);CLOSEX<=CLOSEAND(NOTLADD(1));DELAYX<=DELAYAND(NOTLADD(1));
--分频及楼选信号产生进程P1:PROCESS(CLKIN)BEGINIF(CLKIN'EVENTANDCLKIN='1')THENDIVID<=NOTDIVID;IF(DIR="1111")THENDIR<="0000";ELSEDIR<=DIR+1;ENDIF;ENDIF;ENDPROCESS;--楼层请求存放器的置位与复位进程P2:PROCESS(UR,DR,UPIN,DOWNIN,ST_CH,LIFTOR,WAI_T,RUN_STOP,HAND)VARIABLENUM,T:INTEGERRANGE0TO15;BEGINNUM:=CONV_INTEGER(LIFTOR)+1;T:=CONV_INTEGER(DIR)+1;IF(RUN_STOP='1')THENIF(((T>NUM)AND(ST_CH='1'))OR(UPIN='1'))THENCASETISWHEN1=>UR(1)<='1';WHEN2=>UR(2)<='1';WHEN3=>UR(3)<='1';WHEN4=>UR(4)<='1';WHEN5=>UR(5)<='1';WHEN6=>UR(6)<='1';WHEN7=>UR(7)<='1';WHEN8=>UR(8)<='1';WHEN9=>UR(9)<='1';WHEN10=>UR(10)<='1';WHEN11=>UR(11)<='1';WHEN12=>UR(12)<='1';WHEN13=>UR(13)<='1';WHEN14=>UR(14)<='1';WHEN15=>UR(15)<='1';WHEN16=>UR(16)<='1';WHENOTHERS=>NULL;ENDCASE;ELSIF(HAND='1')THENCASENUMISWHEN1=>UR(1)<='0';WHEN2=>UR(2)<='0';WHEN3=>UR(3)<='0';WHEN4=>UR(4)<='0';WHEN5=>UR(5)<='0';WHEN6=>UR(6)<='0';WHEN7=>UR(7)<='0';WHEN8=>UR(8)<='0';WHEN9=>UR(9)<='0';WHEN10=>UR(10)<='0';WHEN11=>UR(11)<='0';WHEN12=>UR(12)<='0';WHEN13=>UR(13)<='0';WHEN14=>UR(14)<='0';WHEN15=>UR(15)<='0';WHEN16=>UR(16)<='0';WHENOTHERS=>NULL;ENDCASE;ENDIF;IF(((T<NUM)AND(ST_CH='1'))OR(DOWNIN='1'))THENCASETISWHEN1=>DR(1)<='1';WHEN2=>DR(2)<='1';WHEN3=>DR(3)<='1';WHEN4=>DR(4)<='1';WHEN5=>DR(5)<='1';WHEN6=>DR(6)<='1';WHEN7=>DR(7)<='1';WHEN8=>DR(8)<='1';WHEN9=>DR(9)<='1';WHEN10=>DR(10)<='1';WHEN11=>DR(11)<='1';WHEN12=>DR(12)<='1';WHEN13=>DR(13)<='1';WHEN14=>DR(14)<='1';WHEN15=>DR(15)<='1';WHEN16=>DR(16)<='1';WHENOTHERS=>NULL;ENDCASE;ELSIF(HAND='1')THENCASENUMISWHEN1=>DR(1)<='0';WHEN2=>DR(2)<='0';WHEN3=>DR(3)<='0';WHEN4=>DR(4)<='0';WHEN5=>DR(5)<='0';WHEN6=>DR(6)<='0';WHEN7=>DR(7)<='0';WHEN8=>DR(8)<='0';WHEN9=>DR(9)<='0';WHEN10=>DR(10)<='0';WHEN11=>DR(11)<='0';WHEN12=>DR(12)<='0';WHEN13=>DR(13)<='0';WHEN14=>DR(14)<='0';WHEN15=>DR(15)<='0';WHEN16=>DR(16)<='0';WHENOTHERS=>NULL;ENDCASE;
ENDIF;ELSEUR<="0000000000000000";DR<="0000000000000000";ENDIF;ENDPROCESS;
--电梯运行次态的控制进程P3:PROCESS(UR,DR,LIFTOR,LADD,WAI_T,RUN_STOP)BEGINIF(RUN_STOP='1')THENIF(WAI_T="110")THENIF((URORDR)="0000000000000000")THENLADD(1)<='0';--初始状态ELSECASELIFTORISWHEN"0000"=>IF((UR(1)ORDR(1))>'0')THENLADD(1)<='0';--等待状态ELSELADD<="11"; --上升状态ENDIF;WHEN"0001"=>IF((UR(2)ORDR(2))>'0')THENLADD(1)<='0';--等待状态ELSIF(((LADD(0)='1')AND((UR(16DOWNTO3)ORDR(16DOWNTO3))>"00000000000000"))OR((UR(1)ORDR(1))='0'))THENLADD<="11"; --上升状态ELSELADD<="10"; --下降状态ENDIF;WHEN"0010"=>IF((UR(3)ORDR(3))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO4)ORDR(16DOWNTO4))>"0000000000000"))OR((UR(2DOWNTO1)ORDR(2DOWNTO1))="00"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"0011"=>IF((UR(4)ORDR(4))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO5)ORDR(16DOWNTO5))>"000000000000"))OR((UR(3DOWNTO1)ORDR(3DOWNTO1))="000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"0100"=>IF((UR(5)ORDR(5))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO6)ORDR(16DOWNTO6))>"00000000000"))OR((UR(4DOWNTO1)ORDR(4DOWNTO1))="0000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"0101"=>IF((UR(6)ORDR(6))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO7)ORDR(16DOWNTO7))>"0000000000"))OR((UR(5DOWNTO1)ORDR(5DOWNTO1))="00000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"0110"=>IF((UR(7)ORDR(7))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO8)ORDR(16DOWNTO8))>"000000000"))OR((UR(6DOWNTO1)ORDR(6DOWNTO1))="000000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"0111"=>IF((UR(8)ORDR(8))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO9)ORDR(16DOWNTO9))>"00000000"))OR((UR(7DOWNTO1)ORDR(7DOWNTO1))="0000000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"1000"=>IF((UR(9)ORDR(9))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO10)ORDR(16DOWNTO10))>"0000000"))OR((UR(8DOWNTO1)ORDR(8DOWNTO1))="00000000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"1001"=>IF((UR(10)ORDR(10))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO11)ORDR(16DOWNTO11))>"000000"))OR((UR(9DOWNTO1)ORDR(9DOWNTO1))="000000000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"1010"=>IF((UR(11)ORDR(11))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO12)ORDR(16DOWNTO12))>"00000"))OR((UR(10DOWNTO1)ORDR(10DOWNTO1))="0000000000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"1011"=>IF((UR(12)ORDR(12))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO13)ORDR(16DOWNTO13))>"0000"))OR((UR(11DOWNTO1)ORDR(11DOWNTO1))="00000000000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"1100"=>IF((UR(13)ORDR(13))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO14)ORDR(16DOWNTO14))>"000"))OR((UR(12DOWNTO1)ORDR(12DOWNTO1))="000000000000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"1101"=>IF((UR(14)ORDR(14))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16DOWNTO15)ORDR(16DOWNTO15))>"00"))OR((UR(13DOWNTO1)ORDR(13DOWNTO1))="0000000000000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"1110"=>IF((UR(15)ORDR(15))>'0')THENLADD(1)<='0';ELSIF(((LADD(0)='1')AND((UR(16)ORDR(16))>'0'))OR((UR(14DOWNTO1)ORDR(14DOWNTO1))="00000000000000"))THENLADD<="11";ELSELADD<="10";ENDIF;WHEN"1111"=>IF((UR(16)ORDR(16))>'0')THENLADD(1)<='0';ELSELADD<="10";ENDIF;WHENOTHERS=>NULL;ENDCASE;ENDIF;ENDIF;ELSELADD<="00";ENDIF;ENDPROCESS;--电梯运行楼层计数及提前/延迟关门控制进程P4:PROCESS(WAI_T,LADD,CLOSEX,DELAYX,DIVID)BEGINIF(DIVID'EVENTANDDIVID='1')THENIF(WAI_T="000"ORCLOSEX='1')THENWAI_T<="110";ELSEIF(DELAYX='0')THENWAI_T<=WAI_T-1;ELSEWAI_T<="010";ENDIF;IF(LADD="11")THENLIFTOR<=LIFTOR+1;ELSIF(LADD="10")THENLIFTOR<=LIFTOR-1;ENDIF;ENDIF;ENDIF;ENDPROCESS;ENDARCHITECTUREART;9.4系统仿真/硬件验证9.4.1系统的有关仿真电梯控制器DTKZQ的仿真结果如图9.3所示。请读者自己对仿真结果进行分析。图9.3电梯控制器DTKZQ的仿真图9.4.2系统的硬件验证请读者根据自己所拥有的EDA实验开发系统的实际情况,直接或稍做变动进行硬件验证。9.5设计技巧分析有关的具体语句如下(详细请见前述的VHDL程序):NUM:=CONV_INTEGER(LIFTOR)+1;T:=CONV_INTEGER(DIR)+1;IF(RUN_STOP='1')THENIF(((T>NUM)AND(ST_CH='1'))OR(UPIN='1'))THENCASETISWHEN1=>UR(1)<='1';WHEN2=>UR(2)<='1';WHEN3=>UR(3)<='1';WHEN4=>UR(4)<='1';WHEN5=>UR(5)<='1';WHEN6=>UR(6)<='1';WHEN7=>UR(7)<='1';有关的具体语句如下(详细请见前述的VHDL程序):
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 智慧安防监控数字孪生平台创新创业项目商业计划书
- 房地产科技创新创业项目商业计划书
- 宠物梳子加工厂创新创业项目商业计划书
- 智慧教育硬件集成方案创新创业项目商业计划书
- 钢厂安全培训试题及答案解析
- 协议书需要手印
- 协议书收购是
- 水果土壤改良关联创新创业项目商业计划书
- 2025年眼科常见眼部疾病诊断学考试卷答案及解析
- 房屋分家协议书
- 2025年一卷政治高考真题及答案
- 安静与智慧主题班会课件
- 云南民族大学附属高级中学2026届高三上学期联考(一)生物试卷(含答案)
- 2025至2030年中国包月视频点播行业市场竞争格局分析及投资方向研究报告
- 皮带机安全知识培训
- 零星维修工程施工组织设计方案方案
- 2025年汽车驾驶员(技师)考试试题及答案(含答案)
- 2025大连国际机场招聘25人笔试历年参考题库附带答案详解
- 2025年浙江铁塔招聘笔试备考题库(带答案详解)
- 2025年上海市(秋季)高考语文真题详解
- 《秘书文档管理第三版》课件第七章
评论
0/150
提交评论