步进电机控制系统课程设计说明书_第1页
步进电机控制系统课程设计说明书_第2页
步进电机控制系统课程设计说明书_第3页
步进电机控制系统课程设计说明书_第4页
步进电机控制系统课程设计说明书_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——步进电机控制系统课程设计说明书

步进电机速度控制软件、硬件设计。

目录

一.系统概述2二.步进电机简介3三.步进电机驱动4四..软件设计9五.步进电机控制器程序10六.设计感想20七.

步进电机速度控制软件、硬件设计。

一.系统概述

1.1步进电机控制工作原理

步进电机实际上是一个数字\角度转换器,也是一个串行的数\模转换器。步进电机的基本控制包括启停控制、转向控制、速度控制、换向控制4个方面。从结构上看,步进电机分为三相、四相、五相等类型,常用的则以三相为主。三相步进电机的工作方式有三相单三拍、三相双三拍和三相六拍3种,下面具体加以阐述。1.1.1步进电机的启停控制

步进电机由于其电气特性,运转时会有步进感,即振动感。为了使电机转动平滑,减小振动,可在步进电机控制脉冲的上升沿和下降沿采用细分的梯形波,可以减小步进电机的步进角,提高电机运行的平稳性。在步进电机停转时,为了防止因惯性而使电机轴产生顺滑,则需采用适合的锁定波形,产生锁定磁力矩,锁定步进电机的转轴,使步进电机的转轴不能自由转动。1.1.2步进电机的转向控制

假使给定工作方式正序换相通电,步进电机正转。若步进电机的励磁方式为三相六拍,即A-AB-B-BC-C-CA。假使按反序通电换相,即则电机就反转。其他方式状况类似。1.1.3步进电机的速度控制

假使给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。2个脉冲的间隔越短,步进电机就转得越快。调整送给步进电机的脉冲频率,就可以对步进电机进行调速。

步进电机速度控制软件、硬件设计。

1.1.4步进电机的换向控制

步进电机换向时,一定要在电机减速中止或降到突跳频率范围之内再换向,以免产生较大的冲击而损坏电机。换向信号一定要在前一个方向的最终一个脉冲终止后以及下一个方向的第1个脉冲前发出。对于脉冲的设计主要要求要有一定的脉冲宽度(一般不小于5μs)、脉冲序列的均匀度及高低电平方式。在某一高速下的正、反向切换实

质包含了减速→换向→加速3个过程。

二.步进电机简介

步进电机驱动器的工作原理

步进电机在控制系统中具有广泛的应用。它可以把脉冲信号转换成角位移,并且可用作电磁制动轮、电磁差分器、或角位移发生器等。

本设计首先要了解步进电机的工作原理,然后进行其驱动器的软、硬件设计。

1.步进电机的工作原理

步进电机速度控制软件、硬件设计。

步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的状况下,电机的转速,中止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为步距角.它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到确凿定位的目的;同时可以通过控制脉冲频率来控制电动机的转速和加速度,从而达到调速的目的。

三.步进电机驱动

步进电机驱动方式:

1、1相励磁法:每一个瞬间只有一个线圈导通,其它线圈休息。其特点是励磁方法简单,耗电低,确切度良好。但是力矩小、震动大,每次励磁走的都是标称角度.。

2、2相励磁法:每一瞬间有两个线圈同时导通,特点是力矩大、震动较小,每次励磁转动的角度是标称角度。

3’、1-2相励磁法:1相和2相轮番交替导通,精度较高,切运转平稳。每送一个励磁信号转动二分之一标称角度,也称为半步驱动。

1相励磁

步进电机速度控制软件、硬件设计。

2相励磁

1-2相励磁

步进电机速度控制软件、硬件设计。

该步进电机为一四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按适合的时序通电,就能使步进电机步进转动。图1是该四相反应式步进电机工作原理示意图。图1四相步进电机步进示意图

开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。

步进电机速度控制软件、硬件设计。

当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用,使转子转动,1、4号齿和C相绕组的磁极对齐。而0、3号齿和A、B相绕组产生错齿,2、5号齿就和A、D相绕组磁极

产生错齿。依次类推,A、B、C、D四相绕组轮番供电,则转子会沿着A、B、C、D方向转动。

四相步进电机依照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图2.a、b、c所示:

图2.步进电机工作时序波形图

2.基于AT89C2051的步进电机驱动器系统电路原理图3步进电机驱动器系统电路原理图

步进电机速度控制软件、硬件设计。

AT89C2051将控制脉冲从P1口的P1.4~P1.7输出,经74LS14反相后进入9014,经9014放大后控制光电开关,光电隔离后,由功率管TIP122将脉冲信号进行电压和电流放大,驱动步进电机的各相绕组。使步进电机随着不同的脉冲信号分别作正转、反转、加速、减速和中止等动作。图中L1为步进电机的一相绕组。AT89C2051选用频率22MHz的晶振,选用较高晶振的目的是为了在方式2下尽量减小AT89C2051对上位机脉冲信号周期的影响。

图3中的RL1~RL4为绕组内阻,50Ω电阻是一外接电阻,起限流作用,也是一个改善回路时间常数的元件。D1~D4为续流二极管,使电机绕组产生的反电动势通过续流二极管(D1~D4)而衰减掉,从而保护了功率管TIP122不受损坏。

步进电机速度控制软件、硬件设计。

在50Ω外接电阻上并联一个200μF电容,可以改善注入步进电机绕组的电流脉冲前沿,提高了步进电机的高频性能。与续流二极管串联的200Ω电阻可减小回路的放电时间常数,使绕组中电流脉冲的后沿变陡,电流下降时间变小,也起到提高高频工作性能的作用。

四..软件设计

驱动器根据拨码开关KX、KY的不同组合有三种工作方式供选择:

方式1为中断方式:P3.5(INT1)为步进脉冲输入端,P3.7为正反转脉冲输入端。上位机(PC机或单片机)与驱动器仅以2条线相连。方式2为串行通讯方式:上位机(PC机或单片机)将控制命令发送给驱动器,驱动器根据控制命令自行完成有关控制过程。方式3为拨码开关控制方式:通过K1~K5的不同组合,直接控制步进电机。

当上电或按下复位键KR后,AT89C2051先检测拨码开关KX、KY的状态,根据KX、KY的不同组合,进入不同的工作方式。以下给出方式1的程序流程框图与源程序。

在程序的编制中,要特别注意步进电机在换向时的处理。为使步进电机在换向时能平滑过渡,不至于产生错步,应在每一步中设置标志位。其中20H单元的各位为步进电机正转标志位;21H单元各位为反转标志位。在正转时,不仅给正转标志位赋值,也同时给反转标志位赋值;在反转时也如此。这样,当步进电机换向时,就可以上一次的位置作为起点反向运动,避免了电机换向时产生错步。

步进电机速度控制软件、硬件设计。

方式1程序框图

五.步进电机控制器程序

/*名称:步进电机控制器程序日期:2023年3月

内容:本程序用于测试4相步进电机常规驱动5个按键分别控制加速、减速、开启、中止和反转.

数码管显示01-18速度等级,数字越大,速度越大

步进电机速度控制软件、硬件设计。

*/

#includereg52.h

#defineKeyPortP3

#defineDataPortP0//定义数据端口程序中遇到DataPort则用P0替换

sbitLATCH1=P2^2;//定义锁存使能端口段锁存sbitLATCH2=P2^3;//位锁存

unsignedcharcode

dofly_DuanMa[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//显示段码值0~9unsignedcharcode

dofly_WeiMa[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//分别对应相应的数码管点亮,即位码

unsignedcharTempData[8];//存储显示值的全局变量

sbitA1=P1^0;//定义步进电机连接端口sbitB1=P1^1;sbitC1=P1^2;sbitD1=P1^3;

步进电机速度控制软件、硬件设计。

#defineCoil_AB1{A1=1;B1=1;C1=0;D1=0;}//AB相通电,其他相断电#defineCoil_BC1{A1=0;B1=1;C1=1;D1=0;}//BC相通电,其他相断电#defineCoil_CD1{A1=0;B1=0;C1=1;D1=1;}//CD相通电,其他相断电#defineCoil_DA1{A1=1;B1=0;C1=0;D1=1;}//D相通电,其他相断电#defineCoil_A1{A1=1;B1=0;C1=0;D1=0;}//A相通电,其他相断电#defineCoil_B1{A1=0;B1=1;C1=0;D1=0;}//B相通电,其他相断电#defineCoil_C1{A1=0;B1=0;C1=1;D1=0;}//C相通电,其他相断电#defineCoil_D1{A1=0;B1=0;C1=0;D1=1;}//D相通电,其他相断电#defineCoil_OFF{A1=0;B1=0;C1=0;D1=0;}//全部断电

unsignedcharSpeed=1;bitStopFlag;

voidDisplay(unsignedcharFirstBit,unsignedcharNum);voidInit_Timer0(void);unsignedcharKeyScan(void);/*

uS延时函数,含有输入参数unsignedchart,无返回值unsignedchar是定义无符号字符变量,其值的范围是0~255这里使用晶振12M,确切延时请使用汇编,大致延时长度如下T=tx2+5uS

步进电机速度控制软件、硬件设计。

voidDelayUs2x(unsignedchart){while(--t);}

/*

mS延时函数,含有输入参数unsignedchart,无返回值unsignedchar是定义无符号字符变量,其值的范围是0~255这里使用晶振12M,确切延时请使用汇编*/voidDelayMs(unsignedchart){while(t--){

//大致延时1mSDelayUs2x(245);}}

/*主函数DelayUs2x(245);

步进电机速度控制软件、硬件设计。

main(){

unsignedinti=512;//旋转一周时间unsignedcharnum;Init_Timer0();Coil_OFFwhile(1)//正向{

num=KeyScan();//循环调用按键扫描if(num==1)//第一个按键,速度等级增加{

if(Speed18)Speed++;}

elseif(num==2)//其次个按键,速度等级减小{

if(Speed1)Speed--;}

elseif(num==3){

步进电机速度控制软件、硬件设计。

Coil_OFF

StopFlag=1;}

elseif(num==4){

StopFlag=0;}

TempData[0]=dofly_DuanMa[Speed/10];//分解显示信息,如要显示68,则68/10=668%10=8

TempData[1]=dofly_DuanMa[Speed%10];}}

/*显示函数,用于动态扫描数码管

输入参数FirstBit表示需要显示的第一位,如赋值2表示从第三个数码管开始显示

如输入0表示从第一个显示。

Num表示需要显示的位数,如需要显示99两位数值则该值输入2*/

voidDisplay(unsignedcharFirstBit,unsignedcharNum){

步进电机速度控制软件、硬件设计。

staticunsignedchari=0;

DataPort=0;//清空数据,防止有交替重影

LATCH1=1;//段锁存LATCH1=0;

DataPort=dofly_WeiMa[i+FirstBit];//取位码LATCH2=1;//位锁存LATCH2=0;

DataPort=TempData[i];//取显示数据,段码LATCH1=1;//段锁存LATCH1=0;

i++;

if(i==Num)}

/*i=0;

步进电机速度控制软件、硬件设计。

定时器初始化子程序*/voidInit_Timer0(void){

TMOD|=0x01;//使用模式1,16位定时器,使用|符号可以在使用多个定时器时不受影响

//TH0=0x00;//给定初值//TL0=0x00;

EA=1;//总中断开启ET0=1;//定时器中断开启TR0=1;//定时器开关开启PT0=1;//优先级开启}

/*定时器中断子程序*/voidTimer0_isr(void)interrupt1{

staticunsignedchartimes,i;TH0=(65536-1000)/256;//重新赋值1ms

TL0=(65536-1000)%256;

步进电机速度控制软件、硬件设计。

Display(0,8);if(!StopFlag){

if(times==(20-Speed))

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论