Documentation/mini/v0.1

From openmulticopter

Jump to: navigation, search

This page is undergoing a remodeling! Please be patient.

Contents

Summary

The mini version of the openmulticopter is a first version of our project. It's only for bootstrapping our work and for testing/development purposes. As simple as possible. And of course, as small as possible. We forbear from putting unnecessary components onto the board such as air pressure and compass or a GPS module. It's just about flying and testing.

Features

  • Heading Hold Flight Mode
  • ACC Flight Mode
  • Support for telemetry
  • ...

Hardware

Design ideas

  • Use the internal ADC of the STM32 for sensor inputs
  • JTAG programming interface exposed
  • I2C/CAN interface exposed for motor controller interfacing
  • PPM input for sum signal receivers
  • UART interface for DSL receivers (RCOPEN24 support?)
  • UART interface exposed for PC/RF modem interface
  • Some LEDs for status indication
  • AUX connector containing as many of the remaining pins of the STM32 as possible and some of the already exposed pins (for further tests and expansions)
  • ...

Selected parts

Part Description Datasheet Footprint
Controller High-density Performance line,

ARM-based 32-bit MCU with up to 512 KB Flash, USB, CAN, 11 timers, 3 ADCs, 13 communication interfaces

ST STM32F104RE TQFP64
Gyros x, y, z (melexis) Factory set full scale range: ±75 °/s, ±150 °/s or ±300 °/s. 5V supply voltage. Analog / digital interface.

Output not supply-ratiometric.

MLX90609 CQFN32
Gyros x, y, z (analog devices) High vibration rejection over wide frequency. Ratiometric to referenced supply.

5 V single-supply operation

ADXRS610 BG-32-3
Accelerometer 3-Axis ±1.5g accelerometer, single-supply operation: 2.7 - 3.6 V, ratiometric outputs MXR9500 LCC16
I2C levelshifter Hot Swappable Dual I2C Isolators, bidirectional I2C communication, 1000 kHz operation,

3.0 V to 5.5 V supply/logic levels

ADUM1250 SOIC-8
CAN transceiver High-speed CAN transceiver, supports 1Mb/s operation, suitable for 12V and 24V systems,

detection of ground fault (permanent dominant) on TXD input

MCP2551 SOIC-8
Switching regulator

(power supply)

5V, 1A output switching regulator from Traco Power. 6.5V-36V input range. LM78XX pinout. TSR 1-2450 TO-220

Circuitry description

Power supply

LC low-pass filter
LC low-pass filter

Calculations

f_c = \frac{1}{2\pi \cdot \sqrt{LC}} \rightarrow 3.5kHz = \frac{1}{2\pi \cdot \sqrt{100\mu H \cdot C}} \rightarrow C = 20.68\mu F \rightarrow \underline{C_{E12}=22\mu F}


Recalculate cut-off frequency with selected capacitor.

f_c = \frac{1}{2\pi \cdot \sqrt{100\mu H \cdot 22\mu F}} = 3.39kHz


The inductor hasn't just an inductance. There's also a series resistor (ohmic load). If this resistance is too low we'll have voltage peaks around the cut-off frequency. The perfect series resistor value is calculated as follows:


X_L = 2\pi \cdot f_c \cdot L = 2\pi \cdot 3.39kHz \cdot 100\mu H = 2.13\Omega


R_L = \sqrt{2} \cdot X_L = \sqrt{2} \cdot X_C = \sqrt{2} \cdot 2.13\Omega = 3\Omega


Now, the chosen inductors from Digikey (490-4065-1-ND and 445-3617-1-ND) have a resistance of 3Ω and 3.5Ω. So, they are very close to the calculated "ideal" resistor value. The bode-diagram shows us that the curve-progression of the real components is nearly identical to the ideal one.

bode-diagram

I2C level shifter

CAN interface

Accelerometer

MXR9500 acceleration sensor

Due to the integrating nature of MEMS gyroscopes in an IMU other sensors have to be used to compensate the zero-drift. Acceleration sensors provide an accurate and reasonably cheap solution which works outdoors as well as indoors.

As a result of a recent trend to include acceleration sensors in mobile phones, gaming devices and cameras there are currently many sensors from different manufacturers on the market. Almost all of them share the same principle of operation. So called MEMS devices include an oscillating solid proof mass. This technology has one major drawback for our application. The oscillation frequency of the solid proof mass is the resonance frequency of the device and located in a band of frequencies generated by the BLDC motor controllers. Turning on the motors often results in a significant zero-point shift at the accelerometer output.

MEMSIC is the only manufacturer we know of which currently fabricates acceleration sensors based on heat convection of a small amount of a gas embedded in the sensor. The MXR9500 is therefore not susceptible to vibrations caused by the motors and an ideal choice for our purpose. We are using the +/- 1.5g tri axis MXR9500 that operates from 3.3V and is able to withstand shocks of up to 50'000g.

Gyroscopes

MLX breakout-boards with voltage divider and low-pass filter
RC low-pass filter

Existing projects often found a simple first order low-pass filter to be sufficient to eliminate aliasing effects and reduce unwanted frequency components in the gyroscope signals. The Nyquist-Shannon sampling theorem basically tells you to use a sampling frequency of at least more than twice the highest frequency in your signal. However, as a rule of thumb one can assume a sampling rate of ten times the cut-off frequency is needed in order to easily reconstruct the original signal and perform additional digital filtering if necessary.

A first order low-pass filter will have a rather flat roll-off at 20dB/decade. This means even though frequencies beyond the cut-off frequency will be damped, they are not immediately virtually zero. We will therefore choose a cut-off frequency of 50 Hz and be well aware that there will be significant frequency components of up to 100Hz.

MEMS gyroscopes often operate from a supply voltage of 5V. However, our STM32 microcontroller doesn't allow voltages higher than 3.3V at the ADC input pins. A simple voltage divider consisting of two resistors will scale the voltage down. In order to minimize the amount of components we will use the output impedance of our voltage divider as the resistive component of our RC low-pass filter. The output impedance of the voltage divider can be calculated by thinking of our gyroscope as a voltage source. The superposition theorem tells us to short-circuit a voltage source (or 'open-circuit' a current source, resp.) when calculating the internal impedance of a circuit. The output impedance of the voltage divider will therefore be the replacement value of two parallel resistors.

Calculating filter components often happens based on a heuristic approach. You have to guess at least one component value in advance, make your calculations and adjust your initial choice if necessary. The calculations listed below do not represent a step by step guide but prove the chosen values to be valid.


U_{out} = U_{Gyro} \cdot \frac{R_2}{R_1 + R_2} = 5V \cdot \frac{43k\Omega}{22k\Omega + 43k\Omega} = 3.31 V
R_{out} = \frac{R_1 \cdot R_2}{R_1 + R_2} = \frac{22k\Omega \cdot 43k\Omega}{22k\Omega + 43k\Omega} = 14.55 k\Omega
f_c = \frac{1}{2 \pi \cdot R_{out} \cdot C} = \frac{1}{2 \cdot \pi \cdot  14.55k\Omega \cdot 220nF} = 49.7 Hz

STM32

ADC
Voltage follower buffers sensor outputs.

The STM32 unfortunately has low-impedance ADC inputs. Additional buffering of sensor signals is therefore necessary. A simple op-amp in voltage follower configuration provides this functionality.

Connectors

RC receiver
UART interface
Motor controllers
JTAG Interface

Pictures

3D Renderings

OMC Mini V0.1 with parts front
OMC Mini V0.1 with parts back

Log

The log is available on github.com. Click here to get there.