《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 電源技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于PSoC的二相混合式步進(jìn)電機(jī)細(xì)分驅(qū)動器
基于PSoC的二相混合式步進(jìn)電機(jī)細(xì)分驅(qū)動器
王琪,,李全忠
摘要: 電機(jī)是現(xiàn)代工業(yè)的“肌肉”,,推動著工業(yè)的發(fā)展。步進(jìn)電機(jī)是電機(jī)家族的“嬰兒”,,在20世紀(jì)60年代早期才開始流行。它能將電脈沖信號轉(zhuǎn)換為角位移,、直線位移等諸多優(yōu)點(diǎn),,被構(gòu)想作為昂貴的位置控制應(yīng)用中伺服電機(jī)的低成本替代產(chǎn)品,在航空航天,、精密機(jī)械加工,、自動化控制和辦公室自動化設(shè)備等領(lǐng)域大量使用,如云臺,、打印機(jī),、繪圖儀和雕刻機(jī)等。
Abstract:
Key words :

引言

電機(jī)是現(xiàn)代工業(yè)的“肌肉”,,推動著工業(yè)的發(fā)展,。步進(jìn)電機(jī)是電機(jī)家族的“嬰兒”,在20世紀(jì)60年代早期才開始流行,。它能將電脈沖信號轉(zhuǎn)換為角位移,、直線位移等諸多優(yōu)點(diǎn),被構(gòu)想作為昂貴的位置控制應(yīng)用中伺服電機(jī)的低成本替代產(chǎn)品,,在航空航天,、精密機(jī)械加工、自動化控制和辦公室自動化設(shè)備等領(lǐng)域大量使用,如云臺,、打印機(jī),、繪圖儀和雕刻機(jī)等。

一般的步進(jìn)電機(jī)因?yàn)槭芟抻跈C(jī)械加工工藝,,其步距角不能做到很?。ㄈ绗F(xiàn)在相數(shù)高的5相步進(jìn)電機(jī)步距角為0.72)還達(dá)不到對位移精度要求高的精密控制系統(tǒng)的要求,如精密儀器定位,、數(shù)控加工等場合,。另外,使用傳統(tǒng)的驅(qū)動方法,,步進(jìn)電機(jī)還存在低速運(yùn)行時(shí)振動,,會產(chǎn)生共振和噪聲的固有特性。

采用細(xì)分驅(qū)動不僅能有效解決這些問題,,改善步進(jìn)電機(jī)的運(yùn)行性能,,還提高了分辨率,增加了電機(jī)的輸出力矩,。1975年美國學(xué)者T.R.Fredriksen首次在美國增量運(yùn)動控制系統(tǒng)及器件年會上提出了步進(jìn)電機(jī)步距角細(xì)分的控制方法后,,在國內(nèi)外被廣泛研究,成為步進(jìn)電機(jī)驅(qū)動的發(fā)展趨勢,。一些高性能的細(xì)分驅(qū)動器在國外被研究出來,,但技術(shù)極為保密。國內(nèi)外對步進(jìn)電機(jī)細(xì)分驅(qū)動研究的文獻(xiàn)很多,,主要對細(xì)分?jǐn)?shù),、均勻步距、恒定轉(zhuǎn)矩,、低噪音,、低振動、抗干擾,、細(xì)分驅(qū)動器的硬件實(shí)現(xiàn)等方面進(jìn)行研究,。

文章下面部分對步進(jìn)電機(jī)的工作原理及細(xì)分驅(qū)動進(jìn)行原理詳細(xì)介紹,提出一種用PSoC設(shè)計(jì)的細(xì)分驅(qū)動器,,并總結(jié)了相對于其它一些設(shè)計(jì)方案的特點(diǎn),。

步進(jìn)電機(jī)工作原理及細(xì)分驅(qū)動

圖1是某兩型步進(jìn)電機(jī)的內(nèi)部與外形結(jié)構(gòu),從圖中可以大致看出其組成結(jié)構(gòu),。圖2是三相混合式步進(jìn)電機(jī)的結(jié)構(gòu)示意圖,,定子繞組磁極和轉(zhuǎn)子上都有小齒,一般分別是5個(gè)和50個(gè),,當(dāng)某一相繞組通電時(shí),,轉(zhuǎn)子上的小齒就會與相應(yīng)繞組上的小齒對齊,,與另外兩繞組上的小齒錯(cuò)開一定的角度。

圖1 步進(jìn)電機(jī)內(nèi)部和外形結(jié)構(gòu)
 

圖2 三相混合式步進(jìn)電機(jī)結(jié)構(gòu)示意圖
 
以圖2為例,,當(dāng)進(jìn)行單相輪流通電順序?yàn)锳→B→C→A時(shí),,轉(zhuǎn)子逆時(shí)針旋轉(zhuǎn);為A→C→B→A時(shí),,順時(shí)針旋轉(zhuǎn),。也可以進(jìn)行雙相輪流通電AB→BC→CA→AB(逆時(shí)針轉(zhuǎn))或BA→AC→CB→BA(順時(shí)針轉(zhuǎn))。還可以進(jìn)行單雙相輪流通電A→AB→B→BC→C→CA→A(逆時(shí)針轉(zhuǎn))或A→AC→C→CB→B→BA→A(順時(shí)針轉(zhuǎn)),。單雙相輪流通電的步距角是其它兩種方式的一半,,可以通過公式進(jìn)行計(jì)算,式中左邊為步距角,,右邊m為定子的相數(shù),、Z為轉(zhuǎn)子的齒數(shù)、C為通電方式(單雙相輪流通電時(shí)C=2,,其它兩種C=1),。那么可以計(jì)算出三相步進(jìn)電機(jī)的步距角為。

由此可得出如下一些結(jié)論:①控制步進(jìn)電機(jī)各相定子繞組的通電順序可以控制步進(jìn)電機(jī)的轉(zhuǎn)動方向,;②控制輸入給步進(jìn)電機(jī)的脈沖數(shù)目N可以控制步進(jìn)電機(jī)的角位移為;③控制輸入給步進(jìn)電機(jī)的脈沖的頻率可以控制步進(jìn)電機(jī)的轉(zhuǎn)速為:

(轉(zhuǎn)/分鐘)

其實(shí),,仔細(xì)分析三種通電方式,,應(yīng)該不難發(fā)現(xiàn)蘊(yùn)含于其中的細(xì)分原理。以單雙相輪流通電A→AB為例,,如果在這個(gè)階段,,我們使B相繞組中的電流慢慢增加到與A相繞組中電流相同,那么與A相繞組對齊的轉(zhuǎn)子就會慢慢轉(zhuǎn)到A與B相繞中間,;再假設(shè)我們使B相繞組中的電流以定量大小增加,,即一種階梯上升的電流,那么轉(zhuǎn)子就會以比0.6更小的步距角一步一步轉(zhuǎn)動,,這樣的就實(shí)現(xiàn)了步距角的細(xì)分,。

但這是一種只改變某一相繞組中電流大小的細(xì)分方法,以二相步進(jìn)電機(jī)為例,,其A,、B兩相繞組中的電流合成矢量理論上是如圖3左所示的形式;其相鄰兩次電流矢量的大小與夾角都不同,,這直接導(dǎo)致步距角與輸出力矩的大小不均勻,。而現(xiàn)在所用的細(xì)分方法,一般是如圖3右所示的均勻恒幅電流矢量法,;要實(shí)現(xiàn)電流矢量的這種變化,,需A,、B兩相中的電流同時(shí)改變,且滿足iA=iH.cos(a),,iB=iH.sin(a),。

 

圖3 單相細(xì)分電流矢量和均勻恒幅電流矢量

下面分析一下兩相步進(jìn)電機(jī)中每相繞組中的電流,圖4,、5,、6分別是整步(單相輪流通電)、半步和四細(xì)分運(yùn)行時(shí)繞組中電流波形示意圖,。分析可知,,細(xì)分原理就是通過精確控制相電流來產(chǎn)生均勻旋轉(zhuǎn)的磁場,即把原來每相電流的矩形波變?yōu)殡A梯波,,原來走一步只給一個(gè)矩形波,,現(xiàn)在把一個(gè)步距角分為N步來走,給N個(gè)階梯的階梯波,,N就是細(xì)分?jǐn)?shù),。細(xì)分?jǐn)?shù)越大,相電流相鄰兩次的變化就越小,,步距角就越小,,為原來固有步距角的1/N,電機(jī)運(yùn)行性能更好,。還可得出另外兩點(diǎn)結(jié)論:①進(jìn)給繞組的細(xì)分電流的階梯數(shù)量m控制電機(jī)轉(zhuǎn)動的角位移為,;②細(xì)分電流大小變化的頻率控制電機(jī)的轉(zhuǎn)速。

細(xì)分驅(qū)動的實(shí)現(xiàn)主要靠D/A數(shù)模轉(zhuǎn)換器來精確控制每小步的相電流,,用8位的D/A最大能實(shí)現(xiàn)256級細(xì)分,,位數(shù)越多,細(xì)分?jǐn)?shù)越大,。要用D/A輸出的正弦規(guī)律變化的電流或電壓信號來控制相電流,,根據(jù)末級功放管的工作狀態(tài)可以分為放大型和開關(guān)型兩種。一般步進(jìn)電機(jī)的工作電壓是幾伏到四十幾伏,,工作電流是幾百毫安到幾安,,從而不能用D/A的輸出直接驅(qū)動。

放大型驅(qū)動電路就是讓功放管工作在放大狀態(tài)來放大D/A的輸出,,可以進(jìn)行電壓放大也可以進(jìn)行電流放大,,但用放大后的正弦規(guī)律變化的電壓加在繞組上,會由于繞組電感的作用而不會產(chǎn)生正弦規(guī)律變化的電流,,所以一般應(yīng)進(jìn)行電流放大,。這種驅(qū)動方式,電路較簡單,,只要選擇精度高一點(diǎn)的電子元件,,電流的控制精度也較高,;但由于功放管工作在放大狀態(tài),功耗較大,、發(fā)熱較嚴(yán)重,,所以一般用在驅(qū)動電流較小、控制精度較高,、散熱環(huán)境較好的場合,。

開關(guān)型驅(qū)動電路就是讓功放管工作在開關(guān)狀態(tài),從而其功耗和發(fā)熱都會降低,;但電路較復(fù)雜,,輸出的電流會像如圖7所示有一定的波紋;因此一般用于驅(qū)動力矩較大的電機(jī),。隨著大力矩輸出的步進(jìn)電機(jī)的發(fā)展,,這種電路很常見,并且許多日本公司還生產(chǎn)了這種電路的步進(jìn)電機(jī)細(xì)分驅(qū)動芯片,,如TA8435,、A3955SB、THB8128等,。

要實(shí)現(xiàn)開關(guān)型電路,,常用的有兩種方法:斬波式和脈寬調(diào)制式(PWM)。斬波式電路典型結(jié)構(gòu)如圖8所示,,其原理是用采樣電阻對電機(jī)繞組中的電流進(jìn)行采樣,,使之與D/A輸出的細(xì)分電壓進(jìn)行比較,若采樣值大于D/A輸出,,則功放管截止,反之功放管導(dǎo)通,。這樣D/A輸出正弦規(guī)律變化的階梯型控制電壓,,繞組中就流過階梯型的電流,這也是電流會有波紋的原因,。這種電路應(yīng)該選用開關(guān)性能比較好的功放管和比較器,。

 

圖4 整步運(yùn)行相電流   圖5 半步運(yùn)行相電流   圖6 四細(xì)分運(yùn)行時(shí)相電流
 

圖7 有紋波的細(xì)分相電流
 

圖8 斬波式電路原理圖

另一種脈寬調(diào)制方式電路原理如圖9所示,其原理是用最大幅值相同的D/A輸出的正弦規(guī)律變化的電壓與恒幅三角波(也可為鋸齒波)進(jìn)行比較,,D/A輸出的電壓越大,,脈寬調(diào)制電路輸出的PWM脈沖的寬度也越大,而脈沖間的間隔則越??;反之則PWM脈沖的寬度也越小,而脈沖間的間隔則越大,。圖10很好的說明了這種比較過程及輸出結(jié)果,。這種方式調(diào)制出的PWM波,,其脈沖寬度時(shí)間占空比是按正弦規(guī)律變化的,用它來控制功放管的通斷將產(chǎn)生比斬波式精度更高正弦變化的階梯型細(xì)分電流,。這種方式是通過對功放管通斷時(shí)間的控制來改變輸出到繞組上的平均電流,,這是因?yàn)槔@組的電感特性對電流變化有阻礙作用,并且要求所用三角波的頻率一般應(yīng)大于20kHz,。其實(shí)這種方法不一定要用真正的D/A與三角波發(fā)生器,,完全可以用軟件的方法實(shí)現(xiàn),只要輸出的PWM波的占空比按正弦規(guī)律變化,。

由于本文的設(shè)計(jì)方案是SPWM細(xì)分驅(qū)動,,所以總結(jié)出以下幾點(diǎn)結(jié)論:①三角波的頻率決定PWM的頻率,而PWM的頻率決定了細(xì)分電流的紋波大??;②D/A輸出值的大小決定PWM的脈寬,而PWM的脈寬和頻率共同決定了細(xì)分電流的大??;③D/A的位數(shù)n決定細(xì)分?jǐn)?shù)為2n ,細(xì)分后電機(jī)的最小步距角為固有步距角θ/2n-1,,SPWM的占空比的值即有2n種,,并且其取值是按正弦規(guī)律變化及每個(gè)階梯電流對應(yīng)一種占空比;④D/A輸出值大小變化的頻率決定電機(jī)轉(zhuǎn)速,,并應(yīng)遠(yuǎn)小于三角波的頻率,,在電機(jī)啟動時(shí)不能超過其啟動頻率,在電機(jī)連續(xù)運(yùn)行時(shí)不能超過其最高工作頻率,;⑤三角波的頻率不能大于功率管的截止頻率,,選擇開關(guān)性能越好的功率管,三角波的頻率可以越大,,細(xì)分電流的紋波就越小,。

當(dāng)然,除了上面介紹的幾種常用方法,,還有其它的方法,,比如PID控制等??傊?,目標(biāo)就是精確控制繞組中流過正弦變化的階梯型波。

另外,,有文獻(xiàn)指出由于步進(jìn)電機(jī)制造工藝引起的誤差和相電流由小變到大引起的相電流及其產(chǎn)生的勵(lì)磁存在非線性而導(dǎo)致的誤差等,,會使細(xì)分后的步距角并不是完全均勻的;為了進(jìn)一步提高步距角,,需要對正弦規(guī)律的D/A值進(jìn)行修正,,即修正每小步的相電流值,。當(dāng)然,對于細(xì)分后能達(dá)到精度允許的誤差的應(yīng)用場合完全可以不必耗費(fèi)過多的資源來進(jìn)行這種修正了,。

通過以上對步進(jìn)電機(jī)及其細(xì)分驅(qū)動的分析,,讀者應(yīng)該對其有了充分的認(rèn)識,下一節(jié)將對本文設(shè)計(jì)的基于PSoC的二相混合式步進(jìn)電機(jī)細(xì)分驅(qū)動器進(jìn)行介紹,。

基于PSoC的二相混合式步進(jìn)電機(jī)細(xì)分驅(qū)動器

隨著細(xì)分驅(qū)動技術(shù)的發(fā)展,,步進(jìn)電機(jī)的相數(shù)“多”和固有的步距角“小”已經(jīng)沒有多大意義。對細(xì)分驅(qū)動器而言,,相數(shù)多了反而增加了其復(fù)雜性,,因?yàn)橐敵龅募?xì)分相電流多了;且由于混合式步進(jìn)電機(jī)的優(yōu)勢,,現(xiàn)在很多產(chǎn)商也是以生產(chǎn)這種電機(jī)為主,,二相混合式步進(jìn)電機(jī)將成為主流,所以本文針對其設(shè)計(jì)了一種基于PSoC的并使用上述脈寬調(diào)制方法實(shí)現(xiàn)的細(xì)分驅(qū)動器,。

賽普拉斯公司生產(chǎn)的CY8C系列PSoC可編程的片上系統(tǒng),,集成了M8C內(nèi)核微控制器以及用戶可配置的嵌入式系統(tǒng)中通常圍繞微控制器周圍的模擬及數(shù)字模塊,模塊可配置成放大器,、ADC,、DAC、濾波器及比較器等模擬功能以及定時(shí)器,、計(jì)數(shù)器,、PWM、SPI和UART等數(shù)字功能,。

由于本驅(qū)動器是為二自由度的云臺設(shè)計(jì),,需要同時(shí)控制二個(gè)步進(jìn)電機(jī)轉(zhuǎn)動,每個(gè)同時(shí)要兩路PWM控制,,而每個(gè)PWM需占用一個(gè)數(shù)字模塊,,因此選擇有8個(gè)可配置數(shù)字模塊的CY8C27443-24PXI型號28引腳封裝的芯片,其有3個(gè)8位的可復(fù)用可配置的I/O口P0,、P1、P2,。其功能模塊組成如圖11所示,。


圖9 脈寬調(diào)制式原理圖
 

圖10 脈寬調(diào)制原理及輸出
 

圖11 CY8C27443-24PXI功能組成模塊

本文通過賽普拉斯公司提供的配套開發(fā)軟件PSoC Designer進(jìn)行開發(fā)(其使用方法請查看相關(guān)資料),為芯片配置4個(gè)8位PWM模塊,、1個(gè)8位定時(shí)器,、1個(gè)8位A/D(占1個(gè)模擬和1個(gè)數(shù)字模塊)、1個(gè)UART串口(占兩個(gè)數(shù)字模塊)和1個(gè)PGA可編程增益放大器,,如圖12所示,,圖中左邊為輸入引腳,,右邊為輸出引腳,上半部分8個(gè)矩形即為8個(gè)可配置的數(shù)字模塊,,依次被A/D,、定時(shí)器、UART串口和4個(gè)PWM模塊占用,,下半部分12個(gè)矩形即是可配置的模擬模塊,,被PGA和A/D各占用一個(gè)。

其中,,UART串口用來連接上位機(jī),,使上位機(jī)程序能發(fā)送命令控制電機(jī)的轉(zhuǎn)動(包括啟動、停止,、方向和速度)和細(xì)分?jǐn)?shù)等,,下位機(jī)可向上發(fā)送一些狀態(tài)信息等。每個(gè)PWM模塊輸出通過內(nèi)部總線連到P1口的兩個(gè)引腳上,,即每個(gè)PWM模塊從兩個(gè)引腳上輸出相同的波形,,但是可以通過引腳的可配置功能使其中一個(gè)引腳輸出高或低電平,可以實(shí)現(xiàn)模塊的分時(shí)復(fù)用,;因?yàn)楹笪倪x用集成雙H橋芯片L298n作為末級功放,,其每個(gè)橋的兩個(gè)輸入口同一時(shí)刻只有一個(gè)為高電平才導(dǎo)通,因此只用一個(gè)PWM模塊就能控制它,,引腳連接如表1所示,。定時(shí)器模塊用來產(chǎn)生中斷源以編寫分時(shí)處理結(jié)構(gòu)的程序。A/D模塊的輸入連接PGA輸出,,PGA的輸入可以通過MUX模塊連接4個(gè)不同的引腳(P01,、P03、P05,、P07),,從而一個(gè)A/D模塊就能分時(shí)通過4個(gè)引腳輸入來實(shí)現(xiàn)采樣4組不同的反饋相電流,以此可實(shí)現(xiàn)如過流保護(hù)等閉環(huán)控制功能,。這些模塊都可以通過在程序中調(diào)用其提供的API函數(shù)實(shí)現(xiàn)參數(shù)和功能的設(shè)置,,如要實(shí)現(xiàn)PWM模塊輸出的PWM波的脈寬和周期(頻率)設(shè)置,可分別調(diào)用函數(shù):

void PWM8_WritePulseWidth(BYTE bPulseWidth);

void PWM8_WritePeriod(BYTE bPeriod).

當(dāng)然,,要使其正常工作還需要用其它函數(shù),,這種調(diào)用API函數(shù)進(jìn)行編程的方法,使得開發(fā)相對于用其它芯片的設(shè)計(jì)方案更簡單,。

細(xì)分驅(qū)動器的末級功放使用兩片集成的雙H橋路芯片L298n,。該芯片的開關(guān)頻率最高可達(dá)40kHz,最高工作電壓可達(dá)46V,瞬間峰值電流可達(dá)3A,,持續(xù)工作電流為2A,,其使用方法請參考芯片手冊。整個(gè)驅(qū)動器的原理圖如圖13所示,。圖中選用42BYGH4417混合式2相4線步進(jìn)電機(jī),,其相電流為1.7A,因此4個(gè)采樣電阻選擇0.02Ω,、1W,、2512封裝的精密電阻,采樣電壓分別通過P01,、P03,、P05和P07被A/D模塊分時(shí)讀取,;正常情況下,,每相繞組的采樣電壓最大值為0.034V,經(jīng)過PGA模塊放大48倍后約為1.63V,,給片內(nèi)以2.5V作為參考電壓,、分辨率約為0.02V的8位A/D進(jìn)行轉(zhuǎn)換。


圖12 PSoC內(nèi)部模塊配置
 

表1 PWM模塊與I/O口及L298n連接對應(yīng)表
 

圖13 細(xì)分驅(qū)動器原理圖

驅(qū)動器設(shè)計(jì)的最大細(xì)分?jǐn)?shù)為128,,當(dāng)頻率固定時(shí),,則決定細(xì)分電流大小的SPWM波的占空比即有128種。這128個(gè)脈寬值從小到大排列與四分之一個(gè)正弦波的128級量化后的值成比例關(guān)系,,這樣只需要知道任意一個(gè)細(xì)分電流值(細(xì)分電流值=m×最大相電流/128,,0≤m≤128)的大小對應(yīng)的脈寬值,就可計(jì)算出所有的脈寬值,,這個(gè)值需要通過實(shí)驗(yàn)得到,,并且不同的電機(jī)由于相電阻等參數(shù)的不同所得到的這個(gè)脈寬值也不同。編程時(shí)把這128個(gè)脈寬值放在代碼段,,調(diào)用API函數(shù)設(shè)置PWM波脈寬時(shí)使用時(shí)用查表方式進(jìn)行查找,。對這128個(gè)值進(jìn)行2的倍數(shù)值等距采樣使用,就能實(shí)現(xiàn)64,、32,、16、8,、4,、2和1等細(xì)分,從而很容易實(shí)現(xiàn)“電機(jī)快速轉(zhuǎn)動時(shí)使用低細(xì)分,,慢速時(shí)使用高細(xì)分”的控制策略,。四個(gè)PWM模塊,每兩個(gè)的脈寬值是同時(shí)變化的,,PWM1與PWM2同時(shí)(控制圖2-3中上面的那個(gè)L298n),,另兩個(gè)同時(shí),并且一個(gè)是從小到大變化,,另一個(gè)是從大到小變化,,從而實(shí)現(xiàn)電機(jī)的正轉(zhuǎn)和反轉(zhuǎn);脈寬值變化的越快,,電機(jī)轉(zhuǎn)動越快,,不變時(shí)電機(jī)處于自鎖狀態(tài)。

經(jīng)實(shí)驗(yàn)證明,,本文所設(shè)計(jì)的細(xì)分驅(qū)動器在電機(jī)快速和慢速轉(zhuǎn)動時(shí)都能很穩(wěn)定地工作,,電機(jī)輸出力矩和步距角均勻、運(yùn)行平穩(wěn),,充分發(fā)揮了步進(jìn)電機(jī)的功能,。

總結(jié)

本文首先詳細(xì)分析了步進(jìn)電機(jī)的工作和細(xì)分驅(qū)動原理,最后選擇理論上比較好的SPWM細(xì)分驅(qū)動方法,,使用PSoC結(jié)合L298n實(shí)現(xiàn)了最高128細(xì)分的,、能同時(shí)驅(qū)動兩個(gè)步進(jìn)電機(jī)的細(xì)分驅(qū)動器。

本文的細(xì)分驅(qū)動器設(shè)計(jì)方案很好地解決了使用其它方案時(shí)遇到的電路復(fù)雜和編程困難等問題,,成本也比其它方案低很多,,所用電子元件很少、功耗低,、體積小,,非常適合用于對體積和重量要求嚴(yán)格的場合,如無人機(jī)等,。

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