Beruflich Dokumente
Kultur Dokumente
Proceedings BrazilianConference
Conferenceon
onNeural
Neural Networks
Networks -- IV
IV Congresso Brasileirode
Congresso Brasileiro deRedes
RedesNeurais
Neurais
pp.pp.
350-355,
000-000,July
july20-22, 1999 --ITA,
20-22,1999 ITA, So
So Jos
Jos dos
dos Campos
Campos --SP
SP--Brazil
Brazil
Muitos processos prticos envolvem comportamentos Uma rede neural feedforward multicamadas consiste de
no-lineares. Todavia, os robs, sistemas altamente no um determinado nmero de neurnios interconectados e
lineares e acoplados, so exemplos particularmente organizados em sucessivas camadas. Cada neurnio da rede
adequados para teste de estratgias de controle baseadas em tem habilidade independente de processamento e no tem
redes neurais artificiais. Dentre as diversas tentativas de qualquer interconexo com outros neurnios da mesma
controle atravs de redes neurais, destacam-se aquelas onde camada. A descrio matemtica genrica da rede neural
se procura compensar as no linearidades inerentes com q camadas :
dinmica dos robs [10],[11],[12],[13] e [14]. Neste
trabalho, usa-se o principio do controle atravs do torque
y (t%1) ' j wi s j wik s ...s j wsj
Hq Hq&1 n
computado efetuando-se a compensao atravs de uma q q&1 1
rede neural de alimentao direta. i'1 k'1 i'1
(1)
y (t&j%1)% j
Ao contrrio de alguns trabalhos onde a compensao m
parcial, efetua-se a compensao completa da equao ws,1 n%j u(t&j%1) ... ,
j'1
dinmica. Isto foi possvel atravs do treinamento off-line de
uma rede neural com 20 neurnios na sua camada
intermediria. Os detalhes do treinamento da rede, o projeto
onde ^y(t+1) a sada estimada pela rede neural, y(t) e u(t)
de hardware e os resultados obtidos em laboratrio com um
so, respectivamente, as sadas e as entradas do processo,
rob de seis juntas rotacionais so apresentados neste artigo.
Wsj k so os pesos sinpticos na camada k. A funo de
O hardware implementado em laboratrio foi
desenvolvido atendendo as exigncias do projeto. ativao : s(.) = {1 + exp [-(.)]}-1.
Entretanto, alguns fatores importantes foram levados em A rede neural utilizada no projeto tem a estrutura de 3
considerao uma vez que, optou-se por usar camadas: uma de entrada, uma intermediria e uma de sada
microcontroladores com arquitetura RISC, de modo a [8, 11, 12], conforme ilustrao da figura 1.
facilitar sua aplicao tanto em hardware como em software. A entrada para a rede neural um vetor, contendo as
Dentre estes, pode-se citar: facilidade de aquisio no posies, velocidades e aceleraes de comando das juntas
mercado, custo reduzido, de forma a no inviabilizar o do rob. Os valores de entrada e sada da rede neural so
001
350
normalizados entre -1 e 1. A sada composta de trs
vetores contendo respectivamente os torques no tempo (t) 1
uj '
desenvolvidos em cada uma das juntas do rob. A camada &j k Wkj h k (3)
de entrada formada por 18 elementos, os quais esto 1 %e
conectados a um conjunto de 20 neurnios na camada
intermediria, que por sua vez esto conectados a outros
Onde:
seis na unidade de sada. A camada intermediria e a
Wkj = Elemento da matriz de pesos situada entre a
camada de sada usam funo de ativao do tipo sigmoidal.
camada intermediria e a sada.
hk = Sada da camada intermediria.
b
y(t) W1 d) Calcula-se o valor de )Wkj a ser adicionado matriz de
G1 X1
S pesos Wkj.
b
y(t-1)
W2
G2 X2
S
! b )Wkj ' 0 *j hk % " )Wkj (n&1) (4)
y(t-n) b
Ym(t)
G3 X3
S '
G
b
u(t) Onde:
u(t-1)
!
! ! ! b
b
0 = Taxa de aprendizagem.
*j = Erro entre o valor desejado e o obtido na sada da
rede.
u(t-m) Yn(t) " = Fator de amortecimento.
G
XN
S '
)Wkj (n-1) = ltimo valor adicionado matriz de pesos
Figura 1. Estrutura da Rede Neural com uma camada Wkj.
intermediria. No trabalho, o fator de amortecimento " (expresso na
eq. 4), que determina o efeito da variao do peso anterior
para o clculo do prximo, na direo do mapeamento
desejado, usado no treinamento da rede neural, foi de 0,001.
O treinamento da rede neural realizado aps a coleta No sentido de reduzir o tempo de aprendizagem, variou-se
de 3600 dados provenientes do acionamento aleatrio das a taxa de aprendizagem 0 que determina o ganho, a cada
seis juntas do rob. Geraram-se, ento, doze vetores iterao do algoritmo, na faixa compreendida entre (0,65 a
contendo as informaes de entrada e sada da planta. O 0,018).
algoritmo utilizado para treinamento da rede neural foi o de e) Atualizam-se as matrizes de pesos )Wkj e )Vik , respecti-
propagao retroativa de erro [7]. Os dados relativos s vamente.
entradas e sadas foram medidos em tempos fixos de f) Repetem-se os passos de a a e at que o erro quadrtico
amostragem. A entrada para a rede neural um vetor, mnimo estabelecido, seja atingido.
contendo as posies, velocidades e aceleraes de Este procedimento faz com que, durante o processo de
comando das juntas do rob. Este esquema, permite que a aprendizagem, as conexes dos pesos sejam ajustadas para
rede neural seja treinada off-line. minimizar a soma quadrtica de erro entre as sadas
desejadas e as sadas da rede neural. Os sinais de erro so
A seguir, so apresentados os seguintes passos
ento propagados retroativamente para ajustar os pesos das
essenciais para treinamento da rede neural.
conexes.
a) Apresentam-se os vetores de posio, velocidade e
acelerao entrada da rede neural.
b) Calcula-se a sada da camada intermediria utilizando-se 3. Estrutura da planta.
a seguinte equao:
Como os robs se caracterizam por terem
1 comportamentos no lineares e efeitos de acoplamentos
hk '
&j i V ik S i (2) entre juntas, tais fatores dificultam o controle em
1% e velocidades altas, principalmente quando so empregados
mtodos de controle convencionais. Na tentativa de superar
estas dificuldades, vrios algoritmos de controle usando as
Onde: caractersticas dinmicas do rob manipulador tm sido
V ik = Elementos da matriz de pesos situada entre a propostos [1],[4],[5],[6],[9].
camada de entrada e a intermediria. Como as redes neurais so apropriadas para se
Si = Vetor de entrada. aproximar mapeamentos no lineares, elas se tornaram uma
c) Calcula-se a sada da rede com a seguinte equao: poderosa ferramenta de controle. Surgiu, ento, um novo e
002
351
amplo campo de pesquisas denominado neurocontrole, que
pode ser definido como: o uso de redes neurais como
controladores. Diversas maneiras de incluir redes neurais
q d
+
q r
k ++
J Rob
q
003
352
real, superviso e controle. A figura 4 ilustra o diagrama de gerar dois sinais PWM, independentes do processamento da
blocos da interface de dados. CPU, gerar interrupes pelo hardware interno de modo que
um dos registradores de 16 bits possa ser usado como
registrador de perodo programvel, nmero de
temporizadores e ou /contadores. Alm do mais, enquanto
uma instruo estiver sendo executada e valores estiverem
sendo lidos ou escritos na memria ou em I/O pela via
apropriada, outra instruo j estar sendo carregada pela
via de memria de programa.
Os circuitos amplificadores, usados para acionamento
das juntas, convertem os sinais PWM provenientes dos
microcontroladores em tenses de sada proporcionais s
respectivas razes cclicas dos sinais PWM. Estes circuitos
so implementados usando uma ponte em H com
transistores darlington.
5. Resultados experimentais.
Usando dados reais obtidos atravs de medies de
posio, velocidade, acelerao e de torque do rob, aps
Figura 4- Diagrama de blocos da interface de dados. o trmino de cada seo de treinamento da rede neural,
verificou-se o tempo gasto e a taxa de caimento do erro
quadrtico. Em seguida, alterou-se a taxa de aprendizagem
e realizou-se novo treinamento, sempre verificando o tempo
O hardware foi desenvolvido de forma que trs blocos gasto e a taxa de erro. Posteriormente, o mesmo
idnticos pudessem controlar o sistema. Sendo assim, a procedimento foi realizado com o nmero de neurnios na
figura 5 ilustra a arquitetura interna de um nico chip. camada intermediria e por ltimo, combinando os dois
Observa-se que ela baseada em registradores com o procedimentos. Observou-se que durante o treinamento da
barramento de memria de dados separado do barramento rede neural, o ajuste do fator de amortecimento exerceu
de memria de programa (caracterstica da arquitetura pouca influncia na convergncia da curva de
RISC). aprendizagem.
Os resultados obtidos ao final do processo de
treinamento de uma nica rede neural capaz de aprender o
comportamento dinmico do rob manipulador com seis
graus de liberdade, so mostrados nas figuras 6, 7, 8, 9,10
e 11.
Figura 5- Diagrama de blocos do microcontrolador As figuras 12(a), (b) e (c) ilustram os resultados
PIC16C73A. provenientes do rastreamento de trajetria obtidos da juntas
1, 2 e 3 pelo controlador neural implementado. O tempo
para completar a trajetria foi estabelecido em 8,0s. A
Alguns processos considerados atrativos na escolha do trajetria de referncia foi gerada dentro do espao de
microcontrolador PIC16C73A foram: sua habilidade de trabalho do rob MA2000, entre (0 - 270).
004
353
Figura 7- Resposta da rede neural - Junta 2. Figura 11- Resposta da rede neural - Junta 6.
005
354
6. Concluso. [4] Liu, C. H. A comparison controller design and simulation
for an industrial manipulator. IEEE Trans. Ind.
Electron.,vol. IE-33, n 1, pp. 58-65, Feb, 1986.
Quando no se necessita de preciso elevada no
[5] Luh, J. Y. S., Walker, M. W. & Paul, R. P. C. On-line
posicionamento, com uma boa sintonia, os controladores computacional scheme for mechanical manipulators. J.
convencionais podem apresentar resultados excelentes. Este Dyn. Syst., Meas. Contr., vol. 102, pp. 69-76, june, 1980..
o motivo pelo qual eles so usados na maioria do robs [6] Luh, J. Y. S. Conventional controller design for industrial
comerciais existentes. Entretanto, quando preciso um robots - A tutorial. IEEE Trans. Syst. Man. Cyber.,vol.
fator fundamental, mesmo em velocidades no to altas os SMC-13, n 3, Mai, 1983.
mtodos convencionais se tornam inadequados. [7] Rumelhart, D. McClelland, J., 1986. Parallel Distributed
O mtodo mostrado neste trabalho apresentou resultados Processing. Vol. 1 and 2, MIT Press, Cambridge, MA, 4th
bastante promissores quando empregado no controle de um Edition.
rob de seis juntas. A sintonia foi facilmente obtida, ou seja, [8] Narenda, K. S. & Parthasarathy, K., Identification and
Control of Dynamical Systems Using Neural Networks.
os parmetros KD e KP so escolhidos por tentativa e erro de
IEEE Transactions on Neural Networks, Vol.1N1, pp.4-26,
forma que o erro de controle atinja assintticamente o valor march, 1990.
zero, bem como o seguimento de trajetrias dinmicas. Vale [9] Psaltis, D., Sideris, A. and Yamamura, A.A., A Multilayered
lembrar que todos os termos dinmicos, do sistema, foram Neural Network Controller. IEEE Control Systems Mag.,
considerados ( exceo da carga no efetuador). Para vol. 8, pp. 17-21, April, 1988.
obteno dos resultados aqui apresentados, o tempo [10] Kawato, M., Furukawa, K. and Suzuki, R., A hierarchical
necessrio para treinamento da rede em uma mquina neural network model for control and learning of voluntary
Pentium 200 Mhz foi de 298.26 segundos. Outro ponto movement. Biol. Cybern., Vol. 57, pp. 169-185, 1987.
interessante a se notar que as respostas ao degrau das [11] Alsina, P. J. & Gehlot, N. S., Setembro 1994. Identificao
juntas, ficaram praticamente idnticas, o que leva Modular de Parmetros Dinmicos de Manipuladores
concluso de que todas atingiram um grau de aprendizagem Robticos. Anais do 10 CBA, Rio de Janeiro, Brasil, Vol.
2, pp. 1004-1009.
praticamente no mesmo instante. O controle pode ser
[12] Oliveira, S. R. J. & Teixeira, E. P. Identificao da
implementado na prtica com o mnimo de hardware e Dinmica Inversa de Sistemas No-Lineares Atravs de
software. O estudo mostra tambm que possvel controlar Redes Neurais Artificiais. I SBAI - UNESP, Rio Claro,
com preciso um rob no rastreamento de trajetrias. setembro, 1993.
[13] Corra, G. R., Teixeira, E. P. e Oliveira S. R. J.,
Referncias. implementacion de un control neural de multiples
propositos. Revista internacional Informacion Tecnologica
[1] Craig, J. J., Adaptative Control of Mechanical - CIT, Vol. 9, N 03, pp. 81-87, 1998.
Manipulators. Reading MA: Addison-Wesley, 1988. [14] Tanomaru J. & Omatu, S., Process Control by On-Line
[2] Craig, J. J., Introduction to Robotics: Mechanics and Trained Neural Controllers. IEEE Transactions on
Control. Reading MA: Addison-Wesley, 1986 Industrial Eletronics, Vol. 39, N.6, Dec. 1992.
[3] Paul, R. P., Robot Manipulators: Mathematics, [15] Microchip Techonology Incorporated, PIC16C7X Data
Programming and Control. Cambridge, MA: M.I.T. Pres, Sheet, DS30390E, USA, 1997.
1987.
006
355