Desenvolvimento de um Robô Autônomo Móvel
por Sérgio Roberto Gonsalves Tourino
Durante o período de agosto-98 a julho-99 trabalhei no desenvolvimento
de um robô móvel (ainda sem nome, o coitado...), para uma bolsa de Iniciação
Científica PIBIC.
A seguir mostro alguns resultados obtidos nesse período, incluindo a construção
do robô e o algoritmo de navegação desenvolvido.
1. Construção
O robô foi construído no laboratório SG-9 do Departamento
de Engenharia Mecânica da Universidade de Brasília.
Sua estrutura baseia-se na modularização vertical, contendo em cada "andar" os seguintes componentes:
Motores, sensores e fonte de energia;
Computador PC (controlador);
Os motores utilizados são motores de passo obtidos de impressoras matriciais, acoplados às rodas
(de aeromodelos) por meio de engrenagens plásticas (redução de 5:1). A interface de controle dos
motores é realizada através da porta paralela do computador. Os sensores são "antenas" ligadas a
chaves liga-desliga, enviando sinais através da porta paralela.
O computador PC utilizado é um Pentium 90 com 32 MB e sistema operacional Linux,
sendo programado na linguagem C.
A seguir tem-se algumas fotografias do sistema implementado:
|
Na figura ao lado podemos ver a estrutura geral do robô móvel. No "andar" inferior pode-se
ver os sensores, o sistema de locomoção e os circuitos eletrônicos de controle dos motores
e dos sensores. No "andar" superior temos a placa mãe do Pentium.
|
|
Nesta figura observa-se o sistema de transmissão desenvolvido, com os motores de passo
(1.8o por passo) acoplado ao eixo da roda através de uma redução.
|
|
Nesta figura pode-se observar o robô em seu ambiente de testes, assim como as suas dimensões
em relação aos demais objetos.
|
2. Características do Robô
- Dimensões físicas:
- Altura: 33 cm;
- Diâmetro: 42 cm;
- Peso: 7 Kg;
- Cinemática:
- Direção através do controle diferencial dos motores;
- Redução de 5:1;
- Velocidade: 3.3 m/min;
- Motores de passo: 1.8o por passo;
- Energia:
- Fonte de tensão ligada à rede por cabo (6m), provendo +5V para
os motores;
- Controle e alimentação dos motores através de circuito
baseado no chip ULN 2003A e transístores TIP 120;
- Sensores:
- Sensor de toque (chave liga-desliga) na forma de antenas;
- Sinais recebidos pela porta paralela (TTL +5V);
- Computador:
- Pentium 90, 32 MB;
- Sistema operacional Linux;
- Programação em linguagem C;
- Comunicação à rede via cabo;
3. Algoritmo de Navegação
O algoritmo desenvolvido baseia-se na teoria de Escoamento Potencial, da mecânica dos fluidos.
Os obstáculos são modelados como fontes (repelindo o robô) e vórtices (desviando o robô).
O objetivo do robô é modelado como um sorvedouro (atraindo o robô). Através do princípio da
superposição o movimento do robô é calculado a cada ponto, sendo então gerada a trajetória.
A seguir podem ser vistas simulações realizadas através do MatLab.
|
Na figura ao lado vemos a simulação para obstáculos conhecidos (através de sensores de longa distância).
Os obstáculos foram gerados aleatoriamente pelo MatLab.
|
|
Nesta figura temos a simulação para obstáculos desconhecidos, ou seja, reconhecido pelo
sistema apenas no momento da colisão (sensores de toque). O obstáculo real é o retângulo, enquanto
os pequenos círculos em sua superfície são os obstáculos virtuais gerados pelo algoritmo.
|
4. Desenvolvimentos Futuros
- aumento da velocidade do robô, através da mudança do sistema de transmissão;
- redefinição da estrutura do robô, com o objetivo de reduzir o seu peso;
- utilização de uma câmera CCD como auxílio à teleoperação, ou mesmo para a visualização do funcionamento do sistema;
- melhora do algoritmo de navegação, com a aplicação do mesmo para geração de trajetórias em um ambiente com obstáculos móveis;
- implementação de um sistema de baterias, assim como um sistema de comunicação através de rádio;
5. Referências
-
JONES, Joseph L. FLYNN, Anita M. SEIGER, Bruce A.
Mobile Robots: Inspiration to Implementation
A. K. Peters
U.S.A.
1999.
-
GADRE, D.
Programming the Parallel Port: Interfacing The PC for Data Acquisition and Process Control.
R & D Publishing.
1998.
-
BARRET, Martin L.
C and UNIX: Tools for Software Design.
J Wiley.
New York.
1996.
-
BENPORAD, A. DE LUCA, A. ORIOLO, G.
Local Incremental Planning for a Car-Like Robot Navigating among Obstacles.
Proceedings of the 1996 IEEE.
Mineapolis.
April
1996.