基于C51单片机的步进电机控制系统设计毕业论文设计.docx
- 文档编号:6628394
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:41
- 大小:176.79KB
基于C51单片机的步进电机控制系统设计毕业论文设计.docx
《基于C51单片机的步进电机控制系统设计毕业论文设计.docx》由会员分享,可在线阅读,更多相关《基于C51单片机的步进电机控制系统设计毕业论文设计.docx(41页珍藏版)》请在冰豆网上搜索。
基于C51单片机的步进电机控制系统设计毕业论文设计
(此文档为word格式,下载后您可任意编辑修改!
)
摘要
本设计中首先介绍了步进电机的工作原理、控制特点和运行状态,然后给出了步进电机的单片机控制系统的总体设计方案。
在这个控制系统中,单片机选用AT89C51,其作为控制核心,担负着产生脉冲,发送、接受控制命令等任务;脉冲分配采用硬件方法,由8713接收到单片机的控制信号后产生相应的控制脉冲,避免了软件法在不停地产生脉冲时占用的时间;采用单电压驱动的方法驱动电机带动负载运行;利用键盘、显示专用芯片8279能够以较简单的硬件电路和较少的软件开销实现微型机与键盘和LED显示器接口。
本设计最后详细介绍了硬件部分和软件部分的实现方法。
关键词:
单片机;步进电机;速度控制;ZLG7290;显示器
Abstract
Thedesignintroducestheworkingprincipleofsteppermotor,controlfeaturesandoperations,andthengivesthesteppermotormicrocontrollercontrolsystemdesignprograms.Inthiscontrolsystem,theSCMselectingAT89C51,thecontrolcenteroftheshoulderproducespulses,sending,receivingcontrolcommandsandothertasks;pulsedistributionmethodusingconstanttimeoccupied;adoptasinglevoltage-drivenapproachdrivemotortodrivetheloadoperation;useofkeyboard,display8279canbededicatedtosimplemethodsindetail.
Keywords:
SCM;steppermotor;speedcontrol;ZLG7290;display;
第一章绪论
本章将简要介绍步进电机的发展过程、步进电机在日常生活中的广泛应用、步进电机作为数字控制电动机的主要特点以及本次研究的主要内容和论文安排。
1.1步进电机概述
步进电机最早是在1920年由英国人所开发。
1950年后期晶体管的发明也逐渐应用在步进电机上,这对于数字化的控制变得更为容易。
以后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解性能、高响应性、信赖性等灵活控制性高的机械系统中。
在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。
步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。
随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。
步进电机是将电脉冲信号变换成角位移或直线位移的执行部件。
步进电机可以直接用数字信号驱动,使用非常方便。
一般电动机都是连续转动的,而步进电动机则有定位和运转两种基本状态,当有脉冲输入时步进电动机一步一步地转动,每给它一个脉冲信号,它就转过一定的角度。
步进电动机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。
在没有脉冲输入时,在绕组电源的激励下气隙磁场能使转子保持原有位置处于定位状态。
因此非常适合于单片机控制。
步进电动机已成为除直流电动机和交流电动机以外的第三类电动机。
传统电动机作为机电能量转换装置,在人类的生产和生活进入电气化过程中起着关键的作用。
步进电机可以作为一种控制用的特种电机,利用其没有累积误差的特点,广泛应用于各种开环控制。
步进电机和普通电机的区别主要就在于其脉冲驱动的形式,正是这个特点,步进电机可以和现代的数字控制技术相结合。
步进电机在控制精度、速度变化范围、低速性能方面比传统的闭环控制直流伺服电动机有较好的性能。
1.2课题研究的主要内容
1.2.1研究内容
本设计以实现基于单片机的步进电机控制为主要目标,主要内容有:
1.了解步进电机的结构及工作原理;
2.了解步进电机的控制方法;
3.选择、设计控制系统所需的控制电路,设计控制系统;控制电路主要由AT89C51单片机、晶振电路、地址锁存器、译码器、ZLG7290芯片等组成,ZLG7290芯片能自动完成对显示的刷新,同时还可以对键盘自动扫描,识别闭合键的键号,使用非常方便。
4.绘制系统原理图、方框图和线路图等。
1.2.2论文安排
1.原理部分:
第一章和第二章主要介绍了步进电机的特点,结构和工作原理以及步进电机的控制特点和运行状态。
2.硬件电路部分:
第三章详细介绍了系统的控制核心AT89C51单片机,驱动电路,显示电路和ZLG7290芯片。
第二章步进电机控制系统设计方案
2.1步进电机的系统
2.1,1步进电动机的定义
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
2.1,2步进电动机的结构分类
一般说来步进电动机可分为三大类:
反应式步进电动机、永磁式步进电动机和混合式步进电动机。
反应式步进电动机的转子是由软磁材料制成的,转子中没有绕组。
它的结构简单,成本低,步距角可以做得很小,但动态性能较差。
永磁式步进电动机的转子使用永磁材料制成的,转子本身就是一个磁源。
它的输出转矩大,动态性能好。
转子的极数和定子的极数相同,所以步距角一般很大。
需要供给正负脉冲信号。
反应式步进电动机的性价比比较高,应用得非常广泛,下面就以反应式步进电动机为例来说明步进电动机的结构和工作原理。
图2-1三相反应式步进电动机结构图
如图2-1是一个三相反应式步进电动机结构图。
从图中可以看出,它分成转子和定子两部分。
定子上有六个磁极(大极),每两个相对的磁极(N、S极)组成一对,共有三对
2,1.3步进电动机的工作方式
对于三相步进电动机,其工作方式如下:
1、单三拍工作方式
正转:
A
B
C
A
反转:
A
C
B
A
其中“单”指的是每次对一相通电;“三拍”指的是磁场旋转一周需要换相3次,这时转子转动一个齿距角。
如果对多相步进电动机来说,每次只对一相通电,要使磁场旋转一周就需要多拍。
2、双三拍工作方式
正转:
AB
BC
CA
AB
反转:
BA
AC
CB
BA
双三拍工作方式是:
每次对两相通电,即所谓“双”;磁场旋转一周需要换相3次,即所谓“三拍”,转子转动一个齿距角。
3、三相六拍工作方式
正转:
A
AB
B
BC
C
CA
反转:
A
AC
C
CB
B
BA
六拍工作方式是单三拍与双三拍交替使用的一种方法,磁场旋转一周,通电需要换相6次,即所谓“六拍”,转子才转动一个齿距角。
这是与单三拍和双三拍最大的区别。
同样,对于四相电动机其工作方式有单四拍、双四拍和八拍。
其通
电时序和波形如图2-2(a)、(b)、(c)所示。
图2-2(a)单四拍(b)双四拍(c)八拍
2.2步进电机的失步现象
步进电机有一个技术参数:
空载启动频率,即步进电机在空载情况下能够正常启动的脉冲频率,如果脉冲频率高于该值,电机不能正常启动,可能发生丢步或堵转。
在有负载的情况下,启动频率应更低。
如果要使电机达到高速转动,脉冲频率应该有加速过程,即启动频率较低,然后按一定加速度升到所希望的高频(电机转速从低速升到高速)。
2.2.1步进电动机的振荡、失步及解决方法
步进电动机的振荡和失步是一种普遍存在的现象,它影响应用系统的正常运行,因此要尽力去避免。
下面对振荡和失步的原因进行分析,并给出解决方法。
1、振荡
步进电动机的振荡现象主要发生于:
步进电动机工作在低频区,步进电动机工作在共振区,步进电动机突然停车时。
当步进电动机工作在共振区时,步进电动机的脉冲频率接近步进电动机的振荡频率
或振荡频率的分频或倍频,这会使振荡加剧,严重时造成失步。
步进电动机的振荡频率
可由下式求出:
式中:
J—转动惯量;
Z—转子齿数;
—最大转矩。
振荡失步的过程如下:
在第1个脉冲到来后,转子经历了一次振荡。
当转子回摆到最大振幅时,恰好第2个脉冲到来,转子受到的电磁转矩为负值,使转子继续回摆。
接着第3个脉冲到来,转子受正电磁转矩的作用回到平衡点。
这样,转子经过3个脉冲仍然回到原来位置,也就是丢了3步。
2、失步
步进电动机失步的原因有2种:
①转子的转速慢于旋转磁场的速度,或者说慢于换相速度。
例如,步进电动机在启动时,如果脉冲的频率较高,由于电动机来不及获得足够的能量,使其无法令转子跟上旋转磁场的速度,所以引起失步。
因此,步进电动机有一个启动频率,超过启动频率启动时,肯定会产生失步。
注意,启动频率不是一个固定值,提高电动机的转矩、减小负载转动惯量、减小步距角都可以提高步进电动机的启动频率。
②转子的平均速冻大于旋转磁场的速度。
这主要发生在制动和突然换向时,转子获得过多的能量,产生严重的过冲,引起失步。
3、怎样解决失步
使步进电机本身产生的电磁转矩增大。
使步进电机克服转矩减小或者更换大一点的电机。
4、阻尼方法
消除振荡市通过增加阻尼的方法来实现的,主要有机械阻尼和电子阻尼两大类。
其中机械阻尼法比较单一,就是在电动机轴上加阻尼器。
2.3步进电机控制系统的组成
基于单片机实现步进电动机的正反转、启动、停止和加减速。
单片机是本次设计的控制核心,本次设计选用AT89C51。
单片机通过脉冲分配和驱动电路带动步进电动机运转。
系统原理框图如2-3所示。
图2-3系统原理框图
AT89C51不仅功能强大,而且性能十分灵活性高。
价格合理的单片机,可方便地应用在各种控制领域,因此本系统中采用AT89C51单片机作为控制核心。
单片机的控制信号作用于脉冲分配器,本设计中采用8713脉冲分配器可以很好的减轻单片机的工作量。
驱动电路得到脉冲信号就可以按照控制要求带动步进电机工作。
采用LED数码管进行显示是由于其具有结构简单、体积小、功耗低、配置灵活、显示清晰、可靠性高的优点。
2.4系统的控制过程
步进电动机的驱动电路根据控制信号工作。
在步进电动机的单片机控制中,控制信号由单片机产生。
其基本控制作用如下:
1、控制换相顺序。
步进电动机的通电换相顺序严格按照步进电动机的工作方式进行。
通常我们把通电换相这一过程称为脉冲分配。
例如,三相步进电动机的单三拍工作方式,其各相通电的顺序为A
B
C,通电控制脉冲必须严格按照这一顺序分别控制A、B、C相的通电和断电。
2、控制步进电动机的转向。
如果按给定的工作方式正序通电换相,步进电动机就正转;如果按反序通电换相,则电动机就反转。
例如,四相步进电动机工作在单四拍方式,通电换相的正序是A
B
C
D,电动机就正转;如果按反序A
D
C
B,电动机就反转。
对于步进电机的驱动一般有两种方法,一种是通过单片机直接来驱动,这种方法一般不宜采用,因为单片机的输出电流脉冲是特别小的它不能足以让步进电机的转动;别一种是通过单片机来间接驱动,就是把从单片机输出的信号进行放大,然后直接驱动或是再通过光电隔离间接来驱动步进电机,这种方法比较安全可靠。
固本次设计应采用单片机间接驱动步进电机。
如图2-4所示。
图2-4步进电机驱动电路
第三章步进电机控制系统硬件部分
3.1硬件电路图
本设计中AT89C51是控制核心,利用键盘、显示专用芯片zlg7290能够以较简单的硬件电路和较少的软件开销实现单片机与键盘和LED显示器接口,脉冲分配器zlg7290产生驱动脉冲,减少单片机的工作负担。
本系统的硬件电路图如4-1所示。
图3-1系统硬件电路图
3.2采用51系列单片机AT89C51作为控制器
AT89C51是一种高性能的8位单片机。
片内带有一个4KB的Flash可编程,可擦除只读存储器(EPROM),它采用了COMS工艺和公司ATMEL的高密度非易失性存储器技术,而且其输出引角和指令系统都与MSC-51兼容。
片内的Flash存储器允许在系统内改编程序或常规的非易失性存储器编程器来编程。
因此AT89C51是一种功能强,灵活性高,且价格合理的单片机,可方便地应用在各种控制领域。
3.2.1AT89C51的主要性能
●内含4KB的Flash存储器,擦写次数1000次;
●内含128字节的RAM;
●具有32根可编程IO线;
●具有2个16位可编程定时器;
●具有6个中断源、5个中断矢量、2级优先权的中断结构;
●具有一个全双工的可编程串行通信接口;
●具有一个数据指针DPTR;
●两种低功耗工作模式,即空闲模式和掉电模式;
●具有可编程的3级程序锁定位;
●AT89C51的工作电压为5(1±0.2)V且典型值为5V;
●AT89C51最高工作频率为24MHz.
3.2.2AT89C51引脚功能说明
图3-2是AT89C51的引脚结构图,有双列直插封装(DIP)方式和方形封装方式,下面分别叙述这些引脚的功能。
1、电源线
●Vcc:
电源电压输入引脚。
●GND:
电源地。
图3-2AT89C51引脚排列
2、外接晶振引脚XTAL1和XTAL2
●XTAL1:
接外部晶体的一个引脚。
在单片机内部,它是构成片内振荡器反相放大器和时钟发生线路的输入端。
当采用片内振荡器时,连接外部石英晶体和微调电容。
●XTAL2:
接外部晶体的另一个引脚。
在单片机内部,它是构成片内振荡器反相放大器和时钟发生线路的输出端。
当采用片内振荡器时,连接外部石英晶体和微调电容。
单片机外接电路。
时钟产生和复位电路。
片内电路与片外器件就构成一个时钟产生电路,CPU的所有操作均在时钟脉冲同步下进行。
片内振荡器的振荡频率非常接近晶振频率,一般多在1.2MHz~12MHz之间选取。
C1、C2是反馈电容,其值在5pF~30pF之间选取,典型值为30pF。
本电路选用的电容为30pF,晶振频率为12MHz。
这样就确定了单片机的4个周期分别是:
振荡周期=112
;
机器周期(SM)=
;
指令周期=
。
图3-3时钟产生电路
XTAL1和XTAL2:
片内振荡电路输入线,这两个端子用来外接石英晶体和微调电容。
在石英晶体的两个管脚加交变电场时,它将会产生一定频率的机械变形,而这种机械振动又会产生交变电场,上述物理现象称为压电效应。
一般情况下,无论是机械振动的振幅,还是交变电场的振幅都非常小。
但是,当交变电场的频率为某一特定值时,振幅骤然增大,产生共振,称之为压电振荡。
这一特定频率就是石英晶体的固有频率,也称谐振频率。
即用来连接AT89C51片内OSC的定时反馈回路,如图3-3所示。
石英晶振起振后要能在XTAL2线上输出一个3V左右的正弦波,以便使MCS-51片内的OSC电路按石英晶振相同频率自激振荡。
通常,OSC的输出时钟频率fOSC为0.5MHz—16MHz,典型值为12MHz或11.0592MHz。
电容C1和C2可以帮助起振,典型值为30pF,调节它们可以达到微调fOSC的目的。
图3-4为单片机复位电路。
单片机在开机时都需要复位,以便中央处理器CPU以及其他功能部件都处于一个确定的初始状态,并从这个状态开始工作。
单片机的复位后是靠外部电路实现的,在时钟电路工作后,只要在单片机的RST引脚上出现24个时钟振荡脉冲(2个机器周期)以上的高电平,单片机便可实现初始化状态复位。
MCS-51单片机的RST引脚是复位信号的输入端。
例如:
若MCS-51单片机时钟频率为12MHz,则复位脉冲宽度至少应该为2μs。
图3-4复位电路
上图为上电复位和按键复位电路。
上电瞬间,RST端的电位与Vcc相同,随着电容的逐步充电,RST端的电位逐渐下降,此时ζ=22×10-6×1×103=22ms.当按下键时,RST端出现5×10001200≈4.2V,使单片机复位。
3、控制信号线
●RST:
复位输入信号,高电平有效。
在振荡器稳定工作时,在该引脚上施加两个机器周期(即24个晶振周期)以上的高电平将使单片机复位。
●ALE
:
低字节地址锁存信号ALE(AddressLatchEnable)
在系统扩展时,ALE的下降沿将P0口输出的低8位地址锁存在外接的地址锁存器中,以实现低字节地址和数据的分时传送。
此外ALE端连续输出正脉冲,频率为振荡器频率的16,可用作对外输出的时钟,或用于定时目的。
但是要注意的是:
每当访问RAM时要丢失一个ALE脉冲。
在编程期间,该引脚还用于输入编程脉冲(
)。
如果需要的话,通过对专用寄存器(SFR)区中8EH单元的D0位置数,可禁止ALE操作.该位置数后,只有在执行一条MOVX或MOVC指令期间,ALE才会被激活.另外,该引脚会被微弱拉高,单片机执行外部程序时,该设定禁止ALE位无效。
●
:
片外程序存储器读选通信号允许,低电平有效。
在片外程序存储器取指期间,当
有效时,程序存储器的内容被送至
口(数据总线);在访问外部RAM时,
无效。
●
Vpp:
外部程序存储器访问允许信号EA(ExternalAccessEnable)。
当
信号接地时,对ROM的读操作限定在外部程序存储器,地址为0000H~FFFFH;当
接Vcc时,对ROM的读操作从内部程序存储器开始,并可延续至外部程序存储器。
在编程时,该引脚可接编程电压(AT89C51的Vpp为5V或12V)。
在编程校验时,该引脚可接Vcc。
4、输入输出引脚P0.0—P0.7,P1.0—P1.7,P2.0—P2.7,P3.0—P3.7
●P0端口(P0.0—P0.7):
8位、漏极开路的双向IO口。
当使用片外存储器及外扩IO口时,P0口作为低字节地址数据复用线。
在编程时,P0口可用于接收指令代码字节;在程序校验时,P0口可输出指令字节(这时需要加外部上拉电阻)。
P0口也可作通用IO口使用,但需加上拉电阻,变为准双向口。
当作为普通输入时,应将输出锁存器置1。
P0口可驱动8个TTL负载。
●P1端口(P1.0—P1.7):
8位、准双向IO口,具有内部上拉电阻。
P1口是为用户准备的IO双向口。
在编程和校验时,可用作输入低8位地址。
用作输入时,应先将输出锁存器置1。
P1口可驱动4个TTL负载。
●P2端口(P2.0—P2.7):
8位、准双向IO口,具有内部上拉电阻。
当使用片外存储器或外扩IO口时,P2口输出高8位地址。
在编程校验时,P2口可接收高字节地址和某些控制信号。
P2口也可作普通IO口使用。
用作输入时,应先将输出锁存器置1。
P2口可驱动4个TTL负载。
●P3端口(P3.0—P3.7):
8位、准双向IO口,具有内部上拉电阻。
P3口可作为普通IO口。
用作输入时,应先将输出锁存器置1。
在编程校验时,P3口接收某些控制信号。
它可驱动4个TTL负载。
在AT89C51中,P3端口还用于一些复用功能。
复用功能如表3-1所示。
表3-1P3各端口引脚与复用功能表
端口引脚
复用功能
P3.0
RXD(串性输入口)
P3.1
TXD(串性输出口)
P3.2
(外部中断0)
P3.3
(外部中断1)
P3.4
T0(定时器0的外部输入)
P3.5
T1(定时器1的外部输入)
P3.6
(外部数据寄存器写选通)
P3.7
(外部数据寄存器读选通)
3.3步进电机的驱动电路
步进电动机的驱动电路有多种,但最为常用的就是单电压驱动、双电压驱动、高低压驱动、斩波驱动、细分控制驱动等。
单电压驱动是步进电机控制中最为简单的一种驱动电路,电动机绕组在工作时只用一个电压源对绕组供电。
它的最大特点是结构简单,因它的工作效率低,特别是在高频下更显的突出。
它的外接电阻R要消耗相当一部分的热量,这样就会影响电路的稳定性所以此种驱动方式一般只用在小功率的步进电机的驱动电路中。
双电压驱动是电路一般采用两种电源电压来驱动,在低频段使用较低的电压驱动,在高频段使用较高的电压驱动。
这种驱动方法保证了低频段仍然具有单电压驱动的特点,在高频段具有良好的高频性能,但仍没摆脱单电压驱动的弱点,在限流电阻上仍然会产生损耗和发热。
高低压驱动不论电动机工作的频率如何,在绕组通电的开始用高压供电,使绕组中电流迅速上升,而后用低压来维持绕组中的电流。
这种驱动电路的缺点是在高低压连接处电流出现谷点,这样必然引起转矩在谷点处下降。
不宜于电机的正常运行。
对于斩波电路驱动则可以克服这种缺点,并且还可以提高步进电机的效率。
所以从提高效率来看这是一种很好的驱动电路,它可以用较高的电源电压,同时无需外接电阻来限定期额定电流和减少时间常数。
但由于其波形顶部呈现锯齿形波动,所以会产生较大的电磁噪声。
细分驱动是用脉冲电压来供电的,对于一个电压脉冲,转子就可以转动一步,一般会根据电压脉冲的分配方式,步进电机各相绕阻会轮流切换,固可以使步进电机的转子旋转。
细分控制的电路一般分为两类,一类是采用线性模拟功率放大器的方法获得阶梯形电流,这种方法简单,但效率低。
别一种是用单片机采用数字脉宽调制的方法获得阶梯电流,这种方法需要复杂的计算可使细分后的步距角一致。
3.4LED显示电路
在控制系统中,显示装置是一个重要组成部分,主要用来显示生产过程的工艺状况与运行结果,以便于现场工作人员的正确操作。
LED数码管由于具有结构简单、体积小、功耗低、配置灵活、显示清晰、可靠性高的优点,目前被广泛采用。
3.4.1LED显示器的结构原理
发光二极管LED是利用PN结把电能转换成光能的固体发光器件,根据制造材料的不同,可以发出红、黄、绿、白等不同色彩的可见光束。
LED的伏安特性类似于普通二极管,正向压降为2V左右,工作电流一般在10mv~20mv之间较为合适。
图3-58段LED显示器的结构原理
(a)段排列;(b)共阴极;(c)共阳极
一个8段LED显示器的结构与工作原理如图3-5所示。
它是由8个发光二极管组成,各段依次记为a、b、c、d、e、f、g、dp,其中dp表示小数点(不带小数点的称为7段LED)。
8段LED显示器有共阴极和共阳极两种结构,分别如图3-5(b)、(c)所示。
共阴极LED的所有发光管的阴极并接成公共端COM,而共阳极LED的所有发光管的阳极并接成公共端COM。
当共阴极LED的COM端接地,则某个发光二极管的阳极加上高电平时,则该管有电流流过因而点亮发光;当共阳极LED的COM端接高电平,则某个发光二极管的阴极加上低电平时,则该管有电流流过因而点亮发光。
8段LED通过不同段点亮时的组合,可以显示0~9、A~F等十六进制数。
显然,将CPU的数据线与LED各段引脚相连,控制输出的数据就可以使LED显示不同的字符。
通常把控制LED数码管发光显示字符的8位字节数据称为段选码、字符译码或字模,当段引脚dp~a与CPU数据位D7~D0一一对应相连时,共阴极8段LED显示器的段选码如表4-2所列。
以显示字符“3”的段选码为例,“3”的段选码是十六进制的4FH,也就是二进制的01001111。
结合图3-5(a)(b),即意味着CPU输出的数据位D7~D0为01001111,则使LED显示器的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 C51 单片机 步进 电机 控制系统 设计 毕业论文