ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:186.25KB ,
资源ID:5534561      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5534561.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(EDA电梯控制器课程设计.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

EDA电梯控制器课程设计.docx

1、EDA电梯控制器课程设计EDA-电梯控制器课程设计摘要:电梯是机械电器紧密结合的大型机电产品主要由机房、井道、轿厢、门系统和电气控制系统组成。伴随建筑业的发展,为建筑内提供上下交通运输的电梯工业也在日新月异地发展着。电梯已不仅是一种生产环节中的重要设备,更是一种工作和生活中的必需设备,完全可以预想到,随着社会的发展,电梯产品在人们物质文化生活中的地位将和汽车一样,成为重要的运输设备之一。 关键字:电梯控制器,CPLD,VHDL状态机 ,EDA。1.2 电梯的发展方向众所周知,电梯是一种耗能很大的产品,随着国家“节能减排”政策的普及,电梯行业已经纷纷行动起来,生产绿色环保的产品是时代的要求。除了

2、驱动系统方面是个很重要的环节,控制系统跟环保也是密切相联的。在欧洲已经有这方面的认识,对控制系统也提出了很多要求,如对电阻波、电子板等的标准更严格。中国作为全球电梯市场的一个重要部分,也会得到慢慢规范和完善。假如2015年在我国所有使用的电梯中如果有80%采用节能电梯,将节电800亿千瓦时,几乎等于三峡大坝一年的发电量。在政府采购中对节能性能予以优先考虑。目前国内的电梯销售有接近一半的数量在政府采购领域或跟政府采购有关,因此政府采购对节能电梯的倾向性可以有效扶持节能电梯产业。由于节能电梯产量不大,市场价格偏高,政府在初期可将其作为环保项目给予政策倾斜,或者对采用节能电梯的开发商以政策鼓。节能电

3、梯技术应与其他技术相结合。与节能相比,使用者目前更为看重的还是电梯的安全性能。传统电梯安全部件正在改用双向安全系统,电梯使用的安全技术也在不断扩大。将节能技术和其他安全技术相结合有利于提升产品品质,更容易进入采购商的视野。2 基于EDA技术的四层电梯控制器设计2.1 系统控制要求2.1.1 四层电梯控制器的功能四层电梯控制器的功能如下: (1) 每层电梯入口处设有上下请求开关,电梯内设有顾客到达层次的停站请求开关。 (2)设有电梯入口处位置指示装置及电梯运行模式(上升或下降)指示装置。(3)电梯每秒上升(下降)一层楼。(4)电梯到达有停站请求的楼层,经过1秒电梯门打开,开门指示灯亮,开门4秒后

4、,电梯门关闭(开门指示灯灭),电梯继续进行,直至执行完最后一个请求信号停留在当前层。(5)能记忆电梯内外所有请求,并按照电梯运行规则按顺序响应,每个请求信号保留至执行后消除。(6)电梯运行规则当电梯处于上升模式时,只响应比电梯所在位置的上楼请求信号,由下而上逐个执行,直到最后一个上楼请求执行完毕;如果高层有下楼请求,则直接升到由下楼请求的最高楼层,然后进入下降模式。当电梯处于下降模式则与上升模式相反。(7)电梯初始状态为一层开门状态2.1.2 控制方案的制定通过一个统一的1秒为周期的时钟来触发状态机。根据电梯的实际工作情况,可以把状态机设置10个状态,分别是“电梯停留在1层”、“开门”、“关门

5、”、“开门等待第1秒”、“开门等待第二秒”、“开门等待第三秒”、“开门等待第四秒”、“上升”、“下降”和“停止”状态。各个状态之间的转换条件可由上面的设计要求所决定。2.1.3 控制方案的实现(1)四层电梯控制系统的实体实际:首先考虑输入端口,一个异步复位端口reset,用于在系统不正常时回到初始状态;在电梯外部,必须有升降请求端口,一层最低,不需要下降请求,四层是最高层。不需要有上升请求,二层与三层则上升,下降请求端口都有;在电梯内部,应该设有各层停留的请求端口;一个电梯时钟输入端口,该输入时钟以1秒为周期,用于驱动电梯的升降及开门关门等动作;另有一个是按键时钟输入端口,时钟频率比电梯时钟高

6、。其次是输出端口,有升降请求信号,就得有一个输出端口来指示请求是否被响应,有请求信号以后,该输出端口输出逻辑1,被响应以后则恢复逻辑0;同样,在电梯内部也应该有这样的输出端口来显示各层停留是否被响应;在电梯外部,需要一个端口来指示电梯现在所处的位置;电梯开门关门的状态也能用一个输出端口来指示;为了观察电梯的运行是否正确,可以设置一个输出端口来指示电梯的升降状态。在端口的定义中定义position时选用的是整型数据类型(INTEGRER),主要是为了在电梯运行是便于观察。整型直接可以看出电梯运行是楼层的变化,在第一层就显示1,第二层就显示2,很直观。当然,position的定义也可以用标准逻辑矢

7、量(STD_LOGIC_VECTOR)来定义,但是如果选用标准逻辑矢量,在电梯运行时就不是那么好观察。这里是四层的电梯控制器,那么只需定义一个两位的就足够显示了。”00”的时候对应电梯的第一层,”11”的时候就对应第四层。但是”11”的十进制值为3,没有和层次显示的第四层想对应起,所以就放弃选用标准逻辑矢量来定义position,而选用的整型。(2) 四层电梯控制系统的结构体设计首先说明一下状态。状态机设置了10个状态,分别是电梯停留在1层(stopon1)、开门(dooropen)、关门(doorclose)、开门等待第1秒(doorwait1)、开门等待第2秒(doorwait2)、开门等

8、待第3秒(doorwait3)、开门等待第4秒(doorwait4)、上升(up)、下降(down)和停止(stop)。在实体说明中定义完端口之后,在结构体个之间需要有如下的定义语句,来定义状态机。TYPE lift_state IS(stopon1,dooropen,doorclose,doorwait1,doorwait2,doorwait3,doorwait4,up,down,stop) -电梯的10个状态SIGNAL mylift:lift_state; -定义为lift类型的信号mylift在结构体中,设计了两个进程互相配合,一个状态机进程作为主要进程,另外一个是信号灯控制进程作为辅

9、助进程。状态机进程中的很多判断条件是以信号灯进程产生的信号灯信号为依据的,而信号灯进程中信号灯的熄灭又是有状态机进程中传出clearup和cleardn信号来控制。在状态机进程中,在电梯上升状态中,通过对信号灯的判断,决定下一个状态是继续上升还是停止;在电梯下降状态中,也是通过对信号灯的判断,决定下一个状态是继续下降还是是停止;在电梯停止状态中,判断是最复杂的,通过对信号的判断,决定电梯是上升、下降还是停止。在信号灯控制进程中,由于使用了专门的频率较高的按键时钟,所以使得按键的灵敏度增大,但是时钟频率不能过高,否则容易使按键过于灵敏。按键后产生的点亮的信号灯(逻辑值为1)用于作为状态机进程中的

10、判断条件,而clearup和cleardn信号为逻辑1使得相应的信号灯熄灭。(3)四层电梯控制系统的设计输入输出端口定义表Buttonclk按键时钟Liftclk电梯时钟Reset异步复位信号f1upbutton第一层上升请求f2upbutton第二层上升请求f3upbutton第三层上升请求f2dnbutton第二层下降请求f3dnbutton第三层下降请求f4dnbutton第四层下降请求Fuplight上升指示灯(1 到4)Fdnlight下降指示灯(1 到4)stop1button第一层到站请求stop2button第二层到站请求stop3button第三层到站请求stop4butto

11、n第四层到站请求Stoplight停止指示灯(1 到4)Position电梯位置(1 到4)Doorlight门灯Udsig电梯模式表2-1输入输出端口定义表Table 2-1 input and output port definition table源程序见附录3 系统仿真图 3-1 系统仿真Figure 3-1 system simulation图3-1描述的是系统的仿真波形。电梯初始状态是停在一楼,电梯门打开,当有人操作是会先关闭然后升到相应楼层,门打开。因为不可以自行关门,所以,停留四秒之后自动关闭电梯门。人在电梯内部按相应楼层,电梯到达相应楼层后门打开。并且在相应楼层等待。4 结束

12、语由于CPLD具有性能稳定、抗干扰能力强、设计配置灵活等特点,配合VHDL语言的突出的优点,因此在工业控制方面得到了广泛应用。相信以后必将受到世界范围内电子工程设计人员人员的广泛关注和普遍欢迎。本文中设计的电梯控制器利用以CPLD为实现载体,以VHDL为描述语言实现了电梯的升降舒适感和运行的可靠性,更相信在以后的智能建筑中得到广泛的应用和推广。参考文献1潘松,黄继业 EDA技术实用教程北京:科学出版社,2002. 2徐志军,徐光辉编著 CPLD/FPGA的开发与应用 ,电子工业出版社,2005.附录:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IE

13、EE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY dianti IS PORT(buttonclk:IN STD_LOGIC; liftclk:IN STD_LOGIC; reset:IN STD_LOGIC; f1upbutton:IN STD_LOGIC; f2upbutton:IN STD_LOGIC; f2dnbutton:IN STD_LOGIC; f3upbutton:IN STD_LOGIC; f3dnbutton:IN STD_LOGIC; f4dnbutton:IN STD_LOGIC; fupligh

14、t:BUFFER STD_LOGIC_VECTOR(4 DOWNTO 1); fdnlight:BUFFER STD_LOGIC_VECTOR(4 DOWNTO 1); stop1button,stop2button,stop3button,stop4button:IN STD_LOGIC; stoplight:BUFFER STD_LOGIC_VECTOR(4 DOWNTO 1); position:BUFFER INTEGER RANGE 1 TO 4; doorlight:OUT STD_LOGIC; udsig:BUFFER STD_LOGIC);END dianti;ARCHITEC

15、TURE art OF dianti ISTYPE lift_stata IS(stopon1,dooropen,doorclose,doorwait1,doorwait2,doorwait3,doorwait4,up,down,stop);SIGNAL mylift:lift_stata;SIGNAL clearup:STD_LOGIC;SIGNAL cleardn:STD_LOGIC;BEGINctrlift:PROCESS(reset,liftclk)VARIABLE pos:INTEGER RANGE 4 DOWNTO 1;BEGINIF reset=1 THEN mylift=sto

16、pon1; clearup=0; cleardndoorlight=1; position=1;pos:=1; myliftmyliftclearup=0; cleardn=0; myliftmyliftmyliftdoorlight=0; IF udsig=0 THEN IF position=4 THEN IF stoplight=0000AND fuplight=0000 AND fdnlight=0000 THEN udsig=1; mylift=doorclose; ELSE udsig=1;mylift=down;clearup=1; END IF; ELSIF position=

17、3 THEN IF stoplight=0000 AND fuplight=0000 and fdnlight=0000 THEN udsig=0; mylift=doorclose; ELSIF stoplight(4)=1 OR fdnlight(4)=1 THEN udsig=0; mylift=up;clearup=1; ELSE udsig=1;mylift=down;clearup=1; END IF; ELSIF position=2 THEN IF stoplight=0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=0;m

18、ylift=doorclose; ELSIF (stoplight(3)=1 OR fuplight(3)=1) THEN udsig=0;mylift=up;clearup=1; ELSIF (stoplight(4)=1 OR fdnlight(4)=1) THEN udsig=0;mylift=up;clearup=1; ELSIF (fdnlight(3)=1) THEN udsig=0;mylift=up;clearup=1; ELSE udsig=1;mylift=down;clearup=1; END IF; ELSIF position=1 THEN IF stoplight=

19、0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=0;mylift=doorclose; ELSE udsig=0;mylift=up;clearup=1; END IF; END IF; ELSIF udsig=1 THEN IF position=1 THEN IF stoplight=0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=0; mylift=doorclose; ELSE udsig=0;mylift=up;cleardn=1; END IF; ELSIF positi

20、on=2 THEN IF stoplight=0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=1;mylift=doorclose; ELSIF stoplight(1)=1 OR fuplight(1)=1 THEN udsig=1; mylift=down;cleardn=1; ELSE udsig=0;mylift=up;clearup=1; END IF; ELSIF position=3 THEN IF stoplight=0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=1

21、;mylift=doorclose; ELSIF (stoplight(2)=1 OR fdnlight(2)=1) THEN udsig=1;mylift=down;cleardn=1; ELSIF (stoplight(1)=1 OR fuplight(1)=1) THEN udsig=1;mylift=down;cleardn=1; ELSIF (fuplight(2)=1) THEN udsig=1;mylift=down;cleardn=1; ELSE udsig=0;mylift=up;clearup=1; END IF; ELSIF position=4 THEN IF stop

22、light=0000 AND fuplight=0000 AND fdnlight=0000 THEN udsig=1;mylift=doorclose; ELSE udsig=1;mylift=down;cleardnposition=position+1; pos:=pos+1; IF pos4 AND(stoplight(pos)=1 OR fdnlight(pos)=1) THEN mylift=stop; ELSIF pos=4 AND (stoplight(pos)=1 OR fdnlight(pos)=1) THEN mylift=stop; ELSE myliftpositio

23、n1 AND(stoplight(pos)=1 OR fuplight(pos)=1) THEN mylift=stop; ELSIF pos=1 AND (stoplight(pos)=1 OR fdnlight(pos)=1) THEN mylift=stop; ELSE myliftmyliftdoorlight=1; IF udsig=0 THEN IF position=3 AND(stoplight(position)=1 OR fuplight(position)=1)THEN clearup=1; ELSE clearup=1;cleardn=2 AND(stoplight(p

24、osition)=1 OR fdnlight(position)=1)THEN cleardn=1; ELSE clearup=1;cleardn=1; END IF; END IF; mylift=doorwait1; END CASE; END IF; END IF;END process ctrlift;ctrlight:PROCESS(reset,buttonclk)BEGINIF reset=1 THEN stoplight=0000;fuplight=0000;fdnlight=0000;ELSE IF buttonclkEVENT AND buttonclk=1 THEN IF

25、clearup=1 THEN stoplight(position)=0;fuplight(position)=0; ELSE IF f1upbutton=1 THEN fuplight(1)=1; ELSIF f2upbutton=1 THEN fuplight(2)=1; ELSIF f3upbutton=1 THEN fuplight(3)=1; END IF; END IF; IF cleardn=1 THEN stoplight(position)=0;fdnlight(position)=0; ELSE IF f2dnbutton=1 THEN fdnlight(2)=1; ELS

26、IF f3dnbutton=1 THEN fdnlight(3)=1; ELSIF f4dnbutton=1 THEN fdnlight(4)=1; END IF; END IF; IF stop1button=1 THEN stoplight(1)=1; ELSIF stop2button=1 THEN stoplight(2)=1; ELSIF stop3button=1 THEN stoplight(3)=1; ELSIF stop4button=1 THEN stoplight(4)=1; END IF; END IF;END IF;END process ctrlight;END art;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1