turtlebot / turtlebot4

Turtlebot4 common packages.
Apache License 2.0
101 stars 45 forks source link

Problems with Navigation Stack #355

Closed CycleMark closed 7 months ago

CycleMark commented 8 months ago

Robot Model

TurtleBot4 Lite

ROS distro

galatic

Networking Configuration

Discovery

OS

Ubuntu 22.04

Built from source or installed?

Installed

Package version

Nav2

Type of issue

Navigation

Expected behaviour

I've been having multiple problems getting my TB4 to work reliably.

I've been able to create map reasonable well but when I run:

ros2 launch turtlebot4_navigation nav_bringup.launch.py slam:=off localization:=true map:=cabin_map.yaml

I get issues like: Failed to transform initial pose in time (Lookup would require extrapolation into the future. Requested time 1706750419.591249 but the latest data is at time 1706750419.546862, when looking up transform from frame [base_link] to frame [odom])

[controller_server-6] [INFO] [1706749067.275821642] [local_costmap.local_costmap]: Timed out waiting for transform from base_link to odom to become available, tf error: Invalid frame ID "odom" passed to canTransform argument target_frame - frame does not exist

[planner_server-6] [INFO] [1706748859.600925426] [global_costmap.global_costmap]: Timed out waiting for transform from base_link to map to become available, tf error: Invalid frame ID "map" passed to canTransform argument target_frame - frame does not exist

[amcl-3] [WARN] [1706771764.349073675] [amcl]: AMCL cannot publish a pose or update the transform. Please set the initial pose...

[amcl-3] [WARN] [1706771765.884734799] [amcl]: Ignoring initial pose in frame "base_footprint"; initial poses must be in the global frame, "map"

In the case above the map should have already have been published but isn't. . I can't set the initial pose because the map isn't publishing (It does sometimes but very infrequently)

Any of which mean I can't get the robot to autonomously navigate.

Initial question(s) are do you know what will be triggering these messages. I've run the following commands:

Ensured all services were stopped in the first place.

ros2 launch turtlebot4_bringup lite.launch.py ros2 launch turtlebot4_navigation nav_bringup.launch.py slam:=off localization:=true map:=cabin_map.yaml

Then sent the pose from rviz2 on my Linux machine. I know the to machines might be a few milliseconds out re: timing which would give rise to one of those issues. In that instance how can I set the transform time tolerance?

Thanks

Mark

Actual behaviour

Correct and reliable navigation

Error messages

No response

To Reproduce

ros2 launch turtlebot4_bringup lite.launch.py ros2 launch turtlebot4_navigation nav_bringup.launch.py slam:=off localization:=true map:=cabin_map.yaml

Other notes

No response

hilary-luo commented 8 months ago

@CycleMark Please revise your issue and provide the following fields:

Once you have done so then we can look into your issue.

CycleMark commented 8 months ago

Just updated - sorry I thought I'd done that when I logged the call

RustyCPR commented 7 months ago

Hi @CycleMark To address your question: how can I set the transform time tolerance? = Fix time syncing Our team reviewed this issue along with #370

To address both issues can you please update to ROS2 Humble and Use the discovery server network configuration. Setup NTP syncing from create3 to Pi (for NTP instructions see details here: https://github.com/turtlebot/turtlebot4/issues/216#issue-1797043215

Regards, Rusty

RustyCPR commented 7 months ago

Hello, This issue is being closed due to inactivity. If you are still experiencing the issue, feel free to reopen this ticket when you are ready to continue the troubleshooting process. Best Regards, Rusty