01.4 Navigation - pineland/px4 GitHub Wiki
- gazebo์์์ ์ผ์ ์ถ๊ฐ ์ฐธ๊ณ ์ฌ์ดํธ
http://wiki.ros.org/Sensors
http://bitbucket.org/osrf/gazebo_models/src
- ์ผ์์ถ๊ฐ ์ฌ์ดํธ(http://gazebosim.org/tutorials?tut=add_laser) ์ฐธ์กฐ
1.1.1 iris ๋ชจ๋ธ์ teraranger ๋ชจ๋ ์ถ๊ฐ
vi ~/src/Firmware/Tools/sitl_gazebo/models/iris.sdf
๋งจ ์๋์ชฝ ์์ ๋ค์์ ๋ด์ฉ์ ์ถ๊ฐํ๋ค.
<include>
<uri>model://flow_cam</uri>
<pose>-0.12 0.05 0 0 1.5708 1.5708</pose>
</include>
<joint name="flow_joint" type="revolute">
<child>camera::link</child>
<parent>iris::base_link</parent>
<axis>
<xyz>0 0 1</xyz>
<limit>
<upper>0</upper>
<lower>0</lower>
</limit>
</axis>
</joint>
(ํด์ค1) ์ผ์์ ๋ชจ๋ธ ์ด๋ฆ์ ์ ์ด์ค๋ค.(์ผ์์ sdfํ์ผ ์์ ๋ชจ๋ธ ์ด๋ฆ์ด ๋ค์ด์๋ค)
model://flow_cam
(ํด์ค2) ์ผ์๋ฅผ ๋ถ์ผ ์์น๋ฅผ ์ ํ๋ค.
-0.12 0.05 0 0 1.5708 1.5708
(ํด์ค3) joint์ ์ด๋ฆ์ ์ ํด์ฃผ๊ณ (์ด๊ฑด ์๊ธฐ ๋ง์๋๋ก)
(ํด์ค4) child์ parent๋ฅผ ์ ์ํด์ฃผ๋๋ฐ link์ link๋ฅผ joint๋ก ์ฐ๊ฒฐํ ๊ฒ์ผ๋ฏ๋ก ๊ฐ๊ฐ ์ตํฐ์ปฌ ํ๋ก์ฐ ์ผ์์
๋งํฌ์ iris ๋๋ก ์ ๋ฒ ์ด์ค ๋งํฌ(์๋ง๋ ๋๋ก ์ ๋ฐ๋ฉด์ด์ง ์ถ๋ค)๋ฅผ ์ ์ด์ค๋ค.
camera::link
iris::base_link
โป ์๋์ make๊ฐ ์๋ launch ํ์ผ์ ์ด์ฉํ์ฌ ros๋ฅผ ์๋์ํค๋ ๊ฒฝ์ฐ๋ urdf๋ ๋ค๋ฅธ ํ์ผ์ ๋ณ๊ฒฝํ๋ค.
-> launch ํ์ผ์ ์ด์ฉํ๋ ๊ฒฝ์ฐ, sdf ํ์ผ ๋ณ๊ฒฝ์ฌํญ์ด ๋ฐ์์ด ์๋จ.
//Terminal 1
roscore
//Terminal 2
cd ~/src/Firmware
no_sim=1 make posix_sitl_default gazebo
//Terminal 3
export GAZEBO_MODEL_PATH=${GAZEBO_MODEL_PATH}:~/src/Firmware/Tools/sitl_gazebo/models
export GAZEBO_PLUGIN_PATH=${GAZEBO_PLUGIN_PATH}:~/src/Firmware/Tools/sitl_gazebo/Build
roslaunch gazebo_ros empty_world.launch
(ํด์ค1) no_sim=1์ ์์ ๋ถ์ฌ์ผ ๊ธฐ์กด์ ์ฌ์ฉํ๋ mavros ํจํค์ง ์์ ์๋ topic๋ค ๋ง๊ณ ๋ค๋ฅธ ์ ๋ณด๋ค์ gazebo์์ ํ ํฝ์ผ๋ก ๋ฐ์๋ณผ ์ ์๋ค.
์ด๋ ๊ฒ ํ๋ฉด gazebo๊ฐ ๋ฐ๋ก ์คํ๋์ง๋ ์๋๋ค.
(ํด์ค2) ํ๊ฒฝ๋ณ์(plugin/model)์ sitl_gazebo ํด๋๋ฅผ ํฌํจ
(ํด์ค3) default๋ก empty world๋ฅผ ๋ถ๋ฅด๊ณ gazebo ์์์ ๋ชจ๋ธ์ ๋ถ๋ฌ์ฌ ๊ฒ์ด๋ค.
gazebo ์ผ์ชฝ insert ํญ๋ชฉ์์ /home/youngsoo/src/Firmware ...์ ์ถ๊ฐํด์ค model๋ค์ด ์๋ค.
(์ด ๋ถ๋ถ์ด ์๋ค๋ฉด ํ๊ฒฝ์ค์ ์ด ์ ๋ ๊ฒ์ด๋ฏ๋ก ๊ทธ ๋ถ๋ถ์ ๋ค์ ์คํํ๊ณ ๊ฐ์ ๋ณด๋ฅผ ์คํํ๊ธธ!)
ํด๋ฆญํ์ฌ Scene์ผ๋ก ๊ธ์ด์ค๋ฉด ๋๋ค. Box๋ ๋ค๋ฅธ ๋ชจ๋ธ๋ค๋ ๋ถ๋ฌ์๋ ๋๋ค.
Iris ๋๋ก ์ import ํ ์๊ฐ px4์ ์ฐ๊ฒฐ์ด ๋๋ฏ๋ก Takeoff๋ช
๋ น์ ์ค ์๊ฐ ์๋ค.
no_sim=1 make posix_sitl_default gazebo๋ฅผ ์คํ์ํจ ํฐ๋ฏธ๋ ์ฐฝ์์ ์์ด ๋ฌ๋ค.
pxh>commander takeoff
์ด ๋ ์์ด ๋์ค์ง ์๋ ๊ฒฝ์ฐ๋ ์๋๋ฅผ ์คํ์์ผ์ค๋ค.
cd ~/src/Firmware/Tools/sitl_gazebo/Build
cmake ..
make