아마도 ROS2를 사용하시는 분들이 가장 많이 사용하는 OS는 Ubuntu일겁니다. 제가 블로그에서 humble 설치를 아래의 글에서 이야기를 했었습니다. 이 글에서 ROS_DOMAIN_ID를 설정하는 이야기도 함께 했었습니다.
또 한 번은 아래 링크에서 라즈베리파이5에서 우분투 24.04를 설치하고 ssh를 설정하는 이야기도 했었습니다.
제 블로그의 여러 글에서 언급하지만, 저의 주 PC는 맥(mac)입니다. 그것도 최신이니 흔히 이야기하는 m1, m2, m3 등 실리콘맥입니다. 저는 Ubuntu를 설치한 ROS2 개발용, 혹은 딥러닝 개발용 PC에 ssh로 접근해서 개발하는 것을 아주 선호합니다. 아래 링크에서 맥에서 우분투로 ssh를 이용해서 접근하는 방법을 정리한 적도 있습니다.
오늘 이야기할 내용은 위 그림에 요약해 두었습니다. 일단, 저는 보통 Cursor나 VSCode에 SSH를 설정해서 원격지의 Ubuntu PC의 ROS2나 딥러닝 개발을 합니다. 이게 참 편하거든요. 그리고 원격 PC는 상황에 따라 raspberry pi일 때도 있고, 작은 mini pc일 수도 있고, 또 성능이 좋은 데스크탑일 수도 있습니다. 그런데, 한가지 문제가 있습니다. ROS2의 rviz2나 rqt등을 실행해보려면 불편해지거든요. 그것때문에 원격 데스크탑인 any desk같은 걸 설치하는 것도 좀 불편하구요. 그렇다고, 모니터 키보드 마우스를 그것 때문에 별도로 또 들고 다니는 것도 불편하죠.
그래서 제가 사용하는 방법은 ssh와 함께, 맥에도 ros2를 설치하는 겁니다. 응? 뭐냐 그러면 그냥 원격 pc가 필요없는?이라고 생각하실 수 있지만, 아직 맥에서 ROS2를 완전히 사용하는건 조금 불편합니다. 그리고, 로봇에 설치되는 PC는 우분투가 더 편하기도 하구요. 아무튼, 딱 모니터링용 아까 이야기했듯이 rviz2와 rqt를 사용하는 용도로만 ROS2를 맥에 설치하는 거죠^^. 그리고 원격 PC와 나의 맥은 ros_domain_id로 연결해주면 됩니다. 이 시점에 ros_domain_id 관련해서 정보가 필요하시면 아래 유투브 영상을 한 번 보시기 바랍니다.
https://www.youtube.com/watch?v=fmyC7MenEBs&list=PL0xYz_4oqpvhj4JaPSTeGI2k5GQEE36oi&index=12
그래서 이번에는 간단히 mac에서 ROS2를 설치하는 과정을 살짝 이야기해보려고 합니다.
일단, 위 링크에서 맥 유저들은 맥에 아나콘다를 설치하시구요~
그리고 conda에서 mamba를 설치합니다.
그리고 conda 환경을 저는 이름을 ros2라고 지어서 만듭니다. 위 그림에서 ros2는 꼭 지켜야할 이름은 아닙니다~
그리고 나서 ros2로 잡은 conda 환경을 활성화 합니다.
Conda의 ros2 환경에 진입한 상태에서, 꼭~ conda activate ros2 명령으로 ros2 환경이 꼭 활성화되어야 합니다. 그리고 채널에서 ros2 관련 pkg를 관리해주는 robostack-staging과 conda-forge를 채널에 포함시키고, 기본인 defaults 채널은 제거합니다. 여기서 꼭 다시 이야기하는데, 아래의 세 명령은 모두 ros2라는 conda 환경이 활성화 된 상태에서 해야합니다.
conda config --env --add channels conda-forge
conda config --env --add channels robostack-staging
conda config --env --remove channels defaults
그리고 나서 콘다 명령으로 ros-humble-desktop을 설치합니다. 응? 넵. 이게 끝입니다.^^
그리고 나서 환경을 비활성화하고, 다시 활성화합니다.
이제 시험삼아, rviz2를 실행해봅니다~ 와우~ 잘되네요 ^^
다시 테스트삼아 ROS_DOMAIN_ID를 13으로 한 후에 맥에서 turtlesim_node를 실행했습니다. 맥에서 거북이를 보니 기분이 좋네요^^
이제 ssh로 접근한 ubuntu에서 ros domain id를 맞추고 토픽 리스트를 보면 잘 연결되는 것을 알 수 있습니다.^^ 그리고 colcon을 설치하기 위해 아까 설치한 mamba를 이용해서 colcon을 설치할 수 있습니다.
'Robot > Robot Program - ROS' 카테고리의 다른 글
ROS2에서 rqt의 플러그인에서 TF tree가 시각화 되지 않을때 (2) | 2024.10.17 |
---|---|
ROS2 유투브 강의 벌써 응용편으로 진입했습니다. -R2R- ROS2 강좌 (2) | 2024.06.13 |
ROS/ROS2 사용할 때 Jupyter도 함께 써보세요. (0) | 2024.03.22 |
로봇 관제 OpenRMF - 핑크랩은 뭐가 다를까요? (0) | 2024.03.19 |
ROS2 처음부터 차근차근 공부하고 싶으시다면 - 무료 R2R 과정 - (0) | 2024.03.18 |
핑크랩이 주행로봇 관제 시스템 OpenRMF 컨텐츠를 준비했습니다. (3) | 2024.01.28 |
Ubuntu에서 zsh에서 ROS2 명령이 자동 완성되지 않을 때 (0) | 2023.11.27 |