Você está na página 1de 12

Mecnica Computacional Vol XXXI, pgs.

3501-3512 (artculo completo)


Alberto Cardona, Paul H. Kohan, Ricardo D. Quinteros, Mario A. Storti (Eds.)
Salta, Argentina, 13-16 Noviembre 2012

UMA FERRAMENTA COMPUTACIONAL PARA MANIPULAO


DE UM BRAO ROBTICO
Sildenir A. Ribeiroa, Alexandre S. de Limab, Luciana F. Almeidac
abc

Centro Federal de Educao Tecnolgica do Rio de Janeiro (CEFET-RJ) Coordenao de


Automao Industrial, Rio de Janeiro RJ, Brasil, asildenir.ribeiro@cefet-rj.br,b alima@cefetrj.br,cluciana.almeida@cefet-rj.br

Palavras Chave: Brao robtico, Cinemtica direta, Modelagem computacional,


Ferramenta computacional.
Resumo: Este trabalho tem por objetivo apresentar um framework para manipular um brao robtico
atravs de coordenadas fornecidas em uma interface grfica que permite a interao entre o usurio e
o componente mecnico. Com o ambiente computacional proposto, o usurio ir controlar e executar
os movimentos do brao robtico a partir de coordenadas fornecidas ou atravs de sinais disparados
em setas direcionais usando interface grfica com o operador, cliques do mouse pelo operador. O
sistema permitir tambm o armazenamento das ltimas aes, constituindo assim, uma base de
histricos e uma funo para impresso e visualizao de relatrios. Os processos que conduziram o
desenvolvimento desta ferramenta envolvem as seguintes etapas: a modelagem do sistema usando os
diagramas de caso de uso, classes, interao e seqncia da UML 2.0 (Unified Modeling Language),
a elaborao dos clculos matemticos da cinemtica direta com trs graus de liberdade para
representar os movimentos do brao robtico e a implementao da ferramenta computacional
usando a linguagem Java com o ambiente de desenvolvimento Eclipse.

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

3502

S.A. RIBEIRO, A.S. DE LIMA, L.F. ALMEIDA

1. INTRODUO
O eminente crescimento da demanda de automao nos processos industriais tem
aumentado significativamente a necessidade de componentes robticos (mecnicos,
eletrnicos e eletromecnicos) nas linhas de produo. Alm disso, os robs so mais
precisos e podem executar tarefas de maneira muito mais eficaz que o homem (Bonacorso,
2009), tornando inevitvel a substituio do processo manual pelo processo automatizado
para assim, atender a demanda em larga escala por produtos manufaturados. Atualmente as
corporaes esto buscando uma produo de bens de consumo extremamente gil e
eficiente, com reduo dos custos produtivos e que atendam as exigncias dos
consumidores. Para garantir que estas metas sejam atendidas, a utilizao de braos
robticos e demais produtos mecatrnicos se fazem necessrios no processo de automao
das linhas de produo, atribuindo agilidade e um baixo custo no processo produtivo. O
brao robtico o equipamento ideal para suprir as carncias de mo-de-obra especializada,
podendo ainda ser construdo para assumir tarefas e fins especficos. Contudo, o auxlio
computacional neste processo essencial e primordial, uma vez que as ferramentas
computacionais para a manipulao destes componentes robticos promovem maior
flexibilidade, conforto e segurana, tanto para o equipamento quanto para o operador. Isto se
d, devido reduo da exposio e do contato direto do operador, reduzindo
consideravelmente o risco de acidentes e aumentando o tempo de vida til do equipamento
com a eliminao dos processos incorretos e do mau uso.
2. REVISO BIBLIOGRFICA
Durante a reviso sistemtica, necessria para a elaborao e construo deste trabalho,
foram observadas vrias aplicaes relacionadas construo de ferramentas
computacionais que auxiliam a operao de componentes robticos. Dentre as principais,
so destacados aqui os trabalhos que possuem uma correlao direta com esta pesquisa,
como: a grid computacional para controle de um rob, proposto por (Vialle, et. al, 2005), a
avaliao de uma interface grfica para controlar um brao robtico, de (Lafont et. al,
2009), a ferramenta visual para aprendizado suportado por computador, usando um rob
para planejar os movimentos, desenvolvido por (Elnagar & Lulu, 2004), o modelo e o
design heterogneo para controle de brao robtico, de (Yordn-Nones, 2003), o trabalho de
concepo e desenvolvimento de coordenadas baseado em brao robtico autnomo,
realizado por (Patel et. AL, 2011) e o desenvolvimento de um software para a cinemtica e
anlise de um brao robtico, construdo por (Koyuncu & Gzel, 2008). Outros trabalhos
como: (Barros et. al, 2011), (Ghader, 1992), (Will 2004), (Simes & Richetti, 2003),
(Narangoda, 2012) tambm serviram de orientao e inspirao para a concluso desta
pesquisa.
3. ARQUITETURA E MODELAGEM DA FERRAMENTA
Para representar o modelo arquitetural do software para manipular o brao robtico, foi
elaborado um conjunto de diagramas a partir das representaes dispostas na UML-Unified
Modeling Language, proposta por (Booch, et. al 1998). A UML foi escolhida para
representar os padres de processos de construo e execuo do software devido ao
dinamismo de seus diagramas (Coad & Youydon, 2007), alm da relativa flexibilidade e da
fcil adaptabilidade ao modelo do software, aqui proposto. Essencialmente, optamos por
construir somente quatro diagramas: 1 - Diagrama de casos de uso, 2 - Diagrama de classes,
3 - Diagrama de seqncia, e 4 - Diagrama de atividades da UML, os quais julgamos

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

Mecnica Computacional Vol XXXI, pgs. 3501-3512 (2012)

3503

suficientes para modelar o framework e representar as interaes do software com o brao


robtico.
3.1 Diagrama de Casos de Uso
O diagrama de casos de uso desenvolvido possui dois atores, representado pelo stickman,
sendo estes: usurio/operador e o brao robtico. Esta representao necessria porque os
dois atores possuem uma relao direta com o sistema atravs dos eventos disparados pelo
usurio, que so transformados nas aes executadas pelo brao. Alm dos atores, o
diagrama apresenta ainda dez casos de uso que so representados pelas elipses apresentadas
na Figura (1). O papel destes componentes no diagrama representar as funes do sistema,
seus fluxos e as aes exercidas em cada funo. Neste projeto especificamente foram
modeladas as seguintes funes de uso:
Registrar usurio: permite que o usurio efetue o registro no sistema para poder acess-lo;
Informar ngulo da base: funo que possibilita ao operador informar os graus da posio
da base, para movimentar o manipulador.
Informar ngulo do ombro: funo que possibilita ao usurio informar os graus da posio
do ombro, para os movimentos de abrir e fechar da garra;
Informar ngulo da garra: Informar os graus da posio da garra, para movimentar o
manipulador;
Recarregar: Recarrega a tela do sistema apagando todas as informaes anteriormente
inseridas;
Limpar a tela: Limpa todos os ngulos informados anteriormente pelo usurio;
Ampliar relatrio: Maximiza a tela de relatrio, uma vez que esta exibida em tempo de
execuo dentro de um frame, na interface do sistema;
Salvar relatrio: Salva o relatrio que contm informaes de todas as aes e horrios,
desde o registro at o fechamento do software;
Retornar a posio inicial: O manipulador volta posio inicial ou posio de partida, e;
Retorno: O sistema mostra em que posio o brao ir permanecer de acordo com os
ngulos fornecidos, atravs de uma representao grfica do manipulador.
3.2 Diagrama de Classes
O diagrama de classes um mapeamento do mundo real representado por um conjunto de
classes/objetos, interfaces, colaboraes e seus relacionamentos. O diagrama de classes
importante para a visualizao, a especificao, e a construo da documentao de modelos
estruturais e de sistemas (Booch et. al, 2000). Aps a anlise e especificao dos requisitos
do software, optou-se neste trabalho por construir o diagrama de classes apresentado na
Figura (2), com oito classes de objetos, suficientes para modelar o software de manipulao
do brao robtico. O diagrama em questo composto pelas seguintes classes/objetos:
Usurio: classe para representar o usurio atravs do seu registro de acesso ao sistema;
Garra: classe que apresenta as funes e mtodos para insero do ngulo em graus para os
movimentos de abrir e fechar da garra.
Ombro: classe que contem as funes que permite o deslocamento do ombro atravs do
ngulo em graus fornecidos;
Cotovelo: classe responsvel por modelar os deslocamentos do cotovelo do brao atravs do
valor do ngulo em graus;
Base: classe que modela a base do brao robtico a partir do ngulo em graus para o
deslocamento da base.

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

3504

S.A. RIBEIRO, A.S. DE LIMA, L.F. ALMEIDA

ngulos: classe que modela as funes para insero dos ngulos pelo prprio usurio. A
partir dos valores inseridos, ser determinada a futura posio do manipulador.
Tela: a interface grfica responsvel pela interao entre o usurio e o brao.
Relatrio: classe que permite gerar e armazenar o relatrio detalhado das aes exercidas
pelo brao robtico a partir dos dados inseridos. Alm do registro de todas as alteraes,
incluindo data e horrio e a contagem de peas feitas pelo rob. O relatrio importante,
pois tambm poder ser utilizado para consultas e anlise futuras.

Figura 1: Diagrama de Caso de Uso do Framework

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

Mecnica Computacional Vol XXXI, pgs. 3501-3512 (2012)

3505

Figura 2: Diagrama de Classes

3.3 Diagrama de Atividades e Diagrama de Seqncia


Para modelar a seqncia dos eventos e consequentemente os estados em tempo de
execuo, construmos os diagramas de atividades e de seqncia da UML, respectivamente
apresentados a seguir. O diagrama de atividade representa os fluxos conduzidos pelo
processamento das tarefas (Larman, 2007). Em outras palavras, essencialmente um grfico
de fluxo que representa a sequencia exata de passos que sero executadas. O diagrama de
atividade apresentado nesta pesquisa apresenta os fluxos de operao dos sistemas para
manipulao e controle do brao robtico partindo de uma exigencia inicial que o login do
usurio no sistema. Os passos seguintes referem-se s informaes necessrias para
manipular o brao. J o diagrama de seqncia, representa a seqncia de processos que
sero executadas pelo computador. Em geral, o diagrama de seqncia usado para
determinar a seqncia dos eventos que sero executados atravs de uma representao
simples e lgica do comportamento dos objetos ao longo do tempo (Booch et.al, 2006) de
acordo com as atividades previamente definidas. Neste trabalho usamos o diagrama de
seqncia para representar os passos de execuo do brao robtico a partir dos eventos
disparados pela ferramenta computacional em conformidade com os fluxos e os estados do
diagrama de atividades. A Figura (3), apresenta os diagramas de atividades (a) e o diagrama
de seqncia (b) desenvolvidos.

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

3506

S.A. RIBEIRO, A.S. DE LIMA, L.F. ALMEIDA

(b)

(a)
Figura 3: Diagrama Atividades (a) e Diagrama de Seqncia (b)

4. CINEMTICA DO MANIPULADOR
No estudo de robtica so analisados dois tipos de cinemtica, a direta e a inversa. A
cinemtica direta consiste em se expressar o deslocamento e posio do elemento terminal
(garra) considerando as variaes angulares conhecidas das suas juntas. apresentado na
Figura (4), um esquema descrevendo o estudo de cinemtica direta de coordenadas para um
rob com N graus de liberdade.

Figura 4: Cinemtica direta de coordenadas (Romano, 2002)

Na cinemtica inversa, conhecendo-se a posio do elemento terminal obtm-se o ngulo


de cada articulao. Diferentemente da direta, a inversa no tem uma soluo nica quando
trabalhamos com manipuladores com um nmero de graus de liberdade superior a dois.
Na Figura (5) mostrado o esquema do manipulador escopo deste estudo.

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

Mecnica Computacional Vol XXXI, pgs. 3501-3512 (2012)

3507

Figura 5: Desenho esquemtico do manipulador (Lima, 2005)

As funes para representao computacional dos movimentos do brao foram


construdas a partir de um conjunto de matrizes, apresentadas por (Lima, 2005) que
representa a cinemtica direta para trs graus de liberdade. Estas matrizes foram usadas para
calcular a cinemtica implementada e usada na ferramenta computacional, objeto deste
estudo.
Nas Equaes (1), (2) e (3) so apresentadas as matrizes de rotao e nas Equaes (4),
(5) e (6) as matrizes de translao, de acordo com as referncias da Figura (5).

cos(1 ) sen(1 )
sen( ) cos( )
1
1
R ( Z ,1 ) =
0
0

0
0

0 0
0 0
1 0

0 1

(1)

cos( 2 )

0
R (Y , 2 ) =
sen( 2 )

0 sen( 2 ) 0
1
0
0
0 cos( 2 ) 0

0
0
1

(2)

cos( 3 )

0
R (Y , 3 ) =
sen( 3 )

0 sen( 3 ) 0
1
0
0
0 cos( 3 ) 0

0
0
1

(3)

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

3508

S.A. RIBEIRO, A.S. DE LIMA, L.F. ALMEIDA

1
0
T ( Z , L1 ) =
0

0 0

0
1 0 0
0 1 L1

0 0 1

(4)

1
0
T ( X , L2 ) =
0

0 0 L2
1 0 0
0 1 0

0 0 1

(5)

1
0
T ( X , L3 ) =
0

0 0 L3
1 0 0
0 1 0

0 0 1

(6)

Atravs da Equao (7) calculada a matriz transformada final (MT31).

MT31 = R ( Z ,1 ).T ( Z , L1 ).R (Y , 2 ).T ( X , L2 ).R (Y , 3 ).T ( X , L3 )

(7)

O resultado da multiplicao de matrizes dado pela Equao (8).

cos(1 ) cos( 2 + 3 ) sen(1 ) cos(1 ) sen( 2 + 3 )


sen( ) cos( + ) cos( ) sen( ) sen( + )
1
2
3
1
1
2
3
MT31 =
sen( 2 + 3 )
0
cos( 2 + 3 )

0
0
0

cos(1 )( L2 cos( 2 ) + L3 cos( 2 + 3 )


sen(1 )( L2 cos( 2 ) + L3 cos( 2 + 3 ))

L1 L2 sen( 2 ) L3 sen( 2 + 3 )

(8)

Atravs da Equao (8) so obtidas as equaes da posio do manipulador em x, y e z


respectivamente.

x = C[1 ]( L2 C[ 2 ] + L3C[ 2 + 3 ]

(9)

y = S [1 ]( L2 C[ 2 ] + L3C[ 2 + 3 ]

(10)

z = L1 L2 S[ 2 ] L3 S [ 2 + 3 ]

(11)

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

Mecnica Computacional Vol XXXI, pgs. 3501-3512 (2012)

3509

5. CONSTRUO DA FERRAMENTA
Com o objetivo inicial de desenvolver uma ferramenta grfica que possibilite a interface
entre o usurio e o brao robtico para executar os movimentos e monitorar o
posicionamento do manipulador atravs de coordenadas informadas pelo usurio, o
ambiente aqui proposto ir permitir uma maior flexibilidade nas aes e no controle do
componente robtico. O funcionamento do sistema est condicionado aos eventos dispostos
na interface grfica criada, conforme ilustrado na Figura (6), a qual permite ao usurio
fornecer os ngulos, alm de setas direcionais que permitem um melhor ajuste dos ngulos
de entrada e conseqentemente na navegao do brao robtico.
5.1 Etapas de Desenvolvimento do Sistema
Para desenvolver o manipulador, obedecemos criteriosamente a arquitetura e o modelo
proposto na sesso 3, conforme observados nos passos a seguir:
Anlise e modelagem do sistema: fase de idealizao do sistema e da construo do
modelo arquitetural e computacional.
Cinemtica direta: clculo da cinemtica direta e implementao das funes
correspondentes para o manipulador.
Interface: construo do display grfico de fcil usabilidade para interao entre
operador e o componente robtico.
Relatrio/Log: Construo de uma funo para registrar os eventos realizados.
Comunicao: implementao de uma funo para comunicao do sistema com a
plataforma robtica atravs da porta paralela disponvel.
Para visualizar e melhor entender as funes implementadas no sistema, a Figura (6)
apresenta a interface grfica do sistema desenvolvido.

Figura 6: Interface do Framework

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

3510

S.A. RIBEIRO, A.S. DE LIMA, L.F. ALMEIDA

6. TESTES E RESULTADOS
Aplicamos inicialmente, um teste de funcionalidade para testar o funcionamento do
framework. Neste teste foi observada a comunicao entre o manipulador e a plataforma
robtica atravs da porta paralela, ou seja, verificamos se o brao respondia aos eventos
disparados pelo manipulador de acordo com as coordenadas enviadas. Foi verificado
tambm o tempo de resposta do brao, considerando um computador com configuraes
bsicas. Foi realizada uma simulao para a execuo dos movimentos do brao aplicados a
uma seqncia de tarefas predeterminadas a partir de um conjunto de coordenadas para os
movimentos da base, ombro, cotovelo e da garra. A seqncia ilustrada na Figura (7),
apresenta os eventos executados pelo rob.

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

Mecnica Computacional Vol XXXI, pgs. 3501-3512 (2012)


3511
Figura 7: Seqncia de eventos realizados pelo brao robtico a partir das coordenadas e comandos disparados
atravs do software

7. CONCLUSO
Pode-se concluir que os resultados da simulao foram satisfatrios, uma vez que o rob
respondeu aos estmulos em tempo real. Alm disso, o citado estudo servir de base para se
desenvolver novas rotinas de trabalho para o manipulador, a serem executadas pelo rob
atravs da cinemtica.
Existe uma linha de estudo que visa a construo de um conjunto de servios e rotinas
para que seja possvel manipular o brao robtico remotamente atravs da web. Neste caso,
alm das funes de software ser adaptado plataforma uma porta para conexo de rede
com conexo RJ45 padro fast ethernet e uma cmera de vdeo web (webcam), para o
monitoramento do brao em tempo real com exibio direta na interface grfica do software.
REFERNCIAS BIBLIOGRFICAS
Barros, F., Lengerke, O., Dutra, M.S., Development and Control of A Mechanic Arm for
Educational Purpose, 21st International Congress of Mechanical Engineering, COBEM
2011, Natal, Brazil 2011.
Bonacorso, N. G.; Noll V.; Gevaerd B. M., Desenvolvimento de um Driver de Corrente
Didtico para Acionamento de Motores de Passo Aplicados ao Ensino de Eletrnica de
Potncia e Mecatrnica; Centro Federal de Educao Tecnolgica de Santa Catarina CEFET/SC. Santa Catarina-SC; Brasil; 2009.
Booch, G., Rumbaugh, J, Jacobson, I; UML: Guia do Usurio; Ed. Campus; Rio de JaneiroRJ; Brasil, 2006.
Booch, G.; Jacobson, I.; Rumbaugh, J. The Unified Modeling Language User Guide. 1a.
Edition; Ed. Addison-Wesley. Massachusetts MA; USA 1998.
Coad, P.; Youydon, E.; Anlise Orientada a Objetos e Projeto Orientado a Objetos; Editora
Campos Rio de Janeiro RJ; 2002.
Elnagar; A., Lulu, L.; A Visual Tool for Computer Supported Learning: The Robot Motion
Planning Example; From Proceeding On Artificial Intelligence and Applications;
Innsbruck , Austria; - 2004.
Ghader, M.; Control of a Six-Joint Robot Arm Using the Two-Axis Motion Controller; 1992;
< http://ushotsearches.com/arm-robot~0.html>; Acessado em Maio de 2012.
Koyuncu, B., Gzel; M.; Software Development for the Kinematic Analysis of a Lynx 6
Robot Arm; I International Journal of Engineering and Applied Sciences; 2008.
Laffont, I., Biard, N., Chalubert, G., Delahoche, L. Marhic, B., Boyer, F. C., Leroux, C.;
Evaluation of a Graphic Interface to Control A Robotic Grasping Arm: A Multicenter
Study; Arch Phys Med Rehabil. 2009; Montpellier; France;2009.
Larman, C.; Utilizando UML e Padres Uma Introduo Anlise e ao projeto Orientado
a Objetos e ao desenvolvimento Interativo; 3. Edio Bookman; 2007.
Lima, A. S., Concatenao dos Movimentos do Manipulador e da Cmera de um ROV, Tese
de M.Sc., COPPE/UFRJ, Rio de Janeiro, RJ, Brasil, 2005.
Narangoda, N.A.PS.K., Lakmal, D. A. N., Weerakkody, T. M., Samsoodeen, P.,
Nanayakkara;
T.;
Implementation
Of
Mobile
Robotic
Arm;
<http://www.elect.mrt.ac.lk/ug_papers/p11_apr04.pdf>; acessado em: julho de 2012.

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

3512

S.A. RIBEIRO, A.S. DE LIMA, L.F. ALMEIDA

Patel, H.K., Verma, P., Ranka, S.; Design and Development of Co-ordinate Based
Autonomous Robotic Arm; Engineering (NUiCONE 2011); International Conference on
Print Purchase at Partner; IEEE Conference and Publications, 2011.
Romano, V. F., Robtica Industrial Aplicao na Indstria de Manufatura e de Processos,
So Paulo, Editora Edgard Blcher Ltda, 2002.
Simes, A. S.; Ricchetti, P. F.; Projeto e Implementao de um Brao Robtico de Baixo
Custo: Uma Plataforma Multidisciplinar para Motivao do rabalho em Grupo; Congresso
Brasileiro de Ensino de Engenharia; Rio de Janeiro-RJ; Brasil; 2003.
Vialle, S. De Vivo, A. Sabatier, F.; A Grid Architecture for Comfortable Robot Control;
EGC'05 Proceedings European conference on Advances in Grid Computing; SpringerVerlag Berlin, Heidelberg 2005.
Yordn-Nones; A.; Heterogeneous Modeling & Design of a Robot Arm Control System,
press EECS Berkeley Programs; University of Puerto Rico, Mayagez; Porto Rico; 2003.
Will, D. J.; Design and Implementation of Robotic Control for Industrial Applications; PhD
Thesis of Engineering Electrical In the Faculty of Engineering; Port Elizabeth Technikon
University; Port Elizaeth South Africa; 2004.

Copyright 2012 Asociacin Argentina de Mecnica Computacional http://www.amcaonline.org.ar

Você também pode gostar