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