• Nenhum resultado encontrado

Localização e controlo de proximidade em veículos aquáticos autónomos

N/A
N/A
Protected

Academic year: 2021

Share "Localização e controlo de proximidade em veículos aquáticos autónomos"

Copied!
82
0
0

Texto

(1)

F

ACULDADE DE

E

NGENHARIA DA

U

NIVERSIDADE DO

P

ORTO

Localização e controlo de proximidade

em veículos aquáticos autónomos

Rui Pedro de Amorim Alves

Mestrado Integrado em Engenharia Eletrotécnica e de Computadores Orientador: Aníbal Castilho Coimbra de Matos

(2)

c

(3)

Resumo

A utilização de AUV’s tem vindo a aumentar devido ao reconhecimento das suas capacidades no que diz respeito à recolha de dados e exploração de ambientes subaquáticos, aliadas à redução de custos de exploração e riscos de erros e danos físicos em humanos. O aumento da dimensão das missões atribuídas aos AUV’s, levanta problemas como o da autonomia energética do veículo e da capacidade de armazenamento de informação. Estas questões, apresentam já algumas soluções como é o exemplo das estações de carregamento subaquáticas. Para estabelecer contacto com estas estações, é necessário desenvolver um sistema capaz de se aproximar da estação, para tal, é fundamental o estudo do modelo de um veículo e técnicas de controlo não linear, a fim de uma melhor compreensão do comportamento do veículo e respetivo controlo.

Tendo como objetivo a sua implementação, começa-se pela criação de um algoritmo que per-mita analisar as imagens captadas através de um sensor ótico, instalado no veículo, para detetar e identificar o marcador. Isto é alcançado com recurso a diferentes técnicas de processamento de imagem em conjunto com identificação de cores e formas.

Conhecendo a posição do marcador, é possível analisar as relações geométricas entre o mar-cador e o sensor ótico, obtendo soluções para a determinação da posição do veículo relativa ao marcador.

A obtenção da posição relativa, juntamente com o conhecimento do modelo do veículo permite criar leis de controlo não lineares para a velocidade e posição, cujo processo é descrito neste documento. São desenvolvidos controladores de velocidade e de posição verticais e horizontais que permitem realizar manobras de aproximação simples.

Os controladores desenvolvidos são simulados, possibilitando a observação do comportamento comportamento e desempenho do sistema, tentando recriar um ambiente real de operação. São também realizados testes reais ao sistema de perceção e localização para determinar a sua eficácia.

(4)
(5)

Abstract

The use of AUVs has been increasing due to the recognition of their capacities with regard to data collection and exploration of underwater environments, combined with the reduction of exploration costs and the risks of errors and physical damages in humans. The increase in the size of the missions attributed to AUVs raises problems such as the autonomy of the vehicle and the data storage capacity. These issues already present some solutions such as the example of underwater docking stations. In order to establish contact with these stations, it is necessary to develop a system capable of approaching the station, for this, it is fundamental to study the model of a vehicle and non-linear control techniques, in order to better understand the behavior of the vehicle and its respective control.

Aiming at its implementation, we begin by creating an algorithm that allows to analyze the images captured through an optical sensor, installed in the vehicle, to detect and identify the mar-ker. This is achieved using different image processing techniques in conjunction with color and shape identification.

Knowing the position of the marker, it is possible to analyze the geometric relations between the marker and the optical sensor, obtaining solutions to determine the position of the vehicle relative to the marker.

Obtaining the relative position along with knowledge of the vehicle model allows creating nonlinear control laws for velocity and position, the process of which is described in this paper. Vertical and horizontal velocity and position controllers are developed that allow simple approxi-mation maneuvers.

The developed controllers are simulated, allowing the observation behavior behavior and sys-tem performance, trying to recreate a real operating environment. Real tests are also performed on the perception and localization system to determine its effectiveness.

(6)
(7)

Agradecimentos

Em primeiro lugar, não posso deixar de agradecer ao meu orientador, Professor Aníbal Matos, por toda a paciência, apoio, incentivo, empenho e sentido prático com que sempre me orientou neste trabalho. Desejo igualmente agradecer a todos os meus colegas de mestrado, bem como ás colegas que me deram a conhecer o mundo da investigação, a Alexandra Nunes e a Ana Gaspar, pela sua disponibilidade e auxilio prestado.

Fora do ambiente académico mas não menos importante, agradeço aos meus pais por todo o suporte aos longo destes 5 anos de estudo, pela orientação e capacidade de compreensão em todos os momentos do percurso. Aos meus irmãos e amigos que acompanharam esta fase da minha vida com tanta intensidade quanto eu e me apoiaram em todas as horas, tornando momentos de pressão em momentos de descontração.

À minha namorada, Catarina, por ter caminhado a meu lado, pela partilha, paciência, apoio in-condicional e acima de tudo por me recordar a cada momento o porquê desta jornada, me encorajar a lutar pelos meus sonhos e objetivos e ajudar-me a cada passo que dou.

Rui Pedro de Amorim Alves

(8)
(9)

Conteúdo

1 Introdução 1 1.1 Enquadramento . . . 1 1.2 Objetivos . . . 2 1.3 Estrutura da Dissertação . . . 2 2 Revisão Bibliográfica 5 2.1 Modelação do Movimento de Veículos Submarinos . . . 5

2.1.1 Equação de Movimento . . . 7

2.2 Controlo . . . 8

2.2.1 Teoria Fundamental de Lyapunov . . . 8

2.2.2 Backstepping . . . 11

2.3 Sensores . . . 13

2.3.1 Sonar . . . 13

2.3.2 Emissores Laser e Câmaras . . . 15

2.4 Visão Computacional . . . 16

2.4.1 Funcionamento . . . 16

2.4.2 Calibração . . . 17

2.4.3 Espaço HSV . . . 17

3 Sistema de Localização por Imagem 19 3.1 Modelo BlueROV2 . . . 19

3.2 Implementação Proposta . . . 21

3.2.1 Deteção . . . 21

3.2.2 Rastreio . . . 22

3.3 Extrapolação de coordenadas . . . 23

3.3.1 Integração dados IMU . . . 25

3.3.2 Distância relativa . . . 27

3.4 Resultados Experimentais . . . 28

4 Modelização do BlueROV2 31 4.1 Propulsão do veículo BlueROV2 . . . 31

4.2 Equações diferenciais de movimento . . . 33

4.3 Limites de propulsão . . . 34

4.3.1 Movimento segundo xB . . . 34

4.3.2 Movimento segundo yB . . . 35

4.3.3 Movimento segundo zB . . . 36

4.3.4 Movimento segundo yaw . . . 36

(10)

viii CONTEÚDO

5 Controlo 39

5.1 Controlador de velocidade vertical . . . 39

5.1.1 Determinação do controlador . . . 39

5.1.2 Cálculo do ganho . . . 41

5.2 Controlador de velocidade horizontal . . . 41

5.2.1 Determinação do controlador . . . 42

5.2.2 Cálculo do ganho . . . 43

5.3 Controlador de Posição Vertical . . . 44

5.3.1 Determinação do controlador . . . 45

5.3.2 Determinação dos ganhos . . . 46

5.3.3 Análise do controlador . . . 46

5.4 Controlador de posição horizontal . . . 47

5.4.1 Determinação do controlador . . . 47

5.4.2 Determinação dos ganhos . . . 49

5.4.3 Análise do controlador . . . 51

6 Simulação Controladores 53 6.1 Simulação de controladores de velocidade . . . 53

6.1.1 Controlador de velocidade vertical . . . 53

6.1.2 Controlador de velocidade horizontal . . . 55

6.2 Simulação de controladores de posição . . . 57

6.2.1 Controlador de posição vertical . . . 57

6.2.2 Controlador de posição horizontal . . . 58

7 Conclusões 61 7.1 Síntese do trabalho realizado . . . 61

7.2 Perspetivas de trabalho futuro . . . 62

7.2.1 Implementação do sistema de controlo . . . 62

7.2.2 Adaptar o sistema de perceção para outros modelos de AUV . . . 62

7.2.3 Melhorar o sistema de perceção . . . 62

7.2.4 Estudar controladores para movimentos complexos . . . 62

7.2.5 Navegação com referência a objeto móvel . . . 63

(11)

Lista de Figuras

1.1 Docking Station[1] . . . 1

2.1 Definição dos eixos e rotações de um AUV. [2] . . . 5

2.2 Função de Lyapunov . . . 11

2.3 Modelo pinhole . . . 16

2.4 Comparação modelo de cores RGB com modelo HSV [3] . . . 18

3.1 Veículo BlueROV2 [4] . . . 19

3.2 Eixos coordenados. Eixo fixo ao corpo OB move-se relativamente ao eixo fixo à terra OI . . . 20

3.3 Eixo coordenado do marcador OM. . . 20

3.4 Marcador . . . 21

3.5 Modelo Deteção . . . 22

3.6 Definição dos referenciais da câmara e do marcador . . . 23

3.7 Descrição das medições óticas . . . 24

3.8 Rotação do referencial devido ao roll . . . 25

3.9 Rotação do referencial devido ao picth . . . 26

3.10 Rotação do referencial devido ao yaw . . . 26

3.11 Captura do marcador pela câmara do veículo . . . 29

3.12 Resultado da segmentação por cores da imagem . . . 29

3.13 Resultado da deteção com coordenadas para xr= 0.9 m yr= −0.1 m e zr= 0 m . 30 4.1 Representação vetores de aplicação de forças e centro de Gravidade (CG) . . . . 31

5.1 Arquitetura do controlador de posição vertical . . . 45

5.2 Referência e erro vertical do veículo . . . 45

5.3 Arquitetura do controlador de posição horizontal . . . 47

5.4 Referência e erro horizontal do veículo . . . 48

6.1 Velocidade linear vertical w em função do tempo com T=90s . . . 54

6.2 Velocidade linear vertical w em função do tempo T=30s . . . 54

6.3 Força exercida pelos propulsores em função do tempo para T=90s . . . 55

6.4 Velocidade linear u em função do tempo . . . 55

6.5 Velocidade linear v em função do tempo . . . 56

6.6 Velocidade angular r em função do tempo . . . 56

6.7 Força exercida pelos propulsores em função do tempo . . . 56

6.8 Profundidade z em função do tempo com zre f = 2m . . . 57

6.9 Posição x em função do tempo com xre f = 2m . . . 58

6.10 Posição y em função do tempo com yre f = 1.5m . . . 58

(12)

x LISTA DE FIGURAS

(13)

Lista de Tabelas

4.1 Coordenadas dos pontos de aplicação das forças dos propulsores . . . 32

4.2 Forças e Parâmetros do modelo do BlueROV2 . . . 34

5.1 Parâmetros calculados do controlador de posição vertical . . . 47

5.2 Parâmetros calculados do controlador de posição horizontal . . . 51

(14)
(15)

Abreviaturas e Símbolos

AUV Autonomous Underwater Vehicle

INESC TEC Instituto de Engenharia de Sistemas e Computadores CRAS Centro de Robótica e Sistemas Autónomos

DOF Degrees of Freedom LRF Laser Range Finder ROV Remotely Operated Vehicle

MSIS Mechanically Scanned Imaging Sonar PI Proporcional Integral

CG Centro de gravidade IMU Inertial Measurement Unit 3D 3 Dimensões

(16)
(17)

Capítulo 1

Introdução

1.1

Enquadramento

O tema desta dissertação aborda um campo vasto e muito explorado, com aplicações entre a vigia dos oceanos, medições da fauna e flora submarina, inspeção de portos, barragens e platafor-mas petrolíferas. Neste trabalho será analisado, projetado um conjunto de sensores e um sistema de controlo, para determinar a localização do veículo relativamente a uma referência.

Atualmente, as missões realizadas pelos AUV necessitam de tempos de operação maiores. Para combater o problema do tempo de operação máximo permitido pelas baterias e a capacidade de armazenamento de informação, foram desenvolvidas docking stations [1] que permitem o car-regamento e transmissão de dados pelo veículo . Para atracar na estação, o veículo necessita de um sistema, capaz de obter uma localização relativa à estação, evitando danos prejudiciais à ope-ração. Estes sistemas, embora estudados, apresentam problemas de robustez ,relacionados com a orientação do veículo, que se pretendem ultrapassar.

Figura 1.1: Docking Station [1]

(18)

2 Introdução

1.2

Objetivos

Através deste trabalho, pretende-se desenvolver um sistema de perceção para um veículo aquá-tico autónomo (AUV). Este sistema deverá ser capaz de extrair informação sobre a posição relativa do veículo recorrendo a um marcador com uma estrutura previamente conhecida. Será também implementado um sistema de controlo do AUV que utilize a informação da posição relativa do veículo para controlar o seu movimento de aproximação ao marcador.

Este sistema deve permitir que o veículo consiga manobrar autonomamente e seja capaz de realizar uma manobra de aproximação a um marcador.

O cumprimento de estes objetivos implica o conhecimento de matérias que serão abordadas neste documento. As matérias abordadas são as seguinte:

• Dinâmica de um veículo subaquático; • Cinemática de um veículo;

• Operações de tratamento de imagens; • Deteção de objetos em imagens; • Teoria de controlo não linear; • Métodos de controlo não linear;

• Ferramentas de simulação de sistemas não lineares de ordem elevada; • Protocolos de comunicação e transmissão de dados;

• Ferramentas para operações com imagens.

1.3

Estrutura da Dissertação

A estrutura deste documento segue a ordem temporal do trabalho realizado ao longo do período dedicado a este trabalho.

Para além da introdução, esta dissertação contém mais seis capítulos. No capítulo2, expõem-se conhecimentos fundamentais para a realização do trabalho. Apreexpõem-sentam-expõem-se também alguns documentos e trabalhos anteriores que revelem interesse para o tópico estudado.

No capítulo3, apresenta-se a implementação de um sistema ótica para deteção de objetos e analisa-se a geometria das relações veículo, câmara, marcador para definir técnicas de perceção adequadas. É também estudada a influência da atitude do veículo nas medições.

No capítulo 4, realiza-se uma análise do movimentos simples do veículo. São calculados limites máximos de atuação quando o veículo tem uma atuação limitada.

No capítulo 5, desenvolve-se os controladores de velocidade e posição capazes de guiar o veículo ao marcador. Para além das leis de controlo , efetuam-se os cálculos dos ganhos e dos valores de saturação dos erros.

(19)

1.3 Estrutura da Dissertação 3

No capítulo6, apresentam-se os resultados das simulações efetuadas sobre os controladores desenvolvidos.

No capítulo7, realiza-se uma síntese do trabalho realizado, com algumas conclusões sobre os desenvolvimentos e apresentam-se algumas melhorias e trabalho futuro.

(20)
(21)

Capítulo 2

Revisão Bibliográfica

2.1

Modelação do Movimento de Veículos Submarinos

A modelação de veículos marinhos envolve o estudo das dinâmicas e constantes do veículo [5]. O estudo das dinâmicas é dividido em duas partes:

• cinemática - que considera os aspetos geométricos do movimento; • dinâmica - que é a análise das forças que causam o movimento.

Um veículo aquático autónomo (AUV) pode ter até 6 graus de liberdade (DOF) . Os movi-mentos de translação segundo x são chamados de surge, os movimovi-mentos segundo y são sway e os movimentos em z são heave. As rotações roll, pitch e yaw são ilustradas na seguinte imagem.

Figura 2.1: Definição dos eixos e rotações de um AUV. [2]

2.1.0.1 Cinemática

Para analisar o movimento de veículos com 6 DOF é conveniente definir dois referenciais coordenados ( um do veículo e um fixo na Terra) . Define-se o referencial XY Z como o referencial fixo na Terra e o referencial X0Y0Z0como o referencial fixo no corpo.

(22)

6 Revisão Bibliográfica

O referencial móvel X0Y0Z0 é fixo ao veículo e a sua origem é coincidente com o centro de

gravidade, quando este é o principal ponto de simetria. O referencial fixo na Terra é um referencial inercial.

Este par de referenciais é utilizado para descrever a posição e orientação do veículo rela-tivamente ao referencial inercial, enquanto que o referencial fixo no corpo é utilizado para as velocidades lineares e angulares. [5]

η1= [x, y, z]; η2= [φ , θ , ψ]; (2.1)

ν1= [u, v, q]; ν2= [p, q, r]; (2.2)

τ1= [X , Y, Z]; τ2= [K, M, N]; (2.3)

η1e η2são a posição e a orientação, respetivamente, do referencial fixo ao corpo relativamente

ao referencial inercial; ν1e ν2são as velocidades linear e angular no referencial fixo ao corpo; τ1

e τ2são a força e o momento exercidos sobre o corpo no referencial que lhe está associado. [5]

Teorema: "Toda a mudança na orientação relativa de dois corpos rígidos ou referenciais A e B pode ser produzida por uma simples rotação de B em A."[5]

Segundo o teorema anterior é possível relacionar o referencial fixo ao corpo com o referencial fixo à Terra através de uma rotação dos seus vetores. A orientação do referencial XY Z pode ser obtida através de três rotações segundo cada eixo do referencial fixo ao corpo X0Y0Z0, isto é, uma

rotação segundo X0de um ângulo φ , seguido de uma rotação de um ângulo θ segundo Y0e de uma

rotação de um ângulo ψ segundo Z0. São então obtidas as seguintes matrizes de rotação, segundo

cada eixo Rx,φ =    1 0 0 0 cos φ −sin φ 0 sin φ cos φ   , Ry,θ=    cos θ 0 sin θ 0 1 0 −sin θ 0 cos θ   , Rz,ψ=    cos ψ −sin ψ 0 sin ψ cos ψ 0 0 0 1    (2.4)

Usando a nomenclatura de Fossen [5], a matriz de transformação entre referenciais é definida da seguinte forma: J1(η2) = Rx,φRy,θRz,ψ=    cψcθ −sψcφ + cψsθ sφ sψsφ + cψcφ cθ sψcθ cψcφ + sφ sθ sψ −cψsφ + sθ sψcφ −sθ cθ sφ cθ cφ    (2.5)

(23)

2.1 Modelação do Movimento de Veículos Submarinos 7

A velocidade linear v1 do veículo relativamente ao referencial fixo na Terra é dada pela

se-guinte transformação de velocidade ˙

η1= J1(η2) v1. (2.6)

A transformada inversa é

v1= J1−1(η2) ˙η1 (2.7)

Conhecendo a velocidade angular do corpo no referencial da Terra ( ˙η2) , é possível obtê-la em

relação ao referencial do corpo (v2) :

v2=    ˙ φ 0 0   + R −1 x,φ    0 ˙ θ 0   + R −1 x,φR−1y,ψ    0 0 ˙ ψ   = J −1 2 (η2) ˙η2 (2.8) Expandindo (2.8) obtém-se J2−1(η2) =    1 0 −sθ 0 cφ sφ cθ 0 −sφ cφ cθ   . (2.9) Neste caso, J2−16= JT

2 . A matriz de transformação dos vetores angulares é dada por:

J2(η2) =    1 sφtθ cφtθ 0 cφ −sφ 0 sφ /cθ cφ /cθ    (2.10)

Em que s = sin() , c = cos() e t = tan().

2.1.1 Equação de Movimento

As equações das dinâmicas não lineares de movimento para os 6 DOF podem ser expressas como:

M ˙υ + C(υ )υ + D(υ )v + g(η ) = τ (2.11) Em que

• M : matriz de inércia

• C(υ) : matriz de Coriolis e termos centrípetos • D(υ) : matriz de amortecimento

• g(η) : vetor das forças e momentos gravitacionais • τ : vetor das entradas de controlo

(24)

8 Revisão Bibliográfica

A matriz de inércia é constante e referente ao corpo, podendo ser descrita como:

M= MRB+ MA (2.12)

Em que MRBé a matriz de inércia dos corpos rígidos e MA é a matriz de inércia acrescentada

devido às forças e momentos da hidrodinâmica.

A matriz dos termos de Coriolis e centrípetos é uma matriz variável [5]. Esta matriz é dada por:

C(υ) = CRB+CA (2.13)

Em que CRBe CAsão obtidas referentes ao corpo rígido e às forças e momentos acrescentados.

2.2

Controlo

2.2.1 Teoria Fundamental de Lyapunov

O modelo de um AUV tem uma dinâmica não linear. Como os métodos de controlo não linear são pouco robustos, então a aplicação de um controlador ao sistema implica a linearização do sistema numa gama estreita, de funcionamento [6]. Fora desta gama, o controlo pode levar o sistema à instabilidade [7] .

Para analisar a estabilidade do sistema, o matemático russo Aleksandr Mikhailovich Lyapunov propõe um conjunto de teoremas. Os seus métodos mais famosos, e utilizados à escala global, são o método de linearização ( em volta de pontos de equilíbrio) e o método direto. Estes métodos levaram a que várias técnicas fossem desenvolvidas para o projeto de controladores não lineares.

2.2.1.1 Sistemas não lineares e pontos de equilíbrio Considere-se um sistema não linear de primeira ordem :

˙

x= f (x,t) (2.14)

em que x = [x1, x2, ..., xn] ∈ Rné o vetor de estado do sistema, f ∈ Rné o vetor da função não linear

do sistema e t ∈ R é a variável de tempo. Estamos perante um sistema de ordem n .

Definição: "Um sistema é dito autónomo se não depende explicitamente do tempo, isto é ˙

x= f (x,t) ⇔ ˙x= f (x) (2.15) noutros casos, o sistema é dito não autónomo."[7]

Definição: "Um estado x∗ é um ponto de equilíbrio ( ou estado de equilíbrio) do sistema se. dado um x(t) igual a x∗, este permanece igual a x∗em todos os instantes futuros. "[7]

(25)

2.2 Controlo 9

Matematicamente esta expressão traduz-se para ˙

x= f (x∗,t) = 0 , ∀t ≥ 0 (2.16) ou seja, a primeira derivada, em ordem ao tempo, do estado do sistema é nula, mantendo o sistema no ponto x∗para todos os instantes futuros.

2.2.1.2 Estabilidade

Um conceito fundamental em teoria do controlo é a estabilidade. Definição: "O ponto de equi-líbrio x = 0 é dito estável se , para qualquer R > 0, existe um r > 0, tal que, se kx(0)k1≤ r, x(t) ≤ R para todo o t ≥ 0 . Senão, o ponto de equilíbrio é dito instável."[7]

Ou seja, a estabilidade de um sistema implica que, para um estado inicial x(0) próximo da origem, pertencente à bola centrada na origem ( ponto de equilíbrio) com raio r , Br, o sistema

permanece numa bola BR centrada na origem Br≤ BR.

Como em muitos problemas de controlo, pretende-se que o estado do sistema tenda para um valor, não é suficiente a condição de estabilidade. Para isso, define-se estabilidade assimptótica.

Definição: "Um ponto de equilíbrio x = 0 é assimptóticamente estável se for estável, e se, adicionalmente, existe um r > 0 tal que kx(0)k ≤ r que implica que x(t) → 0 quanto t → ∞ "[7]

Esta definição significa que o equilíbrio é estável e que, num problema de controlo clássico, o erro da diferença

Existem sistemas que para qualquer estado inicial x(0), tendem para o ponto de equilíbrio o que leva à definição de estabilidade assimptótica global.

Definição: "Se a estabilidade assimptótica se mantém para qualquer estado inicial x(0), o ponto de equilíbrio é dito estável assimptóticamente globalmente"[7].

2.2.1.3 Método direto de Lyapunov

Este método é usado para a análise do comportamento de um sistema. O fundamento deste método baseia-se na energia. Se a a energia total de um sistema mecânico ( ou elétrico) é cons-tantemente dissipada, então o sistema, linear ou não linear, acabará por estabilizar num ponto de equilíbrio . [7]

(26)

10 Revisão Bibliográfica

A primeira noção para a função do método direto de Lyapunov é o conceito de função posi-tiva/negativa definida.

Definição: "Uma função qualquer f (x) é dita localmente positiva definida se f (0) = 0 e, para todo o x pertencente à bola centrada na origem com raio BRO,

f(x) < 0, x 6= 0. (2.17) Se esta condição se verificar para todo o x, a função f (x) é fita globalmente positiva definida."[6]

A partir da definição anterior é fácil deduzir a definição de função globalmente negativa defi-nida e restante conceitos por analogia.

Em muitos casos, a função de Lyapunov tem como objetivo traduzir o comportamento da va-riação de energia de um sistema físico. Como para muitos sistemas físicos, a dificuldade de obter uma expressão analítica de energia é muito alta, defini-se o conceito de função de Lyapunov.

Definição: "Se, numa bola BR0, a função V (x) é positiva definida e possui derivadas parciais

contínuas, e se a sua derivada em ordem ao tempo ao longo de qualquer trajetória do estado de um sistema tal que ˙x= f (x) for negativa semi-definida, i.e.,

˙

V(x) ≤ 0, (2.18)

então V (x) é dita função de Lyapunov para o sistema referido" [7].

Com estes conceitos definidos, podemos então compreender e apresentar o teorema de Lyapy-nov para a estabilidade local.

Teorema: "Se, numa bola BR0 , existe uma função escalar V (x) com primeiras derivadas

parciais contínuas tal que

• V (x) é positiva definida ( localmente em BR0 )

• ˙V(x) é negativa semi-definida (localmente em BR0 )

então o ponto de equilíbrio 0 é estável. Se, eventualmente a derivada ˙V(x) for negativa definida localmente em BR0 , então a estabilidade é assimptótica"[7].

Embora seja importante, este teorema pode não ser o suficiente , necessitando de estabilidade global. O teorema é definido como o seguinte:

Teorema: "Assuma-se que existe uma função escalar V do estado x , com derivadas de pri-meira ordem contínuas, tal que

• V (x) é positiva definida • ˙V(x) é negativa definida

(27)

2.2 Controlo 11

• V (x) → ∞ quando x → ∞

então o ponto de equilíbrio na origem é globalmente assimptoticamente estável". [7]

O conceito anterior está ilustrado na seguinte figura, com um gráfico típico de V (x):

Figura 2.2: Função de Lyapunov

2.2.2 Backstepping

Na análise do sistema pela Teoria de Lyapunov somos capazes de analisar a estabilidade do mesmo, porém não nos permite desenvolver uma lei de controlo. É neste contexto que entra a técnica de Backstepping , que nos permite, de uma forma recursiva, obter uma lei de controlo segundo a dinâmica do sistema. Para a utilização desta técnica é necessário o conhecimento da função de Lyapunov do sistema Vx.

Considere-se o sistema:

˙

η = f (η ) + g(η )ξ (2.19)

˙

ξ = f a(η , ξ ) + ga(η , ξ )u (2.20) em que η ∈ Rné o vetor de estado do sistema, f ∈ Rné o vetor de uma função, g ∈ Rn×m é a matriz de uma função, ξ ∈ Rné um vetor, f a ∈ Rmé o vetor de uma função, ga ∈ Rm×lé a matriz de uma função e u ∈ Rl é o vetor de entrada do sistema. Todas as funções acima são suaves, isto

é, as suas derivadas de primeira ordem são finitas. Supondo que se conhece uma lei de controlo φ (η ) tal que ξ = φ (η ), e que a expressão resultante

˙

η = f (η ) + g(η )φ (η ), (2.21) seja assimptoticamente estável em η = 0. Para validar as suposições anteriores é necessário que a derivada em ordem ao tempo da função de Lyapunov obedeça à seguinte condição:

dV (η)

(28)

12 Revisão Bibliográfica

em que W (η) é uma função escalar positiva definida. Desta expressão resulta

dV (η) dt dη dt ≤ −W (η) (2.23) m (2.24) dV (η) dt [ f (η) + g(η)φ (η)] ≤ −W (η), ∀η ∈ R n (2.25) Como em alguns casos, o valor de ξ não consegue variar instantaneamente, define-se uma nova variável de erro:

z= ξ − φ (2.26)

Que se traduz no sistema resultante ˙ η = f (η ) + g(η )z − g(η )φ (2.27) ˙z = f a(η, ξ ) + ga(η, ξ )u − φ (2.28) em que ˙ φ = dφ dη dη dt = dφ dη[ f (η) + g(η)ξ ]. (2.29) Consideremos a seguinte função como candidata a função de Lyapunov:

V1= V +

1 2z

T

z (2.30)

Pode-se verificar que esta função é positiva definida. A sua derivada é dada por ˙ V1= ˙V+ 1 2z T ˙z (2.31)

Usando esta expressão e a inequação anterior, resulta: ˙ V1= dV dη[ f + gφ ] + dV dηgz+ z T[ f a + ga − ˙ φ ] ≤ −W (η ) +dV dηgz+ z T[ f a + ga − ˙ φ ] (2.32) Assumindo-se que ga é não-singular, se se escolher a variável de entrada tal que

u= ga−1[ ˙φ − f a −dV

dηg− kz], (2.33)

com k ∈ R estritamente positivo, resulta ˙

(29)

2.3 Sensores 13

Pela análise desta expressão deduz-se que ˙V1é negativa definida. Substituindo em u (expressão de

u) ϕ e z pelas suas expressões, resulta a lei de controlo u= ga−1[dφ

dη[ f − gξ ] − f a − dV

dηg− k[ξ − φ ]]. (2.35) Esta técnica pode ser facilmente estendida para sistemas de maior ordem, aplicando a técnica de Backsteppingpara a obtenção de expressões das variáveiszi e de u [7]

˙ x1= f (x) + g(x)z1 z1= f1(x, z1) + g(x, z1)z2 .. . zn= fn(x, z1, . . . , zn) + g(x, z1, . . . , zn)u .

2.3

Sensores

Para o estudo dos sensores a serem explorados e aplicados ao sistema desenvolvido, explorou-se um conjunto de diferentes explorou-sensores permitindo ,posteriormente, escolher o mais indicado aos objetivos. Foram estudados os sistemas:

• Sonar - grande versatilidade e sistema com maior utilização na robótica subaquática; • Emissores Laser e Câmaras - este sistema permite obter mais informação sobre o meio

envolvente a distâncias curtas.

2.3.1 Sonar

Foi estudado o sistema sonar para o movimento de aproximação do marcador a longas distân-cias. Com este estudo pretende-se explorar o funcionamento do sistema e a sua possibilidade de integração no sistema final.

Um sistema sonar pode ter dois princípios de funcionamento: • Sonar passivo;

• Sonar ativo

Um sonar passivo limita-se a escutar o som emitido pelos alvos.

Um sonar ativo tem o som gerado por um dos componentes do seu sistema, o projetor. As ondas sonoras propagam-se até refletirem num alvo, sendo o seu eco captado por um hidrofone, que converte os sons em energia elétrica. [8]

Os sonares ativos podem ser classificados em dois princípios de operação. O sonar pode ter um emissor e um recetor colocados lado a lado, o emissor emite uma onda sonora e começa a contar o tempo que o eco demora a chegar ao recetor. Pode-se determinar a distância ao alvo sabendo a

(30)

14 Revisão Bibliográfica

velocidade de propagação da onda sonora no meio e o tempo entre o sinal emitido e receção do eco.

O segundo princípio é o de usar um transdutor que faz a comutação entre emissor e recetor. Após emitir um sinal fica à espera da receção do seu eco.

A grande dificuldade dos sistemas sonar, reside em detetar o sinal acústico desejado na pre-sença do ruído pertencente ao meio envolvente.

Se o nível do sinal a detetar é NE e o nível de ruído do meio é NRD ( nível do ruído detetado),e então a equação do sonar é:

NE≥ NRD + LD (2.36)

Em que LD é o limiar de deteção que corresponde à diferença entre ruído e o nível do eco de-tetado para que exista uma probabilidade de 50 % de deteção dentro de uma probabilidade pré-especificada de falso alarme.

2.3.1.1 Sonar Ativo

No sistema ativo o sinal emitido é um impulso de energia acústica com origem no emissor e um determinado nível de fonte NF. Devido à transmissão no meio, o sinal sofre perdas de transmissão PT até chegar ao alvo.

Apenas uma fração do sinal é refletido, dependendo da intensidade do alvo IA, para o recetor e sofre novamente perdas de transmissão.

Então o nível de eco é:

NE= NF − 2PT + IA (2.37)

Determinando o tempo t entre a emissão e a receção do impulso, pode-se determinar a distância dao alvo, uma vez que d = ct/2 ( c é a velocidade do som no meio).

É também possível detetar a posição do alvo se o recetor for de elevada direcionalidade. No sonar ativo, o nível de ruído NR detetado pode ser maioritariamente ruído-ambiente ou ruído do sistema.

Equação do sonar ativo de ruído limitado :

NF− 2PT + IA ≥ NR − ID + LD (2.38) O sonar ativo tem uma fonte que pode mascarar o sinal, que é a reverberação. A reverberação é a dispersão indesejada do sinal em obstáculos diversos e diferentes do alvo desejado.

Assim o nível de ruído detetado é igual ao nível de reverberação NRB

NRD= NRB (2.39)

A combinação das equações (2.23), (2.24) e (2.26) dá-nos a equação do sonar ativo de rever-beração limitada

(31)

2.3 Sensores 15

Um sistema de sonar ativo é dominado pelo ruído ou reverberação, dependendo da potência acústica, da distância e da velocidade do alvo.

Os sistemas de baixa potência estão limitados em ruído, pois a gama de deteção máxima é atingida quando o nível do eco passa abaixo de um nível onde pode ser extraído, face ao ruído ambiente.

O aumento da potência acústica do sistema provoca o aumento do nível do eco, mas também da reverberação.

Em geral a reverberação decresce com o aumento da distância ao alvo e de forma mais acen-tuada que o nível do eco para a mesma distância.

O sistema está limitado em reverberação se o nível do eco fica indistinguível a uma determi-nada distância. [8]

2.3.2 Emissores Laser e Câmaras

Para o movimento de aproximação a curtas distâncias, o sistema sonar estudado anteriormente carece da precisão necessária para uma aproximação eficaz e que permita ao veículo atracar sem causar danos à sua estrutura ou à estrutura dadocking station. Para garantir este a segurança do movimento, estudou-se o sistema de uma câmara acoplada com lasers, percebendo a sua eficácia e a viabilidade da sua implementação.

Usando emissores de luz estruturada (lasers), é possível obter dados para a reconstrução tridi-mensional. São sensores considerados ativos com aplicações na robótica subaquática.

Existem vários métodos para a obtenção da informação. Um dos mais comuns é baseado na triangulação. Este método tem por base a projeção de luz estruturada com a forma de uma linha, cruz ou matriz de pontos. A luz, ao incidir numa estrutura 3D, aparece distorcida em todas as perspetivas, exceto a do projetor. Deste modo é comum utilizar câmaras para observar e processar a distorção do feixe.

Analisando a forma e distorção dos feixes de luz é possível extrair a geometria do objeto. Este tipo de sistemas tem a desvantagem de ser adequado para curtas distâncias.

Outra solução são os LRF. Este tipo de sensores emite um impulso laser para determinar a distância a que se encontra o objeto. A medição da distância baseia-se no intervalo de tempo desde a emissão do impulso de luz até à sua reflexão e receção e no valor da velocidade da luz. Este sistema tem alcance variável dependendo da potência do feixe, sendo indicados para distâncias mais longas.

Atualmente já existem várias tecnologias no mercado para varrimento 3D, porém grande parte delas tem um preço elevado, carecem de portabilidade e são necessários processos complexos e morosos para a calibração do sistema.

Como os sistemas no mercado apresentam estas limitações, vários laboratórios começam a desenvolver soluções para reconstrução 3D. Todos os sistemas desenvolvidos dividem-se em duas formas de obter imagens, utilizando sistemas stereo ou monoculares servidos de fontes de projeção de luz estruturada.

(32)

16 Revisão Bibliográfica

Um dos sistemas desenvolvidos baseia-se num sistema constituído por câmaras portáteis a cores e um conjunto de linhas laser projetadas no objeto [9]. Utilizando a técnica de triangulação e um algoritmo de processamento apropriado, é possível obter imagens 3D do objeto.

Outros projetos exploraram técnicas variadas.[10] Outra técnica baseia-se na dupla triangula-ção laser. Esta técnica envolve o uso de dois espelhos nos caminhos óticos. Os resultados desta técnica mostram uma melhor precisão das medidas, um menor custo do projeto e uma maior por-tabilidade do sistema.

Todos estes sistemas baseiam-se na medição da distância ao ponto laser refletido, com o auxílio da câmara , e uma reconstrução 3D usando as medidas obtidas.

2.4

Visão Computacional

2.4.1 Funcionamento

Para obter a imagem, é utilizado um sensor ótico. Estes sensores aparecem cada vez mais nos sistemas autónomos, devido à quantidade de informação que obtém relativamente ao seu preço de aquisição.

Os sistemas óticos mapeiam os objetos do mundo na imagem da câmara através da projeção da luz refletida no objeto. O modelo mais utilizado nestes sistemas é o modelo de pinhole, que descreve a relação matemática entre as coordenadas de um ponto 3D e a projeção desse ponto no plano da imagem. Este método contém erros que se propagam a partir do centro, mas devido ao seu baixo custo e aos algoritmos de calibração e correção de erros, continuam a ser muito utilizados.

O funcionamento deste modelo consiste em que todos os raios de luz captados atravessem um pequeno orifício da câmara, formando uma imagem invertida do objeto no plano da imagem.

(33)

2.4 Visão Computacional 17

A imagem captada é depois invertida para que se possa observar corretamente o objeto captu-rado.

2.4.2 Calibração

Como referido anteriormente, os sensores óticos de modelo pinhole apresentam erros: o siste-mático da distorção radial e o de fabrico da distorção tangencial.

A distorção radial afeta as linhas retas, curvando-as, e aumenta com a distância do ponto ao centro da câmara. A distorção tangencial provém do alinhamento defeituoso da lente do sensor ótico com a o plano da imagem. Esta distorção afeta a distância a que os objetos parecem estar do sensor, podendo um objeto estar mais próximo do sensor na imagem do que na realidade. Os seguintes pares de equações representam as distorções radiais e tangenciais, respetivamente.

xdistorted = x(1 + k1r2+ k2r4+ k3r6) (2.41)

ydistorted = y(1 + k1r2+ k2r4+ k3r6) (2.42)

xdistorted= x + [2p1xy+ p2(r2+ 2x2)] (2.43)

ydistorted= y + [p1(r2+ 2y2) + 2p2xy] (2.44)

Os erros podem ser reduzidos ou até mesmo eliminados através de um algoritmo de calibração de imagem que permite obter a matriz da câmara na equação2.45(com informação dos centros focais c, e comprimentos focais f ) e os coeficientes das distorções (k1, k2, p1, p2, k3) . Ao conjunto

destes parâmetros é chamado de parâmetros intrínsecos [11].

A=    fx 0 cx 0 fy cy 0 0 1    (2.45)

O método mais utilizado para obter os parâmetros intrínsecos é a calibração utilizando um padrão conhecido ( maioritariamente tabuleiro de xadrez ). Neste método compara-se as distâncias em pixeis dos vértices dos quadrados na imagem, com o tamanho real da distância entre os vértices.

2.4.3 Espaço HSV

HSV (Hue, Saturation, Value) é uma representação de cores alternativa ao modelo RGB (Red, Blue, Green) criada para melhor representar o modo como o olho humano vê as cores. Neste mo-delo, as cores (componente H) são representadas por ângulos de um círculo, a saturação (compo-nente S) é o valor da distância do centro do círculo à sua circunferência e representa a intensidade da cor e o valor (componente V) é a altura do cilindro constituído pelos vários círculos de H+S.

(34)

18 Revisão Bibliográfica

A componente V pode ser percebida como a componente de iluminação da cor, fazendo variar do preto ao branco total.

(35)

Capítulo 3

Sistema de Localização por Imagem

Na área da robótica é essencial que os sistemas obtenham informação do mundo em seu re-dor. Estes dados são obtidas através de sensores, permitindo ao robô saber a sua localização, velocidade, percecionar obstáculos à sua volta, temperatura ambiente, etc. Com a evolução da tecnologia de imagem digital, tornou-se também possível dotar os robôs com visão artificial (ou visão computacional).

Neste capítulo é apresentada uma análise a técnicas de morfologia, segmentação e classificação de visão artificial, assim como a geometria entre um marcador e a câmara do veículo. Estas duas componentes analisadas são a base para o sistema de perceção do veículo, que permite obter um localização relativa ao marcador.

3.1

Modelo BlueROV2

Para a aplicação do algoritmo de perceção, foi utilizado o veículo comercial BlueROV2 [4]. Este veículo é equipado com seis propulsores T200 da BlueRobotics com uma força de propulsão na água de 40-50N [12]. A escolha deste veículo é resultante da sua utilização de eletrónica e software open-source, que permite fazer alterações ao seu sistema como, por exemplo, conceder-lhe autonomia de navegação.

Figura 3.1: Veículo BlueROV2 [4]

(36)

20 Sistema de Localização por Imagem

Figura 3.2: Eixos coordenados. Eixo fixo ao corpo OB move-se relativamente ao eixo fixo à terra

OI

O primeiro passo na obtenção da distância do veículo ao marcador é definir os eixos dos objetos para assim estudar a relação trigonométrica e geométrica entre eles. Definiu-se os eixos do veículo como representado na figura3.2. A localização e as velocidades dos veículos aquáticos são ordinariamente representadas no referencial inercial da terra OI, tornando indispensável a sua

representação em conjunto com o referencial fixo ao corpo OB.

O referencial do marcador definiu-se de acordo com a figura3.3 . Neste referencial são co-nhecidas as coordenadas das bolas verde, vermelha e amarela, definidas da seguinte maneira.

V d=    0 −b 0   ,V m =    −a 0 0   , Am =    a 0 0    (3.1)

(37)

3.2 Implementação Proposta 21

3.2

Implementação Proposta

Com o objetivo de saber a localização relativa do sistema, definiu-se que a deteção do marcador seria realizada por imagem. A imagem é captada pela câmara do ROV comercial BlueRov2[4] e posteriormente processada com recurso às bibliotecas open-source de edição e análise de imagem OpenCV [13] .

Para o marcador, foi utilizada uma estrutura axial de metal com 3 bolas coloridas nas extre-midades representado na figura3.4. Utilizando um marcador bem conhecido torna-se o processo de deteção do objeto mais simples e concreto, diminuindo o poder computacional necessário e reduzindo o tempo de processamento, caraterística fundamental considerando a necessidade de processamento em tempo real.

3.2.1 Deteção

A deteção do objeto é dividida em duas partes: deteção por cor e deteção por forma. Com esta estrutura de deteção procura-se eliminar erros presentes numa simples deteção por objeto ou por cor. A deteção por cor ocorre primeiro, para permitir uma maior precisão na deteção da forma circular. A imagem3.5mostra a relação destes dois algoritmos.

3.2.1.1 Deteção por Cor

Na deteção por cor são criadas três imagens segmentadas, uma para cada cor presente no mar-cador. Os valores de threshold são escolhidos através de uma análise prática da melhor amplitude nos vários parâmetros HSV, que permita reconhecer o objeto em vários casos e que reduza o ruído que possa ser também segmentado.

No ambiente subaquático a deteção da cor verde e amarela revela-se ser complexa. A distorção das cores, a luminosidade e a coloração da água originam uma gama de valores HSV estreita que leva à deteção de vários falsos negativos. É necessário utilizar gamas mais abrangentes e com operações morfológicas tentar reduzir o barulho que afeta as imagens segmentadas.

(38)

22 Sistema de Localização por Imagem

Figura 3.5: Modelo Deteção

Às três imagens segmentadas são aplicadas operações morfológicas de erosão e dilatação, eliminando pequeno ruído e imperfeições e preenchendo os objetos detetados. Os elementos es-truturantes escolhidos são circunferências com dimensões diferentes (menor na erosão e maior na dilatação) para permitir manter a forma circular do objeto.

Por fim, somam-se as três imagens segmentadas e processadas obtendo a imagem final seg-mentada por cor e com ruído reduzido.

3.2.1.2 Deteção por Forma

A deteção por forma utiliza as três imagens segmentadas obtidas na deteção por cor . Começa com a obtenção dos contornos da figura que nos indica o número de objetos encontrados em toda a imagem, não estando o número limitado aos objetos segmentados.

É calculada a área para cada objeto de contorno que posteriormente é comparada com uma gama definida. Quando comprovado, o objeto é guardado juntamente com a sua dimensão e centro, para que possa ser utilizado pelo algoritmo de perceção.

3.2.2 Rastreio

A deteção descrita no ponto anterior é computacionalmente pesada para um micro-computador. Em resposta aos problemas de eficiência energética, memória, e processamento que surgem foi implementado um algoritmo de rastreio.

O algoritmo utiliza a deteção num primeiro frame até encontrar os 3 objetos pretendidos. Quando encontrados, as coordenadas das bounding boxes dos objetos são passados para o rastreio que utiliza o algoritmo de Média deslizante ( Median Flow [14]). O rastreio por média deslizante

(39)

3.3 Extrapolação de coordenadas 23

é ideal para movimentos suaves e previsíveis, sem oclusão dos objetos, com boa deteção de er-ros. Para a aplicação a ser desenvolvida, espera-se que a aproximação seja feita lentamente, não afetando dessa maneira o rastreio.

3.3

Extrapolação de coordenadas

A relação entre os pontos do marcador e o referencial fixo da câmara é a base para o ex-trapolação de coordenadas. Na secção anterior definiram-se os eixos coordenados do marcador xM, yM, zM. O conhecimento total destes eixos permite relacionar a sua posição com o referencial

da câmara e do plano da imagem. Para além do referencial do marcador, é conhecido também o referencial da câmara . A relação entre os dois referenciais pode ser observada na seguinte figura,

Figura 3.6: Definição dos referenciais da câmara e do marcador

Diversas técnicas de extração de coordenadas relativas a um marcador, com a utilização de um sistema de visão foram implementadas ao longo dos anos, com o desenvolvimento da utilização da imagem digital e ferramentas de edição. Alguns métodos empregues são descritos em ( [15] , [16]) , apresentando resultados favoráveis mas suscetíveis a erros de medição devido a perturbações de roll,pitch e yaw. Usando como fundamento o trabalho desenvolvido em [15] serão integrados os dados obtidos pelo IMU para cobrir a falta de informação da atitude do veículo.

Assume-se que o plano do sensor da câmara é paralelo ao plano xMyMdo marcador e , através

do modelo pinhole da câmara, a extrapolação das medidas óticas é feita com uma abordagem geométrica [15].

Conhecendo a dimensão da imagem do sensor, é fácil extrair a distância entre os pontos Ama-relo e Vermelho do marcador no plano da imagem. Como a distância real entre os pontos anteriores é previamente conhecida, é possível calcular o fator de escala λ entre as duas medidas, permitindo obter as medidas reais com as medidas no plano da imagem. Define-se então λ como:

λ =dAmV m

(40)

24 Sistema de Localização por Imagem

em que dAmV mé a distância real entre o ponto amarelo e o ponto vermelho e dAmV m0 é a distância

entre os dois pontos no plano da imagem. Com o fator de escala calculado é possível calcular a posição horizontal relativa da câmara em relação ao marcador. A posição horizontal de um ponto arbitrário A, pode ser calculada através da expressão,

" xA yA # = " x0A y0A # · λ (3.3)

A figura seguinte ilustra as relações geométricas da relação entre o plano da imagem o marca-dor.

Figura 3.7: Descrição das medições óticas

Para o cálculo da distância do câmara ao marcador H, é necessário determinar o ângulo de projeção α para um ponto. O ponto escolhido para a referência é o ponto vermelho , V m, devido à maior facilidade em ser detetado e há menor taxa de erros do seu centro, reduzindo assim erros posteriores na obtenção das medidas reais. Como se sabe a o valor do comprimento focal do sensor ótico (valor determinado na calibração), o valor de α pode ser calculado da forma:

α =d

0 V m

f (3.4)

Considerando , novamente, o paralelismo entre o plano da imagem e o plano xMyMdo

(41)

3.3 Extrapolação de coordenadas 25

a distância real previamente conhecida dV m= a. Assim, H é calculado da seguinte maneira:

H= a

tanα (3.5)

3.3.1 Integração dados IMU

Determinadas as expressões para o cálculo das distâncias é necessário analisar a influência da atitude (roll, pitch, yaw) nos valores obtidos, considerando que as posições [xr, yr, zr] finais devem

ser dadas no referencial da câmara.

3.3.1.1 Análise da influência do roll

A figura seguinte, representa a rotação dos eixos xM e yM do marcador em relação aos eixos

da câmara xC, yC devido há existência de roll φ . A figura é uma vista frontal dos referenciais

sobrepostos, onde é possível observar a influência de φ nas medidas de xCe yC.

Figura 3.8: Rotação do referencial devido ao roll

Pela análise da figura pode ser concluído que xre yrsão afetados por cosφ .

3.3.1.2 Análise da influência do pitch

A figura seguinte, seguindo a lógica anterior, representa a rotação dos eixos yM e zM do

mar-cador em relação aos eixos da câmara yC, zCdevido há existência de pitch θ . A figura é uma vista

lateral dos referenciais sobrepostos, onde é possível observar a influência de θ nas medidas de yC

(42)

26 Sistema de Localização por Imagem

Figura 3.9: Rotação do referencial devido ao picth

A influência do pitch é semelhante à do roll, afetando as medidas yre zrem cosθ .

3.3.1.3 Análise da influência do yaw

No caso do yaw, é necessário utilizar o valor do ângulo entre o referencial da câmara e o do marcador. Este caso apenas ocorre no yaw, pois o valor de saída do IMU é o ângulo yaw no referencial de inércia da Terra, sendo que o ψ = 0◦ é quando o veículo está virado para o Norte magnético. Com esta particularidade, é necessário ou colocar o marcador na posição de ψ = 0◦, obtendo assim a medida do IMU como yaw relativo, ou então descobrir o ângulo entre os referenciais.

Para esta análise supõe-se que o valor do yaw é conhecido. Para auxiliar a análise, ilustra-se a rotação dos eixos xMe zMcom os eixos xC e zC. A figura representa uma vista de topo sobre os

referenciais.

(43)

3.3 Extrapolação de coordenadas 27

Por observação e análise da figura anterior, aferiu-se que as medidas xre zr sã afetadas por

cosψ .

3.3.2 Distância relativa

O vetor da distância relativa β ∈ R3define-se como:

β =    xr yr zr    (3.6)

O cálculo das medidas xre yré realizado através da distância do centro da imagem do marcador

ao centro do plano da imagem (coordenadas obtidas na calibração). O valor obtido no plano da imagem é ,seguidamente , multiplicado pelo fator de escala calculado anteriormente e a influência das atitudes. Para xre yrtemos então:

xr= dx0· λ · cosφ · cosψ (3.7)

yr= dy0· λ · cosφ · cosθ (3.8)

O valor de zr é obtido facilmente através da distância do sensor ótico ao marcador, H. É

também multiplicado pelo cosseno de pitch e o cosseno de yaw para introduzir os erros causados pela atitude. Temos então,

zr= H · λ · cosθ · cosψ (3.9)

A distância relativa obtida é expressa no referencial da câmara. Para a sua utilização no con-trolo de aproximação, precisamos que esta seja expressa no referencial fixo ao corpo OB .

A transformação do vetor de distâncias β do referencial OCpara o referencial OBé conseguida

recorrendo a uma transformação homogénea. Como a câmara é fixa ao corpo e alguns dos eixos tem direção e sentido semelhantes, a rotação entre eles torna-se trivial. A matriz de rotação dos eixos fica então,

RBC=    0 0 1 1 0 0 0 1 0    (3.10)

Com a matriz de rotação conseguimos projetar os eixos de OC em OB assim como os seus

pontos, porém a transformação, como homogénea, é também afetada por uma translação dos re-ferenciais. O vetor que descreve as distâncias para a translação é descrita na seguinte expressão,

dB,CB =    lx 0 0    (3.11)

(44)

28 Sistema de Localização por Imagem

em que lxé a distância em xBdo centro OBao centro OC.

A matriz homogénea fica então,

HCB=       0 0 1 lx 1 0 0 0 0 1 0 0 0 0 0 1       . (3.12)

O vetor de distância Xre f resultante da transformação de OCem OBcontém os valores que irão

ser as entradas das referências dos controladores desenvolvidos nos capítulos seguintes. O vetor de referências é descrito como,

Xre f = HCB· β =    H· λ · cosθ · cosψ + lx dx0· λ · cosφ · cosψ dy0· λ · cosφ · cosθ    (3.13)

3.4

Resultados Experimentais

Foram realizados testes experimentais no tanque do laboratório do CRAS do INESC TEC/FEUP, com o objetivo de comprovar o funcionamento e resultados obtidos do sistema de perceção, fal-tando a realização de testes sobre o sistema de controlo. Devido à falta de um sistema de ground-truthos resultados revelam-se incompletos.

Para testar o sistema de perceção, foi necessário obter as dimensões do tanque de testes. Os resultados carecem de precisão por causa da falta de um sistema de grountruth capaz de validar a verdadeira posição do BlueROV2 e do marcador. Assim sendo, os testes foram realizados co-locando o veículo em pontos conhecidos do tanque de testes e o marcador na posição vertical , também numa posição conhecida.

As figuras seguintes ilustram o processo de deteção do marcador e os valores de xr,yr,zr da

(45)

3.4 Resultados Experimentais 29

Figura 3.11: Captura do marcador pela câmara do veículo

(46)

30 Sistema de Localização por Imagem

Figura 3.13: Resultado da deteção com coordenadas para xr= 0.9 m yr= −0.1 m e zr= 0 m

Como pode ser observado na figura 3.13 as medições realizadas pelo sistema de perceção incluem alguns erros que afetam o resultado final. Verificou-se também que o limite máximo para a medição segundo yB é |y| = 0.5 m, para a distância segunda xB é |x| = 1.2 m e segundo zB é

(47)

Capítulo 4

Modelização do BlueROV2

4.1

Propulsão do veículo BlueROV2

Para realização da análise aos movimentos simples do veículo BlueROV2 é necessário co-nhecer a sua dinâmica aquando inserido no fluído. Comecemos por definir os seus vetores de propulsão e CG.

Figura 4.1: Representação vetores de aplicação de forças e centro de Gravidade (CG)

O veículo possui 6 propulsores como mostra a figura4.1com distâncias ao CG the lx= 0.156m

e ly= 0.11m. A direção e sentido de cada vetor de propulsão é definido no espaço pelos seguintes

vetores, fp1=    −cosϕ sinϕ 0   Fp1; fp2=    −cosϕ −sinϕ 0   Fp2; fp3=    −cosϕ −sinϕ 0   Fp3; (4.1) 31

(48)

32 Modelização do BlueROV2 fp4=    −cosϕ sinϕ 0   Fp4; fp5=    0 0 1   Fp5; fp6=    0 0 1   Fp6 (4.2) onde Fpi, é a força exercida pelo propulsor i e ϕ = 45◦Considera-se que o ponto de aplicação

da força Fpié dado por,

rpi=    xpi ypi zpi    (4.3)

As coordenadas dos pontos de aplicação foram obtidas de [17] e são expostas na seguinte tabela,

Tabela 4.1: Coordenadas dos pontos de aplicação das forças dos propulsores Parâmetro Valor (m) xp1 0.156 yp1 0.11 zp1 0 xp2 -0.156 yp2 0.11 zp2 0 xp3 0.156 yp3 -0.11 zp3 0 xp4 -0.156 yp4 -0.11 zp4 0 xp5 0 yp5 0.11 zp5 -0.08 xp5 0 yp5 -0.11 zp5 -0.08

De seguida calcula-se o vetor de força e momentos exercidos da seguinte forma:

τpi=    fp1 − − −− rpi× fpi    (4.4)

Facilitando os cálculos e análises posteriores, decompõe-se as forças e os momentos resul-tantes em τpi= P · fp, em que P ∈ R6×6 é uma matriz de constantes e fpR6 é o vetor das forças

(49)

4.2 Equações diferenciais de movimento 33

4.2

Equações diferenciais de movimento

O veículo apresenta simetria em dois planos e é construído para ser mecanicamente estável nas componentes roll e pitch (φ , θ = 0). O desenho e a construção do BlueROV2 garante, com estas características , a capacidade do veículo estabilizar a sua posição e atitude após sofrer per-turbações.

O veículo possui também 4 DOF, nos movimentos segundo xB, yB, zBe yaw. A expressão2.11

representa a dinâmica de um veículo inserido num fluído e pode ser decomposta em:

M ˙υ = −(CRB(υ) +CA(υ) + DV(υ)) · υ − g(η) + P fp, (4.5)

com M = MRB+ MA . Decompondo a expressão anterior nas suas linhas das respetivas

com-ponentes que pretendemos controlar (xB, yB, zB e yaw ) obtemos,

(m − Xu˙) ˙u− Xq˙q˙= mrv − mqw + (Zw˙w+ Zq˙q)q − (Yv˙v+Yp˙p+Y˙rr)r + Xu|u|u|u|

+Xq|q|q|q| − (W − B)sinθ + Fp1+ Fp2+ Fp4+ Fp4

(4.6)

(m −Yv˙) ˙v−Yp˙p˙−Y˙r˙r = −mru + mpw + (Zw˙w+ Zq˙q)p + (Xu˙u+ Xq˙q)r +Yv|v|v|v|

+Yp|p|p|p| +Yr|r|r|r| + (W − B)cosθ sinφ + Fp1+ Fp2+ Fp3+ Fp4 (4.7) (m − Zw˙) ˙w− Zq˙q˙= mqu − mpv + (Yv˙v+Yp˙p+Y˙rr)p − (Xu˙u+ Xq˙q)q + Zw|w|w|w| +Zq|q|q|q| − (B −W )cosθ + Fp5+ Fp6 (4.8) (Izz− N˙r)˙r − Nv˙v˙= Iyyqp− Ixxpq− (Yv˙v+Yp˙p+Y˙rr)u − (Xu˙u+ Xq˙q)v + (Xq˙u+ Zq˙w+ Mq˙q)p −(Yp˙v+ Mp˙p)q + Nr|r|r|r| + Nv|v|v|v| − yp1Fp1− yp2Fp2− yp3Fp3− yp4Fp4 (4.9)

Os parâmetros das expressões anteriores são obtidos experimentalmente. Como não é de in-teresse trabalhar a modelação do veiculo, mas sim estudar apenas o seu modelo, os valores dos parâmetros foram obtidos em [17] e [18]. Os seus valores são expressos na seguinte tabela:

(50)

34 Modelização do BlueROV2

Tabela 4.2: Forças e Parâmetros do modelo do BlueROV2 Parâmetro Valor Unidades Descrição

Izz 0.16 kg/m2 Momento de inércia segundo o eixo zB

Xu˙ -5.5 kg Coeficiente de massa acrescentada

Yv˙ 12.7 kg Coeficiente de massa acrescentada

Zw˙ -14.57 kg Coeficiente de massa acrescentada

Kp˙ -0.12 kg· m2 Coeficiente de massa acrescentada

Mq˙ -0.12 kg· m2 Coeficiente de massa acrescentada

N˙r -0.12 kg· m2 Coeficiente de massa acrescentada

Xu|u| -18.8 kg· m−1 Coeficiente de drag

Yv|v -21.66 kg· m−1 Coeficiente de drag Zw|w -36.99 kg· m−1 Coeficiente de drag Nr|r| -1.55 kg· m2 Coeficiente de drag W 107.91 N Peso B 109.87 N Força de flutuação

4.3

Limites de propulsão

O veículo BlueRov2 está equipado com seis propulsores T200 da BlueRobotics. Segundo o fabricante estes são capazes de exercer uma força de atuação máxima em modo direto e inverso, com os seguintes valores.

Fp f or ≈ 50N

Fprev≈ 40N

(4.10)

Atendendo ao facto do objetivo ser a realização de um movimento de aproximação, os valores das forças de atuação serão ambos limitados a 10N.

4.3.1 Movimento segundo xB

Para a análise do movimento segundo o eixo xB assume-se uma velocidade constante u, num

movimento axial apenas sobre o eixo referido. As restantes velocidades sobre os eixos lineares e angulares são consideradas nulas.

υ = h u 0 0 0 0 0 i (4.11) o que resulta ˙ υ = h 0 0 0 0 0 0 i (4.12)

(51)

4.3 Limites de propulsão 35

Na dinâmica do veículo, a velocidade linear segundo xB é calculada recorrendo à primeira

linha. A expressão é dada por

(m − Xu˙) ˙u− Xq˙q˙= mrv − mqw + (Zw˙w+ Zq˙q)q − (Yv˙v+Yp˙p+Y˙rr)r + Xu|u|u|u|

+Xq|q|q|q| − (W − B)sinθ + Fp1+ Fp2+ Fp4+ Fp4

(4.13)

Sobrepondo4.11e4.12à expressão anterior, resulta:

Xu|u|u|u| − (W − B)sinθ + Fp1+ Fp2+ Fp3+ Fp4= 0 (4.14)

E considerando θ = 0 e u > 0 , então

−Xu|u|u2= Fp1+ Fp2+ Fp3+ Fp4 (4.15)

Como Xu|u|<0, a velocidade máxima umaxsegundo xBé atingida quando Fp1+ Fp2+ Fp3+ Fp4

é máxima, resultando umax= s Fp1+ Fp2+ Fp3+ Fp4 −Xu|u| = 1, 46m/s (4.16) 4.3.2 Movimento segundo yB

Nesta subsecção, considera-se o apenas o movimento segundo yB, com velocidade v > 0

cons-tante. Como anteriormente, as restantes velocidades são consideradas nulas:

υ = h 0 v 0 0 0 0 i (4.17) e, ˙ υ = h 0 0 0 0 0 0 i (4.18) Utilizando a expressão da segunda linha da dinâmica do veículo,

(m −Yv˙) ˙v−Yp˙p˙−Y˙r˙r = −mru + mpw + (Zw˙w+ Zq˙q)p + (Xu˙u+ Xq˙q)r +Yv|v|v|v|

+Yp|p|p|p| +Yr|r|r|r| + (W − B)cosθ sinφ + Fp1+ Fp2+ Fp3+ Fp4

(4.19)

Usando4.17e4.18, resulta

(52)

36 Modelização do BlueROV2

O movimento segundo o eixo yB induz força no eixo de rotação yaw. Isso implica que r 6=

0.Para efeito de cálculo, despreza-se a sua influência. Considerando v > 0, a velocidade é máxima quando a soma das forças Fp1+ Fp2+ Fp3+ Fp4é máxima.

vmax=

s

Fp1+ Fp2+ Fp3+ Fp4

−Yv|v| = 1, 36m/s (4.21)

4.3.3 Movimento segundo zB

No movimento em zB , considera-se que apenas existe este movimento e a velocidade w > 0

constante. AS restantes velocidades são consideradas nulas, como na subsecção anterior:

υ = h 0 0 w 0 0 0 i (4.22) e, ˙ υ = h 0 0 0 0 0 0 i (4.23) Utilizando a expressão da terceira linha da dinâmica do veículo,

(m − Zw˙) ˙w− Zq˙q˙= mqu − mpv + (Yv˙v+Yp˙p+Y˙rr)p − (Xu˙u+ Xq˙q)q + Zw|w|w|w|

+Zq|q|q|q| − (B −W )cosθ + Fp5+ Fp6

(4.24)

Utilizando4.22e4.23, resulta

Zw|w|w|w| + Fp5+ Fp6− (B −W )cosθ = 0 (4.25)

O movimento segundo o eixo zB induz força no eixo de rotação roll. Isso implica que p 6=

0.Para efeito de cálculo, despreza-se a sua influência. Considerando w > 0, a velocidade é máxima quando a soma das forças Fp5+ Fp6é máxima.

wmax=

s

Fp5+ Fp6

−Zw|w| = 1, 04m/s (4.26)

4.3.4 Movimento segundo yaw

Nesta subsecção, considera-se o apenas o movimento segundo yaw , com velocidade r > 0 constante. com as restantes velocidades nulas:

υ = h 0 0 0 0 0 r i (4.27) e, ˙ υ = h 0 0 0 0 0 0 i (4.28)

(53)

4.3 Limites de propulsão 37

Utilizando a expressão da sexta linha da dinâmica do veículo,

(Izz− N˙r)˙r − Nv˙v˙= Iyyqp− Ixxpq− (Yv˙v+Yp˙p+Y˙rr)u − (Xu˙u+ Xq˙q)v + (Xq˙u+ Zq˙w+ Mq˙q)p

−(Yp˙v+ Mp˙p)q + Nr|r|r|r| + Nv|v|v|v| − yp1Fp1− yp2Fp2− yp3Fp3− yp4Fp4

(4.29) Usando4.27e4.28, resulta

Nr|r|r|r| − yp1Fp1− yp2Fp2− yp3Fp3− yp4Fp4= 0 (4.30)

O movimento segundo yaw induz forças que induzem velocidades nos eixos xB e yB, contudo

estas consideram-se desprezáveis devido à sua proximidade de zero. Considerando Nr|r|r|r| < 0,

yp1> 0 , yp2= yp1, yp3= −yp1, yp4= yp3, a velocidade de rotação segundo yaw é máxima quando

−Fp1= −Fp2= Fp3= Fp4= 10N. Nisto resulta,

rmax=

s

yp1(−Fp1) + yp2(−Fp2) + yp3Fp3+ yp4Fp4

(54)
(55)

Capítulo 5

Controlo

Para completar o sistema de aproximação do BlueROV2, é necessário um controlo de mano-bras simples sobre o veículo. Fundamentando o estudo e conceção do controlo na teoria exposta no capítulo 2, determinam-se diferentes controladores. Neste capítulo são desenvolvidos contro-ladores de velocidade vertical e horizontal seguidos dos respetivos controcontro-ladores de posição.

Para o desenvolvimento do controlo é necessário o conhecimento da dinâmica do veículo, assim como os seus limites de movimento. Como o sistema estudado é uma aproximação do modelo real, existem pequenas diferenças que influenciam o resultado final dos controladores. Essas divergências são tratadas como perturbações.

5.1

Controlador de velocidade vertical

O movimento vertical do BlueROV2 é executado pelos propulsores Fp5e Fp6. Para a

deter-minação do controlador, este será baseado na teoria de Lyapunov e nas técnicas de backstepping ([19]). O sistema será analisado em torno de um ponto de equilíbrio e o controlador determinado será capaz de levar o sistema à estabilidade para um estado próximo da referência definida.

5.1.1 Determinação do controlador

Pretende-se controlar a velocidade vertical w e a velocidade angular p ( pitch) . Para tal, define-se o erro entre o estado atual e a referência, originado a expressão:

e= υ − υre f =    v− vre f w− wre f p− pre f   =    0 w− wre f p− pre f    (5.1)

em que vre f, wre fe pre f são as referências das velocidades sobre yB, zBe pitch, respetivamente.

O erro da velocidade linear sobre yBé sempre nulo porque não há interesse em controlar esta

va-riável neste controlador. Introduziu-se este erro pois a velocidade v tem influência nas velocidades we q, como se verifica nas expressões(linhas da eq. da dinâmica). As restantes velocidades u, q e rsão consideradas desprezáveis segundo o movimento de zBe pitch.

(56)

40 Controlo

Primeiro, define-se a candidata a função de Lyapunov,

V =1 2e

T

e (5.2)

Segundo a Teoria de Lyapunov ([7]), para o sistema ser estável é necessário que a derivada da função candidata seja negativa definida, isto é:

˙

V< 0 (5.3)

Em que ˙V é definida como: ˙

V = eTe˙= eT( ˙υ − ˙υre f) (5.4)

Verificando a condição de5.3na expressão anterior tem-se,

eT( ˙υ − ˙υre f) < 0 ⇒ ˙υ − ˙υre f < −kee (5.5)

em que ke∈ R , ke> 0.

Como o valor de e não se consegue variar instantaneamente , define-se uma nova variável de erro α, que satisfaz a inequação5.5e que se pretende aproximar de zero. Define-se α ,

α = ˙υ − ˙υre f+ kee ⇐⇒ ˙υ = α + ˙υre f− kee (5.6)

Reescreve-se assim a função derivada de Lyapunov ,

˙

V= eT(α − kee) (5.7)

Substituindo5.6na equação da dinâmica do veículo4.5e assumindo que a matriz M é inver-tível, obtém-se

α = M−1[−(C(υ) + D(υ))υ − g(η) − M( ˙υre f− kee) + P fp] (5.8)

Analisando as variáveis da equação anterior, admite-se que se pode variar fpdevido a esta ser

a variável de entrada do sistema. Para garantir que a derivada da função de Lyapunov é negativa, escolhe-se fpcomo:

fp= P+[(C(υ) + D(υ))υ + g(η) + M( ˙υre f− kee)], (5.9)

em que P+ é a matriz pseudo-inversa de P. Com isto, a derivada da função de Lyapunov é sempre negativa:

˙

(57)

5.2 Controlador de velocidade horizontal 41

5.1.2 Cálculo do ganho

O ganho keé calculado tendo em conta a saturação dos propulsores. Uma saturação prolongada

dos mesmos, pode originar falhas no hardware e danificar o sistema.

Por outro lado, ganhos elevados podem gerar saturação dos propulsores para desvios pequenos da velocidade de referência, enquanto que ganhos reduzidos geram um comportamento lento e um erro de regime permanente elevado. Sendo assim, é necessário um ganho que permita uma resposta rápida , um erro de regime permanente quase nulo e que evite a saturação prolongada dos propulsores.

O módulo da força máxima dos propulsores fpmax foi previamente limitado a 10N, devido à

aproximação do objeto. A distância medida é, no máximo, 2m sendo necessário garantir uma aproximação segura.

Usando a expressão 5.9 e assumindo um veículo em repouso relativamente ao fluído e com forças de restabelecimento desprezáveis:

fp= P+[M( ˙υre f− kee)] (5.11)

Desprezando-se a derivada da velocidade de referência υre f˙ , arbitra-se o limite do erro de velocidade segundo zB,

|ew| = |w − wre f| ≤ ewmax= 0.3m/s (5.12)

Considerando-se fp= [ fpmax, fpmax]Te o erro de velocidade segundo roll nulo (e = [0, ewmax, 0]T),

obtém-se:

ke= e+M−1P fp= 0.7822, (5.13)

em que e+é a matriz pseudo-inversa de e.

Uma vez que não se pretende controlar a velocidade angular de roll, não se definiu os limites para o seu erro. Assume-se sempre que as variações serão pequenas e que o ep≈ 0 .

O valor do ganho obtido será ajustado, depois de realizadas as simulações, em função do comportamento desejado do sistema.

5.2

Controlador de velocidade horizontal

O movimento horizontal do BlueROV2 é executado pelos propulsores Fp1, Fp2, Fp3 e Fp4.

Conforme mencionado anteriormente, para a determinação do controlador, este será baseado na teoria de Lyapunov e nas técnicas de backstepping ([19]). O sistema será analisado em torno de um ponto de equilíbrio e o controlador determinado será capaz de levar o sistema à estabilidade para um estado próximo da referência definida.

(58)

42 Controlo

5.2.1 Determinação do controlador

Neste caso pretende-se controlar a velocidade u segundo xB, a velocidade v segundo yB e a

velocidade angular r segundo yaw . Para tal, define-se o erro entre o estado atual e a referência, originado a expressão: e= υ − υre f =    u− ure f v− vre f r− rre f    (5.14)

em que ure f , vre f e rre f são as referências das velocidades sobre xB, yBe yaw, respetivamente.

As restantes velocidades w, p e q são consideradas desprezáveis segundo o movimento de xB,

yBe yaw.

Primeiro, define-se a candidata a função de Lyapunov,

V =1 2e

T

e (5.15)

Segundo a Teoria de Lyapunov ([7]), para o sistema ser estável é necessário que a derivada da função candidata seja negativa definida, isto é:

˙

V< 0 (5.16)

Em que ˙V é definida como: ˙

V = eTe˙= eT( ˙υ − ˙υre f) (5.17)

Verificando a condição de5.16na expressão anterior temos,

eT( ˙υ − ˙υre f) < 0 ⇒ ˙υ − ˙υre f < −kee (5.18)

em que ke∈ R , ke> 0. Como o valor de e não se consegue variar instantaneamente ,

define-se uma nova variável de erro α, que satisfaz a inequação5.5 e que se pretende levar para zero. Define-se α ,

α = ˙υ − ˙υre f+ kee ⇐⇒ ˙υ = α + ˙υre f− kee (5.19)

Reescreve-se assim a função derivada de Lyapunov , ˙

V= eT(α − kee) (5.20)

Substituindo5.19na equação da dinâmica do veículo4.5e assumindo que a matriz M é inver-tível, obtém-se

Referências

Documentos relacionados

Sendo assim, nas piadas sexistas, as identidades dos sujeitos homem e mulher são construídas através do dialogismo discursivo, marcado pela polêmica velada entre os discursos machista

1.4 METODOLOGIA Este relatório visa a descrever como ocorreu a proposta de estágio supervisionado dos alunos do curso de Licenciatura em Computação, que promoveram um curso

(2011) informam que a exposição conti- nuada a estímulos ambientais e a condições insalubres no ambiente de trabalho, principalmente o estresse crônico, é identificada

O Documento Orientador da CGEB de 2014 ressalta a importância do Professor Coordenador e sua atuação como forma- dor dos professores e que, para isso, o tempo e

insights into the effects of small obstacles on riverine habitat and fish community structure of two Iberian streams with different levels of impact from the

Os principais objectivos definidos foram a observação e realização dos procedimentos nas diferentes vertentes de atividade do cirurgião, aplicação correta da terminologia cirúrgica,

psicológicos, sociais e ambientais. Assim podemos observar que é de extrema importância a QV e a PS andarem juntas, pois não adianta ter uma meta de promoção de saúde se

En este sentido, esta investigación busca realizar un aporte ala educación emprendedora ecuatorianaa través de la evaluación de la cátedra de Desarrollo de