Escolar Documentos
Profissional Documentos
Cultura Documentos
I.
Introduo
O
presente
relatrio
descreve
a
implementao
em
Matlab
de
alguns
controladores
em
Modo
de
Deslizamento
(Sliding
Mode)
para
um
motor
DC.
Em
termos
simples,
o
Sliding
Mode
um
sistema
de
controlo
que
est
sempre
a
comutar
entre
dois
estados.
O
valor
que
se
pretende
sada
do
controlador
ser
dado
pelo
tempo
mdio
entre
os
dois
estados.
No
caso
do
motor
DC,
esses
estados
sero
as
tenses
positiva
e
negativa
mximas
que
lhe
fornecemos.
Como
veremos,
este
tipo
de
controlador
mais
fcil
de
implementar
do
que
um
controlador
difuso,
embora
apresente
resultados
semelhantes.
Fig.
1
-
Controlador
em
Modo
de
Deslizamento
da
velocidade
De
forma
semelhante
experincia
com
controladores
difusos,
trata-se
de
um
sistema
de
controlo
em
malha
fechada.
Repare-se
que
o
valor
do
erro
continua
a
ser
dado
pela
expresso:
Referncia
-
velocidade
de
sada
do
motor.
Como
se
pode
ver,
o
modelo
tem
ento
uma
Referncia
(Step),
um
bloco
para
clculo
do
erro,
o
motor
DC,
e
um
elemento
novo
-
o
bloco
de
histerese
(Relay).
Fig.
2
-
Funcionamento
da
Histerese
Fig.
3
-
Grficos
da
tenso
e
da
velocidade
em
paralelo
At
ao
momento
do
degrau
(Step
time
=
1s)
a
Referncia
0,
por
isso
o
controlador
est
a
comutar
entre
-100
e
100
permanecendo
50%
do
tempo
de
cada
ciclo
em
cada
valor,
o
que
dar
um
valor
mdio
de
0V.
Logo,
a
velocidade
mantm-se
nula
como
pretendido.
Depois
disso,
passando
a
Referncia
a
1,
o
controlador
comuta
para
o
estado
ligado
(100V)
e
l
se
mantm
enquanto
o
erro
positivo,
da
a
"clareira"
sem
comutaes
que
observamos
entre
o
1s
e
os
1,5s,
aproximadamente.
H
ainda
por
essa
altura
algumas
diminutas
comutaes
at
a
velocidade
estabilizar.
Ao
mesmo
tempo
que
a
velocidade
estabiliza,
tambm
a
frequncia
de
comutao
estabiliza,
sendo
o
seu
valor
mdio
de
10V
para
manter
a
velocidade
no
valor
constante
de
1
rad/s.
Se
substituirmos
a
Referncia
por
um
gerador
de
sinal,
podemos
testar
o
controlador
com
uma
onda
sinusoidal,
obtendo-se
o
seguinte
grfico:
Fig.
4
-
Grfico
da
Referncia
e
Velocidade
de
uma
onda
sinusoidal
Neste
caso,
o
controlador
comporta-se
optimamente,
seguindo
a
onda
sinusoidal
quase
na
perfeio.
O
Sliding
Mode
parece
assim
ser
um
sistema
de
controlo
ideal
para
uma
Referncia
com
este
tipo
de
onda.
J
quando
se
trata
de
uma
onda
quadrada
ou
de
uma
onda
serra,
o
comportamento
do
controlador
deixa
a
desejar,
como
se
pode
observar:
Fig.
5
-
Grfico
da
Referncia
(onda
quadrada)
e
da
velocidade
Fig.
6
-
Grfico
da
Referncia
(onda
serra)
e
da
velocidade
Como
se
pode
ver,
o
controlador
tem
alguma
dificuldade
em
acompanhar
estes
dois
tipos
de
ondas.
No
caso
particular
da
onda
quadrada,
nota-se
maior
dificuldade
do
controlador:
nunca
chega
a
ter
tempo
de
estabilizar
no
valor
mnimo
ou
mximo
da
Referncia
pois
esta
varia
mais
rpido
do
que
o
controlador
consegue
acompanhar,
mesmo
a
uma
baixa
frequncia.
Fig.
7
-
Anlise
de
Fourier
da
tenso
Explicada
de
maneira
simples,
a
transformada
de
Fourier
um
processo
de
decomposio
de
uma
funo
complexa
numa
soma
de
funes
mais
simples.
Permite-nos
ento
ver
as
vrias
ondas
que
compem
uma
onda
mais
complexa.
Cada
onda
simples
corresponder
ento
a
uma
frequncia
e
sua
respectiva
amplitude.
No
entanto,
podemos
isolar
algumas
frequncias
especficas,
a
ttulo
experimental.
Para
esse
efeito,
criou-se
um
script:
t=[0:0.001:2];
u1=10*sin(2*pi*50*t);
u2=10*sin(2*pi*100*t);
u3=10*sin(2*pi*200*t);
u=u1+u2+u3;
FFT=fft(u);
plot(abs(FFT))
Ao
correr
o
script,
obtivemos
o
seguinte
grfico:
Fig.
8
-
Anlise
de
Fourier
de
algumas
frequncias:
100Hz,
200Hz
e
400Hz
Como
podemos
ver,
isolamos
assim
as
frequncias
aos
100,
200
e
400
Hz.
Verificamos
de
novo
uma
simetria,
fruto
da
natureza
do
sinal
analisado.
Fig.
9
-
Motor
DC
com
duas
sadas:
velocidade
e
corrente
Seguidamente
alterou-se
o
modelo
do
controlador
anterior
para
que
o
valor
do
erro
seja
agora
dado
pela
expresso:
Referncia
-
corrente,
como
se
pode
ver
pelo
grfico
abaixo:
Fig.
10
-
Controlador
em
Modo
de
Deslizamento
da
corrente
10V = 1 x i i = 10A
Logo,
para
obter
uma
velocidade
de
1
rad/s,
necessitamos
de
ter
por
Referncia
uma
corrente
de
10A.
Ao
correr
uma
simulao
utilizando
um
Step
de
10,
obtemos
o
seguinte
grfico
da
velocidade:
Fig.
11
-
Grfico
da
velocidade
para
controlador
Sliding
Mode
da
corrente
-
banda
de
erro
entre
-0.001
e
0.001
Como
se
pode
ver,
o
motor
acelera
at
estabilizar
na
velocidade
de
1
rad/s,
tal
como
seria
de
esperar
para
uma
corrente
de
10A.
Vejamos
agora
o
grfico
da
corrente
em
comparao
com
a
Referncia:
Fig.
12
-
Grfico
da
Referncia
e
da
corrente
-
banda
de
erro
entre
-0.001
e
0.001
primeira
vista,
a
resposta
do
controlador
parece
praticamente
perfeita,
j
que
o
valor
da
corrente
acompanha
sempre
a
Referncia.
No
entanto,
se
virmos
a
seguir
o
mesmo
grfico
da
corrente/Referncia,
mas
ampliado:
Fig.
13
-
Ampliao
do
grfico
da
Referncia
e
corrente
-
banda
de
erro
entre
-0.001
e
0.001
A
esta
escala,
detectamos
variaes
na
corrente,
embora
sejam
to
pequenas
que
as
possamos
considerar
desprezveis.
Estas
variaes
devem-se
largura
de
banda,
a
qual
maior
que
a
usada
no
controlador
de
velocidade
implementado
anteriormente.
Contudo,
podemos
considerar
que
a
resposta
do
controlador
ainda
bastante
boa,
pois
se
experimentarmos
ser
progressivamente
mais
permissivos
e
alterarmos
os
valores
da
histerese
para:
Switch
on
point:
0.1
Switch
off
point:
-0.1
Output
when
on:
100
Output
when
off:
0
10
Fig.
14
-
Grfico
da
Referncia
e
da
corrente
-
banda
de
erro
entre
-0.1
e
0.1
Ampliando
o
mesmo
grfico:
Fig.
15
-
Ampliao
do
Grfico
da
Referncia
e
da
corrente
-
banda
de
erro
entre
-0.1
e
0.1
Observa-se
agora
uma
frequncia
de
comutao
ainda
mais
baixa,
e
uma
corrente
com
variaes
ainda
maiores.
Faz-se
agora
um
ltimo
teste.
Para
sermos
ainda
mais
permissivos,
configura-se
a
histerese
da
seguinte
forma:
Switch
on
point:
1
Switch
off
point:
-1
Output
when
on:
100
Output
when
off:
0
11
Fig.
16
-
Grfico
da
Referncia
e
da
corrente
-
banda
de
erro
entre
-1
e
1
Neste
caso,
as
variaes
de
corrente
so
bastante
elevadas,
podendo
ser
observadas
a
olho
nu,
sem
necessidade
de
ampliar
o
grfico.
Como
ltima
curiosidade,
vejamos
o
grfico
da
velocidade
obtido
com
a
mesma
simulao:
Fig.
17
-
Grfico
da
velocidade
-
banda
de
erro
entre
-1
e
1
Constatamos
que
para
esta
largura
da
banda
de
erro,
a
velocidade
sofre
aceleraes
e
desaceleraes
continuamente.
Embora
ronde
o
valor
pretendido,
nunca
estvel.
Pode
ento
concluir-se
que
quanto
menor
for
a
banda,
ou
seja,
quanto
menor
for
o
erro
permitido,
maior
ser
a
frequncia
de
comutao,
o
que
significar
tanto
uma
corrente
como
uma
velocidade
mais
estveis.
No
entanto,
se
implementssemos
este
motor
e
controlador
na
prtica,
haveria
certamente
componentes
que
no
suportariam
uma
frequncia
de
comutao
to
elevada.
Logo,
na
vida
real
torna-se
necessrio
encontrar
um
meio-termo
entre
a
frequncia
de
comutao
e
os
componentes.
12
Fig.
18
-
Controlador
em
Modo
de
Deslizamento
da
velocidade
com
derivada
do
erro
Como
se
pode
ver,
o
input
que
o
rel
agora
recebe
a
soma
do
erro
com
a
taxa
de
variao
do
mesmo
(tendo
ambas
sido
multiplicadas
por
um
ganho),
dada
pela
expresso
s
=
K1e
+
k2.
A
histerese
ento
configurada
da
seguinte
forma:
Switch
on
point:
0.000001
Switch
off
point:
-0.000001
Output
when
on:
100
Output
when
off:
0
Ao
correr
uma
simulao
para
uma
Referncia
de
10
rad/s,
obtemos
o
seguinte
grfico
da
velocidade:
13
Fig.
19
-
Grfico
da
velocidade
para
controlador
Sliding
mode
com
derivada
do
erro
Como
podemos
ver
pelo
grfico
acima,
o
motor
tem
agora
uma
resposta
mais
lenta
quando
comparado
com
o
primeiro
controlador
de
velocidade
que
implementmos,
o
que
se
deve
taxa
de
variao
do
erro.
Se
agora
analisarmos
o
grfico
XY,
podemos
observar
o
resultado
da
expresso
s=e+,
para
k2=1:
Fig.
20
-
Grfico
XY
de
s=e+,
para
k2=1
Como
se
pode
ver
o
sistema
aparenta
"deslizar"
ao
longo
da
superfcie
s,
at
atingir
zero,
momento
em
que
o
erro
se
anula
por
completo,
ou
seja,
foi
atingida
a
velocidade
de
referncia.
O
nome
de
modo
de
deslizamento
deve-se,
portanto,
a
este
movimento
do
sistema
ao
longo
das
estruturas
de
controlo.
14
Fig.
21
-
Grfico
XY
de
s=e+,
para
k2=0.1
Como
se
pode
constatar,
a
linha
descrita
pelo
grfico
tende
para
zero
mais
rapidamente,
apresentando
uma
inclinao
superior
quando
comparada
ao
grfico
para
K2=1.
Naturalmente,
isso
significa
que
a
resposta
do
motor
mais
clere.
De
facto,
possvel
observar
essa
maior
imediatez
no
grfico
da
velocidade:
Fig.
22
-
Grfico
da
velocidade
para
k2=0.1
15
Fig.
23
-
Grfico
XY
de
s=e+,
para
k2=2
Como
seria
de
esperar,
obtemos
agora
uma
inclinao
muito
inferior
da
recta
s,
o
que
se
traduz
numa
resposta
bem
mais
lenta.
Fig.
24
-
Grfico
da
velocidade
para
k2=2
De
facto,
para
um
K2
elevado,
a
velocidade
do
motor
evolui
muito
lentamente,
tanto
que
neste
caso
a
simulao
de
10
segundos
no
sequer
tempo
suficiente
para
atingir
a
velocidade
de
Referncia.
16
Fig.
25
-
Grfico
XY
de
de
s=e+
para
diferentes
valores
de
k2:
k2=0.1,
k2=1
e
k2=2
Fig.
26
-
Grfico
da
velocidade
para
diferentes
valores
de
k2:
k2=0.1,
k2=1
e
k2=2
O
ganho
da
derivada
do
erro
portanto
usado
para
controlar
a
resposta
do
controlador.
Se
queremos
que
o
motor
arranque
mais
rapidamente,
usamos
um
K2
baixo.
Se
pelo
contrrio
desejamos
um
arranque
mais
suave,
K2
tem
de
ser
elevado.
Geralmente,
o
que
se
pretende
evitar
um
arranque
demasiado
rpido
para
que
no
hajam
sobreelevaes
de
tenso,
o
que
poderia
danificar
o
motor.
No
caso
de
haver
uma
proteco
contra
estes
picos
de
tenso,
no
conseguiramos
sequer
pr
o
motor
a
trabalhar.
Assim,
a
manipulao
de
K2
permite
chegar
a
um
equilbrio
ideal,
consoante
o
motor
que
pretendemos
controlar.
17
VI.
Concluso
O
Controlo
em
Modo
de
Deslizamento
um
mtodo
de
controlo
no-linear
de
grande
robustez.
Apresenta
grande
simplicidade,
pois
basta-lhe
alternar
entre
dois
estados.
Logo
no
necessita
de
ser
preciso
no
seu
output.
Por
outro
lado,
no
susceptvel
a
perturbaes
no
input,
garantindo
sempre
estabilidade.
Naturalmente,
no
perfeito.
O
efeito
de
chattering
algo
indesejvel,
pois
tende
a
causar
desgaste
no
sistema,
entre
outros
problemas.
Ainda
assim,
o
seu
desempenho
considerado
ptimo
para
muitas
aplicaes,
em
particular
para
sistemas
no-lineares,
muito
comuns
no
meio
industrial,
o
que
o
torna
um
mtodo
de
controlo
bastante
usado.
18