% Ejemplo de una transformación bilineal % H(s) = 1/(s+1) % fm = 1 Hz => wm = 2*pi rad/s % Imponemos que la respuesta freq. de H(s) en wc=1 sea igual a la % respuesta freq. de H(z) en fdc=wc/(2*pi) fm = 1; wc = 1; fdc = wc/(2*pi); % Aplicamos la predistorsión para fdc Wdc = 2*pi*fdc/fm; wc1 = 2*fm*tan(Wdc/2); % Filtro original B=1; A=[1 1]; % Filtro normalizado por wc1 [B1,A1] = lp2lp(B,A,wc1); % Aplico la tranformacion bilineal [Bz,Az] = bilinear(B1,A1,fm); N=500; w=(0:N-1)*1.5/N; [H] = freqs(B,A,w); [Hz] = freqz(Bz,Az,w/(2*pi),fm); plot(w,20*log10(abs(H)),'-',w,20*log10(abs(Hz)),'--');grid;zoom; ylabel(['|H(f)|']); xlabel(['Frecuencia (rad/s)']); legend('Filtro analógico','Filtro Discreto'); print -depsc2 transf_bilineal_ej close;