Você está na página 1de 6

CINEMTICA INVERSA DE UM MANIPULADO ROBTICO DE QUATRO GRAUS DE LIBERDA-

DE UTILIZANDO MTODO NUMRICO ITERATIVO DA JACOBIANA PSEUDO-INVERSA.


TARCISIO CARLOS F. PINHEIRO, MAX RICARDO P. DA TRINDADE, BRENO R. PANTOJA.
INSTITUTO DE ESTUDOS SUPERIORES DA AMAZNIA IESAM AVENIDA GOVERNADOR JOS MALCHER,
N 1148, BAIRRO: NAZAR, BELM-PA.
UNIVERSIDADE FEDERAL DO PAR UFPA RUA AUGUSTO CORRA, 01, BAIRRO: GUAM, BELM-PA.
E-MAILS: TARCISIO.PINHEIRO@OUTLOOK.COM, MAX@PROF.IESAM-PA.EDU.BR,
BRENOPANTOJA@UFPA.BR
Abstract The kinematic of a manipulator is the study of the movement without taking consideration of physics forces in-
volved. Frequently, difficult while positioning and constructing trajectories of robotics handlers are found, mainly in case where
transformations of the desired points at spatial plan, for the angles corresponding of each joint, are needed. The problem is be-
cause differential equations may present more of one or even no solution to the stipulated position. To solve this trouble, the im-
plementations of numeric, or analytical, solutions are necessary, each one with its advantage or disadvantage. The works objec-
tive is to demonstrate the utilization of numeric method by using pseudo-inverse Jacobin to solve the inverse cinematic utilizing
the Matrix Laboratory (MATLAB). In this article, computational simulations made using the robotic toolbox together with tests
into prototype are noticed.
Keywords Inverse kinematics, MATLAB robotic toolbox, four degrees of freedom manipulator, pseudo-inverse Jacobin.
Resumo A cinemtica de um manipulador nada mais que estudo do seu movimento sem levar em considerao as foras f-
sicas envolvidas. Dificuldades com o posicionamento e trajetrias de manipuladores robticos so frequentes, principalmente nos
casos onde necessrio fazer a transformao dos pontos desejados no plano espacial para os ngulos correspondentes de cada
junta. A problemtica ocorre por causa das equaes diferencias terem mais de uma ou at mesmo nenhuma soluo para a posi-
o estipulada. Para resolver este problema, as implementaes de solues numricas ou analticas so indispensveis, cada um
com suas vantagens ou desvantagens em relao ao outro. Esse trabalho tem como objetivo demonstrar a utilizao de um mto-
do numrico atravs da jacobiana pseudo-inversa para soluo da cinemtica inversa por meio do Matrix Laboratory (MATLAB).
As simulaes computacionais realizadas no toolbox robotic juntamente com testes no prottipo do manipulador so apresenta-
das no final desse trabalho.
Palavras-chave Cinemtica inversa, MATLAB toolbox robotic, manipulador de quatro graus de liberdade, Jacobiano pseudo-
inverso.
1 Introduo
A utilizao da robtica vem crescendo em diversas
reas. Na indstria isso ocorre devido a uma srie
exigncias do mercado onde se pode destacar o au-
mento da produo, da qualidade e do custo da mo
de obra. Tendo isso vinculado a uma concorrncia
altamente competitiva a redor do mundo.
Os robs mais utilizados na indstria, so os
manipuladores robticos capazem de ser definidos
como um conjunto de corpo rgido interligados em
srie por juntas rotativas ou prismticas. Essas inter-
ligaes formam uma cadeia cinemtica aberta, na
qual uma das extremidades do brao robtico, se
encontra fixado a uma base crceo, enquanto a ex-
tremidade oposta possui o rgo terminal que pode
mover-se livremente no espao (LOPES, 2001).
Essas mquinas so utilizadas em vrias atividades
tais como: Paletizao de materiais, deslocamento de
cargas, pintura, soldagem, etc.
Para acompanhar as grandes exigncias, princi-
palmente relacionadas preciso e a velocidade na
execuo de tarefas, necessrio o desenvolvimento
de tcnicas de controle capazem de encontrar as
trajetrias, com o posicionamento do manipulador. A
tcnica mais utilizada a cinemtica inversa cuja
um processo pelo qual os ngulos das juntas de um
atuador so calculados a partir da posio em que se
deseja colocar o rgo terminal (AZEVEDO &
CONCI, 2003). O clculo desses ngulos possibilita
a construo de sistemas de controle tendo no seu
desenvolvimento as matrizes jacobianas, em conjun-
to com as pseudo-inversas (WUNDERLICH, 2004).
O trabalho proposto demonstra a aplicao do
mtodo numrico utilizando a Jacobiana pseudo-
inversa para as solues envolvendo a cinemtica
inversa em um prottipo de manipulador e simula-
es computacionais por meio do Matrix Laboratory
(MATLAB), Software muito utilizado na engenharia.
Na seo 2 so apresentadas as caractersticas
principais do manipulador utilizado. Na seo 3
descrito o mtodo utilizado para a soluo da cine-
mtica inversa. A simulao computacional mos-
trada na seo 4. Analise dos resultados e sugestes
so discutidas na seo 5.

2 Caractersticas do prottipo Utilizado.

Para se realizar experincias com a cinemtica inver-
sa gerada pelo o MATLAB, foi construdo um prot-
tipo de manipulador robtico apresentado na Figura
1. Esse brao robtico serial tem as seguintes carac-
tersticas: Quatro graus de liberdade, juntas verticais
articuladas, atuadores eltrico do tipo servo motor
modelo Tower Pro MG955.


Figura 1. Prottipo utilizado.

A notao de Denavit-Hartenberg (D-H) uma
ferramenta muito utilizada para sistematizar a descri-
o cinemtica de sistemas mecnicos articulados
com n graus de liberdade (DENAVIT, 1955). Essa
notao adotada tanto no prottipo como na simu-
lao computacional desse trabalho. Na Figura 2 est
o desenho esquemtico brao desenvolvido no plano
(X, Y, Z) e a Tabela 1 contm os valores dos parme-
tros DH, onde os Links representam os elos entre
juntas,

o ngulo de cada articulao.

distncia
ao longo do eixo

, desde a interseco entre os


eixos

-1,

at a origem do sistema i.

a dis-
tncia ao longo do eixo

-1, desde a origem do sis-


tema de coordenadas i-1 at a interseco entre os
eixos

-1 /

o ngulo entre os eixos

-1. Por
ultimo, o

medi um plano perpendicular ao eixo

,
usando a regra da mo direita.

so os
valores angulares mximos, mnimos de cada junta.













Figura 2. Desenho esquemtico do manipulador utilizado
Tabela 1. Parmetros D-H do manipulador.
Link

0 0.03 +90 0 +180


2

0.1 0 0 0 +180
3

0.1 0 0 -180 0
4

0.18 0 0 -90 +90


3 Mtodo para soluo da cinemtica inversa.
A cinemtica de um rob manipulador definida
como o estudo da posio e da velocidade do seu
efetuador (rgo terminal), incluindo dos seus links.
Na cinemtica inversa so fornecidas a posio, em
conjunto com a velocidade do rgo terminal para
obter as posies, incluindo velocidades correspon-
dentes das articulaes (Cabral, 2009). J a cinemti-
ca direta so fornecidos os ngulos de cada junta para
obter a posio do rgo terminal.
Existem diversas formas de se calcular a cinem-
tica inversa de um manipulador. As solues mais
utilizadas so os mtodos analticos e numricos
iterativos. A escolha de um mtodo depende de sua
aplicao do tipo de junta; Da estrutura utilizada em
relao da quantidade de graus de liberdade. Na
maioria dos casos o mtodo numrico prefervel
quando se tem acesso ao um processamento compu-
tacional adequado. Existem diversos mtodos num-
ricos iterativos, por exemplo: O Newton-Raphson,
Algoritmo de LevenbergMarquardt, o Jacobiano
Pseudo-Inverso, entre outros.
Neste trabalho usado o mtodo numrico iterati-
vo da Jacobiana pseudo-inversa, o mesmo foi esco-
lhido pela facilidade que a matriz jacobiana pseudo-
inversa proporciona na soluo de sistemas no line-
ares para manipuladores redundantes e por sua sim-
ples execuo em comparao aos outros mtodos
numricos (Ferreira, 2008). A Figura 3 apresenta o
esquema do problema de transformao inversa de
coordenadas para um rob com N graus de liberdade.
Nela, os ngulos das juntas so obtidos a partir das
informaes dos parmetros do brao/da posio
desejada para o rgo terminar.








Figura 3. Problema da transformao inversa.


3.1 Mtodo numrico iterativo da Jacobiana Pseudo-
Inversa.

Este mtodo numrico consiste em calcular a matriz
jacobiana pseudo-inverso

. Essa matriz possibili-


ta relacionar a velocidade do rgo terminal com a
velocidade angular das juntas para cada iterao. A
quantidade de iteraes (k) est relacionada direta-
mente com o passo (t) utilizado. A escolha do t,
devido a no linearidade, deve ser infinitesimal (ou
muito pequeno) para obter bons resultados (Lopes,
2002). Este mtodo foi utilizado para calcular apenas
os valores de

, j que

pode ser calcula-


ngulos das juntas
Link Parmetros D-H
Posio do rgo terminal
(X, Y, Z) 1, 2, 3,, n
Cinemtica

Inversa
x
y
z


Lin
Lin
Lin
Lin
do diretamente. Um fluxograma do mtodo numrico
iterativo mostrado na Figura 4, onde os passos
principais so descritos nos sub tpicos:



































Figura 4. Fluxograma da heurstica utilizada.

3.1.1 Determinao da matriz Jacobiana

A matriz jacobiana a derivada parcial de um vetor
pelo outro que pode ser definido atravs da Equao
1. construda a partir das relaes das equaes
geomtricas () nas quais descrevem a arquitetura
do manipulador, note a seguir.

[

(1)

Segundo (SANTOS, 2004), a obteno analtica
por diferenciao da cinemtica direta o processo
mais natural para obter a matriz jacobiana. Para de-
terminar as equaes geomtrica leva-se em conside-
rao que espao operacional do manipulador se
tornou 2D, desse modo gera-se duas anlises. A
primeira em relao ao plano (X, Z) visto na Figura
6, responsvel em gerar a translao, onde Z a
coordenada do espao (altura) e X a projeo do
manipulador sobre o plano (X,Y). A segunda anlise
no plano (X, Y) visto na Figura 5 determina a rota-
o em torno do eixo Z. O valor de

basta utilizar a
Equao 2 obtida a partir da mesma ilustrao.



(2)











Figura 5. Manipulador 2D em relao (X,Y).

Para o manipulador em estudo, a matriz jacobiana
na Equao 4 calculada pela derivao parcial da
Equao 3 que obtida por meio da anlise geom-
trica da cinemtica direta da Figura 6. Para simplifi-
car a escrita das Equaes 3, 4 foi adotado a seguinte
nomenclatura: sen(

+.....+

) = e
cos(

+.....+

) = .











Figura 6. Manipulador 2D em relao (X,Z).

{




(3)


d2

d4
dz
dx
X
Z
d3
d1
dy
dx
X
Y
Sim
No
Mover sistema para uma nova
coordenada.
Calcula a Matriz jacobiana do
sistema.
Calcula a coordenada atual do rgo
terminal e sua distncia em relao
posio desejada.
Calcula a velocidade angular de cada
junta e atualizar cada ngulo com
base na velocidade angular calculada

Nmero mximo
de iteraes ou
valor desejado
Definir o nmero mximo de
iteraes de acordo com a preci-
so desejada.
Calcula a Matriz jacobiana pseu-
do-inversa do sistema.
Fim
Calcula




3.1.2 Recurso da Jacobiana pseudo-inversa.

Para resolver a cinemtica diferencial de manipula-
dores redundantes utilizada a pseudo-inversa da
matriz jacobiana (NENCHEV, 1989). Atravs dessa
matriz possvel encontrar os valores para de

. Este recurso necessrio quando a matriz jaco-


biana no quadrada que o caso da matriz obtida
na Equao 4. Por meio da Equao 5, calculada a
matriz pseudo-jacobiana na qual tem origem no m-
todo dos multiplicadores de Lagrange (SCIAVICCO;
SICILIANO, 1996), onde W a matriz identidade de
ordem In R nn (Corke, 2011).

)

(5)


3.1.3 Determinao da velocidade Angular.

A matriz jacobiana de um manipulador mostra-se
como um elemento fundamental para relacionar as
velocidades no espao operacional em funo da
velocidade das juntas (SANTOS, 2004). Essa veloci-
dade

est relacionada com a velocidade do rgo


terminal (V) atravs do jacobiano, de acordo com a
Equao 6. Incluindo com o ngulo atual da junta
(q(k+1)) obtido por meio da integrao de Euler na
Equao 7, so notadas abaixo:



(6)



(7)

3.1.4 Critrio de Parada.

O critrio de parada de um mtodo numrico iterati-
vo, um fator muito importante a se observar. Exis-
tem vrias formas de saber, tempo certo para o fim
do loop do sistema. A parada pode ser definida,
quando encontrada uma soluo desejada (dentro
de certa tolerncia de erro) ou quando chega ao n-
mero mximo de iteraes. Esses critrios foram
utilizados neste trabalho.
4 Simulao computacional e experincias com o
prottipo
Para testes computacionais com o mtodo numrico
foi utilizado o MATLAB com suas ferramentas, onde
se pode destacar a Graphical User Interface Deve-
lopment Enviroment (GUIDE) e o toolbox robotic. O
GUIDE uma rea de trabalhos para o desenvolvi-
mento de interfaces grficas orientada a objeto. O
toolbox robotic desenvolvido por Peter Corke uma
ferramenta capaz de fazer simulaes virtuais com
manipuladores de diferentes modelos, alm de auxi-
liar nos clculos voltados para cinemtica/dinmica
de robs (Corke, 2011).

4.1 Resultados da simulao computacional.

Sabendo que, os erros na posio do rgo ter-
minal do manipulador esto diretamente ligados ao
passo utilizado. Os testes a cerca de trs valores de
passo (t=0.01, t=0.001 e t=0.0001) em um inter-
valo de tempo 0 a 2. Na Tabela 2 possvel verificar
o passo t=0.0001, obteve menor erro relativo. Por-
tanto o t, diretamente proporcional ao erro.
Tabela 2. Valores obtidos no teste.


Na Figura 7 observa-se uma grande variao nos
valores dos ngulos das juntas, ou seja, dificuldade
em convergncia do Algoritmo, para valores de pas-
so t elevados. Desta forma, quando o passo me-
nor, a convergncia mais rpida e menor o erro,
ilustrados nas Figuras 8 e 9:

Figura 7. Convergncia dos ngulos para o valor desejado para
t=0.01.

Figura 8. Convergncia dos ngulos para o valor desejado para
t=0.001.
|

| [


] |

|
(4)


Figura 9. Convergncia dos ngulos para o valor desejado para
t=0.0001.
Para gerar a trajetria de modo suave entre a posi-
o angular inicial e a posio final calculada foi
utilizada a funo jtraj do toolbox robotic. Esta fun-
o obtm os valores angulares intermedirios da
trajetria por interpolao para um intervalor de
tempo definido (Cork, 2011).
Na Figura 10 abaixo, demonstrado 4 grficos
obtidos atravs funo jtraj para um intervalo de
tempo de 0 a 4 segundos. Nesses grficos possvel
analisar os valores das juntas e do rgo terminal
para cada instante de tempo. No grfico 1, 2, 3
possvel analisar os valores das juntas em relao
posio, velocidade, juntamente com acelerao,
respectivamente. No grfico 4 verificado a trajet-
ria do rgo terminal (Cork, 2011).

Figura 10. Trajetria em relao ao tempo.
O toolbox robotic faz as simulaes virtuais do
manipulador em conjunto com o rob. Essas simula-
es so de extrema vantagem para analisar seus
possveis movimentos alm de possibilitar a verifica-
o da posio exata do rgo terminal no espao de
trabalho. Na Figura 11, exibido o resultado de uma
simulao utilizando t=0.0001, onde coordenada
desejada do rgo terminal (0.2, 0.1, 0.1).

Figura 11. Resultados obtidos na simulao virtual no toolbox
robotic.

4.2 Resultados com o prottipo.

Os testes realizados com o prottipo a fim de verifi-
car a eficcia da cinemtica inversa desenvolvida no
MATLAB. A criao de uma interface grfica para
facilitar o controle do prottipo e a visualizao dos
resultados mostrado na Figura 12. No mesmo pos-
svel configurar a comunicao serial Universal
Asynchronous Receiver/Transmitter (UART), fazen-
do o controle dos ngulos das juntas, entrando com
os valores da coordenada desejada do rgo terminal.
Nessa interface foi inserido o grfico com a simula-
o virtual do manipulador, a imagem do prottipo
pode ser capturada atravs de uma cmera.

Figura 12. Interface grfica no GUIDE para controle do prottipo.
Na Figura 13, visto o esquema fsico da comu-
nicao entre o computador e o manipulador. O con-
trole do manipulador realizado diretamente por um
Microcontrolador 16F877A. Sendo responsvel por
receber os valores dos ngulos calculados pelo MA-
TLAB, logo processa todas as informaes.

Figura 13. Comunicao Fsica entre o computador e o manipula-
dor .
No teste com o prottipo, definido uma trajet-
ria composta de vinte pontos no espao. Para facilitar
a medio leva-se em considerao apenas o plano
(X, Y), ou seja, os valores do eixo Z so iguais
zero. A interface grfica so inseridos os valores
desses pontos e depois feito, visualmente, a medi-
o da posio do rgo terminal com o auxlio do
papel milimetrado, desta maneira, uma caneta fixa-
da na extremidade do manipulador. Na Figura 14
mostra a trajetria executada pelo manipulador, em
seguida na Figura 15 ilustra os resultados obtidos:

Figura 14. Experincia com o prottipo.

Figura 15. Medio do dos pontos desejados.
Para analisar os resultados na Figura 15 em rela-
o trajetria do manipulador, devem-se observar
os erros ocasionados pelo posicionamento do motor e
de eventuais problemas com a estrutura, como folgas,
desalinhamento, entre outras.
5 Concluso
Aps a anlise dos resultados pode ser verificado a
eficcia do mtodo dentro de suas limitaes. Para o
controle de manipuladores, muitas vezes, necess-
rio calcular em tempo real a soluo do problema da
cinemtica inversa. Assim, o peso computacional e o
tempo de resposta devem ser levados em considera-
o principalmente quando exigido fazer uma traje-
tria ponto a ponto. Para a otimizao do erro,
abrangendo o tempo de resposta das solues utili-
zando Inteligncia Artificial (AI) tais como: Algo-
ritmo Gentico, Rede Neural, Cadeias de Markovs
so indicados para trabalhos futuros.
Para melhorias do erro no prottipo pode ser
citada a aplicao de um controle Proportional-
Integral-Derivative (PID) para motor, atualmente o
mesmo controlado por um simples controlador
proporcional. Utilizao de encode ptico e de po-
tencimetros para fazer a realimentao do sistema,
com melhorias na estrutura do manipulador em
relao s folgas nos acoplamentos dos eixos do
motor so outras solues que podem ser abordadas.
Referncias Bibliogrficas
Azevedo, E. and Conci, A (2003). Computao
Grfica - Teoria e Prtica, Vol.1, Elsevier, Rio
de Janeiro.

Cabral, E.L.L. "Anlise de Robs", ch. 5
,www.poli.usp.br/p/eduardo.cabral/Cinemtica
Direta.pdf acessado em 09/03/2013.

Coiffet, P.(1982), Les Robs, Tome 1: Modlisation
et commande, Vol.2, Hermes, Paris.

Corke, P. (2011). Robotics,Vision and Control,
Vol.1, Springer-Verlag Berlin Heidelberg, Aus-
tralia pp. 141- 193. pp. 141-200.

Craig, J. J. (2005). Introduction to Robotics: Me-
chanics and Control, Vol.3, Pearson Prentice
Hall, New York. pp. 62-164.

Denavit, J.(1955)Description and displacement anal-
ysis of mechanics based on the 2x2 dual
matrices, 1 edn, University of Northwestern,
Evanston.

Lewis, F. L; Dawson D. M. and Abdallah, C.T.
(2004). Robot Manipulator Control Theory and
Practice, Vol.2, Marcel Dekker, New York. pp.
107-126.

Lopes, A. M.(2002) Robtica Industrial, Dissertao
(Mestrado em Automao, Instrumentao e
Controle), Universidade do Porto, Porto.

Nenchev,D.N.(1989).Redundancy resolution through
local optimization: A review. J. Robot. Syst.,
Vol.6, pp. 769798.

Santos, V. M. F. (2004). Robtica Industrial, Vol.1,
Universidade de Aveiro, Aveiro. pp. 68-90.

Sciavicco, L.;Siciliano, B. (1996). Modeling and
control of robot manipulator. McGraw-Hill
Companies.

Simas, H. (2008). Planejamento de Trajetrias e
Evitamento de coliso em Tarefas de Manipula-
dores Redundantes Operando em Ambientes
Confinados. Tese de Doutorado, Universidade
Federal de Santa Catarina, Florianpolis-SC.

Wunderlich, J. T. (2004). Simulating a robotic arm in
a box: redundant kinematics, path planning, and
rapid prototyping for enclosed spaces, SIMU-
LATION, Vol. 80, Issue 6, Elizabethtown.

Você também pode gostar