Menu

Configuración básica de dron hexacóptero basado en Pixhawk

26 noviembre, 2016 - ajustes
Configuración básica de dron hexacóptero basado en Pixhawk

Una vez tenemos nuestro multicóptero montado, se procederá a la configuración de todos sus elementos para poder realizar el primer vuelo de prueba.

Descarga e instalación del firmware en la controladora Pixhawk

Lo primero que necesitamos es instalar en la Pixhawk el firmware correspondiente a nuestro tipo de vehículo: cuadricóptero, hexacóptero, avión, etc. Esto se hace mediante el programa llamado Mission Planner. Lo podemos descargar de la página oficial: http://ardupilot.org/planner/

plannerFirmware

Una vez instalado el firmware, que será descargado automáticamente desde Internet, la Pixhawk estará en condiciones de ser configurada para volar hexacópteros.

Configuración inicial de la Pixhawk (wizard)

Lo mejor al principio es ejecutar el Wizard de configuración:

A partir de aquí irán pasando varias pantallas de configuración básica necesarias para volar.

tipo_frame

Antes hemos cargado el firmware de tipo hexacóptero en nuestro caso. Ahora debemos seleccionar la forma de nuestro frame, si es en X, H, Y, +, etc.

config_acelerometro

Se nos indicará que posicionemos el drone de varias maneras en los tres ejes y pulsar enter. Es importante ser lo más exactos posibles y permanecer muy quietos cuando le demos al enter. (Ojo con la última postura que es con el drone bocabajo).

compass_calibration1

Esta calibración es fundamental para que los estacionarios sean perfectos. Pulsamos “Live Calibration”. A continuación se nos indicará que giremos el drone en los tres ejes hasta que se complete la calibración eliminando los puntos blancos que aparecen en la imagen. Aparecerá un cuadro por cada brújula que tengamos seleccionada, normalmente la externa, que será la principal, y una de las internas. Apuntaremos el drone hacia el norte y lo giraremos de izquierda a derecha 360º. Esto mismo lo haremos por cada uno se sus 6 ejes: izquierda, derecha, arriba, abajo, delante y atrás.

compass_cfg

Una vez hecha la calibración se indicaran los offset de cada uno de las brújulas.

compass_calibration2

Para acceder a esta calibración fuera del del Wizard:

Initial Setup → Mandatory Hardware → Compass → Live calibration

Actualización: A partir de la versión copter 3.4 el HMI de la calibración cambia un poco. Ya no aparecen los ejes de puntos sino una barra de progreso por cada compass instalado. Para calibarlo yo lo que hago es poner el dron en un taburete o silla giratoria y le doy varias vueltas poniendo el dron en las posiciones siguientes:

Básicamente es lo que se indica en la web de Ardupilot:

http://ardupilot.org/copter/docs/common-compass-calibration-in-mission-planner.html?highlight=compass

 

Si estamos usando un Power Module con monitorización de voltaje y corriente, lo indicaremos. Normalmente usaremos un 3DR o compatible.

powero_module

radio_cfg

En esta primera pantalla comprobamos que todos los sticks funcionan y el sentido de sus recorridos sea correcto. Si algún stick está el revés, hay que configurar la opción Reverse en la emisora. Debemos configurar el Roll de tal manera que se mueva al revés que el stick. A continuación pulsamos en Calibrar Radio.

radio_cfg2

Movemos los sticks hasta los topes de sus recorridos y las palancas auxiliares para que se quede memorizado los límites de los valores. Finalmente pulsamos Click when Done.

Esto se especifica más adelante. Esta es la configuración que yo utilizo habitualmente:

modosvuelo_cfg

Por último el Wizard nos pide realizar una prueba de armado de motores.

armado

Para ello pulsaremos el botón de armado y una vez fija su luz, llevaremos el sitck del rudder a tope a la derecha.

armado_ok

Con ello queda completada la configuración básica de drone.

Calibración de los ESC simultáneamente

Como sabemos, es necesario configurar cada ESC por lo menos con los puntos mínimo y máximo del stick de potencia. Esto se puede hacer uno a uno conectando cada ESC al receptor directamente, al canal Throttle, y hacerlo como se hace siempre con los helicópteros. O también de la siguiente manera, con cada ESC conectado a la Pixhawk:

Calibración del módulo de potencia (Power module)

Es muy importante tener información veraz del estado de la batería. Para ello ya hemos hecho una configuración inicial del Power Module a través del Wizard del Mission Planner. Con ello ya podremos ver datos de voltaje y corriente en el OSD del Mission Planner:

bat_osd

Ahora medimos con un multímetro el voltaje real a la salida de la batería, por ejemplo en nuestro caso 12,37V. Vemos que hay una ligera desviación.

Seleccionamos lo siguiente:

Simplemente en el apartado 1 del cuadro de calibración introduciremos el valor real medido y pulsaremos Enter para que quede guardado.

bat_calib

Una vez hecho esto veremos que en el OSD del Mission Planner ya tendremos valores cercanos al valor real medido.

Ahora debemos ajustar la corriente. Para ello ajustamos el multímetro en modo medida de corriente y lo conectamos en serie con la batería. El ajuste se consigue subiendo o bajando el valor de Amperes per volt hasta que la medida indicada en

FLIGHT DATA → Estado → Current

coincida con el valor de corriente medido en el multímetro. Tenemos que tener en cuenta que la medición del Power Module tiene poca precisión por debajo de 3A. Lo que se suele hacer para la calibración de corriente es armar el drone y ponerlo a tope de gas. Esto lo podemos hacer sin las hélices puestas. En mi caso obtengo así valores reales de 3,5A. Con las hélices puestas, se sobrepasan valores de 10A así que algunos para hacer la calibración montan las hélices al revés (el drone empuja hacia abajo, hacia el suelo) con ello se evita que el drone despegue y reproducimos la fricción de las hélices en vuelo, y dan gas hasta alcanzar los 10A reales para hacer la calibración. Esto es lo recomendado en la página oficial.

La calibración de la medida de corriente es importante porque evitará falsas condiciones de failsafe, RTL antes de tiempo, etc.

Configuración alerta de batería baja

Una de las opciones en la pantalla de Battery Monitor anterior es “MP Alert on Low Battery”. Al seleccionarlo se nos hacen varias preguntas:

Aquí podemos personalizar el mensaje de voz que el Mision Planner indicará en caso de alcanzar alguno de los dos parámetros siguientes el valor configurado.

Sabemos que el voltaje nominal de una celda LiPo es de 3,7V. Nunca de debe de bajar de 3,2V como mínimo si no queremos ya no sólo dañar la batería sino entrar en peligro de calentamiento y hasta incendio en la posterior carga.

Es de suponer que este porcentaje se calcula con el valor de capacidad (mAh) de la batería configurado en el Power Module.

Aún con el Fail Safe de batería deshabilitado, se utilizan los valores límites de batería baja y carga para lanzar la alarma de batería baja. Esta alarma se produce en tres formas: aviso en la recepción  de telemetría en tierra, alarma acústica en el zumbador del drone y parpadeo del indicador LED del drone.

Configuración de los modos de vuelo

Los que venimos de los helicópteros, estamos acostumbrados a sólo tres modos de vuelo: Normal, Idle1 e Idle2 los cuales definen distintas curvas de gas (potencia de motor) y pitch (ángulos de las palas principales) para obtener comportamientos de vuelo standar, invertido, etc.

En el mundo del multicoptero esto es completamente distinto, hay muchos más modos de vuelo. Pixhawk permite preseleccionar seis, aunque normalmente usaremos sólo tres o cuatro y ocasionalmente alguno más. A continuación se describen los posibles modos de vuelo.

Configuración de la emisora Spektrum para los seis modos de vuelo

Como hemos visto en el montaje del drone, se utiliza un canal para la selección de uno de los seis modos de vuelo que permite Pixhawk. Esto se consigue dividiendo los valores del canal (PWM) en seis rangos distintos, uno para cada modo de vuelo. Seleccionado un valor en la emisora dentro de un rango estaremos seleccionado dicho modo de vuelo. Estos rangos se muestran a la derecha de la pantalla de configuración de los modos de vuelo.

modosvuelo2_cfg

Es fácil asignar en la emisora un canal a un switch o palanca y ajustar sus valores para las distintas posiciones. El problema surge al no disponer ninguna emisora de una palanca de seis posiciones. Es necesario recurrir a configuraciones especiales de mezclas para utilizar dos palancas combinadas y poder seleccionar seis cosas distintas. Estas configuraciones dependen de cada emisora. Hay cierta confusión en Internet acerca de cómo configurar las mezclas de canal en algunas emisoras. En mi caso utilizo Spektrum y a continuación se describe lo que tuve que hacer para conseguir esto.

El canal asignado en mi emisora a la selección del modo de vuelo es el 6 (AUX1). Por defecto en la DX7 se encuentra asignado a la palanca D de tres posiciones, por lo que sólo se me seleccionan los modos de vuelo 1, 4 y 6. Muy lejos del comportamiento que necesitamos.

En esencia, las mezclas de canales consiste en que cuando modificamos los valores de un canal principal o primario mediante el stick o alguna palanca, un segundo canal variará también a la vez que el canal principal en una proporción determinada. Esto de las mezclas se inventó para poder tener movimientos coordinados de varios servos en el control de aviones y helicópteros.

El tema consiste en mezclar el canal AUX1 consigo mismo  dependiendo de la posición de una segunda palanca. En mi emisora, voy a utilizar las palancas C y D para la selección de los modos de vuelo, ya que la C es la que utilizo para los modos de vuelo en helicópteros.

emisora01

System Setup → F-Mode Setup → Flight Mode Switch=Inhibit

Algunas personas en Internet utilizan F-Mode junto con las mezclas. En realidad no hace falta para drones, la DX7 con el firmware actual sólo reconoce tres. Además no vamos a realizar ninguna acción combinada con las posiciones del F-Mode (como por ejemplo la variación de ganancias en el caso de los helicópteros).

System Setup → Channel Assign → Nex → 6 AUX1=C

img_20160803_201103

Servo Setup → Reverse → AUX1

 

img_20160803_200627

Servo Setup → Travel → Aux1

Esto es necesario para que se seleccione el modo de vuelo 5 y no el 6 que es el corresponde al final del recorrido con la palanca C abajo del todo.

img_20160803_200455

Con todo esto ya puedo seleccionar con mi palanca C los modos de vuelo 1, 4 y 5. Ahora se trata de configurar las mezclas en el canal AUX1 para que con la segunda palanca D sumemos los valores de PWM suficientes para seleccionar los modos 2, 3 y 6.

Ahora hay que irse al menú Mixing y utilizar dos posiciones de ajuste, por ejemplo la 4 y la 5:

Mixing → P-Mix4: → Normal

Estos son los dos preajustes que realizamos mezclando el canal AUX1 consigo mismo en dos posiciones de la palanca D. Con ello en realidad modificamos el valor de AUX1 actual seleccionado en la palanca C y lo llevaremos a un nuevo valor para seleccionar un nuevo modo de vuelo.

 

img_20160803_203314

 img_20160803_203330

Actualización:

En la actualidad utilizo las palancas D y E para los modos de vuelo asistidos y dejo la palanca C sólo para los modos de vuelo heli. Esto es ya que en el vuelo de helis con controladoras tipo CC3D, pixhawk, etc podemos seguir teniendo los modos de vuelo heli tradicionales y los modos de vuelo asistidos en diferenres palancas.

Así que ahora utilizo:

System Setup → F-Mode Setup → Flight Mode Switch=Inhibit

System Setup → Channel Assign → Nex → 6 AUX1=D

Servo Setup → Reverse → AUX1

Servo Setup → Travel → Aux1 = [50 – 125]

Mixing → P-Mix4: → Normal → Aux1>Aux1, Rate -40%, 40%, Offset 0%, Switch E posición 0 seleccionado.

Mixing → P-Mix5: → Normal → Aux1>Aux1, Rate -60%, 60%, Offset 0%, Switch E posición 1 seleccionado.

Mixing → P-Mix6: → Normal → Aux1>Aux1, Rate -90%, 100%, Offset 0%, Switch E posición 2 seleccionado.

 

De esta manera consigo la selección de cinco modos de vuelo de manera intuitiva con dos palancas de tres posiciones.

 

Palanca D Palanca E
Posición 0 Posición 0: Stabilize

Posición 1: Alt Hold

Posición 2: Sport

Posición 1: Loiter Sin efecto
Posición 2: RTL Sin efecto

 

Con la palanca D en su posición inicial 0 seleccionamos tres modos de vuelo no GPS mediante la palanca E.

Con la palanca D en sus posociones 1 y 2 seleccionamos dos modos de vuelo asistidos por GPS, Loiter y RTL,  independientemente de los que se selecciones en la palanca E.

RTL ajuste de parámetros

En modo RTL dispone de algunos parámetros que determinan cómo el dron vuelve al punto de despegue. En realidad se toma como punto de despegue el punto en donde fue armado el dron antes de despegar. Algunos de estos parámetros más importantes son los siguientes.

RTL_ALT: Altitud mínima a la que se moverá el helicóptero durante el RTL. El dron subirá a esta altitud si estuviera más bajo en el momento de seleccionar RTL. Una vez alcanzada esta altura, comenzará el desplazamiento horizontal hasta el punto del último armado de la controladora. Su rango es de 1 a 8000 cm. Si se pone a cero, hará el RTL a la altitud actual. Si en el momento de seleccionar RTL al dron estuviera más alto que este parámetro hará el RTL a la altura actual sin descender. Es valor por defecto es 20m (20000 cm) suele ser suficiente para no tener problemas con postes eléctricos u obstáculos similares.

RTL_ALT_FINAL: Altitud a la que se quedará el dron una vez llega a casa. El valor cero indica que hará aterrizaje automático (autoland).

RTL_LOIT_TIME: Tiempo en milisegundos que permanece estacionario una vez que llega a casa antes de comenzar el descenso final. Por defecto a 5000ms (5s).

WP_YAW_BEHAVIOR: Este parámetro define hacia donde apuntará el morro del dron durante el desplazamiento RTL y también en desplazamientos entre waypoints.

0: No cambia el yaw, se contiúa en la última posición
1: El morro mirando hacia el siguiente waypoint o al punto de despegue en RTL
2: Morro mirando hacia el siguiente waypoint excepto RTL
3: Morro a lo largo del curso GPS

LAND_SPEED: Velocidad de descenso en cm/s para la etapa final de aterrizaje. Yo lo tengo fijado en 35.

RTL_SPEED: Velocidad horizontal en cm/s a la que el vehículo regresará a casa. Por defecto, este valor es cero, lo que significa que usará en su lugar el parámetro WPNAV_SPEED.

WPNAV_SPEED: Define la velocidad a la que el dron intentará ir al siguiente waypoint. Por defecto a 500 cm/s (18 Km/h)