Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Aterrizaje Autom Atico de Una Cessna en El Aeropuerto de Sevilla
Aterrizaje Autom Atico de Una Cessna en El Aeropuerto de Sevilla
Escuela T
ecnica Superior de Ingeniera
Aterrizaje autom
atico de una Cessna
en el Aeropuerto de Sevilla
M
aster en Ingeniera Aeronautica
Indice
1. Sistema de Guiado
1.1. Trayectoria de aproximaci
on .
1.2. Sistema de guiado . . . . . .
1.2.1. Selector de waypoints
1.2.2. Referencia de rumbo .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3
3
4
4
5
2. Sistema de control
2.1. Controlador de alto nivel . . .
2.1.1. Control de altitud . . .
2.1.2. Control de rumbo . . .
2.1.3. Control de TAS . . . . .
2.2. Controlador de bajo nivel . . .
2.2.1. Controlador de pitch . .
2.2.2. Controlador de roll . . .
2.3. Respuesta de los controladores
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
6
6
7
7
8
8
8
8
3. Programa en C
3.1. Funci
on main . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2. Hilos de guiado y control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3. Conexi
on con Simulink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
14
14
15
4. Implementaci
on en Simulink
15
5. Aterrizaje autom
atico
16
Referencias
20
El objetivo de este trabajo es llevar a cabo el aterrizaje automatico de una avioneta Cessna
en el aeropuerto de Sevilla. Para llevar a cabo esta tarea se ha implementado un sistema de
guiado y un sitema de control que seran los encargados de dirigir y controlar la aeronave hasta
la pista. El programa se ejecutar
a en una maquina virtual y se conectara con FlightGear para
recibir y enviar datos del modelo y, por otra parte, tambien se comunicara con Simulink para
poder representar los estados y las referencias durante el aterrizaje.
El documento se divide en tres secciones principales. En primer lugar, en la seccion 1, se
comentar
a el sitema de guiado implementado, posteriormente, en la seccion 2 se trataran los
diferentes controladores que se han implementado. En tercer lugar, en la seccion 3 se explicara brevemente el contenido del programa implementado en C. Finalmente, en la seccion 5 se
muestran los resultados de la simulacion del aterrizaje.
1.
Sistema de Guiado
1.1.
Trayectoria de aproximaci
on
La trayectoria de aproximaci
on depende del sistema disponible para realizar la aproximaci
on.
En la web de En Aire[3] se especifica cada una de estas trayectorias en funcion de la ayuda
a la navegaci
on utilizada. Por ejemplo, si se utilizase ILS (Instrumental Landing System), la
trayectoria vertical a seguir sera la mostrada en la Fig. 1.
Sin embargo, en este trabajo no se seguira esta senda de aproximacion con el objetivo de
poder utilizar todos los controladores implementados y hacer el aterrizaje mas interesante.
Para definir la trayectoria de aterrizaje se han definido una serie de puntos de paso. Estos se
han representado en Google Earth tal y como se muestra en la Fig. 2. Como se vera en la secci
on
5, este software permitir
a representar la trayectoria resultante con lo cual se vera claramente el
correcto funcionamiento del controlador.
Adem
as, en cada waypoint se ha establecido una altitud y una velocidad aerodinamica de
referencia como se indica en la siguiente tabla.
En la Fig. 3 se muestra el perfil de descenso que se ha establecido. Inicialmente el avi
on se
a
encuentra en el punto posici
on inicial. una altitud de 1000ft con una velocidad de 100knot,
1.2.
Sistema de guiado
Selector de waypoints
p
x2 + y 2
(1)
siendo
x = Rmer (AC wp )
4
(2)
Punto
Posici
on inicial
FAF
Punto A
Punto B
Pista
Latitud[ ]
37.426564
37.4175
37.417663
37.417839
37.417991
Longitud[ ]
-6.014983
-5.9925
-5.954661
-5.914728
-5.887864
Altitud[ft]
1000
1000
700
250
80
Velocidad[knot]
100
85
80
70
60
Altitud [ft]
800
600
400
Tramo 3: 250 ft, 70knot
200
Tramo 4: 60knot
0
0
50
100
150
Time [s]
200
250
300
(3)
donde Rmer es el radio de curvatura del meridiano, Rnorm el radio de curvatura normal, AC y
AC son la latitud y longitud de la aeronave(aircraft) y wp y wp son la latitud y longitud del
waypoint de destino. Rmer y Rnorm son los radios de curvatura a lo largo de lineas de latitud y
longitud constantes respectivamente. Las ecuaciones para su calculo se pueden consultar en el
captulo 4, secci
on 4.1 de [1].
Una vez seleccionado el waypoint se tendran las coordenadas del punto objetivo, latitud y
longitud y la altura y la velocidad aerodinamica de referencia.
Por u
ltimo cabe destacar que esta referencia de altitud no es la que recibe directamente el
controlador. Esto se debe a que la tasa de variacion de la referencia esta limitada con el objetivo
de conseguir una respuesta del controlador mas suave y precisa.
1.2.2.
Referencia de rumbo
(6)
(7)
y = Rnorm ( ARP )
(8)
Por u
ltimo, el rumbo comando se calcula empleando la siguiente expresion:
2
= 12 nf atan(Kpath elat )
(9)
2.
Sistema de control
Los control de las aeronaves se divide a su vez en dos grupos: el controlador de alto nivel y el
controlador de bajo de nivel. El primero recibe las consignas del navegador es decir, la altitud,
el rumbo y la velocidad aerodin
amica. El segundo es el encargado de controlar las consignas que
el controlador de alto nivel define: pitch y roll.
En todos los controladores se ha implementado un anti-windup para evitar que el termino
integral aumente indefinidamente.
2.1.
Control de altitud
T
Ik )
Ti
(10)
siendo Ik el valor del termino integral que se calcula como se indica a continuacion:
Ik = Ik1 + ek
(11)
2.1.2.
(12)
Control de rumbo
(14)
Control de TAS
Para el control de la velocidad aerodinamica verdadera (True Airspeed, TAS) se han dise
nado
dos controladores: uno para controlar la velocidad a traves de la posicion de palanca (throttle)
y otra a partir del pitch.
Control de TAS con throttle
Se ha implementado un PI para controlar la velocidad aerodinamica con la posicion de
palanca. Las entrada de este controlador es la consigna de velocidad del sistema de navegaci
on
y la salida es la posici
on de palanca establecida. Se ha empleado el metodo de implementaci
on
directa tal y como se indica a continuacion:
T,ref = kp (ek +
T
Ik )
Ti
(15)
(16)
Ademas, para un mejor ajuste y relajar el trabajo del integrador se ha calculado una funci
on de
trimado tal que para cada velocidad de referencia se obtiene una posicion de palanca determinada.
2
T,trim = 5 105 T ASref
0,0061 T ASref + 0,89
(17)
Control de TAS con pitch
Con el objetivo de controlar la velocidad de descenso en la u
ltima fase del aterrizaje se ha
implementado este controlador que recibe la consigna de velocidad aerodinamica y establece
un pitch que permite alcanzar esa referencia. Se ha implementado un PI con el metodo de
implementaci
on directa:
T
ref = trim + kp (ek + Ik )
(18)
Ti
7
siendo Ik el valor del termino integral que se calcula como se indica a continuacion: Ik = Ik1 +ek
y trim es el valor del pitch de trimado para cada velocidad de referencia con un valor de throttle
de 0.1.
trim = 0,001 powf (refT AS, 2) 0,05 refT AS + 7,5;
(19)
2.2.
En esta secci
on se tratar
a el control de bajo nivel que es el encargado de controlar las
consignas de roll y pitch.
2.2.1.
Controlador de pitch
El controlador de pitch recibe las consignas del control de altitud o del control de velocidad
aerodinamica. Cuando el modo de vuelo es aterrizaje se utiliza este u
ltimo mientras que cuando
se vuela en crucero se reciben las consignas del control de altitud. Para controlar el pitch ha
implementado un PI con el metodo de implementacion directa:
e = kp (ek +
T
Ik )
Ti
(20)
siendo Ik el valor del termino integral que se calcula como se indica a continuacion: Ik = Ik1 +ek
2.2.2.
Controlador de roll
T
Ik )
Ti
(21)
siendo Ik el valor del termino integral que se calcula como se indica a continuacion: Ik = Ik1 +ek
2.3.
En esta secci
on se mostrar
a la respuesta de los controladores ante diferentes entradas.
100
Airspeed [knot]
95
90
85
Estado
Referencia
80
75
0
50
100
150
200
250
150
200
250
Tiempo [s]
Throttle [-]
0.9
0.8
0.7
0.6
0.5
0.4
0
50
100
Tiempo [s]
1250
Referencia
Estado
Altitud [ft]
1200
1150
1100
1050
1000
950
0
10
20
30
40
50
60
70
Tiempo [s]
10
Referencia
Estado
Pitch []
-5
-10
0
10
20
30
40
50
60
70
40
50
60
70
Tiempo [s]
0.1
Elevator [-]
0.05
-0.05
-0.1
0
10
20
30
Tiempo [s]
10
6
Referencia
Estado
Rumbo []
4
2
0
-2
-4
-6
150
160
170
180
190
200
210
220
230
240
250
Tiempo [s]
15
Referencia
Estado
Roll []
10
5
0
-5
-10
150
160
170
180
190
200
210
220
230
240
250
210
220
230
240
250
Tiempo [s]
0.2
Aileron [-]
0.15
0.1
0.05
0
-0.05
-0.1
150
160
170
180
190
200
Tiempo [s]
11
50
Rumbo []
Referencia
Estado
-50
0
20
40
60
80
100
120
Tiempo [s]
30
Referencia
Estado
Roll []
20
10
0
-10
-20
0
20
40
60
80
100
120
80
100
120
Tiempo [s]
0.2
0.15
Aileron [-]
0.1
0.05
0
-0.05
-0.1
-0.15
0
20
40
60
Tiempo [s]
12
82
Referencia
Estado
Airspeed [knot]
80
78
76
74
72
70
68
0
10
20
30
40
50
60
70
80
90
Tiempo [s]
10
Pitch []
Referencia
Estado
-5
0
10
20
30
40
50
60
70
80
90
60
70
80
90
Tiempo [s]
0.05
Elevator [-]
-0.05
-0.1
-0.15
0
10
20
30
40
50
Tiempo [s]
13
3.
Programa en C
3.1.
Funci
on main
Esta funci
on realiza las siguientes tareas:
Define y crea los hilos de control y comunicaciones.
Crea un conjunto de se
nales para detener el programa correctamente cuando se requiera.
Espera hasta que recibe la se
nal de parada.
Finaliza correctamente la conexion cerrando los sockets.
3.2.
14
3.3.
Conexi
on con Simulink
La comunicaci
on con Simulink se lleva a cabo mediante UDP. En el programa en C se
creado la librera isimulink.h que incluye las funciones necesarias para iniciar la conexi
on y
enviar datos.
Los datos que se envan a Simulink son las referencias de cada controlador: altitud, rumbo,
roll, pitch y velocidad aerodin
amica.
4.
Implementaci
on en Simulink
Simulink se ha empleado tanto para ajustar los controladores como para recibir los datos en
tiempo real de FligthGear y del programa en C durante el aterrizaje.
La implementaci
on de los controladores en Simulink se ha llevado a cabo para poder probar
en tiempo real los controladores y as ajustar las ganancia sin tener que compilar continuamente.
Set
Pace
Simulation Pace
1 sec/sec
AC_data
Receive data
AC_data control_output
control_output
Send Data
Control
15
AC_data
AC_data
To Workspace1
AC_data
Set
Pace
ref_data
Simulation Pace
Scopes
ref_data
1 sec/sec
received_ref
To Workspace
5.
Aterrizaje autom
atico
Para terminar, en la Fig. 11 se muestra la trayectoria recorrida en Google Earth. Para representar esta trayectoria se ha empleado la herramienta KML toolbox [4]. Posteriormente se han
incluido gr
aficas donde se puede observar la respuesta de los controladores durante el aterrizaje.
16
90
Referencia
Estado
TAS [m/s]
80
70
60
50
40
0
50
100
150
200
250
300
200
250
300
Time [s]
1
Throttle [-]
0.8
0.6
0.4
0.2
0
0
50
100
150
Time [s]
17
130
Referencia
Estado
Rumbo []
120
110
100
90
80
0
50
100
150
200
250
300
Time [s]
20
Referencia
Estado
Roll []
10
0
-10
-20
-30
0
50
100
150
200
250
300
200
250
300
Time [s]
0.2
Aileron [-]
0.1
-0.1
-0.2
0
50
100
150
Time [s]
18
1200
Referencia
Estado
Altitud [m]
1000
800
600
400
200
0
0
50
100
150
200
250
300
Time [s]
15
Referencia
Estado
Pitch []
10
5
0
-5
-10
0
50
100
150
200
250
300
200
250
300
Time [s]
0.1
Elevator [-]
0
-0.1
-0.2
-0.3
-0.4
0
50
100
150
Time [s]
19
Referencias
[1] Applied mathematics in integrated navigation systems, second edition. Robert M.Rogers.
[2] Small Unmanned Aircraft. Theory and Practice. Randal W. Beard, Timothy W. McLain.
[3] Cartas de aproximaci
on de los aerodromos espa
noles: http://www.enaire.es/csee/
Satellite/navegacion-aerea/es/Page/1078418725163/?other=1083158950596&
other2=1083857760137#ancla350
[4] KML toolbox desarrollada por Rafael Oliveira
matlabcentral/fileexchange/34694-kml-toolbox
20
https://www.mathworks.com/