maliput_ros package from maliput_ros repomaliput_ros maliput_ros_interfaces maliput_ros_translation |
|
Package Summary
Tags | No category tags. |
Version | 0.1.1 |
License | BSD Clause 3 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/maliput/maliput_ros.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2023-12-11 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Agustin Alba Chicar
Authors
Maliput ROS
Description
This package contains a ROS2 node query server to answer information about the RoadNetwork
. It relies on the
maliput plugin infrastructure to load all the backend information so specific parameters are parsed from a YAML
file and its path is passed as a runtime parameter (maliput_yaml_path
).
For a full overview of Maliput capabilities please visit https://maliput.readthedocs.io/en/latest/maliput_overview.html.
The purpose of this package and node in particular is to assist agents in their route planning as well as assiting with the kinematics of the road. At the moment, the package offers only geometry related queries, once the rule API is also exposed agents will be able to access more sophisticated queries.
API Documentation
The ROS2 node exposes many services and topics that belong to the LifeCycleNode
. Please refer to the
documentation to properly handle those. The following,
just focuses on the available service calls which are listed below:
-
/branch_point
: looks for amaliput::api::BranchPoint
by its ID. -
/derive_lane_s_routes
: derives all paths from amaliput::api::RoadPosition
to another, filtering Lanes whose length is bigger than a maximum threshold. -
/eval_motion_derivatives
: evaluates the motion derivatives atmaliput::api::RoadPosition
and scales it by a certainmaliput::api::IsoLaneVelocity
. -
/find_road_positions
: finds allmaliput::api::RoadPositionResult
in radius distance from amaliput::api::InertialPosition
. -
/junction
: looks for amaliput::api::Junction
by its ID. -
/lane
: looks for amaliput::api::Lane
by its ID. -
/lane_boundaries
: computes themaliput::api::Lane
boundaries at a givenmaliput::api::RoadPosition
. -
/road_geometry
: responds themaliput::api::RoadGeometry
configuration. -
/segment
: looks for amaliput::api::Segment
by its ID. -
/to_road_position
: maps amaliput::api::InertialPosition
into amaliput::api::RoadPosition
. -
/to_inertial_pose
: maps amaliput::api::RoadPosition
into amaliput::api::InertialPosition
and themaliput::api::Rotation
there.
Examples
Getting Started page is a good place for starting to see the Maliput’s capabilities.
For this package in particular, simply execute the following after successfully building the package and sourcing the environment.
ros2 launch maliput_ros maliput_ros.launch.py --show-args
It should display all the available arguments. Then, make sure you have maliput_malidrive installed in your system and you can launch the sample as follows:
ros2 launch maliput_ros maliput_ros.launch.py maliput_yaml_path:=/home/$USER/maliput_ws_focal/src/ros2_maliput/maliput_ros/resources/maliput_malidrive_plugin.yml
It should launch the node which loads the plugin and builds a RoadNetwork for TShapeRoad.xord.
Installation
Supported platforms
Ubuntu Focal Fossa 20.04 LTS.
Source Installation on Ubuntu
Prerequisites
sudo apt install python3-rosdep python3-colcon-common-extensions
Build
- Create colcon workspace if you don’t have one yet.
mkdir colcon_ws/src -p
- Clone this repository in the
src
folder
cd colcon_ws/src
git clone https://github.com/maliput/ros2_maliput.git
- Install package dependencies via
rosdep
export ROS_DISTRO=foxy
rosdep update
rosdep install -i -y --rosdistro $ROS_DISTRO --from-paths src
- Build the package
colcon build --packages-up-to maliput_ros
**Note**: To build documentation a `-BUILD_DOCS` cmake flag is required:
colcon build --packages-select maliput_ros --cmake-args " -DBUILD_DOCS=On"
For further info refer to Source Installation on Ubuntu
For development
It is recommended to follow the guidelines for setting up a development workspace as described here.
Contributing
Please see CONTRIBUTING page.
License
Changelog for package maliput_ros
0.1.1 (2023-04-17)
- Adds READMEs to the packages. (#24)
- Sample lane s route (#21)
- Routing service (#20)
- Road position services (#19)
- Refactor tests to scale build time (#18)
- Adds branch point service (#17)
- Adds lane service (#16)
- Add get segment service (#15)
- Add get junction service (#14)
- Add tests to ROS node (#10)
- Create maliput ros node (#8)
- Create maliput_ros package (#7)
- Contributors: Agustin Alba Chicar
Wiki Tutorials
Package Dependencies
System Dependencies
Name |
---|
yaml-cpp |