Académique Documents
Professionnel Documents
Culture Documents
2. Objetivo
Estudo do controle vetorial com controle das chaves do inversor por comando
de tenso, a partir de um trabalho proposto na disciplina Controle de acionamentos
eltricos, lecionada pela professora Lane Maria Rabelo Baccarini, no curso de Psgraduao em Engenharia Eltrica da Universidade Federal de So Joo Del-Rei.
3. Desenvolvimento
Os parmetros da mquina utilizada na simulao, mostrados na Tabela 1,
so provenientes de Krause et al. (2002, p.182) 1. Se trata de uma mquina trifsica
de 4 polos, alimentada a 60Hz, frequncia utilizada para o clculo das reatncias,
dadas em ohms. A tenso dada o valor eficaz da tenso de linha nominal (rms) e
J
PN
VN
( hp )
(V )
220
( rpm )
1710
TN
I N (abc)
rs
X ls
XM
X 'lr
r 'r
( N m)
(A)
( )
( )
( )
( )
( )
11,9
5,8
0,435
0,754
26,13
0,754
0,816
( Kg m2 )
0,089
, so dadas por:
d ds
=v dsr s i ds + qs
dt
(1)
d qs
=v qsr s i qs + ds
dt
(2)
d 0s
=v 0 sr s i 0 s
dt
(3)
1 KRAUSE, Paul C.; WASYNCZUK, Oleg; SUDHOFF, Scott D. Analysis of electric machinery and
drive systems. 2.ed. Piscataway: IEEE, 2002. 613 p.
d dr
=v dr r r i dr + ( r ) qr
dt
(4)
d qr
=v qr r r i qr ( r ) dr
dt
(5)
d 0r
=v 0 r r r i 0 r
dt
(6)
d r P
=
( T T c B )
dt
2J e
(7)
i ds=ds
Lrr
LM
dr
2
2
Lss L rr LM
Lss Lrr L M
) (
i qs =qs
L rr
Lss Lrr LM
(8)
) (
qr
i 0 s= 0 s
LM
Lss Lrr LM
( L1 )
(10)
ls
i qr = qr
i dr = dr
(9)
Lss
LM
qs
2
2
Lss Lrr L M
L ss LrrL M
) (
(11)
Lss
LM
ds
2
Lss Lrr L M
L ss Lrr L M 2
(12)
) (
i 0 r= 0 r
( L1 )
lr
(13)
T e=
3P
( i i )
2 2 ds qs qs ds
(14)
I ds
nominal.
Um circuito equivalente representando as equaes (1) a (6) pode ser
construdo se as referidas equaes forem expressas como:
onde
(15)
(16)
Lsr =( N r / N s ) Lm ,
(17)
(18)
b , obtm-se:
i qdr
b
(19)
i qdr
b
(20)
b .
Z eq =r s+ j e L s' + j e
) [ ( )]
LM
r L
/ r M
Lr
s N Lr
I ds , se obtenha fluxo
nominal.
Assim sendo, o valor da corrente total drenada no circuito dado por:
I s=
Vs
3 Z eq
Dessa forma, a tenso induzida no rotor ser dada por:
Er =
Vs
3
'
( r s + j e L s ) I s
I ds =
Er
3 j e
LM
Lr
Segundo Reginatto (1993, p.2) 3, o controle por orientao de campo pode ser
classificado em direto e indireto, de acordo com a informao utilizada para
referenciar o controle ao sistema de coordenadas de campo. No controle por campo
orientado direto, esta informao obtida da medio direta da posio angular do
vetor fluxo por meio de sensores de fluxo adequadamente instalados no interior do
motor. No controle por campo orientado indireto, esta informao obtida pelo
clculo explcito do escorregamento da mquina.
Neste trabalho, ser adotado o controle por campo orientado indireto, a partir
da implementao de controle vetorial pelo fluxo de rotor, modelo em regime
permanente, sendo as chaves do inversor controladas por comando de tenso. A
Figura 3 mostra o diagrama de blocos que representa o sistema de controle
utilizado, composto por malhas de velocidade e de corrente
integrais, alm de uma malha proporcional de corrente
i ds
proporcionais-
i qs .
V DC =
220 3 2
V ; a conexo CC, composta
frequncia
Vm
v C (t ) , amplitude
V c =V DC /2 e frequncia
tw
no semiciclo positivo de
v C (t ) e de
v C ( t )> v R (t)
v R (t) .
v C ( t )< v R (t)
no semiciclo negativo de
v R (t)
(AHMED, 2000)5.
220 2
V , de forma que a mquina no seja
3
3.2. Aplicar um sinal de velocidade varivel que deve assumir durante o tempo
de simulao: valores positivos e negativos e dois percentuais diferentes da
velocidade nominal. Inserir uma carga de torque varivel com a rotao.
A Figura 6 apresenta a trajetria de velocidade adotada. Conforme solicitado,
o sinal assume valores positivos e negativos, alm de dois percentuais diferentes da
velocidade nominal, durante o tempo de simulao.
r =
Mas,
1
( T T L )
Js e
(21)
T e=T e = K p +
K i
( r r )
s
(22)
Portanto, para uma carga que varia linearmente com a velocidade, ou seja,
T L =K L r , onde
para
KL
r
K p s + K i
=
2
r J s + ( K p + K L ) s + K i
(23)
K L=
Tn
n
forma que quando a velocidade for igual a nominal, o torque de carga tambm se
iguale ao valor nominal de operao da mquina.
Por sua vez, equao caracterstica da malha de regulao de velocidade
implementada dada por:
( s+ 2 BW ) ( s+ 2 BW p )
BW
onde
BW p
(24)
e reorganizando-se os
termos, obtm-se:
2
J s + J 2 ( BW +BW p) s + J 4 BW BW p
(25)
(26)
K i =J 4 2 BW BW p
(27)
Rs i qs
e Ls i ds
i qs
apresentada na
onde
i qs=
1
V qs
L's s
L's
dado por:
L
L = L s=Ls M
Lr
'
s
Alm disso,
(28)
(29)
V qs=K piqs ( i qs i qs )
(30)
iqs
K piqs
= '
i qs Ls s + K piqs
(31)
i qs
i qs
BW pisq
(32)
L's , obtm-se:
'
Ls s+2 Ls BW pisq
(33)
i ds , temos:
(34)
da qual, obtm-se:
i ds=
1
V
L s s ds
(35)
Alm disso,
V ds= K pids +
K iids
( i dsids )
s
(36)
ids
K pids s+ K iids
=
i ds Ls s 2 + K iids s+ K pids
(37)
i ds
i ds
( s+ 2 BW ids ) ( s +2 BW pids )
(38)
onde
BW ids
BW pids
Ls
e rearranjando-se os termos,
obtm-se:
Ls s 2+ Ls 2 ( BW ids + BW pids ) s+ Ls 4 2 BW ids BW pids
(39)
i ds , temos:
(40)
(41)
BW 10 f max
BW p 10 BW
i qs
velocidade, o polo de seu polinmio caracterstico ser alocado uma dcada acima
da banda passante de velocidade e, assim:
BW piqs=10 BW p
i ds
so dadas
BW pids=10 BW p
BW ids =BW pids /10
A partir da observao da Figura 11, que ilustra o espectro de frequncia da
trajetria de velocidade adotada, verifica-se que a mxima frequncia presente no
referido sinal de aproximadamente 1Hz.
3.3. Analisar:
a) a caracterstica de corrente de eixo dq de referncia em relao a corrente
do motor.
A Figura 12 ilustra o comportamento da corrente de estator na fase a em
funo do tempo, de acordo com a velocidade mecnica desenvolvida pela mquina.
Verifica-se que na partida a corrente atinge valores elevados, conforme esperado.
Observa-se ainda que a amplitude da corrente aumenta durante o processo de
acelerao da mquina e se estabiliza em um valor menor quando a acelerao
nula, ou seja, quando a velocidade constante. Por outro lado, durante a
desacelerao, a amplitude da corrente diminui. Alm disso, verifica-se que o
comportamento da corrente de estator na fase a independe do sentido de rotao da
mquina. Note que o grfico da corrente se repete a partir do instante
t=5 s ,
enquanto que o grfico da velocidade uma funo mpar em relao a este ponto.
Conclui-se, portanto, que o comportamento da corrente dependente da acelerao
e do mdulo da velocidade desenvolvida pela mquina, porm independente do
sentido de rotao do motor. Por fim, destaca-se que a frequncia da corrente de
estator na fase a varia com o tempo, de forma a manter o fluxo constante.
r = N ; de 5,85 a
o sistema de controle projetado apresenta boa robustez, uma vez que erros na
estimao da constante de tempo rotrica ocasionaram erros de rastreamento de
trajetria pequenos, como pode ser melhor observado nos itens (b) e (c) da figura
citada.
Estimador 1:
r r i eqs
s=
sLeq i eds
Estimador 2:
s=
(31)
(32)
onde:
dss = ( v dss r s i sds ) dt
(33)
qss= ( v qssr s i sqs ) dt
(34)
s= dss2 + qss 2
(35)
LM2
Leq =Lss 1
Lss Lrr
Tr=
Lrr
rr
(36)
(37)
estimada
= e s
(38)
V o=
V
1/ sC
1
V i o =
R+1/ sC
V i sRC+1
(38)
Figura 20 - Filtro passivo RC passa-baixas de primeira ordem. Fonte: Amaral, 2012, p. 44.9
V V
1
i 0
sRC s
s
(39)
1
RC
(40)
Definindo:
R=10 k
c =2 60 rad /s
Obtm-se:
c=
1
1
1
C=
=
=265,26 nF
3
RC
R c 10 10 2 60
, aps a
= F*fabc;
fqdo(1,1);
fqdo(2,1);
fqdo(3,1);
end
[cos(teta),
sin(teta),
1
cos(teta - aux), sin(teta - aux), 1
cos(teta + aux), sin(teta + aux), 1];
fqdo = [fq;fd;fo];
fabc
fa =
fb =
fc =
= F*fqdo;
fabc(1,1);
fabc(2,1);
fabc(3,1);
end
=
=
=
=
=
%
%
%
%
dAqs
dAds
dAqr
dAdr
end
1
= (rr*iqs2)/(As-Laux2*ids2);
2
= (Lm/Tr)*((Ads_n*iqs1-Aqs_n*ids1)/As^2);
'0,85s
'2,10s
'5,85s
'7,10s
a
a
a
a
1,15s'];end
2,40s'];end
6,15s'];end
7,40s'];end
ylim([1e-02 1e02]);
grid on;
end
rad/s
estator
rotor
no estator
no estator
%% Condies de operao
a = input('Deseja avaliar o sistema para qual constante de tempo do rotor?
Digite 1 para a original, 2 para mais 10% ou 3 para menos 10%. \n');
switch a
case 1
Sigma = (Lrr/rr);
case 2
Sigma = 1.1*(Lrr/rr);
case 3
Sigma = 0.9*(Lrr/rr);
end
b = input('Deseja avaliar o sistema na presena do estimador de velocidade?
Digite 1 para sim ou 2 para no. \n');
switch b
case 1
IntVin7 = 0;
VOutAnt7 = 0;
WEstFilt = 0;
%% Clculo da corrente de referncia de eixo direto
Ns =(120*Fe)/NP; % Velocidade sncrona em rpm
Sn = 1-(N/Ns); % Escorregamento nominal
R2 = (rr/Sn)*(Lm/Lrr)^2;
X2 = 1i*We*(Lm^2)/Lrr;
Zeq = rs + 1i*We*(Lss-((Lm^2)/Lrr)) + 1/((1/R2)+(1/X2));
Is = (Vn/sqrt(3))/Zeq; % Corrente total
Er = abs((Vn/sqrt(3))-(rs + 1i*We*(Lss-((Lm^2)/Lrr)))*Is);
IdsRef = abs(-Er/X2)*sqrt(2); % Id de referncia
%% Clculo dos ganhos dos controladores
% Malha de velocidade
KT = 3*(NP/2)*Lm^2*(IdsRef/Lrr); % Constante de torque
fmax = 1; % Frequncia mxima presente no sinal de referncia
BWiw = 10*fmax; % Banda passante integral de velocidade
BWpw = 10*BWiw; % Banda passante proporcional de velocidade
KL = Tn/Wn; % Constante de carga
Kpw = J*2*pi*(BWpw+BWiw)-KL; % Ganho proporcional de velocidade
Kiw = J*4*(pi^2)*BWpw*BWiw; % Ganho integral de velocidade
% Malha de corrente iqs
BWpiqs = 10*BWpw; % Banda passante proporcional da corrente iqs
Kpiqs = 2*pi*LsLinha*BWpiqs; % Ganho proporcional de corrente iqs
% Malha de corrente ids
BWpids = 10*BWpw; % Banda passante proporcional de corrente isd
BWiids = BWpids/10; % Banda passante integral de corrente isd
Kpids = Lss*2*pi*(BWpids+BWiids); % Ganho proporcional de corrente ids
Kiids = Lss*4*(pi^2)*BWpids*BWiids; % Ganho integral de corrente ids
%% Definindo velocidade de referncia, torque de carga e inicializando
variveis do chaveamento por comando de tenso
[Ref] = CurvaReferencia(Ts,Passo);
Wref = (NP/2)*Ref(:)*Wn;
Tcarga = Ref(:)*Tn;
Vdc = 220*(sqrt(2)*3)/pi; % Tenso retificada no inversor
IntErroVel = 0;
IntErroids = 0;
Vtri = 0;
% Dados PWM
Fp = 5000; % Frequncia da portadora [Hz]
Tp = 1/Fp; % Periodo da portadora
Coef_onda = (Vdc/2)/(Tp/4); % Coeficiente esttico da onda triangular
Coef = Coef_onda; % Coeficiente dinmico da onda triangular
% Pr-alocando espao na memria para as variveis de interesse
aux = round(Ts/Passo);
Vabcn = zeros(3,aux);
Tempo = zeros(1,aux);
Velocidade = zeros(1,aux);
ErroVelocidade = zeros(1,aux);
CorrenteDRef = zeros(1,aux);
CorrenteQRef = zeros(1,aux);
CorrenteA = zeros(1,aux);
CorrenteD = zeros(1,aux);
CorrenteQ = zeros(1,aux);
Torque = zeros(1,aux);
k = 1; % Inicializando contador
for t = 0:Passo:Ts
TL = Tcarga(k);
% Sistema de controle
% Malha de velocidade
switch b
case 1
ErroVel = Wref(k) - WEstFilt; % Erro de velocidade
case 2
ErroVel = Wref(k) - Wr; % Erro de velocidade
end
IntErroVel = IntErroVel + ErroVel*Passo; % Integral do erro de
velocidade
TRef = Kiw*IntErroVel + Kpw*ErroVel ; % Torque de referncia
IqsRef = TRef/KT; % Corrente Iqs de referncia
Ws = IqsRef/(IdsRef*Sigma); % Velocidade de escorregamento
Weixo = Ws + Wr; % Velocidade de sada
Teta = Teta + Weixo*Passo;
% Malha de corrente iqs
Erroiqs = IqsRef - iqs; % Erro da corrente iqs
VqsRef = Kpiqs*Erroiqs + rs*iqs + Lss*Weixo*ids; % Vqs de Referncia
ids
VOutAnt7 = WEstFilt;
end
xlabel({'Tempo [s]';'(b)'});
ylabel('Corrente [A]');
grid on
axis([0 10 -30 60])
legend('Corrente do motor','Corrente de referncia')
% Comparativo entre a velocidade de referncia e a de sada
figure()
subplot(2,1,1)
plot(Tempo,(Wref/2)*(30/pi));
hold on
plot(Tempo,(Velocidade/2)*(30/pi),'r');
title('Velocidade mecnica do motor em funo do tempo');
xlabel({'Tempo [s]';'(a)'});
ylabel('Velocidade [rpm]');
grid on
legend('Velocidade de referncia','Velocidade real')
axis([0 10 -2000 2000])
subplot(2,2,3)
plot(Tempo,(Wref/2)*(30/pi));
hold on
plot(Tempo,(Velocidade/2)*(30/pi),'r');
title('Velocidade mecnica do motor em funo do tempo - Vista ampliada');
xlabel({'Tempo [s]';'(b)'});
ylabel('Velocidade [rpm]');
grid on
legend('Velocidade de referncia','Velocidade real')
axis([1.99 2.09 1710 1730])
subplot(2,2,4)
plot(Tempo,(ErroVelocidade/2)*(30/pi));
title('Erro de velocidade cometido em funo do tempo');
xlabel({'Tempo [s]';'(c)'});
ylabel('Velocidade [rpm]');
grid on
axis([0 10 -10 10])
% Comparativo entre o torque eletromagntico desenvolvido pelo motor e o
torque de carga
figure()
plot(Tempo,Torque);
hold on
plot(Tempo,Tcarga,'r');
title('Torque eletromagntico desenvolvido pelo motor em funo do tempo');
xlabel('Tempo [s]');
ylabel('Torque [Nm]');
grid on
legend('Torque do motor','Torque de carga')
% FFT Velocidade
sinal = (Velocidade/2)*(30/pi);
FuncaoFFTStem(sinal,'Espectro de frequncia da velocidade para o intervalo
de ',-2,10);
% FFT torque
sinal = Torque;
FuncaoFFT(sinal,'Espectro de frequncia do torque para o intervalo de ',100,1e04);
% FFT corrente
sinal = CorrenteA;