《EDA电梯控制器设计.docx》由会员分享,可在线阅读,更多相关《EDA电梯控制器设计.docx(32页珍藏版)》请在优知文库上搜索。
1、院面理工辔院EDA技术综合课程设计课程:EDA技术综合课程设计题目:电梯限制器所属院系:电气工程学院专业班级:自控1304班姓名:王军学号:92指导老师:张立众完成地点:陕西理工学院书目1 .设计任务22 .可选器材23 .设计框图24 .设计思路45 .引脚安排56WT清单97 .主控模块仿真168 .问题与改进179 .总结与感受1810 .参考文献19一 .设计任务1、设计一个三层的电梯限制器。2、用数码管显示电梯所在的楼层号,电梯初始化后状态在第层楼。3、每层电梯外都有上下楼恳求开关,电梯内部有到各楼层的恳求开关与紧急故障开关;用数码管显示上行或卜行状态,用发光二极管显示是否有紧急状况
2、。4、电梯每秒升(降)层,电梯到达有停站恳求的楼层后,经1秒电梯开门,开门指示灯亮,开门4秒后指示灯灭,关门,电梯接着运行。5、当电梯被锁定或发生紧急状况后,电梯停止运行,直到解除锁定或紧急故障后才可以从停止时的状态接着运行。6、当电梯处于上升状态时,只响应比电梯所在位置高的上楼恳求信号,直到最终一个上楼恳求执行完毕,再进入下降模式:同理,电梯处于下降状态时,只响应比电梯所在位置低的卜楼恳求信号,直到最终个卜楼恳求执行完毕,再进入上升模式。二 .可选器件1 .计算机组成/1SP试验箱一台(含电源)2 .电源线一根1;PGA/CP1.D下载板一块(或多块,可选)(其中下载版选择以下型号CyClo
3、neEP1C6Q240C8)3 .并行口下载电缆一根4 .电压表棒一付5 .试验指导书一份6 .配套集成电路芯片若干三.设计框图系统主要分为:主限制模块ContrO1,包含状态机,限制电梯的运行与状态转换:消抖模块UnShake,消退开关电路的抖动现象,确保逻辑的IE确性;显示模块display,内含译码功能,协作限制器显示电梯的工作状态。模块框图见图1,总体框图详见图2。图1各模块框图MflBMEM明吕吕豳B(IIIH图2系统总体框图四.设计思路1.对于电梯限制逻辑的实现,主要是限制模块control,故下面主要介绍限制模块ControI的设计思想。限制模块COntrOI有个进程kl,其中又
4、设置了个计数变量ent,范围为:2000000。计数变殳Cnl其实是起到分频器的作用,产生/一个IHZ的时钟,在Cnt计数2000000次的时间内(BPls),运行限制电梯升降、停留的程序,这些部分相当于以IHZ的时钟触发;而系统主频时钟2MHz作为触发时钟不断检测用户是否有恳求输入,或者电梯是否有异样状况。对于一、二、三层伯号,分别由flagl、flag2.flag3和CIear1、Clear2、Clear3两套标记为来限制输入恳求是否有效,是否应当对标记位清零。2.主要规则是:当一层(UPone、one)、二层(UPlWo、downtwo、two)或三层(downthree,three)的
5、输入信号有效时,相应标记位flagl、flag2,flag3StV,表明该层有恳求。当一层(upone.one)、二层(UPlWo、downtwotwo)或三层(downthree,three)的输入信号无效时,相应标记位Clear1、CIear2、Clear3置1,表明相应得到达楼层恳求已经在上一个时钟沿完成;同时对应的标记位flagl、flag2、flag3置T,表明相应楼层无恳求。UPdoWn信号值为tV时表明电梯处于上升状态,为0时处于卜.降状态。程序有两个信号表示电梯的状态:一是位置状态,二是运行状态.POSitiOn表明电梯的位置状态,是一个取值13的整数,分别表示电梯处于第一、二
6、、三层;State表示电梯的运行状态,使枚举数据类型,共10个值,分别是:-SlaIeS为电梯所处的各个状态-upl表示电梯正在从第1层上升-up2表示电梯正在从第2层上升-down1表示电梯正在向第1层下降-down2表示电梯正在向第2层下降一st。P表示电梯停止在某一层上-Ywl表示电梯开门的第一秒小2表示电梯开门的其次秒一dw3表示电梯开门的第三秒一dw4表示电梯开门的第四秒,推断电梯的下一个状态-dw5表示当电梯处于上升或下降状态时,假如没有相应的上升或下降恳求信号,则转入dw5状态,使其不再在上升或卜降状态停留,而响应其它信号程序利用CaSe语句实现这10个状态间的相互转移。五.引脚
7、安排详见下图HnCxy号SaM0/1烟*SwtM济S31BlFosaQ/JM01.*SO10/1攻SsGAlQFjUUOtssaau11otssa0/1UUIICoOelW$GM(VltWT81CxycVSSGAlCuujpzsafssoM0Iux11PD0tba,s5i0/icoSG10/1bg=flOilF0/1”QHSG1Om9Saal0/1UttrifOD9S010iurfo9S0M0u0E9SG1CyIUtfo9SG10/】u11oo*9SaMOil*0US9SGA1Cutro-10/1UlnOSSOA1iumpK)9SQ1OO9551QHUtflfOOU19SOA10/1U1.nP
8、o01W59SaAIBl-00011U2rpTOwa/叱sanOhNetiMdSGlo/】eSO1QJo5XDSOAVwrDWD问P9Q由2S(M1(V1Qpa,wyucq)SPOdSuoqjjRW3QIWn8NIdOnlMD26XIIIyn98NIds481IwnS8Nldn14a1U1bNldd11j91工脑ZBNIdz*jOst31eNIdtdm8P3-.6IWnS6NIdfc*0R!k6NId13刖。GTUjM6NId(O)UMOPhAC9UlAIXIZ-NIdAXe6W1U1Khfld0MjU*0p11111.1SEiiNIdIWiIISZNIdZIjJynBNIdKX1_1.PWP
9、IMS0/11*aoUoqwOlIllAlIl1.Al,uiIHAIUIynIlMlNIdNid,zhfle11-RId611-Md*一11fld91MdSn-MItT厂NIdE-Md长丁NldHmm81923s4Sh6ibl110SOC4n052jno6ilJino5.nojc41102076.XIOdI411F92SZ411而,iOZ状态流程图1、顶层流程图解2、以卜.是较详细的状态转化图*六.程序清单消抖模块(程序分两栏排版)1ibraryieee:useieee.std_logic_l164.al1;useieee.std_logic_unsigned.al1;useieee.std_
10、logic_arith.all;entityunshakeisport(elk:instd_logic;时钟,10HZ;key:instd_logic:开关信号;keyout:outstd_logic);一消抖之后的开关信号architectureaofunshakeissignalcp:std_logic;signaljsp:integerrange0to3:beginprocess(elk)beginif(clkeventandclk三,)thenifkey=1thenifjsp=3thenend:jsp=jsp:cp=,O;elsejsp=jsp+l;jsp=0:endif;endif;
11、ifjsp=lendif;thenkeyoul=cp:endprocess;cp=T;end:elseelseendif;显示模块(程序分两栏排版)libraryieee:useieee.std_logic_l164.al1;useieee.std_logic_unsigned.all;useieee.std_logic_arith.al1;entitydisplayisport(elk:instd_logic:light:inintegerrangeserout:outstd_logic_vector(6downto0);end;1to3;architectureaofdisplayissignaldisp:std_logic_vector(6downto0);beginprocess(elk)beginif(dk,eventandclk=)theniflight=1thendisp=*100111:主控模块libraryieee:useieee.stdlogic1164.all;useieee.std_logic_unsigned.all;us