Skip to content

Incorrect time_increment in LaserScan Topic Published by Webots Lidar Causes Cartographer Mapping Drift #1047

@LiuXianBang

Description

@LiuXianBang

Title: Incorrect time_increment in LaserScan Topic Published by Webots Lidar Causes Cartographer Mapping Drift

Description:

When using Webots to publish Lidar data, the LaserScan topic is published correctly and initially works well for mapping in Cartographer. Below is my Lidar configuration:

<device reference="lidar" type="Lidar">
    <ros>
        <enabled>true</enabled>
        <updateRate>5</updateRate>
        <topicName>/scan</topicName>
        <alwaysOn>true</alwaysOn>
        <frameName>laser</frameName>
    </ros>
</device>

However, after running for some time, Cartographer logs the following error:

[cartographer logger]: W1006 07:09:36.000000 84738 sensor_bridge.cpp:211] Ignored subdivision of a LaserScan message from sensor scan because previous subdivision time 638953025761062191 is not before current subdivision time 638953025761062191

Once this error occurs, the mapping process fails due to significant drift.

Problem Analysis:

After reviewing related resources, such as the following GitHub Issues:

It appears that the issue is likely caused by an incorrect setting of the time_increment parameter in the sensor_msgs/LaserScan message. According to the ROS documentation (sensor_msgs/LaserScan Documentation), time_increment is a critical parameter that represents the time interval between laser scan points. However, there seems to be no direct way to configure or fix the time_increment parameter in Webots' Lidar settings.

I hope the Webots development team can provide guidance on correctly setting the time_increment parameter in Webots, or confirm if this is a bug in Webots

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions