ROS机器人底盘(38)-laser_filters的使用(3)-屏蔽指定角度

前文ROS机器人底盘(34)-laser_filters的使用-屏蔽车体干扰(2)讲述使用laser_filters中的LaserScanBoxFilter插件屏蔽车体干扰,本文讲述使用LaserScanAngularBoundsFilter插件屏蔽指定角度的数据

模拟数据

使用ROS机器人底盘(30)-laser_filters的使用(1)中的例子模拟得到一个

scan.png

下面看下如何使用该包

angular_bounds_filter_example.launch

<launch>
<node pkg="laser_filters" type="scan_to_scan_filter_chain" output="screen" name="laser_filter">
      <rosparam command="load" file="$(find pibot_bringup)/params/angular_bounds_filter.yaml" />
</node>
</launch>

angular_bounds_filter.yaml

scan_filter_chain:
- name: angle
  type: laser_filters/LaserScanAngularBoundsFilter
  params:
    lower_angle: -0.7853981633974483
    upper_angle: 3.9269908169872414

使用该配置,我们屏蔽225°(3.9269908169872414=π/180*225)到-45°(-0.7853981633974483=π/180*(-45))的数据

image.png

改用LaserScanAngularBoundsFilterInPlace我们可以得到一个相反的方向

scan_filter_chain:
- name: angle
  type: laser_filters/LaserScanAngularBoundsFilterInPlace
  params:
    lower_angle: -0.7853981633974483
    upper_angle: 3.9269908169872414

推荐阅读更多精彩内容