카테고리 ROS

실제 프로젝트에서 launch 파일을 계층적으로 나누는 방법

대상: ROS(Melodic/Noetic) 환경에서 프로젝트 규모가 커졌을 때, launch 파일을 체계적으로 구성하고 관리하고 싶은 개발자환경: Ubuntu 20.04 / ROS Noetic / catkin_make 1. 문제/주제 요약 처음에는 단일 bringup.launch 하나로도 충분하지만,프로젝트가 커질수록 이런 문제가 생깁니다: → 이런 문제를 해결하려면 launch 파일을 계층적으로…

roslaunch 기초: 여러 노드를 한 번에 올리는 패턴 정리

대상: ROS (Melodic/Noetic) 환경에서 여러 노드를 동시에 실행하거나, launch 파일 구조를 체계적으로 관리하고 싶은 개발자환경: Ubuntu 20.04 / ROS Noetic / catkin_make 1. 문제/주제 요약 ROS 패키지를 사용하다 보면하나의 노드를 실행하는 건 간단하지만,여러 개의 노드를 동시에 띄워야 하는 경우가 많습니다.…

CMakeLists.txt와 package.xml만 보면 ROS 패키지 기능이 보인다

대상: 다른 사람이 만든 ROS 패키지를 빠르게 분석하고, 어떤 기능을 하는지 구조를 파악하고 싶은 개발자환경: Ubuntu 20.04 / ROS Noetic / catkin 1. 문제/주제 요약 ROS 패키지를 오픈소스 저장소(GitHub 등)에서 받았을 때,파일이 너무 많아서 “도대체 이게 무슨 기능을 하는 패키지인지”한눈에…

catkin 워크스페이스와 패키지 구조 완전 이해하기

대상: ROS (특히 ROS1 Melodic/Noetic) 환경에서 catkin 빌드 시스템의 구조를 정확히 이해하고 싶은 개발자환경: Ubuntu 20.04 / ROS Noetic / catkin_make 1. 문제/주제 요약 ROS 프로젝트를 시작할 때 대부분 이렇게 합니다: 그런데 막상 catkin_ws 내부 구조와 catkin_package()의 역할,CMakeLists.txt와 package.xml의 관계를…

ROS Melodic에서 C++ 코드 작성 가이드

대상: ROS1(Melodic)에서 C++로 토픽(pub/sub) 노드 샘플을 직접 만들어보고 싶은 개발자환경: Ubuntu 18.04, ROS Melodic, C++ (catkin, roscpp 기준) 1. 문제/주제 요약 이 글에서는 다음 내용을 한 번에 정리합니다. 바로 따라 하면 토픽 통신이 되는 C++ 노드를 직접 만들어서 실행해볼 수…

Ubuntu 18.04에서 ROS Melodic 설치 및 기본 동작 확인

대상: Ubuntu 18.04(Bionic) 환경에서 ROS Melodic을 처음 설치하고, roscore / turtlesim 정도까지 실행해 보고 싶은 개발자환경: Ubuntu 18.04 Desktop 또는 Server, sudo 권한, 기본적인 터미널 사용 가능 ROS Melodic은 Ubuntu 18.04를 위한 대표적인 ROS1 배포판이다.이미 우분투 기반 C++/Python 개발환경을 쓰고…