15589 Commits

Author SHA1 Message Date
Matthias Grob
2edb35b1b5
Functions: add gradual function with arbitrary number of corner points 2022-09-07 08:00:26 +02:00
Matthias Grob
6a9a049f1e
Helicopter: add unit testing for throttle curve 2022-09-07 08:00:26 +02:00
Matthias Grob
9ba6f4efb7
Helicopter: add yaw compensation from throttle CA_HELI_YAW_TH_S 2022-09-07 08:00:26 +02:00
Matthias Grob
554d965a2d
Helicopter: use absolute value for yaw compensation from collective pitch 2022-09-07 08:00:26 +02:00
Beat Küng
608ab9ff9c
control_allocator: extend description for CA_SP0_ANGx 2022-09-07 08:00:25 +02:00
Beat Küng
e346190e63
helicopter: use tail motor & add CA_HELI_YAW_CP_S 2022-09-07 08:00:25 +02:00
bresch
92fbd86b46 ekf2: add gps altitude drift test 2022-09-05 10:28:37 -04:00
bresch
a2a5093881 ekf2: relax zero velocity update
The ZVU is too strong and prevents the EKF from following variations in
the height aiding sources, creating large innovations.
2022-09-05 10:28:37 -04:00
Daniel Agar
d996af4647 ekf2: pass gpsSample around where required
- this minimizes potential misuse accessing _gps_sample_delayed and
makes the dependency clear
2022-09-05 10:27:19 -04:00
RomanBapst
0c860fa227 airspeed_selector: don't declare wind estimate valid if estmator is not initialised
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2022-09-05 10:21:38 -04:00
Benjamin Perseghetti
a56f654651
Multi-Vehicle Ignition Gazebo Simulation (#20154) 2022-09-04 21:10:29 -04:00
Daniel Agar
7bbdc220f5 ekf2: initialiseFilter() simplify mag heading init and resetQuatStateYaw
- most of resetQuatStateYaw doesn't apply to initial heading init, so
removing the special case keeps it simple
2022-09-02 08:46:10 -04:00
Daniel Agar
f66b5ce204
simulation: ignition bridge allow IMU or pose callbacks to update system time if newer than clock
* requires HRT lockstep changes to eliminate offset (PR #20146)
2022-09-01 20:42:21 -04:00
Daniel Agar
c52f2143d2 posix lockstep remove HRT offset and use full sim time 2022-09-01 20:40:37 -04:00
Daniel Agar
3da0293369 simulator_ignition_bridge: init error handling 2022-09-01 18:54:59 -04:00
Beat Küng
43c5f14aa0 commander: update arming & health protocol, add modes to event hash 2022-09-01 17:07:23 -04:00
Beat Küng
f57321d365 simulator_mavlink: fix esc_status publication 2022-09-01 17:07:23 -04:00
Beat Küng
295caaea60 events/enums.json: remove redundant manual_control_input 2022-09-01 17:07:23 -04:00
Beat Küng
9eff6dd049 commander: cleanup param value description for COM_POSCTL_NAVL 2022-09-01 17:07:23 -04:00
Beat Küng
0e130eac83 refactor commander: move code inside run() into separate methods 2022-09-01 17:07:23 -04:00
Beat Küng
dcb9b712bb refactor commander: move vehicle control mode to ModeUtil 2022-09-01 17:07:23 -04:00
Beat Küng
f197c8884d commander: move esc checks to arming check 2022-09-01 17:07:23 -04:00
Beat Küng
c9037f115b refactor commander: split out home position 2022-09-01 17:07:23 -04:00
Beat Küng
f17f38197d commander: move estimator checks to arming check 2022-09-01 17:07:23 -04:00
Beat Küng
cfe3d793bf commander: move battery handling into arming checks 2022-09-01 17:07:23 -04:00
Daniel Agar
5cb44a521c ekf2: estimator interface handle sample time with signed integers
- this prevents unsigned integer overflow if the timestamp is smaller
than the configured delay (mostly a simulation edge case)
2022-09-01 09:47:29 -04:00
dagar
75f6f22223 [AUTO COMMIT] update change indication 2022-08-31 08:52:30 -04:00
Daniel Agar
1948c5057a ekf2: handle all time on delayed horizon (except for newest sample checks)
- a growing number of samples come into the backend with the time
already delayed (sensor's interrupt setting timestamp sample)
 - if the incoming timestamp is already delayed then the new data checks
(relative to latest IMU) can be slightly wrong
 - handle almost all timestamps and checks on delayed time horizon,
except for explicit checks of new samples
 - isRecent() and isTimedOut() helpers use delayed time
 - add new isNewestSampleRecent() used for checking the incoming
timestamp of the incoming (adjusted) data
2022-08-31 08:52:30 -04:00
Hamish Willee
e780a583cd Fix typo follow height: FLW_TGT_HT 2022-08-29 13:25:35 +02:00
Ben Berry
734d3e4aa0 Reverted changes that broke Level Horizon calibration 2022-08-29 09:54:36 +02:00
Beat Küng
666b84027d GyroFFT: disable 4096 for IMU_GYRO_FFT_LEN
saves around 10.5KB flash on px4-fmu-v5
2022-08-25 22:02:15 -04:00
Beat Küng
060738cae1 src: avoid use of double precision pow & exp
saves around 5KB flash on px4-fmu-v5
2022-08-25 22:02:15 -04:00
Beat Küng
4c41934bb4 commander: inline HealthComponentIndex::HealthComponentIndex
Saves around 1KB flash
2022-08-25 22:02:15 -04:00
Beat Küng
1c89b0c9c8 commander: use actuator_function for ESC reporting 2022-08-25 22:02:15 -04:00
Beat Küng
13c93db11a commander: use circuit breaker params directly in arming checks 2022-08-25 22:02:15 -04:00
Beat Küng
4230eee24f commander: print 'ready for takeoff' to console for sitl after startup 2022-08-25 22:02:15 -04:00
Beat Küng
2fccb576ad commander: remove unused includes and variables 2022-08-25 22:02:15 -04:00
Beat Küng
dbb814ff24 HealthAndArmingChecks: CONSOLE_PRINT_ARMING_CHECK_EVENT & reduce flash usage
- print list of events whenever they change if
  CONSOLE_PRINT_ARMING_CHECK_EVENT is set, instead of on each update call
- reduce flash usage by moving out templated code into non-template method
2022-08-25 22:02:15 -04:00
Beat Küng
b2cb164c12 commander: replace health flags with health_report from arming checks 2022-08-25 22:02:15 -04:00
Beat Küng
6d1fb92eb7 commander: rework arming checks to use the events interface 2022-08-25 22:02:15 -04:00
Beat Küng
b3fe0eeae8 mavlink_events: send reset sequence out immediately on startup 2022-08-25 22:02:15 -04:00
Beat Küng
c7b64e3c01 commander: check for ack when calling 'commander takeoff' 2022-08-25 22:02:15 -04:00
Beat Küng
406b0bbc86 commander: handle VEHICLE_CMD_RUN_PREARM_CHECKS 2022-08-25 22:02:15 -04:00
Beat Küng
8f9be0541f HealthAndArmingChecks: add support for legacy mavlink_log reporting 2022-08-25 22:02:15 -04:00
Beat Küng
f23363f88c HealthAndArmingChecks: add unit tests for Report 2022-08-25 22:02:15 -04:00
Beat Küng
fcadc69e52 mavlink_receiver: set timestamp to gps_inject_data_topic 2022-08-25 22:02:15 -04:00
Beat Küng
b7a6de05df arming checks: add health topic 2022-08-25 22:02:15 -04:00
Beat Küng
07afcf4586 commander preflight checks: new structure using events interface
- Reporter class that keeps track of results (list of events + whether
  arming is possible + health).
  And only reports when one or more checks change.
2022-08-25 22:02:15 -04:00
Beat Küng
04f7df3848 SubscriptionMultiArray: use Subscription instead of SubscriptionInterval
Saves ~3KB RAM on fmu-v5.
2022-08-25 22:02:15 -04:00
Daniel Agar
9b0b0d1168
ekf2: update test change indication csv 2022-08-25 15:55:45 -04:00