Matthias Grob
c522a8b15a
Compute RTL time and react if lower than flight time
...
- Compute RTL time also during RTL
- Calculate correct altitude when finding destination
2021-11-24 14:10:24 +01:00
RomanBapst
514cf12c57
addressed review comments
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
3bd114bf9f
RTL: if vehicle is a VTOL in hover, always consider all safe landing points
...
Unless there is already a mission landing in progress,
in that case stay on the mission landing if RTL_TYPE
isn't set to closest.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
f4f9b8ebf2
RTL: replace deny_mission_landing logic by getDestinationTypeMissionLanding()
...
The rtl instance decides on destination of RTL, and Navigator then switches to
mission mode if required.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
dd987c08a5
RTL: rename enum names for RTLType
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
a012f01dbc
Navigator: clean up get_rtl_type()
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
Silvan Fuhrer
8dc6d5f208
RTL: set destination type to mission landing also in MC
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 17:58:21 +03:00
mcsauder
9301288d1f
Add parameter and logic to set RTL heading mode.
2021-10-22 09:28:30 +02:00
RomanBapst
93075ad5e8
rtl: fixed computation of return altitude if destination is not home
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-09-05 10:26:24 +02:00
Daniel Agar
883624d915
lib/geo: move from ecl
2021-07-15 10:38:24 -04:00
Beat Küng
ab701ae502
rtl: switch to events
2021-07-07 21:38:09 -04:00
David Jablonski
ed7a5314d8
rtl: head towards home location after descend
2021-02-22 16:37:08 +01:00
David Jablonski
aeccb621c5
rtl: added loiter radius for descending
2021-02-22 16:37:08 +01:00
Silvan Fuhrer
0ea8104344
select single system-wide wind estimate message (current best)
...
- publish wind estimate only from EKF, and wind speeds from airspeed selector to new separate topic (airspeed_wind)
- rename message wind_estimate to wind
- publish wind from currently used ekf instance (ekf2selector)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-02-20 13:15:01 -05:00
Daniel Agar
ce552a3364
navigator: RTL don't get invalid params
2021-02-13 00:34:56 +01:00
Silvan Fuhrer
acbada73dd
RTL: VTOL: do the land delay loitering (RTL_LAND_DELAY) in fixed-wing flight
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-01-29 15:46:33 +03:00
Julian Kent
af8d178ae5
Fix spurious RTL triggers
...
Two sources:
1. global to local conversion was sometimes giving issues, so do everything in global
2. on startup the RTL didn't check if the home position was valid before processing it
2021-01-18 16:26:53 +01:00
Julian Kent
5500a84b6a
Add timestamp to RTL message
2021-01-18 16:26:53 +01:00
Julian Kent
67082ccb2b
Test the vehicle type parameter usage
2021-01-18 16:26:53 +01:00
Julian Kent
100c64c790
Test the navigator side, and fix another trig edge case
2021-01-18 16:26:53 +01:00
Julian Kent
a736ba2435
Minor tweak in wind handling
2021-01-18 16:26:53 +01:00
Julian Kent
e847ef1a4d
Add trig tests for wind calculations, and fix bugs / edge cases
2021-01-18 16:26:53 +01:00
Julian Kent
7482413005
Add Range-based RTL
2021-01-18 16:26:53 +01:00
Silvan Fuhrer
92634e7549
RTL: during climb, set NAV_CMD_WAYPOINT for RW modes, NAV_CMD_LOITER_TO_ALT for FW
...
Do not use LOITER_TO_ALT for rotary wing mode as it would then always climb to
at least MIS_LTRMIN_ALT, even if current clib altitude is below
(e.g. RTL immediately after take off)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-01-04 11:58:16 +01:00
Silvan Fuhrer
55a1d090a1
RTL: use NAV_CMD_LOITER_TO_ALT for Climb state
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-01-04 11:58:16 +01:00
RomanBapst
b63f756745
navigator: don't execute land pattern if vtol in rotary wing mode
...
- if vtol and in rotary wing mode then don't execute the mission landing
because it's designed to be flow as a fixed wing
- if vtol and in rotary wing mode and mission land is available then fly directly
to landing point and don't go home!
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-01-04 11:58:16 +01:00
RomanBapst
b63f202b3c
various fixed for bugs encountered during testing
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-01-04 11:58:16 +01:00
RomanBapst
cfb3cdc82f
rtl: use math namespace
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-01-04 11:58:16 +01:00
RomanBapst
94d3ab28ee
rtl: fixed computation of return altitude when mission landing is available
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-01-04 11:58:16 +01:00
RomanBapst
a4a03e86da
mission: be more intelligent about saying that we are on a mission landing
...
- previously the decision of being on a landing pattern was taken by just
looking at the current mission index. However, even if the current mission
index indicates a landing pattern the vehicle could be at an arbitrary location, far
from being established on the pattern.
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-01-04 11:58:16 +01:00
RomanBapst
29c3ce6d5d
reworked RTL cone implementation
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-01-04 11:58:16 +01:00
RomanBapst
dad5ce1e41
rtl: set proper acceptance radius for move_to_land item
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-01-04 11:58:16 +01:00
RomanBapst
6ff95ae645
RTL: implement proper RTL sequence for VTOL
...
- descend to RTL descend altitude
- transition
- move to land waypoint
- loiter and then land
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-01-04 11:58:16 +01:00
RomanBapst
197a21a22e
rtl: for fixed wing (also vtol) make the descend state of RTL use type
...
NAV_CMD_LOITER_TO_ALT
- this allows vtol to track the loiter circle during the transition instead
of trying to fly to the landing position
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-01-04 11:58:16 +01:00
RomanBapst
bb2826ad27
rtl: for vtol first desend down to RTL descend altitude before doing a transition
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-01-04 11:58:16 +01:00
RomanBapst
e81d5daa66
rtl: if very close to home then do not descend if higher than RTL_DESCEND_ALT
...
before reaching home
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-01-04 11:58:16 +01:00
Julian Kent
d9b3db1082
Check that home position is valid in RTL ( #15964 )
2020-10-20 10:31:44 +02:00
Julian Kent
e2e72fd81e
Fix map distortion due to high latitudes ( #15449 )
2020-08-19 09:55:15 +02:00
Daniel Agar
97fc1db768
vehicle_local_position: rename yaw -> heading and add reset logic
...
- vehicle_global_position yaw removed (redundant)
2020-08-10 11:42:03 +02:00
RomanBapst
120f188ada
rtl: do not use cone logic for vehicle flying as fixed wing
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2020-06-25 09:17:23 -04:00
Daniel Agar
9e509a4bec
navigator: RTL minor whitespace and style fixes
2020-06-02 22:08:55 -04:00
Daniel Agar
aca6be8b5c
navigator: RTL destination throttle dataman access
2020-06-02 22:08:55 -04:00
Dusan Zivkovic
a758ea1220
RTL: enable precision landing at the end of RTL, configurable by parameter
2020-05-29 09:11:01 +02:00
Daniel Agar
05886e053f
mavlink_log_info: always print to console and merge with mavlink_and_console_log_info
2020-05-12 08:53:51 +02:00
Silvan Fuhrer
5b235c34c2
Rally Points: enable rally points always, except for RTL type == RTL_MISSION
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2019-11-22 08:18:25 +01:00
Silvan Fuhrer
0ce9329803
Safe Landing Points: Added new RTL_TYPE: closest between home, mission landing and safe points
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
Co-authored by Martina Rivizzigno <martina@rivizzigno.it >
2019-10-28 09:54:59 +01:00
Silvan Fuhrer
efafd91095
Rally Points in RTL: fly to closest Rally Point (safe point), or to home if that's closer
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2019-10-28 09:54:59 +01:00
RomanBapst
7c8fa82e76
rtl cone angle: expose a few values to the user
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2019-07-05 18:05:09 +02:00
RomanBapst
81ee40eac8
rtl: implemented RTL based on cone shape
...
- user defines a cone half angle which defines the RTL altitude behavior
- if vehicle is outside the cone it will climb until it intersects the cone
and then return at this altitude.
- if vehicle is inside the cone or above the predefined return altitude (RTL_RETURN_ALT)
then it will return at the current altitude
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2019-07-05 18:05:09 +02:00
Timothy Scott
a134da6e12
Removed is_rotor_wing, replaced with vehicle_type
2019-06-13 10:04:26 +02:00