Commit Graph

197 Commits

Author SHA1 Message Date
Daniel Agar 4416c4ddb3 navigator move parameters out of MissionBlock
- MissionBlock is an interface with > 10 implementations
2017-10-26 22:43:53 +02:00
Julian Oes 787931f04f navigator: check distances between waypoints
Instead of just checking whether the first waypoint is too far away from
home it makes sense to also check between waypoints.
This can prevent
- flyaways due to user errors, or
- catch the corner case where a takeoff waypoint is added to a mission
  and therefore the first waypoint is not too far away, however, the
  subsequent waypoints are still too far away.
2017-10-18 08:42:20 +02:00
Dennis Mannhart 8a0a8e20e1 mc_pos_control: use correct altitude as limit
fadfdasf
2017-10-10 10:28:07 +02:00
Dennis Mannhart f9b8afc006 Navigator: Use maximum flight altitude to limit missions
This change limits all mission items to the maximum flight altitude. The mission will still be executed and flown,
but the vehicle will never exceed the mission altitude. This ensures the vehicle can always reach the mission
items. Wether or not the entire mission should be rejected if it falls outside of the fenced area is enforced
in the mission feasibility checker function.
2017-10-10 10:28:07 +02:00
Daniel Agar 3c18be387c ROI - move handling to navigator (#7939) 2017-09-26 12:25:02 -04:00
Dennis Mannhart 5b03c5f68e navigator: reset triplets during onboard/offboard mission update 2017-09-11 02:08:22 -07:00
Dennis Mannhart c1199d1202 mission don't apply slewrate for altitude 2017-09-11 02:08:22 -07:00
Dennis Mannhart 2655c72cea mission: remove altitude foh for rotarywing 2017-09-11 02:08:22 -07:00
Nicolas de Palezieux a6ce2b320c mission: add heading towards ROI mode for multicopters 2017-09-08 12:50:15 -04:00
Lorenz Meier 52ba62d6c4 Navigator: Pause and unpause camera triggering on entering and exiting a mission 2017-08-20 22:47:48 +02:00
Beat Küng b1730b67e4 mission: keep 'offboard mission updated' printf as a warning
Useful to see when a in-flight mission update happens from the log.
2017-08-04 18:08:51 +02:00
Beat Küng cb580c5268 navigator/mission.cpp: check result of dm_lock
and remove duplicated output, mavlink_log_critical already outputs to the
console
2017-08-04 18:08:51 +02:00
Beat Küng 7206bf86dc navigator mission: fix printf log levels 2017-08-04 18:08:51 +02:00
Daniel Agar 9fb5c4f0e9 navigator land abort use reposition (#7574) 2017-08-01 18:59:12 -04:00
Lorenz Meier 49bbd0e58d Navigator: Be less verbose 2017-07-08 19:36:58 +02:00
Martina 5984e3d330 mission: clean up mavlink log messages style 2017-06-19 19:34:18 +02:00
ChristophTobler bc406a122e disable min loiter altitude 2017-06-15 09:18:35 +02:00
Lorenz Meier 9be5193965 Navigator: Fix RTL command lnd logic for missions
The navigator was sending RTL commands in the wrong circumstances leading to a cycle between Navigator and Commander.
2017-05-16 08:40:53 +02:00
Daniel Agar ed1b442065 mission require valid landing after DO_LAND_START 2017-04-20 14:41:01 -04:00
Daniel Agar 56b028148b Navigator move get_time_inside and cleanup (#7062) 2017-04-20 11:24:55 -04:00
Sander Smeets 0158f1d506 VTOL Standard transition improvements (#6904)
* FW actuators fully on the entirety of front and back transition
 * back transition ramp up to full MC weight half way through back transition
 * increase maximum front and back transition times
 *  navigator don't reset transition altitude
2017-04-02 19:39:39 -04:00
Lorenz Meier ad3d0391ab Navigator: Only update params as they change 2017-02-25 11:04:52 +01:00
Lorenz Meier 6f84e79d70 Navigator: Fix takeoff handling if already in air
If the vehicle was already in air on takeoff and the waypoint gets converted to a regular waypoint the wait / delay time does not get reset to zero. This change ensures the next mission item is approached immediately.
2017-02-04 14:47:34 +01:00
Sander Smeets de039ca870 VTOL back transition acceptance radius calculation 2017-01-17 03:14:26 -08:00
Andreas Antener 338804606a Fixed-wing: allow mission takeoff 2017-01-13 00:18:08 -08:00
Daniel Agar c280358e32 navigator fix code style 2017-01-07 01:03:18 -05:00
Dennis Mannhart d0d6b39602 This fix is needed because of the pitch_min and time_inside union from mission_item.
Without this fix, the function "get_time_inside" from navigation.h looses its purpose
to distinguish between takeoff and other waypoints.
2016-12-29 03:08:37 +01:00
Simon Wilks 647fafe9bc Allow for immediate cruise speed changes at any time during a mission. 2016-12-28 11:53:19 +01:00
Andreas Antener e0fc0a847c Mission:
- weathervane on takeoff
- separate cruising speeds for VTOL in MC and FW
- cruising speed resets
- mission work item logic is more clear
- fixed double execution of certain work item states
- enable cruise speed change on the fly by command
- moved VTOL transition target position generation to mission code and set always
2016-12-28 11:53:19 +01:00
Sander Smeets 3649def02e Fix heading hold for ekf2 mission takeoff 2016-12-27 13:05:26 +01:00
Daniel Agar c17c8884d1 implement MAV_CMD_DO_LAND_START 2016-11-19 15:48:10 +01:00
Daniel Agar 8ac4dd04ae implement MAV_CMD_MISSION_START 2016-11-06 15:24:34 +01:00
Sander Smeets 39cc75b4a0 Rebase of vtol_land_weathervane patch 2016-11-04 20:29:45 +01:00
Lorenz Meier 05bc9acfb7 navigator: Wrap get time inside into function call and set time inside to zero
This ensures that the dual-use of the pitch_min / time_inside field is handled
properly between takeoff and non-takeoff items. Flight tested in SITL.
2016-10-23 16:26:03 +02:00
Lorenz Meier 9821499113 navigator / mission item: Compress fields into bitfield 2016-10-23 16:26:03 +02:00
Beat Küng ce0d31b7d9 mavlink log: ensure all critical & emergency msgs are also logged to console & ulog
Critical messages that the user sees should also go to the log file, so
that the exact error (with time) can later be analyzed from the log file.
2016-09-30 13:50:51 +02:00
Daniel Agar 7c0a567eaa navigator explicitly invalidate position setpoint 2016-09-26 23:11:08 +02:00
Daniel Agar 7b03bce416 Navigator mission FOH use previous loiter altitude
-the previous item altitude wasn't valid if switching from LOITER ->
MISSION
-fixes #5395
2016-09-26 23:11:08 +02:00
Julian Oes 997ae98444 navigator: reset cruise speed when out of mission (#5494)
This reset the cruise speed which can be set by mission items/waypoints
to set a custom speed. Once, switched out of mission, it makes sense to
use the speed set by the param again.
2016-09-26 22:54:15 +02:00
Julian Oes 4453e4201b navigator/mavlink: fixes for mission item reached message (#5486)
* navigator/mavlink: always send last reached item

Since we can't rely on mavlink that every message arrives, it makes
sense to continuously send the last reached waypoint.

* navigator: don't report reached for takeoff

If a takeoff waypoint has been inserted, we should not report that we
reached a mavlink mission item because we actually have not.
2016-09-13 21:52:28 +02:00
Andreas Antener 2e44fe9edd update previous waypoint before transition command 2016-08-12 11:50:38 +02:00
Daniel Agar 2a15578f8d FW implement MAV_CMD_DO_GO_AROUND 2016-08-06 20:56:53 +02:00
sander 9398a4819f Only check mission when needed 2016-08-06 20:40:41 +02:00
Julian Oes 3e87ec5153 navigator: mission check refactor
The mission feasability checker was called with the same arguments
twice which made it hard to understand when a mission is marked valid.

The mission check should run in these two cases:
- When initializing (if home comes up) if there is already a mission saved.
- When the mission gets updated.
2016-08-06 20:39:56 +02:00
Lorenz Meier bcd5f98cb1 Navigator: Fix mission feedback and wording 2016-08-06 10:34:20 +02:00
Lorenz Meier 37230f4c5d Revert "navigator: mission check refactor"
This reverts commit a956429c4c.
2016-08-05 22:10:34 +02:00
Julian Oes a956429c4c navigator: mission check refactor
The mission feasability checker was called with the same arguments
twice which made it hard to understand when a mission is marked valid.

The mission check should run in these two cases:
- When initializing (if home comes up) if there is already a mission saved.
- When the mission gets updated.
2016-08-05 10:17:06 +02:00
Julian Oes a18eabead4 navigator: whitespace 2016-07-29 17:44:50 +02:00
Daniel Agar a9cb2d2fbe navigator mission don't report loiter if landed 2016-07-27 10:39:07 +02:00
Daniel Agar 59b4350aa0 implement MAV_CMD_NAV_LOITER_TO_ALT and general mission cleanup 2016-07-12 23:36:05 +02:00