Академический Документы
Профессиональный Документы
Культура Документы
Introduo
Robs autnomos so definidos como um conjunto de sistemas que realizam uma ou mais
tarefas sem um explcito ou contnuo controle humano e devido ao avano tecnolgico sua presena
est cada vez mais importante na sociedade. Desde pequenos insetos robticos at veculos no
tripulados para explorao de reas perigosas, a automao influencia grande inovaes
tecnolgicas. Medicina, segurana, fbricas e operaes de procura em ambientes distantes ou
inspitos so algumas das reas que tiveram um grande progresso por causa da robtica.
Uma das formas de criar um controle de um rob autnomo construindo um sistema de
viso. Neste tipo de modelo, ele capta informaes do meio externo, faz um processamento com
esses dados e se adapta para uma melhor resposta situao. No projeto anterior foi utilizado uma
placa arduino nano e uma cmera CMUCam4 para fazer a captura e o processamento da imagem,
o que demonstrou algumas limitaes.
No exemplo utilizado neste trabalho ser implementada uma cmera USB em um rob cujo
objetivo localizar uma pequena bola laranja, fazendo com que o rob se movimente at ela e a
chute para marcar pontos.
A viso computacional uma cincia recente que iniciou seus projetos em meados dos anos
70. Neste perodo, destacam-se os projetos Winston, P.H.,The Psychology of Computer Vision e
Minsky,Marvin, A Framework for Representing Knowledge, ambos de 1975. Com o
Objetivos e Metas
O objetivo deste trabalho a melhoria do sistema de viso utilizado por um rob humanoide
que ser usado na Robocup (futebol de robs). O atual sistema deste modelo possui muitas
limitaes, tanto em hardware como em software. A mudana da placa do microprocessador e da
cmera embarcada por uma USB com software OpenCV conseguir trazer resultados otimizados e
mais precisos para o tracking de objetos especficos.
O sistema embarcado utiliza uma lente de captura e um microcontrolador para o
processamento de imagens e para a automao da resposta dada pelo rob. A cmera utilizada ser
simples e barata, aplicvel a um sistema embarcado, e estar embarcada, ou seja, instalada em
um rob mvel (embedded system). No rob humanoide escolhido deve ser introduzido um sistema
eletrnico programvel que permita a interao com o sistema de captura. O sistema de automao
embarcado deve, alm disso, permitir a interao com o meio a partir do processamento das
imagens de forma a controlar o movimento do rob.
A cmera entrar em comunicao com uma placa Beaglebone Black que vai processar a
imagem desta e, observando padres RGB e quantidade de pixels confiveis, obter a posio
do humanoide em relao a um objeto. Como o rob bpede, seu equilbrio ao se movimentar
instvel. Operaes com giroscpio e acelermetro so essenciais para assegurar o estado em que
o humanoide se encontra servindo como sensores de posio.
A aquisio da imagem com a placa Beaglebone Black traz como vantagens uma
programao com linguagem de alto nvel e uma melhor anlise de dados, alm de sua entrada
HDMI permitir a visualizao em tempo real da imagem vista pelo rob. Por ser de uma gerao
mais nova, a placa permite a comunicao com modelos mais avanados de cmeras com qualidade
e resoluo melhores. Pelo fato de seu processamento ser mais rpido e mais completo, as aes
do humanoide tambm sero mais velozes e precisas, pontos chaves para a otimizao de sua
funo.
Material e Mtodos
Materiais utilizados
O rob humanoide utilizado o Robonova-1 (figura 1) produzido pela HiTec. O rob
contm 16 servomotores do tipo HSR-8498 e uma placa de controle MRC-3024 (figura 2). A placa
MRC-3024 contm um microcontrolador do tipo ATMEL ATMEGA 128 e programada por uma
interface em linguagem especfica do Robonova-1, o RoboBasic, a qual uma linguagem simples.
Por essa linguagem ser bsica e apresentar diversas limitaes, foi preciso utilizar outros recursos
para melhorar o controle do rob.
Figura 1 -Robonova-1.
Figura 2- MRC-3024.
O sistema de viso adotado no projeto composto por uma cmera embarcada (Webcam),
a qual pode ser vista na figura 3 e utiliza a biblioteca openCV. Foi implantado um sistema de
movimentao com 2 graus de liberdade (sistema pan-tilt), como pode ser visto na figura 4. Este
sistema utilizado para movimentao nos trs eixos de um espao, o que permite a liberdade de
movimentao necessria para a ao desejada. A cmera Webcam Microsoft LifeCam VX-800
utilizada entrar em comunicao com uma placa de processamento para esta processar a imagem
capturada e, observando padres RGB e quantidade de pixels confiveis, obter uma posio do
humanoide em relao bola laranja. As caractersticas desta cmera podem ser vistas na tabela 1.
Microsoft
Windows
8.1, Windows 8, Windows RT 8.1, Windows
RT
8,
and
Windows
7
Sistemas Operacionais:
Microsoft
OS
X
v10.7-10.9
Android 3.2 and 4.2
Caractersticas de imagem:
Resoluo:
Campo de viso:
59 diagonal
necessrias. O rob apresenta uma placa MRC-3024 que possui um microcontrolador ATMEL
ATMEGA 128 programada com uma linguagem especfica para o Robonova-1 chamada
ROBOBASIC. Essa linguagem tem grandes limitaes, como a no existncia de variveis tipo
indexada e a chamada de estruturas condicionais serem limitadas. Por essas limitaes, foram
realizadas pesquisas para a substituio da placa de controle por uma que tivesse uma programao
mais avanada. O desenvolvimento de uma nova placa de controle foi tema de pesquisas anteriores,
mas houve problemas na utilizao, o que levou a busca de novos mtodos de controle.
No projeto anterior, foi utilizada a placa Arduino no sistema de controle j existente, o que
trouxe grandes benefcios em programao e com baixo custo. Porm, este mtodo apresentou
diversas limitaes tcnicas e fsicas. A cmera previamente utilizada no era a melhor opo em
relao qualidade da imagem e sua utilizao deixava o controle menos prtico. A escolha por
uma nova placa de processamento otimizou o padro de processamento e aprimorou o sistema
embarcado. A placa retirou da MRC-3024 a necessidade de deciso de movimentos, que era bem
limitada, devendo manter apenas as rotinas de movimentao do Robonova-1. As rotinas de
movimentao da placa MRC-3024 apresentam importantes caractersticas, as quais no seriam
possveis serem reproduzidas no Beaglebone Black (figura 5) como o Grupo de Movimentos, que
tem a funo de garantir que todos os servomotores terminem um movimento ao mesmo tempo.
Tambm o controle de posies dos servomotores, o que garante a correta posio do rob a certo
comando. Outro ponto importante para se manter a placa MRC-3024 em conjunto com o
Beaglebone Black a grande quantidade de servomotores necessrios para a movimentao do
rob. A placa implementada no suporta 16 servomotores e no tem a capacidade de suprir
internamente a quantidade de corrente necessria para movimentar esses servos.
As caratersticas do modelo da placa podem ser vistas na Tabela 2.
Tabela 2- Informaes tcnicas do Beaglebone Black.
Processador
Memria Flash
RAM
Armazenamento
3.4 2.1
Capacidade GPIO
65 Pinos
Perifricos
rotao. Essa roda mantm uma posio fixa mesmo aps ser forada em uma determinada direo
no paralela. Atravs desse sistema pode se observar a direo do objeto em relao ao rotor, o que
permite a correta orientao do corpo. Para se obter as orientaes em um espao tridimensional
necessrio que haja 3 giroscpios em posies perpendiculares. J nos equipamentos eletrnicos,
o giroscpio usado da categoria MEMS (Microelectromechanical systems) ou at mesmo NEMS
(Nanoelectromechanical systems), que so dispositivos extremamente pequenos (nanotecnologia)
e que so muito utilizados em equipamentos de eletrnica embarcada, como automveis e avies.
Os giroscpios do tipo MEMS utilizam o conceito de Pndulo de Foucault (experincia baseada na
movimentao de um pndulo sendo modificada pela rotao da terra) e usam elementos
vibratrios.
Em conjunto, o giroscpio e o acelermetro constituem a base do IMU (Inercial
Measurement Unit), o qual um equipamento eletrnico capaz de medir a acelerao, orientao
e direo do movimento. Podem ser integrados GPS, magnetmetros e at tubos de Pitot, para um
completo controle de movimento no espao. No Robonova-1, o giroscpio e o acelermetro sero
responsveis pelo equilbrio do rob e a correta percepo do seu estado em relao ao desejado.
Outro aspecto importante perceber quando o rob est cado e como ele est cado. Atravs dos
dois sensores poderemos determinar sua posio e agir para levant-lo de forma adequada.
Projeto e testes
O controle ser baseado em etapas de processamento nas quais so necessrias
comunicaes bilaterais. Abaixo est o esquema simplificado do sistema de controle atravs da
figura 6.
movimento de Tilt (rotao no eixo x). Quando a cmera no consegue mais observar o objeto,
esta volta posio inicial e comea a procur-lo. Se a bola no foi encontrada, enviado um
cdigo para o rob girar para o lado at achar o objeto.
O sistema de deciso de comando baseia-se em regras de movimentao definidas. Quando
o programa decide uma ao, a placa envia um byte para MRC-3024 que representa a ao
desejada. Esse cdigo representado pelo cdigo ASCII de 0 a 8, como visto a seguir pela tabela
3.
Tabela 3 Cdigos de movimentao.
Ao
Posio inicial
Andar para Frente
Andar para Trs
Virar para Direita
Virar para Esquerda
Passo para Direita
Passo para Esquerda
Levanta (Costas)
Levanta (Frente)
ASCII
0
1
2
3
4
5
6
7
8
Decimal
48
49
50
51
52
53
54
55
56
Binrio
0011 0000
0011 0001
0011 0010
0011 0011
0011 0100
0011 0101
0011 0110
0011 0111
0011 1000
Resultados e Discusso
A nova cmera embarcada mostrou melhorias para captar imagens da bola a maiores
distncias. Ainda existe o problema de luminosidade do ambiente, mas com a aquisio da nova
placa de controle podem-se utilizar cmeras com melhores resolues, permitindo um
reconhecimento aprimorado de imagens.
O sistema de controle mostrou eficincia na transmisso de dados. Foi observada uma certa
dificuldade para rodar softwares e reproduzir as funes certas, mas apesar disso a placa conseguiu
identificar o objeto e realizou o processamento como esperado.
H a necessidade futura de haver uma integrao dos sensores giroscpios e acelermetros
na estrutura do rob. Ainda no houve a integrao dos sensores no rob e nem o correto
aproveitamento dos resultados para uma melhor movimentao. Os dois sensores possuem papel
fundamental para se ter uma movimentao estvel, mas no foi possvel implementar no atual
projeto.
Os testes com o sistema Pan-Tilt ainda no foram realizados com os novos equipamentos,
mas no projeto anterior (Arduino Nano + CMUCam4) a integrao deste modelo com o sistema
funcionou corretamente, obtendo velocidades altas ao perseguir o objeto em movimento.
Concluses
Referncias Bibliogrficas
KIKUCHI, D. Y. Sistema de controle servo visual de uma cmera pan-tilt com rastreamento de
uma regio de referncia, Tese (Mestrado) Escola Politcnica, Universidade de So Paulo, So
Paulo, SP, 2007.
GONZALES, R. C., WOODS, R. E. (2000) Processamento de Imagens Digitais. Edgard Blcher
Ltda.
ROWE, A. (2003) ROBONOVA-I 16 Servo Edutainment Robot Box Kit Introduction Manual.
Edited by Charles Rosenberg and Illah Nourbakhsh, Carnegie Mellon University.
Assis, W. O.; Genova, W. J.; Gomes, M. M.; Coelho, A. D. (2007) Aplicao de Tecnologias de
Controle de Processos Contnuos e Processamento de Imagens no Futebol de Robs. Anais do SBAI
2007 Simpsio Brasileiro de Automao Inteligentes, Florianpolis, SC, Brasil.
Jcobo, J. E. A. (2001) Desenvolvimento de um Rob Autnomo Mvel Verstil utilizando
Arquitetura Subsumption. Universidade Estadual de Campinas; Faculdade de Engenharia
Mecnica; Departamento de Mecnica Computacional, Campinas, SP.
BALLET, R. ; COELHO, Alessandra Dutra ; ASSIS, W. O. . Integrando Tecnologias em Sistema
de Controle de Movimentao de Rob Humanide com Cmera Embarcada. 4. Seminrio Mau
de Iniciao Cientfica, So Caetano do Sul, SP, 2012.
http://pedrogarcia12av1.wordpress.com/about/robos-autonomos/
http://gizmodo.uol.com.br/video-robos-autonomos/
http://computervision.wikia.com/wiki/Computer_Vision
http://computacaografica.ic.uff.br/transparenciasvol2cap3.pdf
http://www.eie.polyu.edu.hk/~enyhchan/imagef.pdf
http://www.cs.dartmouth.edu/farid/downloads/tutorials/fip.pdf
ftp://qiftp.tudelft.nl/DIPimage/docs/FIP.pdf
http://www.dpi.inpe.br/
http://sergioprado.org/beaglebone/
http://beagleboard.org/
http://elinux.org/ECE597_Opencv_on_the_BeagleBoard
http://derekmolloy.ie/beaglebone/
http://webpages.shepherd.edu/ccrite03/Project%20Website/index.html
http://www.inape.org.br/colunas/fisica-conceito-historia/pendulo-foucault