Jukka Laitinen
9449ed6e66
Add support for protected build in drivers, systemcmds and modules Kconfig
...
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae >
2022-02-18 07:58:58 +01:00
bresch
a3b2550f07
mc_auto: only check for offtrack, infront and behind in XY-plane
...
This fixes the issue when changing the altitude during a goto for
example, where the vehicle was going backwards and upwards to reach the
closest point to the line. Now the vehicle simply goes towards the
target waypoint.
2022-02-11 16:14:48 +01:00
Thomas Debrunner
fb8b9b647a
land-detector: switch to crawl speed for intent detection
2022-02-04 21:56:20 -05:00
Thomas Debrunner
2a6d9bc1dd
fligh-mode-manager: First implementation of a three-stage-landing for multirotos, in case LIDAR is available
2022-02-04 21:56:20 -05:00
Matthias Grob
42404ade77
FlightTaskOrbit: Use cruise speed and manual acceleration for radius and velocity changes
...
instead of arbitrary fractions of the maximum radius and velocity.
2022-01-25 11:45:31 +01:00
Matthias Grob
7c55229db7
FlightTaskOrbit: Fix altitude adjustment by stick
...
This is done by inheriting from FlightTaskManualAltitudeSmoothVel again.
The altitude change by command is taken care of by switching
to the apporach when the altitude difference is big enough and
switching back once the altitude is close enough.
The altitude of the command is not perfectly reached but this can
only be done smoothly when the Orbit has full control over the
altitude smoothing. The independent altitude smoothing is not kept
because it was lacking stick handling like altitude lock and smooth
transitions when opening and closing the vertical position loop.
2022-01-25 11:45:31 +01:00
Matthias Grob
d73d8f390b
FlightTaskOrbit: Fix vertical speed limit
2022-01-25 11:45:31 +01:00
Matthias Grob
38de07186d
FlightTaskOrbit: include acceleration and jerk in approach setpoint publishing
...
I think they were forgotten and it leads to side effects:
- The acceleration feed-forward does not get executed
- The acceleration setpoint is NAN when initializing the altitude
smoothing when arriving at the circle
2022-01-25 11:45:31 +01:00
Matthias Grob
b9fb8490ba
FlightTaskOrbit: initialize position smoothing with previous setpoints instead of current state
2022-01-25 11:45:31 +01:00
Matthias Grob
e0337a484b
FlightTaskOrbit: remove unnecessary _sanitizeParams() in activation
...
the parameters are anyways sanitized on every update so even if activate()
sets unfeasible one's they get adjusted on the first update.
2022-01-25 11:45:31 +01:00
Matthias Grob
661496ab24
FlightTaskOrbit: improved naming in applyCommandParameters()
2022-01-25 11:45:31 +01:00
Matthias Grob
8525a8e520
FlightTaskAuto: fix typo pos(i)tion
2022-01-25 11:45:31 +01:00
Thomas Debrunner
4671a741dc
FlightTaskOrbit: Do not switch out of circle orbit control logic on radius change.
2022-01-25 11:45:31 +01:00
Matthias Grob
443406ea2b
FlightTaskAuto: use longerThan() when possible in vector calculations
2022-01-12 15:12:24 +01:00
bresch
4fc7348582
mpc: leave room for altitude error control during descent and descent
...
Since the same parameter is used to generate the trajectory and to
saturate the controller, there is no additional space for the output of
the position controller once it is filled with the feedforward, letting
the altitude grow uncontrolled.
2022-01-12 13:33:48 +01:00
bresch
ea7d2334c9
mpc: add parameter for ascent/descent speed in auto modes
2022-01-12 13:33:48 +01:00
Matthias Grob
bbad4a5397
FlightTaskAuto: Respect altitude with offtrack state
...
To avoid weird cases where the altitude is different enough and
the offtrack state flies to the target altitude instead of the closest
point on the track between the waypoints.
2022-01-07 10:30:39 -05:00
Matthias Grob
bbb04ab4b8
Remove relaying of maximum altitude through land detector
2022-01-05 14:54:59 +01:00
Daniel Agar
019eaf7038
multicopter: minimize dt jitter by using estimate timestamp_sample
2021-12-17 17:52:28 -05:00
Thomas Debrunner
ade4a1930c
trajectory-planning: Added option for PositionSmoothing library with single target waypoint that disables L1 guidance
2021-12-09 20:51:39 -05:00
Silvan Fuhrer
b00ebe53bb
FlightTaskAuto: use MPC_VEL_MAX instead of MPC_XY_CRUISE for emergency braking thresholds
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-12-08 09:13:01 +01:00
Matthias Grob
10ceea2fe6
geo: refactoring on comments and usage
2021-12-06 14:30:14 +01:00
Thomas Debrunner
8db7a6225b
geo: Moved the map_projection_* functions and state into a self-contained C++ class
2021-12-06 14:30:14 +01:00
Thomas
9345f68a93
reapply PR 18614 to refactored FlightTaskAuto
2021-11-30 14:52:16 +01:00
Matthias Grob
35d4986ea7
FlightTasks: remove updateFinalize() concept because it got obsolete
2021-11-18 19:12:44 -05:00
Matthias Grob
9eac0edbc0
FlightTaskAuto: remove generateSetpoints function, replace by implementation
2021-11-18 19:12:44 -05:00
Matthias Grob
ece8fdddec
FlightTaskAuto: simplify early setpoint preparation based on triplet type
2021-11-18 19:12:44 -05:00
bresch
4a14a8bc7f
AutoLineSV: Always publish a valid yaw setpoint
...
In MPC_YAW_MODE 3 (along trajectory), the flight task is asked to
produce a yaw setpoint. If the previous yaw value was NAN (e.g.: during
early takeoff), the setpoint should then be reset to the current
estimate.
2021-11-16 18:09:37 -05:00
bresch
f751dd2242
FlightTask: set yaw_setpoint to NAN when yaw should not be controlled
2021-11-16 18:09:37 -05:00
bresch
2213343240
ft altitude: use longerThan to save a sqrt operation
2021-11-16 18:09:37 -05:00
Matthias Grob
2a5751233a
FlightTasks: remove unused StraightLine library
...
It was meant as an example for an easy to use interface of a
motion primitive with a minimal implementation. But the implementation
is much worse than the jerk optimized trajectory. We rather
work on making it easier to use. #18390 was a first step towards that.
2021-11-16 18:08:27 -05:00
Matthias Grob
b36dbf8de4
Remove AutoLineSmoothVel, merged into Auto
2021-11-16 10:08:47 +01:00
Matthias Grob
179b1cdf56
FlightTaskAuto: merge activate(), reActivate() and update() from FlightTaskAutoLineSmoothVel
2021-11-16 10:08:47 +01:00
Matthias Grob
51ebb0f294
FlightTaskAuto: move in helper methods from FlightTaskAutoLineSmoothVel
2021-11-16 10:08:47 +01:00
Matthias Grob
aa376c5824
FlightTaskAuto: move in parameters from FlightTaskAutoLineSmoothVel
2021-11-16 10:08:47 +01:00
Matthias Grob
50e13f132f
FlightTaskAuto: move in members from FlightTaskAutoLineSmoothVel
2021-11-16 10:08:47 +01:00
Matthias Grob
33e349d71e
FlightTask: remove unused _time
2021-11-16 10:08:47 +01:00
Matthias Grob
dbacdedad1
Remove FlightTaskAutoMapper, merged into AutoLineSmoothVel
2021-11-11 09:14:49 +01:00
Matthias Grob
a94c61b896
FlightTaskAutoMapper: move parameters into FlightTaskAutoLineSmooth
2021-11-11 09:14:49 +01:00
Matthias Grob
59a395f6a0
FlightTaskAutoMapper: move remaining members into FlightTaskAutoLineSmooth
2021-11-11 09:14:49 +01:00
Matthias Grob
f5183348a6
FlightTaskAutoMapper: move remaining methods into FlightTaskAutoLineSmooth
2021-11-11 09:14:49 +01:00
Matthias Grob
0211ef3ba1
FlightTaskAutoMapper: move update() into FlightTaskAutoLineSmooth
2021-11-11 09:14:49 +01:00
Matthias Grob
1cef2ad196
FlightTaskAutoMapper: merge activate() into FlightTaskAutoLineSmooth
2021-11-11 09:14:49 +01:00
Matthias Grob
dd05cb3496
FlightTaskManualPosition: simplify optical flow limiting logic
2021-11-09 21:47:06 -05:00
Matthias Grob
7ec8dd9d23
vehicle_constraints: remove deprecated speed_xy constraint
2021-11-09 21:47:06 -05:00
Matthias Grob
fabf865411
Use backwards compatible manual_control_setpoint instead of manual_control_input
2021-11-09 16:05:25 +01:00
Julian Oes
6a6b8d49fc
msg: re-use manual_control_input in setpoint
...
This way we avoid duplication between manual_control_input and
manual_control_setpoint.
2021-11-09 16:05:25 +01:00
RomanBapst
7cb99f521c
moved ManualVelocitySmoothing to motion_planning lib
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2021-11-05 18:04:33 +01:00
Silvan Fuhrer
f02786d112
Navigator/Commander: make GPS failsafe consitent: switch to Descend also for FW and VTOL
...
- remove GPS failsafe mode
- for VTOL: transition to hover in Descend (unless NAV_FORCE_VT is not set)
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2021-11-05 12:09:39 +03:00
Matthias Grob
f55590ce78
FlightTaskOrbit: remove duplicate newlines
2021-11-03 17:37:52 +01:00