如何在 hector_localization 堆栈中设置参数以融合 IMU 和气压计(压力传感器)?
Posted
技术标签:
【中文标题】如何在 hector_localization 堆栈中设置参数以融合 IMU 和气压计(压力传感器)?【英文标题】:How to set up parameter in hector_localization stack to fuse IMU and Barometer (Pressure sensor)? 【发布时间】:2021-11-21 10:28:19 【问题描述】:我正在检查hector_localization 堆栈,它提供了机器人或平台的完整 6DOF 位姿。它使用各种传感器源,这些传感器源使用扩展卡尔曼滤波器进行融合。惯性测量单元 (IMU) 的加速度和角速率用作主要测量值,也支持气压传感器。我检查了这是这个的发射
<?xml version="1.0"?>
<launch>
<node pkg="hector_pose_estimation" type="pose_estimation" name="hector_pose_estimation" />
<node pkg="rviz" type="rviz" name="hector_pose_estimation_rviz" args="-d $(find hector_pose_estimation)/rviz_cfg/hector_pose_estimation.rviz" />
</launch>
但找不到设置hector_pose_estimation
节点和启动文件以获取IMU 和压力(气压计)数据作为输入的热方式。有什么帮助吗?
谢谢
【问题讨论】:
【参考方案1】:您必须将 hector 期望的输入主题重新映射到您的系统正在输出的主题。查看this page 获取完整的主题和参数列表。最后,您的启动文件应该看起来像这样。请注意,您需要输入自己的主题名称。
<?xml version="1.0"?>
<launch>
<node pkg="hector_pose_estimation" type="pose_estimation" name="hector_pose_estimation">
<remap from="raw_imu" to="/your_imu_topic" />
<remap from="pressure_height" to="/your_barometric_topic" />
</node>
<node pkg="rviz" type="rviz" name="hector_pose_estimation_rviz" args="-d $(find hector_pose_estimation)/rviz_cfg/hector_pose_estimation.rviz" />
</launch>
【讨论】:
太棒了,谢谢检查。您提供的链接是关于 rosbag 的。看不到有关主题和参数的任何内容。请您再检查一下链接吗? @Bob9710 那是我的错,我同时回答了rosbag
的问题。链接现在正确。
是的。现在好了。谢谢
我在使用这个启动文件<?xml version="1.0"?> <launch> <node pkg="hector_pose_estimation" type="pose_estimation" name="hector_pose_estimation"> <remap from="raw_imu" to="/rexrov2/imu" /> <remap from="pressure_height" to="/rexrov2/pressure" /> </node> </launch>
时遇到了这个错误我得到的错误是`客户端[/hector_pose_estimation]希望主题/rexrov2/pressure有数据类型/md5sum [geometry_msgs/PointStamped/c63aecb41bfdfd6b7e1fac37c7cbe7bf],但我们的版本有 [sensor_msgs/FluidPressure` 与我的压力传感器一起使用这么热?
我修复了压力问题,但现在 TF 不正确。如何将 imu 数据融合到 hector_pose_estimation 中 /height 主题的 tf 和 z 值?我打开一个新问题。请问可以查吗?以上是关于如何在 hector_localization 堆栈中设置参数以融合 IMU 和气压计(压力传感器)?的主要内容,如果未能解决你的问题,请参考以下文章