Unidade 2
- Aula 6 (14 ago)
-
![{\displaystyle H(s)={\frac {c_{0}+c_{1}s+c_{2}s^{2}+...+c_{m}s^{m}}{d_{0}+d_{1}s+d_{2}s^{2}+...+d_{n}s^{n}}},m\leq n}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/88c50164f031db80ea3bed01e855b8d4144399c2)
- Resposta em frequência: para obter a resposta em frequência é necessário avaliar
![{\displaystyle H(j\omega )=H(s)\left|{\begin{matrix}\\s=j\omega \end{matrix}}\right.}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/6c33ec5e4fc8d5ec3f6ac02f7de1306738fc9d96)
![{\displaystyle H(j\omega )=\left|H(j\omega )\right|e^{j\phi (\omega )}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/d732cdf46882cdfd9263bf36ee3df6bc3a09d3ff)
![{\displaystyle \left|H(j\omega )\right|^{2}=H(j\omega )H(-j\omega )}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/904da0197cd0e2e74aea378bf3dbbf9572b68ff7)
![{\displaystyle e^{j2\phi (\omega )}={\frac {H(j\omega )}{H(-j\omega )}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/1ed95e15fec0e1df90daf1cf09e81f7b0591f034)
- O projeto de filtros analógicos é realizado em 2 etapas:
- projeto de um filtro passa baixas (LP) protótipo normalizado
com frequência de passagem ![{\displaystyle \Omega _{s}=1}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/81458dfd80f1cf12371297025c012da2309c1c20)
- transformação em frequência para o tipo de filtro (LP, HP, BP ou BS)
![{\displaystyle H(s)=H(p)\left|{\begin{matrix}\\p=g(s)\end{matrix}}\right.}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/374d921e57d88b0318de22a20fef2c03b49e4142)
- Análise básica de filtros analógicos com Matlab.
- Dado um sistema linear invariante no tempo, representado pela função de transferência
, obter a resposta de frequência do sistema (Magnitude e Fase).
![{\displaystyle H(s)={\frac {s+1}{s^{2}+s+5}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/034596658f351d0bd32ca9ad1e73b07488eb46e0)
![{\displaystyle H(j\omega )={\frac {s+1}{s^{2}+s+5}}\left|{\begin{matrix}\\s=j\omega \end{matrix}}\right.}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/6b4529d7c6ca042213bb9ee2be1933984dca9fd5)
![{\displaystyle H(j\omega )={\frac {1+w\,\mathrm {i} }{-w^{2}+w\,\mathrm {i} +5}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/d1f2fba990851706ef38ac4e00b22ac143ec3d86)
b = [1 1];
a = [1 1 5];
[z1,p1,k]=tf2zp(b,a)
z2 = roots(b);
p2 = roots(a);
zplane(b,a);
%%
freqs(b,a);
%%
syms s w
H(s) = (s+1)/(s^2 + s + 5);
pretty(H(1j*w))
latex(H(1j*w))
%%
ws = logspace(-2, 1, 1000);
h = H(1j*ws);
subplot(211)
semilogx(ws,abs(h)); grid on;
subplot(212)
semilogx(ws,angle(h)/pi*180); grid on;
- Projeto de filtros analógicos do tipo Butterworth
- A aproximação de magnitude de filtros analógicos pode ser realizado usando as aproximações de Butterworth, Chebyshev (tipo 1 ou 2) e Cauer.
- Aula 7 (16 ago)
- Projeto de filtros analógicos do tipo Butterworth, considerando:
é a frequência de passagem do filtro LP, é a atenuação em dB na frequência de passagem, é a frequência de stopband do filtro, é a atenuação em dB na frequência de stopband, , , são as frequências de passagem e stopband do filtro protótipo.
- É necessário determinar a ordem
do filtro:
![{\displaystyle n\geq {\frac {\log(10^{0.1A_{s}}-1)}{2\log \Omega _{s}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/fe46838d612cb8c3d2655a1187db628dffbf9138)
- Em seguida obter os polos do filtro:
![{\displaystyle p_{k}=e^{\left[j{\frac {(2k+n-1)}{2n}}\pi \right]},k=1,2,3,...n}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/e1e57e07651290d1e23c546bd09becd1e13dcc07)
- Em seguida é necessário obter a função de transferência:
, onde
- No caso de um filtro LP é necessário ainda obter a função de transferência do filtro especificado
![{\displaystyle H(s)=H(p)\left|{\begin{matrix}\\p={\frac {s}{\omega _{p}}}\end{matrix}}\right.}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/303aa141221be7fb76f44e91f36e20bc33a51fc3)
- Aula 8 (21 ago)
- Projeto de filtros analógicos do tipo Butterworth, considerando:
é a frequência de passagem do filtro LP, é a atenuação em dB na frequência de passagem, é a frequência de stopband do filtro, é a atenuação em dB na frequência de stopband, , , são as frequências de passagem e stopband do filtro protótipo.
- É necessário determinar a ordem
do filtro:
![{\displaystyle n\geq {\frac {\log[(10^{0.1A_{s}}-1)/(10^{0.1A_{p}}-1)]}{2\log \Omega _{s}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/e5f994571dbe67328273fcb9db86b5480e325a9a)
- Em seguida obter os polos do filtro:
![{\displaystyle p_{k}=\epsilon ^{(-1/n)}e^{\left[j{\frac {(2k+n-1)}{2n}}\pi \right]},k=1,2,3,...n}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/0d089a7333523020d18a5fc153299ffe65966e6d)
- Em seguida é necessário obter a função de transferência:
, onde e .
- NOTA: o valor
também pode ser obtido a partir de , pois corresponde ao último termo do polinômio .
- No caso de um filtro LP é necessário ainda obter a função de transferência do filtro especificado
![{\displaystyle H(s)=H(p)\left|{\begin{matrix}\\p={\frac {s}{\omega _{p}}}\end{matrix}}\right.}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/303aa141221be7fb76f44e91f36e20bc33a51fc3)
%Butterworth lowpass Responses (db)
w = 0.1:0.01:10;
H=inline('10*log10(1./(1+w.^(2*n)))','w','n');
for k = 1:1:10
semilogx(w,H(w,k)); hold on;
end
grid on
%Butterworth lowpass Responses (linear)
w = 0.1:0.01:2;
H=inline('1./(1+w.^(2*n))','w','n');
for k = 1:1:10
plot(w,H(w,k)); hold on;
end
grid on
- Aula 9 (23 ago)
- Projeto de filtros analógicos do tipo Chebyshev I.
Os polinômios de Chebyshev de primeira ordem são definidos pela relação recursiva:
![{\displaystyle C_{0}(\Omega )=1\,\!}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/04e031c8387a7265a1f666ab1501901640216ab2)
![{\displaystyle C_{1}(\Omega )=\Omega \,\!}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/e58221330a578bcc4ca7db75e0ae32508c7617ad)
![{\displaystyle C_{n}(\Omega )=2\times C_{n-1}(\Omega )-C_{n-2}(\Omega ).\,\!}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/bdf4c7eefa5839479656aeb044a9bc7e2a802c2c)
Os primeiros cinco polinômios de Chebyshev de primeira ordem são:
![{\displaystyle C_{0}(\Omega )=1\,}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/b19777ec97e1b4bdacfcb684f409a252ee69f982)
![{\displaystyle C_{1}(\Omega )=\Omega \,}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/c13fac4607ae6509f6c7026909985229f59c12aa)
![{\displaystyle C_{2}(\Omega )=2\Omega ^{2}-1\,}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/5299951cef97491f1d782fd35f70a3293ff8a7db)
![{\displaystyle C_{3}(\Omega )=4\Omega ^{3}-3\Omega \,}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/a19a13ec43b60aa4d9da25a553eac432d84e6912)
![{\displaystyle C_{4}(\Omega )=8\Omega ^{4}-8\Omega ^{2}+1\,}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/2d749564107d404b0b0fc86912e648091d1af3f2)
![{\displaystyle C_{5}(\Omega )=16\Omega ^{5}-20\Omega ^{3}+5\Omega \,}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/034cad84986adec3eb133dae982ac1d615a413db)
- Determine a ordem mínima necessária considerando:
é a frequência de passagem do filtro LP, é a atenuação em dB na frequência de passagem, é a frequência de stopband do filtro, é a atenuação em dB na frequência de stopband, , , são as frequências de passagem e stopband do filtro protótipo.
![{\displaystyle n\geq {\frac {\cosh ^{-1}{\sqrt {(10^{0.1A_{s}}-1)/(10^{0.1A_{p}}-1)}}}{\cosh ^{-1}\Omega _{s}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/79382aa5062311436d5d24ca61d8d7397634bb3d)
- Em seguida obter os polos do filtro:
, onde
![{\displaystyle \theta _{k}=\left({\frac {(2k-1)\pi }{2n}}\right)}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/0bddf4afa1c94dd082e44ea5dcc7d4523a77f536)
![{\displaystyle \varphi _{2}={\frac {1}{n}}\sinh ^{-1}\left({\frac {1}{\epsilon }}\right)}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/39d40622b160bb5f3aa26fe32d539476dd0a234b)
![{\displaystyle \left|H(j\Omega )\right|^{2}=1{\text{para n impar}},{\frac {1}{1+\epsilon ^{2}}}{\text{para n par}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/537a525db68a7d25e699b11bb88bc5a2f8ef54d1)
![{\displaystyle \left|H(0)\right|^{2}={\frac {H_{0}^{2}}{1+\epsilon ^{2}C_{n}^{2}\left(\Omega _{0}\right)}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/4a587e14d12a549045bb69fa0dc213cce509d0d9)
- Exemplos de projeto de filtro passa-baixas com frequência de passagem de 16000 rad/s com atenuação máxima de 0.3 dB, frequência de rejeição de 20000 rad/s com atenuação mínima de 20 dB; e ganho em DC de 3 dB.
- Aula 10 (28 ago)
- Projeto de filtros analógicos do tipo Butterworth, Chebyshev I e II e Cauer (eliptico).
%% Projeto de filtro passa-baixas usando funções do Matlab
%% Especificações do filtro
Wp =16000; Ws = 20000; Ap = 0.3; As = 20; G0= 3;
% Para analisar o filtro projetado, use fvtool(b,a) para observar plano s, resposta em magnitude, fase e atraso de grupo
%% Butterworth
[n,Wn] = buttord(Wp, Ws, Ap, As,'s')
[b,a] = butter(n,Wn, 's');
%% Chebyshev I
n = cheb1ord(Wp, Ws, Ap, As,'s')
[b,a] = cheby1(n,Ap, Wp, 's');
%% Chebyshev II
n = cheb2ord(Wp, Ws, Ap, As,'s')
[b,a] = cheby2(n,As, Ws, 's');
%% Elliptic - Cauer
[n, Wn] = ellipord(Wp, Ws, Ap, As,'s')
[b,a] = ellip(n,Ap,As, Wn, 's');
- Ver pag. 204 a 208 de [2]
- Transformações de frequência de filtros analógicos
- passa-baixas (
) -> passa-baixas ( )
- Substituição de variáveis
![{\displaystyle p={\frac {s}{\omega _{p}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/e78a23f3d84564e812cc0a5937f220f259acb2d9)
- Cálculo do protótipo com
![{\displaystyle \Omega _{s}={\frac {\omega _{s}}{\omega _{p}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/6c6d1146714ea265408ba7ed1227937bc26da56e)
- passa-baixas (
) -> passa-altas ( )
- Substituição de variáveis
![{\displaystyle p={\frac {\omega _{p}}{s}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/1d821082c58836b6a4b15564b568b89f1e2258ac)
- Cálculo do protótipo com
![{\displaystyle \Omega _{s}={\frac {\omega _{p}}{\omega _{s}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/d86ed2f4e3e04b2ecfbe622593f9e1ab6d34c4a4)
- passa-baixas (
) -> passa-faixa ( e )
- Substituição de variáveis
![{\displaystyle p={\frac {s^{2}+\omega _{0}^{2}}{Bs}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/5d012475350ee5b88b927d4721af1b7b1313c788)
- Cálculo do protótipo com
![{\displaystyle \Omega _{s}={\Bigg |}{\frac {-\omega _{s}^{2}+\omega _{0}^{2}}{B\omega _{s}}}{\Bigg |}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/e2da914449ae73a04711a9599bb60bea93a34560)
- onde
e ![{\displaystyle \omega _{0}={\sqrt {\omega _{p2}\omega _{p1}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/8da00858a94ebf5199697ff06ed9810f6de79fe5)
- passa-baixas (
) -> rejeita-faixa ( e )
- Substituição de variáveis
![{\displaystyle p={\frac {Bs}{s^{2}+\omega _{0}^{2}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/7480e1dad50dea991a2fcbe1923d0fd2e35fd38d)
- Cálculo do protótipo com
![{\displaystyle \Omega _{s}={\Bigg |}{\frac {B\omega _{s}}{-\omega _{s}^{2}+\omega _{0}^{2}}}{\Bigg |}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/1c8c3fa1d1b162a5511ad824b2eea236d3e4f906)
- onde
e ![{\displaystyle \omega _{0}={\sqrt {\omega _{p2}\omega _{p1}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/8da00858a94ebf5199697ff06ed9810f6de79fe5)
- Aula 11 (30 ago)
-
- Ver pag. 208 a 218 de [2]
- Exemplos de Filtros Analógicos:
- Exemplo 1: Filtro passa-baixas (
= 941Hz, = 1209 Hz, = 1 dB, = 20 dB)
- Exemplo 2: Filtro passa-altas (
= 1209 Hz, = 941Hz, = 1 dB, = 20 dB)
- Exemplo 3: Filtro passa-faixa (
= 811 Hz, = 895,5 Hz = 770 Hz, = 941 Hz, = 1 dB, = 30 dB)
- NOTA:
- No calculo do filtro lembre-se de usar as frequências angulares para
, , , .
- onde
( ) é a frequência de passagem em Hz (rad/s), ( ) é a frequência de rejeição em Hz (rad/s), ( ) é a frequência central em Hz (rad/s), ( ) é a largura de banda em Hz (rad/s).
- Confira os projetos dos filtros plotando as respostas em frequência dos filtros protótipo H(p) e filtro final H(s) de cada um dos exemplos.
- Aula 12 (4 set)
- Filtros Digitais: Filtros IIR: transformações do tempo contínuo no tempo discreto
- Transformação invariante ao impulso (pode ser usada apenas para filtros com forte atenuação em frequência altas, ex: passa-baixas e passa-faixa)
- Transformação bilinear (pode ser usada para todos tipos de filtro)
- Obter a especificação do filtro em angulo entre 0 e 1, onde 1 corresponde a metade da frequência de amostragem
![{\displaystyle (fa/2)}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/f04ff9c952896cf5291c91384de49b3979a289b5)
- Obter o valor desse angulo predistorcido
para compensar a distorção na frequência causada pela transformação bilinear , onde ![{\displaystyle \theta ={\frac {f}{f_{a}/2}}={\frac {\omega }{\omega _{a}/2}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/f56d0a60e8521daff7bfe193389960b64026fc7c)
- passa-baixas (
) -> passa-baixas ( )
- Substituição de variáveis
![{\displaystyle p={\frac {s}{\lambda _{p}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/55459c5536defcddd2b114f331f8c2ff22dce72f)
- Cálculo do protótipo com
![{\displaystyle \Omega _{s}={\frac {\lambda _{s}}{\lambda _{p}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/34d63a1abefb77ef6aa0f84332d85ce30de7d91b)
- passa-baixas (
) -> passa-altas ( )
- Substituição de variáveis
![{\displaystyle p={\frac {\lambda _{p}}{s}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/29de7588e3232ebab08a5a1ec02778bbbb86c648)
- Cálculo do protótipo com
![{\displaystyle \Omega _{s}={\frac {\lambda _{p}}{\lambda _{s}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/f1e35f52c6634ee0dd9471776ff5fe057a39892e)
- passa-baixas (
) -> passa-faixa ( e )
- Substituição de variáveis
![{\displaystyle p={\frac {s^{2}+\lambda _{0}^{2}}{Bs}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/dd4c06041399ecf72ca5a87f6049b9081da81022)
- Cálculo do protótipo com
![{\displaystyle \Omega _{s}={\Bigg |}{\frac {-\lambda _{s}^{2}+\lambda _{0}^{2}}{B\lambda _{s}}}{\Bigg |}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/bab413ba47e5e2fe2f8828b646fb83a0f42e5b5a)
- onde
e ![{\displaystyle \lambda _{0}={\sqrt {\lambda _{p2}\lambda _{p1}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/47aec25eb0db7f1d749b2f955b256ba003e318d8)
- passa-baixas (
) -> rejeita-faixa ( e )
- Substituição de variáveis
![{\displaystyle p={\frac {Bs}{s^{2}+\lambda _{0}^{2}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/3839368f06bed1922aec3df3a1f4462fe7f7805d)
- Cálculo do protótipo com
![{\displaystyle \Omega _{s}={\Bigg |}{\frac {B\lambda _{s}}{-\lambda _{s}^{2}+\lambda _{0}^{2}}}{\Bigg |}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/8c09d23e4cc89ae1d46d2fb6f9eec1ce788ca8b6)
- onde
e ![{\displaystyle \lambda _{0}={\sqrt {\lambda _{p2}\lambda _{p1}}}}](https://en.wikipedia.org/api/rest_v1/media/math/render/svg/47aec25eb0db7f1d749b2f955b256ba003e318d8)
- Ver pag. 219 a 229 de [2]
- Ver pag. 403 a 415 e 434 a 435 de [1]
- Aula 15 (11 set)
- Filtros Digitais: Filtros IIR: Uso do Matlab.
-
- O projeto dos filtros digitais IIR baseados na transformada bilinear no Matlab é realizada em dois passos: (1) Determinação da ordem do filtro; (2) Determinação dos coeficientes do numerador
e denominador de .
|