Commit Graph

143 Commits

Author SHA1 Message Date
Paul Riseborough d80a233bcb ekf2: fix code style 2016-10-11 08:52:35 +02:00
Paul Riseborough 6eabf80f2a ekf2: Publish estimator solution status flags 2016-10-11 08:52:35 +02:00
Paul Riseborough c0fe08a203 ekf2: publish estimator status position accuracy 2016-10-11 08:52:35 +02:00
Paul Riseborough 5a69f4560a ekf2: Publish innovation test status data 2016-10-11 08:52:35 +02:00
Julian Oes 8ff237c69f Remove size optimization for individual modules
It makes more sense to set the optimization flags on a platform basis
instead of individually for each module. This allows for different
optimization options for SITL, NuttX, Snapdragon, etc.
2016-09-30 08:11:51 +02:00
Lorenz Meier 9a8e6de7fe EKF2: Remove QuRT hackery 2016-09-11 20:07:30 +02:00
Lorenz Meier d810726c6e EKF2: Only use the memory it needs 2016-08-15 19:53:21 +02:00
Lorenz Meier a130b6a65c style cleanup 2016-08-15 19:53:21 +02:00
Daniel Agar 8f01324890 ekf2 fix and enforce code style 2016-08-07 10:40:17 +02:00
Vasily Evseenko 457526ebe7 Don't push bad values from lidar to EKF2 (#5196)
Report terrain altitude
2016-08-01 23:30:40 -07:00
Lorenz Meier a1c8585342 EKF2: Report zero as position until local pos is valid 2016-07-31 14:01:32 +02:00
Lorenz Meier 826eaed2ee EKF2: Clean up vision timestamps 2016-07-10 12:43:21 +02:00
Daniel Agar 4252511b8e add bitmask param metadata 2016-07-07 12:42:59 +02:00
Beat Küng 9c73eae941 sensor_combined: replace accel & gyro integral with value, use float for dt
Reason: the value is easier to read & handle (for example plotting). In
most places the value is needed, not the integral.

Note that this breaks the replay format for sdlog2 replay
2016-07-07 11:35:50 +02:00
Beat Küng 8e136779ec stack sizes: reduce stack sizes for modules that use sensor_combined
The sensor_combined topic got reduced from ~780 bytes to 72 bytes.
2016-07-07 11:35:50 +02:00
Beat Küng c5ea4b43be sensor_combined.msg: make timestamps relative
This is needed for the new logger & saves some space as well.
2016-07-07 11:35:50 +02:00
Beat Küng d846ad5dac sensors: move voting into sensors module
- voting is now at a central place instead of duplicated within the
  estimators
  -> this also means that estimators that did not do voting so far,
     now have voting, like ekf2
- estimators requiring more than that can still subscribe to the raw
  sensors
- allows sensors_combined to be 3 times smaller
  - reduces logger, memcpy (cache) & RAM overhead
- all modules requiring only 1 or 2 sensor values now automatically get
  the voted result
- this also adds voting to baro
2016-07-07 11:35:50 +02:00
Beat Küng b4ecc5a8d9 sensor_combined cleanup: remove many unneeded fields
Decreases the message size from 780 to 280 bytes.
In particular, all modules using sensor_combined must use the integral now.
The sensor value can easily be reconstructed by dividing with dt.

Voters now need to be moved into sensors module, because error count and
priority is removed from the topic.

Any module that requires additional data from a sensor can subscribe to
the raw sensor topics.

At two places, values are set to zero instead of subscribing to the raw
sensors (with the assumption that no one reads them):
- mavlink mavlink_highres_imu_t::abs_pressure
- sdlog2: sensor temperatures
2016-07-07 11:35:50 +02:00
Julian Oes 3524fd7d24 ekf2: don't ignore function argument (#4990) 2016-07-05 17:40:37 +02:00
Lorenz Meier ed19d1ff6b EKF2 wrapper: Optimize for size 2016-07-01 18:22:56 +02:00
Beat Küng 940ac5471d ekf2: remove unused gps_msg.time_usec_vel 2016-06-24 00:22:01 +02:00
Beat Küng e2a7145379 vehicle_gps_position: remove timestamp_variance & timestamp_velocity (they're not used) 2016-06-24 00:22:01 +02:00
Beat Küng 89f5bd27e8 vehicle_gps_position: use timestamp field instead of timestamp_position
timestamp was unused. This allows to remove timestamp_position.
2016-06-24 00:22:01 +02:00
Roman 27e61127a8 ekf2: fix if else logic
Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-23 09:08:35 +02:00
Roman 7f8c183d99 added airspeed mode enum to control state topic
Signed-off-by: Roman <bapstr@ethz.ch>
2016-06-23 09:08:35 +02:00
tumbili 1bce38bd9b code style formatting 2016-06-23 09:08:35 +02:00
tumbili c2da51ccf5 use airspeed mode parameter to decide which method used to publish
control state airspeed
2016-06-23 09:08:34 +02:00
tumbili 6739ae9dfc ekf2: substract gyro bias from control state rates
Signed-off-by: tumbili <roman@px4.io>
2016-06-22 07:10:20 +02:00
CarlOlsson d66af65a92 ekf2: fixed airspeed thr bug 2016-06-14 10:28:40 +02:00
tumbili b9e9f62bee code style formatting 2016-06-08 17:14:33 +02:00
CarlOlsson acea2f98d5 log airspeed in rpl mode even if it is not fused 2016-06-08 17:12:05 +02:00
CarlOlsson 9c170f7fae added parameter which defines threshold for airspeed given to the filter
remove unnecessary replay fields
2016-06-08 17:11:10 +02:00
Paul Riseborough 9e0ab5d266 ekf2: update height source parameter documentation 2016-05-28 14:54:14 +02:00
Paul Riseborough ac50510c78 ekf2: Use parameter defined values for EV noise if vision system estimates not available 2016-05-28 14:54:14 +02:00
Paul Riseborough 37b4955f07 ekf2: Add use and logging of external vision data 2016-05-28 14:54:14 +02:00
Paul Riseborough 57c1138d28 ekf2: add parameters for control of external vision fusion 2016-05-28 14:54:14 +02:00
Paul Riseborough d4262bce2a EKF2 output predictor update (#4606)
* ekf2: Update tuning parameter documentation

* ecl: update submodule reference

Enables selection of a new output predictor method
2016-05-27 08:36:37 +02:00
Lorenz Meier d8bcd77290 EKF2: Remove unused header 2016-05-21 14:10:49 +02:00
Paul Riseborough 83cc9ef496 ekf2: Enable tuning of initial tilt alignment uncertainty 2016-05-18 12:44:04 +10:00
Paul Riseborough 7d2d15643d ekf2: Add tuning for IMU switch-on bias errors 2016-05-18 12:44:04 +10:00
Paul Riseborough 3aa2297497 ekf2: Add parameters to control output filter 2016-05-14 11:24:41 +02:00
CarlOlsson 88800b9e36 added tas_innov_gate to params 2016-05-13 13:55:57 +02:00
Julian Oes 7d64aa8057 ekf2: raise stack size on Snapdragon
It seems that the stack size was exhausted on Snapdragon.
2016-05-11 14:53:55 +02:00
Paul Riseborough 4480e4206d ekf2: remove use of arm status 2016-05-11 14:53:55 +02:00
Paul Riseborough af9a7a39f2 ekf2: add handling of filter internal fault message 2016-05-11 14:53:55 +02:00
Paul Riseborough 2c6b7a008f ekf2: Update tuning parameters
Remove unused gyro scale factor parameter
Change gyro and accelerometer bias noise parameters to more intuitive units
Updated tuning defaults
2016-05-11 14:53:55 +02:00
Paul Riseborough 7f1632d65b ekf2: correct control state message for 3D acc bias 2016-05-11 14:53:55 +02:00
CarlOlsson 6b5e77250f ekf2: Added airspeed to rpl logging 2016-05-10 21:32:55 +02:00
tumbili 57f73e59b7 warn immediately if ekf2 instance allocation has failed 2016-05-03 16:09:26 +02:00
tumbili 9f5e9594f5 implement ekf instance and block parameter instance as class members
in order to avoid memory management
2016-05-03 16:09:26 +02:00