Commit Graph

351 Commits

Author SHA1 Message Date
Silvan Fuhrer ff6577ce5f EKF and AirspeedSelector: publish multiple wind estimate topic instances and log them all
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-09-01 14:05:06 -04:00
Daniel Agar 78ef8aab2d STACK_MAIN increase default 1024 -> 2048 2019-08-30 19:11:51 -07:00
Silvan Fuhrer 07895cd3b6 Airspeed Selector: resolve conflics for wind estimate topic publishing after rebase
Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-09 10:55:05 +02:00
Silvan Fuhrer cedf14e2ba Airspeed Selector: repurpose wind estimator into an airspeed (selection, validation) module.
This new airspeed module does:
  -runns an airspeed validator for every airspeed sensor present, which checks measurement validity and estimates an airspeed scale
  -selects another airspeed sensor if for the current one a failure is detected
  -estimates airspeed with groundspeed-windspeed if no valid airspeed sensor is present
  -outputs airspeed_validated topic

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-09 10:55:05 +02:00
Daniel Agar a917f22b65 sensors: create vehicle_acceleration module (#12597) 2019-08-07 05:05:48 -04:00
Daniel Agar 2ad12d7977 sensors: create vehicle_angular_velocity module (#12596)
* split out filtered sensor_gyro aggregation from mc_att_control and move to wq:rate_ctrl
2019-08-06 12:55:25 -04:00
Hamish Willee 2b8337e5e2 Add units for EKF2_RNG_A_HMAX and EKF2_RNG_A_VMAX (#12545) 2019-07-25 08:09:35 +02:00
RomanBapst 2c74216028 ekf2: fixed calculation of static pressure error
Signed-off-by: RomanBapst <bapstroman@gmail.com>
2019-06-27 18:11:53 +02:00
Timothy Scott a134da6e12 Removed is_rotor_wing, replaced with vehicle_type 2019-06-13 10:04:26 +02:00
Daniel Agar 79d4c09d59 uORB::Publication simplify and cleanup
- base class is now template
 - drop linked list
 - virtualization no longer required
2019-06-12 08:48:19 -04:00
Daniel Agar 3796dda209 ekf2 move most orb subscriptions to uORB::Subscription 2019-06-06 08:22:15 +02:00
Beat Küng 5d6cc7d033 ekf2: reduce GPS initialization time for SITL from 10s to 0.5s
Speeds up SITL startup.
2019-05-28 10:45:38 +02:00
Matthias Grob 269d077fae ekf2: only check ground effect if it's configured 2019-04-30 12:34:28 +02:00
Roman f034d2da19 ekf2: fixed bug in baro ground effect triggering logic
- when either terrain data was temporarily not valid (flying at high
distance to the ground) or the vehicle was not close to the ground
(_param_ekf2_gnd_max_hgt) the ekf switched to using the land detector
ground effect flag.

Signed-off-by: Roman <bapstroman@gmail.com>
2019-04-30 12:34:28 +02:00
Paul Riseborough 0f346af226 ekf2: Improve parameter description
Inhibiting bias estimation using the EKF2_AID_MASK parameter only applies to the delta velocity bias states.
2019-04-24 06:55:54 +02:00
bresch 986c1a37d1 Parameter update - Rename variables in modules/ekf2
using parameter_update.py followed by a make format
2019-04-03 15:38:50 +02:00
Elia Tarasov b3bb625c71 add parameter to set ground effect distance 2019-03-21 10:07:12 +01:00
Elia Tarasov 04a486f13d enable ground effect zone when land detector is updated 2019-03-21 10:07:12 +01:00
Elia Tarasov 0c24aa6149 enable ground effect zone when valid terrain estimate is available 2019-03-21 10:07:12 +01:00
Matthias Grob aa36fa2dfd replace camel case by snake case.
Co-Authored-By: EliaTarasov <elias.tarasov@gmail.com>
2019-03-21 10:07:12 +01:00
Elia Tarasov 84d9820baa remove EKF2_GND_EFF_EN flag and use condition EKF2_GND_EFF_DZ > 0 instead 2019-03-21 10:07:12 +01:00
Elia Tarasov 5fa0a647e5 add parameter to enable/disable ground effect zone 2019-03-21 10:07:12 +01:00
Roman ecc8a696d0 added ground effect reporting to land detector
Signed-off-by: Roman <bapstroman@gmail.com>
2019-03-21 10:07:12 +01:00
Paul Riseborough f8ae8ba502 ekf2: Use ecl library with recent bug fixes and enhancements.
Bug Fixes:

https://github.com/PX4/ecl/pull/586 - EKF: fix covariance and output filter buffer initialization
https://github.com/PX4/ecl/pull/590 - EKF: Fix innovation in fuseDeclination()

Enhancements:

https://github.com/PX4/ecl/pull/543 - ekf_helper: add more useful methods to interface with the covariances
https://github.com/PX4/ecl/pull/588 - Add unit tests for DataValidator

Note:

https://github.com/PX4/ecl/pull/543  has required a change to how the state variances are accessed .
2019-03-14 19:25:36 +11:00
Daniel Agar beca16fa37 ekf2 update setGpsData usage 2019-03-05 23:28:26 -05:00
Paul Riseborough 6e0ca90852 ekf2: Minor parameter description edits 2019-03-05 07:17:09 +01:00
Paul Riseborough 643d8e968b ekf2: style fixes 2019-03-05 07:17:09 +01:00
Paul Riseborough 09da8e7dfc ekf2: Split static pressure correction into separate RH ad LH ellipsoids 2019-03-05 07:17:09 +01:00
Hamish Willee 4dc1503122 Fix link to EKF tuning page 2019-02-19 08:05:39 +01:00
Daniel Agar 07fbd2202a EKF2 use simplified ecl/EKF setIMUData 2019-02-06 20:20:51 -05:00
Daniel Agar ddc9522712 EKF2 always use IMU timestamp as now 2019-02-06 20:20:51 -05:00
Daniel Agar 60f2a92e3d replace <cfloat> with <float.h>
- <cfloat> isn't available in the NuttX c++ library
2019-01-06 19:20:57 -05:00
Julian Oes 5b9dea5604 Replacing usleep with px4_usleep
This is a step towards isolating time from the system.
2018-12-22 10:32:18 +01:00
Nuno Marques cfd1be584e Feature: VIO: add ODOMETRY stream (#11084)
* mavlink_messages: remove LOCAL_POSITION_NED_COV stream

* mavlink_messages.cpp: add ODOMETRY stream

* add MAV_ODOM_LP parameter to activate odometry loopback

* EKF2: add vehicle_odometry publisher

* Replace VISION_POSITION_ESTIMATE loopback with ODOMETRY

* LPE: add vehicle_odometry publisher

* set vehicle_odometry local_frame field

* mavlink_messages.cpp: ODOMETRY frame_id depends on MAV_ODOM_LP
2018-12-21 12:54:04 -05:00
Michael Schaeuble 30dbfd99fb EKF: Estimate WGS84 altitude with filtered AMSL offset 2018-11-22 16:55:30 +01:00
CarlOlsson b85710b194 ekf2: fix typo 2018-10-22 09:26:06 -04:00
CarlOlsson 7b0e0de43c ekf2: fix typo 2018-10-22 09:26:06 -04:00
CarlOlsson 6647471238 ekf2: increase maximum of EKF2_MAG_YAWLIM. This is needed on some fw platforms
in order to not constantly switch mag fusion mode in gusty winds.
2018-10-22 09:26:06 -04:00
Paul Riseborough 10354f022e ekf2: Allow use of RTK GPS heading 2018-10-17 09:48:38 -04:00
Beat Küng 23094b9ac9 ekf2: subscribe only to 2 gps topic instances 2018-10-02 14:14:10 +02:00
Paul Riseborough 72f85e4b2d ekf2: Handle blending of dissimilar rate GPS data (#10570)
A filtered update update interval is calculated for each receiver.
If dissimilar interval data is detected, blending occurs when data is received from the slower of the receivers.
If similar interval data is detected, blending occurs when receiver data with similar time stamps is available.
If no data is received from either receiver for longer than 300msec, then no blending will be performed and the most recent data will be used instead.
2018-09-29 09:23:19 -04:00
Beat Küng 0784725ad3 ekf2: only report gps failure flags that are enabled
So that they can be used for reporting errors.
2018-09-29 09:17:53 -04:00
TSC21 f0c231778f fix format 2018-09-18 09:52:33 +02:00
TSC21 9566804f8c fix small typo on PX4_ISFINITE covariance verification 2018-09-18 09:52:33 +02:00
TSC21 cc73f214d1 add covariance matrices index aliases 2018-09-18 09:52:33 +02:00
TSC21 8325724079 general fixes on VIO data access 2018-09-18 09:52:33 +02:00
TSC21 7d7ee8e4bf small rebase fix 2018-09-18 09:52:33 +02:00
TSC21 607be6791c ekf2: use fmaxf instead of fmax 2018-09-18 09:52:33 +02:00
TSC21 efe312d4a6 style and format clean 2018-09-18 09:52:33 +02:00
TSC21 183a63cce9 purge vehicle_vision_position alias 2018-09-18 09:52:33 +02:00