步進(jìn)電機(jī)作為電磁機(jī)械裝置,其進(jìn)給的分辨率取決于細(xì)分驅(qū)動(dòng)技術(shù)。采用軟件細(xì)分驅(qū)動(dòng)方式,由于編程的靈活性、通用性,使得步進(jìn)細(xì)分驅(qū)動(dòng)的成本低、效率高,要修改方案也易辦到。同時(shí),還可解決步進(jìn)電機(jī)在低速時(shí)易出現(xiàn)的低頻振動(dòng)和運(yùn)行中的噪聲等。但單一的軟件細(xì)分驅(qū)動(dòng)在精度與速度兼顧上會(huì)有矛盾,細(xì)分的步數(shù)越多,精度越高,但步進(jìn)電機(jī)的轉(zhuǎn)動(dòng)速度卻降低;要提高轉(zhuǎn)動(dòng)速度,細(xì)分的步數(shù)就得減少。為此,設(shè)計(jì)了多級(jí)細(xì)分驅(qū)動(dòng)系統(tǒng),通過(guò)不同的細(xì)分檔位設(shè)定,實(shí)現(xiàn)不同步數(shù)的細(xì)分,同時(shí)保證了不同的轉(zhuǎn)動(dòng)速度。
1 細(xì)分驅(qū)動(dòng)原理
步進(jìn)電機(jī)控制中已蘊(yùn)含了細(xì)分的機(jī)理。如三相步進(jìn)電機(jī)按A→B→C……的順序輪流通電,步進(jìn)電機(jī)為整步工作。而按A→AC→C→CB→B→BA→A……的順序通電,則步進(jìn)電機(jī)為半步工作。以A→B為例,若將各相電流看作是向量,則從整步到半步的變換,就是在IA與IB之間插入過(guò)渡向量IAB,因?yàn)殡娏飨蛄康暮铣煞较驔Q定了步進(jìn)電機(jī)合成磁勢(shì)的方向,而合成磁勢(shì)的轉(zhuǎn)動(dòng)角度本身就是步進(jìn)電機(jī)的步進(jìn)角度。顯然,I AB的插入改變了合成磁勢(shì)的轉(zhuǎn)動(dòng)大小,使得步進(jìn)電機(jī)的步進(jìn)角度由θb變?yōu)?.5 θb,從而也就實(shí)現(xiàn)了2步細(xì)分。由此可見(jiàn),步進(jìn)電機(jī)的細(xì)分原理就是通過(guò)等角度有規(guī)律的插入電流合成向量,從而減小合成磁勢(shì)轉(zhuǎn)動(dòng)角度,達(dá)到步進(jìn)電機(jī)細(xì)分控制的目的。
如圖1所示,在三相步進(jìn)電機(jī)的A相與B相之間插入合成向量AB,則實(shí)現(xiàn)了2步細(xì)分。要再實(shí)現(xiàn)4步細(xì)分,只需在A與AB之間插入3個(gè)向量I1、I2、I3,使得合成磁勢(shì)的轉(zhuǎn)動(dòng)角度θ1=θ2=θ3=θ4,就實(shí)現(xiàn)了4步細(xì)分。但4步細(xì)分與2步細(xì)分是不同的,由于I1、I2、I3 3個(gè)向量的插入是對(duì)電流向量IB的分解,故控制脈沖已變成了階梯波。細(xì)分程度越高,階梯波越復(fù)雜。
圖1 步進(jìn)細(xì)分原理
在三相步進(jìn)電機(jī)整步工作時(shí),實(shí)現(xiàn)2步細(xì)分合成磁勢(shì)轉(zhuǎn)動(dòng)過(guò)程為IA→IAB→IB;實(shí)現(xiàn)4步細(xì)分轉(zhuǎn)動(dòng)過(guò)程為IA→I2→IAB……;而實(shí)現(xiàn)8步細(xì)分則轉(zhuǎn)動(dòng)過(guò)程為IA→I1→I2→I3→IAB……??梢?jiàn),選擇不同的細(xì)分步數(shù),就要插入不同的電流合成向量。
2 多級(jí)細(xì)分驅(qū)動(dòng)系統(tǒng)的實(shí)現(xiàn)
2.1 系統(tǒng)組成
如圖2所示,系統(tǒng)由主機(jī)、鍵盤(pán)輸入系統(tǒng)、步進(jìn)顯示系統(tǒng)、步進(jìn)控制系統(tǒng)組成。主機(jī)采用AT89C51單片機(jī),其為低功耗的8位單片機(jī),片內(nèi)有一個(gè)4K字節(jié)的Flash可編程、可擦除、只讀存儲(chǔ)器,故可簡(jiǎn)化系統(tǒng)構(gòu)成,且可滿(mǎn)足本系統(tǒng)數(shù)據(jù)存儲(chǔ)空間的要求。主機(jī)接收串行口送來(lái)的步進(jìn)控制數(shù)據(jù),并對(duì)其進(jìn)行處理,以實(shí)施步進(jìn)控制。鍵盤(pán)輸入系統(tǒng)是用來(lái)輸入控制所需的細(xì)分檔位。系統(tǒng)設(shè)計(jì)時(shí),考慮到隨著細(xì)分的化,如128步細(xì)分時(shí),步距角達(dá)到足夠小,能滿(mǎn)足各種步進(jìn)要求,故以2的整數(shù)次冪作為細(xì)分基準(zhǔn)。步進(jìn)顯示系統(tǒng)由液晶顯示器顯示當(dāng)前細(xì)分檔位和細(xì)分后的步進(jìn)角等參數(shù)。為了減少電路的復(fù)雜性,該顯示器顯示的小單位規(guī)定為0.01°。步進(jìn)控制系統(tǒng)由D/A轉(zhuǎn)換部分和驅(qū)動(dòng)系統(tǒng)組成。D/A轉(zhuǎn)換部分包括3片DAC0830集成芯片和數(shù)據(jù)鎖存系統(tǒng)。DAC0830轉(zhuǎn)換分辨率是8位,該芯片具有與微處理器兼容、價(jià)格低廉、接口簡(jiǎn)單、轉(zhuǎn)換控制容易等優(yōu)點(diǎn)。D/A轉(zhuǎn)換部分的功能是將二進(jìn)制代碼表示的階梯波數(shù)值轉(zhuǎn)換為相應(yīng)的電流值輸出,經(jīng)驅(qū)動(dòng)系統(tǒng)放大,控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng)。驅(qū)動(dòng)系統(tǒng)采用三級(jí)管實(shí)現(xiàn)電流放大。
圖2 多級(jí)細(xì)分驅(qū)動(dòng)系統(tǒng)組成
2.2 細(xì)分階梯波的產(chǎn)生
細(xì)分的實(shí)現(xiàn)過(guò)程,就是插入電流合成向量和轉(zhuǎn)換電流合成向量的過(guò)程。電流合成向量轉(zhuǎn)化的前提是合成向量的插入。在系統(tǒng)中,由主機(jī)根據(jù)設(shè)定的細(xì)分檔位,計(jì)算出相關(guān)參數(shù),經(jīng)查表生成相對(duì)應(yīng)的階梯波,即插入了電流合成向量。在正轉(zhuǎn)或反轉(zhuǎn)的控制信號(hào)下,階梯波脈沖由輸出端口經(jīng)鎖存系統(tǒng)送入D/A轉(zhuǎn)換器件DAC0830進(jìn)行電流合成向量的轉(zhuǎn)化,輸出對(duì)應(yīng)的電流值,經(jīng)驅(qū)動(dòng)放大控制步進(jìn)電機(jī),從而實(shí)現(xiàn)了細(xì)分驅(qū)動(dòng)
電流合成向量的插入是實(shí)現(xiàn)細(xì)分的關(guān)鍵,而要得到電流合成向量,首先必須產(chǎn)生階梯波。由圖1知,在三相電機(jī)半步工作的情況下,要實(shí)現(xiàn)4步細(xì)分,就必須將B相電流分成4份,但不是等分,需保證θ1=θ2=θ3=θ4。若θ1、θ2、θ3、θ4分別對(duì)應(yīng)的電流向量是IB1、IB2、IB3、IB4,則在θ1所對(duì)應(yīng)的三角形內(nèi),設(shè)步進(jìn)角為θb,則α=180°-θb,β=θb-θ1,由正弦定理得
考慮到一般情況,由于細(xì)分時(shí)步進(jìn)電機(jī)控制脈沖波形是階梯型,如對(duì)B相進(jìn)行4步細(xì)分時(shí),其電流輸入依次為IB1、IB1+ IB2、IB1+ IB2+ IB3、IB1+ IB2+ IB3+ IB4,相應(yīng)合成磁勢(shì)轉(zhuǎn)過(guò)的角度為θ1、θ1+θ2、θ1+θ2+θ3、θ1+θ2+θ3+θ4,此時(shí)設(shè)
IBk即為電流合成向量中B相階梯波中第k階的電流值,θk即為此時(shí)合成磁勢(shì)相應(yīng)轉(zhuǎn)過(guò)的角度。由此推出,對(duì)B相來(lái)講,在步進(jìn)電機(jī)的步進(jìn)角度為θb時(shí),考慮到IA=IB,則階梯波型其任一階的電流值為
同理,可求得A相和C相在細(xì)分時(shí)對(duì)應(yīng)的階梯波電流值。對(duì)(1)式求解,考慮D/A器件DAC0830的轉(zhuǎn)換精度是8位,轉(zhuǎn)換穩(wěn)定時(shí)間是1 μs,故大進(jìn)行了128步細(xì)分的運(yùn)算,相應(yīng)求得其對(duì)應(yīng)的細(xì)分電流值,并進(jìn)行了相應(yīng)的轉(zhuǎn)換,得到對(duì)應(yīng)的二進(jìn)制數(shù)值列表。此時(shí),列表全部的數(shù)值就是在實(shí)現(xiàn)128步細(xì)分時(shí),對(duì)應(yīng)階梯波各階的電流值。
2.3 多級(jí)細(xì)分驅(qū)動(dòng)的實(shí)現(xiàn)
要在細(xì)分的基礎(chǔ)上實(shí)現(xiàn)多級(jí)細(xì)分,就必須針對(duì)不同的細(xì)分檔位生成不同的階梯波。為此,該系統(tǒng)采用了循環(huán)增量查表法。首先建立階梯波數(shù)值存儲(chǔ)表格,有兩種方法,一種是針對(duì)每種細(xì)分方式建立相應(yīng)的表格,其特點(diǎn)是細(xì)分種類(lèi)多樣,但表格所占空間較大;另外一種,也就是該系統(tǒng)采用的,以大細(xì)分檔位對(duì)應(yīng)的步數(shù)建立一個(gè)表格,減少了所需的存儲(chǔ)空間,并減少了程序運(yùn)行中的不穩(wěn)定因素。在具體控制中,該系統(tǒng)通過(guò)設(shè)定循環(huán)增量基數(shù),使不同的細(xì)分檔位對(duì)應(yīng)不同的細(xì)分步數(shù),實(shí)現(xiàn)了多級(jí)細(xì)分驅(qū)動(dòng)。
循環(huán)增量基數(shù)是指針對(duì)不同的細(xì)分檔位,實(shí)現(xiàn)等間隔尋址時(shí)相應(yīng)跳躍的步數(shù)。循環(huán)增量基數(shù)是在細(xì)分檔位設(shè)定后,由相應(yīng)的計(jì)算公式得到。由于該系統(tǒng)大細(xì)分步數(shù)為128步,即表格大長(zhǎng)度為128個(gè)字節(jié),若細(xì)分步數(shù)為m步,則循環(huán)增量基數(shù)為L(zhǎng)B=(128/m)-1。不同的檔位對(duì)應(yīng)不同的循環(huán)增量基數(shù),同一表格就產(chǎn)生了多級(jí)細(xì)分所需的階梯波。
另外,在整步控制的基礎(chǔ)上,若細(xì)分為m步,對(duì)每m步運(yùn)行中的各項(xiàng)電流值進(jìn)行分析比較,可發(fā)現(xiàn)存在以下規(guī)律,即各相電流值的變化趨勢(shì),隨著相位變化循環(huán)地出現(xiàn),如表1所示。
表1 細(xì)分控制中各相電流值變化規(guī)律
各相 A→B B→C C→A
A相 高→遞減 電流值=0 增加→高
B相 增加→高 高→遞減 電流值=0
C相 電流值=0 增加→高 高→遞減