单片机控制步进电机驱动器工作原理
步进电机在控制系统中具有广泛的应用。它可以把脉冲信号转换成角位移,并且可用作电磁制动轮、电磁差分器、或角位移发生器等。
有时从一些旧设备上拆下的步进电机(这种电机一般没有损坏)要改作它用,一般需自己设计驱动器。本文介绍的就是为从一日本产旧式打印机上拆下的步进电机而设计的驱动器。
本文先介绍该步进电机的工作原理,然后介绍了其驱动器的软、硬件设计。
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.基于AT89C2051的步进电机驱动器系统电路原理
AT89C2051将控制脉冲从P1口的P1.4~P1.7输出,经74LS14反相后进入9014,经9014放大后控制光电开关,光电隔离后,由功率管TIP122将脉冲信号进行电压和电流放大,驱动步进电机的各相绕组。使步进电机随着不同的脉冲信号分别作正转、反转、加速、减速和停止等动作。图中L1为步进电机的一相绕组。AT89C2051选用频率22MHz的晶振,选用较高晶振的目的是为了在方式2下尽量减小AT89C2051对上位机脉冲信号周期的影响。
RL1~RL4为绕组内阻,50Ω电阻是一外接电阻,起限流作用,也是一个改善回路时间常数的元件。D1~D4为续流二极管,使电机绕组产生的反电动势通过续流二极管(D1~D4)而衰减掉,从而保护了功率管TIP122不受损坏。
在50Ω外接电阻上并联一个200μF电容,可以改善注入步进电机绕组的电流脉冲前沿,提高了步进电机的高频性能。与续流二极管串联的200Ω电阻可减小回路的放电时间常数,使绕组中电流脉冲的后沿变陡,电流下降时间变小,也起到提高高频工作性能的作用。
3.软件设计
该驱动器根据拨码开关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源程序:
MOV 20H,#00H ;20H单元置初值,电机正转位置指针
MOV 21H,#00H ;21H单元置初值,电机反转位置指针
MOV P1,#0C0H ;P1口置初值,防止电机上电短路
MOV TMOD,#60H ;T1计数器置初值,开中断
MOV TL1,#0FFH
MOV TH1,#0FFH
SETB ET1
SETB EA
SETB TR1
SJMP $
;***********计数器1中断程序************
IT1P: JB P3.7,FAN ;电机正、反转指针
;*************电机正转*****************
JB 00H,LOOP0
JB 01H,LOOP1
JB 02H,LOOP2
JB 03H,LOOP3
JB 04H,LOOP4
JB 05H,LOOP5
JB 06H,LOOP6
JB 07H,LOOP7
LOOP0: MOV P1,#0D0H
MOV 20H,#02H
MOV 21H,#40H
AJMP QUIT
LOOP1: MOV P1,#090H
MOV 20H,#04H
MOV 21H,#20H
AJMP QUIT
LOOP2: MOV P1,#0B0H
MOV 20H,#08H
MOV 21H,#10H
AJMP QUIT
LOOP3: MOV P1,#030H
MOV 20H,#10H
MOV 21H,#08H
AJMP QUIT
LOOP4: MOV P1,#070H
MOV 20H,#20H
MOV 21H,#04H
AJMP QUIT
LOOP5: MOV P1,#060H
MOV 20H,#40H
MOV 21H,#02H
AJMP QUIT
LOOP6: MOV P1,#0E0H
MOV 20H,#80H
MOV 21H,#01H
AJMP QUIT
LOOP7: MOV P1,#0C0H
MOV ; 20H,#01H
MOV 21H,#80H
AJMP QUIT
;***************电机反转*****************
FAN: JB 08H,LOOQ0
JB 09H,LOOQ1
JB 0AH,LOOQ2
JB 0BH,LOOQ3
JB 0CH,LOOQ4
JB 0DH,LOOQ5
JB 0EH,LOOQ6
JB 0FH,LOOQ7
LOOQ0: MOV P1,#0A0H
MOV 21H,#02H
MOV 20H,#40H
AJMP QUIT
LOOQ1: MOV P1,#0E0H
MOV 21H,#04H
MOV 20H,#20H
AJMP QUIT
LOOQ2: MOV P1,#0C0H
MOV 21H,#08H
MOV 20H,#10H
AJMP QUIT
LOOQ3: MOV P1,#0D0H
MOV 21H,#10H
MOV 20H,#08H
AJMP QUIT
LOOQ4: MOV P1,#050H
MOV 21H,#20H
MOV 20H,#04H
AJMP QUIT
LOOQ5: MOV P1,#070H
MOV 21H,#40H
MOV 20H,#02H
AJMP QUIT
LOOQ6: MOV P1,#030H
MOV 21H,#80H
MOV 20H,#01H
AJMP QUIT
LOOQ7: MOV P1,#0B0H
MOV 21H,#01H
MOV 20H,#80H
QUIT: RETI
END
4.结论
该驱动器经实验验证能驱动0.5N.m的步进电机。将驱动部分的电阻、电容及续流二极管的有关参数加以调整,可驱动1.2N.m的步进电机。该驱动器电路简单可靠,结构紧凑,对于I/O口线与单片机资源紧张的系统来说特别适用。
步进电机不转是什么原因?
步进电机不转的情况可能源于多个因素,需要在实际应用中迅速定位问题,以减少设备停机带来的经济损失。 首先,电机问题可能出现在两个关键方面:电机本身:如果设备上配有同规格的正常驱动器,可以尝试使用它来驱动存在问题的电机。如果电机能正常工作,那么问题可能在于驱动器;反之,电机故障则需更换电机。驱...
关于步进电机加减速问题
1、加速和减速的原理相同。2、步进电机转的速度,是根据输入的脉冲信号的变化来改变的。3、在步进电机起步时,需要逐渐升高脉冲频率,减速时的脉冲频率需要逐渐减低。4、步进电机在高速启动时,需要采用脉冲频率升速的方法,在停止时要有降速过程,以保证实现步进电机精密定位控制。5、加减速曲线一般为指数...
步进电机运行报,步进电机故障排查与解决方法
步进电机无法转动的原因可能有很多,例如驱动电路故障、控制信号异常、电机内部故障等。我们需要先检查驱动电路和控制信号是否正常。如果没有问题,那么就需要检查电机的内部故障。在检查电机故障时,可以通过旋转电机轴来检查是否存在卡顿或其他异常情况。如果发现电机内部故障,可以通过更换电机或进行维修来解决。
步进马达常见问题
步进电机在使用中可能会遇到一些常见问题,这些问题需要我们仔细分析并针对性地解决。首先,如果电机在低速时出现振动或失步,而在高速时恢复正常,可能是驱动电压过高所致。应适当降低驱动电压,或者检查驱动器设置。相反,如果电机在低速时运转正常,但在高速时失步,那可能是驱动电压过低,需要调整到适宜的水...
步进电机不动作怎么回事?
步进电机驱动器故障:如果步进电机驱动器出现故障,如损坏或设置不正确,需要更换驱动器。连接问题:如果步进电机和驱动器之间的连接出现故障,如断路或接触不良,需要检查并修复连接。程序设计错误:如果控制程序存在错误,或者没有按照正确的步骤进行编程,电机可能无法正常工作。解决方案是检查程序并进行必要的...
步进电机旋转间隙,步进电机旋转误差及解决方法
一、步进电机旋转间隙 步进电机旋转间隙指的是步进电机在旋转过程中,出现的一定程度的空隙。这种空隙可能由于电机结构问题、制造工艺问题、使用寿命问题等原因而产生。旋转间隙会导致步进电机在工作时精度下降,严重时可能会影响电机的正常工作。解决步进电机旋转间隙问题的方法有以下几种:1. 采用高精度的零...
你好,那个步进电机只能正转不能反转是什么问题
步进电机只能正转不能反转的问题可能由以下几个原因导致:1. 控制器与驱动器不兼容:如果用户使用的控制器输出的是双脉冲控制模式,而驱动器只支持单脉冲模式,就会出现无法反转的问题。解决方法包括:- 将控制器设置为单脉冲输出模式(即控制脉冲加方向控制模式)。- 更换为能够接收双脉冲控制的驱动器,...
步进电机只响不转 从以下三个方向排查
1、检查线路,如果是第一次接线,一定要确认好电机的相位线,或者按照图纸接线。驱动器的接线。如果是正在使用的电机出现这个问题,先检查电机线路是否有破损和断开,如果断开,也会造成你说的情况。2、检查负载,负载过重导致,电机脱开负载检查。3、检查输入脉冲的频率,步进电机的输入频率不能过高,过高...
步进电机怎么测量好坏 步进电机常见故障及处理方法
首先,测试步进电机的好坏可遵循以下步骤。上电状态下,电机应能锁紧,力矩输出正常,且转角正确。反之,则表明电机存在问题。其次,在断电状态下,用手转动电机轴,注意勿使各引出线短路。正常情况下,电机应有均匀阻力,可以轻松转动。将电机引出线拧在一起(模拟短路状态),此时转动电机轴所需的力矩即...
步进电机不转什么原因?
您遇到的步进电机不转的问题可能有多种原因,以下是一些可能的原因及解决办法:电源电压过低。检查电源电压是否符合电机工作电压的要求。电流过大。驱动器的电流值是否设置得太小,导致电机无法正常运转。可以适当增加驱动器的电流值来解决此问题。驱动器故障。如果更换了新的驱动器和电机后仍然无法转动,那么...