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 new coordinate system.
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"