63 Commits

Author SHA1 Message Date
Julian Oes
1f44fb1efd commander: internalize system status bools
Most condition bools in the commander are not used anywhere but in the
commander. It therefore makes sense to move them to a different internal
struct and remove them from the vehicle_status message.

Also, the land_detected should be used by all the modules instead of
getting it through the commander and system_status.
2016-04-11 18:01:47 +02:00
Paul Riseborough
e66a3bd99f ekf2: incorporate fixes to covariance prediction and initialisation
Update ecl library reference.
Update default parameters
2016-04-05 19:08:39 -07:00
CarlOlsson
16dea15d54 AStyle 2016-04-05 16:23:26 -07:00
CarlOlsson
7c88d599ee publish wind_estimate topic 2016-04-05 16:23:25 -07:00
tumbili
08be5b3f3a fixed formatting 2016-04-01 13:54:47 +02:00
tumbili
4da93a316d ekf2 replay logic:
support recent change in ekf2 module which made it only publish the output
when an ekf update was occuring. in case the ekf2 module does not update
the replay module will be informed and will thus not wait for an update
but continue preparing the next sample of sensor data
2016-04-01 13:54:46 +02:00
tumbili
2f48317a9e ekf2: publish indicated airspeed in control state topic 2016-03-31 14:03:42 +02:00
CarlOlsson
3af01a8c5e adopted ekf2_main.cpp 2016-03-30 17:33:37 +02:00
Julian Oes
bba0d0384d drivers/modules: changes after mavlink_log change
The mavlink_log API changes lead to changes in all drivers/modules using
it.
2016-03-24 13:10:02 +01:00
Paul Riseborough
75ebdda179 ekf2: Improved publishing rules
If the ekf has not completed alignment or encounters a serious error that produces NaN's on the attitude states, then the control, attitude and position topics are not published
The control topic is published first to reduce latency
2016-03-19 19:07:23 +04:00
MaEtUgR
d1e0cbe325 fixing all "argc < 1" to avoid segmentation fault when calling the module with no parameters
argc is never smaller than one because the first element of the array is the program name!
2016-03-13 17:52:33 +01:00
Paul Riseborough
c037b30aeb ekf2: add missing GPS status data to ekf2 replay 2016-03-13 17:47:56 +01:00
Roman
8e1b824ecb ekf2 app: only copy flow and range into replay message if they updated 2016-03-13 17:47:56 +01:00
Roman
181a5fd60d ekf2 app: only publish gps in replay if updated 2016-03-13 17:47:56 +01:00
Paul Riseborough
b1f656c4b8 ekf2: Add optical flow and range finder data to ekf2 replay logging 2016-03-13 17:47:56 +01:00
Paul Riseborough
1ca857404f ekf2: Enable tuning of terrain estimator 2016-03-13 17:47:56 +01:00
Paul Riseborough
735f2942c8 ekf2: Enable tuning of range finder and optical flow fusion parameters 2016-03-13 17:47:56 +01:00
Paul Riseborough
dcb47e425d ekf2: Add local position ground clearance reporting 2016-03-13 17:47:56 +01:00
Paul Riseborough
e540315da8 ekf2: Publish height above ground fusion data 2016-03-13 17:47:56 +01:00
Roman
5abd11c6b9 fixed rebasing issues 2016-03-13 17:47:56 +01:00
bugobliterator
01ee608117 sdlog: setup flow innovation logging 2016-03-13 17:47:56 +01:00
bugobliterator
e2901a7c2f ekf2: use yaw estimation of ekf for local position yaw value 2016-03-13 17:47:56 +01:00
bugobliterator
d33dbb8cbb ekf2: use estimator's estimate of variance for standard deviation calculation 2016-03-13 17:47:56 +01:00
bugobliterator
c02d17f56e ekf2: calculate dist from bottom values 2016-03-13 17:47:56 +01:00
bugobliterator
6c5812c528 ekf2: add listeners for range and optical flow data 2016-03-13 17:47:56 +01:00
Lorenz Meier
2fa43e35f5 Compile fixes for EKF2 2016-03-12 12:15:10 +01:00
tumbili
36e3600809 take into account laneded and armed flag for ekf2 replay 2016-02-27 11:51:05 +01:00
tumbili
652fb5e99e ekf2 app:
- support use of replay
2016-02-27 11:48:31 +01:00
Roman
15b0baf555 ekf2: fixed call to save parameter 2016-02-15 12:52:49 +01:00
Paul Riseborough
af5bbc916c ekf2: Enable user defeatible saving of declination for next startup 2016-02-15 12:52:49 +01:00
Paul Riseborough
2ca48037fd ekf2: Add mavlink adjustable parameters for control of magnetometer fusion 2016-02-15 12:52:49 +01:00
Roman
11df8168ee provide ekf2 with landed flag from landing detector 2016-02-14 21:26:47 +01:00
Roman
2177c0e18a ekf2: remove unused print functions 2016-02-14 20:51:01 +01:00
Lorenz Meier
3edf304e55 EKF2: Fix home altitude reporting 2016-02-10 08:38:03 +01:00
Paul Riseborough
371e5f70b1 ekf2: fix formatting 2016-02-05 18:28:32 +01:00
Paul Riseborough
a37daf4cec ekf2: Add position observation noise parameter for flying without GPS
A larger position uncertainty is required when flying without GPS to reduce tilt attitude estimation errors caused by vehicle manoeuvring. This needs to be tuneable to allow optimisation for different use cases (e.g. outdoor vs indoor).
2016-02-05 18:28:32 +01:00
Paul Riseborough
8f020d5a8f ekf2: Update tuning parameters
Set conservative defaults as a baseline for tuning
Add a missing parameter for magnetometer observation noise.
Correct error in definition of magnetic heading observations noise (previous parameter defined the variance directly, not the noise).
Update documentation and display names for consistency.
2016-02-05 18:28:32 +01:00
Roman
c75cc75d25 ekf2 module: be consistent in constructor 2016-01-31 22:28:19 +01:00
bugobliterator
0f43a1ebbb ekf2: fix code style 2016-01-31 22:12:11 +01:00
bugobliterator
04ad8ca594 ekf: change the name of estimatorr interface class 2016-01-31 22:12:11 +01:00
Paul Riseborough
92f0032475 ekf2: Add tuning parameters for GPS and Baro innovation gates 2016-01-31 22:12:11 +01:00
bugobliterator
6ffcca4b8f ekf2_main: fix variable pass type 2016-01-31 22:12:11 +01:00
Paul Riseborough
92f2492fff ekf2: update interface method for vehicle arm status and NED origin 2016-01-31 22:12:11 +01:00
Paul Riseborough
4594b3c69d ekf2: Add parameters for magnetometer error checks 2016-01-31 22:12:11 +01:00
Paul Riseborough
5e4f76d844 ekf2: Add parameters and support for GPS quality checks 2016-01-31 22:12:11 +01:00
Julian Oes
563460444a ekf2: get the rad to deg conversion right 2016-01-25 19:03:16 +01:00
Julian Oes
28754d3f58 ekf2: don't reset GPS position in every loop 2016-01-25 19:03:16 +01:00
Roman
c185a12c8e log ekf2 innovations and innovation variances 2016-01-22 14:24:36 +01:00
Roman
21f7641e8d log ekf2 estimator status 2016-01-22 14:24:36 +01:00
Lorenz Meier
7452cfdf63 EKF2: Fix polling code 2016-01-22 14:21:19 +01:00