beluga_example package from beluga repobeluga beluga_amcl beluga_benchmark beluga_example beluga_ros beluga_system_tests beluga_tools beluga_tutorial |
|
Package Summary
Tags | No category tags. |
Version | 2.0.2 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/Ekumen-OS/beluga.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-10-25 |
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
- Gerardo Puga
- Ivan Paunovic
- Nahuel Espinosa
Authors
Beluga Example
This package contains example launch files that demonstrate the use of Beluga-based nodes (e.g. Beluga AMCL) with external ROS bags or simulation software.
Examples
The following examples are easier to run in Beluga development containers.
-
Run an example application using a ROS bag.
For ROS 2 distributions, run:
cd /ws
source install/setup.bash
ros2 launch beluga_example perfect_odometry.launch.xml
For ROS 1 distributions, run:
cd /ws
source devel*/setup.bash
roslaunch beluga_example perfect_odometry.launch
-
Run an example application using a simulation and teleop controls.
For ROS 2 distributions, in two separate terminals run:
cd /ws
source install/setup.bash
ros2 launch beluga_example simulation.launch.xml
ros2 run teleop_twist_keyboard teleop_twist_keyboard
For ROS 1 distributions, in two separate terminals run:
cd /ws
source devel*/setup.bash
roslaunch beluga_example simulation.launch
rosrun teleop_twist_keyboard teleop_twist_keyboard
Note that this example uses [Flatland](https://flatland-simulator.readthedocs.io) for simulation.
A Flatland source installation is provisioned in development containers.
You will have to provision one yourself to run this elsewhere.
-
Launch a localization node manually.
For ROS 2 distributions, run:
ros2 launch beluga_example localization_launch.py use_composition:=True localization_params_file:=<PARAMS_PATH> localization_map:=<MAP_YAML_PATH>
For ROS 1 distributions, run:
roslaunch beluga_example localization.launch localization_params_file:=<PARAMS_PATH> localization_map:=<MAP_YAML_PATH>
The localization_params_file
argument can be ommited if the default AMCL parameters are compatible with the robot.
-
Use RViz to visualize the localization output.
For ROS 2 distributions, run:
rviz2 -d $(ros2 pkg prefix --share beluga_example)/rviz/amcl.ros2.rviz
For ROS 1 distributions, run:
rviz -d $(rospack find beluga_example)/rviz/amcl.ros.rviz
Quality of Service
In ROS 2, when subscribing to the output topics from localization, we recommend the following QoS settings:
Topic | Depth | History | Reliability | Durability |
---|---|---|---|---|
map |
5 | Keep last | Reliable | Transient local |
particle_cloud |
5 | Keep last | Best effort | Volatile |
pose |
5 | Keep last | Reliable | Volatile |
Changelog for package beluga_example
2.0.2 (2024-06-18)
- Change NDT sensor model default params (#397)
- Contributors: Ramiro Serra
2.0.1 (2024-05-24)
2.0.0 (2024-05-21)
- Add ROS 2 Jazzy to CI/CD and dev workflows (#378)
- Use [geometry_msgs::msg::PoseArray]{.title-ref} instead of [nav2_msgs::msg::ParticleCloud]{.title-ref} (#372)
- Remap [/turtlebot/scan]{.title-ref} to [/scan]{.title-ref} for Flatland (#373)
- Update more ROS version detection logic (#367)
- Add example for NDT sensor model in beluga_example (#360)
- Isolate Flatland dependency (#361)
- Unify Beluga documentation (#346)
- Make particle cloud message weights represent pdf (#260)
- Add updated performance report (#255)
- Fix [perfect_odometry]{.title-ref} rosbag (#238)
- Add cmake-format to pre-commit hooks (#243)
- Reduce simulated odometry noise (#241)
- Rename motion models in Beluga AMCL for ROS 1 (#242)
- Add ROS Noetic support to [beluga_example]{.title-ref} (#223)
- Refactor launch files (#211)
- Add new report after recent performance updates (#208)
- Fix small issues with plotter and update MessageFilter tolerance before generating new report
- Improve documentation and guidelines (#186)
- Initialize particle filter with last known estimate (#185)
- Update license year to 2023 (#175)
- Add beam sensor model (#160)
- Remove Git LFS from the repository (#162)
- Performance comparison with nav2_amcl (#142)
- Select mixin components at runtime (#126)
- Add top level-readme (#125)
- Update list of maintainers (#130)
- Add script to run benchmarks (#117)
- Add flake8 and pep257 to pre-commit hooks (#115)
- Broadcast map-to-odom transform (#81)
- Set initial pose from params (#105)
- More configurable launch files (#103)
- Make execution policy configurable (#100)
- Add profiling instructions (#96)
- Add max_beams parameter to [beluga_amcl]{.title-ref} (#84)
- Refactor laser_callback method (#89)
- Add launch params to select localization node (#83)
- Fix node clean up (#69)
- Extract common nodes from example launch files (#71)
- Add launch example with ROS bag (#65)
- Export AMCL as a loadable component (#63)
- Add reinitialize method to the particle filter (#51)
- Add initial pose subscriber (#45)
- Add lint step to CI (#37)
- Integrate differential drive motion model (#33)
- Fix robot geometry and reduce laser rate (#31)
- Add pose estimation publisher (#30)
- Implement likelihood estimation for particles (#25)
- Add likelihood field pre-computation (#24)
- Add flatland simulation (#23)
- Add [beluga_amcl]{.title-ref} package and example launch file (#21)
- Contributors: Gerardo Puga, Ivan Santiago Paunovic, Michel Hidalgo, Nahuel Espinosa, Olmer Garcia-Bedoya, Ramiro Serra
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
beluga_amcl | |
amcl | |
map_server | |
roslaunch | |
rviz | |
launch_ros | |
nav2_amcl | |
nav2_lifecycle_manager | |
nav2_map_server | |
rviz2 | |
teleop_twist_keyboard | |
launch | |
launch_testing |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
beluga_benchmark |
Launch files
- launch/simulation.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/utils/rosbag.launch
-
- start_paused [default: false] — Start the rosbag player in a paused state.
- playback_rate [default: 3.0] — Rate used to playback the bag.
- rosbag_path [default: $(find beluga_example)/bags/perfect_odometry.bag] — Path of the rosbag to playback.
- record_bag [default: false] — Whether to record a bagfile or not.
- topics_to_record [default: /tf /amcl_pose /pose /odometry/ground_truth] — Topics to record in a new bagfile.
- bagfile_output [default: ] — Destination bagfile to create, defaults to timestamped folder
- launch/utils/flatland.launch
- launch/utils/localization.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- localization_params_file [default: $(find beluga_example)/params/default.ros.yaml] — Parameters file to be used to run the localization node.
- localization_map [default: $(find beluga_example)/maps/turtlebot3_world.yaml] — Map YAML file to be used by the localization node.
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/utils/rviz.launch
-
- display_config [default: $(find beluga_example)/rviz/rviz.rviz] — A display config file (.rviz) to load.
- launch/perfect_odometry.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/ndt_simulation.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default_ndt.ros2.yaml]
- launch/ndt_replay_3d.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default_ndt_3d.ros2.yaml]
- localization_ndt_map
- bag_path
- launch/perfect_odometry.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default.ros2.yaml]
- launch/simulation.launch.xml
Messages
Services
Plugins
Recent questions tagged beluga_example at Robotics Stack Exchange
beluga_example package from beluga repobeluga beluga_amcl beluga_benchmark beluga_example beluga_ros beluga_system_tests beluga_tools beluga_tutorial |
|
Package Summary
Tags | No category tags. |
Version | 2.0.2 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/Ekumen-OS/beluga.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-10-25 |
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
- Gerardo Puga
- Ivan Paunovic
- Nahuel Espinosa
Authors
Beluga Example
This package contains example launch files that demonstrate the use of Beluga-based nodes (e.g. Beluga AMCL) with external ROS bags or simulation software.
Examples
The following examples are easier to run in Beluga development containers.
-
Run an example application using a ROS bag.
For ROS 2 distributions, run:
cd /ws
source install/setup.bash
ros2 launch beluga_example perfect_odometry.launch.xml
For ROS 1 distributions, run:
cd /ws
source devel*/setup.bash
roslaunch beluga_example perfect_odometry.launch
-
Run an example application using a simulation and teleop controls.
For ROS 2 distributions, in two separate terminals run:
cd /ws
source install/setup.bash
ros2 launch beluga_example simulation.launch.xml
ros2 run teleop_twist_keyboard teleop_twist_keyboard
For ROS 1 distributions, in two separate terminals run:
cd /ws
source devel*/setup.bash
roslaunch beluga_example simulation.launch
rosrun teleop_twist_keyboard teleop_twist_keyboard
Note that this example uses [Flatland](https://flatland-simulator.readthedocs.io) for simulation.
A Flatland source installation is provisioned in development containers.
You will have to provision one yourself to run this elsewhere.
-
Launch a localization node manually.
For ROS 2 distributions, run:
ros2 launch beluga_example localization_launch.py use_composition:=True localization_params_file:=<PARAMS_PATH> localization_map:=<MAP_YAML_PATH>
For ROS 1 distributions, run:
roslaunch beluga_example localization.launch localization_params_file:=<PARAMS_PATH> localization_map:=<MAP_YAML_PATH>
The localization_params_file
argument can be ommited if the default AMCL parameters are compatible with the robot.
-
Use RViz to visualize the localization output.
For ROS 2 distributions, run:
rviz2 -d $(ros2 pkg prefix --share beluga_example)/rviz/amcl.ros2.rviz
For ROS 1 distributions, run:
rviz -d $(rospack find beluga_example)/rviz/amcl.ros.rviz
Quality of Service
In ROS 2, when subscribing to the output topics from localization, we recommend the following QoS settings:
Topic | Depth | History | Reliability | Durability |
---|---|---|---|---|
map |
5 | Keep last | Reliable | Transient local |
particle_cloud |
5 | Keep last | Best effort | Volatile |
pose |
5 | Keep last | Reliable | Volatile |
Changelog for package beluga_example
2.0.2 (2024-06-18)
- Change NDT sensor model default params (#397)
- Contributors: Ramiro Serra
2.0.1 (2024-05-24)
2.0.0 (2024-05-21)
- Add ROS 2 Jazzy to CI/CD and dev workflows (#378)
- Use [geometry_msgs::msg::PoseArray]{.title-ref} instead of [nav2_msgs::msg::ParticleCloud]{.title-ref} (#372)
- Remap [/turtlebot/scan]{.title-ref} to [/scan]{.title-ref} for Flatland (#373)
- Update more ROS version detection logic (#367)
- Add example for NDT sensor model in beluga_example (#360)
- Isolate Flatland dependency (#361)
- Unify Beluga documentation (#346)
- Make particle cloud message weights represent pdf (#260)
- Add updated performance report (#255)
- Fix [perfect_odometry]{.title-ref} rosbag (#238)
- Add cmake-format to pre-commit hooks (#243)
- Reduce simulated odometry noise (#241)
- Rename motion models in Beluga AMCL for ROS 1 (#242)
- Add ROS Noetic support to [beluga_example]{.title-ref} (#223)
- Refactor launch files (#211)
- Add new report after recent performance updates (#208)
- Fix small issues with plotter and update MessageFilter tolerance before generating new report
- Improve documentation and guidelines (#186)
- Initialize particle filter with last known estimate (#185)
- Update license year to 2023 (#175)
- Add beam sensor model (#160)
- Remove Git LFS from the repository (#162)
- Performance comparison with nav2_amcl (#142)
- Select mixin components at runtime (#126)
- Add top level-readme (#125)
- Update list of maintainers (#130)
- Add script to run benchmarks (#117)
- Add flake8 and pep257 to pre-commit hooks (#115)
- Broadcast map-to-odom transform (#81)
- Set initial pose from params (#105)
- More configurable launch files (#103)
- Make execution policy configurable (#100)
- Add profiling instructions (#96)
- Add max_beams parameter to [beluga_amcl]{.title-ref} (#84)
- Refactor laser_callback method (#89)
- Add launch params to select localization node (#83)
- Fix node clean up (#69)
- Extract common nodes from example launch files (#71)
- Add launch example with ROS bag (#65)
- Export AMCL as a loadable component (#63)
- Add reinitialize method to the particle filter (#51)
- Add initial pose subscriber (#45)
- Add lint step to CI (#37)
- Integrate differential drive motion model (#33)
- Fix robot geometry and reduce laser rate (#31)
- Add pose estimation publisher (#30)
- Implement likelihood estimation for particles (#25)
- Add likelihood field pre-computation (#24)
- Add flatland simulation (#23)
- Add [beluga_amcl]{.title-ref} package and example launch file (#21)
- Contributors: Gerardo Puga, Ivan Santiago Paunovic, Michel Hidalgo, Nahuel Espinosa, Olmer Garcia-Bedoya, Ramiro Serra
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
beluga_amcl | |
amcl | |
map_server | |
roslaunch | |
rviz | |
launch_ros | |
nav2_amcl | |
nav2_lifecycle_manager | |
nav2_map_server | |
rviz2 | |
teleop_twist_keyboard | |
launch | |
launch_testing |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
beluga_benchmark |
Launch files
- launch/simulation.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/utils/rosbag.launch
-
- start_paused [default: false] — Start the rosbag player in a paused state.
- playback_rate [default: 3.0] — Rate used to playback the bag.
- rosbag_path [default: $(find beluga_example)/bags/perfect_odometry.bag] — Path of the rosbag to playback.
- record_bag [default: false] — Whether to record a bagfile or not.
- topics_to_record [default: /tf /amcl_pose /pose /odometry/ground_truth] — Topics to record in a new bagfile.
- bagfile_output [default: ] — Destination bagfile to create, defaults to timestamped folder
- launch/utils/flatland.launch
- launch/utils/localization.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- localization_params_file [default: $(find beluga_example)/params/default.ros.yaml] — Parameters file to be used to run the localization node.
- localization_map [default: $(find beluga_example)/maps/turtlebot3_world.yaml] — Map YAML file to be used by the localization node.
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/utils/rviz.launch
-
- display_config [default: $(find beluga_example)/rviz/rviz.rviz] — A display config file (.rviz) to load.
- launch/perfect_odometry.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/ndt_simulation.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default_ndt.ros2.yaml]
- launch/ndt_replay_3d.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default_ndt_3d.ros2.yaml]
- localization_ndt_map
- bag_path
- launch/perfect_odometry.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default.ros2.yaml]
- launch/simulation.launch.xml
Messages
Services
Plugins
Recent questions tagged beluga_example at Robotics Stack Exchange
beluga_example package from beluga repobeluga beluga_amcl beluga_benchmark beluga_example beluga_ros beluga_system_tests beluga_tools beluga_tutorial |
|
Package Summary
Tags | No category tags. |
Version | 2.0.2 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/Ekumen-OS/beluga.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-10-25 |
Dev Status | DEVELOPED |
CI status | 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
- Gerardo Puga
- Ivan Paunovic
- Nahuel Espinosa
Authors
Beluga Example
This package contains example launch files that demonstrate the use of Beluga-based nodes (e.g. Beluga AMCL) with external ROS bags or simulation software.
Examples
The following examples are easier to run in Beluga development containers.
-
Run an example application using a ROS bag.
For ROS 2 distributions, run:
cd /ws
source install/setup.bash
ros2 launch beluga_example perfect_odometry.launch.xml
For ROS 1 distributions, run:
cd /ws
source devel*/setup.bash
roslaunch beluga_example perfect_odometry.launch
-
Run an example application using a simulation and teleop controls.
For ROS 2 distributions, in two separate terminals run:
cd /ws
source install/setup.bash
ros2 launch beluga_example simulation.launch.xml
ros2 run teleop_twist_keyboard teleop_twist_keyboard
For ROS 1 distributions, in two separate terminals run:
cd /ws
source devel*/setup.bash
roslaunch beluga_example simulation.launch
rosrun teleop_twist_keyboard teleop_twist_keyboard
Note that this example uses [Flatland](https://flatland-simulator.readthedocs.io) for simulation.
A Flatland source installation is provisioned in development containers.
You will have to provision one yourself to run this elsewhere.
-
Launch a localization node manually.
For ROS 2 distributions, run:
ros2 launch beluga_example localization_launch.py use_composition:=True localization_params_file:=<PARAMS_PATH> localization_map:=<MAP_YAML_PATH>
For ROS 1 distributions, run:
roslaunch beluga_example localization.launch localization_params_file:=<PARAMS_PATH> localization_map:=<MAP_YAML_PATH>
The localization_params_file
argument can be ommited if the default AMCL parameters are compatible with the robot.
-
Use RViz to visualize the localization output.
For ROS 2 distributions, run:
rviz2 -d $(ros2 pkg prefix --share beluga_example)/rviz/amcl.ros2.rviz
For ROS 1 distributions, run:
rviz -d $(rospack find beluga_example)/rviz/amcl.ros.rviz
Quality of Service
In ROS 2, when subscribing to the output topics from localization, we recommend the following QoS settings:
Topic | Depth | History | Reliability | Durability |
---|---|---|---|---|
map |
5 | Keep last | Reliable | Transient local |
particle_cloud |
5 | Keep last | Best effort | Volatile |
pose |
5 | Keep last | Reliable | Volatile |
Changelog for package beluga_example
2.0.2 (2024-06-18)
- Change NDT sensor model default params (#397)
- Contributors: Ramiro Serra
2.0.1 (2024-05-24)
2.0.0 (2024-05-21)
- Add ROS 2 Jazzy to CI/CD and dev workflows (#378)
- Use [geometry_msgs::msg::PoseArray]{.title-ref} instead of [nav2_msgs::msg::ParticleCloud]{.title-ref} (#372)
- Remap [/turtlebot/scan]{.title-ref} to [/scan]{.title-ref} for Flatland (#373)
- Update more ROS version detection logic (#367)
- Add example for NDT sensor model in beluga_example (#360)
- Isolate Flatland dependency (#361)
- Unify Beluga documentation (#346)
- Make particle cloud message weights represent pdf (#260)
- Add updated performance report (#255)
- Fix [perfect_odometry]{.title-ref} rosbag (#238)
- Add cmake-format to pre-commit hooks (#243)
- Reduce simulated odometry noise (#241)
- Rename motion models in Beluga AMCL for ROS 1 (#242)
- Add ROS Noetic support to [beluga_example]{.title-ref} (#223)
- Refactor launch files (#211)
- Add new report after recent performance updates (#208)
- Fix small issues with plotter and update MessageFilter tolerance before generating new report
- Improve documentation and guidelines (#186)
- Initialize particle filter with last known estimate (#185)
- Update license year to 2023 (#175)
- Add beam sensor model (#160)
- Remove Git LFS from the repository (#162)
- Performance comparison with nav2_amcl (#142)
- Select mixin components at runtime (#126)
- Add top level-readme (#125)
- Update list of maintainers (#130)
- Add script to run benchmarks (#117)
- Add flake8 and pep257 to pre-commit hooks (#115)
- Broadcast map-to-odom transform (#81)
- Set initial pose from params (#105)
- More configurable launch files (#103)
- Make execution policy configurable (#100)
- Add profiling instructions (#96)
- Add max_beams parameter to [beluga_amcl]{.title-ref} (#84)
- Refactor laser_callback method (#89)
- Add launch params to select localization node (#83)
- Fix node clean up (#69)
- Extract common nodes from example launch files (#71)
- Add launch example with ROS bag (#65)
- Export AMCL as a loadable component (#63)
- Add reinitialize method to the particle filter (#51)
- Add initial pose subscriber (#45)
- Add lint step to CI (#37)
- Integrate differential drive motion model (#33)
- Fix robot geometry and reduce laser rate (#31)
- Add pose estimation publisher (#30)
- Implement likelihood estimation for particles (#25)
- Add likelihood field pre-computation (#24)
- Add flatland simulation (#23)
- Add [beluga_amcl]{.title-ref} package and example launch file (#21)
- Contributors: Gerardo Puga, Ivan Santiago Paunovic, Michel Hidalgo, Nahuel Espinosa, Olmer Garcia-Bedoya, Ramiro Serra
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
beluga_amcl | |
amcl | |
map_server | |
roslaunch | |
rviz | |
launch_ros | |
nav2_amcl | |
nav2_lifecycle_manager | |
nav2_map_server | |
rviz2 | |
teleop_twist_keyboard | |
launch | |
launch_testing |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
beluga_benchmark |
Launch files
- launch/simulation.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/utils/rosbag.launch
-
- start_paused [default: false] — Start the rosbag player in a paused state.
- playback_rate [default: 3.0] — Rate used to playback the bag.
- rosbag_path [default: $(find beluga_example)/bags/perfect_odometry.bag] — Path of the rosbag to playback.
- record_bag [default: false] — Whether to record a bagfile or not.
- topics_to_record [default: /tf /amcl_pose /pose /odometry/ground_truth] — Topics to record in a new bagfile.
- bagfile_output [default: ] — Destination bagfile to create, defaults to timestamped folder
- launch/utils/flatland.launch
- launch/utils/localization.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- localization_params_file [default: $(find beluga_example)/params/default.ros.yaml] — Parameters file to be used to run the localization node.
- localization_map [default: $(find beluga_example)/maps/turtlebot3_world.yaml] — Map YAML file to be used by the localization node.
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/utils/rviz.launch
-
- display_config [default: $(find beluga_example)/rviz/rviz.rviz] — A display config file (.rviz) to load.
- launch/perfect_odometry.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/ndt_simulation.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default_ndt.ros2.yaml]
- launch/ndt_replay_3d.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default_ndt_3d.ros2.yaml]
- localization_ndt_map
- bag_path
- launch/perfect_odometry.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default.ros2.yaml]
- launch/simulation.launch.xml
Messages
Services
Plugins
Recent questions tagged beluga_example at Robotics Stack Exchange
beluga_example package from beluga repobeluga beluga_amcl beluga_benchmark beluga_example beluga_ros beluga_system_tests beluga_tools beluga_tutorial |
|
Package Summary
Tags | No category tags. |
Version | 2.0.2 |
License | Apache License 2.0 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/Ekumen-OS/beluga.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2024-10-25 |
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
- Gerardo Puga
- Ivan Paunovic
- Nahuel Espinosa
Authors
Beluga Example
This package contains example launch files that demonstrate the use of Beluga-based nodes (e.g. Beluga AMCL) with external ROS bags or simulation software.
Examples
The following examples are easier to run in Beluga development containers.
-
Run an example application using a ROS bag.
For ROS 2 distributions, run:
cd /ws
source install/setup.bash
ros2 launch beluga_example perfect_odometry.launch.xml
For ROS 1 distributions, run:
cd /ws
source devel*/setup.bash
roslaunch beluga_example perfect_odometry.launch
-
Run an example application using a simulation and teleop controls.
For ROS 2 distributions, in two separate terminals run:
cd /ws
source install/setup.bash
ros2 launch beluga_example simulation.launch.xml
ros2 run teleop_twist_keyboard teleop_twist_keyboard
For ROS 1 distributions, in two separate terminals run:
cd /ws
source devel*/setup.bash
roslaunch beluga_example simulation.launch
rosrun teleop_twist_keyboard teleop_twist_keyboard
Note that this example uses [Flatland](https://flatland-simulator.readthedocs.io) for simulation.
A Flatland source installation is provisioned in development containers.
You will have to provision one yourself to run this elsewhere.
-
Launch a localization node manually.
For ROS 2 distributions, run:
ros2 launch beluga_example localization_launch.py use_composition:=True localization_params_file:=<PARAMS_PATH> localization_map:=<MAP_YAML_PATH>
For ROS 1 distributions, run:
roslaunch beluga_example localization.launch localization_params_file:=<PARAMS_PATH> localization_map:=<MAP_YAML_PATH>
The localization_params_file
argument can be ommited if the default AMCL parameters are compatible with the robot.
-
Use RViz to visualize the localization output.
For ROS 2 distributions, run:
rviz2 -d $(ros2 pkg prefix --share beluga_example)/rviz/amcl.ros2.rviz
For ROS 1 distributions, run:
rviz -d $(rospack find beluga_example)/rviz/amcl.ros.rviz
Quality of Service
In ROS 2, when subscribing to the output topics from localization, we recommend the following QoS settings:
Topic | Depth | History | Reliability | Durability |
---|---|---|---|---|
map |
5 | Keep last | Reliable | Transient local |
particle_cloud |
5 | Keep last | Best effort | Volatile |
pose |
5 | Keep last | Reliable | Volatile |
Changelog for package beluga_example
2.0.2 (2024-06-18)
- Change NDT sensor model default params (#397)
- Contributors: Ramiro Serra
2.0.1 (2024-05-24)
2.0.0 (2024-05-21)
- Add ROS 2 Jazzy to CI/CD and dev workflows (#378)
- Use [geometry_msgs::msg::PoseArray]{.title-ref} instead of [nav2_msgs::msg::ParticleCloud]{.title-ref} (#372)
- Remap [/turtlebot/scan]{.title-ref} to [/scan]{.title-ref} for Flatland (#373)
- Update more ROS version detection logic (#367)
- Add example for NDT sensor model in beluga_example (#360)
- Isolate Flatland dependency (#361)
- Unify Beluga documentation (#346)
- Make particle cloud message weights represent pdf (#260)
- Add updated performance report (#255)
- Fix [perfect_odometry]{.title-ref} rosbag (#238)
- Add cmake-format to pre-commit hooks (#243)
- Reduce simulated odometry noise (#241)
- Rename motion models in Beluga AMCL for ROS 1 (#242)
- Add ROS Noetic support to [beluga_example]{.title-ref} (#223)
- Refactor launch files (#211)
- Add new report after recent performance updates (#208)
- Fix small issues with plotter and update MessageFilter tolerance before generating new report
- Improve documentation and guidelines (#186)
- Initialize particle filter with last known estimate (#185)
- Update license year to 2023 (#175)
- Add beam sensor model (#160)
- Remove Git LFS from the repository (#162)
- Performance comparison with nav2_amcl (#142)
- Select mixin components at runtime (#126)
- Add top level-readme (#125)
- Update list of maintainers (#130)
- Add script to run benchmarks (#117)
- Add flake8 and pep257 to pre-commit hooks (#115)
- Broadcast map-to-odom transform (#81)
- Set initial pose from params (#105)
- More configurable launch files (#103)
- Make execution policy configurable (#100)
- Add profiling instructions (#96)
- Add max_beams parameter to [beluga_amcl]{.title-ref} (#84)
- Refactor laser_callback method (#89)
- Add launch params to select localization node (#83)
- Fix node clean up (#69)
- Extract common nodes from example launch files (#71)
- Add launch example with ROS bag (#65)
- Export AMCL as a loadable component (#63)
- Add reinitialize method to the particle filter (#51)
- Add initial pose subscriber (#45)
- Add lint step to CI (#37)
- Integrate differential drive motion model (#33)
- Fix robot geometry and reduce laser rate (#31)
- Add pose estimation publisher (#30)
- Implement likelihood estimation for particles (#25)
- Add likelihood field pre-computation (#24)
- Add flatland simulation (#23)
- Add [beluga_amcl]{.title-ref} package and example launch file (#21)
- Contributors: Gerardo Puga, Ivan Santiago Paunovic, Michel Hidalgo, Nahuel Espinosa, Olmer Garcia-Bedoya, Ramiro Serra
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake | |
beluga_amcl | |
amcl | |
map_server | |
roslaunch | |
rviz | |
launch_ros | |
nav2_amcl | |
nav2_lifecycle_manager | |
nav2_map_server | |
rviz2 | |
teleop_twist_keyboard | |
launch | |
launch_testing |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
beluga_benchmark |
Launch files
- launch/simulation.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/utils/rosbag.launch
-
- start_paused [default: false] — Start the rosbag player in a paused state.
- playback_rate [default: 3.0] — Rate used to playback the bag.
- rosbag_path [default: $(find beluga_example)/bags/perfect_odometry.bag] — Path of the rosbag to playback.
- record_bag [default: false] — Whether to record a bagfile or not.
- topics_to_record [default: /tf /amcl_pose /pose /odometry/ground_truth] — Topics to record in a new bagfile.
- bagfile_output [default: ] — Destination bagfile to create, defaults to timestamped folder
- launch/utils/flatland.launch
- launch/utils/localization.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- localization_params_file [default: $(find beluga_example)/params/default.ros.yaml] — Parameters file to be used to run the localization node.
- localization_map [default: $(find beluga_example)/maps/turtlebot3_world.yaml] — Map YAML file to be used by the localization node.
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/utils/rviz.launch
-
- display_config [default: $(find beluga_example)/rviz/rviz.rviz] — A display config file (.rviz) to load.
- launch/perfect_odometry.launch
-
- localization_package [default: beluga_amcl] — Package that provides the localization node to launch.
- localization_node [default: amcl_node] — Localization node to launch.
- localization_plugin [default: beluga_amcl/AmclNodelet] — Localization nodelet plugin to use if nodelets are enabled.
- localization_prefix [default: ] — Set of commands/arguments to precede the node command (e.g. 'timem --').
- use_nodelets [default: false] — Map YAML file to be used by the localization node.
- launch/ndt_simulation.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default_ndt.ros2.yaml]
- launch/ndt_replay_3d.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default_ndt_3d.ros2.yaml]
- localization_ndt_map
- bag_path
- launch/perfect_odometry.launch.xml
-
- localization_params_file [default: $(find-pkg-share beluga_example)/params/default.ros2.yaml]
- launch/simulation.launch.xml