2022/1/27

設備運動控制上的 Spline Curve

現代設備在產能要求下,速度越來越快,

在動作控制上如果沒有處理好,很容易發生兩種問題:

1. 驅動力量不夠必須更換更大驅動元件,例如馬達、減速機等等。

2. 在速度轉換時產生嚴重的振動、晃動現象。

這些問題除了跟機構人員選用、設計有關以外,另外一個重點在於運動控制。

舉例來說一台車,從0加速到100km/h所需要的時間會跟車重、引擎加變速箱到輪胎接觸地面的輸出轉換成推力的能力有密切關係,

但是開車的人也會有影響,沒錯吧?!

重踩油門急起步跟重踩煞車急停,車內人員跟物件晃動的狀態比較大,這也是跟控制有關。

同樣的狀況在機械設備上也是一樣的道理,

所以在運動控制上不同經驗能力就會導致有不同的設備速度與精度性能表現。

除了少數像電廠發電機、飛機引擎等會持續性長時間連續旋轉運動,

多數設備上不論直線或旋轉運動,從靜止到運動再到停止是非常常見的狀況。

運動控制可以視為主要在處理速度相對時間的變化關係,也就是在控制一個或多個以時間為變數的速度函數方程式。

對速度方程式進行時間積分運算就可以得到位置,

對速度方程式進行時間微分運算就可以得到加速度,

所以作速度控制的同時也相當於控制位置與慣性力量的變化,

在等速度運動上,馬達只需提供克服摩擦力的力量,

假設運動過程中機構調整恰當,等速過程中的摩擦力應該會接近一個固定值,

如果沒調整好,這個摩擦力就會有相當程度的變動,

例如直線運動的兩隻滑軌組裝時平行度不好,那摩擦力就會在移動過程中產生變化,甚至大到馬達無法克服而過載停止。

然後不明所以的就會說馬達選錯了,驅動力量不夠,機械設計的出來罰站!^_^

另外一種狀況是想要設備越快越好,控制上就設定在0.001秒內達到額定速度,然後馬達、驅動器就過電流停了;馬達選錯了,力量不夠推不動,機械設計出來罰站!^_^

請把加速時間拉長到0.1秒,

克服慣性的力量差100倍,正常運作OK。

要快可以,馬達加大,但是成本也高,

另外問題是在觀念上若都這樣硬幹會出其它問題,

例如速度轉換過快造成的慣性作用力會導致振動、晃動,精度差,元件易疲勞損壞。

所以作運動控制必須深入瞭解一下加速、等速、減速這個過程中的一些特性。

一般常見的加速、等速、減速經常會表示成如下圖形:

但是如果將這個速度變形進行微分運算得到加速度變化會變成:

這代表在起動、進入等速、進入減速、停止的速度轉換的瞬間會有很大的加速度變化,0.00~0.01秒直接到10000,

也就是結構在這一瞬間會受到很大的慣性作用力,

這個慣性作用力會造成結構產生彈性變形,往速度的反方向變形,變形到力量的極限後,回彈往速度同方向變形,同樣到一個回彈力量極限程度後再往反方向變形,所以就會看到結構來回"彈",

這種來回彈晃動的現象會在結構內部的“阻尼”跟和空氣摩擦的阻力作用下,變形的彈性位能會逐漸消耗而緩慢下來,時間要多久?看彈性位能(慣性力大小跟作用時間),以及結構設計的剛性與材料、結構中的阻尼作用力而定。

因此有高手從曲線方程式中找出來一個S Curve,放在加減速段,如下圖示:

經過微分運算後可以得到加速度圖形如下:



很明顯的在速度轉換的瞬間慣性力變小,0.00~0.01秒,加速度5420,跟前面的值差了將近一倍,

因此結構晃動的現象也有機會變小,

如此一來機構運動的精度可以提高,材料因為來回晃動的疲勞壽命問題也可以獲得緩解。

在過程中因為加速度是由小到大再變小後過渡到等速段,為了在相同時間內達到同樣的速度,過程中產生的最大加速度會比較大,也就是馬達需要提供的推動力量較大;

過程中的驅動力量變化是另外一回事,可以參考另篇的說明:

轉子轉動扭矩


這種運動控制的需求有廠商直接放在控制器中,使用者只要指定好加速或減速的時間與目標速度值,再設定使用S Curve就可以;

我試過台達伺服馬達控制器就可以作這種設定,其他的沒試過就不知道。

要注意的是如果要求加減速度時間很短,移動慣性又大,驅動裝置的輸出勢必要比較大,這是無法僅透過改變加減速度函數方程式的方式來克服,

好的加減速函數目的在於減少速度轉換瞬間的慣性負載變化,降低因為慣性力造成的晃動現象,並不是用來縮短加減速度的時間,相反的需要更長的加減速度時間。

網路上有示範使用兩種梯形與Spline兩種速度變化函數控制加減速效果差異的影片:


有沒有更好的?

可以搜尋 jerk ,理論上可以作到d a(t)/dt =0,如下影片所示:


這些功能一般是放在控制器(軸卡)上,這也是台灣元件廠商技術上可以再努力提升的地方,當然使用端也要能分辨其中的差異。

沒有留言:

張貼留言