步進電機轉速連續性****控制方法及分析
王東文 劉明遠 史 昊(西安交通大學 710049)
1概述
步進電機在工業生產過程中應用非常廣泛,它可以將脈沖電信號轉換成角位移或直線位移,非常適合于用微機進行數字控制,近年來這方面的應用很多,如各種數控機床和工業檢測過程中各種高精度定位系統等。本文就步進電機的單片機控制方法中存在的問題進行全面闡述,提出了簡化加速算法以及作為速度信號源時速度連續性****的控制方法和分析計算。
2步進電機的控制參數
采用步進電機作為速度執行元件,高速運行時如果起動太快容易引起電機丟步,若停止太快,由于慣性作用可能會出現過沖現象,給控制系統帶來誤差,所以高速運行時一般需要經過起動、加速、恒速運行、減速、停止這樣一個完整的過程。所研制的一個計算機智能檢測系統中使用了三臺步進電機,x軸驅動,y軸驅動、速度信號源。下位機采用8098單片機,通過分析和反復調試實驗,總結出了一個較為通用的電機控制程序。在8098內部ram開辟一塊存儲區依次存放。
電機號:1,2,3分別代表1#、2#、3#電機
正反轉:0反轉,1正轉
加速度:加速脈沖個數ma(從第ma個脈沖開始恒速運行)
勻速度:勻速運行時問常數m
減速度:減速脈沖個數md(從第md個脈沖開始減速運行)
總步數:電機運行的總步數
連續否:0-電機運行完給定的總步數,不記錄最后所停止的相位。
1-電機運行完給定的總步數,記錄最后所停止的相位,以便下次起動時接著運行,以保證系統的連續定位精度。
鎖存相位1:x軸電機上次運行結束時所停留的相位。
鎖存相位2:y軸電機上次運行結束時所停留的相位。
設步進電機以三相六拍方式運行,各電機的通電狀態字以表格形式存放在rom中,電機停止時自動將最后的相位存入鎖存相位1、2號單元。通過以上參數設置,基本上可以完整地控制步進電機的各種運行狀態。
3近似理想運行曲線的簡化加速算法
在以上參數中,難以確定的是步進電機的加速度和減速度。計算機控制的加速過程能否成功,取決于加速脈沖的增加速率是否合適。步進電機的加速度與失步轉矩特性有關,根據參考文獻1和2,步進電機的矩頻特性曲線如圖1所示,從這種矩頻特性分析,符合這種特性的升降衄線是采用變加速度,即指數型運行曲線如圖2所示,這種曲線比較符合步進電機加減速過程的運行規律,能充分利用步進電機的有效轉矩,快速響應性好。文獻1和2所給出的獲得升降速參數的方法均為查表的方法,即事先把運行曲線逐段線性化,計算出各速度級對應的升降速參數序列,以表格形式存放,供電機不同速度時分別調用。這種方法在勻速度可任意改變時就無法滿足要求了,因為不可能預先存儲太多的表格供調用,而且制表很繁瑣。為此提出一種在單片微機上實現十分簡便而又近似****加速過程的實現方法。
電機在低速時(fo<l000hz)可直接起動,不同的電機fo有些差別,取fo=500hz左右,加速方法是,設步進電機勻速運行時對應的脈沖間隔延時時間常數為co,在n步內能使電機加速至勻速過程,那么取時間常數序列
cn,g- n,g-n- (n - l),…,c0+10,c0+6,co+3,c0+l,(n一1,2,…n)式中c n-cn-1=n,n=l,2,…,n
這個序列從co開始,相鄰兩項之差依次為:1,2,3,…,n,是一個相鄰兩項差遞增序列,不難得出:
它對應著一個勻變加速運行過程,每步加速度按1,2,3,…,n個基本延時單位遞增,勻變加速度等于1個基本延時單位。n的選擇耍滿足的條件是,電機以cn為脈沖間隔延時時間常數起動時,fo |