Component Short Description: The SmartMapperGridMap provides mapping services based on occupancy grid maps.
The SmartMapperGridMap provides mapping services based on occupancy grid maps. Laser scans are taken for building a current and a longterm map.
The current map represents the latest environment of the robot. It can be preoccupied with grids of the longterm map and can be used for path planning e.g. with SmartPlannerBreadthFirstSearch. It contains either occupied cells or free cells (binary). An optional obstacle growing can be applied to the current map.
The longterm map holds cell values from 0 to 255. Values from 0 to 127 denote the traversability where 0 is completely free. Values from 128 to 255 are special values: Obstacles are marked with 128, cells occupied by obstacle growing with 129 and undeletable grids are marked with 130. The cell values can be accumulated over time to represent the environment over a longer period.
Both grid maps can be saved to XPM and XML and loaded from XML files.
| Property Name | Property Value | Property Description |
|---|---|---|
| SpdxLicense | LGPL-2.0-or-later | https://spdx.org/licenses/LGPL-2.0-or-later.html |
| TechnologyReadinessLevel | TRL5 | |
| Homepage | http://servicerobotik-ulm.de/components | |
| Supplier | Servicerobotics Ulm | |
| Purpose | Mapping | |
| MarketName | Grid-Map Provider Component |
Documentation:
Documentation:
Documentation:
Documentation:
Documentation:
| Attribute Name | Attribute Type | Attribute Value | Attribute Description |
|---|---|---|---|
| interval | UInt32 | 10 | Specify the interval for considering laser scans to build the current map. The component will process every nth laser scan. The actual interval for building the current map thus depends on the value of this setting and on the rate of the laser scan for pushing new scans. This can be used to slow down the building of the current map. |
| growing | String | "star16" | Obstacle growing mode. Obstacle can be grown in circles with 8 (circle8) or 16 (circle16) (circle40) (circle32) occupied cells around the obstacle or as a star of 8 (star8) or 16 (star16) occupied cells around the obstacle. Obstacle growing can also be deactivated with value no. |
| xsize | UInt32 | 20000 | Initial value for x size of current map. [mm]. |
| ysize | UInt32 | 20000 | Initial value for y size of current map. [mm]. |
| xpos | Int32 | -10000 | Initial value for x offset of current map relative to world. [mm]. |
| ypos | Int32 | -10000 | Initial value for y offset of current map relative to world. [mm]. |
| id | UInt32 | 0 | Initial id of the current map. Can later be set with parameter CURPARAMETER. The id ?id will be assigned to the current map to synchronize components, for example with SmartPlannerBreadthFirstSearch and SmartCdlServer. |
Documentation:
| Attribute Name | Attribute Type | Attribute Value | Attribute Description |
|---|---|---|---|
| kalman | Int32 | 100 | Adaption rate for kalman filter weighting. [0-255]. |
| xsize | UInt32 | 20000 | Initial value for x size of longterm map. [mm]. |
| ysize | UInt32 | 20000 | Initial value for y size of longterm map. [mm] |
| xpos | Int32 | -10000 | Initial value for x offset of longterm map relative to world. [mm] |
| ypos | Int32 | -10000 | Initial value for y offset of longterm map relative to world. [mm] |
| id | UInt32 | 0 | Initial id of the map. Can later be set with LTMPARAMETER. The id ?id will be assigned to the longterm map for identification. |
Documentation:
| Attribute Name | Attribute Type | Attribute Value | Attribute Description |
|---|---|---|---|
| cellsize | UInt32 | 50 | Specify the size of the cells in the grid maps. [mm]. |
| connectLaser | Boolean | true | To use mapper as map server only set to false |
| verbose | Boolean | false | Print debug messages? |
| mapDataDir | String | "data/maps/" |
Property: active = false
Documentation:
Drop the current map and create a new map with free cells of dimensions [mm] ?xsize and ?ysize. The map is initialized with an offset [mm] ?xoff and ?yoff relative to world coordinates. The cellsize used for this map as well as the obstacle growing type are specified in the ini-configuration. The id ?id will be assigned to the map to synchronize components, for example with SmartPlannerBreadthFirstSearch and SmartCdlServer. Using this parameter is only allowed in neutral state.
Property: active = false
Documentation:
Drop the longterm map and create a new map with free cells of dimensions [mm] ?xsize and ?ysize. The map is initialized at offset [mm] ?xoff and ?yoff. The cellsize used for this map is specified in the ini-configuration. The id ?id will be assigned to the map to identify it. Using this parameter is only allowed in neutral state.
Property: active = false
Documentation:
Clear the longterm map and initialize the cells with value ?value.
Property: active = false
Documentation:
Save the current map to XML file test-cur-?number.xml.
Property: active = false
Documentation:
Load the current map from XML file test-cur-?number.xml. Using this parameter is only allowed in neutral state.
Property: active = false
Documentation:
Load the current map from longterm map. The long term map is thresholded to meet the binary representation of the current map. See parameter CURLTM for information on the threshold. Using this parameter is only allowed in neutral state.
Property: active = false
Documentation:
Save the current map to XPM file test-cur-?number.xpm.
Property: active = false
Documentation:
Save the longterm map to XML file test-ltm-.xml.
Property: active = false
Documentation:
Load the longterm map from XML file test-ltm-.xml. Using this parameter is only allowed in neutral state.
Property: active = false
Documentation:
Save the longterm map to XPM file test-ltm-.xpm.
Property: active = false
Documentation:
Property: active = false
Documentation:
Property: active = false
Documentation:
Property: active = false
Documentation:
Property: active = false
Documentation:
Documentation:
Configures whether the current map is preoccupied from the longterm map. Possible values for ?preoccupy: ENABLE will cause the component to load values from the longterm map in each cycle to the current map by applying the threshold ?thresh to decide on the occupancy of the cell. If DISABLE, the current map is not preoccupied. A threshold is applied to preoccupy the binary current map: The cells of the new current map will be marked free if the value from the long term map is smaller than the threshold ?thresh. The cells will be marked as occupied if the long term map value is above the threshold.
| Attribute Name | Attribute Type | Attribute Value | Attribute Description |
|---|---|---|---|
| preoccupation | InlineEnumeration | DISABLE | |
| threshold | Int32 | 20 |
Documentation:
Change the mode ?mode of building the current map: ACCUMULATE will add new occupied cells from the laser scan while EMPTY will clear the map in each cycle before adding occupied cells from the laser scan.
| Attribute Name | Attribute Type | Attribute Value | Attribute Description |
|---|---|---|---|
| mapmode | InlineEnumeration | ACCUMULATE |
