Mapped obstacles
Introduction
This plug-in is dependent on the mapbase plug-in, and must be loaded after the mapbase plug-in, otherwise all links are not resolved.
The plugin are primarily used by the ulmspassable plug-in to correlate laser scanner obstacles with known fixed obstales.
General description
The method 'getObst' finds mapped lines near a box arount current positin. These lines are then converted to a local (odometry) coordinates based on a provided origin pose of the odometry coordinate system in map coordinates.
To enable the use of mapped obstacles to remove detected obstacles in the vicinity, the pass.ignoreIfFixed must be set to true, e.g.:
var pass.ignoreIfFixed=true
Mapped obstacles must also be passed to the obstacle pool (obst). This is done using a regular call to obst getFromMap. This requires that the plug-in mapobst and mapbase is loaded, e.g. this could be part of laser scanner server ulmsserver initialization:
# map database module load="mapbase.so.0" # load some maps mapbase graphload="./apple_cherry_graph.xml" mapbase mapload="./apple_cherry_map.xml" # load module to utilize mapped obstacles module load="aumapobst.so.0" var mapobst.marginSolidFactor=0.3 var mapobst.marginFluffyFactor=1.4 # and obstacle pool - part of aupassable.so.0 module load="ulmspassable.so.0" var pass.ignoreIfFixed=true # as obstacles are handled in odometry coordinates and mapped obstacles in map coordinates # mapped obstacles need to be reloaded regularly push t=3 cmd="obst getfrommap makeonly"