Escolar Documentos
Profissional Documentos
Cultura Documentos
i
Abstract
This work proposes a position controller for nonholonomic mobile robots
based on classic techniques of control. The controllers project is based on
linear models, determined through stochastic methods of identication based
on experimental data. Besides, these models are used as predictors for com-
pensation of dead time and consequent improvement in the response of the
system. The work still proposes, a decoupling among the robot output vari-
ables, yielding independent and monovariable controllers. The suggested
methodology was validated using a platform of robots' soccer, developed by
under-graduate students at UFMG. The setup is constituted basically by a
computer that controls, via radio, three robots observed by a computer vision
system. Experimental results showed that, in spite of the diculties imposed
by the constructive aspects of this system, the proposed control presents good
results and it is an adequate alternative to the complex techniques found in
the literature. The proposal was implemented considered that the system
will be used as platform of tests for real time cooperation of three agents
playing robot soccer.
ii
A Mam~ae,
por tudo que ela tem feito por mim
durante toda a minha vida.
iii
Agradecimentos
Agradeco em primeiro lugar aos professores Mario Campos, pela con-
anca, paci^encia e orientac~ao, Walmir Caminhas, pela orientaca~o acad^emica
e Luis Aguirre pelas opini~oes e discuss~oes.
Gostaria de fazer um agradecimento especial a Cinthia pelo apoio, com-
panheirismo e paci^encia e ainda a todos os meus familiares e amigos que de
alguma forma contriburam para realizaca~o deste trabalho.
N~ao poderia de deixar de agradecer aos colegas de \equipe": Ancio, Boc,
Bene, Caixeta, Danilo, Hartmann, Marco Aurelio, Valder e principalmente ao
Andre, pelo sistema de vis~ao e Mangini, pelo sistema no LINUX. Alem destes,
sem os quais o projeto MIneiROSOT n~ao teria sido possvel, gostaria de
agradecer o pessoal do Laboratorio de Robotica: Alexei, Chaimo, Denilson,
Lucio, Paulo, Piti, Rafael, Raquel, Saulo e os \calouros", Bruno, Daniel,
Fabio, Rodrigo e Thiago pelo bom ambiente de trabalho.
Queria agradecer aos colegas Flister, Adriano e Leo, pelo companheirismo
alem das discuss~oes tecnicas e losocas durante os nossos poucos momentos
de folga.
Merecem os meus agradecimentos tambem todos os meus professores de
graduac~ao e em especial os Profs. Fabio Jota, Jose Carlos, Ronaldo Pena,
Eduardo Mota e Constantino Seixas cujos ensinamentos foram muito uteis
durante a execuc~ao desta dissertac~ao.
Finalmente, gostaria de agradecer o apoio nanceiro da CAPES e dos
patrocinadores do projeto: Engetron, IMPEX e DCC.
iv
Sumario
Lista de Figuras vii
1 Introduc~ao 1
1.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Relev^ancia e Contribuic~oes . . . . . . . . . . . . . . . . . . . . 4
1.3 Organizac~ao da Dissertac~ao . . . . . . . . . . . . . . . . . . . 5
2 Trabalhos Relacionados 6
3 Metodologia 12
3.1 Denic~ao do problema . . . . . . . . . . . . . . . . . . . . . . 12
3.1.1 Controlador . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2 Modelo Din^amico . . . . . . . . . . . . . . . . . . . . . . . . . 17
3.2.1 Parametrizac~ao do modelo . . . . . . . . . . . . . . . . 21
3.2.2 Estimac~ao dos Par^ametros . . . . . . . . . . . . . . . . 22
3.3 Projeto do controlador . . . . . . . . . . . . . . . . . . . . . . 24
3.3.1 Analise do sistema . . . . . . . . . . . . . . . . . . . . 25
3.3.2 Efeito dos controladores de velocidade . . . . . . . . . 27
3.3.3 Desacoplamento entre os controladores . . . . . . . . . 30
3.3.4 Identicac~ao em tempo real . . . . . . . . . . . . . . . 34
3.3.5 Estrutura do controlador . . . . . . . . . . . . . . . . . 35
3.3.6 Projeto por Lugar das Razes . . . . . . . . . . . . . . 38
3.3.7 Efeito do atraso . . . . . . . . . . . . . . . . . . . . . . 42
3.3.8 Compensac~ao do atraso . . . . . . . . . . . . . . . . . 44
4 Resultados Experimentais: Modelagem 46
4.1 Descric~ao do sistema . . . . . . . . . . . . . . . . . . . . . . . 46
4.1.1 Rob^o . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.1.2 Vis~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.1.3 Controle . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.2 Modelagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
v
SUMA RIO vi
vii
LISTA DE FIGURAS viii
duas associac~oes: FIRA [Kim et al., 1997] e ROBOCUP [Kitano et al., 1997].
A principal diferenca entre as associac~oes esta no tamanho dos rob^os e
numero de jogadores dos times. A categoria MIROSOT (Micro Robot Soccer
Tornament) da FIRA, por exemplo, possuem times de 3 jogadores, menores
e mais velozes que os da categoria equivalente da ROBOCUP cujos times
possuem 5 jogadores. Normalmente, os rob^os usados nos jogos se comu-
nicam com um computador central atraves de comunicaca~o sem o. Este
computador \visualiza" e coordena as jogadas com o auxilio de uma ou mais
c^ameras de vdeo situadas a uma determinada altura do campo (Figura 1.1).
O numero de c^ameras, computadores, equipamentos em geral, dimens~oes do
campo e ainda as formas de comunicac~ao sem o s~ao determinados pelas
regras da competic~ao.
CAPITULO 1. INTRODUCA~ O 4
1.1 Objetivos
O principal objetivo deste trabalho e conceber, projetar e implementar
um controlador para agentes roboticos externamente controlados, sem ne-
nhum tipo de processamento local e observados por vis~ao, usados em jogos
de futebol de rob^os. As metodologias propostas ser~ao aplicadas a rob^os usa-
dos na disputa da categoria MIROSOT. Como sera mostrado, estes rob^os
s~ao constitudos basicamente por atuadores, sendo que o controle e total-
mente executado em computadores externos baseado em informac~oes visuais
fornecidas pela c^amera. Deseja-se ainda, atraves de um conhecimento mais
profundo do sistema, obtido atraves de tecnicas de modelagem e analise de
sistemas, sugerir melhorias que possam contribuir para um bom desempenho
em competic~oes de futebol de rob^os.
Planejamento Obstáculos
Alvo
de Trajetórias Robô
Controlador Robô
z
Robô
Móvel
y
x
como [Olsen and Bekey, 1986, Kozlowski and Dutkiewicz, 1996] o que n~ao
pode ser dito para rob^os aut^onomos. Neste caso, Elnagar e Gupta [1998] uti-
lizam modelos autoregressivos na predic~ao do movimento de objetos moveis
para facilitar o planejamento de trajetorias. Tecnica semelhante e utilizada
no presente trabalho na predic~ao do movimento dos proprios rob^os.
Captulo 3
Metodologia
A frase mais deliciosa que se pode ouvir na ci^encia,
aquela que todos os cientistas adoram, n~ao e \Eureka"
mas \que engracado": : :
Issac Asimov (1920{1992)
12
CAPITULO 3. METODOLOGIA 13
Y V2
V
V1
r
θ
y
x X
V1 = r !1 e V2 = r ! 2 ; (3.1)
V = V1 +2 V2 (3.2)
! = V1 ;
L
V2 ; (3.3)
x_ = VX
y_ = VY (3.5)
_ = ! :
x_ = V1 +2 V2 cos()
y_ = V1 +2 V2 sen() (3.6)
_ = V1 ;
L
V2 :
3.1.1 Controlador
Os sistemas de controle de trajetorias tradicionalmente utilizados para
controlar rob^os moveis podem ser representados por um diagrama de blocos
semelhante ao da Figura 3.2. Esta e uma estrategia de controle conhecida
como \cascata", onde a sada de um controlador e a refer^encia para ou-
CAPITULO 3. METODOLOGIA 15
SP1 - e1 u1
+ PID Motor 1
SP e v1 Cinemática X
+
- Controlador SP2
+
e2
PID
u2
Motor 2
v2 do Robô
-
Controlador
SP1
de Velocidade
Linear e/ou +
Distância
+
e
Controlador
de Velocidade
+
- SP2
Angular e/ou
Ângulo
xk = xk;1 + VX k;1 T
yk = yk;1 + VY k;1 T (3.8)
k = k;1 + !k;1 T ;
onde f1() e f2() s~ao func~oes quaisquer e u1 e u2 s~ao as entradas dos motores
direito e esquerdo respectivamente. Consequentemente,
Vk = Vk;1 + a T
!k = !k;1 + T ; (3.9)
onde Fa1 e Fa2 s~ao os modulos das forcas de atrito na linha de contato entre o
solo e as rodas de apoio. Estas equaco~es s~ao possveis porque todas as forcas
t^em a mesma direc~ao. Substituindo as equaco~es anteriores em (3.9) tem-se:
T (F + F + F
Vk = Vk;1 + m 1 k;1 2 k;1 a1 k;1 + Fa2 k;1 )
Y F2
ma
Fa1
F1
G θ
y
Iα
Fa2
L
2
L
2
x X
F1 k a1 u1 k;d
F2 k a2 u2 k;d : (3.15)
VX k;1 = xk;1 ;
T
xk;2 : (3.18)
Usando esta equaca~o, a primeira linha do modelo (3.17) pode ser representada
como um modelo do tipo autoregressivo com entrada externa [Ljung, 1987]
do tipo:
seguintes equac~oes:
xk = aX1 xk;1 + aX2 xk;2 + bX1 u1 k;d + bX2 u2 k;d cos(k;1 )
yk = aY1 yk;1 + aY2 yk;2 + bY1 u1 k;d + bY2 u2 k;d sin(k;1 ) (3.19)
k = a1 k;1 + a2 k;2 + b1 u1 k;d + b2 u2 k;d :
que o controle seja feito de forma mais eciente, estes n~ao ser~ao utilizados
pois deseja-se considerar que o rob^o e limitado e n~ao possui nenhum proces-
samento local.
Baseado nas relac~oes anteriores, o modelo (3.19) pode ser rescrito como:
xk = aX1 xk;1 + aX2 xk;2 + bX1 uX1 k;d + bX2 uX2 k;d
yk = aY1 yk;1 + aY2 yk;2 + bY1 uY1 k;d + bY2 uY2 k;d (3.20)
k = a1 k;1 + a2 k;2 + b1 u1 k;d + b2 u2 k;d :
onde G1X (z) = X=U1X , que pode ser estendido para os demais termos.
+
+ G1(z)
R1(z) - E1(z) S1(z) +
+ D1(z) +
Y1(z)
+
- G2(z)
+
+ G3(z)
R2(z) E2(z) S2(z) +
Y2(z)
-+ D2(z) +
-+ G4(z)
Alvo
dy
d
eθ
k1d = k2d
k1 = ;k2 :
CAPITULO 3. METODOLOGIA 32
onde k1d e k2d s~ao os ganhos das funco~es de transfer^encia de dist^ancia e k1 e
k2 s~ao os ganhos das func~oes de . Para garantir que haja desacoplamento,
pode-se ent~ao multiplicar o sinal de entrada de cada funca~o de transfer^encia
por um determinado valor constante, de forma a satisfazer as condic~oes an-
teriores.
Matematicamente, os ganhos s~ao as variaveis independentes que multi-
plicam os sinais de controle. Por isso de (3.19),
Assim, considerando-se que u1 e u2 s~ao os sinais de entrada das func~oes
relativas a , uma das condic~oes de desacoplamento e satisfeita se:
Para que esta relac~ao seja valida, o lado esquerdo da equaca~o pode ser multi-
plicado por b2 =b1, que pode ser considerada a constante de desacoplamento
para a variavel . Fisicamente, o uso desta constante faz com que o rob^o
gire parado quando recebe variaveis de controle de mesma amplitude e sinais
opostos. Note que o sinal negativo mostrado anteriormente e inerente a um
dos ganhos da funca~o de , como pode ser visto na Equaca~o (3.16).
As condic~ao de desacoplamento para a dist^ancia (ou movimento de trans-
lac~ao) n~ao pode ser facilmente explicitada atraves das func~oes de trans-
fer^encia do sistema, pois envolvem operac~oes n~ao-lineares dos submodelos
de x e y. Entretanto, uma boa aproximac~ao para esta constante, pode ser
obtida atraves do modelo de . Isto ocorre, porque, apesar das func~oes de
transfer^encia serem obtidas de forma independente, sicamente elas foram
geradas pelo mesmo sistema, ou seja, os motores responsaveis por todas as
CAPITULO 3. METODOLOGIA 33
U1(z)
G1(z)
R(z) E(z) S(z) +
Y(z)
-+ D(z) +
U2(z)
b1/b2 G2(z)
Estimador de
Parâmetros
u1
x
Kp Robô
u2
Kde y
d
x2 + y 2
Frente
Alvo Alvo
Chaveamento
Frente
KD = Kp + Ki T=2 ;
p ; Ki T=2
zo = K
Kp + Ki T=2 :
Desta forma, o projeto do controlador consiste em encontrar as constantes
KD e zo que d~ao origem aos ganhos Kp e Ki respectivamente como:
Kp = KD 1 +2 zo ; (3.27)
Ki = KD 1 ;T zo : (3.28)
= p 2; ln(Os=100) 2 (3.30)
+ (ln(Os=100))
4
!n = T T ; (3.31)
s
= ln(;jaTj) : (3.32)
2
1
Z
ωn
0.8
0.6
0.4
0.2
Imaginario
−0.2
−0.4
−0.6
−0.8
ζ
−1
−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1
Real
escrita como:
D (z ; zo )
D(z)G (z) = (z K
; 1)2(z ; a) ; (3.33)
2
0.6 0.6
0.4 0.4
0.2 0.2
Imaginario
Imaginario
0 0
-0.2 -0.2
-0.4 -0.4
-0.6 -0.6
-0.8 -0.8
-1 -1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Real Real
Figura 3.12: Efeito do atraso no lugar das razes: (a) - lugar das razes do
sistema sem atraso ou com atraso simples; (b) - lugar das razes do sistema
com atraso igual a 5 intervalos de amostragem.
znY(z)
Preditor
como os mostrados na Sec~ao 3.2 podem apresentar bons resultados. Para tan-
to, pode-se utilizar ainda, modelos com atualizaca~o parametrica em tempo
real aumentando a sua exatid~ao. Se nesta atualizaca~o forem utilizados os
metodos de mnimos quadrados recursivos, como foi proposto na Sec~ao 3.3.4,
e garantido que a predic~ao de um passo a frente e a melhor possvel para um
determinado nvel de rudo [Ljung, 1987]. O problema surge ent~ao, quando
o atraso e maior que um intervalo de amostragem e o modelo deve ser rea-
limentado com suas proprias predic~oes. Neste caso, o preditor somente tera
bom desempenho se o modelo realmente representar o processo. Em sistemas
com integrac~ao, como e o caso do rob^o, este problema se torna ainda mais
acentuado, pois ha uma acumulac~ao dos erros de cada passo de predic~ao,
gerando um deslocamento (oset) nas sadas preditas. Como e difcil cor-
rigir este problema, pode-se fazer um teste anterior para vericar se o erro
e signicativo ou pode ser desprezado. Como ja foi mencionado, no caso
de estimac~ao de par^ametros em tempo real (on-line), deve-se ainda, tomar
o cuidado de vericar se a mesma esta sendo feita corretamente, evitando
assim o comprometimento do modelo e consequentemente da predic~ao.
4.1.1 Rob^o
O hardware do sistema envolve basicamente as areas de eletr^onica e
mec^anica. Nesta sec~ao sera feita uma descric~ao da parte eletr^onica de con-
trole e comunicac~ao bem como da estrutura mec^anica do rob^o. A principal
linha do projeto era obter rob^os de baixo custo e faceis de se construir. Co-
mo sera descrito a seguir, uma das principais diculdades e a restric~ao de
dimens~oes imposta pelas regras da FIRA [FIRA, 1999], onde cada rob^o n~ao
pode ocupar um volume maior que um cubo de 7; 5 cm de lado.
Eletr^onica
O rob^o foi construdo baseado em componentes de aeromodelos remota-
mente controlados (R/C). Estes incluem microservos, receptores e transmis-
sores. O sistema e muito similar aquele descrito em [Hong et al., 1997].
CAPITULO 4. RESULTADOS EXPERIMENTAIS: MODELAGEM 49
2500
2000
saída (µ s)
1500
1000
500
0 50 100 150 200
entrada
Mec^anica
Como ja foi mencionado, a parte mec^anica do rob^o se baseia em micro-
servos, modicados para prover altas velocidades com o maior conjugado
1 Apesar desta quantizac~ao, a Figura 4.2 mostra que, efetivamente, apenas 128 valores
s~ao utilizados ja que para os servos apenas os valores entre 1 e 2 ms t^em algum signicado.
CAPITULO 4. RESULTADOS EXPERIMENTAIS: MODELAGEM 51
Receptor
Placas de Servo
Aluminio
Roda
Baterias de
NiCd Rolamentos
Centro do robô
Frente
Cor do time
(azul ou amarelo)
2,0 cm
7,5 cm
4.1.2 Vis~ao
O sistema de vis~ao e constitudo de uma c^amera NTSC convencional e
um computador equipado com um placa de aquisic~ao de imagens com a ca-
pacidade de adquirir 60 quadros/s. O computador utilizado e um Pentium II,
330MHz rodando Windows98. Um programa foi desenvolvido em linguagem
de baixo nvel para processar as imagens em tempo real e permitir o rastrea-
mento da trajetoria de diversos objetos baseado nas suas cores. Assim, cada
rob^o tem uma cor propria e mais uma cor, comum ao time, que permite a sua
identicac~ao. A Figura 4.4 mostra o sistema de identicac~ao dos rob^os, onde,
a partir do centro de cada cor e possvel determinar a posica~o e orientac~ao
dos agentes.
A sada do sistema de vis~ao e um vetor de caracteres, que e transmitido
via cabo de rede ao computador responsavel pelo controle, contendo a posic~ao
e orientac~ao de cada rob^o, dos adversarios e da bola. Este sistema e bastante
estavel e muito robusto a variaco~es de iluminac~ao o que n~ao e muito comum a
sistemas do mesmo tipo. O processamento das imagens e feito a 40 quadros/s
a uma resoluc~ao de 352 240 pixels. A Figura 4.5 mostra a caracterstica
dos dados de um rob^o parado na sada do sistema de vis~ao. Note que as
CAPITULO 4. RESULTADOS EXPERIMENTAIS: MODELAGEM 53
(a) (b)
174 121
173.9 120.9
173.8 120.8
173.7 120.7
173.6 120.6
x (pixels)
y (pixels)
173.5 120.5
173.4 120.4
173.3 120.3
173.2 120.2
173.1 120.1
173 120
0 0.5 1 1.5 2 2.5 3 0 0.5 1 1.5 2 2.5 3
t (s) t (s)
(c)
4.94
4.92
4.9
4.88
4.86
θ (rads)
4.84
4.82
4.8
4.78
4.76
0 0.5 1 1.5 2 2.5 3
t (s)
coordenadas de posica~o s~ao numeros inteiros (pixels) e por isso se rob^o esta
entre dois inteiros existe a presenca de um rudo. Por esse motivo, em geral
a coordenada y e mais ruidosa devido a menor resoluc~ao. A orientaca~o,
apesar de ser mostrada em radianos, e tambem quantizada. Para diminuir
o overhead de transmiss~ao esta variavel e transmitida pela rede em graus
inteiros e depois convertida para radianos. Os desvios padr~oes das variaveis
x, y e s~ao respectivamente 0; 26 e 0; 50 pixels e 0; 05 radianos.
4.1.3 Controle
O sistema de controle e desenvolvido em um micro computador dedica-
do que usa o sistema operacional LINUX. Este computador, um Pentium
CAPITULO 4. RESULTADOS EXPERIMENTAIS: MODELAGEM 54
TCP/IP
Visão Controle Tx Rx
S1 S2
Câmera Robô
4.2 Modelagem
Nesta sec~ao ser~ao aplicados os algoritmos de estimaca~o de par^ametros
mostrados no Ap^endice B as estruturas propostas na Sec~ao 3.2.1 para de-
terminac~ao de um modelo din^amico para os rob^os do time MIneiROSOT.
Para a utilizac~ao dos algoritmos, optou-se por obter inicialmente um conjun-
to de dados capaz de representar bem o rob^o em uma regi~ao de trabalho cuja
media e a situaca~o parado. Para tanto, foram adquiridos alguns conjuntos
de dados independentes, dentre os quais alguns se constituam por respostas
a degraus e os demais por entradas binarias aleatorias com caractersticas
muito similares as PRBS, todos executados em malha aberta.
A Figura 4.7 mostra a resposta do sistema a degraus nas entradas de
controle. Para a obtenc~ao destes dados o rob^o foi inicializado com uma
orientac~ao de aproximadamente 135 graus (diagonal do campo) e foram apli-
cados sinais de controle iguais a ambos os motores. Nesta gura, pode ser
observado que o sistema possui uma ac~ao integral, como era previsto pelo
modelo (3.5). Por esta gura, e possvel ainda fazer uma estimaca~o do tempo
morto do sistema que e de aproximadamente 215 ms.
A primeira analise mostrou que o sistema de medic~ao (vis~ao) fornece
medidas de orientaca~o na faixa de 0 a 2 radianos e por isso e necessario
um pre-processamento para garantir consist^encia para esta variavel durante
a estimac~ao. Em relaca~o as variaveis x e y, optou-se por trabalhar dire-
tamente com a informac~ao em pixels, ja que uma transformaca~o para uni-
dades metricas seria altamente dependente da altura e posicionamento da
c^amera e tambem de suas proprias caractersticas construtivas. O intervalo
de amostragem do processo e limitado pelas caractersticas dos sistemas de
vis~ao, comunicac~ao e controle e seu valor mnimo e de 27 ms. Pode-se notar,
que deste tempo, 25 ms (40 quadros/s) s~ao gastos com a vis~ao e os outros
CAPITULO 4. RESULTADOS EXPERIMENTAIS: MODELAGEM 56
15
10
input
u1
5
u2
0
0 0.5 1 1.5 2 2.5
400
position (pixels)
300 x
y
200
100
0
0 0.5 1 1.5 2 2.5
2.8
θ (rad)
2.6
2.4
2.2
0 0.5 1 1.5 2 2.5
t (s)
1.2
0.8
0.6
0.4
0.2
−0.2
0 5 10 15 20 25 30 35 40 45 50
lags
10
input
0 u1
−5 u2
−10
0 5 10 15 20 25 30
300
position (pixels)
x
200 y
100
0
0 5 10 15 20 25 30
20
0
θ (rad)
−20
−40
−60
0 5 10 15 20 25 30
t (s)
xk = 1; 6824 xk;1 ; 0; 6824 xk;2 + [0; 0441 u1 k;8 + 0; 0403 u2 k;8] cos(k;1 )
yk = 1; 7150 yk;1 ; 0; 7152 yk;2 + [0; 0336 u1 k;8 + 0; 0318 u2 k;8] sen(k;1 )
k = 1; 5640 k;1 ; 0; 5640 k;2 ; 0; 0063 u1 k;8 + 0; 0065 u2 k;8 : (4.2)
1 1
0.8 0.8
0.6 0.6
0.4 0.4
0.2 0.2
0 0
−0.2 −0.2
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
atrasos atrasos
Função de autocorrelação do resíduo de θ
1.2
0.8
0.6
0.4
0.2
−0.2
0 10 20 30 40 50 60 70 80 90 100
atrasos
Note que apesar do metodo recursivo ser em geral utilizado em tempo real,
neste caso ele foi utilizado em dados coletados a priori. Na proxima sec~ao
e mostrado um resultado de predic~ao do modelo onde o algoritmo recursivo
foi aplicado em tempo real.
Como proposto pela Equac~ao (3.21) o modelo anterior pode ser escrito
como:
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0 100 200 300 400 500 600 700 800 900 1000
pontos
real real
modelo modelo
300
200
250
150
200
x (cm)
y (cm)
150
100
100
50
50
0 0
0 5 10 15 20 25 30 35 40 45 50 0 5 10 15 20 25 30 35 40 45 50
t(s) t(s)
(c)
70
real
modelo
60
50
40
θ (rad)
30
20
10
0
0 5 10 15 20 25 30 35 40 45 50
t(s)
real real
modelo modelo
100
50
50
y (cm)
x (cm)
−50
−50
−100
−100
−150 −150
0 5 10 15 20 25 30 35 40 45 50 0 5 10 15 20 25 30 35 40 45 50
t(s) t(s)
(c)
20
real
15 modelo
10
0
θ (rad)
−5
−10
−15
−20
−25
−30
0 5 10 15 20 25 30 35 40 45 50
t(s)
200
150
y (pixels)
100
50
0
0 50 100 150 200 250 300 350
x (pixels)
7
standard deviation (%)
0
2 4 6 8 10 12 14 16 18 20
steps ahead
200
150
y (pixels)
100
50
0
0 50 100 150 200 250 300 350
x (pixels)
pode ser feito com a simples inibica~o de uma equac~ao. A funca~o de cha-
veamento pode ser escolhida como a vericac~ao da matriz de covari^ancia dos
par^ametros estimada, P. Assim, se P (ou um de seus elementos) e menor que
um certo limite, a ser escolhido experimentalmente, e feita a atualizac~ao, caso
contrario n~ao. Uma explicac~ao para este procedimento, e que as vari^ancias
dos par^ametros, representadas pela diagonal de P, s~ao grandes, quando estes
est~ao se alterando ou n~ao s~ao muito \conaveis". Para o bom funcionamento
do metodo, o modelo inicial deve ser bom, permitindo que P seja inicializada
com valores pequenos. A determinac~ao do limite n~ao e muito facil, ja que
se o valor for muito pequeno, mudancas nas caractersticas do processo n~ao
ser~ao identicadas. A grande vantagem deste procedimento, e que quando
ocorrem problemas, a matriz P cresce rapidamente (dependendo do fator de
esquecimento) saindo do limite escolhido.
Existem duas falhas distintas que podem ocorrer durante a estimaca~o: o
sistema n~ao esta corretamente excitado; o rob^o e impedido de se movimen-
tar, por colis~ao, falta de bateria ou defeito mec^anico. A Figura 4.17 mostra o
comportamento dos quatro primeiros valores da diagonal de P e de seus res-
pectivos par^ametros, a1, a2, b1 e b2, no decorrer do tempo. Os par^ametros
foram inicializados com os valores encontrados atraves da identicaca~o em
batelada e a diagonal da matriz P com uma vari^ancia igual a 0; 01. O fator
de esquecimento foi de 0; 995. Aproximadamente no tempo t = 20 s o rob^o foi
desligado, simulando uma falha mec^anica ou uma colis~ao, sendo religado em
t = 53 s. Devido a esta falha os ganhos do modelo, representados pelos dois
ultimos par^ametros, tendem a zero, como ja era esperado. Na Figura 4.18
tem-se uma situac~ao semelhante. Neste caso, porem, o rob^o foi desligado
por software, ou seja, foi provocado um sinal n~ao-excitante que mantinha o
rob^o parado. Observe que em ambas as guras a soma dos dois primeiros
par^ametros e sempre igual a unidade devido a integraca~o.
CAPITULO 4. RESULTADOS EXPERIMENTAIS: MODELAGEM 69
(a) (b)
14 2
12 1.8
1.6
10
1.4
8
1.2
6
1
4
0.8
2
0.6
0 0.4
0 10 20 30 40 50 60 70 80 0 10 20 30 40 50 60 70 80
t (s) t (s)
(c)
14 (d)
12
0.4
10
0.2
8 0
6 −0.2
4 −0.4
2 −0.6
0 −0.8
0 10 20 30 40 50 60 70 80 0 10 20 30 40 50 60 70 80
t (s) t (s)
(e) (f)
0.01 0.01
0.009
0.005
0.008
0.007
0
0.006
0.005 −0.005
0.004
−0.01
0.003
0.002
−0.015
0.001
0 −0.02
0 10 20 30 40 50 60 70 80 0 10 20 30 40 50 60 70 80
t (s) t (s)
(g) (h)
0.01 0.02
0.009
0.015
0.008
0.007
0.01
0.006
0.005 0.005
0.004
0
0.003
0.002
−0.005
0.001
0 −0.01
0 10 20 30 40 50 60 70 80 0 10 20 30 40 50 60 70 80
t (s) t (s)
1.8
10
1.6
8
1.4
6 1.2
1
4
0.8
2
0.6
0 0.4
0 10 20 30 40 50 60 70 0 10 20 30 40 50 60 70
t (s) t (s)
(c)
12 (d)
10 0.4
0.2
8
−0.2
4
−0.4
2
−0.6
0 −0.8
0 10 20 30 40 50 60 70 0 10 20 30 40 50 60 70
t (s) t (s)
(e) (f)
0.01 0.01
0.009
0.005
0.008
0.007
0
0.006
0.005 −0.005
0.004
−0.01
0.003
0.002
−0.015
0.001
0 −0.02
0 10 20 30 40 50 60 70 0 10 20 30 40 50 60 70
t (s) t (s)
(g) (h)
0.01 0.02
0.009
0.015
0.008
0.007
0.01
0.006
0.005 0.005
0.004
0
0.003
0.002
−0.005
0.001
0 −0.01
0 10 20 30 40 50 60 70 0 10 20 30 40 50 60 70
t (s) t (s)
140 210
200
120
190
100
180
x (pixels)
y (pixels)
80
170
60
160
40
150
20 140
0 130
0 10 20 30 40 50 60 0 10 20 30 40 50 60
t (s) t (s)
(c)
10
−5
θ (rad)
−10
−15
−20
−25
0 10 20 30 40 50 60
t (s)
45
−0.535
40
35 −0.54
30
−0.545
25
20
−0.55
15
−0.555
10
5
−0.56
0 10 20 30 40 50 60
0 t(s)
0 10 20 30 40 50 60
t(s)
200 200
180
180
160
160
140
140
x (pixels)
y (pixels)
120
120
100
100
80
80
60
40 60
20 40
0 10 20 30 40 50 60 70 80 0 10 20 30 40 50 60 70 80
t (s) t (s)
(c)
50
40
30
θ (rad)
20
10
−10
0 10 20 30 40 50 60 70 80
t (s)
(a)
(b)
25
0.4
0.3
20
0.2
0.1
15 0
−0.1
10 −0.2
−0.3
5 −0.4
−0.5
0 −0.6
0 10 20 30 40 50 60 70 80 0 10 20 30 40 50 60 70 80
t(s) t(s)
(a) (b)
2 2
1 1
0 0
−1 −1
−2 −2
−3 −3
−4 −4
−5 −5
0 10 20 30 40 50 60 0 10 20 30 40 50 60
t (s) t(s)
76
CAPITULO 5. RESULTADOS EXPERIMENTAIS: CONTROLADOR 77
1
Z
0.8
0.6
0.4
0.2
Imaginario
0
-0.2
-0.4
-0.6
-0.8
-1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Real
O lugar das razes para o modelo e mostrado na Figura 5.1. Por esta
gura, v^e-se que o ganho que leva o sistema ao seu limite de estabilidade
(indicado por `+') e 0; 0758. A visualizaca~o deste ganho e posterior esco-
lha no novo valor de K pode ser feita muito facilmente com o auxilio do
software MATLAB [MATLAB, 1992] e das func~oes da toolbox de contro-
le [Cavallo et al., 1996] que entre outras coisas, permite a obtenca~o do valor
dos ganhos e seus respectivos polos no graco de lugar das razes.
Antes de iniciar o projeto do controlador devem-se escolher as carac-
tersticas desejaveis para o sistema controlado. Assim, como deseja-se um sis-
tema rapido e com pouco sobresinal e sabendo-se, a partir da Equaca~o (3.32),
que a constante de tempo mais rapida do sistema e 47 ms, um sobresinal
CAPITULO 5. RESULTADOS EXPERIMENTAIS: CONTROLADOR 78
D (z ; 0; 99)
D(z)G(z) = (z ;K1)2 (z ; 0; 5640) : (5.2)
1
Z
0.8
0.6
0.4
0.2
Imaginario
0
-0.2
-0.4
-0.6
-0.8
-1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Real
Figura 5.2: Diagrama de lugar das razes do sistema controlado com PI.
1.2 12
1 10
0.8 8
θ (rad)
θ (rad)
0.6 6
0.4 4
0.2 2
0 0
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
t (s) t (s)
uso de tal componente optou-se pela n~ao adoc~ao desta tecnica. Para tentar
melhorar o controlador ser~ao utilizadas outras metodologias, como sera visto
nas proximas sec~oes.
CAPITULO 5. RESULTADOS EXPERIMENTAIS: CONTROLADOR 81
(a) (b)
1.4 14
1.2 12
1 10
0.8 8
θ (rad)
θ (rad)
0.6 6
0.4 4
0.2 2
0 0
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
t (s) t (s)
(a) (b)
1.4 14
1.2 12
1 10
0.8 8
θ (rad)
θ (rad)
0.6 6
0.4 4
0.2 2
0 0
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
t (s) t (s)
1.2 12
1 10
0.8 8
θ (rad)
θ (rad)
0.6 6
0.4 4
0.2 2
0 0
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
t (s) t (s)
(a) (b)
14
1.2 12
1 10
0.8 8
θ (rad)
θ (rad)
0.6 6
0.4 4
0.2 2
0 0
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
t (s) t (s)
(b) (b)
20
18
1.2
16
1 14
12
0.8
θ (rad)
θ (rad)
10
0.6
8
6
0.4
0.2
2
0 0
0 2 4 6 8 10 12 14 16 18 20 0 2 4 6 8 10 12 14 16 18 20
t (s) t (s)
18
1.2
16
1 14
12
0.8
θ (rad)
θ (rad)
10
0.6
8
6
0.4
0.2
2
0 0
0 2 4 6 8 10 12 14 16 18 20 0 2 4 6 8 10 12 14 16 18 20
t (s) t (s)
1
Z
0.8
0.6
0.4
0.2
Imaginario
0
-0.2
-0.4
-0.6
-0.8
-1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Real
Figura 5.10: Lugar das razes do sistema sem atraso controlado com PI.
1.2 12
1 10
0.8 8
θ (rad)
θ (rad)
0.6 6
0.4 4
0.2 2
0 0
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
t (s) t (s)
Com este valor, tem-se que Kp = 8; 802 e Ki = 3; 276. A Figura 5.11 mostra
a resposta temporal da func~ao de transfer^encia sem atraso e controlada, para
estes ganhos. Note que o tempo de resposta diminuiu signicativamente
em comparac~ao com o sistema original com atraso e praticamente foram
atingidos os requisitos de projeto.
A Figura 5.12 mostra a resposta temporal do simulador sem o atraso.
Observe que, em oposic~ao a situaca~o original, alem de mais rapido, o sistema
n~ao apresenta os \degraus" causados pelo arredondamento ou quantizaca~o do
sinal de controle. Porem, pode ser notada uma oscilaca~o adicional causada
pela maior amplicac~ao do rudo de (ek ; ek;1). Fisicamente, esta oscilaca~o
aparece como um pequena variac~ao do rob^o em torno da refer^encia de a^ngulo.
Como este rudo esta no nvel de grandeza do rudo original do sistema de
medic~ao, o problema pode ser desconsiderado, ja que os benefcios obtidos
com a compensac~ao do atraso e aumento do ganho foram muito maiores.
Apesar disso, uma consequ^encia ruim da oscilaca~o poderia ser um aumento
do desgaste dos atuadores (servos) causada pela variac~ao rapida dos sinais de
CAPITULO 5. RESULTADOS EXPERIMENTAIS: CONTROLADOR 88
(a) (b)
14
1.2 12
1 10
0.8 8
θ (rad)
θ (rad)
0.6 6
0.4 4
0.2 2
0 0
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
t (s) t (s)
1.2 12
1 10
0.8 8
θ (rad)
θ (rad)
0.6 6
0.4 4
0.2 2
0 0
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
t (s) t (s)
4.5
3.5
2.5
θ (rad)
2
1.5
0.5
0
0 2 4 6 8 10 12 14
t (s)
1
Z
0.8
0.6
0.4
0.2
Imaginario
-0.2
-0.4
-0.6
-0.8
-1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Real
Figura 5.15: Diagrama de lugar das razes do sistema com preditor controlado
com PI.
(a) (b)
14
1.2 12
1 10
0.8 8
θ (rad)
θ (rad)
0.6 6
0.4 4
0.2 2
0 0
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
t (s) t (s)
(a) (b)
14
1.2 12
1 10
0.8 8
θ (rad)
θ (rad)
0.6 6
0.4 4
0.2 2
0 0
0 2 4 6 8 10 12 14 0 2 4 6 8 10 12 14
t (s) t (s)
3.5
2.5
θ (rad)
1.5
0.5
0
0 2 4 6 8 10 12 14
t (s)
200 200
150 150
y (pixels)
y (pixels)
100 100
50 50
0 0
0 50 100 150 200 250 300 350 0 50 100 150 200 250 300 350
x (pixels) x (pixels)
200
150
y (pixels)
100
50
0
0 50 100 150 200 250 300 350
x (pixels)
−50
100
−100
e (pixels)
ex (pixels)
y
−150
50
−200
−250 0
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
t (s) t (s)
(c) (d)
1
0.8
200
0.6
150
0.4
y (pixels)
eθ (rad)
0.2 100
50
−0.2
−0.4 0
0 1 2 3 4 5 6 7 0 50 100 150 200 250 300 350
t (s) x (pixels)
−20
100
−40
−60
80
−80
ey (pixels)
ex (pixels)
−100 60
−120
40
−140
−160
20
−180
−200 0
0 2 4 6 8 10 12 14 16 18 20 0 2 4 6 8 10 12 14 16 18 20
t (s) t (s)
(c) (d)
0.4
0.3
200
0.2
0.1 150
y (pixels)
eθ (rad)
100
−0.1
−0.2
50
−0.3
−0.4 0
0 2 4 6 8 10 12 14 16 18 20 0 50 100 150 200 250 300 350
t (s) x (pixels)
−20 100
−40
80
−60
60
−80
ey (pixels)
ex (pixels)
−100 40
−120
20
−140
0
−160
−20
−180
−200 −40
0 0.5 1 1.5 2 2.5 3 0 0.5 1 1.5 2 2.5 3
t (s) t (s)
(c) (d)
1
0.8
200
0.6
150
0.4
y (pixels)
eθ (rad)
0.2 100
50
−0.2
−0.4 0
0 0.5 1 1.5 2 2.5 3 0 50 100 150 200 250 300 350
t (s) x (pixels)
−20 100
−40
80
−60
60
ey (pixels)
−80
ex (pixels)
40
−100
20
−120
0
−140
−20
−160
−180 −40
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6
t (s) t (s)
(c) (d)
1
0.8
200
0.6
150
0.4
y (pixels)
eθ (rad)
0.2 100
50
−0.2
−0.4 0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 0 50 100 150 200 250 300 350
t (s) x (pixels)
10
0
0
−10
−50
ey (pixels)
ex (pixels)
−20
−100
−30
−40
−150
−50
−200 −60
0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8
t (s) t (s)
(c) (d)
1
200
0.5 150
y (pixels)
eθ (rad)
100
50
−0.5
0
0 1 2 3 4 5 6 7 8 0 50 100 150 200 250 300 350
t (s) x (pixels)
a esta com pequenos erros. Nas Figuras 5.25(a) e (b) entretanto, percebe-
se que existe um erro signicativo nas componentes x e y. Isto ocorre por
dois motivos principais: o sistema so possui uma integraca~o e por isto era
esperado um erro constante para entradas em rampa; existe um grande atraso
no sistema. Este segundo motivo, n~ao permite que o sistema atinja um alvo
movel, a n~ao ser que haja um comportamento sobreamortecido causado por
altos valores de ganhos, o que n~ao e desejado. Assim, o comportamento do
rob^o sera sempre de perseguica~o aos alvos moveis, nunca chegando a seu
objetivo. Apesar deste comportamento aparentemente parecer ruim, ele faz
com que o rob^o percorra a trajetoria com velocidades contnuas e n~ao pare
CAPITULO 5. RESULTADOS EXPERIMENTAIS: CONTROLADOR 103
(a) (b)
35 30
30
25
25
20
20
e (pixels)
e (pixels)
y
x
15
15
10
10
0 5
0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8
t (s) t (s)
(c) (d)
200
0.5
150
y (pixels)
eθ (rad)
0 100
50
−0.5
0
0 1 2 3 4 5 6 7 8 0 50 100 150 200 250 300 350
t (s) x (pixels)
a cada ponto. Pela Figura 5.25(c) pode-se notar que novamente, o erro de
orientac~ao e a variavel mais ruidosa, como ja era esperado. Apesar disso,
v^e-se que este \rudo" n~ao atrapalhou o comportamento do rob^o, a n~ao ser
pela pequenas oscilac~oes que foram previstas na sec~ao anterior. Note que
para esta variavel n~ao existe atraso nem erro em regime permanente pois foi
adicionado uma segunda integraca~o e compensado o atraso.
A Figura 5.26 mostra a mesma situaca~o com o ganho passando para
K = 0; 2. Nota-se que houve uma diminuic~ao de todos os erros com excec~ao
de e que permaneceu inalterado. Isto indica que o rob^o aumentou a sua
velocidade linear e conseguiu chegar mais perto de seus alvos (pontos da
CAPITULO 5. RESULTADOS EXPERIMENTAIS: CONTROLADOR 104
(a) (b)
50 35
45
30
40
35 25
30
ex (pixels)
ey (pixels)
20
25
20 15
15
10
10
5 5
0 0.5 1 1.5 2 2.5 3 3.5 4 0 0.5 1 1.5 2 2.5 3 3.5 4
t (s) t (s)
(c) (d)
1
0.8
200
0.6
0.4
150
0.2
y (pixels)
e (rad)
θ
0
100
−0.2
−0.4 50
−0.6
−0.8 0
0 0.5 1 1.5 2 2.5 3 3.5 4 0 50 100 150 200 250 300 350
t (s) x (pixels)
reta). Apesar disso, este aumento n~ao foi escolhido, tendo sido causado
pelo aumento do ganho. Na Figura 5.27 e mostrado um caso onde tentou-
se dobrar a velocidade de movimentaca~o do rob^o. Para tanto, uma nova
trajetoria onde a dist^ancia entre os pontos e duas vezes maior foi usada como
refer^encia. Note que os erros de x e y aumentaram um pouco em relac~ao ao
caso anterior, mas o rob^o percorreu a mesma dist^ancia na metade do tempo.
Este comportamento pode ser melhor observado na Figura 5.28 que mostra as
velocidades estimadas para os dois casos. Na Figura 5.28(a) observa-se que a
velocidade e de aproximadamente 40 pixels/s, aumentando para 80 pixels/s na
CAPITULO 5. RESULTADOS EXPERIMENTAIS: CONTROLADOR 105
(a) (b)
140 180
160
120
140
100
120
80
v (pixels/s)
v (pixels/s)
100
80
60
60
40
40
20
20
0 0
0 1 2 3 4 5 6 7 8 0 0.5 1 1.5 2 2.5 3 3.5 4
t (s) t (s)
40
60
30
40
20
20
10
ex (pixels)
e (pixels)
0 0
y
−10
−20
−20
−40
−30
−60
−40
−50 −80
0 5 10 15 20 25 30 0 5 10 15 20 25 30
t (s) t (s)
(c) (d)
1
0.5 200
0
150
y (pixels)
eθ (rad)
−0.5
100
−1
50
−1.5
−2 0
0 5 10 15 20 25 30 0 50 100 150 200 250 300 350
t (s) x (pixels)
20
40
0
20
−20
e (pixels)
ex (pixels)
y
−40
−20
−60
−40
−80
−100 −60
0 5 10 15 20 25 30 0 5 10 15 20 25 30
t (s) t (s)
(c) (d)
1
0.5 200
0
150
y (pixels)
eθ (rad)
−0.5
100
−1
50
−1.5
−2 0
0 5 10 15 20 25 30 0 50 100 150 200 250 300 350
t (s) x (pixels)
200
150
y (pixels)
100
50
0
0 50 100 150 200 250 300 350
x (pixels)
200
150
y (pixels)
100
50
0
0 50 100 150 200 250 300 350
x (pixels)
45
60
40
40
35
20
30
ex (pixels)
e (pixels)
25
y
−20
20
−40
15
−60
10
5 −80
0 −100
0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8
t (s) t (s)
(c) (d)
1
0.8
200
0.6
0.4
150
0.2
y (pixels)
e (rad)
0
θ
100
−0.2
−0.4
−0.6 50
−0.8
−1 0
0 1 2 3 4 5 6 7 8 0 50 100 150 200 250 300 350
t (s) x (pixels)
40
25
20
20
15
0
10
ex (pixels)
e (pixels)
5
−20
y
0
−5 −40
−10
−60
−15
−20 −80
0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8
t (s) t (s)
(c) (d)
1
0.8
200
0.6
0.4
150
0.2
y (pixels)
e (rad)
0
θ
100
−0.2
−0.4
−0.6 50
−0.8
−1 0
0 1 2 3 4 5 6 7 8 0 50 100 150 200 250 300 350
t (s) x (pixels)
40
80
30
60
20
40
10
ex (pixels)
e (pixels)
0 20
y
−10
0
−20
−20
−30
−40
−40
−50 −60
0 1 2 3 4 5 6 7 8 0 1 2 3 4 5 6 7 8
t (s) t (s)
(c)
(d)
4
3
200
150
1
eθ (rad)
0 y (pixels)
100
−1
50
−2
−3 0
0 1 2 3 4 5 6 7 8 0 50 100 150 200 250 300 350
t (s) x (pixels)
200
150
y (pixels)
100
50
0
0 50 100 150 200 250 300 350
x (pixels)
Figura 5.36: Dois rob^os seguindo trajetorias circulares id^enticas com os cen-
tros deslocados. A linha contnua representa a refer^encia e a linha tracejada
o caminho percorrido pelos rob^os.
alumnio que formam o corpo. Alem disso, este rob^o possui um potenci^ometro
que permite que o valor do sinal de controle necessario para manter o rob^o
parado, seja ajustado. Atraves da identicac~ao em tempo real deste rob^o,
obteve-se o seguinte submodelo para a orientac~ao:
indicando que realmente existe uma diferenca entre os rob^os (ver Equa-
c~ao (4.2)), principalmente em relaca~o aos ganhos que multiplicam os sinais
de controle. Apesar das diferencas, pela Figura 5.36 nota-se que o comporta-
mento de ambos os rob^os e muito similar, mostrando que o sistema e robusto
a estas pequenas variac~oes. Alem disso, e facil observar em comparac~ao com
os resultados anteriores, que houve modicac~oes insignicantes no desempe-
nho do sistema apos a inclus~ao de um novo rob^o, comprovando o fato de que
os controladores projetados est~ao preparados para operar com mais de um
agente.
Captulo 6
Conclus~oes e Perspectivas
Futuras
Nunca conseguimos o que queremos, mas se nos
esforcarmos um pouco conseguimos o que precisamos.
Mick Jagger (1943{)
114
CAPITULO 6. CONCLUSOES
~ E PERSPECTIVAS FUTURAS 115
[Asada and Slotine, 1985] Asada, H. and Slotine, J.-J. E. (1985). Robot Ana-
lysis and Control. Wiley-Interscience.
[Beer and Johnston Jr., 1991] Beer, F. P. and Johnston Jr., E. R. (1991).
Mec^anica Vetorial para Engenheiros - Cinematica e Din^amica. McGraw
Hill, 5th edition.
[Bloch et al., 1992] Bloch, A. M., Reyhanoglu, M., and McClamroch, N. H.
(1992). Control and stabilization of nonholonomic dynamic systems. IEEE
Transactions on Automatic Control, 37(11):1746{1757.
[Caccavale et al., 1999] Caccavale, F., Natale, C., and Villani, L. (1999).
Task-space tracking control without velocity measurements. In Procee-
dings of the 1999 IEEE International Conference on Robotics & Automa-
tion, pages 512{517, Detroit, Michigan.
[Caminhas, 1997] Caminhas, W. M. (1997). Estrategias de Detecc~ao e
Diagnostico de Falhas em Sistemas Din^amicos. PhD thesis, Universidade
Estadual de Campinas, Campinas, S~ao Paulo, Brasil.
[Campion et al., 1996] Campion, G., Bastion, G., and D'Andrea-Novel, B.
(1996). Structural properties and classication of kinematic and dynamic
models of wheeled mobile robots. IEEE Transactions on Robotics and
Automation, 12(1):47{62.
[Campos et al., 1998] Campos, M., Ancio, M., Carvalho, M., Dias, R., Hart-
mann, A., Nagem, D., Oliveira, V., Oliveira, E., Pereira, G., Ribeiro, A.,
Sanches, F., and Silveira, M. (1998). MIneiROSOT { the development of
a centralized control set of soccer-playing micro-robots. In Proccedings of
FIRA Robot World Cup, pages 57{62, Paris.
[Campos and de Souza Coelho, 1999] Campos, M. F. M. and de Souza Coe-
lho, L. (1999). Autonomous dirigible navigation using visual tracking and
pose estimation. In Proceedings of the 1999 IEEE International Conference
on Robotics & Automation, pages 2584{2589, Detroit, Michigan.
[Caracciolo et al., 1999] Caracciolo, L., Luca, A. D., and Iannitti, S. (1999).
Trajectory tracking control of a four-wheel dierentially driven mobile ro-
bot. In Proceedings of the 1999 IEEE International Conference on Robotics
& Automation, pages 2632{2638, Detroit, Michigan.
[Cavallo et al., 1996] Cavallo, A., Setola, R., and Vasca, F. (1996). Using
MATLAB { SIMULINK and Control System Toolbox: A Practical Ap-
proach. Prentice Hall.
REFERE^ NCIAS BIBLIOGRA FICAS 121
[Cortesao et al., 1998] Cortesao, R., Millela, F., and Nunes, U. (1998). Joint
robust position control using linear Kalman lters. In Proceedings of the
5th International Workshop on Advanced Motion Control, pages 417 { 422,
Coimbra.
[de Wit and Sordalen, 1992] de Wit, C. C. and Sordalen, O. J. (1992). Expo-
nential stabilization of mobile robots with nonholonomic contraints. IEEE
Transactions on Automatic Control, 37(11):1791{1797.
[Elnagar and Gupta, 1998] Elnagar, A. and Gupta, K. (1998). Motion pre-
diction of moving objects based on autoregressive model. IEEE Transac-
tions on Systems, Man, and Cybernetics | Part A: Systems and Humans,
28(6):803{810.
[FIRA, 1999] FIRA (1999). Federation of International Robot-soccer Asso-
ciation. http://www.ra.net.
[Frank and Seliger, 1991] Frank, P. M. and Seliger, R. (1991). Fault detec-
tion and isolation in automatic processes. Control and Dynamics Systems,
49:241{287.
[Fu et al., 1987] Fu, K. S., Gonzalez, R. C., and Lee, C. S. G. (1987). Robo-
tics: Control, sensing, vision and intelligence. McGraw Hill.
[Fukuda and Kubota, 1997] Fukuda, T. and Kubota, N. (1997). Evolutio-
nary robotic system. In 1997 Micro-Robot World Cup Soccer Tournament
Proceedings, pages 19{26.
[Futaba, 1999] Futaba (1999). Futaba. http://www.futaba-na.com.
[Gomes and Ramos, 1998] Gomes, S. B. V. and Ramos, J. J. G. (1998).
Airship dynamic modeling for autonomous operation. In Proceedings of
the 1998 IEEE International Conference on Robotics & Automation, pa-
ges 3462{3476.
[Gorinevsky et al., 1996] Gorinevsky, D., Kapitanovsky, A., and Golden-
berg, A. (1996). Neural network architeture for trajectory generation and
control of automated car paking. IEEE Transactions on Control Systems
Technology, 4(1).
[Harris and Billings, 1995] Harris, C. J. and Billings, S. A. (1995). Self-
Tuning and Adaptative Control: Theory and Aplications. Peter Peregrinus.
REFERE^ NCIAS BIBLIOGRA FICAS 122
[Olsen and Bekey, 1986] Olsen, H. B. and Bekey, G. A. (1986). Identica-
tion of robot dynamics. In Proceedings of the 1986 IEEE International
Conference on Robotics & Automation, pages 1004{1010, San Francisco.
[Ozaki et al., 1991] Ozaki, T., Suzuki, T., Furuhashi, T., Okuma, S., and
Uchikawa, Y. (1991). Trajectory control of robotic manipulators using
neural networks. IEEE Transactions on Industrial Electronics, 38(3):195{
202.
[Park et al., 1999] Park, K., Chung, H., and Leel, J. G. (1999). Point sta-
bilization of mobile robots via state space exact feedback linearization.
In Proceedings of the 1999 IEEE International Conference on Robotics &
Automation, pages 2626{2631, Detroit, Michigan.
[Philips and Nagle, 1995] Philips, C. L. and Nagle, H. T. (1995). Digital
Control System Analysis and Design. Prentice Hall, 3th edition.
[Samson, 1995] Samson, C. (1995). Control of chained systems application
to path following and time-varying point-stabilization of mobile robots.
IEEE Transactions on Automatic Control, 40(1):64{77.
[Sargent et al., 1997] Sargent, R., Bailey, B., Witty, C., and Wright, A.
(1997). Fast visual tracking and coordinated control for soccer-playing
robots. In Proceedings of the Micro-Robot World Cup Soccer Tournament,
pages 59{65, Taejon, Korea.
[Stallings, 1996] Stallings, W. (1996). Data and Computer Communications.
Prentice Hall, 5th edition.
[Stemmer et al., 1997] Stemmer, M. R., Pieri, E. R. D., and Borges, F. A. P.
(1997). Comparac~ao de performance entre controladores classicos e um
controlador torque computado neural aplicados ao rob^o PUMA 560. In
Anais do III Congresso Brasileiro de Redes Neurais, pages 390{395, Fo-
rianopolis.
[Stroustrup, 1986] Stroustrup, B. (1986). The C++ Programming Language.
Addison-Wesley.
[Tavares Filho, 1997a] Tavares Filho, R. F. (1997a). Controlando um trans-
missor RC atraves de um computador. Technical report, Instituto de Au-
tomac~ao - Centro Tecnologico para Informatica.
[Tavares Filho, 1997b] Tavares Filho, R. F. (1997b). Convertendo um servo
motor RC em um dispositivo de trac~ao para micro-rob^os. Technical report,
Instituto de Automac~ao - Centro Tecnologico para Informatica.
REFERE^ NCIAS BIBLIOGRA FICAS 126
A.1 Rob^o
Para reproduzir o comportamento do rob^o foi usado o modelo encontrado
com a identicac~ao em batelada no Captulo 4. Assim, o modelo din^amico
127
APE^ NDICE A. SIMULADOR PARA O MATLAB 128
xk = 1; 6824 xk;1 ; 0; 6824 xk;2 + [0; 0441 u1 k;8 + 0; 0403 u2 k;8] cos(k;1)
yk = 1; 7150 yk;1 ; 0; 7152 yk;2 + [0; 0336 u1 k;8 + 0; 0318 u2 k;8] sin(k;1)
k = 1; 5640 k;1 ; 0; 5640 k;2 ; 0; 0063 u1 k;8 + 0; 0065 u2 k;8 : (A.1)
A.2 Vis~ao
Como foi mostrado na Sec~ao 4.1.2 o rudo fornecido pelo sistema de vis~ao
tem caractersticas especiais devido principalmente a resoluca~o do sinal de
vdeo. Para reproduzir os sinais de sada do sistema de vis~ao foram usados
as seguintes linhas do MATLAB:
xm=ceil(x+rand-1);
ym=ceil(y+rand-1);
tetam=teta+0.095*(rand*2-1);
onde xm,ym e tetam s~ao as variaveis medidas pelo sistema de vis~ao simulado
e x,y e teta s~ao as variaveis de sada do modelo din^amico do rob^o.
O rudo em x e y s~ao calculados da mesma forma. A func~ao ceil()
arredonda para um numero inteiro acima e a func~ao rand retorna um numero
aleatorio entre 0 e 1. Para , o numero 0; 095 e usado para ajustar a vari^ancia
do rudo. A Figura A.1 mostra a sada do sistema de vis~ao simulado para
APE^ NDICE A. SIMULADOR PARA O MATLAB 129
(a) (b)
61 86
60.9 85.9
60.8 85.8
60.7 85.7
60.6 85.6
x (pixels)
y (pixels)
60.5 85.5
60.4 85.4
60.3 85.3
60.2 85.2
60.1 85.1
60 85
0 0.5 1 1.5 2 2.5 3 0 0.5 1 1.5 2 2.5 3
t (s) t (s)
(c)
5.2
5.18
5.16
5.14
5.12
θ (rads)
5.1
5.08
5.06
5.04
5.02
5
0 0.5 1 1.5 2 2.5 3
t (s)
o rob^o parado. Comparando com a Figura 4.5 v^e-se que com excec~ao da
variavel existe muita semelhanca entre o sinais do simulador e os sinais
reais. Apesar do rudo de n~ao ter a mesma forma do rudo real preocupou-
se em garantir que os dois tivessem vari^ancias parecidas.
O Campo foi desenhado nas dimens~oes maximas possveis para o sistema
vis~ao, ou seja 352 240 pixels. As paredes so t^em a funca~o de parar o
rob^o caso haja uma colis~ao, n~ao tendo sido considerada nenhuma func~ao de
re
ex~ao ou absorc~ao de impacto. A Figura A.2 mostra a vis~ao do campo com
um rob^o percorrendo uma trajetoria qualquer.
APE^ NDICE A. SIMULADOR PARA O MATLAB 130
200
150
y (pixels)
100
50
0
0 50 100 150 200 250 300 350
x (pixels)
131
APE^ NDICE B. ESTIMADOR EMQ 132