為了更便捷地描述單個物體的運動,最好以該物體的質心為坐標原點建立坐標系,從而可以非常方便地描述其旋轉運動。因此,在計算多個物體之間的位置關系時,為了計算方便,需要頻繁地更換坐標框架,這也是multibody中【Frames and transforms】意義所在。
在simscape->multibody->Frames and transforms中,總計提供了四種坐標框架或變換,分別是
- 參考坐標系【Reference Frame】
- 世界坐標系【World Frame】
- 剛性變換器【Rigid Transform】
- 變換傳感器【Transform Sensor】
世界坐標
【World Frame】顧名思義,就是當前模型所在世界的坐標系。當使用【smnew】模板來創建multibody仿真時,會默認添加這個坐標系,并且和基本配置【Mechanism Configuration】連在一起。
世界坐標系只是名義上的坐標系,并不支持任何參數。基本配置【Mechanism Configuration】則可用于設置重力加速度。
剛性變換
【Rigid Transform】是多體建模中最常用的模塊,有了這個,就可以通過坐標變換的方式,協調多個不同的物體。
雙擊Rigid Transform,可以查看其具體的變換方案,主要包括旋轉和平移兩組,除了None之外,分別有6種和三種變換方案,下面對這9種變換做一個簡要的說明。
旋轉變換包括
- 軸對齊【Aligend Axes】相當于坐標軸映射,將一個坐標系的X軸映射為另一個坐標系的Y軸。
- 單軸變換【Standard Axis】沿著指定坐標軸旋轉相應的角度。
- 軸角變換【Arbitrary Axis】沿著任意軸旋轉相應的角度。
- 按序旋轉【Rotation Sequence】通過指定歐拉角和XYZ三個軸的旋轉順序來變換。
- 旋轉矩陣【Rotation Matrix】用旋轉矩陣變換。
- 四元數【Quaternion】用四元數描述變換。
平移變換包括
- 笛卡爾變換【Cartesian】通過給定直角坐標系的坐標來平移坐標軸。
- 單軸變換【Standard Axis】沿著單個坐標軸移動。
- 柱坐標變換【Cylindrical】通過給定的柱坐標移動坐標系。
參考坐標
【Reference Frame】作為參考坐標,只起到一個參考的作用,并且和世界坐標系一樣,不提供任何可供編輯的參數。
當創建的模型比較簡單時,其實沒有必要使用參考坐標系,但是,隨著模型中的模塊逐漸增多,通過參考坐標系,可以更加便捷地定位模塊信息。
變換傳感器
【Transform Sensor】可用于測量兩個坐標系B和F之間的變換關系,相當于求解剛性變換的逆問題。
首先,變換傳感器需要指定其測量框架,包括世界坐標系,B端的Base坐標,F端的Follower坐標,以及去除旋轉后的B、F坐標。其次,需要指定坐標變換中歐拉角的旋轉次序。在完成這兩項設置后,就可以通過勾選的方式,引出可供測量的物理量了,總共包括旋轉、平移兩大類六大項測量內容
- 旋轉:旋轉角;旋轉軸;四元數;變換;
- 角速度:ωx,ωy,ωz,ωxyz\omega_x, \omega_y, \omega_z, \omega_{xyz}ωx?,ωy?,ωz?,ωxyz?、四元數、變換矩陣、旋轉序列
- 角加速度:αx,αy,αz,αxyz\alpha_x, \alpha_y, \alpha_z, \alpha_{xyz}αx?,αy?,αz?,αxyz?、四元數、變換矩陣
- 平移;速度;加速度:笛卡爾坐標X,Y,Z,XYZX, Y, Z, XYZX,Y,Z,XYZ;柱坐標半徑、方位角;距離;傾角