Animated Box - modulabs/gazebo-tutorial GitHub Wiki
๊ฐ์ ๋ณด ํ๋ฌ๊ทธ์ธ์ ์ด์ฉํด์ box๋ฅผ ์์ง์ด๋ animation์ ์์ฑํด๋ณด์. ํ๋ฌ๊ทธ์ธ์ ๊ฐ์ ๋ณด์ ์ถ๊ฐ๋ก ์ฌ์ฉ์ ์ฝ๋ฉ์ ํ ์ ์๊ฒ ํด์ฃผ๋ ๊ฒ์ผ๋ก์ ์๋ฅผ ๋ค์ด ๋ฐ์ค๋ฅผ ์์ฑํ๊ณ ์ด๊ฒ์ ๊ถค์ ์ ์ฝ๋ ๋ ๋ฒจ์์ ๋ง๋ค์ด ๋ณผ ์ ์๋ค.
์ถํ์ ํ๋ฌ๊ทธ์ธ ์ฝ๋์ ๋ํด์๋ ์์ธํ ๋ค๋ฃจ๊ณ ์ฌ๊ธฐ์๋ ๊ทธ๋ฐ ํ๋ฌ๊ทธ์ธ์ ํ๋ฒ ์คํํด๋ณด์.
working ๋๋ ํ ๋ฆฌ๋ฅผ ํ๋ ์์ฑํ์.
$ mkdir animatedbox
$ cd animatedbox
plugin ์ฝ๋๋ฅผ ๋ค์ด๋ฐ๋๋ค.
$ wget http://bitbucket.org/osrf/gazebo/raw/gazebo8/examples/stand_alone/animated_box/animated_box.cc
$ wget http://bitbucket.org/osrf/gazebo/raw/gazebo8/examples/stand_alone/animated_box/independent_listener.cc
$ wget http://bitbucket.org/osrf/gazebo/raw/gazebo8/examples/stand_alone/animated_box/integrated_main.cc
$ wget http://bitbucket.org/osrf/gazebo/raw/gazebo8/examples/stand_alone/animated_box/CMakeLists.txt
$ wget http://bitbucket.org/osrf/gazebo/raw/gazebo8/examples/stand_alone/animated_box/animated_box.world
์ ๊ณต๋๋ cmakeํ์ผ์ ์ด์ฉํด์ ๋น๋ํ๋ค.
$ mkdir build
$ cd build
$ cmake ../
$ make
build ๋๋ ํ ๋ฆฌ ์์ ํ๋ฌ๊ทธ์ธ ์คํ ํ์ผ์ด ์์ผ๋ฏ๋ก GAZEBO_PLUGIN_PATH๋ผ๋ ํ๊ฒฝ๋ณ์์ ์ด ๊ฒฝ๋ก๋ฅผ ์ธ์์์ผ์ค์ผ ํ๋ค.
$ export GAZEBO_PLUGIN_PATH=$(pwd):$GAZEBO_PLUGIN_PATH
animated_box.world๋ฅผ ์คํํ๋ค.
$ gazebo ~/animatedbox/animated_box.world
๋ค๋ฅธ ํฐ๋ฏธ๋์์ "gz topic" ๋ช ๋ น์ด๋ก box pose๋ฅผ ์์ ํ ์ ์๋ค.
$ gz topic -v /gazebo/animated_box_world/pose/info
์ฌ์ฉ์๊ฐ ์ฝ๋ฉํ independent_listener ๋ฅผ ์คํ์์ผ์ ๊ฑฐ๊ธฐ์๋ pose๋ฅผ ์์ ํ ์ ์๋ค.
$ gazebo ~/animatedbox/animated_box.world & ./build/independent_listener
gazebo server(์๋ฎฌ๋ ์ด์ ๊ณ์ฐํ๋ ๋ถ๋ถ)๋ฅผ ๋ฐ๋ก ์คํ์ํค๊ณ client(gui๋ก ๋ณด์ฌ์ฃผ๋ ๋ถ๋ถ)๋ฅผ ๋ฐ๋ก ์คํ์ํฌ ์๋ ์๋ค.
$ cd ~/animatedbox
$ ./build/integrated_main animated_box.world
$ gzclient