Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Integracionde Kalman en Sensores Inercialesles
Integracionde Kalman en Sensores Inercialesles
DE CARRERA
Integracin Kalman de sensores inerciales INS con
GPS en un UAV
ndice
1
Introduccin .......................................................................................................... 1
1.1
Objetivo del proyecto .................................................................................... 2
1.2
Resumen........................................................................................................ 2
1.3
El avin ......................................................................................................... 4
Navegacin inercial ............................................................................................... 7
2.1
Conceptos bsicos de la Navegacin Inercial ................................................. 7
2.2
Sistemas de coordenadas ............................................................................... 8
2.2.1
Sistema de coordenadas Inercial I-frame ................................................ 9
2.2.2
Sistema de coordenadas ECI i-frame ...................................................... 9
2.2.3
Sistema de coordenadas ECEF e-frame .................................................. 9
2.2.4
Sistema de coordenadas de Navegacin n-frame .................................. 10
2.2.5
Sistema de coordenadas Body b-frame ................................................. 11
2.3
Relacin entre los sistemas de coordenadas ................................................. 12
2.3.1
DCM ................................................................................................... 12
2.3.2
ngulos de Euler ................................................................................. 13
2.3.3
Cambio de Body a Navegacin con los ngulos de Euler ...................... 14
2.3.3.1 Giro en Yaw ..................................................................................... 15
2.3.3.2 Giro en Pitch .................................................................................... 15
2.3.3.3 Giro en Roll ..................................................................................... 15
2.3.4
Matriz de cambio de coordenadas de e-frame a n-frame ....................... 16
2.4
Rotacin sideral de la Tierra ........................................................................ 17
Sensores .............................................................................................................. 19
3.1
Acelermetro ............................................................................................... 20
3.1.1
Modelo del acelermetro...................................................................... 21
3.2
Magnetmetro ............................................................................................. 23
3.2.1
Campo Magntico Terrestre ................................................................. 24
3.2.2
Caracterizacin del error del magnetmetro ......................................... 26
3.2.3
Modelo del magnetmetro ................................................................... 28
3.3
Giroscopio ................................................................................................... 30
3.3.1
Modelo de giroscopio .......................................................................... 31
3.4
GPS ............................................................................................................. 32
3.4.1
Caracterizacin del error ...................................................................... 33
3.5
Integracin de los sensores en la plataforma del avin ................................. 34
Actitud y Cinemtica ........................................................................................... 39
4.1
Clculo de la actitud .................................................................................... 39
4.1.1
Clculo de la actitud a partir de los giroscopios .................................... 40
4.1.2
Clculo de la actitud a partir de los magnetmetros. ............................. 41
4.2
Dead Reckoning con acelermetros y giroscopios........................................ 43
4.2.1
Cambio de las aceleraciones de Body a Navegacin ............................. 43
4.2.2
Integracin de las aceleraciones ........................................................... 45
4.3
Diagrama de bloques de la actitud y cinemtica ........................................... 45
Filtro de Kalman ................................................................................................. 47
5.1
Ecuaciones de Kalman ................................................................................. 48
5.2
Aplicaciones no lineales del filtro de Kalman .............................................. 51
5.2.1
Linealizacin respecto a la trayectoria nominal .................................... 52
5.2.2
Linealizacin respecto a la trayectoria estimada ................................... 53
III
5.3
Modelo forward ........................................................................................... 54
5.4
Modelo feedback ......................................................................................... 57
6
Medidas reales y resultados ................................................................................. 61
6.1
Procesado de las medidas............................................................................. 62
6.2
Integracin de las medidas de los sensores inerciales ................................... 64
6.3
Filtro de Kalman de 12 estados .................................................................... 66
6.3.1
Modelo forward ................................................................................... 66
6.3.2
Modelo feedback.................................................................................. 69
6.4
Filtro de kalman extendido de 18 estados ..................................................... 71
7
Conclusiones ....................................................................................................... 75
7.1
Futuras lneas de trabajo .............................................................................. 77
Bibliografa..79
Anexo I ....81
Anexo II83
IV
1 Introduccin
Este trabajo forma parte del proyecto del avin que se realiza en el TSC de la
UPC. Antes de comenzar a explicar los objetivos del PFC, es necesario hacer una
breve contextualizacin del departamento y los principales temas que se dedica a
estudiar. Uno de los campos de estudio del grupo del RSlab (Remote Sensing
Laboratory), dentro del grupo del TSC, son los sistemas de radar. Ms
concretamente, el estudio de radares de tipo SAR, es decir, Radares de Apertura
Sinttica. El funcionamiento de este tipo de radares se basa en un complicado
procesado de varios barridos de la antena del radar a lo largo de una trayectoria,
para combinarlos en un solo barrido virtual. El resultado es el mismo que si se
hubiera hecho un barrido con una antena mucho ms grande y ms directiva. El
uso de estas aperturas sintticas est limitado a trayectorias de la antena conocidas
y a blancos inmviles.
Algunas aplicaciones del SAR son los mapas de la superficie del terreno,
indicadores del hundimiento de la tierra, etc.
1.1
CAPTULO 1
1.2
Resumen
Introduccin
CAPTULO 1
En el captulo 6 se hace referencia a las medidas reales tomadas por el avin y por
los sensores en varias campaas de vuelo. Se procesarn las medidas y se
verificar todo lo expuesto en los captulos anteriores, a travs de figuras y
grficos. Es un captulo puramente explicativo, haciendo uso de los diferentes
montajes explicados antes y se discute brevemente los resultados, haciendo un
pequeo adelanto a las conclusiones del trabajo.
1.3
El avin
El avin, fotografiado en la figura 1.1, fue diseado por Albert Aguasca, tanto el
fuselaje como los componentes electrnicos embarcados. Es una plataforma de
vuelo relativamente pequea. Tiene como caractersticas principales:
Introduccin
2 Navegacin inercial
El captulo comienza con una serie de definiciones bsicas sobre la navegacin
inercial que sern esenciales para el desarrollo del proyecto. A continuacin, se
describen los principales sistemas de coordenadas que se van a utilizar en el
proyecto. Se definen varios conceptos relevantes en los sistemas de
posicionamiento, como la Matriz de cambio de coordenadas DCM o los ngulos de
Euler. Por ltimo se indican las transformaciones necesarias para trabajar con un
nico sistema de coordenadas, que es el sistema de coordenadas de navegacin.
2.1
CAPTULO 2
2.2
Sistemas de coordenadas
Navegacin Inercial
10
CAPTULO 2
Navegacin Inercial
11
12
2.3
CAPTULO 2
Una vez descritos los sistemas de coordenadas con los que se va a trabajar, es
necesario algn tipo de algoritmo para pasar de un sistema a otro. Como siempre,
existen varios mtodos, todos tienen su utilidad pero unos funcionan mejor en
determinadas circunstancias que otros.
2.3.1 DCM
La Matriz de Direcciones Coseno es un sistema de cambio de coordenadas.
Simplemente rota un vector de un marco de referencia a otro, digamos del marco b
al marco a.
c11 c12
C c21 c22
c31 c32
a
b
c13
c23
c33
(2.1)
Cada componente de esta matriz es uno de los cosenos de los ngulos entre los ejes
de los dos sistemas de coordenadas. Acaba siendo una matriz de cambio de
coordenadas.
a
x
X
y C a Y
b
z
Z
(2.2)
(2.3)
(2.4)
Se va a trabajar con esta matriz ya que es fundamental para futuros captulos, pero
ya se ver en 2.3.3 la manera de calcular sus elementos.
Navegacin Inercial
13
14
CAPTULO 2
orden ya que los mismos ngulos, si son aplicados con rdenes diferentes, dan
lugar a transformaciones diferentes.
Fig. 2.5 Representacin del avin en los ejes de coordenadas de navegacin (negrita) y
en los ejes de body XYZ. Todos los giros representan ngulos positivos.
Navegacin Inercial
15
En la Fig. 2.5 las lneas rojas representan cual es el sentido de giro para que los
ngulos sean positivos. Estos ngulos van desde los ejes de navegacin hacia los
del cuerpo (body).
sin
cos
0
0
0
1
(2.5)
0 sin
1
0
0 cos
(2.6)
0
sin
cos
(2.7)
(2.8)
16
CAPTULO 2
cos cos
cos sin
sin
C cos sin sin sin cos cos cos sin sin sin cos sin
cos sin cos sin sin sin sin cos cos sin cos cos
b
n
(2.9)
(2.10)
x e cos
y sin
e
z e 0
sin
cos
0
0 xe
0 y e
1 z e
(2.11)
(2.12)
cos sin
sin xe
xe
n
cos
0 ye Ce ye
ze
sin sin cos ze
(2.13)
Navegacin Inercial
17
2.4
(2.14)
ie
360
15.04106874 deg/h
23 [56 (4.09 / 60)] / 60
ie ie cos j ie sin k
(2.15)
(2.16)
3 Sensores
En este captulo se van a describir brevemente los diferentes sensores que se
utilizan en la plataforma: acelermetro, magnetmetro, giroscopio y GPS y
adems se va a caracterizar el modelo del error que afecta a sus medidas. Estos
sensores han aportado los datos experimentales que se han utilizado en el proyecto,
pero no se van a analizar en profundidad, porque no es este el objetivo.
Una vez explicados los cuatro sensores embarcados en el UAV y planteado su
modelo de error, se va a describir su implementacin en la plataforma, y la
circuitera que hay para almacenar todas estas medidas.
Adems de la caracterizacin de las medias y del breve resumen de cmo
funcionan estos sensores, tambin se describirn las condiciones en las que estos
sensores van a trabajar, es decir, todos los factores que puedan alterar de alguna
manera estas medias al embarcar los sensores en la plataforma del avin. Ya se
ver que este factor es crtico a la hora de decidir si las medidas de los sensores
son fiables y si existe algn mecanismo para evitar estas alteraciones.
19
20
CAPTULO 3
V
x0 G DAC x0
2n
(3.1)
3.1
Acelermetro
Sensores
21
Fig. 3.1 Encapsulado del LIS3L02AS4 y esquema de la orientacin de los ejes de medida.
(3.2)
Siendo Gacc el factor de escala que multiplica la entrada a0, que es la salida directa
de los datos del sensor almacenados y a el valor de la aceleracin perfectamente
calibrada. Ya se coment de dnde viene la ganancia de conversin GADC. Segn el
fabricante, si se utiliza el sensor para que opere en el rango de aceleraciones de
6gs, entonces su ganancia es de 15/VDD [g/V], siendo VDD la alimentacin del
sensor (3.3V). Finalmente, se quiere operar las medidas en unidades del sistema
internacional, de ah que se aada el factor de conversin de gs a m/s2.
22
CAPTULO 3
Gacc GDAC
15
9.8
VDD
(3.3)
VDD
9.8
2
(3.4)
Sensores
23
Como se puede ver en la Fig. 3.2, los valores de la aceleracin se han pasado al
Sistema Internacional (m/s2). A partir de este vector de medidas, que corresponde
a las lecturas de los acelermetros antes de una campaa de adquisicin, con una
ligera inclinacin en el ngulo de pitch. Se ha realizado una calibracin de la
estadstica de la seal y de los bias b en cada uno de los ejes. Es importante sealar
que si se repiten las medidas en esttica, las constantes de calibracin de la
aceleracin cambian. Incluso los bias cambian en un mismo experimento
dependiendo de la dinmica del sistema. Este es un problema bastante grave
porque un bias variable con el tiempo, no slo con el experimento, hace que los
resultados obtenidos nicamente de integrar INS para obtener una posicin sean
poco fiables y en un tiempo relativamente reducido, hagan divergir el sistema. Una
posible solucin, que se ampliar mas adelante, es la estimacin del bias como
vector de estados del filtrado. As se podr seguir su valor y se evita que la
solucin diverja.
Eje X
Eje Y
Eje Z
Bias b [m/s2]
0.01
0.5
-0.6468
n2 [(m/s2)2]
0.0014
0.0021
0.0921 10-4
Los datos de la Tabla. 3.1 son slo vlidos para las condiciones de medida que se
dieron el da de la prueba. Si se repitiese el experimento, sera necesario volver a
calibrar estos parmetros, que aunque no variaran mucho, s lo suficiente.
3.2
Magnetmetro
24
CAPTULO 3
Sensores
25
Gracias a las medidas en los 3 ejes del campo magntico, se puede calcular la
orientacin relativa de un objeto. En el caso de una brjula, siempre se supone que
se mide en el plano horizontal a la Tierra para obtener la direccin del norte. Los
compases magnticos, utilizan un inclinmetro como referencia de posicin para
calcular la orientacin de un objeto. De esta manera resulta sencillo calcular los
ngulos de roll y pitch y posteriormente hacer la compensacin de los ejes de
campo magntico para calcular el heading.
El problema que se nos presenta a nosotros, es que la dinmica del avin hace muy
complicado utilizar un inclinmetro en condiciones de movimiento del mvil. El
inclinmetro es un acelermetro que calcula la direccin del campo gravitatorio,
pero cuando el mvil acelera y gira, este vector no es tan fcil de encontrar y
queda enmascarado por otras aceleraciones.
Asimismo, utilizar la actitud estimada por los giroscopios para poder corregir las
medidas del magnetmetro, no es conveniente pues puede provocar un bucle
recurrente donde los propios resultados son los datos que se necesitan para
calcularlos
26
CAPTULO 3
Fig. 3.5 Ganancias de los 3 ejes del magnetmetro antes (azul) y despus de la
calibracin (rojo).
La Fig. 3.5 representa los resultados de la primera prueba que se hizo con el
magnetmetro. Consista en medir el campo magntico terrestre alineando cada
uno de los ejes de medida del magnetmetro con la direccin natural del vector de
campo. Segn el modelo de campo terrestre, en la localizacin donde se hicieron
las medidas, el campo magntico tena una inclinacin de 5646 y una declinacin
Sensores
27
con respecto al norte verdadero de 18 Oeste. As que para medir cada uno de los
ejes, se puso el magnetmetro sobre una plataforma con esta inclinacin y
cuidadosamente preparada para que ningn material magntico estuviera cerca.
Cada eje se midi por sus dos sentidos (dndole la vuelta) y estas medidas son los
puntos que se utilizaron para dibujar la grfica. El valor del cero se ha sacado por
interpolacin, y es un dato importante para luego calcular el bias exacto en cada
eje.
Viendo la Fig. 3.5 es normal entender por qu las medidas no haban sido buenas.
Las grficas azules son las primeras medidas que se hicieron al sacar el sensor del
avin y medir directamente. El eje X haba perdido su polaridad y tena la
ganancia muy reducida, que era la causa de que los resultados con el
magnetmetro fueran totalmente incorrectos.
Para solucionar este problema se ha diseado un circuito de reset de los magnetoresistores (anexo II). El circuito no es ms que un generador de un pulso de
corriente, lo suficientemente elevada (16V) como para reordenar y realinear
magnticamente los componentes de la magneto-resistencia.
Lo que nos hace pensar hasta que punto es conveniente integrar este circuito de
reset al HMC2003 y con qu frecuencia debera hacerse el reset del instrumento.
Una vez calibrado el magnetmetro, se hizo otra prueba, esta vez midiendo desde
el avin. Se gir el avin dando una vuelta completa en intervalos de 90.
La Fig. 3.6 representa la alineacin del avin en cada una de las posiciones en las
que se le hizo girar. En la figura aparecen dos medidas, la orientacin sin
correccin y con correccin utilizando los resultados del experimento anterior
(Fig. 3.5). A priori se piensa que el sensor est perfectamente calibrado despus
del reset y si se aplican los parmetros estndar que propone el fabricante, se
obtiene la solucin en azul. La solucin en rojo se hizo despus de procesar los
datos con la calibracin.
28
CAPTULO 3
Fig. 3.6 Orientacin del avin en una vuelta completa, a intervalos de 90 grados. Los
vectores azules representan los ngulos sin corregir y los rojos, aplicando la correccin
adecuada a cada eje.
(3.5)
Sensores
29
(3.6)
0
1.0743 0
gm 0
1
0
0
0 1.20537
(3.7)
(3.8)
Eje Y
Eje Z
Bias bm [gauss]
0.0985
-0.003
0.097
gm Ganancia
1.0743
1.20537
n2 [g2]
1.9 10-5
2.1 10-5
2.2 10-5
30
3.3
CAPTULO 3
Giroscopio
Sensores
31
(3.9)
Las unidades en que se mide la variacin de giro son [rad/s]. El fabricante da sus
especificaciones referidas a grados, pero para procesar los datos es ms interesante
expresarlos en radianes.
G g 0.018315
2
360
(3.10)
32
CAPTULO 3
Eje X
Eje Y
Eje Z
Bias bg [rad]
0.0045
-0.008
-0.0037
n2 [rad2]
2.4473 10-5
1.5596 10-5
3.3791 10-5
3.4
GPS
Sensores
33
34
CAPTULO 3
Hay que sealar que cuando se habla de plano horizontal y altura, el GPS asume
que est trabajando en un sistema de coordenadas de longitud, latitud y altura, pero
la orientacin de los ejes coincide con el sistema de coordenadas de navegacin,
donde el plano horizontal es tangente a la superficie y el eje de altura apunta hacia
abajo (NED).
3.5
En los apartados anteriores se ha descrito cada uno de los sensores que hay
embarcados en la plataforma del avin. En este apartado, se va a describir, cmo
estn estos sensores embarcados y que consideraciones se tienen a la hora de
procesar las medidas.
Un punto importante ser el de unificar todos los ejes de coordenadas. Cada sensor
tiene su propia orientacin de los ejes de medidas y no tiene porqu coincidir con
los otros. La orientacin de cada sensor aparece en la Fig. 3.8 y como se explica
tambin en el apartado 6.1, para compensar la desalineacin entre los ejes de los
sensores, simplemente se aplica un cambio de coordenadas o un cambio de ejes.
Sensores
35
Zg
Zm
Yg
Ym
Yg
Xb
Xm
Xg
Xg
Zg
Yb
Zb
Fig. 3.8 Foto de la distribucin de los sensores con sus ejes. Todos los ejes deben cambiar
de orientacin con tal de respetar los ejes de coordenadas del avin.
b
mag
1 0 0
0 1 0
0 0 1
(3.11)
36
CAPTULO 3
b
giro
1 0 0
0 1 0
0 0 1
(3.12)
0 1 0
1 0 0
0 0 1
(3.13)
b
acc
Estas ecuaciones multiplican la salida de cada sensor, para que cuando se procesen
las medidas, no se tenga que hacer la transformacin, es decir, una vez aplicados
estos cambios, todas las medidas estn en coordenadas de body y no habr
necesidad de preocuparse.
Ya se ha visto dnde estn situados los sensores pero es igualmente importante
cmo estn interconectados y qu circuitera hay detrs para que su salida,
recordemos analgica en el caso de dos de ellos, se almacene y se pueda procesar
luego.
Acelermetro
SPI
ADC
16 bits
PIC
RS232
DL1
Magnetmetro
SPI
Giroscopio
PIC
RS232
GPS
RS232
DL2
DL3
Sensores
37
4 Actitud y Cinemtica
En este captulo se discute cmo se procesan los datos que recogen los sensores, es
decir, lecturas de la aceleracin, de la velocidad de giro y del campo magntico,
todas ellas en el sistema de coordenadas de Body del avin. Se analizan los pasos
que se siguen para convertir estos datos a coordenadas de navegacin, que es el
marco de referencia en el que se calcula la solucin. Una vez est la informacin
referida al sistema de coordenadas adecuado, se detallan las operaciones para
calcular la solucin de posicin y actitud del sistema. El objetivo de este captulo
es obtener una salida de posicin, velocidad y actitud del UAV a partir de las
medias de los sensores. Es decir, una vez acabado el captulo, se tratarn todos los
resultados como un nico bloque, llamado INS, cuya entrada sean los sensores y
cuya salida sean la posicin, velocidad y actitud del mvil en el sistema de
referencia de navegacin.
4.1
Clculo de la actitud
La primera de las variables que se calcula es la actitud del mvil. Este vector es
imprescindible para clculos posteriores de la posicin, ya que la matriz de cambio
39
40
CAPTULO 4
1 sin tan
E 0
cos
0 sin sec
cos tan p
sin q
cos sec r
(4.1)
Donde [p q r] son las variaciones en el giro de cada uno de los ejes, medidas por el
giroscopio, es decir, las variaciones de giro en coordenadas de body y [ ]
son las variaciones de los ngulos de Euler en sistema de coordenadas de
Navegacin. Como aproximacin, esta matriz se construye a partir del valor de la
actitud anterior. Se supone que de una muestra a la otra pasa un tiempo
razonablemente pequeo (1/48 s) como para que no cambien tanto los valores de
roll, pitch y yaw.
Este sistema de ecuaciones diferenciales presenta un problema aadido y es que
cerca de 90 aparece una singularidad. Es lo que se conoce como gimbal-lock
Actitud y cinemtica
41
y no debera ser tan raro encontrarse estos valores en el ngulo de pitch, por
ejemplo, en ascensos o descensos muy pronunciados.
Se ha asumido que durante los tramos donde se requiere estimar la actitud del
avin, las condiciones de vuelo nunca sern tan extremas como para llegar al
gimbal-lock. An as, es interesante saber cmo se soluciona el problema de
manera general. Aqu es donde entra en juego el sistema de Quaternions (anexo I),
que no presenta este problema de bloqueo. Sin embargo, Rnnbck [8] concluye
en su trabajo, que un error en uno de los ngulos se propaga en todos los
quaterniones, con lo que el error de transformar y destransformar no hace que sea
tan buen sistema si y slo si los valores del ngulo de pitch nunca llegan a valores
de 90 .
Una vez obtenidos los diferenciales de los ngulos de Euler y contando con los
valores iniciales del vector de actitud E se integra cada resultado para ir
actualizando el valor de la actitud. Se aproxima a una integracin en tiempo
discreto (las medias se recogen cada periodo de tiempo) y se le suma el valor de la
actitud en la muestra anterior. As, el sistema es dependiente de los valores
iniciales de este vector para que los clculos sucesivos sean consistentes.
(4.2)
42
CAPTULO 4
Fig. 4.1 Proyeccin de las componentes de campo magntico al plano horizontal. Imagen
sacada de [10]
y
arctan h
xh
(4.3)
(4.4)
yh y cos z sin
(4.5)
Donde
Actitud y cinemtica
4.2
43
ay
az
estn
n
g b g y C b 0 g cos sin
g z
g g cos cos
(4.6)
44
CAPTULO 4
2r
g
t 2 |I
(4.7)
(4.8)
p q r
(4.9)
(4.10)
(4.11)
(4.12)
Con estas ecuaciones se obtiene la aceleracin bajo las condiciones de giro del
sistema de coordenadas de navegacin. Se aplica un cambio de coordenadas al
vector de aceleracin y se obtiene el vector de aceleracin del mvil en
coordenadas de navegacin.
an Cbn a Ib
(4.13)
Actitud y cinemtica
45
vn [n] a n dt vn [n 1] an [n]t
(4.14)
rn [n] vn dt rn [n 1] vn [n]t
(4.15)
4.3
4.1.2
mo
go
[ ]m
4.1.1
[ ]g
CI
ao
4.2.1
an
CI
vn
rn
46
CAPTULO 4
5 Filtro de Kalman
En este captulo se introducir brevemente el algoritmo de filtrado de Kalman.
Gran parte de la explicacin ser referenciada y slo aparecern las ecuaciones
bsicas. Tambin se har una simulacin simplificada de los modelos que se han
utilizado en el proyecto a modo de verificacin de que el algoritmo funciona
correctamente.
El filtro de Kalman es una ampliacin del algoritmo LMS de Mnimos cuadrados,
pero ms sofisticado. Imaginemos que dos personas caminan a velocidad
constante, en direcciones contrarias por la misma calle. Imaginemos tambin que
estamos adquiriendo la posicin de ambas a la vez, por ejemplo con un radar o con
algn otro instrumento. El mtodo de mnimos cuadrados calculara cul es la
posicin a partir de la minimizacin del error y obtendramos una gran precisin.
Ahora, si se sigue vigilando el movimiento de estas dos personas hasta el momento
en que se crucen, cmo se puede asegurar que la posicin de la persona 1 y de la
persona 2 son correctas? Cmo puede nuestro algoritmo diferenciar entre los 2
mviles una vez que se han cruzado?
Aqu es donde entra en juego el algoritmo de Kalman. Principalmente minimiza el
error, pero lo hace basndose en ms parmetros. Adems predice cul debera ser
47
48
CAPTULO 5
5.1
Ecuaciones de Kalman
Todas las variables que el filtro de Kalman utiliza para estimar una solucin
ptima, se agrupan dentro de un mismo vector llamado vector de estado:
x x1
x2
x3 ... x n
(5.1)
El vector de estado incluye no slo los parmetros deseados, sino adems aquellos
que se han aadido al filtro con tal de introducir redundancia al problema. El
vector de medidas, en cambio, es una agrupacin de todas las variables cuya
medida est disponible:
z z1
z2
z 3 ... zl
(5.2)
Se suele dar el caso de que la dimensin (n) del vector de estados x sea ms
grande que la dimensin (l) del vector de medidas z. Ambos vectores, estn
relacionados de manera lineal tal que a partir del vector de estados, se calcula el
vector de variables.
Filtro de Kalman
49
z (t ) H (t ) x(t ) v(t )
(5.3)
zk = H k xk + vk
(5.4)
vk ~ N (0, Rk )
(5.5)
(5.6)
(5.7)
wk ~ N (0, Qk )
(5.8)
La matriz phi da una relacin entre el estado anterior del KF y el estado presente
y es la solucin de la ecuacin diferencial que se presenta en (5.9). Este es el
primer paso para la estimacin ptima: una prediccin slo a partir de las medias
del estado anterior.
x (t ) F (t ) x(t ) w(t )
(5.9)
Las ecuaciones del vector de estados del filtro de Kalman en el dominio continuo.
Es necesario utilizar el dominio continuo para solucionar la ecuacin diferencial y
discretizar luego.
(t ) i i
F
i!
i 0
(t , ) e F (t )
(5.10)
50
CAPTULO 5
(5.11)
(5.12)
(5.13)
(5.14)
Pk () k 1Pk 1 ( )k 1 Qk 1
(5.15)
(5.16)
Pk ( ) [ I K k H k ]Pk ()
(5.17)
Filtro de Kalman
51
Ganancia de Kalman:
K k Pk () H k [ H k Pk () H k Rk ]1
(5.18)
zk
~
zk
Kk
-
x k ( )
+
+
k-1
Hk
x k ( )
delay
x k 1 ( )
5.2
Las ecuaciones que relacionan los estados del sistema han pasado a ser no lineales:
xk f ( xk 1 , k 1) wk 1
(5.19)
z k h( xk , k ) vk
(5.20)
52
CAPTULO 5
(5.21)
Tiene ruido cero y media x0nom que como condicin inicial sera la trayectoria
nominal para un sistema discreto en tiempo.
No siempre una solucin ser la trayectoria nominal, sino que se le aade un
trmino de perturbacin que representa los pequeos cambios que se producen
respecto a la trayectoria nominal.
xk xk xknom
(5.22)
z k z k h( xknom , k )
(5.23)
(5.24)
f ( x, k 1)
x
f ( x, k 1)
x
xk 1 ...
x x knom
1
xk 1 ...
x xknom
1
(5.25)
Filtro de Kalman
53
xk [k1]1 xk 1 wk 1
[k1]1
f ( x, k 1)
x
f1
x
1
f 2
x1
f 3
x1
f n
x
1
f1
x2
f 2
x2
f 3
x2
f n
x2
(5.26)
(5.27)
x xknom
1
f1
x3
f 2
x3
f 3
x3
f n
x3
f1
x n
f 2
...
x n
f 3
...
x n
f n
...
x n x x nom
...
(5.28)
k 1
z k H k[1] x k v k
(5.29)
A partir del cambio de variable (5.22) y con las ecuaciones (5.26) y (5.29) se ha
modificado el sistema para que se aplique el filtrado de Kalman tal y como se ha
explicado al principio del apartado. Un detalle importante del algoritmo es que se
optimiza la perturbacin de la medida y esto supone recomponer la seal a partir
de la trayectoria nominal y de la salida del filtro de Kalman.
54
CAPTULO 5
f ( x, k )
x x xk ( )
(5.30)
H k[1]
h( x, k )
x
(5.31)
x xk ( )
Una vez definidas las matrices de estado del sistema, las ecuaciones quedan de la
forma:
xk [k1]1 xk 1 wk 1
(5.32)
z k H k[1] x k v k
(5.33)
Modelo forward
Este es uno de los modelos [8] que se han utilizado en el trabajo para integrar las
medias de los inerciales y las del GPS/magnetmetro. Es la primera aproximacin
al problema y se ha utilizado una integracin descentralizada (Loose Integration).
Acelermetro
Giroscopio
INS
d x
GPS
Mag
dx
KF12
Filtro de Kalman
55
x X
vx
vy
vz
(5.34)
son los ngulos de Euler del mvil desde los ejes del sistema de
navegacin.
z v xINS
v INS
yINS
vz
INS
X GPS
Y GPS
Z GPS
v GPS
v GPS
y
v GPS
z
mag
(5.35)
03 x 3
I 3x3
03x3
0 3 x3
03x3
0 3 x3
03x3
0 3 x3
03x3
I 3 x3
0
3 x3
k I t F
0 3 x3
0 3 x3
03 x 3
03 x 3
I 3x3
03 x 3
t I 3 x 3
03 x 3
I 3x3
03 x 3
03x3
I 3x3
03x3
03 x 3
(5.36)
03 x3
03 x3
t I 3 x 3
I 3x3
(5.37)
56
CAPTULO 5
I 3x3
H k 03 x 3
01x3
0 3 x3
0 3 x1
I 3 x3
0 3 x1
01x 3
0 3 x5
0 3 x5
01x 5
(5.38)
Filtro de Kalman
57
5.4
Modelo feedback
Los parmetros de este modelo son exactamente los mismos que los del apartado
anterior. Tanto el vector de estados x como el vector de medidas z son los mismos,
adems las matrices y H. La nica diferencia es que existe realimentacin
dentro del bloque de los inerciales.
Con cada nueva correccin del KF, el procesado de los inerciales se actualiza, de
manera que las condiciones iniciales dejan de ser la integracin de la muestra
anterior, y aparecen corregidas en el INS por la salida del filtro de Kalman [8] y
[13].
58
CAPTULO 5
Acelermetro
INS
Giroscopio
d x
+
GPS
Mag
dx
KF12
Igual que en el modelo forward, se ha simulado una trayectoria circular. Esta vez
aparecen menos lneas ya que la solucin de los INS est corregida continuamente
por el filtro de Kalman.
Filtro de Kalman
59
Cabe destacar estos pequeos saltos que se dan con cada solucin de la trayectoria
del INS corregido por Kalman (lnea roja). Ya se explic en el captulo 3 que la
frecuencia de los datos del GPS era de 1 muestra por segundo, mientras que los
datos de los inerciales es de 48 muestras por segundo. As que la variacin brusca
corresponde a una actualizacin del estado de Kalman y el resto del tiempo
simplemente integra la solucin de los inerciales.
Como comparacin de los dos mtodos, se ha calculado el error medio de cada
algoritmo. Estos errores estn referidos a metros y dependen de las condiciones de
simulacin, que se ha intentado que fueran lo ms parecidas a la estadstica de los
sensores detallados en el captulo 3.
Error GPS (XY)
Modelo forward
4.9m
3.3m
Modelo feedback
5.0m
3.9m
Fig. 5.1 Desviacin standard de los resultados del modelo forward y feedback.
Los resultados pronostican que el algoritmo mejora algo la resolucin dada por el
GPS, que de por s es bastante buena, siendo ligeramente mejor el algoritmo
fordward. Estos resultados corresponden con el promedio de varias simulaciones
por la estadstica aleatoria de las seales y por los pocos puntos para calcular el
error medio.
El nico problema con estos resultados es que el algoritmo forward slo se puede
implementar para un filtrado limitado en tiempo, porque ya se coment que a la
larga tiende a divergir. Por tanto, es ms recomendable el uso del algoritmo
feedback para periodos de medida prolongados. En el caso estimar la trayectoria
durante una pasada del UAV cuando se hace una medida de SAR, es diferente,
porque este recorrido ser relativamente corto. As que el algoritmo de forward
tampoco es descartable en el contexto del proyecto actual.
61
62
CAPTULO 6
La Fig. 6.1 dibuja el recorrido trazado durante las medidas, segn el GPS. Antes
de empezar el recorrido y al acabar, se aprecia una gran variacin en la posicin.
Esto se debe a errores del GPS en la adquisicin cuando el mvil est parado. Una
vez en movimiento, la posicin que da el GPS es muy buena, debido a que utiliza
tambin las medidas de velocidad para estimar la posicin.
6.1
63
64
CAPTULO 6
Esta seal da un pulso cada vez que el GPS tiene una lectura de posicin, es decir,
se hace cada segundo y de manera muy exacta.
Adems de la sincronizacin de cada segundo, hay un interruptor que inhibe la
escritura de las lecturas en el dataloger y cuando se conecta, los microprocesadores
PIC del sistema de adquisicin empiezan a guardar los datos.
En la Fig. 6.2 se ha seleccionado una parte del recorrido que tuviera alguna
peculiaridad claramente reconocible de la trayectoria. En este caso, se trata de un
giro y estas graficas se han dibujado aplicando ya la correccin de tiempo
estimada. Es un algoritmo de sincronizacin basado en la bsqueda de
peculiaridades y comparando luego la representacin de estas a travs de sensores
que almacenaban informacin en memorias diferentes.
Base de tiempos
GPS
INS
ADIS
0s
1s
22s
Tabla. 6.1 diferencia de tiempos entre los datalogers para el mismo instante.
Este es un resultado que sorprende mucho, porque era de esperar que no hubiera
una diferencia superior a 1 segundo Un sistema con una base de tiempos comn
habra simplificado el problema, adems de con este mtodo no se tiene la certeza
de que exista un error en la estimacin del sincronismo.
6.2
65
El primero de los pasos a seguir es calcular la actitud del mvil slo con las
medias de los giroscopios. Para ello se utiliza (4.1) y (4.2). Esta es la primera de
las medidas que se calculan y es necesaria para hacer clculos posteriores.
Fig. 6.3 Comparacin de la actitud y de las medidas de los giroscopios antes de ser
procesadas en el INS.
66
CAPTULO 6
6.3
67
con la integracin de los inerciales. Se puede apreciar como la solucin del INS
diverge pero sin embargo el filtro es capaz de compensar bastante bien este error.
Como se ha dicho anteriormente, este detalle no tiene importancia siempre y
cuando no acabe salindose de rango, cosa que pasara despus de muchos
segundos.
68
CAPTULO 6
69
70
CAPTULO 6
Fig. 6.9 Velocidades de los 3 ejes en coordenadas de navegacin del modelo feedback.
71
Esos saltos tan molestos que aparecen en la Fig. 6.8 en la zona de la curva,
estropean mucho el vector de resultados. Si bien es cierto que se est comparando
vectores con densidades de muestras diferentes (1 por segundo del GPS y 48 por
segundo de los inerciales), estos saltos no deberan ser tan abruptos, y ms
teniendo en cuenta que las medidas de los inerciales deberan ser lo
suficientemente fiables en un intervalo de tiempo tan reducido. Otra vez se vuelve
al problema del modelo de error de los inerciales, que a priori parecan bien
calibrados, pero resulta evidente que necesitan un modelo de error ms complejo.
6.4
Como posible solucin al problema planteado en el apartado 6.3.2 con los saltos de
posicin en cada actualizacin del filtro, se propone aumentar el nmero de
estados que el filtro tiene en cuenta y tomar el bias de la aceleracin como variable
adicional al vector de estados:
x X
bx
vx
by
vy
bz
vz
bx
by
bz
(6.1)
72
CAPTULO 6
Fig. 6.12 Evolucin de los bias a los largo del tiempo como variable de estados del filtro.
73
En vista de los resultados, siguen apareciendo los saltos en el plano NE, incluso
ms pronunciados que antes. Es por eso que no se ha aadido ninguna figura ms,
slo los valores de estos bias durante el filtrado. Puede parecer que el filtro de
Kalman es capaz de encargarse de todas las irregularidades, pero el problema de la
calibracin de los acelermetros es algo que se tiene que solucionar antes, porque
sino resulta muy complicada una solucin a travs del filtrado.
As pues, la solucin de 18 estados queda descartada, siendo mucho ms
recomendable atacar el problema desde el punto de vista de la calibracin de los
sensores que no desde el punto de vista del procesado con el filtrado de Kalman.
Si se comparan los algoritmos de forward y feedback, los resultados son parecidos.
El algoritmo forward presenta mejores resultados en vista de las figuras, y para el
propsito del proyecto, es decir, la estimacin de la trayectoria durante una pasada
del SAR. La pregunta sera si mejorados los modelos de los sensores, entonces los
resultados de ambos algoritmos presentaran grficas parecidas.
Sin embargo, en escenarios donde sea necesaria una integracin de la posicin por
un periodo de tiempo indefinido, entonces el algoritmo de feedback es el ms
recomendable.
7 Conclusiones
La caracterizacin de los sensores se ha visto que es crucial para conseguir una
mejor estimacin de la posicin y de la actitud. Aunque se ha dedicado una parte
importante del proyecto a este tema, los resultados del captulo 6 hacen pensar que
los modelos de error no son lo suficientemente buenos, ni la calibracin ha sido
suficiente precisa si se quiere llegar a un nivel de precisin mejor.
Tambin es muy interesante la integracin de todos los sensores en un nico
dispositivo de almacenamiento, para evitar problemas de sincronismo, ya que la
solucin para sincronizar los datos es un tanto subjetiva y con esta integracin se
ahorran posibles errores de desplazamiento temporal entre diferentes medidas. Sin
duda es una fuente de error adicional y merece la pena el esfuerzo de redisear
algunos de los bloques del sistema.
Aunque el error slo se ha podido cuantificar a travs de las simulaciones, se
observa que la posicin estimada con el filtro de Kalman es ligeramente mejor a la
del GPS. Es un resultado positivo ya que los resultados dados nicamente por los
sensores inerciales hacan pensar que el filtrado de Kalman no corregira tan bien
la solucin. El sistema de GPS, desde que se elimin en febrero de 2000 la funcin
75
76
CAPTULO 7
7.1
77
78
CAPTULO 7
Por tanto, los ngulos de pitch y roll seran incluidos como variables del vector de
estado, bien modelando un inclinmetro virtual para las medias en dinmica o bien
utilizando el modelo de campo magntico terrestre.
Este proyecto puede ser el primer paso para el procesado de la posicin en tiempo
real y as obtener la integracin Kalman de la posicin al instante. El nico
requerimiento sera instalar un ordenador a bordo y ajustar los algoritmos que sean
completamente autosuficientes. Quiz no sea muy interesante si se procesa el SAR
offline pero el siguiente paso lgico, si se introduce un sistema de posicin y
actitud instantneos, es el estudio de un algoritmo de autopilotaje, aprovechando
las funciones de prediccin del filtrado de Kalman.
Bibliografa
79
Bibliografa
[1]
[2]
[3]
[4]
[5]
[6]
Kayton, Avionics Navigation Systems, John Wiley & Sons, Inc. 1997
[7]
[8]
[9]
[10]
[11]
80
Bibliografa
Calgary , 2003
[12]
[13]
A.Farrell, Y. Yeng Magnetometer and Diferencial Carrier Phase GPSAided INS for Advanced Vehicle Control , IEEE trans. Robotics and
automation, vol.19, abril 2003
[14]
http://www.ngdc.noaa.gov
[15]
[16]
[17]
Anexo
81
Anexo I: Quaterniones
Sistema de 4 parmetros, equivalente a los ngulos de Euler.
Qab (q0 , q1 , q2 , q3 )
(I.1)
Q * q0 q1 q2 q3
(I.2)
(I.3)
cos 2
sin cos
Q 2
sin cos
2
sin cos
(I.4)
Con estos cambios, se consigue pasar de un sistema de tres ngulos (Euler) a los
cuatro parmetros de los quaterniones, que definen de igual manera la actitud de
un cuerpo.
La correspondencia entre la matriz direccin coseno y los quaterniones es:
(I.5)
(I.6)
(I.7)
q0 cos
q1 sin
82
Anexo
(I.8)
(I.9)
q2 sin
Con estas ecuaciones de relacin, se puede pasar del sistema de ngulos de euler,
incluso de la matriz DCM a quaterniones, resolver la matriz evitando as el
problema del gimbal-lock y volviendo a transformar.
Esta es la matriz que relaciona las velocidades angulares, equivalente a la ecuacin
planteada en (4.1).
e0
0 p q r e0
e
r q e1
1 1 p 0
e2 2 q r
0
p e2
q p 0 e3
e3
r
(I.10)
Anexo
83
Anexo II
Este es el esquema que se utiliz para construir el circuito de reset del
magnetmetro. Se realiz slo una placa externa al diseo para resetear
puntualmente el magnetmetro.