原创 单片机控制步进电机驱动器工作原理

2009-8-16 00:22 1507 4 4 分类: MCU/ 嵌入式

发布: 2009-4-05 00:21 |  作者: 刘迎春 牟金秀 |   查看: 56次


步进电机在控制系统中具有广泛的应用。它可以把脉冲信号转换成角位移,并且可用作电磁制动轮、电磁差分器、或角位移发生器等。有时从一些旧设备上拆下的步进电机(这种电机一般没有损坏)要改作它用,一般需自己设计驱动器。本文介绍的就是为从一日本产旧式打印机上拆下的步进电机而设计的驱动器。
rK@`'m6`$\J`w0电子园51单片机学习网b2M0VFd te~$d
  本文先介绍该步进电机的工作原理,然后介绍了其驱动器的软、硬件设计。
*|1F+k#l\D uow0
1x S*}M-a\ k4X0  1. 步进电机的工作原理
gZ*E"G-I0
!T$L8Q*f:nI0  该步进电机为一四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。图1是该四相反应式步进电机工作原理示意图。


#Z] lh T]y*No0图1 四相步进电机步进示意图

2O^Hq&\0

!P2P8o;r7f`0  开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。电子园51单片机学习网"| N#{C-qo _TE
  
|7y.h*n/B9p|.ig1Vb0  当开关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方向转动。电子园51单片机学习网 H tKu,C~ D
    电子园51单片机学习网!b~$x"o_E$K
  四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。电子园51单片机学习网tQxMmm}j
    电子园51单片机学习网1q3N ZPx?
  单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图2.a、b、c所示:电子园51单片机学习网!{,n0qbq2K xu



T8YR'V7e7A0a. 单四拍                                                      b. 双四拍                                        c八拍电子园51单片机学习网5d6w7e5]+q
图2.步进电机工作时序波形图

&e/{Ti2Tf s1M@0

up4h'e;?l0  2.基于AT89C2051的步进电机驱动器系统电路原理
,xP6qRZ0L0电子园51单片机学习网YQ} KQv[i
  步进电机驱动器系统电路原理如图3:  电子园51单片机学习网+k @]A!|^i&Q @


电子园51单片机学习网1mYS)w,R;{#H([.h
图3 步进电机驱动器系统电路原理图

] U8O]V9V"VS]k0

  AT89C2051将控制脉冲从P1口的P1.4~P1.7输出,经74LS14反相后进入9014,经9014放大后控制光电开关,光电隔离后,由功率管TIP122将脉冲信号进行电压和电流放大,驱动步进电机的各相绕组。使步进电机随着不同的脉冲信号分别作正转、反转、加速、减速和停止等动作。图中L1为步进电机的一相绕组。AT89C2051选用频率22MHz的晶振,选用较高晶振的目的是为了在方式2下尽量减小AT89C2051对上位机脉冲信号周期的影响。电子园51单片机学习网g!vuj|hC
   
|P+o6O2m0  图3中的RL1~RL4为绕组内阻,50Ω电阻是一外接电阻,起限流作用,也是一个改善回路时间常数的元件。D1~D4为续流二极管,使电机绕组产生的反电动势通过续流二极管(D1~D4)而衰减掉,从而保护了功率管TIP122不受损坏。
1kk-\6qn7?|0    电子园51单片机学习网&cz7|+P9o;I e
  在50Ω外接电阻上并联一个200μF电容,可以改善注入步进电机绕组的电流脉冲前沿,提高了步进电机的高频性能。与续流二极管串联的200Ω电阻可减小回路的放电时间常数,使绕组中电流脉冲的后沿变陡,电流下降时间变小,也起到提高高频工作性能的作用。电子园51单片机学习网+SlVfz0_1K#il

?hY0K5I?U4W0  3.软件设计
7_}8oD"Nb%T0电子园51单片机学习网gyXk;Tr!L Sk$Z@
  该驱动器根据拨码开关KX、KY的不同组合有三种工作方式供选择:
'K6t3kZ;`|M0电子园51单片机学习网`:~9JE_:vJ~ y
  方式1为中断方式:P3.5(INT1)为步进脉冲输入端,P3.7为正反转脉冲输入端。上位机(PC机或单片机)与驱动器仅以2条线相连。电子园51单片机学习网3Z{FXf4g{
电子园51单片机学习网EL:H r/K*]w3V8N
  方式2为串行通讯方式:上位机(PC机或单片机)将控制命令发送给驱动器,驱动器根据控制命令自行完成有关控制过程。
"_.y7k T/?~*s;h0B6Oa0电子园51单片机学习网lzYm)Y
  方式3为拨码开关控制方式:通过K1~K5的不同组合,直接控制步进电机。
%f7O:ULL }b?A,Ri@0电子园51单片机学习网3YS:Vl}^2A)Q-@
  当上电或按下复位键KR后,AT89C2051先检测拨码开关KX、KY的状态,根据KX、KY 的不同组合,进入不同的工作方式。以下给出方式1的程序流程框图与源程序。
b5Tj%QS!K0
;c6tD.@6w0t*e(H0  在程序的编制中,要特别注意步进电机在换向时的处理。为使步进电机在换向时能平滑过渡,不至于产生错步,应在每一步中设置标志位。其中20H单元的各位为步进电机正转标志位;21H单元各位为反转标志位。在正转时,不仅给正转标志位赋值,也同时给反转标志位赋值;在反转时也如此。这样,当步进电机换向时,就可以上一次的位置作为起点反向运动,避免了电机换向时产生错步。

:o p9?Wo0


2nR.D3\ K pd\ ?0图4 方式1程序框图

(Do)m,i&e T6Q `0

#`El,k U |0  方式1源程序:
\N]g)[9I;u(].w3~0    MOV        20H,#00H              ;20H单元置初值,电机正转位置指针电子园51单片机学习网b9~!} [@
    MOV         21H,#00H              ;21H单元置初值,电机反转位置指针电子园51单片机学习网-O"HJie5W }
    MOV         P1,#0C0H              ;P1口置初值,防止电机上电短路
'nq{;~R'z!j\0    MOV         TMOD,#60H           ;T1计数器置初值,开中断电子园51单片机学习网gO s#I)@)n-o!U6B'[
    MOV         TL1,#0FFH电子园51单片机学习网g7\,[q d T%Y
    MOV         TH1,#0FFH电子园51单片机学习网_ PQ-jU3Y4nOtZ Qn
    SETB        ET1
[O/soOY4Pd0    SETB        EA
o4Zy!j^0    SETB        TR1
;^'~DP Ao0    SJMP        $电子园51单片机学习网t/] l^1^bTG*k]
  ;***********计数器1中断程序************电子园51单片机学习网*B\&@'W^eP2{ W3@T

-f,B3R:ub_[ D0  IT1P:       JB          P3.7,FAN              ;电机正、反转指针电子园51单片机学习网$Q cz:a ^J4I%C/\
  ;*************电机正转*****************
*PMs2s|5n s0              JB          00H,LOOP0
/S;jA&u1[3@5?0              JB          01H,LOOP1
dn|Tu&mF:K V0              JB          02H,LOOP2电子园51单片机学习网#y&jWf"B]PH
              JB          03H,LOOP3
1@+?s)m/Yd3B0              JB          04H,LOOP4电子园51单片机学习网v/JmL\J,`!t
              JB          05H,LOOP5
5B?SjAq*gLv0              JB          06H,LOOP6电子园51单片机学习网4\[_8j#K#E!P)F0R.W
              JB          07H,LOOP7电子园51单片机学习网%s%Q0}"n!v~w)`*K+jn
  LOOP0:      MOV         P1,#0D0H
+Dd`3ZN0s0              MOV         20H,#02H
LoWJ8A-PAf0              MOV         21H,#40H电子园51单片机学习网L7t/}!e.Y7] F
              AJMP        QUIT
D8D~~#K2T.K |e|0  LOOP1:      MOV         P1,#090H电子园51单片机学习网"[,xdw.~4W
              MOV         20H,#04H电子园51单片机学习网j;i#?F7^ X
              MOV         21H,#20H
6aY"HlQ9[fEs0              AJMP        QUIT
%f:M3Zf"XzM`/oE0  LOOP2:      MOV         P1,#0B0H电子园51单片机学习网aNJcE D
              MOV         20H,#08H
pf[5o]!o l0              MOV         21H,#10H电子园51单片机学习网'u/ZCRzA R/\5in~
              AJMP        QUIT电子园51单片机学习网u0P/z1W%JV u
  LOOP3:      MOV         P1,#030H
u3K6Z]Pe:O8]*J0              MOV         20H,#10H
BRR.Jj{a0              MOV         21H,#08H电子园51单片机学习网e8`1k1y X
              AJMP        QUIT
~8Em8mpTC0  LOOP4:      MOV         P1,#070H电子园51单片机学习网!O2QW2j%B,] Z
              MOV         20H,#20H电子园51单片机学习网@Pm,_1t;X&rZ h
              MOV         21H,#04H电子园51单片机学习网ubw/L#O~:xr(^
              AJMP        QUIT
3o k9{H/LXy0  LOOP5:      MOV         P1,#060H
2p"?(L+p-M0              MOV         20H,#40H电子园51单片机学习网-Pue5jEz
              MOV         21H,#02H电子园51单片机学习网#f)A"| z0Qw1Nj0Lp HU
              AJMP        QUIT
[jyd.TAD6?0  LOOP6:      MOV         P1,#0E0H电子园51单片机学习网R lFH;S[&h+X&x
              MOV         20H,#80H
CSG8Ns8JZ2t rh\0              MOV         21H,#01H电子园51单片机学习网c4n-}&e;j-m5f?\
              AJMP        QUIT
4S&l&E[)i6WBb d/C f0  LOOP7:      MOV         P1,#0C0H
4MNI:?(wg#M!_a0              MOV         20H,#01H电子园51单片机学习网C4Ps?$?,e m
              MOV         21H,#80H
kv+FN?&h,vH0              AJMP        QUIT
c u`~0[&U/{*Hj[*D0  ;***************电机反转*****************
'_ mK6R'r*y0  FAN:        JB          08H,LOOQ0电子园51单片机学习网&x+u!|u ?O
              JB          09H,LOOQ1电子园51单片机学习网%? I;{7|&D0HeZ
              JB          0AH,LOOQ2
6J"G@ W,y.r3g0              JB          0BH,LOOQ3
c f.w IJ,K,Y"{b?0              JB          0CH,LOOQ4电子园51单片机学习网1y9H%T!ox\(uS7_:I
              JB          0DH,LOOQ5
]E4ve P$?0              JB          0EH,LOOQ6
sn] ja!r8n_4E0              JB          0FH,LOOQ7电子园51单片机学习网 V7{s[,C_,Mf%E'e
  LOOQ0:      MOV         P1,#0A0H
zt1E([ |-Y6F5J0              MOV         21H,#02H电子园51单片机学习网cZ-i){)oK9[1N8O6I
              MOV         20H,#40H电子园51单片机学习网z:R pkJ-x!i:H
              AJMP        QUIT
e|ue s!S0  LOOQ1:      MOV         P1,#0E0H电子园51单片机学习网FV(cn)U3[{cr2[)o.b
              MOV         21H,#04H
Rqv{)d0              MOV         20H,#20H电子园51单片机学习网f)l*Tb'Ts'V
              AJMP        QUIT
6DYp4sN4UJ{1s8D0  LOOQ2:      MOV         P1,#0C0H电子园51单片机学习网%qiUF7tc
              MOV         21H,#08H电子园51单片机学习网jf`_#@J2BM+u*Ou
              MOV         20H,#10H
(n/_M4d|Ecb0              AJMP        QUIT电子园51单片机学习网1Tp I#]N:b
  LOOQ3:      MOV         P1,#0D0H电子园51单片机学习网 WF|f EM7p/}(C
              MOV         21H,#10H
7vd8`L,A;ih0              MOV         20H,#08H
i9N.G;f?0              AJMP        QUIT电子园51单片机学习网.{j(n&x+Uc
  LOOQ4:      MOV         P1,#050H电子园51单片机学习网 HY@.]*p,S&y+_j8P
              MOV         21H,#20H电子园51单片机学习网*qTn6~+y p;@6b
              MOV         20H,#04H电子园51单片机学习网K1Q-x+io`+GG`?I
              AJMP        QUIT
5]R.S8jra*oE0  LOOQ5:      MOV         P1,#070H
7mM$Y8K?$kx&Rc0              MOV         21H,#40H电子园51单片机学习网ZOwYk
              MOV         20H,#02H电子园51单片机学习网4t"C3GG0[pvZ`
              AJMP        QUIT电子园51单片机学习网?1M],v$x5E4k
  LOOQ6:      MOV         P1,#030H
dz:P-@%\U0              MOV         21H,#80H
k;j&Bm F0              MOV         20H,#01H电子园51单片机学习网syLAQ{
              AJMP        QUIT
[F;Kz2S4n e0  LOOQ7:      MOV         P1,#0B0H电子园51单片机学习网/KrS{J
              MOV         21H,#01H
iVV4a{5[3^/M0              MOV         20H,#80H电子园51单片机学习网%|qJMfL O
  QUIT:       RETI
Sh;d#Kwv%{|:@0              END电子园51单片机学习网(H!ZF!]!x

7W#ZBB,e0  4.结论电子园51单片机学习网[ A0nNI-t5v.T
    电子园51单片机学习网&z6t5_F#L!Y%D(j ?,V RZ
  该驱动器经实验验证能驱动0.5N.m的步进电机。将驱动部分的电阻、电容及续流二极管的有关参数加以调整,可驱动1.2N.m的步进电机。该驱动器电路简单可靠,结构紧凑,对于I/O口线与单片机资源紧张的系统来说特别适用。电子园51单片机学习网`G)J!As)@

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
4
关闭 站长推荐上一条 /3 下一条