白 棟 黃 偉
(四川大學,四川 成都610065)
步進電機接收數字控制信號(電脈沖信號)并轉化成與之相對應的角位移或直線位移是一個可以完成數字模式轉化的執行元件,具有無累計誤差及運行可靠等優點,在數字控制系統中被廣泛應用,而電機運行過程中的加減速控制是關鍵技術。徐煜明[1]論述了三種(階梯、直線和指數型)加減速曲線,缺點是這三種曲線不能充分利用步進電機的加速性能, 步進電機在高速時會發生失步,運行過程不夠平穩;瞿敏[2]指出S 曲線法中的速度連續平滑,加速度雖然連續變化不產生突變,但平滑性不好,而且過程較復雜;學者葉蔭民[3]提出改進正弦S 曲線7 段加減速控制算法,計算量大;祁超[4]提出一種精密轉臺S 曲線軌跡規劃及高精度控制方法,為提升精密轉臺的軌跡運動精度,從軌跡規劃和運動控制兩個方面對傳統控制算法進行了改進,采取了軌跡規劃迭代計算,方法非常巧妙,實現了高精度控制,這對步進電機的控制是非常重要的;孫建仁[5]采用正弦函數平方曲線控制方法,利用正弦函數連續可導特性,解決了加減速過程中加速度不連續問題,降低數控系統中的柔性沖擊。因此,本文結合牛頓迭代法,在提高精度和簡化算法的基礎上提出一種改進正弦曲線加減速算法,著重解決電機運行中曲線出現突變、不夠連續平滑、不穩定的問題,闡述算法的實現方法及步進電機的動態調速。
因為正弦函數具有連續可導特性,加速度與速度都可以用正弦函數表示,加速度和速度曲線得到優化,曲線連續光滑,無突變、無拐點,運行過程平穩。對加速度積分,獲得運行過程速度曲線,生成的速度曲線呈S 形,由加速、勻速、減速3 個階段構成,加速度及速度在各過渡階段連續變化,電機勻速階段加速度恒定為0;減速階段與加速過程相反。圖1 為正弦曲線加減速圖。

圖1 正弦曲線加減速圖
圖1 中,a 為加速度,v 為速度,t 為時間,初速度為0。加減速分段過程如下:(1)加速階段:時間從0 至ta,加速度a 始終位于正半軸,從0 增加到最大值2am,再減小為0,依照正弦規律變化。此時,速度也會在此階段從0 增加到最大值,即勻速階段速度vm。(2)勻速階段:時間從ta至tc,以恒定速度vm運行至減速階段。(3)減速階段:時間從tc至te,加速度a 始終位于負半軸,從0減小到最小值-2am,再增加為0,依照正弦規律變化。此時,速度也會從勻速階段速度vm減小到0,電機在此過程中按照預設軌跡,到達目標位置,結束運行。


本文采用由具有浮點運算能力的STM32F4 單片機作為步進電機控制器,計算每步時間間隔,通過單片機內部多功能高級定時器[8]1 或8 以單脈沖的形式輸出脈沖信號控制步進電機。實際系統中步進電機為RKⅡ系列的PKE596AC,驅動器為RKSD-507-C,諧波減速器為RKS596A-HS50,其減速比為1:50。在步進電機運行時,定時器被設置為單脈沖輸出形式,它每發出一個脈沖后產生一個中斷,將之前計算好的定時計數值賦給定時器開始下一個定時周期,并通知主程序計算下一步時間。若步進電機兩個相鄰的驅動脈沖間隔時間小于100us,有可能來不及完成下一步脈沖發出時間的計算,則計算下兩步的總時間間隔,并除二后賦給定時器,同時設置定時器重復次數為兩次(兩次發出脈沖后再產生中斷)。以此類推,可使脈沖頻率達到步進電機驅動器上限500KHz 的同時保證單片機有足夠的時間進行運算。當然此時的脈沖時間間隔精度會有一定下降,但對于高速運行的影響不大。
實驗結果表明,步進電機按照正弦曲線算法設定的時間和軌跡進行加減速運動,整個運行過程較為平穩,且定位準確,沒有沖擊和跳變,在運動控制中具有較好的實用意義。