ethz-asl / terrain-navigation

Repository for Safe Low Altitude Navigation in steep terrain for fixed-wing Aerial Vehicles
https://ieeexplore.ieee.org/abstract/document/10443502
BSD 3-Clause "New" or "Revised" License
87 stars 10 forks source link

ros2: add curvature target marker #50

Closed srmainwaring closed 4 months ago

srmainwaring commented 4 months ago

Add a marker to display the curvature target in addition to the position target. The length of the marker is the inverse curvature or turn radius. On straight segments the marker length is set to a small number (1.0E-6).

Figure: Curvature marker shown as red arrow. The path following is from an experimental implementation in ArduPilot, and needs some further tuning. curvature_marker

Jaeyoung-Lim commented 4 months ago

@srmainwaring The closest point calculation still seems off on the last green segment. Do you know why the closest point is not on the path?

srmainwaring commented 4 months ago

The closest point calculation still seems off on the last green segment. Do you know why the closest point is not on the path?

Didn't spot that, but you're correct. Not sure. Will need to look into that. Maybe the tolerance needs to be tighter with a smaller turn radius?

Jaeyoung-Lim commented 4 months ago

@srmainwaring Is this visible when we keep the minimum turn radius as before? Wondering if there is something hardcoded in hiding...

srmainwaring commented 4 months ago

@Jaeyoung-Lim, No. When I set the turn radius back to 80m I don't see the position target cutting across the turn. The behaviour is not linked to this PR, but the marker does help highlight the issue.