Silvan Fuhrer
8f520ab019
tecs: fix throttle prediction ( #21444 )
...
* tecs: fix throttle prediction
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
---------
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
Co-authored-by: Thomas Stastny <thomas.stastny@auterion.com >
2023-04-06 20:13:32 +02:00
Silvan Fuhrer
460956fd33
TECS: revert altitude controller to old logic
...
- if the height rate input into TECS is finite, use that one to
update a velocity reference generator
- if the velocity reference generator reports position locked or
height rate input is not finite, then run altidue reference generator
- run altitude controller only if altitue is controlled
if height_rate_setpoint is set, only use that one to update altitdue trajectory
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-04-06 20:12:52 +02:00
Silvan Fuhrer
60cd20c19c
TECS: make more readable
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-04-06 20:12:52 +02:00
Silvan Fuhrer
2d01cf63ce
TECS: rename _reference_model to _altitude_reference_model
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-04-06 20:12:52 +02:00
Silvan Fuhrer
beeae1f673
TECS: rename TECSReferenceModel to TECSAltitudeReferenceModel
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-04-06 20:12:52 +02:00
Silvan Fuhrer
1f5046f165
FWPositionControl: trim throttle prediction improvements ( #21345 )
...
* FWPositionController: add linear airspeed-to-trim-throttle mapping
Scale trim throttle in a linear way with airspeed.
Different gradients above/below trim airspeed.
The airspeed- and airs density-corrected trim throttle is required for an accurate
throttle prediction in TECS, while the default trim throttle is still needed
as well, as the throttle delta from height rate setpoint delta is linked to it.
---------
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-04-06 11:56:54 +02:00
Daniel Agar
4d9369dc67
Update world_magnetic_model to latest Fri Mar 24 11:14:06 UTC 2023
2023-03-24 09:39:26 -04:00
bresch
6bee0893de
add circle intersection unit tests
2023-03-22 10:03:48 +01:00
bresch
af345c88e9
TrajMath: use fmaxf instead of max
2023-03-22 10:03:48 +01:00
bresch
c7bddda1db
MC auto: add maximum RC assist distance during landing
2023-03-22 10:03:48 +01:00
Matthias Grob
9f8fa99d70
matrix: use stack allocation for debug output string
2023-03-21 15:01:26 +01:00
Matthias Grob
b1435c6e34
matrix: use output stream function template
...
to enable proper automatic output in gtest unit tests
that compare two `Matrix`, `Vector` or two `Dual` objects.
Credits to @jwidauer for showing me this trick.
2023-03-21 15:01:26 +01:00
Matthias Grob
b0189d95af
Use new Vector4 class
2023-03-21 15:01:26 +01:00
Matthias Grob
08d6465ce5
matrix: add explicit Vector4 type
2023-03-21 15:01:26 +01:00
Beat Küng
22c94f805a
component information: add translation support
2023-03-20 21:57:25 -04:00
Silvan Fuhrer
28db47480d
TECS: remove ununsed getSteRate()
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-03-16 16:58:08 +01:00
Silvan Fuhrer
a1812dbde0
gimbal: move gimbal controls to new dedicated topic
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-03-16 11:55:45 +01:00
Silvan Fuhrer
b16f16598b
VTOL: remove virtual actuator_controls and instead use virtual torque/thrust topics
...
MC/FW rate controller and auto tuner: remove actuator_controls
AirshipAttControl: remove actuator_controls
MulticopterLandDetector: remove actuator_controls
mavlink streams vfr_hud and high_latency2: remove actuator_controls
RoverPositionController: remove actuator_controls
UUVAttitudeController: remove actuator_controls
battery: use length of thrust_setpoint for throttle compensation
VehicleMagnetometer: use length of thrust_setpoint for throttle compensation
Signed-off-by: Silvan Fuhrer
2023-03-16 11:55:45 +01:00
akkawimo
bcd6e7adee
comment out fake_traffic to prevent flash overflow
2023-03-16 07:32:43 +01:00
Mohamad Akkawi
9de52bb5ec
[navigator] Tone Down traffic warnings
...
- add unit tests for adsb conflict detection
- move adsb conflict detection to lib/adsb and adsb conflict class
- use containers/Array.hpp for buffer array
- expand fake_traffic
2023-03-16 07:32:43 +01:00
Silvan Fuhrer
9a038281c5
RoverPositionController: remove some unused stuff
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-03-06 14:00:02 +01:00
Silvan Fuhrer
feec8b2036
L1: remove some functions that Rover doesn't need
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-03-06 14:00:02 +01:00
Silvan Fuhrer
76116d79f9
TECS: remove umcommanded_descent flag
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-03-01 10:39:09 +01:00
Silvan Fuhrer
527225357b
TECS: remove unused TECS_MODE_CLIMBOUT
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-03-01 10:39:09 +01:00
Silvan Fuhrer
837095b9a8
tecs: use FW_T_SINK_MIN for STE_rate_min ( #21190 )
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-02-24 15:46:41 +01:00
RomanBapst
6e07af959f
fixed bug in Matrix library
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2023-02-16 11:28:41 +01:00
Matthias Grob
6f4d903f45
Battery: address two comments from #2242
...
- use a constant instead of magic number
- fix code comment typo
2023-02-13 13:27:08 +01:00
Konrad
b9f9f25b48
parameter_translation: Add parameter translation for renamed L1 parameters
2023-02-09 17:51:55 +01:00
KonradRudin
c5d041a2f7
Rearrange npfg use path input ( #21071 )
...
* [npfg]: Remove the guideToPoint function and replace with guideToPath
* [npfg]: remove unused navigateXXX functions
* [npfg]: Move navigateXXX Function into FWPoscontrol
* [FixedwingPositionControl]: Set default flaps and spoilers in attitude setpoint topic, and only change if necessary.
2023-02-08 08:54:00 +01:00
Daniel Agar
661eb2adb4
lib/sensor_calibration: BiasCorrectedSensorOffset() don't incorporate thermal offsets
...
- the thermal offsets are an optional correction applied to the raw data, so when updating an existing calibration offset with new learned bias we don't want this incorporated
2023-02-06 15:09:07 -05:00
Daniel Agar
47215bb625
lib/wind_estimator: symforce codegen remove reserved identifier naming
...
- from the C standard, "All identifiers that begin with an underscore and either an uppercase letter or another underscore are always reserved for any use"
2023-01-30 09:24:32 -05:00
Daniel Agar
8da993c30e
Update world_magnetic_model to latest Sat Jan 28 11:14:05 UTC 2023
...
Co-authored-by: PX4 BuildBot <bot@px4.io >
2023-01-28 11:41:03 -05:00
Roman Bapst
4646762f9d
Use multiplication instead of division
2023-01-28 10:31:17 -05:00
Silvan Fuhrer
d32f400851
WindEstimator: use isAllFinite()
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-01-28 10:31:17 -05:00
Silvan Fuhrer
a6d14796e4
WindEstimator: add consts, fix float comparison to 0 and use consistently floats in division
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-01-28 10:31:17 -05:00
Silvan Fuhrer
15335b194a
WindEstimator: use state indexing enum consistently
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-01-28 10:31:17 -05:00
Silvan Fuhrer
88ec117e59
TECS: rename tecs_status.altitude_filtered to altitude_sp_ref
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-01-26 17:04:43 +01:00
Silvan Fuhrer
5099a91f87
TECS: keep _pitch_integ_state in radians
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-01-26 17:04:43 +01:00
Silvan Fuhrer
e16f98c2b6
FW Position controller: remove unused climbout arguments
...
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2023-01-26 17:04:43 +01:00
KonradRudin
d3b7112dd9
[TECS]: If in airspeedless mode, add the throttle integrator term to the throttle setpoint, if the integrator term is positive. This should avoid reducing airspeed when switching to airspeedless mode. ( #20987 )
2023-01-25 09:16:11 +01:00
Julian Oes
35d6b734f5
perf: avoid leaks in dtor
...
From what address sanitizer tells me, we need to tell delete what type
it is deleting.
Signed-off-by: Julian Oes <julian@oes.ch >
2023-01-17 21:20:51 -05:00
Daniel Agar
45912066d2
fix copyright header year range
2023-01-14 09:16:16 -05:00
Eric Katzfey
ac80dcd7a8
Voxl2: add qurt i2c driver support and first i2c driver voxlpm
2023-01-13 19:59:41 -05:00
Peter van der Perk
fa87375d0c
Add hardfault log progmem flash backend
2023-01-04 12:52:01 -05:00
Yannick Fuhrer
98529a5b49
Battery: delay initialization of SoC ( #20729 )
...
* Battery: delay initialization of SoC
* battery: rework of battery initialization delay
Co-authored-by: Matthias Grob <maetugr@gmail.com >
2022-12-26 18:44:22 +01:00
Eric Katzfey
c3e70b03aa
Add more to Voxl2 build and fix associated build errors ( #20821 )
...
- Do not pull in PWM parameters when DISABLE_PARAMS_MODULE_SCOPING is TRUE since VOXL2 has no PWM nor any of the required timer_config files that go along with that
- Replace non-standard M_PI constants with PX4 defined M_PI_F constants
- Include missing header file for function hrt_absolute_time declaration
- Add new PX4_SOC_ARCH_ID for the VOXL2 board
2022-12-22 15:44:19 -05:00
Daniel Agar
f2cd7667dc
systemcmds/bsondump: new command line utility (extracted from parameters)
2022-12-21 10:14:00 -05:00
Konrad
f5524fa605
TECS: Combine both airspeed and airspeed derivative filters in TECS into one MIMO filter using a steady state Kalman filter.
2022-12-21 09:04:19 +01:00
Konrad
08c36612b3
TECS: Updated throttle control for airspeed sensorless vehicles. It includes the P gain controller instead of feedforward only. I term is still disabled.
2022-12-21 09:04:19 +01:00
Konrad
77539d4dac
TECS: Rearrange setpoint input. If an altitude rate is given, use this as a feedforward term in the altitude control. If an altitude setpoint is given use a reference model to get a smooth altitude setpoint.
2022-12-21 09:04:19 +01:00