Difference between revisions of "Modules list"

From PaparazziUAV
Jump to navigation Jump to search
(17 intermediate revisions by 4 users not shown)
Line 2: Line 2:
Some part of the code is already available as [[Modules|modules]]. Some other parts could be easily adapted. A module may have several configuration files for the most common uses. The code of the modules is placed in sw/airborne/modules/<directory name>.
Some part of the code is already available as [[Modules|modules]]. Some other parts could be easily adapted. A module may have several configuration files for the most common uses. The code of the modules is placed in sw/airborne/modules/<directory name>.


The auto-generated list and short doc for all modules in the master branch can be found at the [http://paparazzi.github.com/docs/latest/onboard_modules.html onboard modules page of the doxygen docs].
'''The auto-generated list and short doc for all modules in the master branch can be found at the [http://docs.paparazziuav.org/latest/onboard_modules.html onboard modules page of the doxygen docs].'''


== Available modules ==
== Available modules ==


{| class="wikitable" style="text-align:center" border="1"
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
Line 13: Line 13:
|Booz cam<br>([[Module/Rotorcraft_cam|Rotorcraft cam]]) || cam_control || booz_cam.xml<br>(rotorcraft_cam.xml) || Rotor || pointing of a simple camera on booz (servo for tilt, heading for pan
|Booz cam<br>([[Module/Rotorcraft_cam|Rotorcraft cam]]) || cam_control || booz_cam.xml<br>(rotorcraft_cam.xml) || Rotor || pointing of a simple camera on booz (servo for tilt, heading for pan
|-
|-
|Cam point || cam_control || cam_point.xml || FW || pointing of a camera
|[[Pan_Tilt_Camera|Cam point]] || cam_control || cam_point.xml || FW || pointing of a camera
|-
|-
|Cam roll || cam_control || cam_roll.xml || FW || roll camera
|Cam roll || cam_control || cam_roll.xml || FW || roll camera
Line 49: Line 49:
|Sonar || sonar || sonar_maxbotix_booz.xml || Booz || driver for a Maxbotix ultrasonic sensor
|Sonar || sonar || sonar_maxbotix_booz.xml || Booz || driver for a Maxbotix ultrasonic sensor
|-
|-
|[[Module/infrared|infrared_adc]] || sensors || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/infrared_adc.xml infrared_adc.xml] || FW || driver for infrared sensors based on analog voltage
|[[Module/infrared|infrared_adc]] || sensors || [http://docs.paparazziuav.org/latest/module__infrared_adc.html infrared_adc.xml] || FW || driver for infrared sensors based on analog voltage
|-
|-
|[[Module/infrared|infrared_i2c]] || sensors || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/infrared_i2c.xml infrared_i2c.xml] || FW || driver for infrared sensors with i2c connection
|[[Module/infrared|infrared_i2c]] || sensors || [http://docs.paparazziuav.org/latest/module__infrared_i2c.html infrared_i2c.xml] || FW || driver for infrared sensors with i2c connection
|-
|-
|alt_srf08 || sensors || alt_srf08.xml || FW || driver for Devantech Ultrasonic Range Finder SRF08
|alt_srf08 || sensors || alt_srf08.xml || FW || driver for Devantech Ultrasonic Range Finder SRF08
Line 63: Line 63:
|[[Module/Pwm_meas|pwm_meas]] || core || pwm_meas.xml || FW || driver wrapper to measure duty and period of pwm input, currently only LPC21xx arch
|[[Module/Pwm_meas|pwm_meas]] || core || pwm_meas.xml || FW || driver wrapper to measure duty and period of pwm input, currently only LPC21xx arch
|-
|-
|[[Module/System_monitor|sys mon]] || core || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/sys_mon.xml sys_mon.xml] || FW & Booz || measures CPU load & activity
|[[Module/System_monitor|sys mon]] || core || [http://docs.paparazziuav.org/latest/module__sys_mon.html sys_mon.xml] || FW & Booz || measures CPU load & activity
|-
|-
|DC  || digital_cam || digital_cam.xml<br>digital_cam_i2c.xml || FW & RW || Controls Digital Camera Functions (buttons) like shoot/zoom/onoff/take pictures at regular intervals
|DC  || digital_cam || [http://docs.paparazziuav.org/latest/module__digital_cam.html digital_cam.xml]<br>digital_cam_i2c.xml || FW & RW || Controls Digital Camera Functions (buttons) like shoot/zoom/onoff/take pictures at regular intervals
|-
|-
|[[Module/AOA_adc|AOA adc]] || sensors || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/AOA_adc.xml AOA_adc.xml] || FW || Reads the value of an US DIGITAL MA3-A10-236-N AoA Sensor and controls the elevator with its value
|[[Module/AOA_adc|AOA adc]] || sensors || [http://docs.paparazziuav.org/latest/module__aoa_adc.html AOA_adc.xml] || FW || Reads the value of an US DIGITAL MA3-A10-236-N AoA Sensor and controls the elevator with its value
|-
|-
|[[Module/FlightBenchmark|flight_benchmark]] || benchmark || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/flight_benchmark.xml flight_benchmark.xml] || FW || quantitative assessments of flights
|[[Module/FlightBenchmark|flight_benchmark]] || benchmark || [http://docs.paparazziuav.org/latest/module__flight_benchmark.html flight_benchmark.xml] || FW || quantitative assessments of flights
|-
|-
|[[Openlog|openlog]] || openlog || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/openlog.xml openlog.xml] || FW & RW || Module for logging with a [http://www.sparkfun.com/products/9530 Sparkfun OpenLog]
|[[Openlog|openlog]] || openlog || [http://docs.paparazziuav.org/latest/module__openlog.html openlog.xml] || FW & RW || Module for logging with a [http://www.sparkfun.com/products/9530 Sparkfun OpenLog]
|-
|geo_mag || geo_mag || [http://docs.paparazziuav.org/latest/module__geo_mag.html geo_mag.xml] || FW & RW || Calculation of the normalized geomagnetic field vector (saved to ahrs_impl.mag_h) at startup using GPS fix.
|}
|}


=== Analog-digital converters ===
=== Analog-digital converters ===


{| class="wikitable" style="text-align:center" border="1"
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
Line 86: Line 89:
|-
|-
|}
|}


=== Temperature sensors ===
=== Temperature sensors ===


{| class="wikitable" style="text-align:center" border="1"
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
Line 100: Line 104:
|[[Module/Melexis MLX90614‎|ir_mlx]] || meteo || ir_mlx.xml || FW || driver for Melexis 90614 infrared radiation sensor
|[[Module/Melexis MLX90614‎|ir_mlx]] || meteo || ir_mlx.xml || FW || driver for Melexis 90614 infrared radiation sensor
|}
|}


=== Barometric pressure/altitude sensors ===
=== Barometric pressure/altitude sensors ===


{| class="wikitable" style="text-align:center" border="1"
Simple static [[Baro_comparsion|comparsion]] of recent digital barometric sensors.
 
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
Line 118: Line 125:
|[[Module/VTI SCP1000 I2C‎|baro_scp_i2c]] || sensors || baro_scp_i2c.xml || FW || driver for VTI SCP1000 (I2C) pressure sensor
|[[Module/VTI SCP1000 I2C‎|baro_scp_i2c]] || sensors || baro_scp_i2c.xml || FW || driver for VTI SCP1000 (I2C) pressure sensor
|-
|-
|[[Sensors/AMSYS|baro_amsys]] || sensors || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/baro_amsys.xml baro_amsys.xml] || FW || driver for AMS 5812-0150-A (Baro) pressure sensors
|[[Sensors/AMSYS|baro_amsys]] || sensors || [http://docs.paparazziuav.org/latest/module__baro_amsys.html baro_amsys.xml] || FW || driver for AMS 5812-0150-A (Baro) pressure sensors
|-
|-
|}
|}


=== Airspeed sensors ===
=== Airspeed sensors ===


{| class="wikitable" style="text-align:center" border="1"
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
|airspeed_adc || sensors || airspeed_adc.xml || FW || driver for airspeed sensor based on analog voltage
|airspeed_adc || sensors || [http://docs.paparazziuav.org/latest/module__airspeed_adc.html airspeed_adc.xml] || FW || driver for airspeed sensor based on analog voltage
|-
|[[Module/Airspeed_ETS|airspeed_ets]] || sensors || [http://docs.paparazziuav.org/latest/module__airspeed_ets.html airspeed_ets.xml] || FW || Eagle Tree Systems airspeed sensor
|-
|-
|[[Module/Airspeed_ETS|airspeed_ets]] || sensors || airspeed_ets.xml || FW || Eagle Tree Systems airspeed sensor
|[[Sensors/AMSYS|airspeed_amsys]] || sensors || [http://docs.paparazziuav.org/latest/module__airspeed_amsys.html airspeed_amsys.xml] || FW || driver for AMS 5812-0003-D (Airspeed) pressure sensors
|-
|-
|[[Sensors/AMSYS|airspeed_amsys]] || sensors || [https://github.com/paparazzi/paparazzi/blob/master/conf/modules/airspeed_amsys.xml airspeed_amsys.xml] || FW || driver for AMS 5812-0003-D (Airspeed) pressure sensors
|[[Module/Aeroprobe_OTF|airspeed_otf]] || sensors || [http://docs.paparazziuav.org/latest/module__airspeed_otf.html airspeed_otf.xml] || FW || Aeroprobe On-The-Fly! air data computer
|-
|-
|[[Module/Aeroprobe_OTF|airspeed_otf]] || sensors || airspeed_otf.xml || FW || Aeroprobe On-The-Fly! air data computer
|[[Sensors/Airspeed#MS45xx|airspeed_ms45xx_i2c]] || sensors || [http://docs.paparazziuav.org/latest/module__airspeed_ms45xx_i2c.html airspeed_ms45xx_i2c.xml] || FW || MS45xx differential pressure sensor (airspeed)
|-
|-
|}
|}
Line 139: Line 149:
=== Humidity sensors ===
=== Humidity sensors ===


{| class="wikitable" style="text-align:center" border="1"
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
Line 152: Line 162:
|[[Module/Sensirion SHT25‎|humid_sht_i2c]] || meteo || humid_sht_i2c.xml || FW || driver for Sensirion SHT25 humidity sensor (I2C)
|[[Module/Sensirion SHT25‎|humid_sht_i2c]] || meteo || humid_sht_i2c.xml || FW || driver for Sensirion SHT25 humidity sensor (I2C)
|}
|}


=== Other environment sensors ===
=== Other environment sensors ===


{| class="wikitable" style="text-align:center" border="1"
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|-
Line 166: Line 177:
|}
|}


=== Radio modules ===
{| class="wikitable sortable" style="text-align:center" border="1"
! Name !! directory !! configuration files !! airframe(s) !! description
|-
|pineapple || pineapple || pineapple.xml || FW || [http://hakshop.com/wifipineapple WiFi pen-test tool]
|-
|}


=== Possible modules ===
=== Possible modules ===

Revision as of 15:32, 29 June 2015

Some part of the code is already available as modules. Some other parts could be easily adapted. A module may have several configuration files for the most common uses. The code of the modules is placed in sw/airborne/modules/<directory name>.

The auto-generated list and short doc for all modules in the master branch can be found at the onboard modules page of the doxygen docs.

Available modules

Name directory configuration files airframe(s) description
Demo demo_module demo_module.xml FW basic example with blinking leds
Booz cam
(Rotorcraft cam)
cam_control booz_cam.xml
(rotorcraft_cam.xml)
Rotor pointing of a simple camera on booz (servo for tilt, heading for pan
Cam point cam_control cam_point.xml FW pointing of a camera
Cam roll cam_control cam_roll.xml FW roll camera
Booz drop drop booz_drop.xml Booz drop mechanism on booz
light light light.xml FW control blinking speed of the LEDs for night flights
servo switch servo_switch servo_switch.xml FW simply switch a servo to "on" or "off" position, e.g. trigger camera or open hatch
Formation flight multi formation_flight.xml FW formation flight control for fixed-wing aircraft
Gps i2c gps_i2c gps_i2c.xml FW i2c driver for Ubx GPS modules
GPS UBX µcenter gps gps_ubx_ucenter.xml FW/Rotor Module to initialise µ-blox GPS at every power on
Xsens ins ins_xsens.xml
ins_xsens_MTi_Uart0.xml
ins_xsens_MTiG_Uart0.xml
driver for the Xsens AHRS/INS (for fixedwing it provides a full navigation solution, for rotorcraft it is a bit slow)
ins_ArduIMU ins ins_arduimu.xml FW ArduIMU V2+ (Flat) INS (should probably be renamed to AHRS and adhere to the ahrs interface)
imu_ppzauv sensors imu_ppzuav.xml FW/rotor module to read the PPZIMU
imu_aspirin_i2c sensors imu_aspirin_i2c.xml FW/rotor module to read the aspirin IMU via I2C
VN-100 ins ins_vn100.xml FW RW? VectorNav VN-100 AHRS (should probably be renamed to AHRS and adhere to the ahrs interface)
Max 3100 max3100 max3100.xml FW max3100 driver (spi<->uart converter)
MPPT MPPT MPPT.xml FW maximum power point tracker (control board for solar cells, i2C interface)
Poles poles poles.xml FW special navigation functions to fly around poles and counting loops
Potential multi potential.xml FW use potential fields for collision avoidance
Sonar sonar sonar_maxbotix_booz.xml Booz driver for a Maxbotix ultrasonic sensor
infrared_adc sensors infrared_adc.xml FW driver for infrared sensors based on analog voltage
infrared_i2c sensors infrared_i2c.xml FW driver for infrared sensors with i2c connection
alt_srf08 sensors alt_srf08.xml FW driver for Devantech Ultrasonic Range Finder SRF08
mag_micromag_fw sensors mag_micromag_fw.xml FW driver for PNI Micromag magnetic sensor
trigger_ext sensors trigger_ext.xml FW driver to measure external events/durations
xtend_rssi datalink xtend_rssi.xml FW driver to measure and report rssi from Digi 9Xtend radio with pwm input, currently only LPC21xx arch
pwm_meas core pwm_meas.xml FW driver wrapper to measure duty and period of pwm input, currently only LPC21xx arch
sys mon core sys_mon.xml FW & Booz measures CPU load & activity
DC digital_cam digital_cam.xml
digital_cam_i2c.xml
FW & RW Controls Digital Camera Functions (buttons) like shoot/zoom/onoff/take pictures at regular intervals
AOA adc sensors AOA_adc.xml FW Reads the value of an US DIGITAL MA3-A10-236-N AoA Sensor and controls the elevator with its value
flight_benchmark benchmark flight_benchmark.xml FW quantitative assessments of flights
openlog openlog openlog.xml FW & RW Module for logging with a Sparkfun OpenLog
geo_mag geo_mag geo_mag.xml FW & RW Calculation of the normalized geomagnetic field vector (saved to ahrs_impl.mag_h) at startup using GPS fix.


Analog-digital converters

Name directory configuration files airframe(s) description
ADC generic adcs adc_generic.xml FW autopilot internal 10 bit AD converter
max11040 adcs max11040.xml FW 24 bit 16 channel AD converter
mcp355x adcs mcp355x.xml FW 22 bit 1 channel AD converter


Temperature sensors

Name directory configuration files airframe(s) description
temp_lm75 meteo temp_lm75.xml FW driver for National LM75 temperature sensor
temp_temod meteo temp_temod.xml FW Hygrosens TEMOD-I2C-Rx temperature sensor for PT1000
temp_tmp102 meteo temp_tmp102.xml FW driver for TI TMP102 temperature sensor
ir_mlx meteo ir_mlx.xml FW driver for Melexis 90614 infrared radiation sensor


Barometric pressure/altitude sensors

Simple static comparsion of recent digital barometric sensors.

Name directory configuration files airframe(s) description
baro_bmp sensors baro_bmp.xml FW driver for Bosch BMP085 pressure sensor
baro_ets sensors baro_ets.xml FW Eagle Tree Systems pressure sensor
baro_MS5534A sensors baro_MS5334A.xml FW driver for Intersema MS5534A pressure sensor
baro_ms5611_i2c sensors baro_ms5611_i2c.xml FW driver for Measurement Specialties MS5611-01BA pressure sensor
baro_scp sensors baro_scp.xml FW driver for VTI SCP1000 (SPI) pressure sensor
baro_scp_i2c sensors baro_scp_i2c.xml FW driver for VTI SCP1000 (I2C) pressure sensor
baro_amsys sensors baro_amsys.xml FW driver for AMS 5812-0150-A (Baro) pressure sensors


Airspeed sensors

Name directory configuration files airframe(s) description
airspeed_adc sensors airspeed_adc.xml FW driver for airspeed sensor based on analog voltage
airspeed_ets sensors airspeed_ets.xml FW Eagle Tree Systems airspeed sensor
airspeed_amsys sensors airspeed_amsys.xml FW driver for AMS 5812-0003-D (Airspeed) pressure sensors
airspeed_otf sensors airspeed_otf.xml FW Aeroprobe On-The-Fly! air data computer
airspeed_ms45xx_i2c sensors airspeed_ms45xx_i2c.xml FW MS45xx differential pressure sensor (airspeed)

Humidity sensors

Name directory configuration files airframe(s) description
humid_dpicco meteo humid_dpicco.xml FW driver for IST DigiPicco humidity sensor
humid_hih meteo humid_hih.xml FW driver for Honeywell HIH-4030 humidity sensor
humid_htm_b71 meteo humid_htm_b71.xml FW driver for TronSens HTM-B71 humidity sensor
humid_sht meteo humid_sht.xml FW driver for Sensirion SHT75 humidity sensor
humid_sht_i2c meteo humid_sht_i2c.xml FW driver for Sensirion SHT25 humidity sensor (I2C)


Other environment sensors

Name directory configuration files airframe(s) description
enose enose enose.xml FW chemical gas sensor
dust_gp2y meteo dust_gp2y.xml FW driver for Sharp GP2Y1010AU0F dust sensor
light_temt meteo light_temt.xml FW driver for Vishay TEMT6000 ambient light sensor

Radio modules

Name directory configuration files airframe(s) description
pineapple pineapple pineapple.xml FW WiFi pen-test tool

Possible modules

A list of the parts of the FW airborne code that could be changed to modules.

Name header init periodic event datalink description
Led X X control leds and GPIO
I2C X X
SPI X X
Traffic X X update traffic information from datalink
TCAS X X 1Hz - 4Hz ? vertical collision avoidance
GPS X X X
Joystick X X X X control a plane from telemetry