ROS workspace
Overview
ROS workspace is a directory where you can build and run ROS packages. It is a recommended way to organize your ROS projects. It's no different for OpenMowerROS2. The root of the repository is a ROS workspace.
Main packages
Map management
The map management is a ROS package responsible for managing map. It is a drop-in replacement for nav2 map server.
More information can be found in map management section.
External packages
There are few biggest chunks to mention:
- ros2_control - differential drive controller, but also a hardware layer provider
- nav2 - navigation stack
- robot_localization - fuse sensors data to get accurate pose estimation
- NTRIP client - a ROS node to connect to NTRIP caster and get RTK corrections
- Foxglove bridge - a ROS node exposing websocket connection to Foxglove Studio. See instructions here. It can be used for custom Web UIs as well.
Hardware specific packages:
- VESC driver interface - a ros2_control hardware layer implementation for VESC motor controllers
- ublox_f9p - a ROS2 driver for u-blox F9P GNSS receiver with support of UBX protocol
- micro-ros-agent - a micro-ROS agent to connect to micro-ROS nodes. It's used to connect to the micro-ROS node running on the OpenMower mainboard.
- realsense2_camera - ROS2 packages for Intel® RealSense™ D400 series cameras