唐艷芳,李鐘慎
(華僑大學電機及自動化學院,福建廈門 361021)
隨著微型計算機和數字控制技術的發展,應用步進電動機作為數控系統執行部件越來越受到關注。由于步進電機低速運行時的電機振動幅度較大,傳統的改善方法為在步進電機軸上加磁性阻尼器,但這種方式對機械結構的改變較大。也可采用步距角更小的步進電機,如三相或五相步進電機,或采用帶有細分功能的驅動器[1-2]。嵌入式系統是指以應用為中心、以計算機技術為基礎,軟硬件可裁剪,適用于對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統。嵌入式系統在硬件和軟件方面都出現了許多新的特點。依據細分原理,本文提出了采用STM8S903單片機為內核芯片控制低速二相步進電機的嵌入式系統。采用STM8S903單片機的嵌入式系統[3]相比其他系列單片機的控制系統更具優勢[4-7],其優點是系統內核小、專用性強、精簡、實時性高。
圖1為系統的結構。STM8S903單片機控制驅動器使其采用細分動作驅動步進電機,并利用反饋控制原理實時檢測步進電機的轉速[8],若有過電流或短路情況立即送入控制器處理,從而保證步進電機安全可靠地運行。

圖1 系統結構
步進電機依靠單片機產生的脈沖來控制轉矩。由于單片機本身驅動電流過小,驅動電機繞組需要采用驅動芯片進行驅動。
多源BCD(Bipolar,CMOS,DMOS)技術是集成單個或者多個 DMOS場效應晶體管,并混合MOS管/二極管的控制電路技術。L6203是一種采用多源BCD技術用于電機切換驅動的整塊全橋芯片。通過使用這種技術使得芯片具備兼容所有TTL、COMS和μC的能力,并且可以消除外部MOS設備的驅動問題。
兩相四線步進電機采用2片L6203聯合驅動步進電機(如圖2所示)。L6203芯片中的BOOT1引腳外接自舉電容來確保第1級DMOS場效應管有效,BOOT2引腳外接電容來確保第1級DMOS場效應管有效。L6203芯片中的OUT1對應第1個半橋的輸出口,OUT2對應第2個半橋的輸出口。ENABLE引腳高電平有效,其功能是選擇IN1或者IN2接口。當ENABLE為1時,如果將PWM信號傳遞給IN1,則PWM信號反向后傳遞給IN2,這樣調整PWM即可改變步進電機的轉速。最后,為防止電流過大或者短路造成對步進電機運行穩定性的影響,采用8個二極管進行續流保護。

圖2 驅動電路
步進電機連接檢測電路的主要作用是檢測驅動電路側是否存在連接器脫落情況或連接器到步進電機的配線有斷線或短路的情況。主要是利用LM358處理放大信號并送往單片機。
在步進電機步距角不能滿足使用要求的條件下,可采用細分驅動原理驅動步進電機。細分驅動原理是通過改變相鄰(A,B)電流的大小來改變合成磁場的夾角以控制步進電機的運轉。
本實驗采用二相步進電機,其額定相電流為2 A。如果使用普通驅動器直接驅動步進電機,電機每轉動一步,其繞組內的電流將從0突變為2 A或從2 A突變到0。相電流的突然巨變必然會導致電機轉動的振動和噪音變大。如果使用細分驅動器,在16細分的狀態下驅動該電機時,電機每轉動一小步,其繞組內的電流變化僅有0.125 A,且電流以正弦曲線規律變化,從而極大地改善了電機的振動和噪音情況。表1的數據來源依據原理為:0~90°細分的PWM數據范圍為0~128,細分N=16,步進電機走到第n步時轉過的角度為:

此時在坐標系的位置為:


此算法按照逆時針表順序,以半周期進行細分。由表1可知,步進電機在運行時,避免了整步達到90°的跨度,微步使得電機運行更平穩。

表1 16細分實驗數據
對于24 r/min的低速步進電機,在未細分時每分鐘輸出的PWM波為96個,采用16細分時每分鐘輸出的PWM波為384個。未細分時與細分時實驗需要產生的PWM波對比如圖3所示。

圖3 PWM波仿真對比
系統程序設計流程如圖4所示。系統程序主要分為4個模塊:故障檢測、PWM波程序、正轉、反轉。步進電機穩定運行的前提是沒有發生故障,所以程序在每次初始化后從故障檢測模塊開始執行,然后根據實際需求運行正反轉程序。

圖4 程序設計流程
本文設計的低速步進電機控制系統采用STM8S903單片機,結合步進電機驅動芯片L6203和電流檢測電路來實時控制步進電機。STM8S903輸出PWM波控制驅動芯片控制步進電機,簡化了硬件電路;STM8S903單片機的STLINK接口使得程序調試和軟件更新更加方便。試驗結果表明:步進電機經過本文的細分驅動控制后,其振動明顯減弱,整個系統穩定可靠,經濟實用性較好。
[1]陳培民.步進電機的高性能驅動[J].華僑大學學報:自然科學版,1998,19(4):347 -349.
[2]范正翹,劉進,程勝.單片機控制的步進電動機綜合微步驅動系統[J].驅動控制,1996(3):30-31.
[3]潘永雄.STM8S系列單片機原理與應用[M].西安:西安電子科技大學出版社,2011.
[4]董磊,王春民,尹晶,等.基于MSP430F169的步進電機控制系統[J].吉林大學學報:信息科學版,2011,29(6):549-553.
[5]高琴,劉淑聰,彭宏偉.步進電機控制系統的設計及應用[J].制造業自動化,2012,34(1):150 -152.
[6]張旭波.一種步進電機運動控制系統設計[J].甘肅科技,2011,27(20):41 -43.
[7]李文廣,湯清華,吳國安.基于AVR單片機和L6208的步進電機控制系統設計[J].電機與控制應用,2011,38(1):43 -46.
[8]陳瑞.基于8089單片機控制的電動機轉速實時檢測系統[J].儀器儀表裝置,2002(3):16-18.