You are on page 1of 6

UTILIZAO DE REDES NEURAIS ARTIFICIAIS NA RESOLUO DA

CINEMTICA INVERSA DE UM MANIPULADOR ROBTICO COM 5 GRAUS


DE LIBERDADE
Francisco Erivaldo Fernandes Junior1, Marconi Kolm Madrid 2
1
Universidade de Campinas
Av. Albert Einstein - 400
13083-852 Campinas SP
2
Universidade de Campinas
Av. Albert Einstein - 400
13083-852 Campinas SP

Resumo: No presente trabalho mostrado o desenvolvimento 1 INTRODUO


e os resultados obtidos no estudo sobre o uso de redes neurais
para a resoluo da cinemtica inversa de manipuladores A robtica um campo de pesquisa tecnolgica relativamente
robticos, mais precisamente para o caso de um manipulador jovem que no limitada pelas tradicionais fronteiras
com 5 graus de liberdade. A cinemtica inversa um ramo existentes entre as diversas engenharias. Para o entendimento
com grandes desafios devido ao problema das equaes no das complexidades e aplicaes que envolve o estudo dos
serem lineares, dificultando a determinao de solues de uma robs necessrio conhecimentos de engenharia eltrica,
forma fechada. Portanto, diversos pesquisadores, ao longo dos engenharia mecnica, engenharia industrial e de sistemas,
anos, tentam resolver esse problema evitando o uso de cincias da computao, economia e matemtica [Spong et al,
inverses de equaes. Nesse sentido, o uso de Redes Neurais 2004]. Alm disso, os robs so as principais ferramentas
Artificiais se mostra uma alternativa atraente. Para se atingir utilizadas em automao da produo industrial, em tarefas
este objetivo, o estudo foi realizado para o caso de um rob perigosas, em tarefas no espao sideral e/ou em qualquer tarefa
manipulador educacional com 5 graus de liberdade, composto em que se deseja que uma mquina substitua um ser humano
de uma estrutura de alumnio e seis servomotores. Alm disso, [Mittal, 2003; Siciliano et al, 2010]. Por isso, o estudo dessas
utilizou-se o MATLAB para o desenvolvimento e treinamento mquinas tem vital importncia para o desenvolvimento das
da Rede Neural. reas de tecnologia em mecatrnica e automao.

Palavras Chaves: Robtica, Redes Neurais Artificiais, A cinemtica o estudo do movimento de um rob em relao
Cinemtica Inversa. a um referencial cartesiano fixo ignorando as foras e os
momentos que causam o movimento da estrutura. A
formulao da cinemtica de um rob, permite o estudo de dois
Abstract: The present work shows the development and the problemas chaves na robtica. O problema da cinemtica direta
results obtained of a study about the use of Neural Networks to e o problema da cinemtica inversa. O modelo cinemtico
solve the inverse kinematics of robotic manipulators, more direto permite determinar a posio e orientao da garra do
specifically to a robotic manipulator with 5 degree of freedom. rob, em relao a um referencial cartesiano fixo, a partir dos
The inverse kinematics is a field of study with challenges due valores das suas juntas. Por outro lado, o modelo cinemtico
the fact that the equations aren't linear which become a inverso permite determinar os valores das juntas do rob a
problem to obtain closed form solution. Therefore, many partir da posio e orientao da garra. A cinemtica direta
scientists try to solve this problem with methods that don't use pode ser facilmente obtida pela conveno de Denavit-
equation inversions. In this sense, the use of Artificial Neural Hartenberg. Entretanto, no existe uma forma simples de se
Networks proves to be an interesting alternative for this obter o modelo cinemtico inverso de um manipulador robtico
purpose. To achieve this goal, an educational robotic [Spong et al, 2004; Siciliano et al, 2010; Corke, 2011].
manipulator with 5 degree of freedom was used as the object of Na literatura possvel encontrar diversas tcnicas clssicas
study. This robot has an aluminum structure and six para resolver o problema da cinemtica inversa. Para
servomotors. Furthermore, the software MATLAB was used to manipuladores robticos simples, as solues algbricas e
develop and train the Neural Network. geomtricas so as abordagens mais comuns para este fim
Keywords: Robotics, Artificial Neural Networks, Inverse [Siciliano et al, 2010]. Enquanto que o desacoplamento
Kinematics. cinemtico um exemplo de uma tcnica clssica utilizada em
robs mais complexos [Spong et al, 2004].

Mostra Nacional de Robtica (MNR) 1


Entretanto, existem alguns problemas ao se utilizar de tais
abordagens. Problemas que so inerentes a prpria natureza da
cinemtica inversa, por exemplo [Siciliano et al, 210]:
As equaes so em gerais no lineares e, por isso,
nem sempre possvel encontrar solues de forma
fechada;
Mltiplas solues podem existir;
Infinitas solues podem existir, por exemplo, no caso
de um manipulador redundante;
Podem no existir solues admissveis.
Devido a esses problemas, torna-se interessante tentar Figura 1: Exemplo de uma Rede Neural Artificial, adaptado
encontrar outras maneiras para encontrar uma soluo para a de Gurney, 1997.
cinemtica inversa. Com esse problema em mente que em 1997 Portanto, visando a compreenso do leitor sobre os passos que
foi publicado um artigo sobre um mtodo de busca heurstica foram seguidos para se atingir o objetivo de resolver a
para soluo de cinemtica inversa escrito por Madrid e Badan cinemtica inversa de um manipulador robtico com 5 graus de
[Madrid e Badan, 1997]. Posteriormente, esse mtodo foi liberdade, segue a estrutura do presente artigo:
aperfeioado por Nicolato em 2007 [Nicolato, 2007]. Alm
desses, existem os mtodos baseados em Redes Neurais O mtodo de Denavit-Hartenberg para obteno do
Artificiais, RNA. O uso de RNA em robtica algo modelo cinemtico direto do rob em estudo
relativamente novo, uma das primeiras publicaes que apresentado na seo 2;
relaciona o uso de RNA com robtica data de 1989 [Kung et al,
1989]. Enquanto que em 1995, Tzafestas publicou um estudo A teoria das Redes Neurais Artificiais apresentada
da arte do uso de RNA em robtica [Tzafestas, 1995]. No caso na seo 3;
especial do uso de RNA para resoluo de cinemtica inversa Os mtodos e materiais utilizados para a realizao do
pode-se citar os trabalhos de Ito, Karlik, Wei, Koker, Oyama, presente trabalho so apresentados na seo 4;
Youssef, Daya e Dash [Ito, 1995; Karlik et al, 200; Wei et al,
2003; Koker et al, 2004; Oyama et al, 2005; Youssef et al, Os resultados obtidos esto expostos na seo 5;
2008; Daya et al, 2010; Dash et al 2011]. Existem tambm
Por ltimo, a concluso e consideraes finais esto
trabalhos nos quais os autores usam uma combinao de
apresentadas na seo 6.
algoritmos genticos com RNA [Martin et al, 2007; Koker,
2013]. Essas publicaes provam que o estudo da cinemtica
inversa utilizando-se das Redes Neurais Artificiais uma rea 2 MODELAGEM CINEMTICA DIRETA
de interesse para diversos pesquisadores. Obter o modelo cinemtico direto de um rob to importante
Segundo Gurney [Gurney, 1997], uma rede neural um quanto seu modelo cinemtico inverso. Isso se deve ao fato de
conjunto interconectado de elementos de processamento que com a cinemtica direta possvel obter a cinemtica
simples, chamados de ns, cuja funcionalidade livremente inversa, o jacobiano e o modelo dinmico do manipulador
baseada em neurnios animais. A capacidade de processamento [Spong et al, 2003; Siciliano et al, 2010]. Portanto, o primeiro
da rede armazenada nas foras de ligao entre as unidades, passo para a realizao do presente trabalho foi a obteno do
denominadas de pesos, obtidas pelo processo de adaptao ou modelo cinemtico direto do rob em estudo, mostrado na
aprendizagem de um conjunto de treinamento. Alm disso, as Figura 2.
Redes Neurais Artificiais tambm so conhecidas como Ao contrrio da cinemtica inversa, a obteno do modelo
aproximadores universais de funes [Hornik et al, 1989; cinemtico direto de um manipulador robtico um processo
Krose et al, 1996]. Portanto, so boas candidatas para serem simples que faz uso de matrizes de transformao homognea.
usadas na resoluo da cinemtica inversa de manipuladores A forma mais comum para obteno desse modelo atravs do
robticos. uso da conveno de Denavit-Hartenberg, DH [Spong et al,
Tipicamente, uma rede neural artificial composta por um 2003; Siciliano et al, 2010]. Nessa conveno, um sistema de
conjuntos de entradas e um conjunto de sadas. Uma RNA pode coordenadas fixado em cada junta do rob. Essas juntas
ser composta por camadas de neurnios entre as entradas e as podem possui movimentos de rotao ou translao em torno
sadas. Essas camadas intermedirias de neurnios so de seu eixo. Uma matriz de transformao homognea
conhecidas pelo nome de Camadas Escondidas, do ingls atribuda para cada sistema de coordenadas fixado. Essas
Hidden Layers. Uma RNA pode ter um nmero arbitrrio de matrizes contm informaes de orientao e posio do
camadas escondidas e cada uma delas podem ter um nmero sistema coordenado atual em relao ao sistema anterior e pode
arbitrrio de neurnios [Gurney, 1997; Krose et al, 1996]. Por ser escrita da seguinte forma:
exemplo, na Figura 1 mostrada uma RNA com 4 entradas, 2

[ ]
cos (i ) sin( i)cos( i) sin(i )sin( i ) ai cos( i)
sadas e 1 camada escondida com 3 neurnios. sin(i ) cos (i )cos (i ) cos(i )sin(i ) ai sin( i)
Ai = , (1)
0 sin( i) cos(i ) di
0 0 0 1

onde i, i, ai e di, so parmetros DH associados com o elo i e


a junta i. Geralmente, os nomes dados a esses parmetros so:
link length, link twist, link offset e joint angle. Mais
informaes sobre esses parmetros podem ser encontradas em
Mostra Nacional de Robtica (MNR)
[Siciliano et al, 2010, Corke, 2011, Spong et al, 2004]. x=c1 (30 c 234153 s 234 +95 c 23 +105 c2 ) ;
Portanto, para se determinar as matrizes de cada elo
necessrio montar uma tabela com esses parmetros que, no y= s1 (30 c234153 s234 +95 c23 +105 c 2) ;
caso do rob em estudo, encontra-se na Tabela I. z=153 c234 +30 s 234+95 s 23 +105 s 2 +72 .
Sendo que a notao utilizada tem o seguinte significado:
ci =cos(i ) ;
si =sin (i ) ;
cijk =cos(i + j + k ) ;
sijk =sin (1 +2 + 3) .

3 REDES NEURAIS ARTIFICIAIS


As redes neurais artificiais so baseadas nos neurnios naturais
encontrados nos animais. As RNAs so consideradas sistemas
de computao paralela e possuem a habilidade de se adaptar,
aprender, aproximar funes, generalizar, agrupar e organizar
dados [Gurney, 1997; Krose et al, 1996]. Devido a essas
caractersticas que esse tipo de rede se mostra promissor para a
Figura 2: Rob manipulador com 5 graus de resoluo de uma infinidade de problemas.
liberdade. Historicamente, os primeiros trabalhos a introduzir esse
Por ltimo, para se determinar a orientao e a posio final da assunto datam de 1943 [McCulloch e Pitts, 1943]. Entretanto,
garra do rob necessrio multiplicar todas as matrizes ao houve uma poca de desinteresse no estudo das RNAs devido
longo da cadeia cinemtica. Para o caso do rob em estudo, ao trabalho de Minsky e Papert de 1969 em que mostrava as
tem-se: deficincias do modelo perceptron. Entretanto, na dcada de
80, o interesse pelas redes neurais reapareceu devido a
1
T 5= A1 A2 A3 A4 A5 . (2) evoluo dos sistemas computacionais e a descoberta da
retropropagao, uma tcnica importante para o treinamento de
Tabela I - Parmetros DH para o rob em estudo. redes neurais [Krose et al, 1996].
Link ai i di i Como dito na introduo deste trabalho, uma rede neural
* artificial um conjunto de ns interconectados, sendo cada n
1 0 90 72 mm 1 chamado de neurnio. Entretanto, a fora da rede neural no
2 105 mm 0 0 2
* est no n em si, mas sim no peso de suas conexes. Para
obteno dos pesos adequados para uma determinada tarefa
*
3 95 mm 0 0 3 necessrio que a rede passe por um processo de adaptao ou
* treinamento. Nesse processo, so apresentados a rede um
4 30 mm -90 0 4 conjunto de treinamento, que consistem nas entradas e sadas
5 0 0 153 mm 5
* desejadas. Portanto, durante o processo de treinamento, os
pesos da rede so ajustados at que o valor predito pela rede
Portanto, o modelo cinemtico direto do rob em estudo o seja menor que o erro desejado em relao aos valores reais.
seguinte: Aps o processo de treinamento, a rede ser capaz de
generalizar os dados, no apenas para as entradas e sadas

[ ]
n x sx a x x utilizadas durante o treinamento, mas, tambm, para entradas
n s ay y desconhecidas [Gurney, 1997; Krose et al, 1996].
T 15= y y , (3)
n z sz a z z
0 0 0 1 4 MATERIAIS E MTODOS
Os materiais utilizados para a realizao do presente trabalho
onde:
foram os seguintes:
n x =s 1 s5c5 (c 4 (c 1 s2 s3c1 c2 c3 )+s 4 (c1 c2 s3 +c 1 c 3 s 2)) ;
Um rob manipulador com 5 graus de liberdade,
n y =c 1 s5c5 (c 4 ( s1 s 2 s 3c2 c3 s 1)+s 4 (c 2 s1 s3 +c3 s 1 s2 )) ; acionado por quatro servomotores do tipo TR213 e
dois servomotores do tipo TR205, mostrado na Figura
n z=s 234 c5 ; 2;
s x =s 5 (c 4 (c1 s 2 s 3c1 c2 c3 )+ s4 ( c1 c2 s 3+c 1 s2 ))c 5 s1 ; Um microcontrolador Arduino Uno Rev. 3,
s y =c 1 c 5+ s5 (c 4 ( s1 s 2 s 3c 2 c 3 s 1)+s 4 (c 2 s1 s 3 +c 3 s1 s 2 )) ; semelhante ao mostrado na Figura 3;
Uma fonte para alimentar os servomotores do tipo
s z=s123 s 5 ;
ATX;
a x =s 123 c1 ;
Software MATLAB;
c123 c123
ay= ; Neural Networks Toolbox;
2 2
Mostra Nacional de Robtica (MNR) 3
Robotics Toolbox [Corke, 1996]. trajetria mostrada na Figura 5. Essa trajetria seria a
realizao de uma simples tarefa de transporte, pegar um objeto
em um local e coloc-lo em outro local.
Para a obteno dos melhores resultados, foi utilizada uma rede
neural do tipo feedforward, Figura 1, com 3 camadas
escondidas, contendo, respectivamente, 17, 15 e 12 neurnios.
Alm disso, em cada camada escondida foi utilizada a funo
de transferncia log-sigmoid. Essa rede possui 12 entradas e 4
sadas, Figura 5. Sendo as entradas os valores da orientao e
posio final da garra do rob. Enquanto que as sadas so os
valores de cada junta do rob. O treinamento da rede foi feito
utilizando a funo trainbr e um conjunto de treinamento com
86016 dados de entrada e 28672 dados de sada. Esses dados
foram divididos de forma randmica sendo 15% usados na
validao e 85% usados no teste da rede. A taxa de
aprendizagem foi de 0,2 e a rede foi treinada por 3000
iteraes.
Utilizando-se desses parmetros se obteve um erro de
10
Figura 3: Arduino Uno Rev. 3. treinamento da ordem de 10 , conforme ilustrado na Figura
6. Por fim, ao aplicar a rede neural treinada na trajetria
Alm disso, o mtodo seguido foi trabalhar de forma simulada 2
desejada, foi obtido um erro da ordem de 10 mm, conforme
no software do MATLAB e, ao obter-se resultados
apresentado na Figura 7.
satisfatrios, transferir o trabalho para o rob real. Sendo
assim, foram seguidos os seguintes passos para o treinamento e Portanto, o mtodo estudado no presente artigo pode ser
teste da rede neural artificial: utilizado at em tarefas que requerem um alto nvel de
preciso. Alm disso, sendo o treinamento da rede neural a
Levantamento do modelo cinemtico do rob em
nica etapa do processo que exige grande poder
estudo;
computacional, o mtodo em estudo pode ser aplicado para
Obteno dos dados de treinamento da rede neural solucionar a cinemtica inversa de um manipulador em tempo
pela utilizao do espao de trabalho do rob. Sendo real, durante a realizao da tarefa.
os dados de treinamento compostos por;
Dados de entrada: todos os valores possveis
para a orientao e a posio da garra do
rob;
Dados de sada: os valores correspondentes
de cada junta do rob;
Treinamento da rede neural para diferentes
parmetros;
Elaborao de uma trajetria para testar os resultados
do treinamento da rede neural.
Seguindo os passos citados acima foram obtidos resultados
satisfatrios que sero detalhados na prxima seo.

5 RESULTADOS
Devido ao nmero de pginas limitados para a escrita deste
artigo sero apresentados nesta seo apenas os melhores
Figura 5: Trajetria do rob.
resultados obtidos na realizao do trabalho. Alm disso, a rede
neural foi treinada apenas com 4 graus de liberdade, pois o 5
grau de liberdade constitui apenas uma rotao em torno do
eixo Z do sistema de referncia da garra do rob.
Para testar os resultados obtidos no treinamento das redes
neurais utilizadas no presente trabalho, foi elaborada a

Figura 4: Arquitetura da rede utilizada.


Mostra Nacional de Robtica (MNR)
REFERNCIAS BIBLIOGRFICAS

Spong, M. W.; Hutchinson, S.; Vidayasagar, M. Robot


Dynamics and Control. 2nd. ed. John Wiley & Sons,
Inc, 204. 496p. ISBN 978-0471612438.
Mittal, R. K. Robotic and Control. Tata McGraw Hill, 2003.
Siciliano, B. et al. Robotics: Modelling, Planning and Control.
Springer, 2010.
Corke, P. Robotics, Vision and Control: Fundamental
Algorithms in Matlab. Springer, 2011.
Madrid, M.; Badan, A. Heuristic Search method for
continuous-path tracking optimization on high-
performance industrial robots. Control Engineering
Practice, 1997. v. 5, n. 9, p. 1261-1271, set. 1997. ISSN
Figura 6: Erro quadrtico mdio do treinamento da rede 09670661.
neural. Nicolato, F. Estudo e Implementao de um Mtodo de
Cinemtica Inversa Baseado em Busca Heurstica para
Robs Manipuladores: Aplicao em Robs
Redundantes e Controle Servo Visual. 87 p., Tese
(Doutorado) Universidade de Campinas, 2007.
Tzafestas, S. Neural networks in robotics: state of the art.
Proceedings of the IEEE International Symposium on
Industrial Electronics. Atenas. IEEE, 1995. v. 1, p 12-
20. ISBN 0-7803-2683-0.
Ito, K. Regularization of inverse kinematics for redundant
manipulator using neural networks inversions.
Proceedins of ICNN'95 International Conference on
Neural Networks. IEEE, 1995. v. 5, p. 2726-2731.
Karlik, B.; Aydin, S. An improved approach to the solution of
inverse kinematics for robot manipulators. Engineering
Applications of Artificial Intelligence, 2000, v. 13, n. 2,
p. 153-164, abr. 2000. ISSN 09521976.
Wei., L.-X.; Wang, H.-R.; Li, Y. L. A new solution for inverse
Figura 7: Resultado final. kinematics of manipulator based on neural network.
Proceedings of the 2003 International Conference on
6 CONCLUSO E DISCUSSO Machine Learning and Cybernetics. IEEE, 2003, v. 2, n.
1, p. 1201-1203.
Conforme demonstrado pelos resultados, a utilizao de redes
neurais para resoluo da cinemtica inversa de manipuladores Kker, R. et al. A study of neural network based inverse
robticos bastante satisfatrio. Com um erro entre o valor kinematics solution for a three-joint robot. Robotics and
desejado e o predito pequenos, as RNAs podem ser usadas em Autonomous Systems, 2004, v. 49, n. 3-4, p. 227-234,
tarefas que requerem bastante preciso. dez. 2004. ISSN 09218890.
Ao longo do desenvolvimento deste trabalho foram feitas Oyama, E. et al. Inverse kinematics learning for robotic arms
algumas constataes interessantes. Da forma como with fewer degrees of freedom by modular neural
apresentada nesse artigo, as RNAs no so adequadas para network systems. 2005 IEEE/RSJ International
resoluo de cinemtica inversa de manipuladores redundantes, Conference on Intelligent Robots and Systems. IEEE,
manipuladores que possuem mais graus de liberdade do que o 2005. p. 1791-1798. ISBN 0-7803-8912-3.
seu espao de trabalho. O exemplo tpico desse fato quando
se tenta utilizar a metodologia apresentada em um rob planar Youssef, K.; Woo, P.-Y. Robotic position/orientation control
com 3 graus de liberdade. Devido as redundncias acaba-se using neural networks, 2008 IEEE International Joint
criando um conjunto de dados de treinamento confuso para a Conference on Neural Networks (IEEE World Congress
rede e, por isso, a rede no consegue convergir para o resultado on Computational Intelligence). Hong Kong: IEEE,
esperado. 2008. p 310-314. ISBN 978-1-4244-1820-6.
Portanto, a maneira como foi desenvolvida o presente trabalho Daya, B.; Khawandi, S.; Chauvet, P. Neural network system for
apresenta bons resultados apenas para robs no redundantes. inverse kinematics problem in 3 DOF robotics. In: 2010
Como um rob planar com 2 graus de liberdade ou um rob 3D IEEE Fifth International Conference on Bio-Inspired
com no mximo 6 graus de liberdade. Computing: Theories and Applications (BIC-TA). IEEE,
2010. p. 155001557. ISBN 978-1-4244-6437-1.

Mostra Nacional de Robtica (MNR) 5


Dash, K. et al. A neural network based inverse kinematic Krose, B.; Smagt, P. V. D. An Introduction to Neural Networks.
problem. 2011 IEEE Recent Advances in Intelligent Eighth. Amsterdam: University of Amsterdam, 1996.
Computational Systems, 2011, Ieee, p. 471-476, 2011. 135 p.
Martn, J. A. H.; Lope, J.; de Santos, M. Evolution of Neuro- McCulloch, W. S., Pitts, W. (1943). A logical calculus of the
controllers for Multi-link Robots. Innovations in Hybrid immanent in nervous activity. Bulletin of Mathematical
Intelligent Systems, 2007, v. 44, p. 175-182, 2007. Biophysics, 5, 115-133.
Kker, R. A genetic algorithm approach to a neural-network- Minsky, M., Papert, S. (1969). Perceptrons: An Introduction to
based inverse kinematics solution of robotic Computational Geometry. The MIT Press.
manipulators based on error minimization. Information
Corke, P. I. A robotics toolbox for MATLAB. IEEE Robotics &
Sciences, 2013, v. 222, p. 528-543, fev. 2013. ISSN
Automation Magazine, 1996, v. 3, p. 24-32, mar 1996.
00200255.
Gurney, K. An Introduction to Neural Networks. London: UCL
Press. 1997. 148 p. ISBN 0203451511.
Hornik, K.; Stinchcombe, M.; White, H. Multilayer
feedforward networks are universal approximators.
Neural Networks, 1989, v. 2, p. 359-366, 1989.

Mostra Nacional de Robtica (MNR)