2018/3/3

力接頭 - 3D接觸

Inventor動力學模擬的力接頭(Force Joint)總共有兩個接頭:

3D 接觸

彈簧/阻尼器/千斤頂

這兩個接頭放在同一個力接頭分類中一開始看會覺得有點怪怪的,
從元件之間的關係來說,"3D接觸"是一個非永久接觸接頭(元件之間可能會有或沒有關係),
而"彈簧/阻尼器/千斤頂"則是建立虛擬元件的永久性接頭(元件之間永遠受虛擬元件連接的性質作用),
兩個的行為差異其實還蠻大的。

"3D 接觸"不論是名稱或行為都跟另外有一個"2D 接觸"很類似,兩個名稱非常相近,
差別在處理的是3D幾何跟2D草圖輪廓的接觸碰撞模擬計算,
但卻不是一起放在"接觸接頭"的分類中,
從字面上的意義來看,實在是沒有道理不放在一起。



不過如果從接頭的性質設定項目來看,
"3D 接觸"計算上的性質是:勁度、阻尼、摩擦係數;
3D接觸的性質
而"彈簧/阻尼器/千斤頂"計算上的性質是:勁度、自由長度、阻尼,
彈簧接觸的性質
這兩者還蠻接近的,都有模擬計算兩個幾何之間的勁度與阻尼效應;
"3D接觸"多了一個發生滑動現象的摩擦力計算,
相對元件之間的彈簧就不太需要考慮兩個元件之間的摩擦行為。

如果看"2D接觸"設定項目:

此時"3D接觸"性質設定的項目看起來似乎就跟 "2D 接觸"的"恢復係數"與"摩擦係數"就很明顯不同。

所以若從接頭模擬計算的性質設定項目關聯性出發,
將"3D接觸"跟"彈簧/阻尼器/千斤頂"這兩個接頭性質放在"力接頭"的分中,就還蠻合理的。


3D接觸

設定上就直接選用兩個元件實體。
3D接觸的性質設定有勁度、阻尼跟摩擦三項,這三項條件都要等發生設定的元件有干涉時才會發生作用,

以下說明3D接觸這三項設定的作用:

勁度:
單位是N/mm,跟彈性係數一樣;
當兩個碰撞元件的材質材料越硬時,勁度往往越大,
例如像鋼材碰鋼材勁度會比鋼材碰橡膠會大很多,
如果是鑽石碰鑽石勁度就更大了,
相對軟材料橡膠碰橡膠勁度就很低。

阻尼:
單位是N / (mm/s);
阻尼的作用是產生跟元件移動速度方向相反的作用力,
具有消耗能量阻止元件移動的作用。
一般的阻尼有分結構阻尼跟材料阻尼兩種,
結構阻尼主要跟元件之間的滑動摩擦有關,
而材料阻尼則是跟元件內部材料的為結構受力後的滑動摩擦有關,
材料阻尼的值跟相對材料的組成特性有關,
如果是像鑽石的完美結晶物質,能量在材料中幾乎不會消散,阻尼的效應非常的微弱,
但是如果是像沙子、軟質橡膠、花崗岩等材料,碰撞的能量會在材料中因為滑動摩擦變成熱而消散掉,阻尼的效應就會很大,
通常勁度大的材料碰撞伴隨著阻尼小,例如鑽石跟鋼材,
反之勁度小的材料,往往阻尼很大,例如橡膠,
但這並不是絕對的,像碳纖維強化塑膠就是勁度大,但是阻尼也不小的材料。
結構阻尼是發生在兩個元件之間的滑動摩擦行為,但是又不是兩個元件的接觸摩擦,
而是兩個元件之間的流體造成的摩擦,例如空氣阻力,或者是在水中的水阻力。
在這裡因為是接觸碰撞後才會開始計算,可以將其視為材料內的阻尼效應。

摩擦:
單位是N/N,或者是無單位;
摩擦力量來自於兩個元件在接觸面切線方向的相對移動,
摩擦力的形成跟正向力大小以及接觸面的表面狀況有關。


這三個力量的形成可以解釋如下:
當設定好3D接觸的兩個元件進行模擬時,
軟體會一直不斷地計算兩個元件體積是否有干涉發生,跟干涉的程度(距離與速度)。

如果沒有干涉現象發生,三個設定值都不會發生作用,兩個元件之間不會產生任何交互作用力。

如果有發生干涉,軟體會開始計算勁度、阻尼與摩擦的作用。

計算的概念我觀察跟猜測如下:

勁度:
以干涉的距離乘以勁度得到將兩個碰撞元件推開的力量;
如果時間步長設定值太大,很容易造成干涉距離太大,
例如0.01秒,速度為200mm/s,每個模擬時間步長會移動距離2mm,
因此若原本元件距離為0.5mm,就會發生1.5mm的干涉量,
若使用預設勁度值10000N/mm,此時兩個值相乘以後會形成很大的作用力F=15000N,
這麼大的力會將質量很輕的元件推開至非常遠的距離,造成計算上發散。

因此在計算時若發生發散的現象,
可以試著縮小時間步長以縮小干涉距離,並調小勁度值,使計算能夠收斂。
例如上面的例子,把時間步長改為0.0001,速度200mm/s,
每個時間步長模擬的距離變化是0.02mm,因此發生干涉距離為0.02mm,
推開的力量是0.02mm*10000 N/mm = 200N,
如此一來就不會產生過大的推力將元件推得很遠而導致計算發散。

若搭配縮小勁度,推開的力量就更小,更容易計算收斂;
但是縮小勁度值過多有可能將元件互相推開的力量太小而持續增加干涉量,
造成干涉過大的不合理狀況,
這種不合理的情況會造成計算結果值不準確,跟視覺上的不合理;
此時可以適度調高勁度值,降低不合理的干涉程度,以提高計算結果的準確性。

阻尼:
以碰撞瞬間的速度乘以阻尼得到的作用力阻止元件移動;
阻尼太小就像把鋼珠丟在地面瓷磚上,鋼珠會來回彈跳多次;
阻尼太大,會像把鋼珠丟在沙上,碰到沙很快就停止下來不動;
這個值的設定並不容易,並沒有任何計算公式可以決定,
必須要看兩個元件的材質特性進行測試後決定,
當然經驗越豐富就越容易知道大概要設定在多少。

摩擦:
以慣性力加上勁度跟阻尼所形成的合力作為正向力,乘以摩擦係數得到阻止側向滑動的摩擦力。
側向滑動主要來自於兩元件碰撞發生時,
因為幾何形狀或相對速度方向關係產生側滑的情況,
兩個元件之間就會產生在碰撞面上的側向滑動摩擦,
這個力量相對前面的勁度與阻尼設定產生的力量,是在與碰撞方向垂直方向的側向力,
力量作用方向與滑動方向相反,讓兩元件在側向滑動時會有一個阻力阻止側向滑動;
正向力來自慣性、勁度與阻尼的作用力合力值,
該合力值乘以摩擦係數就成為阻止側向移動的摩擦力;
在不考慮表面粗糙度的影響下,
通常勁度大的材料碰撞時摩擦係數會比較小,例如像硬的金屬、陶瓷表面互相碰撞,
勁度小的材料像橡塑膠摩擦係數會比較大。

輸出結果分別有以下項目:

穿透_最大

數_點

力_最大

力_參考

力矩_參考

但是原廠說明檔案中完全找不到相關的定義與說明,非常的困擾,也難以驗證。
只能從名詞上去揣測意義:

穿透_最大:
指得應該是兩個元件接觸過程中干涉的最大距離值,把勁度設高一點,或者是接觸前的速度比較慢時,就可以看到穿透量會變小。


數_點:計算數值會顯示點數量;坦白說,不太能理解,因為模擬計算過程中是元件的面干涉,即使是幾何的交集應該是線段,也不是點,這些所謂的點數量不知道是從何而來!?

力_最大/力_參考/力矩_參考:
應該是用來顯示接觸過程中的相對接觸力量與力距。


沒有留言:

張貼留言