Difference between revisions of "Subsystems"

From PaparazziUAV
Jump to navigation Jump to search
Line 36: Line 36:
|[[Subsystem/imu|imu]]
|[[Subsystem/imu|imu]]
||
||
* analog
* apogee
* aspirin_v1.0
* aspirin_v1.0
* aspirin_v1.5
* aspirin_v1.5
* aspirin_v2.1
* aspirin_v2.1
* aspirin_v2.2
* aspirin_v2.2
* drotek_10dof_v2
* aspirin_i2c_v1.0
* aspirin_i2c_v1.5
* aspirin2_i2c
* b2_v1.0
* b2_v1.0
* b2_v1.1
* b2_v1.1
* b2_v1.2
* b2_v1.2
* drotek_10dof_v2
* gl1
* yai
* yai
* aspirin_i2c
* krooz_sd
* aspirin2_i2c
* analog
* ppzuav
* crista
* crista
* crista_hmc5843
* crista_hmc5843
* ppzuav
|
|
* all
* all
Line 61: Line 65:
* all
* all
* all
* all
* fixedwing
* all
* fixedwing
* all
* fixedwing
* all
* fixedwing
* all
* all
* all
* all
* rotorcraft
* rotorcraft
* rotorcraft
* rotorcraft
* fixedwing
|
|
* all
* stm32f4
* all
* all
* all
* all
* all
Line 80: Line 91:
* all
* all
* all
* all
* stm32f4
* all
* all
* all
* all

Revision as of 13:36, 29 August 2013

Mostly a subsystem is a part offering a specific functionality with a defined interface and can have multiple different implementations. (See sw/airborne/subsystems/...)

They are selected and configured with a <subsystem name="foo" type="bar"> in the firmware section of the airframe file.

All this does is basically include a makefile foo_bar.makefile that adds the respective sources and adds a few configuration options. (See conf/firmwares/subsystems/...)

This makes it easier to put an airframe file together (they replace the old raw makefile section) and also allows us to change the code and move/rename files behind the scenes without breaking everyones airframe files.

See FirmwareArchitecture for the differences to Modules, as well as how to write a new subsystem.

Available Subsystems

Name Types Firmwares Architecture Description
gps
  • ublox
  • ublox_utm
  • nmea
  • mediatek_diy
  • skytraq
  • all
  • fixedwing
  • all
  • fixedwing
  • rotorcraft
  • all
GPS drivers
imu
  • analog
  • apogee
  • aspirin_v1.0
  • aspirin_v1.5
  • aspirin_v2.1
  • aspirin_v2.2
  • aspirin_i2c_v1.0
  • aspirin_i2c_v1.5
  • aspirin2_i2c
  • b2_v1.0
  • b2_v1.1
  • b2_v1.2
  • drotek_10dof_v2
  • gl1
  • yai
  • krooz_sd
  • crista
  • crista_hmc5843
  • ppzuav
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • rotorcraft
  • rotorcraft
  • fixedwing
  • all
  • stm32f4
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • all
  • stm32f4
  • all
  • all
  • all
IMU drivers

Traditional IR sensors can be used for fixedwing

but an IMU subsystem is not required

ahrs
  • float_dcm
  • int_cmpl_euler
  • int_cmpl_quat
  • infrared
  • all
  • all
AHRS algorithms
radio_control
  • ppm
  • spektrum
  • datalink
  • all
  • all
  • fixedwing
  • all
  • STM32
  • all
Radio Control implementations
telemetry
  • transparent
  • transparent_usb
  • xbee_api
  • all
  • all
  • LPC21xx
  • all
Telemetry implementations
actuators
  • mkk
  • asctec
  • asctec_v2
  • pwm_supervision
  • skiron
  • heli
  • rotorcraft
  • rotorcraft
  • rotorcraft
  • rotorcraft
  • rotorcraft
  • rotorcraft
  • all
  • all
  • all
  • all
  • all
  • all
Drivers for different ESCs for rotorcraft

Fixedwing ESCs and servos are

possible on all firmwares/architectures

stabilization
  • int_quat
  • float_quat
  • euler
  • rotorcraft
  • rotorcraft
  • rotorcraft
  • all
  • all
  • all
Attitude control system for rotorcraft