《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 基于單片機的步進電機驅(qū)動電路設(shè)計
基于單片機的步進電機驅(qū)動電路設(shè)計
摘要: 步進電機在控制系統(tǒng)中具有廣泛的應(yīng)用。它可以把脈沖信號轉(zhuǎn)換成角位移,,并且可用作電磁制動輪、電磁差分器,、或角位移發(fā)生器等,。
Abstract:
Key words :

步進電機在控制系統(tǒng)中具有廣泛的應(yīng)用,。它可以把脈沖信號轉(zhuǎn)換成角位移,并且可用作電磁制動輪,、電磁差分器,、或角位移發(fā)生器等。

  有時從一些舊設(shè)備上拆下的步進電機(這種電機一般沒有損壞)要改作它用,,一般需自己設(shè)計驅(qū)動器,。本文介紹的就是為從一日本產(chǎn)舊式打印機上拆下的步進電機而設(shè)計的驅(qū)動器。本文先介紹該步進電機的工作原理,,然后介紹了其驅(qū)動器的軟,、硬件設(shè)計。

  1. 步進電機的工作原理

  該步進電機為一四相步進電機,,采用單極性直流電源供電,。只要對步進電機的各相繞組按合適的時序通電,就能使步進電機步進轉(zhuǎn)動,。圖1是該四相反應(yīng)式步進電機工作原理示意圖,。

  圖1 四相步進電機步進示意圖

  

 

 

  開始時,開關(guān)SB接通電源,,SA,、SC、SD斷開,,B相磁極和轉(zhuǎn)子0,、3號齒對齊,同時,,轉(zhuǎn)子的1,、4號齒就和C、D相繞組磁極產(chǎn)生錯齒,,2,、5號齒就和D、A相繞組磁極產(chǎn)生錯齒,。

  當開關(guān)SC接通電源,,SB、SA,、SD斷開時,,由于C相繞組的磁力線和1、4號齒之間磁力線的作用,使轉(zhuǎn)子轉(zhuǎn)動,,1、4號齒和C相繞組的磁極對齊,。而0,、3號齒和A、B相繞組產(chǎn)生錯齒,,2,、5號齒就和A、D相繞組磁極

 

產(chǎn)生錯齒,。依次類推,,A、B,、C,、D四相繞組輪流供電,則轉(zhuǎn)子會沿著A,、B,、C、D方向轉(zhuǎn)動,。

 

  四相步進電機按照通電順序的不同,,可分為單四拍、雙四拍,、八拍三種工作方式,。單四拍與雙四拍的步距角相等,但單四拍的轉(zhuǎn)動力矩小,。八拍工作方式的步距角是單四拍與雙四拍的一半,,因此,八拍工作方式既可以保持較高的轉(zhuǎn)動力矩又可以提高控制精度,。

  單四拍,、雙四拍與八拍工作方式的電源通電時序與波形分別如圖2.a、b,、c所示:

  圖2.步進電機工作時序波形圖  

 

  圖3 步進電機驅(qū)動器系統(tǒng)電路原理圖  

 

 

  AT89C2051將控制脈沖從P1口的P1.4~P1.7輸出,,經(jīng)74LS14反相后進入9014,經(jīng)9014放大后控制光電開關(guān),,光電隔離后,,由功率管TIP122將脈沖信號進行電壓和電流放大,驅(qū)動步進電機的各相繞組,。使步進電機隨著不同的脈沖信號分別作正轉(zhuǎn),、反轉(zhuǎn)、加速、減速和停止等動作,。圖中L1為步進電機的一相繞組,。AT89C2051選用頻率22MHz的晶振,選用較高晶振的目的是為了在方式2下盡量減小AT89C2051對上位機脈沖信號周期的影響,。
  圖3中的RL1~RL4為繞組內(nèi)阻,,50Ω電阻是一外接電阻,起限流作用,,也是一個改善回路時間常數(shù)的元件,。D1~D4為續(xù)流二極管,使電機繞組產(chǎn)生的反電動勢通過續(xù)流二極管(D1~D4)而衰減掉,,從而保護了功率管TIP122不受損壞,。

  在50Ω外接電阻上并聯(lián)一個200μF電容,可以改善注入步進電機繞組的電流脈沖前沿,,提高了步進電機的高頻性能,。與續(xù)流二極管串聯(lián)的200Ω電阻可減小回路的放電時間常數(shù),使繞組中電流脈沖的后沿變陡,,電流下降時間變小,,也起到提高高頻工作性能的作用。

  3.軟件設(shè)計

  該驅(qū)動器根據(jù)撥碼開關(guān)KX,、KY的不同組合有三種工作方式供選擇:

  方式1為中斷方式:P3.5(INT1)為步進脈沖輸入端,,P3.7為正反轉(zhuǎn)脈沖輸入端。上位機(PC機或單片機)與驅(qū)動器僅以2條線相連,。

  方式2為串行通訊方式:上位機(PC機或單片機)將控制命令發(fā)送給驅(qū)動器,,驅(qū)動器根據(jù)控制命令自行完成有關(guān)控制過程。

  方式3為撥碼開關(guān)控制方式:通過K1~K5的不同組合,,直接控制步進電機,。

  當上電或按下復(fù)位鍵KR后,AT89C2051先檢測撥碼開關(guān)KX,、KY的狀態(tài),,根據(jù)KX、KY 的不同組合,,進入不同的工作方式,。以下給出方式1的程序流程框圖與源程序。

  在程序的編制中,,要特別注意步進電機在換向時的處理,。為使步進電機在換向時能平滑過渡,不至于產(chǎn)生錯步,,應(yīng)在每一步中設(shè)置標志位,。其中20H單元的各位為步進電機正轉(zhuǎn)標志位;21H單元各位為反轉(zhuǎn)標志位,。在正轉(zhuǎn)時,不僅給正轉(zhuǎn)標志位賦值,,也同時給反轉(zhuǎn)標志位賦值;在反轉(zhuǎn)時也如此,。這樣,當步進電機換向時,,就可以上一次的位置作為起點反向運動,,避免了電機換向時產(chǎn)生錯步。

  圖4 方式1程序框圖

  

 

 

  方式1源程序:

  MOV 20H,#00H ;20H單元置初值,,電機正轉(zhuǎn)位置指針

  MOV 21H,#00H ;21H單元置初值,電機反轉(zhuǎn)位置指針

  MOV P1,#0C0H ;P1口置初值,,防止電機上電短路

  MOV TMOD,#60H ;T1計數(shù)器置初值,開中斷

  MOV TL1,#0FFH

  MOV TH1,#0FFH

  SETB ET1

  SETB EA

  SETB TR1

  SJMP $

  ;***********計數(shù)器1中斷程序************

 

  MOV 21H,#01H

  AJMP QUIT

  LOOP7: MOV P1,#0C0H

  MOV 20H,#01H

  MOV 21H,#80H

  AJMP QUIT

  ;***************電機反轉(zhuǎn)*****************

  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.結(jié)論

  該驅(qū)動器經(jīng)實驗驗證能驅(qū)動0.5N.m的步進電機,。將驅(qū)動部分的電阻、電容及續(xù)流二極管的有關(guān)參數(shù)加以調(diào)整,,可驅(qū)動1.2N.m的步進電機,。該驅(qū)動器電路簡單可靠,結(jié)構(gòu)緊湊,,對于I/O口線與單片機資源緊張的系統(tǒng)來說特別適用,。

 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。