User Tools

Site Tools


multiwiicopter

Multiwiicopter

I bought the Carbon SCARAB YSiix v2 - full ARF Multiwiicopter.

You can find product information here: http://www.multiwiicopter.com/products/sku-21

This product comes without some other necessary things to be able to fly it. The problem is that there are a lot of choices for the different extra components. My main goal is to build a multicopter that is stable in wind, can carry a big good camera (Nex-3/5/7), long flying time, long range, telemetry (for monitoring temperature, voltage, position, heading, more), and possibility of expansion to add FPV (first person view). I will describe my choices and the reasons why I chose them.

Assembling the copter

During assembling I discovered several tricks that have to be applied.

Tools needed not included:

  • Hex screw drivers 2/3 mm
  • Set of files
  • Dremel (for making holes for screwing the battery tray)
  • Table drill (for making cone holes in the motor carbon fiber mounts for the flat screws)
  • Soldering Iron

Materials not included:

  • 4x Board nylon stands (for VoltAir) , nuts and screws
  • 1x 8×3 bended poles for servo connectors. (For Paris 600 Yhexii board) (optional) http://www.multiwiicopter.com/products/20-pin-triple-headers-2-54mm-90-degree
  • Bigger shrink tubes. 7mm, 1cm
  • M3 rounded head 10mm screws with metric hex head
  • Double stick foam tape.
  • Cable ties.
  • Solder/ flux paste
  • Cyano-acrylate glue and accelerator

How to use it / How does it works

There are to main operational modes: acrobatic mode and level-hold mode. In acrobatic mode the flight control (FC) computer (arduino pro-mini) only uses the gyroscope and the commanded signals to control the motors. It commands the motors to set a particular rotational speed in the different axis and the motor speed with the throttle. In my opinion is more difficult to control.

In level-hold mode the FC uses the gyroscope and the accelerometer sensor to maintain a horizontal pose while the control sticks are centered. If a control stick is moved the FC adjusts the inclination angle of the corresponding axis. This produces lateral acceleration and a bit of loss of altitude hold. The throttle stick controls the multicopter Z axis acceleration. So when tilting the copter to a side it will accelerate to that side but it will loose some altitude. This lost of altitude can be compensated by adding a bit of more thrust to the motors (in Z direction).

Level-hold doesn't mean position hold. This means that the copter can shift to the sides because of: small calibration errors, external disturbances (wind), internal disturbances (helix vortex, electric and mechanical noise, etc), and mamy more.

Appart from this to main modes there are two additional modes that can be mixed with the previous modes: altitude-hold and heading-hold.

In altitude-hold the FC uses a barometer to measure atmospheric presure to estimate altitude. In the multiwii software (in 2011) the altitude control was very simple and was only imposing a ceiling limit, meaning that if you go to a particular altitude, activate altitude-hold and then try to go higher, the FC will stop you from doing that, but you can go down by giving less thrust. Current multiwii software situation may be different. The use case of altitude-hold is as follows: first you go to the desired altitude without altitude hold, then you activate altitude hold and don't touch the throttle stick anymore, your copter will stay at that altitude. Remember that the barometer sensor as a relatively big error of about 1m or more. So do this not so near to ground or lower objects.

Heading-hold uses a magnetometer to not drift in the Z rotational axis (yaw).

To beginners (myself as of 01/2012), I recommend the following steps to get started with multicopters:

  • Get a multicopter simulator and try it for a while. Set it to level-hold and if posible heading-hold.
  • Get a multicopter and assemble it yourself. You will get to know it in the process. This is very useful.
  • Check that copter is reacting properly to input data and disturbances: http://www.rcgroups.com/forums/showthread.php?t=1348268
  • For the first flight:
    • Set your copter to level-hold and heading-hold.
    • Give a bit of thrust to get a feeling of how it reacts with the throttle stick. Remember the stick position where the copter wants to start lifting. Use the curves feature of your controller to adjust the stick throttle center to give that amount of thrust.
    • Now try again and give more thrust until it lifts completely, keep giving more thrust until copter is at least 2 meters away from ground (to void ground effect)
    • Now play around with it for a while. Remember battery level. Put a timer to your controller to beep after ten minutes of flight. Then land and recharge.

Configuration and calibration

Programming/development

The multiwiicopter uses an arduino as the FC unit. You can program this board from debian by installing arduino package. You get version 1.0 with a relatively new gcc-avr. You have three ways to program the arduino pro mini:

  1. From arduino sketch, using upload function.
  2. From arduino sketch, using upload with avrdude function.
  3. Connecting an avr isp to the spi pins of the board (this may interfere with other electronics on the multiwiicopter, like sensors) and using upload with avrdude function but using the avrisp serial port. This is also use to program the arduino bootloader.

In 1 and 2 you only need to specify the port device to program the arduino. In 3 you need to solder four wires and use an avr isp programmer board. Options 1 and 2 work fine with multiwiicopter. Version 3 is only necessary if more flash is needed and bootloader can be erased.

To read the flash/eeprom from the arduino device you can't use arduino sketch. But you can use option 3 with avrdude to read it. Also, because the arduino bootloader is itself a programmer (in particular stk500v1). It can be used from avrdude to read and write flash/eeprom using a command similar to this:

/usr/share/arduino/hardware/tools/avrdude -C /usr/share/arduino/hardware/tools/avrdude.conf -pm328p -carduino -P /dev/ttyUSB0 -b57600 -v -Ueeprom:r:multiwiicopter_eeprom.hex:h

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1289849174

If you want to program without arduino sketch take a look at /usr/share/arduino/Arduino.mk

Calibration/configuration

Altitude hold

multiwiicopter.txt · Last modified: 2012/02/27 19:00 by memeruiz