|
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_servermap_saver-
map_iolibrary
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_servermap_saver-
map_iolibrary
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_servermap_saver-
map_iolibrary
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_servermap_saver-
map_iolibrary
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_servermap_saver-
map_iolibrary
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_servermap_saver-
map_iolibrary
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_servermap_saver-
map_iolibrary
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_servermap_saver-
map_iolibrary
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_servermap_saver-
map_iolibrary
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 |