robot_pose_ekf功能包使用说明

手写不易,转载请注明出处。

一,ros wiki 链接:http://wiki.ros.org/robot_pose_ekf

 wiki 官方介绍翻译: 这个功能包是用来估计机器人的3D姿态的,基于从不同传感器测量得到的部分位姿信息。它使用带有六个维度(三轴位置,三轴角度)的拓展卡尔曼滤波去融合来自编码器(里程计),陀螺仪及视觉里程计的数据。它主要的目的是针对不同的传感器提供一种松耦合的融合算法。

二,怎么使用这个功能包

 一个默认的EKF启动文件可以在功能包目录下面找到。 这个launch文件包括了一些配置参数:

 1,频率:滤波器的发布频率,说明一下较高的频率会在相同时间间隔给你更多的机器人pose信息,但是这不会增加每个机器人位姿的估算准确度。

2,超时时间配置参数:如果一个传感器不工作了,那么这个滤波器在放弃这个传感器继续工作之前应该等待多久。

3,里程计,IMU,视觉里程计 是否输入的配置。

这些参数可以在启动文件中进行配置。像下面这样:

 <launch>
  <node pkg="robot_pose_ekf" type="robot_pose_ekf" name="robot_pose_ekf">
    <param name="output_frame" value="odom"/>
    <param name="freq" value="30.0"/>
    <param name="sensor_timeout" value="1.0"/>
    <param name="odom_used" value="true"/>
    <param name="imu_used" value="true"/>
    <param name="vo_used" value="true"/>
    <param name="debug" value="false"/>
    <param name="self_diagnose" value="false"/>
  </node>
 </launch>

三,下载和运行

 $ rosdep install robot_pose_ekf
 $ roscd robot_pose_ekf
 $ rosmake

注意:如果rosdep安装不成功,可以改为sudo apt-get install ros-melodic-robot-pose-ekf

运行:

 $ roslaunch robot_pose_ekf.launch

四,节点

   1,这个节点使用了拓展卡尔曼滤波器进行机器人位姿的测量

  2,订阅的话题

     odom:

    imu:

     vo:

 

 

 未完待续。。。。。。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值