// it's for Latex

pages

[SLAM] #04. What is inertia matrix in URDF or Xacro

URDF 혹은 Xacro 파일을 보면 inertia(관성)이라는 단어와 함께 다음처럼 명시 되어 있는 경우가 있다.

  <xacro:property name="body_inertia">
    <inertia ixx="0.0347563" ixy="0.0" ixz="0.0" iyy="0.0458929" iyz="0.0" izz="0.0977" /> <!-- [kg.m^2] [kg.m^2] [kg.m^2] [kg.m^2] [kg.m^2] [kg.m^2] -->
  </xacro:property>

위의 예시는 erlecopter.xacro 파일에서 가져온 것이다.
위 예시처럼 inertia란 것이 modeling된 물체에 관성을 추가한다는 것을 알 수 있으며, x, y, z 축에 대해 어느정도의 관성을 적용시킬 것인지를 결정하는 것을 추측할 수 있는데, 정확히 어떤 과정을 거쳐서 해당 내용이 결정되는 것인지 궁금하여 찾아보았다.

SLAM 작업환경
OS : Ubuntu 16.06 LTS
ROS version : Kinetic
Compiler : catkin

Simulation 작업환경
OS: Ubuntu 14.04 LTS
ROS version : Indigo
Compiler : catkin


http://wiki.ros.org/urdf/Tutorials/Adding%20Physical%20and%20Collision%20Properties%20to%20a%20URDF%20Model

위 링크를 참고하면 전반적인 inertia matrix의 근거를 알 수 있다.

중요한 부분은 inertia matrix는 3x3 행렬이며, 물체의 형태 및 무게중심에 따라 matrix가 갖는 요소의 값이 달라진다는 것이다.
이 때 일반적인 도형들에 대한 관성 행렬의 정의에 따라 해당 요소의 값을 결정할 수 있고, 형태가 일반적이지 않을 경우에는 따로 관성 행렬을 구해주는 방법이 있는 것이다.

일반적인 도형들에 대한 inertia matrix에 대한 내용은 아래 링크에서 참고할 수 있다.

https://en.wikipedia.org/wiki/List_of_moments_of_inertia#List_of_3D_inertia_tensors

댓글 없음:

댓글 쓰기