恢复行为清除了障碍层

问题描述 投票:0回答:1

我正在使用RP-Lidar / scan主题以及导航堆栈中的move_base。尽管已对障碍层进行了参数化以从/ scan主题获取LaserScan类型数据,但我收到的消息是“恢复行为将清除层'障碍'”。我想提到在/ scan主题和/ odom主题上的UniTest运行正常。因此,在我的RVIZ中,没有显示障碍物,规划者也没有考虑到障碍物以防止碰撞。为了清楚起见,这是我的常用配置文件:

footprint: [ [-0.15,-0.15], [0.15,-0.15], [0.15,0.15], [-0.15,0.15] ]
transform_tolerance: 0.5
map_type: costmap
obstacle_layer:
 enabled: true
 obstacle_range: 3.0
 raytrace_range: 3.5
 inflation_radius: 0.2
 track_unknown_space: false
 combination_method: 1
 observation_sources: laser_scan_sensor
 laser_scan_sensor: {sensor_frame: scanmatcher_frame, data_type: LaserScan, topic: /scan, marking: true, clearing: false}
inflation_layer:
  enabled:              true
  cost_scaling_factor:  1.0  
  inflation_radius:     0.2
obstacle_layer:
     enabled: true
     obstacle_range: 5.0
     raytrace_range: 1.0
     observation_sources: "/scan"
     observation_persistence: 0.0
     inf_is_valid: false
     scan:
       data_type: LaserScan
       topic: scan  
c++ navigation mapping ros robot
1个回答
0
投票

您的observation_sources应该是scan而不是"/scan"

Obstacle Layer wiki中所述:

以空格分隔的观测源名称列表。这定义下面定义的每个名称空间。每个source_name在observation_sources中定义一个名称空间,可以在其中命名参数设置:

〜// topic(字符串,默认值:源名称)

为此来源输入传感器数据的主题。默认为来源名称。

© www.soinside.com 2019 - 2024. All rights reserved.