์ผ,
์ค์ PX4 ๋ง์คํฐ ๋ฐ mavros์์ ๋ค์ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
ODOM: Ex: Could not find a connection between 'local_origin_ned' and 'fcu' because they are not part of the same tree.Tf has two or more unconnected trees.
์ด๋ https://github.com/mavlink/mavros/pull/1252 ์ ์ง์ ์ ์ธ ๊ฒฐ๊ณผ์ ๋๋ค
์ด ๋ฌธ์ ์ ๋ํ ์ ๋ฐ์ดํธ๊ฐ ์์ต๋๊น? PX4 ํ์จ์ด๋ ์ง๋ ๋ช ๋ฌ ๋์ ์ ์๋ํ์ง๋ง ์ง๋ 3 ์ผ ๋์์ด ์ค๋ฅ๊ฐ ํ์๋์์ต๋๋ค.
ODOM: Ex: Could not find a connection between 'local_origin_ned' and 'fcu' because they are not part of the same tree.Tf has two or more unconnected trees.
์ต์ ๋ฒ์ ์ ํ์จ์ด๋ฅผ ์ฒ์๋ถํฐ ๋น๋ํ๋ ค๊ณ ์๋ํ์ง๋ง ๋์ผํ ์ค๋ฅ๊ฐ ํ์๋ฉ๋๋ค. ์ด๊ฒ์ ๋ํ ์์ ์ด ์์ต๋๊น?
๋๊ตฌ๋ ์ง ์ด๊ฒ์ ๋ํ ํด๊ฒฐ์ฑ ์ด ์์ต๋๊น?
๋๋ ๋ํ ๊ฐ์ ๋ฌธ์ ์ ์ง๋ฉดํ๊ณ ์์ต๋๋ค.
๊ฐ์ ๋ฌธ์ ๊ฐ ์๊ณ ์ ๋ฐ์ดํธ๋ฅผ ๊ธฐ๋ค๋ฆฌ๊ณ ์์ต๋๋ค.
https://github.com/mavlink/mavros/pull/1300 ์์ ์ ๊ณต๋๋ ์๋ฃจ์
์๋ ํ์ธ์, ์ต์ ํ์จ์ด๋ฅผ ๊ตฌ์ถํ๋ ค๊ณ ์๋ํ์ง๋ง ๋์ผํ ๋ฌธ์ ์ ์ง๋ฉดํ์ต๋๋ค. ๋๋ ๊ทธ๊ฒ์ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฌด์์ํด์ผํ ์ง ๋ชจ๋ฅด๊ฒ ๋ค. ์ ๋ฐ์ดํธ๋ฅผ ์ํด ์ ์ ๊ธฐ๋ค๋ ค์ผํฉ๋๊น, ์๋๋ฉด ํ์จ์ด ๋ด๋ถ์์ ๋ฌด์ธ๊ฐ๋ฅผ ์์ ํ ์ ์์ต๋๊น?
@ ๋ชจ๋ ๋ฌธ์ ๊ฐ
๊ฐ์ ๋ฌธ์ ๊ฐ ์๊ณ ์ ๋ฐ์ดํธ๋ฅผ ๊ธฐ๋ค๋ฆฌ๊ณ ์์ต๋๋ค.
์ผํ๋ ๋ชจ๋ ๋ถ๋ค๊ป ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
์ด ์คํ ํ์ผ์ ์ฌ์ฉํ๋ฉด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋ฉ๋๋ค.
<node name="task_3" pkg="task_3" type="task_3_node" output="screen"/>
<node name ="link1_broadcaster" pkg="tf" type="static_transform_publisher" args="0 0 0 0 0 0 local_origin_ned fcu 10" />
์ด ์คํ ํ์ผ์ ์ฌ์ฉํ๋ฉด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋ฉ๋๋ค.
<node name="task_3" pkg="task_3" type="task_3_node" output="screen"/> <node name ="link1_broadcaster" pkg="tf" type="static_transform_publisher" args="0 0 0 0 0 0 local_origin_ned fcu 10" />
๊ทธ๊ฒ์ ์๋ฌด๊ฒ๋ ํด๊ฒฐํ์ง ๋ชปํฉ๋๋ค. ๋ฌธ์ ๋ฅผ ์จ ๊น๋๋ค.)
mavros / global_position / compass_hdg ๋ฐ mavros / global_position / global์์ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ค๊ณ ํ๋๋ฐ์ด ์ฃผ์ ๋ ๊ฒ์๋์ง ์์ต๋๋ค. ๋ฌธ์ ์ ๋์ผํ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
ODOM : ์ : 'local_origin_ned'์ 'fcu'๋ ๋์ผํ ํธ๋ฆฌ์ ์ผ๋ถ๊ฐ ์๋๊ธฐ ๋๋ฌธ์ ์ฐ๊ฒฐ์ ์ฐพ์ ์ ์์ต๋๋ค .Tf์๋ ์ฐ๊ฒฐ๋์ง ์์ ํธ๋ฆฌ๊ฐ ๋ ์ด์ ์์ต๋๋ค.
์ค๋ฅ์ ์ฃผ์ ์ฌ์ด์ ์ด๋ค ๊ด๊ณ๊ฐ ์์ต๋๊น?
์ด๋กํด?
๋ชจ๋ ๊ฐ์ฌํฉ๋๋ค!
mavros / global_position / compass_hdg ๋ฐ mavros / global_position / global์์ ๋ฐ์ดํฐ๋ฅผ ์์งํ๋ ค๊ณ ํ๋๋ฐ์ด ์ฃผ์ ๋ ๊ฒ์๋์ง ์์ต๋๋ค. ๋ฌธ์ ์ ๋์ผํ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
ODOM : ์ : 'local_origin_ned'์ 'fcu'๋ ๋์ผํ ํธ๋ฆฌ์ ์ผ๋ถ๊ฐ ์๋๊ธฐ ๋๋ฌธ์ ์ฐ๊ฒฐ์ ์ฐพ์ ์ ์์ต๋๋ค .Tf์๋ ์ฐ๊ฒฐ๋์ง ์์ ํธ๋ฆฌ๊ฐ ๋ ์ด์ ์์ต๋๋ค.
์ค๋ฅ์ ์ฃผ์ ์ฌ์ด์ ์ด๋ค ๊ด๊ณ๊ฐ ์์ต๋๊น?
์ด๋กํด?๋ชจ๋ ๊ฐ์ฌํฉ๋๋ค!
์. 0.33์ ์ด๋ฏธ ๋ฆด๋ฆฌ์ค๋์์ผ๋ฉฐ ๊ณง apt๋ฅผ ํตํด ์์ ์ฌํญ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด์จ๋ ์ง๊ธ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๋ฉด ์์ค์์ MAVROS๋ฅผ ๋น๋ํ๊ฑฐ๋ ์ค์นํ์ญ์์ค.
์ฌ์ค, ์ ๋ ๋ค์ ๋งํ๊ฒ ์ต๋๋ค : ๋น์ ์ด ๊ฒช๊ณ ์๋ ๋ฌธ์ ๋ TF ๋ฌธ์ ์ ์๋ฌด ๊ด๋ จ์ด ์์ต๋๋ค. ๋ ๋ถ๋ช ํ ๋ฌธ์ ๋ ์๋ ์กฐ์ข ์ฅ์น์ GPS ๋ฐ์ดํฐ๊ฐ ์๋ค๋ ๊ฒ์ ๋๋ค. ์ด์จ๋ , ๋ค๋ฅธ ๋ฌธ์ ์ด๋ฏ๋ก์ด ์ฃผ์ ์์ ํ ๋ก ์ ๊ณ์ํ์ง ๋ง์ญ์์ค.
๋ด ์์คํ
: Ubuntu 18.04 + PX4 + ROS Melodic Morenia.
์ ์ฒด ์๋ฎฌ๋ ์ด์
์ค์
๋๋ค. pixwark๊ฐ ์์ต๋๋ค.
๋ด๊ฐ ์ฌ์ฉํ ๋ ๊ฐ์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค : roslaunch px4 mavros_posix_sitl.launch
์ด ์๋ฃจ์
์ ์ดํดํ ์ ์์ต๋๋ค.
ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์๋ ค์ฃผ์ธ์. ๊ณ ๋ง์์!
๋ด ์์คํ : Ubuntu 18.04 + PX4 + ROS Melodic Morenia.
์ ์ฒด ์๋ฎฌ๋ ์ด์ ์ค์ ๋๋ค. pixwark๊ฐ ์์ต๋๋ค.
๋ด๊ฐ ์ฌ์ฉํ ๋ ๊ฐ์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค : roslaunch px4 mavros_posix_sitl.launch
์ด ์๋ฃจ์ ์ ์ดํดํ ์ ์์ต๋๋ค.
ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์๋ ค์ฃผ์ธ์. ๊ณ ๋ง์์!
catkin_ws / devel / setup.bash ๋ฐ /opt/ros/.../setup.bash ์์ค๋ฅผ ์๋ํ์ญ์์ค. ๋ด ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค. ํ๊ฒฝ ๋ณ์๋ฅผ ์์ฑํ๊ธฐ ์ ์ catkin_ws ํด๋ ๋ด์์ ๋ช ๋ น์ ์คํํ๊ณ ํ๋ก์ ํธ๋ฅผ ๋ค์ ๋น๋ ํ ์ ์์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๊ทธ๊ฒ์ ์๋ฌด๊ฒ๋ ํด๊ฒฐํ์ง ๋ชปํฉ๋๋ค. ๋ฌธ์ ๋ฅผ ์จ ๊น๋๋ค.)