quarta-feira, 28 de dezembro de 2011

FIschertechnik, uma visão alemã da robótica

Um novo desafio pela frente.

Em 2012 inicio meus trabalhos como educador de Robótica no Colégio Damas. Estreando em uma nova casa, surgem novos desafios. O mais impactante deles, certamente, será trabalhar com um kit incomum por aqui: o Fischertechnik.

O kit é produzido pela empresa alemã de mesmo nome e tem origem em presentes que a empresa produziu para coordenadores e clientes, que acabou sendo lançado comercialmente.

A montagem utiliza o conceito de encaixe por deslizamento, possibilitando uma montagem linear bastante robusta. As peças foram produzidas considerando o sistema métrico, consistindo em bases, vigas, conectores, engrenagens, etc.

O CLP é denominado Robo Interface. Possui portas de comunicação USB e Serial, além de poder ser conectada a outras interfaces. Possui portas de entrada e saída simples, às quais é possível conectar basicamente qualquer componente eletrônico que utilize fios, assim como o Arduino. A alimentação é feita por uma bateria recarregável de 9 V, que acompanha o kit.

A programação é feita em um ambiente próprio, o Robo Pro, utilizando a ideia de fluxogramas. De cara, recorda o Robolab, da Lego, que era usado principalmente para programar o RCX.

Primeiras impressões:

  • é necessário baixar um driver no site do fabricante para que a Robo Interface funcione no Windows 7. A maior parte das informações está em alemão e/ou inglês e nem sempre os links são muito claros.
  • não é fácil encontrar manuais na internet, mesmo que o kit seja vendido mundialmente.
  • a mecânica das montagens é simples, mas um simples erro em uma parte anterior faz com que você tenha que desmontar boa parte da montagem. Geralmente não é possível "abrir" a montagem na parte desejada.
  • é necessário montar bastante para acostumar-se a detalhes como o ângulo do deslizamento perpendicular no final de um bloco, por exemplo. Como nem sempre há indicações muito claras, faz-se comum essa confusão.
  • os motores não apresentam grande torque. Ou seja, é importante criar reduções para que robôs móveis possam satisfazer as expectativas.
  • o ambiente de teste no Robo Pro é bastante satisfatório ao interagir com o robô conectado.
  • é possível armazenar duas programações na Robo Interface. Entretanto, senti falta de um display.
Então, vamos aos desafios de 2012!

sábado, 3 de dezembro de 2011

Veículo Autônomo Brasileiro!

Que tal um carro que dirige a si mesmo? Já escrevi sobre esse assunto no blog Nossos Robôs (Carro Auto-guiado e Uma Volta num Veículo Autônomo), mas vale repetir aqui.

Vários pesquisadores, de empresas e universidades de muitos países, estão trabalhando nesse tema (inclusive a Google). Provavelmente você já ouviu falar no DARPA Gran Challenge, uma competição patrocinada pelo departamento de defesa dos Estados Unidos que tem por objetivo o desenvolvimento de veículos totalmente autônomos que possam percorrer grandes distâncias em ambientes não-estruturados. Devido à complexidade do problema, as instituições que participam dessas competições investem milhões de dólares na construção de cada veículo, muito mais que o valor do prêmio oferecido ao vencedor.

Basicamente, um carro auto-guiado é um robô móvel. O grande problema desse grande robô é que ele deve se mover num ambiente extremamente dinâmico e potencialmente perigoso! Por isso, saber localizar-se e conseguir definir suas próprias ações com precisão são características essenciais. 

Nesse contexto, o professor Rafael Vivacqua, meu colega no Campus Serra do IFES, está trabalhando num sistema de reconhecimento de imagens em tempo real para que veículos possam se localizar em ruas, avenidas e estradas. Seu trabalho é parte de sua tese de doutorado em Engenharia Elétrica na UFES. O sistema que ele desenvolveu faz o processamento da imagem capturada por uma câmera, posicionada no pára-brisas dianteiro do veículo, identifica a estrada, e decide qual deve ser o ângulo de giro do volante para manter o automóvel no caminho correto. 

Programa do veículo auto-guiado desenvolvido por Rafael Vivacqua.

Para funcionar em tempo real, o sistema foi todo programado em C++ utilizando a biblioteca OpenCV. As faixas da pista são detectadas por processamento da imagem capturada por uma câmera de alta resolução. Após o processamento, o sistema determina o ângulo que deve ter o volante para manter o automóvel no centro da pista (veja figura acima).

Rafael já realizou vários testes do sistema em condições reais. Para isso, montou uma câmera ao lado do espelho retrovisor interno de um veículo e conectou-a a um notebook que roda o programa que desenvolveu.

Para girar o volante no ângulo correto, ele acoplou um dispositivo mecânico ao volante, controlado por um motor de passo cujo giro é controlado pelo sistema de reconhecimento da pista. O motor de passo é acionado diretamente pelo programa através de uma placa Lauch Pad, com microcontrolador MSP430, que recebe comandos do computador.

No vídeo abaixo o próprio Rafael explica brevemente sobre o funcionamento do sistema. O vídeo também mostra um rápido teste realizado numa estrada no momento em que não havia trânsito, por questões de segurança. Eu tive de colocar uma música de fundo na parte do teste, pois alguns palavrões escaparam com a emoção. :-)




Vale notar que o sistema permite que o motorista faça interferências a qualquer momento, e o próprio Rafael se manteve ao volante durante todo o teste.

Gostaria de registrar a divulgação da notícia sobre o desenvolvimento do carro, que foi veiculada por grandes meios de comunicação do Espírito Santo. O vídeo a seguir mostra a entrevista veiculada no programa Bom Dia ES, na TV Gazeta, em 01/12/2011:

 


Alguns dos vídeos que aparecem aí (do Rafael não dirigindo) foram feitos por mim! :-)

No mesmo dia a notícia também foi veiculada na rádio e na internet. Aqui você pode ler a reportagem publicada no jornal e escutar a reportagem veiculada na rádio CBN Vitória.

Mais uma vez, deixo meus parabéns ao Rafael pelo excelente trabalho!

Até a próxima!

Referências:
http://video.globo.com/Videos/Player/Noticias/0,,GIM1715148-7823-CAPIXABA+DESENVOLVE+PROGRAMA+PARA+PILOTAR+CARRO+SEM+MOTORISTA,00.html
http://gazetaonline.globo.com/index.php?id=/_templates/mobile/agazeta/materia.php&cd_matia=1045031&xml=/_conteudo/2011/12/noticias/cbn_vitoria/reportagem/1045031.xml