時間:2018-05-09 11:01:10來源:網絡轉載
引言
隨著伺服控制系統對其運動動態特性要求的不斷提高,對系統的調速精度、調速范圍和改善低速平穩性等方面的要求也相應地提高。測速裝置是速度閉環控制系統中的關鍵部分,對數字式脈沖光電編碼器來講,常用的數字測速方法有三種,即m法測速、t法測速和m/t法測速,其中,m法測速是根據在規定時間間隔內測速裝置產生的轉速脈沖數來確定轉速,即測量頻率。當電機轉速較低時,規定時間內轉速脈沖的數量很少,檢測精度降低,因此,這種測量方法適用于高速。t法是通過記取傳感器產生的相鄰兩個脈沖之間的時間間隔來來計算電機轉速,即測量周期。當電機處于高速運轉時,相鄰兩個脈沖之間的時間間隔極短,檢測精度也會降低,所以這種方法適用于低速。m/t法兼有m法和t法的優點,不論高速還是低速。但是m/t法的實現至少需要一個定時器,2個計數器,而且要對定時周期后的第一個脈沖沿進行捕捉,軟硬件開銷比較大,并且引入中斷,如果程序中斷資源有限,中斷使用太多,還將影響程序的正常運行。本文針對以往測速方法的不足,提出了一種變m變p法測速,是對以往t法測速的改進。
變m變p法的測量原理
如圖1所示,其中m為軟件周期內得到的轉速脈沖數,p為對系統時鐘的分頻。由圖可以看出,在低速的時候,每2個轉速脈沖之間的計時脈沖數較多,根據m法測速的原理可知,固定周期內,計數脈沖個數越多計算出來的轉速就越精確,但是由于dsp微控制器內部的計數寄存器字節總是有限的,如16位只允許最大計數65536,如果達到低速〔如1r/min〕將遠遠超過這個最大數,測量結果將不再準確,特別對于分辨率低的光電編碼器,若要使低速的轉速測量準確,就要選擇適當小的m并把分頻倍數p取大;但是在高速的時候,相鄰轉速脈沖之間,計時脈沖數很少,對于高分辨率的光電編碼器,可能在相鄰的轉速脈沖之間只捕捉到一個計時脈沖或沒有,這樣將引起轉速測量的誤差極大,甚至無法測量,此時為了得到固定周期內足夠多的計時脈沖的計數個數,就要選擇足夠大的m并把分頻倍數p取小,甚至不分頻。
從以上分析可知,在低速和高速要測量到精確的轉速所需選取的m和p是互相矛盾的,所以為了得到全速范圍的高精度測量轉速,就必須在低速和高速過渡的過程中,改變m和分頻倍數p以適應各個轉速斷的測量精度要求,以使伺服系統在保證精度的條件下能夠獲得寬的調速范圍,這就是所謂的變m變p法,同時適用于不同分辨率的光電編碼器。
其計算公式如下:
其中,v(k)為k時刻電機的瞬時轉速,x為設置的單位轉速脈沖數的位移,delta(t)即為轉過x位移所花費的時間;m為軟件周期內得到的轉速脈沖數,f為光電編碼器的分辨率,n為計時脈沖的計數個數,p為對系統時鐘的分頻倍數,tsysoutclk為cpu微控制器的系統時鐘周期。
測量方法在tms320f280x系列dsp上的應用
tms320f280x系列dsp的eqep模塊包括一個對積分沿進行捕捉的單元,用來測量產生單位位移事件所花費的時間,正是這個單元常被用來計算低速時電機的轉速,eqep模塊捕捉定時器qctmr定時時鐘來源于dsp的系統時鐘即sysclkout的分頻,常被稱為計數時鐘,其分頻數可以通過qcapctl寄存器的第6-4位即ccps位設置,可設置的分頻為1,2,4,8,16,32,64,128,相應的ccps的取值為0,1,2,3,4,5,6,7;同時qcapctl寄存器的第3-0位即upps位設置所要計數的轉速脈沖個數,也就是固定的單位位移,其可設置的固定轉速脈沖個數為1,2,4,8,16,32,64,128,256,512,1024,2048,對應upps的取值為0,1,2,3,4,5,6,7,8,9,10,11。寄存器qctmr一直計數直到電機轉過所設置的固定單位位移,此時qctmr的計數值被裝入qcprd寄存器,自己本身復位即回零;同時狀態寄存器qepsts的狀態位upevnt被置1,表明有新的值被載入到qcprd寄存器里。編寫軟件的時候在計算轉速之前可先判斷此位是否為1,然后再計算轉速,此位可通過軟件清0,即對此狀態位寫1操作。圖3顯示了以上各寄存器之間的關系:
圖2中,qclk為轉速脈沖,計時脈沖沒有畫出。
這里有個地方要注意,那就是只要當以下2個條件滿足的時候,用這個公式計算出來的轉速才是準確的:
寄存器qcmtr的計數值不超過65535;
對固定轉速脈沖位移,進行時間計數的時候,電機轉速的方向不發生改變。
對以上兩種情況發生與否,都可以通過狀態寄存器qepsts的對應位來判斷,若1的情況發生,那么qepsts的狀態位coef被置1;若2情況發生,那么qepsts的狀態位cdef被置1。
實現的實驗結果分析
本文研究的方法可以適用于低分辨率和高分辨率的光電編碼器,在此為了說明的方便,選取一固定分辨率的光電編碼器,在此選取2500脈沖/轉的光電編碼器,額定轉速3000r/min。以下轉速的測量是在轉度給定,電流-轉度雙閉環的情況下測得的。
m和p的選取限制:
●m只能取2^n(n取0~11的整數);
●p只能取2^n(n取0~7的整數);
●設轉速為n,那么它們要滿足計時脈沖寄存器qcmtr計數不溢出的條件,即計數個數:
更新m,p的時間限制:本伺服系統轉速從0上升到1000r/min所需的上升時間為20ms左右,所以m,p的更新時間要大大小于20ms,否則,若m,p的更新跟不上轉速的變化,就將產生轉速測量的誤差,在這里選取其更新周期為1ms,當然如果上升時間更小,那么可以設置更快的m,p更新周期。
實驗結果分析
圖3為給定轉速2500r/min情況下用dsp開發軟件ccs捕捉到的的實時轉速檢測曲線和誤差曲線,圖3曲線中y軸“1”表示3000r/min,x軸為時間(s),圖4曲線y軸表示的是檢測的轉速差與額定轉速的比值。從實驗結果曲線可以看出,給定轉速2500r/min時,測量出來的轉速為0.8333×3000=2499.9r/min。可見,檢測出來的轉速很精確,其誤差的最大值分別為0.067%,也就是說最大誤差的時候有0.067%×3000=2.01r/min的誤差。圖4為給定轉速為5r/min時,采用ti公司的dsp開發軟件工具ccs上檢測到的電機實時轉速,并測得5r/min時,轉速的最大值為0.00183105*3000r/min即5.493r/min,轉速的最小值為0.00128174×3000r/min即3.845r/min。
對于360脈沖/轉的光電編碼器,采用同樣的方法可以測得其轉速響應曲線如下圖。圖5為示波器測得的給定轉速為1000r/min時的轉速階躍響應曲線,圖6為用ccs軟件捕捉到的轉速穩態時的誤差曲線,可以測得最大誤差為0.00110即3.3r/min。
從實驗結果可以看出,本文提出的測速方法是正確的,符合預期的結果,且容易實現,具有一定的參考價值。
結語
在高度數字化、集成化的今天,數字測速的方法被普遍采用,模擬發電機測速的方法已逐漸的被取代,所以越來越多的設備都迫切的追求數字測速的精確性,而本文提出的測速方法不僅具有測速精確度高,測量的速度范圍寬等優點,還結合tms320f280x系列dsp的優點,節省了外部硬件的分頻電路,簡化硬件結構,所以具有很好的應用前景。需要注意的是,數字測速法對從光電編碼器送到dsp的a,b脈沖要求比較苛刻,若是傳送的過程中受到干擾,將影響實際的測量結果,所以一般在a,b脈沖送給dsp的過程中,要進行濾波,整形,本系統采用rc濾波和74hc245對波形進行整形,實驗結果比較理想。
標簽:
上一篇:如何處理伺服系統在現場的干...
下一篇:技術前沿!電機驅動系統硬件...
中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
產品新聞
更多>2025-06-16
2025-06-09
2025-06-06
2025-05-19
2025-04-30
2025-04-11