Factory Underground

[ROS] URDF 파일 본문

프로그래밍/ROS

[ROS] URDF 파일

참치레기 2022. 5. 21. 11:36

urdf 파일

'Unified Robot Description Format' 의 약자로 로봇 모델에 대한 정보를 저장하는 .xml 형식의 파일.

ROS rviz에서는 대상을 시각화할 때 로봇 모델로 사용함.

기구학 등에서 다자유도 로봇을 시각화 하거나 시뮬레이션할 때 주로 사용함.

파일의 구조는 크게 link와 joint로 나뉘며 각 link와 joint의 파라미터 등을 설정하여 시뮬레이션 or 시각화 진행할 수 있음.

캐드 툴에서 작성한 모델을 stl 등 특정형식으로 불러올 수 있음. 특히 solidworks 에서는 urdf 파일로 내보내기할 수 있음.

link 요소

link는 <collision>, <visual>, <inertial> 속성을 선택적으로 가짐. 전부 필수요소는 아님. 색상 등의 추가 속성도 있음.
<collision>
- 물체의 충돌 관련 정보를 포함. 시뮬레이션에서 사용.
6축 RPY-XYZ 좌표계<origin>와 형상<geometry>으로 구성.
<visual>
- 해당 링크의 형상 관련 정보를 포함. 시각화할 때 사용.
collision과 동일하게 6축 RPY-XYZ 좌표계<origin>와 형상<geometry>으로 구성.
<inertial>
- 해당 링크의 질량과 관성을 설정. 시뮬레이션에서 사용.
질량 중심점<origin>, 질량<mass>, 관성<inertia>으로 구성.

joint 요소

링크와 링크를 연결하는 요소. link와 달리 필수적으로 <origin>, <parent>, <child> 3가지 요소를 포함해야함.
joint 생성시 6가지 타입 중 하나를 지정하여 사용.
type : revolute, continuous, prismatic, fixed, floating, planar
<origin>
- 부모 링크의 좌표계에서 자식 링크의 좌표계로의 변환 값(tf)을 6축 RPY-XYZ 좌표계로 입력.
<parent>, <child>
- 부모와 자식 링크의 이름을 입력. 부모 : 이전 프레임, 자식 : 이후 프레임

예제