Silvan Fuhrer
5a2127d026
fixed-wing: update rate controller integrator handling
...
-always reset roll/pitch/yaw integrators at the same time
-reset them while waiting for launch or during FW Takeoff before Climbout
-reset wheel rate integrator only when disarmed
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-19 09:40:48 +02:00
bresch
02c4e0361c
MCPosControl: fix horizontal anti-reset windup algirithm
...
Since the horizontal and vertical velocity controllers are now
decoupled, it can be that the horizontal acceleration produced by the
controller is actually greater than the desired one (by design). This
condition would actually make the ARW run "backwards", degrading the
controller performance.
2022-08-18 14:19:10 +02:00
Silvan Fuhrer
828992adf7
increase default of MPC_Z_VEL_MAX_DN and MPC_Z_V_AUTO_DN from 1 to 1.5
...
I think most vehicle can safely decend with at least 1.5m/s, and having this
value too low makes Descents/Landings/RTLs unnecessary long.
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-08-05 14:11:59 +02:00
Hamish Willee
e6eed43648
Spelling errors ( #19935 )
2022-07-27 14:33:16 +10:00
Daniel Agar
a73efd9c4f
NuttX carry minimal c++ cmath (replacing Matrix stdlib_imports.hpp)
2022-07-12 08:05:06 -04:00
bresch
3b26c611af
mpc: add sideways and backward speed for manual position modes
2022-07-08 14:03:44 +02:00
Martina Rivizzigno
55563eba49
MPC_SPOOLUP_TIME -> COM_SPOOLUP_TIME
2022-06-24 19:44:43 +02:00
Daniel Agar
15747239c1
mc_pos_control: always respect position estimate vxy_max if set
...
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2022-06-21 12:52:25 -04:00
Matthias Grob
8ca28f3796
Separate message for trajectory setpoint
2022-05-12 17:19:48 +02:00
Matthias Grob
843c814fb8
MulticopterPositionControl: allow offboard takeoff also when not landed
2022-05-06 04:12:18 -07:00
Matthias Grob
1211a457d7
MulticopterPositionControl: Overwrite vertical acceleration during takeoff rampup only
2022-05-06 04:12:18 -07:00
Matthias Grob
d9a2fe5226
Revert "MCPosControl: fix invalid setpoint race condition"
...
This reverts commit e7a2c1d88e .
2022-05-06 04:12:18 -07:00
Matthias Grob
46fdc28cf8
MulticopterPositionControl: fix typo "descen{d/t}"
2022-05-04 02:22:18 -07:00
Daniel Agar
7f1bb556e9
Update src/modules/mc_pos_control/MulticopterPositionControl.cpp
...
Co-authored-by: Mathieu Bresciani <brescianimathieu@gmail.com >
2022-05-04 02:22:18 -07:00
Matthias Grob
3fb4889ab9
MultcopterPositionControl: fix executing a zero setpoint for 200ms
...
This is a combination of the originally introduced delay:
06c10f61c1
then the emergency failsafe being changed to not just land,
position control being rescheduled to not overwrite every setpoint in:
e502214429576ce68ac3fee9d2db19112f4604b9
and it being fixed by overwriting the setpoint but not removing
the long obsolete hystersis here:
114e85d260
2022-05-04 02:22:18 -07:00
Matthias Grob
cb484c5ac7
PositionControl: publish NAN jerk
...
because the controller does not read or write jerk
2022-05-04 02:22:18 -07:00
Matthias Grob
5055fec796
MulticoperPositionControl: explicitly overwrite setpoint timestamp when setpoint is reset
2022-05-04 02:22:18 -07:00
Matthias Grob
424fd8b304
MulticoperPositionControl: remove time_stamp_now alias for timestamp_sample of the local position
...
to make it explicit what is used is not a fresh hrt_absolute_time() call
by this module.
2022-05-04 02:22:18 -07:00
Matthias Grob
8180f931de
MulticopterPositionControl: rename local_pos -> vehicle_local_position
2022-05-04 02:22:18 -07:00
Matthias Grob
4ffe796b4d
MulticopterPositionControl: clarify previous position control naming
2022-05-04 02:22:18 -07:00
Daniel Agar
ad6592f669
mc_pos_control: require current trajectory setpoint to run controller
2022-05-04 02:22:18 -07:00
Peter van der Perk
108c98a691
Added experimental LTO kconfig option
2022-05-02 10:07:54 -04:00
Daniel Agar
3d7a6b4021
mc_pos_control: silence invalid setpoint warning when disarmed
2022-04-26 01:37:37 -04:00
Matthias Grob
10f927ae2b
MulticopterPositionControl: remove unused return value parameters_update()
2022-04-12 10:13:11 -04:00
Daniel Agar
6135bb384b
cleanup module callback registration failed errors
2022-03-23 20:44:50 -04:00
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
Thomas Debrunner
b4087ebd2b
mc_pos_control: increase the default crawl speed for three-stage-landing approach for a more robust landing detection
2022-02-04 21:56:20 -05:00
Matthias Grob
4ef8cead3d
mc_pos_control_params: correct crawl speed reference
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
c9f7c20d46
MulticoperPositionController: time failsafe messages together
...
The following output instead of printing the
action "stop and wait" just once:
WARN [mc_pos_control] invalid setpoints
WARN [mc_pos_control] invalid setpoints
WARN [mc_pos_control] Failsafe: stop and wait
WARN [mc_pos_control] invalid setpoints
WARN [mc_pos_control] Failsafe: stop and wait
WARN [mc_pos_control] invalid setpoints
WARN [mc_pos_control] Failsafe: stop and wait
2022-01-19 14:31:19 +01:00
Matthias Grob
d4e356a1ac
PosititionControl: fix integrator windup with invalid setpoint
2022-01-19 14:31:19 +01:00
Matthias Grob
8811482f1d
PositionControlTest: add integrator windup with invalid setpoint combination unit test
...
This bug was by chance found during simulation testing and debugging.
The unit test is to easily reproduce and cover this case.
2022-01-19 14:31:19 +01:00
bresch
ea7d2334c9
mpc: add parameter for ascent/descent speed in auto modes
2022-01-12 13:33:48 +01:00
bresch
57fa9c545a
PosControl: fix hover update equation
...
The integrator now absorbs properly the change in hover thrust
2022-01-08 15:42:10 +01: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
Beat Küng
4ba84d56c9
logger: introduce optional topics
...
The current practice of adding topics to the default set isn't scalable,
as it affects all setups.
By making sure topics are advertised on init, logger can just discard
topics that don't exist. This does not work for all topics, so topics are
specifically marked as optional. It can be extended to more topics later
on though.
This reduces the list of topics by ~35 on a pixracer configured as quad,
and reduces RAM usage by ~1KB.
2021-11-15 09:02:03 -05:00
Claudio Micheli
10e329ce9e
mc_pos_control: correct MPC_XY_CRUISE description
...
Signed-off-by: Claudio Micheli <claudio@auterion.com >
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
bazooka joe
b35dd86d04
mc_pos_control: remove unused var
2021-10-18 20:37:18 -04:00
bazooka joe
c8d6f8f5e5
remove proto for unused function limit_thrust_during_landing()
2021-10-18 20:37:18 -04:00
Nicolas Martin
ba66f8a1e2
reset hover thrust value in controllers when disarmed
...
During landing, hover thrust value can be very incorrect so it should be
reset before taking off
2021-10-08 10:39:49 +02:00
Peter van der Perk
d5e3e9a7bc
[Kconfig] Decompose Kconfig, now each module has its own Kconfig
...
Which is better for versioning and decomposability
2021-10-07 10:09:01 -04:00
bresch
e53d2907d7
AutoSmoothVel: adjust controller constraints in emergency braking
...
When engaging auto mode at high vertical speed, we don't want to cut the velocity
trajectory setpoint in order to create a smooth deceleration.
2021-09-23 09:22:32 +02:00
Matthias Grob
e7a90bf367
PositionControl: correct horizontal margin calculation
...
It was using the already reduced vertical thrust to do
the horizontal limitation resulting in no margin.
2021-09-14 10:57:38 +02:00
Beat Küng
90940c3672
mc_pos_control: switch to events
2021-09-11 14:08:41 -04:00
Matthias Grob
58ea97a699
MulticopterPositionControl: add horizontal margin for saturation cases
2021-09-08 19:55:27 +02:00
bresch
1016600ded
Revert "mc_pos_control: omit initial warning"
...
This reverts commit 446598d003 .
The first warning was due to a race condition that is fixed by the previous commit;
don't omit the first warning anymore
2021-07-30 21:39:18 -04:00
bresch
e7a2c1d88e
MCPosControl: fix invalid setpoint race condition
...
Only modify the _setpoint for takeoff when there is a new uORB message
to avoid a race condition where both vel_sp(2) and accel_sp(2) can be
NAN at the same time.
2021-07-30 21:39:18 -04:00
Daniel Agar
883624d915
lib/geo: move from ecl
2021-07-15 10:38:24 -04:00