Navigation ';未收到地图';在RVIZ中将自定义costmap2d图层用作插件时
我正在为你做一个变通办法 因为没有一个现有的costmap2d图层允许使用我用来创建自定义图层的全范围值(0-255)。因此,我只是使用并修改了interpretValue-函数,以便将值(由于使用的占用率网格介于-1和100之间)映射到图层的整个范围(应该是0-255)。我将我的自定义插件集成到了global_costmap_params.yaml中,系统似乎可以正确加载插件(至少没有进一步的错误或无法加载的警告) 问题是:在RVIZ中,全局costmap-部分抛出一条警告,上面写着“没有收到地图”(主题是“/move\u base/global\u costmap/costmap”,当静态\u层设置为插件时可以正常工作)。因此,我只能看到坐标系,但看不到地图 我正在使用ROS Melodic 插件源代码(occgrid\u to\u costmap\u layer.cpp): package.xml:Navigation ';未收到地图';在RVIZ中将自定义costmap2d图层用作插件时,navigation,ros,Navigation,Ros,我正在为你做一个变通办法 因为没有一个现有的costmap2d图层允许使用我用来创建自定义图层的全范围值(0-255)。因此,我只是使用并修改了interpretValue-函数,以便将值(由于使用的占用率网格介于-1和100之间)映射到图层的整个范围(应该是0-255)。我将我的自定义插件集成到了global_costmap_params.yaml中,系统似乎可以正确加载插件(至少没有进一步的错误或无法加载的警告) 问题是:在RVIZ中,全局costmap-部分抛出一条警告,上面写着“没有收到
cmake_minimum_required(VERSION 3.0.2)
project(custom_layers)
add_compile_options(-std=c++11)
find_package(catkin REQUIRED COMPONENTS
costmap_2d
dynamic_reconfigure
map_msgs
message_filters
nav_msgs
roscpp
pluginlib
tf2
)
include_directories(
include
${catkin_INCLUDE_DIRS}
)
add_library(occgrid_to_costmap_layer
src/occgrid_to_costmap_layer.cpp
)
<?xml version="1.0"?>
<package format="2">
<name>custom_layers</name>
<version>0.0.0</version>
<description>The custom_layers package</description>
<maintainer email="faps@todo.todo">faps</maintainer>
<license>TODO</license>
<buildtool_depend>catkin</buildtool_depend>
<build_depend>costmap_2d</build_depend>
<build_depend>dynamic_reconfigure</build_depend>
<build_depend>map_msgs</build_depend>
<build_depend>message_filters</build_depend>
<build_depend>nav_msgs</build_depend>
<build_depend>roscpp</build_depend>
<build_depend>pluginlib</build_depend>
<build_depend>tf2</build_depend>
<build_export_depend>costmap_2d</build_export_depend>
<build_export_depend>dynamic_reconfigure</build_export_depend>
<build_export_depend>map_msgs</build_export_depend>
<build_export_depend>message_filters</build_export_depend>
<build_export_depend>nav_msgs</build_export_depend>
<build_export_depend>roscpp</build_export_depend>
<build_export_depend>pluginlib</build_export_depend>
<build_export_depend>tf2</build_export_depend>
<exec_depend>costmap_2d</exec_depend>
<exec_depend>dynamic_reconfigure</exec_depend>
<exec_depend>map_msgs</exec_depend>
<exec_depend>message_filters</exec_depend>
<exec_depend>nav_msgs</exec_depend>
<exec_depend>roscpp</exec_depend>
<exec_depend>pluginlib</exec_depend>
<exec_depend>tf2</exec_depend>
<export>
<costmap_2d plugin="${prefix}/costmap_plugins.xml"/>
</export>
</package>
自定义图层
0.0.0
自定义图层包
同性恋者
待办事项
柳絮
costmap_2d
动态重配置
地图
消息过滤器
导航系统
roscpp
插件库
tf2
costmap_2d
动态重配置
地图
消息过滤器
导航系统
roscpp
插件库
tf2
costmap_2d
动态重配置
地图
消息过滤器
导航系统
roscpp
插件库
tf2
谢谢你的帮助 问题的原因与中的相同: 自定义层不知何故无法从global_costmap_params.yaml正确读取参数“map_topic”。(有没有办法解决这个问题?) 更改中的默认参数 参数(“映射主题”,映射主题,标准::字符串(“map”) 到 参数(“映射主题”,映射主题,标准::字符串(此处插入所需映射主题“”) 修正了这个问题 编辑:
cmake_minimum_required(VERSION 3.0.2)
project(custom_layers)
add_compile_options(-std=c++11)
find_package(catkin REQUIRED COMPONENTS
costmap_2d
dynamic_reconfigure
map_msgs
message_filters
nav_msgs
roscpp
pluginlib
tf2
)
include_directories(
include
${catkin_INCLUDE_DIRS}
)
add_library(occgrid_to_costmap_layer
src/occgrid_to_costmap_layer.cpp
)
<?xml version="1.0"?>
<package format="2">
<name>custom_layers</name>
<version>0.0.0</version>
<description>The custom_layers package</description>
<maintainer email="faps@todo.todo">faps</maintainer>
<license>TODO</license>
<buildtool_depend>catkin</buildtool_depend>
<build_depend>costmap_2d</build_depend>
<build_depend>dynamic_reconfigure</build_depend>
<build_depend>map_msgs</build_depend>
<build_depend>message_filters</build_depend>
<build_depend>nav_msgs</build_depend>
<build_depend>roscpp</build_depend>
<build_depend>pluginlib</build_depend>
<build_depend>tf2</build_depend>
<build_export_depend>costmap_2d</build_export_depend>
<build_export_depend>dynamic_reconfigure</build_export_depend>
<build_export_depend>map_msgs</build_export_depend>
<build_export_depend>message_filters</build_export_depend>
<build_export_depend>nav_msgs</build_export_depend>
<build_export_depend>roscpp</build_export_depend>
<build_export_depend>pluginlib</build_export_depend>
<build_export_depend>tf2</build_export_depend>
<exec_depend>costmap_2d</exec_depend>
<exec_depend>dynamic_reconfigure</exec_depend>
<exec_depend>map_msgs</exec_depend>
<exec_depend>message_filters</exec_depend>
<exec_depend>nav_msgs</exec_depend>
<exec_depend>roscpp</exec_depend>
<exec_depend>pluginlib</exec_depend>
<exec_depend>tf2</exec_depend>
<export>
<costmap_2d plugin="${prefix}/costmap_plugins.xml"/>
</export>
</package>
这很可能是由于名称空间问题造成的。为map_topic-param指定名称空间(参见上面链接的另一个线程)也可以解决这个问题