classes como a area e terrestre. As aplicaes onde o ROV submarino mais usado so na indstria de petrleo para o monitoramento de cascos de navio, bases de plataforma e dutos coletores, e na gesto energtica no monitoramento de instalaes imersas de hidreltricas conforme visto na figura 1.
Um ROV constitudo por dois sistemas, o sistema computacional e o sistema de controle, em um projeto estes sistemas so organizados da seguinte forma:
Sistema Computacional: Software. o que realiza a aquisio de imagens e controla as aes do ROV, sua constituio formada por um computador dotado de software com as funes de uso de portas de comunicao.
Sistema de Controle: Hardware e Mecnica. o que realiza o movimento e outras aes fsicas da estrutura do ROV, sua constituio formada por mdulos microcontrolado para acionamento dos motores, iluminadores, cmera de vdeo e outros como braos mecnicos e coletores de resduos.
Neste trabalho foi desenvolvido um Sistema Computacional denominado de ROVCAM com nfase na aquisio e armazenamento de imagens, e um mdulo microcontrolado para acionamento das funes da cmera de vdeo, que ser integrado ao sistema de controle do ROV. A malha de controle de um ROV vista na figura 2.
Figura 2: Malha de Controle do ROV, com o sistema computacional e de controle (LSED-IESAM, 2007).
O Controle do ROV feito com base na visualizao de sua posio, pois a cmera de vdeo realiza a aquisio de imagens e o operador v a movimentao do veculo proporcionalmente a ao do joystick. As strings de controle que seguem um protocolo de comunicao desenvolvido para todos os dispositivos da malha e so emitidas para o sistema de controle. Os mdulos microcontrolados do sistema de controle que esto interligados em uma rede industrial padro RS-485, onde o protocolo age para acionar somente a funo de um mdulo ligado a rede.
1.2 Problema
Na Amaznia os ambientes aquticos apresentam alta turbidez. A turbidez a medida da dificuldade de um feixe de luz atravessar certa quantidade de gua, adquirindo assim uma aparncia turva. As principais causas da turbidez da gua so: presena de matrias
slidas em suspenso (silte, argila, slica, colides), matria orgnica e inorgnica finamente dividida, organismos microscpicos e algas (Vieira, 1992). A turbidez dificulta o monitoramento de estruturas imersas devido a pouca linha de viso do ambiente, logo so necessrias tcnicas de iluminao para abrir viso em meios turbidos e possibilitar assim a inspeo.
O ROV construdo para monitorar estes ambientes turbidos dotado de spots de iluminao com potncia necessria para abrir viso tornando possvel a inspeo da estrutura imersa. 1.3 Metodologia
No incio do desenvolvimento do ROVCAM foram especificadas funes para o controle de nveis de potncia dos iluminadores do ROV a fim de ajustar o nvel de iluminao de acordo com a melhor viso da estrutura imersa. A cmera de vdeo modelo HandyCam da Sony foi configurada para aplicar um filtro de iluminao nos frames capturados para eliminar os possveis pontos de sombra e assim contribuir para o sistema de iluminao do ROV. Estas funes devem funcionar ao mesmo tempo em que a posio do ROV muda com o controle, logo so funes concorrentes e devem apresentar tempo de resposta regular no acionamento de dispositivos por computador.
Pronta
Executando
Destruio
Iniciando
Bloqueado
Threads peridicas podem ser implementadas atravs da criao de uma nova thread no incio de um novo perodo, porm o custo de overhead (uso inadequado das linhas de um processo), associado destruio bem maior que a suspenso e a reativao, resultando em um sistema menos eficiente (Seixas, 2003). O mecanismo de escalonamento das threads no ROVCAM do tipo preemptivo. O kernel do Microsoft Windows 2000/XP preemptivo, caracterstica de grande importncia para sistemas de automao e tempo real. O kernel do Linux no preemptivo, o sistema operacional QNX baseado em Unix tem kernel preemptivo e muito usado tambm para aplicaes em automao e tempo real, porm o custo da sua licena na verso comercial superior ao do Windows (Seixas, 2003).
Aquisio
Cmera de Vdeo
Processamento
Computador Varivel FrameBuffer
Sada
Monitor de Vdeo
Armazenamento
Figura 4: Elementos de um sistema de aquisio de imagens (LSED-IESAM, 2007).
Na figura 4 visto todos os elementos que compem um sistema de aquisio de imagens. O processamento envolve procedimentos normalmente expressos sob forma algortmica, para o tratamento dos frames e definio de seu formato, o formato padro de definio de frames o BMP (Bitmap Mapeamento de bits). O armazenamento usa parte da memria RAM do sistema computacional para o armazenamento do framebuffer (conjunto de quadros) que geralmente guarda 30 imagens completas por segundo e as grava em disco rgido ou outras mdias como o Mini-DVD. O monitor de vdeo um elemento fundamental e o dispositivo comumente usado para apresentao do resultado da etapa de aquisio de imagens. O hardware necessrio para o funcionamento de todos os elementos de aquisio de imagem : camera de vdeo, conversor A/D de vdeo, computador com porta de comunicao compatvel e monitor de vdeo (Woods, 2000).
O ROVCAM funciona com base em duas funes em threads de execuo e uma em Timer: Aquisio de imagem, armazenamento de imagens, Tratamento de Eventos de Joystick USB e emisso de strings de controle pela porta serial RS-232.
Valor do acqTemp() = 1000 / Nmero de Frames acqTemp(200) = 5 frames por segundo IEEE1394(Firewire) Transferncia de 800MBytes/seg.
Os eventos e aes do framebuffer so programados atravs do SDK (kit de desenvolvimento) do DirectX 9.0 que o ncleo multimdia nativo do Windows. No SDK do DirectX h conjunto de bibliotecas DirectShow responsvel pelas funes do ponteiro de aquisio e imagens e seu tratamento, o programa exemplo StillCap foi usado como base inicial do ROVCAM. A malha de vdeo gerada em 740 linhas, e foi desenvolvida uma funo acqTemp() para definir o nmero de frames por segundo no momento da aquisio. Na figura 7 visto o tratamento do ponteiro de uma classe dotada com a programao da comunicao firewire para a aquisio de frames.
Stream IP Protocolo por Sockets, Strings de Controle para controle PAN-TILT da IPCAM D-Link-6620
O software abre uma sesso HTTP para receber os frames em uma conexo de rede ETHERNET de 1Gbits. Este software apresentou um desempenho prximo ao do mtodo de aquisio de imagens por um conversor RCA/IEEE1394, porm o seu desenvolvimento est em segundo plano, pois a malha de vdeo gerada de 704 linhas e o tempo de espera entre a recepo de um frame e outro maior, logo perceptvel com relao ao mtodo de aquisio de imagens pelo conversor RCA/IEEE1394 dando a sensao de retardo na transio de frames no caso de um vdeo gravado. Na figura 9 visto a interface do ROVCAM TCP/IP com suas funes bsicas implementadas e em funcionamento.
Figura 9: Interface do ROVCAM TCP/IP, aquisio de imagens por sockets TCP/IP (LSED-IESAM, 2007).
Figura 10: Protocolo desenvolvido para controle dos dispositivos do sistema de controle (LSED-IESAM, 2007).
O computador usado para o sistema computacional no tem porta serial e foi usado um conversor Ethernet/RS-485 ECS-713 da HI-Tecnologia na figura 11, que ao ser instalado cria uma porta virtual serial no sistema operacional permitindo a programao a nvel hardware da porta de comunicao serial com total portabilidade.
Figura 11: Conversor ECS-713 da Hi-Tecnologia e a rede de dispositivos do ROV (LSED-IESAM, 2007).
A rede industrial RS-485 permite comunicao a distncias de at 1.200 metros, velocidade de banda de at 10MBits/seg., modo de comunicao half-duplex e imune a rudos eletromagnticos.
Figura 12: Diagrama lgico dos pinos do microcontrolador PIC16F628A (Microchip, 2004).
Set de instrues com 35 funes; 200 nanosegundos por instruo com oscilador de 20MHz; Clock interno de 4MHz / 37KHz; 16 pinos de I/O com capacidade de corrente de 25mA por pino; 2Kx14 bits de memria FLASH de programa; 224x8 bits de memria RAM para dados; 128x8 bits de memria EEPROM interna; Trs timers, dois de 8 bits e um de 16 bits; Um canal de comunicao serial UART; Mdulo CCP (modos Captura, Compare e PWM); Boa resistncia e durabilidade em ambientes (calor e impacto mecnico).
O firmware foi desenvolvido em linguagem C no ambiente de desenvolvimento MPLAB com base no compilador SourceBoost C para microcontroladores visto na figura 13.
Figura 13: MPLAB como ambiente de desenvolvimento com o compilador Source Boost C (LSED-IESAM, 2007).
O tratamento da recepo da string de controle do protocolo foi desenvolvido da seguinte forma: Na recepo de dados via porta de comunicao UART do microcontrolador os caracteres provenientes da rede RS-485 so guardados em um vetor ou buffer at receber o caracter \r retorno de carro correspondente ao nmero 13 no cdigo ASCII. Com o buffer do vetor completo, cada elemento do vetor ser comparado ao decorrer do programa com caracteres responsveis pela ao a ser executada no circuito da cmera de vdeo visto na figura 14.
Figura 14: Comparao elemento X elemento do vetor buffer para a ao do circuito (LSED-IESAM, 2007).
Se a entrada dos caracteres no vetor no momento do processamento de comparao for invlido devido erro na comunicao, ou caso a string de controle no for a endereada para o mdulo da camera de vdeo, o firmware interrompe o processamento de comparao, e retorna ao estado de leitura da porta de comunicao UART, para realizar a recepo de novos caracteres da rede. Este algoritmo de comparao mostrou bom desempenho em comparao ao uso de funes de tratamento de strings como strcpy() e strcmp() com relao ao uso da memria RAM e ROM do microcontrolador.
A funo strToInt() foi desenvolvida para converter um vetor do tipo char para um valor em em tipo inteiro para ser aplicado ao sinal PWM e timer, pois a funo atoi() nativa do C extensa e tambm consumiu grande parcela da RAM e da ROM do microcontrolador. Na tabela 1 visto a comparao de desempenho e uso dos recursos do microcontrolador usando as funes nativas do C e as funes desenvolvidas para otimizao do processamento.
Tabela 1 Desempenho Funes Nativas C X Funes desenvolvidas neste trabalho para o PIC16F628A
Recurso
54,0% 60,0%
17,0% 17,8%
O compilador Sourceboost C no tem funes nativas para escrita e leitura da EEPROM Para a srie PIC16F62X e estas foram implementadas com base na configurao dos registradores EEDATA, EEADR, EECON1 e EECON2 no Datasheet do PIC16F628A, as funes esto descritas na figura 15.
Leitura da EEPROM
Escrita da EEPROM
Figura 15: Funes implementadas para leitura e escrita da EEPROM e string para inteiro (LSED-IESAM, 2007).
O uso da EEPROM importante para gravar e guardar o endereo do mdulo, e quando necessrio muda-lo de acordo com a organizao da rede RS-485. O mdulo completo e implementado na camera de vdeo visto na figura 16 e fez-se necessrio desenvolve-lo devido ao controle do trip da camera de vdeo ter a extenso de somente 40 cm, o mdulo microcontrolado foi interfaceado com o controle do trip da Sony HandyCam permitindo assim um controle da camera remotamente na distncia mxima padro de 1.200 metros do RS-485.
Figura 16: Mdulo cmera de vdeo interfaceado com o controle do Trip da HandyCam (LSED-IESAM, 2007).
O esquemtico do mdulo da camera de vdeo foi desenvolvido no software EAGLE para prototipagem em placas de circuito impresso e visto na figura 17. O circuito composto por um PIC16F628A para processamento e controle, MAX485CPE para comunicao com a rede RS-485 e um rel para o acionamento liga/desliga.
3. Resultados Obtidos
Os recursos de aquisio de imagens e envio de strings de controle para o mdulo da camera de vdeo consta de suas principais funes implementadas, testadas e em funcionamento. Foram feitos trs testes de aquisio de imagens e controle de potncia dos iluminadores do ROV imersos na gua. Na figura 18 h uma viso geral de todo o sistema descrito neste trabalho.
Figura 18: Sistema Computacional integrado ao Sistema de Controle do ROV (LSED-IESAM, 2007).
No monitoramento de estruturas imersas foi possvel diferenciar a abertura da viso em meio turbido atravs do controle de nvel da iluminao dos spots do ROV, na figura 19 visto dois momentos: viso fechada e viso aberta.
(a)
(b)
Figura 19: Imagem (a) com spots em 0% e Imagem (b) com spots em 100% da potncia (LSEDIESAM, 2007).
4. Concluso
Desenvolver um sistema computacional para um ROV algo que demanda muita pesquisa e tempo, pois materiais como livros e artigos so raros no somente no Brasil e sim em escala mundial. Logo a unio de conhecimentos das reas de programao, eletrnica, sistemas digitais, sistemas de controle e processamento de imagens foram a principal base para todo o desenvolvimento deste trabalho.
Este trabalho propiciou a participao na atividade de pesquisa na rea marinha atravs do projeto de Inspeo Aqutica em guas de Alta Turbidez, pioneiro na regio amaznica, e financiado pelas Centrais Eltricas do Norte do Brasil S/A. Como grande virtude do trabalho desenvolvido, a unio de vrias reas em exatas, engenharia e tecnologia foram de grande valia, pois mesclar conceitos de computao e eletrnica a essncia da Engenharia de Computao. O LSED-IESAM (Laboratrio de Sistemas Embarcados e Distribudos do Instituto de Estudos Superiores da Amaznia) foi o local onde ocorreu todo o desenvolvimento do sistema computacional para ROV.
REFERNCIAS BIBLIOGRFICAS
SEIXAS, C., SZUSTER, M. Programao Concorrente em Ambiente Windows Uma Viso de Automao. 1. Ed. Minas Gerais MG: EDUFMG, 2003. 370p.
WOODS, Richard E. Processamento de Imagens Digitais. 1.Ed. Brasil: Edgard Blcher, 2000. 509p.
VIEIRA, Gerson. Engenharia Qumica na Sedimentao. 1.Ed. Brasil: EDUFRJ, 1992. 50p.
DORF, Richard C. SISTEMAS DE CONTROLE MODERNOS. 8.Ed. So Paulo: LTC, 1998. 820p.
SCOVILLE, Dan. UNDERWATER ROV PROJECT. London: Reading University, 2004. 14p.