Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

3DMoBot ROS2 Workspace

Summary

This repository contains the set of ROS2 packages required for the 3DMoBot project.

View the associated dissetation at: (link will be added soon)

Additional content related to the dissertation is available at: https://github.com/ipleiria-robotics/3DMoBot-ros2-workspace/tree/main/Documents

Workflow tested on Xubuntu 22.04 with ROS2 Humble.

Quick Start

  • Clone the repo:

    mkdir src; cd src # Create src folder (optional)
    git clone git@github.com:Ab-Tx/3DMoBot-ros2-packages.git
    cd 3DMoBot-ros2-packages
    git submodule init
    git submodule update --recursive
    
  • Replace RTAB-Map, Odrive, and Realsense launch and configuration files with the custom ones:

    cp -r replace_rtabmap_ros/* rtabmap_ros
    cp -r replace_ros_odrive/* ros_odrive
    cp -r rs_launch.py realsense-ros/realsense2_camera/launch
    rm -r replace_rtabmap_ros
    rm -r replace_ros_odrive
    
  • build the workspace

    cd ../.. # cd to the root of your workspace
    export MAKEFLAGS=-j6 # Can be ignored if you have a lot of RAM (>16GB)
    colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release
    source ./install/local_setup.bash 
    
  • Use the cycloneDDS (recommendationf rom RTAB-Map):

    export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
    
    • You can set it as default by adding it to bashrc:
      echo "export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp" >> ~/.bashrc
      

Setup the CAN bus

Setup the CAN bus using:

sudo ip link set dev can0 type can bitrate 250000
sudo ip link set dev can0 txqueuelen 256
sudo ip link set dev can0 up

The interface "can0" should appear if you run ip link show.

Refer to Odrive S1 documentation for further details.

Test workflow

source install/local_setup.bash
ros2 launch robot_launch robot.launch.py

You should see the RTAB-Map GUI and Rviz.

Troubleshooting

If building fails, RTAB-Map and realsense-ros packages may require syncing with the latest version. The latest source of ROS2 Humble may introduce incompatibilities with the fetched versions.

Also ensure:

  • Data from sensors is being published.
  • CAN bus is available.

Content overview

  • apriltag_ros (fork)
  • my_nav2_launch
  • nav2focbox
  • opennav_docking
  • pointcloud_to_laserscan (fork)
  • realsense-ros
    • ROS package for the realsense camera.
  • robot_launch
    • Launch file used to initiate near all** software used by the 3DMoBot.
  • ros_odrive (fork)
    • Odrive S1 ROS package.
  • rtabmap
  • rtabmap_ros
  • replace_rtabmap_ros
    • Not a package. Contains several customized launch files for RTAB-Map.
  • replace_ros_odrive
    • Not a package. Contains several customized configuration files for ros_odrive, including the robot's URDF.

** Refer to the commented information in robot.launch.py

Additional information

Parameters for RTAB-Map: rtabmap_ros/rtabmap_launch/launch/interbot+rsdepth.launch.py

Parameters for apriltag_ros: apriltag_ros/cfg/tags_36h11.yaml

Parameters for collision_monitor: my_nav2_launch/params/collision_monitor_params_realsense.yaml

Parameters for opennav_docking: my_nav2_launch/params/nova_carter_docking.yaml

Parameters for all other packages in the navigations stack: my_nav2_launch/params/nav2_params.yaml

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages