Commit Graph

37 Commits

Author SHA1 Message Date
Felix Ruess 760dc14f7a [conf] bebop: add air_data module 2015-03-25 14:51:35 +01:00
Felix Ruess b95a1aff03 Merge pull request #1130 from paparazzi/refactor_estimators
Continue refactoring of AHRS and INS:
- add GEO_MAG ABI message
- add GPS ABI message
- remove explicit calling of update_gps functions (replaced by GPS ABI callbacks)
- each ins has it's own unique struct/function names
- send STATE_FILTER_STATUS from each implementation (with added id if you run multiple ones)
- use stateIsAttitudeValid() instead of AHRS.is_aligned
  - The state interface is initialized with invalid attitude.
    It becomes valid as soon as an attitude is set (via one of the stateSetNedToBodyX functions).
    This should be only done by an AHRS/INS after it is aligned.
- add possibility to run multiple (currently two) AHRS implementations and switch which one should push the output to the state interface during runtime

`ahrs_init()` and `ins_init()` are now sort of "dispatcher" functions, that init/register the actually used implementation.

As an example using `float_mlkf` as the `PRIMARY_AHRS` and `int_cmpl_quat` as `SECONDARY_AHRS`, in your firmware section of the airframe file:
```
  <subsystem name="ahrs"          type="float_mlkf"/>
  <subsystem name="ahrs"          type="int_cmpl_quat">
    <configure name="SECONDARY_AHRS" value="int_cmpl_quat"/>
  </subsystem>
```

In `ahrs_init()` it calls the ahrs_x_register functions for both. Each of those calls their own ahrs_foo_init and then `ahrs_register_impl(enable_output_function)`, then do the ABI binding and register periodic telemetry functions.

The "enable_output_function" pointer is used to keep a reference to the implementation functions to switch on/off publishing of the output to the state interface.
Hence you can call `ahrs_switch(idx)` at runtime to switch the output of the AHRS implementations.
E.g. with idx=1 switch to the output of the secondary AHRS (with 0 being the primary)
Add the `conf/settings/estimators/ahrs_secondary.xml` settings file to switch them via settings.
2015-03-24 14:19:03 +01:00
Felix Ruess 7f4b313c72 [conf] update conf for apogee_chibios 2015-03-23 23:24:55 +01:00
Felix Ruess 8a8ec7ee9a [conf] bebop with secondary ahrs
MLKF as primary AHRS
ICQ as secondary AHRS
2015-03-10 17:26:47 +01:00
Felix Ruess 0f23e39f80 [bebop] ignore some unused result warnings and add to conf_tests 2015-03-06 20:43:11 +01:00
Felix Ruess 17b200a59e Merge pull request #1062 from paparazzi/opticflow
Add cv_opticflow.xml module.
Used to for hover stabilization on an ARDrone2.

Also adds AP_MODE_MODULE to make it easier to add extra "external" control loops.
2015-02-05 22:04:32 +01:00
Felix Ruess ce4e12d950 [conf] sort aircrafts in conf_tests 2015-01-28 18:05:42 +01:00
Gautier Hattenberger b684dc60b0 [test] add A/C with ins_invariant filter in test conf 2015-01-19 18:32:30 +01:00
dewagter c3c7676e1d [conf_tests] Test-compile optic flow 2015-01-15 23:54:49 +01:00
Felix Ruess 19fdef9c68 [airborne] add pprz_version and send it with BOOT 2014-12-19 15:58:09 +01:00
Felix Ruess 2a0bcc6b66 [conf] update settings_modules in confs 2014-12-14 20:49:19 +01:00
Felix Ruess 74bdc6a3a5 [conf] add a mavlink test airframe 2014-12-11 15:37:18 +01:00
Felix Ruess 3a48f5e62f [conf] update settings_modules in confs 2014-12-05 19:20:14 +01:00
Felix Ruess 46714e9b6e [radio_control] spektrum: copy only actually used channels to radio_control.values 2014-11-28 13:41:52 +01:00
Felix Ruess b2dcc2ceb8 [conf] fix conf_tests 2014-10-21 14:00:27 +02:00
Christoph Niemann 9328805b54 Add confs for HBMini 2014-10-21 13:16:09 +02:00
Gautier Hattenberger 85e79a4018 [conf] update all example airframe for new modules' settings 2014-10-08 15:28:15 +02:00
Gautier Hattenberger f0c3dfb578 remove another unneeded settings file 2014-10-01 11:26:34 +02:00
Gautier Hattenberger ba82c0419f [settings] fix example conf 2014-10-01 10:22:35 +02:00
Felix Ruess e0afb70909 [test] fix test_settings 2014-09-15 15:04:19 +02:00
Felix Ruess 54ec5acd24 [conf] remove ins_neutrals settings from example and test conf 2014-08-28 16:38:41 +02:00
Felix Ruess bf44219206 [ins] fix typo 2014-08-27 15:57:35 +02:00
Piotr Esden-Tempski 862dd7a04c [lisa/s] Added LadyLisa airframe file to example ant test conf lists. 2014-08-17 14:33:31 +02:00
Felix Ruess 256ce57209 [settings] add persistent superbitrf bind_mfg_id 2014-08-16 22:27:59 +02:00
Felix Ruess e382617c0f [settings] test prog and minor updates for persistent settings 2014-07-27 14:25:38 +02:00
Felix Ruess e37e572931 [conf] add apogee_chibios to tests 2014-07-26 22:49:24 +02:00
Freek van Tienen a9c2f70fc6 [navstik] Fix tests for the NavStik board
closes #752
2014-06-24 12:25:32 +02:00
Felix Ruess 4adee28825 [conf] enable mag for quadshot and add it to tests/examples 2014-06-03 12:13:10 +02:00
Felix Ruess 6b89a8207b [conf] Quad_LisaMX with F4 and mlkf 2014-05-30 21:19:39 +02:00
dewagter e060c38d8d [airframes] two times same, one not compiling 2014-05-23 18:12:17 +02:00
Felix Ruess 0e99377982 [conf] remove jsbsim from microjet, add krooz_quad to tests 2014-05-21 14:32:52 +02:00
Felix Ruess baccfebfea [conf] add Quad_LisaS to tests 2014-05-18 12:55:38 +02:00
Felix Ruess 70a3987a42 [conf] sort conf example and test 2014-05-13 17:30:03 +02:00
Felix Ruess 796afc65fe [setup] fix setup_actuators with a workaround
not very nice, but should work...
fixes #359
2014-01-05 01:43:38 +01:00
Felix Ruess c2a7a029d9 [conf] remove outdated tiny2_chimu_spi airframe from tests file 2013-12-18 21:04:38 +01:00
Felix Ruess 900206cd82 Merge branch 'master' into ahrs_int_cmpl_quat_correction_scaling
merge to get latest features/fixes from master
for conflict resolution and testing
2013-10-07 16:38:12 +02:00
Felix Ruess 80a007f155 [conf] rename from *.xml.example to *_example.xml
- select_conf: personal conf file is conf_personal.xml
2013-09-14 00:04:00 +02:00