This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
projects:crazyflie:hardware:explained [2012-12-03 16:39] tobias [Sensors] |
projects:crazyflie:hardware:explained [2013-06-26 08:52] tobias [PCM] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Crazyflie KIT electonics | + | ====== Crazyflie KIT electronics |
This section is here to explain all high level electronics used in the Crazyflie. | This section is here to explain all high level electronics used in the Crazyflie. | ||
Line 25: | Line 25: | ||
|| Over discharge current delay time || 7.2~11ms | || Over discharge current delay time || 7.2~11ms | ||
|| Short detection delay time || 220~380us | || Short detection delay time || 220~380us | ||
- | || Short release condition | + | || Short release condition |
|| Current consumption | || Current consumption | ||
|| Suggested max continuous charge/ | || Suggested max continuous charge/ | ||
Line 47: | Line 47: | ||
We have tested several sizes of LiPo batteries, 100mAh to 400mAh, and found out that 150mAh to 250mAh is the sweet spot giving the best flight performance. | We have tested several sizes of LiPo batteries, 100mAh to 400mAh, and found out that 150mAh to 250mAh is the sweet spot giving the best flight performance. | ||
- | ===== Power management | + | ===== Power ===== |
+ | ==== Power management | ||
{{: | {{: | ||
The power management is mainly handled by the [[http:// | The power management is mainly handled by the [[http:// | ||
+ | ==== Power distribution ==== | ||
+ | The Crazyflie control board utilizes the separate power plane technique using a 4 layer board. It has proven to work pretty well and we have low ripple currents. However it is not perfect and at some Radio channels we can notice that the motor PWM sometimes is interfering with the Radio. | ||
+ | |||
+ | There are a number of supplies and grounds | ||
+ | || Supply || Range (V)|| Description || | ||
+ | || +BATT || 3.0 - 4.2 || Battery supply voltage || | ||
+ | || VCOM || 3.0 - 5.5 || Supply after power management chip. Can be +BATT or USB voltage || | ||
+ | || VCC || 2.8 or 3.3 || Digital supply voltage. Input is the VCOM supply || | ||
+ | || VCCA || 2.8 || Analog supply voltage, which is filtered. | ||
+ | || GND || 0 || The ground shared by the motor drivers and the battery || | ||
+ | || DGND || 0 || Digital ground. Connected to GND in a start-point fashion. || | ||
+ | || AGND || 0 || Analog ground. Connected to GND in a start-point fashion. || | ||
+ | |||
+ | The analog and digital supply uses the TPS79301 adjustable voltage regulator. It is a ultra-low noise 200 mA capable LDO voltage regulator. We choose to use the adjustable variant for both supplies to have maximum tune-ability. This way one can set the output voltage just by changing a couple of resistors. It has also enabled us to make the digital supply switch from 2.8 V to 3.3 V when the micro-USB cable is connected so we can comply the the USB standard. | ||
===== MCU ===== | ===== MCU ===== | ||
The MCU (Micro Controller Unit) we use, the brain of the Crazyflie, is the ST Microelectronics STM32F103CB. We actually choose this MCU in 2009 and now it is very commonly used by hobbyists and other UAV platforms. The STM32F103CB MCU we run at full speed, 70Mhz, and it has 128Kb flash and 20Kb RAM. As of December 2012 our current firmware takes 46kb flash and 16kb RAM. The RAM can definitely be more optimised so there are plenty of room to implement more algorithms and fun stuff. We use about 40% of its processing power (with a stabilization update loop at 500Hz) and a big chunk of this is because we use a " | The MCU (Micro Controller Unit) we use, the brain of the Crazyflie, is the ST Microelectronics STM32F103CB. We actually choose this MCU in 2009 and now it is very commonly used by hobbyists and other UAV platforms. The STM32F103CB MCU we run at full speed, 70Mhz, and it has 128Kb flash and 20Kb RAM. As of December 2012 our current firmware takes 46kb flash and 16kb RAM. The RAM can definitely be more optimised so there are plenty of room to implement more algorithms and fun stuff. We use about 40% of its processing power (with a stabilization update loop at 500Hz) and a big chunk of this is because we use a " | ||
Line 60: | Line 75: | ||
It is also possible to manually solder-mount a MS5611 pressure sensor afterwards if that is of interest. This could make it possible add an altitude-hold functionality. No SW support now though. | It is also possible to manually solder-mount a MS5611 pressure sensor afterwards if that is of interest. This could make it possible add an altitude-hold functionality. No SW support now though. | ||
===== Expansion header ===== | ===== Expansion header ===== | ||
+ | {{: | ||
+ | The expansion header is located on the left side of the Crazyflie. It is a 10x2 pin 1.27mm (0.05" | ||
+ | The header is divided into two parts. The JTAG part, pin 1 to 10, and the buss/power part, pin 11 to 20. The UART RX/TX is located on the JTAG part because on many FTDI based JTAGs it is possible to use one channel for serial communication which can be very handy when debugging. | ||
+ | |||
+ | Header pin description | ||
+ | ^^ Pin nr ^^ Name ^^ Description ^^ | ||
+ | || 1 || VCC || Digital supply voltage || | ||
+ | || 2 || TMS || Test Mode Select || | ||
+ | || 3 || EXT_I2C_SCL/ | ||
+ | || 4 || TCK || Test Clock || | ||
+ | || 5 || EXT_I2C_SDA/ | ||
+ | || 6 || TDO || Test Data Out || | ||
+ | || 7 || N/A || Could be used for keying || | ||
+ | || 8 || TDI || Test Data In || | ||
+ | || 9 || DGND || Digital ground || | ||
+ | || 10 || SNRST || System reset || | ||
+ | || 11 || EXT_SPI_CS/ | ||
+ | || 12 || EXT_SPI_MOSI/ | ||
+ | || 13 || EXT_SPI_SCK/ | ||
+ | || 14 || EXT_SPI_MISO/ | ||
+ | || 15 || VCC || Digital supply voltage || | ||
+ | || 16 || VCOM || Battery/USB voltage || | ||
+ | || 17 || DGND || Digital ground || | ||
+ | || 18 || DGND || Digital ground || | ||
+ | || 19 || AGND || Analogue ground|| | ||
+ | || 20 || VCCA || Analogue supply || | ||
+ | |||
===== 2.4GHz radio ===== | ===== 2.4GHz radio ===== | ||
===== Motor drivers ===== | ===== Motor drivers ===== | ||
+ | {{: | ||
+ | The motor driver, as we use brushed motors, is a simple pull down mosfet as shown in the schematics. There is also a free-wheel diode to take the Back-EMF spikes generated by the motor during PWM-ing. | ||
+ | The mosfet we choose is the PMV31XN in a SOT-23 package. It can handle a lot of power and should be good for at least 3A each. The most important property of the mosfet though might be the on resistance (Rdson) since it effects the amount of power the motors can make use of. We measured the PMV31XN Rdson at 2.8V G-D voltage and 0.8A D-S current to be ~40 mOhm. | ||
===== Motors ===== | ===== Motors ===== | ||
+ | We use a coreless brushed DC motor 6x15mm. | ||
+ | |||
+ | ==== Specification ==== | ||
+ | **Electrical** | ||
+ | || Description || Value || | ||
+ | || Rated voltage || 4.2 V Max || | ||
+ | || Nominal voltage || 3.7 V || | ||
+ | || No load speed || 45000 ±15% RPM || | ||
+ | || No load current || 80 mA Max || | ||
+ | || Starting voltage || 0.8 V Max || | ||
+ | || Rated load speed || 21000 ±15% RPM || | ||
+ | || Rated load current || 810 mA Max || | ||
+ | || Resistance || 2.3 ±20% Ω || | ||
+ | |||
+ | **Mechanical** | ||
+ | || Description || Value || | ||
+ | || Shaft diameter|| 0.8 mm || | ||
+ | || Motor diameter || 6 ± 0.05 mm || | ||
+ | || Motor length || 15 mm || | ||
+ | || Weight || 1.7 g approx.|| | ||