This project is to use orange robot with ROS2
Find a file
2025-08-07 18:33:08 +09:00
.github migration of PR template 2023-09-30 23:22:41 +09:00
orange_bringup Add use_sim_time in launch file. 2024-11-01 09:31:53 +00:00
orange_description change name simulation xacro file 2025-04-21 07:56:49 +00:00
orange_gazebo add simulation environment 2025-04-18 11:28:32 +00:00
orange_navigation Update a map for nakaniwa2024. 2024-10-21 11:23:32 +00:00
orange_sensor_tools Add wheel_imu_odom. 2025-08-07 09:21:24 +00:00
orange_slam Add comments for slam params. 2024-10-21 07:54:18 +00:00
orange_teleop Update joy stick config. 2024-10-21 05:02:50 +00:00
.clang-format changed to ros2 compliant code style 2023-06-29 15:50:15 +09:00
.gitignore migrating gitignore 2023-09-30 22:56:48 +09:00
LICENSE Create LICENSE 2022-12-29 17:18:37 +09:00
orange_ros2.rosinstall Update rosinstall file. 2025-08-07 09:13:26 +00:00
README.md Update README.md 2023-10-24 20:09:15 +09:00
setup.cfg changed to ros2 compliant code style 2023-06-29 15:50:15 +09:00

orange_ros2

This repository contains ROS2 version of Hosei orange, which has competed in the Tsukuba Challenge and IGVC. It supports several Gazebo world, SLAM methods and provides navigation feature.

Setup

$ git clone https://github.com/KBKN-Autonomous-Robotics-Lab/orange_ros2.git
$ wstool merge orange_ros2/orange_ros2.rosinstall
$ wstool update
$ rosdep install -r -y -i --from-paths .

Launch Gazebo world

The following 4 gazebo worlds can be run.

empty_world orange_world orange_igvc orange_hosei
$ ros2 launch orange_gazebo {GAZEBO_WORLD_NAME}.launch.xml

Operate orange robot

Orange robot can be controlled via keyboard or gamepad.

keyboard

$ ros2 launch orange_teleop teleop_keyboard.launch.xml

gamepad

$ ros2 launch orange_teleop teleop_joy.launch.xml

RViz2 visualization

$ ros2 launch orange_bringup rviz2.launch.xml

SLAM

The following SLAM methods can be run.

slam_toolbox cartographer

Gazebo simulation without creating waypoints

$ ros2 launch orange_gazebo orange_hosei.launch.xml
$ ros2 launch orange_slam {SLAM_METHOD_NAME}.launch.xml use_sim_time:=true
$ ros2 launch orange_teleop teleop_keyboard.launch.xml

Gazebo simulation with creating waypoints

$ ros2 launch orange_gazebo orange_hosei.launch.xml
$ ros2 launch orange_slam waypoint_slam.launch.xml slam_method:={SLAM_METHOD_NAME} use_sim_time:=true
$ ros2 launch orange_teleop teleop_keyboard.launch.xml

ros2 bag

$ ros2 launch orange_bringup with_ros2bag.launch.xml
$ ros2 bag play your_bag -r 3 --clock
$ ros2 launch orange_slam {SLAM_METHOD_NAME}.launch.xml with_ros2bag:=true

Navigation2

You can try Navigation2 with a map created by slam_toolbox or cartographer.

Gazebo simulation

Waypoint Navigation

$ ros2 launch orange_gazebo orange_hosei.launch.xml
$ ros2 launch orange_navigation waypoint_navigation.launch.xml use_sim_time:=true

Sample dataset

You can download the ros2 bag obtained from orange_hosei.

$ wget --load-cookies /tmp/cookies.txt "https://drive.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://drive.google.com/uc?export=download&id=1T3eFLUSbdlLayyaVRCAf1Hfi8K1FMR4K' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id=1T3eFLUSbdlLayyaVRCAf1Hfi8K1FMR4K" -O ros2bag_orange_hosei.zip && rm -rf /tmp/cookies.txt

Reference