尝试在 rviz2 中查看我的 RPLidar A2 扫描时出现以下错误。它位于差动驱动机器人上,使用 Odrive 控制,ros2 控制使用 Articulated Robotics。我在一台笔记本电脑上运行一切,没有单独的机器,在 ROS2 简陋。 (顺便说一句,当我在 RPI 上运行激光雷达和 odrive 时,错误会更频繁)。
在查看 base_link 帧时显示完美,但 Odom 会出现问题。
错误:
[rviz2-4] [ERROR] [1681401743.264000589] [rviz2]: Lookup would require extrapolation into the future. Requested time 1681401743.323050 but the latest data is at time 1681401743.259460, when looking up transform from frame [laser_frame] to frame [map]
我根据这个 link 更改了 RPlidar pkg,Lookup 需要在同一台机器上推断到未来。它间歇性地工作,但它经常失去转换(我经常得到错误)。
我尝试更改 controller.yaml 中的 update_rate 以用于 ros2 控制,但问题越来越严重。
我设法解决了这个问题,我将 rplidar 文件 (rplidar_node.cpp) 中的发布速率从 1 毫秒更改为 100 毫秒,现在一切正常。更改应该是文件中的硬编码