步进电机控制器设计.docx
《步进电机控制器设计.docx》由会员分享,可在线阅读,更多相关《步进电机控制器设计.docx(10页珍藏版)》请在冰豆网上搜索。
步进电机控制器设计
单片机原理与应用技术
课程设计报告
步进电机控制器设计
专业班级:
电气工程及其自动化
姓 名:
时间:
2012.03.31~2012.04.20
指导教师:
徐君鹏
完成日期:
2012年04月19日
基于单片机控制的步进电机控制器设计任务书
1.设计目的与要求
设计出一个步进电机控制器,准确的理解有关要求,独立完成系统设计,要求所涉及的电路具有以下功能:
(1)实现步进电机的正反转控制
(2)实现步进电机的加速控制
(3)实现步进电机的减速控制
2.设计内容
(1)画出电路原理图,正确使用逻辑关系;
(2)确定元器件及组件参数;
(3)进行电路模拟仿真;
(4)SCH文件生成与打印输出;
(5)PCB文件生成与打印输出;
(6)系统的总体设计、安装和调试。
3.编写设计报告
写出设计的全过程,附上有关资料和图纸,有心得体会。
4.答辩
在规定时间内,完成叙述并回答问题。
目录
1引言4
2总体设计方案5
2.1设计思路5
2.2设计方法5
3设计原理分析6
3.1器件的选择6
3.1.1按键的选择6
3.1.2驱动电路的选择6
3.1.3单片机的选择6
3.1.4步进电机的选择6
3.2原理解析6
4总结与体会8
参考文献8
附录19
附录210
步进电机控制器设计
电气096班刘杰
摘要:
步进电机是一种纯粹的数字控制电机,是将电脉冲信号转变为角位移或线位移的开环控制组件。
本设计主要通过单片机编程实现对四相步进电机的ABCD四相输送稳定的有频率的脉冲信号,完成步进电机的信号分配功能。
只需要简单的编程,便可通过调节单片机输出脉冲控制步进电机的转向、转速和制动。
驱动电路是采用L298实现的。
步进电机只需采用最简单的开环控制就可取得非常高的控制精度,且这种系统不需要反馈信号,系统硬件实施比较简单。
整个系统采用模块化设计,结构简单,可靠,通过人机交互换接口可实现各功能设置,操作简单,易于掌握。
该系统可应用于步进电机在机电一体化控制等大多数场合。
实践证明,基于单片机控制的步进电机比传统的步进控制器具有更好的性能,更加简单、方便、可靠。
本设计的主要研究对象就是开环伺服系统中最常用的执行器件——步进电机。
关键词:
单片机;步进电机;正传;反转;加速;减速;停止。
1引言
步进电机的原始模型起源于1830年至1860年,1870年前后开始以控制为目的的尝试,应用于氩弧灯的电极输送机构中,这被认为最早的步进电机。
1950年后期晶体管的发明也逐渐应用在步进电机上,对于数字化的控制变得更为容易。
到20世纪60年代后期,在步进电机本体方面随着永磁材料的发展,各种实用性步进电机应运而生。
步进电机往后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解能、高响应性、信赖性等灵活控制性高的机械系统中。
在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。
,从50年代后期到60年代后期,主要是高等院校和科研机构为研究一些装置而使用或开发少量产品。
我国在文化大革命中开始大量生产和应用步进电机,例如江苏、浙江、北京、南京、四川等各地都有投入生产,而且都在各行业使用,其中的驱动电路所有半导体器件都是完全国产化的,当时是全分立元器件构成的逻辑运算电路,还有电容耦合输入的计数器,触发器,环形分配器。
中等耐压的大功率半导体器件也完全国产化。
70年代初期,步进电机的生产和研究都有所突破,除反映在驱动器设计方面的长足进步以外,对反应式步进电机本体的设计研究发展到一个较高的水平。
70年代中期至80年代中期为成品发展阶段,新品种高性能电动机不断被开发。
至80年代中期以来,由于步进电机精确模型做了大量研究工作,各种混合式步进电机及驱动器作为产品广泛利用。
目前,生产步进电机的厂家的确不少,但具有专业技术人员,能够自行开发,研制的厂家却非常少,大部分的厂家只一、二十人,连最基本的设备都没有。
仅仅处于一种盲目的仿制阶段。
这就给户在产品选型、使用中造成许多麻烦。
虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。
它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。
因此用好步进电机却非易事,它涉及到机械、电机、电子及计算机等许多专业知识。
步进电机作为执行组件,广泛应用在各种自动化控制系统中。
传统的步进电机控制方法是由触发器产生控制脉冲来进行控制的,此种控制方法工作方式单一且难于实现人机交互,当步进电机的参数发生变化时,需要重新进行控制器的设计。
传统的触发器构成的控制系统具有控制电路复杂、控制精度低、生产成本高等缺点。
对于实验室研究及要求较低的步进电机控制的场合,使用专用控制器有一定的局限性,而基于单片机控制的步进电机系统制作成本降低,集成度提高,可靠性增强,开发时间缩短,设计具有通用性,对于不同步进电机,可修改相应的电路及程序实现,系统控制具有灵活性。
本设计采用单片机对硬件接口的模块化设计,只有少量的输入输出端口,解决了传统步进电机电路控制线路复杂的问题。
本设计设置了三个不同的速度档,以供不同场合要求具体选择,而且可以通过简单修改程序参数任意设置用者想要的速度。
2总体设计方案
2.1设计思路
步进电机是数字控制电机,它将脉冲信号转变成角位移,即给一个脉冲信号,步进电机就转动一个角度,其最大特点就是通过输入脉冲信号来进行控制,即电机总转动角度由输入脉冲数决定,电机的转速由脉冲信号频率决定,因此适合于单片机控制,单片机产生驱动步进电机的脉冲信号,并送给驱动电路,驱动电路根据控制信号工作,实现步进电机的转速与方向控制。
驱动电路采用L298芯片对信号电流进行处理,放大,驱动步进电机工作。
其设计框图如图1所示。
步进电机
图1设计流程框图
2.2设计方法
本设计采用6*6按键作为单片机的输入控制信号,按1键复位;按键2停止;按键3正转;按键4反转;按键5加速;按键7减速;总共享了五个按键实现步进电机的各功能控制。
。
整个系统采用模块化设计,结构简单,可靠,通过人机交互换接口可实现各功能设置,操作简单,易于掌握。
3设计原理分析
3.1器件的选择
3.1.1按键的选择
本设计采用迷你型6×6按键,因为此按键比较小巧,占用电路板面积少,可以节省空间,电路板整体性增强,不过对按键的选择没有什么特殊要求,只要能工作就行,在实际设计过程中可以根据实际情况随机采取。
3.1.2驱动电路的选择
驱动电路有多种选择,可以用L298集成芯片,这款芯片接线电路很简单,L298N是ST公司生产的一种高电压、大电流电机驱动芯片,驱动功能该芯片采用15引脚封装,具有以下特点:
1、具有信号指示,2、转速可调,3、抗干扰能力强,4、具有过电压和过电流保护,5、可单独控制两台直流电机,6、可单独控制一台步进电机,7、PWM脉宽平滑调速,8、可实现正反转,9、采用光电隔离。
也可以采用8050三极管做驱动电路,对信号电流进行放大完成也比较简单,本设计采用前者。
3.1.3单片机的选择
单片微型计算机简称为单片机,又称为微型控制器,是微型计算机的一个重要分支。
单片机是70年代中期发展起来的一种大规模集成电路芯片,是CPU、RAM、ROM、I/O接口和中断系统于同一硅片的器件。
80年代以来,单片机发展迅速,各类新产品不断涌现,出现了许多高性能新型机种,现已逐渐成为工厂自动化和各控制领域的支柱产业之一。
本设计采用AT89S51单片机并使用汇编语言设计。
3.1.4步进电机的选择
步进电机最早是在1920年由英国人所开发。
1950年后期晶体管的发明也逐渐应用在步进电机上,这对于数字化的控制变得更为容易。
以后经过不断改良,使得今日步进电机已广泛运用在需要高定位精度、高分解性能、高响应性、信赖性等灵活控制性高的机械系统中。
在生产过程中要求自动化、省人力、效率高的机器中,我们很容易发现步进电机的踪迹,尤其以重视速度、位置控制、需要精确操作各项指令动作的灵活控制性场合步进电机用得最多。
步进电机作为执行组件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。
随着微电子和计算机技术的发展,步进电机的需求量与日俱增,在各个国民经济领域都有应用。
本设计采用日本三洋公司生产的103h6701—0440四相两相通用电机,本设计采用四相。
这款电机有六根进线,边上两根黑白线为电源线,都接Vcc,中间四根为ABCD四相。
3.2原理解析
AT89S51将控制脉冲从P1口低四位输出产生单四拍的驱动信号,经L298处理后,驱动步进电机的各相绕组,使步进电机随着不同的脉冲信号分别作正转、反转、加速、减速和停止等动作。
步进电机是一种作为控制用的特种电机,它的旋转是以固定的角度(称为"步距角")一步一步运行的,其特点是没有积累误差(精度为100%),所以广泛应用于各种开环控制。
步进电机的运行要有一电子装置进行驱动,这种装置就是步进电机驱动器,它是把控制系统发出的脉冲信号转化为步进电机的角位移,或者说:
控制系统每发一个脉冲信号,通过驱动器就使步进电机旋转一步距角。
所以步进电机的转速与脉冲信号的频率成正比。
控制步进脉冲信号的频率,可以对电机精确调速;控制步进脉冲的个数,可以对电机精确定位目的;步进电机通过细分驱动器的驱动,其步距角变小了,如驱动器工作在10细分状态时,其步距角只为‘电机固有步距角‘的十分之一,也就是说当驱动器工作在不细分的整步状态时,控制系统每发一个步进脉冲,电机转动1.8°;而用细分驱动器工作在10细分状态时,电机只转动了0.18°,这就是细分的基本概念。
细分功能完全是由驱动器靠精确控制电机的相电流所产生,与电机无关。
本设计采用单片机实现对步进电机的手动控制。
由单片机P1口低四位轮流产生脉冲经L298驱动步进电机的转动。
转速的调节和状态的改变由按键进行选择。
通过键盘扫描把选择的信息反馈给单片机,单片机根据反馈信息做出相应的判断并改变输出脉冲的频率或转动状态信号。
信号接电机的四相,本设计电路就算完成。
本电路里面的按键功能是停止、正传、反转、加速、减速;右侧是步进电机和驱动电路。
4总结与体会
本设计是利用单片机通过软硬件实现步进电机的正传、反转、加速、减速功能的。
本设计用了三个星期的时间,刚开始拿到这个题目时,很茫然,因为我对步进电机是一无所知的,刚开始的两天都在网上和图书馆里找资料,最后通过自学,对步进电机有了初步的了解,接着就开始画电路图,写程序,第一个星期基本上就把电路和程序调试出来了,程序是用的汇编语言,因为主体程序比较简单,所以调试起来也不是很难,只是一个不断重复的模板。
第二个星期就开始实物制作,画PCB图是一个很漫长的过程,有的封装需要自己制作。
关键在于布线,如果布线失败的话,电路板也就没法做了,布线时需要工程人员有耐心,不断地尝试,不断地调节,最后才能布置出一个完美的电路板,这是需要很长时间的。
用了大概两天的时间终于把PCB图完成了,后来通过复印转印,电路板算是做好了。
到第二个星期快结束的时候,电路板焊接完毕,并开始了调试。
调试很艰难,因为它不工作,而你却不知道原因何在,要用万用表,示波器仔细的排查,但最后未必能找到答案,我的电路板就是这样,由于时间限制,到最后我都没找到具体原因,但是我把范围缩小到了单片机上,估计是软件的问题,单片机输出信号不对。
但这个很难修改,应为仿真时是没有任何问题的,但是实际与仿真还是存在很多差异,所以我这次设计总体来说是失败的。
但是通过这次设计,我也学到很多东西,了解到很多东西,结果虽然很不理想,但最重要的还是这个过程,因为这个过程完全是一个不可或缺的认知过程。
参考文献
[1] 周宏甫.机电传动控制[M].北京:
化学工业出版社,2006
[2] 程宪平.机电传动与控制(第二版)[M].北京:
华中科技大学出版社,2003
[3] 李朝青.单片机原理及接口技术(第三版)[M].北京:
北京航空航天大学出版社,2006.12
[4]于海生.计算机控制技术[M].北京:
机械工业出版社,2007.5
[5]康光华,.电子技术基础数字部分(第五版)[M].北京:
高等教育出版社,2005
附录1
电路原理图
VCC
附录2
汇编程序如下:
ORG0000H
MOVDPTR,#TAB2
START:
JB3.0,$
START1:
JNBP3.2,ZZ
JNBP3.3,FZ
JNBP3.1,GZ
JNBP3.4,HZ
AJMPSTART1
ZZ:
MOVP1,#0EH
ACALLTIME
MOVP1,#0CH
ACALLTIME
MOVP1,#0DH
ACALLTIME
MOVP1,#09H
ACALLTIME
MOVP1,#0BH
ACALLTIME
MOVP1,#03H
ACALLTIME
MOVP1,#07H
ACALLTIME
AJMPZZ
FZ:
MOVP1,#07H
ACALLTIME
MOVP1,#0BH
ACALLTIME
MOVP1,#0DH
ACALLTIME
MOVP1,#0E
ACALLTIME
AJMPSTART1
GZ:
MOVR2,#1
DOJ1:
MOVA,R2
MOVDPTR,#TAB1
MOVCA,@A+DPTR
MOVP1,A
MOVA,R2
MOVCA,@A+DPTR
MOVR6,A
LCALLTIME
INCR2
CJNEA,#0FFH,DOJ1
HZ:
MOVR2,#1
DOJ:
MOVA,R2
MOVDPTR,#TAB1
MOVCA,@A+DPTR
MOVP1,A
MOVA,R2
MOVDPTR,#TAB2
MOVCA,@A+DPTR
MOVR6,A
LCALLTIME
INCR2
CJNEA,#0FFH,DOJ
TIME:
MOVR2,#50
L2:
MOVR2,#40
LI:
DJNZR3,11
DJNZR2,12
RET
TAB1:
DB00,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
DB0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H,0FCH,0F9H,0F3H,0F6H
TAB2:
DB00,500,236,154,114,91,76,64,56,50,45,41,38,35,32,30,28,26,25
DB24,22,20,20,20,19,18,17,16,16,16,15,14,14,14,13,13,12,12,12,12,11,11,
DB11,10,10,10,10,10,9,9,9,9,8,8,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7,6,6,6,6,
DB6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,0FFH
TAB3:
DB00,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,8,8
DB8,8,8,8,8,8,8,9,9,9,9,10,10,10,10,10,11,11,11,12,12,12,12,13,13,14,14
DB14,15,16,16,16,17,18,19,20,20,20,22,24,25,26,28,30,32,35,38,41,45,50,56
DB64,76,91,114,154,236,500,0FFH
END