UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
Uma Arquitetura Distribu´ıda de Hardware e
Software para Controle de um Robˆ
o M´
ovel
Autˆ
onomo
Ricardo de S. Britto
rbritto@dca.ufrn.br
Orientador: Adelardo A. D. Medeiros
adelardo@dca.ufrn.br
UFRN - Universidade Federal do Rio Grande do Norte - UFRN
DCA - Departamento de Engenharia de Computa¸
c˜
ao e Automa¸
c˜
ao
LAR - Laborat´
orio de Rob´
otica
Sum´
ario
1
Introdu¸c˜
ao
2
Arquitetura Proposta
Blackboards
Robot
3
Organiza¸
c˜
ao de Controle Proposta
4
Resultados Experimentais
5
Conclus˜
oes e Trabalhos Futuros
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
Arquitetura de Controle
Como coordenar os recursos de hardware e software de um
robˆ
o de forma a permit´ı-lo interagir com o mundo que o
cerca?
Arquitetura de Controle
Solu¸
c˜
ao
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
Arquitetura de Controle
Caracter´ısticas:
Habilitar um robˆ
o m´
ovel autˆ
onomo a operar em seu ambiente
utilizando-se de seus recursos f´ısicos e computacionais.
Assegurar o cumprimento das tarefas do robˆ
o de maneira
est´
avel e robusta.
Deve ser flex´ıvel e modular.
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
Motiva¸c˜
ao
A inexistˆ
encia de uma arquitetura de controle para o robˆ
o
Kapeck, LAR-DCA-UFRN torna dificulta o uso deste robˆ
o
como plataforma para desenvolvimento de pesquisas no
ˆ
ambito da rob´
otica.
O desenvolvimento de uma arquitetura de hardware e software
para controle do robˆ
o Kapeck, de modo a tornar este robˆ
o um
ambiente prop´ıcio para desenvolvimento de pesquisas em
rob´
otica constitui-se na maior motiva¸
c˜
ao deste trabalho.
Objetivos
Defini¸c˜
ao de uma Arquitetura de Hardware e Software de
baixo custo para controle do robˆ
o Kapeck.
Desenvolvimento de uma base de software que permita a
utiliza¸c˜
ao do Kapeck como plataforma para pesquisas futuras.
Implementa¸
c˜
ao de uma organiza¸c˜
ao de controle para
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
Robˆ
o Kapeck
Robˆ
o multi-tarefa
n˜
ao-holonˆ
omico com
acionamento diferencial.
Dois manipuladores com 5
graus de liberdade.
Cabe¸ca est´
ereo com duas
cˆ
ameras.
Colar com 8 sonares.
19 motores CC.
Robˆ
o Kapeck
Restri¸c˜
oes:
Muitos Sensores e Atuadores.
Muitos processos concorrentes
Baixos per´ıodos de amostragem.
Solu¸
c˜
ao
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
Arquitetura de Hardware
HD IDE 20 GB Linux Fedora 5 kapeck2 128 MB RAM SC−60 Cameras HD IDE 20 GB Linux Fedora 5 Ethernet IEEE 802.11b kapeck1 256 MB RAM Athlon 64 2GHz HD IDE 40 GB Linux Fedora 5 Monitor 1GB RAM Frame Grabber PCI...
Sonar 1 Sonar 8 PentiumIII 1GHz PentiumIII 1GHz Encoder Motor Encoder Motor Barramento CAN Placa USB−CAN MicrocontroladaPlaca Placa Placa Microcontrolada Microcontrolada e e 1A 7A
...
Caracter´ısticas:
Processamento distribu´ıdo:
Microprocessadores
Microcontroladores
Barramento CAN.
Rede Ethernet.
Arquitetura de Software
blackboard :
bBoard.
bBoardAtt.
bBoardRe.
bBoardServer.
robot.
periodic.
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE Blackboards
bBoard
do Sistema Módulo de Software bBoard Inicializador Módulo bBoardAttCaracter´ısticas:
Criam e destroem ´
areas de
mem´
oria compartilhada.
Gerenciam seu acesso em
exclus˜
ao m´
utua via
sem´
aforos.
Blackboards
bBoardAtt, bBoardRe, bBoardServer
Modulo X Modulo Y socket tcp socket tcp PC−2 bBoardAtt bBoardAtt bBoardRe bBoardRe PC−1 bBoardServer bBoardServer
Caracter´ısticas:
bBoardAtt: acopla `
a
blackboards j´
a criados.
Fornece as primitivas de
leitura e escrita.
bBoardRe: semelhante
`
abBoardAtt, por´
em ´
e
utilizada para se acoplar a
blackboard remoto, via
bBoardServer.
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
Robot
Robot
Modulo 1
Modulo Modulo Modulo
2 3 4
Sensores−Atuadores
Rede de
busArbiter
Caracter´ısticas:
Barramento CAN l´
ogico.
Fornece modularidade e
reusabilidade `
a arquitetura.
Composi¸c˜
ao:
robot.
busArbiter.
Robot
Periodic
Linux standard n˜
ao ´
e um SO de tempo real.
Processos n˜
ao temporalmente previs´ıveis.
Periodic
Fornece primitivas que melhoram a previsibilidade temporal na
execu¸
c˜
ao dos processos que o utilizam.
Sincroniza so processos com a grade de execu¸
c˜
ao do Linux.
Faz com que os processos durmam apenas o tempo
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
Organiza¸c˜
ao de Controle
Instancia¸
c˜
ao de uma Arquitetura de Controle = Organiza¸c˜
ao
de controle
De modo a demonstrar o uso e viabilidade da arquitetura aqui
proposta, uma organiza¸
c˜
ao de controle foi implementada.
Esta organiza¸
c˜
ao utiliza todos os recursos de software e
hardware fornecidos pela arquitetura.
Organiza¸c˜
ao de Controle
Localizer Blackboard Blackboard bBoardServer busArbiter Cartographer Blackboard Blackboard Blackboard Blackboard Blackboard Blackboard trajExec IEEE 802.11b Ethernet Monitor kapeck2 Interface User bBoardServer Blackboard Blackboard Legenda − Blackboards − Computadores − Placas Microcontroladas visionSys Blackboard − Módulos de Software kapeck1 actionPl pathPl posCon Sonar Board 1A a 7A Controlador de Sonares Supervisor de Encoder Controlador de Velocidade Barramento CANUNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
Localizer
busArbiter kapeck1Legenda
− Blackboards − Computadores − Placas Microcontroladas − Módulos de Software 1A a 7A Sinal de Ação Posição do Robô Localizer Supervisor de Encoder Barramento CAN MapaCartographer
Cartographer Mapa kapeck1 busArbiterLegenda
− Blackboards − Computadores − Módulos de Software Sinal de Ação Barramento CANPlaca dos Sonares
Controlador do Robô
Posição
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
actionPl e pathPl
actionPl pathPl bBoardServer Posição do Robô Mapa Polinômio...
kapeck1 de AçãoSinalLegenda
− Blackboards − Computadores − Módulos de Software de AçãoSinaltrajExec
Legenda
− Blackboards − Modulos de Software − Computadores kapeck1 posCon Polinômio de ReferênciaPosição trajExecUNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
posCon
posCon do Robô Posição busArbiter pathExec kapeck1 1A a 7A de Ação SinalLegenda
− Blackboards − Computadores − Placas Microcontroladas − Módulos de Software Velocidade Controle Supervisor de Encoder Barramento CANvisionSys
Graber Frame
visionSys Visão Câmeras kapeck2 Sinal de Ação
Legenda
− Blackboards − Computadores − Hardware Dedicado − Módulos de SoftwareUNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
O Experimento
A tarefa do robˆ
o no experimento efetuado foi explorar um
ambiente conhecido a priori em busca de uma marca.
visionSys captura e processa imagens em busca da marca
Per´ıodo de amostragem de posCon ´
e 100 ms, compensado por
controle embarcado.
A¸c˜
oes Configuradas
As a¸c˜
oes configuradas no m´
odulo actionPl foram:
irCentro - Ir para centro de um ambiente n˜
ao-percorrido;
irAmbiente - Ir para um outro ambiente ainda
n˜
ao-percorrido;
irMarcar - Ir para a posi¸
c˜
ao da marca;
pararRobˆ
o - Parar o robˆ
o.
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
Trajet´
oria Percorrida pelo Robˆ
o
T5 T4 T1 T0 Legenda − Caminho Replanejado T3 T2 − Marca − Robô − Porta − Caminho Executado − Caminho Planejado Corredor Sala 01 Sala 02 Largura Comprimento
Grade de Execu¸c˜
ao dos M´
odulos de Software em Fun¸c˜
ao
do Tempo
actionPl
pathPl
Cartographer
Localizer
posCon
visionSys
T0
T1
T2
T3
T4
T5
GeraGera Gera Gera Gera
Localiza Robô
Localiza Robô
Velocidades
Calcula Calcula Calcula
Velocidades Calcula Velocidades Velocidades Calcula Velocidades Robô Localiza Robô Localiza Robô Localiza Processa Imagens Processa Imagens Processa Imagens Processa Imagens Exporta Posição
irCentro irAmbiente irCentro irAmbiente irMarca pararRobô
Caminho Caminho Caminho Caminho Caminho
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE
Conclus˜
oes e Trabalhos Futuros
As principais contribui¸
c˜
oes desse trabalho foram:
Ferramentas de software que permitem a programa¸c˜
ao de
m´
odulos de software distribu´ıdos.
Uma organiza¸
c˜
ao de controle que permite a realiza¸c˜
ao de
tarefas autˆ
onomas por um robˆ
o m´
ovel com rodas.
Conclus˜
oes e Trabalhos Futuros
Como pontos que podem ser melhorados neste trabalho, pode-se
citar:
A gerˆ
encia da rede de sensores e atuadores.
A implementa¸
c˜
ao dos m´
odulos de software da organiza¸c˜
ao de
controle.
O m´
etodo de comunica¸
c˜
ao entre o m´
odulo actionPl e os
outros m´
odulos da organiza¸
c˜
ao de controle.
UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE