唐艷芳,李鐘慎
(華僑大學(xué)電機及自動化學(xué)院,福建廈門 361021)
隨著微型計算機和數(shù)字控制技術(shù)的發(fā)展,應(yīng)用步進電動機作為數(shù)控系統(tǒng)執(zhí)行部件越來越受到關(guān)注。由于步進電機低速運行時的電機振動幅度較大,傳統(tǒng)的改善方法為在步進電機軸上加磁性阻尼器,但這種方式對機械結(jié)構(gòu)的改變較大。也可采用步距角更小的步進電機,如三相或五相步進電機,或采用帶有細分功能的驅(qū)動器[1-2]。嵌入式系統(tǒng)是指以應(yīng)用為中心、以計算機技術(shù)為基礎(chǔ),軟硬件可裁剪,適用于對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。嵌入式系統(tǒng)在硬件和軟件方面都出現(xiàn)了許多新的特點。依據(jù)細分原理,本文提出了采用STM8S903單片機為內(nèi)核芯片控制低速二相步進電機的嵌入式系統(tǒng)。采用STM8S903單片機的嵌入式系統(tǒng)[3]相比其他系列單片機的控制系統(tǒng)更具優(yōu)勢[4-7],其優(yōu)點是系統(tǒng)內(nèi)核小、專用性強、精簡、實時性高。
圖1為系統(tǒng)的結(jié)構(gòu)。STM8S903單片機控制驅(qū)動器使其采用細分動作驅(qū)動步進電機,并利用反饋控制原理實時檢測步進電機的轉(zhuǎn)速[8],若有過電流或短路情況立即送入控制器處理,從而保證步進電機安全可靠地運行。
圖1 系統(tǒng)結(jié)構(gòu)
步進電機依靠單片機產(chǎn)生的脈沖來控制轉(zhuǎn)矩。由于單片機本身驅(qū)動電流過小,驅(qū)動電機繞組需要采用驅(qū)動芯片進行驅(qū)動。
多源BCD(Bipolar,CMOS,DMOS)技術(shù)是集成單個或者多個 DMOS場效應(yīng)晶體管,并混合MOS管/二極管的控制電路技術(shù)。L6203是一種采用多源BCD技術(shù)用于電機切換驅(qū)動的整塊全橋芯片。通過使用這種技術(shù)使得芯片具備兼容所有TTL、COMS和μC的能力,并且可以消除外部MOS設(shè)備的驅(qū)動問題。
兩相四線步進電機采用2片L6203聯(lián)合驅(qū)動步進電機(如圖2所示)。L6203芯片中的BOOT1引腳外接自舉電容來確保第1級DMOS場效應(yīng)管有效,BOOT2引腳外接電容來確保第1級DMOS場效應(yīng)管有效。L6203芯片中的OUT1對應(yīng)第1個半橋的輸出口,OUT2對應(yīng)第2個半橋的輸出口。ENABLE引腳高電平有效,其功能是選擇IN1或者IN2接口。當(dāng)ENABLE為1時,如果將PWM信號傳遞給IN1,則PWM信號反向后傳遞給IN2,這樣調(diào)整PWM即可改變步進電機的轉(zhuǎn)速。最后,為防止電流過大或者短路造成對步進電機運行穩(wěn)定性的影響,采用8個二極管進行續(xù)流保護。
圖2 驅(qū)動電路
步進電機連接檢測電路的主要作用是檢測驅(qū)動電路側(cè)是否存在連接器脫落情況或連接器到步進電機的配線有斷線或短路的情況。主要是利用LM358處理放大信號并送往單片機。
在步進電機步距角不能滿足使用要求的條件下,可采用細分驅(qū)動原理驅(qū)動步進電機。細分驅(qū)動原理是通過改變相鄰(A,B)電流的大小來改變合成磁場的夾角以控制步進電機的運轉(zhuǎn)。
本實驗采用二相步進電機,其額定相電流為2 A。如果使用普通驅(qū)動器直接驅(qū)動步進電機,電機每轉(zhuǎn)動一步,其繞組內(nèi)的電流將從0突變?yōu)? A或從2 A突變到0。相電流的突然巨變必然會導(dǎo)致電機轉(zhuǎn)動的振動和噪音變大。如果使用細分驅(qū)動器,在16細分的狀態(tài)下驅(qū)動該電機時,電機每轉(zhuǎn)動一小步,其繞組內(nèi)的電流變化僅有0.125 A,且電流以正弦曲線規(guī)律變化,從而極大地改善了電機的振動和噪音情況。表1的數(shù)據(jù)來源依據(jù)原理為:0~90°細分的PWM數(shù)據(jù)范圍為0~128,細分N=16,步進電機走到第n步時轉(zhuǎn)過的角度為:
此時在坐標系的位置為:
此算法按照逆時針表順序,以半周期進行細分。由表1可知,步進電機在運行時,避免了整步達到90°的跨度,微步使得電機運行更平穩(wěn)。
表1 16細分實驗數(shù)據(jù)
對于24 r/min的低速步進電機,在未細分時每分鐘輸出的PWM波為96個,采用16細分時每分鐘輸出的PWM波為384個。未細分時與細分時實驗需要產(chǎn)生的PWM波對比如圖3所示。
圖3 PWM波仿真對比
系統(tǒng)程序設(shè)計流程如圖4所示。系統(tǒng)程序主要分為4個模塊:故障檢測、PWM波程序、正轉(zhuǎn)、反轉(zhuǎn)。步進電機穩(wěn)定運行的前提是沒有發(fā)生故障,所以程序在每次初始化后從故障檢測模塊開始執(zhí)行,然后根據(jù)實際需求運行正反轉(zhuǎn)程序。
圖4 程序設(shè)計流程
本文設(shè)計的低速步進電機控制系統(tǒng)采用STM8S903單片機,結(jié)合步進電機驅(qū)動芯片L6203和電流檢測電路來實時控制步進電機。STM8S903輸出PWM波控制驅(qū)動芯片控制步進電機,簡化了硬件電路;STM8S903單片機的STLINK接口使得程序調(diào)試和軟件更新更加方便。試驗結(jié)果表明:步進電機經(jīng)過本文的細分驅(qū)動控制后,其振動明顯減弱,整個系統(tǒng)穩(wěn)定可靠,經(jīng)濟實用性較好。
[1]陳培民.步進電機的高性能驅(qū)動[J].華僑大學(xué)學(xué)報:自然科學(xué)版,1998,19(4):347 -349.
[2]范正翹,劉進,程勝.單片機控制的步進電動機綜合微步驅(qū)動系統(tǒng)[J].驅(qū)動控制,1996(3):30-31.
[3]潘永雄.STM8S系列單片機原理與應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2011.
[4]董磊,王春民,尹晶,等.基于MSP430F169的步進電機控制系統(tǒng)[J].吉林大學(xué)學(xué)報:信息科學(xué)版,2011,29(6):549-553.
[5]高琴,劉淑聰,彭宏偉.步進電機控制系統(tǒng)的設(shè)計及應(yīng)用[J].制造業(yè)自動化,2012,34(1):150 -152.
[6]張旭波.一種步進電機運動控制系統(tǒng)設(shè)計[J].甘肅科技,2011,27(20):41 -43.
[7]李文廣,湯清華,吳國安.基于AVR單片機和L6208的步進電機控制系統(tǒng)設(shè)計[J].電機與控制應(yīng)用,2011,38(1):43 -46.
[8]陳瑞.基于8089單片機控制的電動機轉(zhuǎn)速實時檢測系統(tǒng)[J].儀器儀表裝置,2002(3):16-18.