Category:Coax - general

From Skybotix

Jump to: navigation, search

Contents

Introduction

The CoaX helicopter was designed as an open, cost-effective and easy to use system. Most of the parts are available off-the-shelf for a reasonable cost. Moreover, all the structural parts of CoaX are made of 2D carbon sheets, which makes it very easy to modify and adapt the system if needed. The CoaX has a size comparable to common commercial model helicopters. It has a total span of 340mm (13.4in), a height of 281.6mm (11in) and a width of 165mm (6.5in). CoaX is equipped with two (02) brushless motors for the propulsion and two (02) servo-motors for the steering. The top rotor is equipped with a stabilizer bar for passive roll and pitch stabilization. Moreover, these two axes are controlled through a CNC made micro swashplate. The main board is the heart of the system. It integrates an Inertial Measurement Unit (IMU), two DSPs (dsPIC), Bluetooth (or ZigBee) module, and several other functions (see Hardware page for details). The structure is made of 2D carbon sheets assembled together.


Since the CoaX is an open-source system, the indications given below are only valid for the factory configuration!

Getting Started

The CoaX product is shipped to you ready-to-fly. However, it is advisable to check a couple of things before flying it:

  • Read the safety instructions!
  • Unpack the box and verify that you received all the elements and that the delivery corresponds to your order
  • Check if nothing was damaged during the transport (rotors, legs, battery, etc.)
  • Check the level of the battery (below 11V or above 12.6 you should change the battery pack)
  • Place new batteries on the RC transmitter


First manual flight

Flying the CoaX manually is in principle very easy. However, before taking off, it is better to verify a couple of elements. Please note that there are two models of remote controllers (RC) being used with the CoaX, depending on when the order was made. Please see the page Hardware to know which RC you have.

If you use the WK2402 remote control

  • Check the battery level (below 11V or above 12.6V you should change the battery pack)
  • Check if the throttle on the RC is at its lowest position
  • Turn-on the RC transmitter
  • Check if the trim switches (Roll and Pitch only) of the RC are at their middle point (50%)
  • Put the manual/auto switch to MANUAL (say below 50%)
  • Place the helicopter on a horizontal surface, in a big-enough room (depends on your piloting skills...)
  • Power-up the CoaX helicopter - It is important to keep the coax static while the IMU is initializing (Green LED off)
  • At power-up, the CoaX is by default in Kill position (RED LED on). Go out from the Kill mode by moving the height (throttle) stick to the lower RIGHT corner, then releasing it. The RED LED goes off. This enables the motors, but does not start them. However, make sure the Stop/Idle/Takeoff switch is below 80%.


In order to take-off, and for security reasons, the CoaX must be first switched to IDLE mode and then to TAKEOFF mode (See the Navigation modes in Software page). This is very easy:


  • Make 2xBip (clicks) UP with the Stop/Idle/Takeoff switch. Since the helicopter was just powered-up, this will switch the mode from STOP to IDLE. There is a timeout of 10sec in IDLE mode, after this time, the CoaX will switch back to STOP mode unless intentionally switched to TAKEOFF mode.
  • Within these 10sec, repeat the previous 2xBip (clicks) UP with the Stop/Idle/Takeoff switch and the helicopter will switch from IDLE to TAKEOFF mode. The rotors will spin faster, but since the throttle stick is at the minimum, the height setpoint is thus very low (<10cm)
  • Move slowly the throttle stick to a slightly higher position and the CoaX will take-off. Since the height of the CoaX is controlled, it will remain constant, unless you move again the throttle stick
  • You can use the other sticks to orient or move the helicopter. Please see the picture of the WK2402 for details
  • To land in MANUAL mode, you need only to put down the throttle stick slowly to its lowest position
  • To stop the motors, it is better to switch back to IDLE mode by performing, this time, a 2xBip (clicks) DOWN with the Stop/Idle/Takeoff switch. Again 2xBip (clicks) DOWN with the same stick, the motors will stop completely.


Obviously, one can stop the motors immediately, from any mode by moving the height (throttle) stick to its lowest, left position.

It is advised to trim the roll and pitch axes during the first flight, using the corresponding trim sliders. If the CoaX is well trimmed, it should look like pinned in the air!

If you use the WK2401 remote control

  • Check the battery level (below 11V or above 12.6V you should change the battery pack)
  • Check if the throttle on the RC is at its lowest position
  • Check if the trim sliders (Roll and Pitch only) of the RC are at their middle point
  • Put the manual/auto slider to MANUAL
  • Put the Kill switch to the left (kill position - This disables the motors)
  • Place the helicopter on a horizontal surface, in a big-enough room (depends on your piloting skills...)
  • Turn-on the RC transmitter
  • Power-up the CoaX helicopter - It is important to keep the coax static while the IMU is initializing (Green LED off)
  • Put the Kill switch to the right (normal position - This enables the motors, but does not start them)


In order to take-off, and for security reasons, the CoaX must be first switched to IDLE mode and then to TAKEOFF mode (See the Navigation modes in Software page). This is very easy:


  • Move quickly the manual/auto slider from MANUAL to AUTO, then again to MANUAL in less than a second. Since the helicopter was just powered-up, this will switch the mode from STOP to IDLE. There is a timeout of 10sec in IDLE mode, after this time, the CoaX will switch back to STOP mode unless intentionally switched to TAKEOFF mode.
  • Within these 10sec, repeat the previous quick move (MANUAL-AUTO-MANUAL) and the helicopter will switch from IDLE to TAKEOFF mode. The rotors will spin faster, but since the throttle stick is at the minimum, the height setpoint is thus very low (<10cm)
  • Move slowly the throttle stick to a slightly higher position and the CoaX will take-off. Since the height of the CoaX is controlled, it will remain constant, unless you move again the throttle stick
  • You can use the other sticks to orient or move the helicopter. Please see the picture of the WK2401 for details
  • To land in MANUAL mode, you need only to put down the throttle stick slowly to its lowest position
  • To stop the motors, it is advised to switch back to IDLE mode by performing again the quick move (MANUAL-AUTO-MANUAL), the motors will stop alone after 10sec


Obviously, one can stop the motors immediately, from any mode by moving the Kill switch to the left position.

It is advised to trim the roll and pitch axes during the first flight, using the corresponding trim sliders. If the CoaX is well trimmed, it should look like pinned in the air!

Trouble Shooting

The coax electronic board has 3 leds and 1 buzzer to report its status (see photo for their locations).

  • The red led is only on to report a critical problem. Currently, two problems are important enough to warrant a red light: the battery being too low or a problem with the IMU. If the red led comes on during a flight. Land as soon as possible and check the battery. If a low battery has been detected, the coax firmware will not accept to take-off anymore (until reset or battery replacement).
  • The green led is on as soon as the IMU is running and ready, i.e. 2-3 seconds after power-up or reset.
  • The orange light is context dependent.


It is particularly important to pay attention to the leds and buzzer during the few seconds after power-up. The nominal sequence is as follows:


  • Immediately after power-up, the green led flashes once to acknowledge that the IMU is powered on.
  • The brushless motors are making a 3-pitch tune (too-tuh-tee) to indicate that they are initialized properly.
  • Nearly at the same time, the coax firmware is making one single beep and switching the orange led off. This indicate that the coax firmware is ready and trying to pair with the remote control. This is a blocking loop. This could take a few seconds. If this step blocks too long, try resetting the remote or bring it closer to the coax. If you have several remote and several coax in the same room, be careful who pairs with whom.
  • Once the pairing as succeeded, the orange light starts blinking fast (50Hz) while waiting for the IMU to finish its initialization.
  • Once the IMU has finished initializing (i.e. measuring the initial accelerometer and gyros bias), the green led starts flashing at 250Hz, and RED led of the ultrasound sensor starts flashing (for each measurement).
  • The coax firmware then makes three buzzer beeps (constant pitch). The system is ready to fly.

It is important to keep the coax static while the IMU is initializing (green led off). This is the key to the coax stability while in the air.

First automatic flight

Before being able to do the first automatic flight, it is necessary to choose the communication method between the controlling system and the coax firmware. There are three possibilities:

  • Control from the Gumstix computer: this will first require to arrange/install a gumstix compilation environment, setup the gumstix
  • Control from a remote computer via WIFI: this will first require to setup the gumstix networking
  • Control from a remote computer via Bluetooth: the default firmware use the bluetooth channel only for debug messages, please contact us if you need to use it for control. Currently, this only works reliably under Linux.

See Coax Software for details about the API.

The coax CD contains the software for 2 basic programs that can test the status of the communication channels:

  • monitor: will request constantly the coax for new status message
  • coaxjoy (Linux only): provide a simple joystick interface for the COAX. The button definition comes from a Logitec joystick and may not be very reliable when changing joystick.
  • simplehelishell: provide a simple shell to test functions of the coax.

These two programs are good example on how to interface with the coax software

Gumstix

Under the gumstix, these programs are in the build-gumstix/examples and build-gumstix/helishell directory (in root's home). They are run as follows:

./monitor /dev/ttyS0

or

./simplehelishell /dev/ttyS0

It is probably also possible to connect a wireless joystick to the USB port instead of the camera, but this has not been tested yet.

Windows XP 32bits

Under windows XP 32bits, pre-compiled version of the monitor and helishell programs are available in the build-win32 directory on the CD. They can be used in a command line environment, using the networking interface to the coax. For instance, if the coax IP is 192.168.0.5 (default), then the commands can be invoked as follows:

./monitor 192.168.0.5

or

./simplehelishell 192.168.0.5


Linux

No precompiled version of the API and example are provided for linux due to the variability of linux system. In order to compile your examples, use the following procedure:

  • First copy the API directory from the CD to a suitable place (and check that the copied files are writeable)
  • Switch to the build-linux directory
  • Run cmake:
cmake ..
  • Run make
make all

This should be enough to build the examples application in build-linux/examples and build-linux/helishell. Use the applications as follows:

./monitor 192.168.0.5

or, for bluetooth (assuming the rfcomm link has been setup already, and that the firmware expect communication via bluetooth)

./monitor /dev/rfcomm0

Using the simplehelishell:

./simplehelishell 192.168.0.5

or

./simplehelishell /dev/rcomm0

If you plug a logitec usb joystick, then the coaxjoy program can be used:

./coaxjoy 192.168.0.5

or

./coaxjoy /dev/rfcomm0

Please check that the mapping of the buttons correspond to the mapping in the code before flying the helicopter. The mapping is expected to be as follows:

  • button 1 (or trigger) goes from stop to idle, and from idle to takeoff and fly
  • in idle, button 2 stop the motors
  • while flying:
    • button 3 increase the height set-point
    • button 2 decrease the height set-point
    • button 4 rotate left, button 5 rotate right
    • button 1 (trigger) request landing and switch to idle

Don't forget that the api is allowed to control the helicopter only when the remote switch is on auto, and that the kill switch must be set to the right to allow the propeller to run

Programming the CoaX and receiving telemetry data

Programming the Gumstix

See Coax Software for details about the API and code examples.


Programming the dsPICs

There is two ways to update the dsPICs firmware:

  • The first way is to use the programming board described in the Hardware page of this wiki. This is appropriate for the IMU dsPIC. For the main dsPIC, programming using the programming board is possible, but will erase the bootloader firmware. This requires a Microchip ICD programmer, and the Microchip software under windows (this programmer is not supported under linux).
  • The second way is to use the bluetooth bootloader. This requires the bootloader firmware on the dsPIC (installed by default), a bluetooth compatible computer, and a bootloader program delivered on the CoaX CD. The procedure is described in the firmware_upload.pdf file in the Downloads page.


The factory defaults can always be recovered with the original files from the provided CD or from the files found in the Downloads page.

This category currently contains no pages or media.

Personal tools