Daniel Agar
20c2fe6d28
estimator messages add explicit timestamp_sample
...
- timestamp is uORB publication metadata
- this allows us to see what the system saw at publication time plus the latency in estimation
2020-09-04 10:48:26 -04:00
Daniel Agar
9215fb57a2
ekf2: advertise immediately to ensure consistent uORB instance numbering
2020-09-04 10:48:26 -04:00
Daniel Agar
9ccc1db649
estimator_status split out estimator_states
2020-09-04 10:48:26 -04:00
Daniel Agar
33a7fed240
ekf2: split out header and rename
2020-09-04 10:48:26 -04:00
Daniel Agar
4879a4e2ef
ekf2: use single uORB::Subscription, but change instance
2020-09-03 15:41:33 -04:00
Daniel Agar
6ff361479c
uORB: introduce SubscriptionMultiArray for working with multi-instances
2020-09-02 12:46:47 -04:00
Hamish Willee
979243f38f
params: make parameter units more consistent ( #15502 )
2020-08-24 11:33:08 +02:00
Daniel Agar
971b1e4b4d
sensors: move mag aggregation to new VehicleMagnetometer WorkItem
...
- purge all reminaing magnetometer IOCTL usage
- mag calibration add off diagonal (soft iron) scale factors
2020-08-21 10:12:13 -04:00
Daniel Agar
97fc1db768
vehicle_local_position: rename yaw -> heading and add reset logic
...
- vehicle_global_position yaw removed (redundant)
2020-08-10 11:42:03 +02:00
Daniel Agar
fa44cd5cd5
px4_work_queue: rename navigation_and_controllers -> nav_and_controllers
...
- keep the thread within the current NuttX max length
2020-07-14 09:48:47 -04:00
dominiknatter
d8831c5133
ekf2: Ignore optical flow samples with too large integration time spans. Fixes #14165
...
Within ekf2, optical flow messages (amongst others) are fused to the state estimates. It might occur that optical flow sensors report unreliable and unrealistic spikes. In that case, the state estimator went crazy so far and just ignored optical flow values from that moment on.
The common thread for all these spikes seems to be a too high integration time span. Therefore, this fix adds a simple logic that ignores unrealistically high integration time spans. As a threshold, 1 second was chosen.
Reported-by: Dominik Natter <dominik.natter@gmail.com >
2020-06-29 12:00:29 -04:00
Beat Küng
71dcf8d619
sitl: use lockstep components API
...
- avoids the need for ekf2_timestamp publications by q and lpe
- adds logger to the lockstep cycle and makes it poll on ekf2_timestamps
or vehicle_attitude. This avoids dropped samples (required for replay).
2020-06-23 11:53:55 -04:00
Daniel Agar
11585dfb67
ekf2: decrease default GPS horizontal velocity noise
2020-06-02 08:18:12 -04:00
Daniel Agar
e34bdb4be9
move IMU integration out of drivers to sensors hub to handle accel/gyro sync
...
- IMU integration move from drivers (PX4Accelerometer/PX4Gyroscope) to sensors/vehicle_imu
- sensors: voted_sensors_update now consumes vehicle_imu
- delete sensor_accel_integrated, sensor_gyro_integrated
- merge sensor_accel_status/sensor_gyro_status into vehicle_imu_status
- sensors status output minor improvements (ordering, whitespace, show selected sensor device id and instance)
2020-05-30 11:07:54 -04:00
Daniel Agar
0ec48cfef3
ekf2: increase default baro noise 2 -> 3.5 m
2020-05-28 08:35:07 -04:00
kritz
3897030c6f
Support odometry velocity in body and local frame ( #14703 )
...
* Update submodule ECL
* increase lower bound on EVV param
2020-05-13 12:43:02 +02:00
Mohammed Kabir
5ffe88672e
vehicle_odometry: add timestamp_sample field for latency monitoring
2020-04-28 13:58:43 -04:00
kritz
ccaa103164
ekf2: Stop getting velocity variance from pose covariance matrix ( #14779 )
2020-04-28 10:05:30 -04:00
Daniel Agar
326d8efc16
move attitude controllers to new wq:attitude_ctrl
2020-04-27 21:34:35 -04:00
Hamish Willee
8236b8da81
Fix up doc links to point to master branch
2020-04-21 08:58:40 +02:00
Daniel Agar
cf37be8c44
ekf2 handle accelerometer clipping
...
- track clipping per IMU axis and pass through to ecl/EKF
- update ecl/EKF to include delta velocity clipping changes (PX4/ecl#663 )
2020-04-07 20:11:08 -04:00
kamilritz
a70aa6349a
ECL interface: output vector quantities by return-by-value
2020-04-01 11:47:39 +02:00
Hamish Willee
1288db9314
ekf2_params.c: EKF2_MAG_TYPE: Info about yaw without mag
2020-03-25 09:41:54 +01:00
bresch
0f2f72a757
Ekf2: Add bitmask to select terrain estimator aiding sources
2020-03-19 20:27:39 +03:00
CarlOlsson
58ded8d4c0
ekf2: remove unused function declatation
2020-03-18 14:33:11 +01:00
Paul Riseborough
ab92b46e69
Update ecl to add ability to recover from bad magnetic yaw
...
* msg: Add EKF-GSF yaw estimator logging data
* ecl: update to version with EKF-GSF yaw estimator
* ekf2: Add param control and logging for EKF-GSF yaw estimator
* logger: Add logging for EKF-GSF yaw esimtator
2020-03-15 12:57:25 -04:00
Daniel Agar
0eca583ecf
sensors: move baro aggregation to new sensors/vehicle_air_data
2020-03-12 19:06:34 -04:00
Daniel Agar
a89b69b0ea
vehicle_global_position: remove velocity fields (duplicates of local vx, vy, vz)
...
* attitude_estimator_q: get velocity from local position (if available)
2020-03-11 23:57:43 -04:00
RomanBapst
4ddf0f9dc1
ekf2_main.cpp: fixed bug in the calculation of the mag bias calibration time
...
Signed-off-by: RomanBapst <bapstroman@gmail.com >
2020-03-10 08:54:04 +01:00
CarlOlsson
8de1f5229b
EKF2: use fixed time constant for GPS blending
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com >
2020-03-04 16:46:20 +01:00
CarlOlsson
357700aa8d
EKF2 GPS blending: fall out of blending if one module lose 3D fix
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com >
2020-03-04 16:46:20 +01:00
CarlOlsson
a10a228092
EKF2 GPS blending: reset relative position offsets if blending not feasible
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com >
2020-03-04 16:46:20 +01:00
CarlOlsson
7e00dcd382
EKF2: Fix GPS blending time jitter
2020-02-26 07:39:47 +01:00
CarlOlsson
a61f1647ad
replay: remove GPS relative timestamps
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com >
2020-02-07 08:19:22 +01:00
CarlOlsson
37db7d3bba
ekf2: define max number of range finders seperate from max number of mutli uORB topics
...
Signed-off-by: CarlOlsson <carlolsson.co@gmail.com >
2020-02-05 08:03:23 +01:00
Hamish Willee
9886b11f99
EKF params - clarify body frame origin/orientation
2020-01-30 07:29:11 -05:00
Daniel Agar
10410fc868
msg: rename sensor_bias -> estimator_sensor_bias
2020-01-27 09:03:27 +01:00
kamilritz
5a5b3a44ee
Update flow interface
2020-01-24 16:49:17 +03:00
kritz
47cab3dba5
Update external vision interface ( #13989 )
...
* Update external vision interface
* Update ECL Version
2020-01-23 15:36:08 +01:00
kamilritz
8d25dcd543
Update EKF auxiliary velocity interface
2020-01-23 13:27:30 +01:00
kamilritz
9d184ea3d6
Update EKF range finder interface
2020-01-23 13:27:30 +01:00
kamilritz
230d7f2558
Update EKF airspeed interface
2020-01-23 13:27:30 +01:00
kamilritz
8772e09963
Update EKF gps interface
2020-01-23 13:27:30 +01:00
kamilritz
19b7421f86
Update EKF baro interface
2020-01-23 13:27:30 +01:00
kamilritz
439a20bfcb
Update EKF mag interface
2020-01-23 13:27:30 +01:00
Daniel Agar
697dbfb9f8
sensors/vehicle_imu: incremental step towards multi-EKF
2020-01-22 18:04:29 -05:00
Daniel Agar
21a8d7db7f
WorkItem modules: Run() shouldn't be public
2020-01-22 12:03:03 -05:00
kamilritz
04e09d772e
Add missing mag calibration biases
2020-01-21 13:36:08 +03:00
kamilritz
a3d2254e44
Move mag downsampling to ECL lib
2020-01-21 13:36:08 +03:00
kamilritz
4e8665082e
Move baro downsampling and dynamic pressure comp to ECL lib
2020-01-21 13:36:08 +03:00