robot_pose_ekf运行报错问题解决

举报
kobesdu 发表于 2022/01/29 15:40:31 2022/01/29
【摘要】 Robot Pose EKF 包用于根据来自不同来源的(部分)位姿测量来估计机器人的 3D 位姿。它使用带有 6D 模型(3D 位置和 3D 方向)的扩展卡尔曼滤波器来结合车轮里程计、IMU 传感器和视觉里程计的测量结果。基本思想是提供与不同传感器的松散耦合集成,其中传感器信号作为 ROS 消息接收。    EKF node的缺省启动文件位于robot_pose_ekf包中,文件中有许多配置...

Robot Pose EKF 包用于根据来自不同来源的(部分)位姿测量来估计机器人的 3D 位姿。它使用带有 6D 模型(3D 位置和 3D 方向)的扩展卡尔曼滤波器来结合车轮里程计、IMU 传感器和视觉里程计的测量结果。基本思想是提供与不同传感器的松散耦合集成,其中传感器信号作为 ROS 消息接收。

    EKF node的缺省启动文件位于robot_pose_ekf包中,文件中有许多配置参数:

具体在ros官网有详细介绍 wiki.ros.org/robot_pose_…

而我在运行功能包的时候报错如下

image.png

后来发现是ekf包版本不同导致的

原因是我在官网下载的ekf源码包不对应,虽然已经选择了对应的ros版本,依然会显示报错。

因此采用不再把robot_pose_ekf包的源码放到我自己工程的方法,

而是把他用ros命令安装的方法,此时安装的ekf包是正确的版本,可以满足使用。只是按照的不是ekf功能包的源码文件,因此需要在下载功能包以后,再把功能包相应路径下的launch文件的的配置内容按照使用情况进行修改(ekf的launch文件中设置了ekf的输入和输出对应的话题,因此需要进行相应修改)

首先,删掉我在我源码包中的ekf功能包

rm -r robot_pose_ekf

然后用ros命令安装此功能包

sudo apt-get install ros-kinetic-robot-pose-ekf

同时,robot_pose_ekf下的launch文件进行对应的修改

1 进入ekf功能包的目录下

roscd robot_pose_ekf/

2 查看 目录下的文件

ls

3 修改launch文件内容

sudo gedit robot_pose_ekf.launch

再次编译我的功能包,不会在报错



【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。