自动升降电梯控制器设计.docx
- 文档编号:10162281
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:17
- 大小:1.07MB
自动升降电梯控制器设计.docx
《自动升降电梯控制器设计.docx》由会员分享,可在线阅读,更多相关《自动升降电梯控制器设计.docx(17页珍藏版)》请在冰豆网上搜索。
自动升降电梯控制器设计
目录
引言0
1.系统方案设计3
1.1设计要求3
1.2总体设计方案3
1.2.1控制方式方案3
1.2.2系统组成3
1.2.3电梯上下层运行流程图3
2.模块设计3
2.1外部数据采集模块设计4
2.2信号存储模块4
2.3基于FPGA的中央处理模块4
2.4信号的输出、显示模块4
3.程序设计与仿真5
3.1程序设计5
3.2程序仿真5
4.运行结果与分析10
5.结束语13
6.参考文献14
引言
随高层楼宇的增加,电梯越来越多的走进了人们的生活,对人们的生活的影响越来越大。
为了让电梯更好的服务人们,各种电梯新技术不断地发展起来。
随着人们生活水平的不断提高,经济的快速发展和生产生活的需要,城市高层建筑如雨后春笋拔地而起。
与此相应,作为一种可以垂直升降运输的工具一电梯也得到迅猛的发展。
现在,电梯已完全融入我们的生活、工作及学习中,人们越来越离不开它。
因此,它的安全可靠性、迅速准确性、舒适性,对人们来说都是非常重要的。
为了确保电梯正常运行、安全使用,一般电梯都有专业的维修管理人员。
他们必须对电梯原理、性能、特点、控制、运行要全面认识和掌握,才能做到对电梯的正确使用、管理及维护。
根据我国有关部门的规定,电梯作业属于特种作业,其作业人员必须经过专门培训,并经理论考试和实践考核合格后,发给《特种作业操作证》方可上岗操作。
同时,对电梯操作人员定期考核,让他们定期参加安全技术学习,扎扎实实地做好电梯维护和保养工作,才能使人们平安长久的使用电梯。
电梯控制系统是一个相当复杂的逻辑控制系统.系统要同时对几百个信号进行接收、处理。
由于用户对电梯功能的要求不断提高.其相应控制方式也在不断发生变化。
随着EDA技术的快速发展.基于FPGA的微机化控制已广泛应用于电梯电路设计与控制的各个方面。
在经济不断发展,科学技术日新月异的今天,楼的高度已和经济发展同样的速度成长起来。
作为建筑的中枢神经,电梯起着不可或缺的作用,电梯作为建筑物内的主要运输工具,像其他的交通工具一样,已经成为我们日常生活的一个不可缺少的组成部分。
一个国家的电梯需求总量,主要受其经济增长速度、城市化水平、人口密度及数量、国家产业结构等综合因素的影响。
在全球经济持续低迷的情况下,我国国民经济仍然以较高的速度持续增长,城市化水平不断提高。
这从客观上导致了我国电梯行业的空前繁荣景象,我国已经成为全球最大的电梯市场。
上世纪80年代以来,随着经济建设的持续高速发展,我国电梯需求量越来越大。
总趋势是上升的,电梯行业进入了“第三次浪潮”。
如此庞大的市场需求为我国电梯行业的发展创造了广阔的舞台!
1.系统方案设计
1.1设计要求
(1)每层电梯入口处设有上下请求开关,电梯内设有顾客到达层次的停站请求开关。
(2)设有电梯入口处位置指示装置及电梯运行模式(上升或下降)指示装置。
(3)电梯到达有停站请求的楼层,开门指示灯亮,开门后,经一段时延后,电梯门关闭电梯继续进行,直至执行完最后一个请求信号后停留在当前层。
(4)电梯运行规则:
当处于上升模式时,只响应比所在位置高的请求信号,由下而上逐个执行,直到最后一个上楼请求执行完毕;高层有下楼请求,则直接升到请求层,进入下降模式。
当电梯处于下降模式时则与上升模式相反。
1.2总体设计方案
1.2.1控制方式方案
内部请求优先控制方式类似于出租车的工作方式,先将车上的人送至目的地,再去载客。
作为通用型电梯应该服务于大多数人,必须考虑电梯内、外的响应率。
在内部请求优先控制的方式中,当电梯外部人的请求和电梯内部人的请求冲突时,外部人的信号可能被长时间忽略,因而他不能作为通用型电梯的设计方案。
2单向层层停控制方式方案
单向层层停控制方式等同于火车的运行方式,遇站即停止、开门。
这种方案的优点在于面面俱到,可以保证所有人的请求都能得到响应。
然而这样对电梯的效率产生消极影响:
不必要的等待消耗了大量时间,而电梯的运作与用户的请求无关,当无请求时电梯也照常跑空车,就浪费了大量的电能。
而对用户而言,此种控制方式的请求响应时间也不是很快。
因而不是理想的方案。
3方向优先控制方式方案
方向优先控制方案是指电梯运行到某一楼层时先考虑这一楼层是否有请求:
有,则停止;无,则继续前进。
停下后在启动时的步骤:
1考虑前方——上下方是否有请求:
有,则停止;无,则继续前进。
2检验后方是否有请求,有请求则转向运行,无请求则继续维持停止状态。
这种运作方式下,电梯对用户的请求响应率为100%,且响应时间较短。
如果每层楼都有请求,则这种控制方式的效率和上面的单层控制方式的效率一样。
然而,当不是每层楼都有请求时,方向优先控制方式的效率远远大于单向层层停等控制方式的效率。
而且,方向优先控制方式下,电梯在维持停止状态的时候可以进入省电模式,又能节省大量电能。
本设计选择方向优先控制方式。
1.2.2系统组成
电梯方向优先控制系统方框图如图所示。
图一电梯方向优先控制方式控制系统方框图
1.2.3电梯上下层运行流程图
图二电梯上升运动流程
电梯下降运动流程图跟上图相反,上升是从一楼开始上升二楼到六楼的任一楼层,而电梯下降却是从六楼开始,下降到五楼到一楼的任一楼层。
电梯上升,下降原理相同,步骤上也许有少许不同。
2模块设计
2.1外部数据采集模块设计
对于外部信号采集,处理要求电梯控制器:
1外部请求信号的实时,准确的采集;
2准确,实时的捕捉楼层到达信号;
3有效的防止楼层到达信号,外部请求信号的误判。
控制器采用FPGA作为系统控制的核心,系统频率的时钟频率是32.0000Hz,完全可以满足实时采集数据的要求。
由于电路中毛刺现象的存在,信号的纯净度降低,单个的毛刺往往被误作为系统转换的触发信号,严重影响电梯的正常工作。
可以采用多次检测的方法解决这个问题,对一个信号进行多次采样以保证信号的可信度。
外部请求信号的输入形式为按键输入,到达楼层信号来自光敏传感器,关门中断信号及超载信号则产生于压力传感器。
键盘、光敏外部输入接口电路未设计。
2.2信号存储模块
电梯控制器的请求输入信号有18个(电梯外有六个上升请求,六个下降请求的用户输入端口,电梯内有六个请求用户输入端口),由于对系统内,外请求没有设置优先级,各楼层的内,外请求信号被采集后可先进行运算,在存到存储器中。
电梯运行过程中,由于用户的请求信号的输入是离散的,而且系统对请求的响应也是离散的,因此请求信号的存储要求新的请求信号不能覆盖原来的请求信号,只有响应动作完成后才能清除存储器內对应的请求信号位。
对应某一楼层的请求信号的存储,清除电路如图所示。
图三请求信号操作电路图
2.3基于FPGA的中央处理模块
中央数据处理模块是系统的核心,通过对存储的数据(含请求、到达楼层等信号)进行比较,判断以驱动系统状态的流转。
电梯的工作过程中共有等待、上升、下降、开门、关门、停止、休眠、超载报警以及故障报警状态。
一般情况下,电梯工作起始点是第一层,起始状态是等待状态,启动条件是收到上升请求。
系统状态流程图如图所示。
注意:
图中,超载状态时电梯关门动作取消,同时发出警报,直到警报被消除;故障时电梯不执行关门动作,同时发出警报,直到警报被清除(看门狗信号有效条件是一层楼连续发生关门中断情况超过三次)。
本系统由请求信号启动,运行中每检测到一个到达楼层信号,就会将存储器的请求信号和楼层的状态信号进行比较,在参照原方向信号来决定是否停止、转向等动作。
图四系统状态流程图
2.4信号的输出、显示模块
本系统的输出信号有两种,一种是电机的升降控制信号(两位)和开门、关门控制信号;另一种是面向用户的提示信号(含楼层的显示,方向的显示,已经接受的请求显示等)。
电机的控制信号一般需要两位,本电机中电机工作状态有三种工作状态:
正转,反转和停止转动状态。
两位控制信号作为一个三路开路开关的选通信号,此三路开关选用模拟电子开关。
系统的显示输出包括数码管的楼层显示、数码管的请求信号显示和表征运动的方向的箭头形指示灯的开关信号。
本系统具有请求信号显示的功能,结合方向显示,可以减少用户对同一请求的输入次数,这样就延长了电梯按键的使用的寿命。
假如电梯处于向上的运动状态,初始位置是底层,初始请求是6楼,2楼时进入一个人,如果他的目的是6楼,就可以不用再按键。
同时,电梯外部的人也可以根据请求信号显示(上升请求、下降请求、无请求),就可以避免没必要的重复请求信号输入。
电梯使用时,系统结合相应的电梯使用规范完全可以满足人们的需要,而且效率比较高。
3.程序设计与仿真
3.1程序设计
libraryieee;
useieee.std_logic_1164.all;
useieee.std_logic_unsigned.all;
useieee.std_logic_arith.all;
entitydiantiis
port(clk:
instd_logic;--时钟信号
full,deng,quick,clr:
instd_logic;--超载,关门中断,提前关门,清除报警信号
c_u1,c_u2,c_u3,c_u4,c_u5:
instd_logic;--电梯外的人上升请求信号
c_d2,c_d3,c_d4,c_d5,c_d6:
instd_logic;--电梯外的人下降请求信号
d1,d2,d3,d4,d5,d6:
instd_logic;--电梯内的人请求信号
g1,g2,g3,g4,g5,g6:
instd_logic;--到达楼层的信号
door:
outstd_logic_vector(1downto0);--电梯门控制信号
led:
outstd_logic_vector(6downto0);--电梯所在楼层显示
led_c_u:
outstd_logic_vector(5downto0);--电梯外的人上升请求信号显示
led_c_d:
outstd_logic_vector(5downto0);--电梯外的人下降请求信号显示
led_d:
outstd_logic_vector(5downto0);--电梯内请求信号显示
wahaha:
outstd_logic;--看门狗报警系统
ud,alarm:
outstd_logic;--电梯运动方向显示,超载报警信号
up,down:
outstd_logic);--电梯控制信号和电梯运动
enddianti;
architecturebehavofdiantiis
signald11,d22,d33,d44,d55,d66:
std_logic;--电梯内请求信号寄存信号
signalc_u11,c_u22,c_u33,c_u44,c_u55:
std_logic;--电梯外上升请求寄存信号
signalc_d22,c_d33,c_d44,c_d55,c_d66:
std_logic;--电梯外下降请求寄存信号
signalq:
integerrange0to1;--分频信号
signalq1:
integerrange0to6;--关门延时计数器
signalq2:
integerrange0to9;--动方向寄存器
signaldd,cc_u,cc_d,dd_cc:
std_logic_vector(5downto0);
signalopendoor:
std_logic;
signalupdown:
std_logic;
signalen_up,en_dw:
std_logic;--预备上升,下降使能信号
begin
com:
process(clk)
begin
ifclk'eventandclk='1'then
ifclr='1'thenq1<=0;q2<=0;wahaha<='0';--清除报警
elsiffull='1'thenalarm<='1';q1<=0;--超载报警
ifq1>=3thendoor<="10";
elsedoor<="00";
endif;
elsifq=1thenq<=0;alarm<='0';
ifq2=3thenwahaha<='1';--故障报警
else
ifopendoor='1'thendoor<="10";q1<=0;q2<=0;up<='0';down<='0';
--开门操作
elsifen_up='1'then--上升预操作
ifdeng='1'thendoor<="10";q1<=0;q2<=q2+1;--关门中断
elsifquick='1'thenq1<=3;--提前关门
elsifq1=6thendoor<="00";updown<='1';up<='1';--电梯进入上升状态
elsifq1>=3thendoor<="01";q1<=q1+1;--电梯进入关门状态
elseq1<=q1+1;door<="00";--电梯进入等待状态
endif;
elsifen_dw='1'then--下降预操作
ifdeng='1'thendoor<="10";q1<=0;q2<=q2+1;
elsifquick='1'thenq1<=3;
elsifq1=6thendoor<="00";updown<='0';down<='1';
elsifq1>=3thendoor<="01";q1<=q1+1;
elseq1<=q1+1;door<="00";
endif;
endif;
ifg1='1'thenled<="1001111";--电梯到达一楼,显示一楼
ifd11='1'orc_u11<='1'thend11<='0';c_u11<='0';opendoor<='1';
--当前层请求,电梯进入开门状态
elsifdd_cc>"000001"thenen_up<='1';opendoor<='0';--有上升请求,电梯进入预备上升状态
elsifdd_cc="000000"thenopendoor<='0';--无请求,一楼待机
endif;
elsifg2='1'thenled<="0010010";--电梯到达二楼,显示2楼
ifupdown='1'then--电梯前一状态上升
ifd22='1'orc_u22='1'thend22<='0';c_u22<='0';opendoor<='1';
--当前层有请求,开门状态
elsifdd_cc>"000011"thenen_up<='1';opendoor<='0';--上升请求,预备上升
elsifdd_cc<"000010"thenen_dw<='1';opendoor<='0';--有下降请求,预备下降
endif;
elsifd22='1'orc_d22='1'thend22<='0';c_d22<='0';opendoor<='1';
--电梯前一运动状态下降
elsifdd_cc<"000010"thenen_dw<='1';opendoor<='0';--下降请求,预备下降
elsifdd_cc>"000011"thenen_up<='1';opendoor<='0';--上升请求,预备上升
endif;
elsifg3='1'thenled<="0000110";
ifupdown='1'then
ifd33='1'orc_u33='1'thend33<='0';c_u33<='0';opendoor<='1';
elsifdd_cc>"000111"thenen_up<='1';opendoor<='0';
elsifdd_cc<"000100"thenen_dw<='1';opendoor<='0';
endif;
elsifd33='1'orc_d33='1'thend33<='0';c_d33<='0';opendoor<='1';
elsifdd_cc<"000100"thenen_dw<='1';opendoor<='0';
elsifdd_cc>"000111"thenen_up<='1';opendoor<='0';
endif;
elsifg4='1'thenled<="1001100";
ifupdown<='1'then
ifd44='1'orc_u44='1'thend44<='0';c_u44<='0';opendoor<='1';
elsifdd_cc>"001111"thenen_up<='1';opendoor<='0';
elsifdd_cc<"001000"thenen_dw<='1';opendoor<='0';
endif;
elsifd44='1'orc_d44='1'thend44<='0';c_d44<='0';opendoor<='1';
elsifdd_cc<"001000"thenen_dw<='1';opendoor<='0';
elsifdd_cc>"001111"thenen_up<='1';opendoor<='0';
endif;
elsifg5='1'thenled<="0100100";
ifupdown<='1'then
ifd55='1'orc_u55='1'thend55<='0';c_u55<='0';opendoor<='1';
elsifdd_cc>"011111"thenen_up<='1';opendoor<='0';
elsifdd_cc<"010000"thenen_dw<='1';opendoor<='0';
endif;
elsifd55='1'orc_d55='1'thend55<='0';c_d55<='0';opendoor<='1';
elsifdd_cc<"010000"thenen_dw<='1';opendoor<='0';
elsifdd_cc>"011111"thenen_up<='1';opendoor<='0';
endif;
elsifg6='1'thenled<="0100000";
ifd66='1'orc_d66='1'thend66<='0';c_d66<='0';opendoor<='1';
elsifdd_cc<"100000"thenen_dw<='1';opendoor<='0';
endif;
elseen_up<='0';en_dw<='0';--电梯进入上升或下降状态
endif;
endif;
elseq<=1;alarm<='0';--清除报警信号
ifd1='1'thend11<=d1;--对电梯内的人请求信号检测和寄存
elsifd2='1'thend22<=d2;
elsifd3='1'thend33<=d3;
elsifd4='1'thend44<=d4;
elsifd5='1'thend55<=d5;
elsifd6='1'thend66<=d6;
endif;
ifc_u1='1'thenc_u11<=c_u1;--对电梯外的人上升请求检测寄存
elsifc_u2='1'thenc_u22<=c_u2;
elsifc_u3='1'thenc_u33<=c_u3;
elsifc_u4='1'thenc_u44<=c_u4;
elsifc_u5='1'thenc_u55<=c_u5;
endif;
ifc_d2='1'thenc_d22<=c_d2;--对电梯外的人下降信号检测寄存
elsifc_d3='1'thenc_d33<=c_d3;
elsifc_d4='1'thenc_d44<=c_d4;
elsifc_d5='1'thenc_d55<=c_d5;
elsifc_d6='1'thenc_d66<=c_d6;
endif;
dd<=d66&d55&d44&d33&d22&d11;--电梯内人请求信号并置
cc_u<='0'&c_u55&c_u44&c_u33&c_u22&c_u11;--电梯外上升信号并置
cc_d<=c_d66&c_d55&c_d44&c_d33&c_d22&'0';--电梯外下降信号并置
dd_cc<=ddorcc_uorcc_d;--内外信号综合
endif;
ud<=updown;--电梯运动状态显示
led_d<=dd;
led_c_u<=cc_u;--电梯外上升信号显示
led_c_d<=cc_d;--电梯外下降信号显示
endif;
endprocess;
endbehav;
3.2程序仿真
图五仿真结果图
(1)
图六仿真结果图
(2)
4.运行结果与分析
通过观察仿真图
(1)和仿真图
(2),当full(超载)为高电平时,alarm(报警信号)就会跟着变为高电平,这是报警信号就会报警。
这是clr为高点平后,就会清除警报。
电梯开始工作时,电梯在一楼,而在一楼有人要乘电梯上楼,cu_1变为高电平,等门开后,进入电梯,要去六楼,按下六楼后,等待门关好后,电梯上升,最后停在了六楼,楼层显示6;五楼有下降请求,到三楼,重复上述过程,电梯显示3;一楼上升请求,到五楼,电梯最后显示5;五楼有下降请求,到一楼,电梯最后显示一楼;一楼上升请求,到三楼,电梯最后显示3;三楼上升请求,到六楼,这是deng(延迟关门)变为高电平,会发现door(电梯门)被延迟关门,延迟结束后,电梯最后显示楼层6。
如果有人在电梯内部请求,在电梯在三楼是,内部有上升请求,到六楼,电梯最后到达六楼,显示楼层6.
当四楼,五楼同时有下降请求,都到达一楼,这是电梯先到五楼,再到一楼,最后到达一楼,楼层显示1.当五楼,六楼同时请求要下降到三楼,电梯先去六楼,再去五楼,最后到达三楼,楼层显示3。
这是五楼有下降请求,要下降到一楼,而这时full(超载)为高电平时,alarm(报警信号)就会跟着变为高电平,这是报警信号就会报警。
这种情况下电梯不会运动,电梯门保持打开。
楼层仍继续显示5。
这是只要clr变为高电平,清除报警,但报警信号alarm仍为高电平,而电梯也会继续运动,不过仍处于超载状态,比较危险。
5.结束语
本电梯系统实现了如下功能:
1.各层电梯内部信号:
各楼层请求按键。
外部信号:
上升下降请求按键,所在楼层显示,电梯运行状态显示。
2.能够存储请求信号,电梯上升(下降)过程中,根据电梯的运行状态,首先按方向优先、循环次序响应各请求。
3.电梯每秒升(降)一层楼。
电梯到达有停站请求的楼层,经过1秒电梯门打开,开门指示灯亮,开门4秒后,电梯门关闭(开门指示灯灭),电梯继续进行,直至执行完最后一个请求信号后停留在当前层。
电梯初始状态为一层关门状态。
综上所述,完成了
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自动 升降 电梯 控制器 设计