Difference between revisions of "Lisa"

From PaparazziUAV
Jump to navigation Jump to search
m (typo)
 
(172 intermediate revisions by 17 users not shown)
Line 1: Line 1:
Lisa ( the Lost Illusions Serendipitous Autopilot) is a [http://www.st.com/mcu/inchtml-pages-stm32.html STM32]/[http://www.gumstix.net/Setup-and-Programming/cat/Overo-Setup-and-Programming/111.html Overo] board designed to run Paparazzi
<categorytree style="float:right; clear:right; margin-left:1ex; border: 1px solid gray; padding: 0.7ex;" mode=pages>Autopilots</categorytree>
__TOC__
Lisa ( the Lost Illusions Serendipitous Autopilot) is a range of autopilots based on [http://www.st.com/mcu/inchtml-pages-stm32.html STM32] microcontrollers ( CortexM3@72Mhz ) designed to run Paparazzi.
There's no such thing as a perfect autopilot, only autopilots adapted to a particular purpose. This is the reason why the Lisa autopilots come in different styles for different uses.


== TODO ==
The first members of the family are:


List of files currently being edited:
*Lisa/L, a design where the STM32 is associated to a gumstix [http://www.gumstix.net/Setup-and-Programming/cat/Overo-Setup-and-Programming/111.html Overo].
* Lisa Schematic
*Lisa/M, a design focusing on cost and simplicity.
* booz.lbr
*Lisa/S, a design focusing on size and weight.


==Lisa/L==


Antoine:
=== Description ===
* <strike>check JTAG on STM32</strike>
* work with Piotr on connecting the missing wires on the STM
* I2C on STM32:
* SPI on STM32:
* USB for gumstix : does 5V need to be switchable ? (to allow reset from the gumstix)
* Todo's from sheet 3
* Check's from sheet 5
* Pressure sensor instruction to gany (redo airspeed computation), so he can finish the schematic for that (or finish it directly in the schematic)
* Check the routing rules below and add if planned on routing a certain part in a specific way


[[Lisa/L]] is a dual processor board autopilot designed to allow for the possibility of using Linux for Paparazzi airborne code.


Esden:
[[Image:lisa_l_bloc_diag_simple.png|360px]]
* <strike>STM32 spelling and connection check</strike>
[[Image:lisa_l_top.png|360px]] [[Image:lisa_l_bot.png|360px]]
* <strike>Fix STM32 footprint pad sizes</strike>
* <strike>Routing rules that have to be followed</strike>
* <strike>Add specification of external pressure sensor ADC</strike>
* howto for STM32 gcc gdb toolchain (blinking LED or similar) (started writing one on [http://openhardwarewiki.org/wiki/Summon_ARM_Toolchain openhardwarewiki.org])


=== Documentation ===


Gany:
The documentation for Lisa/L is broken into several parts due to board complexity and Gumstix [[Overo]] integration.
* <strike>Check FT2232 footprint hw/lbr/booz.lbr  qfn-64 size & pinout
* [[Lisa/L|Main Documentation]] - primary hardware documentation and intro to software
** -> Changed pad size from 0.6 x 0.4  to  0.75 x 0.25  and moved pin1 indicator outside the chip. </strike> 
* [[Dev/LisaL|Additional Developer Documentation]] - additional advanced hardware and software documentation and notes
* <strike>Make sure STM32 can interrupt overo
* [[LisaL_Gallery|Lisa/L Photo Gallery]] - pictures of [[Lisa/L]]
** -> connected omap pin 176 with stm pin 11 via level shifter</strike>
* [[User/LisaL/Tutorial/Quadrocopter|Unfinished Rotorcraft Tutorial]] - rotorcraft tutorial, needs considerable work
* Place components
* [[User/LisaL/Tutorial/FixedWing|Unfinished Fixedwing Tutorial]] - fixedwing tutorial, needs considerable work
* Route board
* [[OMAP|Gumstix Integration Intro]] - intro and documentation listing for integrating a Gumstix Overo with [[Lisa/L]], including for USB devices and cameras
* Send for production 4pcb/pcbcard(china)/sunstone


== Lisa/M ==


=== Description ===


== Hardware ==
[[Lisa/M]] is a great general purpose small-footprint autopilot. There are currently two versions that have been produced. Detailed documentation can be found here:
* [[Lisa/M_v2.0|Lisa/M v2.0 (current) Documentation]]


The hardware is still in development. The current CAD files are maintained in savannah svn in the paparazzi4/trunk/hw/lisa directory.
[[Image:LisaM_V2_0_TopView.JPG|360px|Lisa/M v2.0 Top View]]
Software development is done on a Overo/Summit + Olimex STM32-H103 dev board
[[Image:lisa_proto.jpg|thumb]]


=== STM32 ===


STM32-F103 ( esden can you write the name of the actual chip we're using ? 64 pins the most ram and flash ? )
* [[Lisa/M_v1.0|Lisa/M v1.0 Documentation]]


=== Pressure sensors ===
[[Image:lisa_m_top_small.png|360px|Lisa/M v1.0 Top View]]


The board will be equipped with a pair of pressure sensors, one absolute to measure altitude and one differential to measure airspeed.
=== Usage scenarios ===


==== Absolute Pressure ====
There are many potential applications for the small, relatively inexpensive and flexible [[Lisa/M]]. For regular Autopilot boards a fully equip [[Lisa/M]] board is needed. For some scenarios just a basic [[Lisa/M]] without an [[Inertial_Measurement_Units|IMU]] and barometric pressure sensor is needed, which reduces the board cost. Here are some ideas (not all have yet to be implemented):
The proposed absolute pressure sensor is the freescale [http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MPXx6115&fsrch=1 MPXh6115]
The following plot displays the output of the sensor versus altitude


[[Image:absolute_pressure.png]]
* As a basic Autopilot
** To use the [[Lisa/M]] as an autopilot, you need to attach a GPS receiver. A nice [[GPS#u-Blox_LEA_Series_Receivers|uBlox LEA-5H]] or newer will perform great.
* As an advanced Autopilot
** Additional sensors for measuring airspeed, current, etc. would enhance a fixed-wing airframe.
* As a servo extender
** Sometimes being able to control seven actuators is just not enough. Large airframes may require flaps or an airbrake and automatic landing facilities. Maybe special ACL/Nav lights, or four cameras with zoom. By using a coupled second basic [[Lisa/M]] and connecting this to the master Autopilot board we can extend the amount of servos. Large airframes can also benefit from remote and/or redundant servo drivers.
* As a Safety Pilot Device
** To provide an extra safety level required in some UAS challenges. A second [[Lisa]] board can make it easy to adhere to the rules for such a challenge.
* As a Data Logger
** Maybe you have a need only to log all kinds of data, like temperature, volts, amps, height, airspeed, and not control the aircraft. For this we can setup a [[Lisa/M]] board. Collecting this data can be to a storage medium like on a micro SD card. Sometimes there is no need for real-time data collection through telemetry but just for storing a huge dataset.
* As a Camera controller
** On some models that do not require many servos (for example - flying wing with only 3 channels used), spare channels can be used for camera control. In addition, it could be used as an independent pan-tilt unit (PTU) controller.
* As a Airframe Tracker
** Tracking an airframe for an antenna or camera on a tripod is one of the many optional uses for a [[Lisa/M]] Board.


==== Differential Pressure ====
== Lia ==


The proposed differential sensor is the [http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MPXx5004&fsrch=1 MPXV5004DP]
Lia is a lower-cost variant of Lisa/M 2.0. The microcontroller, basic layout, servo outputs, and mounting holes are the same. Major differences:
* 0.1" through-hole connections for non-servo I/O instead of Molex picoblade
** PCB size increased slightly to (58x34mm) to accommodate throughholes
* CAN transceiver removed on initial units; populated on later units (see [http://paparazzi.enac.fr/wiki/Lia documentation])
* barometer removed
* I2C level shifter removed
* 5V voltage regulator removed
* Added provisions for multiple BEC input balancing on servo connectors


[[Image:differential_pressure.png]]
[[Image:Lia_1.1_top.jpg|360px|Lia v1.1 Top View]]


Because of high resolution requirements in the pressure sensor circuit there is an external ADC needed with the following features:
* 16bit resolution minimum, 20bit would be awesome
* Two channels (multiplexed or not) each at least 100Hz sampling rate
* I2C or SPI interface (I2C preferred)
** We used the [http://www.maxim-ic.com/quick_view2.cfm/qv_pk/4950 MAX11040] as ADC for a meteo payload, some (SPI) code is there. It samples 4 channels simultaneously in 24 bits (less "in real"). Slowest conversion speed is 250.1 samples/second.


== Software ==
[[Lia|Lia documentation]]


=== STM32 toolchain ===
== Lisa/S ==


You can use the [http://github.com/esden/summon-arm-toolchain summon-arm-toolchain] script to build the required toolchain.
Lisa/S is very small autopilot board. The focus for this design is size, weight and power consumption. It's an autopilot suited for the smallest airframes.
For the default values of the Paparazzi Makefile to work, you should set


<code>
[[Image:Lisa_S_V0_1_r2_on_finger.jpg|360px]]
PREFIX=/opt/stm32/toolchain/arm-elf
</code>
and
<code>
LIBSTM32_EN=1
</code>


=== Open Embedded ===
* [[Lisa/S|Lisa/S Documentation]]


Open Embedded is the linux distribution used on the overo.
You can follow the [http://www.gumstix.net/Setup-and-Programming/view/Overo-Setup-and-Programming/Setting-up-a-build-environment/111.html instructions] on gumstix's website to build a complete cross development environment. Paparazzi's Makefile will default to look for it in /overo-oe


 
[[Category:Lisa]] [[Category:User_Documentation]] [[Category:Autopilots]]
== Status ==
 
== Routing Rules ==
 
* 6mil traces/spacings for signals
* 12mil traces/spacings for power traces (this is min value, otherwise as wide as possible or even planes if possible)
* 6mil layout grid
* Layer stacking:
** Top: Signal + Ground plane
** Route2: Ground plane(s) (Separate analogue and digital ground)
** Route15: Power plane(s)
** Bottom: Signal + Ground plane
* 0.4mm vias with 0.1mm restring

Latest revision as of 07:51, 7 January 2016

Lisa ( the Lost Illusions Serendipitous Autopilot) is a range of autopilots based on STM32 microcontrollers ( CortexM3@72Mhz ) designed to run Paparazzi. There's no such thing as a perfect autopilot, only autopilots adapted to a particular purpose. This is the reason why the Lisa autopilots come in different styles for different uses.

The first members of the family are:

  • Lisa/L, a design where the STM32 is associated to a gumstix Overo.
  • Lisa/M, a design focusing on cost and simplicity.
  • Lisa/S, a design focusing on size and weight.

Lisa/L

Description

Lisa/L is a dual processor board autopilot designed to allow for the possibility of using Linux for Paparazzi airborne code.

Lisa l bloc diag simple.png Lisa l top.png Lisa l bot.png

Documentation

The documentation for Lisa/L is broken into several parts due to board complexity and Gumstix Overo integration.

Lisa/M

Description

Lisa/M is a great general purpose small-footprint autopilot. There are currently two versions that have been produced. Detailed documentation can be found here:

Lisa/M v2.0 Top View


Lisa/M v1.0 Top View

Usage scenarios

There are many potential applications for the small, relatively inexpensive and flexible Lisa/M. For regular Autopilot boards a fully equip Lisa/M board is needed. For some scenarios just a basic Lisa/M without an IMU and barometric pressure sensor is needed, which reduces the board cost. Here are some ideas (not all have yet to be implemented):

  • As a basic Autopilot
    • To use the Lisa/M as an autopilot, you need to attach a GPS receiver. A nice uBlox LEA-5H or newer will perform great.
  • As an advanced Autopilot
    • Additional sensors for measuring airspeed, current, etc. would enhance a fixed-wing airframe.
  • As a servo extender
    • Sometimes being able to control seven actuators is just not enough. Large airframes may require flaps or an airbrake and automatic landing facilities. Maybe special ACL/Nav lights, or four cameras with zoom. By using a coupled second basic Lisa/M and connecting this to the master Autopilot board we can extend the amount of servos. Large airframes can also benefit from remote and/or redundant servo drivers.
  • As a Safety Pilot Device
    • To provide an extra safety level required in some UAS challenges. A second Lisa board can make it easy to adhere to the rules for such a challenge.
  • As a Data Logger
    • Maybe you have a need only to log all kinds of data, like temperature, volts, amps, height, airspeed, and not control the aircraft. For this we can setup a Lisa/M board. Collecting this data can be to a storage medium like on a micro SD card. Sometimes there is no need for real-time data collection through telemetry but just for storing a huge dataset.
  • As a Camera controller
    • On some models that do not require many servos (for example - flying wing with only 3 channels used), spare channels can be used for camera control. In addition, it could be used as an independent pan-tilt unit (PTU) controller.
  • As a Airframe Tracker
    • Tracking an airframe for an antenna or camera on a tripod is one of the many optional uses for a Lisa/M Board.

Lia

Lia is a lower-cost variant of Lisa/M 2.0. The microcontroller, basic layout, servo outputs, and mounting holes are the same. Major differences:

  • 0.1" through-hole connections for non-servo I/O instead of Molex picoblade
    • PCB size increased slightly to (58x34mm) to accommodate throughholes
  • CAN transceiver removed on initial units; populated on later units (see documentation)
  • barometer removed
  • I2C level shifter removed
  • 5V voltage regulator removed
  • Added provisions for multiple BEC input balancing on servo connectors

Lia v1.1 Top View


Lia documentation

Lisa/S

Lisa/S is very small autopilot board. The focus for this design is size, weight and power consumption. It's an autopilot suited for the smallest airframes.

Lisa S V0 1 r2 on finger.jpg