Zaloguj się
Blog na Matlab.pl
Forum polskich użytkowników
 
UŻYTKOWNICY GRUPY PROFIL Zaloguj się, by sprawdzić wiadomości FAQ
 



Napisz nowy temat     Odpowiedz do tematu Zobacz poprzedni temat :: Zobacz następny temat

Filtr górnoprzepustowy [Matlab]
Forum MATLAB Strona Główna-> Przetwarzanie sygnałów
Post Wysłany: 2 Kwietnia 2016, Sob 12:45 pm Temat postu: Filtr górnoprzepustowy [Matlab] Odpowiedz z cytatem
 
AUTOR:
wblake66



Dołączył: 02 Kwi 2016
Posty: 1


Ogląda profil użytkownika Wyślij prywatną wiadomość
Zaprojektuj cyfrowy filtr górnoprzepustowy metodą transformacji biliniowej, na podstawie znanej transmitancji H(s) filtru analogowego.

Sprawdź poprawność programu na podstawie przykładowych danych

(Częstotliwość próbkowania fp=1kHz).

H(s) = (0.707s2 + 5.659s+ 1479) / (s2 - 2507s+ 1.07·107)

Na razie zrobiłem coś takiego:

fs=input('Częstotliwość próbkowania [Hz] = '); %czestotliwosc probkowania // 2000 - ponad 2 x wiecej niz maxymalna f. z tw. shannona
fpass=input('Podaj fpass = (np.400)'); %// 200 przykladowe wartosci
fstop=input('Podaj fstop = (np.350)'); %// 300

Rp=input('Max nieliniowosc w pasmie przepustowym [dB] = (np.3)'); %nieliniowosc w pasie przepustowym 3dB // 3
Rs=input('Minimalne tlumienie w pasmie zaporowym [dB] = (np.60)'); %minimalne tlumienie w zaporowym // 60

fpass = 2*fs*tan(pi*fpass/fs)/(2*pi); %transformacja f do metody biliniowej
fstop = 2*fs*tan(pi*fstop/fs)/(2*pi); %transformacja f do metody biliniowej

ws=(2*pi*fstop); %wektor pulsacji
wp=(2*pi*fpass);


w = fpass/fstop; % transformacja częstotliwo?ci: s=w0/s', w0=2*pi*fpass


bz = [ 0.707 5.659 1479 ]
az = [ 1 -2507 114.49 ]


[n,Wn] = buttord(wp,ws,Rp,Rs,'s');n %obliczenie rzedu

[z,p,k] = butter(n,wp,'high','s'); %zaprojektowanie filtru analogowego (w dziedzinie s)

[zz,pz,kz] = bilinear(z,p,k,fs); %dyskretyzacja metoda biliniowa (nie jest bezpośrednio na bz i az zeby uniknac bledow zaokraglen)


h=tf(bz,az,1/fs);h %transmitancja w postaci jawnej


fvtool(bz,az); %wyswietlanie w fvtool


Ale to nie jest chyba dobrze zrobione

Proszę o pokazanie ewentualnych błędów.
Z góry dziękuje.


 

Forum MATLAB Strona Główna-> Przetwarzanie sygnałów
Wyświetl posty z ostatnich:   

Napisz nowy temat     Odpowiedz do tematu Zobacz poprzedni temat :: Zobacz następny temat

Wszystkie czasy w strefie CET (Europa)

Skocz do:  

Statystyki forum:



Od dnia 08.06.2006 forum odwiedzano 37667926
Najwięcej użytkowników 266 było obecnych 19 Lutego 2015, Czw 7:03 pm

Aktualnie online:




Najnowsze posty na forum:
Annabelle Narodziny Zła Cały Film Online  (23 Sierpnia 2017, Sro 7:38 pm)
Pomoc z przetwarzaniem sygnałów - Kraków  (23 Sierpnia 2017, Sro 6:27 pm)
Pomoc  (23 Sierpnia 2017, Sro 12:32 pm)
Kamera sportowa  (23 Sierpnia 2017, Sro 6:00 am)
Faktoring  (22 Sierpnia 2017, Wto 1:25 pm)
Nauka profesjonalnego montażu filmów  (22 Sierpnia 2017, Wto 1:24 pm)
Simulink/ xPC target - błąd polecenia slrtexplr  (21 Sierpnia 2017, Pon 7:41 pm)
Niedoparki - 2017 - Cały Film Online/Pobierz  (19 Sierpnia 2017, Sob 6:24 pm)
Fatima. Ostatnia tajemnica- 2017 - Cały Film Online/Pobierz  (19 Sierpnia 2017, Sob 6:24 pm)
Mamuśki mają wychodne- 2017 - Cały Film Online/Pobierz [CDA]  (19 Sierpnia 2017, Sob 6:23 pm)
Twoje prawa:
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Nie możesz ściągać plików na tym forum