Corvus Corax
9a6072d58c
Merge branch 'next' into corvuscorax/OP-942_task-diagnostics-for-callbacks
...
Conflicts:
flight/targets/boards/simposix/firmware/Makefile
2014-02-07 00:31:32 +01:00
Corvus Corax
28be9cc8ce
OP-1211 adapted existing code to use new pios functionality instead of separate error prone implementations
2014-02-04 19:48:33 +01:00
Corvus Corax
49a1c4c28f
OP-942 refactored callback scheduler to fit into PiOS naming scheme
2014-02-02 22:08:16 +01:00
Corvus Corax
b076ba02a1
OP-942 API change to CallbackScheduler - include unique ID for each callback for a taskinfo like UAVObject
2014-02-02 19:54:17 +01:00
Corvus Corax
3b635693a5
OP-1161 changed the way magnetometer-errors are handled - and defaults
...
* ekf will ignore magnetometer errors for initialization
(errors might be caused by not yet existing attitude estimation)
* defaults changed for filtering
* magnetometer sensor will be available for all filters, alarms need to
be checked separately
2014-01-14 21:09:14 +01:00
Corvus Corax
75b1a7ff5f
OP-1161 moved mag validity check function from sensors to state estimation
2014-01-14 16:45:44 +01:00
Corvus Corax
c180846ca9
OP-1161 discard magnetometer in filters if plausibility alarm is set
2014-01-14 16:45:21 +01:00
Corvus Corax
84af4b7651
fixes to barofilter
2013-12-08 14:00:09 +01:00
Corvus Corax
66b0ffd682
small fix to baro state filter - more init cycles
2013-12-08 13:35:00 +01:00
Corvus Corax
b3ebb91ceb
uncrustification
2013-10-19 21:59:07 +02:00
Alessio Morale
c0cfd3dffe
Merge branch 'amorale/OP-1058_uavo_named_accessors' into next
2013-09-10 21:20:12 +02:00
Alessio Morale
0db9a9bf8d
OP-1058 Add xxxGet and xxxSet functions to handle multielement fields as struct
...
for example:
EKFStateVariancePSet(EKFStateVariancePData *NewP);
EKFStateVariancePGet(EKFStateVariancePData *NewP);
Also in this case array accessors are renamed as xxxArrayGet/Set:
EKFStateVariancePArraySet(float *NewP);
EKFStateVariancePArrayGet(float *NewP);
Nothing changes for anonymous items as default functions continues to deal with arrays
+review OPReview-552
2013-09-01 13:23:20 +02:00
Alessio Morale
e91bc28667
OP-1058 Get rid of Unions.
...
They caused stack usage increase with -fstrict-aliasing as stack slots are not reused when dealing with unions.
It has now been added the cast_struct_to_array macro in pios_struct_helper.h to handle such case where it is useful to access those homogeneous structs as arrays
+review OPReview-552
2013-09-01 12:10:55 +02:00
Alessio Morale
11b269f898
Merge remote-tracking branch 'origin/next' into amorale/OP-1058_uavo_named_accessors
2013-08-31 16:03:30 +02:00
Erik Gustavsson
e39c3f897e
Use xTaskGetTickCount() to time long intervals rather than PIOS_DELAY_GetRaw(), because of wrap-around issues.
2013-08-26 19:14:47 +02:00
Corvus Corax
0db395b4a2
uncrustify
2013-08-11 15:33:59 +02:00
Alessio Morale
9e1acc3165
OP-1058: fix needed for fw_revolution code compilation
2013-07-31 15:24:26 +02:00
Oleg Semyonov
77a6db3007
Merge remote-tracking branch 'origin/os/baro-offset-lpf' into next
2013-07-30 23:41:37 +02:00
Alessio Morale
b4d2423680
OP-1048 fix CF stateestimation bug using AccelTau.
...
move *_filtered to stateestimator data struct and initialize them at init.
they were previously used uninitialized thus causing estimation to fail validations, restarting the filter continously
+review OPReview
2013-07-30 23:41:21 +02:00
Oleg Semyonov
1bfa66c2b6
Change settings for baro altitude offset correction
2013-07-26 21:14:44 +02:00
Corvus Corax
72e33a11e4
uncrustification, changed ekf glitch recognition to warning, since its now benign
2013-07-19 15:40:57 +02:00
Corvus Corax
b9ae8844a1
return error if ekf has not inited to prevent arming without proper state estimation
2013-07-19 15:37:50 +02:00
Oleg Semyonov
aa560653d4
Make baro altitude offset (relative to GPS alt) filter configurable
2013-07-19 09:53:44 +03:00
Corvus Corax
27eadc200b
Merge branch 'corvuscorax/lla2nedfilter' into next
...
Conflicts:
flight/modules/StateEstimation/stateestimation.c
2013-07-10 14:38:12 +02:00
Corvus Corax
0107432e45
Added a low pass filter for accels to the altitude filter
2013-07-02 23:17:08 +02:00
Corvus Corax
ba87f32812
typo fix
2013-06-30 19:46:28 +02:00
Corvus Corax
51a4b16af5
New Filter to calculate NED from LLA as part of StateEstimation
2013-06-30 18:49:29 +02:00
Corvus Corax
7745f93935
changed default coefficients and exposed them to a settings uavobject as they should be
2013-06-29 01:16:02 +02:00
Corvus Corax
2621b087a2
fixed filter in first bench test tries, works surprisingly well...
2013-06-28 21:27:05 +02:00
Corvus Corax
2fb0c0a3ce
some uncrustification
2013-06-28 19:52:09 +02:00
Corvus Corax
b9038e5ed6
new simple complementary filter to calculate current altitude and vertical speed
2013-06-28 17:22:16 +02:00
Corvus Corax
f2abe1f5c7
StateEstimation: removed (not yet implemented) 16 state EKF support for now
2013-06-25 19:30:21 +02:00
Corvus Corax
5bdfad4bdb
removed redundant check as suggested in review
2013-06-23 19:39:00 +02:00
Corvus Corax
e916902c9e
changed alarm return states, so cf initialisation will cause visible LED blinks...
2013-06-23 19:26:17 +02:00
Corvus Corax
407817f959
backport of complementary filter bugfix
2013-06-23 18:37:43 +02:00
Corvus Corax
d8f9f839f2
startup grace time for filter initialisation
2013-06-09 21:49:04 +02:00
Corvus Corax
a99255a36a
allow smaller nonzero variances during runtime
2013-06-09 13:57:36 +02:00
Corvus Corax
022f1a1ac0
Merge branch 'next' into corvuscorax/OP-947_stateestimator-module
...
Conflicts:
flight/modules/Attitude/revolution/attitude.c
2013-06-09 13:49:52 +02:00
Corvus Corax
6fdf554d4a
Merge branch 'next' into corvuscorax/OP-947_stateestimator-module
...
Conflicts:
flight/modules/Attitude/revolution/attitude.c
ground/openpilotgcs/src/plugins/opmap/opmapgadgetwidget.cpp
shared/uavobjectdefinition/attitudesettings.xml
2013-06-06 19:25:54 +02:00
Corvus Corax
fcc3f519d8
filterekf: Remember critical divergence and set error flag to prevent (re)arming so the user will notice
2013-06-06 17:59:27 +02:00
Corvus Corax
b0db191703
Divide mag variance by Be squared to cope with normalization correctly
2013-06-06 17:54:59 +02:00
Corvus Corax
bab95e7ca8
check variances for validity and reinitialize if invalid
2013-06-06 00:07:11 +02:00
Corvus Corax
f22a0d299e
EKF: Averaging term for dT
...
- prevent scheduling jitter from screwing with the filter while keeping dT accurate
2013-06-06 00:06:12 +02:00
Corvus Corax
6435604182
some fixes and corrections as suggested in review
2013-05-29 22:18:08 +02:00
Corvus Corax
e82a52e8ff
filterekf: changed mag variance to 1/1000000 to compensate for normalization, as it was done on old AHRS
2013-05-29 22:02:39 +02:00
Corvus Corax
7bf58f09c5
filterekf gyro bias adjustment bugfix
2013-05-25 16:18:18 +02:00
Corvus Corax
6c25e82633
fixed bugs in GPS, corrected zeroing of updated flags in stateestimation
2013-05-25 12:28:32 +02:00
Corvus Corax
87b1b4873c
bugfix in baro alt filter plugin
2013-05-25 02:02:53 +02:00
Corvus Corax
902bf29c92
some small bugfixes to filterekf
2013-05-25 00:05:06 +02:00
Corvus Corax
b916df5448
ported cyr's patch to new CF
2013-05-24 23:59:12 +02:00
Corvus Corax
259eeecbbc
Put Macros in StateEstimation into the file header after request in review.
...
Author expresses concernes about the code readability in this layout
(Commit message edited, was: "HATE THIS")
2013-05-24 19:19:40 +02:00
Corvus Corax
40864b2d3b
some cleanups
2013-05-23 21:21:14 +02:00
Corvus Corax
53ba3f4b74
removed GPS check from ekf and put into GPS
2013-05-22 23:20:31 +02:00
Corvus Corax
843db63cf6
some last issues from review
2013-05-22 23:08:48 +02:00
Corvus Corax
9b95af2006
refaktored GPS Sensor UAVObjects
2013-05-22 22:36:23 +02:00
Corvus Corax
b56de3b66b
filterchain rework
2013-05-22 21:26:18 +02:00
Corvus Corax
8fe159c457
some changes...
2013-05-22 19:05:28 +02:00
Corvus Corax
ecc4a529a3
some fixes to filtercf and stateestimation and filterekf - Thanks Werner for help :-)
2013-05-21 20:06:33 +02:00
Corvus Corax
a04b76f836
some bugfixes to make it boot on revo
2013-05-20 20:25:20 +02:00
Corvus Corax
8a36959d39
OP-945: Filter refaktoring - last fixes to make it compile
2013-05-20 17:04:52 +02:00
Corvus Corax
e7c35a94f6
added EKF filter
2013-05-20 16:31:10 +02:00
Corvus Corax
a286cc6b24
update settings during initialisation only
2013-05-20 15:28:18 +02:00
Corvus Corax
a03f87efb5
Complementary filter added
2013-05-20 15:04:36 +02:00
Corvus Corax
741c70cda4
barometric bias filter added
2013-05-20 12:56:40 +02:00
Corvus Corax
7ea258a895
airspeed filter added
2013-05-20 12:45:39 +02:00
Corvus Corax
2f082dbf87
added filter for magnetometer bias drift compensation
2013-05-20 11:24:57 +02:00
Corvus Corax
1bd9cdafab
added missing attitude state variable ;)
2013-05-20 10:43:40 +02:00
Corvus Corax
34294d2635
Magneto to Mag fix
2013-05-20 10:35:54 +02:00
Corvus Corax
46e7d2121f
fake filter for stationary position data added
2013-05-19 22:49:11 +02:00
Corvus Corax
bf80b3f103
readded missing header
2013-05-19 22:40:50 +02:00
Corvus Corax
bc6f06e943
first filter implemented and some bugs fixed
2013-05-19 22:24:12 +02:00
Corvus Corax
b62c758831
statefilter main file almost complete, time to start work on filter classes
2013-05-19 22:24:12 +02:00
Corvus Corax
2ab9f938c9
ongoing dev work, incomplete
2013-05-19 22:24:12 +02:00