步进电机控制系统.docx
《步进电机控制系统.docx》由会员分享,可在线阅读,更多相关《步进电机控制系统.docx(62页珍藏版)》请在冰豆网上搜索。
步进电机控制系统
内蒙古科技大学
本科生毕业设计说明书(毕业论文)
题目:
基于AT89C51单片机的步进
电机控制系统
学生姓名:
苏伟强
学号:
0605106339
专业:
自动化
班级:
自动化06-3班
指导教师:
贾玉瑛高级工程师
基于AT89C51单片机的步进电机控制系统
摘要
步进电机是数字控制系统中的一种执行元件,它能按照控制脉冲的要求,迅速起动,制动,正反转和调速。
具有步距角精度高,停止时能自锁等特点,因此步进电机在自动控制系统中,特别是在开环的控制系统中得到了日益广泛的应用。
本文以单片机和环形脉冲分配器为核心设计的步进电机控制系统,通过软硬件的设计调试,实现步进电机能根据设定的参数进行自动加减速控制,使控制系统以最短的时间到达控制终点,而又不发生失步的现象;同时它能准确地控制步进电机的正反转,启动和停止。
硬件是以AT89C51单片机为核心的控制电路,主要包括:
环形脉冲分配器、键盘显示电路、步进电机的驱动电路等。
软件部分采用C语言编程,主要包括键盘显示程序、步进电机的调速程序、停止判断程序等。
关键词:
步进电机控制系统;调速;单片机
BasedonAT89C51Single-chipComputer
SteppingMotorControlSystem
Abstract
Steppingmotorisakindofdigitalcontrolsystemcomponents.Itcanachievequickstart-up,positiveinversion,stoppingandspeedcontrol,accordingtothecontrolpulse.Ithashighprecisionstepangle,andcanbeself-lockingwhenitkeepsstill.Asthesecharacteristics,steppingmotorinautomaticcontrolsystem,especiallyintheopenloopcontrolsystemhasbeenwidelyapplied.
ThisarticlemainlyfocusesontakingSingle-chipComputerandcyclepulsedistributorasthecore,anddesigningthesteppingmotorcontrolsystem.Throughthedesignofthesoftwareandhardwaredebugging,itrealizescontrollingthestepmotor’saccelerationanddecelerationautomatically,accordingtoparametersetting.Makingthesystemarrivetheendpointwiththeshortesttime,butnotoccuroutingofstep.Besidesitcanaccuratelyachievestart-up,positiveinversionandshutdown.HardwaretakesAT89C51asthecoreofcontrolcircuit,mainlyincluding:
cyclepulsedistributor,keyboardanddisplaycircuit,steppingmotordrivingcircuit,etc.SoftwarepartadoptstheClanguageprogramming,mainlyincludingkeyboardanddisplayprogram,steppingmotorspeedcontrolprogram,stopjudgingprogram,etc.
Keywords:
Steppingmotorcontrolsystem;speedcontrol;Single-chipComputer
目录
摘要I
AbstractII
第一章引言1
1.1课题提出的背景和研究意义1
1.2课题的主要研究内容2
1.3本章小结2
第二章步进电机控制系统设计3
2.1步进电机的原理3
2.1.1三相单三拍通电方式3
2.1.2三相双三拍通电方式5
2.1.3三相六拍通电方式6
2.2环形脉冲分配器8
2.3续流电路12
2.3.1二极管续流13
2.3.2二极管—电阻续流14
2.4步进电机驱动电路15
2.5步进电机的变速控制17
2.5.1变速控制的方法19
2.6步进电机在自动生产线中的应用20
2.7本章小结22
第三章控制系统硬件设计23
3.1硬件系统设计原则23
3.2控制系统组成23
3.3主要元件的选择24
3.3.1单片机的选择24
3.3.2EPROM的选择25
3.3.3可逆计数器的选择27
3.4控制系统接口电路的设计27
3.4.1环形脉冲分配器设计27
3.4.2显示电路设计29
3.4.3外部复位电路设计30
3.5控制系统整体电路设计31
3.6本章小结31
第四章控制系统软件设计32
4.1软件系统设计原则32
4.2步进电机控制系统功能设计32
4.3主程序设计33
4.3.1主程序工作过程33
4.3.2主程序工作流程图34
4.3.3定时器T0中断程序流程图34
4.4Proteus仿真37
4.5显示程序设计39
4.6键盘程序设计39
4.7调速程序设计41
4.7.120BY步进电机参数41
4.7.2步进电机转速与频率的关系41
4.8本章小结42
第五章结束语43
参考文献44
附录46
附录A系统程序(C)46
附录B20BY步进电机转速与定时器定时常数关系表59
附录C控制系统电路图62
致谢63
第一章引言
1.1课题提出的背景和研究意义
由于步进电机不需要位置传感器或速度传感器就可以实现定位,即使在开环状态下它的控制效果也是令人非常满意的,这有利于装置或设备的小型化和低成本,因此步进电机在计算机外围设备、数控机床和自动化生产线等领域中都得到了广泛的应用。
对于一个步进电机控制系统而言,总希望它能以最短的时间到达控制终点。
因此要求步进电机的速度尽可能地快,但如果速度太快,则可能发生失步。
此外,一般步进电机对空载最高启动频率都是有所限制的。
当步进电机带负载时,它的启动频率要低于最高空载启动频率。
根据步进电机的矩频特性可知,启动频率越高,启动转矩越小,带负载的能力越差。
当步进电机启动后,进入稳态时的工作频率又远大于启动频率。
由此可见,一个静止的步进电机不可能一下子稳定到较高的工作频率,必须在启动时有一个加速的过程。
从高速运行到停止也应该有一个减速的过程,防止步进电机因为系统惯性的原因,而发生冲过终点的现象。
为此本文以单片机作为控制核心,实现步进电机的自动加减速控制,使系统以最短的时间到达控制终点,而又不发生失步的现象。
因为步进电机的转速正比于控制脉冲的频率,所以调节步进电机的转速,实质上是调节单片机输出的脉冲频率【1】。
由于步进电机的运动特性受电压波动和负载变化的影响小,方向和转角控制简单,并且步进电机能直接接收数字量的控制,非常适合采用微机进行控制。
步进电机工作时,失步或者过冲都会直接影响其控制精度。
研究步进电机的加减速控制,可以提高步进电机的响应速度、平稳性和定位精度等性能,从而决定了步进电机控制系统的综合性能。
1.2课题的主要研究内容
1、步进电机的工作原理
通过查阅文献对步进电机的单拍运行、双拍运行、单双拍运行等各种运行方式进行研究,深入了解各种运行方式的特点和对步进电机控制性能的影响。
2、环形脉冲分配器的设计
研究环形脉冲分配器的作用和构成,并设计出可靠、灵活的环形脉冲分配器电路。
3、步进电机的续流电路
根据步进电机的控制特点,分析续流电路对步进电机控制性能的影响,并设计步进电机的续流电路。
4、步进电机控制系统的软硬件设计
根据步进电机的原理和控制特点,对步进电机控制系统的软硬件进行分析和设计。
5、程序的调试及修改
用Keil软件进行编程和调试,并且在Proteus环境下进行系统仿真。
1.3本章小结
本章首先介绍了课题研究的背景,提出设计的思路。
其次介绍了课题研究的目的和意义,最后介绍了课题的主要研究内容。
第二章步进电机控制系统设计
2.1步进电机的原理
反应式步进电机的工作原理是与反应式同步电机一样,也是利用转子横轴磁阻与直轴磁阻之差所引起的反应转矩而转动,如图2.1所示是一台反应式步进电机的工作原理,定子铁心为凸极式,共有三相,六个磁极,不带小齿,磁极上装有控制绕组,相对的两个磁极串联连接,组成一相控制绕组。
转子用软磁材料制成,也是凸极结构,只有两个齿,齿宽等于定子的极靴宽【2】。
2.1.1三相单三拍通电方式
这是步进电机的一种最简单的工作方式,所谓“三相”,即三相步进电机,具有三相定子绕组;“单”指每次只有一相绕组通电;“三拍”指三次换接为一个循环,第四次换接重复第一次情况。
当A相绕组通电如图2.1(a)所示,而B相和C相不通电时,A相的两个磁极被励磁,一个呈N极另一个呈S极,由于磁场对转子铁心的电磁吸力,使转子轴线对准A相磁极的轴线。
这种现象也可以这样来理解,A相通电时,转子对定子的相对位置不同,则磁路的磁阻也不同,使A相磁路的磁阻为最少的转子位置,就是该时的稳定平衡位置,即转子稳定在转子轴线和A相磁极轴线相重合的位置。
同样道理,当A相断开,接通B相时,如图2.1(b)所示,B相磁极对转子的电磁力将使转子顺时针转过60°,达到转子轴线和B相磁极轴线相重合的位置,即转子走过一步,然后B相电源断开,同时接通C相如图2.1(c)所示,同理将使转子按顺时针方向再走一步。
如此按A-B-C-A的顺序使三相绕组轮流通电,则转子依顺时针方向一步一步地转动。
如果改变三相绕组的通电顺序为A-C-B-A显然步进电机将按逆时针方向转动。
上述三相三拍运行,表示三种通电状态为一个循环,即三次通电状态改变后,又恢复到起始状态,一拍对应转子转过的角度称为步距角,通常用θs表示,图2.1中转子每步转过的步距角为60°。
(a)A相通电(b)B相通电(c)C相通电
图2.1三相反应式步进电机原理
如果将上图的反应式步进电机的转子制成四极(或称为四个齿)结构,如图2.2所示,则按三相单三拍运行时,转子的步距角也将发生变化。
当A相通电时如图2.2(a)所示,转子齿1、3对准A相磁极轴线重合,当B相通电时如图2.2(b)所示,转子将逆时针转过30°,稳定在转子齿2、4对准B相磁极轴线的位置,当C相通电时如图2.2(c)所示,转子又将逆时针方向转动30°,转子齿1、3对准C相磁极轴线的位置,由此可见,每通电一次转子转过的角度为30°即每步转过的步距角为30°。
(a)A相通电(b)B相通电(c)C相通电
图2.2转子为四极的三相步进电机
2.1.2三相双三拍通电方式
如果将步进电机的控制绕组的通电方式改为:
AB-BC-CA-AB或AC-CB-BC-CA。
这种通电方式每拍同时有两相绕组通电,三拍为一循环,如图2.3所示,转子为四极的反应式步进电机。
图2.3(a)为AB相同时通电的情况,图2.3(b)为BC相通电的情况,可见转子每步转过的角度为30°与单三拍运行方式相同,但其中有一点不同,即在双三拍运行时,每拍使步进电机从一个状态转变为另一个状态时,总有一相绕组保持通电。
例如由AB相通电变为BC相通电时,B相保持继续通电状态,C相磁极力图使转子逆时针转动,而B相磁极却起阻止转子继续向前转动的作用,即起到一定的电磁阻尼作用,所以步进电机工作比较平稳,三相单三拍运行时,由于没有这种阻尼用,所以转子到达新的平衡位置后会产生振荡,稳定性能远不如双三拍运行方式。
(a)AB相通电(b)BC相通电
图2.3三相双三拍运行方式
2.1.3三相六拍通电方式
这是一种将一相通电和两相通电结合起来的运行方式,其具体通电方式为:
A-AB-B-BC-C-CA-A或A–AC-CB-B-BA-A,即一相通电和两相通电间隔轮流进行,六种不同的通电状态组成一个循环,这时步进电机的工作情况如图2.4所示,图2.4(a)为A相通电时的情况,转子齿1、3磁轴与A相磁极轴线重合,当通电状态由A转为AB时,步进电机的状态如图2.4(b)所示,转子齿1、3磁极离开A相磁极轴线,即转子逆时针转过15°。
通电方式由AB转为B时,步进电机的状态如图2.4(c)所示,转子齿2、4磁极轴线和B相磁极轴线相重合,或转子齿1、3磁极轴线离开A相磁极轴线30°角,即转子又逆时针方向运行了一步,相应的角度为15°如此类推,可见步进电机每走一步,将转过15°,恰好为三相单拍或双三拍通电方式的一半。
六拍运行方式与双三拍相同,由一个通电状态转变为另一通电状态时,也总有一相继续保持通电,同样具有电磁阻尼作用,工作也比较平稳。
(a)A相通电(b)AB相通电
(c)B相通电(d)BC相通电
图2.4三相六拍通电方式
通过分析可知一台步进电机可以有不同的通电方式,即可以有不同的拍数。
拍数不同时,其对应的步距角大小也不同,拍数多则步距角小。
通电相数不同也会带来不同的工作性能。
此外,也可以看到同一种通电方式,对于转子磁极数不同的步进电机,也会有不同的步距角。
步距角θs可由式(1-1)求得【3】
θs=360°/mKZR(1-1)
式中m—控制绕组相数;
ZR—转子齿数;
K—与通电方式有关的状态系数,当通电方式为单拍,即拍数与相数相同,K=1;为双拍时,即拍数为相数的两倍时,K=2。
2.2环形脉冲分配器
要使步进电机正常工作,必须按照该种步进电机的励磁状态转换表所规定的状态和次序依次对各相绕组进行通电和断电控制。
环形分配器的主要功能是把单片机发出的脉冲信号按一定的规律分配给步进电机的驱动电路,控制绕组的导通和截止。
同时步进电机有正反转的要求,所以环形脉冲分配器的输出既有周期性又有可逆性。
可以说环形脉冲分配器是一种特殊的可逆循环计数器,但它输出的不是一般的编码,而是步进电机励磁状态所要求的特殊编码【4】。
在步进电机的驱动系统中,控制器与驱动器之间连接方式可分为串行控制和并行控制。
串行控制时,控制器输出脉冲信号和方向电平,环形脉冲分配器把它转换成并行的驱动信号,再控制绕组的导通和截止。
控制脉冲信号的有无就能控制步进电机运行和停止,脉冲信号的频率决定步进电机的运行速度,方向电平控制步进电机的运转方向。
并行控制时,控制器直接输出各相绕组的导通和截止信号,此时环形脉冲分配器在控制器中,由软件来代替环形脉冲分配器的功能,不管是串行控制还是并行控制必须有环形脉冲分配器这个环节。
步进电机按类型、相数来划分种类繁多,不同种类、不同相数、不同分配方式都必须有不同的环形脉冲分配器,因此所需要的环形脉冲分配器的类型是很多的。
如果全部用硬件来搭成,结构是相当复杂的,不能满足步进电机驱动系统的需要,为此提出一种用EPROM搭建的环形分配器,以满足不同的要求。
EPROM存储器是一种紫外线擦除的可编程只读存储器,存储器的内容可以由使用者自己编程,且可以用紫外线照射后重新使用。
用EPROM可以搭建成各种环形脉冲分配器。
其基本思想是:
首先确定步进电机励磁状态转换表,再以二进制码的形式存入EPROM存储器中,只要按照地址的正向或反向顺序依次取出地址的内容,那么存储器输出的就是各相绕组的励磁状态,用EPROM搭建的环形脉冲分配器的原理框图如图2.5所示,它由两部分组成。
前面是一个可逆的循环计数器,计数脉冲的有无控制步进电机的运行与停止,计数器加减控制端控制步进电机的正反转,如果低电平时计数器加计数,步进电机正转,如果高电平时计数器减计数,步进电机反转。
计数器的计数长度应等于步进电机运行一个周期的拍数或拍数的整数倍,计数器的输出端接到EPROM的地址线上,并且使EPROM总是处于读出的状态,这样计数器的每个计数状态都对应存储器的一个地址,存储器的输出端就对应步进电机的一种励磁状态。
简单的说存储器存入的是一个环形脉冲分配器的状态输出表,计数器每输入一个脉冲,计数器计一个数,这个数值就会选通存储器的一个地址,存储器就输出一个数据,即步进电机的一个励磁状态。
如果计数器做加计数,则存储器按地址递增的方向依次读取状态表的内容,相反,计数器做减计数,则存储器按地址递减方向依次取出状态表的内容,从而控制步进电机的正反转。
图2.5含有EPROM环形脉冲分配器
用EPROM设计环形脉冲分配器,具有如下的特点:
1、线路简单。
由可逆循环计数器和存储器两部分组成,计数器可以用现有的器件实现,计数长度可以用简单的外围电路实现。
对EPROM存储器的主要工作是编程,存储状态表,所以工作量小。
2、一种线路可以实现多种励磁状态方式的分配,只要在不同的地址区域存储不同的状态表,除软件工作之外,硬件无需改动。
3、可排除非法状态。
驱动电路输入非法状态可能会损坏驱动电路。
存储器中存储的内容,除了在选通的地址存储所需的状态表之外,其他没用的地址都存储各相截止的信号。
因此即使有非法的地址输入,输出端输出的都是截止的信号,可以保护驱动器不受损坏。
由于励磁状态是按运行拍数循环的,所以存储器输出的状态也必须按拍数循环出现,这就要求计数器是可逆计数器,同时计数长度是运行循环拍数的整数倍。
实际上,使用RPROM设计的环形脉冲器是一种软硬件结合的技术,通过软件的编程可以实现不同励磁方式的输出。
由上可见,这种方法适用于控制任意类型的步进电机。
对于不同的步进电机及不同的励磁方式,只需改变存储的状态表,硬件不需要做任何的变化。
跟软件的方法相比,需要增加硬件的成本,但软件简单,速度快,少占用CPU的时间,提高了系统的响应速度。
软件方法的优点是节省硬件,降低系统的成本,且更改灵活,有利于系统的小型化,其主要的缺点是占用CPU时间较多,降低系统的响应速度。
图2.6环形脉冲分配器电路
由EPROM与可逆计数器构成的环形脉冲分配器如图2.6所示,计数器选用74LS191,74LS191是四位二进制进制可逆计数器,时钟脉冲从CP端输入,计数器的输出QA~QD直接接到EPROM的低四位地址线A0~A3,这样可以选通2716的十六个地址(00H~0FH)。
74LS191第五脚为加减法输入控制端,该输入端作为方向输入的控制信号,当低电平时做加法计数,为正转状态。
当为高电平时做减法计数,为反转状态。
74LS191数据输入端A、B、C、D各管脚接地,11脚是置数端,当它为高电平时74LS191为计数状态,当它为低电平时,计数器停止计数,把数据端的内容(ABCD)装入计数器。
2716的管脚OE和CE分别为输出允许和片选端,使它接地让它一直处于选通状态。
四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。
单四拍与双四拍的步距角相等,八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。
因此本文选择步进电机八拍的工作方式。
EPROM的存储内容如表2.1所示。
表2.1四相步进电机八拍工作方式存储状态表
地址
内容
DCBA
励磁状态
00H
01H
0001
A
01H
03H
0011
AB
02H
02H
0010
B
03H
06H
0110
BC
04H
04H
0100
C
05H
0CH
1100
CD
06H
08H
1000
D
07H
09H
1001
DA
08H
01H
0001
A
2.3续流电路
步进电机的控制性能,与各相绕组导通和截止时电流的增加和衰减速度有关,对于加速度大、或者运行速度高的步进电机,当转换速度增加时,由于绕组电感的作用,电流经常不能立即升到额定值,同样在绕组断电时,电流也不能立即衰减到零。
当步进电机下一相导通时,断电相绕组中的衰减电流对步进电机起制动作用。
如图2.7所示为一相励磁时的等效电路。
L为绕组电感,R为串联回路的总电阻,E为反电动势。
当步进电机为锁定状态时,忽略T管的压降,则绕组的电流为U/R。
如果T断电,绕组中磁场能量将极力保持原有电流的方向。
晶体管上的管压降将随Ldi/dt正比的增加,这个峰值电压的大小可能会超过一个晶体管的最大耐压U,造成晶体管损坏。
常用的步进电机可以很容易产生数值比步进电机外加电压大的峰值电感电动势。
这个电感电动势必须控制在晶体管安全运行区域内。
所以驱动电路除了对步进电机绕组提供导通回路外,还必须提供一个绕组断电时的续流回路,其作用是既要保证电流的泄放的速度,同时又要抑制电感电势,保护晶体管不受感应电动势峰值的冲击。
图2.7一相励磁电路
2.3.1二极管续流
抑制电势的最简单的形式是用二极管跨接步进电机绕组的两端,如图2.8所示。
在绕组导通期间,二极管处于反向截止状态。
当绕组断电时,绕组电势极性反向,二极管处于正向导通的状态,为电流提供一个续流回路,二极管把功放管的集射极电压钳位到电源电压+U。
当一相绕组断电时,存储在绕组中的能量必须消耗在电路的电阻R中,该电阻包括绕组电阻,串联电阻和二极管正向导通电阻,衰减时间常数为L/R。
在低速时,断电相电流衰减缓慢是允许的,但高速时,就会影响步进电机的控制性能。
图2.8二极管泄放电路图2.9负载曲线
2.3.2二极管—电阻续流
要求高速或变速运行时,断电绕组的能量必须尽快消耗,这可以通过增加一个与二极管串联的电阻Rs,以减少泄放回路的时间常数,此时断电回路的时间常数为L/(R+Rs)。
Rs的最大值取决于集—射极间的击穿电压Ucer。
当步进电机截止时,若通过二极管的初始电流为额定电流In,即
In=U/R
则晶体管集—射极间的压降为
Uce=U+RsIn=U(1+Rs/R)
这样为使Uce则Rs图2.10二极管—电阻续流回路图2.11负载曲线
由以上分析可知续流电路的特点如下:
(1)断电相的磁场能量总是消耗在回路的电阻上,其中包括电动机绕组自身的电阻。
(2)续流串联电阻的大小因需要保护功放管的安全而受到限制。
(3)衰减时间常数大,在步进电机高速运行时产生阻转矩,影响系统的特性。
2.4步进电机驱动电路
步进电机不能直接接到交、直流电源上工作,而必须使用专用设备—步进电机驱动器。
步进电机驱动系统的性能,除与步进电机的自身性能有关外,在很大程度上也取决于驱动器的优劣。
步进电机的驱动电路应该既要保证绕组有足够的电压电流,同时又要保证驱动级功率器件的安全运行,另外还应有较高的效率、较小的功耗和较低的成本。
驱动级的功率放大器件有中功率晶体管、大功率的晶体管、达林顿管、可控硅以及各种功率模块。
对于小功率的步进电机,可