๐ก ๋ณธ ๋ฌธ์๋ 'apt ์ค์นํ ํจํค์ง์ buildํ ํจํค์ง(catkin, colcon) ์ค ์ด๋ค ๊ฒ์ ์ฌ์ฉ? '์ ๋ํด ์ ๋ฆฌํด๋์ ๊ธ์ ๋๋ค.
ros๋ฅผ ์ฌ์ฉํ๋ค๋ณด๋ฉด ํจํค์ง๋ฅผ ์ค์นํ๋ ๊ณผ์ ์ ๋๊ฐ์ง๋ก ๋๋๋๋ฐ, ๋๊ฐ์ง ๋ฐฉ๋ฒ์ ๋ํด ์ ๋ฆฌํ๊ณ ๋ ๋ฐฉ๋ฒ์์ ๋์ผํ ํจํค์ง๋ฅผ ์ค์นํ์ ๊ฒฝ์ฐ ์ด๋ค ๊ฒ์ ์ฌ์ฉํ๋์ง์ ๋ํด ์ ๋ฆฌํ์์ผ๋ ์ฐธ๊ณ ํ์๊ธฐ ๋ฐ๋๋๋ค.
apt ์ค์นํ ํจํค์ง vs. buildํ ํจํค์ง(catkin, colcon)
Colcon(Catkin)์ ROS(๋ก๋ด ์ด์ ์ฒด์ )์ ๋น๋ ์์คํ
์ค ํ๋๋ก, ROS ํจํค์ง ๋ฐ ์ปดํฌ๋ํธ๋ฅผ ๋น๋ํ๊ณ ๊ด๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๋ฐ๋ฉด apt๋ Debian ๋ฐ Ubuntu ๊ธฐ๋ฐ์ ๋ฆฌ๋
์ค ์์คํ
์์ ํจํค์ง ๊ด๋ฆฌ๋ฅผ ์ํ ๋๊ตฌ์ธ Advanced Package Tool์ ์ฝ์์
๋๋ค.
Colcon(Catkin)์ ์ฌ์ฉํ์ฌ ROS ํจํค์ง๋ฅผ ๋น๋ํ๊ณ apt๋ก ํจํค์ง๋ฅผ ์ค์นํ๋ ๊ฒ์ ๋ค๋ฅธ ๋ชฉ์ ์ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ ์ฐจ์ด์ ์ด ์์ต๋๋ค:
Colcon(Catkin)์ ์ฌ์ฉํ์ฌ ํจํค์ง๋ฅผ ๋น๋ํ๋ ๊ฒฝ์ฐ:
- ROS ํจํค์ง๋ฅผ ์ปค์คํฐ๋ง์ด์งํ๊ฑฐ๋ ๊ฐ๋ฐ ์ค์ธ ๊ฒฝ์ฐ Catkin์ ์ฌ์ฉํฉ๋๋ค.
- ROS ํจํค์ง์ ๋น๋, ์์กด์ฑ ๊ด๋ฆฌ ๋ฐ ํจํค์ง๋ฅผ ๊ฐ๋ณ์ ์ผ๋ก ๊ฐ๋ฐ ๋ฐ ํ ์คํธํ ์ ์์ต๋๋ค.
- ์ผ๋ถ ROS ํจํค์ง๋ ์์ค ์ฝ๋ ํํ๋ก ์ ๊ณต๋๋ฏ๋ก, ์ฌ๋ฌ ํจํค์ง๋ฅผ ์์ ํ๊ฑฐ๋ ROS ์ํฌ์คํ์ด์ค์ ์ถ๊ฐํ์ฌ ๊ฐ๋ฐํ๋ ๊ฒฝ์ฐ Catkin์ด ํ์ํฉ๋๋ค.
apt๋ฅผ ์ฌ์ฉํ์ฌ ํจํค์ง๋ฅผ ์ค์นํ๋ ๊ฒฝ์ฐ:
- ์์คํ ์ ROS ๋ฐ ๋ค๋ฅธ ์ํํธ์จ์ด๋ฅผ ์ฝ๊ฒ ์ค์นํ๊ณ ์ ๋ฐ์ดํธํ ๋ ์ฌ์ฉํฉ๋๋ค.
- ์์คํ ์์ค์ ํจํค์ง ๊ด๋ฆฌ๋ฅผ ์ ๊ณตํ๋ฉฐ, ๊ธฐ์กด์ ํจํค์ง๋ฅผ ์ ๋ฐ์ดํธํ๊ฑฐ๋ ์ ํจํค์ง๋ฅผ ์ค์นํ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
- ๊ธฐ์กด์ ๊ณต์ ROS ํจํค์ง ๋ฐ ๋ค๋ฅธ ์ํํธ์จ์ด ํจํค์ง๋ฅผ ํธ๋ฆฌํ๊ฒ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ๊ฐ๋ฐ ์ค์ธ ROS ํจํค์ง๋ฅผ ๋น๋ํ๋ ค๋ฉด Catkin์ ์ฌ์ฉํ๊ณ , ์์คํ ์์ค์ ํจํค์ง ๊ด๋ฆฌ ๋ฐ ์ข ์์ฑ ํด๊ฒฐ์ ์ํด apt๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋ ๊ฐ์ง ๋๊ตฌ๋ ์๋ก ๋ณด์์ ์ธ ์ญํ ์ ํฉ๋๋ค.
apt ์ค์นํ ํจํค์ง์ buildํ ํจํค์ง(catkin, colcon) ์ค ์ด๋ค ๊ฒ์ ์ฌ์ฉ?
๊ฒฐ๋ก ๋ถํฐ ๋งํ๋ฉด, "์ํฌ์คํ์ด์ค์ sourcing ์์์ ๋ฐ๋ผ ๊ฐ์ฅ ๋์ค์ ์์ฑํ ์ํฌ์คํ์ด์ค๊ฐ ์ฐ์ "์ ๋๋ค.
ROS๋ฅผ ์ค์นํ๋ ๊ณผ์ ์์ ๋ค์์ ๋ช ๋ น์ด๋ฅผ ๋ณด์ ์ ์์ ๊ฒ๋๋ค.
source /opt/ros/foxy/setup.bash;
source ~/colcon_ws/install/setup.bash;
์ ๋ช ๋ น์ด๋ ํด๋น ํ์ผ ์์์ ์ค์น๋ ํจํค์ง๋ค์ ์ฝ์ด๋ค์ด๋(์์ฑ) ๊ณผ์ ์ ๋๋ค. ์ ๋ ๋ค์๊ณผ ๊ฐ์ด ์ฌ์ฉํ์ฌ ROS๋ฅผ ์ฌ์ฉํ ๋ ํญ์ ๋จผ์ ์คํ์์ผ์ฃผ๋ ๋ช ๋ น์ด๋ค์ธ๋ฐ์
alias noetic="source /opt/ros/noetic/setup.bash; source ~/catkin_ws/devel/setup.bash; echo \"Noetic is Activated\""
alias foxy="source /opt/ros/foxy/setup.bash; source ~/colcon_ws/install/setup.bash; echo \"Foxy is Activated\""
์ด๋ ๊ฒ ๊ด์ต(?)์ ์ผ๋ก ์คํ์์ผ์ฃผ๋ ๋ช ๋ น์ด๊ฐ ์ฐ๋ฆฌ๊ฐ ์ค์นํ ํจํค์ง์ ์์น๋ฅผ ์ฝ์ด๋ค์ด๊ณ ์์ต๋๋ค. ๋ฐ๋ผ์ sourcingํ ์์์ ๋ฐ๋ผ์ ๋์ค์ ์์ฑํ ์ํฌ์คํ์ด์ค์ ํจํค์ง๋ฅผ ์ฝ์ด๋ค์ด๊ฒ ๋๋ ๊ฒ์ ๋๋ค.
'Study: Robotics(Robot) > Robot: ROS(Robot Operating Sytem)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ROS] ROS 2 Humble & Gazebo 11 ์ค์น ๋ฐ ์ธํ (0) | 2024.03.17 |
---|---|
[ROS] gazebo clearpath jackal ๋ชจ๋ฐ์ผ ๋ก๋ด ์ฌ์ฉํ๊ธฐ(velodyne vlp16 3d lidar) (0) | 2023.11.13 |
[ROS] ROS URDF vs. Gazebo SDF: Link Pose, Joint Pose, Visual & Collision (0) | 2023.10.27 |
[ROS] ROS TF ์ขํ๊ณ ๋ฐ ๋ณํ (0) | 2023.10.26 |
[ROS] ROS rosrun ์คํํ์ผ ๋ง๋ค๊ธฐ(python, cpp) (0) | 2023.10.12 |