Bienvenido: Ingresar

Como se llama la parte imaginaria de la impedancia

Versión 3 con fecha 2011-02-22 22:41:26

location: LabElectronica / ProyectoQuadricoptero / QA3Fase10InformeFinal

Tabla de Contenidos

  1. Diseño del Cuadrotor
    1. Introducción al Funcionamiento
      1. Movimiento de guiñada (yaw)
      2. Movimiento de inclinación (pitch)
      3. Movimiento de bamboleo (roll)
      4. Movimiento Vertical
    2. Estructura
        1. Cálculo del peso total
    3. Motores
    4. Controladores ESC
    5. Baterías LiPo
      1. Cálculo de la autonomía de vuelo
    6. Hélices
    7. Protección
  2. Modelado del Quadrotor
        1. Descripción
          1. Fuerza de Arrastre del Cuerpo
          2. Empuje
          3. Fuerza de arrastre sobre los rotores debido a la velocidad horizontal
          4. Momento de arrastre sobre el eje de rotación de los rotores
          5. Momento de Roll generado en los rotores por la velocidad
          6. Fuerza de arrastre en los rotores debido a la velocidad
          7. Empuje Total
    1. Aproximación de la Fuerza y el Momento
        1. Fuerza
        2. Momento
      1. Referencias
    2. Medición de los parámetros de la Planta
      1. Empuje de los motores
        1. Motor 1
          1. RCTimer Normal
          2. Mystery Pusher
          3. RCTimer Pusher
          4. Mystery Normal
        2. Motor 2
          1. Mystery Normal
          2. RCTimer Pusher
          3. Mystery Pusher
          4. RCTimer Normal
        3. Motor1, RCTimer, Pusher y Motor2, Mystery y Normal
      2. Cálculo Aproximado de las constantes
        1. Cálculo de la constante de Inercia
        2. Cálculo de la constante del Motor
      3. Revisión del Cálculo de las constantes
        1. Inercias con respecto al eje X o Y
          1. Motor
          2. Batería
          3. Barra
          4. IMU, ARM
          5. Momento total de inercia para el eje x o y
    3. Diseño del controlador
      1. Controlador PID
        1. Ecuacion Diferencial
        2. Transformada de Laplace
        3. Transformada Z
        4. Tiempo Discreto
      2. Controlador del ángulo de roll
        1. Modelo Continuo
        2. Modelo Discreto
      3. Controlador del ángulo de pitch
    4. Simulaciones
    5. Simulación a lazo abierto
      1. Simulación a lazo cerrado
  3. Filtro Complementario para la Estimación del ángulo de roll y de pitch
    1. Ensayo individual de los sensores
      1. Acelerómetro
      2. Giróscopo
    2. Filtro Complementario
      1. Discretización de los filtros
      2. Algoritmo del microcontrolador
    3. Resultados de la implementación
    4. Conclusiones sobre las técnicas probadas para la estimación del ángulo

Diseño del Cuadrotor

En esta sección se realiza una introducción al funcionamiento del Cuadrotor en general y se explica el diseño del QA3. En la sección del modelado matemático de la planta se amplía la información sobre el funciomiento.

El cuadricóptero, es una aeronave que se eleva y se desplaza por la acción cuatro rotores instalados al final de un marco en forma de cruz. El control se logra variando la velocidad angular de cada uno de los cuatro motores.

Introducción al Funcionamiento

Para controlar el QA3 es necesario generar cambios en la potencia entregada a cada motor. Para el siguiente análisis se asume que la plataforma esta volando estable con una potencia de motores PWMQ (en los cuatro motores).

Los cuadricópteros como todo vehículo volador tiene 3 grados de libertad angulares, estos son roll, pitch y yaw.

roll-pitch-yaw.png

Movimiento de guiñada (yaw)

Se refiere al movimiento cuando el vehículo gira sobre su eje vertical. El cuadricóptero logra este movimiento aumentando (o disminuyendo) por igual la potencia de giro de los rotores 1 y 3 y disminuyendo (o aumentando) en igual magnitud los motores 2 y 4. Al disminuir esta potencia aumenta el par motor creando un giro contrario a las hélices que están rotando con mayor potencia. Las potencias de giro deben variar equilibradas para mantener el vehículo estacionario en el aire, es decir, la fuerza total constante.

yaw-movimiento.png

Movimiento de inclinación (pitch)

Es el movimiento que permite el movimiento hacia adelante y atrás. El vehículo mantiene la potencia en el rotor 1 que es opuesto al sentido deseado, reduce al mínimo la del rotor 3 y deja los otros dos a potencia media, así la sustentación del rotor 1 hace que el vehículo se incline a favor del sentido deseado y se desplace.

pitch-movimiento.png

Movimiento de bamboleo (roll)

Es cuando el vehículo se mueve a la izquierda o derecha. Usa el mismo principio que el de inclinación, pero lateralmente. La combinación de los tres movimientos mencionados son los que hacen maniobrar al cuadricóptero libremente.

Los movimientos de roll y pitch son giros en torno a los ejes horizontales del QA3. Una inclinación en cualquiera de estos ejes produce un movimiento lineal en el plano horizontal cuya velocidad depende del ángulo (esto se denomina ángulo de ataque) y la dirección depende de la orientación del QA3. Yaw es un giro respecto a la vertical y no produce movimiento lineal.

roll-movimiento.png

Movimiento Vertical

Por último, se puede hacer ascender, descender o mentener en vuelo estacionario al QA3, haciendo que la fuerza de sustentación generada por los 4 pares motores-hélices sea mayor que la fuerza peso generada por la atracción gravitatoria. Este movimiento se logra variando la potencia de los cuatro motores en igual medida para no modificar los demás grados de libertad. De esta forma la plataforma puede ascender o descender.

elevación.png

Lo dicho anteriormente es para el caso ideal, donde los cuatro motores tiene exactamente las mismas constantes y giran a las mismas velocidades angulares. En el caso real, lo anterior no es posible, porque siempre existen ciertas variaciones en las fuerzas generadas por los motores, ya sea por que las constantes de los motores son diferentes o las velocidades angulares giran a distintas revoluciones. Estas diferencias causarían que el vehículo tuviera ciertas rotaciones en su centro de gravedad y llevaría a que se la fuerza de sustentación total tuviera una diferencia angular con el eje Z. Esta diferencia daría lugar a un desplazamiento de en el plano XY.

El control de los movimientos yaw, pitch y roll se realiza con el sistema de navegación. En secciones siguientes se encontrarán las expresiones matemáticas que permitan modelar el comportamiento del cuadricóptero en el espacio. Los modelos matemáticos desarrollados serán simulados para luego ser probados en la estructura real.

Estructura

La estructura del QA3 es de aluminio compuesta por dos tubos rectangulares (2mm de espesor, 60cm de largo) encastrados en sus centros, formando un ángulo de 90º. Sobre el centro se encuentra la placa madre montada sobre gomas de caucho para amortiguar las vibraciones producidas por los motores.

100_6094.JPG

Como se observa en la figura anterior, se realizaron ventanas sobre los tubos para no obstaculizar el flujo de aire generado por las hélices. Con esto se logra un aumento en el empuje generado por los propulsores.

Cálculo del peso total

En la siguiente tabla se especifican los pesos de los componentes utilizados, algunos fueron obtenidos del fabricante y otros a través de mediciones.

Motores

4

52g

208g

ESC

4

32g

128g

Baterías

2

160g

320g

Hélices

4

10g

40g

Estructura

1

300g

300g

Protección

1

150g

150g

Placa Madre

1

200g

200g

Montaje Placa

1

150g

150g

Total

1496g

Con el pesaje del prototipo completo con una balanza de presición se obtuvo un valor de 1482g, el cual es muy cercano al valor calculado anteriormente.

Motores

Se utiliza motores brushless para aeromodelismo con control electrónico. A diferencia de un motor DC convencional, en un motor brushless la armadura no tiene movimiento y el imán permanente es el que gira sobre su eje. Estos motores son conocidos como outrunners. Para lograr esto es necesario generar tres señales con valor eficaz variable en forma cuasi-senoidal, como se muestra en el siguiente gráfico.

motores-brushless.png

Un parámetro importante de éste tipo de motores es el

$$$kv$$

, constante que relaciona la velocidad en RPM del motor sin carga con el valor pico de tensión en las bobinas del motor. Los motores elegidos son los BL-2830-8 de la empresa RCTimer que tienen un

$$$ kv=\frac{1300RPM}{volt} $$

.

bl2830.jpg

Las características de estos motores son:

  • Modelo: 2830-8
  • Dimensiones: Ф28*30mm
  • Dimensión del eje: Ф3.17*45mm
  • Peso: 52g
  • KV(rpm/V): 1300
  • Potencia Máxima: 275W
  • Batería: 2-4Li-Po
  • Hélices recomendadas: 9x6/7x3
  • Ri(M Ω): 0.075
  • ESC(A): 30A

bl2830-dim.jpg

Controladores ESC

Los controladores de los motores (ESC, Electronic Speed Controller) permiten regular la potencia suministrada a cada motor. Se alimentan con una tensión formada con celdas NiMh o LiPo. En nuestro caso la tensión es 12v. La salida del ESC debe ser como la mostrada en la figura anterior.

En un primer momento se planeo la construcción de un controlador de velocidad, pero debido a varias razones se decidió la compra de un ESC comercial. La principal razón de esta decisión fue el costo de la construcción de un ESC. El precio de un controlador comercial esta en el orden de los 40, cuando la construcción del mismo ronda en el orden de los 200. Las razones de este costo elevado son la necesidad de usar transistores mosfet especiales que no se consiguen facilmente, los transistores deben manejar 30A de corriente continua y picos de 100A, también deben tener tensiones de disparo bajas compatibles con las de un microcontrolador para no complicar el circuito. También se necesita contar un microcontrolador con 6 salidas de PWM, lo que no es muy común en los microcontroladores normalmente usados.

Si agregamos a todo esto el tiempo de desarrollo y de prueba, llegamos a la conclusión de que carece de sentido construir el controlador en el ámbito de nuestro proyecto.

En la sección de hardware se amplía la información sobre los controladores comerciales usados.

Baterías LiPo

Actualmente las baterías de Litio-Polímero son usadas para este tipo de aplicaciones en donde se necesitan elevadas potencias y bajo peso. Estas baterías están formadas por celdas que se pueden agrupar en serie y paralelo para lograr los voltajes y corrientes necesarios.

Las baterías LiPo necesitan cargadores especiales. Sus celdas no deben ser sobrecargadas ni tampoco deben ser descargadas profundamente. Para mantener la diferencia entre las celdas al mínimo, se debe usar un balanceador. Este balanceador puede estar integrado al cargador o puede estar separado. Por esto las baterías no solamente tienen los bornes normales de una batería, sino que tienen otro conector que nos permite acceder a las celdas individuales para lograr una carga balanceada.

El manejo de estas baterías debe ser realizado con precaución, por lo tanto se deben tener en cuenta algunas reglas. El fabricante nos aconseja:

  • No exceder de 4.2V el voltaje de cada celda.
  • No exceder de 5C la tasa de carga
  • No exceder las tasas de descarga de corrientes especificadas
  • No descargar la batería a más de menos de entre un 10 a 20% de su capacidad energética. Usar 3.4V como tensión de corte de celda.
  • Siempre monitorear la carga de la batería
  • Nunca cortocircuitar, tampoco exponer al fuego o al agua
  • Nunca usar un pack estropeado

Se planteó el diseño del prototipo con una autonomía de vuelo de aproximadamente 10 minutos. El QA3 posee 2 baterias Hyperion G3 CX - 3S 2100mAh (25C).

Cálculo de la autonomía de vuelo

Se realizará un cálculo aproximado de este tiempo debido a que el mismo depende de los tipos de maniobras que realiza el dispositivo.

Primero vamos a suponer que trabajamos a potencia máxima:

4 Motores de 275W = 1100W Potencia total consumida, despreciando el resto de los componentes.

2 Baterías de 11.1V * 2100mAh = 46.62Wh

$$$Tiempo = \frac{Energía}{Potencia} = \frac{46.62}{1100} * 60 = 2.55minutos$$

Este tiempo está calculado a potencia máxima, como vemos el QA3 sin llevar carga y volando manteniéndose estático en un punto reduce esta energía consumida a aproximadamente un 25%.

baterías-lipo

Características:

  • Peso: 160g
  • Dimensiones: 109 x 36 x 24 mm
  • Tecnología Lipo
  • Velocidad de carga de hasta 5C

Hélices

Para el funcionamiento del QA3 se necesitan que 2 hélices giren en un sentido y las otras 2 en otro sentido, esto hace que si la sumatoria de las 2 velocidades de las que giran en un sentido es igual a la sumatoria de las que lo hacen en sentido contrario contrario, el torque resultante se cancela.

Las hélices más comunes son las que se usan en el morro del avión, están son conocidas como hélices normales. Hay otro tipo de hélices llamadas empujadoras o pusher en inglés que son las que se utilizan en aeronaves que tienen generan su empuje en la cola. Una posible solución a este problema sería girar 180º la hélice sobre su eje y colocarla en el motor. Pero esta solución tiene corto alcance debido a que el empuje generado por la misma hélice cuando gira en su sentido normal es distinto al generado cuando gira en el otro sentido.

Las hélices empujadoras están diseñadas para que el empuje generado por su rotación sea más efectivo cuando giran al revés que una hélice normal.

Las hélices en general tienen 2 parámetros que las caracterizan: el paso y el diámetro.

hélice.png

El paso se calcula como la distancia que recorrería la hélice en una vuelta si esta se moviese en un medio sólido (semejante a un tornillo) y el diámetro es el del círculo que generan cuando estás rotan. Este diámetro me indica el área del aire que entra en juego en el cálculo del empuje.

Las hélices definen el consumo de corriente de los motores, así como el empuje que se puede lograr.

Las hélices utilizadas en el QA3 son las recomendadas por el motor, con una medida de 9x6 pulgadas.

hélice.png

hélice.png

Protección

Para poder realizar pruebas seguras con el QA3 y evitar que el proyecto dure más que un solo vuelo, se decidió armar una estructura de telgopor, de manera que las hélices queden contenidas dentro del volumen formado. También se le añadió unos pies para proteger el conexionado de alimentación. Estos pies también permiten calibrar el "cero" fácilmente.

../../ProyectosLabWeb/QA3.JPG

Modelado del Quadrotor

En este capítulo se realiza la derivación del modelo matemético de la planta del QA3, también se realizan las simplificaciones necesarias para poder obtener un controlador simple, pero con una buena performance, luego se explican las mediciones realizadas para obtener las constantes reales de la planta y aplicarlas al modelo. Por último se diseña el controlador.

La derivación de la dinámica no lineal es realizada en coordenadas inerciales NED y de cuerpo fijo. Denotemos con {

$$$ e_N$$

,

$$$e_E$$

,

$$$e_D$$

} los ejes inerciales, y con {

$$$x_B$$

,

$$$y_B$$

,

$$$z_B$$

} a los ejes del cuerpo. Los ángulos de Euler de los ejes del cuerpo son {

$$$\phi$$

,

$$$\theta$$

,

$$$\psi$$

} con respecto a los ejes

$$$e_N$$

,

$$$e_E$$

y

$$$e_D$$

respectivamente, y son referidos como roll, pitch and yaw. Definamos a r como el vector de posición desde el origen inercial hacía el centro de gravedad del vehículo(CG), y dejemos que

$$$\omega_B$$

sea definido como la velocidad angular en con respecto al eje de referencia del cuerpo.

La dirección actual de la velocidad es referida como

$$$e_v$$

en coordenadas inerciales. Los rotores, numerados 1-4, están montados sobre los ejes

$$$x_B$$

,

$$$y_B$$

,

$$$-x_B$$

y

$$$-y_B$$

, respectivamente, con vectores de posición

$$$r_i$$

con respecto a CG. Cada rotor produce un torque aerodinámico

$$$Q_i$$

y un empuje

$$$T_i$$

, ambos paralelos al eje de rotación del rotor, y ambos usados para el control del vehículo.

Aquí,

$$$ T_i \cong \mu_i\frac{K_\tau}{1+0.1s}$$

, donde

$$$u_i$$

es el voltage aplicado a los motores. En vuelo,

$$$T_i$$

puede variar mucho con respecto a esta aproximación. Los torques,

$$$Q_i$$

, son proporcionales al empuje del rotor y están dados por

$$$Q_i=k_rT_i$$

.

Los rotores 1 y 3 giran en dirección opuesta a los rotores 2 y 4, por esto los torques aerodinámicos se contrarrestran y pueden ser usados independientemente para el control de yaw. La velocidad horizontal resulta en un momento en los rotores,

$$$R_i$$

, sobre

$$$-e_v$$

, y una fuerza de arrastre,

$$$D_i$$

, en la dirección

$$$-e_v$$

. La fuerza de arrastre de cuerpo está definida como

$$$D_B$$

, la masa del vehículo es

$$$m$$

, la aceleración debido a la gravedad es

$$$g$$

, y la matriz de inercia es

$$$I \in {R}^{3X3}$$

. Un diagrama de cuerpo libre se muestra en la figura siguiente.

diagrama_cuerpo_libre.png

La fuerza total,

$$$F$$

, y el momento,

$$$M$$

, puede ser sumado como

$$$ \mathbf{F} = -D_B\cdot\vec{e_V} + mg\cdot\vec{e_D} + \sum\limits^{4}_{i=1}(-T_i\cdot\vec{z_B}-D_i\cdot\vec{e_V})$$

$$$ \mathbf{M} = \sum\limits_{i=1}^4[Q_i\cdot\vec{z_B} - R_i\cdot\vec{e_V} - D_i(\vec{r_i}\times\vec{e_V}) + T_i(\vec{r_i}\times\vec{z_B})]$$

La dinámica no lineal completa puede ser expresada como:

$$$ \mathbf{F} = m\ddot{r} $$

$$$ \mathbf{M} = I \dot{\omega}_B + \omega_B \times I \omega_B $$

donde se asume que el momento angular total de los rotores está cerca de cero, porque están en contra rotación.

Descripción

Fuerza de Arrastre del Cuerpo

$$$ D_B = q_{\infty}SC_D $$

Empuje

$$$ T_i \cong \mu_i\frac{K_\tau}{1+0.1s}$$

Fuerza de arrastre sobre los rotores debido a la velocidad horizontal

$$$ D_i $$

Momento de arrastre sobre el eje de rotación de los rotores

$$$ Q_i = K_{\tau}T_i $$

Momento de Roll generado en los rotores por la velocidad

$$$ R_i $$

Fuerza de arrastre en los rotores debido a la velocidad

$$$ D_i $$

Empuje Total

$$$ T = \sum\limits_{i=1}^4{T_i} $$

Aproximación de la Fuerza y el Momento

Suponiendo que el Cuadricóptero está en vuelo estacionario podemos despreciar

$$$ D_B $$

y

$$$ D_i $$

. Con esto nos queda:

Fuerza

$$$ m\ddot{r} = \mathbf{F} = -R_{\psi}R_{\theta}R_{\phi}T\cdot\vec{z_B} + mg\cdot\vec{e_D}$$

Aproximando las matrices de rotación de los ángulos para ángulos pequeños, tenemos:

$$$ -R_{\psi}R_{\theta}R_{\phi} = \left[\matrix{ 1 & \psi & \theta \cr \psi & 1 & \phi \cr \theta & -\phi & 1 }\right] $$

$$$ m\ddot{r} = \left[\matrix{ 1 & \psi & \theta \cr \psi & 1 & \phi \cr \theta & -\phi & 1 }\right]\left[\matrix{ 0 \cr 0 \cr -T }\right] + \left[\matrix{ 0 \cr 0 \cr mg }\right] $$

$$$ m\ddot{r} = \left[\matrix{ 0 & -\bar{T} & 0 \cr \bar{T} & 0 & 0 \cr 0 & 0 & 1 }\right]\left[\matrix{ \phi \cr \theta \cr T }\right] + \left[\matrix{ 0 \cr 0 \cr mg }\right] $$

Momento

También podemos despreciar los momemtos de Rolling

$$$ R_i $$

y

$$$ \omega_B\times I\omega_B $$

. El Torque nos queda:

$$$ \mathbf{M} = I\dot{\omega}_B = \sum\limits_{i=1}^4[Q_i\cdot\vec{z_B} + T_i(\vec{r_i}\times\vec{z_B})] $$

$$$ \left[\matrix{ I_x\ddot{\phi} \cr I_y\ddot{\theta} \cr I_z\ddot{\psi} }\right] = \left[\matrix{ 0 & l & 0 & -l \cr l & 0 & -l & 0 \cr K_r & -K_r & K_r & -K_r }\right]\left[\matrix{ T_1 \cr T_2 \cr T_3 \cr T_4 }\right] $$

Referencias

[[ http://www.eecs.berkeley.edu/~tomlin/papers/conferences/whjt05_iros.pdf | Multi-Agent Quadrotor Testbed Control Design: Integral Sliding Mode vs. Reinforcement Learning ]]

Path Tracking Control for Quadrotor Helicopters

Medición de los parámetros de la Planta

Para el diseño del controlador del quadricóptero resulta necesario realizar la medición de los distintos parámetros del modelo real. Los parámetros fundamentales son el peso, el momento de inercia, los empujes de los motores.

Empuje de los motores

Al momento de realizar esta medición poseíamos 2 motores rctimer 2830, 1 ESC rctimer de 30A, 1 ESC mystery de 30A, 1 hélice con paso normal y una hélice con paso pusher.

Se realizó la medición del empuje de cada motor, con las distintas hélices y los dos controladores. Esta medición se hizo montando el motor sobre un peso de plomo, el cual se ponía sobre la balanza y luego se realizaron las curvas de transferencia entre PWM y fuerza de empuje. El montaje se muestra en la siguiente figura.

med_empuje_motor.png

En las siguientes tablas se muestran los resultados obtenidos, RCTimer y Mystery son los 2 controladores usados, Normal y Pusher son los 2 tipos de hélices. También se muestran los datos en forma gráfica.

Como se puede ver, podemos aproximar la función de transferencia entre el ciclo de trabajo y el empuje generado por una recta. Esta es una aproximación no tan real debido a que se desprecian todas las constantes de tiempo del motor y de la hélice. Obtener una función de transferencia real para el conjunto motor hélice representa un trabajo que sobrepasa nuestros conocimientos y objetivos, por lo tanto en adelante se supondrá que la transferencia entre ciclo de trabajo y empuje es una constante.

Motor 1

RCTimer Normal

Duty

2949

5898

8847

11796

14745

17694

20643

23592

26541

29491

32440

35389

38338

41287

Fuerza

0

55

100

145

185

230

270

320

360

400

440

490

540

600

$$$F = 0.0154 * D - 35.83$$

Mystery Pusher

Duty

2949

5898

8847

11796

14745

17694

20643

23592

26541

29491

32440

35389

38338

41287

Fuerza

20

20

95

165

245

325

410

480

575

670

770

855

855

845

$$$F = 0.0283 * D - 155$$

RCTimer Pusher

Duty

2949

5898

8847

11796

14745

17694

20643

23592

26541

29491

32440

35389

38338

41287

Fuerza

5

60

105

150

195

240

290

335

380

425

475

540

605

665

$$$F = 0.017 * D - 45.4$$

Mystery Normal

Duty

2949

5898

8847

11796

14745

17694

20643

23592

26541

29491

32440

35389

38338

41287

Fuerza

5

5

80

150

225

300

380

460

545

640

730

790

760

760

$$$F = 0.0267 * D - 156$$

Motor1

Motor 2

Mystery Normal

Duty

2949

5898

8847

11796

14745

17694

20643

23592

26541

29491

32440

35389

38338

Fuerza

15

15

80

160

235

320

395

475

570

665

765

840

840

$$$F = 0.028 * D - 167.7$$

RCTimer Pusher

Duty

2949

5898

8847

11796

14745

17694

20643

23592

26541

29491

32440

35389

38338

41287

Fuerza

10

65

110

155

200

245

295

345

395

435

490

560

605

660

$$$F = 0.0168 * D - 34.1$$

Mystery Pusher

Duty

2949

5898

8847

11796

14745

17694

20643

23592

26541

29491

32440

35389

38338

Fuerza

5

5

80

155

245

335

425

535

655

795

905

1015

1015

$$$F = 0.03523 * D - 231.7$$

RCTimer Normal

Duty

2949

5898

8847

11796

14745

17694

20643

23592

26541

29491

32440

35389

38338

41287

Fuerza

25

65

110

155

195

235

275

315

360

400

435

485

540

595

$$$F = 0.015 * D - 23.47$$

Motor2

Motor1, RCTimer, Pusher y Motor2, Mystery y Normal

Motor1vsMotor2

Cálculo Aproximado de las constantes

Cálculo de la constante de Inercia

$$$K_J = \frac{r}{J_T}$$

$$$J = \sum{m.r^2}$$

$$$J_T = 2(J_{motor} + J_{ESC} + J_{helice}) + J_{barra}$$

$$$J_{motor} = 52.{20,5}^2 [g.{cm}^2] = 21853 [g.{cm}^2]$$

$$$J_{ESC} = 32.{10}^2 [g.{cm}^2] = 3200 [g.{cm}^2]$$

$$$J_{helice} = 15.{20,5}^2 [g.{cm}^2] = 6303,75 [g.{cm}^2]$$

$$$J_{barra} = \frac{m.L^2}{12} = \frac{110.{51}^2}{12} [g.{cm}^2] = 23842,5 [g.{cm}^2]$$

$$$J_T = 86556 [g.{cm}^2] = 0.0086556 [Kg.{m}^2]$$

$$$\boxed{K_J = \frac{21}{86556}[\frac{1}{g.cm}]=  24.26174962[\frac{1}{Kg.m}]}$$

Cálculo de la constante del Motor

Según las mediciones realizadas podemos aproximar estas constantes.

$$$K_{MPusher} = \frac{\Delta_F}{\Delta_D} = \frac{40}{3000}\frac{g}{cuentas}$$

$$$K_{MNormal} = \frac{\Delta_F}{\Delta_D} = \frac{70}{3000}\frac{g}{cuentas}$$

Revisión del Cálculo de las constantes

Esta revisión se hace para adaptarla al nuevo modelo del QA3, que tiene 1 metro de largo en las barras y usa la imu 3DM-GX1.

Partes: las partes que vamos a usar para calcular el momento de inercia son el motor, las baterías, las barras, la IMU y la placa del ARM.

Inercias con respecto al eje X o Y

Motor

Para calcularlo suponemos que el motor es un cilindro

$$$ m_{motor} = 0.052kg $$

$$$ r_{motor} = 0.013850m $$

$$$ I_{cilindro} = \frac{mr^{2}}{2} = \frac{0.052 kg (0.013850 m)^2}{2} = 4.9874e^{-6} kg m^{2} $$

donde m es la masa total del motor y r es el radio del motor.

Usando el teorema de Steiner nos queda:

$$$ I_{motor} = I_{cilindro} + md^{2} = 4.9874e^{-6} kg.m^{2} + 0.052 kg(0.5 m)^{2} = 0.013005 kg.m^{2} $$

donde d es la distancia del motor al centro de gravedad, en este caso la mitad del largo de la barra.

$$$ d = 0.5m $$

Batería

Para calcularlo suponemos que la batería es un paralelepípedo rectangular.

$$$ I_{par} = \frac{1}{3}m(b^2+c^2) = \frac{0.167kg \cdot ((0.03m)^2 + (0.02m)^2)}{3} = 2.1710^e{-4} kg.m^{2} $$

En donde b y c son los lados del paralelepípedo perpendiculares al eje con respecto al que calculamos el momento de inercia.

En nuestro caso

$$$ b = 0.03m, c = 0.02m $$

y

$$$ m = 0.167kg $$

Otra vez por el teorema de Steiner nos queda que:

$$$ I_{bateria} = I_{par} + md^{2} = 2.1710^e{-4} kg.m^{2} + 0.167 kg(0.075 m)^{2} = 0.0011565 kg.m^{2} $$

en donde d representa la distancia del CG a la batería,

$$$ d = 0.075m $$

Barra

Supondremos que la barra es una línea perpendicular al eje sobre el que calculamos el momento de inercia. La masa de las barra es

$$$ m = 0.298kg $$

y

$$$ L = 1m$$

es el largo total de la barra.

$$$ I_{barra} = \frac{mL^2}{12} = \frac{0.298kg(1m)^2}{2} = 0.14900 kg.m^{2}$$

El peso de la barra sin fresar es de

$$$ m = 0.515kg $$

. El peso de las 2 barras fresadas es de

$$$ 581g $$

.

IMU, ARM

Supondremos que la placa central es un cubo de lado

$$$ l = 0.06m $$

y masa

$$$ m = 0.246kg $$

.

$$$ I_{cubo} = \frac{ml^2}{6} = \frac{0.246kg(0.06m)^2}{6} = 1.4760e^{-4} kg.m^{2} $$

Momento total de inercia para el eje x o y

$$$ I_x = 2I_{motor} + 2I_{bateria} + I_{barra} + I_{cubo}$$

$$$ I_x = 2 \cdot 0.013005 kg.m^{2} + 2 \cdot 0.0011565 kg.m^{2} + 0.14900 kg.m^{2} + 1.4760e^{-4} kg.m^{2} = 0.17747 kg.m^{2} $$

Diseño del controlador

El problema del diseño de un controlador de actitud para el QA3 no es un problema trivial debido a varias razones como son el acoplamiento entre las fuerzas y momentos generados por los motores y hélices, el rozamiento con el aire, la fuerza de empuje del viento, etc; por esto se ha optado por el uso de un controlador PID, el cual se puede ajustar para las mejores condiciones de funcionamiento y de la realización de varias simplificaciones.

La primera simplificación importante es suponer que el control de los distintos ángulos esta desacoplado. Con esta suposición obtenemos 3 plantas independientes a las cuales les agregamos un controlador PID distinto.

Otra simplificación es suponer que las fuerzas de rozamiento con el aire y la fuerza generada por corrientes de aire son despreciables. Estas corrientes de aire no solo se pueden deber al viento, sino también a rebotes del flujo de aire generado por la hélice con el entorno.

También despreciamos la dinámica del motor y suponemos que es lineal.

En esta sección se explica el controlador PID y los 3 controladores de los ángulos.

Controlador PID

Un controlador PID (Proporcional Integral Derivativo) es un mecanismo de control por realimentación que calcula la desviación o error entre un valor medido y el valor que se quiere obtener, para aplicar una acción correctora que ajuste el proceso.

El algoritmo de cálculo del control PID tiene tres parámetros distintos: el proporcional, el integral, y el derivativo. El valor Proporcional determina la reacción del error actual. El Integral genera una corrección proporcional a la integral del error, esto nos asegura que aplicando un esfuerzo de control suficiente, el error de seguimiento se reduce a cero. El Derivativo determina la reacción del tiempo en el que el error se produce. La suma de estas tres acciones es usada para ajustar al proceso vía un elemento de control, en este caso el PWM aplicado a los motores. Ajustando estas tres variables en el algoritmo de control del PID, el controlador puede proveer un control diseñado para lo que requiera el proceso a realizar.

La respuesta del controlador puede ser descrita en términos de respuesta del control ante un error, el grado el cual el controlador llega al "set point", y el grado de oscilación del sistema. Nótese que el uso del PID para control no garantiza control óptimo del sistema o la estabilidad del mismo. Algunas aplicaciones pueden solo requerir de uno o dos modos de los que provee este sistema de control.

PID.png

Ecuacion Diferencial

La ecuación diferencial de un controlador PID tiene la siguiente forma:

$$$ c(t) = k[e(t) + \frac{1}{T_i}\int_0^t \!  e(t) dt \ + T_d \frac{de(t)}{dt} ] $$

Transformada de Laplace

Aplicando la transformada de Laplace a la ecuanción diferencial anterior podemos encontrar la relación entre entrada y salida en el plano de Laplace:

$$$ C(s) = k( 1 + \frac{1}{T_i s} + T_d s ) E(s) $$

Transformada Z

Para realizar el análisis en tiempo discreto necesitamos pasar del plano de Laplace al plano Z. Esto se hace aplicando la transformada Z a la función obtenida anteriormente. Una vez obtenida la función en el plano Z, podemos realizar análisis de estabilidad, de respuesta y realizar el controlador para obtener la respuesta deseada.

$$$ C(z) = k[1-\frac{T}{2T_i} + \frac{T}{T_i}\frac{1}{1-z^{-1}} + \frac{T_d}{T}(1-z^{-1}) ]E(z) $$

a

Podemos definir 3 constantes,

$$$K_p$$

,

$$$K_i$$

,

$$$K_d$$

, y expresar la ecuación anterior como:

$$$ C(z) = [K_p + \frac{K_i}{1-z^{-1}} + K_d(1-z^{-1}) ]E(z) $$

Está última forma tiene una similitud con el controlador PID en tiempo continuo, pero aclaramos que las constantes no son las mismas.

Tiempo Discreto

Para poder codificar el algoritmo en un microcontrolador, debemos pasar la función de transferencia en el plano Z, a una ecuación en diferencias en el tiempo. En la ecuación siguiente se muestra el algoritmo del controlador PID en el tiempo.

$$$ c(k) = c(k-1) + K_p[e(k)-e(k-1)] + K_i e(k) + K_d[e(k)-2e(k-1)+e(k-2)] $$

A continuación se realiza el análisis de los controladores de los ángulos de roll y pitch.

Controlador del ángulo de roll

El ángulo de roll depende de la diferencia del empuje entre los motores laterales. A continuación se realiza el cálculo de la función de transferencia a lazo cerrado de la planta más el controlador PID. Suponemos primero un modelo continuo y luego un modelo discreto con un retenedor de orden cero, para tener en cuenta el retardo de fase introducido por el muestreo.

Modelo Continuo

planta_lc_continuo.png

$$$\sum{\tau_x} = \tau_2 - \tau_1 = J\frac{d^2\theta}{dt^2}$$

$$$s^2\theta_{(s)}= \frac{\tau_{(s)}}{J}$$

$$$G_{bal(s)} = \frac{1}{Js^2}$$

$$$G_{torque(s)} = k_\tau$$

$$$G_{PID(s)} = k_p\cdot(1 + \frac{1}{T_is} + T_ds})$$

$$$G_{LA(s)} = G_{bal(s)}G_{torque(s)}G_{PID(s)} = \frac{k_pk_{\tau}}{T_iJ}\frac{T_iT_ds^2 + T_is + 1}{s^3}$$

$$$G_{LC(s)} = \frac{G_{LA(s)}}{1+G_{LA(s)}} = k_p k_{\tau} \frac{T_i T_d s^2 + T_i s + 1}{T_i J s^3 + k_p k_{\tau} T_i T_d s^2 + k_p k_{\tau} T_i s + k_p k_{\tau}}$$

Modelo Discreto

planta_lc_discreto.png

$$$G_{bal(s)} = \frac{1}{Js^2}$$

$$$G_{ROC(s)}=\frac{1-e^{-TS}}{S}$$

$$$G_{torque(s)} = k_\tau$$

$$$G_{PID(s)} = k_p\cdot(1 + \frac{1}{T_is} + T_ds})$$

$$$G_{planta(Z)} = Z[G_{ROC(s)}G_{bal(s)}G_{torque(s)}] = Z[\frac{1 - e^{-TS}}{S}\frac{k_\tau}{JS^2}] = (1-z^-1)Z[\frac{2k_\tau}{2JS^3}] = \frac{T^2k_\tau}{2J}\frac{z+1}{z^2-2z+1}$$

$$$G_{PID(Z)} = K_P + \frac{K_I}{1-z^-1} + K_D(1-z^-1) = \frac{(K_P + K_I + K_D)z^2 + ( -2K_D - K_P )z + K_D }{ z^2 - z }$$

$$$G_{LA(Z)} = G_{PID(Z)}G_{planta(Z)} = \frac{T^2k_\tau}{2J}\frac{(K_P + K_I + K_D)z^3 + (K_I - K_D)z^2 + (-K_P - K_D)z + K_D}{z^4-3z^3+3z^2-z}$$

$$$G_{LC(Z)} =  \frac{G_{LA(Z)}}{1+G_{LA(Z)}} = \frac{k_{\tau}T^2((K_P + K_I + K_D)z^3 + (K_I - K_D)z^2 + (-K_P - K_D)z + K_D)}{ 2Jz^4 + ((K_P + K_I + K_D)k_{\tau}T^2 -6J )z^3 + ((K_I - K_D)k_{\tau}T^2 +6J )z^2 + ( ( -K_P - K_D ) k_{\tau} T^2 -2J )z + K_D k_{\tau} T^2 }$$

Controlador del ángulo de pitch

El ángulo de pitch depende de la diferencia del empuje entre los motores delantero y trasero. El controlador de este ángulo es igual al del controlador del roll, por esto no nos extendemos en este controlador.

Simulaciones

Para las simulaciones se van a utilizar las ecuaciones obtenidas anteriormente de la planta más el controlador. Estas fueron realizadas con el software octave.

Los valores de los parámetros usados fueron extraídos del modelo real y son los siguientes.

$$$ k_t = 90.63e-6; $$

$$$ J = 8.6556e-3; $$

Simulación a lazo abierto

Se muestran los resultados de la simulación de la planta más el controlador diseñado en lazo abierto. Con estos datos podemos saber como será la respuesta del sistema según el valor de k elegido. Como se puede observar para valores de k muy grandes el sistema se vuelve inestable.

pid_la_discreto

Simulación a lazo cerrado

En esta simulación se muestran los resultados de la simulación de la salida en función del tiempo para una entrada escalón.

pid_la_discreto

Filtro Complementario para la Estimación del ángulo de roll y de pitch

En este capítulo se presenta un sistema para estimación de actitud del QA3. Para determinar la inclinación se utilizan acelerómetros tipo MEMS, que poseen numerosas ventajas para esta aplicación, como ser buen ancho de banda, suficiente resolución, peso reducido, robustez y bajo costo. Mediante estos sensores es posible determinar la dirección y el sentido del vector de aceleración de la gravedad respecto a un marco de referencia fijo en la aeronave. La desventaja fundamental de estos sensores radica en que las mediciones son fuertemente afectadas por las vibraciones en la estructura donde se encuentran montados.

Otra alternativa para medir la inclinación es computar la rotación integrando la señal de sensores giroscópicos. Por las mismas razones que el caso anterior, los dispositivos de tecnología MEMS resultan los más apropiados para esta aplicación, aunque si bien son más inmunes a las vibraciones presentan derivas sostenidas en el tiempo debido a la integración de los errores de offset.

balancin_descripcion.png

Ensayo individual de los sensores

Para los ensayos que se describen a continuación se construyó un montaje experimental que consta de un balancín con un propulsor en cada extremo, un potenciómetro en el pivot y el sensor con el sistema de control montado en el centro. Este montaje con un grado de libertad permite simular el comportamiento dinámico aproximado del sistema respecto al rolido o el cabeceo. Aparte del sistema mecánico, el montaje cuenta con un controlador PID digital implementado en el microcontrolador, el cual cierra el lazo del sistema a través del control de la velocidad de los motores. Para lograr una notación consistente supondremos que el ángulo a medir es el de rolido (

$$$ \theta$$

).

Acelerómetro

En el desarrollo experimental se utilizó el acelerómetro ADXL345 de tres ejes dispuesto de manera que los ejes de medición del mismo coincidan con los ejes del sistema de referencia del UAV. De esta manera el ángulo se obtiene como:

$$$ \varphi=\arccos{\frac{a_x}{g}} $$

,

donde la aceleración

$$$a_x$$

se mide con una resolución de 10 bits, y un ancho de banda ajustable por software desde 0.05 Hz. hasta 1600 Hz.

Las siguientes muestran comparativamente las señales adquiridas del sistema a lazo abierto en estado de equilibrio con una inclinación de 10º con los propulsores apagados y con los propulsores encendidos (50\%) respectivamente.

Angulo medido con el giroscopio, con el montaje en equilibrio y los propulsores apagados.

acel_apagados_25hz_v1.png

acel_apagados_25hz_fft_v1.png

Ángulo medido con el acelerómetro, con el montaje en equilibrio formando un ángulo de 10º y los propulsores encendidos al 50% de su potencia:

acel_encendidos_25hz_v1.png

acel_encendidos_25hz_fft_v1.png

Respuesta en frecuencia del sistema completo a lazo cerrado:

closeLoop_frec_rta_v1.png

Respuesta temporal del sistema de lazo cerrado de tipo regulador con una perturbación sumada a la medición ideal de 0.1º de amplitud para frecuencias de 5Hz y 50Hz:

Frecuencia de la perturación de 5Hz:

closeLoop_tpo_rta01_v1.png

Frecuencia de la perturación de 50Hz:

closeLoop_tpo_rta02_v1.png

Respuestas temporales del sistema a lazo cerrado de \theta para señales no ruidosas, pero previamente pasadas por un filtro pasa bajos:

Sin filtrar:

closeLoop_tpo_rta03_v1.png

  • $$$ f_c=5Hz$$:

closeLoop_tpo_rta04_v1.png

  • $$$ f_c=2Hz$$

closeLoop_tpo_rta05_v1.png

Si bien el sistema en lazo cerrado formado por el balancín más el controlador PID presenta un buen rechazo a las componentes ruidosas de alta frecuencia de las vibraciones, esto se aprecia en la curva de bode simulada para un sistema ideal y en las curvas de respuesta en el tiempo del mismo sistema que se ven en las figuras anteriores, las variaciones bruscas de la señal de referencia producen acciones de control, debidas a la rama del derivador del compensador, que llevan a los motores a zonas no lineales (saturación o corte), provocando la inestabilidad del sistema real.

El filtrado de la señal ruidosa mediante un filtro pasa-bajos introduce otras desventajas: si bien se pueden mantener acotadas las derivadas en la señal, la atenuación y el corrimiento de fase degradan la respuesta dinámica e incluso provocan inestabilidad cuando las frecuencias de corte son demasiado bajas. En las imágenes anteriores también se muestra la respuesta temporal del sistema para una medición no ruidosa y no filtrada, y la respuesta cuando la misma señal se pasa por un filtro pasa-bajos de 5 Hz de frecuencia de corte, finalmente si se disminuye la frecuencia de corte del mismo a 2 Hz el sistema se desestabiliza, tal como lo muestra la última gráfica.

Como consecuencia de las características ruidosas de las mediciones adquiridas con el acelerómetro no sería posible utilizarlo como inclinómetro en el sistema de estabilización. A raíz de esto se evalúa la posibilidad de utilizar un giróscopo.

Giróscopo

Para realizar los siguientes experimentos se utilizó un giróscopo de 3 ejes ITG-3200 de la firma InvenSense. Éste se dispuso de manera que sus ejes estén alineados con los del sistema de referencia de a bordo. Este dispositivo posee un rango dinámico de

$$$+/-2000 [{}^o/s]$$

y una sensibilidad de

$$$14 {}^o/s$$

. En las siguientes se observan comparativamente las señales en el tiempo y el espectro para el caso que los propulsores están apagados y encendidos con la misma configuración que la descripta para el caso de la medición con el acelerómetro. Haciendo una comparación de las figuras se puede ver que la influencia de las vibraciones en las mediciones del giróscopo son sensiblemente menores que en el caso del acelerómetro. Sin embargo se han observado intérvalos de tiempo relativamente cortos. También se muestra que para tiempos mayores la medida de este sensor comienza a derivar.

Ángulo medido con el giroscopio, con el montaje en equilibrio y los propulsores apagados:

Ángulo de rolido en función del tiempo:

gyromotorapagado_v1.png

Espectro de frecuencias:

gyromotorapagado_fft_v1.png

Ángulo medido con el giroscopio, con el montaje en equilibrio y los propulsores encendidos al 50\% de su potencia:

Ángulo de rolido en función del tiempo:

gyromotorencendido_v1.png

Espectro de frecuencias:

gyromotorencendido_fft_v1.png

Deriva del ángulo medido por el giróscopo:

Gyro_Pote_deriva_v1.png

Filtro Complementario

En forma intuitiva surge la idea de usar la medición obtenida por el giróscopo para tiempos cortos y realizar la corrección de la deriva con la medición realizada por el acelerómetro en tiempos largos, debido a que esta última medición tiende a ser la aceleración de la gravedad para períodos largos.

Los filtros complementarios son muy usados en sistemas de navegación inercial. Aplicaciones típicas son la combinación de las medidas de aceleración vertical y velocidad barométrica vertical para obtener una estimación de la velocidad vertical o mediciones de unidades inerciales y sistemas de visión. \cite{buskey2004helicopter}

Un filtro complementario es en sí un filtro de Kalman de estado estacionario para una cierta clase de problemas de filtrado \cite{higgins2007comparison}, este no considera ninguna descripción estadística del ruido que corrompe a las señales y es obtenido solamente por un análisis en el dominio de la frecuencia.

El filtro complementario resulta sencillo de tratar matemáticamente y en razón de su baja complejidad de implementación consume pocos recursos computacionales.

La idea básica del filtro complementario es combinar la salida del acelerómetro y del giróscopo para obtener una buena estimación del ángulo de orientación de la plataforma, compensando la deriva del giróscopo con la dinámica lenta del inclinómetro \cite{baerveldt2002low}.

El filtro complementario propuesto es el que se muestra en la figura siguiente. Donde

$$$\theta_{a}$$

es el ángulo medido por el acelerómetro cuya señal esta corrompida por ruidos de alta frecuencia proveniente de las vibraciones,

$$$\theta_{g}$$

es el ángulo medido por el giróscopo, afectado por la deriva y

$$$\hat{\theta}$$

es el ángulo estimado.

Diagrama en bloques del filtro complementario utilizado:

comp_usado_1_v1.png

Las funciones de transferencia del filtro deben ser elegidas de acuerdo a la ecuación:

  • $$$ H_{a(s)}G_{(s)} + H_{g(s)}(1-G_{(s)}) = 1 $$

en donde

$$$H_{a(s)}$$

y

$$$H_{g(s)}$$

representan las funciones de transferencia del acelerómetro y el giróscopo respectivamente.

Suponemos que las funciones de transferencia de las sensores son iguales a 1. Esto es

$$$H_{a(s)} = H_{g(s)} = 1$$

.

La función de transferencia elegida para

$$$G_{(s)}$$

es un filtro pasa bajos de primer orden, lo cual hace que la estimación en baja frecuencia dependa de la medición del acelerómetro.

  • $$$ G_{(s)} = \frac{\alpha}{s+\alpha}$$

Y la función de transferencia para

$$$1-G(s)$$

:

  • $$$ 1-G(s) = \frac{s}{s + \alpha}$$ este filtro nos permite hacer que las componentes de alta frecuencia de la medición estimada estén dominadas por el aporte de las mediciones provenientes del giróscopo.

Como podemos ver en el diagrama en bloques del filtro, si ambas mediciones son ideales, la función de transferencia total del filtro resulta:

  • $$$ \frac{\hat{\theta}_{(s)}}{\theta_{(s)}} = G_{(s)} + ( 1- G_{(s)}) = 1$$

Y esto hace que:

  • $$$ \hat{\theta}_{(s)} = \theta_{(s)}$$

Discretización de los filtros

Para la implementación de los filtros digitales en el microcontrolador se parte discretizando las funciones de transferencia de los mismos usando la transformada z y suponiendo un retenedor de orden cero a la entrada. Con esto se obtiene una expresión compacta para el filtro completo.

Si definimos:

$$$G_1(s) = G(s)$$

y

$$$G_2(s) = 1-G(s)$$

, entonces:

$$$ G_1(z) = \frac{(1-e^{\frac{-T}{\tau}})z^{-1}}{1 - e^{\frac{-T}{\tau}}z^{-1}} $$

$$$ G_2(z) = \frac{1- z^{-1}}{1 - e^{\frac{-T}{\tau}}z^{-1}} $$

En donde

$$$a = \frac{1}{\tau}$$

y

$$$\tau$$

representa la constante de ambos filtros.

Algoritmo del microcontrolador

El algoritmo del microcontrolador surge del paso a ecuaciones en diferencias de las funciones de transferencia de cada filtro.

$$$ \hat{\theta}_{[k]} = \hat{\theta}_{a[k]} + \hat{\theta}_{g[k]} $$

$$$ \hat{\theta}_{a[k]} = e^{\frac{-T}{\tau}}\hat{\theta}_{a[k-1]} + (1-e^{\frac{-T}{\tau}})\theta_{a[k-1]} $$

$$$ \hat{\theta}_{g[k]} = e^{\frac{-T}{\tau}}\hat{\theta}_{g[k-1]} + \theta_{g[k]} - \theta_{g[k-1]} $$

$$$ \omega_{[k]}T = \theta_{g[k]} - \theta_{g[k-1]} $$

$$$ \hat{\theta}_{g[k]} = e^{\frac{-T}{\tau}}\hat{\theta}_{g[k-1]} + \omega_{[k]}T $$

Resultados de la implementación

Se ensayó el sistema utilizando el filtrado complementario verificándose una buena estimación del ángulo que resultó en la correcta estabilización y una buena respuesta dinámica.

En la figura siguiente se muestran las mediciones individuales del acelerómetro y el giróscopo; y la estimación del filtro complementario; mientras se sometió al sistema a perturbaciones forzándolo a salir de la posición de equilibrio y permitiéndole que se restituya en forma autónoma.

Como se observa en la gráfica se calibró débilmente el offset del giróscopo para permitir una deriva exagerada a fin de mostrar el rechazo del filtro.

Mediciones y estimación durante ensayo del sistema:

ensayo1_v1.png

En la figura siguiente se observa la medida del ángulo estimada por el filtro contrastada contra la medición del potenciómetro durante la evolución del sistema desde un ángulo inicial de -10 grados hasta el equilibrio en cero grado. En este ensayo se utilizó la medida del filtro para la realimentación del lazo de control y se ajustaron las constantes del controlador PID. Este ajuste se realizó según los análisis de estabilidad hechos del sistema a lazo cerrado para obtener la respuesta subamortiguada que se observa, aunque hubo que realizar algunos retoques empíricos los cuales se pueden deber a que se idealizaron algunas partes del sistema y también a falta de una buena calibración de los sensores y propulsores.

Respuesta dinámica del sistema ante una perturbación:

Filtro_vs_Pote_v1.png

Conclusiones sobre las técnicas probadas para la estimación del ángulo

Se ensayaron tres métodos de medición de inclinación de una plataforma experimental que se comporta como el QA3 con cinco grados de libertad restringido, permitiendose rotaciones que corresponderían al cabeceo o el rolido de la aeronave. Los dos primeros métodos ensayados utilizaron acelerómetro por un lado y giróscopo por otro de manera individual. En el primer caso la influencia de las vibraciones impide el correcto funcionamiento del lazo de control, en tanto que si se filtra la señal de la medición se degrada la respuesta dinámica o incluso se llega a la inestabilidad del sistema para frecuencias de corte demasiado bajas. Por el lado del giróscopo se obtuvo mejores resultados en el comportamiento del lazo de control, no obstante esto la deriva producida por el offset del sensor hace que el error de inclinación se incremente de manera constante en el tiempo. Ninguno de los dos métodos resulta viable para el control de actitud del QA3.

Finalmente se aplicó un filtro complementario para combinar la medición de ambos sensores tomando de cada uno la parte del espectro de la señal de medición menos corrompida y atenuando la otra a fin de que la suma permita una estimación aproximada de la variable de interés.

El comportamiento dinámico del sistema realimentado con la medición estimada por el filtro resulta satisfactorio para ser aplicado al prototipo real.

None: LabElectronica/ProyectoQuadricoptero/QA3Fase10InformeFinal (última edición 2011-02-22 22:41:26 efectuada por Jaarac)