simscape中坐标系和坐标变换Frames and Transforms
为了更便捷地描述单个物体的运动,最好以该物体的质心为坐标原点建立坐标系,从而可以非常方便地描述其旋转运动。因此,在计算多个物体之间的位置关系时,为了计算方便,需要频繁地更换坐标框架,这也是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;柱坐标半径、方位角;距离;倾角