https://www.youtube.com/watch?v=CsxK1maWJoI
<!-- comment(주석할 내용) -->
<?xml version="1.0"?>
<sdf version="1.5">
<model name="folder name">
<link name="any name">
<inertial>
<pose>0 0 0.06 0 0 0</pose>
<inertia>
<ixx>0.001</ixx>
<ixy>0.000</ixy>
<ixz>0.000</ixz>
<iyy>0.001</iyy>
<iyz>0.000</iyz>
<izz>0.001</izz>
</inertia>
<mass>1.0</mass>
</inertial>
<collision name="base_collision">
<pose>0 0 0.06 0 0 0</pose>
<box>
<size>0.265 0.265 0.1</size>
</box>
<sphere>
<radius>0.005000</radius>
</sphere>
<cylinder>
<radius>0.0508</radius>
<length>0.055</length>
</cylinder>
<surface>
<friction>
<ode>
<mu>100000.0</mu>
<mu2>100000.0</mu2>
<fdir1>0 0 0</fdir1>
<slip1>0</slip1>
<slip2>0</slip2>
</ode>
</friction>
</surface>
<collision name="base_collision">
<pose>0 0 0.06 0 0 0</pose>
<geometry>
<box>
<size>0.265 0.265 0.1</size>
</box>
</geometry>
<surface>
<friction>
<ode>
<mu>100000.0</mu>
<mu2>100000.0</mu2>
<fdir1>0 0 0</fdir1>
<slip1>0</slip1>
<slip2>0</slip2>
</ode>
</friction>
</surface>
</collision>
<visual name="name"> {same as collision} </visual>
<visual name="left_wheel_visual">
<pose>0.07 0.11 0.033 -1.57 0 0</pose>
<geometry>
<cylinder>
<radius>0.033</radius>
<length>0.018</length>
</cylinder>
</geometry>
</visual>
<visual name="lidar_sensor_visual">
<pose>-0.012 0 0.14 0 0 0</pose>
<geometry>
<mesh>
<uri>model://{model_file}/meshes/{visual model}.dae</uri>
<scale>0.001 0.001 0.001</scale>
</mesh>
</geometry>
</visual>
write xmlns:xacro="http://ros.org/wiki/xacro" (Don't know reason)
<robot name="{Your robot name}" xmlns:xacro="http://ros.org/wiki/xacro">
<xacro:include filename="$(find directory name)/{path}/another file.xacro"/>
<joint name="base_joint" type="fixed">
: 부모 링크 좌표 기준으로 자식 링크 초기 좌표가 정해진다.
<parent link="base_footprint" />
<child link="base_link" />
<link name="Robot link name" />
<origin rpy="0 0 0" xyz="0 0 0.0" />
<geometry>
<box size="0.265 0.265 0.1" />
<sphere radius="0.005" />
<cylinder length="0.018" radius="0.033" />
</geometry>
<material name="light_black" />
<visual>
<origin rpy="0 0 0" xyz="0 0 0.0" />
<geometry>
<box size="0.265 0.265 0.1" />
</geometry>
<material name="light_black" />
</visual>
<visual>
<origin rpy="0 0 0" xyz="0 0 0" />
<geometry>
<mesh filename="package://turtlebot3_description/meshes/sensors/lds.stl" scale="0.001 0.001 0.001" />
</geometry>
<material name="dark" />
</visual>
<collision>
<origin rpy="0 0 0" xyz="0 0 0" />
<geometry>
<box size="0.265 0.265 0.1" />
</geometry>
</collision>
<inertial>
<origin xyz="0.05 0 0" />
<mass value="0.01" />
<inertia ixx="1.6425e-6" ixy="0" ixz="0" iyy="1.6425e-6" iyz="0" izz="1.125e-6" />
</inertial>
<link name="joint2_right_link">
<visual>
<origin rpy="0 0 0" xyz="0 0 0" />
<geometry>
<cylinder length="0.018" radius="0.015" />
</geometry>
<material name="dark" />
</visual>
<collision>
<origin rpy="0 0 0" xyz="0 0 0" />
<geometry>
<cylinder length="0.018" radius="0.015" />
</geometry>
</collision>
<visual>
<origin rpy="0 0 0" xyz="0.05 0 0" />
<geometry>
<box size="0.1 0.03 0.03" />
</geometry>
<material name="dark" />
</visual>
<collision>
<origin rpy="0 0 0" xyz="0.05 0 0" />
<geometry>
<box size="0.1 0.03 0.03" />
</geometry>
</collision>
<inertial>
<origin xyz="0.05 0 0" />
<mass value="0.01" />
<inertia ixx="1.6425e-6" ixy="0" ixz="0" iyy="1.6425e-6" iyz="0" izz="1.125e-6" />
</inertial>
</link>
<transmission name="trans_{joint name}">
<type>transmission_interface/SimpleTransmission</type>
<joint name="joint1_left_joint">{}</joint>
<joint name="joint1_left_joint">
<hardwareInterface>hardware_interface/EffortJointInterface</hardwareInterface>
</joint>