![]() |
homer_mapping package from homer_mapping repohomer_mapping |
Package Summary
Tags | No category tags. |
Version | 0.1.58 |
License | GPLv3 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://gitlab.uni-koblenz.de/robbie/homer_mapping.git |
VCS Type | git |
VCS Version | 0.1.58 |
Last Updated | 2019-07-31 |
Dev Status | MAINTAINED |
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
- Florian Polster
- Raphael Memmesheimer
Authors
- Malte Knauf
homer_mapping
Introduction
Das Package homer_mapping besteht aus einer gleichnamigen Node. Diese ist für die Lokalisierung und Kartierung des Roboters mit Hilfe der Odometrie des Roboters und eines Laserscanners zuständig. Das SLAM-Problem wird durch den Partikelfilter-Algorithmus gelöst. Die Node erwartet kontiniuierlich Odometrie-Werte und Laserdaten und verschickt in konstanten Abständen korrigierte Poseschätzungen über das Topic /pose und tf-Transformation /map -> /base_link. Zudem kann der Roboter sich auf einer vorher geladenen Karte lokalisieren, sowie eine aktuell erstellte Karte abgespeichert werden. Es besteht die Option, die Kartierung ein- oder auszuschalten. Beim Laden einer Karte wird die Kartierung automatisch ausgeschaltet.
Topics
Publisher
-
/pose (geometry_msgs/PoseStamped)
: Die aktuell ermittelte Pose relativ zu Karte (im Frame /map) des Roboters aus dem Partikelfilter. -
/homer_mapping/slam_map (nav_msgs/OccupancyGrid)
: Das aktuelle Karte des Roboters.
Subscriber
-
/odom (nav_msgs/Odometry)
: Die aktuellen Odometrie-Werte vom Roboter. Diese werden für die Partikelfilter benötigt./scan (sensor_msgs/LaserScan)
: Die aktuelle Lasermessung, die vom Partikelfilter benötigt wird. -
/homer_mapping/userdef_pose (geometry_msgs/Pose)
: Mit diesem Topic kann die die aktuell vom Partikelfilter berechnete Pose auf eine benutzerdefinierte gesetzt werden. Der Partikelfilter arbeitet nun mit dieser weiter. -
/homer_mapping/do_mapping (map_messages/DoMapping)
: Mit diesem Topic kann die Kartierung ein- oder ausgeschaltet werden. -
/map_manager/reset_maps (std_msgs/Empty)
: Hiermit kann die aktuelle Karte zurückgesetzt werden. -
/map_manager/loaded_map (nav_msgs/OccupancyGrid)
: Mit diesem Topic kann die aktuelle Karte durch eine andere (geladene) Karte ausgetauscht werden. -
/map_manager/mask_slam (nav_msgs/OccupancyGrid)
: Im OccupancyGrid dieses Topics stehen Informationen, welche Teile der aktuellen Karte durch andere Werte (frei oder belegt) ersetzt werden sollen.
Launch Files
-
homer_mapping.launch
: Dieses Launchfile lädt die Parameterdateihomer_mapping.yaml
und startet die Node homer_mapping sowie die Node map_manager im gleichnamigen Package. -
homer_mapping_rviz.launch
:`Dieses Launchfile hat die gleiche Funktionalität wie das obige, wobei es zusätzlich rviz startet.
Parameter
homer_mapping.yaml
-
/homer_mapping/size:
Size beschreibt die Größe einer Seite der Karte in Metern. Die Karte ist quadratisch -
/homer_mapping/resolution:
Resolution ist die Länge einer (quadratischen) Zelle der Karte in Metern -
/homer_mapping/backside_checking:
Wenn auf "true" gesetzt, wird verhindet, dass Vorder- und Rückseite einer dickeren Wand auf die gematcht werden. -
/homer_mapping/obstacle_borders:
Wenn auf "true" gesetzt, wird um eingetragene Hindernisse ein kleiner Rand unbekanntes Gebiet gelassen. -
/homer_mapping/measure_sampling_step:
Minimale Distanz in Metern, die zwischen zwei aufeinanderfolgenden Messpunkten im Laserscan vorhanden sein muss, um sie für die Poseberechnung zu verwenden -
/homer_mapping/laser_scanner/free_reading_distance:
Minimale Distanz in Metern, die als hindernissfrei angenommen wird, wenn der aktuelle Messpunkt fehlerhaft ist -
/particlefilter/error_values/rotation_error_rotating:
Rotationsfehler in Prozent, der beim Rotieren des Roboters auftritt -
/particlefilter/error_values/rotation_error_translating:
Rotationsfehler in Grad, der beim Fahren von einem Meter auftritt -
/particlefilter/error_values/translation_error_translating:
Translationsfehler in Prozent, der beim Geradeausfahren auftritt -
/particlefilter/error_values/translation_error_rotating:
Translationsfehler in Metern, der beim Rotieren von einem Grad auftritt -
/particlefilter/error_values/move_jitter_while_turning:
Streuung der neu berechneten Pose in Meter pro Grad Drehung -
/particlefilter/hyper_slamfilter/particlefilter_num:
Anzahl der Partikelfilter im Hyperpartikelfilter (ist standardmäßig auf 1 gesetzt) -
/particlefilter/particle_num:
Anzahl der Partikel in jedem Partikelfilter -
/particlefilter/max_rotation_per_second:
Maximale Rotation in Radiant pro Sekunde, die der Roboter sich drehen darf, ohne dass das Mapping ausgesetzt wird -
/particlefilter/wait_time:
Minimale Zeit, die zwischen zwei Mapping-Schritten verstrichen sein muss -
/particlefilter/update_min_move_angle:
Minimale Rotation in Grad, die durchgeführt werden muss, damit ein Partikelfilterschritt ausgeführt wird... -
/particlefilter/update_min_move_dist:
...oder minimale Distanz in Metern, die der Roboter geradeaus fährt... -
/particlefilter/max_update_interval:
...oder minimale Wartezeit, in der der Roboter still steht. -
/selflocalization/scatter_var_xy:
Streuung der Partikel in x/y-Richtung in Metern beim Setzen einer benutzerdefinierten Pose -
/selflocalization/scatter_var_theta:
Streuung der Ausrichtung der Partikel in Radiant beim Setzen einer benutzerdefinierten Pose
Changelog for package homer_mapping
0.1.58 (2019-07-31)
- Moved functions from robot.py to interfaces.py
- gitignore update
- Everything prepared for filling interfaces.py
- Added more const and calls by const reference where applicable; Added TODO file because of Qt dependency
- Added some const statements where applicable
- Added c++14 support and use of unique_ptr instead of raw pointer for HyperParticleFilter attribute in slam node
- clangformat file added and applied
- minor config formatting
- 0.1.57
- tiago parameter up
- 0.1.56
- tiago param up
- 0.1.55
- added explore_lite functionality
- 0.1.54
- scratchy
- Contributors: Daniel M
Wiki Tutorials
Source Tutorials
Package Dependencies
Deps | Name | |
---|---|---|
2 | roscpp | |
2 | sensor_msgs | |
2 | nav_msgs | |
1 | tf | |
1 | roslib | |
2 | homer_nav_libs | |
2 | homer_mapnav_msgs | |
1 | cmake_modules | |
1 | catkin | |
2 | std_msgs | |
1 | explore_lite |
System Dependencies
Dependant Packages
Launch files
- launch/homer_mapping.launch
-
- robot [default: blue_lisa]
- launch/explore.launch
Messages
Services
Plugins
Recent questions tagged homer_mapping at answers.ros.org
![]() |
homer_mapping package from homer_mapnav repohomer_map_manager homer_mapnav homer_mapnav_msgs homer_mapping homer_nav_libs homer_navigation |
Package Summary
Tags | No category tags. |
Version | 1.0.16 |
License | GPLv3 |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://gitlab.uni-koblenz.de/robbie/homer_mapnav.git |
VCS Type | git |
VCS Version | 1.0.16 |
Last Updated | 2016-02-18 |
Dev Status | UNMAINTAINED |
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
- Viktor Seib
- Raphael Memmesheimer
- Niklas Yann Wettengel
- Gregor Heuer
Authors
- Malte Knauf
homer_mapping
Introduction
Das Package homer_mapping besteht aus einer gleichnamigen Node. Diese ist für die Lokalisierung und Kartierung des Roboters mit Hilfe der Odometrie des Roboters und eines Laserscanners zuständig. Das SLAM-Problem wird durch den Partikelfilter-Algorithmus gelöst. Die Node erwartet kontiniuierlich Odometrie-Werte und Laserdaten und verschickt in konstanten Abständen korrigierte Poseschätzungen über das Topic /pose und tf-Transformation /map -> /base_link. Zudem kann der Roboter sich auf einer vorher geladenen Karte lokalisieren, sowie eine aktuell erstellte Karte abgespeichert werden. Es besteht die Option, die Kartierung ein- oder auszuschalten. Beim Laden einer Karte wird die Kartierung automatisch ausgeschaltet.
Topics
Publisher
-
/pose (geometry_msgs/PoseStamped)
: Die aktuell ermittelte Pose relativ zu Karte (im Frame /map) des Roboters aus dem Partikelfilter. -
/homer_mapping/slam_map (nav_msgs/OccupancyGrid)
: Das aktuelle Karte des Roboters.
Subscriber
-
/odom (nav_msgs/Odometry)
: Die aktuellen Odometrie-Werte vom Roboter. Diese werden für die Partikelfilter benötigt./scan (sensor_msgs/LaserScan)
: Die aktuelle Lasermessung, die vom Partikelfilter benötigt wird. -
/homer_mapping/userdef_pose (geometry_msgs/Pose)
: Mit diesem Topic kann die die aktuell vom Partikelfilter berechnete Pose auf eine benutzerdefinierte gesetzt werden. Der Partikelfilter arbeitet nun mit dieser weiter. -
/homer_mapping/do_mapping (map_messages/DoMapping)
: Mit diesem Topic kann die Kartierung ein- oder ausgeschaltet werden. -
/map_manager/reset_maps (std_msgs/Empty)
: Hiermit kann die aktuelle Karte zurückgesetzt werden. -
/map_manager/loaded_map (nav_msgs/OccupancyGrid)
: Mit diesem Topic kann die aktuelle Karte durch eine andere (geladene) Karte ausgetauscht werden. -
/map_manager/mask_slam (nav_msgs/OccupancyGrid)
: Im OccupancyGrid dieses Topics stehen Informationen, welche Teile der aktuellen Karte durch andere Werte (frei oder belegt) ersetzt werden sollen.
Launch Files
-
homer_mapping.launch
: Dieses Launchfile lädt die Parameterdateihomer_mapping.yaml
und startet die Node homer_mapping sowie die Node map_manager im gleichnamigen Package. -
homer_mapping_rviz.launch
:`Dieses Launchfile hat die gleiche Funktionalität wie das obige, wobei es zusätzlich rviz startet.
Parameter
homer_mapping.yaml
-
/homer_mapping/size:
Size beschreibt die Größe einer Seite der Karte in Metern. Die Karte ist quadratisch -
/homer_mapping/resolution:
Resolution ist die Länge einer (quadratischen) Zelle der Karte in Metern -
/homer_mapping/backside_checking:
Wenn auf "true" gesetzt, wird verhindet, dass Vorder- und Rückseite einer dickeren Wand auf die gematcht werden. -
/homer_mapping/obstacle_borders:
Wenn auf "true" gesetzt, wird um eingetragene Hindernisse ein kleiner Rand unbekanntes Gebiet gelassen. -
/homer_mapping/measure_sampling_step:
Minimale Distanz in Metern, die zwischen zwei aufeinanderfolgenden Messpunkten im Laserscan vorhanden sein muss, um sie für die Poseberechnung zu verwenden -
/homer_mapping/laser_scanner/free_reading_distance:
Minimale Distanz in Metern, die als hindernissfrei angenommen wird, wenn der aktuelle Messpunkt fehlerhaft ist -
/particlefilter/error_values/rotation_error_rotating:
Rotationsfehler in Prozent, der beim Rotieren des Roboters auftritt -
/particlefilter/error_values/rotation_error_translating:
Rotationsfehler in Grad, der beim Fahren von einem Meter auftritt -
/particlefilter/error_values/translation_error_translating:
Translationsfehler in Prozent, der beim Geradeausfahren auftritt -
/particlefilter/error_values/translation_error_rotating:
Translationsfehler in Metern, der beim Rotieren von einem Grad auftritt -
/particlefilter/error_values/move_jitter_while_turning:
Streuung der neu berechneten Pose in Meter pro Grad Drehung -
/particlefilter/hyper_slamfilter/particlefilter_num:
Anzahl der Partikelfilter im Hyperpartikelfilter (ist standardmäßig auf 1 gesetzt) -
/particlefilter/particle_num:
Anzahl der Partikel in jedem Partikelfilter -
/particlefilter/max_rotation_per_second:
Maximale Rotation in Radiant pro Sekunde, die der Roboter sich drehen darf, ohne dass das Mapping ausgesetzt wird -
/particlefilter/wait_time:
Minimale Zeit, die zwischen zwei Mapping-Schritten verstrichen sein muss -
/particlefilter/update_min_move_angle:
Minimale Rotation in Grad, die durchgeführt werden muss, damit ein Partikelfilterschritt ausgeführt wird... -
/particlefilter/update_min_move_dist:
...oder minimale Distanz in Metern, die der Roboter geradeaus fährt... -
/particlefilter/max_update_interval:
...oder minimale Wartezeit, in der der Roboter still steht. -
/selflocalization/scatter_var_xy:
Streuung der Partikel in x/y-Richtung in Metern beim Setzen einer benutzerdefinierten Pose -
/selflocalization/scatter_var_theta:
Streuung der Ausrichtung der Partikel in Radiant beim Setzen einer benutzerdefinierten Pose
Changelog for package homer_mapping
1.0.16 (2016-02-18)
1.0.15 (2015-12-05)
1.0.14 (2015-12-05)
- moved header files to include directory
- Contributors: Niklas Yann Wettengel
1.0.13 (2015-12-04)
1.0.12 (2015-12-03)
1.0.11 (2015-12-02)
- added std_srvs dependency
- fixed libraries
- Contributors: Niklas Yann Wettengel
1.0.10 (2015-12-02)
1.0.9 (2015-12-01)
1.0.8 (2015-11-30)
- added qt4 build dependency
- Contributors: Niklas Yann Wettengel
1.0.7 (2015-11-28)
- updated changelog
- updated catkin_depends
- Contributors: Niklas Yann Wettengel
- updated catkin_depends
- Contributors: Niklas Yann Wettengel
1.0.6 (2015-11-27)
- removed env HOMER_DIR from CMakeLists.txt
- Contributors: Niklas Yann Wettengel
1.0.5 (2015-11-24)
1.0.4 (2015-11-20)
1.0.3 (2015-11-20)
1.0.2 (2015-11-20)
- added cmake_modules as build dependency in package.xml
- added Maintainers
- Contributors: Niklas Yann Wettengel
1.0.1 (2015-09-08)
- init
- Contributors: Raphael Memmesheimer
Wiki Tutorials
Source Tutorials
Package Dependencies
Deps | Name | |
---|---|---|
2 | roscpp | |
2 | sensor_msgs | |
2 | nav_msgs | |
1 | tf | |
1 | roslib | |
2 | homer_nav_libs | |
1 | cmake_modules | |
2 | homer_mapnav_msgs | |
1 | catkin | |
2 | std_msgs |
System Dependencies
Name |
---|
libqt4 |
libqt4-dev |
libqtgui4 |
Dependant Packages
Name | Repo | Deps |
---|---|---|
homer_mapnav | gitlab-uni-koblenz-robbie-homer_mapnav |