Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EKF2 Updates #7087

Merged
merged 4 commits into from Apr 21, 2017
Merged

EKF2 Updates #7087

merged 4 commits into from Apr 21, 2017

Conversation

priseborough
Copy link
Contributor

@priseborough priseborough commented Apr 20, 2017

This updates the ecl to latest master and updates the python scripts for ecl EKF log analysis.

This ecl version includes the following bug fixes and improvements:

  • More conservative reporting of velocity and position accuracy when aiding is lost
  • Separate reporting of accuracy for local and global position
  • Detection and recovery from badly conditioned accel bias states and covariance values
  • Logic to prevent high manoeuvre levels causing bad acceleration bias learning
  • Reduce sensitivity of covariance prediction to timing jitter
  • Continue reporting of GPS quality until the later of airborne or checks pass enabling the use of test output for pre-arm checking
  • Faster recovery from height estimation divergence caused by accelerometer clipping.
  • Add ability to perform wind estimation for multi-rotors using a specific force drag model.

A minimum code change for interface compatibility has been made in the ekf2 module.

The python automated EKF log analysis has been updated. Here are the PDF plots generated from a test flight performed using this PR:

22_55_30.ulg.pdf

Here is the output diagnostic summary:
22_55_30.ulg.mdat.csv.zip

The python tool was then run on a directory containing logs from several days of flying with the population summary plots produced

population_data.pdf

Miscellaneous bug fixes and improvements including:

More conservative reporting of velocity and position accuracy when aiding is lost
Separate reporting of accuracy for local and global position
Detection and recovery from badly conditioned accel bias states and covariance values
Logic to prevent high manoeuvre levels causing bad acceleration bias learning
Reduce sensitivity of covariance prediction to timing jitter
Continue reporting of GPS quality until the later of airborne or checks pass
Add ability to perform wind estimation for multi-rotors using a specific force drag model
Add assessment of IMU bias and mag field estimation
Reduce warning false positives by adjusting thresholds and eliminating use of peak value plots for output observer monitoring
Clear each figure after saving to reduce memory usage
@LorenzMeier
Copy link
Member

@PX4TestFlights Please test

Fix error in scaling of population high frequency vibration metrics
Add histograms for delta angle and velocity bias data
Fix variable descriptions
@mzahana
Copy link
Contributor

mzahana commented Apr 20, 2017

Can not connect to QGC 3.1.3 using this PR on px4fmu-v2_default. Any hints?

@priseborough
Copy link
Contributor Author

What is the size of the executable you have loaded? A large number of the V2 boards used a model of the STM32 chip with the silicon bug that prevented use of the upper 1MB of flash space in conjunction with the high speed USB connection.

@LorenzMeier LorenzMeier merged commit 1843061 into PX4:master Apr 21, 2017
@mzahana
Copy link
Contributor

mzahana commented Apr 21, 2017

@priseborough it is 836335. Do I need to remove some modules from cmake file?

@mzahana
Copy link
Contributor

mzahana commented Apr 21, 2017

Since this is already merged into master, I am going to try flashing latest master and check again.

@mzahana
Copy link
Contributor

mzahana commented Apr 21, 2017

I just flashed latest master, and I can connect to QGC 3.1.3. I will share logs later. Thanks.

@mzahana
Copy link
Contributor

mzahana commented Apr 21, 2017

I just did couple of flights with latest master which had this PR merged, and got nice flights. I have not yet encountered the altitude problem, that I used to get before: jumps in altitude mode, and not descending while the stick is down. So far so good. Thanks.

Here is a log:
http://logs.px4.io/plot_app?log=b6456729-9b0b-43a9-aff6-d2a4795f13d7

@priseborough priseborough deleted the pr-ekf2Updates branch May 6, 2017 22:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants