Scout Mini + Ouster LiDAR 기반 ROS 2 네비게이션 시스템 구성

김인곤·2025년 4월 19일

ROS

목록 보기
4/5

스카웃 mini + Ouster 구성

ROS 2 Humble 기반으로 AgileX의 Scout Mini에 Ouster LiDAR를 장착하여 SLAM 및 내비게이션 시스템을 구성하였다.
👉 Docker Hub – ingon1026/scout_navigation

Scout Mini에 Ouster 라이다가 장착된 모습


사용 장비 및 레포


관련 레포지토리

용도레포지토리
스카웃 ROS 드라이버https://github.com/agilexrobotics/scout_ros2/tree/humble
저수준 제어 SDK (CAN 통신)https://github.com/westonrobot/ugv_sdk
내비게이션 패키지https://github.com/mattiadutto/scout_navigation/tree/main
Ouster ROS 드라이버https://github.com/ouster-lidar/ouster-ros/tree/ros2-humble-sparse-neighbor-culling

구조 및 역할 정리

ugv_sdk

AgileX 하드웨어와 통신하기 위한 저수준 C++ SDK.
CAN 통신으로 모터, 배터리, 센서 제어와 상태 수신을 담당한다.
scout_ros2는 이 SDK를 기반으로 동작한다.


scout_ros2

Scout Mini를 ROS 2에서 제어할 수 있게 해주는 드라이버 패키지.
CAN 통신 기반으로 동작하며, ROS 2 토픽(/odom, /cmd_vel 등)을 퍼블리시한다.
scout_mini_base.launch.py 실행으로 노드 시작.


SLAM 설정 전 필수 확인: ros2 topic list

SLAM을 실행하기 전에 라이다에서 퍼블리시되는 실제 토픽을 확인해야 한다.
기본 설정은 /scan인데, 장비에 따라 다를 수 있으므로 반드시 확인 필요.

ros2 topic list

Ouster 라이다는 /ouster/scan 토픽을 퍼블리시함


Ouster 라이다의 scan_topic 설정

기본값은 다음과 같다

scan_topic: scan

Ouster를 사용할 경우 다음과 같이 수정해야 한다:

scan_topic: ouster/scan

scan_topic 파라미터를 실제 라이다 토픽에 맞게 변경해야 한다


실행 순서 요약

1. Ouster 라이다 & CAN 통신 연결

./ouster_net.sh

ros2 launch ouster_ros sensor.launch.xml sensor_hostname:=os-122405000193.local; exec bash

sudo ip link set can0 up type can bitrate 500000

2. Scout Mini ROS 드라이버 실행

ros2 launch scout_base scout_mini_base.launch.py

3. TF Tree 세팅

ros2 run tf2_ros static_transform_publisher 0.5 0 0 0 0 0 base_link os_sensor

ros2 run tf2_tools view_frames

완성된 TF 트리


4. SLAM 실행

ros2 launch scout_navigation slam_online_async.launch.py
  • 설정 파일 위치: config/mapper_params_online_async.yaml

2개의 댓글

comment-user-thumbnail
2025년 4월 23일

네비게이션은 어딨어요

1개의 답글