Skip to content

KBKN-Autonomous-Robotics-Lab/orange2026A

Repository files navigation

orange2026A

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 .

Simulation

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 on Simulation

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 on Simulation

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

Real Robot

Bringup

$ ros2 launch orange_bringup orange_robot.launch.xml
$ ros2 launch orange_bringup data_processing.launch.xml

These launch files include the following hardware drivers and sensor nodes:
・motor driver (ZLAC8015D)
・estop
・imu (icm20948)
・GNSS (ZED-F9P)
・LiDAR (MID360)

The following packages are also used:
・livox_ros_driver2
・livox_to_pointcloud2

SLAM on Real Robot

Real Robot without creating waypoints

$ ros2 launch orange_bringup orange_robot.launch.xml
$ ros2 launch orange_bringup data_processing.launch.xml
$ ros2 launch orange_slam {SLAM_METHOD_NAME}.launch.xml
$ ros2 launch orange_teleop teleop_joy.launch.xml

Real Robot with creating waypoints

$ ros2 launch orange_bringup orange_robot.launch.xml
$ ros2 launch orange_bringup data_processing.launch.xml
$ ros2 launch orange_slam waypoint_slam.launch.xml slam_method:={SLAM_METHOD_NAME}
$ ros2 launch orange_teleop teleop_joy.launch.xml

Navigation2 on Real Robot

Waypoint Navigation

$ ros2 launch orange_bringup orange_robot.launch.xml
$ ros2 launch orange_bringup data_processing.launch.xml
$ ros2 launch orange_navigation waypoint_navigation.launch.xml

Reference

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages