首页 > 其他 > 详细

navigation 加图层,导致全局规划读取不到参数,全局规划不可用问题。

时间:2021-06-18 23:55:40      阅读:30      评论:0      收藏:0      [点我收藏+]

1.yaml 加图层,yaml文件输入容易出错,最好复制格式修改内容,手动输入英文输入法输入。

  plugins:
     - {name: static_layer,            type: "costmap_2d::StaticLayer"}
     - {name: virtuals,        type: "costmap_2d::VirtualLayer"}
     - {name: obstacles,        type: "costmap_2d::ObstacleLayer"}
     - {name: inflation_layer,         type: "costmap_2d::InflationLayer"}

 

2.加图层导致整个地图的异常?在这里困住了两天,没发现原因,主要是由于加了图层之后,costmap_2d_ros可以读取到plugins 参数了。原先yaml 文件中没有plugins 参数。

因此其他图层包括障碍物图层的ros::NodeHandle  namespace 命名空间发生变化。可以运行时打印出来看看。使用nh.getNamespace() 函数获取。可以发现和之前不一样了。

解决方法:1. 在costmap_2d_ros图层初始化时候去掉/pname,保证名字一致。

plugin->initialize(layered_costmap_, name + "/" + pname, &tf_);

 方法2. 修改读取不到的配置参数前缀:加图层名字,这样也可以读取到参数。

observation_sources: scan
  scan: {sensor_frame: base_scan, data_type: LaserScan, topic: scan, marking: true, clearing: true}

改为:
obstacles: 
  observation_sources: scan
  scan: {sensor_frame: base_scan, data_type: LaserScan, topic: scan, marking: true, clearing: true}

 

navigation 加图层,导致全局规划读取不到参数,全局规划不可用问题。

原文:https://www.cnblogs.com/wbscpp/p/14900951.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!