自动电梯控制系统Word文件下载.docx
《自动电梯控制系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《自动电梯控制系统Word文件下载.docx(56页珍藏版)》请在冰豆网上搜索。
步进电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%)的特点,广泛应用于各种开环控制。
反应式步进电动机的转子是由软磁材料制成的,定子上有多相励磁绕组,利用磁导的变化产生转矩。
转子中没有绕组。
它的结构简单,成本低,步距角可以做得很小,由于反应式步进电动机的性能价格比比较高,因此这种步进电动机应用得非常广泛,在单片机系统中尤其大量使用。
反应式步进电机的一些基本参数:
1、电机固有步距角:
它表示控制系统每发一个步进脉冲信号,电机所转动的角度。
电机出厂时给出了一个步距角的值,如:
步进电机步距角的值为0.9°
/1.8°
(表示半步工作时为0.9°
、整步工作时为1.8°
),这个步距角可以称之为‘电机固有步距角’,它不一定是电机实际工作时的真正步距角,真正的步距角和驱动器有关。
2、步进电机的相数:
是指电机内部的线圈组数,目前常用的有二相、三相、四相、五相步进电机。
电机相数不同,其步距角也不同,一般四相电机的步距角为0.9°
。
3、额定相电压、相电流:
表示步进电机工作时的参考电压、电流,其中电流会随着转速,带动的重量产生变化。
供电电源电流一般根据驱动器的输出相电流I来确定。
线性电源一般可取I的1.1—1.3倍;
采用开关电源,电源电流一般可取I的1.5—2.0倍。
4、保持转矩(HOLDINGTORQUE):
是指步进电机通电但没有转动时,定子锁住转子的力矩。
它是步进电机最重要的参数之一,通常步进电机在低速时的力矩接近保持转矩。
由于步进电机的输出力矩随速度的增大而不断衰减,输出功率也随速度的增大而变化,所以保持转矩就成为了衡量步进电机最重要的参数之一。
1、工作方式:
双四拍工作方式:
“双”是指每次对两相同时通电,“四”是指磁场旋转一周需要换相4次,在双四拍工作方式中,步进电动机正转的通电顺序为:
AB—BC—CD—DA;
反转的通电顺序为:
BA—AD—DC—CB
图2-2双四拍工作方式时的相电压波形图
2.3步进电机驱动控制系统:
典型的步进电机驱动控制系统主要由三部分组成:
1.步进电机。
本次设计采用了反应式步进电机作为执行元件,其基本参数为:
步距角:
0.9°
;
相数:
四相五线式;
电压、电流:
12V、0.5A/相;
保持转矩:
0.5kg.cm
2.控制器,由单片机实现。
3.驱动器,把单片机输出的脉冲加以放大,以驱动步进电机。
2.3.1控制电路:
通过对本设计所需资源的分析,决定选用ATMEL公司的AT89S51单片机。
AT89S51单片机为40引脚芯片,它的引脚图如图2-4所示。
图2-4AT89S51的引脚功能图
单片机控制电路如图2-5所示:
图2-5单片机控制电路
端口使用:
P1.0--P1.3用于控制步进电机。
4相(同时有发光二极管显示)
P1.4--P1.7用于数码管显示驱动。
4层*1个
P0.0--P0.7用于发光二极管驱动,指示每层上、下按键按下。
4层*2个
P2.0--P2.7用于每层上、下按键输入。
P3.4--P3.7用于人进梯后的选层请求按键。
1、2、3、4四个按键
P3.0--P3.3保留
2.3.2驱动电路:
设计时步进电机的驱动采用了集成电路驱动,驱动电路集成化已成为一种趋势。
已有多种步进电动机驱动集成电路芯片,它们大多集驱动和保护于一体,作为小功率步进电动机的专用驱动芯片,ULN2003A使用起来也很方便。
ULN2003A集成电路芯片适用于四相步进电动机的单极性驱动。
ULN2003内部集成有驱动电路、续流二极管和过热保护电路。
但其内部没有集成脉冲配器,需要单片机编程实现。
图2-6ULN2003
ULN2003A是内含7个达林顿管的驱动芯片,输入电压与TTL电平兼容。
每个上达林顿管的集电极可吸收最大500mA的电流,耐压30V,因此可以用来驱动四相步进电机。
ULN2003A的各引脚功能是:
1~7分别是1~7路输入,
16~10分别是1~7路输出,
8接地,
9接电源正极。
驱动电路设计图如图2-7所示:
图2-7步进电机单极性驱动电路
单片机P1.0—P1.3端口分别驱动步进电机的A、B、C、D四相。
图2-8脉冲分配指示电路
单片机对步进电机进行脉冲分配时会按通顺序对ABCD四相先后进行通电,用四个发光二极管来指示脉冲的输出,当脉冲输出时,步进电机转动,此时四个发光管会根据通电顺序依次点亮,即:
当电梯处于运行时,会看到四个发光二极管处于闪烁状态。
4个发光二极管LED(D1、D2、D3、D4)的亮与灭指示了走步脉冲高低电平的变化,亮与灭变化的速度反应了走步脉冲的频率(即步进电机的转速)
2.4人梯交流面板:
人梯交流面板位于梯内与梯外,为用户召唤电梯,选择目标层,提示电梯所处
位置提供方便,梯外的面板位于各层的电梯入口。
2.4.1梯内面板:
位于梯内,组成:
四个楼层选择按钮。
用户可以通过1、2、3、4四个键选择要到达的楼层。
梯内选层按钮如图2-9所示:
图2-9梯内选层电路
2.4.2梯外各层面板:
位于电梯入口处,组成:
上、下选择按钮、两个发光二极管、一个数码显示管。
数码显示管用来显示电梯所处楼层的位置,用户可以通过上、下选择按键选择上楼还是下楼并且召唤电梯。
两个发光二极管分别用来指示上、下键是否按下,按下则点亮,方便其他用户。
1、四层层召唤(上、下)按键及按键指示电路分别如图2-10、图2-11所示:
图2-10四层层召唤按键电路
图2-11按键指示电路
2、数码显示电路:
使用74HC595(图2-12)作为数码管的驱动。
图2-1274HC595管脚图
74HC595端口说明:
14脚:
串行数据输入端。
9脚:
串行数据输出端。
13脚:
输出使能输入端。
11脚:
移位寄存器时钟输入端(SCK)。
12脚:
存储寄存器时钟输入端(RCK)。
Q0--Q7:
八位并行输出端,可以直接控制数码管的8个段
利用74HC595实现串行方式控制数码管显示,占用口线少,硬件结构简单。
74HC595型串/并转换移位寄存器具有锁存和3态输出功能。
其工作原理:
14脚(SER)为串行输入端;
11脚(RCLR)为移位时钟端,上升沿将14脚数据移入寄存器;
12脚(SRCLR)为锁存时钟端,上升沿锁存数据;
8脚(E)为3态输出控制端,接低电平时输出数据。
单片机将数据从串行数据输入端送入74HC595,在每个SCK上升沿,串行数据输入端的数据移入寄存器,在SCK的第9个上升沿,数据从串行数据输出端移出,移入第二个74HC595,照此一个个接下去。
数据全部送完后给RCK一个上升沿,寄存器中的数据即置入锁存器,此时如果E为低电平,数据即从并口:
Q0--Q7输出。
显示电路如图2-13所示:
图2-13显示电路
第三章系统的软件设计
本系统的软件设计主要分为初始化程序;
步进电机正反转控制程序;
层召唤、选层按钮处理程序;
选层及位置运算程序;
电梯位置控制程序;
电梯加、减速控制程序,显示子程序,如图:
3-1所示。
每个功能模块对于整体设计都是非常重要的,使用单片机AT89S51对整个系统进行软件编程。
图3-1系统软件框图
电梯运行程序设计思路:
一.主要分2个部分处理:
1.轿箱停止处理:
程序在此状态一直搜索是否有请求,算法为从当前层开始,先上后下,一旦有请求,就停止搜索,进入运行状态。
2.轿箱运行处理:
在些状态,程序一直搜索是否在经过的层有否请求,如有,则在此层停留一下,没有就不在此层停。
二.用中断来处理电机的运行情况。
三.电机从启动开始慢慢加速,一直到一个均速,到停止时电机就减速一直到停止。
下面,就整体设计以及每个单元功能模块分别进行简要说明。
3.1步进电机正反转控制:
对步进电机的正反转控制即:
电梯的升降控制,轿厢的运动是靠步进电机的转动实现的,在本次设计中步进电机正转则电梯上升,步进电机反转则电梯下降,这就需要对驱动电路实现脉冲分配(也就是通电换相控制),本次设计采用四相步进电机,及双四拍的工作方式,步进电机的驱动电路根据控制信号工作。
控制信号由单片机产生。
步进电机各相通电的顺序为AB-BC-CD-DA,按此方式通电电动机就正转;
如果按反序BA-AD-DC-CB,电动机就反转,脉冲分配采用软件的方式,其信号由单片机提供。
图3-2用软件实现脉冲分配的接口示意图
利用单片机的P1.0—P1.3这四条I/0线向四相步进电动机传送控制信号。
共有四个通电状态,输出控制信号中,1代表绕组通电,0代表绕组断电,则可4个控制字来对应这4个通电状态,如表1所列:
表1四相四拍工作方式的控制字:
通电状态
P1.0(A)
P1.1(B)
P1.2(C)
P1.3(D)
控制字
AB
1
03H
BC
06H
CD
0CH
DA
09H
正转表定义:
table1:
db03h,06h,0ch,09h;
反转表定义:
table2:
db03h,09h,0ch,06h;
在程序中,只要依次将这4个控制字送到P1口,步进电动机就会转动一个齿距角。
每送一个控制字,就完成一拍,步进电动机转过一个步距角。
程序就是根据这个原理进行设计的。
3.2层召唤、选层按钮处理
当按键按下时,相应的指示灯点亮,在单片机相应寄存器中设定请求标志。
若电梯在本层,则层召唤按键按下时不作响应。
图3-3层召唤按键处理
图3-4选层按键处理
3.3选层与位置运算
选层规则:
先上后下。
初始1层向上搜索,有请求向上运行,向上搜索,搜索完毕转向下搜索。
运行方向判断:
目标请求层比当前层大:
电梯运行方向向上;
目标请求层比当前层小:
电梯运行方向向下。
选层:
电梯向上运行:
电梯当前在X层,则搜索X+1层有无请求,有则目标层为X+1层,若X=4则向下搜索运行。
电梯向下运行:
电梯当前在X层,则搜索X-1层有无请求,有则目标层为X-1层,若X=1则向上搜索运行。
图3-5停止时查找目标层程序流程图
图3-6方向判断及位置运算程序流程图
电梯位置控制
位置控制指步进电机带动轿厢从一个位置精确地运行到另一个位置,步进电机可以不用借助位置传感器而只需简单的开环控制就能达到足够的位置精度,这是步进电机的一大优点。
步进电机位置控制的两个参数:
一:
步进电机控制的轿厢当前的位置参数即:
绝对位置。
二:
从当前位置移动到目标位置的距离,此参数是外界通过键盘输入,将这个距离折算成步进电动机的步数。
本次设计的楼层模型其每层的高度为:
150mm,电机轴径为5mm,转动距离为5pi/圈。
图3-7位置参数示意图
对电梯位置控制的软件实现方法是:
当步进电机正转时,步进电机每走一步绝对位置加1;
当步进电机反转时,绝对位置随每次步进减1。
步进电机每走一步,步数减1,如果没有失步存在,当轿厢到达目标位置时,步数正好减到0。
因此,用步数等于0来判断是否移动到目标位置,作为步进电动机停止运行的信号。
位置控制程序流程如图3-8所示。
图3-8位置控制程序流程图
3.4电梯加减速控制
速度改变判断:
对要去的楼层进行查看,是否有请求,没有就不用改变速度。
图3-9速度改变判断程序流程图
步进电机速度控制是靠输入的脉冲信号的变化来改变的,步进电动机驱动执行机构从A点到B点移动时,要经历升速、恒速和减速过程。
对步进电动机的加减速要有严格的要求,那就是保证在不失步和过冲的前提下,用最快的速度(或最短的时间)移动到指定位置。
为了满足加、减速要求,步进电动机运行通常按照加、减速曲线进行。
图3-10步进电机加、减速曲线
本次设计采用指数加、减速曲线如图所示。
因为电动机的电磁转矩与转速的关系接近指数规律。
图3-11近似指数加速曲线
由图可见,离散后速度并不是一直上升的,而是每升一级都要在该级上保持一段时间,因此实际加速轨迹呈阶梯状。
如果速度是等间距分布.那么在该速度级上保持的时间不一样长。
速度每升一级,步进电动机都要在该速度级上走NC步。
在程序的设计过程中把电机的运行过程分为加速、匀速和减速三个阶段。
调节方波的频率大小来控制步进电机的转速,调节方波信号的个数来控制步进电机的转过的角度,达到控制轿厢移动高度。
整个电机的运行过程大致如图3-12所示:
图3-12电梯运行过程
图3-13加、减速控制程序流程图
3.5程序
图3-14显示程序流程图
第四章误差分析及转数校正
导致误差的因素主要是:
每层转动圈数非整数,轿厢与电机间的绳索的粗细,另外轴径、层高数据测量不精确也将会影响整个系统运行的准确性。
误差分析:
所用步进电机步进角:
1.8度,轴径:
5mm,转一圈需要200个步数。
转一圈的长度为:
5pimm,每个步数走过的长度为:
5pi/200mm,电梯模型层高150mm,需要的转数为150/5pi转,约是:
9.549圈,在单片机参数选择中只能选取整数,为减小误差只能选10圈,这样每层理论误差为:
0.451*5pi=7.082mm,不考虑细绳的微小线径,每层误差7.082mm。
解决误差方法:
使用转数校正:
方法一:
每层转9圈,为使每层刚好转9圈则需要每转一圈走过:
150/9mm,转一圈需要的步数为:
(150/9)/(5pi/200)=212.207,取212作为转一圈的步数。
212*(5pi/200)*9=149.854mm,不考虑细绳微小线径每层理论误差-0.146mm。
方法二:
每层转10圈,每转一圈需要走过:
150/10=15mm转一圈需要的步数为:
15/(5pi/200)=190.986取191作为转一圈的步数,191*(5pi/200)*10=150.011mm,不考虑细绳微小线径,每层理论误差+0.011mm
由以上分析选择方法二理论误差最小,对于不同轴径的步进电动机在算较正参数时以上两种方法需要作比较后选出误差较少的一种方法。
在进行转数校正参数计算的时候必需要对电梯层高度和步进电机轴距进行精确测量,在选用绳索的时候,在保证能带起轿厢模型的前提下,尽量选择线径最小的线否则理论与实际结果会有误差,考虑细绳线径和实际使用情况可对191转数校正参数做适当修改.
实测:
整个系统运行良好,所有功能正常,平层准确。
从一层到四层运行时间为:
24.5秒,其中加速状态:
4秒,恒速状态16.5秒,减速状态4秒。
运行一层时间为:
12.5秒,其中加速状态:
4秒,恒速状态4.5秒,减速状态4秒。
第五章结束语
经过了几个月的学习和努力,终于完成了《自动电梯控制系统》的设计及论文。
这次毕业设计,不仅是学到了专业知识,学到了要与别人交流,更重要的是学到了一个被自己认为很大的难题摆在自己面前不知所措时如何正确去面对、解决的方法。
设计比我原来想的要难很多,刚开始真的不知所措,也没有现成的设计资料,只有靠自己一点点通过网络,书籍查找、收集资料。
花了很多时间在步进电机上,找步进电机驱动方法,驱动电路的设计,当自己发现一块芯片就可以解决之前自己的所有问题时真的有些灰心,发现自己浪费很多时间,同时走了很多弯路,最后还是在别人的帮忙下正确走了过来,毕业设计需要自己独立完成,但我也觉得与别人交流很重要,很感谢帮助我的老师、同学还有网络上不知名的朋友,当自己面临的问题一个个被解决的时候,我觉得这一个过程就是一种极大的乐趣,也是对帮助过自己的人最好感谢,同时也明白知难才可进。
我想下次当再有一个难题摆在自己面前的时候,我会比这次更坦然去面对,并且用更正确有效地方法去处理。
在做设计的过程中存在很多困难,特别在电梯选层及加减速控制上,单片机实验网的学姐给了我非常大的帮助,使我的程序进一步完善,虽然我的论文作品不是很成熟,还有不足之处,但看到自己付出的努力最终变成了让自己满意的作品并且比原来想的更成功时,这让我感到自豪,因为每一部分都有自己努力的结果。
在这个系统中如果能使用脉冲分配器与ULN2003配合使用驱动步进电机或使用自带脉冲分配器的步进电机驱动芯片,比如:
UCN5804B,则在软件的编程:
电梯正反转、及加减速控制上将会更加简洁、省时,也减少了单片机端口的使用,减轻了单片机的负担。
从开始接到论文题目到系统的实现,再到论文文章的完成,每走一步对我来说都是新的尝试与挑战。
原先对此系统一无所知,对步进电机控制及驱动等相关技术很不了解,通过查看相关的资料和书籍,让自己头脑中模糊的概念逐渐清晰,使自己非常稚嫩作品一步步完善起来,老师、同学、网友给我的建议让我在电路上作了较大的改进,每一次改进都是我学习的收获。
从中我也充分认识到了做设计给自己生活带来的乐趣,我感受到做论文是要真真正正用心去做的一件事情,是真正的自己学习的过程和研究的过程,没有学习就不可能有研究的能力,没有自己的研究,就不会有所突破,自己付出了很大努力,也真的学到了很多。
希望藉由这次毕业设计所得到的经验,能够让我在日后,面对问题、困难时,能更有效率、更良善地处理或解决!
最后再次感谢所有帮助过我的朋友,感谢导师的关心和提出的建议,特别感谢单片机学习网学姐给予我的极大帮助,使我顺利完成了我的毕业设计。
参考文献:
[1]王晓明.电动机的单片机控制[M]北京航空航天大学出版社2002年5月.
[2]孔凡镭,柴晋飞,王敦勇.电梯控制模型设计(D题)[J]电子世界2005年第33卷第4期.
[3]刘培尧.电梯原理与维修[M]电子工业出版社1999年5月.
[4]徐文君,李果,梁萱.电梯控制模型设计(D题)[J]电子世界2005年第32卷第5期.
[5]余永权.单片机在控制系统中的应用[M]电子工业出版社2003年10月.
[6]张毅坤,陈善久,裘雪红.单片微型计算机原理及应用[M]西安电子科技大学出版社2003年9月.
[7]何希才,姜余祥.电动机控制电路应用实例[M]中国电力出版社2005年2月
[8]刘宝延,程树康.步进电动机及其驱动控制系统[M]哈尔滨工业大学出版社1997年11月.
[9]宋德杰.用单片机实现电梯控制系统[J]电子制作2004年第22卷第10期.
[10]李丹峰,龙迎春.电梯控制系统模型的研制[J]韶关大学学报(自然科学版)2004年4月第21卷第2期.
[11]赖森财.步进电机加减速控制[J]三明高等专科学校学报2002年12月第19卷第4期.
[12]孙蓓,张志义,张学文.1种单片机实现步进电机的加、减速控制[J]北华大学学报(自然科学版)2003年10月第4卷第5期.
[13]翟震,张春玲.用74HC595芯片驱动LED的电路设计[J]机床与液压2004年第12期P151—P152.
[14]李亚,常涛,王永强.利用74HC595实现多位LED显示的新方法[J]微计算机信息2005年第07期.
[15]王勇,林洁.单片机的步进电机串行开环控制系统[J]机电产品开发与创新2005年7月第18卷第4期.
附录1:
自动电梯控制系统的设计图
附录2:
程序清单
;
****************************
;
寄存器定义:
数码管显示
ROW_DATDEQUP1.4
ROW_PCEQUP1.5
ROW_CEEQUP1.6
ROW_SCEQUP1.7
控制数据定义
PRONUMEQU32H;
定义要测定那个电机程序
RUNREVEQU31H;
定义运行方向
PRO_NUMEQU33H;
电机修正值
DJ_THEQU35H
DJ_TLEQU36H
DJ_XZZEQU37H
TEMPEQU38H
ZUANSU_LEQU39H
ZUANSU_HEQU3AH
CENG_PULSEQU3BH
CUR_POS