Buscar

SBAI05-14214

Prévia do material em texto

VII SBAI/ II IEEE LARS. São Luís, setembro de 2005 
 
O TIME POTI DE FUTEBOL DE ROBÔS DA UFRN 
 Auciomar C. T. de Cerqueira1, Filipe C. de A. Lins1, 
Jonathan P. P. Pereira1, Pablo J. Alsina1, Adelardo A. D. Medeiros1 
 
goi, campos, jonathan, pablo, adelardo@dca.ufrn.br 
 
 
1Universidade Federal do Rio Grande do Norte 
Departamento de Engenharia de Computação e Automação 
UFRN-CT-DCA – Campus Universitário – 59072-970 Natal-RN Brasil 
 
 
 
 
 
ABSTRACT 
This paper presents POTI, the robot soccer team developed 
by DCA-UFRN. We present some construction aspects of 
the overall structure, the robots and the transmitters, as well 
as some implementation characteristics of the perception, 
strategy definition and robot control modules. 
KEYWORDS: Robot soccer, Poti. 
RESUMO 
Este artigo apresenta a equipe POTI, desenvolvida pelo 
DCA-UFRN para disputa de jogos de futebol de robôs. São 
apresentados alguns aspectos de construção da estrutura do 
jogo, dos robôs e dos transmissores, além de algumas 
características de implementação dos módulos de 
percepção, definição de estratégia e controle dos robôs. 
PALAVRAS CHAVES: Futebol de robôs, Poti. 
1 INTRODUÇÃO 
A equipe POTI de futebol de robôs foi desenvolvida no 
DCA-UFRN [Yamamoto et al., 2004], sendo composta de 
três robôs principais e três robôs reservas. Para auxiliar o 
desenvolvimento dos módulos e facilitar os testes, foi 
também implementado um simulador em tempo real 
[Yamamoto et al., 2003].para o futebol de robôs, com as 
características específicas da equipe POTI 
A maior parte do processamento é realizada externamente, 
em computadores que se comunicam com os robôs via 
rádio. Podemos dividir o sistema como um todo em cinco 
módulos: robô, percepção, estratégia, controle e comunica-
ção. Este esquema pode ser visto na figura 1. 
 
Figura1: Arquitetura do Sistema de futebol de robôs. 
Os aprimoramentos mais recentes na equipe POTI, 
descritos neste artigo, visam incorporar maior robustez aos 
sistema de percepção, estratégia e controle. 
2 OS ROBÔS 
Os robôs da equipe foram construídos em acrílico de modo 
a não ultrapassar as dimensões de um cubo com aresta de 
7,5cm (figura 2). 
 
Figura 2: Robô. 
VII SBAI/ II IEEE LARS. São Luís, setembro de 2005 2
O sistema de tração de cada robô é composto por dois 
motores DC e duas rodas de raio 3,3cm, que estão em 
contato direto com os motores (acionamento direto). Sem as 
engrenagens de redução, o jogador apresenta uma boa 
velocidade final, mas sua controlabilidade fica prejudicada. 
Cada robô possui ainda um receptor FM Radiometrix RX2, 
responsável pela captura das informações enviadas pelo 
computador, e um microcontrolador PIC16F876, além de 
oito pilhas 1,2V e diversos componentes discretos. Para o 
acionamento dos motores é utilizado um circuito integrado 
L293 que possui duas pontes-H. O microcontrolador gera a 
modulação em largura de pulso (PWM), necessária para 
aplicar ao motor a tensão solicitada. 
3 SISTEMA DE PERCEPÇÃO 
O sistema de aquisição da imagem é constituído de uma 
estrutura de iluminação e uma câmera, localizados acima do 
campo (figura 3) e de uma placa de aquisição de imagem 
National PCI 1411, que fornece uma imagem a uma taxa de 
30 quadros por segundo. A superfície do campo é preta, a 
bola é de cor laranja e cada robô possui obrigatoriamente 
um rótulo azul ou amarelo, indicando o seu time. No nosso 
caso, um segundo rótulo nas cores verde, rosa e ciano 
distingue os jogadores. 
 
Figura 3: Estrutura de iluminação e câmera. 
 
Figura 4: Configuração das cores do jogo. 
O sistema de percepção deve enfrentar dois desafios 
principais, a serem rapidamente resolvidos em tempo real: 
• fazer a segmentação da imagem; 
• uma vez segmentada, etiquetar os objetos. 
3.1 Segmentação 
A segmentação de uma imagem consiste em reconhecer se 
um determinado pixel faz parte de um objeto (robô ou bola) 
ou do campo. Para isso duas filosofias foram testadas: 
• limiar de luminância; 
• desvio em relação a uma imagem padrão. 
3.1.1 Limiar de luminância 
Como o campo é majoritariamente preto, a luminância 
(média das componenentes R, G e B) dos seus pixels é 
baixa. Portanto, para fazer a segmentação, basta que se 
defina um limiar de luminância, abaixo do qual um pixel é 
considerado como pertencente ao campo. A limitação desta 
abordagem é que as linhas brancas de marcação do campo 
não poderão ser separadas dos objetos (figura 5). 
 
Figura 5: Imagem segmentada com limiar de luminância. 
3.1.2 Comparação com imagem padrão 
Inicialmente são adquiridas 100 imagens do campo vazio. 
Para cada pixel computam-se os valores médios e os 
desvios padrão de suas componentes RGB. O limiar RGB é 
o número de desvios padrão, que define faixas em torno dos 
valores médios RGB de cada pixel do campo vazio. Pixels 
dentro destas faixas serão considerados como campo. A 
limitação desta técnica é que alguns pixels próximos aos 
objetos são incluídos no objeto (figura 6). 
 
Figura 6: Imagem segmentada com limiar RGB. 
VII SBAI/ II IEEE LARS. São Luís, setembro de 2005 3
3.1.3 Estratégia adotada 
Para a solução destes problemas utilizou-se a conjunção das 
duas abordagens anteriores. Apenas os pixels considerados 
como pertencentes a algum objeto em ambos os casos serão 
considerados como tal. Isto permite segmentar eficiente-
mente a imagem. (figura 7). 
 
Figura 7: Imagem segmentada. 
3.2 Etiquetagem 
Etiquetar um objeto consiste em identificá-lo como sendo 
um dos robôs ou a bola. Cada imagem adquirida pela placa 
de aquisição é percorrida a procura de pixels que sejam 
segmentados como pertencentes a objetos. Caso isso ocorra, 
é feita uma busca na sua vizinhança, a fim de se encontrar 
mais pixels que sejam deste mesmo tipo, formando assim 
uma região (conjunto de pixels vizinhos segmentados como 
objetos). Então, cada uma delas é rotulada com a sua 
coordenada central, com a sua quantidade de pixels e com 
sua cor média (valor médio RGB dos pixels da região). 
Durante a calibração, conforme se verá a seguir, foram 
definidos valores RGB nominais (centróides) para cada um 
dos objetos que participam do jogo. Durante a execução, 
calcula-se a distância euclidiana da cor média da região 
para cada um dos centróides de cor calculados na calibração 
off-line. A cor do centróide menos distante do valor médio 
RGB será a etiqueta de cor da região. 
Uma vez rotuladas, as regiões são co-relacionadas: aquela 
que apresentar uma cor mais próxima do centróide laranja 
será a bola; os rótulos amarelos nunca podem ser agrupados 
com os azuis para representar um robô, pois identificam 
times diferentes; regiões distantes não podem representar 
um robô, pois estes possuem uma dimensão limitada de 
7,5cm. Seguindo essa linha de raciocínio, obtém-se no final 
deste módulo a localização de cada objeto, a qual será 
usada no desenvolver da estratégia. 
3.3 Calibração off-line 
Antes do início da partida, alguns dados são coletados por 
um programa separado do sistema principal. Através de 
clicks, o usuário informa quais são os pontos notáveis do 
campo na imagem adquirida (pixels que delimitam o campo 
e as quinas da área), bem como os dois limiares utilizados 
na segmentação. Os pontos notáveis, além de delimitarem a 
região de varredura da imagem em tempo real, permitem 
calibrar os parâmetros intrínsecos e extrínsecos da câmera, 
tornando precisa a conversão de pixels para centímetros. 
Além disso, o usuário fornece a etiqueta de cor de cada 
região segmentada em uma imagem inicial, que deve conter 
todos os robôs e a bola. A partir destas etiquetas fornecidas 
são calculados os centróides de cada região, a serem 
utilizados durante a fase de etiquetagem em tempo real. 
4 ESTRATÉGIA 
A estratégia desenvolvida [Yamamoto, 2005] baseia-se no 
conceito de papéis [Stone and Veloso, 1999]. 
Determinamos um conjunto pré-definido de papéis, tais 
como goleiro, alinhar, chutar e conduzir, e atribuímos 
dinamicamente estes papéis aos jogadores. O princípiogeral da estratégia é que o robô mais próximo do gol faça o 
papel de goleiro, o jogador mais próximo da bola assuma o 
papel de alinhar, chutar ou conduzir e o terceiro robô tenha 
diferentes papéis, como defender ou esperar. O robô com o 
papel goleiro se posiciona em frente ao gol do próprio time. 
O robô mais próximo da bola tenta se posicionar para 
colocá-la entre ele e o gol adversário; quando o consegue, 
pode chutar a bola (se estiver no ataque) ou conduzi-la 
(caso esteja na defesa). O terceiro robô pode tomar ações 
distintas de acordo com a situação do jogo. Se o time 
estiver ganhando, ele se posicionará no campo de defesa 
tentando bloquear a bola. Já se o time estiver perdendo, ele 
atuará como um segundo atacante, posicionando-se para 
aproveitar as bolas perdidas. 
5 CONTROLE 
A partir das referências geradas pelo módulo de estratégia, 
o controle calcula as tensões a serem enviadas aos motores. 
A estratégia adotada [Vieira et al., 2004] se baseia em uma 
modelagem linear dos robôs, o que permite a adoção de 
técnicas clássicas de controle. 
 
Figura 8: Controladores angular e linear do robô. 
De forma resumida, a abordagem adotada se baseia na 
separação do controle de posição em dois controladores 
independentes: um controlador angular e um controlador 
VII SBAI/ II IEEE LARS. São Luís, setembro de 2005 4
linear, conforme indicado na figura 8. O controlador 
angular se preocupa em apontar o robô para a referência 
desejada, enquanto o controlador linear procura posicioná-
lo, ao longo da reta que coincide com sua orientação atual, 
no ponto R mais próximo da referência desejada. 
6 SISTEMA DE COMUNIÇÃO 
Os módulos transmissores possuem um transmissor FM 
Radiometrix TX2, um microcontrolador PIC16F877, uma 
antena e componentes discretos. A informação é recebida 
do computador através da porta paralela e serializada pelo 
PIC. A taxa de transmissão é de 9.600Kbps. O protocolo de 
comunicação com os robôs envia ciclicamente um start 
byte seguido de seis bytes que contêm o valor das tensões 
desejadas para os dois motores de cada um dos três robôs 
do time. Em cada byte de velocidade, o primeiro bit indica 
o sentido de rotação do motor e os sete bits restantes o valor 
da tensão a ser aplicada, em percentual da tensão máxima. 
Cada robô leva em conta apenas os dois bytes que lhe 
dizem respeito. 
7 CONCLUSÃO 
A equipe POTI foi inteiramente projetada e construída 
localmente, com custos bastante reduzidos (exceto pela 
placa de aquisição de imagens). Alguns aspectos que se 
mostraram importantes para o bom resultado do projeto 
foram a redução de ruídos elétricos nos robôs, a calibração 
inicial do sistema de visão e o tratamento de situações 
especiais (bola presa, quinas, etc.) na estratégia. Várias 
modificações e inovações foram feitas desde o início do 
projeto. No momento é investigada a possibilidade de 
incorporação de mecanismos de aprendizado ao sistema. 
REFERÊNCIAS 
Stone, P. and Veloso, M. (1999). Task decomposition, dy-
namic role assignment and low-bandwidth commu-
nication for real-time strategic teamwork. Artificial 
Intelligence, 110(2):241-273. 
Vieira, F. C., Medeiros, A. A. D., Alsina, P. J., and Araújo 
Jr., A. P. (2004). Position and orientation control of 
a two-wheeled differentially driven nonholonomic 
mobile robot. In Submitted to ICINCO - Internatio-
nal Conference on Informatics in Control, Automa-
tion and Robotics, Setúbal, Portugal. 
Yamamoto, Marcelo M. (2005). Planejamento Cooperativo 
de Tarefas em um Ambiente de Futebol de Robôs. 
Dissertação de Mestrado defendida junto à UFRN, 
Natal, RN, Brasil, 08/2004. 
Yamamoto, Marcelo M.; Araújo Jr., Antônio P.; Alsina, 
Pablo J.; Medeiros, Adelardo A.D. A equipe POTI 
de futebol de robôs (The POTI team of robot soc-
cer). I JRI - Jornada de Robótica Inteligente. Salva-
dor, BA, Brasil, 08/2004. 
Yamamoto, M. M., Pedrosa, D. P. F., and Medeiros, A. A. 
D. (2003). Um simulador dinâmico para mini-robôs 
móveis com modelagem de colisões. In SBAI – Sim-
pósio Brasileiro de Automação Inteligente, Bauru, 
SP, Brasil.

Continue navegando