Universidade Federal do Rio Grande do Norte
Centro de Tecnologia
Programa de P´
os-Graduac
¸˜
ao em Engenharia El´
etrica
Patricia Nishimura Guerra
Modelagem Linear e Identifica¸
c˜
ao do Modelo
Dinˆ
amico de um Robˆ
o M´
ovel com Acionamento
Diferencial
Orientador: Prof D.Sc. Pablo Javier Alsina
Co-orientador: Prof D.Sc. Adelardo Adelino Dantas de Medeiros
Natal, RN
Patricia Nishimura Guerra
Modelagem Linear e Identifica¸
c˜
ao do Modelo
Dinˆ
amico de um Robˆ
o M´
ovel com Acionamento
Diferencial
Disserta¸c˜ao submetida ao Programa de
P´os-Gradua¸c˜ao em Engenharia El´etrica do
Cen-tro de Tecnologia da Universidade Federal do
Rio Grande do Norte, como parte dos
requi-sitos necess´arios para a obten¸c˜ao do grau de
Mestre em Ciˆencias (M.Sc.).
Orientador: Prof D.Sc. Pablo Javier Alsina
Co-orientador: Prof D.Sc. Adelardo Adelino Dantas de Medeiros
Natal, RN
Agradecimentos
Agrade¸co a todos que direta ou indiretamente ajudaram a realiza¸c˜ao deste trabalho.
Agrade¸co aos meus orientadores Pablo e Adelardo, pelas id´eias, solu¸c˜oes, paciˆencia e
encorajamento. Agrade¸co aos amigos Marcelo, Antˆonio, Auciomar, Anne, Frederico e
Diogo, pela importante ajuda e pela companhia e amizade durante todo este mestrado.
Agrade¸co aos professores Aldayr e Francisco Mota, pelas valiosas contribui¸c˜oes durante a
qualifica¸c˜ao. E, finalmente, agrade¸co tamb´em aos meus familiares, que sempre apoiaram
Sum´
ario
Lista de Figuras v
Resumo vi
Abstract vii
1 Introdu¸c˜ao 1
1.1 Modelos . . . 3
1.2 Revis˜ao da Literatura . . . 4
1.2.1 Modelos para Controle de Robˆos . . . 5
1.2.2 Identifica¸c˜ao de Robˆos . . . 7
1.3 Justificativa do Trabalho . . . 9
1.4 Objetivo e Escopo do Trabalho . . . 9
1.5 Organiza¸c˜ao da Disserta¸c˜ao . . . 10
2 Modelagem 11 2.1 Modelagem Cinem´atica . . . 11
2.2 Modelagem Dinˆamica . . . 14
2.3 Modelo Linear Equivalente . . . 19
3 Estima¸c˜ao Param´etrica 21 3.1 Parametriza¸c˜ao do modelo . . . 22
3.2 Estima¸c˜ao de ∆l . . . 23
3.2.1 Obten¸c˜ao da Distˆancia Percorrida . . . 24
3.2.2 Obten¸c˜ao do Sentido do Movimento . . . 26
3.3 Identifica¸c˜ao de Parˆametros . . . 27
3.3.1 Experimentos Simulados . . . 29
3.4 Valida¸c˜ao do Modelo . . . 33
4 Resultados Experimentais 37 4.1 Introdu¸c˜ao . . . 37
4.1.1 Considera¸c˜oes sobre a Coleta de Dados . . . 38
4.2 Estima¸c˜ao Param´etrica . . . 42
4.2.1 An´alise dos Res´ıduos . . . 45
4.3 Valida¸c˜ao de modelo . . . 50
5 Considera¸c˜oes Finais 54 Referˆencias Bibliogr´aficas 56 A 60 A.1 Obten¸c˜ao do modelo ARX a partir do modelo cont´ınuo no espa¸co de estados 60 A.2 Obten¸c˜ao do modelo cont´ınuo no espa¸co de estados a partir do modelo ARX 63 B 66 B.1 Descri¸c˜ao do robˆo usado nos experimentos . . . 66
B.2 Os robˆos . . . 67
B.3 Sistema de Percep¸c˜ao . . . 68
B.4 Gera¸c˜ao de sinais de controle . . . 69
B.5 Sistema de comunica¸c˜ao . . . 69
Lista de Figuras
1.1 Robˆo utilizado em competi¸c˜oes de futebol de robˆos . . . 1
1.2 Estacionamento de um robˆo m´ovel com restri¸c˜oes n˜ao-holonˆomicas. Em (a) o movimento n˜ao-execut´avel devido `as restri¸c˜oes e em (b) o movimento execut´avel . . . 2
2.1 Representa¸c˜ao esquem´atica do robˆo. . . 12
2.2 Restri¸c˜oes n˜ao-holonˆomicas. . . 14
2.3 An´alogo el´etrico dos comportamentos linear e angular do robˆo . . . 15
2.4 An´alogo el´etrico dos motores direito e esquerdo do mini-robˆo . . . 16
2.5 Comportamento do robˆo para entradas iguais . . . 19
3.1 Diagrama para o c´alculo de |∆l| . . . 24
3.2 Diagrama para o c´alculo do sinal de ∆l . . . 26
3.3 Compara¸c˜ao entre ∆l e ∆l . . . 27
3.4 Exemplo dos sinais de excita¸c˜ao (ed e ee) do sistema . . . 30
3.5 Exemplo da trajet´oria de sa´ıda do sistema (observada durante 30 segundos) 30 3.6 Varia¸c˜ao no tempo de alguns parˆametros . . . 30
3.7 Histogramas dos parˆametros α1 (a) e α2 (b), cujos valores originais s˜ao α1 =−1.77474 eα2 = 0.778119, respectivamente. . . 32
3.8 Histogramas dos parˆametrosγ11(c), δ11 (d) eε11(e), cujos valores originais s˜ao γ11= 5.76967×10− 5 ,δ11 = 1.16121×10− 5 e ε11=−4.54507×10− 5 . . 32
3.9 Histogramas dos parˆametrosγ12(f),δ12 (g) eε12 (h), cujos valores originais s˜ao γ12= 5.70085×10− 5 ,δ12 = 1.17463×10− 5 e ε12=−4.47806×10− 5 . . 33
3.10 Histogramas dos parˆametrosγ21 (i), δ21 (j) e ε21 (l), cujos valores originais s˜ao γ21= 0.0278875, δ21 =−0.00165186 e ε21=−0.0253767 . . . 33
3.11 Histogramas dos parˆametrosγ22(m),δ22(n) eε22(o), cujos valores originais
s˜ao γ22=−0.0272196, δ22 = 0.00159991 e ε22= 0.0247631 . . . 34
3.12 Compara¸c˜ao entre simula¸c˜ao discreta com valor m´edio dos parˆametros
es-timados e simula¸c˜ao cont´ınua . . . 35
3.13 Compara¸c˜ao entre simula¸c˜ao discreta com valor t´ıpico dos parˆametros
es-timados e simula¸c˜ao cont´ınua . . . 35
3.14 Compara¸c˜ao entre trajet´oria observada e trajet´oria estimada . . . 36
4.1 Exemplo dos esquemas de gera¸c˜ao de entradas. . . 39
4.2 Exemplo de trajet´oria realizada pelo robˆo como resultado da aplica¸c˜ao de
sinais persistentemente excitantes. . . 40
4.3 Exemplo dos sinais de sa´ıda (a) x(k) e y(k) e (b) θ(k). . . 40
4.4 Em (a) temos um exemplo de ∆θ calculado sem levar em conta as
espe-cificidades do sistema de vis˜ao e em (b) a mesma figura com o ajuste no
c´alculo de ∆θ. . . 41
4.5 Exemplo dos sinais de sa´ıda transformados ∆l (a) e ∆θ (b). . . 42
4.6 Compara¸c˜ao de magnitude entre ∆l e ∆θ. Na figura (a), ∆l foi
represen-tado em metros e em (b), em cent´ımetros. Em (a) e (b), ∆θfoi representado
em radianos. . . 44
4.7 Exemplo da evolu¸c˜ao dos parˆametrosα1 eα2 no tempo . . . 44
4.8 Exemplo da evolu¸c˜ao dos parˆametros (a)γ11,12, (b)δ11,12e (c)ε11,12 no tempo 47
4.9 Exemplo da evolu¸c˜ao dos parˆametros (a)γ21,22, (b)δ21,22e (c)ε21,22 no tempo 48
4.10 Exemplo de FAC dos res´ıduos obtidos da aplica¸c˜ao do m´etodo dos m´ınimos
quadrados. (a) FAC dos res´ıduos de ∆l e (b) FAC dos res´ıduos de ∆θ. As
linhas pontilhadas representam os limites do intervalo de confian¸ca de 95%. 48
4.11 Exemplo de FAC dos res´ıduos obtidos da aplica¸c˜ao do m´etodo MQE. (a)
FAC dos res´ıduos de ∆l e (b) FAC dos res´ıduos de ∆θ. As linhas
pontilha-das representam os limites do intervalo de confian¸ca de 95%. . . 49
4.12 Exemplo da simula¸c˜ao discreta (um passo a frente) de ∆l (a) e ∆θ (b) no
tempo . . . 53
4.13 Exemplo da simula¸c˜ao discreta (predi¸c˜ao livre) de ∆l (a) e ∆θ (b) no tempo 53
B.1 Arquitetura do sistema robˆo-computador . . . 67
B.2 Robˆo . . . 67
B.3 Aquisi¸c˜ao de imagem . . . 67
B.4 R´otulos dos robˆos . . . 68
B.5 Campo de jogo . . . 68
B.6 C´alculo do ponto central de um c´ırculo . . . 69
Resumo
Esta disserta¸c˜ao apresenta uma metodologia de modelagem e identifica¸c˜ao para um
robˆo m´ovel dotado de rodas. O modelo dinˆamico discreto proposto leva em considera¸c˜ao
a dinˆamica dos atuadores. Ao contr´ario da abordagem cl´assica, onde as coordenadas de
posi¸c˜ao do robˆo (x, y) s˜ao usadas como vari´aveis de estado (o que resulta em um modelo
n˜ao linear), o modelo discreto proposto utiliza o incremento na distˆancia percorrida pelo
robˆo ∆l. Com isto, o modelo resultante ´e linear e invariante no tempo, podendo ser
identificado utilizando qualquer m´etodo cl´assico, como por exemplo os m´ınimos
quadra-dos recursivos. Um problema desta abordagem ´e que a vari´avel ∆l n˜ao ´e diretamente
mensur´avel. Nesta proposta, este problema ´e contornado usando uma estimativa ∆l cal-culada assumindo que o caminho percorrido durante um per´ıodo de amostragem pode ser
aproximado por uma curva de segundo grau. O m´etodo proposto ´e validado atrav´es de
resultados de simula¸c˜ao computacional e experiˆencias pr´aticas.
Palavras-chave: identifica¸c˜ao param´etrica, robˆos m´oveis, modelo linear, m´ınimos
qua-drados.
Abstract
This work presents a modelling and identification method for a wheeled mobile robot,
including the actuator dynamics. Instead of the classic modelling approach, where the
robot position coordinates (x, y) are utilized as state variables (resulting in a non linear
model), the proposed discrete model is based on the travelled distance increment ∆l.
Thus, the resulting model is linear and time invariant and it can be identified through
classical methods such as Recursive Least Mean Squares. This approach has a problem:
∆l can not be directly measured. In this paper, this problem is solved using an estimate
∆l based on a second order polynomial approximation. Experimental data were colected
and the proposed method was used to identify the model of a real robot.
Keywords: parameter identification, mobile robots, linear model, least mean squares.
Cap´ıtulo 1
Introdu¸
c˜
ao
Os robˆos m´oveis e, em particular, os robˆos terrestres tˆem sido muito estudados nos
´
ultimos anos. Para se locomoverem, estes robˆos podem se servir de rodas, esteiras,
“pa-tas” ou outros m´etodos de locomo¸c˜ao. Neste trabalho nos concentraremos nos robˆos
m´oveis dotados de rodas. Um exemplo deste tipo de ve´ıculo rob´otico m´ovel utilizado em
competi¸c˜oes de futebol de robˆos ´e apresentado na figura 1.1.
Figura 1.1: Robˆo utilizado em competi¸c˜oes de futebol de robˆos
Uma caracter´ıstica importante dos robˆos m´oveis dotados de rodas ´e a presen¸ca de
restri¸c˜oes n˜ao-holonˆomicas. Uma restri¸c˜ao n˜ao-holonˆomica impede que o robˆo execute
movimentos normais `a superf´ıcie do corpo de suas rodas. A figura 1.2 apresenta com
clareza como as restri¸c˜oes n˜ao-holonˆomicas se apresentam em uma aparentemente simples
tarefa de estacionamento.
Na figura 1.2, ´e poss´ıvel notar que a trajet´oria mais intuitiva para o estacionamento,
sem levar em considera¸c˜ao o sistema de locomo¸c˜ao, seria uma linha reta deslocando o
robˆo lateralmente para a posi¸c˜ao final desejada (a). No entanto, esta trajet´oria n˜ao ´e
realiz´avel por este sistema de locomo¸c˜ao. Desta forma, ´e necess´ario que seja gerada uma
trajet´oria levando em considera¸c˜ao as restri¸c˜oes n˜ao-holonˆomicas impostas pelo sistema
CAP´ITULO 1. INTRODUC¸ ˜AO 2
( a ) ( b )
Figura 1.2: Estacionamento de um robˆo m´ovel com restri¸c˜oes n˜ao-holonˆomicas. Em (a)
o movimento n˜ao-execut´avel devido `as restri¸c˜oes e em (b) o movimento execut´avel
O problema de controle de robˆos m´oveis n˜ao-holonˆomicos tem sido bastante estudado
nos ´ultimos anos. Este tipo de robˆo pertence a uma classe de sistemas n˜ao-lineares,
multivari´aveis, sub-atuados e com restri¸c˜oes n˜ao-holonˆomicas de movimento, constituindo
assim um problema de controle bastante desafiador.
O projeto destes sistemas de controle pode ser abordado de duas formas: considerando
apenas o modelo cinem´atico do robˆo, ou considerando, adicionalmente, o modelo dinˆamico
do robˆo. O modelo cinem´atico representa as caracter´ısticas geom´etricas diferenciais do
movimento do robˆo, ou seja o mapeamento entre velocidades em diferentes referenciais.
J´a o modelo dinˆamico ´e respons´avel por representar como o robˆo responde `as entradas
de controle externas (torques aplicados `as suas rodas) no decorrer do tempo, levando
em conta sua massa, momento de in´ercia, modelo dinˆamico dos atuadores do sistema e
for¸cas de atrito envolvidas. Controladores que levam em conta o modelo completo do robˆo
(cinem´atico e dinˆamico) devem obter, portanto, resultados melhores e mais abrangentes.
Isso pode ser observado, principalmente, em aplica¸c˜oes de alta precis˜ao ou em aplica¸c˜oes
onde os robˆos atingem altas velocidades.
Para que se possa projetar controladores que levem em conta o modelo completo
do robˆo deve-se, previamente, obter esse modelo realizando a modelagem matem´atica
do robˆo. Uma das t´ecnicas utilizadas neste processo ´e a modelagem caixa-branca ou
modelagem pela f´ısica ou natureza do processo, onde se deve conhecer bem o sistema a
ser modelado e os fenˆomenos envolvidos. Por´em, esta abordagem nem sempre ´e trivial,
principalmente no que diz respeito `a obten¸c˜ao de valores para os parˆametros dinˆamicos.
Um outro tipo de abordagem que pode ser usada na obten¸c˜ao de modelos matem´aticos
´e a identifica¸c˜ao de sistemas. Esta abordagem, ao contr´ario da modelagem caixa-branca,
CAP´ITULO 1. INTRODUC¸ ˜AO 3
ser modelado ´e representado por uma ou mais fun¸c˜oes parametrizadas, cujos parˆametros
s˜ao identificados atrav´es de um conjunto de dados de entrada e de sa´ıda do sistema. A
defini¸c˜ao da estrutura das fun¸c˜oes (modelo) ´e uma tarefa bastante trabalhosa se o sistema
´e completamente desconhecido.
No entanto, em alguns casos, ´e poss´ıvel utilizar t´ecnicas de identifica¸c˜ao de sistemas
juntamente com a modelagem caixa-branca. Este m´etodo ´e conhecido como modelagem
caixa-cinza. Pode-se, por exemplo, utilizar t´ecnicas de identifica¸c˜ao na estima¸c˜ao de
parˆametros dif´ıceis de se obter em um modelo encontrado atrav´es da modelagem pela
natureza do processo. Esta abordagem ser´a utilizada neste trabalho.
Na pr´oxima se¸c˜ao ser˜ao apresentados alguns conceitos sobre modelos, que ser˜ao
utili-zados no cap´ıtulo 2.
1.1
Modelos
Um modelo matem´atico de um sistema real ´e uma representa¸c˜ao aproximada do
com-portamento deste sistema. V´arias representa¸c˜oes diferentes para um mesmo sistema
po-dem existir. Quanto mais real´ıstico o modelo, maior a sua complexidade. Deve-se,
por-tanto, perceber que grau de aproxima¸c˜ao ser´a necess´ario para a aplica¸c˜ao a que se destina
o modelo.
Existem diversos tipos de modelos e diversas formas de se representarem estes modelos.
A seguir mencionam-se os tipos mais comuns.
• Modelos discretos e cont´ınuos - Modelos cont´ınuos representam continuamente a evolu¸c˜ao do sistema no tempo. Em contraste, modelos discretos representam a
evolu¸c˜ao do sistema em instantes de tempo determinados.
• Modelos multivari´aveis e monovari´aveis - Um modelo com mais de uma entrada e/ou mais de uma sa´ıda ´e chamado multivari´avel. J´a os modelos monovari´aveis
pos-suem apenas uma entrada e uma sa´ıda. Pode-se representar sistemas multivari´aveis
atrav´es de modelos monovari´aveis quando decide-se que apenas uma das entradas e
apenas uma das sa´ıdas s˜ao significativas.
CAP´ITULO 1. INTRODUC¸ ˜AO 4
do ponto de opera¸c˜ao. Sistemas n˜ao-lineares s˜ao muitas vezes representados atrav´es
de modelos lineares mais simples.
Modelos dinˆamicos, que representam a evolu¸c˜ao temporal de um sistema, podem ser
representados matematicamente principalmente atrav´es de trˆes formas.
• Fun¸c˜ao de transferˆencia - Descreve a rela¸c˜ao dinˆamica de causa e efeito entre en-tradas e sa´ıdas de um sistema no dom´ınio da frequˆencia. No caso cont´ınuo, ´e a
transformada de Laplace da resposta ao impulsoh(t) do sistema para condi¸c˜oes
ini-ciais nulas. J´a no caso discreto, ´e a transformada Z da resposta ao pulsoh(k) para condi¸c˜oes iniciais nulas. As fun¸c˜oes de transferˆencia s˜ao normalmente representadas
como um quociente de dois polinˆomios.
• Representa¸c˜ao no espa¸co de estados - Esta representa¸c˜ao modela (al´em da rela¸c˜ao entre entrada e sa´ıda) rela¸c˜oes entre vari´aveis internas do sistema no dom´ınio do
tempo. H´a diversas maneiras de representar um sistema no espa¸co de estados, n˜ao
existindo uma representa¸c˜ao ´unica.
• Equa¸c˜ao de diferen¸ca - S˜ao representa¸c˜oes discretas no dom´ınio do tempo espe-cialmente adequadas `a identifica¸c˜ao de sistemas. Como exemplo, pode-se citar o
modelo auto-regressivo com entradas externas (ARX do inglˆes autoregressive with
exogenous inputs).
O robˆo em estudo constitui um sistema dinˆamico n˜ao-linear cont´ınuo. Por´em, como a
supervis˜ao e o controle do sistema ser˜ao realizados atrav´es de um computador e de uma
cˆamera de v´ıdeo digital, pode-se obter e enviar informa¸c˜oes a respeito do robˆo apenas
em instantes de tempo determinados. Por esse motivo, ´e mais adequado que o robˆo seja
modelado como um sistema discreto.
Este robˆo deve ser modelado tamb´em como um sistema multivari´avel. Quanto `as
formas matem´aticas de representa¸c˜ao, as trˆes formas citadas acima ser˜ao utilizadas para
se representar o robˆo no decorrer deste trabalho.
1.2
Revis˜
ao da Literatura
Esta se¸c˜ao est´a organizada da seguinte forma. Primeiramente ser˜ao mostrados os
se-CAP´ITULO 1. INTRODUC¸ ˜AO 5
guida ser˜ao apresentados alguns trabalhos sobre identifica¸c˜ao de sistemas rob´oticos m´oveis
encontrados na literatura.
1.2.1
Modelos para Controle de Robˆ
os
Modelos matem´aticos podem ser utilizados em todas as ´areas do conhecimento. Como
exemplos, podemos citar o trabalho de Randhawa et al. [1] onde um modelo descreve a
natureza da atividade intestinal, ou o trabalho de Wexler et al. [2] que usa um modelo
matem´atico para predizer a for¸ca gerada por m´usculos esquel´eticos em ratos. Em seu
livro [3], Aguirre apresenta outros exemplos de modelos diversos.
No caso dos robˆos m´oveis, dois tipos principais de modelos s˜ao utilizados. Os modelos
cinem´aticos, que correspondem a uma descri¸c˜ao geom´etrica do movimento dos robˆos e os
modelos dinˆamicos, que s˜ao mais complexos pois representam a rela¸c˜ao entre o movimento
do robˆo e os esfor¸cos que o produzem.
Diversos tipos de modelos cinem´aticos ou dinˆamicos foram desenvolvidos para robˆos
m´oveis n˜ao-holonˆomicos. Modelos LTI (linear time invariant- linear invariante no tempo)
s˜ao obtidos normalmente atrav´es da lineariza¸c˜ao por s´erie de Taylor sobre um ´unico
ponto de opera¸c˜ao do sistema. Economou et al. [4] apresenta um modelo do tipo QLPV
(quasi-linear parameter-varying- quase linear com parˆametros variantes) para um robˆo do
tipo carro, utilizado em simula¸c˜oes. Utilizando dados destas simula¸c˜oes, v´arios modelos
locais lineares Takagi-Sugeno s˜ao identificados. A s´ıntese destes modelos resulta em uma
aproxima¸c˜ao para um modelo dinˆamico n˜ao-linear.
Laumond et al. [5] e Luca et al. [6] apresentam modelos cinem´aticos para alguns tipos
de robˆos m´oveis com rodas. Nestes trabalhos ´e demonstrado como transformar estes
modelos n˜ao-lineares em modelos na forma canˆonica encadeada (chained form systems).
Esta representa¸c˜ao tamb´em ´e utilizada por Ge e Zhou [7].
Em um artigo bastante interessante, Campion et al. [8] realizam uma an´alise da
estrutura dos modelos cinem´atico e dinˆamico dos robˆos m´oveis com rodas. Este trabalho
divide os robˆos em cinco classes, caracterizadas pela estrutura geral das equa¸c˜oes dos
modelos. Para cada classe, s˜ao derivadas propriedades estruturais dos modelos cinem´atico
e dinˆamico, levando-se em conta restri¸c˜oes de mobilidade.
CAP´ITULO 1. INTRODUC¸ ˜AO 6
o m´etodo de Newton-Euler ou a abordagem Lagrangeana. Thanjavur e Rajagopalan [9]
modelam um robˆo m´ovel dotado de rodas atrav´es da abordagem de Kane. Este artigo
enfatiza as vantagens do m´etodo de Kane para sistemas n˜ao-holonˆomicos e apresenta o
modelo dinˆamico resultante.
Quando procura-se modelar algum sistema deve-se ter em mente qual ser´a a utiliza¸c˜ao
deste modelo. Desse modo, pode-se realizar a modelagem com o grau de precis˜ao e
complexidade necess´arios. Ap´os a obten¸c˜ao do modelo deve-se realizar testes de utiliza¸c˜ao
para que seja confirmada a viabilidade do mesmo.
Na ´area de rob´otica m´ovel, modelos matem´aticos s˜ao utilizados principalmente em
controle, estima¸c˜ao e simula¸c˜ao. Estimadores de configura¸c˜ao (posi¸c˜ao e orienta¸c˜ao) s˜ao
encontrados em alguns trabalhos realizando a predi¸c˜ao do movimento de robˆos m´oveis.
Pereira et al. [10] utiliza as predi¸c˜oes para compensar atrasos de transporte e melhorar a
resposta transit´oria dos robˆos.
Poucos trabalhos tratando exclusiva e detalhadamente sobre simuladores de robˆos
m´oveis [11] foram encontrados na literatura. Por´em, uma grande parte dos trabalhos
com robˆos m´oveis (por exemplo, em controle e planejamento de trajet´orias) utilizam
simuladores [12], pois nem sempre as plataformas de testes (robˆos) est˜ao dispon´ıveis, e,
mesmo estando, n˜ao ´e conveniente (nem pr´atico) que testes iniciais sejam realizados com
os robˆos.
A maioria dos trabalhos de controle de robˆos m´oveis baseia-se apenas em modelos
cinem´aticos. Estes trabalhos partem do pressuposto de que o sinal de controle el´etrico
´e transformado instantaneamente em velocidades nas rodas desconsiderando, portanto,
os efeitos dinˆamicos provocados pelas for¸cas de atrito, massa e momento de in´ercia, por
exemplo. Por´em, h´a alguns anos, os pesquisadores tˆem-se voltado para a necessidade
da utiliza¸c˜ao do modelo dinˆamico [13]. Essa necessidade torna-se vis´ıvel em opera¸c˜oes
que necessitem de maior precis˜ao ou em movimentos em alta velocidade, onde os efeitos
dinˆamicos citados tornam-se relevantes.
Muitas das estrat´egias de controle para compensa¸c˜ao da dinˆamica de robˆos m´oveis
n˜ao-holonˆomicos s˜ao baseadas em duas malhas de controle, uma mais interna, respons´avel pelo
controle dinˆamico, e outra mais externa, respons´avel pelo controle cinem´atico. Estrat´egias
CAP´ITULO 1. INTRODUC¸ ˜AO 7
A maioria dos trabalhos em controle adaptativo de robˆos m´oveis [12, 14, 15, 16, 17, 18,
19] tamb´em utiliza o modelo dinˆamico, visto que estes trabalhos geralmente s˜ao motivados
pela existˆencia de parˆametros desconhecidos ou conhecidos com incerteza nos modelos e
este tipo de parˆametro ´e encontrado nos modelos dinˆamicos. Isso porque, geralmente, ´e
f´acil realizar medi¸c˜oes dos parˆametros geom´etricos do robˆo (parˆametros que comp˜oem o
modelo cinem´atico).
Maiores detalhes sobre a literatura dispon´ıvel em controle de robˆos m´oveis podem ser
obtidas no trabalho de Vieira et al. [20].
1.2.2
Identifica¸
c˜
ao de Robˆ
os
Normalmente, modelos matem´aticos real´ısticos s˜ao obtidos atrav´es das leis f´ısicas
anal´ıticas que regem o comportamento dos robˆos. Por´em, em alguns casos, os sistemas
s˜ao muito complexos de forma que esta abordagem n˜ao ´e poss´ıvel ou torna-se demasiado
trabalhosa. Pode-se empregar, ent˜ao, uma abordagem conhecida como identifica¸c˜ao de
sistemas.
O modelo matem´atico cl´assico de um robˆo m´ovel possui estrutura semelhante `a do
modelo matem´atico de robˆos manipuladores, de modo que t´ecnicas de identifica¸c˜ao
pa-ram´etrica desenvolvidas para estes ´ultimos podem ser adaptadas para a identifica¸c˜ao de
robˆos m´oveis. No entanto, a maioria destas t´ecnicas pressup˜oe que medi¸c˜oes das
veloci-dades e acelera¸c˜oes do robˆo s˜ao dispon´ıveis, o que geralmente n˜ao ´e verdade.
Poignet e Gautier [21] realizam uma an´alise comparativa entre o m´etodo dos m´ınimos
quadrados ponderados (WLS) e o filtro de Kalman estendido (EKF) para identifica¸c˜ao de
robˆos manipuladores. Os m´etodos utilizam modelos diferentes: o WLS utiliza o modelo
dinˆamico inverso que ´e linear em parˆametros e o EKF se baseia no modelo no espa¸co de
estados obtido do modelo dinˆamico direto. O algoritmo EKF estima tanto as velocidades
quanto os parˆametros enquanto o WLS necessita que as velocidades e acelera¸c˜oes das
jun-tas sejam calculadas separadamente atrav´es de um filtro passa-faixa. Por´em, o algoritmo
EKF consome mais tempo de processamento que o WLS. As estimativas dos parˆametros
s˜ao muito pr´oximas em ambos os m´etodos, se valores iniciais pr´oximos dos reais forem
fornecidos para o EKF.
CAP´ITULO 1. INTRODUC¸ ˜AO 8
de sistemas n˜ao-lineares. Sistemas de inferˆencia neuro-fuzzy adaptativos s˜ao a base deste
estudo e a dinˆamica ´e solucionada atrav´es do m´etodo de Runge-Kutta. O m´etodo ´e
aplicado em um manipulador SCARA de dois graus de liberdade.
Ainda sobre manipuladores, Swevers et al. [23] discute a identifica¸c˜ao experimental de
modelos dinˆamicos para aplica¸c˜ao em controle baseados em modelo, como por exemplo
o controle por torque computado. Na estima¸c˜ao de parˆametros ´e utilizado o m´etodo da
m´axima verossimilhan¸ca (maximum likelihood), baseado em uma estrutura estat´ıstica.
Trabalhos tratando especificamente sobre identifica¸c˜ao de modelos de robˆos m´oveis
com rodas s˜ao mais raros. Tounsi et al. [24] identifica as equa¸c˜oes dinˆamicas de um
robˆo m´ovel com restri¸c˜oes n˜ao-holonˆomicas e as usa para implementar uma lei de
con-trole por torque computado. O modelo linear em parˆametros ´e identificado atrav´es das
t´ecnicas de m´ınimos quadrados. Geralmente, a dificuldade encontrada quando realiza-se
a identifica¸c˜ao do modelo linear em parˆametros (de forma similar `a usada nas t´ecnicas
de identifica¸c˜ao para manipuladores) ´e a obten¸c˜ao das velocidades e acelera¸c˜oes, que nem
sempre s˜ao dispon´ıveis. No trabalho de Tounsi et al., as velocidades s˜ao calculadas em
tempo real usando-se simplesmente a diferen¸ca finita entre posi¸c˜oes filtradas.
Em Pereira [25] e Pereira et al. [10] ´e realizada a identifica¸c˜ao do modelo dinˆamico
de micro-robˆos utilizando o m´etodo dos m´ınimos quadrados estendido. Como o modelo a
ser identificado atrav´es do LMS ´e n˜ao-linear, ´e utilizada uma simplifica¸c˜ao: a orienta¸c˜ao
θ(t), variante no tempo, ´e considerada constante em cada intervalo de amostragem.
Moreira et al. [26] tamb´em realiza a modelagem e identifica¸c˜ao de um robˆo m´ovel
com duas rodas. Neste trabalho, o modelo cinem´atico ´e identificado atrav´es da
modela-gem fenomenol´ogica e o modelo dinˆamico, incluindo a dinˆamica dos atuadores (motores
de corrente cont´ınua), ´e identificado utilizando-se estimadores param´etricos. ´E realizada
uma compara¸c˜ao entre trˆes estimadores: os m´ınimos quadrados simples, vari´aveis
instru-mentais e os m´ınimos quadrados generalizados, concluindo-se que os m´ınimos quadrados
simples produz estimativas piores pois os dados utilizados est˜ao contaminados por ru´ıdos
n˜ao-brancos. O modelo cinem´atico n˜ao-linear ´e discretizado utilizando-se a aproxima¸c˜ao
por diferen¸cas avan¸cadas, cujos resultados, segundo o autor, s˜ao equivalentes aos de uma
integra¸c˜ao pelo m´etodo de Euler com passo igual ao per´ıodo de amostragem.
CAP´ITULO 1. INTRODUC¸ ˜AO 9
se identificar um modelo linearizado, ´e realizar a identifica¸c˜ao do modelo completo
n˜ao-linear atrav´es de t´ecnicas de identifica¸c˜ao de sistemas n˜ao-n˜ao-lineares. Em um de seus
traba-lhos [27], Huaguang e Yongbing prop˜oem um modelo nebuloso hiperb´olico para sistemas
n˜ao-lineares. O modelo proposto pode ser visto como uma rede neural e seus parˆametros
podem ser identificados atrav´es do algoritmo de retropropaga¸c˜ao do erro (
Backpropaga-tion).
1.3
Justificativa do Trabalho
Foi visto que a maioria dos modelos utilizados em controle s˜ao apenas cinem´aticos.
Quanto aos modelos dinˆamicos, a imensa maioria n˜ao inclui a dinˆamica dos atuadores
(motores). Essa dinˆamica, por ser bem mais r´apida, ´e normalmente desprezada. Tamb´em
foi observado que existem poucos trabalhos tratando especificamente de identifica¸c˜ao em
tempo real de robˆos m´oveis.
O modelo dinˆamico desenvolvido neste trabalho para o robˆo m´ovel ´e linear, por´em
totalmente equivalente ao cl´assico modelo n˜ao-linear utilizado normalmente na literatura.
Na obten¸c˜ao deste modelo n˜ao foram realizadas simplifica¸c˜oes nem lineariza¸c˜oes.
A principal contribui¸c˜ao deste trabalho ´e o desenvolvimento deste modelo e a
com-prova¸c˜ao da possibilidade do seu uso.
1.4
Objetivo e Escopo do Trabalho
O principal objetivo deste trabalho ´e realizar a modelagem matem´atica linear e a
identifica¸c˜ao param´etrica em tempo real de um robˆo m´ovel com rodas sem nenhum tipo
de processamento local e observado por vis˜ao computacional.
Os testes pr´aticos deste trabalho foram realizados no futebol de mini–robˆos, projeto
em desenvolvimento na UFRN por alunos de gradua¸c˜ao e p´os-gradua¸c˜ao. No entanto, o
escopo de aplica¸c˜ao deste trabalho ´e bastante amplo, podendo ser utilizado em qualquer
CAP´ITULO 1. INTRODUC¸ ˜AO 10
1.5
Organiza¸
c˜
ao da Disserta¸
c˜
ao
O restante deste texto est´a organizado da seguinte maneira: No cap´ıtulo 2 ´e
apre-sentada a modelagem f´ısica e matem´atica do robˆo m´ovel utilizado neste trabalho. No
cap´ıtulo 3 o modelo ´e parametrizado em uma forma mais adequada para a identifica¸c˜ao
de modelos, a metodologia usada na identifica¸c˜ao do modelo ´e apresentada juntamente
com resultados obtidos atrav´es de simula¸c˜oes. Resultados experimentais, obtidos com
o uso da plataforma descrita no apˆendice B, s˜ao mostrados no cap´ıtulo 4. Finalmente,
no cap´ıtulo 5, os pontos principais do trabalho desenvolvido s˜ao sintetizados e poss´ıveis
Cap´ıtulo 2
Modelagem
Com o desenvolvimento de novas t´ecnicas de projeto de controladores de robˆos
basea-dos em modelos, a modelagem e identifica¸c˜ao de robˆos tˆem ganhado mais destaque e sua
utiliza¸c˜ao tem se ampliado.
Neste cap´ıtulo ´e apresentada a modelagem fenomenol´ogica de um robˆo m´ovel
n˜ao-holonˆomico com duas rodas e acionamento diferencial. A modelagem fenomenol´ogica
consiste na deriva¸c˜ao do modelo matem´atico a partir das leis f´ısicas envolvidas no processo
e na medi¸c˜ao de todos os parˆametros que contribuem para a dinˆamica do processo.
O modelo de um robˆo pode ser dividido em duas partes, um modelo cinem´atico e
outro dinˆamico. O modelo cinem´atico do robˆo representa as caracter´ısticas geom´etricas e
restri¸c˜oes de seus movimentos. O modelo dinˆamico ´e respons´avel por representar como o
robˆo responde `as entradas de controle externas que produzem o movimento no decorrer do
tempo, levando em conta sua massa, momento de in´ercia, modelo dinˆamico dos atuadores
e for¸cas de atrito envolvidas.
Neste cap´ıtulo tamb´em ´e derivado um modelo dinˆamico linear exatamente equivalente
ao n˜ao-linear, que ser´a usado na identifica¸c˜ao e no controle do robˆo.
2.1
Modelagem Cinem´
atica
O sistema modelado consiste em um pequeno robˆo m´ovel dotado de duas rodas com
acionamento diferencial, utilizado em competi¸c˜oes de futebol de robˆos. Este robˆo, de
CAP´ITULO 2. MODELAGEM 12
para cada roda, controlados remotamente via r´adio–enlace por um computador pessoal.
A figura 2.1 mostra uma representa¸c˜ao esquem´atica do robˆo modelado. Nesta figura,
a configura¸c˜ao do robˆo ´e representada por sua posi¸c˜ao no espa¸co cartesiano (x e y, que
´e a posi¸c˜ao do centro do robˆo em rela¸c˜ao a um referencial fixo no espa¸co de trabalho), e
por sua orienta¸c˜ao θ (ˆangulo entre o vetor de orienta¸c˜ao do robˆo e o eixo x do referencial
fixo no espa¸co de trabalho). A seguinte nomenclatura ´e adotada:
d ´e o comprimento do eixo;
rd, re s˜ao os raios das rodas direita e esquerda, respectivamente;
ωd, ωe s˜ao as velocidades angulares das rodas direita e esquerda, respectivamente;
vd, ve s˜ao as velocidades lineares de um ponto nas bordas externas das rodas direita e
esquerda, respectivamente;
v ´e a velocidade linear do robˆo;
ω ´e a velocidade angular do robˆo.
f ´e a for¸ca resultante no robˆo;
τ ´e o torque resultante no robˆo;
τd, τe s˜ao os torques motores nas rodas direita e esquerda, respectivamente;
fd, fe s˜ao as for¸cas motrizes nas bordas externas das rodas direita e esquerda,
respectiva-mente;
Y
X
re
rd
v, f
vd, fd
ve, fe
ω, τ ωd, τd
ωe, τe
d θ
x y
Figura 2.1: Representa¸c˜ao esquem´atica do robˆo.
A velocidade linear v e angular ω do mini-robˆo s˜ao dadas por:
v = vd+ve
2 ω =
CAP´ITULO 2. MODELAGEM 13
Sendo as velocidades lineares das rodas dadas por vd = ωdrd e ve = ωere, ´e poss´ıvel
encontrar as velocidades angulares das rodas do mini-robˆo em fun¸c˜ao das velocidades
linear e angular do mini-robˆo. Assim, tˆem-se:
ωd= 1 rdv+
d
2rdω ωe =
1 rev−
d 2reω
que na forma matricial pode ser escrita como:
ω =ωTvv (2.1)
ou na forma:
v=ωT−1
v ω =
vTω
ω (2.2)
onde:
ω=
⎡ ⎣ωd
ωe
⎤
⎦ v=
⎡ ⎣v
ω
⎤
⎦ ωTv =
⎡
⎣1/rd d/2rd
1/re −d/2re
⎤ ⎦
O vetorvrepresenta as velocidades no referencial do robˆo, com origem no centro do robˆo,
e ω ´e o vetor de velocidades no espa¸co dos atuadores.
O m´etodo de locomo¸c˜ao do robˆo em estudo impede que ele se movimente lateralmente
(perpendicular ao plano das rodas), tendo liberdade para deslocar-se apenas na dire¸c˜ao
em que est´a orientado. Isto ´e expresso por restri¸c˜oes matem´aticas que se enquadram na
categoria das restri¸c˜oes n˜ao-holonˆomicas. De acordo com a figura 2.2, para deslocamentos
incrementais, tem-se:
dx=vdtcosθ → x˙ =vcosθ (2.3)
dy=vdtsenθ → y˙ =vsenθ (2.4)
dθ =ωdt → θ˙=ω (2.5)
Igualando-se o valor de v calculado a partir das equa¸c˜oes (2.3) e (2.4), chega-se `a
restri¸c˜ao n˜ao-holonˆomica:
˙
xsenθ = ˙ycosθ (2.6)
As equa¸c˜oes (2.3), (2.4) e (2.5), que representam omodelo cinem´atico para este robˆo,
podem ser escritas em forma matricial
˙
CAP´ITULO 2. MODELAGEM 14 dx vdt dy v y x θ
Figura 2.2: Restri¸c˜oes n˜ao-holonˆomicas.
onde q= ⎡ ⎢ ⎢ ⎢ ⎣ x y θ ⎤ ⎥ ⎥ ⎥
⎦, q˙ = ⎡ ⎢ ⎢ ⎢ ⎣ ˙ x ˙ y ˙ θ ⎤ ⎥ ⎥ ⎥ ⎦ e
qTv(θ) =
⎡ ⎢ ⎢ ⎢ ⎣
cosθ 0
senθ 0
0 1 ⎤ ⎥ ⎥ ⎥ ⎦
O vetorq representa a configura¸c˜ao do robˆo e o vetor ˙q representa as velocidades no
espa¸co de configura¸c˜ao do robˆo (espa¸co das vari´aveis x,y eθ). Substituindo-se a equa¸c˜ao
(2.2) na equa¸c˜ao (2.7) pode-se obter a rela¸c˜ao entre as velocidades no espa¸co de atuadores
e no espa¸co de configura¸c˜ao:
˙
q=qTv(θ)vTωω (2.8)
Pela defini¸c˜ao da matriz qTv(θ), constata-se que:
qTT v (θ)
qTv(θ) = I
ondeI´e a matriz identidade. Desta forma, pode-se multiplicar a equa¸c˜ao (2.7) porqTT v (θ),
o que leva a:
v=qTT
v (θ) ˙q (2.9)
2.2
Modelagem Dinˆ
amica
A equa¸c˜ao mecˆanica do robˆo pode ser obtida atrav´es das leis de Newton e Euler do
movimento (observe o an´alogo el´etrico dos comportamentos linear e angular na figura
2.3), que podem ser expressas em forma matricial como:
f =Mrv˙ +Brv (2.10)
onde: f = ⎡ ⎣f τ ⎤
⎦ Mr=
⎡ ⎣m 0
0 J
⎤
⎦ Br =
⎡
⎣βlin 0
0 βang
⎤
⎦ v˙ =
⎡ ⎣v˙
˙ ω
CAP´ITULO 2. MODELAGEM 15
sendo m a massa total do mini-robˆo, J o seu momento de in´ercia, βlin ´e o coeficiente de
atrito entre o robˆo e o solo durante os movimentos lineares eβang ´e o respectivo coeficiente
de atrito, para movimentos angulares.
f,τ
v,ω
m, J
1 βlin,
1 βang
Figura 2.3: An´alogo el´etrico dos comportamentos linear e angular do robˆo
As for¸cas exercidas sobre as rodas s˜ao fd = τd/rd e fe = τe/re enquanto a for¸ca e o
torque exercidos sobre o mini-robˆo s˜ao, respectivamente:
f =fd+fe τ =fdd
2−fe d
2 (2.11)
Substituindofd e fe nas equa¸c˜oes 2.11, tem-se:
f = 1 rdτd+
1
reτe τ =
d 2rdτd−
d 2reτe
que, escrevendo na forma matricial torna-se:
f =ωTvTτ (2.12)
onde τ = [τd τe]T.
Assim, igualando-se as equa¸c˜oes 2.10 e 2.12, obt´em-se:
ωTT
v τ =Mrv˙ +Brv (2.13)
Com rela¸c˜ao `a dinˆamica dos atuadores, os an´alogos el´etricos dos motores direito e
esquerdo s˜ao apresentados na figura 2.4. As nomenclaturas adotadas s˜ao:
ed, ee s˜ao as tens˜oes de armadura dos motores direito e esquerdo, respectivamente;
Rd, Re s˜ao as resistˆencias dos enrolamentos de armadura dos motores direito e esquerdo,
respectivamente;
id, ie s˜ao as correntes de armadura dos motores direito e esquerdo, respectivamente;
Kd, Ke s˜ao as constantes de torque dos motores direito e esquerdo, respectivamente;
CAP´ITULO 2. MODELAGEM 16 − + − + id,e Jd,e Rd,e
Kd,eωd,e Kd,eid,e
Jd,eω˙d,e
ωd,e
βd,eωd,e
ed,e τd,e
1
βd,e
Figura 2.4: An´alogo el´etrico dos motores direito e esquerdo do mini-robˆo
βd, βe s˜ao os coeficientes de atrito viscoso angular entre os rotores e eixos dos motores e
seus apoios.
Deste circuito ´e poss´ıvel obter as seguintes equa¸c˜oes:
i=Rme−RmKmω (2.14)
τ =Kmi−Jmω˙ −Bmω (2.15)
onde: i= ⎡ ⎣id ie ⎤
⎦ e=
⎡ ⎣ed
ee
⎤
⎦ ω˙ =
⎡ ⎣ωd˙
˙ ωe
⎤
⎦ Rm =
⎡
⎣1/Rd 0
0 1/Re
⎤ ⎦
Km =
⎡
⎣Kd 0
0 Ke
⎤
⎦ Jm =
⎡ ⎣Jd 0
0 Je
⎤
⎦ Bm =
⎡ ⎣βd 0
0 βe
⎤ ⎦
Substituindo a equa¸c˜ao 2.14 na equa¸c˜ao 2.15, tem-se:
τ =RmKme−Jmω˙ −(RmK2
m+Bm)ω
Da equa¸c˜ao 2.1, tem-se que a derivada deωem rela¸c˜ao ao tempo ´e dada por ˙ω=ωTvv˙.
Assim:
τ =RmKme−JmωTvv˙ −(RmK2
m+Bm) ω
Tvv
que multiplicando por ωTT
v torna-se:
ωTT v τ = (
ωTT
v RmKm)e−( ωTT
v Jm ωTv) ˙v
−[ωTT v (RmK
2
m+Bm)
ωTv]v (2.16)
Igualando-se as equa¸c˜oes 2.13 e 2.16 e isolando o termo eme, obt´em-se:
ωTT
v RmKme= (Mr+ ωTT
v Jm
ωTv) ˙v+ [Br+ωTT v (RmK
2
CAP´ITULO 2. MODELAGEM 17
que representa o modelo matem´atico do robˆo no referencial do robˆo. Este modelo pode
ser expresso em forma matricial como:
Kve=Mvv˙ +Bvv (2.17)
onde Kv ´e um ganho das entradas de controle e Mv e Bv s˜ao, respectivamente, a matriz
de in´ercia generalizada e a matriz de amortecimento generalizada, que inclui termos de
coeficientes de atrito viscoso e resistˆencia el´etrica, ambas constantes, sim´etricas, definidas
positivas. Estas trˆes matrizes s˜ao dadas por:
Kv =ωTvTRmKm
Mv =Mr+ωTvTJm ω
Tv
Bv =Br+ωTvT(RmK
2
m+Bm) ω
Tv
A partir deste modelo no referencial dos atuadores, pode-se tamb´em derivar um modelo
em vari´aveis de estado. Definindo-se os vetores:
x= ⎡ ⎢ ⎢ ⎢ ⎣ v . . . q ⎤ ⎥ ⎥ ⎥ ⎦= ⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ v ω x y θ ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ˙x= ⎡ ⎢ ⎢ ⎢ ⎣ ˙v . . . ˙q ⎤ ⎥ ⎥ ⎥ ⎦
pode-se obter um modelo do robˆo no espa¸co de estados a partir das equa¸c˜oes 2.7 e 2.17:
⎧ ⎨ ⎩
˙
x=A(θ)x+Be
y=Cx
(2.18)
onde:
A(θ) =
⎡ ⎢ ⎢ ⎢ ⎣
−M−1
v Bv ... 0
. . . .
qTv(θ) ... 0
⎤ ⎥ ⎥ ⎥
⎦ B =
⎡ ⎢ ⎢ ⎢ ⎣
M−1 v Kv . . . . 0 ⎤ ⎥ ⎥ ⎥ ⎦
A matriz C depende de quais sinais s˜ao relevantes na aplica¸c˜ao onde o robˆo vai ser
empregado. Como normalmente se deseja controlar a posi¸c˜ao e a orienta¸c˜ao do robˆo:
y=q=
⎡ ⎢ ⎢ ⎢ ⎣ x y θ ⎤ ⎥ ⎥ ⎥
⎦ → C= ⎡ ⎢ ⎢ ⎢ ⎣
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1
CAP´ITULO 2. MODELAGEM 18
O modelo assim obtido ´e de quinta ordem, n˜ao-linear e multivari´avel, tendo como
entradas de controle as tens˜oes nos motores esquerdo e direito (isso porque foi inclu´ıda a
dinˆamica el´etrica destes motores) e como sa´ıda a ser controlada a posi¸c˜ao do centro do
robˆo no espa¸co cartesiano (x, y) e a orienta¸c˜ao do seu eixo de movimentoθ. Dessa forma,
temos mais vari´aveis para controlar (x,y,θ) que vari´aveis de controle (ed,ee) e, portanto,
o sistema ´e sub-atuado, o que constitui um complicador a mais para o controle.
Ainda utilizando apenas a modelagem fenomenol´ogica, os valores nominais dos
diver-sos parˆametros f´ısicos do modelo foram levantados para um robˆo espec´ıfico. Atrav´es
de medi¸c˜oes e c´alculos foram encontrados valores para alguns dos parˆametros (como
massa, raio das rodas e momentos de in´ercia) do robˆo considerado neste trabalho. Outros
parˆametros, como por exemplo as constantes el´etricas e a resistˆencia de armadura dos
motores foram obtidas atrav´es dos dados do fabricante dos motores. Os coeficientes de
atrito viscoso, por outro lado, foram estimados realizando-se testes com os robˆos reais
e simula¸c˜oes comparativas com diversos valores de coeficientes, escolhendo-se os
coefici-entes de atrito cuja simula¸c˜ao resultava em um comportamento mais pr´oximo do real.
Chegou-se ao seguinte conjunto de valores, com todas as unidades no S.I.:
d= 0.0750
rd = 0.0251 re = 0.0254
m= 0.352 J = 13.02×10−6 βlin = 0.1002 βang = 7.004×10−5
Jd = 3.003×10−6 Je = 3.005
×10−6 βd = 7.002×10−6 βe = 7.002
×10−6 Kd = 2.04×10−2 Ke = 2.01
×10−2 Rd = 17.331 Re = 17.301
(2.19)
Utilizando estes valores para simula¸c˜ao, chega-se a um modelo cujo comportamento
dinˆamico em malha aberta e com entradas iguais ´e ilustrado na figura 2.5. Pode ser
observado que este robˆo n˜ao ´e sim´etrico, j´a que a trajet´oria descrita pelo mesmo ´e bastante
diferente da linha reta esperada. Isso ocorre porque foram adicionadas incertezas aos
parˆametros de modo que o lado esquerdo do robˆo fosse diferente do lado direito, o que de
CAP´ITULO 2. MODELAGEM 19
t = 0 s
t = 15 s
0 2 4 6 8 10 12
0 1 2 3 4 5 6 7
y (m)
x (m)
Figura 2.5: Comportamento do robˆo para entradas iguais
2.3
Modelo Linear Equivalente
O modelo (2.18) ´e utilizado no simulador do robˆo, pois representa de forma mais
real´ıstica o comportamento do robˆo, visto que y= [ x y θ ]T pode ser obtido atrav´es
de um sistema de vis˜ao global (sensor utilizado em nosso sistema). Por´em, esse modelo ´e
n˜ao-linear e, portanto, exige t´ecnicas mais complexas para ser utilizado em aplica¸c˜oes de
controle, por exemplo.
Com o objetivo de se utilizarem algoritmos de controle mais simples e os resultados
matem´aticos existentes para sistemas lineares, o modelo n˜ao-linear foi reescrito como
uma representa¸c˜ao linear do robˆo. Para isso, foi necess´ario realizar uma substitui¸c˜ao de
vari´aveis no vetor de sa´ıda: a configura¸c˜ao do robˆo n˜ao ser´a mais descrita atrav´es de
sua posi¸c˜ao x e y e sua orienta¸c˜ao θ, sendo agora expressa em termos do deslocamento
linear l e angular θ. Como pode ser observado em (2.20), a nova equa¸c˜ao de estados
permanece com os mesmos parˆametros dinˆamicos. Devendo-se frisar que para se chegar
ao modelo equivalente linear n˜ao foi realizada nenhuma simplifica¸c˜ao, sendo esse modelo
CAP´ITULO 2. MODELAGEM 20 ⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ˙ v ˙ ω ˙ l ˙ θ ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ = ⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣
−M−1
v Bv ... 0
. . . .
1 0
0 1 ... 0
⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ v ω l θ ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ + ⎡ ⎢ ⎢ ⎢ ⎣
M−1
v Kv
. . . . 0 ⎤ ⎥ ⎥ ⎥ ⎦ ⎡ ⎣ ed ee ⎤ ⎦ y= ⎡
⎣ 0 0 1 0
0 0 0 1
⎤ ⎦ ⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ v ω l θ ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ (2.20)
Esta nova representa¸c˜ao do robˆo diminuiu tamb´em a ordem do modelo, que passa
agora a ser de quarta ordem.
Um problema inerente `a esta representa¸c˜ao ´e o fato de que a grandezal´e imensur´avel.
Caso se utilize um sistema de vis˜ao global (o que ocorre neste trabalho), informa¸c˜oes sobre
a configura¸c˜ao do robˆo podem ser obtidas apenas em instantes de tempo determinados.
Deve ser lembrado que a utiliza¸c˜ao deencoderstamb´em n˜ao solucionaria este problema, j´a
que atrav´es destes sensores o deslocamento linearltamb´em n˜ao pode ser medido, podendo
ser estimado atrav´es de medi¸c˜oes de deslocamento angular.
Este modelo linear (2.20), no pr´oximo cap´ıtulo, ser´a discretizado e identificado atrav´es
de t´ecnicas de estima¸c˜ao param´etrica simples. Estas t´ecnicas n˜ao poderiam ser usadas
Cap´ıtulo 3
Estima¸
c˜
ao Param´
etrica
Neste cap´ıtulo ´e apresentada a identifica¸c˜ao em tempo real de um robˆo m´ovel
n˜ao-holonˆomico com duas rodas e acionamento diferencial. O modelo dinˆamico linear
equi-valente, derivado no cap´ıtulo anterior, ´e discretizado e a metodologia de identifica¸c˜ao ´e
apresentada. Tamb´em apresentam-se os resultados simulados obtidos neste trabalho.
H´a v´arios aspectos importantes na identifica¸c˜ao de sistemas. As principais etapas de
um problema deste tipo s˜ao:
1. Testes dinˆamicos e coleta de dados
2. Escolha da representa¸c˜ao matem´atica a ser usada
3. Determina¸c˜ao da estrutura do modelo
4. Estima¸c˜ao de parˆametros
5. Valida¸c˜ao do modelo
No cap´ıtulo anterior foi realizada a modelagem fenomenol´ogica do robˆo, sendo
encon-trada a estrutura do modelo e os valores dos parˆametros f´ısicos e geom´etricos do mesmo.
Por´em, alguns dos parˆametros n˜ao foram encontrados com boa precis˜ao ou podem
va-riar de valor com o tempo. Torna-se, portanto, bastante adequada a utiliza¸c˜ao de um
estimador para se encontrar melhores valores para os mesmos.
Ao se utilizarem informa¸c˜oes sobre o sistema no processo de identifica¸c˜ao, realiza-se
uma identifica¸c˜ao caixa-cinza. Neste trabalho, ser´a utilizada a estrutura do modelo obtida
na se¸c˜ao anterior, sendo identificados apenas os parˆametros do modelo.
Nas se¸c˜oes seguintes, as etapas 1, 2, 4 e 5 ser˜ao discutidas e ser´a mostrado como
CAP´ITULO 3. ESTIMAC¸ ˜AO PARAM ´ETRICA 22
a parametriza¸c˜ao do modelo para uma representa¸c˜ao mais adequada `a identifica¸c˜ao. Na
se¸c˜ao de estima¸c˜ao dos parˆametros ser´a discutida a coleta de dados e o algoritmo utilizado
na estima¸c˜ao. Finalmente, tendo-se obtido o modelo, ´e necess´ario verificar se ele incorpora
as caracter´ısticas de interesse do sistema real, devendo ser realizada a sua valida¸c˜ao.
3.1
Parametriza¸
c˜
ao do modelo
As representa¸c˜oes discretas, por exemplo o modelo ARX (auto-regressivo com entradas
externas), s˜ao bastante utilizadas em identifica¸c˜ao de sistemas. Para se chegar a esta
representa¸c˜ao deve-se realizar a discretiza¸c˜ao do modelo 2.20. Isso ser´a realizado em
algumas etapas para facilitar o trabalho. Primeiramente, passou-se da representa¸c˜ao em
espa¸co de estado cont´ınuo (2.20) para a representa¸c˜ao em matriz de transferˆencia cont´ınua.
Utilizando G(s) =C(sI−A)−1B com
A= ⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣
−M−1
v Bv ... 0
. . . . 1 0 0 1 ... 0 ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ B= ⎡ ⎢ ⎢ ⎢ ⎣
M−1
v Kv
. . . . 0 ⎤ ⎥ ⎥ ⎥ ⎦ C=
⎡
⎣ 0 0 1 0
0 0 0 1
⎤ ⎦
obteve-se a matriz de transferˆencia G(s) e a seguinte representa¸c˜ao equivalente `a
repre-senta¸c˜ao 2.20. ⎡
⎣ L(s)
θ(s)
⎤ ⎦=
⎡
⎣ G11(s) G12(s)
G21(s) G22(s)
⎤ ⎦
⎡ ⎣ Ed(s)
Ee(s)
⎤
⎦ (3.1)
onde cada Gij(s) possui a seguinte estrutura
Gij(s) = Nij(s) D(s) =
αijs+βij s(s2
+k1s+k2)
A fim de se obter a representa¸c˜ao em matriz de transferˆencia discreta calcularam-se
as quatro fun¸c˜oes de transferˆencia discretas Gij(z).
⎡ ⎣ L(z)
θ(z)
⎤ ⎦=
⎡
⎣ G11(z) G12(z)
G21(z) G22(z)
⎤ ⎦
⎡
⎣ Ed(z)
Ee(z)
⎤
⎦ (3.2)
onde cada Gij(z) possui a seguinte estrutura
Gij(z) = Nij(z) D(z) =
γijz2
+δijz+εij (z−1)(z2+α
CAP´ITULO 3. ESTIMAC¸ ˜AO PARAM ´ETRICA 23
Gij(z) = γijz
2
+δijz+εij z3
−z2
+α1(z2−z) +α2(z−1)
Finalmente, para se chegar a parametriza¸c˜ao adequada `a implementa¸c˜ao digital,
trans-forma-se a representa¸c˜ao (3.2) na representa¸c˜ao em equa¸c˜oes de diferen¸cas.
∆lk =−α1∆lk−1−α2∆lk−2+γ11ed,k−1+δ11ed,k−2+ε11ed,k−3+
+γ12ee,k−1+δ12ee,k−2+ε12ee,k−3
∆θk =−α1∆θk−1−α2∆θk−2+γ21ed,k−1+δ21ed,k−2 +ε21ed,k−3+
+γ22ee,k−1+δ22ee,k−2+ε22ee,k−3
(3.3)
onde ∆lk=lk−lk−1 ´e distˆancia percorrida em um passo de amostragem, ∆θk =θk−θk−1
´e o incremento angular na orienta¸c˜ao do robˆo no mesmo per´ıodo, ed,k e ee,k s˜ao os sinais
de entrada da planta (tens˜ao nos motores direito e esquerdo, respectivamente) no instante
k.
Para o robˆo descrito por (2.19), os parˆametros calculados s˜ao os seguintes:
α1 =−1.77474 α2 = 0.778119
γ11= 5.7697×10− 5
δ11= 1.1612×10− 5
ε11 =−4.5451×10− 5
γ12= 5.7008×10− 5
δ12= 1.1746×10− 5
ε12 =−4.4781×10− 5
γ21= 0.0278875 δ21=−0.00165186 ε21 =−0.0253767
γ22=−0.0272196 δ22= 0.00159991 ε22 = 0.0247631
(3.4)
Uma descri¸c˜ao detalhada da obten¸c˜ao destes parˆametros pode ser vista no apˆendice
A.
3.2
Estima¸
c˜
ao de
∆
l
Como j´a foi dito, existe um problema com o modelo escolhido. A grandezal, distˆancia
percorrida pelo robˆo desde um instante inicial, n˜ao pode ser medida atrav´es de um sistema
de vis˜ao global. Seguindo o mesmo crit´erio, torna-se imposs´ıvel tamb´em medir-se ∆l,
distˆancia percorrida pelo robˆo em um per´ıodo de amostragem. Pode-se, por´em, calcular
um valor plaus´ıvel ∆l para esta grandeza com base em heur´ısticas.
A metodologia desenvolvida para se calcular∆l consiste nos seguintes passos: 1. C´alculo da distˆancia percorrida|∆l|
CAP´ITULO 3. ESTIMAC¸ ˜AO PARAM ´ETRICA 24
3.2.1
Obten¸
c˜
ao da Distˆ
ancia Percorrida
Possuindo duas imagens consecutivas do robˆo em seu campo de trabalho, pode-se obter
com razo´avel precis˜ao sua configura¸c˜ao (x, y e θ) nestes dois instantes de tempo. N˜ao
se pode ter certeza sobre qual caminho o robˆo percorreu para ir de uma configura¸c˜ao a
outra, visto que infinitos caminhos diferentes podem levar o robˆo da configura¸c˜ao inicial
at´e a final. Poder-se-ia utilizar a distˆancia euclidiana entre os dois pontos como medida
da distˆancia percorrida, supondo, neste caso, que o per´ıodo de amostragem de 33,33ms´e
suficientemente pequeno (figura 3.1). Por´em, no caso geral (quando o caminho percorrido
n˜ao ´e uma reta), esta solu¸c˜ao viola as restri¸c˜oes n˜ao-holonˆomicas do sistema.
∆L
| |
y1
x1 x2
y2
λ=1 λ=0
Figura 3.1: Diagrama para o c´alculo de |∆l|
A heur´ıstica adotada neste trabalho para se calcular |∆l| baseia-se na utiliza¸c˜ao de um polinˆomio de 2o grau unindo uma configura¸c˜ao inicial a uma configura¸c˜ao final. Dessa
forma, respeitam-se as restri¸c˜oes n˜ao-holonˆomicas do robˆo, visto que a curva de 2o grau
´e o polinˆomio de menor ordem que consegue atender `as restri¸c˜oes de n˜ao-holonomia do
robˆo. As vari´aveis de configura¸c˜ao (x, y, θ) do robˆo foram parametrizadas, ent˜ao, pelas
seguintes equa¸c˜oes: ⎧
⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎩
x(λ) = a2λ 2
+a1λ+a0
y(λ) =b2λ 2
+b1λ+b0
tan[θ(λ)] = dy/dλ dx/dλ =
2b2λ+b1
2a2λ+a1
(3.5)
com λvariando de 0 (configura¸c˜ao do robˆo no passo anterior ou ponto 1 na figura 3.1) at´e
1 (configura¸c˜ao atual do robˆo ou ponto 2 na figura 3.1). Para se calcular o comprimento
desta curva foi utilizada a seguinte equa¸c˜ao
|∆l|=
1 0
(dx dλ)
2
+ (dy dλ)
2
CAP´ITULO 3. ESTIMAC¸ ˜AO PARAM ´ETRICA 25
Substituindo dx dλ e
dy
dλ em (3.6) obt´em-se
|∆l|=
1 0
√
aλ2
+bλ+c dλ (3.7)
onde ⎧ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎩
a= 4a2 2+ 4b
2 2
b= 4a1a2+ 4b1b2
c=a2 1+b
2 1
(3.8)
Deve-se, ent˜ao, encontrar os valores de a, b e c. Para isso utilizou-se o
conheci-mento pr´evio sobre o problema, ou seja, as condi¸c˜oes de contorno para as equa¸c˜oes (3.5).
Sabendo-se que
x(0) = x1 = a0
y(0) = y1 = b0
x(1) = x2 = a2 +a1+a0
y(1) = y2 = b2+b1+b0
tan[θ(0)] = tan(θ1) =
b1
a1
tan[θ(1)] = tan(θ2) =
2b2+b1
2a2+a1
(3.9)
a seguinte solu¸c˜ao geral pˆode ser encontrada
⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩
a0 =x1
a1 =
2[tan(θ2)(x2−x1)−y2+y1]
tan(θ2)−tan(θ1)
a2 =x2−x1−a1
b0 =y1
b1 =a1tan(θ1)
b2 =y2−y1 −b1
(3.10)
Solu¸c˜oes particulares foram encontradas para os casos singulares, em queθ1 ouθ2 possuem
valores pr´oximos de|π
2|. Para o caso em que tan(θ2)−tan(θ1) = 0 a distˆancia percorrida foi calculada usando simplesmente a distˆancia euclidiana entre os pontos 1 e 2, visto que
neste caso o robˆo provavelmente se movimentou em linha reta.
Substituindo os valores dea0,a1,a2,b0,b1 eb2 no conjunto de equa¸c˜oes (3.8) pode-se
facilmente obter os coeficientes da equa¸c˜ao (3.7). Utilizando a solu¸c˜ao anal´ıtica para a
integral da equa¸c˜ao (3.7) pode-se encontrar uma estimativa para a distˆancia percorrida
CAP´ITULO 3. ESTIMAC¸ ˜AO PARAM ´ETRICA 26
√
aλ2
+bλ+c dλ = 2
√
a(b+ 2aλ)c+λ(b+aλ)
8a32 −
− (b 2
−4ac) 8a32
ln
b+ 2aλ
√
a + 2
c+λ(b+aλ)
(3.11)
3.2.2
Obten¸
c˜
ao do Sentido do Movimento
Para se obter o sinal da distˆancia, ou seja, para saber se o robˆo realizou um movimento
para frente ou para tr´as (marcha-r´e) em rela¸c˜ao a sua orienta¸c˜ao θ, calcula-se o valor da
coordenadaxda configura¸c˜ao atual (ponto 2 na figura 3.2) no sistema de coordenadas com
origem na posi¸c˜ao do robˆo no passo anterior (ponto 1 na figura 3.2). Se o valor obtido nesse
c´alculo for positivo, o robˆo ter´a se movimentado para frente e ∆l >0. Caso contr´ario, o robˆo ter´a se movimentado de marcha-r´e e ∆l <0. Isso pode ser feito considerando-se que o robˆo n˜ao ´e capaz de inverter sua orienta¸c˜ao em um passo de amostragem.
1
x x2
θ1
1x 2
y2
y1
Figura 3.2: Diagrama para o c´alculo do sinal de∆l
Para o c´alculo do sinal foi utilizada uma simples transforma¸c˜ao de coordenadas [28]
do referencial fixo no espa¸co de coordenadas para o referencial fixo na posi¸c˜ao anterior
do robˆo {1}. Pode-se, portanto, encontrar a coordenada x da posi¸c˜ao atual do robˆo em rela¸c˜ao ao sistema de coordenadas {1} facilmente atrav´es de (3.12).
1
x2 =x2cosθ1+y2sinθ1−x1cosθ1−y1sinθ1 (3.12)
onde 1
x2 ´e a representa¸c˜ao da abscissa do ponto 2 no sistema de coordenadas fixo no
ponto 1.
Se1
CAP´ITULO 3. ESTIMAC¸ ˜AO PARAM ´ETRICA 27
3.2.3
Valida¸
c˜
ao do C´
alculo de
∆
l
Nesta etapa foram realizados testes para valida¸c˜ao da estimativa de ∆l. Simulou-se o
sistema linear descrito pela equa¸c˜ao (2.20) e o sistema n˜ao-linear descrito pela equa¸c˜ao
(2.18) com os mesmos valores de entrada (edeee), obtendo como sa´ıdasylinear = [ l θ ]T
e ynao−linear = [ x y θ ]
T. Em seguida, plotaram-se os valores de ∆l = lk
−lk−1 para
o sistema linear (que ser˜ao considerados os valores de referˆencia) e o c´alculo descrito
nesta subse¸c˜ao para o sistema n˜ao-linear. Pode ser observado na figura 3.3 que ∆l (valor estimado) se encontra bastante pr´oximo `as distˆancias realmente percorridas pelo robˆo
(∆l). A m´edia percentual do erro possui um valor pr´oximo de zero (0,058%). O
desvio-padr˜ao do erro foi de 0,274%.
Estes testes de valida¸c˜ao foram realizados para trajet´orias excitantes, ou seja,
tra-jet´orias resultantes da aplica¸c˜ao de sinais de entrada persistentemente excitantes, que
ser˜ao as trajet´orias usadas na estima¸c˜ao de parˆametros.
Deve-se observar a dificuldade de se validar este procedimento de c´alculo de ∆l, pois esta grandeza ´e imensur´avel. Por isso, nesta valida¸c˜ao foram usados dados obtidos atrav´es
de simuladores para o modelo linear (2.20) e n˜ao dados obtidos atrav´es de experimentos.
delta real
delta calculado
−0.003 −0.0025 −0.002 −0.0015 −0.001 −0.0005 0 0.0005 0.001 0.0015 0.002
0 50 100 150 200 250 300
delta L (m)
número de iterações
Figura 3.3: Compara¸c˜ao entre ∆l e ∆l
3.3
Identifica¸
c˜
ao de Parˆ
ametros
A primeira formula¸c˜ao, solu¸c˜ao e aplica¸c˜ao de um problema de identifica¸c˜ao foi dado
CAP´ITULO 3. ESTIMAC¸ ˜AO PARAM ´ETRICA 28
o problema de identifica¸c˜ao como um problema de otimiza¸c˜ao e introduziu o princ´ıpio
dos m´ınimos quadrados. A id´eia b´asica por tr´as dos m´ınimos quadrados ´e ajustar um
modelo matem´atico a uma sequˆencia de dados observados pela minimiza¸c˜ao da soma dos
quadrados das diferen¸cas entre os dados observados e os dados calculados. Fazendo isso,
qualquer ru´ıdo ou inexatid˜ao nos dados observados devem ter menos efeito na exatid˜ao
do modelo matem´atico.
Este m´etodo tem sido largamente utilizado em estima¸c˜ao de parˆametros tanto na
forma recursiva como na forma n˜ao-recursiva principalmente para sistemas discretos no
tempo. O m´etodo ´e simples de aplicar e analisar quando os parˆametros desconhecidos
aparecem em uma forma linear, que ´e o caso da representa¸c˜ao (3.3).
Como j´a foi dito, os m´etodos de identifica¸c˜ao necessitam de uma sequˆencia de
da-dos de entrada-sa´ıda do sistema para serem utilizada-dos. A coleta de dada-dos adequada-dos ´e,
portanto, uma etapa bastante importante em um processo de estima¸c˜ao de parˆametros.
Primeiramente, deve-se escolher quais vari´aveis ser˜ao utilizadas como vari´aveis de entrada
e quais ser˜ao as de sa´ıda. Como neste trabalho a estrutura do modelo foi obtida atrav´es
da modelagem a partir da natureza do processo, as vari´aveis de entrada e de sa´ıda foram
facilmente escolhidas nesta etapa e realmente est˜ao relacionadas dinamicamente atrav´es
da rela¸c˜ao causa e efeito.
Em segundo lugar, as entradas utilizadas para se excitar a planta devem satisfazer
alguns crit´erios. Devem existir condi¸c˜oes especiais para o sinal de entrada amostrado
u(k) de forma que o sinal de sa´ıda amostrado y(k) contenha informa¸c˜ao suficiente para
se estimarem todos os parˆametros. Intuitivamente, pode-se dizer que o sinal de entrada
deve ser suficientemente ativo.
O conceito de persistˆencia de excita¸c˜ao permite quantificar o qu˜ao ativo ´e um sinal
e, assim, qu˜ao adequado ´e para a identifica¸c˜ao de sistemas. Um sinal persistentemente
excitante de ordem n ´e um sinal que tem potˆencia espectral em n ou mais freq¨uˆencias
distintas. Uma condi¸c˜ao para se estimar n parˆametros ´e que o sinal de excita¸c˜ao deve
ser persistentemente excitante pelo menos de ordem n. Como exemplo, pode-se dizer
que o degrau ´e um sinal persistentemente excitante de ordem 1 e o ru´ıdo branco ´e
per-sistentemente excitante de todas as ordens. Dessa forma, ao se usar um ru´ıdo branco
CAP´ITULO 3. ESTIMAC¸ ˜AO PARAM ´ETRICA 29
por´em, ´e comum usar um gerador de n´umeros aleat´orios para se gerar sinais de entrada
persistentemente excitantes de ordem elevada.
Para sistemas com mais de uma entrada, como ´e o caso, ´e fundamental que os sinais
usados para excitar o sistema n˜ao estejam correlacionados entre si. Pois, se eles estiverem
correlacionados, o algoritmo de identifica¸c˜ao n˜ao conseguir´a distinguir o efeito de cada
entrada sobre a sa´ıda.
Outra condi¸c˜ao importante relaciona-se ao valor do per´ıodo de amostragem do
sis-tema, que deve ser suficiente para registrar a varia¸c˜ao dos sinais amostrados. Em alguns
casos, como neste trabalho, este valor ´e fixado pelas restri¸c˜oes do sistema, normalmente
a capacidade dos sensores. Ainda em rela¸c˜ao aos sinais de excita¸c˜ao, se a cada per´ıodo
de amostragem for aplicada `a planta um novo valor de entrada, a excita¸c˜ao pode n˜ao
ser adequada. Normalmente, mantˆem-se a entrada constante por 3 a 8 intervalos de
amostragem.
3.3.1
Experimentos Simulados
Nesta se¸c˜ao ser˜ao apresentados experimentos realizados com dados coletados de um
simulador e n˜ao de um robˆo real. Esta etapa foi importante para se comprovar a validade
da metodologia desenvolvida. Ao se utilizar dados obtidos de um robˆo simulado na
iden-tifica¸c˜ao do modelo, tem-se o conhecimento do modelo que gerou os dados e, dessa forma,
pode-se comparar o modelo identificado e o modelo original de forma simples.
Para estimar os parˆametros do modelo (3.3) foi utilizado o m´etodo dos m´ınimos
qua-drados recursivos com fator de esquecimento [29], um m´etodo baseado na minimiza¸c˜ao da
soma dos quadrados dos erros. Nesses experimentos foi utilizado um fator de esquecimento
λ = 0,995.
Para excitar o sistema foram utilizados sinais pseudo-aleat´orios que podiam assumir
um dos trˆes valores 1, 0 e −1 (figura 3.4), visto que devem ser utilizados sinais ricos em freq¨uˆencia e persistentemente excitantes como entradas para a planta. As sa´ıdas da
planta (x, y e θ) n˜ao foram utilizadas diretamente pelo estimador. Em seu lugar, como
j´a foi explicado na subse¸c˜ao 3.2, foram utilizados ∆l e ∆θ.
A figura 3.5 mostra uma trajet´oria resultante da aplica¸c˜ao de sinais de entrada
CAP´ITULO 3. ESTIMAC¸ ˜AO PARAM ´ETRICA 30
−1 −0.5 0 0.5 1
0 50 100 150 200
número de iterações
ed (v)
−1 −0.5 0 0.5 1
0 50 100 150 200
número de iterações
ee (v)
Figura 3.4: Exemplo dos sinais de excita¸c˜ao (ed e ee) do sistema
-0.02 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2
-0.08 -0.06 -0.04 -0.02 0 0.02 0.04 0.06 0.08 0.1
y(m)
x(m)
trajetoria
Figura 3.5: Exemplo da trajet´oria de sa´ıda do sistema (observada durante 30 segundos)
parˆametros estimados no tempo. Nota-se que os parˆametros convergem em
aproximada-mente 4 segundos.
-2 -1.5 -1 -0.5 0 0.5 1
0 50 100 150 200
numero de iteracoes
alfa 1 alfa 2
Figura 3.6: Varia¸c˜ao no tempo de alguns parˆametros
A tabela 3.1 apresenta algumas informa¸c˜oes sobre o processo de estima¸c˜ao param´etrica,
desvio-CAP´ITULO 3. ESTIMAC¸ ˜AO PARAM ´ETRICA 31
padr˜ao percentual em rela¸c˜ao aos valores m´edios e os erros percentuais dos valores m´edios
em rela¸c˜ao aos valores originais. A coluna “valor t´ıpico” representa o resultado
com-pleto de uma estima¸c˜ao param´etrica “t´ıpica”, ou seja, uma das estima¸c˜oes que mais
freq¨uˆentemente ocorreram. Nesta coluna n˜ao foram, portanto, misturados parˆametros de
realiza¸c˜oes (testes) diferentes, como ocorre com os valores m´edios. Estes dados foram
obti-dos usando-se resultaobti-dos de 200 testes de estima¸c˜ao com 500 amostras cada. Analisando-se
a tabela percebe-se que os parˆametros estimados possuem valores pr´oximos dos valores
calculados (valores originais). As ´unicas estimativas em que ocorrem erros bastante
eleva-dos s˜ao as deδ21eδ22. Nestes casos, os m´odulos das estimativas possuem erro pequeno (em
torno de 0.13%), por´em os sinais est˜ao invertidos, o que nos leva a um erro real em torno
de 200%. Observa-se, tamb´em, que estes mesmos parˆametros possuem um desvio-padr˜ao
muito elevado.
Par Val. Original Val. T´ıpico Val. M´edio DP % Erro %
α1 -1.77474 -1.76983 -1.71822 7.4017 3.18446
α2 0.778119 0.774096 0.733321 13.7027 5.75719
γ11 5.7697×10− 5
5.5807×10−5 5.4904×10−5 6.1023 4.84095 δ11 1.1612×10−
5
1.5126×10−5 1.7905×10−5 45.8967 -54.1935 ε11 −4.5451×10−
5
−4.6478×10−5 −4.1016×10−5 -63.5557 9.75812 γ12 5.7008×10−
5
5.5201×10−5 5.6158×10−5 26.2011 1.49129 δ12 1.1746×10−
5
1.5268×10−5 1.4005×10−5 267.5901 -19.228 ε12 −4.4781×10−
5
−4.5720×10−5 −3.7259×10−5 143.6539 16.7958
γ21 0.0278875 0.0270897 0.0270906 0.02126 2.85755
δ21 -0.00165186 0.000231367 0.00162843 211.4775 198.582
ε21 -0.0253767 -0.0262339 -0.0248528 13.6958 2.06452
γ22 -0.0272196 -0.0264421 -0.0264408 0.02184 2.8613
δ22 0.00159991 -0.00023586 -0.00160208 209.7080 200.135
ε22 0.0247631 0.0255982 0.02425 13.7212 2.07193
Tabela 3.1: Compara¸c˜ao entre valores originais, valores t´ıpicos e valores m´edios dos
parˆametros