![]() |
extended_map_server package from extended_map_server repoextended_map_server extended_mapping_msgs |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 0.1.0 |
License | Apache-2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/navigation-gridmap/extended_map_server.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2023-05-23 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Iván López Broceño
Authors
Extended Map Server
The extended_map_server
package is based on the map_saver
package for Nav2 and allows the possibility of incorporating elavation information through grid_map
and 3D obstacles information through octomap
when saving and loading maps.
To do that, extended_map_server
preserves the previos funcionality but uses 2 different services to serve and load the map given by the extended_mapping_msgs
package: extended_mapping_msgs/srv/ExtendedSaveMap
and extended_mapping_msgs/srv/ExtendedLoadMap
Map Server
The Map Server
provides maps to the rest of the Nav2 system using both topic and
service interfaces. Map server will expose maps on the node bringup, but can also change maps using a load_map
service during run-time, as well as save maps using a save_map
server.
See its Configuration Guide Page for additional parameter descriptions.
Architecture
In contrast to the ROS1 navigation map server, the nav2 map server will support a variety of map types, and thus some aspects of the original code have been refactored to support this new extensible framework.
Currently map server divides into tree parts:
map_server
map_saver
-
map_io
library
map_server
is responsible for loading the map from a file through command-line interface
or by using service requests.
map_saver
saves the map into a file. Like map_server
, it has an ability to save the map from
command-line or by calling a service.
map_io
- is a map input-output library. The library is designed to be an object-independent
in order to allow easily save/load map from external code just by calling necessary function.
This library is also used by map_loader
and map_saver
to work. Currently it contains
OccupancyGrid saving/loading functions moved from the rest part of map server code.
It is designed to be replaceable for a new IO library (e.g. for library with new map encoding
method or any other library supporting costmaps, multifloor maps, etc…).
CLI-usage
Map Server
The Map Server
is a composable ROS2 node. By default, there is a map_server
executable that
instances one of these nodes, but it is possible to compose multiple map server nodes into
a single process, if desired.
The command line for the map server executable is slightly different that it was with ROS1. With ROS1, one invoked the map server and passing the map YAML filename, like this:
$ map_server map.yaml
Where the YAML file specified contained the various map metadata, such as:
image: testmap.png
resolution: 0.1
origin: [2.0, 3.0, 1.0]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
The Nav2 software retains the map YAML file format from Nav1, but uses the ROS2 parameter mechanism to get the name of the YAML file to use. This effectively introduces a level of indirection to get the map yaml filename. For example, for a node named ‘map_server’, the parameter file would look like this:
# map_server_params.yaml
map_server:
ros__parameters:
yaml_filename: "map.yaml"
One can invoke the map service executable directly, passing the params file on the command line, like this:
$ map_server __params:=map_server_params.yaml
There is also possibility of having multiple map server nodes in a single process, where the parameters file would separate the parameters by node name, like this:
# combined_params.yaml
map_server1:
ros__parameters:
yaml_filename: "some_map.yaml"
map_server2:
ros__parameters:
yaml_filename: "another_map.yaml"
Then, one would invoke this process with the params file that contains the parameters for both nodes:
``` $ process_with_multiple_map_servers __params:=combined_params.yaml
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
graphicsmagick |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged extended_map_server at Robotics Stack Exchange
![]() |
extended_map_server package from extended_map_server repoextended_map_server extended_mapping_msgs |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 0.1.0 |
License | Apache-2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/navigation-gridmap/extended_map_server.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2023-05-23 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Iván López Broceño
Authors
Extended Map Server
The extended_map_server
package is based on the map_saver
package for Nav2 and allows the possibility of incorporating elavation information through grid_map
and 3D obstacles information through octomap
when saving and loading maps.
To do that, extended_map_server
preserves the previos funcionality but uses 2 different services to serve and load the map given by the extended_mapping_msgs
package: extended_mapping_msgs/srv/ExtendedSaveMap
and extended_mapping_msgs/srv/ExtendedLoadMap
Map Server
The Map Server
provides maps to the rest of the Nav2 system using both topic and
service interfaces. Map server will expose maps on the node bringup, but can also change maps using a load_map
service during run-time, as well as save maps using a save_map
server.
See its Configuration Guide Page for additional parameter descriptions.
Architecture
In contrast to the ROS1 navigation map server, the nav2 map server will support a variety of map types, and thus some aspects of the original code have been refactored to support this new extensible framework.
Currently map server divides into tree parts:
map_server
map_saver
-
map_io
library
map_server
is responsible for loading the map from a file through command-line interface
or by using service requests.
map_saver
saves the map into a file. Like map_server
, it has an ability to save the map from
command-line or by calling a service.
map_io
- is a map input-output library. The library is designed to be an object-independent
in order to allow easily save/load map from external code just by calling necessary function.
This library is also used by map_loader
and map_saver
to work. Currently it contains
OccupancyGrid saving/loading functions moved from the rest part of map server code.
It is designed to be replaceable for a new IO library (e.g. for library with new map encoding
method or any other library supporting costmaps, multifloor maps, etc…).
CLI-usage
Map Server
The Map Server
is a composable ROS2 node. By default, there is a map_server
executable that
instances one of these nodes, but it is possible to compose multiple map server nodes into
a single process, if desired.
The command line for the map server executable is slightly different that it was with ROS1. With ROS1, one invoked the map server and passing the map YAML filename, like this:
$ map_server map.yaml
Where the YAML file specified contained the various map metadata, such as:
image: testmap.png
resolution: 0.1
origin: [2.0, 3.0, 1.0]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
The Nav2 software retains the map YAML file format from Nav1, but uses the ROS2 parameter mechanism to get the name of the YAML file to use. This effectively introduces a level of indirection to get the map yaml filename. For example, for a node named ‘map_server’, the parameter file would look like this:
# map_server_params.yaml
map_server:
ros__parameters:
yaml_filename: "map.yaml"
One can invoke the map service executable directly, passing the params file on the command line, like this:
$ map_server __params:=map_server_params.yaml
There is also possibility of having multiple map server nodes in a single process, where the parameters file would separate the parameters by node name, like this:
# combined_params.yaml
map_server1:
ros__parameters:
yaml_filename: "some_map.yaml"
map_server2:
ros__parameters:
yaml_filename: "another_map.yaml"
Then, one would invoke this process with the params file that contains the parameters for both nodes:
``` $ process_with_multiple_map_servers __params:=combined_params.yaml
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
graphicsmagick |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged extended_map_server at Robotics Stack Exchange
![]() |
extended_map_server package from extended_map_server repoextended_map_server extended_mapping_msgs |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 0.1.0 |
License | Apache-2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/navigation-gridmap/extended_map_server.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2023-05-23 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Iván López Broceño
Authors
Extended Map Server
The extended_map_server
package is based on the map_saver
package for Nav2 and allows the possibility of incorporating elavation information through grid_map
and 3D obstacles information through octomap
when saving and loading maps.
To do that, extended_map_server
preserves the previos funcionality but uses 2 different services to serve and load the map given by the extended_mapping_msgs
package: extended_mapping_msgs/srv/ExtendedSaveMap
and extended_mapping_msgs/srv/ExtendedLoadMap
Map Server
The Map Server
provides maps to the rest of the Nav2 system using both topic and
service interfaces. Map server will expose maps on the node bringup, but can also change maps using a load_map
service during run-time, as well as save maps using a save_map
server.
See its Configuration Guide Page for additional parameter descriptions.
Architecture
In contrast to the ROS1 navigation map server, the nav2 map server will support a variety of map types, and thus some aspects of the original code have been refactored to support this new extensible framework.
Currently map server divides into tree parts:
map_server
map_saver
-
map_io
library
map_server
is responsible for loading the map from a file through command-line interface
or by using service requests.
map_saver
saves the map into a file. Like map_server
, it has an ability to save the map from
command-line or by calling a service.
map_io
- is a map input-output library. The library is designed to be an object-independent
in order to allow easily save/load map from external code just by calling necessary function.
This library is also used by map_loader
and map_saver
to work. Currently it contains
OccupancyGrid saving/loading functions moved from the rest part of map server code.
It is designed to be replaceable for a new IO library (e.g. for library with new map encoding
method or any other library supporting costmaps, multifloor maps, etc…).
CLI-usage
Map Server
The Map Server
is a composable ROS2 node. By default, there is a map_server
executable that
instances one of these nodes, but it is possible to compose multiple map server nodes into
a single process, if desired.
The command line for the map server executable is slightly different that it was with ROS1. With ROS1, one invoked the map server and passing the map YAML filename, like this:
$ map_server map.yaml
Where the YAML file specified contained the various map metadata, such as:
image: testmap.png
resolution: 0.1
origin: [2.0, 3.0, 1.0]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
The Nav2 software retains the map YAML file format from Nav1, but uses the ROS2 parameter mechanism to get the name of the YAML file to use. This effectively introduces a level of indirection to get the map yaml filename. For example, for a node named ‘map_server’, the parameter file would look like this:
# map_server_params.yaml
map_server:
ros__parameters:
yaml_filename: "map.yaml"
One can invoke the map service executable directly, passing the params file on the command line, like this:
$ map_server __params:=map_server_params.yaml
There is also possibility of having multiple map server nodes in a single process, where the parameters file would separate the parameters by node name, like this:
# combined_params.yaml
map_server1:
ros__parameters:
yaml_filename: "some_map.yaml"
map_server2:
ros__parameters:
yaml_filename: "another_map.yaml"
Then, one would invoke this process with the params file that contains the parameters for both nodes:
``` $ process_with_multiple_map_servers __params:=combined_params.yaml
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
graphicsmagick |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged extended_map_server at Robotics Stack Exchange
![]() |
extended_map_server package from extended_map_server repoextended_map_server extended_mapping_msgs |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 0.1.0 |
License | Apache-2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/navigation-gridmap/extended_map_server.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2023-05-23 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Iván López Broceño
Authors
Extended Map Server
The extended_map_server
package is based on the map_saver
package for Nav2 and allows the possibility of incorporating elavation information through grid_map
and 3D obstacles information through octomap
when saving and loading maps.
To do that, extended_map_server
preserves the previos funcionality but uses 2 different services to serve and load the map given by the extended_mapping_msgs
package: extended_mapping_msgs/srv/ExtendedSaveMap
and extended_mapping_msgs/srv/ExtendedLoadMap
Map Server
The Map Server
provides maps to the rest of the Nav2 system using both topic and
service interfaces. Map server will expose maps on the node bringup, but can also change maps using a load_map
service during run-time, as well as save maps using a save_map
server.
See its Configuration Guide Page for additional parameter descriptions.
Architecture
In contrast to the ROS1 navigation map server, the nav2 map server will support a variety of map types, and thus some aspects of the original code have been refactored to support this new extensible framework.
Currently map server divides into tree parts:
map_server
map_saver
-
map_io
library
map_server
is responsible for loading the map from a file through command-line interface
or by using service requests.
map_saver
saves the map into a file. Like map_server
, it has an ability to save the map from
command-line or by calling a service.
map_io
- is a map input-output library. The library is designed to be an object-independent
in order to allow easily save/load map from external code just by calling necessary function.
This library is also used by map_loader
and map_saver
to work. Currently it contains
OccupancyGrid saving/loading functions moved from the rest part of map server code.
It is designed to be replaceable for a new IO library (e.g. for library with new map encoding
method or any other library supporting costmaps, multifloor maps, etc…).
CLI-usage
Map Server
The Map Server
is a composable ROS2 node. By default, there is a map_server
executable that
instances one of these nodes, but it is possible to compose multiple map server nodes into
a single process, if desired.
The command line for the map server executable is slightly different that it was with ROS1. With ROS1, one invoked the map server and passing the map YAML filename, like this:
$ map_server map.yaml
Where the YAML file specified contained the various map metadata, such as:
image: testmap.png
resolution: 0.1
origin: [2.0, 3.0, 1.0]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
The Nav2 software retains the map YAML file format from Nav1, but uses the ROS2 parameter mechanism to get the name of the YAML file to use. This effectively introduces a level of indirection to get the map yaml filename. For example, for a node named ‘map_server’, the parameter file would look like this:
# map_server_params.yaml
map_server:
ros__parameters:
yaml_filename: "map.yaml"
One can invoke the map service executable directly, passing the params file on the command line, like this:
$ map_server __params:=map_server_params.yaml
There is also possibility of having multiple map server nodes in a single process, where the parameters file would separate the parameters by node name, like this:
# combined_params.yaml
map_server1:
ros__parameters:
yaml_filename: "some_map.yaml"
map_server2:
ros__parameters:
yaml_filename: "another_map.yaml"
Then, one would invoke this process with the params file that contains the parameters for both nodes:
``` $ process_with_multiple_map_servers __params:=combined_params.yaml
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
graphicsmagick |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged extended_map_server at Robotics Stack Exchange
![]() |
extended_map_server package from extended_map_server repoextended_map_server extended_mapping_msgs |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 0.1.0 |
License | Apache-2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/navigation-gridmap/extended_map_server.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2023-05-23 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Iván López Broceño
Authors
Extended Map Server
The extended_map_server
package is based on the map_saver
package for Nav2 and allows the possibility of incorporating elavation information through grid_map
and 3D obstacles information through octomap
when saving and loading maps.
To do that, extended_map_server
preserves the previos funcionality but uses 2 different services to serve and load the map given by the extended_mapping_msgs
package: extended_mapping_msgs/srv/ExtendedSaveMap
and extended_mapping_msgs/srv/ExtendedLoadMap
Map Server
The Map Server
provides maps to the rest of the Nav2 system using both topic and
service interfaces. Map server will expose maps on the node bringup, but can also change maps using a load_map
service during run-time, as well as save maps using a save_map
server.
See its Configuration Guide Page for additional parameter descriptions.
Architecture
In contrast to the ROS1 navigation map server, the nav2 map server will support a variety of map types, and thus some aspects of the original code have been refactored to support this new extensible framework.
Currently map server divides into tree parts:
map_server
map_saver
-
map_io
library
map_server
is responsible for loading the map from a file through command-line interface
or by using service requests.
map_saver
saves the map into a file. Like map_server
, it has an ability to save the map from
command-line or by calling a service.
map_io
- is a map input-output library. The library is designed to be an object-independent
in order to allow easily save/load map from external code just by calling necessary function.
This library is also used by map_loader
and map_saver
to work. Currently it contains
OccupancyGrid saving/loading functions moved from the rest part of map server code.
It is designed to be replaceable for a new IO library (e.g. for library with new map encoding
method or any other library supporting costmaps, multifloor maps, etc…).
CLI-usage
Map Server
The Map Server
is a composable ROS2 node. By default, there is a map_server
executable that
instances one of these nodes, but it is possible to compose multiple map server nodes into
a single process, if desired.
The command line for the map server executable is slightly different that it was with ROS1. With ROS1, one invoked the map server and passing the map YAML filename, like this:
$ map_server map.yaml
Where the YAML file specified contained the various map metadata, such as:
image: testmap.png
resolution: 0.1
origin: [2.0, 3.0, 1.0]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
The Nav2 software retains the map YAML file format from Nav1, but uses the ROS2 parameter mechanism to get the name of the YAML file to use. This effectively introduces a level of indirection to get the map yaml filename. For example, for a node named ‘map_server’, the parameter file would look like this:
# map_server_params.yaml
map_server:
ros__parameters:
yaml_filename: "map.yaml"
One can invoke the map service executable directly, passing the params file on the command line, like this:
$ map_server __params:=map_server_params.yaml
There is also possibility of having multiple map server nodes in a single process, where the parameters file would separate the parameters by node name, like this:
# combined_params.yaml
map_server1:
ros__parameters:
yaml_filename: "some_map.yaml"
map_server2:
ros__parameters:
yaml_filename: "another_map.yaml"
Then, one would invoke this process with the params file that contains the parameters for both nodes:
``` $ process_with_multiple_map_servers __params:=combined_params.yaml
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
graphicsmagick |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged extended_map_server at Robotics Stack Exchange
![]() |
extended_map_server package from extended_map_server repoextended_map_server extended_mapping_msgs |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 0.1.0 |
License | Apache-2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/navigation-gridmap/extended_map_server.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2023-05-23 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Iván López Broceño
Authors
Extended Map Server
The extended_map_server
package is based on the map_saver
package for Nav2 and allows the possibility of incorporating elavation information through grid_map
and 3D obstacles information through octomap
when saving and loading maps.
To do that, extended_map_server
preserves the previos funcionality but uses 2 different services to serve and load the map given by the extended_mapping_msgs
package: extended_mapping_msgs/srv/ExtendedSaveMap
and extended_mapping_msgs/srv/ExtendedLoadMap
Map Server
The Map Server
provides maps to the rest of the Nav2 system using both topic and
service interfaces. Map server will expose maps on the node bringup, but can also change maps using a load_map
service during run-time, as well as save maps using a save_map
server.
See its Configuration Guide Page for additional parameter descriptions.
Architecture
In contrast to the ROS1 navigation map server, the nav2 map server will support a variety of map types, and thus some aspects of the original code have been refactored to support this new extensible framework.
Currently map server divides into tree parts:
map_server
map_saver
-
map_io
library
map_server
is responsible for loading the map from a file through command-line interface
or by using service requests.
map_saver
saves the map into a file. Like map_server
, it has an ability to save the map from
command-line or by calling a service.
map_io
- is a map input-output library. The library is designed to be an object-independent
in order to allow easily save/load map from external code just by calling necessary function.
This library is also used by map_loader
and map_saver
to work. Currently it contains
OccupancyGrid saving/loading functions moved from the rest part of map server code.
It is designed to be replaceable for a new IO library (e.g. for library with new map encoding
method or any other library supporting costmaps, multifloor maps, etc…).
CLI-usage
Map Server
The Map Server
is a composable ROS2 node. By default, there is a map_server
executable that
instances one of these nodes, but it is possible to compose multiple map server nodes into
a single process, if desired.
The command line for the map server executable is slightly different that it was with ROS1. With ROS1, one invoked the map server and passing the map YAML filename, like this:
$ map_server map.yaml
Where the YAML file specified contained the various map metadata, such as:
image: testmap.png
resolution: 0.1
origin: [2.0, 3.0, 1.0]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
The Nav2 software retains the map YAML file format from Nav1, but uses the ROS2 parameter mechanism to get the name of the YAML file to use. This effectively introduces a level of indirection to get the map yaml filename. For example, for a node named ‘map_server’, the parameter file would look like this:
# map_server_params.yaml
map_server:
ros__parameters:
yaml_filename: "map.yaml"
One can invoke the map service executable directly, passing the params file on the command line, like this:
$ map_server __params:=map_server_params.yaml
There is also possibility of having multiple map server nodes in a single process, where the parameters file would separate the parameters by node name, like this:
# combined_params.yaml
map_server1:
ros__parameters:
yaml_filename: "some_map.yaml"
map_server2:
ros__parameters:
yaml_filename: "another_map.yaml"
Then, one would invoke this process with the params file that contains the parameters for both nodes:
``` $ process_with_multiple_map_servers __params:=combined_params.yaml
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
graphicsmagick |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged extended_map_server at Robotics Stack Exchange
![]() |
extended_map_server package from extended_map_server repoextended_map_server extended_mapping_msgs |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 0.1.0 |
License | Apache-2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/navigation-gridmap/extended_map_server.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2023-05-23 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Iván López Broceño
Authors
Extended Map Server
The extended_map_server
package is based on the map_saver
package for Nav2 and allows the possibility of incorporating elavation information through grid_map
and 3D obstacles information through octomap
when saving and loading maps.
To do that, extended_map_server
preserves the previos funcionality but uses 2 different services to serve and load the map given by the extended_mapping_msgs
package: extended_mapping_msgs/srv/ExtendedSaveMap
and extended_mapping_msgs/srv/ExtendedLoadMap
Map Server
The Map Server
provides maps to the rest of the Nav2 system using both topic and
service interfaces. Map server will expose maps on the node bringup, but can also change maps using a load_map
service during run-time, as well as save maps using a save_map
server.
See its Configuration Guide Page for additional parameter descriptions.
Architecture
In contrast to the ROS1 navigation map server, the nav2 map server will support a variety of map types, and thus some aspects of the original code have been refactored to support this new extensible framework.
Currently map server divides into tree parts:
map_server
map_saver
-
map_io
library
map_server
is responsible for loading the map from a file through command-line interface
or by using service requests.
map_saver
saves the map into a file. Like map_server
, it has an ability to save the map from
command-line or by calling a service.
map_io
- is a map input-output library. The library is designed to be an object-independent
in order to allow easily save/load map from external code just by calling necessary function.
This library is also used by map_loader
and map_saver
to work. Currently it contains
OccupancyGrid saving/loading functions moved from the rest part of map server code.
It is designed to be replaceable for a new IO library (e.g. for library with new map encoding
method or any other library supporting costmaps, multifloor maps, etc…).
CLI-usage
Map Server
The Map Server
is a composable ROS2 node. By default, there is a map_server
executable that
instances one of these nodes, but it is possible to compose multiple map server nodes into
a single process, if desired.
The command line for the map server executable is slightly different that it was with ROS1. With ROS1, one invoked the map server and passing the map YAML filename, like this:
$ map_server map.yaml
Where the YAML file specified contained the various map metadata, such as:
image: testmap.png
resolution: 0.1
origin: [2.0, 3.0, 1.0]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
The Nav2 software retains the map YAML file format from Nav1, but uses the ROS2 parameter mechanism to get the name of the YAML file to use. This effectively introduces a level of indirection to get the map yaml filename. For example, for a node named ‘map_server’, the parameter file would look like this:
# map_server_params.yaml
map_server:
ros__parameters:
yaml_filename: "map.yaml"
One can invoke the map service executable directly, passing the params file on the command line, like this:
$ map_server __params:=map_server_params.yaml
There is also possibility of having multiple map server nodes in a single process, where the parameters file would separate the parameters by node name, like this:
# combined_params.yaml
map_server1:
ros__parameters:
yaml_filename: "some_map.yaml"
map_server2:
ros__parameters:
yaml_filename: "another_map.yaml"
Then, one would invoke this process with the params file that contains the parameters for both nodes:
``` $ process_with_multiple_map_servers __params:=combined_params.yaml
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
graphicsmagick |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged extended_map_server at Robotics Stack Exchange
![]() |
extended_map_server package from extended_map_server repoextended_map_server extended_mapping_msgs |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 0.1.0 |
License | Apache-2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/navigation-gridmap/extended_map_server.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2023-05-23 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Iván López Broceño
Authors
Extended Map Server
The extended_map_server
package is based on the map_saver
package for Nav2 and allows the possibility of incorporating elavation information through grid_map
and 3D obstacles information through octomap
when saving and loading maps.
To do that, extended_map_server
preserves the previos funcionality but uses 2 different services to serve and load the map given by the extended_mapping_msgs
package: extended_mapping_msgs/srv/ExtendedSaveMap
and extended_mapping_msgs/srv/ExtendedLoadMap
Map Server
The Map Server
provides maps to the rest of the Nav2 system using both topic and
service interfaces. Map server will expose maps on the node bringup, but can also change maps using a load_map
service during run-time, as well as save maps using a save_map
server.
See its Configuration Guide Page for additional parameter descriptions.
Architecture
In contrast to the ROS1 navigation map server, the nav2 map server will support a variety of map types, and thus some aspects of the original code have been refactored to support this new extensible framework.
Currently map server divides into tree parts:
map_server
map_saver
-
map_io
library
map_server
is responsible for loading the map from a file through command-line interface
or by using service requests.
map_saver
saves the map into a file. Like map_server
, it has an ability to save the map from
command-line or by calling a service.
map_io
- is a map input-output library. The library is designed to be an object-independent
in order to allow easily save/load map from external code just by calling necessary function.
This library is also used by map_loader
and map_saver
to work. Currently it contains
OccupancyGrid saving/loading functions moved from the rest part of map server code.
It is designed to be replaceable for a new IO library (e.g. for library with new map encoding
method or any other library supporting costmaps, multifloor maps, etc…).
CLI-usage
Map Server
The Map Server
is a composable ROS2 node. By default, there is a map_server
executable that
instances one of these nodes, but it is possible to compose multiple map server nodes into
a single process, if desired.
The command line for the map server executable is slightly different that it was with ROS1. With ROS1, one invoked the map server and passing the map YAML filename, like this:
$ map_server map.yaml
Where the YAML file specified contained the various map metadata, such as:
image: testmap.png
resolution: 0.1
origin: [2.0, 3.0, 1.0]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
The Nav2 software retains the map YAML file format from Nav1, but uses the ROS2 parameter mechanism to get the name of the YAML file to use. This effectively introduces a level of indirection to get the map yaml filename. For example, for a node named ‘map_server’, the parameter file would look like this:
# map_server_params.yaml
map_server:
ros__parameters:
yaml_filename: "map.yaml"
One can invoke the map service executable directly, passing the params file on the command line, like this:
$ map_server __params:=map_server_params.yaml
There is also possibility of having multiple map server nodes in a single process, where the parameters file would separate the parameters by node name, like this:
# combined_params.yaml
map_server1:
ros__parameters:
yaml_filename: "some_map.yaml"
map_server2:
ros__parameters:
yaml_filename: "another_map.yaml"
Then, one would invoke this process with the params file that contains the parameters for both nodes:
``` $ process_with_multiple_map_servers __params:=combined_params.yaml
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
graphicsmagick |
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged extended_map_server at Robotics Stack Exchange
![]() |
extended_map_server package from extended_map_server repoextended_map_server extended_mapping_msgs |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 0.1.0 |
License | Apache-2.0 |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Description | |
Checkout URI | https://github.com/navigation-gridmap/extended_map_server.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2023-05-23 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Iván López Broceño
Authors
Extended Map Server
The extended_map_server
package is based on the map_saver
package for Nav2 and allows the possibility of incorporating elavation information through grid_map
and 3D obstacles information through octomap
when saving and loading maps.
To do that, extended_map_server
preserves the previos funcionality but uses 2 different services to serve and load the map given by the extended_mapping_msgs
package: extended_mapping_msgs/srv/ExtendedSaveMap
and extended_mapping_msgs/srv/ExtendedLoadMap
Map Server
The Map Server
provides maps to the rest of the Nav2 system using both topic and
service interfaces. Map server will expose maps on the node bringup, but can also change maps using a load_map
service during run-time, as well as save maps using a save_map
server.
See its Configuration Guide Page for additional parameter descriptions.
Architecture
In contrast to the ROS1 navigation map server, the nav2 map server will support a variety of map types, and thus some aspects of the original code have been refactored to support this new extensible framework.
Currently map server divides into tree parts:
map_server
map_saver
-
map_io
library
map_server
is responsible for loading the map from a file through command-line interface
or by using service requests.
map_saver
saves the map into a file. Like map_server
, it has an ability to save the map from
command-line or by calling a service.
map_io
- is a map input-output library. The library is designed to be an object-independent
in order to allow easily save/load map from external code just by calling necessary function.
This library is also used by map_loader
and map_saver
to work. Currently it contains
OccupancyGrid saving/loading functions moved from the rest part of map server code.
It is designed to be replaceable for a new IO library (e.g. for library with new map encoding
method or any other library supporting costmaps, multifloor maps, etc…).
CLI-usage
Map Server
The Map Server
is a composable ROS2 node. By default, there is a map_server
executable that
instances one of these nodes, but it is possible to compose multiple map server nodes into
a single process, if desired.
The command line for the map server executable is slightly different that it was with ROS1. With ROS1, one invoked the map server and passing the map YAML filename, like this:
$ map_server map.yaml
Where the YAML file specified contained the various map metadata, such as:
image: testmap.png
resolution: 0.1
origin: [2.0, 3.0, 1.0]
negate: 0
occupied_thresh: 0.65
free_thresh: 0.196
The Nav2 software retains the map YAML file format from Nav1, but uses the ROS2 parameter mechanism to get the name of the YAML file to use. This effectively introduces a level of indirection to get the map yaml filename. For example, for a node named ‘map_server’, the parameter file would look like this:
# map_server_params.yaml
map_server:
ros__parameters:
yaml_filename: "map.yaml"
One can invoke the map service executable directly, passing the params file on the command line, like this:
$ map_server __params:=map_server_params.yaml
There is also possibility of having multiple map server nodes in a single process, where the parameters file would separate the parameters by node name, like this:
# combined_params.yaml
map_server1:
ros__parameters:
yaml_filename: "some_map.yaml"
map_server2:
ros__parameters:
yaml_filename: "another_map.yaml"
Then, one would invoke this process with the params file that contains the parameters for both nodes:
``` $ process_with_multiple_map_servers __params:=combined_params.yaml
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Name |
---|
graphicsmagick |