Você está na página 1de 22

Rob Espacial de Cinco Graus de Liberdade

Engenharia de Controle e Automao - Introduo Robtica Industrial


Felipe Jung, Marina Padilha
Instituto Federal de Educao, Cincia e Tecnologia Campus Luzerna

1. Introduo
A robtica uma tecnologia que surgiu da necessidade de substituir tarefas ou aes
geralmente realizadas por pessoas. Para isso, a sua aplicao demanda a utilizao de sensores,
atuadores e computadores, que juntos formam o sistema capaz de tomar decises com base no dados
obtidos.
Devido complexidade envolvida em sistemas robticos, este campo pode ser segmentado,
apenas para fins de estudo, em quatro diferentes reas: manipulao mecnica, locomoo, viso
computacional e inteligncia artificial. importante ressaltar que duas ou mais reas podem estar
envolvidas em um mesmo sistema, sendo utilizadas com diferentes objetivos e tarefas.
Em sistemas automatizados podem ser utilizados sensores de viso para avaliar as dimenses
de uma pea, um manipulador mecnico para realizar a montagem de equipamentos, sistemas de
inteligncia artificial para a separao e classificao de diversos componentes e tambm sistemas
mveis automticos para o transporte de cargas dentro ou fora de uma manufatura. So vrias as
aplicaes da robtica em processos automatizados.
O foco deste trabalho se restringe ao breve estudo da rea de manipulao mecnica, que
compreende os robs industriais. A implantao destes robs em indstrias trs muitas vantagens,
dentre as quais se podem citar a melhoria na qualidade do produto final, a continuidade da produo,
operaes em reas insalubres para o ser humano e a diminuio de acidentes de trabalho.
Neste trabalho ser apresentada a modelagem de um rob espacial com cinco graus de
liberdade, que compreende a obteno de sua cinemtica direta, cinemtica inversa, cinemtica
diferencial, planejamento de trajetrias e controle linear de juntas. Em seguida, as informaes obtidas
sero validadas com auxlio do MatLab.

2. Cinemtica Direta
O rob apresentado na Figura 1 modelado de forma a se obter sua representao segundo
conveno de Denavit-Hartenberg e a partir desta determinar seu Jacobiano e sua trajetria. Este brao
robtico apresenta cinco graus de liberdade, sendo as duas primeiras juntas do tipo rotativa, a terceira
do tipo prismtica e as duas ltimas do tipo rotativa novamente.

Figura 1: Brao robtico proposto para o estudo

Para a obteno dos parmetros de Denavith-Hartenberg, primeiramente so definidos os


eixos de referncia para cada junta, seguindo as especificaes da prpria conveno. A Figura 2
indica os eixos de referncia adotados e a Tabela 1 apresenta os parmetros relacionados.

Figura 2: Sistemas de coordenadas fixadas segundo conveno de Denavit-Hartenberg

Observa-se que o primeiro eixo de referncia foi arbitrado fora da junta rotativa. Isso em
nada compromete a representao de cinemtica direta. Para obter a matriz que relaciona um ponto
base ao manipulador, basta pr-multiplicar a matriz de cinemtica direta por uma matriz de translao
que translade o ponto de origem at o primeiro eixo de referncia do rob.

Tabela 1 Parmetros de Denavit Hartenberg

interessante observar o ngulo entre os eixos x1 e x2. Esse ngulo vale 90 mesmo quando
o

, portanto, devemos somar 90 ao ngulo

para a correta representao de Denavit-

Hartenberg.
Ainda de acordo com a conveno de Denavit-Hartenberg, as matrizes de transformao
homogneas para cada elo so:
[

A matriz da cinemtica direta, transformao da base para o efetuador, obtida mediante


multiplicao das matrizes de transformao homognea acima e o resultado :
[
[

]
]

Para relacionar a origem AU universal na base do rob, a matriz de translao dada por:
[

E a matriz que relaciona a origem AU com o manipulador do rob :

A cinemtica direta foi obtida com auxilio do script trabalho_robotica.m.

2.1. Validao com o MatLab


A partir das informaes obtidas, foi elaborada uma simulao do rob no toolbox rvctools
do MatLab. O resultado pode ser observado na Figura 3. Para a realizao das simulaes foi
necessrio especificar valores para os parmetros

, assim como definir offset nas variveis de

junta.

Figura 3: Representao computacional do rob 5GDL

A validao do modelo da cinemtica direta foi obtida a partir da funo fkine do toolbox e
do script elaborado para o clculo a partir das equaes de transformao homognea. O resultado
obtido com ambos os cdigos no divergiu, apresentando a mesma matriz de rotao e posio do
efetuador, a partir da especificao das variveis de junta. Os cdigos so cinemtica_direta.m e
robozinho.m.

3. Cinemtica Inversa
Para obter a representao da cinemtica inversa do rob estudado, procede-se igualando a
equao que relaciona a matriz da cinemtica direta (
(

) com a matriz de orientao e a posio

):
[
[

Se essa equao for pr-multiplicada por

]
]

, ser possvel desacoplar algumas variveis de

junta:
(1)

A partir dos elementos 3,4 tem-se que o ngulo

dado por:

( )
Mas

pode assumir dois valores, ento

Igualando-se os elementos 3,1 e 3,2 de ambas as matrizes, obtm-se:

(
(
Tambm possvel obter a soma dos ngulos

)
)
analisando os elementos 1,3 e 2,3:

Para encontrar o restante das variveis de juntas, a equao (1) ser pr-multiplicada por
e ser obtido:
[

]
Igualando os elementos 3,4 de ambas as matrizes, chega-se a:
(

As nicas variveis de junta que no foram possveis desacoplar so

. Isso porque

ambas as juntas so paralelas, ou seja, o movimento delas complementar. Por isso, arbitra-se que o
movimento angular dado por

ser igualmente dividido entre as juntas 2 e 4. Dessa forma,

obtm-se as equaes para as cinco variveis de junta, indicadas na Tabela 2.


Tabela 2: Equaes das Variveis de Junta

( )
(
(

)
)

(
(

)
)

A cinemtica inversa foi obtida com auxilio do script trabalho_robotica.m.

3.1. Validao
Para a validao da cinemtica inversa, foi elaborado o script cinemtica_inversa.m no
MatLab, anexado este trabalho, onde a matriz de orientao e posio inserida e, a partir das
equaes da Tabela 2, os valores das variveis de junta necessrios para alcanar o ponto especificado
so calculados.
O toolbox rvctools possui uma funo prpria para o clculo da cinemtica inversa, contudo,
o autor faz algumas observaes a respeito da funo que a torna insuficiente para a validao do
modelo aqui estudado.
Portanto, a validao ser realizada partindo de uma definio de variveis de junta, da qual
ser obtida a matriz de posio e orientao equivalente. A matriz resultante ser inserida no script
para clculo da cinemtica inversa e ento sero comparados os resultados.
As coordenadas de junta arbitradas so:
[

];

Tanto pela funo fkine do rvctools quanto pelo script cinemtica_direta.m, a matriz de
orientao e posio obtida para estas coordenadas foi:
[

Ao inserir esta matriz no script elaborado para cinemtica inversa, os valores obtidos para o
espao de juntas so:
[

Percebe-se que as variveis de junta obtidas pelo script possuem valores muito prximos dos
valores utilizados para obter a matriz de orientao e posio.
Ao utilizar a funo ikine do rvctools para obter os valores das variveis de juntas,
obtiveram-se os seguintes valores:
[
Observa-se que os termos divergem nas variveis de juntas
de orientao e posio para estes pontos, observa-se que a posio em

]
,

.e
,

. Calculando a matriz
e

so as mesmas, e

a proporo entre os termos da primeira e segunda linha da matriz de rotao se mantm. Apenas a
terceira linha da matriz de rotao se altera, em um ngulo de aproximadamente 50. A Figura 4
ilustra a posio do rob para as variveis de junta obtida pelo script e pela funo ikine. Observa-se,

que a posio e orientao so aproximadamente as mesmas, apenas existe uma rotao em z de


aproximadamente +50 na soluo obtida por ikine.
[

(a)
Figura 4: Posio obtida com as variveis de (a)

(b)
e (b)

4. Cinemtica Diferencial
De acordo com Niku (p. 95), o Jacobiano uma representao da geometria e da interrelao entre as diferentes partes do mecanismo e onde elas esto a qualquer momento. Claramente,
medida que o tempo passa e as posies relativas de diferentes partes do mecanismo variam, o
Jacobiano tambm ir variar.
O Jacobiano pode ser obtido de duas formas: a analtica e a geomtrica. A primeira obtida a
partir da derivada da do vetor de posio e orientao, enquanto a segunda relaciona a influncia de
cada junta na velocidade linear e angular do efetuador.

4.1. Jacobiano Analtico


Sciavicco e Siciliano (2000, p.101) afirmam que, se a orientao e posio so especificadas
em termos de um nmero mnimo de parmetros no espao operacional (global), ento o Jacobiano
pode obtido atravs da diferenciao da cinemtica direta em funo das variveis de juntas.
Desta forma, o Jacobiano Analtico pode ser calculado fazendo as derivadas de cada equao
de posio e orientao em relao a todas as variveis de junta. A velocidade linear do efetuador
pode ser expressa pela derivao do vetor de posio da matriz

em funo do tempo e em funo

de cada varivel de junta. Quanto velocidade angular, suas componentes em

e em

geralmente no esto disponveis de forma direta e precisam ser calculadas a partir dos elementos da
matriz de orientao. Neste item, ser abordado o Jacobiano Analtico para a velocidade linear do
efetuador. Sendo o Jacobiano:

[ ]

[
Onde

] [ ]

a quarta coluna matriz de transformao da base para o efetuador

conjunto das variveis de junta. Desta forma, partir do script jacobiano.m foram obtidas as funes
que relacionam a velocidade linear do efetuador com as velocidades de cada junta.

(
(

)
)]

(
[ (
[

)
)]

)
)]

[ ]
[

4.2. Jacobiano Geomtrico


O Jacobiano Geomtrico, por sua vez, relaciona a contribuio da velocidade de cada junta
aos componentes de velocidade linear e angular do efetuador. obtido a partir da seguinte matriz:
[

] [ ]

Onde

so vetores coluna e representam a contribuio da junta simples

para a

velocidade linear do efetuador e para a velocidade angular do efetuador, respectivamente, e dependem


do tipo de junta. Desta forma, para uma junta prismtica e para uma junta revoluta, tm-se:
[
(a)
Onde

Junta Prismtica

(b)

dado pela terceira coluna da matriz de rotao de

elementos da quarta coluna da matriz de transformao


elementos da quarta coluna da matriz de transformao

Junta Revoluta
,

so os trs primeiros

dado pelos trs primeiros

Os termos obtidos com o script jacobiano.m so:


(

)
)

(
[

]
[

]
(
(

)
)

]
[

]
[

]
(
(

)
)

]
[

]
[

Os Jacobianos foram obtidos com auxilio do script trabalho_robotica.m.

5. Planejamento e Gerao de Trajetrias


O planejamento de trajetria refere-se forma como um rob movido de um local para
outro de forma controlada. O problema assumido agora, segundo Sciavicco e Siciliano (2000, p. 185),
planejar uma trajetria livre de colises conectando um ponto inicial e um ponto final, desejados e
conhecidos. Planejamento de trajetrias e de percursos requer o uso tanto da cinemtica quanto de
dinmica de robs.
A descrio desse problema enganosamente simples, considerando que o planejamento de
trajetrias um dos mais difceis problemas no estudo de robs. Geralmente, requisitos de
movimentos precisos so to complexos que aproximaes so sempre necessrias.
De acordo com Niku (2013, p. 144), o percurso definido como a coleo de sequncias
de configuraes que um rob faz para ir de um lugar at outro sem se referir ao instante dessas
configuraes. Niku ainda afirma que a trajetria est relacionada com o momento em que cada
parte do percurso deve ser atingida.
Existem duas configuraes de espaos onde possvel planejar a trajetria de um rob
industrial: espao articular e espao cartesiano. Trajetrias de espao cartesiano so fceis de
visualizar, no entanto, so computacionalmente dispendiosas e requerem um tempo de processamento
maior para uma soluo no espao articular, Alm disso, difcil afirmar que no haver pontos de
singularidades visualmente. J as trajetrias no espao articular no so to perceptveis a um
observador, porm, economizam em tempo de processamento.
Craig (2012, p. 193), considera os movimentos de um manipulador como os movimentos do
sistema de referncia da ferramenta em relao ao sistema de referncia da estao.
Ser abordado neste trabalho, portanto, o planejamento de trajetrias no espao articular.
Assume-se que o rob est em uma posio inicial
,

com as variveis de junta sendo:


,

Pela matriz de cinemtica direta, temos que a orientao e a posio do manipulador


relacionadas primeira junta do rob dada por:
[

Deseja se que o manipulador se mova at uma posio desejada

para pegar um parafuso,

por exemplo, e ento, que o rob gire duas vezes em torno de sua referncia para parafusar o parafuso
neste local. A matriz de posio e orientao de

dada por:

A posio inicial e a posio final da trajetria esto ilustradas na Figura 5.

(a)

(b)
Figura 5: Posio do rob: (a) inicial e (b) final

As variveis de junta para

, obtidas via cinemtica inversa, so:


,

Por fim, deseja-se que apenas a varivel de junta

d duas voltas, ou seja, rotacione

Define-se uma funo polinomial de quinta ordem para a funo da posio de junta, como
segue:
( )
A velocidade da junta dada por:
( )
E a acelerao dessa junta dada por:
( )

A velocidade da junta prismtica considerada uma parbola, de forma que o polinmio


responsvel por seu deslocamento de terceira ordem:

Se as condies de contorno de posio, velocidade e acelerao so conhecidas, ento


podemos calcular os coeficientes do polinmio. Considerar-se- que a acelerao mxima inicial das
variveis de juntas

e a desacelerao mxima final das variveis de juntas de

Alm disso, considera-se que a velocidade inicial e a velocidade final das variveis de juntas so de
.
As condies iniciais e finais das variveis de junta para o primeiro movimento so:
( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

E o tempo desejado para a execuo deste movimento de 5 segundos. Aplicando as


condies iniciais e finais nas equaes que descrevem a posio, a velocidade e a acelerao das
juntas, encontra-se os valores dos coeficientes

Como a varivel

,e

para cada varivel de junta:

no executa nenhum movimento, no necessrio calcular uma funo

polinomial para este deslocamento, pois todos os coeficientes seriam nulos.


Os polinmios que descrevem cada deslocamento so dados por:
( )
( )

( )
As condies iniciais e finais para as variveis de junta para o segundo movimento so:
( )

( )

( )

( )

( )

( )

( )

( )

( )

( )

Como a nica varivel que executa movimento

, calcula-se uma funo polinomial para

descrever o deslocamento apenas desta varivel de junta, e obtm-se os seguintes coeficientes:

O polinmio caracterstico do movimento da varivel de junta

dado por:

( )
A Figura 6 apresenta os grficos de posio, velocidade e acelerao de cada junta do rob
no primeiro movimento. Apesar de estarem representadas no mesmo grfico, as grandezas possuem
unidades diferentes.
No segundo movimento, ocorre apenas a rotao na varivel de junta

. A posio,

velocidade e acelerao dessa junta so ilustradas na Figura 7.


Pode-se observar que a acelerao e a velocidade so muito mais intensas neste segundo
movimento, j que o tempo disponvel para execut-lo menor que os anteriores e o deslocamento da
varivel de junta muito maior que nos casos anteriores.

Um terceiro movimento de translao com orientao fixa foi especificado, levando o


efetuador da posio final do segundo movimento para uma posio de repouso, definido por
procedimento de obteno da trajetria similar aos anteriores, com polinmio de 3 ordem.

Figura 6: Posio, velocidade e acelerao das juntas no primeiro movimento

Como o movimento abrange trs juntas, a trajetria dada pelas funes:


( )

( )
( )

As posies inicial e final do rob podem ser visualizadas na Figura 8.

.O

Figura 7: Posio, velocidade e aceleraro para elo 5 no segundo movimento

Figura 8: Posio do terceiro movimento: (a) inicial e (b) final

Com o script robozinho.m, os trs movimentos foram simulados.

6. Controle Linear dos Manipuladores


Craig (2012, p.250) afirma que o uso de tcnicas de controle linear vlido somente quando
o sistema que est sendo estudado pode ser modelado matematicamente por meio de equaes
diferenciais lineares. Para o caso do controle de manipuladores, tais mtodos lineares devem ser vistos
como mtodos aproximados, j que a dinmica de um manipulador melhor representada por
equaes diferenciais no lineares.
Ainda assim, muitas vezes razovel fazer tais aproximaes e, na prtica no meio
industrial, os mtodos lineares so os mais usados atualmente.
Como o sistema de acionamento e transmisso no foi especificado para este rob, adotou-se
para todos os motores, o modelo proposto por Craig (2012, p. 275, 276), com mesmas caractersticas
construtivas. O diagrama do sistema eletromecnico resultante em lao aberto apresentado na Figura
9 e o controle implementado apresentado na Figura 10.

Figura 9: Diagrama de blocos do sistema de malha aberta de uma das juntas

Figura 10: Implementao de controladores PD para controle das cindo juntas

A estratgia de controle escolhida foi um controlador PD com configurao em paralelo,


visando principalmente o requisito de tempo. A configurao do controlador :

O Simulink, interface grfica de usurio do MatLab, possui um recurso de auto ajuste para
este tipo de controlador, que considera a planta do sistema e a resposta desejada, no sendo
necessrios clculos para a obteno dos ganhos. A partir deste auto ajuste, os ganhos obtidos foram:

Onde

o ganho proporcional,

o ganho derivativo e

o ganho do filtro. A Figura

11 apresenta os grficos de posio, velocidade e acelerao para o movimento de uma das juntas,
neste caso,

Figura 11: Grfico de posio, velocidade e acelerao da sada

do sistema

7. Concluso
A modelagem de sistemas robticos envolve muitos clculos j consolidados, como os de
cinemtica direta, a proposta de Denavit-Hartenberg, a cinemtica inversa, a cinemtica diferencial,
anlise de foras, esttica e dinmica de manipuladores, planejamento e gerao de trajetrias e
mtodos de controle.
O estudo de manipuladores robticos tambm envolve reas que esto em constante
evoluo, como o caso da programao, sensoriamento, atuadores e efetuadores.
Este trabalho limitou-se a estudar e descrever os clculos de cinemtica direta, inversa,
diferencial e a gerao de trajetrias, alm de uma breve introduo a sistemas de controles para
modelos linearizados. Foi utilizado, para a elaborao deste trabalho, o software de simulao
matemtica MatLab, alm de sua interface grfica, Simulink, e o pacote rvctools.
Verificou-se que o toolbox rvctools auxilia de forma importante a compreenso e a
modelagem de dispositivos robticos. Este pacote proporciona a obteno das principais funes
necessrias para projetos de robs, tais como cinemtica direta, cinemtica inversa, jacobiano, anlises
de foras, entre outros, alm da possibilidade de plotar o rob projetado e simular trajetrias. Porm,
no foi possvel obter o melhor rendimento do pacote, pois seria necessrio especificar muitos
parmetros os quais no so conhecidos.
Existem inmeras formas de calcular a matriz de cinemtica direta, porm a maioria
demasiadamente trabalhosa. A representao de Denavit-Hartenberg, entretanto, bastante difundida
por apresentar uma forma metodolgica de obteno da matriz que relaciona a base do rob com o seu
efetuador. Alguns cuidados devem ser tomados para garantir que a matriz represente corretamente
essa transformao, como por exemplo, inverses de eixos e deslocamentos iniciais.
A grande desvantagem dessa representao est no fato de que ela no considera rotaes no
eixo y, o que na maior parte dos casos reais no se aplica, pelo fato de que robs industriais
apresentam folgas e deslocamentos que podem causar movimentos neste eixo.
Os clculos para obteno da cinemtica inversa so geralmente bastante dispendiosos,
principalmente para robs com vrios graus de liberdade. Algumas vezes, difcil ou impossvel
desacoplar duas variveis de junta. Quando isso ocorre, obtm-se infinitas solues para determinadas
variveis e, nesse caso, difcil validar as solues obtidas. Neste trabalho, foi arbitrada uma
determinada soluo para o sistema, mas essa considerao pode no ser vlida para todos os casos.
Tendo em vista as restries feitas na resoluo, os resultados obtidos foram aceitveis.

Quanto obteno do Jacobiano, era esperado que o analtico e o geomtrico pudessem ser
comparados. Entretanto, para a obteno do jacobiano analtico seria preciso encontrar as funes para
as rotaes nos eixos x, y e z, o que muitas vezes no facilmente determinado. Em situaes em que
a geometria do rob complexa, a determinao destas funes precisa de uma avaliao analtica e
computacional. Desta forma, pde-se apenas se obter o jacobiano analtico para a velocidade linear do
rob. O jacobiano geomtrico, por considerar o efeito de cada junta aos componentes de velocidade
linear e angular, foi obtido sem maiores problemas.
A partir do Jacobiano possvel a determinao de singularidades e a obteno das
velocidades de junta. Apesar destas anlises no terem sido abordadas, futuramente podem ser
realizadas para o estudo mais detalhado do rob.
No planejamento e gerao de trajetrias, define-se um polinmio que descreva a posio
angular da junta como uma funo do tempo. Esse polinmio pode ser desde um polinmio de
primeira ordem at um polinmio de stima ordem. Quando a funo que descreve a posio angular
da junta um polinmio de primeira ordem, isto implica que a velocidade durante a trajetria
constante e a acelerao nos instantes de contornos infinita. Essa ltima especificao limita a
aplicao deste tipo de funo, pois, muitas vezes, as caractersticas fsicas do atuador no atendem
um requisito de acelerao que permita que a velocidade desejada seja atingida quase
instantaneamente.
J um polinmio de stimo grau implica em restries de acelerao, impondo que esta
varivel varie suavemente no tempo. Este tipo de funo raramente usada, a no ser que o atuador ou
o processo possuam restries quanto acelerao.
Ainda possvel calcular polinmios de grau superior para trajetrias que passem por
diferentes pontos desejados. Ainda importante ressaltar que estes procedimentos de planejamento de
trajetrias so aproximaes, devido ao fato de que o planejamento de trajetria, em seu conceito
estrito, extremamente complicado e aproximaes so sempre necessrias.
Neste trabalho, as trajetrias planejadas seguem funes de polinmios de terceiro e quinto
grau que podem ser verificadas com o script robozinho.m, e se mostraram satisfatrias para o
objetivo de obter movimentos suaves.
O controle das juntas nos manipuladores realizado atravs de controladores, geralmente o
controlador Proporcional Integral Derivativo (PID) utilizado por ser bastante difundido na rea
de controle. Neste trabalho, um controlador com configurao Proporcional em paralelo com um

Derivativo (P+D) foi utilizado pois o sistema apenas deve cumprir requisito de velocidade, e ainda
assim, foi observado que a parcela derivativa do controlador foi ajustada para um valor nulo, o que
significa que para cumprir o requisito de velocidade imposto, o controlador proporcional suficiente
neste caso.

8. Referncias
[1]

CORKE, Peter. Robotics Vision & Control Fundamentals Algorithms in MatLab. Berlin:
Springer, 2011.

[2]

CRAIG, John J. Robtica. 3 ed. So Paulo: Pearson Education do Brasil, 2012.

[3]

NIKU, Saeed B. Introduo Robtica Industrial. Rio de Janeiro: LTC, 2013.

[4]

SCIAVICCO, Lorenzo; SICILIANO, Bruno. Modelling and Control of Robot


Manipulators. 2 ed. Londres: Springer, 2000.

[5]

SPONG, Mark W.; HUTCHINSON, Seth; VIDYASAGAR, M. Robot Modeling and


Control. USA: Wiley, 2006.