当前位置:文档之家› 基于EDA技术的四层电梯控制系统的设计.doc

基于EDA技术的四层电梯控制系统的设计.doc

河南工程学院毕业设计(论文)基于EDA技术的四层电梯控制系统的设计

学生姓名

系(部)电气信息工程系

专业计算机控制技术

指导教师

2010年5月23日

毕业设计(论文)任务书

河南工程学院毕业(设计)论文中期进展情况检查表系部:电气信息工程系检查日期2010 年 5 月20 号

附表三

毕业设计(论文)的评价意见

电梯是机械电器紧密结合的大型机电产品.主要由机房、井道、轿厢、门系统和电气控制系统组成。伴随建筑业的发展,为建筑内提供上下交通运输的电梯工业也在日新月异地发展着。电梯已不仅是一种生产环节中的重要设备,更是一种工作和生活中的必需设备,完全可以预想到,随着社会的发展,电梯产品在人们物质文化生活中的地位将和汽车一样,成为重要的运输设备之一。

关键字:电梯控制器,CPLD,VHDL状态机,EDA。

The elevator is the mechanical electric appliance close union large-scale mechanical and electrical products. Mainly of engine room, well road, sedan theater box, gate system and electric control system composition. Follows the architecture industry the development, provides the high and low transportation for the construction in the elevator industry also innovatingly to develop. The elevator already was not only in one kind of production link's important equipment, was in one kind of work and the life essential equipment, definitely might expect that along with society's development, the elevator product's will be the same in people material culture life status with the automobile, becomes one of important transport vehicles.

Key words: elevator controller,CPLD,VHDL,EDA。

目录

第一章绪论 (4)

第一节电梯控制系统的发展史 (4)

第二节电梯的发展方向 (5)

第二章基于EDA技术的四层电梯控制系统设计 (6)

第一节:系统控制要求 (6)

第二节:控制方案的制定 (6)

第三节:控制方案的实现 (6)

第三章系统仿真 (10)

第四章结束语 (13)

附录 (14)

参考文献 (22)

谢辞 (23)

第一章绪论

第一节电梯控制系统的发展史

从1889年出现第一台名副其实的电梯后,电梯控制技术经历了四次大的发展。

1)继电器控制阶段。在计算机技术还没有广泛应用于工业控制领域时,继电器一直充当着工业控制中的核心部件,电梯控制系统领域也不例外。上世纪八十年代以前,继电器控制一直是我国电梯控制系统的全部。到了八十年代,继电器控制仍然是电梯控制系统中的主导技术。

(2)PLC控制阶段。PLC实际上是一种通用的工业控制技术,在进入电梯控制系统以前,已被广泛应用于其他各种工业控制领域。在我国,从上世纪八十年代末开始,PLC逐渐被各电梯厂家成功应用到电梯控制系统中。九十年代,国内自己开发、设计的电梯控制系统中,PLC系统占绝对主导地位。

(3)微机控制系统。实际上,在发达国家的著名电梯生产厂家中,如奥的斯、三菱等,它们根本就没有用过PLC作为电梯控制系统。早在上世纪七十年代末期或八十年代初,专用的微机电梯控制系统已经投入市场。早期中国国内生产的专用微机电梯控制系统,基本上都是从国外引进技术的产品。直到上世纪九十年代中期起,才逐渐有国内自行开发设计的比较成功的专用微机电梯控制系统产品投入市场。

(4)采用串行通信技术的新型电梯专用微机控制系统。早期的微机控制系统和PLC控制系统一样,对外围所有开关和按钮信号的输入及点灯信号的输出都是通过一对一方式实现的,这样带来的问题是系统接线很多,对生产、安装和维修保养都带来很大的不便。因此,电梯控制系统的设计者们开始追求串行传送的方式。到了上世纪九十年代,随着计算机串行通信技术的不断发展,该技术也被应用到了电梯控制系统中。采用此技术的电梯专用微机控制系统中,除主控制器外,在操纵箱中、每个召唤盒内都装有CPU板,它们与主控制器之间通过串行通信传送大量信号。这样,使各部件之间既能传递比过去更多的信息,以完成更丰富、更先进的操作功能,又大大减少了系统的接线。

第二节电梯的发展方向

众所周知,电梯是一种耗能很大的产品,随着国家“节能减排”政策的普及,电梯行业已经纷纷行动起来,生产绿色环保的产品是时代的要求。除了驱动系统方面是个很重要的环节,控制系统跟环保也是密切相联的。在欧洲已经有这方面的认识,对控制系统也提出了很多要

求,如对电阻波、电子板等的标准更严格。中国作为全球电梯市场的一个重要部分,也会得到慢慢规范和完善。假如2015年在我国所有使用的电梯中如果有80%采用节能电梯,将节电800亿千瓦时,几乎等于三峡大坝一年的发电量。

在政府采购中对节能性能予以优先考虑。目前国内的电梯销售有接近一半的数量在政府采购领域或跟政府采购有关,因此政府采购对节能电梯的倾向性可以有效扶持节能电梯产业。由于节能电梯产量不大,市场价格偏高,政府在初期可将其作为环保项目给予政策倾斜,或者对采用节能电梯的开发商以政策鼓。

节能电梯技术应与其他技术相结合。与节能相比,使用者目前更为看重的还是电梯的安全性能。传统电梯安全部件正在改用双向安全系统,电梯使用的安全技术也在不断扩大。将节能技术和其他安全技术相结合有利于提升产品品质,更容易进入采购商的视野。

第二章基于EDA技术的四层电梯控制器设计

第一节系统控制要求

1、四层电梯控制器的功能

四层电梯控制器的功能如下:

(1) 每层电梯入口处设有上下请求开关,电梯内设有顾客到达层次的停站请求开关。

(2)设有电梯入口处位置指示装置及电梯运行模式(上升或下降)指示装置。

(3)电梯每秒上升(下降)一层楼。

(4)电梯到达有停站请求的楼层,经过1秒电梯门打开,开门指示灯亮,开门4秒后,电梯门关闭(开门指示灯灭),电梯继续进行,直至执行完最后一个请求信号停留在当前层。

(5)能记忆电梯内外所有请求,并按照电梯运行规则按顺序响应,每个请求信号保留至执行后消除。

(6)电梯运行规则—当电梯处于上升模式时,只响应比电梯所在位置的上楼请求信号,由下而上逐个执行,直到最后一个上楼请求执行完毕;如果高层有下楼请求,则直接升到由下楼请求的最高楼层,然后进入下降模式。当电梯处于下降模式则与上升模式相反。

(7)电梯初始状态为一层开门状态

第二节:控制方案的制定

通过一个统一的1秒为周期的时钟来触发状态机。根据电梯的实际工作情况,可以把状态机设置10个状态,分别是“电梯停留在1层”、“开门”、“关门”、“开门等待第1秒”、“开门等待第二秒”、“开门等待第三秒”、“开门等待第四秒”、“上升”、“下降”和“停止”状态。各个状态之间的转换条件可由上面的设计要求所决定。

第三节:控制方案的实现

(1)四层电梯控制系统的实体实际:

首先考虑输入端口,一个异步复位端口reset,用于在系统不正常时回到初始状态;在电梯外部,必须有升降请求端口,一层最低,不需要下降请求,四层是最高层。不需要有上升请求,二层与三层则上升,下降请求端口都有;在电梯内部,应该设有各层停留的请求端口;一个电梯时钟输入端口,该输入时钟以1秒为周期,用于驱动电梯的升降及开门关门等动作;另有一个是按键时钟输入端口,时钟频率比电梯时钟高。

其次是输出端口,有升降请求信号,就得有一个输出端口来指示请求是否被响应,有请

求信号以后,该输出端口输出逻辑’1’,被响应以后则恢复逻辑’0’;同样,在电梯内部也应该有这样的输出端口来显示各层停留是否被响应;在电梯外部,需要一个端口来指示电梯现在所处的位置;电梯开门关门的状态也能用一个输出端口来指示;为了观察电梯的运行是否正确,可以设置一个输出端口来指示电梯的升降状态。

在端口的定义中定义position时选用的是整型数据类型(INTEGRER),主要是为了在电梯运行是便于观察。整型直接可以看出电梯运行是楼层的变化,在第一层就显示1,第二层就显示2,很直观。当然,position的定义也可以用标准逻辑矢量(STD_LOGIC_VECTOR)来定义,但是如果选用标准逻辑矢量,在电梯运行时就不是那么好观察。这里是四层的电梯控制器,那么只需定义一个两位的就足够显示了。”00”的时候对应电梯的第一层,”11”的时候就对应第四层。但是”11”的十进制值为3,没有和层次显示的第四层想对应起,所以就放弃选用标准逻辑矢量来定义position,而选用的整型。

(2)四层电梯控制系统的结构体设计

首先说明一下状态。状态机设置了10个状态,分别是电梯停留在1层(stopon1)、开门(dooropen)、关门(doorclose)、开门等待第1秒(doorwait1)、开门等待第2秒(doorwait2)、开门等待第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

在结构体中,设计了两个进程互相配合,一个状态机进程作为主要进程,另外一个是信号灯控制进程作为辅助进程。状态机进程中的很多判断条件是以信号灯进程产生的信号灯信号为依据的,而信号灯进程中信号灯的熄灭又是有状态机进程中传出clearup和cleardn信号来控制。

在状态机进程中,在电梯上升状态中,通过对信号灯的判断,决定下一个状态是继续上升还是停止;在电梯下降状态中,也是通过对信号灯的判断,决定下一个状态是继续下降还是是停止;在电梯停止状态中,判断是最复杂的,通过对信号的判断,决定电梯是上升、下降还是停止。

在信号灯控制进程中,由于使用了专门的频率较高的按键时钟,所以使得按键的灵敏度增大,但是时钟频率不能过高,否则容易使按键过于灵敏。按键后产生的点亮的信号灯(逻辑值为’1’)用于作为状态机进程中的判断条件,而clearup和cleardn信号为逻辑’1’使得相应的信号灯熄灭。

(1)四层电梯控制系统的设计

输入输出端口定义表

表2-1 源程序见附录

第三章系统仿真

第一节系统仿真

图3-1是有下降请求的情况,因为电梯的初始状态为一层的开门等待状态,所以在第四层有下降请求的时候,电梯先是上升到第四层,开门4秒以后关门,然后下降,停站请求为第一层,所以到第一层的时候开门4秒后关门,停在第一层,等待下次请求。我们观察fdnlight 的变化显示的是8,转换为二进制就是“1000”,正好是第四层的下降指示灯亮,在电梯到第四层响应了下降请求后,下降指示灯就关闭,显示的就是“0”。在看电梯位置的变化,“1—2—3—4—3—2—1”没有乱序,说明显示是正确的。

图3-1

图3-2是有下降请求的情况,显示是正确的,没有混乱的现象。

同时有上升请求和下降请求信号时,电梯的运行情况如图

图3-2

图3-3

图仿真的情况是,原来电梯停留在第一层,这时候电梯外部第四层有下降请求,在电梯上升到四层,乘客进入电梯以后要下降到第一层。与此同时,在电梯外有第二层的上升请求,

电梯首先要响应下降请求然后在相应这个上升请求,所以电梯得先下降到一层,然后在上升

到第二层,这是符合常理的。

从仿真波形来看,电梯的位置变化和想象是一致的。电梯的运行完全正确。最后乘客在电梯内部要求下降升到第一层,所以电梯最后停留的位置为第一层。

在图的仿真中,原先电梯停留在第一层,电梯外部有第四层的下降请求,电梯上升到第四层,乘客进入电梯以后要求下降到第一层。此时二层有下降请求,接着又有上升请求,电梯首先在第二层停留,然后下降到第一层。随后要响应第二层的上升请求,上升到第二层,乘客进入电梯以后要求上升到第三层,所以电梯最后停留的位置是第三层。

图3-4

第四章结束语

由于CPLD具有性能稳定、抗干扰能力强、设计配置灵活等特点,配合VHDL语言的突出的优点,因此在工业控制方面得到了广泛应用。相信以后必将受到世界范围内电子工程设计人员人员的广泛关注和普遍欢迎。本文中设计的电梯控制器利用以CPLD为实现载体,以VHDL为描述语言实现了电梯的升降舒适感和运行的可靠性,更相信在以后的智能建筑中得到广泛的应用和推广。

附录:

1、四层电梯控制系统的VHDL描述源程序:

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

USE IEEE.STD_LOGIC_ARITH.ALL;

ENTITY fourfilft 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;

fuplight: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 fourfilft;

ARCHITECTURE art OF fourfilft IS

TYPE 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;

BEGIN

ctrlift:PROCESS(reset,liftclk)

V ARIABLE pos:INTEGER RANGE 4 DOWNTO 1;

BEGIN

IF reset='1' THEN

mylift<=stopon1;

clearup<='0';

cleardn<='0';

ELSE

IF liftclk'EVENT AND liftclk='1' THEN

CASE mylift IS

WHEN stopon1=>doorlight<='1';

position<=1;pos:=1;

mylift<=doorwait1;

WHEN doorwait1=>mylift<=doorwait2;

WHEN doorwait2=>clearup<='0';

cleardn<='0';

mylift<=doorwait3;

WHEN doorwait3=>mylift<=doorwait4;

WHEN doorwait4=>mylift<=doorclose;

WHEN doorclose=>doorlight<='0';

IF udsig='0' THEN

IF position=4 THEN

IF

stoplight="0000"AND fuplight="0000" AND fdnlight="0000" THEN

udsig<='1';

mylift<=doorclose;

ELSE udsig<='1';mylift<=down;clearup<='1';

END IF;

ELSIF position=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';mylift<=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';

相关主题
文本预览
相关文档 最新文档