




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程设计(论文)相关资料题目基于单片机的四相步进电机控制学 院 专 业 学 号学生姓名 指导教师二O二年六月二十五日目录第1章概述2第2章 设计内容的介绍3步进电机原理3步进电机的分类和选择4设计目标5.第3章设计思路具体内容6设计思路6总体设计框图及电路原理图6单片机及其最小系统7I按键电路7步进电机状态显示电路8步进电机驱动电路9第四章程序设计9程序设计思路9主程序设计10第五章总结10参考文献10附录11第1章概述步进电机最早是在1920年由英国人所开发。1950年后期晶体管的发明也逐 渐应用在步进电机上,这对于数字化的控制变得更为容易。以后经过不断改良, 使得今日步进电机已广泛运用在需
2、要高定位精度、高分解性能、高响应性、信赖 性等灵活控制性高的机械系统中。在生产过程中要求自动化、省人力、效率高的 机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精 确操作各项指令动作的灵活控制性场合步进电机用得最多。步进电机作为执行元 件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。随着微 电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都 有应用。步进电机是将电脉冲信号变换成角位移或直线位移的执行部件。步进电机可 以直接用数字信号驱动,使用非常方便。一般电动机都是连续转动的,而步进电 动机则有定位和运转两种基本状态,当有脉冲输入时步进
3、电动机一步一步地转 动,每给它一个脉冲信号,它就转过一定的角度。步进电动机的角位移量和输入 脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数 量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。在 没有脉冲输入时,在绕组电源的激励下气隙磁场能使转子保持原有位置处于定位 状态。因此非常适合于单片机控制。步进电机还具有快速启动、精确步进和定位 等特点,因而在数控机床,绘图仪,打印机以及光学仪器中得到广泛的应用。步 进电动机已成为除直流电动机和交流电动机以外的第三类电动机。传统电动机作 为机电能量转换装置,在人类的生产和生活进入电气化过程中起着关键的作用。 步进
4、电机可以作为一种控制用的特种电机,利用其没有积累误差(精度为100%) 的特点,广泛应用于各种开环控制。第2章设计内容的介绍步进电机原理步进电机的工作就是步进转动,其功用是将脉冲电信号变换为相应的角位移 或是直线位移,就是给一个脉冲信号,电动机转动一个角度或是前进一步。步进 电机的角位移量与脉冲数成正比,它的转速与脉冲频率(f)成正比,在非超载的 情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负 载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。如下所示的步进电机为一四相步进电机,采用单极性直流电源供电。只要对 步进电机的各相绕组按合适的时序通电,就能使步进电机
5、步进转动。图1是该四 相反应式步进电机工作原理示意图。图2-1四相步进电机步进示意图开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对 齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、 A相绕组磁极产生错齿。当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用,使转子转动,h 4号齿和C相绕组的磁极对齐。而0、 3号齿和A、B相绕组产生错齿,2、5号齿就和A、D相绕组磁极产生错齿。依次 类推,A、B、C、D四相绕组轮流供电,则转子会沿着A、B、C、D方向转动。单四拍.双四拍与八拍工作方式的电源通电时序与波
6、形分别如图2-2所示:脉冲 mruTJinjinniutn a 相 n_n_n b 柏 _n_n_n_ cts _JTTL-TL d 相 n n n nJunnnnrLnnjLnjiJTnjLnrij _ L_ T-LJ-Lr-L i _irILJLJLJlII1 L乩執四拍b双四拍C八拍-LJ_l_nU 1IIr图2-2步进电机工作时序坡形图步进电机的分类与选择现在比较常用的步进电机包括反应式步进电机(VR)、永磁式步进电机(PM)、 混合式步进电机(HB)和单相式步进电机等。反应式步进电动机采用高导磁材料构成齿状转子和定子,其结构简单,生产 成本低,步距角可以做的相当小,一般为三相,可实现
7、大转矩输出,步进角一般 为度,但噪声和振动都很大。反应式步进电机的转子磁路由软磁材料制成,定子 上有多相励磁绕组,利用磁导的变化产生转矩,但动态性能相对较差。永磁式步进电机转子采用多磁极的圆简形的永磁铁,在其外侧配置齿状定 子。用转子和定子之间的吸引和排斥力产生转动,它的出力大,动态性能好,但 步距角一般比较大。一般为两相,转矩和体积较小,步进角一般为度或15度。混合式步进电机是指混合了永磁式和反应式的优点。它又分为两相和五相: 两相步进角一般为度而五相步进角一般为度。这种步进电机的应用最为广泛, 它是PM和VR的复合产品,其转子采用齿状的稀土永磁材料,定子则为齿状的突 起结构。此类电机综合了
8、反应式和永磁式两者的优点,步距角小,出力大,动态 性能好,是性能较好的一类步进电动机,在计算机相关的设备中多用此类电机。步进电机有步距角(涉及到相数)、静转矩、及电流三大要素组成。一旦三 大要素确定,步进电机的型号便确定下来了。1、步距角的选择电机的步距角取决于负载精度的要求,将负载的最小分辨率(当量)换算到 电机轴上,每个当量电机应走多少角度(包括减速)。电机的步距角应等于或小 于此角度。目前市场上步进电机的步距角一般有度/度(五相电机)、度/度(二、 四相电机)、度/3度(三相电机)等。2、静力矩的选择步进电机的动态力矩一下子很难确定,我们往往先确定电机的静力矩。静力 矩选择的依据是电机工
9、作的负载,而负载可分为惯性负载和摩擦负载二种。单一 的惯性负载和单一的摩擦负载是不存在的。直接起动时(一般由低速)时二种负 载均要考虑,加速起动时主要考虑惯性负载,恒速运行进只要考虑摩擦负载。一 般情况下,静力矩应为摩擦负载的2-3倍內好,静力矩一旦选定,电机的机座及 长度便能确定下来(几何尺寸)。3、电流的选择静力矩一样的电机,由于电流参数不同,其运行特性差别很大,可依据矩频 特性曲线图,判断电机的电流(参考驱动电源、及驱动电压)。4、力矩与功率换算步进电机一般在较大范围内调速使用、其功率是变化的,一般只用力矩来衡 量,力矩与功率换算如下:P二 q m Q=2n n/60 P=2 n nM/
10、60其P为功率单位为瓦,Q为每秒角速度,单位为弧度,n为每分钟转速,M 为力矩单位为牛顿米P=2 n fM/400(半步工作)其中f为每秒脉冲数(简称PPS)设计目标(1)一个正反转开关控制正转和反转;(2)一个速度开关控制高速和低速(髙速和低速只要有明显差别);(3)一个半圈按钮,按一下时转半圈,一个一圈按钮,按一下时转一圈;(4)一个连续转动按钮,按一下时连续转动,再按一下时停止转动;(5)深入理解步进电机工作原理,设计系统方案;(6)用protel画出系统原理图,要求是一个完整的单片机控制系统,电源为 220V交流电在单片机实验室调试。第3章设计思路与具体内容设计思路本系统主要由供电电源
11、模块、单片机最小系统、按键电路、步进电机驱动电 路以及步进电机等几部分组成。本系统采用两个独立开关三个独立按钮,分别进 行髙低速、正反转、半圈、一圈以及连动的控制。驱动电路采用ULN2003A实现 步进电机的驱动。步进电机的供电采用独立12V供电。总体设计框图及电路原理图总体设计框图如图所示。图总体设计框图单片机最小系统及按键部分最小系统主要是为了单片机的正常工作。51单片机是一种低功耗/低电压、 高性能的8位单片机,它采用CMOS和髙密度非易失性存储器技术,而且其输出 引脚和指令系统都与MCS-51兼容;片内的Flash ROM允许在系统内改编程序或 用常规的非易失性编程器来编程,內部除CP
12、U外,还包括256字节RAM, 4K字节 的ROM,4个8位并行I/O 口,5个中断源,2个中断优先级,2个16位可编程定 时计数器。89S51单片机是一种功能强、灵活性高且价格合理的单片机,且支持 在线编程,完全满足本系统设计需要。单片机最小系统包括单片机和复位电路,振荡电路。按键电路采用2个开关3个按键来控制步进电机,即“高低速切换”、正反转切换”、 “半圈”、“一圈”和“连动切换”。当波动开关或按下其中一个按键时,电源通 过上拉电阻和按键到地形成通路,使相应输入管脚接地,即给单片机送入一个低 电平,此低电平即为有效电平。按键电路及单片机最小系统部分如图所示。I C13PmADCRPi.L
13、ALXl riADCZ PIJFMO PI.4F*M1 PIJ riA Pl.7 RST PA.7P2 4V2 :P22vcc FUJJ ro.i P02 PU5 ZM roj PO/i PO.TKUE.UKbULVDF4 Tt r:.l ALET43 IVrOF3.2 iAP4.: isT? njP2.7P3A15TKLKDLTO P2A raj ixr.aLT rzj w7 p:“ RDP37 XIAU XTALI J6PI 12口PT2514PL34上r 12 |VLPxMlVlVZAIVL/AlVilL20 2VVVC C12 I dJMOTOR STLPFLR_ULN2003A(36
14、)SV图步进电机的驱动电路第四章程序设计程序设计思路根据单片机外围电路的设计,单片机的、为按键输入,、与电机驱动 IC相连。单片机采用扫描按键方式(其中连动切换按键采用外部中断方式),程 序根据键值结果进行相应的操作。步进电机的正反转利用给步进电机送入与原来 相反的脉冲即可,步进电机的加减速控制是主要控制步进电机送脉冲的时间。程序设计程序中首先进行两个切换开关的检测,确定电机转速及方向,然后进行按键扫描, 确定点动和电动方式或者连动,其中连动切换用外部中断0控制。图程序流程图第五章总结通过此次课程设计,使我更加扎实的掌握了有关单片机应用方面的知识,在 设计过程中尤其是自己动手编制程序时,遇到了
15、很多困难,但经过一次又一次的 思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知 识欠缺和经验不足。实践出真知,通过亲自动手制作,使我掌握的知识不再是纟氏 上谈兵,而是学以致用。同时,这次课程设计让我感受到了我对所学习的内容是多么的不熟练,在设 计过程中总是需要翻书,还总是会出现问题,同时这些问题也提醒了我那些地方 没学好,加深了对这部分知识的印象。课程设计不仅仅是一门专业课,使我学到很多专业知识以及提升了专业技能 上,同时又是一门提升自我综合能力的课程,给了我莫大的发展空间,不仅培养 了独立思考、动手操作的能力,在各种其它能力上也都有了提髙;更重要的是, 在课程设计中,我
16、们学会了很多学习的方法,而这些都将为日后做准备,会使我 们终身都受益匪浅。面对社会的挑战,只有不断的学习、实践,再学习、再实践, 才能在最大程度上发掘自己。这对于我们的将来也有很大的帮助。以后,不管有 多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。参考文献1 丁元杰著.单片徵机原理及应用M.机械工业出版社,2010年1月2 李秀n PROTEL dxp2004电路设计与仿真教程M.北京:北京航空航天大学出版社,2007年11月附录电路原理图1 DilOUT 1M i亠5 IS4ULI 45,ULIJn6H7 IMTir T ?CIMUIM HAW*=tUCMiMiMItn:i
17、mim2:bmstr:r.a程序代码:ttinclude /uchar.uint,宏定义#define uchar unsigned charttdefine uint unsigned int/开关,位定义sbit Direction二P2 0; /正反转方向切换sbit Speed = P2l;/高低速切换/按键,位定义sbit Half = P22; / 转半圈sbit Circle = P2、3;/ 转一圈sbit Switch = P32;/连续转动/停止切换/步进电机连接端口,位定义sbit Al = Pro;sbit Bl = Pri;/B相,因头文件已定义BS故用Blsbit
18、Cl = P2;sbit DI = P3;/通电方式,宏定义ttdefine Co订_A1 A1=1;B1=O;C1=O;D1=O;/A相通电,其他相断电#define Coiljil Al=0;Bl=l;Cl=0;Dl=0;)/B相通电,其他相断电ftdefine CoiLCl Al=0;B1-O;C1=1;D1-O;)C相通电,其他相浙电ttdefine Coil_Dl Al=0;Bl=0;Cl=0;Dl=l;/D相通电,其他相断电ttdefine Coil.OFF(A1=0;B1=0;C1=0;Dl=0;/全部断电/全局变量定义uint vl = 10; /高速转速uint v2 = 5
19、;/低速转速uint i = 512; /转动一圈uint j = &/转动半圈bit Flag - 1;子函数声明void DelayUs2x( uchar t );void DelayMs( uchar t );void Init_TimeO( void );/void TimcO_isr( void ) interrupt 1/void Forward( uint a ) ;/正转子函数/void Reverse( uint b ) ;/反.转子函数/uS延时函数,晶振使用12H大致延时T二(tx2+5) uSvoid DelayUs2x( uchar t )(wh i1e( t ):/
20、mS延时函数,晶振使用12Mt大致廷时T二5Svoid DelayMs( uchar t )wh i1e( t)DelayUs2x( 245 );DelayUs2x( 245 );/正糕.a = i或jb二vvoid Forward( uint a. uint b )Coil_OFFwh i1e( a)Coil_AlDelayMs( b );Coil BlDelayMs ( b );CoiLClDelayMs ( b );Coil.DlDelayMs ( b );/反转,a = i j.b = vl 或 v2 void Reverse( uint a, uint b ) Coil_0ITwhi
21、le( a)CoiLDIDelayMs ( b );Coil.ClDelayMs( b );CoiLBlDelayMs ( b );Coil.AlDelayMs ( b );/连续转动,正b =讥或v2 void Coni( uint b )Coil_0ITif( !Flag )Co i LAIDelayMs ( b );Coil.BlDelayMs ( b );CoiLClDelayMs ( b );CoiLDlDelayMs( b ):/连续转动反转b = vl或v2void Con2( uint b )CoiLOFFif( !Flag )Coil_DlDelayMs( b );Coil.
22、ClDelayMs( b ):Coil_BlDelayMs( b );Coil_AlDelayMs( b ); void ISR_INT0( void ) interrupt 0 if( JINTO )DelayMs(10);if( !1NTO )while(JINTO);Flag = !Flag;/主函数int main( void )EA = 1; 开全局中断EXO = 1;/开外部中断0ITO = 1;/边沿触发while(l)CoiLOFFi f ( Speed & Direction )/高逮(vl),正转(Forward)/开关,故无需消抖环节if( Flag & !Half )/转半圈while( !Half );/等待按镀释放Forward( j. vl );/半圈,高速else if( Flag& JCircle )/转一圈while( !Circle );Forward( i. vl );else if( !Flag )/ 连续转动Coni( vl );else if( Flag & Half &Circle )Coil_01TelseCoil_01Telse if( !Speed & Direction )/低速(v2) 正转(F
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论