1 引言
步進電動機是一種將電脈沖信號轉(zhuǎn)換成角位移或線位移的精密執(zhí)行元件,,由于步進電機具有控制方便、體積小等特點,,所以在數(shù)控系統(tǒng),、自動生產(chǎn)線、自動化儀表,、繪圖機和計算機外圍設備中得到廣泛應用,。微電子學的迅速發(fā)展和微型計算機的普及與應用,為步進電動機的應用開辟了廣闊前景,,使得以往用硬件電路構(gòu)成的龐大復雜的控制器得以用軟件實現(xiàn),既降低了硬件成本又提高了控制的靈活性,,可靠性及多功能性,。市場上有很多現(xiàn)成的步進電機控制機構(gòu),但價格都偏高,。應用SGS公司推出的L297和L298兩芯片可方便的組成步進電機驅(qū)動器,,并結(jié)合AT89C52單片機進行控制,即可以實現(xiàn)用相對便宜的價格組成一個性能不錯的步進電機驅(qū)動電路,。
2 工作原理
由于步進電機是一種將電脈沖信號轉(zhuǎn)換成直線或角位移的執(zhí)行元件,它不能直接接到交直流電源上,,而必須使用專用設備-步進電機控制驅(qū)動器 典型步進電機控制系統(tǒng)如圖1所示:控制器可以發(fā)出脈沖頻率從幾赫茲到幾十千赫茲可以連續(xù)變化的脈沖信號,,它為環(huán)形分配器提供脈沖序列。環(huán)形分配器的主要功能是把來自控制環(huán)節(jié)的脈沖序列按一定的規(guī)律分配后,,經(jīng)過功率放大器的放大加到步進電機驅(qū)動電源的各項輸人端,,以驅(qū)動步進電機的轉(zhuǎn)動。環(huán)形分配器主要有兩大類:一類是用計算機軟件設計的方法實現(xiàn)環(huán)分器要求的功能,,通常稱軟環(huán)形分配器,。另一類是用硬件構(gòu)成的環(huán)形分配器,通常稱為硬環(huán)形分配器,。功率放大器主要對環(huán)形分配器的較小輸出信號進行放大,。以達到驅(qū)動步進電機目的,。
圖1 典型步進電機控制框圖
3 硬件組成
文中所控制的步進電機是四相單極式35BY48HJ120減速步進電動機。本文所設計的步進電機控制驅(qū)動器的框圖如圖2所示,。它由AT89C52單片機、光電耦和器,、集成芯片L297和L298組成。AT89C52是美國ATMEL的低電壓,、高性能8位CMOS單片機,。片內(nèi)置8K字節(jié)可重復擦寫的
Flash閃速存儲器,。256字節(jié)RAM,。3個16位定時器,。可編程串行UART通道,。對完成步進電機的簡單控制已足以勝任,。
圖2 本文提出的步進電機控制驅(qū)動器框圖
L297是步進電動機控制器(包括環(huán)形分配器)。L298是雙H橋式驅(qū)動器,。它們所組成的微處理器至雙橋式步進電動機的接口如圖3所示。這種方式結(jié)合的優(yōu)點是,,需要的元件很少。從而使得裝配成本低,,可靠性高和占空間少。并且通過軟件開發(fā),。可以簡化和減輕微型計算機的負擔,。另外,L297和L298都是獨立的芯片,。所以應用是十分靈活的。
L297芯片是一種硬件環(huán)分集成芯片,。它可產(chǎn)生四相驅(qū)動信號,,用于計算機控制的兩相雙極或四相單極步進電機 它的心臟部分是一組譯碼器它能產(chǎn)生各種所需的相序,。這一部分是由兩種輸入模式控制,方向控制(CW/CCW) 和HALF/FULL 以及步進式時鐘CLOCK.它將譯碼器從一階梯推進至另一階梯,。譯碼器有四個輸出點連接到輸出邏輯部分,提供抑制和斬波功能所需的相序,。因此L297能產(chǎn)生三種相序信號,,對應于三種不同的工作方式:即半步方式(HALF STEP),;基本步距(FULL STEP,整步)一相激勵方式,;基本步距兩相激勵方式。脈沖分配器內(nèi)部是一個3bit可逆計數(shù)器,,加上一些組合邏輯。產(chǎn)生每周期8步格雷碼時序信號,,這也就是半步工作方式的時序信號。此時HALF/FULL信號為高電。若HALF/FULL取低電平,,得到基本步距工作方式,。即雙四拍全階梯工作方式,。
L297另一個重要組成是由兩個PWM 斬波器來控制相繞組電流,,實現(xiàn)恒流斬波控制以獲得良好的矩頻特性,。每個斬波器由一個比較器、一個RS觸發(fā)器和外接采樣電阻組成,,并設有一個公用振蕩器,向兩個斬波器提供觸發(fā)脈沖信號,。圖3中,頻率f是由外接16腳的RC網(wǎng)絡決定的,, 當R》10kΩ 時,,f=1/0.69RC。當時鐘振蕩器脈沖使觸發(fā)器置1,,電機繞組相電流上升,,采樣電阻的R 上電壓上升到基準電壓Uref時,,比
較器翻轉(zhuǎn),使觸發(fā)器復位,功率晶體管關(guān)斷,,電流下降,等待下一個振蕩脈沖的到來,。這樣,觸發(fā)器輸出的是恒頻PWM信號,,調(diào)制L297的輸出信號,,繞組相電流峰值由Uref確定。L297的CONTROL端的輸入決定斬波器對相位線A,、B、C,、D或抑制線INH1和INH2起作用,。CONTROL為高電平時,對A,、B,、C、D有控制作用,;而為低電平時,,則對INH1和INH2起控制作用,,從而可對電動機轉(zhuǎn)向和轉(zhuǎn)矩進行控制,。
L298芯片是一種高壓,、大電流雙全橋式驅(qū)動器,,其設計是為接受標準TTL邏輯電平信號和驅(qū)動電感負載的,,例如繼電器、圓筒形線圈,、直流電動機和步進電動機 具有兩抑制輸入來使器件不受輸入信號影響。每橋的三級管的射極是連接在一起的,,相應外接線端可用來連接外設傳感電阻??砂仓昧硪惠斎腚娫?,使邏輯能在低電壓下工作。L298芯片是具有15個引出腳的多瓦數(shù)直插式封裝的集成芯片,。
圖3中.AT89C52通過串口經(jīng)MAX232電平轉(zhuǎn)換之后與微機相連,。接受上位機指令。向L297發(fā)出時鐘信號,、正反轉(zhuǎn)信號,、復位信號及使能控制等信號。電路中,,電阻R13,,R15用來調(diào)節(jié)斬波器電路的參考電壓,該電壓將與通過管腳13,,14所反饋的電位的大小比較,,來確定是否進行斬波控制,以達到控制電機繞組電流峰值,、保護步進電機的目的
由于L297內(nèi)部帶有斬波恒流電路,,繞組相電流峰值由Uref確定。當采用兩片L297通過L298分別驅(qū)動步進電機的兩繞組,,且通過兩個D/A轉(zhuǎn)換器改變每相繞組的Uref時,,即組成了步進電機細分驅(qū)動電路。另外,,為了有效地抑制電磁干擾,,提高系統(tǒng)的可靠性,在單片機與步進電動機驅(qū)動回路中利用兩個16引腳光電耦合器件TLP521-4組成如圖3所示的隔離電路,。其作用是切斷了單片機與步進電動機驅(qū)動回路之間電的直接聯(lián)系,,實現(xiàn)了單片機與驅(qū)動回路系統(tǒng)地線的分別聯(lián)接。防止處于大電流感性負載下工作的驅(qū)動電路產(chǎn)生的干擾信號以及電網(wǎng)負載突變產(chǎn)生的干擾信號通過線路串入單片機,,影響單片機的正常工作,。
1 引言
步進電動機是一種將電脈沖信號轉(zhuǎn)換成角位移或線位移的精密執(zhí)行元件,由于步進電機具有控制方便,、體積小等特點,,所以在數(shù)控系統(tǒng),、自動生產(chǎn)線、自動化儀表,、繪圖機和計算機外圍設備中得到廣泛應用,。微電子學的迅速發(fā)展和微型計算機的普及與應用,,為步進電動機的應用開辟了廣闊前景,,使得以往用硬件電路構(gòu)成的龐大復雜的控制器得以用軟件實現(xiàn),,既降低了硬件成本又提高了控制的靈活性,,可靠性及多功能性,。市場上有很多現(xiàn)成的步進電機控制機構(gòu),,但價格都偏高,。應用SGS公司推出的L297和L298兩芯片可方便的組成步進電機驅(qū)動器,,并結(jié)合AT89C52單片機進行控制,,即可以實現(xiàn)用相對便宜的價格組成一個性能不錯的步進電機驅(qū)動電路。
2 工作原理
由于步進電機是一種將電脈沖信號轉(zhuǎn)換成直線或角位移的執(zhí)行元件,,它不能直接接到交直流電源上,,而必須使用專用設備-步進電機控制驅(qū)動器 典型步進電機控制系統(tǒng)如圖1所示:控制器可以發(fā)出脈沖頻率從幾赫茲到幾十千赫茲可以連續(xù)變化的脈沖信號,它為環(huán)形分配器提供脈沖序列,。環(huán)形分配器的主要功能是把來自控制環(huán)節(jié)的脈沖序列按一定的規(guī)律分配后,經(jīng)過功率放大器的放大加到步進電機驅(qū)動電源的各項輸人端,,以驅(qū)動步進電機的轉(zhuǎn)動,。環(huán)形分配器主要有兩大類:一類是用計算機軟件設計的方法實現(xiàn)環(huán)分器要求的功能,,通常稱軟環(huán)形分配器。另一類是用硬件構(gòu)成的環(huán)形分配器,,通常稱為硬環(huán)形分配器,。功率放大器主要對環(huán)形分配器的較小輸出信號進行放大。以達到驅(qū)動步進電機目的,。
圖1 典型步進電機控制框圖
3 硬件組成
文中所控制的步進電機是四相單極式35BY48HJ120減速步進電動機。本文所設計的步進電機控制驅(qū)動器的框圖如圖2所示,。它由AT89C52單片機、光電耦和器,、集成芯片L297和L298組成,。AT89C52是美國ATMEL的低電壓,、高性能8位CMOS單片機,。片內(nèi)置8K字節(jié)可重復擦寫的
Flash閃速存儲器,。256字節(jié)RAM,。3個16位定時器??删幊檀蠻ART通道,。對完成步進電機的簡單控制已足以勝任,。
圖2 本文提出的步進電機控制驅(qū)動器框圖
L297是步進電動機控制器(包括環(huán)形分配器),。L298是雙H橋式驅(qū)動器。它們所組成的微處理器至雙橋式步進電動機的接口如圖3所示,。這種方式結(jié)合的優(yōu)點是,,需要的元件很少。從而使得裝配成本低,,可靠性高和占空間少,。并且通過軟件開發(fā)??梢院喕蜏p輕微型計算機的負擔,。另外,L297和L298都是獨立的芯片,。所以應用是十分靈活的,。
L297芯片是一種硬件環(huán)分集成芯片。它可產(chǎn)生四相驅(qū)動信號,,用于計算機控制的兩相雙極或四相單極步進電機 它的心臟部分是一組譯碼器它能產(chǎn)生各種所需的相序,。這一部分是由兩種輸入模式控制,方向控制(CW/CCW) 和HALF/FULL 以及步進式時鐘CLOCK.它將譯碼器從一階梯推進至另一階梯,。譯碼器有四個輸出點連接到輸出邏輯部分,,提供抑制和斬波功能所需的相序。因此L297能產(chǎn)生三種相序信號,,對應于三種不同的工作方式:即半步方式(HALF STEP),;基本步距(FULL STEP,整步)一相激勵方式,;基本步距兩相激勵方式,。脈沖分配器內(nèi)部是一個3bit可逆計數(shù)器,加上一些組合邏輯,。產(chǎn)生每周期8步格雷碼時序信號,,這也就是半步工作方式的時序信號。此時HALF/FULL信號為高電,。若HALF/FULL取低電平,,得到基本步距工作方式,。即雙四拍全階梯工作方式。
L297另一個重要組成是由兩個PWM 斬波器來控制相繞組電流,,實現(xiàn)恒流斬波控制以獲得良好的矩頻特性,。每個斬波器由一個比較器、一個RS觸發(fā)器和外接采樣電阻組成,,并設有一個公用振蕩器,,向兩個斬波器提供觸發(fā)脈沖信號。圖3中,,頻率f是由外接16腳的RC網(wǎng)絡決定的,, 當R》10kΩ 時,f=1/0.69RC,。當時鐘振蕩器脈沖使觸發(fā)器置1,,電機繞組相電流上升,采樣電阻的R 上電壓上升到基準電壓Uref時,,比
較器翻轉(zhuǎn),,使觸發(fā)器復位,功率晶體管關(guān)斷,,電流下降,,等待下一個振蕩脈沖的到來。這樣,,觸發(fā)器輸出的是恒頻PWM信號,,調(diào)制L297的輸出信號,繞組相電流峰值由Uref確定,。L297的CONTROL端的輸入決定斬波器對相位線A,、B、C,、D或抑制線INH1和INH2起作用,。CONTROL為高電平時,對A,、B,、C、D有控制作用,;而為低電平時,,則對INH1和INH2起控制作用,從而可對電動機轉(zhuǎn)向和轉(zhuǎn)矩進行控制,。
L298芯片是一種高壓,、大電流雙全橋式驅(qū)動器,其設計是為接受標準TTL邏輯電平信號和驅(qū)動電感負載的,例如繼電器,、圓筒形線圈,、直流電動機和步進電動機 具有兩抑制輸入來使器件不受輸入信號影響。每橋的三級管的射極是連接在一起的,,相應外接線端可用來連接外設傳感電阻,。可安置另一輸入電源,,使邏輯能在低電壓下工作,。L298芯片是具有15個引出腳的多瓦數(shù)直插式封裝的集成芯片。
圖3中.AT89C52通過串口經(jīng)MAX232電平轉(zhuǎn)換之后與微機相連,。接受上位機指令,。向L297發(fā)出時鐘信號、正反轉(zhuǎn)信號,、復位信號及使能控制等信號,。電路中,電阻R13,,R15用來調(diào)節(jié)斬波器電路的參考電壓,該電壓將與通過管腳13,,14所反饋的電位的大小比較,,來確定是否進行斬波控制,以達到控制電機繞組電流峰值,、保護步進電機的目的
由于L297內(nèi)部帶有斬波恒流電路,,繞組相電流峰值由Uref確定。當采用兩片L297通過L298分別驅(qū)動步進電機的兩繞組,,且通過兩個D/A轉(zhuǎn)換器改變每相繞組的Uref時,,即組成了步進電機細分驅(qū)動電路。另外,,為了有效地抑制電磁干擾,,提高系統(tǒng)的可靠性,在單片機與步進電動機驅(qū)動回路中利用兩個16引腳光電耦合器件TLP521-4組成如圖3所示的隔離電路,。其作用是切斷了單片機與步進電動機驅(qū)動回路之間電的直接聯(lián)系,,實現(xiàn)了單片機與驅(qū)動回路系統(tǒng)地線的分別聯(lián)接。防止處于大電流感性負載下工作的驅(qū)動電路產(chǎn)生的干擾信號以及電網(wǎng)負載突變產(chǎn)生的干擾信號通過線路串入單片機,,影響單片機的正常工作,。
4 軟件組成
在該電路中,將P1.0口設為電機開始按鈕,,P1.1,,P1.2,P1.3為速度選擇按鈕,。速度由低到高,,P1.4為電機停止按鈕,。并設三檔速度的最高速度依次為500pps、1000pps,、2000pps ,。RXD,TXD 已由MAX232電平轉(zhuǎn)換接出串口,。此外,,步進電機其啟動,停止的頻率較低,,一般在100-250Hz之間,,而最高運行頻率要求較高。通常為1-3kHz,,為使其在啟動,、運行和停止整個過程中,既不會失步,,又能夠盡快精確地達到目標位置,,運行速度都要有一個加速一恒速減速的過程。這里采用常用的離散辦法來逼近理想的近似梯形的升降速曲線,,如圖5所示,。即利用定時器中斷方式來不斷改變定時器裝載值的大小。
本例中,。為計算方便,,把各離散點的速度所需的裝載值用公式轉(zhuǎn)化為各自所需的定時時間固化在系統(tǒng)的ROM 中,這里用TH0=(65536-time)/256,,TL0=(65536-time)%256來計算裝載值,,time表示各階梯所需定時時間。系統(tǒng)在運行中用查表法查出所需的時間,,從而大幅度減少占用CPU的時間,,提高系統(tǒng)的相應速度。因此,。該程序主要由控制主程序,、加減速子程序組成,主程序框圖如圖4所示,。
5 結(jié)論
本文創(chuàng)新點在于提出應用單片機和L297,、L298集成電路構(gòu)成步進電機控制驅(qū)動器。使之具有元件少,??煽啃愿摺⒄伎臻g少、裝配成本低等優(yōu)點,。通過軟件開發(fā),,可以簡化和減輕微型計算機的負擔。另外,。在上面提出的在加減速程序中定時器的裝載值用式子計算不精確,,這兩條賦值要執(zhí)行不少的時間。具體做的時候,??芍苯影殉踔涤嬎愠鰜砘虬殉栍孟嗉觼碛嬎恪R赃_到精確的目的,。