sonar de varrimento lateral para navegação relativapaginas.fe.up.pt/~ee04134/index_ficheiros/sonar...
TRANSCRIPT
Faculdade de Engenharia da Universidade do Porto
Sonar de Varrimento Lateral para Navegação Relativa
Miguel Armando Migueis Pinto
VERSÃO PROVISÓRIA
Dissertação realizada no âmbito do Mestrado Integrado em Engenharia Electrotécnica e de Computadores
Major Automação
Orientador: Prof. Aníbal Castilho Coimbra de Matos
Junho de 2009
ii
© Miguel Armando Migueis Pinto, 2009
iii
Resumo
Nesta dissertação de mestrado em Engenharia Electrotecnia e de Computadores, uma
abordagem com a finalidade de dar um maior grau de autonomia ao AUV MARES
(Autonoumous Underwater Vehicle desenvolvido pelo grupo The Oceansys FEUP-DEEC) é
estudada. A abordagem implementada tem o objectivo de fazer a fusão entre a parte
sensorial do AUV MARES e as observações do ambiente obtidas pelos dados de um sonar.
O método matemático usado para esta fusão sensorial foi o filtro Kalman estendido (EKF),
que dá ao sistema a capacidade de estimar a posição do AUV no mundo e construção
simultânea do mapa do ambiente. Assim, esta dissertação analisa o problema SLAM
(Simultaneous Localization and Map Building).
O estudo de SLAM é feito no sentido de dotar o AUV MARES com a potencialidade poder
de navegar em relação a características existentes no fundo subaquático. As características
consideradas nesta dissertação foram um tubo no chão subaquático e uma parede vertical.
Três tipos diferentes de sonar são estudados: forward-look, side scan e multibeam sonar.
Mas, em particular, o sonar de varrimento lateral é estudado e explorado.
Uma interface para a comunicação entre o sonar de varrimento lateral (Imagenex
SportScan) e o computador de bordo do AUV MARES foi implementada e é aqui apresentada.
Algoritmos computacionais para o tratamento, segmentação, esqueletização e extracção
de características de imagens monocromáticas (imagens acústicas), obtidas pelo sonar de
varrimento lateral, são estudados e resultados da aplicação destes algoritmos a verdadeiras
imagens acústicas, são apresentados nesta dissertação.
Para avaliar o desempenho dos algoritmos desenvolvidos de navegação, todo o sistema foi
simulado, imagens acústicas sintetizadas e leis de controlo e seguimento de trajectória para a
aplicação ao AUV foram implementadas para assegurar que este segue a característica
detectada.
Resultados de simulação para um tubo no chão marítimo e para uma parede vertical são
obtidos e apresentados neste documento.
iv
v
Abstract
In this thesis of master in Electrical Engineering and Computers an approach to provide a
higher degree of autonomy to AUV MARES is studied. The approach implemented has the goal
to make the fusion between the sensory part of AUV MARES and the observations from
environment provided by sonar data.
The mathematic method used to this multifusion sensor was the Kalman filter, more
precisely the extended Kalman filter (EKF) that gives to the system the capacity to estimate
the AUV position on the world frame and the environment map construction simultaneously.
So, this thesis examines the SLAM problem (Simultaneous Localization and Map Building) in
the sense to give to the AUV MARES the potential to navigate relative to features that exists
on the underwater see floor. The features considered are a pipeline on the underwater floor
and a vertical wall.
Three different types of sonar are studied and they are: the forward-look, side scan and
multibeam sonar. But in particular, the communication of side scan sonar, the data provided
by it are studied and explored.
An interface for the communication between side scan sonar Imagenex SportScan and the
AUV MARES on-board PC was implemented and is presented here.
Computational algorithms to the treatment, segmentation and extraction of features from
a monochromatic image (acoustic image), obtained from side scan sonar, are studied. A
sequence of operations are described and applied to these images to obtain data/values that
give a numerical representation of the features. Results from the application of these
algorithms to real acoustic images are presented in this thesis.
To assess the performance of the developed navigation algorithms, the whole system with
synthesized acoustic images are simulated, AUV guidance and control loops were designed, to
ensure that the AUV could follow the detected feature.
Simulation results for underwater pipe on the sea floor and for a vertical wall are
obtained and are shown in this document.
vi
vii
Agradecimentos
Em primeiro, agradeço ao meu orientador, Aníbal Castilho Coimbra de Matos, por me
orientar durante o tempo de realização desta dissertação e pelo interesse demonstrado no
trabalho que com a sua ajuda fui desenvolvendo.
Em segundo, queria agradecer aos meus pais e irmã, pois sem eles a realização desta
dissertação não era possível. Obrigado pelo apoio e por todo o esforço, pois ao contrário não
teria chegado até aqui.
Miguel Armando Migueis Pinto
viii
ix
Índice
Resumo ............................................................................................................3
Abstract ...........................................................................................................5
Agradecimentos .................................................................................................7
Índice ..............................................................................................................9
Lista de figuras ................................................................................................ 13
Lista de tabelas ................................................................................................ 19
Abreviaturas e Símbolos ..................................................................................... 21
Capítulo 1 ...................................................................................... 1
Introdução ......................................................................................................... 1 1.1- Objectivos ............................................................................................... 2 1.2- Estrutura do documento .............................................................................. 2 1.3- Veículos de navegação subaquática ................................................................ 3 1.4- ROVs, Remotely Operated Vehicles ................................................................ 5 1.5- AUVs, Autonomous Underwater Vehicle ........................................................... 5
Capítulo 2 ...................................................................................... 7
Estado da Arte .................................................................................................... 7 2.1- Localização ............................................................................................. 8
2.1.1- Referencial Mundo e do Veículo .............................................................. 8 2.1.2- Localização Relativa e Absoluta............................................................. 11
2.2- Evolução da autonomia na Robótica Marítima .................................................. 12 2.2.1- Sensores dead-reckoning ..................................................................... 12 2.2.1.1- Acelerómetro ................................................................................ 12 2.2.1.2- Giroscópio .................................................................................... 13 2.2.1.3- Unidade Inercial de Medida IMU .......................................................... 13 2.2.1.4- Sensor DVL .................................................................................... 14 2.2.2- Sensores de atitude ........................................................................... 14 2.2.3- Marcos e/ou balizas activas .................................................................. 14 2.2.3.1- Navegação baseada em marcos ........................................................... 14 2.2.3.2- Navegação baseada em Balizas activas.................................................. 15 2.2.3.3- Navegação baseada em mapa/terreno .................................................. 17
Capítulo 3 ..................................................................................... 19
SLAM - Simultaneous Localization And Mapping ......................................................... 19 3.1- Filtro de Kalman ..................................................................................... 20
3.1.1- Estrutura do Filtro de Kalman ............................................................... 20 3.1.2- Equações do filtro de Kalman ............................................................... 21
x
3.1.2.1- Estimação em tempo discreto ............................................................ 22 3.1.2.2- Estimação em tempo continuo ............................................................ 23 3.1.3- Equações de Actualização .................................................................... 25
3.2- Filtro de Kalman Estendido (EKF) ................................................................. 31
Capítulo 4 ..................................................................................... 33
Dados do Sonar ................................................................................................. 33 4.1- Sonar, SOund Navigation And Range ............................................................. 33 4.2- Sonar de varrimento lateral (side scan) ......................................................... 37 4.3- Dados obtidos pela análise da imagem acústica ............................................... 38 4.4- Imaginex SportScan.................................................................................. 39
Capítulo 5 ..................................................................................... 43
Análise de Imagem............................................................................................. 43 5.1- Pixéis e Níveis de uma imagem.................................................................... 44 5.2- Pré-processamento da Imagem .................................................................... 44 5.3- Segmentação da Imagem ........................................................................... 46
5.3.1- Threshold........................................................................................ 46 5.3.2- Detecção de Orlas ............................................................................. 47 5.3.3- Transformada de Hough ...................................................................... 48
5.4- Esqueletização da imagem ......................................................................... 49 5.4.1- Dilatação ........................................................................................ 50 5.4.2- Erosão ............................................................................................ 50 5.4.3- Operação Abrir ................................................................................. 50 5.4.4- Operação Fechar ............................................................................... 51 5.4.5- Operações Fechar e Abrir aplicadas numa imagem binária ............................ 51
Capítulo 6 ..................................................................................... 53
Filtros de Navegação .......................................................................................... 53 6.1- Sensores do AUV MARES ............................................................................ 53 6.2- Filtro de Kalman: estado (este, sul e profundidade) .......................................... 54
6.2.1- Modelo cinemático contínuo e não linear do Submarino ............................... 54 6.2.2- Estimação de estado .......................................................................... 56 6.2.3- Modelo da observação do Tubo ............................................................. 57 6.2.4- Casos particulares de observação........................................................... 59 6.2.5- Inovação da Observação ...................................................................... 60 6.2.6- Actualização de estado ....................................................................... 60
6.3- Filtro de Kalman: estado (distância e profundidade). Característica tubo................ 61 6.3.1- Modelo cinemático contínuo e não linear do estado. ................................... 62 6.3.2- Estimação de estado. ......................................................................... 63 6.3.3- Modelo de Observação ........................................................................ 64 6.3.4- Inovação da Observação. ..................................................................... 66 6.3.5- Actualização de estado ....................................................................... 66
6.4- Filtro de Kalman: estado (distância e profundidade). Característica parede............. 67 6.4.1- Modelo de Observação. ....................................................................... 67 6.4.2- Inovação da Observação ...................................................................... 69 6.4.3- Actualização de estado ....................................................................... 69
Capítulo 7 ..................................................................................... 71
Tamanho do tubo na imagem acústica ..................................................................... 71 7.1- Efeito do raio do tubo e da distância entre veículo e tubo na imagem acústica ......... 71 7.2- Efeito de pitch e yaw do veículo no tamanho do tubo na imagem acústica .............. 73 7.3- Sintetização da imagem acústica ................................................................. 77
Capítulo 8 ..................................................................................... 79
Limites de operatividade do veículo ....................................................................... 79 8.1- Característica tubo .................................................................................. 79
xi
8.2- Característica parede ............................................................................... 82
Capítulo 9 ..................................................................................... 85
Ruído nas entradas e estimativa inicial do estado ....................................................... 85 9.1- Estimação de Pitch .................................................................................. 87 9.2- Estimação de Yaw ................................................................................... 88
Capítulo 10 .................................................................................... 91
Seguimento de trajectória e controlo ...................................................................... 91 10.1- Controlo ............................................................................................... 92 10.2- Determinação das constantes de controlo ...................................................... 93
Capítulo 11 .................................................................................... 95
Simulação do filtro de Kalman (EKF) ....................................................................... 95 11.1- Resultados de simulação............................................................................ 96
11.1.1- Filtro de Kalman (Distância à característica e profundidade) ....................... 96 11.1.2- Filtro de Kalman (este, sul e profundidade) ........................................... 102
Capítulo 12 .................................................................................. 105
Aquisição de dados: Imagenex SportScan ................................................................ 105 12.1- Protocolo de comunicação do Imagenex SportScan .......................................... 105
12.1.1- Trama de comando via RS-232 para sonar .............................................. 106 12.1.2- Retorno de dados de Imagenex SportScan .............................................. 107
12.2- Interface entre o sistema operativo, Windows ou Linux, com Imagenex SportScan .... 108 12.3- Aplicação desenvolvida “SideScanReceiveSend” .............................................. 110
Capítulo 13 .................................................................................. 113
Segmentação de uma imagem acústica real ............................................................. 113 13.1- Biblioteca CImg...................................................................................... 114 13.2- Janela deslizante ................................................................................... 114 13.3- Detecção do chão na imagem acústica ......................................................... 117 13.4- Detecção de características na imagem acústica ............................................. 122 13.5- Resultados experimentais ......................................................................... 123
Capítulo 14 .................................................................................. 129
Implementação no AUV ...................................................................................... 129 14.1- Grafcet principal .................................................................................... 129 14.2- Grafcet: previsão e actualização ................................................................ 130 14.3- Grafcet: envio/recepção dados do sonar ....................................................... 131 14.4- Grafcet filho: Controlo de trajectória .......................................................... 132 14.5- Grafcet filho: Processamento da imagem acústica ........................................... 132
Capítulo 15 .................................................................................. 135
Conclusões ..................................................................................................... 135
Anexos ....................................................................................... 137 A.1 Solução da equação de co-variância ............................................................ 137 A.2 Convergência e Estabilidade do filtro de Kalman ............................................. 138
A.2.1 Confiança nula na observação ............................................................... 138 A.2.2 Confiança máxima na observação........................................................... 139 A.2.3 Co-variância do erro de estimação em regime estacionário ........................... 139
A.3 Co-variância do erro estimado em tempo contínuo .......................................... 140
Referências ................................................................................. 141
xii
xiii
Lista de figuras
Figura 1.1 Os dois tipos de UUVs (Unnamed Underwater Vehicles). ROVs (Rometely Operated Vehicles) e AUVs (Autoumous Underwater Vehicles). Ambos os veículos são destinados a operação debaixo de água, mas pelas suas características são destinados a tarefas diferentes. [5]. ................................................................ 5
Figura 1.2 Movimento de um veículo baseado no método Spray glider, em que se recorre à alteração da geometria do veículo para o deslocamento com baixos consumos. [1]. ...... 6
Figura 2.1 Referencial Absoluto (fixo ao mundo e parado). Referencial do AUV (móvel com o AUV e origem no centro de massa do veículo)................................................. 10
Figura 2.2 Técnicas de localização absoluta baseada em balizas activas, a) Trilateração, b)Triangulação. [18]. ................................................................................. 16
Figura 3.1Estrutura do Filtro de Kalman, Estimação e Actualização. .............................. 21
Figura 3.2 Algoritmo Computacional do filtro de Kalman. Efectua-se a inicialização, a estimação ocorre à taxa de leitura dos sensores de entrada, a actualização acontece sempre que uma nova observação é obtida. ..................................................... 29
Figura 3.3 Trajectória simulada em [12] sem landmarks. a) Trajectória. b) Erro de estimação que cresce sem limites. ................................................................ 32
Figura 3.4 Trajectória simulada em [12] com landmarks. a) Trajectória. b) Erro de estimação que decresce sempre que uma nova observação adquirida. ..................... 32
Figura 4.1 Varrimento efectuado pelos sonares: a) Forward-look b)Side scan sonar. ........... 35
Figura 4.2 Imagens obtidas por sonares do tipo: a) forward-look b)Side scan sonar. Como se vê o Sonar de varrimento lateral permite obter imagens de maior qualidade que o sonar forward-look. [8]. ............................................................................. 35
Figura 4.3 Imagem de qualidade obtida por um sonar Multi-Beam [34]. .......................... 36
Figura 4.4 Uma fatia acústica, resposta de força de eco, do fundo do meio marítimo constituído por dois alvos (Target1 e Target2), [32]. .......................................... 37
Figura 4.5 Resultado do varrimento lateral, efectuado pelo sonar side scan. O conjunto de várias fatias dá origem à imagem acústica pretendida e que permitirá retirar características do fundo marítimo [32]. .......................................................... 38
Figura 4.6 Características H, r, s e h, obtidas através da imagem acústica, [34]. ............... 39
xiv
Figura 4.7 Feixe acústico e ângulos de incidência configuráveis no sonar. ....................... 40
Figura 4.8 Feixe do sonar: a) ângulo de incidência de 30º, frequência de 800Khz. b) Ângulo de incidência de 60º, frequência de 330Khz. ........................................... 41
Figura 5.1 Operador local F aplicado a um pixel da imagem. O pixel resultado é função da aplicação do operador local aplicado na sua vizinhança também, [37]. .................... 45
Figura 5.2 Histograma de uma imagem. O histograma é usado para a verificação do limiar ou dos limiares de threshold [38]. ................................................................. 46
Figura 5.3 Plano xOy da imagem. Recta definida pelos pares de pontos e . ...... 48
Figura 5.4 Plano aOb, a intersecção das rectas formadas pelos pares (declive, ordenada na origem), e corresponde no plano da imagem à recta de declive e ordenada na origem . .......................................................................... 49
Figura 6.1 AUV MARES. Decomposição das forças/velocidades aplicadas pelos propulsores do veículo. Os movimentos horizontais e verticais no veículo são desacoplados uma vez que o veículo possui propulsores horizontais e verticais. ................................. 55
Figura 6.2 Referenciais a) eOh b) sOh. Distâncias r e H retiradas da imagem acústica ......... 58
Figura 6.3 Decomposição de velocidades da corrente aplicadas no veículo para modelização do seu modelo cinemático. ......................................................... 63
Figura 6.4 Observação. Fatia da imagem acústica. Modelização da observação. ................ 64
Figura 6.5 Distância relativa entre AUV e o tubo. Decomposição da distância em coordenadas do referencial do veículo. ........................................................... 65
Figura 6.6 Característica parede vista pelo sonar. Decomposição do meio visto em força de eco. a) feixe de 60º b) feixe de 30º. ........................................................... 68
Figura 6.7 Distância relativa entre AUV e a parede. Decomposição da distância em coordenadas do referencial do veículo. ........................................................... 69
Figura 7.1 Fatia da imagem acústica. Quando o veículo se encontra paralelo ao tubo e sem pitch este é visto como uma circunferência. Distância mínima e máxima (Dmin,Dmax). .......................................................................................... 71
Figura 7.2 Tamanho do tubo visto na imagem acústica em função da altura e distância que o sonar se encontra do mesmo. Para raios de tubo igual a 1, 2 e 3 mts. Como se pode ver a distância ao tubo influência pouco o tamanho com que o tubo é visto na imagem acústica. ..................................................................................... 72
Figura 7.3 Efeito de pitch e yaw no tamanho que o tubo terá na imagem acústica. a) Efeito de yaw relativo entre o veículo e a orientação da característica: tubo. b) Efeito de pitch. ........................................................................................ 74
Figura 7.4 Elipse vista pelo sonar, correspondente ao tubo. ........................................ 74
Figura 7.5 Elipse vista pelo sonar, representação da distância máxima e mínima (Dmax, Dmin) que formam a imagem acústica adquirida pelo sonar. ................................. 75
Figura 7.6 Elipse vista pelo sonar, representação de Dmin (vermelho) e Dmax (vermelho e azul tracejado). ....................................................................................... 77
xv
Figura 7.7 Imagem acústica sintetizada, conjunto de dez fatias que formam a imagem acústica. A primeira linha a branco representa a distância a que o sonar vê o fundo marítimo. A “faixa” branca vista na imagem representa o tamanho do tubo visto no sonar. O tamanho do tubo na imagem acústica é variável com pitch e yaw. a) representa a imagem sintetizada real de um tubo de raio 1m. b) representa a imagem real corrompida com ruído branco de variância de 4 pixéis. ....................... 78
Figura 8.1 Limites de operação do sonar para um feixe acústico de 30º. a) limite superior. b) limite inferior. ..................................................................................... 80
Figura 8.2 Limite de operação do sonar para um feixe acústico de 60º ........................... 80
Figura 8.3 Limite de operatividade do sonar, para ângulos de incidência de 30º (superior) e 60º (inferior), para um range scale de 30 mts. ................................................ 82
Figura 8.4 Limites de operatividade do sonar quando a característica a seguir é uma parede. a) Ângulo de incidência de 30º. b) Ângulo de incidência de 60º ................... 83
Figura 9.1 Erro de pitch, quando pitch é estimado. Para pitch pequeno o erro é elevado. ... 88
Figura 9.2 Ângulo de yaw relativo entre duas observações consecutivas O1 e O2. .............. 88
Figura 9.3 Erro de yaw quando este é estimado e não medido, para o declive da característica máximo igual a 0.5. ................................................................. 90
Figura 9.4 Erro de yaw quando este é estimado e não medido, para o declive da característica mínimo igual a 0. .................................................................... 90
Figura 10.1 Máquina de estados de seguimento de trajectória paralela a uma característica. Parede ou tubo. .................................................................... 91
Figura 10.2 Controladores PID1 e PID2. PID1 é responsável por levar o veículo para a distância à característica de referência. PID2 tem como objectivo alinhar o veículo paralelamente à característica. .................................................................... 92
Figura 11.1 Algoritmo da simulação dos filtros de Kalman ........................................... 96
Figura 11.2 Trajectória simulada. Começa na origem, efectua primeiro uma trajectória paralela a este e aproxima-se depois da trajectória pretendida. Parede. ................. 97
Figura 11.3 Erro de estimação. O erro dos vários estados estimados é pequeno. Erro de distância<0.2mts. Erro de profundidade < 1 m. Erro de orientação 0º. Parede. ....... 97
Figura 11.4 A azul é representada o verdadeiro estado e a vermelho o estado estimado, quando a característica que se segue é uma parede. .......................................... 98
Figura 11.5 Variável de saída do controlador, não ultrapassa os 15º/s e por isso não ultrapassa a máxima velocidade de yaw possível. .............................................. 98
Figura 11.6 Trajectória simulada. O veículo aproxima-se inicialmente com um ângulo de 10º relativo à orientação da característica estimada. O controlo apenas actua para distâncias à característica inferiores a 0.75 mts. Tubo. ....................................... 99
Figura 11.7 O erro inicial do estado é maior. Em regime estacionário o mesmo diminui. Inicialmente o erro é superior devido à inicialização do filtro e devido ao facto do veículo não se deslocar paralelamente à característica. Tubo. .............................. 99
Figura 11.8 A verde é representada a distância de referência a que se pretende que o veículo desloque do tubo. .......................................................................... 100
xvi
Figura 11.9 A trajectória de referência representa-se a verde. A parede encontra-se representada a azul. Correntes 0.1 m/s e Ve=1 m/s. ......................................... 100
Figura 11.10 Como pode ser visto sempre que a orientação da parede é alterada, o erro de orientação estimado aumenta, continuando o erro a diminuir posteriormente. ..... 101
Figura 11.11 Como se pode ver o filtro estima bem a posição do veículo mesmo para uma parede cuja orientação evoluí deste modo. Correntes 0 m/s e Ve=0.5 m/s. ............. 101
Figura 11.12 Embora acompanhe a parede, a distância à caracteristica numa situação deste tipo passa a possuir um erro superior. .................................................... 102
Figura 11.13 Como se pode ver, para este filtro a co-variância do erro de estimação é crescente e a dada altura a estimação deixa de ser confiável. A azul representa-se a co-variância do erro de estimação este, e verde a sul. 20º de orientação do tubo, e 20º de orientação do veículo no referencial do mundo. O veículo desloca-se paralelamente ao tubo. ............................................................................. 102
Figura 11.14 O erro de estimação, para este filtro, em que as variáveis de estado são (este, sul e profundidade) é muito mais elevado do que o filtro cujas variáveis de estimação são (distância e profundidade). Este erro aumenta ao longo do tempo uma vez que a co-variância diverge. Pode-se ver picos na estimação. .......................... 103
Figura 12.1 Imagenex SportScan e comunicação com PC. ........................................... 106
Figura 12.2 “Remote_serial”. Esta aplicação recebe pacotes UDP de um porto remoto e reencaminha-os via porta série. Os dados recebidos via porta série são reencaminhados para um porto remoto UDP. ................................................... 109
Figura 12.3 “SideScanReceiveSend”. Esta aplicação envia um pacote UDP, de pedido de dados ao sonar, para o porto remoto UDP da aplicação “remote_serial”, que por sua vez é reenviada via porta série para sonar. A resposta do sonar é enviada via porta série para “remote_serial” que por sua vez envia o pacote de dados para o porto UDP remoto, “SideScanReceiveSend”. ........................................................... 110
Figura 12.4 Algoritmo de aquisição de uma imagem acústica. ..................................... 112
Figura 13.1 Imagem acústica proveniente do CD de suporte do Imagenex SportScan, imagem de 500x 841 pixéis. Nesta imagem não existe característica tubo ou parede. Pode ser vista a zona de não eco, a zona de eco do chão, e o eco da superfície na imagem acústica. .................................................................................... 113
Figura 13.2 Velocidades de aproximação e (velocidade de aproximação na direcção perpendicular da característica seguida e velocidade de aproximação na direcção do chão marítimo). ...................................................................................... 115
Figura 13.3 Algoritmo aplicado a uma imagem acústica para a detecção do fundo marítimo. As equações de linhas e distâncias medidas são usadas nos filtros de navegação. A cada observação uma nova fatia acústica é obtida e juntada à janela deslizante.............................................................................................. 119
Figura 13.4 a) Janela deslizante de dez fatias acústicas. Cada fatia possui 500 pontos, 250 a estibordo e outros 250 a bombordo. b) Resultado da aplicação de threshold à janela original com limiar de binarização igual ao mínimo da janela (zona de não eco). c)Resultado de aplicação da dilatação com um elemento estruturante quadrado de dimensão 3x3. Os buracos a preto no fundo da imagem acústica são eliminados e as fronteiras aumentam de dimensão (pixéis a branco). d)Resultado da aplicação de uma erosão, os pixéis da fronteira aumentados na dilatação são agora restituídos. ............................................................................................ 120
xvii
Figura 13.5 a) Resultado da aplicação de uma erosão na janela com um elemento estruturante de dimensão 10x10. A erosão elimina as linhas a branco correspondentes ao eco da superfície na zona de não eco (a preto). A zona de não eco é aumentada com a erosão. b)Resultado da aplicação de uma dilatação sobre a janela deslizante com o mesmo elemento estruturante. Os pixéis da fronteira da zona de não eco aumentados durante a erosão são agora eliminados na dilatação. c)Resultado da convolução de um filtro de Sobel ou Prewitt sobre a janela. As zonas de fronteira (orlas) são detectadas. .............................................................. 121
Figura 13.6 Transformada de Hough. Os elementos a branco indicam a presença de rectas. Como pode ser visto duas zonas fundamentais da transformada indiciam a presença de rectas. Essas zonas fundamentais são as rectas a estibordo e a bombordo da imagem acústica e obtidas pela aplicação do filtro de detecção de orlas (figura 13.5 c)). ...................................................................................................... 122
Figura 13.7 Transformada resultante do clustering aplicado à transformada de Hough. As duas zonas da transformada de Hough que indiciam a presença de rectas são tornadas em dois pontos que dão origem às equações das rectas (declive, ordenada na origem). ............................................................................................ 122
Figura 13.8 Zarco Autonomous Surface Vehicle [42] ................................................. 123
Figura 13.9 a) Imagem acústica adquirida de dimensões 100x500 pixéis. Estibordo e bombordo. O veículo na missão moveu-se da esquerda para direita. Pode ver-se que a estibordo (à direita do veículo) o fundo do rio está mais perto que a bombordo, uma vez que a força de eco é superior, o que de facto tem lógica, uma vez que junto à margem (estibordo) o fundo do rio está a uma menor distância. Nesta missão o veículo circula com yaw relativo à margem, uma vez que a distância ao fundo marítimo diminui na janela acústica. b) Resultado da segmentação da imagem acústica. A linha de eco do fundo a estibordo é detectada. ................................. 124
Figura 13.10 Distância ao fundo marítimo (estibordo), em pixéis, determinada pelo algoritmo de detecção do fundo marítimo, para a uma janela deslizante de 10 fatias. 125
Figura 13.11 Distância ao fundo marítimo (estibordo), em metros, determinada pelo algoritmo de detecção do fundo marítimo, para a uma janela deslizante de 10 fatias. 125
Figura 13.12 a) Imagem acústica obtida a uma maior distância da margem relativamente a 13.8 a) e então a uma distância superior do chão do rio. Devido ao aumento da distância ao fundo, a imagem acústica é de pior qualidade, mesmo assim esta é bem segmentada pelo algoritmo descrito. Nesta imagem o veículo circula da esquerda para a direita e a distância ao fundo marítimo é pouco variável. Nesta imagem pode ver-se o eco de um objecto desconhecido e respectiva sombra. b) Resultado da segmentação da imagem. Linha de eco do fundo a estibordo detectada com sucesso. . 126
Figura 13.13 Distância ao fundo marítimo (estibordo), em pixéis, determinada pelo algoritmo de detecção do fundo marítimo, para a uma janela deslizante de 10 fatias. 127
Figura 13.14 Distância ao fundo marítimo (estibordo), em metros, determinada pelo algoritmo de detecção do fundo marítimo, para a uma janela deslizante de 10 fatias. 127
Figura 14.1 a) Grafcet principal. Inicialização e execução de tarefa. b) Macro-step INIC, inicialização, neste macro-step o sonar é configurado, as correlações e estado do filtro são inicializados. .............................................................................. 130
Figura 14.2 Grafcets correspondents ao filtro de Kalman. a) Previsão dá-se a uma taxa fixa igual a TaxaPrev, e quando o estado não é actualizado. b) Actualização. Acontece quando novos dados existem, correspondentes a dados da imagem acústica. ............................................................................................... 131
xviii
Figura 14.3 Grafcets de comunicação entre AUV (computador on-board) e o sonar. a) Trama de pedido de dados é enviada assim que uma autorização surge, essa autorização é dada pelo step Recebe dados, assim que a recepção de dados acontece. b) Recepção de dados, cálculo do tamanho da janela deslizante e actualização da janela. ............................................................................. 131
Figura 14.4 Controlo de trajectória do veículo. ....................................................... 132
Figura 14.5 Processamento da janela deslizante, obtenção de dados relativamente à distância que o veículo se encontra da característica (parede ou tubo) e altura do AUV. .................................................................................................... 133
xix
Lista de tabelas
Tabela 2.1 Ângulos de rotação em torno dos eixos E, S e H e respectiva simbologia. .......... 10
Tabela 3.1 Resumo de equações do filtro de Kalman. Filtro Contínuo-discreto e discreto-contínuo................................................................................................. 30
Tabela 4.1 Resoluções possíveis para o sonar variáveis com o número de pontos usados e com o range scale escolhido para o sonar. ....................................................... 40
Tabela 4.2 Taxa de amostragem mínima do sonar, variável com o range scale escolhido. .... 41
Tabela 11.1 Parâmetros de simulação da trajectória do veículo quando as características são uma parede e um tubo. ......................................................................... 96
Tabela 12.1 Trama de comando a enviar via RS-232 para o sonar. ................................ 106
Tabela 12.2 Trama de retorno de dados do sonar via RS-232. ...................................... 107
Tabela 13.1 Classes constituintes da biblioteca CImg ................................................ 114
Tabela 13.2 A variação da distância percorrida (distância perpendicular) para uma janela deslizante de uma fatia de dimensão. Esta distância percorrida é apresentada em pixéis para ou iguais a 0.5 m/s. ............................................................ 116
Tabela 13.3 Tamanho da janela deslizante para os vários range scale e para uma velocidade de 0.25 m/s ............................................................................. 117
Tabela 13.4 Função do tamanho (S) da janela deslizante para os vários range scale (RS) dependente das velocidades (velocidade de aproximação perpendicular à característica e velocidade de aproximação ao chão marítimo). ........................... 117
xx
xxi
Abreviaturas e Símbolos
Lista de abreviaturas
Autonomous Undewater vehicle
Autonomous Surface vehicle
Ordenada na origem de um tubo representado por uma recta
Corrente marítima segundo componente este do referencial mundo
Concurrent Mapping and Localization
Corrente marítima segundo componente sul do referencial mundo
Velocidade de propagação do som na água
Distância perpendicular entre o AUV e a característica a seguir
Vector de translação da origem do referencial do mundo para o
referencial fixo no centro de massa do veículo
Distância de referência
Distância mínima do sonar a uma característica. Tubo ou parede
Distância máxima do sonar a uma característica. Tubo ou parede
Doppler Log Velocity
Coordenada este do referencial mundo
Valor da coordenada este do veículo no referencial mundo
Extended Kalman Filter
Coordenada este do referencial do veículo
Valor da coordenada este do ponto visto pelo sonar do tubo no
referencial do veículo
Frequência
Valor do pixel no ponto da imagem de coordenadas
Global Positiong System
Coordenada de Profundidade do referencial mundo, ou medição da
distância ao fundo marítimo na imagem acústica
xxii
Valor da coordenada profundidade do veículo no referencial mundo
Coordenada profundidade do referencial do veículo
Valor da coordenada de profundidade do ponto visto pelo sonar do
tubo no referencial do veículo
Inertial Measurement Unit
Inertial Navigation System
Ganho proporcional de controlo da trajectória quando a entrada é a
diferença entre orientação do veículo e a orientação da
característica
Ganho proporcional de controlo da trajectória quando a entrada é a
diferença entre distância do veículo à característica a seguir e
Declive de um tubo representado por uma recta
Declive da função afim, dependente da velocidade linear do veículo,
que rege o valor de
Declive da função afim, dependente da velocidade linear do veículo,
que rege o valor de
Co-variância do erro estimado no instante (k+1) usando a estimação
no instante k
Co-variância do erro estimado no instante (k) usando a estimação no
instante k
Derivada da co-variância do erro de estimação no instante t
Probabilistic Data Association Filter
Ponto do espaço nas coordenadas do referencial fixo ao mundo
Ponto do espaço nas coordenadas do referencial fixo ao veículo
Matriz de co-variância do ruído aleatório nas entradas do modelo
cinemático do veículo (tempo contínuo)
Matriz de co-variância do ruído aleatório nas entradas do modelo
cinemático do veículo (tempo discreto)
Roll-rate, velocidade de rotação em torno do eixo este do veículo
Raio do tubo ou Matriz de co-variância do ruído aleatório nas
entradas do modelo de observação do filtro de Kalman (tempo
contínuo)
Red, green and Blue
Matriz de rotação do referencial do mundo para o referencial do
veículo
Rotação de um ângulo em torno do eixo este do referencial mundo
Rotação de um ângulo em torno do eixo profundidade do
referencial mundo
Rotação de um ângulo em torno do eixo sul do referencial mundo
xxiii
Romotely Operated Vehicle
Distância entre sonar e característica vista na imagem acústica
Coordenada sul do referencial mundo ou medição do tamanho da
sombra de uma característica na imagem acústica
Valor da coordenada sul do veículo no referencial mundo
Simultaneous Localization and Map Building
Auto-correlação da inovação do filtro de Kalman
Correlação entre o estado do filtro de Kalman e a inovação
Coordenada sul do referencial do veículo
Valor da coordenada sul do ponto visto pelo sonar do tubo no
referencial do veículo
Entradas/sensores disponíveis no AUV MARES
Tempo de amostragem mínimo do sonar para a aquisição de fatias
acústicas (dados da imagem)
Ganho integral de controlo de trajectória quando a entrada é a
diferença entre orientação do veículo e a orientação da
característica
Ganho integral de controlo de trajectória quando a entrada é a
diferença entre distância do veículo à característica a seguir e
Ganho diferencial de controlo de trajectória quando a entrada é a
diferença entre orientação do veículo e a orientação da
característica
Ganho diferencial de controlo de trajectória quando a entrada é a
diferença entre distância do veículo à característica a seguir e
Tempo de envio da trama de pedido de dados ao sonar
Tempo de retorno de dados do sonar
Inovação do filtro de Kalman
Velocidade no eixo longitudinal do veículo medida
Velocidade no eixo longitudinal do veículo real
Velocidade no eixo de profundidade do veículo medida
Velocidade no eixo profundidade do veículo real
Ruído branco associado a medições na observação
Ganho de filtro de Kalman
Ruído branco associado à medição sensorial do veículo
Ruído branco associado a medição sensorial do veículo (discreto)
Estado do filtro de Kalman no instante k+1 (discreto)
Estado do filtro de Kalman no instante k (discreto)
Solução homogénea do sistema
xxiv
Solução particular do sistema
Estado estimado no instante k+1 (discreto)
Estado estimado no instante k (discreto)
Derivada do estado estimada no instante t (contínuo)
Erro de estimação no instante k
Observação do ambiente
Observação estimada
Ruído associado à medição da altura ao fundo marítimo na imagem
acústica
Ruído associado à medição da coordenada sul do ponto visto pelo
sonar da característica no referencial do veículo
Ruído associado à medição da distância mínima na imagem acústica
Ruído associado à medição da distância máxima na imagem acústica
Ruído associado à medição da velocidade
Ruído associado à medição da velocidade
Ruído associado à medição da corrente
Ruído associado à medição da corrente
Ruído associado à medição de ou erro relativo de medição de
através da observação
Ruído associado à medição de ou erro relativo de medição de
através da observação
Erro absoluto de medição de através da observação
Erro absoluto de medição de através da observação
Comprimento de onda
Valores próprios da matriz
Ângulo Pitch medido
Ângulo Pitch real
Ângulo Yaw medido
Ângulo Yaw real
Ângulo Roll medido
Ângulo Roll real
Função de transferência do sistema entre os instantes
Ângulo entre a linha vertical perpendicular ao chão e o feixe
incidente do sonar
Ângulo entre o eixo longitudinal do veículo e o feixe incidente do
sonar
Orientação da característica (parede ou tubo) no mundo
Desvio padrão associado à medição da velocidade
Desvio padrão associado à medição da velocidade
xxv
Desvio padrão associado à medição da corrente
Desvio padrão associado à medição da corrente
Desvio padrão associado à medição de
Desvio padrão associado à medição de
Gradiente da função não linear que rege a cinemática do filtro em
ordem ao estado do filtro (tempo contínuo)
Gradiente da função não linear que rege a cinemática do filtro em
ordem ao ruído w (tempo contínuo)
Gradiente da função não linear que rege a cinemática do filtro em
ordem ao estado do filtro (tempo discreto)
Gradiente da função não linear que rege a cinemática do filtro em
ordem ao ruído w (tempo discreto)
Gradiente da função não linear da observação estimada em ordem
ao estado do filtro (tempo discreto)
Gradiente da função não linear da observação estimada em ordem
ao ruído (tempo discreto)
1
Capítulo 1
Introdução
Esta dissertação de mestrado em Engenharia Electrotécnica e Computadores tem como
principal finalidade fundir sensores de navegação do AUV MARES (construído pelo the
OCEANSYS Group FEUP-DEEC) com um sonar de varrimento lateral que dá a capacidade ao
sistema de observação do meio subaquático.
Hoje, os veículos subaquáticos têm uma grande importância quer a nível civil, quer a nível
militar ou de serviços. Desta forma, enormes esforços têm sido desenvolvidos no sentido de os
desenvolver, tornando-os cada vez mais autónomos e capazes de navegar sem ajuda,
possibilitando missões de recolha de dados e pesquisa em ambientes difíceis.
Assim, através desta fusão, pretende-se dotar o veículo com a capacidade de navegar
relativamente a marcas encontradas no meio marítimo. Desta forma, como principal
propósito e oportunidade desta dissertação temos a possibilidade de dar ao veículo
subaquático AUV MARES um maior grau de autonomia, ao fazer com que este navegue no
meio subaquático, relativamente a características já pré-definidas, sem o auxílio de métodos
de localização como por exemplo balizas acústicas.
As características às quais se pretende uma navegação relativa são: um tubo/conduta no
chão do meio de navegação ou uma parede vertical que se encontre a limitar o meio
marítimo.
Nesta dissertação é dada maior ênfase ao estudo dos dados proveniente de um sonar de
varrimento lateral e implementação de algoritmos que permitam extrair de imagens
acústicas, dados provenientes de características marítimas, tubo ou parede. Inserido ainda no
núcleo desta dissertação tem-se o objectivo de desenvolver métodos de navegação, de fusão
sensorial, estimação e de controlo que permitam ao veículo navegar numa trajectória
paralela a uma característica como as referidas.
2 Introdução
1.1- Objectivos
Em suma os principais objectivos desta dissertação são:
Estudo do que já existe no que diz respeito a veículos autónomos, ROVs e AUVs, métodos
de localização e grau de autonomia actual.
Entender a evolução ao longo dos anos da robótica móvel subaquática e delinear a
oportunidade desta dissertação.
Estudo da arte referente à problemática de localização e construção de mapa em
simultâneo.
Identificação dos vários tipos de sonar, dados que podem ser obtidos, principalmente no
que diz respeito ao sonar de varrimento lateral.
Estudo e definição de um método de fusão entre parte sensorial de AUV MARES e
observações provenientes de sonar.
Identificação de limites de operatividade do sonar e estudo de características, tais como
um tubo ou parede, em dados adquiridos pelo sonar.
Modelação e simulação do veículo, imagens acústicas e de trajectórias.
Desenvolver os algoritmos de localização, navegação, controlo e processamento da
imagem proveniente do sonar.
1.2- Estrutura do documento
Esta secção tem o objectivo de descrever a estrutura e organização deste documento,
explicando sucintamente o que é feito em cada capítulo.
No capítulo 2 o estado da arte é relatado. Nele, a localização é dividida em localização
absoluta e relativa. A evolução da autonomia da robótica marítima é descrita com referência
a vários métodos e sensores de localização.
O capítulo 3 descreve o problema de localização e mapeamento em simultâneo (SLAM).
Neste capítulo são também deduzidas as equações do estimador, filtro de Kalman extendido
(EKF).
No quarto capítulo, os dados provenientes de um sonar são estudados e em particular a
informação obtida pelo sonar de varrimento lateral (side scan) é explorada. Neste capítulo
algumas características do sonar de varrimento lateral Imagenex SportScan, equipamento
base desta dissertação, são relatadas.
O capítulo 5 faz referência a um conjunto de operações e algoritmos base para o
tratamento de imagens que, posteriormente são usados no tratamento, segmentação,
esqueletização e extracção de características em imagens acústicas.
No capítulo 6, as equações de dois diferentes filtros, com variáveis de estado distintas,
para duas características e observações diferentes são deduzidas. Assim, um dos filtros usa
como variáveis de estado as coordenadas Este, Sul e profundidade do veículo, no mundo, em
Veículos de navegação subaquática 3
conjunto com o declive e ordenada na origem das características no mundo. O outro filtro usa
como variáveis de estado a distância do veículo à característica, a profundidade do veículo e
finalmente, a orientação da característica no mundo. As duas características abordadas neste
capítulo são: um tubo no chão marítimo e uma parede vertical.
O capítulo 7 apresenta o estudo efectuado do tamanho do tubo na imagem acústica e a
sua variação com a distância entre tubo e sonar (AUV) e com a orientação (pitch e yaw) do
veículo. Neste capítulo, resultados de sintetização/simulação de imagens acústicas são
mostrados.
No oitavo capítulo resultados são apresentados referentes aos limites de operatividade do
veículo, para que o sonar não deixe de visualizar as características(tubo e parede).
Já no capítulo 9 o ruído nas entradas do sistema (sensores do AUV MARES e observações
do sonar) é modelado e a comparação entre o erro de estimação e medição de pitch e yaw é
efectuada.
No décimo capítulo, leis de controlo e seguimento de trajectória para o AUV são
implementadas. Estas leis têm como objectivo que o AUV siga uma trajectória paralela a uma
característica, a uma distância de referência.
Já o capítulo 11 mostra os resultados de simulação e de validação das leis de controlo e
de seguimento de trajectória para diferentes características e correntes marítimas. Este
capítulo serve também para a validação dos estimadores (filtro de Kalman), dimensionados no
capítulo 6.
O capítulo 12 relata a interface de comunicação desenvolvida, entre o Imagenex
SportScan e o computador de bordo do AUV MARES.
No capítulo 13, são mostrados resultados da aplicação de algoritmos de tratamento,
segmentação, esqueletização e extracção de características sobre: uma imagem acústica real
proveniente do CD de suporte do sonar Imagenex SportScan e depois sobre duas imagens
adquiridas no rio Douro, Porto, no dia 21/10/09.
No capítulo 14 é relatado algum trabalho de desenvolvimento futuro e uma possível
implementação final no AUV MARES, enquanto no capítulo 15 é sumarizado o trabalho
desenvolvido e algumas conclusões são retiradas.
1.3- Veículos de navegação subaquática
Os veículos de navegação subaquática tornaram-se hoje em dia ferramentas de pesquisa e
exploração de ambientes hostis ou desconhecidos extremamente poderosos. Este tipo de
veículos é alvo de grandes esforços de desenvolvimento e pesquisa no sentido de os tornar
cada vez mais autónomos, e com maior capacidade de exploração.
Exemplos de documentação de exploração de robótica marítima são [1], que fala de
veículos autónomos do tipo gliders, [2] que trata essencialmente da navegação de veículos
autónomos AUVs, [3] trata da visão computacional aplicada a AUVs, e descreve a fusão
4 Introdução
sensorial como a melhor abordagem à estimação de localização do veículo. Outros exemplos
de documentos referentes a veículos autónomos subaquáticos são: [4] que trata a real
autonomia em veículos de robótica marítima, [5] que descreve leis de navegação para AUVs e
[6] que descreve o AUV MARES, veículo base desta dissertação.
De facto, com o aparecimento de veículos autónomos e a sua contínua evolução no
sentido de os tornar cada vez mais autónomos, acções e missões de pesquisa a nível marítimo
passaram a poder ser feitas com a mínima intervenção humana. Assim, os veículos
subaquáticos foram desenvolvidos e evoluídos e possuindo agora uma enorme importância na
pesquisa, exploração e recolha de amostras debaixo de água.
Segundo [1], a importância de veículos subaquáticos autónomos, reside também na
capacidade que os mesmos têm de fazer recolha de dados, tais como condutividade da água,
poluição, o que permite estudos relacionados com o efeito de metais perigosos, pesticidas e
nutrientes na evolução e crescimento de seres vivos em ambientes subaquáticos. O uso de
uma ferramenta como um AUV é portanto uma ferramenta poderosíssima para a detecção de
poluição marítima.
Também a nível militar, tal como refere [1], a utilização de veículos autónomos é útil
para a detecção de minas, detecção de radioactividade ou substâncias químicas debaixo de
água. O trabalho relatado em [7] trata de tarefas executadas por robots cooperativos, com o
objectivo de detonar minas em meios subaquáticos.
Estas são algumas das características que tornam motivante o desenvolvimento de
veículos marítimos. Em suma, a necessidade constante de exploração marítima sem
intervenção humana e a monitorização necessária das condições da água, levam aos inúmeros
esforços da comunidade de AUVs.
Segundo [5], existem dois tipos essenciais de UUVs (Unnamed Underwater Veichles) os
ROVs e os AUVs.
Embora ambos os veículos se destinem à exploração e execução de tarefas e missões
debaixo de água, são essencialmente aplicáveis e destinados a tarefas distintas tendo em
conta as características especificas de cada tipo de veículo, [5].
A figura 1.1 retrata a aplicabilidade de ROVs e AUVs dependendo da velocidade de
exploração e posicionamento.
AUVs, Autonomous Underwater Vehicle 5
Figura 1.1 Os dois tipos de UUVs (Unnamed Underwater Vehicles). ROVs (Rometely Operated Vehicles) e
AUVs (Autoumous Underwater Vehicles). Ambos os veículos são destinados a operação debaixo de água,
mas pelas suas características são destinados a tarefas diferentes. [5].
1.4- ROVs, Remotely Operated Vehicles
ROVs são veículos destinados a cumprir fundamentalmente tarefas de precisão. Sendo
essencialmente usados para a monitorização e intervenção de instalações referentes à
indústria petrolífera e de gás, [3,5].
São veículos tele-operados através de cabo que liga o veículo à superfície, que fornece a
fonte de alimentação e que permite a troca de sinais de controlo/medida entre o operador e
ROV.
O primeiro ROV foi fabricado em 1950, passando a ser comercializados apenas em 1980,
[5].
1.5- AUVs, Autonomous Underwater Vehicle
Os AUVs por serem um veículo de mergulho livre, que possuem uma alimentação própria,
com menor intervenção humana e com grande certeza de posicionamento são veículos cuja
velocidade de manobra é superior aos ROVs. Assim, são veículos essencialmente dedicados a
mapeamento, exploração, pesquisa e recolha de dados para posteriores investigações.
O primeiro AUV foi construído em 1970. Os primeiros AUVs a serem comercializados
apenas apareceram em 1990 [5].
Nesta dissertação é dada maior ênfase a AUVs uma vez que a base de todo o trabalho é o
AUV MARES, desenvolvido pelo grupo de robótica marítima OCEANSYS (Faculdade de
Engenharia da Universidade do Porto), [6].
O AUV MARES, é constituído por dois motores de propulsão verticais, e outros dois
horizontais que lhe permite um movimento vertical puro e completamente desacoplado do
movimento horizontal. Este AUV é por isso um veículo de propulsão, com 1,5 m de
comprimento, e foi concebido para monitorizar dados relevantes, recolher amostras de água
com os sensores que possui on-board, até uma profundidade máxima de 100 m. Este veículo
possuiu uma velocidade de deslocamento horizontal de 0 a 2 m/s.
A grande inovação do AUV MARES relativamente a outros veículos de propulsão com as
mesmas dimensões é a total independência de movimento vertical e horizontal, devido à
configuração de propulsores que possui.
Em [5], é sugerida a HUGIN (Noruega) como a mais bem sucedida série de AUVs, que se
dedica desde 1997 a AUVs comerciais e desde 2001 a AUVs para aplicações militares.
6 Introdução
Hoje em dia, existem mais de cinquenta tipos de AUVs de pesquisa dos quais se podem
referir alguns veículos tais como: Hydroid’s Remus (USA) ou Kongsberg Simrad`s Hugin 3000
(Noruega), [1].
Outro tipo de AUV, tratado com algum cuidado em [1], é o AUV do tipo glider. Este tipo
de veículo consegue navegar longas distâncias, sem necessitar de potência de propulsão.
Nestes veículos são usadas alterações mecânicas e/ou eléctricas para provocar o seu
movimento. Alguns veículos do tipo glider usam a posição das baterias de alimentação para
controlar o seu nível de flutuação. Exemplos desses veículos são: Spray e Scolum
Battery/Electric gliders, que controlam o ângulo de pitch e roll do veículo através da
translação e rotação das baterias de alimentação, [1].
A figura 1.2, representa o movimento de um veículo baseado no método Spray glider, que
permite a navegação de longas distâncias com pouca energia de consumo.
Figura 1.2 Movimento de um veículo baseado no método Spray glider, em que se recorre à alteração da
geometria do veículo para o deslocamento com baixos consumos. [1].
7
Capítulo 2
Estado da Arte
Alguns veículos, tal como ROVs ( Remotely Operated Vehicles ) não são capazes de
navegar sem o cabo de alimentação. Outros veículos tal como AUVs (Autonomous Underwater
Vehicles) não são capazes de navegar sem a ajuda de métodos de localização absoluta, tal
como GPS ou Balizas acústicas, [8]. Na realidade estes veículos têm um determinado grau de
autonomia, mas não podem ser ditos de verdadeiramente autónomos.
A verdadeira definição de autonomia será, segundo [9], a capacidade que o veículo tem
de se movimentar e localizar no mundo, de forma autónoma, com o máximo de certeza de
localização, sem preparação do meio ambiente e sem limites. Isto é, ser capaz de se
movimentar no mundo sem estar obrigado a um volume restrito do espaço, imposto muitas
vezes por métodos de localização absoluta, que possuem um alcance máximo.
È nesta definição de autonomia que surge a oportunidade deste trabalho. Tem-se o
objectivo de, usando um sonar de varrimento lateral, dotar o veículo AUV Mares com um
maior grau de autonomia, possibilitando-lhe navegação relativa a características existentes
no meio marítimo, como por exemplo condutas e paredes.
O uso de AUVs teve um crescimento rápido quer a nível civil, quer a nível militar nos
últimos anos, segundo [4]. De facto, os AUVs, por serem veículos cuja autonomia esta mais
próxima da verdadeira autonomia, são uma boa alternativa a veículos tais como ROVs.
Consistindo por isso, segundo [4], uma alternativa segura, fiável e barata, que aproxima o
veículo marítimo do veículo ideal.
Assim, num cenário militar, a resolução do problema de autonomia significa, por exemplo,
que o militar não é exposto a ambientes perigosos, hostis e desconhecidos, facilitando a
recolha de dados em linhas inimigas [4].
Num cenário civil, um verdadeiro veículo autónomo, disponibiliza facilidade, agilidade e
flexibilidade de exploração de meios desconhecidos. Na sua generalidade, a evolução do AUV
no sentido de o tornar verdadeiramente autónomo, permitirá, tal como é referido em [9],
8 Estado da Arte
cobrir missões de longa duração, em áreas desconhecidas e hostis, com grande nível de
autonomia e capacidade de decisão.
A autonomia em robótica marítima divide-se em três níveis, esses níveis são [4]:
Autonomia energética: corresponde a dotar o veículo de fontes de energia próprias e
fiáveis, e/ou, tornar o consumo de baixa potência. Este tipo de autonomia, não será fonte
de estudo nesta dissertação.
Autonomia de navegação: representa a capacidade do veículo de navegar com precisão e
portanto, com um baixo erro de estimação. Este tipo de autonomia será o núcleo
fundamental de estudo desta dissertação.
Autonomia de decisão: trata-se da capacidade de decidir e agir, em vários cenários
possíveis. Capacidade de decidir quais as trajectórias óptimas a executar. Este tipo de
autonomia também será abordado nesta tese.
Portanto, a verdadeira autonomia em veículos submarinos tem sido alvo de grandes
esforços de desenvolvimento em torno de AUVs. Exemplos disso são [8-14], que tratam
essencialmente o principal objectivo desta dissertação, o problema de SLAM (Simultaneous
Localization and Mapping) e CML (Concurrent Mapping and Localization), isto é, a localização
e construção do mapa do ambiente em simultâneo. De facto, segundo o autor de [9], a
resolução de problemas de SLAM/CLM dotam o veículo com um maior grau de autonomia, e
portanto, com maior capacidade de movimento, sem restrições de movimento no mundo, com
preparação mínima do ambiente e com bastante certeza de localização.
O problema de SLAM e CLM serão tratados com mais cuidado no Capitulo 3.
2.1- Localização
Os veículos submarinos autónomos, AUV (Autonomous Underwater Vehicle), têm hoje,
como já referido, uma enorme importância na pesquisa e recolha de dados referentes à costa
e manta marítima. Os dados recolhidos são apenas fiáveis caso a recolha seja feita em
conjunto com uma grande precisão de localização do veículo. Assim, uma das principais
fontes de trabalho relacionada com AUVs passa pela sua localização, de forma mais precisa e
autónoma possível.
A precisão de localização é portanto de extrema importância para o alcance da
verdadeira autonomia do veículo e então para o seu sucesso. Assim, segundo [7], a verdadeira
questão associada à localização é “onde estou?” no meio que rodeia o veículo.
Desta forma, ao longo dos anos em AUVs viu-se uma evolução contínua no que diz respeito
à sua autonomia e precisão de localização.
2.1.1- Referencial Mundo e do Veículo
Localização 9
A localização do veículo é feita relativamente a dois referenciais, um fixo à terra,
referencial mundo, e outro móvel com o veículo, referencial do submarino. O referencial fixo
à terra movimenta-se à velocidade da mesma, e portanto considera-se parado, é portanto,
um referencial inercial. O referencial do submarino tem origem no centro de massa do AUV, é
por isso um referencial não inercial, móvel ao longo do tempo com o veiculo. A orientação
deste referencial é dada pela orientação do veículo.
O estudo da dinâmica do veículo aparece dividida em cinemática, que trata da geometria
do movimento do veículo e a cinética que corresponde ao estudo do modelo cinético do
veículo, [15]. Nesta tese o foco principal incide na cinemática do veículo.
Para o estudo da cinemática surge a necessidade de definir uma notação adequada e
coerente. A notação usada baseia-se em [15], que define dois referencias (mundo e
submarino) de acordo com a figura 2.1.
O eixo este percorre o veículo longitudinalmente, da ré para a frente, enquanto o eixo
sul percorre o veículo transversalmente para estibordo. O eixo representa o eixo de
profundidade e tem sentido do centro de massa do veículo para baixo.
Em [15], são referidos também os ângulos de rotação do veículo em torno do referencial
do mundo. Esses ângulos são denominados de ângulos de Euler (pitch, yaw e roll).
O ângulo yaw representa a rotação do veículo no plano horizontal, isto é, no plano
definido pelos eixos e . Representa então, a rotação do veículo em torno do eixo de
profundidade, eixo .
O ângulo de roll corresponde ao ângulo de rotação do veículo em torno do eixo este
do referencial mundo.
Por sua vez, o ângulo de pitch representa a rotação do veículo em torno do eixo que
atravessa o veículo transversalmente e passa pelo centro de massa do mesmo. Corresponde
portanto, à rotação em torno do eixo do referencial do mundo.
Relativamente aos referenciais definidos em [15], nesta dissertação os mesmo
referenciais são alterados de forma a facilitar a compreensão do movimento e trajectória do
AUV. Deste modo, em [15], o referencial mundo é constituído pelos três eixos ,
nesta tese o mesmo conjunto de três eixos será dado por, . O mesmo se passa com o
referencial do submarino em que , é substituído por . A figura 2.1,
representa os dois referenciais, mundo e submarino, que serão usados no decorrer desta
dissertação.
10 Estado da Arte
Figura 2.1 Referencial Absoluto (fixo ao mundo e parado). Referencial do AUV (móvel com o AUV e
origem no centro de massa do veículo).
A tabela seguinte, tabela 2.1, refere sumariamente a nomenclatura usada para cada
referencial:
Tabela 2.1 Ângulos de rotação em torno dos eixos E, S e H e respectiva simbologia.
Eixos Ângulos de Rotação Simbologia
Referencia Mundo
E Roll ф
S Pitch θ
H Yaw ψ
Referencial Veículo
e Roll-rate p
s Pitch-rate q
h Yaw-rate r
Assim, qualquer rotação do referencial do mundo para o do submarino pode ser
representada por:
(2.1)
O que dá origem à matriz de rotação:
(2.2)
(2.3)
Localização 11
A partir da expressão da matriz de rotação é possível definir uma relação que estabelece
as coordenadas de um ponto qualquer no referencial do mundo em relação às coordenadas
desse ponto no referencial do submarino:
(2.4)
em que representa a translação do veículo relativamente ao referencial do mundo.
(2.5)
Como, (rotação em torno do eixo de um ângulo ) é uma matriz quadrada cujo
determinante é igual a , é não singular, e portanto invertível. Assim, a matriz de
rotação também é invertível, o que permite obter a relação inversa isto é, as coordenadas
de um ponto no referencial do submarino sabendo as suas coordenadas no referencial do
mundo. Isto é:
(2.6)
Derivando 2.4, a velocidade do veículo no referencial do mundo a partir das velocidades
do veículo no seu referencial são dadas por:
(2.7)
em que e representam as velocidades do veículo, no referencial mundo e veículo,
respectivamente. Então o modelo cinemático do veículo é dado por:
(2.8)
2.1.2- Localização Relativa e Absoluta
No âmbito da localização podemos ainda definir dois modos de localização do AUV, a
localização relativa e a localização absoluta.
A localização relativa corresponde á posição do AUV no instante actual em relação à
posição anterior, isto é, em relação à localização no mundo um instante de amostragem
anterior. Assim, a posição do veículo no mundo, é dada pela soma sucessiva de posições
relativas do veículo, o que consiste por si só uma aproximação da verdadeira posição do
veículo. Para além do mais, a localização relativa ao constituir uma soma da posição do AUV
em relação à sua posição anterior, é uma acumulação sucessiva de erros de estimação a cada
instante, [16]. Existem assim, uma série de sensores usados na localização relativa, tal como
sensores de navegação inercial, INS (Inertial Navigation System), dos quais se podem referir
acelerómetros e giroscópios, e sensores DVL (Doppler Velocity Log), abordados também em
[16]. Na secção 2.2.1 estes sensores são abordados com mais cuidado.
A localização absoluta consiste na localização em cada instante de tempo, da posição no
mundo do veículo. Desta forma, ao contrário da localização relativa, a localização absoluta
12 Estado da Arte
não esta correlacionada no tempo e então os erros de estimação da posição num instante de
tempo não se relacionam/somam com erros de localização anteriores. Segundo [17], a
localização absoluta possibilita que o veículo se localize no referencial do mundo
independentemente de anteriores movimentos e localizações. A localização relativa por estar
correlacionada no tempo leva a um crescimento sem limites do erro de posição.
Alguns métodos da localização absoluta são baseados em balizas activas ou em ajuste de
mapas. Estes métodos serão também abordados com mais cuidado na 2.2.3.
2.2- Evolução da autonomia na Robótica Marítima
Ao longo do tempo a robótica marítima tem sofrido uma contínua evolução no sentido de
tornar os veículos submarinos cada vez mais autónomos e portanto, com capacidade de
localização cada vez mais exacta.
A evolução da autonomia de veículos pode portanto ser descrita pelas seguintes fases, [9]:
Sensores dead-reckoning e sensores de atitude.
Marcos artificiais e/ou balizas activas ou passivas.
Marcos naturais, localização com mapas a priori.
SLAM / CLM, localização e construção de mapa em simultâneo.
2.2.1- Sensores dead-reckoning
Muitas vezes os veículos submarinos estão equipados com um número elevado de sensores
pouco apropriados, que introduzem grandes erros na estimação e limitam a navegação a um
volume limite no espaço.
Alguns sensores e técnicas de posicionamento de veículos são descritos em [16]. Esses
sensores e técnicas são divididos em Localização absoluta e relativa.
Assim, os sensores de dead-reckoning, tais como os sensores de navegação inercial (INS)
ou sensor de efeito de Doppler (DVL) constituem sensores de Localização relativa no espaço.
Exemplos de sensores de navegação inercial são os acelerómetros e giroscópios, [16].
2.2.1.1- Acelerómetro
O Acelerómetro é um sensor cuja saída é proporcional à variação de velocidade, isto é,
proporcional à aceleração do veículo. Depois de integrar duas vezes obtém-se o valor da
distância percorrida desde o instante de amostragem anterior. Tal processamento de sinal do
sensor, torna-o pouco fiável, principalmente para acelerações pequenas, uma vez que
juntamente com o sinal do sensor, também todo o ruído é integrado duas vezes, o que o torna
o erro maior.
Evolução da autonomia na Robótica Marítima 13
Os acelerómetros possuem na generalidade um mau desempenho para aplicações
relacionadas com navegação de robôs em que a velocidade e acelerações são pequenas. Um
estudo informal da University of Michigan revelou mesmo que os acelerómetros, possuem um
mau rácio entre sinal e ruído para baixas acelerações, [16].
Além do mais o acelerómetro é um sensor bastante sensível a perturbações verticais.
2.2.1.2- Giroscópio
No giroscópio a saída é proporcional da variação de orientação no tempo, ou seja, fornece
informação sobre a velocidade de rotação angular sobre os eixos do sensor.
Mas, tal como os acelerómetros, para a obtenção do ângulo de rotação entre intervalos de
amostragem, é necessário integrar uma vez o sinal do sensor, o que implica também a
integração do ruído.
Existem ainda assim, giroscópios de alta precisão, que possuem o inconveniente de
serem caros. È possível obter incertezas máximas de 1 milha náutica por hora de
operação, para determinados sensores, com custos entre 50 a 70 mil dólares, [16].
2.2.1.3- Unidade Inercial de Medida IMU
Uma unidade inercial de medida, IMU (Inertial Measurement Unit), é constituída por três
giroscópios e por três acelerómetros, [4]. Assim, cada acelerómetro mede uma aceleração
linear enquanto o giroscópio mede a velocidade de rotação de cada um dos três eixos. Com
uma unidade inercial é possível saber então, cada uma das velocidades de rotação e linear em
cada eixo, que depois de integradas permitem obter a deslocação relativa.
Além de possuir todos os problemas e qualidades inerentes a acelerómetros e giroscópios,
uma unidade inercial de medida corresponde à medida de acelerações no referencial do
veículo, quando de facto a medida pretendida é a medida no referencial do mundo. Assim,
além de a unidade inercial de medida dar medições com ruídos por vezes elevados
(dependendo da IMU), dá essas medidas num referencial errado, sendo necessário fazer a
conversão para o referencial pretendido, o referencial do mundo.
Assim, segundo [4], uma unidade inercial de medida, IMU, pode ser classificada em duas
classes, de acordo com erros de medida:
> 10 nmi/h, 1º/h para giroscópio e 1 mg/h para acelerómetro.
10 nmi/h, 0.005º/h para giroscópio e 30 μg/h para acelerómetro.
Devido ao erro associado a unidades inerciais de medida, há necessidade de integração de
sensores redundantes de medida, tais como o sensor por efeito de Doppler, DVL. Esses
sensores podem ser integrados por um filtro de Kalman, que é abordado no capítulo 3 desta
dissertação. Em [4], é sugerido um sistema de navegação que integra uma unidade inercial de
medida, IMU, e outros sensores redundantes de medida. Esse sistema é HUGIN.
14 Estado da Arte
2.2.1.4- Sensor DVL
Os sensores por efeito de Doppler, Doppler Velocity Log (DVL), são sensores que usam o
efeito de Doppler para determinar a velocidade do veículo relativamente ao fundo do mar, o
que dá na realidade a velocidade do veículo pretendida. Este sensor tal como os sensores de
navegação inercial obrigam a integração do seu sinal para a obtenção da distância percorrida,
entre períodos de amostragem.
Os sensores de dead-reckoning são sensores extremamente usados em veículos robóticos,
mas sempre em parceria com outros sensores e métodos de localização. De facto, é vantajoso
o uso destes sensores uma vez que possuem uma taxa de amostragem muito elevada o que
confere ao AUV períodos de amostragem pequenos. Em contrapartida, são sensores que levam
a um crescimento do erro de estimação da posição sem limites, [9], o que obriga ao uso de
outros sistemas em paralelo de localização. Surgem assim os sensores de localização absoluta,
como uma ajuda aos sensores de localização relativa.
2.2.2- Sensores de atitude
Os sensores de atitude, aparecem como elementos auxiliares de sistemas de navegação
inercial e correspondem por isso a sensores de localização absoluta do veículo, [16]. Exemplos
de sensores de atitude são as bússolas magnéticas que funcionam baseadas no campo
magnético terrestre e que são pouco imunes a linhas de potência e a perturbações verticais
no movimento do veículo. Apesar de baratas, as bússolas magnéticas, podem chegar a erros
até , de que é exemplo o sensor SE-10, referido em [15].
2.2.3- Marcos e/ou balizas activas
Com a evolução da autonomia de veículos surgem dois novos métodos de navegação, a
navegação baseada em marcos, divisíveis em marcos naturais e artificiais, e a navegação
baseada em balizas activas, onde podemos destacar métodos como balizas acústicas e o GPS
(Global Positionning System).
2.2.3.1- Navegação baseada em marcos
A navegação baseada em marcos baseia-se na detecção de marcos ou características do
chão marítimo. Este tipo de navegação corresponde a um método de localização absoluta.
A localização baseada em marcos obriga à existência de uma base de dados
correspondente a cada marco, em que a sua localização no mundo é guardada. Quando uma
característica/marco é localizado, através de visão artificial ou sonar por exemplo, a sua
posição no referencial do veículo é medida e portanto, com o conhecimento da posição do
Evolução da autonomia na Robótica Marítima 15
marco no mundo é possível saber, com um determinado grau de certeza, qual a posição do
veículo no referencial mundo.
A distância medida entre AUV e o marco é dada por:
(2.9)
em que é o ponto visto no referencial do mundo e corresponde ao mesmo ponto mas
visto no referencial do veículo.
Assim, podemos enumerar algumas vantagens e desvantagens da localização baseada em
marcos.
È um sistema computacionalmente pesado, principalmente a navegação baseada em
marcos naturais, e obriga geralmente ao uso de algoritmos de segmentação de imagem e
extracção de características, tal como o uso de visão artificial ou sonar para detecção de
marcos [16].
Apesar de ser um sistema barato, e sem necessidade de preparação do ambiente, no caso
da navegação baseada em marcos naturais, é muito susceptível a alterações ambientais e
sensível a condições do ambiente tal como a luminosidade.
Além do mais, é o tipo de localização que não esta constantemente disponível, uma vez
que a detecção só pode ser feita quando o veículo se encontra perto do marco. È por isso um
método de localização intermitente, muitas vezes auxiliado com sensores de localização
relativa, tais como dead-reckoning.
Uma vantagem é o facto de os marcos artificiais poderem ter informação codificada, tais
como formas geométricas ou código de cores, bandas reflectoras, [16].
Apesar de ser um método que funciona bastante bem por exemplo em robótica terrestre,
com a robótica submarina, a navegação baseada em marcos artificias é de difícil
implementação, uma vez que a preparação do ambiente é complicada.
Surge então a localização baseada em balizas activas.
2.2.3.2- Navegação baseada em Balizas activas
Na localização baseada em balizas activas, existem dois métodos essenciais de localização
do AUV, esses métodos são a triangulação e a trilateração, [16,17].
A trilateração, corresponde à detecção do AUV através da medição das distâncias às
balizas.
A triangulação, consiste na localização do veículo, medindo o ângulo que a orientação do
veículo faz com cada uma das balizas. Um trabalho português que usa a triangulação como
método de localização absoluto, mas em robótica terrestre, é [17].
A figura 2.2 a), mostra um exemplo de trilateração, enquanto a figura 2.2 b), representa
um exemplo de triangulação também com três balizas.
16 Estado da Arte
a) b)
Figura 2.2 Técnicas de localização absoluta baseada em balizas activas, a) Trilateração, b)Triangulação.
[18].
Teoricamente, apenas três balizas chegam para localizar qualquer veículo no espaço,
quer seja por técnicas de trilateração ou triangulação, [16, 17].
Dois exemplos de trilateração são: sistemas baseados em balizas acústicas e o GPS.
As balizas acústicas, em robótica marítima são bóias acústicas que medem a diferença de
tempo entre a emissão e recepção de sinais acústicos. Esta diferença, permite através do
velocidade de propagação das ondas sonoras, saber a distância entre as balizas e o AUV. Essa
distância é dada por:
(2.10)
em que é o tempo entre emissão e recepção dos impulsos acústicos, é a velocidade de
propagação da onda no meio.
A maior dificuldade das balizas acústicas aplicadas a navegação marítima é, precisamente
a velocidade de propagação da onda na água, que não é constante. Caso o veículo navegue a
profundidades elevadas, a variação de temperatura da água entre as bóias e AUV é
significativa e suficiente para variar a velocidade da onda sonora na água, introduzindo erros
na estimação da distância . Segundo a experiência efectuada por [19], a velocidade do
som, em soluções aquosas, pode variar aproximadamente entre 1426 m/s a 1535 m/s, para
variações de temperatura de 5º a 45º.
As balizas acústicas apesar de permitirem uma localização permanente, limitam o
movimento do veículo a um espaço restrito no mundo, devido ao seu limite de alcance. Esta
característica limita a autonomia do AUV, e pode ser resolvida por exemplo com outro
método de trilateração, o GPS.
O GPS (Global Positioning System) consiste num conjunto 24 satélites, que transmitem
sinais de alta frequência, com informação codificada, contendo a localização momentânea do
satélite e o tempo correspondente á emissão do sinal. Por métodos de trilateração é possível
determinar a posição de um veículo no espaço, desde que o mesmo possua um receptor GPS,
[9,16].
Evolução da autonomia na Robótica Marítima 17
Segundo [16], podemos obter com o GPS incertezas médias até 22 mts. Uma variante de
GPS é denominado de DGPS (Diferential Global Positioning System), que permite reduzir o
erro para valores entre 4 a 6 mts.
Dá-se o aparecimento então da navegação baseada em mapas.
2.2.3.3- Navegação baseada em mapa/terreno
A Navegação baseada em terreno é constituída essencialmente por duas fases:
Construção do Mapa sabendo a localização do veículo no mundo por outros meios de
localização.
Localização do veículo no mundo baseada no mapa construído a priori.
A navegação baseada em terreno é essencialmente motivada pela necessidade de
melhorar a qualidade de localização e aumentar da autonomia do AUV (veiculo submarino),
sendo discutida e desenvolvida à mais de 25 anos, [20].
A primeira fase da navegação baseada em terreno consiste na construção de um mapa do
terreno. Para tal, é necessário conhecer a posição do veículo no mundo. Este conhecimento é
feito com o auxílio de métodos mencionados anteriormente, tal como posicionamento relativo
baseado em sensores dead-reckoning ou absoluto, como GPS ou balizas acústicas.
O mapa depois de construído permite uma navegação do veículo com métodos baseados
em visão artificial ou imagens acústicas provenientes de sonares. Assim, a segunda fase de
navegação baseada em terreno, permite estimar a posição actual do veículo no referencial do
mundo através da comparação entre o mapa construído no momento actual (mapa em redor
do veículo) e o mapa construído a priori.
Um dos desafios mais importantes da navegação baseada em terreno é a comparação
entre o mapa existente e guardado a priori, com o mapa actual, construído pelo veículo, [16].
No trabalho referente a [20], propõe-se a navegação baseada em terreno, fazendo-se a
comparação entre a imagem acústica e o mapa construído a priori. Assim, a informação
recolhida do sonar, é pesada probabilisticamente usando técnicas de associação de dados,
como é o caso do filtro de Kalman.
Trabalhos como 87-14] e [20-23] baseiam-se na navegação baseada em terreno.
Em suma, a localização baseada em terreno usa paralelamente sensores de actualização
da posição do veículo, como sensores de dead-reckoning e sensores baseados em imagem
artificial ou acústica para a construção do mapa em redor do veículo e posterior identificação
e extracção de marcos existentes no terreno.
O trabalho realizado em [23] é um exemplo do uso de sensores de localização relativa
paralelamente com sensores de identificação de marcos naturais. Em [23], uma unidade de
medida inercial é usada, juntamente com um sonar, responsável por obter imagens acústicas
do meio em redor do veículo submarino. Ambos os métodos são combinados através de um
Filtro de Kalman.
18 Estado da Arte
Tal como descrito anteriormente, os sensores de dead-reckoning permitem uma
actualização com taxa de amostragem elevada e então uma previsão da posição do submarino
rápida, embora com um crescimento sem limites de erro.
Com o sonar, ou visão artificial a imagem do mundo é obtida entre intervalos de tempo
maiores, sendo a observação usada para uma melhor estimação da posição do veículo.
Existem um conjunto de métodos que usam essas duas vertentes da localização baseada
em terreno. Alguns exemplos desses métodos são baseados em probabilidades, tal como
localização de Markov, filtros do tipo PDAF ( Probabilistic Data Association Filter ). Outro
método usado é o Filtro de Kalman ou EKF ( Extended Kalman Filter ) que será abordado com
maior cuidado no capitulo 3.
O filtro PDAF é similar ao filtro de Kalman no sentido em que usa a ultima estimação
para prever ou estimar o estado actualizado do sistema. No entanto o filtro PDAF usa uma
janela de validação e então todas as medições na vizinhança do estado estimado são
consideradas, [20].
19
Capítulo 3
SLAM - Simultaneous Localization And Mapping
Os últimos esforços da robótica, quer subaquática, quer terrestre, estão virados para o
problema que junta as duas fases da localização baseada em terreno. Isto é, na resolução do
problema de SLAM, localização e construção do mapa do ambiente em simultâneo, objectivo
também desta dissertação de mestrado.
SLAM e CLM, ambos os problemas têm o mesmo objectivo e conferem a verdadeira
autonomia ao AUV. O problema de SLAM (Simultaneous Localization and Map Building) é
tratado em [9], aplicado a um AGV, enquanto que, CML (Concurrent Mapping and
Localization) é tratado no [8], em um AUV. Outros trabalhos realizados pela comunidade de
SLAM são [10-13].
As comunidades científicas que estudam SLAM e Robótica encontram-se em constante
crescimento, [24] e [25] são repositórios de algoritmos e dados referentes a essas
comunidades.
Com a resolução de SLAM/CML o AUV passa a ter um grau de autonomia mais elevado e
poderá ser lançado em missões de pesquisa e/ou recolha de dados com a mínima preparação,
sem limites de navegação e com uma grande certeza de estimação da sua posição, permitindo
a integração e cooperação entre localização relativa e absoluta com a localização baseada em
terreno.
Obtendo-se estimações da posição do veículo melhores, a cooperação entre métodos de
localização absoluta, como GPS e balizas acústicas, e a estimação da posição do veículo pode
ser feita no sentido de corrigir os métodos de localização absoluta.
20 SLAM - Simultaneous Localization And Mapping
3.1- Filtro de Kalman
Nesta dissertação procura-se obter a localização do AUV MARES e ao mesmo tempo
efectuar a construção e/ou refinamento do mapa do ambiente (SLAM). Para tal é necessário
usar um método de estimação do estado do veículo em conjunto com a estimação dos marcos
naturais do ambiente. O método estudado e usado foi o filtro de Kalman, a sua vertente EKF
(Extended Kalman Filter). Esta vertente, descrita em [26] e no capítulo “Kalman Filter” de
[27], consiste no Filtro de Kalman em que o vector de estado é constituído não apenas com
informação do veículo, da sua posição e orientação, mas também com a informação dos
marcos naturais detectados e identificados. Assim, a estimação passa a ser não só do veículo,
mas também do ambiente, o que de facto consiste na resolução do problema de SLAM, já que
existe localização e construção do mapa do ambiente ao mesmo tempo. O EKF será abordado
com mais cuidado na secção 3.2.
Os trabalhos referentes a [8-14] usam o filtro de Kalman como método para a combinação
entre a informação dada por sensores de dead-reckoning e as características do terreno
obtidas por imagens acústicas provenientes de um sonar.
3.1.1- Estrutura do Filtro de Kalman
O filtro de Kalman é constituído por dois andares essenciais:
Estimação.
Actualização.
A estimação corresponde ao andar em que os sensores de localização relativa (sensores
dead-reckoning) são usados. Tal como em [23], o veículo poderá possuir uma unidade de
navegação inercial, INS, e/ou sensores baseados no efeito de doppler, DVL. Estas unidades
são usadas no andar de estimação e levam a uma estimação do estado do sistema em que o
erro de estimação cresce sem limites pela integração sucessiva do ruído dos sensores.
Para diminuir o erro de estimação é necessário então o segundo andar do filtro de
Kalman, a actualização. A actualização é feita geralmente a uma frequência mais baixa que a
estimação, mas permite a redução do erro de estimação do estado do sistema. A actualização
é feita sempre que um marco natural é detectado e conforme a confiança que se tem no
sistema de observação, menor será o erro de estimação do estado do veículo depois de uma
actualização.
Este andar é também responsável pela construção do mapa em simultâneo com a
localização, uma vez que, assim que, um novo marco natural é detectado, esse marco passa a
estar associado ao vector de estado do sistema, formando-se assim o filtro de Kalman
estendido, EKF.
Filtro de Kalman 21
As observações são efectuadas recorrendo a visão artificial ou através de imagens
acústicas obtidas por um sonar. O sonar é usado para as observações do ambiente no trabalho
desenvolvido em [23].
Numa vertente terrestre, no trabalho português [28] é feita a fusão entre a odometria de
um robot diferencial e a visão de marcos através de filtro de Kalman (EKF).
A figura 3.1 representa a estrutura do filtro de Kalman descrito.
Figura 3.1Estrutura do Filtro de Kalman, Estimação e Actualização.
3.1.2- Equações do filtro de Kalman
Nesta secção as equações do filtro de Kalman são deduzidas e tal como a sua estrutura
obtém-se as equações de estimação e de actualização do filtro.
O filtro de Kalman considera o ruído aleatório, ruído branco, tanto do processo,
proveniente de sensores de dead-reckoning, como o ruído branco proveniente do processo de
observação.
Ruído branco, ou ruído aleatório é ruído associado a determinada medida ou processo cuja
característica principal é a sua aleatoriedade. Ser aleatório, implica ser não determinístico. O
facto de ser não determinístico resulta num erro de medida ou estimação do processo. Este
sinal é modelado como tendo uma função densidade de probabilidade caracterizada por uma
distribuição normal de média nula e desvio padrão .
22 SLAM - Simultaneous Localization And Mapping
As equações de estimação são inicialmente determinadas em tempo discreto, e apenas
depois são derivadas as respectivas equações de estimação em tempo contínuo.
3.1.2.1- Estimação em tempo discreto
O modelo do processo é representado por uma dinâmica não linear, em tempo discreto:
(3.1)
em que é o estado no instante , é o estado no instante e a entrada.
é o ruído branco da entrada e obedece a:
(3.2)
O vector de estado é constituído pelo estado do veículo e pelas características que
compõem o mapa que simultaneamente será construído.
O sistema considerado é não linear e pode ser aproximado por série de Taylor em torno do
valor de estado esperado, ou seja, o estado estimado .
Obtemos assim a aproximação por série de Taylor:
(3.3)
em que , é o gradiente de função que exprime a dinâmica do sistema, em tempo
discreto, em ordem ao vector de estado, com . é o gradiente da função
de dinâmica, em tempo discreto, em ordem ao ruído branco .
é o valor esperado do ruído e é nulo por definição de ruído branco.
é o erro de estimação.
Como os termos de alta ordem são desprezáveis, obtemos o estado:
(3.4)
Deste modo pela equação 3.4, obtém-se o valor esperado do estado:
(3.5)
(3.6)
Obtemos assim o erro de estimação, que será dado por:
(3.7)
(3.8)
È então possível chegar à expressão da co-variância do erro de estimação:
(3.9)
Filtro de Kalman 23
Assim, simplificando 3.9, obtém-se a co-variância do erro de estimação:
(3.10)
em que e , uma vez
que o erro de estimação, não esta correlacionado com o ruído branco, no mesmo instante de
tempo, o instante .
Em suma, as equações de estimação obtidas para um sistema não linear são:
(3.11)
(3.12)
3.1.2.2- Estimação em tempo continuo
A dinâmica do sistema em tempo continuo é representada também, por uma dinâmica não
linear igual a:
(3.13)
em que é a derivada do estado no instante de tempo t, é o estado no instante t e
é a entrada. é o ruído branco e por definição:
(3.14)
Por decomposição em série de Taylor, em torno do valor esperado do estado no instante
de tempo ( ), desprezando os termos de alta ordem obtém-se a aproximação da
derivada do estado:
(3.15)
(3.16)
O valor esperado da derivada do estado será dada por:
(3.17)
(3.18)
Definindo um sistema em que a derivada do estado é dada pela função de transferência
, isto é:
(3.19)
Definindo a função de transição do sistema como sendo a função que permite estimar o
estado do sistema no instante a partir do conhecimento do estado em , com um sistema
descrito pela equação 3.19, sem entradas, então essa matriz de transição define a seguinte
relação, [26]:
(3.20)
24 SLAM - Simultaneous Localization And Mapping
em que correspondente à matriz de transição do sistema. Desta forma podemos
descrever a derivada do estado por:
(3.21)
(3.22)
Assim, chegamos à relação entre a derivada da matriz de transição e a própria matriz de
transição:
(3.23)
(3.24)
A solução do sistema descrito em 3.19 é igual à soma da solução homogénea com a
solução particular do mesmo (devido a entradas e a ruído). A solução homogénea é dada por:
(3.25)
A solução particular é obtida para um . Numa situação destas, a variação sentida
no estado é dada por:
(3.26)
Pela matriz de transição do sistema obtemos:
(3.27)
(3.28)
Assim a solução particular será dada pela equação:
(3.29)
Dando origem à solução do sistema final igual a:
(3.30)
A passagem do sistema em tempo contínuo para uma formulação discreta, é feita através
da seguinte expressão, [26]:
(3.31)
Quando o sistema em tempo discreto torna-se num sistema em tempo continuo.
Tendo em consideração que , com igual à matriz identidade, obtém-se:
(3.32)
(3.33)
Filtro de Kalman 25
Se então:
(3.34)
A matriz de transição, por sua vez, em tempo discreto, é descrita pela seguinte equação:
(3.35)
(3.36)
com .
Assim, tendo em consideração a definição de derivada, é possível chegar à expressão que
relaciona a matriz de transição em tempo discreto com contínuo.
(3.37)
(3.38)
(3.39)
Recorrendo à expressão de co-variância do erro de estimação em tempo discreto:
(3.40)
Quando obtem-se:
(3.41)
(3.42)
(3.43)
Quando :
(3.44)
Em suma, podemos reescrever as equações do andar de estimação do filtro de Kalman em
tempo contínuo:
(3.45)
(3.46)
3.1.3- Equações de Actualização
Definindo a observação do meio como um sistema não linear:
(3.47)
em que é o ruído branco da observação e obedece a:
26 SLAM - Simultaneous Localization And Mapping
(3.48)
Pela decomposição em série de Taylor, em torno do valor esperado do estado da
estimação ( ) obtém-se:
(3.49)
em que é o gradiente de função que exprime a observação, em ordem ao vector de
estado, com . é o gradiente da observação, em ordem ao ruído
branco. é o valor esperado do ruído e é nulo por definição de ruído branco.
é o erro de estimação no instante .
Como os termos de alta ordem são desprezáveis a observação estimada é igual a:
(3.50)
(3.51)
Definindo a inovação como:
(3.52)
Então poderemos definir o estado estimado após uma nova observação como sendo:
(3.53)
onde aparecem dois termos de correcção do estado, os ganhos do filtro de Kalman,
e .
A partir do erro de estimação do estado:
(3.54)
(3.55)
(3.56)
Calculando o valor esperado de ambos os membros:
(3.57)
(3.58)
(3.59)
Desta forma, pela combinação das 3.53 e 3.59, obtemos o estado actualizado após a
observação:
Filtro de Kalman 27
(3.60)
(3.61)
Mas a actualização da matriz de co-variância do erro de estimação também terá de ser
determinada. A co-variância do erro depois da actualização é dado por:
(3.62)
A partir das equações 3.55 e 3.59 obtemos o erro de estimação:
(3.63)
Através de 3.62 e 3.63 é obtida a co-variância do erro de estimação após a actualização:
(3.64)
(3.65)
Surgem agora novas definições descritas por:
(3.66)
(3.67)
(3.68)
(3.69)
Resta determinar o valor do ganho de Kalman , a co-variância da inovação
e a correlação entre o estado e a inovação .
O valor de correcção do filtro de Kalman tem como finalidade minimizar a co-variância do
erro de estimação depois da actualização. Essa minimização obtém-se ao igualar a zero a
derivada da co-variância do erro de estimação em ordem ao ganho do filtro de Kalman.
(3.70)
O resultado da minimização permite-nos saber o ganho do filtro óptimo:
(3.71)
(3.72)
(3.73)
Desta forma, simplificando 3.65, obtemos a co-variância da actualização:
(3.74)
Resta então o cálculo de e :
28 SLAM - Simultaneous Localization And Mapping
(3.75)
Combinando as 3.52 e 3.75, vem que a co-variância da inovação é dada por:
(3.76)
(3.77)
A correlação entre o estado e a inovação obtém-se:
(3.78)
(3.79)
Chega-se assim, à matriz de co-variância entre o estado e a inovação:
(3.80)
Os resultados 3.77 e 3.80 foram obtidos tendo em conta que:
(3.81)
(3.82)
(3.83)
A correlação entre o ruído de observação e o erro de estimação é nula. Em suma, as
equações da actualização obtidas para o filtro de Kalman (EKF) são:
(3.84)
(3.85)
(3.86)
(3.87)
(3.88)
(3.89)
(3.90)
A figura 3.2 representa toda a sequência computacional do Filtro de Kalman:
Filtro de Kalman 29
Figura 3.2 Algoritmo Computacional do filtro de Kalman. Efectua-se a inicialização, a estimação ocorre
à taxa de leitura dos sensores de entrada, a actualização acontece sempre que uma nova observação é
obtida.
A tabela 3.1 sumariza todo o processo de estimação, em paralelo com a actualização. As
expressões pode ser confirmadas em [9,26] e no capítulo “Kalman Filter” de [27]. Na tabela
3.1 considera-se um filtro de Kalman discreto-discreto, isto é, em que a estimação e
actualização são em tempo discreto. No mesmo quadro o respectivo filtro de Kalman
continuo–discreto é também sumarizado. Neste filtro a estimação, e portanto o modelo do
sistema são funções contínuas no tempo.
30 SLAM - Simultaneous Localization And Mapping
Tabela 3.1 Resumo de equações do filtro de Kalman. Filtro Contínuo-discreto e discreto-contínuo.
Processo discreto:
Observação:
Estimação discreta:
Estimação continua:
Actualização:
Inovação:
Co-variância da inovação:
Correlação entre estado e inovação:
Ganho do Filtro de Kalman:
Em anexo A1 a solução da equação de co-variância do erro de estimação é determinada.
No anexo A2 um estudo da convergência e estabilidade do filtro de Kalman é feito. Em anexo
também, A3, a co-variância do erro em tempo contínuo é determinada.
Filtro de Kalman Estendido (EKF) 31
3.2- Filtro de Kalman Estendido (EKF)
O filtro de Kalman estendido é uma vertente cuja utilidade advêm da inclusão no vector
de estado não só do estado do veículo que se pretende estimar, mas também das
características ou marcos naturais do ambiente onde se navega.
Este filtro corresponde portanto, a uma versão do filtro de Kalman em que além da
estimação do estado do veículo, também a estimação do mapa é feita. O que corresponde na
resolução de um problema de SLAM, uma vez que a estimação do estado do veículo e mapa
são simultaneamente calculadas.
Nos trabalhos referentes a [8-9] e [12], a resolução de problemas de CML e SLAM é feita
baseada no filtro de Kalman estendido, EKF. Nestes trabalhos, o vector de estado é,
inicialmente, apenas constituído pelo estado do veículo, mas assim que um novo marco é
detectado, é adicionado ao vector de estado, passando a fazer parte da estimação. Assim, o
vector de estado cresce de dimensão quando um novo marco é detectado e adicionado.
Computacionalmente um algoritmo de previsão baseado no filtro de Kalman (EKF) pode-se
tornar bastante pesado com o crescimento do vector de estado, ao serem incluídos
sucessivamente marcos.
O custo computacional de um algoritmo de estimação baseado em filtro de Kalman
estendido (EKF) é da ordem , isto é, ordem três, em que corresponde ao número de
marcos adicionados ao vector de estado, [8,12]. Um custo computacional de ordem três é um
custo elevado, que tende a crescer com o aumento do vector de estado.
Uma solução possível para a redução do custo computacional do sistema passa por ignorar
as correlações, isto é, os erros de estimação do estado. Mas ignorar essas correlações leva a
um filtro de Kalman e construção de mapa inconsistente. Se o veículo usa a posição (com
erro) de um marco para estimar a sua posição, então a estimativa do veículo fica
correlacionada com a estimativa da característica e então, na resolução de um problema de
SLAM a correlação tem de ser introduzida no filtro de Kalman para que o mapa construído do
ambiente seja consistente, [9] e [12].
Em [8] é referido uma solução para este problema, que passa por limitar a dimensão do
vector de estado a estimar. Isto é, atribuir a priori um valor limite para o número de marcos a
adicionar ao vector de estado. Desta forma, sempre que novos marcos são detectados, são
adicionados ao vector de estado até que este seja preenchido. Encontrando-se o vector de
estado completamente ocupado, então, caso um novo marco seja detectado, do vector de
estado é removida a característica cuja incerteza associada seja maior, sendo adicionado o
novo marco.
Nesta dissertação o objectivo é fazer o veículo (AUV) orientar-se face a um tubo ou
parede. Ora, o mapa a ser estimado em simultâneo com a localização do AUV será o tubo ou
32 SLAM - Simultaneous Localization And Mapping
parede que, à partida pode ser definido por uma recta. Essa recta é caracterizada por uma
ordenada na origem e orientação relativamente ao referencial mundo.
Assim, o problema de custo computacional esta à partida resolvido, uma vez que o vector
de estado terá sempre uma dimensão fixa, será constituído apenas por um marco a estimar, o
tubo ou parede. Computacionalmente o custo será: .
a) b)
Figura 3.3 Trajectória simulada em [12] sem landmarks. a) Trajectória. b) Erro de estimação que
cresce sem limites.
a) b)
Figura 3.4 Trajectória simulada em [12] com landmarks. a) Trajectória. b) Erro de estimação que
decresce sempre que uma nova observação adquirida.
33
Capítulo 4
Dados do Sonar
A observação do ambiente é na resolução de um problema de SLAM essencial. São as
observações, detecção e extracção de características de marcos que permitem a
implementação de um andar de actualização do estado no filtro de Kalman.
Quanto maior a qualidade das observações maior será a confiança que se terá na
actualização do estado do sistema. O filtro pode mesmo perder-se caso um marco seja mal
detectado ou confundido, por isso, há necessidade de observações de qualidade e então as
características devem ser facilmente detectáveis, o que é garantido apenas com imagens do
terreno de boa qualidade.
As possibilidades existentes são: imagens acústicas, ou seja, imagens de força de eco no
tempo conseguidas por sonar, ou imagens provenientes de visão artificial.
Segundo [8], o sonar corresponde de facto ao melhor e mais apropriado método para a
observação debaixo de água.
A visão artificial é dependente da luminosidade do meio, que é escassa em ambientes
subaquáticos. A absorção de luz na água é influenciada pela sua claridade, a turbidez e
profundidade, uma vez que com o aumento da profundidade também a absorção de luz
cresce. Em [3], é descrita a aquisição de imagem do fundo marítimo através de câmaras. A
partir de determinada profundidade a luz natural deixa de ser suficiente para a aquisição de
imagem com qualidade, tornando-se necessário a inclusão de iluminação artificial.
Com um sonar, as imagens do terreno (imagens acústicas) são obtidas independentemente
da luminosidade do meio. O sonar foi escolhido para o desenvolvimento deste trabalho, tal
como [8,14] e [21-23], para a observação do ambiente.
4.1- Sonar, SOund Navigation And Range
Um sonar imite um conjunto de impulsos acústicos, a uma velocidade de propagação na
água de aproximadamente 1450 m/s, [29] (existe dependência com temperatura e salinidade
34 Dados do Sonar
da água), que serão reflectidos em todos os obstáculos encontrados inclusive o chão do meio
de trabalho. È a força dos impulsos reflectidos, a força do eco no tempo, que formam uma
imagem acústica, na qual se poderão retirar e identificar marcos naturais.
Três tipos de sonar foram estudados e são caracterizados pelo tipo de varrimento que
fazem do meio:
Sonar forward-Look.
Sonar side scan.
Sonar multibeam.
O sonar do tipo forward-look é um sonar que faz várias observações provocando
sobreposição do meio [8]. Este sonar pode ser colocado no nariz do submarino e faz um
varrimento rotativo, reobservando por várias vezes o mesmo meio, provocando imagens de
pior qualidade que o sonar de varrimento lateral, side scan.
O sonar de varrimento à frente (sonar forward-look ) pode ser classificado como um
sonar de profundidade, que fornece pouca informação e cujo ruído e erro de medida é
bastante elevado, gerando como já referido imagens acústicas de fraca qualidade. Este tipo
de sonar, segundo [30], começou a ser substituído com o aparecimento de sonares cuja
informação é dada em duas dimensões, com alta resolução e certeza de medição, tais como
sonares de varrimento lateral, side scan.
O sonar de varrimento lateral, [31], efectua um varrimento do meio diferente do sonar
forward-look, em que a imagem acústica obtida corresponde a linhas de força de eco no
tempo igualmente espaçadas entre si, em que o espaçamento entre linhas é a deslocação do
AUV, e o tempo entre linhas consecutivas, corresponde ao tempo de amostragem do sonar.
Neste tipo de varrimento, ao contrário do sonar forward-look, esta garantido que não há
sobreposição do meio, o que confere ao sonar de varrimento lateral, tal é afirmado em [8],
imagens acústicas de melhor qualidade do que o sonar do tipo forward-look.
As figuras 4.1 a) e b) mostram o tipo de varrimento feito pelos sonares forward-look e
side scan respectivamente.
Sonar, SOund Navigation And Range 35
a) b)
Figura 4.1 Varrimento efectuado pelos sonares: a) Forward-look b)Side scan sonar.
A figura 4.2 a) e b) representam imagens acústicas obtidas por um sonar do tipo forward-
look e por um sonar de varrimento lateral respectivamente. Nessas imagens pode ser vista a
diferença de qualidade entre os dois sonares, claramente favorável ao sonar de varrimento
lateral.
a) b)
Figura 4.2 Imagens obtidas por sonares do tipo: a) forward-look b)Side scan sonar. Como se vê o Sonar
de varrimento lateral permite obter imagens de maior qualidade que o sonar forward-look. [8].
Tanto em [8] como em [10], o tipo de sonar escolhido foi o sonar de varrimento lateral.
Nesta dissertação também o sonar escolhido foi um sonar de varrimento lateral, mais
precisamente o Imaginex Sportscan, [32].
Mas, com o aparecimento do multibeam sonar, mais caro, mas que permite a obtenção de
imagens acústicas do fundo marítimo em três dimensões, o sonar de varrimento lateral
começa a ser substituído em muitas aplicações [31]. Mesmo assim, devido ao compromisso
preço, qualidade de imagem e quantidade de informação, o sonar de varrimento lateral é
utilizado em enumeras aplicações tais como identificação de objectos e estruturas debaixo de
água, condução em missões ou mesmo aplicações militares.
A imagem acústica obtida pelo sonar multibeam é de qualidade superior ao side scan. A
quantidade e qualidade de informação recolhida são maiores, o que permite posteriormente
uma navegação baseada em terreno de maior qualidade.
36 Dados do Sonar
Um sonar multibeam permite obter uma imagem tridimensional do meio uma vez que é
constituído por um array de sonares (multi-feixe), dispostos na mesma direcção e com
ângulos de incidência fixa, conhecida e desfasados de sonar para sonar.
Este sonar é então colocado no casco do veículo e pelo funcionamento dos vários sonares
cujo ângulo de incidência é diferente, obtém-se por parte de cada sonar uma medida de
profundidade unidimensional. Então, com a junção de todas as medidas de profundidade, um
mapa detalhado do terreno marítimo é obtido. Esse detalhe será tanto maior quanto maior
for a resolução do multibeam, que cresce com o aumento de feixes acústicos, isto é, com o
aumento da quantidade de sonares. Essa resolução é também dependente do ângulo de
incidência dos vários feixes acústicos, [30].
A figura 4.3 mostra uma imagem obtida por um sonar do tipo multibeam. Como se pode
ver trata-se de uma imagem de qualidade superior relativamente ao sonar baseado em
varrimento à frente ou varrimento lateral, forward-look e side scan respectivamente.
Em [30], é implementada navegação baseada em terreno, usando o sonar multibeam,
através de um mapa guardado a priori, comparando-o com o mapa actual, construído pelo
sonar multibeam. Um sonar comercial do tipo multibeam para veículos autónomos de
pequena dimensão tais como ROVs e AUVs é sugerido em [30], esse sonar é o Tritech SE400.
No trabalho descrito em [33], métodos de analise, e extracção de objectos são descritos para
a aplicação a imagens do fundo marítimo provenientes de um sonar do tipo multibeam.
Figura 4.3 Imagem de qualidade obtida por um sonar Multi-Beam [34].
Imagens de boa qualidade permitem a extracção e identificação de características do
meio com maior facilidade e confiança. Além do mais, imagens de melhor qualidade exigem
algoritmos de identificação de marcos naturais menos complexos, tornando
computacionalmente todo o sistema menos pesado.
Sonar de varrimento lateral (side scan) 37
4.2- Sonar de varrimento lateral (side scan)
Figura 4.4 Uma fatia acústica, resposta de força de eco, do fundo do meio marítimo constituído por
dois alvos (Target1 e Target2), [32].
A figura 4.4 permite ver a formação de uma imagem acústica em duas dimensões, força
de eco e tempo. A figura 4.4 corresponde apenas a uma linha da imagem acústica. È possível
ver que quando o feixe acústico atinge o chão a força do eco passa de zero (sem eco) para o
valor máximo, dependente da distância do AUV ao chão. Quando o eco choca com um marco
(TARGET1 ou TARGET2) a força do eco volta a aumentar, mas desfasada no tempo,
relativamente ao eco do chão. Após o marco existe uma zona onde novamente não há eco, é
a chamada zona de sombra do marco.
Assim, a imagem acústica é representada em duas dimensões, tempo e movimento linear
do submarino, sendo que a informação de força de eco esta representada por uma escala de
cinzentos.
O varrimento feito pelo sonar de varrimento lateral, tal como a imagem ideal conseguida,
é mostrado na figura 4.5.
A figura 4.5 é composta por uma série de linhas acústicas obtidas pela emissão/recepção
dos impulsos acústicos. Assim, a imagem obtida é uma imagem discretizada e constituída por
linhas acústicas, isto é, um conjunto de fatias do tipo da figura 4.4.
38 Dados do Sonar
Figura 4.5 Resultado do varrimento lateral, efectuado pelo sonar side scan. O conjunto de várias fatias
dá origem à imagem acústica pretendida e que permitirá retirar características do fundo marítimo
[32].
4.3- Dados obtidos pela análise da imagem acústica
A análise de uma imagem acústica permite a obtenção de alguns dados importantes
necessários para o funcionamento do filtro de Kalman.
Com a ajuda da figura 4.6, pode-se enumerar a informação obtida pela analise da imagem
acústica:
O tamanho da zona sem eco , permite-nos saber qual a altura a que o
sonar/submarino se encontra do chão.
A soma da zona sem eco com a zona de eco do fundo e da target, , permite
saber a distância a que o submarino se encontra da target.
A zona de sombra da target , onde não existe eco, permite-nos saber a altura que
a target possui.
Imaginex SportScan 39
Pela figura 4.6 é possível determinar a expressão da altura da target/marco, essa
expressão é igual a:
(4.1)
Todas estas características podem ser obtidas através de algoritmos de tratamento de
imagem artificial, que serão tratados com maior cuidado no capítulo 5.
Figura 4.6 Características H, r, s e h, obtidas através da imagem acústica, [34].
Os algoritmos de segmentação e extracção de características, devem ser flexíveis e então
ser capazes de tratar imagens cuja qualidade é inferior às figuras 4.5 e 4.6, uma vez que
estas correspondem a imagens ideais.
4.4- Imaginex SportScan
No contexto desta dissertação, o sonar usado é o Imaginex SportScan [32]. Depois de
enviado e aceite um comando via RS-232 para o sonar, com um Baud Rate de 115200 Bps, o
sonar transmite um conjunto de impulsos acústicos, recebe-os e posteriormente reencaminha
os dados referentes a cada fatia. O comando enviado configura o sonar e permite definir
algumas características tais como:
Alcance do feixe acústico: 15, 30, 60, 90 e 120 mts.
A largura do impulso acústico: 0 a 250 μs.
Resolução da fatia acústica: Baud Rate de retorno de dados.
Frequência do feixe acústico: 330Khz ou 800Khz.
Número de pontos, Data Points: 250 ou 500 pontos por lado (estibordo e bombordo).
Delay (desfasamento) entre retorno de dados da fatia anterior, e emissão de nova onda
acústica: 0 a 510 ms.
O alcance do feixe acústico, range scale, impõe um alcance máximo para o feixe acústico
e impõe a resolução de cada pixel na imagem acústica.
O número de pontos escolhido por fatia acústica ou o modo de obtenção da imagem
acústica pode ser: usando o feixe acústico a estibordo e a bombordo, e aí obtém-se uma
40 Dados do Sonar
imagem de 500 pontos, mas com apenas 250 pontos por lado. Apenas um feixe acústico, em
um dos lados do sonar, ou estibordo ou bombordo, obtendo-se assim uma imagem também de
500 pontos, mas correspondendo esses pontos apenas a um dos lados do sonar.
Deste modo apresenta-se a seguinte tabela com as resoluções possíveis, tabela 4.1.
Tabela 4.1 Resoluções possíveis para o sonar variáveis com o número de pontos usados e com o range
scale escolhido para o sonar.
Pontos\Range 15 30 60 90 120
250 6 cm 12 cm 24 cm 48 cm 96 cm
500 3 cm 6 cm 12 cm 24 cm 48 cm
Pela tabela 4.1 vê-se que a resolução melhora quando o range scale diminui e quando o
número de pontos usado em um só lado do sonar é, 500 pontos.
O feixe acústico do sonar pode ser configurado em dois modos, 330Khz ou 800Khz. A
frequência do feixe acústico esta inversamente relacionada com o comprimento de onda e
directamente relacionada com a velocidade de propagação do feixe no meio. Tal, pode ser
visto na expressão recolhida em [35]:
(4.2)
em que representa o comprimento de onda, a frequência do feixe acústico e a
velocidade de propagação da onda no meio. Ora, o ângulo de incidência do feixe acústico esta
directamente relacionado com o comprimento de onda. Assim, para o modo de
funcionamento de 330Khz espera-se um ângulo de incidência superior que para o modo de
funcionamento de800Khz. Em [32] (manual do Imagenex Sportscan) obtém-se os seguintes
dados:
330Khz temos um feixe de 1.8º x 60º.
800Khz temos um feixe de 0.7º x 30º.
A figura seguinte, figura 4.7, representa os dois modos de funcionamento do sonar.
Figura 4.7 Feixe acústico e ângulos de incidência configuráveis no sonar.
Sabe-se também que o ângulo entre a linha intermédia do feixe acústico com a horizontal
é de 20°, [32]. Ora, o feixe acústico terá então ou centrados nessa linha intermédia. È
Imaginex SportScan 41
possível então, com esta informação, calcular o ângulo que o feixe acústico faz com a vertical
quer para 30º, quer para 60º.
Assim, para 30º teremos um ângulo com a vertical igual a:
(4.3)
Para 60º então teremos um ângulo com a vertical de:
(4.4)
A figura 4.8 a) e b) mostra o feixe acústico e a sua decomposição em ângulos com vertical
e horizontal.
a) b)
Figura 4.8 Feixe do sonar: a) ângulo de incidência de 30º, frequência de 800Khz. b) Ângulo de incidência
de 60º, frequência de 330Khz.
O delay entre o retorno de dados da fatia anterior, e a emissão de nova onda acústica,
define um tempo mínimo de repouso do sonar. Assim, o valor de delay impõe uma taxa de
amostragem mínima.
A taxa de amostragem do sonar, tempo entre envio do comando de pedido de dados e
recepção dos dados via RS-232 é determinado pela expressão:
(4.5)
em que corresponde à taxa de amostragem do sonar, representa o tempo de envio
da trama de pedido de dados, o tempo de retorno e a velocidade de propagação do
som na água.
A trama de pedido de dados é constituída por 27 bytes, transmitidos a um Baud Rate de
115200 bps. Assim, o tempo de envio da trama de pedido de dados é igual a:
(4.6)
A trama de recepção de dados é constituída por 513 bytes, também transmitidos a 115200
bps. O tempo de retorno de dados será portanto igual a:
(4.7)
A tabela 4.2 representa a taxa de amostragem mínima possível para os diferentes range
scales e para uma velocidade de propagação do som na água de 1450 m/s.
Tabela 4.2 Taxa de amostragem mínima do sonar, variável com o range scale escolhido.
42 Dados do Sonar
Range Scale 15 30 60 90 120
67 88 130 171 212
O tempo entre actualizações sucessivas será na ordem dos milissegundos. Esse tempo é
superior ao tempo de amostragem de sensores dead-reckonning do veículo, que impõem o
tempo entre estimações. Logo pode-se concluir que o andar de estimação do filtro de Kalman
terá uma frequência superior que a actualização, como era de esperar.
43
Capítulo 5
Análise de Imagem
A imagem acústica obtida será tratada para que as características pretendidas sejam
extraídas. Para tal a imagem acústica terá de ser transformada em uma imagem sobre a
forma de imagem monocromática ou então RGBs. Ignorando o processo de transformação da
imagem acústica numa imagem monocromática ou de cores, nesta secção serão falados os
passos e algoritmos que permitem tratar (pré-processamento), segmentar e extrair
características de uma imagem monocromática.
Nesta secção serão então descritos alguns dos algoritmos necessários para o tratamento
da imagem acústica obtida pelo sonar.
Uma imagem é uma matriz de pixéis em que cada pixel é função da sua coordenada
no plano da imagem. Cada pixel, é constituído por valores de intensidade luminosa e então da
energia incidente no plano da imagem. Assim, uma imagem monocromática é função ,
valor do pixel na coordenada , em que esta compreendida entre valores de preto
e branco, isto é, pertencente à escala de cinzentos, capítulo “Digital Image Fundamentals”
de [36].
Desta forma, numa imagem monocromática, a função está compreendida entre os
valores:
(5.1)
Numa imagem RGBs, ou imagem de cores, cada pixel possui três valores,
, um nível de vermelho, verde e azul.
A imagem acústica obtida pelo sonar é constituída por pixéis cujo valor se encontra no
intervalo, [32]:
(5.2)
Então, a imagem a tratar será monocromática e neste capítulo apenas é abordado o
tratamento de imagens em escala de cinzentos.
44 Análise de Imagem
5.1- Pixéis e Níveis de uma imagem
Uma imagem será tanto de maior qualidade quanto maior for o número de pixéis da
imagem e quanto maior o numero de níveis usados.
O aumento de pixéis na imagem reduz o efeito de mosaico na mesma, isto é, permite
visualizar com maior qualidade cada pormenor da imagem. De facto, o número de pixéis está
directamente relacionado com a resolução da imagem e portanto com a incerteza da imagem,
capítulo “Digital Image Fundamentals” de [36]. Duas imagens com número de níveis igual e
diferente número de pixéis, cobrindo a mesma área, resultam em imagens cuja qualidade é
diferente.
Com o sonar Imaginex SportScan são adquiridas imagens em que cada fatia possui 500
pixéis. Mas na prática este possibilita duas resoluções distintas, uma vez que esses 500 pixéis
podem corresponder a estibordo e bombordo ou apenas a estibordo ou bombordo. Assim, a
imagem terá duas resoluções possíveis: a maior resolução e de menor incerteza, em que cada
fatia possui 500 pixéis e a menor resolução que disponibiliza a metade dos pixéis, isto é, 250
pixéis.
O número de níveis usados reflecte-se no contraste existente na imagem, e consiste
portanto no número de níveis de cinzentos usados, capítulo “Digital Image Fundamentals” de
[36]. A imagem obtida pelo Imaginex SportScan é constituída por 128 níveis de cinzento e é
uma característica permanente do sonar.
5.2- Pré-processamento da Imagem
A imagem obtida muitas vezes tem origem em várias fontes de degradação. Essa
degradação pode se resultado de compressão, expansão, rotação da imagem ou ruído
aleatório.
Desta forma, existem uma série de operadores responsáveis pelo pré-processamento da
imagem. Esses operadores podem ser divididos em:
Operadores pontuais.
Operadores locais.
Operadores Globais.
Os operadores pontuais, são operadores em que na imagem resultado cada pixel
corresponde a uma operação aritmética, lógica ou de comparação do pixel original, capítulo
“Image Enhancement” de [36]. Assim, esses operadores dão origem a uma matriz resultado
dependente apenas da operação a cada pixel original. Exemplos de operadores pontuais são:
a soma/subtracção de duas imagens, a soma/subtracção de toda a imagem por um nível de
cinzento ou a aplicação de um threshold na imagem.
A soma/subtracção de duas imagens é feita como a soma/subtracção de duas matrizes. A
soma/subtracção de um nível de cinzento a uma imagem é feita da mesma forma que a
Pré-processamento da Imagem 45
soma/subtracção de um escalar a uma matriz. A operação de threshold corresponde a uma
operação em que o valor de cada pixel da imagem resultado é função do nível de cinzentos de
cada pixel da imagem original. Este tipo de operadores tem uma menor importância nesta
dissertação, excepto a aplicação de threshold, que será abordada com mais cuidado na
secção 5.3.1.
Os operadores locais têm uma enorme importância no pré-processamento de uma
imagem, uma vez que são estes que permitem reduzir ou eliminar o ruído na imagem para
uma posterior segmentação de maior qualidade.
Estes operadores, capítulo “Image Enhancement” de [36], permitem obter uma imagem
resultado em que cada pixel é resultado de uma operação sobre o pixel original e a sua
vizinhança.
Figura 5.1 Operador local F aplicado a um pixel da imagem. O pixel resultado é função da aplicação do
operador local aplicado na sua vizinhança também, [37].
A figura 5.1 mostra o pixel resultante de uma operação sobre uma vizinhança do pixel
original, numa janela 3 x 3.
Considerando um operador numa janela 3 x 3 igual a:
(5.3)
Cada pixel resultante será uma intensidade de brilho igual a:
(5.4)
com correspondente à intensidade luminosa em cada pixel da imagem original e de
coordenadas iguais ao operador centrado no pixel de coordenadas . Assim, alguns dos
mais importantes operadores deste tipo são usados para a redução de ruído e são chamados
de Smoothing Filters. Exemplos de filtros de redução de ruído são os filtros de média, de
mediana, dilate, erode, filtros passa banda, passa baixo e passa alto, capítulo “Image
Enhancement” de [36]. Outros operadores são usados na segmentação para a detecção de
orlas e linhas na imagem. Esses operadores serão abordados com maior cuidado na secção
5.3.2.
Segundo o capítulo “Image Enhancement” de [36], existem portanto operadores de
suavização ou redução de ruído como o filtro de média:
(5.5)
46 Análise de Imagem
Filtros passa alto, filtros derivativos e filtros Laplacianos, permitem a detecção de
variações bruscas de brilho na imagem:
(5.6)
Existem ainda operadores locais tal como a mediana:
(5.7)
5.3- Segmentação da Imagem
Após o pré-processamento, e então, depois de obtida uma imagem de qualidade superior
à original surge a fase de segmentação.
Em processos em que a visão artificial é usada, o objectivo não é obter uma imagem
através de uma original, mas sim adquirir informação das características da imagem. A
segmentação divide a imagem nas suas partes ou objectos constituintes, capítulo “Image
Segmentation” de [36]. O mesmo se passa com o sonar e a imagem obtida do fundo marítimo.
Existem duas categorias fundamentais de segmentação, a descontinuidade e a
semelhança. A descontinuidade baseia-se em variações bruscas na imagem a tratar, e então
debruça-se essencialmente na detecção de orlas e de linhas, capítulo “Image Segmentation”
de [36].
A segunda categoria, semelhança, é fundamentalmente aplicada com threshold falado na
secção seguinte, secção 5.3.1.
5.3.1- Threshold
O threshold é uma operação pontual sobre a imagem original. Esta operação tem como
finalidade separar na imagem os objectos do fundo. Para tal, usa-se um threshold bimodal,
multinível ou variável.
Figura 5.2 Histograma de uma imagem. O histograma é usado para a verificação do limiar ou dos
limiares de threshold [38].
Segmentação da Imagem 47
O threshold bimodal, é usado em imagens constituídas por dois níveis de intensidade
principais, por exemplo escuro e claro.
A figura 5.2 correspondente ao histograma de uma imagem. Uma operação de threshold
bimodal sobre essa imagem, corresponderá à transformação de todos os pixéis cuja
intensidade seja superior ao limiar de threshold num nível de intensidade máxima. Aqueles
cuja intensidade seja inferior, na imagem resultado terão uma intensidade igual ao nível
mínimo. Mas, uma imagem pode ser constituída por mais que dois níveis principais, poderá ter
zonas escuras claras e zonas de cinzentos, o que confere mais que duas modas à imagem. A
aplicação de threshold nestas imagens corresponde a um threshold multinível, capítulo
“Image Segmentation” de [36].
5.3.2- Detecção de Orlas
A detecção de orlas permite detectar na imagem as suas fronteiras, isto é, passagens
bruscas de níveis na imagem. Uma imagem depois de devidamente binarizada, através de um
método de threshold, possui zonas de passagem de níveis de branco para preto e de preto
para branco. A detecção de orlas usa operadores locais que permitem detectar essas zonas de
fronteira e ignorar zonas onde exista homogeneidade.
Assim, alguns dos operadores locais para a detecção de orlas referidos no capítulo “Image
Segmentation” de [36], são os operadores locais diferenciais e correspondência de mascaras.
Ambos os operadores são aplicáveis a todas as direcções e por isso permitem detectar
orlas verticais, horizontais e curvas. A detecção de orlas com estes operadores é possível
porque o resultado da aplicação dos mesmos é elevado nas fronteiras e pequeno nas zonas
homogéneas.
Exemplos de operadores diferenciais são os operadores gradiente, que aproximam a
derivada na direcção em que são aplicados. Assim, as máscaras de Sobel e Prewitt
são caracterizados pelas matrizes:
(5.8)
(5.9)
Operadores exemplo de correspondência de máscaras são os operadores de compasso:
(5.10)
(5.11)
(5.12)
(5.13)
48 Análise de Imagem
5.3.3- Transformada de Hough
Depois da aplicação de algoritmos de detecção de orlas surge a necessidade de obter a
expressão analítica das rectas/linhas que surgem na imagem. Nesta dissertação, em
particular, a obtenção de expressões de linhas é de extrema importância, uma vez que será
através dessas expressões que as características da imagem, como altura ao fundo, distância
a uma característica ou a sua espessura serão retiradas.
O algoritmo que permite obter tais expressões é denominado de transformada de Hough e
é referido no capítulo “Image Segmentation” de [36].
Na imagem original, uma recta de declive e ordenada na origem , é constituída por
inúmeros pontos de coordenadas e . A equação dessa recta é dada pela
expressão:
(5.14)
Figura 5.3 Plano xOy da imagem. Recta definida pelos pares de pontos e .
Reescrevendo-se a equação dessa recta, tal como [38], temos que:
(5.15)
Passamos a ter um novo referencial, em que os dois pontos e , dão origem a
duas novas rectas:
(5.16)
(5.17)
O ponto de intersecção dessas duas novas rectas corresponde ao conjunto declive e
ordenada na origem da recta na imagem original.
Esqueletização da imagem 49
Figura 5.4 Plano aOb, a intersecção das rectas formadas pelos pares (declive, ordenada na origem),
e corresponde no plano da imagem à recta de declive e ordenada na origem .
Então, o algoritmo da transformada de Hough consiste em percorrer a imagem original e
para cada ponto da imagem achado, verificar, para uma gama de declives ,
qual a ordenada na origem correspondente . O conjunto de valores
achados têm uma correspondência com os índices da matriz da transformada de Hough. Essa
matriz será incrementada na posição dos índices correspondentes a . A matriz resultante
possuirá picos, valores máximos, cujo conjunto correspondente, são o declive e
ordenada na origem de uma possível recta na imagem original.
A transformada de Hough pode ainda ser representada usando coordenadas polares.
Computacionalmente, segundo o capítulo “Image Segmentation” de [36], a transformada de
Hough é de ordem nk. Em que n corresponde ao número de pixéis da imagem e k o número de
declives compreendidos entre .
5.4- Esqueletização da imagem
As operações de esqueletização da imagem surgem após ou antes da segmentação da
mesma. Estas operações são usadas para extrair da imagem características tais como
fronteiras, formas ou esqueletos (pós-processamento), que são úteis muitas vezes na
representação e interpretação de um objecto na imagem. Mas, poderão ser usadas também
na filtragem de ruído da imagem (pré-processamento), na eliminação de buracos no interior
de objectos e no fundo da imagem, resultantes muitas vezes de operações de threshold. São
operações usadas também como métodos para a suavização ou eliminação de saliências nas
fronteiras de um objecto contido na imagem, capítulo “Representation and Description” de
[36].
Nesta secção serão descritas operações para a eliminação de buracos em objectos,
buracos no fundo da imagem e linhas finas. Estes algoritmos são interessantes para o
tratamento da imagem acústica após a aplicação de um threshold, descrita na secção 5.3.1
(que muitas vezes resulta em pequenos buracos nos objectos e fundo da imagem) e antes da
50 Análise de Imagem
detecção de orlas descrita na secção 5.3.2 (para a eliminação de linhas na imagem
resultantes por exemplo da reflexão dos impulsos acústicos na superfície da água). Para tal,
serão descritas duas operações fundamentais e base de muitos algoritmos de esqueletização
existentes, essas operações são a dilatação e erosão, [39].
5.4.1- Dilatação
A dilatação corresponde à operação resultante da expressão:
(5.18)
Dada uma imagem , e um elemento estruturante , a dilatação de por consiste em
colocar todos os pontos da imagem a preto, desde que a reflecção de igual a
deslocada de , igual a , intersectada com a imagem , seja um conjunto não
vazio e então contido em .
5.4.2- Erosão
A erosão corresponde à operação resultante da expressão:
(5.19)
Dada uma imagem , e um elemento estruturante , a erosão de por consiste em
colocar todos os pontos da imagem a preto, desde que o elemento estruturante
deslocado de , igual a seja um conjunto não vazio contido em .
5.4.3- Operação Abrir
A operação de abrir consiste na aplicação sequencial da erosão seguida da dilatação na
imagem. Esta operação é descrita pela expressão:
(5.20)
Esta operação é útil na suavização de contornos da imagem e fronteiras de objectos.
Elimina saliências das fronteiras de objectos e elimina buracos no fundo da imagem.
A aplicação de uma erosão na imagem elimina os buracos do fundo da imagem cuja
dimensão seja mais pequena que a janela do elemento estruturante. Aumentando assim o
tamanho de buracos em objectos da imagem e reduzindo o tamanho das suas fronteiras. È
necessário então aplicar a operação de dilatação com o mesmo elemento estruturante para
restituir os pixéis das fronteiras que foram eliminados e diminuir o tamanho dos buracos em
objectos da imagem que foram aumentados, com a aplicação de uma erosão. Com esta
operação eliminou-se portanto buracos no fundo da imagem e saliências nas fronteiras dos
objectos.
Esqueletização da imagem 51
5.4.4- Operação Fechar
A operação de fechar corresponde à aplicação sequencial da dilatação seguida da erosão
na imagem. Esta operação é descrita pela expressão:
(5.21)
Esta operação é usada para eliminação de buracos e lacunas na fronteira de objectos da
imagem.
Quando se aplica uma dilatação na imagem, os buracos no interior de objectos são
eliminados, desde que a sua dimensão seja menor que o operador de dilatação. As fronteiras
de objectos crescem e buracos no fundo da imagem aumentam de dimensão. Assim, é
aplicado de seguida uma operação de erosão que diminui as fronteiras e o tamanho de
buracos no fundo da imagem que tinham aumentado com a dilatação.
Após esta operação lacunas nas fronteiras e buracos no interior de objectos foram
preenchidos.
5.4.5- Operações Fechar e Abrir aplicadas numa imagem binária
Supondo uma imagem binária com fundo branco e objectos a preto, a eliminação de
buracos na imagem, quer nos objectos quer no fundo, poderá ser feita com a aplicação de
uma operação abrir seguida de fechar. Assim, numa imagem binária a operação de erosão é
aplicada com um elemento estruturante quadrado de dimensão fixa e consiste em para cada
ponto escolher o máximo de todos os pixéis da imagem abrangidos pela janela do elemento
estruturante. Uma operação de dilatação corresponde em escolher o valor mínimo para o
ponto de todos os pixéis da imagem abrangidos pela janela do elemento estruturante.
53
Capítulo 6
Filtros de Navegação
Nesta dissertação o varrimento da manta marítima usando um sonar de varrimento lateral
é estudado com o objectivo de dotar um veículo autónomo com a capacidade de observar o
ambiente e de seguir uma trajectória paralela a uma característica, tubo ou parede existente
no meio de trabalho. Esse problema é um problema de localização simultânea com construção
de mapa do ambiente que rodeia o sonar (SLAM). O seguimento de uma trajectória relativa a
uma característica garante uma maior autonomia para o veículo e uma navegação num
volume de espaço quase ilimitado.
O suporte deste trabalho é o AUV MARES, cuja constituição é falada na secção 6.1.
Pretende-se para este veículo juntamente com a ajuda de um sonar de varrimento lateral, o
Imaginex Sportscan, uma localização no mundo com bastante certeza baseada no filtro de
Kalman estendido que conjuga a informação dada pelos sensores do submarino, com a
informação recolhida da imagem acústica proveniente do sonar.
6.1- Sensores do AUV MARES
O AUV MARES, desenvolvido pelo grupo The Ocean Systems Group (Oceansys) da Faculdade
de Engenharia da Universidade do Porto, possui on-board um sistema computacional baseado
na Stack PC104. Este computador de bordo permite a comunicação e interface com um
conjunto de sensores que o veículo transporta, como sensores de dead-reckoning, atitude e
pressão. De facto, a navegação do AUV MARES, cuja configuração dos seus propulsores é
invulgar (movimentos horizontal e verticais completamente independentes), é feita com a
ajuda de um conjunto de sensores que são úteis durante o desenvolvimento desta dissertação.
Assim, pela descrição feita em [6], o AUV MARES possui um sensor de pressão, responsável
por fornecer uma medida de pressão, facilmente convertida numa medida de profundidade.
Possui também uma bússola digital, com um conjunto de sensores de atitude, que fornecem
uma medida bastante precisa da rotação de yaw, roll e pitch. O sensor de pressão fornece
54 Filtros de Navegação
uma saída com bastante certeza a uma frequência de , o que permite o cálculo
da velocidade na componente de profundidade bastante aceitável. Com a bússola digital é
possível obter ângulos de atitude, isto é, ângulos de EULER (roll, yaw e pitch) com uma
precisão de e a uma frequência de , [6].
A velocidade de translação linear é obtida através de uma regra empírica que relaciona a
força aplicada com a velocidade em cada motor. Mas a velocidade linear medida é relativa à
água. Torna-se necessário portanto medir e actualizar a velocidade da corrente marítima.
Tais medidas permitem saber qual a velocidade de translação do veículo útil para a
implementação do filtro de Kalman.
O sistema global do AUV MARES possui ainda duas balizas acústicas, LBL (Long Baseline),
que permitem determinar a posição do AUV no referencial mundo. A combinação através do
filtro de Kalman de sensores dead-reckoning já mencionados, com as medidas de posição
adquiridas a partir das balizas acústicas possibilita a estimação da posição do veículo e a sua
navegação no mundo.
Ora, esta estimação baseada em balizas já é feita, [6], possuindo a desvantagem das
balizas serem limitadoras, devido ao seu alcance, do volume de navegação do veículo
subaquático. Outra desvantagem é a necessidade de preparação do ambiente, isto é, a
distribuição das balizas. È um sistema que nesta dissertação se pretende melhorar, dotando o
veículo com um maior grau de autonomia ao incluir um sonar que permite ao AUV navegar
sem limitações relativamente a características do fundo marítimo. Segundo [6], o GPS é
também usado para uma monitorização da posição actual das bóias (balizas acústicas).
6.2- Filtro de Kalman: estado (este, sul e profundidade)
Este filtro corresponde ao filtro em que o estado a estimar é a posição do veículo no
mundo, as suas coordenadas sul, este e de profundidade e as características do
tubo, como ordenada na origem e declive no mundo.
6.2.1- Modelo cinemático contínuo e não linear do Submarino
Para que as equações de filtro de Kalman continuo - discreto possam ser definidas e
descritas há que inicialmente determinar qual a cinemática pela qual se rege o veículo, o
submarino MARES.
A figura 6.1 representa as velocidades do veículo resultantes da aplicação de forças nos
seus thrusters.
O modelo cinemático do submarino será dada por um sistema em tempo contínuo e não
linear. Definindo-se o vector de estado:
(6.1)
Filtro de Kalman: estado (este, sul e profundidade) 55
Considerando o estado do tubo:
(6.2)
em que representa o declive da recta (tubo) e a sua ordenada na origem.
O vector de estado de todo o sistema, incluindo as características do tubo é dado pela
matriz:
(6.3)
O estado do tubo não inclui os ângulos de rotação pitch e roll , isto porque as
medidas obtidas pela bússola digital do veículo que garantem uma precisão superior que uma
eventual estimação. No capítulo 9 este tema é abordado.
A equação do modelo cinemático do veículo é em tempo contínuo e é obtida através de
2.8:
(6.4)
Por ser simétrico e não sofrer rotação relativamente ao seu eixo longitudinal assume-se
que o veículo não possui rotação de roll. A cinemática do sistema passa a ser caracterizada
por:
(6.5)
Figura 6.1 AUV MARES. Decomposição das forças/velocidades aplicadas pelos propulsores do veículo. Os
movimentos horizontais e verticais no veículo são desacoplados uma vez que o veículo possui
propulsores horizontais e verticais.
56 Filtros de Navegação
A velocidade linear do veículo apenas existe em duas direcções. Essas direcções são o eixo
este e o eixo de profundidade . Segundo a direcção sul o veículo não tem
velocidade linear.
(6.6)
Cada uma das velocidades possui ainda ruído aleatório associado e igual. Esse ruído é .
Desta forma, o vector de medida de velocidade linear é igual a:
(6.7)
Então, o modelo cinemático do veículo será dado por:
(6.8)
(6.9)
onde .
As entradas serão os ângulos de rotação sobre os eixos (altura) e (sul),
respectivamente yaw e pitch. Como entrada teremos também a velocidade linear de
deslocamento do veículo. Assim, o vector de entrada é definido por:
(6.10)
O vector de ruído branco, ruído aleatório, esta associado a cada uma das medidas e é
representado por:
(6.11)
(6.12)
6.2.2- Estimação de estado
Uma vez modelada a cinemática do veículo é possível escrever as equações do filtro de
Kalman referentes ao andar de estimação. Relembrando as equações de estimação
determinadas no capítulo 3, para um filtro de Kalman continuo - discreto de um sistema
representado por dinâmica não linear, obtém-se assim as funções de derivada do estado
estimado e a derivada da co-variância estimada do erro de estimação:
(6.13)
(6.14)
Filtro de Kalman: estado (este, sul e profundidade) 57
Calculando os gradientes e com :
(6.15)
(6.16)
6.2.3- Modelo da observação do Tubo
A cada instante o veículo vê um ponto do tubo (da recta do tubo) no seu referencial. A
figura 6.2 a) e b) representa o ponto visto pelo submarino considerando o tubo de raio nulo e
pousado sobre a manta marítima.
Assim, a cada observação o submarino irá ver o ponto de coordenadas:
(6.17)
com .
Tendo em conta o estado do veículo e a estimação das características, declive e ordenada
na origem do tubo consegue-se também a estimativa da observação.
A recta (tubo) vista no referencial mundo é, com e correspondentes ao par declive e
ordenada na origem, igual a:
(6.18)
58 Filtros de Navegação
a) b)
Figura 6.2 Referenciais a) eOh b) sOh. Distâncias r e H retiradas da imagem acústica
Um ponto decomposto nas coordenadas do mundo é igual a:
(6.19)
(6.20)
em que é a matriz de rotação do referencial do submarino para o referencial mundo. Por
ser uma matriz simétrica e não singular, obedece à propriedade , então:
(6.21)
(6.22)
(6.23)
Deste modo, as coordenadas do mundo representadas nas coordenadas do submarino são:
(6.24)
Através de 6.24, é possível determinar a componente sul, do ponto visto pelo submarino
do tubo:
(6.25)
(6.26)
(6.27)
Exprimindo , através de 6.20 e substituindo e :
(6.28)
Filtro de Kalman: estado (este, sul e profundidade) 59
(6.29)
Deste modo, por 6.18, 6.27 e 6.29, vem:
(6.30)
(6.31)
(6.32)
(6.33)
O ruído branco (ruído aleatório) de média nula e variância R da observação, é dado pelo
vector de ruído:
(6.34)
(6.35)
O vector de ruído ( ) é constituído por , ruído branco, consequência da medida do
ângulo de yaw. È constituído também pelo ruído correspondente a ruído branco da
medição do ângulo pitch. Os ruídos e derivam da medição das características e
através da imagem acústica obtida pelo sonar.
Considerando que o sonar vê um tubo de raio nulo e portanto, apenas uma recta na manta
marítima, a equação de observação é igual a:
(6.36)
Definindo ainda o vector de entrada no instante como:
(6.37)
A observação estimada será obtida anulando o vector de ruído na equação de observação
e usando o estado estimado. Assim, a observação estimada é igual a:
(6.38)
com .
6.2.4- Casos particulares de observação
Caso , o ângulo de pitch do submarino é nulo, a observação estimada vem:
60 Filtros de Navegação
(6.39)
Caso , yaw nulo, o submarino encontra-se alinhado com o referencial mundo e
então a observação vem:
(6.40)
Em outra situação, em que e , teremos o submarino alinhado com o
referencial mundo e sem ângulo pitch. Assim, a observação vista pelo submarino será:
(6.41)
6.2.5- Inovação da Observação
A inovação a cada observação é dada pela diferença entre a observação vista pelo sonar e
a que se espera ver (observação estimada). Assim, a inovação será dada pela equação:
(6.42)
(6.43)
em que .
6.2.6- Actualização de estado
Relembrando as equações de actualização anteriormente determinadas para a
actualização do filtro de Kalman em tempo discreto:
(6.44)
(6.45)
(6.46)
(6.47)
(6.48)
Os gradientes e são determinados para o estado igual ao estado estimado
, e para o valor do ruído branco esperado, isto é, nulo.
Definido e pelas seguintes equações:
(6.49)
Filtro de Kalman: estado (distância e profundidade). Característica tubo 61
(6.50)
A componente sul do tubo observada pelo submarino é dada por:
(6.51)
O gradiente da observação em ordem ao vector de estado vem:
(6.52)
O gradiente da observação em ordem ao vector de ruído de observação vem:
(6.53)
6.3- Filtro de Kalman: estado (distância e profundidade).
Característica tubo
O filtro de Kalman descrito na secção 6.2, foi simulado e estudado e revelou-se pouco útil
para navegação relativa uma vez que apresenta uma incerteza na estimação do estado
divergente. Esses resultados estão descritos no capítulo 11.
Outra abordagem para o filtro Kalman foi pensada e consiste em considerar como estado
do veículo outras características tais como a distância relativa entre veículo e tubo, a
orientação do tubo e altura de navegação do AUV relativamente à manta marítima. Este novo
filtro permitiu abordar o tubo num cenário mais realista, considerando o raio do tubo
diferente de zero e portanto tendo em conta que o tubo será visto na imagem acústica como
sendo a diferença entre uma distância mínima e máxima. Neste filtro as correntes marítimas
são também incluídas.
Para uma navegação relativa a uma característica, trajectória paralela à feature a uma
distância desejada, é necessário que a estimativa do estado do veículo seja a mais precisa
possível. Deste modo, este filtro de Kalman foi efectuado no sentido de possibilitar a
estimação com a maior precisão da distância relativa entre veículo e característica, da altura
do veículo em relação ao chão e da orientação do veículo no mundo.
Além do mais, este tipo de estimação possibilita colocar o veículo com precisão na área
óptima de operatividade, assunto descrito no capítulo 8.
62 Filtros de Navegação
6.3.1- Modelo cinemático contínuo e não linear do estado.
O estado do veículo será definido pelo seguinte vector:
(6.54)
em que é a distância relativa entre o veículo a característica (tubo), representa a altura
a que o veículo se encontra do chão marítimo e finalmente é a orientação da característica.
Tendo em conta as correntes marítimas segundo os eixos este e sul e , as
velocidades de propulsão aplicadas ao veículo segundo este e a componente de
profundidade, e . Considerando que o ângulo de rotação do veículo sobre o seu eixo
de profundidade é nulo, rotação de roll , tendo em conta as rotações de yaw , em
torno do eixo profundidade, e pitch , em torno de sul, usando os resultados da secção
anterior, secção 6.2, a velocidade do veículo no seu referencial provocada pela velocidade de
propulsão é:
(6.55)
(6.56)
As entradas do sistema são dadas pelo vector:
(6.57)
O ruído branco, aleatório, de média nula, é representado pelo vector:
(6.58)
(6.59)
Desta forma as entradas podem ser decompostas em:
(6.60)
A figura 6.3 representa a decomposição de velocidades aplicadas ao veículo no plano
formado pelos eixos este e sul e é útil para a determinação do modelo cinemático.
Assim, a velocidade da distância relativa do veículo ao tubo é dada pela expressão:
(6.61)
O modelo cinemático do sistema é igual a:
(6.62)
Filtro de Kalman: estado (distância e profundidade). Característica tubo 63
Figura 6.3 Decomposição de velocidades da corrente aplicadas no veículo para modelização do seu
modelo cinemático.
6.3.2- Estimação de estado.
Após a obtenção do modelo cinemático do sistema é possível escrever as equações
referentes ao andar de estimação do filtro de Kalman contínuo -discreto para o sistema não
linear. Assim, relembrando as equações de estimação, a derivada do estado estimado é dada
pela matriz:
(6.63)
Os gradientes e com são dados pelas matrizes:
(6.64)
(6.65)
(6.66)
(6.67)
64 Filtros de Navegação
(6.68)
(6.69)
(6.70)
(6.71)
6.3.3- Modelo de Observação
Neste filtro três observações são usadas: a distância mínima e máxima do veículo ao tubo
e a distância detectada na imagem acústica entre o veículo e o fundo marítimo. Como se
pretende que o veículo ande paralelamente ao tubo e com um pitch pequeno, compreendido
entre então, a secção de tubo vista na imagem acústica é aproximadamente uma
circunferência. Ora, tal facto permite simplificar as contas da observação uma vez que
quando o veículo se desloca com um determinado ângulo de yaw face à característica (tubo)
e um determinado pitch fora da gama a secção de tubo vista pelo sonar tende a
ser uma elipse, assunto abordado no capítulo 7, secção 7.2.
Figura 6.4 Observação. Fatia da imagem acústica. Modelização da observação.
A distância mínima entre o veículo e a característica (tubo), isto é Dmin, relaciona-se com
o estado do sistema da seguinte forma:
(6.72)
em que representa o raio do tubo, a distância segundo o eixo entre o centro do tubo e
o veículo, e corresponde à distância entre o veículo e o centro do tubo no plano , isto é
no plano longitudinal do AUV.
A distância máxima (Dmax), tendo em conta que o sonar vê sempre e aproximadamente
uma circunferência, relaciona-se com o estado da seguinte forma:
(6.73)
Finalmente a terceira observação relaciona-se com o estado da seguinte forma:
(6.74)
A expressão de estimado é dada por:
Filtro de Kalman: estado (distância e profundidade). Característica tubo 65
(6.75)
A expressão de , já anteriormente determinada na secção 6.2, em ordem a outros
estados ( ), terá de ser novamente calculada, agora em ordem aos estados
.
Figura 6.5 Distância relativa entre AUV e o tubo. Decomposição da distância em coordenadas do
referencial do veículo.
A figura 6.5 permite chegar geometricamente a uma expressão de :
(6.76)
Deste modo, a observação do sonar é igual a:
(6.77)
A observação estimada será dada por:
(6.78)
(6.79)
66 Filtros de Navegação
(6.80)
6.3.4- Inovação da Observação.
A inovação a cada observação, será dada pela diferença entre a observação vista pelo
sonar e a que se espera ver. Assim, a inovação será dada pela equação:
(6.81)
(6.82)
em que .
6.3.5- Actualização de estado
Definindo o vector de entrada no instante como:
(6.83)
em que representa o raio do tubo que neste filtro, contrariamente ao filtro dimensionado
na secção 6.2, é considerado.
O vector de ruído branco da observação é igual a:
(6.84)
(6.85)
Relembrando as equações de actualização anteriormente determinadas para o filtro de
Kalman em tempo discreto, os gradientes e são determinados para o estado igual ao
estado estimado e um ruído branco ( ) nulo.
(6.86)
Filtro de Kalman: estado (distância e profundidade). Característica parede 67
(6.87)
(6.88)
(6.89)
(6.90)
(6.91)
(6.92)
6.4- Filtro de Kalman: estado (distância e profundidade).
Característica parede
Para além do tubo, pretende-se que o veículo siga uma trajectória paralela a uma
distância de referência de outras características como uma parede.
O desenvolvimento de um filtro de Kalman para uma situação deste tipo, apenas é
alterado, relativamente ao filtro de Kalman cuja característica é o tubo, no andar de
actualização. Então esta secção apenas abordará a observação da característica parede por
parte do sonar.
6.4.1- Modelo de Observação.
A observação da parede depende do tipo de feixe usado no sonar. Como já referido, uma
das características do sonar configurável é a largura do seu feixe. Ora, esta largura pode ser
68 Filtros de Navegação
configurada para 30º ou 60º. Dependendo desta largura de feixe, o sonar verá a parede mais
longe ou mais perto.
A parede será vista pelo sonar como um eco crescente de força a partir da distância
mínima entre o submarino e a parede. Assim, a figura 6.6 a) ilustra o formato da fatia
acústica obtida pelo sonar para o feixe igual a 60º.
Com um feixe igual a 60º, as áreas acima do plano horizontal que passa no sonar e é
perpendicular à parede também são abrangidas. Para um feixe acústico de 30º o mesmo não
se passa, sendo que a área máxima alcançada pelo sonar vai até 5º abaixo do plano horizontal
que passa no sonar e é perpendicular à parede. A figura 6.6 b) demonstra a fatia acústica que
tipicamente será vista para um feixe de 30º.
a) b)
Figura 6.6 Característica parede vista pelo sonar. Decomposição do meio visto em força de eco. a) feixe
de 60º b) feixe de 30º.
Para o feixe de 30º a distância mínima vista pelo sonar será maior do que para um feixe
de 60º.
A observação vista será constituída então pelas duas seguintes características:
(6.93)
A primeira observação, Dmin, é determinada geometricamente pela análise da figura 6.7.
Assim, a distância mínima a que se encontra a parede, vista pelo sonar é igual a:
(6.94)
em que é a distância perpendicular entre submarino e tubo e a diferença de
orientações entre o veículo e tubo no mundo.Podemos verificar agora que, para um feixe de
, a distância mínima é dada por:
(6.95)
Para um feixe igual a de , então a distância mínima é dada por:
(6.96)
A segunda observação é dada pela equação 6.74.
Filtro de Kalman: estado (distância e profundidade). Característica parede 69
Figura 6.7 Distância relativa entre AUV e a parede. Decomposição da distância em coordenadas do
referencial do veículo.
6.4.2- Inovação da Observação
A inovação é igual a:
(6.97)
(6.98)
em que .
6.4.3- Actualização de estado
Definindo o vector de entrada no instante como:
(6.99)
O vector de ruído branco da observação é igual a:
(6.100)
(6.101)
Os gradientes e ,para um estado igual ao estado estimado e para um
valor de ruído branco ( ) igual ao seu valor esperado (zero),definindo , são iguais a:
(6.102)
70 Filtros de Navegação
(6.103)
(6.104)
(6.105)
71
Capítulo 7
Tamanho do tubo na imagem acústica
Na secção 7.1 apenas o efeito do raio e das coordenadas relativas são
considerados para o tamanho do tubo na imagem acústica. Na secção 7.2 o efeito dos ângulos
de Euler, pitch e yaw, também são considerados.
7.1- Efeito do raio do tubo e da distância entre veículo e tubo
na imagem acústica
Nesta secção o estudo do tamanho que um tubo tem na imagem acústica é efectuado.
Considera-se um tubo de raio , paralelo ao veículo e com uma posição relativa de . A
imagem acústica é, como já referido, constituída por fatias acústicas. Assim, o estudo do
tamanho do tubo na imagem consiste em estudar o seu tamanho em cada fatia.
A figura 7.1 representa uma fatia acústica obtida com um tubo no chão marítimo.
Figura 7.1 Fatia da imagem acústica. Quando o veículo se encontra paralelo ao tubo e sem pitch este é
visto como uma circunferência. Distância mínima e máxima (Dmin,Dmax).
Uma fatia acústica representa a força de eco nas várias direcções do feixe acústico. Pela
figura 7.1 podemos verificar que o tamanho do tubo na fatia acústica será dada pela
diferença entre as distâncias Dmin e Dmax.
72 Tamanho do tubo na imagem acústica
A distância Dmin representa a distância mínima entre o submarino e a superfície do tubo.
Essa distância é dada por:
(7.1)
Por sua vez a distância Dmax representa a distância entre o submarino e o ponto em que
deixa de haver eco por parte do tubo. Representa portanto a distância entre submarino e o
ponto a partir do qual surge a zona de sombra da característica (tubo).
A distância Dmax é dada pela seguinte equação:
(7.2)
Desta forma o tamanho do tubo na fatia acústica será dado por uma equação função de ,
e . Essa expressão é igual a:
(7.3)
Um estudo do tamanho do tubo para diferentes , e foi feito. A imagem seguinte,
figura 7.2, apresenta vários gráficos representativos do tamanho do tubo para diferentes
valores. Assim, o estudo do tamanho do tubo foi feito para os raios de 1, 2 e 3mts e para
distâncias e compreendidas entre 0 e 30 mts, uma vez que, é nessa gama de distâncias
relativas ao tubo que se pretende que o veículo trabalhe. Os gráficos traçados foram obtidos
através da ferramenta de cálculo Matlab.
Pelos gráficos obtidos podemos chegar as seguintes conclusões:
Figura 7.2 Tamanho do tubo visto na imagem acústica em função da altura e distância que o sonar se
encontra do mesmo. Para raios de tubo igual a 1, 2 e 3 mts. Como se pode ver a distância ao tubo
influência pouco o tamanho com que o tubo é visto na imagem acústica.
Efeito de pitch e yaw do veículo no tamanho do tubo na imagem acústica 73
A variação do tamanho do tubo na imagem, com variações de e é desprezável, não
chegando aos para um tubo com raio de 1 m.
Quanto maior o raio do tubo maior será a variação do tamanho do tubo na imagem,
ultrapassando por vezes os .
Independentemente do raio do tubo a variação do tamanho do tubo é pouco significativa,
sendo apenas superior a para distâncias de ou de 5 mts.
Quanto maiores forem as distâncias e , mais constante se torna o tamanho do tubo na
imagem acústica.
A variação do tamanho do tubo na fatia acústica com as variações de e é igual, uma
vez que o feixe acústico é simétrico relativamente à sua linha intermédia, linha central
que atravessa o feixe acústico.
7.2- Efeito de pitch e yaw do veículo no tamanho do tubo na
imagem acústica
Como já foi visto na secção 7.1 a variação do tamanho do tubo com a variação da
distância do AUV ao tubo é desprezável. Mas, o mesmo não se passa quando há variação de
pitch e yaw.
O submarino vê em cada instante a secção de tubo cortada pelo feixe acústico que é
variável com pitch e yaw. Essa secção tende para ser uma circunferência de raio igual ao raio
do tubo quando o pitch e yaw relativo ao tubo se aproximam de zero.
O ângulo entre o submarino e a orientação do tubo, no plano horizontal, é representado
pelo yaw relativo. Assim, o yaw relativo é dado pela expressão:
(7.4)
A secção do tubo visto em cada instante pelo submarino é uma elipse. A figura 7.3 a)
mostra a secção de tubo cortada pelo veículo devido a enquanto a figura 7.3 b) mostra o
efeito de pitch.
74 Tamanho do tubo na imagem acústica
a) b)
Figura 7.3 Efeito de pitch e yaw no tamanho que o tubo terá na imagem acústica. a) Efeito de yaw
relativo entre o veículo e a orientação da característica: tubo. b) Efeito de pitch.
Desta forma a secção vista do tubo a cada instante pelo sonar é a elipse de equação,
considerando a origem do referencia xOy no centro do tubo (elipse), igual a:
(7.5)
Em que os braços da elipse são e e dados por:
(7.6)
(7.7)
A figura 7.4 representa a elipse vista pelo veículo, num referencial que tem origem no
centro do tubo e portanto no centro da elipse.
Figura 7.4 Elipse vista pelo sonar, correspondente ao tubo.
Considerando que o veículo AUV se encontra numa posição relativamente ao tubo
então, na imagem acústica, o tubo será representado por uma zona mais clara de tamanho
Efeito de pitch e yaw do veículo no tamanho do tubo na imagem acústica 75
igual à diferença entre a maior e menor distância do veículo à elipse (tubo). A figura 7.5
representa uma fatia acústica vista pelo sonar.
Figura 7.5 Elipse vista pelo sonar, representação da distância máxima e mínima (Dmax, Dmin) que
formam a imagem acústica adquirida pelo sonar.
Uma elipse, de centro na origem e braços e pode ser também representada pelas
seguintes equações:
(7.8)
(7.9)
Ora, a distância mínima do veículo ao tubo corresponde a um ponto positivo em que
satisfaz a seguinte equação:
(7.10)
Assim, a distância mínima do veículo à elipse é determinada para um , isto é
. Um algoritmo capaz determinar esta distância percorre todos os valores
de e determina a menor distância.
O cálculo da maior distância entre AUV e tubo é feito sabendo-se quais os pontos da
elipse cuja tangente à elipse nesse ponto passa por também. Mas, existem dois pares
de coordenadas , dois pontos, em que a recta que passa pelos mesmos e por é
tangente à elipse em . Então a maior distância entre AUV e tubo é dada pela
expressão:
(7.11)
76 Tamanho do tubo na imagem acústica
O ponto é determinado através da equação da recta tangente à elipse em .
A recta tangente ao tubo em é dada pela seguinte equação:
(7.12)
A derivada é igual tanto para o ramo positivo como para o ramo negativo:
(7.13)
Deste modo a recta tangente à elipse em é igual a:
(7.14)
Tendo em conta a equação da elipse, equação 7.5, e a equação 7.14, obtém-se a
expressão:
(7.15)
A equação da recta tangente à elipse em vem, a partir da equação 7.12 e 7.13:
(7.16)
Para a equação 7.16 vem:
(7.17)
Substituindo na equação da elipse:
(7.18)
Definindo então a solução para será
dada por:
(7.19)
(7.20)
em que:
(7.21)
(7.22)
A figura 7.6 representa a determinação das distâncias mínimas e máximas entre o
veículo e o tubo usando as equações 7.10 e 7.11, para um ângulo de pitch e yaw
relativo iguais a . Como pode ser visto, os pontos tangentes à elipse
e que passam pela localização do veículo são determinados com sucesso.
Sintetização da imagem acústica 77
Figura 7.6 Elipse vista pelo sonar, representação de Dmin (vermelho) e Dmax (vermelho e azul
tracejado).
Finalmente a distância ao fundo marítimo, na imagem acústica simulada, é determinada
pela equação:
(7.23)
Existe também o interesse, depois de bem conhecidas as características do
sonar, fazer-se um estudo dos limites de operatividade do sonar. Esses limites
correspondem às distâncias limite entre o submarino e a característica para que a
mesma seja detectada com sucesso pelo feixe acústico. Assim, esse estudo foi feito
e é descrito no capítulo 8.
7.3- Sintetização da imagem acústica
Neste trabalho, tendo em conta as expressões de Dmin e Dmax determinadas na secção
anterior, secção 7.2, foi possível sintetizar a imagem acústica esperada quando no chão
marítimo existe um tubo, para uma trajectória aleatória do veículo.
Todos estes valores, distância mínima (Dmin) e distância máxima (Dmax) do veículo à
elipse, e finalmente altura ao fundo (H) têm de ser passados para pixéis na imagem, isso será
feito através da multiplicação de uma constante igual a número de pontos/range scale.
A figura 7.7 a) e b) mostra a imagem sintetizada quando o tubo tem um raio de 1 m. O
tubo tem uma orientação relativamente ao referencial do mundo igual a 45º e o veículo
desloca-se com um ângulo de yaw e pitch iguais a 10º. No entanto estes ângulos são afectados
na trajectória por uma onda sinusoidal de amplitude 5º. A oscilação de pitch e yaw pode ser
vista na figura 7.7 através da oscilação do tamanho do tubo na imagem acústica. Nesta
78 Tamanho do tubo na imagem acústica
trajectória o veículo encontra-se inicialmente a uma altura de 5 m do chão e na origem do
referencial EOS.
a) b)
Figura 7.7 Imagem acústica sintetizada, conjunto de dez fatias que formam a imagem acústica. A
primeira linha a branco representa a distância a que o sonar vê o fundo marítimo. A “faixa” branca
vista na imagem representa o tamanho do tubo visto no sonar. O tamanho do tubo na imagem acústica
é variável com pitch e yaw. a) representa a imagem sintetizada real de um tubo de raio 1m. b)
representa a imagem real corrompida com ruído branco de variância de 4 pixéis.
79
Capítulo 8
Limites de operatividade do veículo
O veículo subaquático, AUV MARES, não se poderá posicionar em qualquer ponto do
espaço relativamente à característica sobre pena de a deixar de ver, uma vez que o sonar
possui limites de alcance.
Os limites de operatividade do veículo são aqui estudados para um pitch e um yaw
relativo iguais a zero, uma vez que, o objectivo é fazer o veículo deslocar-se paralelamente à
característica e com um pitch nulo. Os limites de operatividade determinados neste capítulo
são máximos, já que para yaw relativo ou pitch diferentes de zero a distância vista pelo sonar
para a característica aumenta e então os limites de operatividade são mais rígidos, isto é,
menores.
8.1- Característica tubo
Nesta secção um novo referencial é usado, o referencial do tubo. O uso deste referencial
surge da necessidade de representar as coordenadas do submarino relativamente ao tubo, de
forma a caracteriza-lo em termos de distância ao tubo.
Assim, as situações limites de operação do AUV são representadas pelas figuras 8.1 a) e b)
e 8.2.
Para o modo de operação do feixe a uma frequência de 800Khz e então, para um ângulo
de incidência do feixe de 30º, a figura 8.1 a) e b) representa os limites de operação do
veículo.
Assim, pela figura 8.1 a) é possível ver que um dos limites de operatividade do veículo são
caracterizados pela recta que passa pelo referencial do tubo e tem declive
. Deste modo, podemos caracterizar um subconjunto de pontos no espaço em que o
submarino se deve encontrar relativamente ao referencial do tubo.
Esse subconjunto é caracterizado pela inequação:
80 Limites de operatividade do veículo
(8.19
a) b)
Figura 8.1 Limites de operação do sonar para um feixe acústico de 30º. a) limite superior. b) limite
inferior.
A figura 8.1 b) permite determinar outra recta que limita o conjunto de pontos do espaço
em que o submarino se deve encontrar para que possa ver o tubo. Essa recta também passa
pela origem do referencial do tubo e tem de declive .
Desta forma o conjunto de pontos em que o veículo se deve encontrar passa a estar
limitado por uma nova inequação:
(8.2)
Mas, esse conjunto de pontos está limitado também pelo range scale do sonar. O range
scale, como já referido, pode ser de 15, 30, 60, 90 e 120 mts. Assim, o conjunto de pontos
que definem a operatividade do veículo passa a ter uma nova restrição. Essa restrição é
imposta pelo alcance máximo do sonar e é definida pelo interior da circunferência de centro
na origem do referencial do tubo e de raio igual ao range scale configurado no sonar. Assim, o
conjunto de restrições passa a ser caracterizado por:
(8.3)
Figura 8.2 Limite de operação do sonar para um feixe acústico de 60º
Quando a frequência da onda acústica no sonar é configurada para 330Khz então, o ângulo
de incidência do feixe acústico é de 60º. As condições que limitam o conjunto de pontos de
operatividade do submarino passam a ser definidos pela equação da recta de declive
e que passa na origem do referencial do tubo e pela circunferência de centro
na origem do mesmo referencial (referencial tubo) e raio igual ao range scale configurado no
sonar.
Característica tubo 81
Ao contrário da situação anterior, onde o ângulo de incidência é 30º, não haverá recta a
limitar superiormente a posição do veículo uma vez que, ao termos um ângulo de incidência
de 60º, o feixe terá uma incidência de ultra-sons em direcções superiores à horizontal,
levando mesmo à reflexão da superfície.
O conjunto que define os limites de operatividade para este caso é definido por:
(8.4)
Mas existem outros limites que definem a operatividade do veículo. Um deles é imposto
pelo chão, já que o veículo não pode passar abaixo do chão. Assim, a sua altura face ao
referencial tubo terá de ser sempre superior ao tubo.
Existe ainda outra zona em que o veículo não deve operar. Essa zona é caracterizada pelo
facto da distância do feixe acústico ao chão marítimo ser superior que a distância do veículo
ao tubo. De facto, é desejável que a altura do veículo ao chão seja inferior que a distância ao
tubo, para que numa posterior análise da imagem acústica a altura ao chão seja vista
primeiro que a distância ao tubo.
Assim a condição de restrição aparece:
(8.5)
(8.6)
Podemos definir então os conjuntos de pontos que definem os limites de operatividade do
veículo, quer para um ângulo de incidência de 30º ou 60º.
Para 30º
(8.7)
Para 60º
(8.8)
As figuras seguintes, figura 8.3 (superior e inferior), representam os limites de operação
para cada um dos ângulos de incidência.
82 Limites de operatividade do veículo
Figura 8.3 Limite de operatividade do sonar, para ângulos de incidência de 30º (superior) e 60º
(inferior), para um range scale de 30 mts.
8.2- Característica parede
Em uma missão cujo objectivo seja deslocar-se numa trajectória paralela a uma parede, o
AUV MARES, não se poderá situar a uma distância qualquer da mesma, uma vez que poderá
deixar de a ver na imagem acústica. Assim, esta secção tem como objectivo descrever quais
os limites de operatividade do veículo quando a característica é uma parede. A figura 8.4 a) e
b), representa os dois modos de operação do sonar, com um ângulo de incidência de 30º e
com um ângulo de incidência de 60º. Assim, através dessas figuras os limites de operação do
sonar podem ser determinados.
Para um ângulo de incidência do feixe acústico de 30º os limites de operação são descritos
pelas inequações:
(8.9)
Além do mais pretende-se que o chão na imagem acústica seja visto primeiro que a
parede, uma vez que ao contrário o fundo do meio de trabalho não poderá ser distinguido.
Assim, a outra restrição será:
(8.10)
Característica parede 83
a) b)
Figura 8.4 Limites de operatividade do sonar quando a característica a seguir é uma parede. a) Ângulo
de incidência de 30º. b) Ângulo de incidência de 60º
Para o ângulo de incidência de 60º os limites de operação são iguais a:
(8.11)
Para este caso, também o chão deverá ser visto primeiro que a parede na imagem
acústica, então:
(8.12)
Em suma os limites de operatividade do veículo são, para 30º
(8.13)
Para 60º
(8.14)
85
Capítulo 9
Ruído nas entradas e estimativa inicial do estado
O modelo de estimação gerado neste trabalho faz uso de algumas entradas disponíveis no
veículo, essas entradas são os ângulos de EULER ( pitch, yaw e roll) e as velocidades lineares
segundo a direcção Este e Profundidade, no seu referencial.
Quer em termos de simulação, quer na realidade estas cinco entradas correspondem a
sinais afectados de ruído branco e que por isso não pode ser previsto.
O ruído branco é modelado no sistema como um sinal de média nula e de distribuição
normal. Assim, associado a cada entrada esta associado um desvio padrão ou o quadrado dele
(variância). Sabendo que a bússola digital pode alcançar incertezas até 0.5º na medição de
yaw, pitch e roll, então a variância, sobredimensionada, considerada para estas três medidas
é de 1º.
Relativamente à velocidade linear, empiricamente, o valor de incerteza da medição,
sobredimensionado, considerado é de 0.4 m/s.
Também as correntes marítimas são necessárias no sistema de estimação implementado.
No filtro as correntes são vistas também como entradas, embora na realidade e na simulação
sejam parâmetros estáticos durante todo o processo, com uma determinada variância
associada. Assim, considerando um cenário real, as correntes são medidas no inicio da missão,
com um determinado erro que empiricamente está abaixo de 0.05 m/s e são passadas como
parâmetros para o filtro.
Assim, a matriz de correlação das entradas na estimação:
(9.1)
(9.2)
86 Ruído nas entradas e estimativa inicial do estado
em que e são os desvios padrão referentes às velocidades linear este e
profundidade , e os desvios de yaw e pitch respectivamente, enquanto e
representam os desvios padrões das correntes marítimas segundo este e sul. Assim:
(9.3)
Também a observação do sonar possui ruído associado, quer proveniente da aquisição da
imagem acústica, quer resultante do processamento da imagem. Assim, é possível que em
cada medida retirada da imagem acústica se possa perder até 4 pixéis. Um pixel de erro
resulta da aquisição da imagem, uma vez que, independente da resolução a que o sonar é
configurado o erro de medida pode oscilar entre -1 a 1 pixel. Os outros três pixéis de erro
surgem da aplicação de algoritmos de segmentação, que pela sua estrutura podem levar à
eliminação de alguns pixéis nas fronteiras da imagem. Dependendo do range scale escolhido
para o sonar, considerou-se que cada medida de distância na imagem acústica possui uma
variância igual a:
. (9.4)
O filtro de Kalman necessita de uma estimação inicial, ou seja, uma estimativa inicial do
seu estado.
Para o filtro cujo estado é caracterizado pela altura a que o veículo se encontra do fundo,
pela distância entre o veículo e a característica e a sua orientação, uma estimativa inicial dos
dois primeiros estados é determinada com recurso a observações do sonar. Assim, usando a
imagem acústica e medindo a distância do veículo ao fundo e a distância à característica,
obtém-se a estimativa inicial dos dois primeiros estados.
Considerando o range scale máximo para o sonar de 90 mts e a pior situação que
corresponde a medir a estibordo e bombordo do sonar, 250 pontos para cada lado, então o
erro para a estimativa inicial dos dois primeiros estados é:
(9.5)
A estimativa inicial do terceiro estado, a orientação da característica é determinada
empiricamente. O erro associado sobredimensionado é igual a .
Desta forma, a estimativa inicial da co-variância do erro de estimação é igual a:
(9.6)
Quando a característica se trata do tubo no fundo da manta marítima, outro parâmetro
(entrada) surge com o erro associado. Esse parâmetro é o raio do tubo e considerando que
está compreendido no intervalo a variância considerada correspondente a este
parâmetro é de 0.5 mts.
Estimação de Pitch 87
9.1- Estimação de Pitch
O ângulo de pitch a que o veículo se desloca pode ser medido usando a bússola digital que
o AUV MARES possui e que consegue incertezas até 0.5º, mas poderá também ser estimado.
Este secção tem como objectivo demonstrar que a estimação de pitch resultará numa
determinação de pior qualidade que a medida obtida através de bússola digital. Então provar-
se-á que pitch deverá ser medido e não um estado a estimar.
Para que pitch seja estimado, este terá de se relacionar com a observação do sonar. Ora,
essa relação é descrita pela expressão:
(9.7)
em que representa a distância vista pelo sonar até ao fundo, o estado de profundidade
do veículo, é o ângulo que o feixe do sonar faz com a linha ortogonal ao plano do chão e é
o ângulo de pitch.
Reescrevendo a equação 9.7 em ordem a pitch, obtém-se:
(9.8)
O erro relativo associado a pitch é dado pela expressão, obtida pelo livro [39]:
(9.9)
(9.10)
(9.11)
em que o estado de profundidade observado é igual a .
Então a expressão do erro relativo de pitch é igual a:
(9.12)
(9.13)
O erro absoluto, segundo [39] relaciona-se com o erro relativo da seguinte forma:
(9.14)
Obtém-se assim a expressão do erro absoluto de pitch:
(9.15)
Para muito pequeno o erro absoluto de pitch tende para infinito uma vez que
tende para zero. Tendo em conta que pitch estará compreendido em um intervalo
, o gráfico da figura 9.1 mostra o erro absoluto de pitch, que ajuda a concluir que a
medida de pitch é preferível à sua estimação.
88 Ruído nas entradas e estimativa inicial do estado
Figura 9.1 Erro de pitch, quando pitch é estimado. Para pitch pequeno o erro é elevado.
9.2- Estimação de Yaw
Nesta secção, tal como na secção 9.1, provar-se-á que yaw deverá ser medido e não um
estado a estimar.
Figura 9.2 Ângulo de yaw relativo entre duas observações consecutivas O1 e O2.
Considerando a ausência de variação de pitch entre duas observações da característica,
e , consecutivas, o ângulo de yaw, rotação em torno do eixo de profundidade, é dado
por:
(9.16)
Considerando a estimação de yaw anterior, no instante , uma estimação precisa, ou seja
sem erro de estimação, o erro da nova estimação, instante , será dado apenas pelo erro
de estimação da variação de yaw .
Assim o erro relativo de yaw obdece à condição:
(9.17)
Estimação de Yaw 89
O declive da característica no referencial do veículo, entre duas observações
consecutivas, é dado por:
(9.18)
Em que e obtêm-se pelas duas seguintes expressões:
(9.19)
(9.20)
Assim, o declive da característica visto no referencial do AUV é igual a:
(9.21)
E então o quociente das observações consecutivas é dado por:
(9.22)
Achando os erros relativos de ambos os lados da equação 9.22:
(9.23)
(9.24)
Uma vez que, o declive no referencial do veículo é igual a:
(9.25)
em que é a orientação da característica estimada no referencial do mundo. Considerando a
estimação dessa orientação perfeita e então sem erro, despreza-se o erro do declive no
referencial do veículo. A equação para o erro relativo de yaw entre duas observações vem:
(9.26)
(9.27)
(9.28)
Assim, o erro de yaw relativo obtém-se pela seguinte expressão:
(9.29)
Como se pretenderia estimar entre intervalos de tempo curtos, a diferença entre
observações é muito pequena e portanto considera-se . Como a expressão
do erro de estimação de yaw relativo é igual a:
(9.30)
Para um range scale do sonar de 15 mts, o erro por pixel mínimo será de .
Considerando um erro na imagem de 4 pixeis, como já referido anteriormente, o erro
90 Ruído nas entradas e estimativa inicial do estado
absoluto da observação é igual a . Assim o erro absoluto de yaw estimado é sempre
superior ou igual a:
(9.31)
Considerando um declive máximo , teremos o erro mínimo
possível na estimação de yaw. Para variações de yaw entre duas observações inferiores a 10º,
o erro absoluto de yaw é sempre superior a 0.5º, certeza conseguida através da bússola digital
existente no veículo, como é mostrado na figura 9.3.
Figura 9.3 Erro de yaw quando este é estimado e não medido, para o declive da característica máximo
igual a 0.5.
Quando o declive é nulo, para variações de yaw pequenas entre duas observações e ,
o erro absoluto de estimação de yaw tende para infinito como demonstra o gráfico da figura
9.4.
Figura 9.4 Erro de yaw quando este é estimado e não medido, para o declive da característica mínimo
igual a 0.
91
Capítulo 10
Seguimento de trajectória e controlo
A máquina de estados da figura 10.1 foi implementada em simulação, para que o
movimento do veículo seja controlado de forma a seguir a trajectória pretendida.
Figura 10.1 Máquina de estados de seguimento de trajectória paralela a uma característica. Parede ou
tubo.
Nesta simulação consideramos a variável de controlo a velocidade de rotação yaw, isto é a
velocidade de rotação em torno do eixo de profundidade . Considera-se portanto que existe
um controlador que, como entrada possui de referência e é capaz de colocar o veículo com
uma velocidade de rotação de yaw igual a de referência. Para as velocidades de propulsão,
Aproximação:
Com o objectivo:
Estimativa inicial:
Filtro funciona durante t
segundos para uma
estimativa inicial. Anda a
velocidade linear de
referência com yaw nulo.
Quando a distância ao
tubo for:
Controlo:
92 Seguimento de trajectória e controlo
segundo o eixo Este e de Profundidade, também se considera que dadas essas velocidades de
referência o controlo leva o veículo até essas velocidades.
10.1- Controlo
O controlo é o estado da máquina de estados permite efectuar o controlo da trajectória
do veículo para que este siga uma linha paralela a uma distância de referência da
característica. Assim, esta secção destina-se a explicar esse estado e como é possível
portanto que o veículo siga a trajectória pretendida.
A saída do controlador é a velocidade de yaw em função da diferença entre a distância do
veículo à característica e a distância de referência. Será função também da diferença entre
ângulos de yaw e de orientação da característica.
Este controlo será constituído por dois PIDs, um responsável por levar a zero a diferença
entre a distância do veículo ao tubo e a distância de referência, enquanto o outro PID será
responsável por levar a zero o ângulo relativo entre a característica e o veículo.
Os dois PIDs têm portanto efeitos contrários, isto é, o PID que controla a distância à
característica tende a aumentar o ângulo relativo entre veículo e a característica, para que o
veículo vá o mais rápido possível para a distância pretendida. O segundo PID tende a diminuir
esse ângulo, anulando em parte o efeito do primeiro PID. Assim, o segundo PID será de
magnitude inferior ao primeiro, sendo útil para a redução do overshoot inicial do veículo,
relativamente à trajectória que se pretende seguir.
O diagrama seguinte representa o controlo de trajectória:
Figura 10.2 Controladores PID1 e PID2. PID1 é responsável por levar o veículo para a distância à
característica de referência. PID2 tem como objectivo alinhar o veículo paralelamente à característica.
A expressão em tempo contínuo, de yaw rate resultante deste controlador é:
(10.1)
Em tempo discreto:
(10.2)
Determinação das constantes de controlo 93
10.2- Determinação das constantes de controlo
A expressão da distância em tempo discreto e em função da rotação de yaw do veículo é
dada por:
(10.3)
A transformada Z da expressão:
(10.4)
È igual a:
(10.5)
(10.6)
Como então:
(10.7)
(10.8)
(10.9)
Este resultado permite obter a expressão da distância em função da rotação de yaw, essa
expressão é igual a:
(10.10)
O sistema é não linear o que impede de obter as constantes de controlo da mesma forma
como se obtêm para sistemas lineares.
O principal objectivo é estabelecer um conjunto de parâmetros para os dois controladores
PID que garantam o seguimento de trajectória por parte do veículo, trajectória paralela e a
uma dada distância de referência da característica com sucesso.
No dimensionamento destas constantes de controlo teve-se em conta que o controlo
deverá ser diferente de acordo com a velocidade linear do veículo. A deslocar-se a duas
velocidades distintas, as constantes do controlo de trajectória devem ser superiores quando a
velocidade linear é superior, de modo que o veículo obtenha o mesmo comportamento e
curvatura que para uma velocidade inferior.
A demonstração desse resultado é feita a seguir. A velocidade de rotação yaw é dada por:
94 Seguimento de trajectória e controlo
(10.11)
em que corresponde à trajectória seguida. Então é a velocidade linear do veículo na
trajectória. Assim o rácio entre yaw rate e a velocidade linear é dado por:
(10.12)
Então, por [40], chegou-se a conclusão que:
(10.13)
em que é o raio de rotação do veículo na trajectória. Desta forma, para que o
raio/curvatura se mantenha constante, então a velocidade de rotação de yaw terá de crescer
proporcionalmente com a velocidade linear do veículo. Tal implica que, as constantes do
controlador, e , sejam proporcionais à velocidade de deslocamento linear do AUV.
Como o controlo só actua a partir do momento em que o veículo se encontra a uma
distância de threshold . Como para distâncias superiores a o veículo aproxima-se da
característica, tubo ou parede, com um ângulo relativo de . O valor de velocidade de yaw
inicial é dado por:
(10.14)
onde representa a velocidade linear do veículo.
Considerando apenas a constante proporcional da distância, pretendendo-se com esta
constante uma curvatura de :
(10.15)
Considerando agora ambas as constantes, quer a proporcional de distância, quer a
proporcional de ângulo, pretendendo-se uma curvatura final igual a , a constante
proporcional de ângulo será igual a:
(10.16)
Então, as expressões das constantes proporcionais do controlo serão dadas por:
(10.17)
Os restantes valores de controlo, , foram determinados
empiricamente uma vez que o controlo e respectivas leis de controlo não são o núcleo desta
dissertação.
95
Capítulo 11
Simulação do filtro de Kalman (EKF)
Durante a realização desta dissertação houve a necessidade de simular o funcionamento
do filtro de Kalman. Para que tal simulação fosse possível, é necessário simular uma
trajectória aleatória do veículo, através do seu modelo cinemático.
Para a simulação do filtro de Kalman foram necessários os seguintes passos:
Simular a verdadeira trajectória do veículo, através do seu modelo cinemático, sem
introdução de ruído aleatório nas entradas.
Através da verdadeira posição do veículo é possível gerar a verdadeira imagem que o
sonar iria adquirir do fundo marítimo (sintetização da imagem acústica secção 7.2 e 7.3),
caso o sonar não fosse afectado por ruído na aquisição e processamento da imagem.
Após a sintetização da imagem ideal (figura 7.6 a)), sem ruído, torna-se necessário
introduzir-lhe ruído branco de média nula (figura 7.6 b)). Assim a imagem obtida e real,
com ruído, poderá ser usada durante a actualização do estado pelo filtro de Kalman.
Outro passo desta simulação passa pela introdução de ruído branco nas entradas do
veículo. Estas entradas são a velocidade nos propulsores, a velocidade da corrente
marítima e ângulos de pitch e yaw.
Depois de todos os sinais de entrada serem afectados de ruído o filtro de Kalman é
aplicado, usando o andar de estimação e actualização. Durante a simulação, tendo em
conta que os sensores de pitch e yaw, têm uma taxa de amostragem de cerca de ,
isto é , e que a taxa de amostragem do sonar andará na ordem dos , , o
andar de estimação é aplicado por quatro vezes consecutivas até que uma nova
actualização seja feita.
A estimativa inicial do estado é gerada na simulação de uma forma aleatória. Ou seja, a
estimativa inicial do estado do veículo será igual ao verdadeiro estado inicial, somado de
um valor aleatório gerado na simulação, de média nula e distribuição normal.
96 Simulação do filtro de Kalman (EKF)
Esta simulação serviu para validar as leis de controlo e seguimento de trajectória, tal
como os filtros de Kalman simulados.
Todo o algoritmo desta simulação é mostrado no diagrama da figura 11.1:
Figura 11.1 Algoritmo da simulação dos filtros de Kalman
11.1- Resultados de simulação
11.1.1- Filtro de Kalman (Distância à característica e profundidade)
Para os seguintes parâmetros:
Tabela 11.1 Parâmetros de simulação da trajectória do veículo quando as características são uma
parede e um tubo.
Característica Parede Tubo
Velocidade Este/Profundidade (m/s) 0.5/0 1/0
Corrente Este/Sul (m/s) 0/0 0.3/0.3
Verdadeira orientação (graus) 15 30
Distância de referencia (metros) 7 7
Resultados de simulação 97
Figura 11.2 Trajectória simulada. Começa na origem, efectua primeiro uma trajectória paralela a este
e aproxima-se depois da trajectória pretendida. Parede.
Figura 11.3 Erro de estimação. O erro dos vários estados estimados é pequeno. Erro de
distância<0.2mts. Erro de profundidade < 1 m. Erro de orientação 0º. Parede.
98 Simulação do filtro de Kalman (EKF)
Figura 11.4 A azul é representada o verdadeiro estado e a vermelho o estado estimado, quando a
característica que se segue é uma parede.
Figura 11.5 Variável de saída do controlador, não ultrapassa os 15º/s e por isso não ultrapassa a máxima
velocidade de yaw possível.
Resultados de simulação 99
Figura 11.6 Trajectória simulada. O veículo aproxima-se inicialmente com um ângulo de 10º relativo à
orientação da característica estimada. O controlo apenas actua para distâncias à característica
inferiores a 0.75 mts. Tubo.
Figura 11.7 O erro inicial do estado é maior. Em regime estacionário o mesmo diminui. Inicialmente o
erro é superior devido à inicialização do filtro e devido ao facto do veículo não se deslocar
paralelamente à característica. Tubo.
100 Simulação do filtro de Kalman (EKF)
Figura 11.8 A verde é representada a distância de referência a que se pretende que o veículo desloque
do tubo.
Para caracteristicas curvas, que mudam a sua orientação no espaço os seguintes
resultados foram obtidos. Para uma parede cuja equação no referencial do mundo é igual a:
(11.1)
Figura 11.9 A trajectória de referência representa-se a verde. A parede encontra-se representada a
azul. Correntes 0.1 m/s e Ve=1 m/s.
Resultados de simulação 101
Figura 11.10 Como pode ser visto sempre que a orientação da parede é alterada, o erro de orientação
estimado aumenta, continuando o erro a diminuir posteriormente.
Para uma parede que obedece à equação:
(11.2)
Figura 11.11 Como se pode ver o filtro estima bem a posição do veículo mesmo para uma parede cuja
orientação evoluí deste modo. Correntes 0 m/s e Ve=0.5 m/s.
102 Simulação do filtro de Kalman (EKF)
Figura 11.12 Embora acompanhe a parede, a distância à caracteristica numa situação deste tipo passa
a possuir um erro superior.
11.1.2- Filtro de Kalman (este, sul e profundidade)
Figura 11.13 Como se pode ver, para este filtro a co-variância do erro de estimação é crescente e a
dada altura a estimação deixa de ser confiável. A azul representa-se a co-variância do erro de
estimação este, e verde a sul. 20º de orientação do tubo, e 20º de orientação do veículo no referencial
do mundo. O veículo desloca-se paralelamente ao tubo.
Resultados de simulação 103
Figura 11.14 O erro de estimação, para este filtro, em que as variáveis de estado são (este, sul e
profundidade) é muito mais elevado do que o filtro cujas variáveis de estimação são (distância e
profundidade). Este erro aumenta ao longo do tempo uma vez que a co-variância diverge. Pode-se ver
picos na estimação.
O filtro cujas variáveis de estado são este, sul e profundidade, foi simulado e a conclusão
retirada foi de que é pouco adequado para navegação relativa a uma característica. Isto
porque, ao usarmos como estado as coordenadas este e sul, a co-variância destes dois estados
é divergente. A figura 11.13 mostra a divergência das co-variâncias do erro do estado
estimado. O erro do estado diverge e então, a dada altura a precisão que se tem no estado
estimado deixa de ser confiável. Isto acontece porque, o sonar fornece informação da
distância do veículo a uma característica, mas não fornece informação da posição a que
veículo se encontra longitudinalmente nessa característica. Então, o filtro torna-se instável e
o erro de estimação cresce sem limites.
Apenas quando o tubo se encontra paralelo ao eixo este há garantia que o erro de
estimação do estado sul converge e portanto nesse eixo a estimação do estado é feita com
bastante precisão. Isto acontece, porque o sonar fornece informação da distância a que o
veículo se encontra da característica que é precisamente o estado sul, mas o erro do estado
este diverge.
105
Capítulo 12
Aquisição de dados: Imagenex SportScan
Tendo em conta os objectivos desta dissertação e a necessidade do uso do Imagenex
SporScan (sonar de varrimento lateral descrito na secção 4.4) uma interface de comunicação
entre PC, com um sistema operativo Windows ou Linux, com o sonar foi efectuada.
Assim, esta secção aborda a aquisição de dados do sonar Imagenex SportScan, e estrutura
da interface que permite essa aquisição de dados.
Nesta secção, fala-se portanto do protocolo de comunicação do sonar, protocolo que o
mesmo aceita e correctamente interpreta secção 12.1, relata-se também a interface entre o
sistema operativo, quer Windows ou Linux, com o sonar de varrimento lateral, Imagenex
SportScan, secção 12.2.
12.1- Protocolo de comunicação do Imagenex SportScan
O sonar usado nesta dissertação tem uma interface de comunicação baseada na
comunicação via porta série. Assim, o sonar comunica através de RS-232, [32].
Para o sonar enviar uma onda acústica para o meio (Ping), receber o eco e retornar os
dados correspondentes à força do eco necessita de um sinal de comando via porta série.
Assim, sempre que o sonar recebe uma trama de comando, com parâmetros de
configuração, a um Baudrate de 115200 bps, caso esse sinal de comando esteja correcto,
então o mesmo efectua um ping e retorna os dados correspondentes a esse ping, a uma
velocidade de transmissão normalizada e configurada através da trama de comando.
106 Aquisição de dados: Imagenex SportScan
Figura 12.1 Imagenex SportScan e comunicação com PC.
12.1.1- Trama de comando via RS-232 para sonar
A trama de comando para o sonar, segundo [32], é constituída por 27 bytes, entre os quais
alguns são usados na configuração do Sonar.
A tabela seguinte representa a trama de comando a enviar para o Imagenex sportscan,
tabela 12.1.
Tabela 12.1 Trama de comando a enviar via RS-232 para o sonar.
Bytes Descrição
0-7 Header
0xFE
Header
0x44
Header Id
0x10
Range
Scale
Reserv.
0
Hold Master/
Slave
Sidescan
Mode
8-15 Start
Gain
LOGF Absorption Port Gain
Balance
Stbd Gain
Balance
Reserv.
0
Pulse
Length
Reserv.
0
16-23 Reserv.
0
Reserv.
0
Reserv.
0
Data
Points
Data
Bits
Up
Baud
Reserv.
0
Reserv.
0
24-26 Switch
Delay
Frequency Terminator
0xFD
Nesta trama de comando existem alguns parâmetros de configuração de maior relevância.
Assim, para o funcionamento correcto do sonar e para a aquisição de uma boa imagem
acústica, os principais parâmetros de configuração são:
Range Scale: 15, 30, 60, 90 e 120 mts.
SideScan Mode: ou bombordo ou estibordo, esquerda ou direita do sonar respectivamente,
ou ambos.
Start Gain: corresponde ao ganho inicial da onda acústica e pertence ao intervalo [0, 40]
DB.
Data Points: número de dados de retorno, há possibilidade de escolher entre 400 e 500
pontos.
Protocolo de comunicação do Imagenex SportScan 107
Up Baud: velocidade de transmissão dos dados de retorno, sendo que a trama de comando
tem de ser obrigatoriamente enviada a uma velocidade de 115200 Bps. As velocidades
normalizadas de transmissão são:
9600, 14400, 19200, 28800, 38400, 57600 e 115200 Bps.
Frequency: neste parâmetro de configuração é possível escolher entre Low Frequency e
High Frequency, isto é, 330 Khz e 800Khz. Este parâmetro permite configurar o ângulo de
incidência do feixe do sonar, algo já falado na secção 4.4.
12.1.2- Retorno de dados de Imagenex SportScan
Após uma trama de comando enviada para o sonar, este retorna via RS-232 os dados de
força de eco correspondentes a uma fatia da imagem acústica. Estes dados de retorno
correspondem a uma trama que possui um cabeçalho e valores de força de eco,
compreendidos no intervalo . O eco igual a corresponde à ausência de eco e à
força de eco máximo.
Assim, a trama de retorno de dados enviada pelo sonar, possui 413 ou 513 bytes. O sonar
retorna 413 bytes quando a trama de comando configura o sonar para 400 data Points, e envia
513 bytes, quando o sonar é configurado para 500 data points.
Definiu-se 500 data points como o número de pontos pretendidos para os dados de retorno
e então, consideramos apenas a trama de retorno correspondente a 513 bytes.
A tabela 12.2 corresponde à descrição da trama de retorno de dados do sonar, após um
pedido.
Tabela 12.2 Trama de retorno de dados do sonar via RS-232.
Bytes Descrição
0-5 Header
„I‟
Header
„H‟
Header
„X‟
Header ID Serial Status Type
6-11 SideScan
Channel
Range
Scale
Reserv.
0
Reserv.
0
Data
Bytes
Data
Bytes
12-511 Echo Data 500 Data Bytes
512 Terminator
0xFC
Os primeiros 12 bytes, correspondem ao cabeçalho dos dados de retorno do sonar e
servem para efectuar o debug dos dados recebidos. Isto é, são bytes que permitem verificar
se os dados de retorno são correctos e correspondentes às condições de configuração do sonar
pretendidas.
Assim, alguns dos bytes que permitem fazer esse debug são:
Serial Status: este byte terá o seu 6 bit a „1‟ caso a trama de comando tiver sido aceite,
caso contrário os dados de retorno serão errados.
108 Aquisição de dados: Imagenex SportScan
SportScan Type: informa que tipo de comunicação está a ser feita, isto é se a uma taxa
(pedido e resposta à mesma taxa de transmissão), ou se a duas taxas (pedido e resposta a
taxas diferentes).
SideScan Channel: este byte informa se os dados retornados pelo sonar correspondem ao
modo de funcionamento de estibordo, bombordo ou ambos.
Range Scale: indica qual o range scale correspondente dos dados recebidos.
Os dados de retorno aparecem entre os 12 e 513 Bytes da trama enviada pelo sonar. A
organização desses dados de retorno é feita dependendo do modo de funcionamento do side
scan. Assim, caso a aquisição de dados do sonar seja feita através de apenas um canal (porto
ou estibordo), então os dados aparecem ordenados da seguinte forma:
1º pixel da imagem = 12º Byte da trama
2º pixel da imagem = 13º Byte da trama
500º pixel da imagem = 511º Byte da trama
Caso o sonar funcione simultaneamente com os dois canais então:
1º pixel da imagem a estibordo = 12º Byte da trama
1º pixel da imagem a bombordo = 13º Byte da trama
2º pixel da imagem a estibordo = 14º Byte da trama
2º pixel da imagem a bombordo = 15º Byte da trama
250º pixel da imagem a estibordo = 510º Byte da trama
250º pixel da imagem a bombordo = 511º Byte da trama
12.2- Interface entre o sistema operativo, Windows ou Linux,
com Imagenex SportScan
Estava a priori desenvolvida uma aplicação que permite receber pacotes de dados de um
porto UDP remoto e envia-los via RS-232, ou receber dados via RS-232 e envia-los para um
porto UDP remoto. Esta aplicação, do lado de envio e recepção por portos UDP, baseia-se na
criação de dois sockets, um de envio e outro de recepção de dados. O socket de envio de
dados tem associado a ele uma porta e um endereço IP remoto, para onde os dados são
enviados. Esta porta e endereço IP correspondem ao endereço de outra máquina para o qual
se pretende enviar e receber pacotes UDP. O socket de recepção de dados tem associado a
porta e endereço da máquina que receberá os pacotes de dados e que corresponde à porta e
endereço da máquina em que corre a aplicação.
Do lado da comunicação RS-232 a aplicação tem associado a porta para onde deve
reencaminhar os pacotes UDP que recebe. È nessa porta que a aplicação fica à escuta de
dados via porta série e que serão reencaminhados para o porto UDP remoto. O lado de
Interface entre o sistema operativo, Windows ou Linux, com Imagenex SportScan 109
comunicação RS-232 é configurado para funcionar a uma taxa de amostragem, possui um
tamanho máximo para os pacotes a receber e a reencaminhar e um tempo máximo (timeout)
de espera entre escutas consecutivas da porta.
Todos os parâmetros que esta aplicação usa são passados por um ficheiro de configuração
que tem especificado a porta local e remota, o endereço local e remoto, a porta série, o
baud rate ou taxa de transmissão, o tamanho máximo do pacote de dados enviado e recebido
e o timeout.
Esta aplicação está feita para Windows e para Linux. A figura 12.2 mostra o algoritmo da
aplicação.
Nesta dissertação uma outra aplicação que interage com a aplicação já existente foi
realizada. Esta nova aplicação tem como principal finalidade criar a trama de comando para o
sonar, que configura os parâmetros do mesmo e lhe pede dados de força de eco. A aplicação
reencaminha essa trama para um porto remoto UDP, correspondente à aplicação já existente,
que por sua vez, reencaminhará os dados via porta série para o sonar Imagenex SportScan.
Posteriormente, a aplicação já existente reencaminha os dados transmitidos via porta série
pelo sonar para a nova aplicação enviando pacotes UDP, cujo tamanho é limitado pela
definição do tamanho do pacote no ficheiro de configuração. Esses dados são tratados na nova
aplicação formando-se assim a imagem acústica.
Figura 12.2 “Remote_serial”. Esta aplicação recebe pacotes UDP de um porto remoto e reencaminha-os
via porta série. Os dados recebidos via porta série são reencaminhados para um porto remoto UDP.
A nova aplicação foi desenvolvida para dois sistemas operativos, Windows e Linux, a figura
12.5 representa a estrutura de funcionamento das duas aplicações.
110 Aquisição de dados: Imagenex SportScan
Figura 12.3 “SideScanReceiveSend”. Esta aplicação envia um pacote UDP, de pedido de dados ao sonar,
para o porto remoto UDP da aplicação “remote_serial”, que por sua vez é reenviada via porta série
para sonar. A resposta do sonar é enviada via porta série para “remote_serial” que por sua vez envia o
pacote de dados para o porto UDP remoto, “SideScanReceiveSend”.
O sistema computacional do AUV MARES, baseia-se no computador on-board PC104, e o
sistema operativo que nele corre Linux Kernel. Este computador on-board, possui uma
interface RS-232 na qual o sonar Imagenex SportScan pode ser ligado. Assim a primeira
aplicação, anteriormente desenvolvida, “remote_serial” para Linux, corre no computador on-
board do AUV MARES. A segunda aplicação, numa fase de testes corre inicialmente em outra
máquina, em Windows ou em Linux. Numa fase final a aplicação, “SideScanReceiveSend”
corre no computador on-board do AUV MARES, e portanto correrá em Linux.
A aplicação ”SideScanReceiveSend” foi desenvolvida em C++ e foi testada com sucesso
fora de água em várias configurações: “SideScanReceiveSend” e “remote_serial” a correr na
mesma máquina em ambientes operativos diferentes, em Windows (laptop) ou em Linux (AUV
MARES). “SideScanReceiveSend” a correr em Windows (laptop) e “remote_serial” a correr em
Linux (AUV MARES).
12.3- Aplicação desenvolvida “SideScanReceiveSend”
A aplicação desenvolvida tem a estrutura descrita pelo diagrama de blocos da figura 12.4.
Assim a estrutura da aplicação “SideScanReceiveSend”, pode ser descrita da seguinte forma:
Aplicação desenvolvida “SideScanReceiveSend” 111
Bloco 1: Criação da trama de comando, aqui é perguntada pela consola alguns dos
parâmetros de configuração do sonar. Esses parâmetros são o range scale, o ganho, o
modo de funcionamento do sonar (bombordo, estibordo ou ambos) e finalmente o ângulo
de incidência pretendido 30º ou 60º.
Bloco 2: Procede-se à leitura do ficheiro de configuração, usando uma variável da classe
“config”. Esta classe possui uma série de funções membro que permitem adquirir
parâmetros do ficheiro de configuração. Deste ficheiro são extraídos os seguintes
parâmetros: endereço IP remoto e local, porta UDP remota e local, e finalmente o
tamanho do pacote de dados trocados.
Bloco 3: Criação de objectos ou variáveis do tipo UDPSender e UDPReceive, através das
funções:
UDPReceiver(local_udp_port, local_address).
UDPSender(remote_udp_port, remote_address).
existentes nas classes UDPSender e UDPReceive.
Bloco 4: Criação de duas rotinas paralelas, que correm continuamente,
“UDPSideScanSend” e “UDPSideScanReceive”. “UDPSideScanSend” envia por UDP para o
endereço IP e porta remotos a trama de pedido de dados, que posteriormente será
reencaminhada via porta série, pela aplicação “remote_serial” para o sonar Imagenex
SideScan. Esta trama é mandada a uma taxa de amostragem fixa e quando a rotina
“UDPSideScanReceive” dá autorização (can_request).
Bloco 5: Como já referido a rotina “UDPSideScanSend” envia a uma taxa de amostragem
fixa o pedido de dados:
SendSocket->Send((char*)&ipmsg, sizeof(ipmsg.header)+(ipmsg.header.datasize)*sizeof(char)).
Bloco 6: Esta rotina recebe dados do porto remoto ficando à escuta da chegada de dados
na sua porta local:
RcvSocket->ReceiveFrom( (char*) &data, sizeof(data), &from).
Após a chegada da trama de dados, o cabeçalho é retirado, os dados guardados em
memória, num vector de inteiros vector<int> data_sonar até que o número de dados
prefaça 500 pontos. A fatia de dados adquirida é adcionada a uma janela deslizante de
largura definida que a cada instante de amostragem (a cada nova fatia) elimina a sua
primeira coluna e junta à ultima fatia adquirida.
112 Aquisição de dados: Imagenex SportScan
Figura 12.4 Algoritmo de aquisição de uma imagem acústica.
113
Capítulo 13
Segmentação de uma imagem acústica real
Para a aplicação e validação de algoritmos de segmentação e extracção de características
de imagens acústicas, uma imagem proveniente do CD de suporte do Imagenex SportScan foi
usada. Assim, o algoritmo de detecção de características foi aplicado sobre a imagem
acústica da figura 13.1, proveniente do CD de suporte do Imagenex SportScan. Secção 13.3.
Posteriormente a interface desenvolvida para a aquisição de dados, comunicação entre
AUV MARES e Imagenex SportScan, foi usada e algumas imagens acústicas foram obtidas.
Neste capitulo algumas dessas imagens são mostradas e também segmentadas. Secção 13.5.
Figura 13.1 Imagem acústica proveniente do CD de suporte do Imagenex SportScan, imagem de 500x
841 pixéis. Nesta imagem não existe característica tubo ou parede. Pode ser vista a zona de não eco, a
zona de eco do chão, e o eco da superfície na imagem acústica.
114 Segmentação de uma imagem acústica real
13.1- Biblioteca CImg
Para a implementação do tratamento, segmentação e extracção de características de uma
imagem acústica, adquirida pelo sonar, rotinas foram implementadas em C++ tendo em conta
os algoritmos de tratamento, segmentação e esqueletização descritos nas secções 5.2, 5.3 e
5.4.
Para a implementação destes algoritmos uma biblioteca open source foi usada, essa
biblioteca é a CImg [41].
A CImg é uma biblioteca de processamento de imagem preparada para programação em
C++. A biblioteca CImg é constituída apenas por um ficheiro cabeçalho (header file) que
disponibiliza um conjunto de classes e funções membro que permitem salvar, abrir,
manipular, processar imagens e mostra-las. Esta biblioteca é facilmente transportada para
vários sistemas operativos tais como Unix, Windows ou MacOs.
Esta biblioteca de enorme importância para aplicações de processamento de imagens, foi
iniciada em 1999 por David Tschumperle no seu projecto de doutoramento [41].
Assim, esta biblioteca estudada, dispõe de um conjunto de classes usadas nesta
dissertação. Deste modo as classes existentes nesta biblioteca são:
Tabela 13.1 Classes constituintes da biblioteca CImg
CImg Representação de uma imagem, em que cada pixel é do tipo T(char, integer, float
etc).A imagem representada poderá ser RGBs ou escala de cinzentos.
CImgDisplay Objecto janela para a amostragem de imagens.
CImgException Cria um objecto de erro para a ocorrência de erros quando funções membros da classe
CImg são chamadas.
CImgList Criação de um objecto/variável que corresponde a uma lista de variáveis da classe
CImg (lista de imagens).
A biblioteca CImg não possui a transformada de Hough, assim esta foi implementada em
C++. Outras funções importantes implementadas em C++ e de bastante importância na
segmentação, extracção de características da imagem são: “print_line” (imprime linha na
imagem), “maximum” (retorna índices da matriz correspondentes ao valor máximo),
“wanted_lines” (retorna as equações do número de linhas desejadas da imagem, as linhas
correspondentes aos máximos da transformada de Hough), “clustering” (efectua uma média
dos declives para a mesma ordenada na origem) e “calc_dist” (determina a média da
ordenada da recta detectada na imagem, no espaço da janela deslizante).
13.2- Janela deslizante
A cada instante de amostragem do sonar uma nova fatia do meio é adquirida. A
segmentação e extracção de características do meio poderá ser feita com recurso a uma ou
várias fatias acústicas que resultam do acréscimo da nova fatia a observações/dados
Janela deslizante 115
anteriores. Ao uso de fatias acústicas anteriores em conjunto com a nova fatia adquirida deu-
se o nome de janela deslizante.
Assim, o uso de uma janela deslizante de tamanho Size consiste em, a cada nova
observação e conjunto de 500 pontos observados do meio (fatia acústica), juntar a fatia mais
recente à janela e eliminar a menos actual. Deste modo, a cada nova observação a janela
deslizante é construída para um posterior tratamento e segmentação.
Cada fatia acústica ou conjunto de 500 pontos de dados referentes ao meio tem associado
ruído aleatório resultante do processo de aquisição dos dados. Ora, o uso de várias fatias
acústicas (janela deslizante) atenua o efeito do ruído aleatório e garante por isso uma melhor
caracterização das observações do meio. Mas, por outro lado o aumento excessivo do
tamanho da janela deslizante leva a um a custo computacional mais elevado resultante dos
algoritmos de processamento de imagem aplicados.
Além do mais, uma janela deslizante de tamanho excessivo não garante que a observação
seja suficientemente actual e portanto, numa situação desse tipo as fatias menos actuais da
janela poderão corresponder a um ponto do espaço distante do estado actual do veículo.
Portanto, um compromisso tem de ser feito de forma que o tamanho da janela deslizante
seja o maior possível, atenuando por isso o efeito do ruído aleatório, mas deverá ter também
um tamanho tal, que garanta uma observação actual do meio.
Para o cálculo do tamanho da janela deslizante ter-se-á de ter em conta os tempos de
amostragem mínimos (T) do sonar, dependentes do range scale escolhido, tabela 4.2.
O tamanho da janela deslizante deve ser variável e dependente da velocidade a que o
veículo se desloca na direcção perpendicular à característica seguida (parede ou tubo).
Deverá ser dependente também da velocidade com que o veículo se aproxima do chão
marítimo. Uma vez que o objectivo é seguir uma característica a uma distância de referência
a janela deslizante não poderá corresponder a uma variação muito elevada da distância
percorrida na direcção perpendicular à característica e na direcção do chão marítimo.
Figura 13.2 Velocidades de aproximação e (velocidade de aproximação na direcção perpendicular
da característica seguida e velocidade de aproximação na direcção do chão marítimo).
116 Segmentação de uma imagem acústica real
Assim, supondo que a variação da distância perpendicular à característica ou na direcção
do chão na janela deslizante pretendida é igual a um pixel da imagem acústica, o número de
fatias da janela deverá ser igual a:
(13.1)
onde o número de pontos é igual a 250 se ambos os lados do sonar forem usados (estibordo e
bombordo) ou 500 pontos se apenas um é utilizado para a aquisição de dados. E em que é
igual a:
(13.2)
A velocidade é igual a:
(13.3)
Assim, a equação do tamanho da janela deslizante vem:
(13.4)
Mas, quando as velocidades de aproximação da característica seguida no meio e a
velocidade de aproximação ao chão do fundo marítimo tendem para zero o tamanho da janela
deslizante tende para infinito. Assim, considera-se que o tamanho da janela deslizante
mínimo é igual a uma fatia. Para o tamanho mínimo da janela deslizante (uma fatia) e para
uma velocidade de deslocação ou iguais a 0.5 m/s, a variação da distância vista na
janela acústica em pixéis é igual a:
(13.5)
(13.6)
(13.7)
Tabela 13.2 A variação da distância percorrida (distância perpendicular) para uma janela deslizante de
uma fatia de dimensão. Esta distância percorrida é apresentada em pixéis para ou iguais a 0.5 m/s.
Range Scale 15 30 60 90 120
67 88 130 171 212
Erro da janela
para 1 fatia 1.12 0.73 0.54 0.48 0.44
Para metade da velocidade máxima, 0.25 m/s, a variação de distância máxima percorrida,
em pixéis, pretendida é de 1 pixel. Assim, o tamanho da janela deslizante vem igual a:
Detecção do chão na imagem acústica 117
(13.8)
(13.9)
Tabela 13.3 Tamanho da janela deslizante para os vários range scale e para uma velocidade de 0.25 m/s
Range Scale 15 30 60 90 120
67 88 130 171 212
size 1,79 2,73 3,69 4,21 4,53
Deste modo as equações que regem o tamanho da janela deslizante em função das
velocidades do veículo na sua componente de profundidade e em direcção da direcção
perpendicular à característica , seja ela um tubo ou parede, são apresentadas na seguinte
tabela:
Tabela 13.4 Função do tamanho (S) da janela deslizante para os vários range scale (RS) dependente das
velocidades (velocidade de aproximação perpendicular à característica e velocidade de
aproximação ao chão marítimo).
RS 15 30 60 90 120
em que e inteiro.
13.3- Detecção do chão na imagem acústica
Para a detecção do chão marítimo na imagem acústica um conjunto de operações
sequenciais são aplicadas sobre a imagem. As operações são detalhadamente explicadas no
capítulo 5.
Assim, para a detecção do fundo marítimo numa imagem acústica real a seguinte
sequência de operações é aplicada:
Determinação do valor mínimo na imagem que corresponde ao nível de cinzento da
zona de não eco (pixéis a preto).
Aplicação de um threshold bimodal com o objectivo de separar a zona de não eco da
restante zona da imagem onde o eco do fundo e de características existe. Assim, usando o
valor mínimo da imagem como limiar de threshold a zona de não eco ficará a preto enquanto
a zona de eco do fundo e de características tornar-se-á homogénea e a branco. A imagem
passará a ter duas cores, preto (0) da zona de não eco e branco (255) das zonas de eco. Figura
13.4 b).
Dilatação seguida de uma operação de erosão aplicada com um elemento estruturante
quadrado de dimensão 3x3. Estas duas operações elementares aplicadas sequencialmente
118 Segmentação de uma imagem acústica real
resultam na operação de fechar, secção 5.4.4. Após a sua aplicação sobre a imagem,
pequenos buracos (pixéis a preto), de dimensão igual ou menor ao elemento estruturante, no
meio da zona de eco do fundo são eliminados. Também as fronteiras são suavizadas e
saliências eliminadas. Figura 13.4 d).
Erosão seguida de dilatação com um elemento estruturante de forma quadrada. A
dimensão deste elemento estruturante deverá ser tal que permita eliminar as linhas de eco
da superfície que possam existir no meio da zona de não eco. Assim, a janela do elemento
estruturante usada tem dimensão igual: 10x10. Figura 13.5 b).
Detecção horizontal de orlas aplicando a convolução de um filtro quadrado de
dimensão 3x3, esse filtro poderá ser um filtro de Sobel (A=2) ou Prewitt (A=1):
(13.10)
A convolução deste filtro com a imagem é igual a zero quando aplicado às zonas homogéneas
e diferente de zero quando aplicado em pixéis orla. Figura 13.5 c).
Aplicação da transformada de Hough de forma a obter as equações das linhas do
fundo, Figura 13.6. A aplicação da transformada é feita para declives pequenos (objectivo é
detectar linhas horizontais) compreendidos entre com variação de . A
ordenada na origem está compreendida no intervalo com variação de . Assim, a
transformada de Hough tem a seguinte configuração:
(13.11)
Um clustering é aplicado à transformada de Hough para que para cada ordenada na
origem compreendida entre seja feita a média do declive. Isto é feito com o
objectivo de juntar rectas com a mesma ordenada na origem, mas com declives diferentes
embora próximos. Figura 13.7.
Para as rectas encontradas é aplicado ao tamanho da janela deslizante a média da
ordenada para que a distância ao fundo, quer a estibordo, quer a bombordo, seja
determinada.
A informação da transformada de Hough numa missão de navegação seria conjugada com
a informação dos sensores e filtros de navegação aplicados ao veículo.
Imaginemos que a transformada de Hough indica como provável recta de eco do fundo
marítimo uma equação que representa uma grande inovação relativamente ao esperado,
então uma nova equação na transformada de hough tem de ser procurada.
Suponhamos ainda que, durante a segmentação da imagem, as linhas de eco da superfície
não são devidamente eliminadas, possivelmente porque o elemento estruturante tem uma
dimensão menor que essas linhas. Ora, a transformada de Hough detectará essas linhas e uma
Detecção do chão na imagem acústica 119
forma de as discriminar será usar o sensor de pressão do veículo cuja medida é transformável
na profundidade a que o veículo se encontra da superfície.
A figura seguinte, figura 13.3, mostra o algoritmo aplicado para a obtenção das distâncias
ao fundo quer a estibordo, quer a bombordo:
Figura 13.3 Algoritmo aplicado a uma imagem acústica para a detecção do fundo marítimo. As equações
de linhas e distâncias medidas são usadas nos filtros de navegação. A cada observação uma nova fatia
acústica é obtida e juntada à janela deslizante.
120 Segmentação de uma imagem acústica real
a) b) c) d)
Figura 13.4 a) Janela deslizante de dez fatias acústicas. Cada fatia possui 500 pontos, 250 a estibordo e
outros 250 a bombordo. b) Resultado da aplicação de threshold à janela original com limiar de
binarização igual ao mínimo da janela (zona de não eco). c)Resultado de aplicação da dilatação com um
elemento estruturante quadrado de dimensão 3x3. Os buracos a preto no fundo da imagem acústica são
eliminados e as fronteiras aumentam de dimensão (pixéis a branco). d)Resultado da aplicação de uma
erosão, os pixéis da fronteira aumentados na dilatação são agora restituídos.
Detecção do chão na imagem acústica 121
a) b) c)
Figura 13.5 a) Resultado da aplicação de uma erosão na janela com um elemento estruturante de
dimensão 10x10. A erosão elimina as linhas a branco correspondentes ao eco da superfície na zona de
não eco (a preto). A zona de não eco é aumentada com a erosão. b)Resultado da aplicação de uma
dilatação sobre a janela deslizante com o mesmo elemento estruturante. Os pixéis da fronteira da zona
de não eco aumentados durante a erosão são agora eliminados na dilatação. c)Resultado da convolução
de um filtro de Sobel ou Prewitt sobre a janela. As zonas de fronteira (orlas) são detectadas.
122 Segmentação de uma imagem acústica real
Figura 13.6 Transformada de Hough. Os elementos a branco indicam a presença de rectas. Como pode
ser visto duas zonas fundamentais da transformada indiciam a presença de rectas. Essas zonas
fundamentais são as rectas a estibordo e a bombordo da imagem acústica e obtidas pela aplicação do
filtro de detecção de orlas (figura 13.5 c)).
Figura 13.7 Transformada resultante do clustering aplicado à transformada de Hough. As duas zonas da
transformada de Hough que indiciam a presença de rectas são tornadas em dois pontos que dão origem
às equações das rectas (declive, ordenada na origem).
Assim as equações das rectas obtidas pelo algoritmo são, a estibordo:
(13.12)
A bombordo:
(13.13)
A distância média a estibordo, em pixéis, dada pelo algoritmo é igual a pixéis.
Então a distância medida a estibordo, para um range scale de 15 mts, é igual a:
(13.14)
A distância média a bombordo dada pelo algoritmo é igual a pixéis. Então a
distância medida a bombordo é igual a:
(13.15)
13.4- Detecção de características na imagem acústica
Devido à impossibilidade de aquisição de imagens acústicas do meio com características
como um tubo ou parede, o algoritmo de tratamento, segmentação e extracção de dados
referente a características não foi validado. Mesmo assim o algoritmo é apresentado:
Aplicação de um eventual filtro de média para suavização da imagem e eliminação de
ruído.
Detecção horizontal de orlas aplicando a convolução de um filtro quadrado de
dimensão 3x3, esse filtro poderá ser um filtro de Sobel (A=2) ou Prewitt (A=1):
(13.16)
A convolução deste filtro sobre a imagem resultaria na detecção de uma orla quando o eco do
fundo marítimo passa a existir e portanto quando a zona de não eco acaba. Outras orlas
Resultados experimentais 123
seriam detectadas: a zona onde o eco da característica passa a existir e onde o eco da mesma
deixa de haver.
Erosão seguida de dilatação com um elemento estruturante de forma quadrada, para
a eliminação do eco da superfície na zona de não eco e de buracos existentes no fundo da
imagem resultante da convolução pelo filtro diferencial referido no passo anterior.
Aplicação da transformada de Hough de forma a obter as equações das linhas do
fundo e das características.
As equações de rectas obtidas na transformada de Hough correspondentes ao fundo
marítimo são descriminadas através do algoritmo de detecção do fundo marítimo descrito
atrás, ficando apenas as rectas correspondentes às características.
13.5- Resultados experimentais
No passado 21 de Junho de 2009 uma missão de recolha de dados no rio Douro, Porto, foi
efectuada. Essa missão foi realizada com o objectivo de, usando a interface desenvolvida de
comunicação entre pc on-board do veículo e o sonar Imagenex SportScan, fazer a recolha de
imagens acústicas do fundo do rio. Assim, o sonar Imagenex SportScan foi acoplado ao ASV
(Autonomous Surface Vehicle) Zarco (barco desenvolvido pelo The Oceansys Group FEUP-
DEEC) para a execução do varrimento do fundo do rio.
O local da missão foi o rio Douro, a montante da barragem de Lever/Crestuma. O controlo
do veículo é feito via rádio através de Joystick e a missão consistiu em fazer vários
varrimentos do fundo marítimo junto à margem do rio (margem do Porto), adquirindo imagens
nesse varrimento. Cada imagem acústica adquirida é constituída por 100 fatias acústicas, isto
é, 100 pings (pedido/recepção de 500 pontos de dados). As imagens obtidas e mostradas nas
figuras 13.9 a) e 13.12 a) correspondem à aquisição quer a estibordo quer a bombordo do
veículo, com um feixe acústico de 30º (frequência de 800KHz) e para um ganho do feixe de 20
decibéis.
Figura 13.8 Zarco Autonomous Surface Vehicle [42]
124 Segmentação de uma imagem acústica real
a) b)
Figura 13.9 a) Imagem acústica adquirida de dimensões 100x500 pixéis. Estibordo e bombordo. O
veículo na missão moveu-se da esquerda para direita. Pode ver-se que a estibordo (à direita do veículo)
o fundo do rio está mais perto que a bombordo, uma vez que a força de eco é superior, o que de facto
tem lógica, uma vez que junto à margem (estibordo) o fundo do rio está a uma menor distância. Nesta
missão o veículo circula com yaw relativo à margem, uma vez que a distância ao fundo marítimo
diminui na janela acústica. b) Resultado da segmentação da imagem acústica. A linha de eco do fundo
a estibordo é detectada.
Resultados experimentais 125
Figura 13.10 Distância ao fundo marítimo (estibordo), em pixéis, determinada pelo algoritmo de
detecção do fundo marítimo, para a uma janela deslizante de 10 fatias.
Figura 13.11 Distância ao fundo marítimo (estibordo), em metros, determinada pelo algoritmo de
detecção do fundo marítimo, para a uma janela deslizante de 10 fatias.
126 Segmentação de uma imagem acústica real
a) b)
Figura 13.12 a) Imagem acústica obtida a uma maior distância da margem relativamente a 13.8 a)
e então a uma distância superior do chão do rio. Devido ao aumento da distância ao fundo, a imagem
acústica é de pior qualidade, mesmo assim esta é bem segmentada pelo algoritmo descrito. Nesta
imagem o veículo circula da esquerda para a direita e a distância ao fundo marítimo é pouco variável.
Nesta imagem pode ver-se o eco de um objecto desconhecido e respectiva sombra. b) Resultado da
segmentação da imagem. Linha de eco do fundo a estibordo detectada com sucesso.
Resultados experimentais 127
Figura 13.13 Distância ao fundo marítimo (estibordo), em pixéis, determinada pelo algoritmo de
detecção do fundo marítimo, para a uma janela deslizante de 10 fatias.
Figura 13.14 Distância ao fundo marítimo (estibordo), em metros, determinada pelo algoritmo de
detecção do fundo marítimo, para a uma janela deslizante de 10 fatias.
129
Capítulo 14
Implementação no AUV
Futuramente, uma possível interligação entre todas as fases executadas no decorrer desta
dissertação, que permita a aplicação real ao AUV MARES, poderá ser desenvolvida. Assim,
uma final aplicação corresponde a um algoritmo que permita a estimação e actualização do
estado do veículo e do mapa do ambiente, em conjunto com o pedido e recepção de dados ao
sonar, tal como o controlo de trajectória do veículo e rotina de tratamento da imagem
acústica. Toda esta aplicação poderá ser desenvolvida em C++. A execução dessa rotina no
computador on-board do veículo, levará ao cumprimento da missão de seguir uma trajectória
paralela, a uma distância de referência de uma característica existente no meio onde o
veículo é colocado. Toda essa rotina é, nesta dissertação, apenas modelada através da
linguagem standard de automação definida na norma IEC 848, o GRAFCET. Nas secções
seguintes os grafcets correspondentes a essa modelação são mostrados e explicados.
14.1- Grafcet principal
A figura 14.1 a) representa o grafcet principal, em que todos os restantes grafcets são
inicializados/reinicializados ou então congelados. Este grafcet é de nível hierárquico superior
dos restantes grafcets de controlo do sistema. Assim, o primeiro passo corresponde ao estado
em que o veículo se encontra parado, enquanto o macro-step Inic corresponde à inicialização
do sistema. A inicialização do sistema é representada pelo grafcet da figura 14.1 b). O macro-
step Inic inicializa o sonar, gerando a trama de pedido de dados, usada pelo grafcet 14.3 a),
inicializa também o filtro de Kalman, o filtro de estimação (estado e correlações).
130 Implementação no AUV
a) b)
Figura 14.1 a) Grafcet principal. Inicialização e execução de tarefa. b) Macro-step INIC, inicialização,
neste macro-step o sonar é configurado, as correlações e estado do filtro são inicializados.
O terceiro step corresponde à execução da missão por parte do veículo AUV e então,
neste passo os grafcets de controlo da missão são inicializados, ou reinicializados à entrada.
Quando as correlações do filtro são demasiado elevadas e iguais ou maiores a um valor limite
(Threshold), o veículo é parado. A acção ou decisão tomada numa situação destas não é
objecto de estudo desta dissertação. Desta forma, o grafcet principal inicializa outros seis
grafcet de nível hierárquico iguais, executados em paralelo e que partilham entre si variáveis
de controlo do sistema.
14.2- Grafcet: previsão e actualização
Na figura 14.2 a) e b) estão representados os grafcets correspondentes ao filtro de
Kalman. Na figura 14.2 a) a estimação/previsão do filtro é modelada pelo step Previsão.
Neste passo à transição de entrada são executadas as equações do filtro de Kalman
correspondentes ao andar de previsão.
A figura 14.2 b) representa o grafcet do andar de actualização do filtro de Kalman, em
que no step de Actualização as equações correspondentes são executadas à entrada.
Grafcet: envio/recepção dados do sonar 131
a) b)
Figura 14.2 Grafcets correspondents ao filtro de Kalman. a) Previsão dá-se a uma taxa fixa igual a
TaxaPrev, e quando o estado não é actualizado. b) Actualização. Acontece quando novos dados existem,
correspondentes a dados da imagem acústica.
14.3- Grafcet: envio/recepção dados do sonar
Os grafcets correspondentes à comunicação entre sonar e AUV são representados pelas
figuras 14.3 a) e b).
a) b)
Figura 14.3 Grafcets de comunicação entre AUV (computador on-board) e o sonar. a) Trama de pedido
de dados é enviada assim que uma autorização surge, essa autorização é dada pelo step Recebe dados,
assim que a recepção de dados acontece. b) Recepção de dados, cálculo do tamanho da janela
deslizante e actualização da janela.
O grafcet 14.3 a) (aplicação já desenvolvida) é responsável por receber dados, pelo
cálculo do tamanho da janela acústica tendo em conta a velocidade do veículo e pela
formação da janela acústica. O step que modela a recepção de dados (Recebe dados) dá
autorização para que um novo pedido de dados seja efectuado, grafcet da figura 14.4 a).
132 Implementação no AUV
14.4- Grafcet filho: Controlo de trajectória
A figura 14.4 representa o grafcet, paralelo, de controlo de trajectória do veículo. Este
tema é abordado com mais detalhe no capítulo 10. Este grafcet é constituído por três steps
fundamentais, um responsável por uma estimativa inicial do estado do veículo e do mapa
(Previsão Inicial), outro responsável pela aproximação (Aproxim.) à característica, tubo ou
parede, com um ângulo de aproximação igual a . O step de Controlo é regido por uma lei de
controlo relatada no capítulo 10. A saída desta lei de controlo é a velocidade de rotação de
yaw, yaw rate.
Figura 14.4 Controlo de trajectória do veículo.
14.5- Grafcet filho: Processamento da imagem acústica
O processamento da imagem acústica (janela deslizante gerada pelo grafcet 14.3 a)) é
representa pelo grafcet figura 14.5.
Neste grafcet todo o algoritmo de tratamento, segmentação da janela deslizante, de
forma a obter-se as linhas correspondentes ao fundo marítimo e às características são
representados pelos steps: Segmentação J1 e Segmentação J2. Após o processamento de
imagem, a determinação das equações das rectas na imagem é feita através dos passos Hough
J1 e Hough J2. Assim, paralelamente, é feito o tratamento da imagem com o objectivo de
determinar o fundo marítimo (J1) e o tratamento da imagem de forma a extrair a
característica, parede ou tubo, da janela deslizante (J2). A determinação do fundo marítimo
usa em paralelo a estimação da observação (Estimador Observação). Já a determinação da
característica na imagem acústica faz uso de dados do estimador da observação e da
determinação da equação do fundo marítimo (Hough J1).
Quando todo este processo está completo, a variável que sinaliza a existência de novos
dados para a actualização (figura 14.2 a)) é colocada a verdadeiro (Novos dados Observados).
Grafcet filho: Processamento da imagem acústica 133
Figura 14.5 Processamento da janela deslizante, obtenção de dados relativamente à distância que o
veículo se encontra da característica (parede ou tubo) e altura do AUV.
135
Capítulo 15
Conclusões
Nesta dissertação de mestrado em Engenharia Electrotécnica e de Computadores, ramo de
Automação, desenvolvida durante o 2º semestre do ano lectivo de 2008/09, os objectivos
propostos foram atingidos.
Assim, o estudo da importância da robótica subaquática, a evolução da mesma e a
identificação de vários tipos de veículos subaquáticos existentes foi efectuado nesta
dissertação. Também, alguns dos diferentes tipos de sonares, dados provenientes e
informação adquirida foi com sucesso explorada e identificada nesta dissertação.
Um modelo matemático de fusão e estimação foi identificado, estudado e as respectivas
equações expressões foram deduzidas. O modelo matemático (estimador) usado foi o filtro de
Kalman.
Finalmente, foram estudados algoritmos capazes de tratar imagens monocromáticas,
segmentá-las, esqueletiza-las e extrair características foi desenvolvido no sentido de serem
posteriormente aplicados a imagens acústicas reais provenientes do sonar de varrimento
lateral.
Como base fundamental desta dissertação, três equipamentos foram usados. Todo o
estudo desta dissertação foi desenvolvido em torno do AUV MARES. O sonar de varrimento
lateral estudado e usado experimentalmente foi o Imagenex SportScan, que é uma das bases
fundamentais desta dissertação uma vez que é este que permite observar o meio.
Finalmente, o barco (ASV) ZARCO foi usando numa missão experimental efectuada no rio
Douro, Porto, descrita no capítulo 13. Nesta missão, acoplado por debaixo do ASV estava o
sonar Imagenex SportScan, que permitiu adquirir imagens acústicas reais do fundo do rio
Douro.
Assim, todo o estudo do que já existe, algoritmos e métodos necessários para o
desenvolvimento desta dissertação foi efectuado e é apresentado nos capítulos de 1 a 5.
A oportunidade desta dissertação surge do facto de, todo o trabalho desenvolvido durante
o período da dissertação contribuir para um aumento do grau de autonomia de um veículo
136 Conclusões
autónomo, ao dotá-lo com a capacidade de navegar relativamente a características existentes
no fundo marítimo, sem auxílio de outros métodos de localização, que muitas vezes limitam a
sua navegação a um espaço restrito no mundo.
A navegação relativa apenas é possível com a fusão entre a informação sensorial do AUV
MARES com a informação proveniente de observações do meio dadas pelo sonar de varrimento
lateral. Essa fusão é feita através do filtro de Kalman estendido.
O filtro de Kalman estendido possibilita a localização do veículo no mundo e construção
do mapa do ambiente em simultâneo. Assim, nesta dissertação dois diferentes filtros, com
variáveis de estado distintas são modelados (capítulo 6). Um dos filtros usa como variáveis de
estado as coordenadas Este, Sul e profundidade do veículo, no mundo, em conjunto com o
declive e ordenada na origem das características no mundo. O outro filtro usa como variáveis
de estado a distância do veículo à característica, a profundidade do veículo e finalmente, a
orientação da característica no mundo. As duas características abordadas nesta dissertação
são: um tubo no chão marítimo e uma parede vertical.
A fiabilidade destes filtros foi experimentada através de simulação (capítulo 11), onde
também as leis de controlo e de seguimento de trajectória modeladas para o veículo são
testadas.
A conclusão retirada da simulação é que as leis de controlo e seguimento de trajectória
implementadas são eficientes, isto é claro, para um estimador (EKF-Extended Filter Kalman)
que forneça a localização do veículo e das características no mundo com precisão. Concluiu-
se também que apenas o filtro cujas variáveis de estado são, a distância do veículo à
característica, a profundidade do veículo e finalmente, a orientação da característica no
mundo, é fiável e adequado para a navegação relativa, obtendo-se estimativas do estado do
sistema bastante precisas, o que permite uma navegação relativa a características confiável.
Outras conclusões retiradas referem-se ao tamanho do tubo na imagem acústica (capítulo
7) e aos limites de operatividade do veículo (capítulo 8) onde uma zona de operatividade é
obtida.
Concluiu-se ainda que os ângulos de orientação do veículo, pitch e yaw, devem ser
medidos e não estimados (capítulo 9), uma vez que a incerteza associada à medição é menor
que a incerteza associada a uma eventual estimação.
Numa vertente de tratamento da imagem acústica, algoritmos de tratamento,
segmentação e extracção de características foram implementados em C++, com a ajuda de
uma biblioteca standard vocacionada para o tratamento de imagens, essa biblioteca é a CImg.
Esses algoritmos foram aplicados sobre imagens acústicas reais do fundo marítimo.
A aplicação desses algoritmos sobre as imagens resultou na detecção e extracção do fundo
marítimo com sucesso, tal como era pretendido (capítulo 13).
A interface desenvolvida (capítulo 12) para a comunicação entre o sonar side scan com o
computador de bordo do veículo foi testada na missão levada a cabo no rio Douro, Porto.
137
Anexos
A.1 Solução da equação de co-variância
A equação da derivada da co-variância em tempo contínuo (co-variância de estimação) é
dada pela equação 3.46. Definindo as variáveis λ e como sendo funções da co-variância do
erro estimado:
(A.1.1)
(A.1.2)
(A.1.3)
Combinando essas variáveis teremos:
(A.1.4)
Podemos através da equação anterior construir o seguinte sistema:
(A.1.5)
A partir deste sistema a matriz de transição pode ser criada e então o sistema em tempo
contínuo é passado para tempo discreto. Definindo a matriz:
(A.1.6)
A matriz de transição é dada por:
(A.1.7)
O sistema pode então ser reescrito da seguinte forma:
(A.1.8)
Obtém-se assim pela combinação das equações A.1.2 e A.1.8, a matiz de co-variância do
erro de estimação em tempo discreto:
(A.1.9)
138
A.2 Convergência e Estabilidade do filtro de Kalman
Algumas conclusões podem ser obtidas a partir das equações de estimação e de
actualização, tabela 3.1. Estas conclusões referem-se ao filtro de Kalman discreto-discreto,
mas também são válidas para o filtro de Kalman do tipo continuo-discreto.
Os ruídos do processo e de observação são modelizados por ruído branco, com uma
distribuição normal:
(A.2.1)
(A.2.2)
Tal como era de esperar, a co-variância do erro de estimação
, cresce sem limites, uma vez que a
estimação é dada pelo conjunto de sensores, de localização relativa, dead-reckoning.
Estes sensores levam a um erro de estimação crescente e sem limites.
A co-variância do erro de estimação de estado diminui após actualização, uma vez que
a co-variância do erro de estimação proveniente da estimação, é subtraída
por .
As matrizes e são todas matrizes positivas semi-definidas.
A.2.1 Confiança nula na observação
Se a confiança na observação for pequena então, o ganho de Kalman será baixo e
tendencialmente o andar de actualização deixa de ter influência, sobre a estimação do
estado. Assim, o estado estimado tende a ser dado apenas pelo processo, ou seja, pela
estimação.
Num caso extremo, se a confiança na observação for nula, então . Em regime
estacionário obtemos as seguintes equações do filtro:
.
.
.
Em regime estacionário: .
(A.2.3)
(A.2.4)
em que e .
Obtemos assim a equação de Lyapunov A.2.4. Que nos diz que, [43,44], caso haja sempre
uma solução para , para uma matriz positiva semi-definida qualquer, isto é , com
positiva semi-definida também, então o filtro é estável e a co-variância do erro de estimação
em regime estacionário é dada por .
139
A interpretação do teorema de Lyapunov leva-nos a dizer que o filtro será estável apenas se
for estável e portanto, se , ou seja, caso os valores próprios da matriz gradiente ,
tiverem contidos no interior do circulo unitário.
A.2.2 Confiança máxima na observação
Se a confiança na observação for elevada o ganho de Kalman será elevado e
tendencialmente o andar de actualização passa a ter grande influência sobre a estimação do
estado. Assim, o estado estimado tende a ser dado apenas pela inovação da observação, ou
seja, pela actualização. Num caso extremo, se a confiança na observação for máxima então
. Em regime estacionário obtemos as seguintes equações do filtro:
Em regime estacionário:
.
A.2.3 Co-variância do erro de estimação em regime estacionário
Em regime estacionário, , obtemos a seguinte co-variância
do erro de estimação:
(A.2.5)
(A.2.6)
(A.2.7)
(A.2.8)
em que e .
Obtemos mais uma vez a equação de Lyapunov A.2.8, como já referido, [43-44], o sistema
será estável se a matriz for estável e portanto os seus valores próprios estiverem contidos
no interior do círculo unitário e então a co-variância do erro de estimação tenderá para .
Assim a estabilidade do filtro verificar-se-á caso:
(A.2.9)
140
A.3 Co-variância do erro estimado em tempo contínuo
O objectivo desta subsecção é determinar a equação da co-variância em tempo contínuo.
As equações de co-variância em tempo discreto são dadas por:
Estimação discreta:
(A.3.1)
Actualização:
(A.3.2)
(A.3.3)
(A.3.4)
Pela equação A.3.4 a co-variância do erro de estimação quando é dada por:
(A.3.5)
(A.3.6)
Substituindo :
(A.3.7)
em que:
(A.3.8)
Quando então:
(A.3.9)
(A.3.10)
(A.3.11)
141
Referências
[1] Wood, Stephen, “Autonomous Underwater Gliders”, on “Underwater vehicles”, ISBN
978-953-7619-49-7, Publisher: IN-TECH, January 2009.
[2] B. Bingham, “Navigating Autonoumous Underwater Vehicles”, on “Underwater
vehicles”, ISBN 978-953-7619-49-7, Publisher: IN-TECH, January 2009.
[3] J. Horgan and D. Toal, “Computer Vision Applications in the Navigation of Unmanned
Underwater Vehicles”, on “Underwater vehicles”, ISBN 978-953-7619-49-7, Publisher:
IN-TECH, January 2009.
[4] P. E. Hagen,O. Hegrenaes, B. Jalving, O. Midtgaard, M. Wiig and O. K. Hagen, “Making
AUVs truly Autonoumous”,on “Underwater vehicles”, ISBN 978-953-7619-49-7,
Publisher: IN-TECH, January 2009.
[5] M. Breivik and T. I.Fossen, “Guidance Laws for Autonomous Underwater Vehicles” on
“Underwater vehicles”, ISBN 978-953-7619-49-7, Publisher: IN-TECH, January 2009.
[6] Matos and N. Cruz, “Mares-Navigation, control and On-board Software”, on
“Underwater vehicles”, ISBN 978-953-7619-49-7, Publisher: IN-TECH, January 2009.
[7] John Folkesson, Jacques Leederkerken, Rob Williams, Andrew Patrikalakis and John
Leonard, “A Feature Based Navigation System for an Autonomous Underwater Robot”,
6th International.
[8] T. Ruiz, S. de Raucourt, Y. Petillot, and D. M. Lane, “Concurrent Mapping and
Localization Using Sidescan Sonar”, IEEE Journal of Oceanic Engineering, Vol. 29 No.
2, April 2004.
[9] Michael Scorba, “Simultaneous Localisation and Map Building”, Robotic Reacherch
Group Department of Engeneering of Oxford, Oxford England, thesis for the Degree of
Philosophy, 1997.
142
[10] Yvan R. Petillot, Joaquim Salvi e Elisabet Batlle, “3D Large-Scale Seabed
Reconstruction for UUV Simultaneous Localization and Mapping”, Ocean Systems Lab,
Heriot-Watt University, Computer Vision and Robotics, University of Girona.
[11] Christoper M. Smith and Jhon J. Leonard, “A Multiple-Hypothesis Approach to
Concurrent Mapping and Localization for Autonomous Underwater Vehicles”,
Department of Ocean Engineering Massachusetts Intitute of Technology, Cambridge.
[12] John J. Leonard and Hugh F. Durrant-Whyte, “Simultaneous Map Building and
Localization for an Autonomous Mobile Robot”, NEC Research Institute e Department
of Engineering Science University of Oxford Cambridge, IEEE/RSJ International
Workshop on Intelligent Robots and Systems IROS ‘91. Nov. 3-5, 1991. Osaka,
Japan. IEEE Cat.
[13] Howie Choset and Keiji Nagatani, “Topological Simultaneous Localization and Mapping
(SLAM): Toward Exact Localization Without Explicit Localization”, IEEE transactions
on Robotics and Automation, vol. 17, No.2, April 200.
[14] David Ribas, Pere Ridao, José Neira, Juan D. Tardos, “SLAM using an Imaging Sonar for
Partially Structured Underwater Environments”, IROS 2006.
[15] T. I. Fossen, “Guidance and Control of Ocean Vehicles”, ISBN 0-471-94113-1,
December 1995.
[16] J. Borenstain, H. R. Everett, L.Feng and D. Wehe, “Mobile Robot Positioning & Sensors
and Techniques”, Invited paper for the Journal of Robotic Systems, Special Issue on
Mobile Robots, Vol. 14 No. 4, pp. 231 – 249.
[17] J. S. Esteves, A. Carvalho e C. Couto, “Generalized Geometric Triangulation
Algorithm for Mobile Robot Absolute Self-Localization”, IEEE, 2003.
[18] Imagem de trilateração e triangulação de acetatos da disciplina de Sistemas
Robóticos Autonomos - FEUP-MIEEC. Disponível em:
https://www.fe.up.pt/si/conteudos_service.conteudos_cont?pct_id=56212&pv_cod=4
5aaavaSwEa0. Acesso 20/Maio/2009.
[19] Isabel M. S. Lampreia e Ângela F. S. S. Mendonça, “A medição da velocidade de som e
a monitorização “in-line” de processos químicos − calibração e cálculo de incertezas”,
Departamento de Química e Bioquímica, Centro de Ciências Moleculares e Materiais,
Faculdade de Ciências, Universidade de Lisboa.
[20] D.E. Di Massa and W.K. Stewart Jr., “Terrain-Relative Navigation for Autonomous
Underwater Vehicles”, Woods Hole Oceanographic Institution.
143
[21] Juan D. Tardós, José Neira Dept. Informática e Ingeniería de Sistemas, Universidad de
Zaragoza e Paul M. Newman, John J. Leonard MIT Dept. of Ocean Engineering,
“Robust Mapping and Localization in Indoor Environments using Sonar Data”, 24 de
Junho, 2002.
[22] T. Ruiz, Y. Petillot and D. M. Lane, “Improved AUV Navigation using Side-scan Sonar”,
Ocean Systems Laboratory School of Engineering and Physical Sciences Heriot-Watt
University, Scotland, UK.
[23] P.Newman H.Durrant-Whyte, “Using Sonar in Terrain-Aided Underwater Navigation”,
International Conference on Robotics & Automation Leuven, Belgium, May 1998.
[24] “Radish: The Robotics Data Set Repository, Standard data sets for the robotics
community”, disponível em: http://radish.sourceforge.net/index.php. Acesso em
01/Junho/2009.
[25] “OpenSlam. Give your alghorithm to the community”, disponível em:
http://www.openslam.org/. Acesso em 01/Junho/2009.
[26] Gelb, J. F. Kasper Jr., R. A. Nash Jr., C.F. Price and A.A. Sutherland Jr., “ Applied
Optimal Estimation”, The MIT Press, 4th printing, 1996.
[27] Tohru Katayama, “Subspace methods for system identification”, ISBN: 1-85233-981-0,
London : Springer - Verlag, cop. 2005.
[28] A. J. Sousa, P. J. Costa, A. P. Moreira e A. S. Carvalho, “Self Localization of an
Autonomous Robot:Using an EKF to merge Odometry and Vision based Landmarks”,
IEEE, 2005.
[29] “Velocidade do som”. Disponível em http://pt.wikipedia.org/wiki/Velocidade_do_som.
Acesso em 17/Maio/2009.
[30] Oddbjorn Bergem, “Bathymetric Navigation of Autonomous Vehicles using a Multibeam
Sonar and a Kalman Filter with Relative Measurements Covariance Matrices”,
University of Trondheim, College of Arts and Science , Department of informatics and
computer science, thesis for the Degree of Philosophy, December 1993.
[31] “Sidescan Sonar: a general description”, disponível em:
http://sub-log.com/sidescan_sonar_general_description. Acesso em 01/Junho/2009.
[32] Manual Imagenex Sportscan sonar. Disponível em:
http://www.imagenex.com/Downloads/downloads.html. Acesso em 17/Maio/2009.
144
[33] L. Lecornu, V. Burdin, C. Scalabrin e C. Hamitouche, “Fish School analysis from
Multibeam Sonar Image Processing”.
[34] Imagem adquirida por sonar Multibeam. Disponível em:
http://www.emporia.edu/earthsci/student/brown2/multibeam.html.
Acesso 7/03/2009.
[35] “Comprimento de onda”. Disponível em:
http://pt.wikipedia.org/wiki/Comprimento_de_onda. Acesso em 17/Maio/2009.
[36] R. C. Gonzalez and R. E. Woods, “Digital Image Processing”, ISBN 0-201-50803-6,
September 1993.
[37] Imagem de operação local retirada de acetatos da disciplina de Sistemas Baseados em
Visão artificial - FEUP-MIEEC. Disponível em:
https://www.fe.up.pt/si/conteudos_service.conteudos_cont?pct_id=50191&pv_cod=5
3HawaT7aaas. Acesso 01/Junho/2009.
[38] Imagem de histograma retirada de acetatos da disciplina de Sistemas Baseados em
Visão artificial - FEUP-MIEEC. Disponível em:
https://www.fe.up.pt/si/conteudos_service.conteudos_cont?pct_id=51555&pv_cod=5
39qrH2Ctaaa. Acesso 01/Junho/2009.
[39] Aurélio Joaquim de Castro Campilho, “1.Medição e o Erro de Medição”, em
“Instrumentação Electrónica. Métodos e Técnicas de Medição”,ISBN:972-752-042-1,
Porto : Faculdade de Engenharia da Universidade do Porto, 2000.
[40] “Curvatura”. Disponível em http://pt.wikipedia.org/wiki/Curvatura. Acesso
17/Maio/2009.
[41] “The CImag Library, C++ Template Image Processing Toolkit”. Disponível em:
file:///C:/Documents%20and%20Settings/Miguel%20Pinto/Desktop/CImg-1.3.0/CImg-
1.3.0/html/reference/index.html. Acesso 17/ Maio/2009.
[42] “The OceanSys Group”. FEUP-DEEC. Disponível em: http://oceansys.fe.up.pt/.
Acesso 02/ Junho/2009.
[43] Tohru Katayama, “Lyapunov Stability”, em “Subspace methods for system
identification”, ISBN: 1-85233-981-0, London : Springer - Verlag, cop. 2005.
[44] Jean Jacques E. Stoline and Weiping Li, “Fundamentals of Lyapunov Theory“, em
“Applied Nonlinear Control”, ISBN:0-13-040890-5, Upper Saddle River : Prentice
Hall, 1991.