Você está na página 1de 2

Lab.

NEB430/53 – FPB digital –com aproximação bilinear

Objetivo: Simular FPB Bu, n=2, freqüência de corte wd=20000rd/s usando T=10us.
1. Filtro analógico de referência;
1 4*108
H s   2  desnormalizando  H  s   2
s  2s  1 s  2 *2*104 s  4*108
Programa MATLAB: Digite todos os programas a seguir no processador de texto do MATLAB.
clear, close all,
w=logspace(3,6,1024); %Eixo horizontal da curva de Bode em log desde 103 até 106 com 1024 pontos.
num=[4e8]; den=[1,sqrt(2)*2e4,4e8]; %Vetores numerador e denominador.
figure(1), bode(num,den,w),grid %Curva de bode.
figure(2), step(num,den),grid %Resposta a um degrau de tensão.
Medições: Preencha a tabela da página 2.

2. Filtro digital_1
1 Wa 2 2 z 1
H s   2  desnormalizando  H  s   2 Substituindo s  , temos:
s  2s  1 s  2Was  Wa 2
T z 1

H z 
Wa 2

 
Wa 2 z 2  2z  1

 2 z 1   2 z 1     
2
4 2 2
z  2z  1  2Wa  z  1 z  1  Wa 2 z 2  2z  1
  2Wa    Wa
2
 2
 T z  1   T z  1  T T



Wa 2 z 2  2z  1
 4 2 2  2  4   4 2 2 
 2  2Wa  Wa  z  2  Wa  2  z   2  2Wa  Wa 
2

T T   T  T T 
2  T
Wa é dado por: tan  d  onde d  20000rd / s e T=10*10-6
T  2 
Programa MATLAB: (continuando o programa anterior)
T=10e-6; %Período de amostragem.
Wd=20e3; %Freqüência de corte desejada do filtro digital
N=30; %Traçar a resposta transitória com N amostragens.
Wa=2/T*tan(Wd*T/2); %Correção da freqüência analógica.
a1=(2/T)^2; a2=sqrt(2)*2/T*Wa; a3=Wa^2; %Alguns valores usados freqüentemente.
n=[1,2,1]*a3; d=[a1+a2+a3, 2*(a3-a1), a1-a2+a3]; %Vetores numerador e denominador.
figure(3), dbode(n,d,T,w),grid %Comando bode digital.
figure(4),dstep(n,d,N),grid %Comando step digital.
Medições: Preencha a tabela da página 2.

3. Resolução via Simulink.


Na janela de comando do MATLAB digite Num=n/a3 para se obter o vetor numerador e para o denominador
digite: Den=d/a3. Confirme a função de transferência H(z) abaixo:
z 2  2z  1 1  2z 1  z 2
H z  
114, 429z 2  196, 668  86, 239 114, 429  196, 668z 1  86, 239z 2
Nota: Evidentemente, os valores dos coeficientes de z-x dependem do período de amostragem T.

Simulink: Da tela de comando do MATLAB clique no ícone do SIMULINK ao lado do ícone da interrogação
e desenhe o diagrama em blocos como mostra a página seguinte.
Após interligar os blocos, e
configurá-los, salve com nome
“Digital” ou outro nome no
diretório “work”
Este nome deve ser diferente do
nome dado ao programa.

A função de transferência deste


diagrama é dada por:

Out1 1  A1z 1  A2z 2 1  A1z 1  A2z 2


C  , Comparando com H  z  requerida, temos:
In1 1  B1z 1  B2z 2 1 B1 1 B2 2
 z  z
C C C
1 a3 2  a3  a1)    a1  a2  a3 
A1=2; A2=1; C= = ; B1=C*196,668= ; B2=C*(-86,239)=
114,429 a1  a2  a3 a1  a2  a3 a1  a2  a3
Programa MATLAB (continuando o programa anterior).
A1=2; A2=1; C=a3/(a1+a2+a3); B1=-2*(a3-a1)/(a1+a2+a3); B2=-(a1-a2+a3)/(a1+a2+a3);
[a,b,c,d]=dlinmod('Digital'); %Gerando matrizes A,B,C e D a partir do simulink “Digital”.
[NU,DE]=ss2tf(a,b,c,d); %Transforma espaço de estado em função de transferência.
figure(5),dbode(NU,DE,T,w),grid
figure(6),dstep(NU,DE,N),grid

Medições: Preencha a tabela.


20krd/s 40krd/s 80krd/s 150krd/s 300krd/s Overshoot
Analógico dB dB dB dB dB %
Digital_1 dB dB dB dB dB %
Simulink dB dB dB dB dB %
Responda: a) Comente os resultados da tabela em termos de analógico x digital_1 e digital_1 x simulink.

b) Porque acima de 314krd/s o filtro fica esquisito? O que é ou o que significa 314krd/s?

c) Mude T para 5µs, mude N=60 e rode. O que mudou na curva de dbode e dstep?

2/2