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
Konrad
8c6dfc840b
TECS: Fix bug to reset airspeed derivative and energy rate low pass filters at every time step.
2022-12-21 09:04:19 +01:00
Konrad
7a3e0f53c2
TECS: Replaced old tecs by cleaned up version.
2022-12-21 09:04:19 +01:00
Konrad
991689d3cd
TECS: Add new tecs library in parallel to old tecs in the position control library for comparison.
2022-12-21 09:04:19 +01:00
Konrad
c64e111d8e
TECS: Rearranged the TECS library into submodules.
2022-12-21 09:04:19 +01:00
Silvan Fuhrer
20342216e2
Airspeed Selector: use better density source and only save scale parameter if valid ( #20764 )
...
* AirspeedSelector: use vehicle_air_data.rho for calculating groundspeed-wind CAS
Previously the vehicle_air_data.temperature and pressure was used, instead of the
density field directly.
Only makes a difference if there is an airspeed sensor connected to provide
the air temperature.
* AirspeedSelector: only safe estimated scale in param if airspeed is valid
* AirspeedSelector: remove 0.01 cliff for saving learned scale to param
Signed-off-by: Silvan Fuhrer <silvan@auterion.com >
2022-12-20 15:52:54 +01:00