DZ128单片机控制步进电机
DZ128单片机控制步进电机,dz128,单片机,控制,节制,步进,电机,机电
文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!单片机控制步进电机摘 要: 本设计采用 AT89S52 单片机为核心对步进电机进行控制,并且辅以必要的外围器件和电路,通过 IO 口输出的具有时序的方波作为步进电机的控制信号,信号经 TIP122 驱动步进电机;同时,用键盘对电机的状态进行控制,并用LCD 显示电机的转速。关键词:单片机 AT89S52; 步进电机; 文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!1目录前言31 步进电机原理简介31.1 控制换相顺序31.2 控制步进电机的转向31.3 控制步进电机的速度31.4 步进电机的静态指标及术语41.5 步进电机动态指标及术语41.6驱动控制系统组成52 步进电机控制方案73 电路设计84 程序设计分析95 系统调试106 总 结107 致 谢118 参考文献119 程序附录11文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!2单片机控制步进电机2004 级电子信息科学与技术专业班 *指导老师:*、初级实验师步进电机是机电控制中一种常用的执行机构,它的用途是将电脉冲转化为角位移,即当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。通过控制脉冲个数即可以控制角位移量,从而达到准确定位的目的;同时通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。其优点是结构简单、运行可靠、控制方便。尤其是步距值不受电压、温度的变化的影响、误差不会长期积累,这给实际的应用带来了很大的方便。它广泛用于消费类产品(打印机、照相机)、工业控制(数控机床、工业机器人)、医疗器械等机电产品中。1 步进电机原理简介步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。步进电机可分为反应式步进电机(简称 VR)、永磁式步进电机(简称 PM)和混合式步进电机(简称 HB)。步进电机区别于其他控制电机的最大特点是,它是通过输入脉冲信号来进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定。步进电机的驱动电路根据控制信号工作,控制信号由单片机产生。其基本原理作用如下:(1)控制换相顺序通电换相这一过程称为脉冲分配。例如:三相步进电机的三拍工作方式,其各相通电顺序为 A-B-CD,通电控制脉冲必须严格按照这一顺序分别控制A,B,C,D 相的通断。(2)控制步进电机的转向如果给定工作方式正序换相通电,步进电机正转,如果按反序通电换相,则电机就反转。(3)控制步进电机的速度文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!3如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。调整单片机发出的脉冲频率,就可以对步进电机进行调速。(4)步进电机的静态指标及术语相数:产生不同对极 N、S 磁场的激磁线圈对数。常用 m 表示。拍数:完成一个磁场周期性变化所需脉冲数或导电状态用 n 表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式 AB-BC-CD-DA-AB,四相八拍运行方式即 A-AB-B-BC-C-CD-D-DA-A.步距角:对应一个脉冲信号,电机转子转过的角位移用 表示。=360 度(转子齿数 J*运行拍数),以常规二、四相,转子齿为 50 齿电机为例。四拍运行时步距角为 =360 度 /(50*4)=1.8 度(俗称整步),八拍运行时步距角为 =360 度/(50*8)=0.9 度(俗称半步)。定位转矩:电机在不通电状态下,电机转子自身的锁定力矩(由磁场齿形的谐波以及机械误差造成的)静转矩:电机在额定静态电作用下,电机不作旋转运动时,电机转轴的锁定力矩。此力矩是衡量电机体积(几何尺寸)的标准,与驱动电压及驱动电源等无关。虽然静转矩与电磁激磁安匝数成正比,与定齿转子间的气隙有关,但过份采用减小气隙,增加激磁安匝来提高静力矩是不可取的,这样会造成电机的发热及机械噪音。(5)、步进电机动态指标及术语:步距角精度:步进电机每转过一个步距角的实际值与理论值的误差。用百分比表示:误差/步距角*100%。不同运行拍数其值不同,四拍运行时应在 5%之内,八拍运行时应在 15%以内。失步:电机运转时运转的步数,不等于理论上的步数。称之为失步。失调角:转子齿轴线偏移定子齿轴线的角度,电机运转必存在失调角,由失调角产生的误差,采用细分驱动是不能解决的。最大空载起动频率:电机在某种驱动形式、电压及额定电流下,在不加负载的情况下,能够直接起动的最大频率。最大空载的运行频率:电机在某种驱动形式,电压及额定电流下,电机不带负载的最高转速频率。文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!4运行矩频特性:电机在某种测试条件下测得运行中输出力矩与频率关系的曲线称为运行矩频特性,这是电机诸多动态曲线中最重要的,也是电机选择的根本依据。如下图所示:其它特性还有惯频特性、起动频率特性等。电机一旦选定,电机的静力矩确定,而动态力矩却不然,电机的动态力矩取决于电机运行时的平均电流(而非静态电流),平均电流越大,电机输出力矩越大,即电机的频率特性越硬。如下图所示:其中,曲线 3 电流最大、或电压最高;曲线 1 电流最小、或电压最低,曲线与负载的交点为负载的最大速度点。要使平均电流大,尽可能提高驱动电压,使采用小电感大电流的电机。电机的共振点:步进电机均有固定的共振区域,二、四相感应子式步进电机的共振区一般在 180-250pps 之间(步距角 1.8 度)或在 400pps 左右(步距角为 0.9 度),电机驱动电压越高,电机电流越大,负载越轻,电机体积越小,则共振区向上偏移,反之亦然,为使电机输出电矩大,不失步和整个系统的噪音降低,一般工作点均应偏移共振区较多。电机正反转控制: 当电机绕组通电时序为 AB-BC-CD-DA 或()时为正转,通电时序为 DA-CA-BC-AB 或( )时为反转。(6)驱动控制系统组成文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!5使用、控制步进电机必须由环形脉冲,功率放大等组成的控制系统,其方框图如下:1) 脉冲信号的产生。脉冲信号一般由单片机或 CPU 产生,一般脉冲信号的占空比为 0.3-0.4 左右,电机转速越高,占空比则越大。2) 信号分配感应子式步进电机以二、四相电机为主,二相电机工作方式有二相四拍和二相八拍二种,具体分配如下:二相四拍为 ,步距角为 1.8 度;二相八拍为 ,步距角为 0.9 度。四相电机工作方式也有二种,四相四拍为 AB-BC-CD-DA-AB,步距角为 1.8 度;四相八拍为 AB-B-BC-C-CD-D-AB,(步距角为 0.9 度)。3) 功率放大功率放大是驱动系统最为重要的部分。步进电机在一定转速下的转矩取决于它的动态平均电流而非静态电流(而样本上的电流均为静态电流)。平均电流越大电机力矩越大,要达到平均电流大这就需要驱动系统尽量克服电机的反电势。因而不同的场合采取不同的的驱动方式,到目前为止,驱动方式一般有以下几种:恒压、恒压串电阻、高低压驱动、恒流、细分数等。本设计使用单极四相步进电机,其结构图如下:脉冲信号 信号分配 功率放大 步进电机文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!6步进电机内部结构四个绕组引出四相(相 A1 相 A2 相 B1 相 B2)和两个公共线(接到电源的正机)。把绕组的某一相接到电源的地线,这样该绕组就会受到激励。我们采用四相八拍的控制方式,即 1 相与 2 相交替导通,这样可提高分辨率。每一步可转 0.9控制电机正转的励磁顺序如下表:相序 A1 B1 A2 B21 1 0 0 02 1 1 0 03 0 1 0 04 0 1 1 05 0 0 1 06 0 0 1 17 0 0 0 18 1 0 0 1表 1 步进电机的正反转相序若要求电机反转,将励磁信号倒过来传送即可。本设计采用感应子式步进电机!它的转子加有永磁体,以提供软磁材料的工作点,而定子激磁只需提供变化的磁场而不必提供磁材料工作点的耗能,因此该电机效率高,电流小,发热低。因永磁体的存在,该电机具有较强的反电势,其自身阻尼作用比较好,使其在运转过程中比较平稳、噪音低、低频振动小。当电流流过定子绕组时,定子绕组产生一矢量磁场,该磁场会带动转子旋转一角度,使得转子的一对磁场方向与定子的磁场方向一致。当定子的矢量磁场旋转一个角度,转子也随着该磁场转一个角度。每输入一个电脉冲,电动机转动一个角度前进一步。它输出的角位移与输入的脉冲数成正比、转速与脉冲频率成正比。改变绕组通电的顺序,电机就会反转。所以可用控制脉冲数量、频率及电动机各相绕组的通电顺序来控制步进电机的转动。2 步进电机控制方案控制系统的框图如下: 文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!73 电路设计原理图如下:文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!8步进电机驱动电路采用 12V DC 来工作。选用 TIP122 三极管来放大电流,另外 2 个公共端接 +l2 V,当 P10P13 输出脉冲信号,经过 TIP122 放大电流,从而控制步进电机转动。四个二极管 4007,在电路中起到续流的作用。PCB图如下:4 程序设计分析实验程序见附录本程序主要由键盘程序和步进电机驱动程序组成,主程序首先初始化各变量,步进电机驱动的各引脚均输出高电平,然后调用键盘程序,并作判断,如果有键按下,则调用键盘处理程序。步进电机的驱动工作是在定时器 T1 的中断服务程序中实现的,由前述分析,每次的定时时间到达以后,需要将 P1.4P1.7 依次接通,程度中用了一个变量DjCntr 来实现这一功能,在主程序初始化时,该变量被赋予初值 11110111B,文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!9进入到定时中断以后,将该变量取出送 ACC 累加器,并在累加器中进行左移,这样,该数值就变为 1110 1111,然后将该数与 P1 相“与”,此时,P1.0 即输出低电平,第二次进入中断时,先将该数取反,成为 00010000,然后将该数与 P1 相“或” ,这样,P1.0 即输出高电平,关断了相应的线圈,然后将该数重新取出,并作左移,即1110,1111 右移成为 11011111,将该数与 P1 相“与”,这样 P1.1 即输出低电平,依次类推,P1.3P1.0 即循环输出低电平。当这一数据变为 0111 1111 后,需要作适当的改动,将数据重新变回11110111,进行第二次循环。5 系统调试1)调试环境鉴于 KEIL 软件的优秀性能。本系统以 Keil uVision2为开发环境,通过编程下载到单片机 AT89S52 中。2)硬件调试本系统硬件相对简单,在设计制作过程中能轻易实现,但应注意:由于三极管在工作的时候会大量发热,所以本驱动电路不宜长时间工作,否则有烧坏元件的可能。加了散热片就可以相对延长工作时间,效果比较好。3)软件调试因硬件简单,那么软件就会相对复杂,有几个比较难调试的地方要注意下:第一点,要实现 LCD 显示转速,在编写程序时要很多转移指令。第二点,计算步进电机的转动角,来计算步进电机转一圈要多少个脉冲。4)调试结果经调试,本设计步进电机驱动电路能实现:1、按键 S1 正转、按键 S2 反转、按键 S4 停止。2、按键 S3 加速、减速转换但 LCD 显示转速则未能实现6 总结文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!10由于本人软件编写能力方面的不足,该设计没有达到LCD显示转速的要求,同时也存在着某些硬件设计方面的缺陷,由于三极管发热量大的问题,该电路不能长时间工作,否则极容易烧坏三极管等元件。通过此次设计,使我掌握了一些步进电机控制调试方面的知识,丰富了专业知识,也发现了自己的不足,今后一定要注意弥补!7 致谢在本论文完成之际,衷心感谢指导老师苏祖全老师在课题的选题、设计、论文的撰写等各方面的悉心指导,整个课题的设计和调试过程序中,给予我各方的支持和技术上的帮助;最后还要感谢老师、同学们的热情相助。8 参考文献1何立民.MCS-51系列单片机应用系统设计M.北京:北京航空航天大学出版社,1990.2张友德.单片微型机原理、应用与实验M.上海:复旦大学出版社,2000.3 彭介华.电子技术课程设计指导 M 北京: 高等教育出版社,2006。4李群芳,张士军,黄 建.单片微型计算机与接口技术 M 第二版 北京:电子工业出版社,20055张毅刚,彭喜元,姜守达,乔立岩. 新编MCS-51单片机应用设计M 第二版.哈尔滨:哈尔滨工业大学出版社.2006.6王成江,王安敏,张玉华.智能步进电机细分驱动控制器的研制.D微特电机.2003.3:44-457 谢自美.电子线路设计、实验、测试(第二版)M.武汉:华中理工大学出版社,20008 房小翠.单片机使用系统设计技术M.北京:国防工业出版社,1999.9 方日杰.电机制造工艺学M.机械工业出版社,1998.10 黄继业,潘松.EDA技术实用教程M.科学出版社,2005.11 许实尝.电机学M.机械工业出版社,1996.9 程序附录#include #define uchar unsigned char文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!11#define uint unsigned intuchar kongzhi,jia,jian;uint shikong=0;uchar code zhengzhuan=0x11,0x40,0x24,0x88;uchar code fanzhuan=0x88,0x24,0x40,0x11;/*/*延时子程序/*/*/void delay(uint i)while(i-);/*/*键盘检测子程序/*/*/void keytest(void) uchar keycode;P2=0xff;文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!12if(P2&0xff)!=0xff)delay(100);if(P2&0xff)!=0xff) keycode=P2;while(P2!=0xff);switch (keycode)case 0xfe:kongzhi=0;P0=0x00;break;case 0xfd:kongzhi=1;break;case 0xfb:kongzhi=2;break;case 0xf7:jia=kongzhi;kongzhi=3;break;case 0xef:jian=kongzhi;kongzhi=4;break;case 0xdf:kongzhi=5;break;default :break;/*/*主程序文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!13/*/*/main()uchar j;uint i, k;kongzhi=0;P0=0x00;while(1) keytest();if(kongzhi!=0) if( kongzhi=1)for(j=0;j4;j+)P0=zhengzhuanj;delay(1000+shikong);if(kongzhi=2)for(j=0;j4;j+)P0=fanzhuanj;delay(1000+shikong);文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!14if(kongzhi=3) shikong=shikong+100;kongzhi=jia;if(kongzhi=4) shikong=shikong-100;kongzhi=jian;if(kongzhi=5)/正转 5 秒,停,反转 5 秒 i=10;while(i-) k=10;while(k-)for(j=0;j4;j+)P0=zhengzhuanj;delay(1000); i=10;while(i-)k=10;while(k-)文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!15 for(j=0;j4;j+)P0=fanzhuanj;delay(1000); P0=0x00;delay(10000);delay(10000);i=10;while(i-)for(j=0;j4;j+)P0=zhengzhuanj;delay(10000); i=10;while(i-) for(j=0;j4;j+)P0=fanzhuanj;delay(10000); P0=0x00;文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!16kongzhi=0;文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!单片机控制步进电机摘 要: 本设计采用 AT89S52 单片机为核心对步进电机进行控制,并且辅以必要的外围器件和电路,通过 IO 口输出的具有时序的方波作为步进电机的控制信号,信号经 TIP122 驱动步进电机;同时,用键盘对电机的状态进行控制,并用LCD 显示电机的转速。关键词:单片机 AT89S52; 步进电机; 文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!1目录前言31 步进电机原理简介31.1 控制换相顺序31.2 控制步进电机的转向31.3 控制步进电机的速度31.4 步进电机的静态指标及术语41.5 步进电机动态指标及术语41.6驱动控制系统组成52 步进电机控制方案73 电路设计84 程序设计分析95 系统调试106 总 结107 致 谢118 参考文献119 程序附录11文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!2单片机控制步进电机2004 级电子信息科学与技术专业班 *指导老师:*、初级实验师步进电机是机电控制中一种常用的执行机构,它的用途是将电脉冲转化为角位移,即当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。通过控制脉冲个数即可以控制角位移量,从而达到准确定位的目的;同时通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。其优点是结构简单、运行可靠、控制方便。尤其是步距值不受电压、温度的变化的影响、误差不会长期积累,这给实际的应用带来了很大的方便。它广泛用于消费类产品(打印机、照相机)、工业控制(数控机床、工业机器人)、医疗器械等机电产品中。1 步进电机原理简介步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,因此非常适合于单片机控制。步进电机可分为反应式步进电机(简称 VR)、永磁式步进电机(简称 PM)和混合式步进电机(简称 HB)。步进电机区别于其他控制电机的最大特点是,它是通过输入脉冲信号来进行控制的,即电机的总转动角度由输入脉冲数决定,而电机的转速由脉冲信号频率决定。步进电机的驱动电路根据控制信号工作,控制信号由单片机产生。其基本原理作用如下:(1)控制换相顺序通电换相这一过程称为脉冲分配。例如:三相步进电机的三拍工作方式,其各相通电顺序为 A-B-CD,通电控制脉冲必须严格按照这一顺序分别控制A,B,C,D 相的通断。(2)控制步进电机的转向如果给定工作方式正序换相通电,步进电机正转,如果按反序通电换相,则电机就反转。(3)控制步进电机的速度文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!3如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。两个脉冲的间隔越短,步进电机就转得越快。调整单片机发出的脉冲频率,就可以对步进电机进行调速。(4)步进电机的静态指标及术语相数:产生不同对极 N、S 磁场的激磁线圈对数。常用 m 表示。拍数:完成一个磁场周期性变化所需脉冲数或导电状态用 n 表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式 AB-BC-CD-DA-AB,四相八拍运行方式即 A-AB-B-BC-C-CD-D-DA-A.步距角:对应一个脉冲信号,电机转子转过的角位移用 表示。=360 度(转子齿数 J*运行拍数),以常规二、四相,转子齿为 50 齿电机为例。四拍运行时步距角为 =360 度 /(50*4)=1.8 度(俗称整步),八拍运行时步距角为 =360 度/(50*8)=0.9 度(俗称半步)。定位转矩:电机在不通电状态下,电机转子自身的锁定力矩(由磁场齿形的谐波以及机械误差造成的)静转矩:电机在额定静态电作用下,电机不作旋转运动时,电机转轴的锁定力矩。此力矩是衡量电机体积(几何尺寸)的标准,与驱动电压及驱动电源等无关。虽然静转矩与电磁激磁安匝数成正比,与定齿转子间的气隙有关,但过份采用减小气隙,增加激磁安匝来提高静力矩是不可取的,这样会造成电机的发热及机械噪音。(5)、步进电机动态指标及术语:步距角精度:步进电机每转过一个步距角的实际值与理论值的误差。用百分比表示:误差/步距角*100%。不同运行拍数其值不同,四拍运行时应在 5%之内,八拍运行时应在 15%以内。失步:电机运转时运转的步数,不等于理论上的步数。称之为失步。失调角:转子齿轴线偏移定子齿轴线的角度,电机运转必存在失调角,由失调角产生的误差,采用细分驱动是不能解决的。最大空载起动频率:电机在某种驱动形式、电压及额定电流下,在不加负载的情况下,能够直接起动的最大频率。最大空载的运行频率:电机在某种驱动形式,电压及额定电流下,电机不带负载的最高转速频率。文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!4运行矩频特性:电机在某种测试条件下测得运行中输出力矩与频率关系的曲线称为运行矩频特性,这是电机诸多动态曲线中最重要的,也是电机选择的根本依据。如下图所示:其它特性还有惯频特性、起动频率特性等。电机一旦选定,电机的静力矩确定,而动态力矩却不然,电机的动态力矩取决于电机运行时的平均电流(而非静态电流),平均电流越大,电机输出力矩越大,即电机的频率特性越硬。如下图所示:其中,曲线 3 电流最大、或电压最高;曲线 1 电流最小、或电压最低,曲线与负载的交点为负载的最大速度点。要使平均电流大,尽可能提高驱动电压,使采用小电感大电流的电机。电机的共振点:步进电机均有固定的共振区域,二、四相感应子式步进电机的共振区一般在 180-250pps 之间(步距角 1.8 度)或在 400pps 左右(步距角为 0.9 度),电机驱动电压越高,电机电流越大,负载越轻,电机体积越小,则共振区向上偏移,反之亦然,为使电机输出电矩大,不失步和整个系统的噪音降低,一般工作点均应偏移共振区较多。电机正反转控制: 当电机绕组通电时序为 AB-BC-CD-DA 或()时为正转,通电时序为 DA-CA-BC-AB 或( )时为反转。(6)驱动控制系统组成文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!5使用、控制步进电机必须由环形脉冲,功率放大等组成的控制系统,其方框图如下:1) 脉冲信号的产生。脉冲信号一般由单片机或 CPU 产生,一般脉冲信号的占空比为 0.3-0.4 左右,电机转速越高,占空比则越大。2) 信号分配感应子式步进电机以二、四相电机为主,二相电机工作方式有二相四拍和二相八拍二种,具体分配如下:二相四拍为 ,步距角为 1.8 度;二相八拍为 ,步距角为 0.9 度。四相电机工作方式也有二种,四相四拍为 AB-BC-CD-DA-AB,步距角为 1.8 度;四相八拍为 AB-B-BC-C-CD-D-AB,(步距角为 0.9 度)。3) 功率放大功率放大是驱动系统最为重要的部分。步进电机在一定转速下的转矩取决于它的动态平均电流而非静态电流(而样本上的电流均为静态电流)。平均电流越大电机力矩越大,要达到平均电流大这就需要驱动系统尽量克服电机的反电势。因而不同的场合采取不同的的驱动方式,到目前为止,驱动方式一般有以下几种:恒压、恒压串电阻、高低压驱动、恒流、细分数等。本设计使用单极四相步进电机,其结构图如下:脉冲信号 信号分配 功率放大 步进电机文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!6步进电机内部结构四个绕组引出四相(相 A1 相 A2 相 B1 相 B2)和两个公共线(接到电源的正机)。把绕组的某一相接到电源的地线,这样该绕组就会受到激励。我们采用四相八拍的控制方式,即 1 相与 2 相交替导通,这样可提高分辨率。每一步可转 0.9控制电机正转的励磁顺序如下表:相序 A1 B1 A2 B21 1 0 0 02 1 1 0 03 0 1 0 04 0 1 1 05 0 0 1 06 0 0 1 17 0 0 0 18 1 0 0 1表 1 步进电机的正反转相序若要求电机反转,将励磁信号倒过来传送即可。本设计采用感应子式步进电机!它的转子加有永磁体,以提供软磁材料的工作点,而定子激磁只需提供变化的磁场而不必提供磁材料工作点的耗能,因此该电机效率高,电流小,发热低。因永磁体的存在,该电机具有较强的反电势,其自身阻尼作用比较好,使其在运转过程中比较平稳、噪音低、低频振动小。当电流流过定子绕组时,定子绕组产生一矢量磁场,该磁场会带动转子旋转一角度,使得转子的一对磁场方向与定子的磁场方向一致。当定子的矢量磁场旋转一个角度,转子也随着该磁场转一个角度。每输入一个电脉冲,电动机转动一个角度前进一步。它输出的角位移与输入的脉冲数成正比、转速与脉冲频率成正比。改变绕组通电的顺序,电机就会反转。所以可用控制脉冲数量、频率及电动机各相绕组的通电顺序来控制步进电机的转动。2 步进电机控制方案控制系统的框图如下: 文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!73 电路设计原理图如下:文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!8步进电机驱动电路采用 12V DC 来工作。选用 TIP122 三极管来放大电流,另外 2 个公共端接 +l2 V,当 P10P13 输出脉冲信号,经过 TIP122 放大电流,从而控制步进电机转动。四个二极管 4007,在电路中起到续流的作用。PCB图如下:4 程序设计分析实验程序见附录本程序主要由键盘程序和步进电机驱动程序组成,主程序首先初始化各变量,步进电机驱动的各引脚均输出高电平,然后调用键盘程序,并作判断,如果有键按下,则调用键盘处理程序。步进电机的驱动工作是在定时器 T1 的中断服务程序中实现的,由前述分析,每次的定时时间到达以后,需要将 P1.4P1.7 依次接通,程度中用了一个变量DjCntr 来实现这一功能,在主程序初始化时,该变量被赋予初值 11110111B,文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!9进入到定时中断以后,将该变量取出送 ACC 累加器,并在累加器中进行左移,这样,该数值就变为 1110 1111,然后将该数与 P1 相“与”,此时,P1.0 即输出低电平,第二次进入中断时,先将该数取反,成为 00010000,然后将该数与 P1 相“或” ,这样,P1.0 即输出高电平,关断了相应的线圈,然后将该数重新取出,并作左移,即1110,1111 右移成为 11011111,将该数与 P1 相“与”,这样 P1.1 即输出低电平,依次类推,P1.3P1.0 即循环输出低电平。当这一数据变为 0111 1111 后,需要作适当的改动,将数据重新变回11110111,进行第二次循环。5 系统调试1)调试环境鉴于 KEIL 软件的优秀性能。本系统以 Keil uVision2为开发环境,通过编程下载到单片机 AT89S52 中。2)硬件调试本系统硬件相对简单,在设计制作过程中能轻易实现,但应注意:由于三极管在工作的时候会大量发热,所以本驱动电路不宜长时间工作,否则有烧坏元件的可能。加了散热片就可以相对延长工作时间,效果比较好。3)软件调试因硬件简单,那么软件就会相对复杂,有几个比较难调试的地方要注意下:第一点,要实现 LCD 显示转速,在编写程序时要很多转移指令。第二点,计算步进电机的转动角,来计算步进电机转一圈要多少个脉冲。4)调试结果经调试,本设计步进电机驱动电路能实现:1、按键 S1 正转、按键 S2 反转、按键 S4 停止。2、按键 S3 加速、减速转换但 LCD 显示转速则未能实现6 总结文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!10由于本人软件编写能力方面的不足,该设计没有达到LCD显示转速的要求,同时也存在着某些硬件设计方面的缺陷,由于三极管发热量大的问题,该电路不能长时间工作,否则极容易烧坏三极管等元件。通过此次设计,使我掌握了一些步进电机控制调试方面的知识,丰富了专业知识,也发现了自己的不足,今后一定要注意弥补!7 致谢在本论文完成之际,衷心感谢指导老师苏祖全老师在课题的选题、设计、论文的撰写等各方面的悉心指导,整个课题的设计和调试过程序中,给予我各方的支持和技术上的帮助;最后还要感谢老师、同学们的热情相助。8 参考文献1何立民.MCS-51系列单片机应用系统设计M.北京:北京航空航天大学出版社,1990.2张友德.单片微型机原理、应用与实验M.上海:复旦大学出版社,2000.3 彭介华.电子技术课程设计指导 M 北京: 高等教育出版社,2006。4李群芳,张士军,黄 建.单片微型计算机与接口技术 M 第二版 北京:电子工业出版社,20055张毅刚,彭喜元,姜守达,乔立岩. 新编MCS-51单片机应用设计M 第二版.哈尔滨:哈尔滨工业大学出版社.2006.6王成江,王安敏,张玉华.智能步进电机细分驱动控制器的研制.D微特电机.2003.3:44-457 谢自美.电子线路设计、实验、测试(第二版)M.武汉:华中理工大学出版社,20008 房小翠.单片机使用系统设计技术M.北京:国防工业出版社,1999.9 方日杰.电机制造工艺学M.机械工业出版社,1998.10 黄继业,潘松.EDA技术实用教程M.科学出版社,2005.11 许实尝.电机学M.机械工业出版社,1996.9 程序附录#include #define uchar unsigned char文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!11#define uint unsigned intuchar kongzhi,jia,jian;uint shikong=0;uchar code zhengzhuan=0x11,0x40,0x24,0x88;uchar code fanzhuan=0x88,0x24,0x40,0x11;/*/*延时子程序/*/*/void delay(uint i)while(i-);/*/*键盘检测子程序/*/*/void keytest(void) uchar keycode;P2=0xff;文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!12if(P2&0xff)!=0xff)delay(100);if(P2&0xff)!=0xff) keycode=P2;while(P2!=0xff);switch (keycode)case 0xfe:kongzhi=0;P0=0x00;break;case 0xfd:kongzhi=1;break;case 0xfb:kongzhi=2;break;case 0xf7:jia=kongzhi;kongzhi=3;break;case 0xef:jian=kongzhi;kongzhi=4;break;case 0xdf:kongzhi=5;break;default :break;/*/*主程序文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!13/*/*/main()uchar j;uint i, k;kongzhi=0;P0=0x00;while(1) keytest();if(kongzhi!=0) if( kongzhi=1)for(j=0;j4;j+)P0=zhengzhuanj;delay(1000+shikong);if(kongzhi=2)for(j=0;j4;j+)P0=fanzhuanj;delay(1000+shikong);文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!14if(kongzhi=3) shikong=shikong+100;kongzhi=jia;if(kongzhi=4) shikong=shikong-100;kongzhi=jian;if(kongzhi=5)/正转 5 秒,停,反转 5 秒 i=10;while(i-) k=10;while(k-)for(j=0;j4;j+)P0=zhengzhuanj;delay(1000); i=10;while(i-)k=10;while(k-)文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!15 for(j=0;j4;j+)P0=fanzhuanj;delay(1000); P0=0x00;delay(10000);delay(10000);i=10;while(i-)for(j=0;j4;j+)P0=zhengzhuanj;delay(10000); i=10;while(i-) for(j=0;j4;j+)P0=fanzhuanj;delay(10000); P0=0x00;文档下载站 http:/www.800abc.cn 更多资源下载本站所有资源均来自互联网或本站会员提供,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您!16kongzhi=0;
收藏