PROJETO DE UM VEÍCULO SUBAQUÁTICO AUTÔNOMO
Caio Cesar Forni 1; Wânderson de Oliveira Assis
2; Alessandra Dutra Coelho
2
1 Aluno de Iniciação Científica da Escola de Engenharia Mauá (EEM-CEUN-IMT);
2 Professor(a) da Escola de Engenharia Mauá (EEM-CEUN-IMT).
Resumo. Este projeto propõe o desenvolvimento de um veículo subaquático autônomo (AUV
– Autonomous Underwater Vehicle) que seja capaz de locomover-se de forma autônoma
dentro de um tanque. O veículo deve possuir câmera embarcada, o que lhe permitirá
desenvolver técnicas de processamento de imagem visando exploração e mapeamento do
interior do tanque de água de forma a fazer a detecção de objetos pela cor e forma.
Introdução
O estudo da robótica autônoma vem sendo efetuado há alguns anos no Instituto Mauá
de Tecnologia – IMT principalmente no projeto de pesquisa “Desenvolvimento de Robôs
Autônomos”. Este projeto foi implantado em 2003, inicialmente com o objetivo de incentivar
os alunos de graduação a desenvolverem pesquisas acadêmicas relacionadas à mecatrônica e
robótica e tendo como atrativo a participação em competições estudantis de robótica, no início
utilizando a plataforma do futebol de robôs. A produção científica obtida como resultado
destas pesquisas é relativamente extensa e inclui (Guimarães, 2006), (Guimarães, Assis e
Coelho, 2006), (Coelho, Assis e Silva, 2009), (Coelho et al., 2006), entre outros. Uma
extensão destas pesquisas consiste na utilização de sistemas de visão computacional e a
aplicação de técnicas de processamento de imagens os quais proporcionaram o
desenvolvimento de várias outras pesquisas e projetos (Denis, 2009), (Assis et al, 2007).
Recentemente, na área de robótica autônoma, pesquisadores de todo mundo veem
desenvolvendo aplicações e pesquisas utilizando veículos aquáticos e subaquáticos. Em
muitas aplicações é importante que estes robôs tenham algum grau de inteligência que os
tornem capazes de executar ações de forma autônoma.
No projeto de iniciação, aplicações de robótica aquática e subaquática, por exemplo,
usando UUVs (Ummanned Underwater Vehicles) ainda não foram realizadas. Pesquisas
utilizando UUVs incluem veículos operados remotamente ou veículos autônomos para
desenvolver ações como inspeção, perfuração, exploração de profundidades, enterramento de
cabos submarinos, entre outros (Valavanis et al., 1997). Veículos aquáticos operados
remotamente (Remotely Operated Vehicles), geralmente são utilizados quando o ambiente de
navegação na água é desconhecido ou as condições do ambiente não são propícias para uma
missão tripulada. Para a navegação utilizam um cabo que permite a conexão entre o veículo e
uma embarcação, na superfície. Veículos subaquáticos autônomos, os AUVs (Autonomous
Underwater Vehicles), são veículos não tripulados, com fonte de energia própria e
processamento interno que executam ações de forma autônoma a partir de informações
obtidas por sensores. Apresentam custo operacional mais reduzido, uma vez que o operador
humano não é necessário. Além disso, como as ações são executadas de forma autônoma
utilizando processamento embarcado, não é necessário efetuar conexão via cabo podendo por
isto atingir distâncias significativas a partir de um navio de apoio ou plataforma. No entanto,
seu projeto é relativamente mais complexo e mais limitado em termos de controle e
capacidade de processamento, bem como, fica dependente da capacidade da fonte de energia
embarcada. Neste sentido, muitas pesquisas estão sendo realizadas em todo o mundo com
ênfase em autonomia, navegação, detecção de objetos, fontes de energia e sistemas de
informação para veículos autônomos subaquáticos (Gonzales, 2004), (Goheen e Jefferys,
1990), (Yuh, 2000), (Yoerger et al., 2007).
Material e Métodos
O trabalho visa o projeto e a construção de protótipo de um veículo subaquático
autônomo que seja capaz de se locomover no interior de um tanque e monitorar a existência
de peças de formas e cores padrão no fundo do mesmo de forma autônoma.
Nesta seção pretende-se demonstrar as características, funcionalidades e aplicações
dos dispositivos eletrônicos utilizados, bem como os materiais utilizados na construção e os
softwares que viabilizaram o projeto.
Materiais e softwares utilizados no projeto mecânico
A construção física do veículo, projetada em duas versões diferentes, foi desenvolvida
utilizando o software Solid Works.
Na primeira versão a estrutura mecânica do veículo foi projetada utilizando sistema
com tubos em PVC e caixa plástica. Na segunda versão foram utilizados materiais como
madeira, nylon, alumínio e acrílico.
Materiais e softwares utilizados no projeto eletrônico
Na concepção do projeto eletrônico considerou-se a utilização de um sistema
microprocessado que será responsável pelo monitoramento dos sinais produzidos pelos
sensores bem como pelo controle de movimentação por meio do acionamento de motores.
O sistema microprocessado utilizado é a plataforma Arduino Mega. Os sensores
utilizados são dois sensores de distância e uma câmera com processamento embarcado
(CMU-Cam). O sistema de movimentação utiliza sistema motopropulsor constituído de quatro
servomotores de corrente contínua acoplados a hélices. O sistema inclui ainda placa de
condicionamento de sinal e conexão de dispositivos, sistema de comunicação por rádio
frequência utilizando módulos XBee, além de bateria para alimentação.
O microprocessador utilizado é um Arduino, que é uma plataforma de hardware livre,
projetada com um microcontrolador Atmel AVR de placa única, com suporte
de entrada/saída embutido e uma linguagem de programação padrão, essencialmente C/C++
. O
objetivo do projeto com Arduino é criar ferramentas que são acessíveis, com baixo custo,
flexíveis e fáceis de se usar por profissionais experientes, mas também por amadores. Destina-
se principalmente para aqueles que não teriam alcance aos controladores mais sofisticados e
de ferramentas mais complicadas (Wikipédia, 2011).
Uma das grandes vantagens que o Arduino apresenta é em relação à disponibilidade de
shields (escudos em inglês) que são placas de circuito impresso normalmente fixados no topo
do aparelho, através de uma conexão alimentada por pinos-conectores. Alguns exemplos de
módulos acopladores (shields) são: Ethernet, XBee, InputShield, TouchShield dentre outras.
Hoje, existem mais de 10 tipos diferentes de Arduino, desde o mais básico incluindo
microcontrolador com poucas portas analógicas e digitais, até placas complexas capazes de
proporcionar o uso de tecnologias avançadas.
O Arduino Mega, que será utilizado no projeto, é mostrado na Figura 1. Ele utiliza
processador ATmega1280 com clock de 16 MHz que incorpora maior capacidade de memória
e entrada e saída de dados e é construído utilizando tecnologia de montagem superficial (SMT
– Surface Mount Technology). Apresenta as mesmas características elétricas do Arduino
2009, mas disponibiliza 54 pinos para entradas e saídas digitais (I/O), 14 destes podendo ser
utilizados como saída PWM, além de 16 entradas analógicas. A memória SRAM é de 8 KB a
EEPROM 4 KB e a Flash de 128 KB.
Figura 1 – Arduino Mega . Fonte: Wikipédia, 2011.
Para a transmissão de dados wireless do veículo com o computador, foi inserido no
projeto o módulo Xbee. Os módulos Xbee são dispositivos com tecnologia ZigBee
desenvolvidos pela empresa norte americana DIGI (antiga MaxStream) com o objetivo de
simplificar aplicações utilizando RF. Originalmente foram produzidas duas versões
disponíveis na linha MaxStream: o XBee e o XBee PRO. São versões compatíveis entre si
que se diferenciam apenas pela potência de transmissão: 1mW para o XBee e 63mW para o
XBee PRO. O alcance do produto final depende da potência de transmissão; no entanto esse
não é o único fator a ser levado em conta. Os módulos trabalham com transmissão e recepção
de sinais com a vantagem de já possuírem toda pilha de comunicação incluindo protoloco de
comunicação baseado nos padrões ZigBee
e IEEE 802.15.4.
O Padrão IEEE 802.15.4 define as duas primeiras camadas da pilha de protocolos: a
camada de Controle de Acesso ao Meio (MAC) e a camada física que tem como
características: alcance máximo de 150 m, operação na frequência ISM (Industrial, Scientific
and Medical) de 2,4 GHz.
O Padrão ZigBEETM
compreende mais duas camadas de protocolos: a camada de rede,
que define endereçamento e roteamento, e a camada de suporte à aplicação que estabelece o
conjunto de objetos manipuláveis pelo usuário. A Figura 2 ilustra módulos XBee com
diversos tipos de antenas disponíveis.
Figura 2 – Módulo XBEe e Placa de Conexão ao Arduino (shield).
Para monitorar as imagens no fundo do tanque e localizar objetos utilizou-se sistema
de captura e processamento de imagens o qual deve possuir as seguintes características: a)
uma câmera colorida com uma resolução suficiente para o reconhecimento de objetos tanto
pela forma quanto pela cor; b) um processador capaz de capturar a imagem da câmera e fazer
o reconhecimento dos objetos; c) um meio de transmissão do sistema de captura para o
veículo autônomo de forma rápida e eficiente.
O sistema escolhido foi a CMUcam2 ilustrada na Figura 3 devido ao seu baixo custo,
por já possuir toda a estrutura projetada e também a forma de comunicação utilizando o
padrão RS-232 ou TTL, presente na maioria dos microcontroladores existentes no mercado,
portanto facilitando a elaboração da placa de controle do robô (Rowe, Rosenberg &
Nourbakhsh, 2002).
Figura 3 – CMUcam2 - Vista Frontal Com Câmera e Vista Posterior.
As principais características presentes na CMUcam2 são:
- programável utilizando microcontrolador SX52;
- inclui câmera OV6620;
- apresenta resoluções de 88x143 e 176x255;
- conexão serial RS232 ou TTL com taxa de transferência de 1.200 bps a 115.200 bps;
- alimentação: 6 a 15V, 200 mA;
- suporta o controle de até 5 servomotores.
Os sensores utilizados para detecção de obstáculos bem como para identificar as
bordas do tanque são os sensores de distância Sharp GP2D120XJ00F. Tratam-se de sensores
de infravermelho (IR) onde um sinal luminoso é emitido e a distância entre o sensor e o
obstáculo é determinada por meio da variação da potência luminosa refletida que é captada
por um fototransistor.
As principais características elétricas do sensor de distância (Figura 4) são:
- tensão de operação de 4,5 V a 5,5 V;
- consumo médio de corrente de 33 mA (típico);
- faixa de distância operacional: 4 cm a 30 cm;
- tempo de resposta: 38 ± 10 ms.
Figura 4 – Sensor de Distância
O controle da movimentação dos robôs é conseguido por servomotores DC. Foram
utilizados minimotors fabricados pela Falhauber, modelo 1516E012S (Figura 5). Esse modelo
é controlado por uma tensão contínua de, no máximo, 2V, com uma redução interna de 11,8:1
o que resulta numa rotação de aproximadamente 800rpm e com um torque de 7mN.m em sua
tensão nominal.
A alimentação foi produzida por bateria Li-Po Turnigy de 500 mAh constituída de três
células e com tensão nominal de 11,1 V (Figura 5).
Figura 4 – Servomotor DC
A alimentação foi produzida por bateria Li-Po Turnigy de 500 mAh constituída de três
células e com tensão nominal de 11,1 V (Figura 5).
Figura 5 – Bateria Li-Po
Para realizar o projeto eletrônico foram utilizados os softwares Multisim e Ultiboard
da National Instruments, nos quais foram realizados os projetos da placa de condicionamento
de sinal e conexão de sensores. A produção da placa foi concretizada utilizando uma máquina
alemã LPKF Laser & Electronics ("Leiterplatten Kopier Fräsen"), ou seja, uma máquina de
prototipagem e fabricação de placas de circuito impresso, disponível na própria instituição.
Resultados e Discussão
A concepção de todo o projeto foi dividida entre as etapas de projeto mecânico,
eletrônico e programação, as quais serão descritas nos itens subsequentes.
Projeto Mecânico
O projeto mecânico iniciou-se buscando uma configuração adequada para a aplicação,
para tal foi realizada uma intensa pesquisa na busca de soluções já existentes para projetos
similares. Dentre as diversas opções encontradas, duas se destacaram pela facilidade
construtiva, baixo custo e boa estanqueidade do compartimento de eletrônicos. Adaptando
estas configurações para o presente trabalho foram realizados desenhos em software de CAD
os quais são ilustradas na Figura 6. Por apresentar maior estanqueidade e simetria e menor
empuxo, a segunda opção de configuração foi selecionada para o projeto.
Para a movimentação do veículo foram selecionados motoredutores de 12 V (Figura
4), blindados e de alto torque acoplados a hélices náuticas utilizadas na prática do
nautimodelismo. A disposição dos conjuntos motopropulsores no veículo faz com que o
mesmo apresente quatro graus de liberdade, translação nos eixos x e z e rotação nos planos xy
e yz. A Figura 7 ilustra o conjunto motopropulsor montado, bem como sua disposição no
veículo.
Figura 6 – Desenho em CAD das Configurações Pré-Selecionadas
Figura 7 – Conjunto Motopropulsor e Sua Disposição no Veículo
Com o objetivo de concentrar os eletrônicos e protegê-los de choques e umidade, foi
desenvolvido um compartimento para fixação na forma de gaveta proporcionando assim uma
maior versatilidade na colocação e retirada do mesmo, facilitando assim a manutenção e a
recarga da bateria. O projeto e o protótipo podem ser observados na Figura 8.
Figura 8 – Projeto e Protótipo do Compartimento de Eletronicos
Uma das grandes dificuldades no projeto de um veiculo subaquatico é com relação à
vedação. No presente trabalho, para aumentar a estanqueidade do veículo, e assim garantir sua
estabilidade e a proteção dos componentes eletronicos nele inseridos, o projeto contemplou a
utilização de uma flange para o fechamento do compartimento. Esta flange foi projetada para
ter a maior área de contato possivel com o corpo, aumentando assim a vedação. Para diminuir
ainda mais o risco de vazamento foi projetada uma peça produzida de borracha sintética a
qual foi posicionada entre o corpo e a flange e que na condição de aperto dos parafusos é
comprimida, maximizando assim a vedação. A Figura 9 reúne as soluções adotadas no
projeto.
Figura 9 – Soluções para Estanqueidade Adotadas
Para garantir a estabilidade do veículo quando submerso foi realizada uma análise para
o correto posicionamento do centro de gravidade e do ponto de atuação do empuxo. Partindo
do pressuposto de que os dois pontos dever coincidir nos eixos x e y para que o veiculo se
mantenha nivelado, existem duas possibilidades de posicionamento, a primeira com o centro
de gravidade localizado acima do ponto de atuação do empuxo, e a segunda com o centro de
gravidade abaixo deste ponto. Na primeira situação, para um distúrbio que altere o ângulo de
ataque do veículo, a força peso e empuxo, que não mais atuam na mesma reta vertical, irão
gerar um momento que tende a acentuar a rotação do veículo no sentido do distúrbio, sendo
este momento denominado desestabilizador. Já no segundo caso, as forças irão provocar um
momento que tende a se contrapor ao sentido de rotação causada pelo distúrbio, denominado
estabilizador, fazendo com que o veículo retorne à sua posição de equilibrio. A Figura 10
exemplifica os dois casos de posicionamento dos pontos e sua relação quanto a estabilidade.
Figura 10 – Conceito de Estabilidade do Veículo
Uma vez dimensionado o veículo, a magnitude do empuxo e seu ponto de atuação
resultante não podem ser alterados. Para verificar o valor destes parâmetros foi realizada uma
análise na qual foi modelado o veículo de forma maciça e especificando a densidade do
material igual à densidade da água para temperatura ambiente. Com isso, partindo do
princípio de que a magnitude do empuxo é igual ao peso do volume de água deslocado e que
seu ponto de atuação resultante pode ser relacionado ao centro de gravidade deste volume de
água, foi utilizada a ferramenta de propriedade de massa do software de CAD, obtendo assim
a massa do volume, empuxo, e o ponto de aplicação. A Figura 11 mostra o resultado da
análise.
Figura 11 – Resultado da Análise para Verificação dos Parâmetros de Empuxo.
De posse destes dados foi possível dimensionar a massa e a posição dos lastros de
chumbo para igualar a força-peso ao empuxo e deslocar o centro de gravidade para uma
posição abaixo do ponto de atuação do empuxo, tomando os cuidados necessários para que o
centro de gravidade não se afaste das linhas de tração dos conjuntos motopropulsores,
provocando uma decomposição de movimento indesejado.
Projeto Eletrônico
O projeto eletrônico tem por finalidade fazer a integração de todos os dispositivos
eletrônicos de forma simples e organizada. O diagrama de ligação elétrica do veículo com as
informações dos componentes embarcados pode ser visualizado na Figura 12.
Figura 12 – Diagrama de Ligação Elétrica
Para seleção da bateria foi levada em consideração a maior tensão de alimentação
dentre os componentes eletrônicos, sendo 12 V do conjunto motopropulsor o maior valor.
Portanto foi selecionada para a aplicação uma bateria de LiPo com três células e tensão de
11,1 V. Uma vez que a máxima tensão de alimentação admissível dos outros componentes ser
de 5 V, faz-se necessária a utilização do circuito integrado regulador de tensão 7805.
Para o controle da velocidade e sentido de rotação do conjunto motopropulsor foram
utilizados amplificadores de potência L298.
Com o objetivo de organizar os cabos de ligação entre os componentes e incluir os
circuitos integrados necessários foi desenvolvida uma placa de circuito impresso para esta
interface. O projeto da placa, bem como sua construção, podem ser visualizados na Figura 13.
Para cálculo da largura das trilhas foi verificada a maior corrente de projeto, sendo esta
medida em teste prático do motor para rotor bloqueado, resultando em 400 mA. De posse
deste dado foi possível calcular o valor da largura das trilhas por meio de:
Figura 13 – Projeto e construção da placa de interface
Programação
A programação será realizada na continuidade do projeto. Contudo é possível definir a
priori as tarefas que devem ser desenvolvidas pelo algoritmo o qual será introduzido pela
programação do Arduino.
Inicialmente a programação será realizada de forma a permitir o controle remoto de
movimentação do veículo. Para isto utilizar-se-á um computador com software de
comunicação serial por meio do qual será possível enviar comandos remotos para o veículo,
os quais serão recebidos no módulo XBee. Nesta etapa deve-se antes de tudo definir um
protocolo para a comunicação entre o computador e o veículo. Em seguida deve-se criar o
algoritmo para realizar o seguinte procedimento cíclico:
- recepção de dados seriais enviados pelo módulo XBee;
- decodificação da informação recebida;
- controle de acionamento dos motopropulsores, conforme o comando recebido, de
forma a produzir a movimentação desejada; aqui um estudo do modelo matemático do veículo
e a utilização deste modelo na definição das tensões que devem ser aplicadas a cada motor
podem ser indispensáveis.
Na etapa seguinte realizar-se-á a programação do veículo para que este realize
operações de forma autônoma. Neste caso o objetivo é localizar objetos no fundo do tanque, a
partir do processamento da imagem para reconhecimento de formas e cores. Para isto os
seguintes procedimentos serão realizados:
- captura e processamento de imagens utilizando a CMU-Cam2;
- controle de movimentação do veículo em todas as direções com o objetivo de se
aproximar do objeto de busca;
- monitoramento contínuo dos sinais dos sensores de distância de forma a permitir o
desvio de obstáculos, bem como a detecção das bordas do tanque;
Após concluída esta etapa, na continuidade do projeto, podem ser incorporados outros
dispositivos ao veículo, como por exemplo, materiais ferromagnéticos fixados na estrutura.
Estes dispositivos permitirão a captura do objeto após a sua localização.
Conclusões
Este projeto de pesquisa propôs a construção de um veículo subaquático autônomo que
seja capaz de locomover-se de forma autônoma dentro de um tanque. Embora a etapa de
programação não tenha sido realizada, a construção completa do veículo foi realizada com
sucesso, incluindo montagem da estrutura mecânica e do sistema eletrônico. O projeto
contemplou a inclusão de sistema de captura e processamento de imagens, sensores de
distância para detecção de obstáculos e motopropulsores para produzir a movimentação em
todas as direções. Um estudo da estabilidade do veículo quando submerso foi realizado de
forma a definir o correto posicionamento do centro de gravidade e do ponto de atuação do
empuxo. Adicionalmente o projeto desenvolvido apresenta excelentes características de
estanqueidade, para garantir sua estabilidade e a proteção dos componentes eletrônicos
inseridos. A Figura 14 apresenta o protótipo construído.
Figura 14 – Fotografias do Veículo Subaquático Projetado
Na continuidade do projeto pretende-se desenvolver a programação do sistema
microprocessado embarcado de forma que o veículo consiga movimentar-se de forma
autônoma, ou ainda seja possível o controle remoto, por computador, neste caso utilizando
módulos com tecnologia ZigBee inseridos na estrutura.
Agradecimentos
Agradecimentos à Escola de Engenharia Mauá pela infraestrutura disponibilizada, bem
como pela bolsa de iniciação científica que possibilitou o desenvolvimento deste projeto.
Referências Bibliográficas
Assis, W. O., Genova, W. J., Gomes, M. M., Coelho, A. D. (2007) Aplicação de Tecnologias
de Controle de Processos Contínuos e Processamento de Imagem no Futebol de Robôs, SBAI 2007 – Simpósio Brasileiro de Automação Inteligente – Brazilian Robotics
Competition, Florianópolis, SC.
Coelho, A. D., Assis, W. O., Silva, J. G. (2009) The Scientific Initiation as an Instrument of
Training for Future Researchers, Proceedings of 9th IFIP World Conference on
Computers in Education, Bento Gonçalves, RS, Brasil.
Coelho, A. D., Gomes, M. M., Assis, W. O., Silva, A. R., Pegorelli Neto, A., Fernandes, D.
C., Santos, D. P. (2006) Development of Autonomous Constructor Robot, Proceedings
of LARS 2006 – 5th IEEE Latin American Robotics Contest for Student, Santiago –
Chile.
Denis, C. (2009) Seleção de Tomates para Processamento Industrial por Meio de Redes
Neurais Aplicadas em Sistema de Visão Computacional, Dissertação de Mestrado em
Engenharia de Processos Químicos e Bioquímicos, Instituto Mauá de Tecnologia.
Goheen, K. R., Jefferys, E. R. (1990) Multivariable Self-Tuning Autopilots for Autonomous
and Remotely Operated Underwater Vehicles, IEEE Journal of Oceanic Engineering,
15, 144-151.
Gonzalez, L. A. (2004) Design, Modelling and Control of an Autonomous Underwater
Vehicle, Bachelor of Engineering Thesis, The University of Western Australia, School
of Electrical, Electronic and Computer Engineering, Crawley, Australia.
Guimarães, F. A. (2006) Desenvolvimento de Robô Móvel Utilizado para a Exploração de
Ambientes Hostis, Dissertação de Mestrado em Engenharia de Processos Químicos e
Bioquímicos, Instituto Mauá de Tecnologia.
Guimarães, F. A., Assis, W. O., Coelho, A. D. (2009) A Radio Frequency Communication
Protocol Applied on Mobile Robot Control System, COBEM 2009 – International
Congress of Mechanical Engineering, Gramado, RS, Brasil.
Rowe, A.; Rosenberg, C.; Nourbakhsh, I. (2002) A Low Cost Embedded Color Vision System.
Proceedings of IROS 2002 – IEEE / RSJ International Conference on Intelligent Robots
and Systems, Switzerland, September / October.
Valavanis, K. P., Gracanin, D., Matokasevic, M., Kolluru, R., Demetriou, G. A. (1997)
Control Architectures for Autonomous Underwater Vehicles, IEEE Controls Systems, p.
48-64, December.
Wikipédia, A Enciclopédia Livre (2011), Arduino Disponível em <http://pt.wikipe
dia.org/wiki/Arduino>. Acesso em: 12 Out de 2011.
Yoerger, D. R., Jakuba, M, Bradley, A. M., Bingham, B. (2007) Techniques for Deep Sea
Near Bottom Survey Using an Autonomous Underwater Vehicle Robotics Research,
Springer Berlin / Heidelberg, 28, 416 – 429.
Yuh, J. (2000) Design an Control of Autonomous Underwater Robots: A Survey, Journal
Autonomous Robots, Springer Netherlands, 8, 7-24.