Commit Graph

23 Commits

Author SHA1 Message Date
Gautier Hattenberger 363dec8693 Autopilot refactor (#2009)
* [autopilot] refactor autopilot API for both firmwares

With this, fixedwing and rotorcraft are mostly using the same interface
for the autopilot. Some specific code and messages handling are still
firmware dependent.
A large part of the autopilot logic of the fixedwing is moved from
main_ap to autopilot_static.
More getter/setter functions are provided.

* [autopilot] update the rest of the system and the conf

for using the refactored autopilot API

* [autopilot] fix some errors from CI servers

* [actuators] use dummy actuators module to prevent autoloading

* Rename Bart_heliDD_INDI.xml to tudelft_bs_helidd_indi.xml

* Rename Bart_heliDD_pid.xml to tudelft_bs_helidd_pid.xml

* Delete tudelft_course2016_bebop_colorfilter.xml

* Delete tudelft_course2016_bebop_avoider.xml

* [actuators] don't autoload actuators when set to 'none'

* [gcs] autodetect firmware for strip mode button
2017-02-19 11:45:57 +01:00
Felix Ruess a7b0b4e13e [boards] start support for openpilot revo nano (#1968)
- While the STM32F411 can run at up to 100MHz, this is not supported out-of-the-box with libopencm3 yet.
  So we use the 84MHz clock setup from the STM32F401.
- ADC pins not set up yet
2016-12-16 17:04:31 +01:00
Ewoud Smeur 6dcabb3a57 update INDI tu use full control effecitvens matrix (#1916)
* update INDI tu use full control effecitvens matrix

Instead of using commands (roll, pitch, yaw, thrust), give the
controller direct control over all actuators.
This allows for online individual actuator control effectiveness
estimation and inversion, as well as better saturation handling.
The INDI controller as it was previous is renamed to 'simple'.

* Made INDI more flexible wrt number of actuators

- 4x4 matrix inverse to accomodate the thrust axis as well
- support for more actuators
- cleanup of code

* Change filters guidance indi to butterworth

* Added body acceleration to state interface

* Better adaptation and guidance thrust increment

- Adaptation flexible wrt. number of actuators.
- Added adaptation of the specific force effectiveness of the actuators.
- Added connection to guidance INDI through ABI. The thrust increment is
  caclulated in guidance INDI and sent to the stabilization.

* lower case variables

* change filter of indi to butterworth

* INDI fix array index & no declarations in for loop

- Also added doxygen comments

* Added actuators_pprz

the array actuators is used to drive the servos, so a new array to store
the command to the actuators in pprz scale is needed

* Removed hardcoded scaling
2016-12-01 10:02:36 -08:00
Gautier Hattenberger 8e27fba359 [modules] update module section to replace 'load' node 2016-04-19 00:50:33 +02:00
Felix Ruess 7e68b0f306 [airframes] replace subsystem by module
find conf/airframes -name "*.xml" -exec sed -i 's/subsystem/module/g' {} +
this change should be fully backwards compatible
2016-04-18 22:00:56 +02:00
Felix Ruess adf190604a [conf] cc3d airframe without gps 2016-03-24 14:59:00 +01:00
Freek van Tienen 93959f5080 [conf] Remove unused rate controller and settings 2016-01-27 17:23:23 +01:00
Felix Ruess 2918fce338 Merge pull request #1481 from flixr/naze32_default_config
[boards] naze32: PPM input on PA0 by default

That means by default you can't use SERVOS 1 and 2 and only the pwm channels on servo connectors 3-6 are active.

Chosing RADIO_CONTROL_PPM_PIN as PA7 (RC_CH6) via
<configure name="RADIO_CONTROL_PPM_PIN" value="PA7"/>
will also enable servos 1 and 2.
2015-12-16 12:04:28 +01:00
Ewoud Smeur 7009fbb12d updated all airframe files to new rate control setpoint 2015-12-15 15:50:28 +01:00
Felix Ruess 9ba4315eb7 [boards] naze32: PPM input on PA0 by default
That means by default you can't use SERVOS 1 and 2.
Numbering is like on the silkscreen (use servos 3-6), like "standard mode" numbering of Abusemark naze32.

Chosing RADIO_CONTROL_PPM_PIN as PA7 (RC_CH6):
Enable servos 1 and 2.
2015-12-13 14:58:07 +01:00
Open UAS d4b6048264 Removed all old airframe quot cruft and added string and arry string types 2015-12-10 22:02:46 +01:00
Felix Ruess 084171f42a [conf] try to make quad_flip32 compile with gcc 4.8
fits with the better optimization of 4.9, but not with 4.8
2015-12-07 16:03:28 +01:00
Felix Ruess 65fac80f28 [conf] test_math_trig_compressed doesn't run on the low end boards 2015-12-04 14:05:26 +01:00
Felix Ruess 6d6e59e5c9 [imu] mpu60x0_i2c: fix required configure 2015-12-03 12:10:23 +01:00
Martin Mueller efc05d53a6 [boards] preliminary support for CJMCU micro board 2015-12-03 12:09:28 +01:00
Martin Mueller a0ad29923e [boards] example hex for preliminary support for naze32 rev5 2015-12-03 00:14:50 +01:00
Felix Ruess b11708dbdc [boards] preliminary support for naze32 rev4 2015-12-02 00:12:49 +01:00
Felix Ruess 3572e76197 [conf] add preliminary quad_cc3d 2015-12-01 19:26:15 +01:00
Ewoud Smeur 5637b0f37e updated airframes with removal of rate control reference model 2015-11-25 14:24:08 +01:00
Felix Ruess 4674989012 [conf] add untested/unfinished airframe for pixhawk lite 2015-10-13 21:04:31 +02:00
Felix Ruess f5c68c569b [airframes] some more cleanup 2015-07-25 10:38:43 +02:00
Felix Ruess 0eae573174 [airframes] move parrot airframes to examples/untested subdirs 2015-07-24 15:50:00 +02:00
podhrmic ea77d1a395 [conf] Aiframe cleanup
- unused airframe xml files fronm conf_example and conf_test.xml were moved to untested folder

closes #1249
2015-07-21 23:28:49 +02:00