• Nenhum resultado encontrado

4.5 RESULTADOS

4.6.3 Sobre o Algoritmo de Geração de Trajetória de Desvio

Este é o algoritmo mais crítico porque trata de planejamento de trajetória em tempo de execução da navegação.

A primeira discussão é em relação o aumento da trajetória com a inclusão dos obstá- culos e a comparação entre as trajetórias calculada e executada de cada um. O gráfico da figura 23 mostra que o cenário 2 apresenta trajetória calculada naturalmente maior que as do cenários 1 e 3. Observa-se também que a coluna diferença do cenário 2 apresenta valor maior. Porém, o gráfico da figura 24 mostra que o acréscimo em percentual é menor no cenário 2 em com- paração aos outros cenários. Esse fato ocorreu porque no cenário 2 existem regiões em que a trajetória percorrido foi menor que trajetória calculada. Na figura 28 observa-se que nas regiões A e C ocorreram afastamentos da rota calculada causando aumento da trajetória. Nas regiões B e D também ocorreram afastamentos da rota calculada, porém com a trajetória percorrida foi menor que a trajetória calculada. A combinação dessas regiões resultou em um acréscimo, po- rém menor em comparação aos cenários 1 e 3. É importante observar que no cenário 2 existem trajetórias percorridas côncavas em relação à trajetória principal, principalmente na região B, o que não ocorre no cenário 3.

A figura 26 mostra que o cenário 3 apresenta um acréscimo em percentual maior que o cenário 1, mesmo que a disposição dos obstáculos seja mais simples e a quantidade menor neste cenário, em comparação ao cenário 2, e a diferença da distância percorrida entre o cenário 3 e cenário 1 é menor do que a diferença da distância percorrida entre o cenário 1 e 2. Esse fato ocorreu porque somente trajetória de desvio convexas foram percorridas neste cenário, o que provocou somente aumento de distância percorrida, ou seja, não houve regiões que o percurso executado tenha sido menor do que o calculado.

Figura 28: Regiões De Trajetórias Distanciada Da Trajetória Calculada.

Fonte: Autoria própria. Regiões de trajetórias percorridas que se distanciaram da trajetória calculada.

nos cenários 2 e 3 comparados ao cenário 1 e consequentemente o valor em percentual deveria ser igual ou próximo ao percentual do cenário 1. Porém no cenário 2 o valor percentual foi menor e no cenário 3 o valor foi maior. O motivo da diferença foi devido ao afastamento do VANT da trajetória calculada durante a navegação. Esse afastamento, por sua vez, ocorreu devido ao VANT invadir a área de segurança dos obstáculos, fazendo o algoritmos de desvio de obstáculo executar o procedimento de fuga desta área conforme discutido na seção 3.5.

Durante os experimentos não foi possível identificar exatamente o motivo da invasão da área de segurança. Essa situação pode estar acontecendo devido ao desempenho do sistema de navegação utilizada, ou devido aos valores escolhidos dos raios de seguração e interpolação. Para corrigir é necessário executar mais testes com o objetivo de ajustar os parâmetros usados no controle ou efetuar experimentos com outros sistemas de navegação e posteriormente investigar outros valores para os raios mencionados.

Como um possível trabalho futuro, poderiam ser utilizados algoritmos genéticos para descobrir quais os melhores valores para esses raios ou mesmo para os parâmetros do sistema de controle utilizado.

Durante a execução da trajetória o algoritmo de Desvio de Obstáculo é executado se houver um obstáculo em rota de colisão, gerando os waypoints para contorná-lo. Esses way-

points são incluídos na lista de waypoints da trajetória e são percorridos pelo VANT. A descrição do funcionamento deste algoritmo está descrito na seção 3.5, pagina 39. Porém, se o houver mais obstáculos ou se o obstáculo for maior que 10cm, conforme descrito na seção 3.4 na página 37, e se esse(s) obestáculos(s) estiver(em) na rota da navegação, então o algoritmo de Desvio de Obstáculo é reexecutado.

Se a navegação do VANT estiver sendo conduzida por waypoints de desvio criados por uma execução anterior do algoritmo de Desvio de Obstáculo, esses pontos serão substituídos por novos waypoints para que o VANT possa desviar da nova condição de obstáculos recém detectados. Essa situação continua enquanto houver obstáculos sendo detectados na rota de colisão.

A disposição e tamanho dos objetos pode, então, exigir reexecuções sucessivas do algoritmo de Desvio de Obstáculos. Surge a questão com relação à quantidade de execuções sucessivas e o desempenho deste algoritmo.

O gráfico da figura 29 apresenta os momentos de execução do algoritmo de Desvio de Obstáculos para o cenário 2. Nas regiões 1, 2, 3 do gráfico da figura 29 o VANT executou a tra- jetória de desvio gerada pelo algoritmo de Desvio de Obstáculo. Porém, durante o movimento de desvio não foi identificado um objeto que estivesse em rota de colisão, assim, não houve reexecução do algoritmo de Desvio de Obstáculo. As regiões A, B e C do gráfico da figura 29 estão relacionadas com a linhas A, B e C do gráfico da figura 30 e as regiões 1, 2 e 3 estão relacionadas com as interrupções nessas linhas do gráfico da figura 30.

Figura 29: Trajetória Da Execução De Desvio de Obstáculo No Cenário 2

Fonte: Autoria própria. Momentos da execução do algoritmo de Desvio de Obstáculo durante a navegação no cenário 2.

Figura 30: Gráfico Da Execuções De Desvio De Obstáculo No Cenário 2

Fonte: Autoria própria. Regiões A, B e C: ocorreram execuções do algoritmo de Desvio durante a navegação. Regiões 1, 2 e 3: não

ocorreu execução do algoritmo de Desvio durante a navegação.

As execuções do algoritmo de Desvio de Obstáculo com relação ao cenário 3 são apresentadas nos gráficos das figuras 31 e 32. Como o cenário 3 representa um único obstáculo extenso (ou um grupo denso de objetos, percebido pelos sensores com um único obstáculo), existe somente uma região no gráfico da figura 31 (definida como região A), onde ocorreram execuções consecutivas do algoritmo de Desvio de Obstáculo. As regiões 1 e 2 são trajetórias executadas sobre a rota principal. Sendo assim, no gráfico da figura 32 existe somente um segmento representando as execuções consecutivas deste algoritmo.

Figura 31: Trajetória Da Execuções De Desvio De Obstáculo No Cenário 3

Fonte: Autoria própria. Momentos da execução do algoritmo de Desvio de Obstáculo durante a navegação no cenário 3.

Figura 32: Gráfico Da Execuções De Desvio De Obstáculo No Cenário 3

Fonte: Autoria própria. Região A: ocorreram execuções do algoritmo de Desvio durante a navegação. Regiões 1 e 2: não ocorreu execução do algoritmo de Desvio durante a navegação.

Um ponto a ser observado é o fato de que a taxa de execução por segundo não é constante. A análise do gráfico da figura 33 mostra que a maior taxa de execução do algoritmo de Desvio de Obstáculo é de aproximadamente 20 execuções por segundo, Os gráficos (a) e (b) da figura 33 estão relacionados às execuções do cenário 2 e 3, respectivamente. Esta informação é consistente com a frequência de execução do algoritmo de gerenciamento de missão1, descrito na seção 3.7.4 na página 53.

Figura 33: Gráfico De Análise de execução do algoritmo de Desvio de Obstáculo

(a) Análise das execuções no cenário 2. (b) Análise das execuções no cenário 3.

Fonte: Autoria própria. Análise de taxa de execução do algoritmo de Desvio de Obstáculo por segundo.

Adicionalmente, durante os experimentos foram medidos os tempos de execução do algoritmo de Desvio de Obstáculo. Os resultados estão apresentados na tabela 2.

1No gráfico 33(b) a taxa calculada, é de aproximadamente 23Hz (750 execuções em 32 segundos), mesmo que

o algoritmo de Gerenciamento de Missão tenha sido configurado para ser executado com frequência de 20Hz. É importante lembrar que o sistema ROS (versão Indigo) não é um ambiente que proporciona tempo-real.

Tabela 2: Estatísticas De Execução Do Algoritmo de Desvio de Obstáculo Cenários com

Obstáculos Execuções Total (s)Total Máximo(ms) Mínimo(ms) Média(ms) Desvio Padrão(ms)

Cenário 2 9911 2.834379 0.836 0.040 0.285 0.1035

Cenário 3 2970 1.005458 1.326 0.047 0.338 0.2284

Fonte: Autoria própria. Estatísticas relacionadas aos tempos de execução do algoritmo de Desvio de Obstáculo.

O tempo total das execuções durante todo o trajeto percorrido pelo VANT no cenário 2 (apresentado no gráfico da figura 29 na página 73)) não ultrapassou 3s de um total de execução de 9911, com uma média de 0.285s por execução. Para o cenário 3 (apresentado no gráfico da figura 31, o tempo total de execução foi de aproximadamente 1s para processar 2970 vezes o algoritmo de Desvio de Obstáculo. Esse tempo total representa quanto tempo de CPU foi consumido para executar todas as solicitações de execução do algoritmo de Desvio de Obstáculo durante toda a trajetória percorrida pelo VANT.

Algoritmos críticos como o de Desvio de Obstáculo precisam ser processados em um tempo menor que o estabelecido para a frequência de execução do algoritmo principal, repre- sentado pelo algoritmo de Gerenciamento da missão. Observando a coluna “Máximo (ms)” da tabela 2, que representa o tempo máximo que uma execução levou para concluir, percebe-se que o pior caso observado ocorreu no cenário 3, onde esse tempo é de 1.326ms. No entanto, comparado com a frequência com que o algoritmo de Gerenciamento da missão ocorre, 20Hz, esse valor está bem abaixo do valor crítico. A frequência crítica para a reexecução do algoritmo de Gerenciamento de missão é aproximadamente de 754Hz. Outra possibilidade crítica seria se o tempo de execução do algoritmo de Desvio de Obstáculo fosse próximo de 50ms. Portanto, o tempo de execução no pior caso observado não causa problema crítico à solução apresentada2.

Importante destacar que os valores da coluna Desvio Padrão são baixos comparados com a diferença entre os valores das colunas mínimo e máximo. Durante a execução dos ex- perimentos foram tomadas precauções para minimizar interferências na obtenção dos tempos de execução. A medição de tempo foi obtida através da função std::chrono::high_resolution _clock:now da biblioteca padrão do C++ que retorna o valor em nanosegundos. O uso da CPU foi minimizado pois somente os processos necessários ao ROS e ao simulador V-REP foram executados. Também foi evitada a utilização da interface gráfica, como movimentação do mouse, navegação entre janelas e processos que utilizam a rede, como acesso à Internet. Os detalhes dos recursos utilizados estão no Apêndice C. Porém, é importante investigar as ocorrências de picos que aparecem como diferença muito grande entre as coluinas máximo e

2Período é inverso de frequência: 1/1.326ms = 754Hz frequência de reexecução crítica para o algoritmo de

mínimo da tabela 2.

Os gráficos das figuras 34 e 35 na página 77 apresentam os tempos de cada execução do algoritmo de Desvio de Obstáculo dos cenários 2 e cenários 3, respectivamente. O gráfico da figura 34 mostra que entre a primeira execução até a execução 2500, a média de tempo de cada execução foi de aproximadamente 0,40ms. Entre 2500 até 3500 o tempo de execução caiu para a média de 0,25ms. Entre 3500 até aproximadamente 4000 o tempo de execução subiu para 0,75ms. Entre execução 4000 até o final os valores também apresentam essas variações. As flutuações também ocorreram na execução do cenário 3, apresentado no gráfico da figura 35.

Figura 34: Tempo Execução Do Algoritmo De Desvio De Obstáculo Do Cenário 2

Fonte: Autoria própria. Tempo de cada execução do algoritmo de Desvio de Obstáculo do Cenário 2.

As característica de execução do algoritmo de Desvio de Obstáculo são: • Nos gráficos aparecem regiões onde a média de execução são diferentes.

• Ocorrem picos de execução mais lentos em períodos aproximadamente regulares.

• As diferenças entre a execução mínima e máxima são relativamente grandes comparadas com o valor do desvio padrão.

• O desvio padrão se mantém baixo entre as execuções.

Conclui-se que esse comportamento está relacionado com o modo como o núcleo do sistema operacional gerencia os processos e a existência de concorrência de execuções com

Figura 35: Tempo Execução Do Algoritmo De Desvio De Obstáculo Do Cenário 3

Fonte: Autoria própria. Tempo de cada execução do algoritmo de Desvio de Obstáculo do Cenário 3.

outros processos, ainda que foram tomadas precauções para minimizar essa concorrência. Po- rém, o algoritmo de Desvio de Obstáculo apresenta bom desempenho, mesmo concorrendo com outros processos, quando observado o baixo valor do desvio padrão.

Por fim, destaca-se que apesar das questões discutidas nessa seção, a solução proposta é viável.

5 CONCLUSÃO

A inspeção da infra estrutura de transmissão de energia, principalmente das torres e linhas de transmissão, é uma necessidade constante e obrigatória para que as companhias de energia elétrica forneçam um serviço contínuo e de qualidade. As companhias de telecomuni- cações também necessitam de inspeção nas torres de comunicação, visando fornecer um bom serviço. Tal inspeção é uma questão complexa e envolve diversas áreas do conhecimento.

Este trabalho iniciou com a pesquisa sobre questões de inspeção em torres de transmis- são de energia elétrica e de telecomunicações. Nota-se a crescente demanda para diminuir custo de inspeção em torres do setor energético, mostrado através de estudos da Agência Nacional de Energia Elétrica - ANEEL.

Essa necessidade também ficou clara no setor das telecomunicações devido ao cres- cimento exponencial na demanda por telefonia celular, principalmente para acesso à internet, como demonstrado no estudo apresentado pela Agência Nacional de Telecomunicações do Bra- sil - ANATEL. As empresas que oferecem serviços neste setor também tem a preocupação de manter seus ativos em operação para oferecer serviço contínuo e de qualidade, onde a inspeção é um dos meios para atender esse objetivo. Como a necessidade cada vez maior da área de cobertura, há um aumento na quantidade de torres, aumentando também o custo.

Esses setores buscam redução nos custos destas inspeções, além de diminuir os riscos a vida de seus funcionários. Frente a isso, este trabalho de pesquisa buscou uma solução com nível maior de automação através de aplicações de VANT com voo semi-autônomo ao redor das torres.

A inspeção em linhas de transmissão é realizada em etapas. Existem pelo menos em dois níveis: (i) a inspeção rápida observando problemas emergenciais e foca no topo das torres e nos cabos das linhas de transmissão. Esse tipo de inspeção é mais frequente; e (ii) a inspeção detalha, no qual verifica-se a torre como um todo visando identificar problemas na sua estrutura. Essa inspeção ocorre com menos frequência.

Por ser a que ocorre com mais frequência, seu custo é recorrente, portanto maior. Outro motivo de custo alto é o uso de aeronaves tripuladas, que também aumenta os riscos inerentes. O emprego de VANT reduz bastante esse custo e risco.

No entanto, são poucos os trabalhos dedicados à inspeção mais detalhada. Em geral são utilizados veículos terrestres mesmo em lugares de difícil acesso, que acaba por aumentar ainda mais a complexidade e custo da inspeção. O objetivo principal deste trabalho é propor uma solução que auxilie na inspeção detalhada executada por um VANT semi-autônomo através de imageamento da torre. Propõem-se utilizar a abordagem descrita neste trabalho em torres tanto de transmissão de energia elétrica como de telecomunicações.

Nesse sentido, este trabalho propõe um algoritmo de geração de trajetória flexível que permita a inteira visualização da torre, através do voo em uma trajetória em espiral e com a proa voltada para o centro da espiral onde se localiza o ativo a ser inspecionado.

Devido à legislação relacionada às aeronaves não tripuladas, no Brasil não é permitido voo totalmente autônomo, somente semi-autônomo. Dessa forma sempre é necessária a pre- sença de um operador. Porém, para executar a inspeção mais automatizada possível, pode-se oferecer auxílio com um sistema para desvio de obstáculo.

Foi iniciada então uma pesquisa de trabalhos científicos relacionados com soluções voltadas especificamente para os objetivos deste trabalho. Poucos trabalhos foram identificados. Todos os trabalhos encontrados durante a pesquisa focam na inspeção do topo da torre e na linha de transmissão e não apresentam muitos detalhes de como foram construídos os algoritmos da solução. Os trabalhos analisados que apresentavam algoritmos de geração e execução de trajetórias não são aplicados diretamente aos objetivos de inspeção de torres. Então, optou-se por realizar outra pesquisa focado em técnicas e algoritmos relacionados à geração e navegação de trajetória, usando a técnica de Revisão da Literatura Sistemática que mostrou o estado da arte nessa área, apresentado no Capítulo B e mais detalhado no anexo B.

No Capítulo 3 foi apresentada a abordagem proposta, sua construção e as dificuldades encontradas durante o desenvolvimento. Foram detalhados:

• Algoritmo de Geração de Trajetória em Espiral. Para criar esse algoritmo foi utilizada a função paramétrica para geração de espiral, considerando o centro da torre como o centro da espiral, onde o raio da distância é a posição do VANT até a torre, informada pelo operador na tela da console. A distância entre cada waypoint que define a espiral foi definida em 1m. Conforme discussão da seção 3.3, esse valor é adequado para as dimensões de espirais para a solução de inspeção de torres.

• Algoritmo de Detecção de Obstáculos. Para a construção deste algoritmo, inicialmente foram posicionados sensores ultrassônicos ao redor do VANT, cada um separados em 45o do sensor adjacente. No código do algoritmo, a posição do obstáculo no ambiente é

determinado através do uso de matrizes de rotação e translação. Os obstáculos detectados são armazenados em um vetor que é lido pelo algoritmo de desvio de obstáculo.

• Algoritmo de Desvio de Obstáculo. Gera waypoints que definem o desvio do obstáculo. Para criar a trajetória de desvio, este algoritmo varre a lista de obstáculos e, para cada obs- táculo, verifica se a rota entre a posição atual do VANT até o próximo ponto de destino da trajetória passa pela área de segurança do obstáculo. Se for detectado que a rota passa por dentro dessa área, o algoritmo de desvio de obstáculo cria uma trajetória por interpolação circular entre a posição atual do VANT até o próximo ponto de deslocamento. Os way- points de desvio de obstáculo são inseridos na lista principal de waypoints de navegação para que o algoritmo de gerenciamento de missão passe a enviar esses novos waypoints ao sistema de controle de navegação.

• Algoritmo de Gerenciamento de Missão. Envia os waypoints que estão no vetor prin- cipal para o sistema de controle de navegação. Estes waypoints podem ser pontos que determinam a trajetória em espiral ou a trajetória de desvio de um obstáculo. Este algo- ritmo monitora a navegação do VANT e envia o próximo waypoint, conforme o VANT se aproxima do waypoint enviado anteriormente.

O Capítulo 4 apresentou a validação da abordagem proposta. Esta validação foi feita através de estudos de caso que representam cenários reais de inspeção de torres. O cenário 1 foi usado para obtenção de dados de controle, pois não inclui obstáculos. Em seguida são analisa- dos dois cenários, cada um com obstáculos dispostos de modo a experimentar perfis de execução diferentes. O cenário 2 contém obstáculos dispostos longitudinal e transversalmente com rela- ção à trajetória em espiral, além de obstáculos dispostos em zig-zag. O cenário 3 possui um conjunto de obstáculos extensos tanto longitudinal, quanto transversalmente, representando um obstáculo com dimensão maior que o VANT. O resultado da execução do cenário 1 apresentou um aumento na trajetória percorrida em relação à trajetória calculada. Os experimentos mostra- ram que este aumento ocorreu devido ao sistema de controle de navegação. Não foi foco deste trabalho a avaliação de sistemas de controle de navegação, porém, esse aumento foi usado para comparar com as trajetórias calculadas e executadas dos outros cenários. O resultado do expe- rimento do cenário 2 também mostrou acréscimo da trajetória percorrida em relação à trajetória