Vous êtes sur la page 1sur 59

Lucas Pluceno Behnck

Controle de Misso de Voo de


Veculo Areo No-Tripulado

Porto Alegre
2014
Lucas Pluceno Behnck

Controle de Misso de Voo de


Veculo Areo No-Tripulado

Projeto de diplomao realizado na Universi-


dade Federal do Rio Grande do Sul, departa-
mento de Engenharia Eltrica.

Universidade Federal do Rio Grande do Sul - UFRGS


Departamento de Engenharia Eltrica

Orientador: Prof. Dr. Carlos Eduardo Pereira

Porto Alegre
2014
CIP - Catalogao na Publicao

Pluceno Behnck, Lucas


Controle de Misso de Voo de Veculo Areo No-
Tripulado / Lucas Pluceno Behnck. -- 2014.
58 f.

Orientador: Carlos Eduardo Pereira.

Trabalho de concluso de curso (Graduao) --


Universidade Federal do Rio Grande do Sul, Escola de
Engenharia, Curso de Engenharia Eltrica, Porto
Alegre, BR-RS, 2014.

1. Veculos Areos No Tripulados. 2. Simulated


Annealing. 3. Clculo de Trajetria. I. Eduardo
Pereira, Carlos, orient. II. Ttulo.

Elaborada pelo Sistema de Gerao Automtica de Ficha Catalogrfica da UFRGS com os


dados fornecidos pelo(a) autor(a).
Lucas Pluceno Behnck

Controle de Misso de Voo de


Veculo Areo No-Tripulado

Projeto de diplomao realizado na Universi-


dade Federal do Rio Grande do Sul, departa-
mento de Engenharia Eltrica.

Porto Alegre, 26 de maro de 2014:

Prof. Dr. Carlos Eduardo Pereira


Orientador

Ivan Mller
Convidado 1

Edison de Freitas Pignaton


Convidado 2

Porto Alegre
2014
Resumo
Este trabalho prope um mdulo embarcado capaz de realizar o clculo de trajetrias
de pequenos veculos areos no tripulados. Primeiro, o modelo do VANT e do mdulo
de Controle de Misso descrito atravs de diagramas SysML. Em seguida apresenta-
se a concepo de uma plataforma embarcada utilizando um Raspberry Pi capaz de
comunicar-se com os VANTs estudados. Dois estudos de caso so apresentados. O primeiro
estudo demonstra uma misso cujo objetivo a visita de diversas localidades (pontos
de interesse) em uma regio, percorrendo a menor distncia possvel. A trajetria de
visita destes pontos calculada atravs do algoritmo Simulated Annealing clssico. No
segundo caso, considera-se que os pontos de interesse esto classificados em duas categorias,
que devem ser visitadas por dois VANTs especializados em cada uma destas categorias.
Neste caso, o algoritmo Simulated Annealing modificado para permitir a otimizao
das duas trajetrias. Ambos algoritmos so testados e tm seus desempenhos avaliados,
monstrado-se adequados s aplicaes. Finalmente, o mdulo desenvolvido testado com
sucesso interagindo com mltiplos VANTs em um simulador de voo. Palavras-chaves:
VANT. Simulated Anneling. Clculo de Trajetria.
Abstract
This work proposes an embedded module capable of calculating paths for small Unmanned
Aircraft (UA). The UA is modeled through SysML diagrams, then the embedded platform
is developed using a Raspberry Pi. Two study cases are presented. The first study case
presents an mission in which the UA must inspect a given list of locations (points of
interest) in the best possible manner. In this mission, the flight path is calculated using the
Simulated Annealing meta-heuristic. The following study case presents a situation where
each one of the points of interest belongs to a different class, and should be inspected
by an UA with the appropriate specialization. To take this restriction into account; an
modified Simulated Annealing is proposed. The two algorithms are successfully tested for
both applications. The developed module is tested with the support of flight simulator,
interacting simultaneously with multiple UAVs.

Key-words: Unmanned Aircraft. Simulated Annealing. Path Planning.


Lista de ilustraes

Figura 1 Exemplo de VANT de Asa Fixa . . . . . . . . . . . . . . . . . . . . . . 13


Figura 2 Exemplo de VANT de Asa Rotativa . . . . . . . . . . . . . . . . . . . . 13
Figura 3 Classificaes dos VANTs. . . . . . . . . . . . . . . . . . . . . . . . . . 14
Figura 4 Taxonomia dos diagramas SysML. . . . . . . . . . . . . . . . . . . . . 16
Figura 5 Um VANT com quatro rotores. . . . . . . . . . . . . . . . . . . . . . . 23
Figura 6 Diagrama de caso de uso simplificado do mdulo de controle da misso. 24
Figura 7 Diagrama de caso de uso do controle de misso com modos de vo. . . 25
Figura 8 Diagrama estrutural do veculo areo no tripulado. . . . . . . . . . . . 26
Figura 9 Diagrama estrutural do veculo areo no tripulado. . . . . . . . . . . . 27
Figura 10 Diagrama de definio dos blocos do Controle de Misso. . . . . . . . . 29
Figura 11 Raspberry Pi Model A. . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Figura 12 Diagrama de sequncia. . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Figura 13 Diagrama de blocos do simulador de voo utilizado. . . . . . . . . . . . 33
Figura 14 Ilustrao do estudo de caso 1. Os crculos vermelhos indicam pontos de
interesse detectados pelo primeiro VANT e que devem ser inspecionados
posteriormente. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Figura 15 Trajetrias dos VANTs em uma misso de varredura e inspeo. . . . . 35
Figura 16 Exemplo de trajetrias 1 . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Figura 17 Exemplo de trajetrias 2 . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Figura 18 Ilustrao do segundo estudo de caso. . . . . . . . . . . . . . . . . . . . 41
Figura 19 Console de execuo do Controle de Misso no Raspberry Pi. . . . . . 42
Figura 20 Visualizao grfica do vo do VANT. . . . . . . . . . . . . . . . . . . 43
Figura 21 Console do simulador exibindo as informaes do veculo areo. . . . . 43
Figura 22 Resoluo de cinco problemas atravs do mtodo de Simulated Annealing
original. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Figura 23 Trajetria de visita a todos os POIs antes da otimizao. . . . . . . . . 46
Figura 24 Trajetria otimizada de visita a todos os POIs. . . . . . . . . . . . . . 47
Figura 25 Simulated Annealing modificado com coeficiente de penalidade = 0, 15. 48
Figura 26 Simulated Annealing modificado com coeficiente de penalidade = 0. . 50
Figura 27 Trajetria planejada previamente para realizao de varredura pelo
VANT Mestre. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Figura 28 Voo do VANT 1 e deteco dos pontos de interesse. . . . . . . . . . . . 52
Figura 29 Rotas calculadas para os VANTs inspetores. . . . . . . . . . . . . . . . 53
Figura 30 Voo dos VANTs inspetores. . . . . . . . . . . . . . . . . . . . . . . . . 53
Lista de tabelas

Tabela 1 Parmetros utilizados na execuo das otimizaes por Simulated An-


nealing Modificado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Tabela 2 Comparao dos resultados demonstrados nas Figuras 22 e 25. . . . . . 48
Tabela 3 Energia das Solues timas nos trs experimentos. . . . . . . . . . . . 50
Tabela 4 Parmetros utilizados na execuo da otimizao por Simulated Annea-
ling Modificado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Lista de abreviaturas e siglas

VANT Veculo Areo No Tripulado

UAV Unmanned Aerial Vehicle

GPS Sistema de Posicionamento Global

POI Ponto de Interesse (Point of Interest)

GA Algoritmos Genticos (Genetic Algorithms)

SA Simulated Annealing
Sumrio

1 INTRODUO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2 REFERENCIAIS TERICOS . . . . . . . . . . . . . . . . . . . . . . 12
2.1 Veculos Areos No Tripulados . . . . . . . . . . . . . . . . . . . . . 12
2.2 Engenharia de Sistemas Baseada em Modelos . . . . . . . . . . . . . 14
2.2.1 SysML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2.1.1 Diagrama de Definio de Blocos . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.1.2 Diagrama de Caso de Uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 Clculo de trajetria . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.1 Simulated Annealing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3.1.1 Simulated Annealing no problema do Vendedor Viajante . . . . . . . . . . . . . . . 18
2.4 Clculo da Distncia entre Pontos Geogrficos . . . . . . . . . . . . 19
2.4.1 Norma WGS84 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.4.2 Clculo de distncias atravs do mtodo de Haversine . . . . . . . . . . . . 19

3 PROJETO DE UM MDULO DE CONTROLE DE MISSO EM-


BARCADO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.1 Apresentao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.1.1 Especificao da Aeronave . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2 Modelagem do Sistema em SysML . . . . . . . . . . . . . . . . . . . 23
3.2.1 Caso de Uso do Controle de Misso . . . . . . . . . . . . . . . . . . . . . 24
3.2.2 Modelos do VANT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.3 Diagrama de definio dos Blocos do Controle de Misso . . . . . . . . . . 28
3.3 Plataforma Embarcada . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.1 Comunicao entre Controle de Misso e VANT . . . . . . . . . . . . . . . 30
3.3.2 Troca de mensagens entre o mdulo de Controle de Misso e o VANT . . . 31
3.4 Simulador de Voo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.5 Estudos de caso do controle de misso embarcado. . . . . . . . . . . 33
3.5.1 Pontos de interesse homogneos. . . . . . . . . . . . . . . . . . . . . . . . 34
3.5.1.1 Clculo da trajetria de inspeo de POI. . . . . . . . . . . . . . . . . . . . . . 35
3.5.2 Misso com pontos de interesse heterogneos. . . . . . . . . . . . . . . . . 36
3.5.2.1 Clculo das trajetrias de inspeo de POI por dois VANTs com especialidades diferentes. 37
3.5.2.2 Implementao da Misso utilizando trs aeronaves no tripuladas. . . . . . . . . . . 40

4 RESULTADOS E DISCUSSES . . . . . . . . . . . . . . . . . . . . 42
4.1 Comunicao entre Controle de Misso e Simulador . . . . . . . . . 42
4.2 Teste do algoritmo Simulated Annealing embarcado no caso de
pontos de interesse homogneos. . . . . . . . . . . . . . . . . . . . . 44
4.2.1 Teste no simulador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.3 Simulao com VANTs e Pontos de Interesse Heterogneos . . . . . 47
4.3.1 Simulated Annealing Modificado . . . . . . . . . . . . . . . . . . . . . . . 47
4.3.2 Execuo de uma Misso de Varredura e Inspeo com Trs VANTs . . . . 51

5 CONCLUSO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

Referncias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

ANEXOS 57

ANEXO A LOCALIZAO DA REGIO DE GERAO DE PON-


TOS DE INTERESSE ALEATRIOS. . . . . . . . . . 58
11

1 Introduo

Espera-se que o uso civil de veculos areos no tripulados (VANTs) torne-se


importante, sobretudo na agricultura de preciso e segurana pblica (JENKINS, 2014).
Esta constatao motiva a pesquisa de novas solues no uso de VANTs a fim de obter
novas funcionalidades e maior autonomia.
Os projetos nos quais este trabalho esto inseridos estudam o uso de veculos areos
em misses de diferentes naturezas, como, por exemplo, na localizao de animais na
pecuria, na busca de vtimas de tragdias naturais ou ainda na localizao de fraturas
em grandes estruturas civis, como pontes ou edifcios. Estuda-se tambm a comunicao e
interao entre os diferentes agentes atuando no ambiente, como VANTs e sensores.
Este trabalho de concluso de curso prope um Mdulo de Controle de Misso. O
objetivo deste projeto obter um mdulo a ser adicionado no veculo areo no tripulado,
permitindo que o VANT calcule autonomamente misses (trajetrias) baseando-se em
objetivos pr-definidos e nas informaes do ambiente disponveis. Este trabalho concentra-
se na elaborao dos modelos do Controle de Misso, no projeto da plataforma embarcada
e no estudo e implementao dos algoritmos de clculo de trajetria.
O Mdulo de Controle de Misso capaz de coordenar a execuo de misses de
varredura e inspeo realizadas por mltiplos VANTs. Nestas misses, um primeiro VANT
sobrevoa uma rea identificando pontos de interesse, e em seguida ordena a inspeo destes
pontos de interesse por outros VANTs atravs de trajetrias calculadas visando minimizar
a distncia percorrida pelas aeronaves. Para que este clculo seja realizado, o trabalho
apresenta o uso da meta-heurstica Simulated Annealig modificada, permitindo o clculo
de mltiplas trajetrias simultaneamente.
Este trabalho est estruturado como segue: na Seo 2 revisam-se conceitos sobre
os quais este trabalho utilizados neste trabalho; na Seo 3 a proposta do Mdulo de
Controle de Misso apresentada; na Seo 4 os resultados obtidos so demonstrados e
discutidos; a Seo 5 apresenta as concluses sobre o trabalho realizado.
12

2 Referenciais Tericos

Esta seo revisa alguns conceitos que so utilizados ao longo do desenvolvimento


deste trabalho. A seo 2.1 descreve o que so os veculos areos no tripulados e algumas
de suas caractersticas principais. Em seguida, tendo em vista que a modelagem do VANT
e do Controle de Misso o primeiro objetivo deste trabalho, conceitos sobre Engenharia
Baseada em Modelos e a linguagem SysML so explicados na seo 2.2. A seo 2.3
revisa alguns algoritmos de otimizao heursticos e detalha o mtodo chamado Simulated
Annealing, utilizado para o clculo de trajetria. Finalmente, a necessidade de calcular
a distncia total de uma trajetria na resoluo dos algoritmos de otimizao implica o
estudo da norma WGS84 e no mtodo mais adequado de calcular de distncias, tpicos
abordados na seo 2.4.

2.1 Veculos Areos No Tripulados


Esta seo revisa os conceitos sobre os veculos areos no tripulados, baseados no
livro Unmanned Aircraft Systems (AUSTIN, 2011).
Os veculos areos no tripulados so definidos como aeronaves que no carregam
um operador, podendo ser controladas remotamente ou voar de maneira autnoma . O
termo "sistema areo no tripulado" pode tambm ser utilizado, denotando o conjunto de
todos os outros elementos necessrios ao funcionamento de um veculo areo no tripulado,
incluindo por exemplo uma estao base ou o operador remoto.
Existem diversas situaes onde o uso de VANTs traz vantagens em relao a
utilizao de veculos areos tripulados. Em operaes militares, os VANTs podem desem-
penhar misses de alto risco sem colocar em perigo uma tripulao humana. Podem ainda
desempenhar longas misses de vigilncia, extremamente cansativas para a tripulao.
As possibilidades de uso civil de VANTs tambm so numerosas. Os VANTs podem ser
utilizados em situaes com potencial de contaminao de humanos, como aplicao de
agrotxicos ou monitoramento de vazamentos qumicos ou radioativos. Pesquisas cientficas
podem utilizar VANTs para testar novos mtodos de voo ou de misses areas, com
custos e riscos reduzidos. Alm disso, a disponibilidade de veculos areos no tripulados
comerciais, de baixo custo e de fcil utilizao, tornam viveis o uso de VANTs em reas
como agricultura de preciso ou filmagens areas.
As caractersticas dos VANTs variam conforme a aplicao, mas alguns elementos
fundamentais esto presentes em praticamente todas as aeronaves. O Sistema de Navegao,
por exemplo, responsvel pelas informaes de posicionamento da aeronave. Estas
Captulo 2. Referenciais Tericos 13

informaes podem ser enviadas para a estao base e utilizadas pelos operadores remotos
no rastreio da aeronave ou modificao das misses de voo, ou ainda utilizadas pelos
sistemas de controle de voo da aeronave em uma situao de navegao autnoma. Um
canal de comunicao entre a estao base e a aeronave outro elemento quase sempre
presente. Dependendo da aplicao, este canal pode usado pelos operadores com o objetivo
de monitorar ou controlar a aeronave remotamente. Alm disso, a aeronave pode utilizar
este meio de comunicao para enviar fotografias, filmagens ou outros tipos de dados
coletados durante a execuo de uma misso.
Outras caractersticas so extremamente dependentes da aplicao da aeronave. As
dimenses das aeronaves podem variar desde VANTs militares com envergadura de dezenas
de metros at pequenos VANTs capazes de serem lanados manualmente e utilizados em
misses locais. A capacidade de carga destes veculos outro elemento dependente da
aplicao. Aeronaves militares, por exemplo, podem transportar armamentos ou radares
cujo peso pode chegar a centenas de quilogramas. J em uma aplicao civil, a carga pode
ser composta por sensores ou cmeras pesando algumas centenas de gramas.
Figura 1 Exemplo de VANT de Asa Figura 2 Exemplo de VANT de Asa
Fixa Rotativa

Fonte: Wikimedia Commons.

Convm tambm ressaltar a classificao dos VANTs conforme seu modo de voo.
As aeronaves de asa fixa (Figura 1) geram sustentao atravs da passagem do ar em
velocidade ao longo de suas asas que permanecem fixas fuselagem. Um ou mais motores
so responsveis por manter a velocidade da aeronave, permitindo assim seu voo (exceto
no caso de planadores). Estes VANTs precisam de pistas para efetuar pousos ou decolagens,
ou ainda podem ser arremessados em voo manualmente ou com o auxlio de lanadores
especiais. J em um VANT de asa rotativa (Figura 2), a sustentao gerada diretamente
pelas ps dos rotores, o que permite a aeronave pousar e decolar verticalmente e pairar
no ar. As principais diferenas de desempenho entre estes dois tipos de aeronaves so
suas velocidades, autonomias, capacidades de carga e mobilidade. Os VANTs de asa fixa
demonstram-se superiores nos trs primeiros aspectos, enquanto os VANTs de asa rotativa
possuem mobilidade superior, capazes de operar em regies com grandes restries de
pouso e decolagem. Isto significa que a escolha na utilizao de um ou outro depender
sempre das necessidades da aplicao.
Captulo 2. Referenciais Tericos 14

Esta seo apresentou conceitos gerais sobre os veculos areos no tripulados que
so apresentados de maneira resumida atravs da Figura 3. A modelo do sistema utilizado
neste projeto ser apresentado com mais detalhes posteriormente na Seo 3.2.

Figura 3 Classificaes dos VANTs.

Classificao
dos VANTs

Sustentao Aplicao Voo

Asa Controlado
Asa Fixa Civil Militar Autnomo Remotamente
Rotativas

2.2 Engenharia de Sistemas Baseada em Modelos


O uso de modelos na engenharia tem como objetivo reduzir a complexidade dos
sistemas estudados atravs de abstraes (BEYDEDA et al., 2005). Estas abstraes
representam os aspectos essenciais de um projeto, correspondentes s suas funcionalidades.
Os aspectos no essenciais correspondem, por exemplo, a plataforma em que as funcionali-
dades sero implementadas. Este tipo de estudo, embora importante, no precisa ser feito
nas etapas iniciais de desenvolvimento.
As abstraes so feitas por meio de modelos, que nada mais so do que representa-
es de um aspecto funcional de um ponto de um projeto. O uso de modelos pode reduzir a
complexidade de um sistema durante a anlise, o que permite a previso de caractersticas
do sistema, a anlise de propriedades especficas e tambm facilita a comunicao entre
engenheiros ou cientistas atuando no projeto.
No contexto de engenharia de sistemas, necessrio que o produto desenvolvido
seja representado sob diferentes vises: modelos estruturais, modelos de comportamento,
modelos de custo, etc.. A engenharia baseada em modelos vai ao encontro desta necessidade,
proporcionando uma metodologia capaz de facilitar a anlise e o projeto deste sistema. O
modelo permite verificar se os produtos satisfazem especificaes, assim como proporciona
uma base de informaes para a anlise e o projeto da soluo. Tudo isto pode ser feito em
diferentes nveis de abstrao, permitindo assim que apenas as caractersticas essenciais
sejam consideradas inicialmente.

2.2.1 SysML
O SysML (Systems Modelling Language ou Linguagem de Modelagem de Sistemas)
(FRIEDENTHAL; MOORE; STEINER, 2009) uma linguagem grfica de modelagem
Captulo 2. Referenciais Tericos 15

baseada em um perfil UML com extenses. Esta linguagem suporta a especificao, anlise,
projeto, verificao e validao de sistemas que incluem hardware, software, informao,
pessoal, procedimentos e instalaes.
Os pilares desta linguagem so os diagramas que representam elementos do modelo.
Estes diagramas esto divididos em diferentes categorias: diagramas de comportamento,
diagramas de estrutura, e diagramas de requerimentos. A Figura 4 demonstra a classificao
dos diferentes tipos de diagramas da linguagem SysML.
A primeira categoria, os chamados de diagramas de requerimentos, representam as
necessidades da soluo de maneira grfica. Estes requerimentos podem definir propriedades
e categorias como, por exemplo, mtodos de verificao, interfaces e desempenho.
Os diagramas estruturais representam os diferentes componentes do sistema em
diversos nveis de abstraes, tambm demonstrando como os elementos esto relacionados
entre si. O elemento bsico destes diagramas o bloco, que prope a descrio de um
elemento ou sistema. Um bloco pode representar hardware, software, informao, pessoa,
procedimento, etc..
J os diagramas de comportamento tm como objetivo descrever o funcionamento
do modelo. Eles demonstram a transformao das entradas do sistema em sadas, as
atividades desempenhadas, mquinas de estado, entre outros.
A modelagem de um sistema utilizando estes diferentes tipos de diagramas torna
possvel representa-lo em diferentes nveis de abstrao, desde sua composio total at o
funcionamento individual de seus elementos. Isto permite que o modelo seja analisado de
maneira hierrquica a partir de diferentes pontos de vista, contribuindo para a compreenso
global do sistema.

2.2.1.1 Diagrama de Definio de Blocos

O diagrama de definio de blocos um diagrama cujo o objetivo comunicar a


informao estrutural do sistema. Este diagrama apresenta as diferentes relaes entre os
elementos do sistema, estabelecendo sua hierarquia.
Os elementos do sistema so representados por retngulos, e conectados entre si
por linhas dotadas de cones em suas extremidades, indicando o tipo de relao entre os
elementos conectados.
Uma conexo cujo cone na extremidade seja um diamante negro representa uma
relao de composio entre os blocos, ou seja, um dos blocos parte fundamental do outro.
J o diamante branco representa uma relao de agregao: esta ligao, embora forte,
indica que um dos blocos no absolutamente necessrio ao outro. Uma linha simples
ligando dois blocos representa uma relao de associao entre eles.
Captulo 2. Referenciais Tericos 16

Este diagrama utilizado neste trabalho para representar a hierarquia dos elementos
presentes nos VANTs e no mdulo de controle de misso.

2.2.1.2 Diagrama de Caso de Uso

Os diagramas de Caso de Uso representam as funcionalidades de um sistema,


representadas por elipses, e os atores que interagem com ele, representados por um desenho
estilizado de um homem. Estes atores representam todos os elementos externos que
interagem com o sistema sendo modelado.

Figura 4 Taxonomia dos diagramas SysML.

Fonte: http://www.omgsysml.org/INCOSE-OMGSysML-Tutorial-Final-090901.pdf

2.3 Clculo de trajetria


O problema de clculo de trajetria pertinente a este trabalho corresponde ao
clculo da melhor trajetria capaz de visitar todas as n localidades (tambm chamadas
cidades) dispostas em uma dada regio geogrfica. Este um problema de otimizao
conhecido como vendedor viajante (traveling salesman), com diferentes mtodos de solues
disponveis na literatura cientfica. Alguns mtodos exatos de resoluo deste problema
so conhecidos h bastante tempo: busca por fora bruta, programao linear inteira,
programao dinmica, branch and bound, etc.. Como este problema classificado como
NP-Completo, um mtodo exato implica em grande peso computacional (CORMEN et al.,
2001), o que pode representar um obstculo implementao embarcada.
Outra possibilidade a utilizao de algoritmos heursticos ou meta-heursticos,
capazes de se aproximar de solues timas em um uma quantidade muito menor de
iteraes. Os algoritmos heursticos podem ser interpretados como algoritmos que buscam
solues melhores na vizinhana de uma soluo inicial a um custo computacional reduzido,
Captulo 2. Referenciais Tericos 17

aproximando-se de solues timas. J os algoritmos de meta-heurstica preveem a eventual


aceitao de solues piores (de acordo com um determinado critrio) como um meio de
evitar a permanncia em mnimos locais. Como exemplos destes algoritmos (VOSS, 2001),
destacam-se:

Algoritmos Genticos, baseados na dinmica de gentica populacionais. Nestes


algoritmos, um conjunto de solues (populao) interagem entre si trocando parte
de suas informaes, de maneira a gerar novas solues. Estas trocas so realizadas
por meio de diferentes operaes inspiradas na gentica biolgica, como por exemplo
reproduo, mutao e crossover. Uma funo de fitness responsvel por avaliar as
solues e executar estes operadores, de acordo com a funo objetiva do problema.

A Busca Tabu usa procura solues melhores em uma vizinhana, sem todavia
retornar a um timo local previamente visitado. Isto feito a partir de uma memria
que armazena um certo nmero de vizinhos j visitados.

Otimizao por Colnias de Formigas, baseado em uma populao de solues e


inspirada na dinmica das formigas em busca de comida. Neste algoritmo, cada um
dos indivduos da populao um agente que trabalha estocasticamente em uma
soluo. Cada um destes agentes atualiza um modelo probabilstico cujo objetivo
guiar as escolhas dos agentes, de maneira a tornar maior a probabilidade de que os
futuros agentes encontraro solues melhores (DORIGO; BIRATTARI, 2010).

Simulated Annealing uma meta-heurstica baseada em uma analogia com o processo


de recozimento em metalurgia. Neste processo, buscam-se novas solues na vizi-
nhana de uma certa soluo e a probabilidade de aceitao de uma soluo inferior
relacionada a uma varivel de controle chamada temperatura. Este algoritmo
descrito em mais detalhes na seo a seguir.

Neste trabalho discute-se a implementao de uma de soluo meta-heurstica


atravs do mtodo Simulated Annealing. O algoritmo clssico utilizado otimizando
apenas um objetivo, conforme exposto em Kirkpatrick, Gelatt e Vecchi (1983). Em seguida
discute-se algoritmos de otimizao de vrios objetivos, incluindo a possibilidade de
adaptao do algoritmo Simulated Annealing para mais de um objetivo.

2.3.1 Simulated Annealing


Em metalurgia, o recozimento de metais (annealing) refere-se a um processo onde
o metal aquecido at altas temperaturas e em seguida resfriado lentamente. Esta lenta
diminuio da temperatura tem como objetivo fazer com que a configurao atmica do
material atinja um estado de energia interna mnima. Isto corresponde a um material
cristalino e de tima qualidade.
Captulo 2. Referenciais Tericos 18

De maneira anloga, esta busca pelo estado de menor energia interna pode ser
interpretado como um problema de otimizao combinatria, desde que seja possvel
calcular sua energia interna a partir de uma dada configurao (funo custo). Neste caso,
cada configurao do sistema anloga ao estado de energia interna do sistema fsico.
Este mtodo de otimizao combinatria considerado meta-heurstico pois com-
binaes piores podem ser aceitas durante o transcorrer da otimizao a fim de evitar a
estagnao em mnimos locais. A cada iterao, a diferena entre a energia da combinao
gerada e a combinao anterior (E) calculada: caso esta energia seja menor ou igual a
zero (E 0), a nova combinao aceita; caso contrrio, se E > 0, a aceitao desta
combinao tratada de maneira probabilstica: a probabilidade de aceitao dada pelo
fator de probabilidade de Boltzmann:
E
P (E) = e kb T , (2.1)

onde kb a constante de Boltzmann e T a temperatura. Em seguida um nmero aleatrio


p gerado no intervalo uniforme [0, 1]. Caso p < P (E) a nova configurao aceita,
caso contrrio mantm-se a configurao anterior. No incio da resoluo do problema, a
temperatura T possui um valor alto e a probabilidade de se aceitar combinao piores
maior; conforme a resoluo prossegue, T diminui, at que prximo ao trmino da execuo
da otimizao a probabilidade de aceitar-se uma soluo pior seja diminuta.
Para que a otimizao seja bem-sucedida, necessrio que se determine a faixa
de temperaturas e outros parmetros empiricamente de acordo com o problema a ser
resolvido.

2.3.1.1 Simulated Annealing no problema do Vendedor Viajante

No problema do vendedor viajante, busca-se a melhor ordem de visita de cidades de


maneira a minimizar a distncia percorrida. Para que se realize a otimizao da trajetria
necessrio definir a funo de clculo da energia correspondente a cada combinao e
como gerar novas solues a cada iterao.
Sendo N o nmero de cidades a serem visitadas e

x = [x1 , x2 , x3 , xi , ..., xN ] (2.2)

a ordem de visita das cidades, busca minimizar a distncia total percorrida


N
X 1
disttotal (x) = dist(xi , xi+1 ). (2.3)
i=1

Pode-se considerar que a energia de soluo proporcional a distncia total do


trajeto, deste modo obtm se uma definio para a funo E(x) a ser utilizada no problema
de otimizao.
Captulo 2. Referenciais Tericos 19

Uma maneira de gerar novas solues em uma vizinhana demonstrada por


Kirkpatrick, Gelatt e Vecchi (1983), atravs da permutao de dois elementos de uma
soluo, conforme o exemplo a seguir:

h i h i
xoriginal = 0 1 2 3 4 = xnova = 0 1 3 2 4

2.4 Clculo da Distncia entre Pontos Geogrficos


A busca de trajetrias timas depende do clculo da distncia entre os pontos
geogrficos de interesse. Observa-se que localizao destes pontos descrita atravs de suas
Latitudes e Longitudes atravs da norma WGS84, utilizada na maioria dos sistemas de
GPS comerciais. Torna-se necessrio ento o estudo desta norma e uma maneira compatvel
de calcular a distncia entre dois pontos de interesse.

2.4.1 Norma WGS84


A norma WGS84 (World Geodetic System 1984 ) define um sistema de coordenadas
tridimensional terrestre. De acordo com relatrio publicado pelo Departamento de Defesa
dos Estados Unidos (2000), as caractersticas deste modelo so:

um modelo geocntrico, definindo o centro de massa da Terra,

a escala baseada no sistema referencial local da terra,

sua orientao foi definida inicialmente pelo Bureau International de lHeure,

sua evoluo temporal no cria rotao residual em relao crosta terrestre.

Finalmente, convm ressaltar que neste sistema de coordenadas a superfcie da


terra definida atravs de uma elipside.

2.4.2 Clculo de distncias atravs do mtodo de Haversine


Embora a norma WGS84 defina um sistema referencial baseado em um modelo
elipsoidal da Terra, possvel adotar um clculo simplificado (e possivelmente mais leve
em termos computacionais) utilizando um modelo esfrico terrestre. A adoo de um
modelo esfrico permite a utilizao da frmula de Haversine no clculo de distncias entre
pontos geogrficos de maneira satisfatria para pequenas distncias (SINNOTT, 1984). A
distncia entre dois pontos localizados em uma esfera atravs deste mtodo descrita por:
s
1 lat lon
d = 2Rsen sen2 + cos(lat1 )cos(lat2 )sen2 (2.4)
2 2
Captulo 2. Referenciais Tericos 20

onde lat a latitude de cada ponto, lon a longitude, R o raio mdio da Terra,
lat = lat1 lat2 e lon = lon1 lon2 . O raio mdio da terra foi considerado sendo

R = 6372797m. (2.5)
21

3 Projeto de um Mdulo de Controle de Mis-


so Embarcado

3.1 Apresentao
Este trabalho prope a concepo de um mdulo de controle de misso de voo
embarcado em um veculo areo no tripulado. A misso de voo de um VANT deve ser
compreendida como um conjunto de instrues que determinam o voo realizado pelo
veculo: decolagem, acessar certas localidades de interesse, retornar estao base, entre
outras.
O mdulo de controle de misso deve ser capaz de calcular sozinho estas misses
de maneira a satisfazer um ou mais objetivos principais. Por exemplo, suponha-se que
um agricultor necessite fotografar diferentes partes de sua lavoura utilizando um veculo
areo: a visita de todas estas localidades corresponderia ao objetivo principal. A partir
desta misso global, o mdulo de controle de misso definiria a misso de voo do VANT
composta por diferentes etapas: decolagem, voo pelas localidades de interesse de maneira
a minimizar a distncia percorrida, pouso, etc..
A concepo deste mdulo de controle de misso consiste em diversas etapas que
so enunciadas a seguir e desenvolvidas ao longo do trabalho:

1. Elaborao de modelos descrevendo o veculo areo no tripulado e o mdulo de


controle de misso.

2. Implementaes de funes de comunicao entre o mdulo de controle e o VANT.

3. Elaborao de estudos de caso de e implementao de algoritmos de clculo de


trajetria adequados.

4. Simulao de estudo de caso a fim de testar a soluo desenvolvida.

5. Avaliao dos resultados obtidos.

tambm necessrio destacar algumas definies e suposies deste trabalho:

Define-se ponto de interesse como uma localidade til ou interessante de acordo com
uma misso global. Como exemplo, suponha-se uma aplicao de rastreamento na
pecuria: estes pontos de interesse seriam localizaes de possveis cabeas de gado.

Os VANTs so dotados de sistemas capazes de identificar e at mesmo classificar os


pontos de interesse, sendo que no faz parte do interesse deste trabalho como esta
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 22

identificao ou classificao realizada. A capacidade de deteco e identificao


dos pontos de interesse fruto da previso de um mdulo de viso embarcado.

Presume-se que a comunicao entre o controle de misso e os VANTs perfeita: uma


mensagem enviada pelo controle de misso sempre atingir o VANT de destino. Esta
suposio no corresponde claramente a uma situao real, mas este assunto dever
ser abordado em trabalhos futuros que devero discutir as melhores estratgias de
comunicao entre VANTs e Controle de Misso.

Presume-se que o receptor GPS esteja sempre ao alcance de uma quantidade sufici-
entes de satlites de maneira que sua posio geogrfica seja sempre conhecida.

Tendo estabelecido o que o mdulo de controle de misso, apresenta-se a seguir a


categoria de veculos areos no tripulados de interesse neste trabalho.

3.1.1 Especificao da Aeronave


Este projeto baseia-se na utilizao aeronaves de asas fixas ou asas rotativas
de pequeno porte desempenhando o papel de veculo areo no tripulado. A primeira
categoria especialmente adequada a misses de varredura, devido a sua maior autonomia
e velocidade. J a segunda categoria possui caractersticas de voo diferenciadas, como por
exemplo a capacidade de pouso e decolagem verticais e a habilidade de flutuao no ar.
Isto as torna mais adequadas para realizar tarefas de inspeo, onde a aproximao de
um ponto de interesse pode ser necessria. O veculo sobre o qual baseia-se o modelo
semelhante ao exposto na Figura 5
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 23

Figura 5 Um VANT com quatro rotores.

Fonte: mikrokopter.de

O veculo em questo formado por diversos sistemas, entre os quais esto o


sistema de controle de voo, responsvel pela estabilizao da aeronave no ar; e o sistema
de navegao, capaz de percorrer rotas pr programadas utilizando o Sistema de Posi-
cionamento Global (GPS). Tambm dispe dos sistemas de rdio, controle de motores,
entre outros. Estes sistemas so compostos por sensores, processadores e eventualmente
atuadores prprios, o que resulta em um sistema de certa complexidade. A obteno de
um bom modelo torna-se crucial para facilitar a compreenso de seu funcionamento e
permitir o estudo de como a funcionalidade de controle de misso pode ser adicionado a
esta plataforma.
Os modelos de veculos areos analisados neste trabalho so baseados na plataforma
Arducopter (SITIO ARDUCOPTER, 2014), e utilizam o protocolo de comunicao Mavlink
(2014). Este protocolo descrito com mais detalhes na seo 3.3.1.

3.2 Modelagem do Sistema em SysML


A primeira etapa deste projeto consiste na elaborao do modelo do controle de
misso (e de outros sistemas relacionados, quando necessrio) em linguagem SysML, capaz
de descrever os componentes e funcionalidades do sistema sob diferentes perspectivas.
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 24

3.2.1 Caso de Uso do Controle de Misso


O diagrama de caso de uso bsico do sistema de controle de misso proposto
apresentado na Figura 6.
Neste diagrama, um administrador de misso interage com o caso Define Mission
especificando a misso que deve ser realizada pelo VANT: busca de cabeas de gado, por
exemplo.
O caso de uso Read Input Data representa a leitura e interpretao de dados
provenientes de atores externos ao controle de misso: o Sistema de Viso (Vision System)
e o VANT (UAV ), sendo que estes esto associados aos atores Alvo (Target) e Ambiente
(Environment).
A tarefa a ser realizada decidida pelo bloco Decide Current Task. Esta funcio-
nalidade depende da definio da misso e das informaes disponveis pelo controle de
misso, e representa a capacidade do controle de misso de decidir de maneira autnoma
a tarefa a ser executada. Como exemplo, pode-se imaginar que ao detectar um alvo, o
controle de misso decida abandonar sua rota e perseguir o alvo.
A funcionalidade denominada por Execute Specified Task tem como objetivo exe-
cutar a tarefa escolhida, atravs de sua relao com o Sistema de Viso ou o VANT.
Continuando o exemplo do pargrafo anterior, esta funcionalidade corresponde a execuo
dos algoritmos de perseguio ao alvo pela aeronave.

Figura 6 Diagrama de caso de uso simplificado do mdulo de controle da misso.

possvel elaborar um segundo diagrama de caso de uso explicitando as tarefas


especficas citadas no diagrama anterior, constituindo assim diferentes casos de uso. Este
diagrama apresentado na Figura 7 (as relaes entre alguns casos de uso e os atores
externos foram omitidas para facilitar a visualizao).
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 25

O primeiro caso de uso chamado Preflight, que representa o caso de funcionamento


anterior ao voo do veculo. Esta funcionalidade tem como objetivo realizar as configuraes
iniciais da plataforma e verificar o bom funcionamento do veculo. O caso Takeoff representa
a funo decolagem no controle de misso. Em seguida, apresentado a situao de voo do
VANT, atravs do caso de uso Follow Path. Esta funcionalidade traduz o funcionamento
do VANT quando este voa ao longo de uma rota, ou seja, quando este est executando
uma misso de voo. Este caso de uso inclui o clculo de trajetrias (Calculate Waypoints),
que corresponde ao caso de uso onde o controle de misso calcula a trajetria a ser enviada
a um ou mais VANTs participantes da misso global. Finalmente, o caso de uso End
Mission representa o funcionamento do VANT em modo de finalizao da sua misso,
onde comandos de retorno base ou pouso podem ser adotados.

Figura 7 Diagrama de caso de uso do controle de misso com modos de vo.

3.2.2 Modelos do VANT


O primeiro diagrama apresentado corresponde ao modelo das partes fsicas re-
lacionadas ao VANT. O objetivo deste diagrama proporcionar uma viso geral dos
componentes da aeronave e a suas relaes.
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 26

Figura 8 Diagrama estrutural do veculo areo no tripulado.

O diagrama apresentado na Figura 8. A descrio dos blocos apresentada a


seguir:

UAV : este bloco representa o veculo areo no tripulado (Unmanned Aerial Vehicle).

Frame: corresponde estrutura mecnica que suporta todos os componentes presentes


no veculo. A relao de composio indica que este elemento indispensvel ao
veculo areo estudado.

Motors: os motores so indispensveis para o voo do veculo, o que implica em uma


relao de composio. O diagrama tambm indica que um nico VANT pode possuir
vrios motores.

Motor Control: os controladores dos motores so indispensveis para o funcionamento


do veculo, portanto uma relao de composio estabelecida. Como cada motor
deve ser controlado diretamente por ao menos um controlador, uma relao de
associao entre estes blocos necessria.
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 27

Autopilot: o piloto automtico a unidade capaz de realizar de maneira autnoma


o voo e a navegao da aeronave atravs da leitura dos sensores disponveis (ace-
lermetros, giroscpio, GPS, etc.) e controle dos atuadores (motores, lemes, ailerons,
etc.).

Radio Tx, Radio Rx: veculos areos no tripulados contm geralmente uma unidade
receptora de rdio (Rx) associada a uma unidade transmissora (TX) situada em
terra. Todavia esta unidade no indispensvel, pois os VANTs so capazes de
realizar voo autnomo sem necessidade de receber comandos da base. Uma relao
de agregao ento utilizada.

Mission e Vision Module: este mdulo corresponde a uma nova unidade de hardware
onde sero implementadas funes relativas ao controle de misso e processamento
de imagens do veculo. Nota-se que esta unidade composta por uma unidade de
processamento e uma cmera. Este bloco no indispensvel existncia do veculo,
por consequncia nota-se a relao de agregao.

A partir deste diagrama torna-se possvel visualizar-se todas as partes que compem
um veculo areo no tripulado.
Os blocos representados neste diagrama correspondem a funcionalidades existentes
em um veculo areo no tripulado. Neste nvel de abstrao o interesse demonstrar como
cada funcionalidade se relaciona ao VANT e no como ou onde ela implementada.

Figura 9 Diagrama estrutural do veculo areo no tripulado.

A funcionalidade representada pelo bloco Flight Control representa o Controle de


Voo do VANT. Esta funcionalidade responsvel pela estabilizao do veculo areo no ar,
realizada atravs de diversos controladores embarcados. Esta a unidade responsvel pela
leitura dos sensores inerciais, como acelermetros e giroscpios, assim como a interface
com os controladores dos motores. Nota-se que este bloco foi relacionado ao bloco UAV
atravs de uma relao de composio. Isto se deve sobretudo ao fato dos VANTs de asas
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 28

rotativas, como quadricpteros, necessitarem controladores para sua estabilizao no ar,


sendo que raramente uma destas aeronaves utilizada sem eles.
O Controle de Navegao (Nav Control) permite ao VANT de estimar sua posio
atravs de diferentes sistemas (sensores inerciais, sensores de presso, magnetmetros,
receptor GPS), assim como coordenar o voo do VANT ao longo de rotas previamente
calculadas. Estas rotas so definidas atravs de uma lista ordenada de localidades a serem
visitadas (waypoints).
O sistema de viso (Vision System), a ser ainda implementado em trabalhos futuros,
corresponde ao sistema de captura e processamento de imagens embarcado, que permitem
ao VANT identificar e classificar pontos de interesse.
Finalmente, o mdulo destacado (Mission Control) representa o objeto de estudo
deste trabalho, que resultar em uma nova funcionalidade capaz de interpretar as informa-
es disponveis nos outros mdulos a fim de elaborar uma misso de voo a ser executada
pelo Controle de Navegao do VANT.

3.2.3 Diagrama de definio dos Blocos do Controle de Misso


Tendo em vista ao caso de uso do controle de misso apresentado anteriormente e
o modelo do veculo areo no tripulado e seus componentes, possvel estabelecer um
diagrama de definio de blocos demonstrando a composio mdulo de controle de misso.
Este diagrama deve ser interpretado como o conjunto das funes que integram o mdulo,
e apresentado na Figura 10.
O bloco Mission Control pode ser expandido em trs outros blocos: UAV Commu-
nication, Path Planning, e Vision System Interface.
O primeiro bloco representa um conjunto de funes que realizam a comunicao
entre o Controle de Misso e um ou mais VANTs. Ele composto por funes de comuni-
cao de finalidades diversas cujo uso depender da aplicao, com exceo da mensagem
Send Heartbeat que ser sempre utilizada para que o controle de misso seja identificado
pelo VANT de interesse.
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 29

Figura 10 Diagrama de definio dos blocos do Controle de Misso.

Logo abaixo, o bloco Path Planning representa o conjunto de funes utilizadas


no clculo autnomo de trajetrias. Os principais elementos deste bloco correspondem
s funes necessrias na resoluo de problemas de otimizao, alm de funes de
planejamento de decolagem e converso de pontos de interesse em waypoints.
O bloco Vision System Interface representa as funes previstas para a interface
com o sistema de viso que devero ser implementadas em outros trabalhos.
As funes de comunicao e clculo de trajetrias previstas neste diagrama sero
tratadas nas sees 3.3 e 3.5 a seguir.

3.3 Plataforma Embarcada


Este trabalho prope a utilizao de um Raspberry Pi como mdulo de controle de
misso e viso, conforme apresentado na Figura 8. O Raspberry Pi um computador de
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 30

tamanho reduzido com um processador ARM11 com uma frequncia de clock de 700MHz e
512MB de memria RAM. Alm de ser um produto de baixo custo e facilmente encontrado
comercialmente, sua utilizao traz outras vantagens:

sistema operacional baseado na distribuio Debian do Linux, agilizando a imple-


mentao de cdigo atravs das bibliotecas disponveis para esta plataforma;

possibilidade de realizar processamento de imagens na CPU ou GPU (processamento


grfico);

tamanho e peso reduzidos (85,6 x 56 mm, 45g), facilitando sua fixao a um VANT;

Figura 11 Raspberry Pi Model A.

Fonte: Wikimedia Commons

Para permitir que esta plataforma fosse utilizada em conjunto com os veculos
areos no desenvolvimento do controle de misso, foi necessrio implementar o protocolo
de comunicao utilizado pelos VANTs incluindo as funcionalidades descritas na Figura 10.
O detalhamento desta tarefa encontra-se no item 3.3.1. Em seguida, prope-se a utilizao
de um simulador de voo para validar a capacidade deste mdulo comandar um VANT e
testar os algoritmos de controle de misso (seo 3.4).

3.3.1 Comunicao entre Controle de Misso e VANT


O protocolo de comunicao utilizado na plataforma ArduCopter baseia-se no
protocolo Mavlink (2014), uma soluo utilizada em diversas plataformas de pequenas
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 31

aeronaves no tripuladas. Este soluo baseia-se em uma biblioteca de mensagens que


pode ser utilizada na comunicao entre aeronaves e estaes base, implementadas em
linguagem C e Python. Todavia, a maioria das ferramentas j disponveis utilizadas no
controle de VANTs por meio do protocolo Mavlink so programadas em linguagem de
mais alto nvel programadas em Python (Pymavlink, Mavproxy), que se situam em uma
"camada" acima da biblioteca Mavlink.
Devido a possibilidade dos mtodos matemticos utilizados serem pesados computa-
cionalmente, optou-se a linguagem de baixo nvel C ao invs de Python na implementao
do sistema de controle de misso. Isto implica na utilizao da biblioteca programada em
linguagem C na plataforma utilizada (Raspberry Pi).
A biblioteca Mavlink composta por diversas mensagens padres cuja utilizaao
depende do modelo de VANT. Nesta proposta estuda-se o uso da plataforma ArduCopter,
sendo que necessrio identificar as mensagens necessrias a este modelo a fim de comandar
o seu voo. Um exemplo da utilizao de algumas destas mensagens apresentada na seo
3.3.2.

3.3.2 Troca de mensagens entre o mdulo de Controle de Misso e o VANT


O objetivo deste diagrama de sequncia demonstrar a troca bsica de mensagens
entre o Controle de Misso e o VANT com o objetivo de enviar uma misso a um VANT e
ordenar execuo. As finalidades de cada mensagem presente na Figura 12 so descritas a
seguir:

as mensagens 1 e 2 so os Heartbeats, usados para que um dos atores (VANT, Controle


de Missao) seja capaz de perceber a existncia do outro e o identificar,

a mensagem 3 a requisio dos dados dos diferentes sistemas do VANT para o


Controle de Misso,

a sequncia das mensagens 4 a 7 representam o envio de uma trajetria do Controle


de Misso ao VANT,

as mensagens 8 a 11 representam as mensagens necessrias para o incio do voo do


VANT. Na sequncia, o acelerador armado (8), o controle do rdio tomado pelo
Controle de Misso (10) e o modo automtico ativado (11).
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 32

Figura 12 Diagrama de sequncia.

Ao final desta troca de mensagens, o VANT ter seus motores armados, seu piloto
automtico estar ativado, e ento ele percorrer a trajetria enviada pelo controle de
misso.

3.4 Simulador de Voo


A utilizao de um simulador de vo motivada por dois fatores principais: validar
a capacidade do mdulo de controle de misso de comunicar-se efetivamente com o VANT
e atribuir-lhe misses, assim como testar os algoritmos elaborados para o controle de
misso.
O simulador de voo capaz de executar o software de controle de voo e navegao
da plataforma Arducopter, o que significa que o funcionamento interno do veculo obtido
em simulao deve ser prximo ao real. Outra Vantagem se deve ao fato de que a troca
de mensagens entre o controle de misso e o simulador permanecer a mesma quando o
controle de misso for utilizado em um VANT Arducopter.
O diagrama de blocos do simulador representado na Figura 13. O bloco vermelho
representa o arquivo executvel que emula o funcionamento do ArduCopter. Este executvel
est associado a um simulador do ambiente, que interpreta os dados dos atuadores do
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 33

VANT e fornece as medidas dos sensores embarcados e do GPS da aeronave.


Os blocos verdes correspondem a ferramentas de controle de misso que podem ser
acopladas a simulao atravs de conexes TCP/IP e troca de mensagens Mavlink. Estas
ferramentas usualmente so programas baseados em uma estao base em terra onde se
realiza o planejamento manual de rotas para os VANTs. Neste trabalho, esta ferramenta
ser substituda pelo mdulo de controle de misso.
No caso da simulao, a comunicao entre o controle de misso e a aeronave
realizada atravs de uma conexo TCP/IP utilizando mensagens do padro Mavlink. Ao
embarcar o mdulo em um VANT real ArduCoper, ser suficiente substituir esta conexo
TCP/IP por uma conexo serial mantendo-se o padro de mensagens e todo o software
desenvolvido anteriormente.

Figura 13 Diagrama de blocos do simulador de voo utilizado.

Fonte: https://code.google.com/p/ardupilot-mega/wiki/SITL

3.5 Estudos de caso do controle de misso embarcado.


Nesta seo prope-se duas misses de diferentes naturezas a fim de se demonstrar
o uso do mdulo de controle de misso.
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 34

O primeiro caso demonstra como um VANT pode utilizar o sistema de controle de


misso para inspecionar pontos de interesse levantados por um outro VANT atravs da
menor trajetria possvel (trajetria tima).
A segunda misso possui complexidade mais elevada: neste caso, existem dois
VANTs de inspeo especializados cada um em uma certa categoria de pontos de interesse.
Ao incio desta misso, estes VANTs permanecem na estao base e aguardam ordens do
VANT mestre. Este VANT mestre, dotado do mdulo de controle de misso, deve identificar
os pontos de interesse e calcular as trajetrias timas dos VANTs inspetores, minimizando
a distncia percorrida levando em conta a classificao dos pontos de interesse.

3.5.1 Pontos de interesse homogneos.


O objetivo global da misso proposta buscar e identificar alvos em uma dada regio
geogrfica, por meio de cooperao entre dois VANTs dotados de cmeras fotogrficas e
capazes de realizar o processamento das imagens obtidas de modo a detectar possveis
alvos. Estes dois veculos possuem naturezas distintas e cumprem diferentes papis no
desempenho da misso, ilustrada na Figura 14.

Figura 14 Ilustrao do estudo de caso 1. Os crculos vermelhos indicam pontos de


interesse detectados pelo primeiro VANT e que devem ser inspecionados
posteriormente.

Fonte: http://store.3drobotics.com/

O primeiro veculo areo realiza uma varredura de uma certa regio e busca
identificar possveis pontos de interesse (POI). Neste caso, o VANT deve poder cobrir
grandes distncias no menor tempo possvel, caractersticas tpicas dos veculos de asa
fixa (avies). Atravs da obteno de imagens e seu processamento, busca-se identificar
possveis pontos de interesse localizados em terra. Caso um possvel ponto de interesse
seja identificado, este VANT guarda sua posio e prossegue seu voo, acumulando assim
uma lista de pontos de interesse.
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 35

O segundo veculo areo tem como objetivo inspecionar estes pontos de interesse
levantados pelo primeiro VANT. A tarefa de inspeo implica em aproximar-se do ponto
de interesse e realizar alguma tarefa de modo a adquirir informaes mais detalhadas no
ponto de interesse (fotograf-lo de uma menor distncia, sob diferentes ngulos, etc.). Um
VANT de maior mobilidade (asas rotativas, por exemplo) pode ser til neste papel devido
a sua maior mobilidade.
Figura 15 Trajetrias dos VANTs em uma misso de varredura e inspeo.

A varredura realizada pelo primeiro VANT pode ser desempenhada atravs do


planejamento prvio de uma trajetria capaz de cobrir idealmente toda a rea de interesse.
Esta trajetria assemelha-se a um "zigue-zague", conforme visualizado na Figura 15. A
especificao desta trajetria depende das caractersticas do sensor embarcado (neste caso,
uma cmera), da altitude de voo da aeronave e sua autonomia.
A segunda aeronave dever percorrer os pontos de interesse atravs de uma trajetria
tima segundo alguns critrios pr estabelecidos (distncia, prioridade dos POI, etc.).
Neste estudo de caso, busca-se calcular a trajetria de menor distncia capaz de atender
a todos os pontos de interesse informados, o que corresponde ao conhecido problema do
"vendedor viajante"(travelling salesman). Alguns mtodos de solucionar este problema
so explicados em 2.3.1.1. As sees que seguem explicam como o mdulo de controle de
misso calcular a rota a ser seguida.

3.5.1.1 Clculo da trajetria de inspeo de POI.

O algoritmo Simulated Annealing foi adotado na otimizao da trajetria de visita


dos pontos de interesse. Esta escolha se deve ao fato de j haver significativa literatura
cientfica relativa ao problema do vendedor viajante, assim como pela disponibilidade
de uma ferramenta de SA atravs da biblioteca de clculo cientfico em linguagem C
(GNU Scientific Library, GSL) capaz de ser compilada e executada no hardware disponvel
(Raspberry Pi).
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 36

As funes responsveis por gerar novas solues e calcular a energia de uma soluo
foram implementadas conforme descrito em 2.3.1, de maneira que uma nova soluo
obtida trocando-se dois elementos de uma soluo anterior e a energia interna equivale
distncia total percorrida segundo uma dada soluo. Estas funes baseiam-se no artigo
de Kirkpatrick, Gelatt e Vecchi (1983) e no exemplo disponvel em na biblioteca de clculo
cientfico GNU GSL (GSL. . . , 2014).

3.5.2 Misso com pontos de interesse heterogneos.


Neste estudo de caso, os pontos de interesse esto divididos em duas categorias
diferentes, poi1 e poi2 . Embora no faa parte do objetivo deste trabalho classificar os
pontos de interesse, possvel imaginar a situaes onde esta classificao interessante:

a classificao de rebanhos conforme espcie ou tamanho no caso de uma aplicao


de monitoramento na pecuria;

patologias de diferentes caractersticas em construes civis;

Devido s divergncias das caractersticas dos pontos de interesse de uma certa


situao, possvel imaginar que estes podem ser melhor inspecionados se houver uma
certa variedade de recursos de anlise disponveis, e que este cada um destes recursos seja
mais adequado a uma certa categoria de ponto de interesse. Em outras palavras, cada
ponto de interesse de uma certa categoria ser melhor analisado se a inspeo for realizada
exatamente pelo instrumento mais adequado quela categoria.
Considerando esta aplicao onde cada VANT dotado de um diferente instrumento
e cada ponto de interesse ser visitado uma nica vez, deseja-se idealmente que os pontos
de interesse do tipo poi1 sejam visitados pelos VANTs de tipo V AN T1 e os pontos de
interesse de classificao poi2 visitados pelos VANTs de categoria V AN T2 .
A Figura 16 demonstra esta situao onde dois VANTs visitam apenas os pontos
de interesse mais adequados a suas especialidades. Neste exemplo, os pontos do grfico
correspondem a pontos de interesse cujo classificao demonstrada atravs de sua cor
(azul ou vermelho). Cada um destes pontos de interesse so visitados por um entre dois
VANTs especializados, onde trajetrias so representada por linhas de cores iguais s cores
pontos de interesse, indicando correspondncia entre especialidade do VANT e tipo de
pontos de interesse. Neste caso, os pontos de interesse azuis so visitados exclusivamente
pelo VANT de trajetria azul, enquanto os pontos de interesse vermelhos so visitados
exclusivamente pelo VANT de trajetria vermelha. O ponto preto indica a estao base,
ou ponto de partida de ambos os VANTs.
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 37

Figura 16 Exemplo de trajetrias 1 Figura 17 Exemplo de trajetrias 2

Outra possibilidade seria a de permitir eventualmente que um VANT possa inspe-


cionar pontos de interesse em discordncia com a sua especialidade, reduzindo assim a
distncia total percorrida. Presume-se neste caso que, se o ponto de interesse for visitado
por um VANT de especialidade no correspondente, a interao entre eles deteriorada,
mas ainda assim contribui para o progresso da misso. Um exemplo correspondente a
esta hiptese apresentada na Figura 17. Nota-se que neste caso a trajetria azul visita
um ponto de interesse vermelho em adio a vrios outros pontos azuis, e a trajetria
vermelha tambm visita um ponto azul alm de vrios outros vermelhos. Considerando
que as distncia percorridas pelo VANTs so os permetros dos polgonos definidos por
estas trajetrias, nota-se que a distncia percorrida total neste caso ser menor do que
apresentado na Figura 16.
Adotando a estratgia de permitir eventuais discordncias entre especialidades dos
VANTs e espcies de pontos de interesse, a seo seguinte prope uma maneira de realizar
o clculo de trajetria buscando um compromisso entre a distncia total percorrida e a
visita dos pontos de interesse pelo melhor inspetor possvel.

3.5.2.1 Clculo das trajetrias de inspeo de POI por dois VANTs com especialidades
diferentes.

Considerando a disponibilidade prvia do solver de Simulated Annealing, optou-se


por modificar o algortimo existente a fim de obter uma soluo para o problema exposto
na seo anterior. Dentro desta proposta, o processo de otimizao visa encontrar duas
trajetrias X e Y capazes de visitar todos os pontos de interesse, percorrendo a menor
distncia total possvel. A visita de um ponto de interesse por um VANT de especialidade
correspondente interpretada como uma restrio flexvel, e sua violao resulta em
penalidades na funo custo.
Os pontos de interesse so denotados por pci , onde o ndice c indica a classificao
do ponto de interesse e i indica a ordem da deteco pelo VANT mestre. Ao final da
varredura, uma lista qualquer de pontos de interesse detectados descrita por um vetor
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 38

semelhante a
h i
poi = p11 p12 p23 p14 p25 p26 ... (3.1)

O primeiro passo elaborar uma soluo inicial composta por dois vetores X e Y ,
que correspondem a ordem de visita dos pontos de interesse por cada um dos VANTs.
Esta soluo inicial gerada dispondo os pontos de interesse de uma dada categoria na
trajetria do VANT mais adequado. Supondo que o VANT que percorrer a trajetria X
especializado em pontos de interesse de categoria 1, e que o VANT de trajetria Y
especializado em pontos de interesse de categoria 2, obtm-se:
h i h i
X = x1 x2 x3 x4 ... xN 1 = p0 p11 p12 p14 ... p0 (3.2)

e
h i h i
Y = y1 y2 y3 y4 ... yN 2 = p0 p23 p25 p26 ... p0 (3.3)

onde p0 ponto de interesse zero, que indica a posio da estao base. Nota-se que este
ponto corresponde ao primeiro e ltimo elemento de cada trajetria, indicando que o
VANT parte da estao base e retorna a ela no fim do voo.
A energia da configurao dada por
1 1
NX 2 1
NX
E(X, Y, m1 , m2 ) = (m1 + 1) dist(xi , xi+1 ) + (m2 + 1) dist(yi , yi+1 ) (3.4)
i=1 i=1

onde dist(p1 , p2 ) a funo que calcula a distncia entre dois pontos, o coeficiente de
penalidade e m1 e m2 so o nmero de pontos de interesse discordantes em cada trajetria.
O objetivo desta penalidade direcionar o processo de otimizao para regies
onde a incidncia de discordncias seja mnima (ou aceitvel), forando a visita de cada
ponto de interesse por um VANT de especialidade adequada. O valor do coeficiente de
penalidade dever ser ajustado conforme a aplicao: em situaes onde a especialidade
de cada VANT possui um papel fundamental o coeficiente de penalidade ser elevado,
fazendo a otimizao convergir a um mnimo local onde as restries sejam respeitadas; j
em situaes onde os VANTs ou pontos de interesse sejam homogneos este coeficiente ser
zero, permitindo assim ao programa de otimizao de se aproximar de um mnimo global.
A gerao de novas solues na vizinhana atual pode ocorrer de quatro formas
diferentes, sendo que a cada iterao uma destas escolhida aleatoriamente. A escolha dos
pontos a ser substitudos tambm feita de maneira aleatria, mas de modo a sempre
manter os pontos de interesse p0 nas extremidades indicando a partida e o retorno base:

1. permutao de dois pontos quaisquer na trajetria do primeiro VANT (para que esta
operao possa ocorrer, necessrio que X contenha ao menos cinco elementos):
h i h i
X = x1 x2 x3 x4 ... xN 1 = X = x1 x3 x2 x4 ... xN 1
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 39

2. permutao de dois pontos quaisquer na trajetria do segundo VANT (para que esta
operao possa ocorrer, necessrio que Y contenha ao menos cinco elementos):
h i h i
Y = y1 y2 y3 y4 ... yN 2 = Y = y1 y3 y2 y4 ... yN 2

3. colocao de um ponto da trajetria do VANT 1 na trajetria do VANT 2 (para que


esta operao possa ocorrer, necessrio que X contenha ao menos trs elementos) :
h i h i
X = x1 x2 x3 x4 ... xN 1 = X = x1 x2 x4 ... xN 1
h i h i
Y = y1 y2 y3 y4 ... yN 2 = Y = y1 y2 y3 x3 y4 ... yN 2

4. colocao de um ponto da trajetria do VANT 1 na trajetria do VANT 2 (para que


esta operao possa ocorrer, necessrio que Y contenha ao menos trs elementos):
h i h i
X = x1 x2 x3 x4 ... xN 1 = X = x1 x2 x3 y2 x4 ... xN 1
h i h i
Y = y1 y2 y3 y4 ... yN 2 = Y = y1 y3 y4 ... yN 2

A cada iterao do processo de otimizao, uma destas operaes selecionada


aleatoriamente gerando uma nova soluo na vizinhana da soluo anterior. Isto feito de
modo que a probabilidade de seleo de cada uma destas operaes dependa da quantidade
de pontos de interesse em cada trajetria: assim, uma trajetria que possua mais pontos
de interesse do que a outra possuir uma probabilidade maior de ser modificada a cada
iterao. Alm disso, cada uma das operaes anteriores s pode ser realizada se a soluo
conter um nmero mnimo de pontos de interesse, o que implica em condies que devem
ser testadas a cada iterao.
A maneira que estas operaes foram descritas permitem que em dado momento,
uma das duas solues no contenha nada alm dos dois pontos p0 marcando o incio e o
fim da misso. Isto significa que, naquela soluo, um dos VANTs no visitar nenhum
ponto de interesse.
O algoritmo proposto pode-ser resumido como a sequncia seguir:

1. Inicializa-se a varivel Temperatura.

2. Gera-se uma soluo inicial em que os POI so visitados pelos VANTs correspondentes.
Adota-se esta soluo como a soluo atual. Calcula-se a Energia da soluo atual.

3. Gera-se uma nova soluo atravs de uma entre as 4 operaes possveis (escolhida
estocasticamente).

4. Obtm-se a Energia desta soluo atravs do clculo das distncias das trajetrias e
aplicao das penalidades.
Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 40

5. Adota-se esta soluo

se a Energia da nova soluo for menor que a Energia da Soluo atual,


ou se a Energia da nova soluo for maior que a Energia da Soluo atual, desde
que um nmero aleatrio gerado no intervalo [0, 1] seja menor que P (E) =
E
e kb T .

6. Calcula-se o novo valor da varivel Temperatura Tk+1 = Tk /M UT .

7. Retorna para o passo 3 a menos que a temperatura mnima seja atingida.

3.5.2.2 Implementao da Misso utilizando trs aeronaves no tripuladas.

Define-se como misso global o conjunto das misses individuais de cada veculo
areo. Neste estudo de caso, a misso global identificar e inspecionar de maneira tima
pontos de interesse de duas categorias diferentes em posies desconhecidas em uma regio.
As misses individuais correspondem s misses de cada um dos VANTs atuando
nesta regio: a misso de varredura e identificao de pontos de interesse pelo VANT
mestre e as misses de inspeo dos VANTs inspetores.
A fim de simular esta misso global, o seguinte roteiro foi estipulado:

1. Uma localidade definida como a estao base da simulao. Nesta base, os trs
VANTs aguardam, decolam para executar uma misso e retornam aps conclu-la.

2. O administrador da misso define a rota de varredura no VANT Mestre, que o


VANT dotado do mdulo de controle de misso responsvel por identificar os pontos
de interesse e comandar os VANTs inspetores.

3. Aps a definio da rota de varredura, o controle de misso acionado e inicia o voo


do mestre, atravs do commando dos mdulos de voo e navegao.

4. Durante o voo do mestre, pontos de interesse so gerados em intervalos de tempo


aleatrios. A posio destes pontos de interesse dada pela posio do VANT no
momento da gerao, e sua classificao definida aleatoriamente em duas categorias
possveis, poi1 e poi2 , sendo que P (poi1 ) = P (poi2 ) = 0, 5.

5. Ao final da trajetria de varredura estipulada inicialmente, o VANT mestre calcula as


trajetrias a serem percorridas pelos dois VANTs de inspeo que aguardam na base.
Ao concluir o clculo, o mestre envia as misses individuais aos VANTs inspetores e
commanda suas decolagens.

6. O VANT inspetor retorna a base enquanto os inspetores executam suas misses.


Captulo 3. Projeto de um Mdulo de Controle de Misso Embarcado 41

7. Ao trmino da misso de suas misses de inspeo, os VANTs retornam estao


base.

A Figura 18 ilustra a configurao das aeronaves neste estudo de caso. O VANT


mestre (asa fixa) realiza a varredura de uma certa regio geogrfica (demarcada pelo
quadriltero). Os pontos de interesse detectados por este VANT so representados por
crculos preenchidos em azul ou amarelo, correspondentes as categorias dos POI. Na
lateral esquerda so representados dois VANTs cujas cores coincidem com a dos pontos de
interesse, de maneira a indicar a especialidade da inspeo de cada um.

Figura 18 Ilustrao do segundo estudo de caso.

Fonte: http://store.3drobotics.com/
42

4 Resultados e Discusses

4.1 Comunicao entre Controle de Misso e Simulador


Esta seo demonstra a validao das propostas expressas em 3.3 e 3.4 relativas ao
mdulo de controle de misso e simulador. Neste experimento, observou-se a capacidade do
controlador em comunicar-se com o VANT simulado atravs da troca de pacotes Mavlink
por meio de uma conexo TCP/IP. Nesta simulao, o Controle de Misso envia uma
rota qualquer ao VANT e aplica os comandos necessrios para sua decolagem (conforme a
figura 12).
A Figura 19 demonstra o console de sada da rotina executada no Raspberry Pi. O
console indica o envio de trs pontos definindo a rota waypoints 0, 1 e 2, a inicializao
dos motores e a seleo do modo de vo (Set Mode). As mensagens subsequentes indicam
que o VANT atingiu o ponto 1.

Figura 19 Console de execuo do Controle de Misso no Raspberry Pi.

O resultado dos comandos enviados pode ser visualizado na Figura 20. Esta uma
representao geogrfica do VANT e sua rota (indicada pelas linhas brancas). A linha cor
de rosa conecta o VANT ao prximo ponto de destino.
Captulo 4. Resultados e Discusses 43

Figura 20 Visualizao grfica do vo do VANT.

O console do VANT mostrado na Figura 21. Ele exibe os dados de seus diferentes
sistemas (velocidade, altitude, bateria, etc.) e as mensagens Mavlink mais relevantes.

Figura 21 Console do simulador exibindo as informaes do veculo areo.

Atravs da realizao deste, a capacidade de comunicao entre o mdulo de


controle de misso e VANT foi validada.
Captulo 4. Resultados e Discusses 44

4.2 Teste do algoritmo Simulated Annealing embarcado no caso


de pontos de interesse homogneos.
Nesta seo so demonstrados os resultados obtidos durante a execuo exclusiva
do algoritmo Simulated Annealing. Neste caso, a "Energia" de uma soluo corresponde
a distncia total de uma trajetria. A fim de testar o desempenho do algoritmo, foram
gerados cinco problemas contendo 25 pontos de interesse aleatrios em uma regio (Anexo
A). A cada 10 resolues de um problema o coeficiente M U _T foi incrementado, acelerando
a diminuio da varivel de controle Temperatura (ver equao 4.1) consequentemente
diminuindo o nmero de iteraes realizadas em cada resoluo.

Tk
Tk+1 = (4.1)
M U _T
A primeira resoluo partiu de um coeficiente de resfriamento de 1, 001, sendo que
a cada 10 resolues este coeficiente era incrementado em 0, 0004. Para cada problema, 200
coeficientes de resfriamento foram testados, obtendo-se 2000 solues para cada problema.
Os outros parmetros foram mantidos conforme a Tabela 1.

Tabela 1 Parmetros utilizados na execuo das otimizaes por Simulated Annealing


Modificado.

Parmetro Valor Descrio


N_TRIES 200 Nmero tentativas para gerar uma nova soluo
ITERS_FIXED_T 350 Nmero de iteraes para cada T
K 1 Constante de Boltzmann
T_INITIAL 5000 Temperatura Inicial
T_MIN 0,5 Temperatura Final

Os valores finais da Energia obtidos foram normalizados de acordo com a melhor


soluo obtida em cada problema, e calculou-se a mdia destes valores normalizados para
cada coeficiente de resfriamento. Os dados obtidos so apresentados na Figura 22.
A escala representada no eixo vertical da direita corresponde s mdias dos valores
finais da Energia normalizados para cada problema em funo do coeficiente de temperatura
(eixo das abscissas). A curva rosa demonstra o tempo de execuo mdio do algoritmo de
otimizao tambm em funo do coeficiente de temperatura.
Captulo 4. Resultados e Discusses 45

Figura 22 Resoluo de cinco problemas atravs do mtodo de Simulated Annealing


original.

10 1.2
Problema 1 Tempo
9 Problema 2 1.18
Problema 3
8 Problema 4 1.16
Problema 5

Mdias de E(x) normalizadas


Tempo de Resoluo (s)

7 1.14

6 1.12

5 1.1

4 1.08

3 1.06

2 1.04

1 1.02

1
1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08
Coeficiente de Resfriamento MUT

Nota-se que, para coeficientes de resfriamento menores que 1, 01, a maior parte das
mdias das solues normalizadas encontra-se entre 1, 02 e 1, 07, ou seja, entre 2% e 7%
acima do valor timo. J para valores maiores do coeficiente de resfriamento, os valores
das mdias so superiores. Para um coeficiente de resfriamento de 1, 08, as mdias esto
localizadas em um intervalo entre 1, 08 e 1, 16, indicando uma faixa entre 8% e 16% acima
da soluo tima.
Este comportamento esperado: um resfriamento rpido faz que o algoritmo de
otimizao fique preso em mnimos locais: a varivel Temperatura do algoritmo rapidamente
atingir valores baixos, resultando que a probabilidade de escapar destes mnimos locais
(ou seja, aceitar solues "piores") seja reduzida. Logo, torna-se mais improvvel que o
algoritmo atinja mnimos globais.

4.2.1 Teste no simulador


A otimizao da trajetria foi efetuada no Raspberry Pi utilizando 20 pontos
de interesse gerados de maneira aleatria, com os coeficientes dados pela Tabela 1 e
M Ut = 1.002. A Figura 23 demonstra uma rota gerada a partir da lista aleatria de
pontos de interesse. Neste caso, nenhuma otimizao realizada: a ordem de recebimento
Captulo 4. Resultados e Discusses 46

dos pontos de interesse a mesma ordem de visita. Pode-se concluir visualmente que a
trajetria obtida de baixa qualidade, conforme o esperado.

Figura 23 Trajetria de visita a todos os POIs antes da otimizao.

Em seguida, o processo de otimizao realizado no mdulo de controle de misso.


Os pontos de interesse so reordenados e uma nova trajetria fornecida ao controle de
navegao. O resultado pode ser visualizado na Figura 24. Neste caso, possvel constatar
visualmente que a trajetria muito mais curta se comparada com a da Figura 23. Este
resultado valida a aplicao do algoritmo Simulated Annealing no mdulo de controle de
misso em conjunto com o simulador de voo.
Captulo 4. Resultados e Discusses 47

Figura 24 Trajetria otimizada de visita a todos os POIs.

4.3 Simulao com VANTs e Pontos de Interesse Heterogneos


Esta seo visa apresentar os resultados da implementao das propostas apresenta-
das na Seo 3.5.2. Inicialmente, resultados do algoritmo Simulated Annealing modificado
so apresentados e discutidos. Em seguida, a simulao de uma misso completa demons-
trada, onde um VANT Mestre varre uma regio buscando pontos de interesse, que so
posteriormente visitados por dois VANTs inspetores.

4.3.1 Simulated Annealing Modificado


Esta seo demonstra os testes do algoritmo Simulated Annealing Modificado, de
maneira semelhante a seo 4.2. Todavia, nesta seo a Energia da soluo no corresponde
necessariamente a distncia total das trajetrias, devido a incluso das penalidades. Neste
caso a primeira resoluo partiu de um coeficiente de resfriamento de 1, 004, sendo que a
cada 10 resolues este coeficiente era incrementado em 0, 0002, diminuindo gradualmente
o tempo de resoluo dos problemas. No final obtiveram-se 2000 solues para cada
problema, totalizando 10000 solues. Os outros parmetros foram mantidos conforme a
Tabela 1. O coeficiente de penalidade utilizado foi = 0, 15.
Os resultados (Energia Final de cada Soluo) foram normalizados de acordo com a
melhor soluo obtida em cada problema, e calculou-se a mdia destes valores normalizados
para cada coeficiente de resfriamento. Os dados obtidos so apresentados na Figura 25
Captulo 4. Resultados e Discusses 48

Figura 25 Simulated Annealing modificado com coeficiente de penalidade = 0, 15.

10 1.07
Problema 1 Tempo
9 Problema 2 1.063
Problema 3
8 Problema 4 1.056

Mdias de E(x) normalizadas


Problema 5
Tempo de Resoluo (s)

7 1.049

6 1.042

5 1.035

4 1.028

3 1.021

2 1.014

1 1.007

1
1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08
Coeficiente de Resfriamento MUT

Analisando-se a Figura 25, nota-se que a mdia das Energias finais normalizadas
cresce conforme o coeficiente de resfriamento aumenta. Todavia, se esta figura for comparada
Figura 22, algumas diferenas podem ser observadas. As caractersticas de alguns pontos
destas curvas so demonstrados na Tabela 2.
Nota-se que o tempo de resoluo maior do que no caso anterior. No exemplo
anterior, o tempo de resoluo para MU_T = 1.01 era de 2s. No caso do Simulated
Annealing modificado, este tempo foi de 3s. Isto explicado pelo fato de que as novas
funes de clculo de energia e gerao de nova soluo so computacionalmente mais
complexas do que no caso original. Conforme exposto na seo 3.5.2.1, a funo de clculo
de energia deve agora verificar a existncia e pontos de interesse inadequados em cada
trajetria e aplicar a penalidade correspondente, enquanto que a gerao de novas solues
deve levar em conta as restries de cada possvel operao. Outro ponto interessante

Tabela 2 Comparao dos resultados demonstrados nas Figuras 22 e 25.

Problema M UT Qualidade da Soluo Tempo de Execuo


1.01 Enorm (x) < 1.085 2, 0s
SA Original
1.08 Enorm (x) < 1.17 0, 2s
1.01 Enorm (x) < 1.02 3, 0s
SA Modificado
1.08 Enorm (x) < 1.056 0, 4s
Captulo 4. Resultados e Discusses 49

o fato de que as mdias normalizadas desta soluo esto mais prximas a 1 do que no
caso anterior. Se observamos a Tabela 2, considerando o coeficiente de resfriamento igual
a 1.01, nota-se que Enorm (x) < 1.085 no algoritmo original enquanto Enorm (x) < 1.02
no algoritmo modificado. Para um coeficiente de resfriamento igual a 1.08 o resultado
anlogo, Enorm (x) < 1.17 no caso original e Enorm (x) < 1.056 no novo algoritmo. Isto
mostra que as solues encontradas pelo algoritmo modificado tendem a ser mais prximas
a soluo tima de cada problema.
Para se entender este comportamento, deve-se relembrar a consequncia da insero
do fator de penalidade no clculo das distncias. Com este fator, regies com solues em
que hajam vrias discordncias entre POI e especialidades dos VANT resultaro em valores
da funo Energia mais elevados. O processo de busca da soluo tender a se concentrar
nas regies de baixas penalidades, onde o mnimo provavelmente estar localizado.
Para confirmar esta hiptese o experimento foi realizado novamente, utilizando o
mesmo algoritmo mas desta vez adotando um coeficiente de penalidade = 0. Espera-se
que os dados obtidos sejam semelhantes aos representados na Figura 22, pois neste caso a
otimizao no estar mais restrita a uma nica regio. Logo, a qualidade da soluo com
taxas de resfriamento rpidas dever ser pior do que no caso com penalidades.
De fato, ao analisar os dados obtidos nesta nova simulao apresentados na Figura
26, observa-se que, para coeficientes de resfriamento inferiores a 1, 01, as mdias da energia
normalizada da soluao encontram-se entre 1, 02 e 1, 08. Para coeficientes de resfriamento
prximos a 1, 08, as mdias das energias normalizadas encontram-se entre 1, 08 e 1, 16,
resultado semelhante ao obtido na seo 4.2. Este resultado confirma a hiptese levantada
anteriormente.
Captulo 4. Resultados e Discusses 50

Figura 26 Simulated Annealing modificado com coeficiente de penalidade = 0.

10 Problema 1 Tempo 1.2


Problema 2
9 1.18
Problema 3
Problema 4
8 1.16
Problema 5

Mdias de E(x) normalizadas


Tempo de Resoluo (s)

7 1.14

6 1.12

5 1.1

4 1.08

3 1.06

2 1.04

1 1.02

1
1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08
Coeficiente de Resfriamento MUT

A Tabela 3 mostra o valor da Funo Energia final nos trs experimentos. Nota-se
que tanto o algoritmo original quanto o modificado (com coeficiente de penalidade igual
a zero) atingiram o mesmo valor mnimo nos cinco problemas. Nestes casos, a energia
final corresponde a distncia total da(s) trajetria(s). J o algoritmo modificado com
penalidades apresenta energia final superior se comparada aos outros experimentos, pois o
fator de penalidade restringe a regio de busca a uma vizinhana e obtm uma soluo
tima que na verdade um mnimo local. Alm disso, o valor da Funo Energia neste
caso inclui o valor das possveis penalidades.
Estes resultados demonstram que a modificao realizada no algoritmo atingiu o
objetivo de direcionar a otimizao para regies onde a ocorrncia de discordncias entre
classe dos pontos de interesse e especialidades dos VANTs seja pequena.

Tabela 3 Energia das Solues timas nos trs experimentos.

Algoritmo Penalidade E1 (x) E2 (x) E3 (x) E4 (x) E5 (x)


SA - 3447, 8 3535, 8 3575, 8 3351, 5 3240, 8
SA mod 0 3447, 8 3535, 8 3575, 8 3351, 5 3240, 8
SA mod 0,15 5153, 8 5345, 6 5665, 2 5350, 3 4754, 5
Captulo 4. Resultados e Discusses 51

Estes resultados demonstram o funcionamento das diferentes implementaes da


otimizao utilizando Simulated Annealing, e as curvas obtidas podem auxiliar na definio
do fator de resfriamento a ser utilizado de acordo com qualidade da soluo necessria.
Alm disso, estes resultados deixam evidente que a elevao dos coeficientes de penalidade
tornam a resoluo do problema mais rpida ao restringir a regio de atuao do algoritmo
de otimizao.

4.3.2 Execuo de uma Misso de Varredura e Inspeo com Trs VANTs


Esta seo demonstra uma simulao realizada conforme descrito em 3.5.2.2. Os
parmetros de otimizao por Simulated Annealing so apresentados na Tabela 4

Tabela 4 Parmetros utilizados na execuo da otimizao por Simulated Annealing


Modificado.

Parmetro Valor Descrio


MU_T 1.0015 Fator de diminuio da temperatura
Lambda 0,15 Coeficiente de Penalidade

Uma rota planejada inicialmente de modo a cobrir uma regio de interesse,


conforme demonstrado na Figura 27. A trajetria desejada (linha vermelha) definida
atravs de um certo nmero de waypoints, correspondentes a pontos que devem ser
alcanados pelo VANT na ordem exposta pela numerao na Figura.

Figura 27 Trajetria planejada previamente para realizao de varredura pelo VANT


Mestre.

A Figura 28 demonstra o voo do VANT Mestre e os pontos de interesse detectados


durante o voo. A classe de cada ponto ilustrada atravs da cor do cone correspondente,
Captulo 4. Resultados e Discusses 52

sendo este azul ou amarelo. A trilha verde representa o trajeto percorrido pelo VANT
Mestre.

Figura 28 Voo do VANT 1 e deteco dos pontos de interesse.

Ao trmino da varredura, o VANT Mestre calcula as rotas dos VANTs inspetores


1 e 2, conforme observado na Figura 29. As trajetrias so marcadas evidenciando a
especialidade de cada VANT, de modo que a trajetria azul indica um inspetor especializado
nos pontos de interesses marcados em azul, e a trajetria amarela indica um VANT inspetor
especializado nos pontos de interesse marcados em amarelo.
Nota-se que a trajetria azul visita 8 pontos de interesse no total, sendo 6 azuis e 2
amarelos, ao passo que a rota amarela visita 11 pontos de interesse, sendo 8 amarelos e 3
azuis. Este resultado demonstra a tendncia do processo de otimizao de corresponder as
categorias de pontos de interesse s especialidades dos VANTs.
Captulo 4. Resultados e Discusses 53

Figura 29 Rotas calculadas para os VANTs inspetores.

Figura 30 Voo dos VANTs inspetores.

A Figura 30 ilustra a etapa final da simulao. No momento em que a imagem foi


capturada, os VANTs Inspetores j receberam as misses do VANT Mestre, assim como
as instrues para decolagem e incio da misso. Em seguida, os VANTs voam visitando os
pontos de interesse de acordo com a trajetria calculada e retornam a base. A execuo
completa da misso leva aproximadamente 22 minutos.
54

5 Concluso

Este trabalho apresentou a concepo de um mdulo de Controle de Misso embar-


cado, capaz de atribuir, de maneira autnoma, misses a veculos areos no tripulados. O
mdulo desenvolvido foi testado com sucesso em simulaes, atingindo o objetivo proposto.
O desenvolvimento da plataforma embarcada consistiu inicialmente na modelagem
do VANT e do Controle de Misso. Os modelos obtidos foram utilizados como base na
concepo da plataforma, guiando a produo de cdigo durante o desenvolvimento do
projeto. A etapa seguinte consistiu na implementao, no Raspberry Pi, das funes
necessrias comunicao entre o Controle de Misso e VANTs. Esta etapa foi testada e
validada, e o trabalho foi concentrado no estudo e implementao dos algoritmos clculo de
trajetria atravs de otimizao por Simulated Annealing. Ao final destas etapas, o sistema
desenvolvido foi testado com o uso simuladores de voo. Os testes demonstraram que, aps
uma misso inicial de varredura ter sido planejada, o mdulo de Controle de Misso foi
capaz de comandar a decolagem e o voo do primeiro VANT, calcular as trajetrias dos
VANTs inspetores e comandar o incio de suas misses.
Futuramente, a atuao conjunta do Controle de Misso e o sistema de viso
permitir aos VANTS realizar misses "reais" em campo, identificando alvos atravs do
processamento de imagens e definindo trajetrias para outros VANTs inspetores. Aplicaes
podero ser desenvolvidas, testando este sistema em situaes de rastreamento de gado,
inspeo de lavouras, entre outras possibilidades. O cdigo desenvolvido para o controle
dos Vants da plataforma ArduPilot poder tambm ser reutilizado em outros projetos,
facilitando o uso dos VANTs por outros pesquisadores.
importante tambm notar que alguns pontos do projeto necessitam ser futura-
mente desenvolvidos. A modelagem dos sistemas VANT e Controle de misso foi til para
guiar o desenvolvimento do projeto, porm pertinente observar que os modelos gerados
ainda so superficiais. Os modelos atuais no descrevem o funcionamento completo dos
sistemas envolvidos, de modo que eventualmente estes modelos precisem ser aprofundados.
O desenvolvimento da plataforma embarcada foi feito visando a compatibilidade entre o
firmware dos VANTs baseados na plataforma ArduPilot e o Controle de Misso, permi-
tindo a utilizao de VANTs em estudos de campo no futuro. Devido ao uso exclusivo
de simuladores neste projeto, toda a comunicao entre Controle de Misso e veculos
areos foi realizada atravs de uma conexo de rede por cabos, utilizando o protocolo
TCP/IP. Esta soluo no compatvel com uma situao de voo real, o que significa
que a utilizao plena deste mdulo est condicionada a implementao de uma soluo
de comunicao sem fio. Os algoritmos de clculo de trajetria foram implementados e
Captulo 5. Concluso 55

testados atendendo aos objetivos de cada estudo de caso. Outros trabalhos futuros podero
ser realizados sobre esta funcionalidade, como a implementao de outros mtodos de
otimizao e a posterior comparao entre seus desempenhos.
Finalmente, este trabalho pode representar um primeiro passo em direo a estabe-
lecer certa autonomia em VANTs comerciais de baixo custo, abrindo caminho para que as
funcionalidades do Mdulo sejam expandidas e testadas em situaes reais.
56

Referncias

ARDUCOPTER Website. 2014. Disponvel em: <http://copter.ardupilot.com/>. Acesso


em: 24 abr. 2011. Citado na pgina 23.

AUSTIN, R. Unmanned aircraft systems: UAVS design, development and deployment.


[S.l.]: John Wiley & Sons, 2011. Citado na pgina 12.

BEYDEDA, S. et al. Model-driven software development. [S.l.]: Springer, 2005. Citado na


pgina 14.

CORMEN, T. H. et al. Introduction to algorithms. [S.l.]: MIT press Cambridge, 2001.


Citado na pgina 16.

DEPARTAMENTO DE DEFESA DOS ESTADOS UNIDOS. World Geodetic System


1984. EUA, 2000. Citado na pgina 19.

DORIGO, M.; BIRATTARI, M. Ant colony optimization. In: Encyclopedia of Machine


Learning. [S.l.]: Springer, 2010. p. 3639. Citado na pgina 17.

FRIEDENTHAL, S.; MOORE, A.; STEINER, R. OMG Systems Modeling


Language Tutorial. [S.l.], 2009. Disponvel em: <http://www.omgsysml.org/
INCOSE-OMGSysML-Tutorial-Final-090901.pdf>. Acesso em: 26 mar. 2014. Citado na
pgina 14.

GSL TSP Example. 2014. Disponvel em: <http://www.gnu.org/software/gsl/manual/


html_node/Traveling-Salesman-Problem.html>. Acesso em: 15 maio 2011. Citado na
pgina 36.

JENKINS, B. V. D. The Economic Impact of Unmanned Aircraft Systems Integration


in the United States. [S.l.], 2014. Disponvel em: <http://www.auvsi.org/resources/
economicreport>. Acesso em: 24 abr. 2011. Citado na pgina 11.

KIRKPATRICK, S.; GELATT, C. D.; VECCHI, M. P. Optimization by simulated


annealing. Science, American Association for the Advancement of Science, v. 220, n. 4598,
p. 671680, 1983. ISSN 00368075. Disponvel em: <http://www.jstor.org/stable/1690046>.
Citado 3 vezes nas pginas 17, 19 e 36.

MAVLINK. 2014. Disponvel em: <http://qgroundcontrol.org/mavlink/>. Acesso em: 24


abr. 2011. Citado 2 vezes nas pginas 23 e 30.

SINNOTT, R. W. Virtues of the Haversine. skytel, v. 68, p. 158, dez. 1984. Citado na
pgina 19.

VOSS, S. Meta-heuristics: The state of the art. In: Local Search for Planning and
Scheduling. [S.l.]: Springer, 2001. p. 123. Citado na pgina 17.
Anexos
58

ANEXO A Localizao da regio de


gerao de pontos de interesse aleatrios.

Os quatro vrtices da regio de gerao de pontos de interesse aleatrios dada na


tabela a seguir.

Coordenada dos vrtices (graus).

Vrtice Latitude Longitude


1 29, 9888700 S 51, 167394 O
2 29, 9888700 S 51, 172394 O
3 29, 9938700 S 51, 167394 O
4 29, 9938700 S 51, 172394 O