执心27 2025-04-01 19:51 采纳率: 0%
浏览 106

faster-lio和ego-planner联合仿真,无人机无法避障

在跑faster-lio+ego-planner联合仿真时,ego_planner_node已经订阅到了mapping发布的/Odometry和/cloud_registered,目标点话题通过在rviz设定2D nav goal得到,但是终端一直提示no odom!,仿真中的无人机也不能实现避障(可以飞向目标点,但直接撞墙),可能是什么原因导致的呢?

  • 写回答

4条回答 默认 最新

  • 阿里嘎多学长 2025-04-01 19:51
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    问题解答

    你遇到了使用faster-lio和ego-planner联合仿真时,无人机无法避障的问题。从你的描述中,我可以看到,你已经订阅了mapping发布的/Odometry和/cloud_registered话题,并且目标点话题通过rviz发布。

    可能的解决方案:

    1. 检查ego_planner_node的配置文件,确保它正确地订阅了/Odometry和/cloud_registered话题。
    2. 检查faster-lio的配置文件,确保它正确地发布了/Odometry和/cloud_registered话题。
    3. 检查rviz的配置文件,确保它正确地订阅了目标点话题。
    4. 检查无人机的避障算法是否正确地工作。如果使用的是faster-lio的避障算法,可以尝试使用ego-planner的避障算法来比较。
    5. 检查无人机的感知器是否正确地工作。如果使用的是激光雷达,可以尝试使用其他感知器来比较。

    如果以上解决方案都不能解决问题,可以提供更多的日志信息和代码 snippet,以便更好地 debug。

    代码示例

    以下是一个简单的示例代码,用于订阅/Odometry和/cloud_registered话题:

    import rospy
    from sensor_msgs.msg import Odometry
    from nav_msgs.msg import OccupancyGrid
    
    def callback_odom(msg):
        # 处理 Odometry 信息
    
    def callback_cloud_registered(msg):
        # 处理 cloud_registered 信息
    
    rospy.init_node('ego_planner_node')
    odom_sub = rospy.Subscriber('/odom', Odometry, callback_odom)
    cloud_sub = rospy.Subscriber('/cloud_registered', OccupancyGrid, callback_cloud_registered)
    rospy.spin()
    

    语言

    本回答使用的语言是中文。

    评论

报告相同问题?

问题事件

  • 创建了问题 4月1日