Commit Graph
787 Commits
Author SHA1 Message Date
Lorenz Meier 19f0b0be3a Navigator: Altitude acceptance to switch to new waypoints should be more accurace than horizontal distance by default 2017-04-09 17:25:38 +02:00
Lorenz Meier f74d6e443e Navigator: Initialize RTL state properly 2017-04-08 07:58:37 +02: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
FantasyJXF d1c3b771ee Update navigator_main.cpp
fix a spell error
2017-04-02 12:15:10 +02:00
Dennis Mannhart 1774e01c00 rtl: keep rtl altitude below max altitude
land_detector: delete unused class enum
2017-02-27 22:54:19 +01:00
Lorenz Meier 7710b64d27 Navigator: Re-initialize RTL every time it gets re-enabled 2017-02-26 13:26:52 +01:00
Lorenz Meier ad3d0391ab Navigator: Only update params as they change 2017-02-25 11:04:52 +01:00
Lorenz Meier 3e88b2f2b1 Rate-limit navigator update rate 2017-02-24 08:52:10 +01:00
Lorenz Meier d66d7a4932 Navigator: Fix code style 2017-02-17 09:13:13 +01:00
Lorenz Meier c8fb21e73e Navigator: Enforce a minimum altitude for RTL 2017-02-17 09:13:13 +01:00
Julian Oes 9369262e63 navigator: allow more mission items
Since using more than 256 mission items has been tested and fixed, the
limit can now be raised to more than 256 (but smaller than UINT16_MAX).

Since the whole file is allocated in advance on NuttX, the limit there
is (arbitrarily) set to 2000. For POSIX archs such as SITL, we don't
really need to constrain ourselves any longer.
2017-02-15 22:29:24 -05:00
ChristophTobler 0263ab8cd2 enable takeoff in gps denied areas and minor requested changes 2017-02-13 21:11:25 +01:00
ChristophTobler 64092f087f fix landing angle if no gps 2017-02-13 21:11:25 +01:00
ChristophTobler 6a60ff9dc3 fix code style 2017-02-13 21:11:25 +01:00
ChristophTobler 1f7fdb2386 allow local position for takeoff (e.g. flow) 2017-02-13 21:11:25 +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
Daniel Agar 96e51f7c59 clang-tidy remove redundant 2017-02-01 22:15:50 -05:00
Daniel Agar e927f3e040 clang-tidy modernize-use-nullptr 2017-02-01 22:15:50 -05:00
Daniel Agar 88ad0fc3bd astyle src/modules/navigator 2017-01-29 01:18:32 +01:00
Sander Smeets ba10db06c2 Code formatting 2017-01-17 03:14:26 -08:00
Sander Smeets d0dad4ad7d Indenting 2017-01-17 03:14:26 -08: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
Daniel Agar 525448de93 navigator follow target add harmless float cast 2017-01-04 16:08:20 -05:00
Daniel Agar 61e48e2286 navigator comment fall through in case 2017-01-04 16:08:20 -05:00
Julian Oes a985c27ab0 navigator: reset reached flag, not reached seq
It doesn't make sense to reset the reached sequence, especially not to
false since it's an int.
2017-01-03 08:22:34 +01:00
Julian Oes a394d148a1 navigator: don't reset current waypoint
We don't want to reset the current waypoint because this means that the
ground stations see a current waypoint of 0 if the current waypoint is
not updated e.g. when we're not in mission mode.

However, it is wrong to send 0 as the current waypoint because if we
switch back to mission mode, it will actually go to the last current
waypoint and not 0.
2017-01-03 08:22:34 +01: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
Lorenz Meier 4c8e353df7 Fix navigator build error after re-integration 2016-12-28 12:02:25 +01:00
Andreas Antener 7dcba260a7 Fix meta data for added boolean parameters 2016-12-28 11:53:19 +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
Lorenz Meier 16dfd4c6ff Navigator: Header cleanup 2016-12-27 21:00:51 +01:00
Sander Smeets 3649def02e Fix heading hold for ekf2 mission takeoff 2016-12-27 13:05:26 +01:00
Anton Matosov 3a17c07b1e Implement RC and DL failsafe action handling for multirotors
Move RC and DL failsafe actions handling from navigator to commander (credits to @AndreasAntener)
Separate manual kill switch handling via manual_lockdown to prevent override and release of software lockdown by RC switch

Other changes:
Add failsafe tune
Fix LED blinking for Pixracer
Return back support for rc inputs in simulator but now it is configurable via cmake
2016-12-27 00:38:13 +01:00
David Sidrane dc8c6ea5e5 White space fixes 2016-12-21 08:34:21 +01:00
Julian Oes 3ac056924c navigator: increase stack
The stack size was generally ok but seemed to get exhausted in the case
of a waypoint which is too far away and therefore exercises some more
code in the mission feasability checker.

Generally, we should have more margin in the navigator stack size
because there are a bunch of different code paths that can happen.
2016-12-15 09:05:02 +01:00
Julian Oes a096b97455 Revert "navigator: increase stack"
This reverts commit 6a6e9d02a3.
2016-12-15 09:05:02 +01:00
Julian Oes 6a6e9d02a3 navigator: increase stack
The stack size was generally ok but seemed to get exhausted in the case
of a waypoint which is too far away and therefore exercises some more
code in the mission feasability checker.

Generally, we should have more margin in the navigator stack size
because there are a bunch of different code paths that can happen.
2016-12-15 00:12:54 +01:00
Julian Oes 8a6af658f3 navigator: don't omit printf value
There was a mismatch between the printf arguments and what was defined
in the fmt.
2016-12-15 00:12:54 +01:00
Daniel Agar 17990cf5dc geofence fix combined simple and polygon logic
- require being inside both fences, not either
2016-12-14 08:49:13 +01:00
Julian Oes 1424994bc0 navigator: don't takeoff in loiter on ground
This fixes the following corner case:
1. Upload a mission.
2. Set mission mode.
3. Set loiter mode.
4. Arm.
At this point it will shoot up and go to the takeoff waypoint even
though we're not in mission but in loiter mode.

The fix makes sure that the triplet is reset to invalid (and idle) in
loiter mode if we're landed and disarmed.
It will lead to the vehcle sit in idle on the ground until you issue a
start mission (or takeoff) command.
2016-12-08 15:07:14 +01:00
Daniel Agar c17c8884d1 implement MAV_CMD_DO_LAND_START 2016-11-19 15:48:10 +01:00
Daniel Agar 6cdd188158 geofence max horz/vertical better messages 2016-11-19 15:16:00 +01:00
Daniel Agar c701085ed4 geofence fix code style 2016-11-19 15:16:00 +01:00
Daniel Agar 6f10f8de9a navigator begin fixing code style 2016-11-19 15:16:00 +01:00
Michal Stasiak 9180268a17 Geofence: Param update fix (#5812) 2016-11-06 14:31:59 -05:00
Daniel Agar 8ac4dd04ae implement MAV_CMD_MISSION_START 2016-11-06 15:24:34 +01:00
Michal Stasiak 2bfac7ff4f Mission feasibility: Geofence check fix
Current implementation checks against geofence only if it is in polygon form.
When it's created via params, it accepts all the waypoints as the number of vertices = 0.
Thus, changed the function to the one that is used to check whether geofence is breached in flight.
2016-11-05 11:07:23 +01:00