步进电机驱动器的设计.docx
《步进电机驱动器的设计.docx》由会员分享,可在线阅读,更多相关《步进电机驱动器的设计.docx(12页珍藏版)》请在冰豆网上搜索。
步进电机驱动器的设计
步进电机驱动器的设计
专业课程设计报告
题目:
姓名:
专业:
XXX通信工程XXXXXXXXXXXX老师
班级号:
同组人:
指导师:
XXXX大学xxxx学院2013年7月4日
xxxx专业 课程设计任务书
20XX-20XX学年第2学期第16周-19周
题目内容及要求了解三相六拍步进电机的工作原理;一个输入脉冲转一步;可控制步进电机运转的方向和速度。
键盘单片机电平匹配电平匹配功放功放电机电平匹配功放进度安排第xx周:
查阅资料,确定方案,完成原理图设计及仿真;第xx周:
领取元器件、仪器设备,制作、焊接电路;第xx周:
调试电路,完成系统的设计;第xx周:
检查设计结果、撰写课设报告。
学生姓名:
XXXX、XXXX指导时间:
第xx~xx周任务下达考核方式指导教师
指导地点:
X楼XX室任务完成20XX年7月5日20XX年6月10日√ 2.答辩□ 3.实际操作□√ 4.其它□1.评阅□XXX系主任XXX
摘要
本次课程设计为步进电机驱动器,步进电机驱动器是电机精确运转控制的主要核心所在,它主要stc89c51单片机为控制核心,外加电机驱动芯片、步进电机转数显示电路及步进电机工作模式选择控键组成。
通过此设计,步进电机运转精确、方便,只需拨动控键,就能控制电机的转速、旋转方向及电机单双拍选择。
关键字:
步进电机控制,单片机显示电路,ULN20XXA应用
目录
第一章第二章
概述..................................................................................................................1设计内容的介绍..............................................................................................2
步进电机原理......................................................................................................2步进电机的工作方式...............................................................................2步进电机的转向控制...............................................................................3步进电机的启停控制...............................................................................3步进电机的速度控制...............................................................................3步进电机的分类与选择......................................................................................4步进电机的分类.......................................................................................4步进电机的选择.......................................................................................4设计目标..........................................................................................................5第三章
设计思路与具体内容......................................................................................6
设计思路..............................................................................................................6总体设计框图及电路原理图..............................................................................6单片机最小系统及按键部分..............................................................................6按键电路..............................................................................................................7步进电机驱动电路..............................................................................................8步进电机拍数显示电路......................................................................................8LED显示电路.....................................................................................................9第四章
程序设计........................................................................................................10
程序设计思路....................................................................................................10步进电机模块设计............................................................................................12显示模块设计....................................................................................................13步进电机调速模块设计....................................................................................14总 结........................................................................................................................15
第二章设计内容的介绍
步进电机原理
步进电机的工作方式
步进电机的工作就是步进转动,其功用是将脉冲电信号变换为相应的角位移或是直线位移,就是给一个脉冲信号,电动机转动一个角度或是前进一步。
步进电机的角位移量与脉冲数成正比,它的转速与脉冲频率(f)成正比,在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
如下所示的步进电机为一四相步进电机,采用单极性直流电源供电。
只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。
图2-1是该四相反应式步进电机工作原理示意图。
图2-1四相步进电机步进示意图
开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组
2
磁极产生错齿。
当开关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-2所示:
图2-2步进电机工作时序波形图
步进电机的转向控制
如果给定工作方式正序换相通电,步进电机正转。
若步进电机的励磁方式为三相六拍,即A-AB-B-BC-C-CD-D-DA-A。
如果按反序通电换相,即则电机就反转。
步进电机的启停控制
步进电机于其电气特性,运转时会有步进感,即振动感。
为了使电机转动平滑,减小振动,可在步进电机控制脉冲的上升沿和下降沿采用细分的梯形波,可以减小步进电机的步进角,提高电机运行的平稳性。
在步进电机停转时,为了防止因惯性而使电机轴产生顺滑,则需采用合适的锁定波形,产生锁定磁力矩,锁定步进电机的转轴,使步进电机的转轴不能自转动。
步进电机的速度控制
步进电动机运转的速度是输入到A、B、C、D四相绕组的频率所决定的。
脉冲的频率越高,电动机运转的速度越快,否则,速度就越慢。
因而通过延时程序控制输出脉冲的频率,就可以实现对步进电机速度的控制。
3
步进电机的分类与选择
步进电机的分类
现在比较常用的步进电机包括反应式步进电机、永磁式步进电机、混合式步进电机和单相式步进电机等。
反应式步进电动机采用高导磁材料构成齿状转子和定子,其结构简单,生产成本低,步距角可以做的相当小,一般为三相,可实现大转矩输出,步进角一般为度,但噪声和振动都很大。
反应式步进电机的转子磁路软磁材料制成,定子上有多相励磁绕组,利用磁导的变化产生转矩,但动态性能相对较差。
永磁式步进电机转子采用多磁极的圆筒形的永磁铁,在其外侧配置齿状定子。
用转子和定子之间的吸引和排斥力产生转动,它的出力大,动态性能好,但步距角一般比较大。
一般为两相,转矩和体积较小,步进角一般为度或15度。
混合式步进电机是指混合了永磁式和反应式的优点。
它又分为两相和五相:
两相步进角一般为度而五相步进角一般为度。
这种步进电机的应用最为广泛,它是PM和VR的复合产品,其转子采用齿状的稀土永磁材料,定子则为齿状的突起结构。
此类电机综合了反应式和永磁式两者的优点,步距角小,出力大,动态性能好,是性能较好的一类步进电动机,在计算机相关的设备中多用此类电机。
步进电机的选择
步进电机有步距角、静转矩、及电流三大要素组成。
一旦三大要素确定,步进电机的型号便确定下来了。
a)步距角的选择
电机的步距角取决于负载精度的要求,将负载的最小分辨率换算到电机轴上,每个当量电机应走多少角度。
电机的步距角应等于或小于此角度。
目前市场上步进电机的步距角一般有度/度、度/度、度/3度等。
b)静力矩的选择
步进电机的动态力矩一下子很难确定,我们往往先确定电机的静力矩。
静力矩选择的依据是电机工作的负载,而负载可分为惯性负载和摩擦负载二种。
单一的惯性负
4
载和单一的摩擦负载是不存在的。
直接起动时时二种负载均要考虑,加速起动时主要考虑惯性负载,恒速运行进只要考虑摩擦负载。
一般情况下,静力矩应为摩擦负载的2-3倍内好,静力矩一旦选定,电机的机座及长度便能确定下来。
c)电流的选择
静力矩一样的电机,于电流参数不同,其运行特性差别很大,可依据矩频特性曲线图,判断电机的电流。
d)力矩与功率换算
步进电机一般在较大范围内调速使用、其功率是变化的,一般只用力矩来衡量,力矩与功率换算如下:
其P为功率单位为瓦,Ω为每秒角速度,单位为弧度,n为每分钟转速,M为力矩单位为牛顿米
P=2πfM/400(半步工作)
设计目标
一个正反转开关控制正转和反转;
一个速度开关控制高速和低速;一个启动/停止控制开关,控制整个系统的开启和关闭;三个拍数控制开关,分别是单拍、双拍和单双拍;深入理解步进电机工作原理,设计系统方案;用proteus和keilc仿真设计方案。
5
第三章设计思路与具体内容
设计思路
本系统主要供电电源模块、单片机最小系统、按键电路、步进电机驱动电路以及步进电机等几部分组成。
本系统采用两个独立开关三个独立按钮,分别进行高低速、正反转、半圈、一圈以及连动的控制。
驱动电路采用ULN20XXA实现步进电机的驱动。
步进电机的供电采用独立5V供电。
总体设计框图及电路原理图
总体设计框图如图所示。
按键控制
图总体设计框图单片机最小系统 显示电驱动芯片步进电单片机最小系统及按键部分
最小系统主要是为了单片机的正常工作。
51单片机是一种低功耗/低电压、高性能的8位单片机,它采用CMOS和高密度非易失性存储器技术,而且其输出引脚和指令系统都与MCS-51兼容;片内的FlashROM允许在系统内改编程序或用常规的非易失性编程器来编程,内部除CPU外,还包括256字节RAM,4K字节的ROM,4个8位并行I/O口,5个中断源,2个中断优先级,2个16位可编程定时计数器。
89S51单片机是一种功能强、灵活性高且价格合理的单片机,且支持在线编程,完全满足本系统设计需要。
单片机最小系统包括单片机和复位电路。
6
图51单片机最小系统及按键电路
按键电路
采用6个开关来控制步进电机,即“单拍”、“双拍”和“单双拍”、“启动闭合”、“高低速切换”、“正反转切换”。
当波动开关按下其中一个按键时,当开关向上时,使对应IO口就接通5v电源;向下时,对应IO口接通地。
如下为按键电路:
图按键电路
7
步进电机驱动电路
步进电机的驱动电路如图所示,驱动芯片采用ULN20XXA。
图步进电机的驱动电路
步进电机拍数显示电路
80C51的P0口取出显示码,从80C51的输出位选码,设计中我们主要用到4位显示步数既可。
原理图如下:
图显示电路
8
LED显示电路
用3个不同颜色的发光二极管来作为指示灯显示,将接D2,接D3,接D1,正转时D2指示灯亮,反转时D3指示灯亮,不转时D指示灯亮。
电路图如下:
图指示灯接线图
9
第四章程序设计
程序设计思路
设计说明:
首先复位单片机,然后从P3口读出开关状态,判断是否启动,没启动绿灯亮重新确认启动。
启动后再次读取P3口数据,判断工作方式并将对应的用来存储步进电机工作方式字的数组首地址值给q。
口的双向开关来控制步进电机的正反转,如果是正转则红灯亮,反转则绿灯亮。
在电机每走一步后,步数记数加1,然后通过LED显示把工作步数显示出来。
再从P3口把状态信息读出来,与之前的P3口的状态信息进行比较。
如果状态信息没有改变,电机继续运行。
如果状态信息改变了,就需要重新返回程序的开端,对电机的运行状态进行判断,让电机重新以新的状态运行。
此,开关的状态在电机每走一步都会查询一遍,做到实时地反映。
10
开始P3口、步数清数码管输出0启/停按键K3按下?
选D1显示灯亮N以已选择的序列输出控制字启/停按键K3按下?
步数自增一YK0/K1/K2选择工作方式控制字序列数码管输出步进步数正/反转按键K4按下?
N调速键K5按下?
NY选择正转控制字序列D2亮选选择反转控制字序列D3亮延时21延时
图总体流程图
11
步进电机模块设计
设计说明:
在此设计中,采用的是三相步进电机,对于步进电机模块的程序设计采用循环程序设计方法。
先把正反转向的控制模型存放在内存单元中,然后再逐一从单元中取出控制模块并输出。
首先启动,选择步进电机的拍数,输入步数,然后读入正反转的控制模型驱动步进电机转动,相步进电机的流程框图:
分模块入Y=1?
N=1?
Yk自增一N=1?
Y调用单位延时程序选择四相六八拍控制字序列输N不输出任何信号分模块出口图三相步进电机的流程框图
12
显示模块设计
设计说明:
显示模块是用4位八段数码管来显示工作步数。
先将显示码存入数组中,指向最左边一位,然后取出要显示的数据,指向换码表首地址,取出显示码,从P0口输出显示码,P2口输入位选码,显示出4位工作步数,最后修改数组地址,求下一位位选码继续显示。
动态显示步数子程序取出要显示数据求待显示数据显示码求下一位选码送位段码到P0口输出送位选码到输出修改数组地址延时4位显示完了吗 返回
图显示模块的程序框图
13
步进电机调速模块设计
为步进电机调速模块流程图,当=1时,即K5按下,系统选择单位延时程序的循环次数为5,此时步进电机快速运转,当=0时,即K5无效,系统选择单位延时程序的循环时间为50次,此时步进电机慢速运转。
模块入口调用单位延时程序=1Nk自增一YRRR=50RRR=500j=RRR?
Nk=0Y返回图步进电机调速模块流程图
14
总结
通过本次课程设计提高了我的设计方案和分析问题的能力,加深了对理论知识的理解,做到了理论知识与实践的联系。
在设计过程中大,之前并未学过proteus仿真软件,但通过此次课程设计认识到proteus在设计单片机的作用,通过仿真可以无成本地知道自己的方案是否正确,尤其是自己动手编制程序时,通过仿真可以明确地看到自己程序所暴露出来的缺陷和不足,当中遇到了很多困难,但经过一次又一次的思考,一遍又一遍的检查,并在老师和同学的帮助下终于找出了原因所在,当然也暴露出了前期我在这方面的知识欠缺和经验不足。
通过亲自动手制作,使我掌握的知识不再是纸上谈兵,而是学以致用。
同时,这次课程设计让我感受到了我对所学习的内容是多么的不熟练,特别是在课堂上学到的单片机知识相当欠缺实践,另外还有一点就是不能把以前学的特别是数电知识很好地运用到单片机外围电路上来,所以在设计过程中总是需要翻书,还总是会出现问题,同时这些问题也提醒了我那些地方没学好,通过这样一步步地摸索从而加深了对这部分知识的印象。
课程设计不仅仅是一门专业课,使我学到很多专业知识以及提升了专业技能上,同时又是一门提升自我综合能力的课程,给了我莫大的发展空间,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高;更重要的是,在课程设计中,我们学会了很多学习的方法,而这些都将为日后做准备,会使我们终身都受益匪浅。
面对社会的挑战,只有不断的学习、实践,再学习、再实践,才能在最大程度上发掘自己。
这对于我们的将来也有很大的帮助。
以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。
15
附录
程序代码
#include#includevoiddelay1(void);voiddelay2(void);voiddisplay(int);intbs=0;intcishu;main{
Chara,b,c,d,j,*q,
done1[10]={0x01,0x02,0x04,0x08,0x00,0x01,0x08,0x04,0x02,0x00},done2[10]={0x03,0x06,0x0c,0x09,0x00,0x03,0x09,0x0c,0x06,0x00},
done3[18]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09,0x00,0x01,0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x00}; P3=0x00;//口置1,绿灯亮,不工作
delay1;
L:
a=P3;
while(!
(a&0x08)) //判断是否
启动,若没启动则重新启动
{
P3=0x00; a=P3; delay1; }
a=P3; //判断工作模式if(a&0x01) //方式1模型 q=done1;
if(a&0x02) //方式2模型 q=done2; if(a&0x04) //方式3模型 q=done3;
if(a&0x20)//步进电机速度控制 cishu=5; else
cishu=50;
if(a&0x10) //判断电机是否要正转 {
P3=0x80; //口为
1,电机正转,红灯亮 b=0;
}
17
else {
P3=0x40; //口
为,电机反转,黄灯亮 if(a&0x04) b=9; else
b=5;
} d=b; while
(1) {
c=*(q+b);//判断步数是否走完 if(c==0)
b=d;//步数走完,重新再走 else { P1=c;//从P1输出控制信号 b++;
bs++;//总步数加1 display(bs);//显示步数 j=a;
a=P3;
}
if(a!
=j)//判断P3口状态信
号是否改变 {
if(!
(a&0x08))
bs=0;//步数清零
gotoL;
}//状态信号改变,返回到
开始,重新对电机控制 }
}voiddelay1 {inti,j;
for(i=0;i>1;//求下一位选码 delay2;
voiddelay2
{inti,j;
for(i=0;i<10;i++)
for(j=0;j<60;j++);}
}}
19
原理图
20
专业课程设计报告
题目:
姓名:
专业:
XXX通信工程XXXXXXXXXXXX老师
班级号:
同组人:
指导师:
XXXX大学xxxx学院2013年7月4日
xxxx专业 课程设计任务书
20XX-20XX学年第2学期第16周-19周
题目内容及要求了解三相六拍步进电机的工作原理;一个输入脉冲转一步;可控制步进电机运转的方向和速度。
键盘单片机电平匹配电平匹配功放功放电机电平匹配功放进度安排第xx周:
查阅资料,确定方案,完成原理图设计