Attach Meshes - modulabs/gazebo-tutorial GitHub Wiki
์ ์ ์กฐ๊ฑด: Make a mobile robot
mesh๋ค์ ๋ชจ๋ธ์ ์๊ฐ์ ์ผ๋ก ๊ทธ๋ฆฌ๊ณ ์ผ์์ ๋ํด์๋ ํ์ค์ฑ์ ๋ถ๊ฐํ ์ ์๋ค. ์ด๋ฒ ํํ ๋ฆฌ์ผ์ ์์ ์ ๋ชจ๋ธ์ ์๋ฎฌ๋ ์ด์ ์ ์ด๋ป๊ฒ ๋ํ๋ผ์ง ์ ์ํ ์์ ์ mesh๋ค์ ์ด๋ป๊ฒ ์ฌ์ฉํ ์ ์๋์ง์ ๋ํด ์ค๋ช ํ๋ค.
๊ฐ์ฅ ์ผ๋ฐ์ ์ผ๋ก mesh๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ ํ์ค์ ์ผ๋ก ๋ณด์ด๊ธฐ ์ํด ๋ง๋๋ ๊ฒ์ด๋ค.
- my_robot ํด๋๋ก ์ด๋ํด๋ผ.
$ cd ~/.gazebo/models/my_robot
- model.sdf ํ์ผ์ ์ด์ด๋ผ.
$ gedit ~/.gazebo/models/my_robot/model.sdf
- ์ฐ๋ฆฌ๋ ์ค์์ mesh๋ฅผ ์ถ๊ฐ ํ ๊ฒ์ด๋ค. name=visual์ ๊ฐ์ง visual์ ์ฐพ์๋ผ. ์ด๊ฒ์ ๋ค์๊ณผ ๊ฐ๋ค.
<visual name='visual'>
<geometry>
<box>
<size>.4 .2 .1</size>
</box>
</geometry>
</visual>- mesh๋ ๋์คํฌ์์ ํ์ผ ํน์ ๋ค๋ฅธ ๋ชจ๋ธ๋ก ๋ถํฐ ์จ๋ค. ์ด๋ฒ ์์ ์์ ์ฐ๋ฆฌ๋ pionner2dx ๋ชจ๋ธ๋ก ๋ถํฐ mesh๋ฅผ ์ฌ์ฉํ ๊ฒ์ด๋ค. visual ์์๋ฅผ ๋ค์๊ณผ ๊ฐ์ด ๋ฐ๊ฟ๋ผ.(ํ์ง๋ง ํ์ผ์ ๋๋จธ์ง ๋ถ๋ถ์ ๋ฐ๊พธ์ง ๋ง๊ณ ๊ทธ๋๋ก ์ ์งํ์ฌ๋ผ.)
<visual name='visual'>
<geometry>
<mesh>
<uri>model://pioneer2dx/meshes/chassis.dae</uri>
</mesh>
</geometry>
</visual>- ์์ ๋ธ๋ก์ ์ํด ๊ธฐ์ค์ด ๋๋ pionner2dx ๋ชจ๋ธ์ ๊ฐ์ง๊ณ ์๋์ง ๋ชจ๋ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ํ์ธํ์ฌ๋ผ.
$ ls -l ~/.gazebo/models/pioneer2dx/meshes/chassis.dae
๋ง์ฝ meshํ์ผ์ด ์กด์ฌ ํ์ง ์๋ ๋ค๋ฉด ๋ชจ๋ธ ํ์ผ์ ๋ค์ด๋ก๋ ํ๋ค.
$ cd ~/.gazebo/models
$ wget -q -R *index.html*,*.tar.gz --no-parent -r -x -nH http://models.gazebosim.org/pioneer2dx/
-
๊ฐ์ ๋ณด์์ My Robot ๋ชจ๋ธ์ world์ ๋๋๊ทธํ์ฌ ๋๋๋ค. ์ค์์ ์ธ๊ด์ pioneer2dx์ ๊ฐ์ ๊ฒ์ด๋ค.
-
์ค์๋ ๋ถ๋ช ์ฐ๋ฆฌ ๋ก๋ด์ ๋นํด ๋๋ฌด ํฌ๋ค. ๊ทธ๋์ ์ฐ๋ฆฌ๋ ์ธ๊ด์ ์ค์ผ ํ์๊ฐ ์๋ค.
-
์ค์ผ์ผ ํฉํฐ๋ฅผ ๊ฐ์ง๊ณ ์ธ๊ด ํฌ๊ธฐ๋ฅผ ์กฐ์ ํ๋ค.
<visual name='visual'>
<geometry>
<mesh>
<uri>model://pioneer2dx/meshes/chassis.dae</uri>
<scale>0.9 0.5 0.5</scale>
</mesh>
</geometry>
</visual>- ์ด๋ฒ ์ธ๊ด์ ๋ ๋๋ฌด ๋ฎ๋ค.(z ๋ฐฉํฅ์ผ๋ก) ์์น๋ฅผ ์ง์ ํ์ฌ ๊ทธ๊ฒ์ ์๋ก ์ฝ๊ฐ ์ฌ๋ฆฌ์.
<visual name='visual'>
<pose>0 0 0.05 0 0 0</pose>
<geometry>
<mesh>
<uri>model://pioneer2dx/meshes/chassis.dae</uri>
<scale>0.9 0.5 0.5</scale>
</mesh>
</geometry>
</visual>์ง๊ธ๊น์ง ๋์ ๋ณด์ฌ์ง๋ ๋ถ๋ถ(<visual>)๋ง ๊ฐ๋จํ ์์ ํด ๋ณด์๋ค. ํ์ง๋ง ์ถฉ๋์์ญ(<collision>)์ ์์ ํ์ง ์์๊ธฐ ๋๋ฌธ์, ๋ฌผ๋ฆฌ์์ง์ ์ด์ ์ ์ค์ ํ ๋ฐ์ค ํํ์ ์ถฉ๋์์ญ์ ์ถฉ๋ ์ญํ ๊ณ์ฐ ์ ์ฌ์ฉํ ๊ฒ์ด๋ค.