Zaloguj się
Blog na Matlablog
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

W jaki sposób dokonać filtracji sygnału?
Forum MATLAB Strona Główna-> Przetwarzanie sygnałów
Post Wysłany: 4 Czerwca 2007, Pon 7:01 pm Temat postu: W jaki sposób dokonać filtracji sygnału? Odpowiedz z cytatem
 
AUTOR:
springer



Dołączył: 04 Cze 2007
Posty: 2


Ogląda profil użytkownika Wyślij prywatną wiadomość
Mam problem z pewnym zadaniem i proszę Was o pomoc. Nie miałem dotad styczności z matlabem, a mój angielski jest na tyle słaby że przydatność dokumentacji matlaba nie pomaga mi w rozwiązaniu zadania.

Moje zadanie jest następujące:

1. Zaprojektuj filtr o nieskonczonej odpowiedzi impulsowej metodą optymalną
2. Dokonaj implementacji filtru na wygenerowanej przez siebie próbce sygnału.
3. Przeprowadź analizę widmową testowego sygnału przed i po filtracji

Część pierwszą zrobiłem jednak proszę o pomoc z punktem 2 i 3 naprawdę nie mam pojęcia jak to zrobić.

**************************
Wygenerowany m-pliku mojego filtru:

function Hd = filtr_sk
%FILTR_SK Returns a discrete-time filter object

%
% M-File generated by MATLAB(R) 7.0 and the Signal Processing Toolbox 6.2.
%
% Generated on: 27-May-2007 21:35:03
%

% Butterworth Bandstop filter designed using FDESIGN.BANDSTOP.

% All frequency values are in Hz.
Fs = 60000; % Sampling Frequency

Fpass1 = 15000; % First Passband Frequency
Fstop1 = 16000; % First Stopband Frequency
Fstop2 = 22000; % Second Stopband Frequency
Fpass2 = 25000; % Second Passband Frequency
Apass1 = 2; % First Passband Ripple (dB)
Astop = 60; % Stopband Attenuation (dB)
Apass2 = 2; % Second Passband Ripple (dB)
match = 'stopband'; % Band to match exactly

% Construct an FDESIGN object and call its BUTTER method.
h = fdesign.bandstop(Fpass1, Fstop1, Fstop2, Fpass2, Apass1, Astop, ...
Apass2, Fs);
Hd = butter(h, 'MatchExactly', match);

% [EOF]


 

Post Wysłany: 5 Czerwca 2007, Wto 7:04 am Temat postu: Odpowiedz z cytatem
 
AUTOR:
Vieniava
Może pisać książki


Dołączył: 13 Cze 2006
Posty: 445
Skąd: Warszawa


Ogląda profil użytkownika Wyślij prywatną wiadomość Wyślij email Odwiedź stronę autora
filtroawanie sygnalu
spof=filter(Hd, signal);

...gdzie signal jest sygnalem ktory chcesz filtrowac.

analiza widmowaa:
poszukaj dokładnie na tym forum Wink
 

Post Wysłany: 5 Czerwca 2007, Wto 6:21 pm Temat postu: Odpowiedz z cytatem
 
AUTOR:
springer



Dołączył: 04 Cze 2007
Posty: 2


Ogląda profil użytkownika Wyślij prywatną wiadomość
niestety nieudało mi się dużo znaleźć na forum, znalazłem jedynie coś takiego:

Nfft=128;
width=50;
w=[ones(1,width) zeros(1, Nfft-width-1)];
widmoamp=abs( fft(w,Nfft) );
plot(widmoamp);
pause;

i dopisałem do tego funkcję filtracji

%filtracja
spof=filter(Hd, widmoamp);
plot(spof);

co prawda wyszły dwa różne wykresy ale nie jestem pewien co do ich poprawności, oczywiście wszystko to dopisałem do m-pliku wygenerowanego z moim filtrem.

Nie mam pojęcia w jaki sposób wygenerować próbkę sygnału, by później dokonać na niej analizy widmowej?


 

Post Wysłany: 8 Czerwca 2007, Pią 5:24 pm Temat postu: Odpowiedz z cytatem
 
AUTOR:
Vieniava
Może pisać książki


Dołączył: 13 Cze 2006
Posty: 445
Skąd: Warszawa


Ogląda profil użytkownika Wyślij prywatną wiadomość Wyślij email Odwiedź stronę autora
pojedyncza sinusoida:

Kod:
Fs=8000;       % czestotliwosc probkowania 8kHz
t
=0:1/Fs:2.5; % 2 i pol sekundy
f
=1000;          % 1000 Hz
sygnal
=2*sin(2*pi*f*t);


bardziej skomplikowane sygnaly? ... prosze:
Kod:
doc chirp

Kod:
doc pulstran

Kod:
doc sawtooth
 

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 42111770
Najwięcej użytkowników 266 było obecnych 19 Lutego 2015, Czw 7:03 pm

Aktualnie online:




Najnowsze posty na forum:
Zlecę wykonanie przenośnika taśmowego w MATLAB simulink  (21 Lutego 2018, Sro 2:00 pm)
BOTOKS - 4 ODCINKI SERIALU [ZA DARMO]  (21 Lutego 2018, Sro 8:40 am)
Top Gear {S25E01} online napisy PL 25x01 CDA/Zalukaj  (20 Lutego 2018, Wto 9:54 pm)
Falling Water {S02E08} online napisy PL 2x08 CDA/Chomikuj  (20 Lutego 2018, Wto 9:50 pm)
The Seven Deadly Sins {S02E07} online napisy PL 2x07 CDA  (20 Lutego 2018, Wto 9:46 pm)
Waco {S01E05} online napisy PL 1x05 CDA/Zalukaj/Chomikuj  (20 Lutego 2018, Wto 9:41 pm)
The Magicians (Magicy) {S03E07} online napisy PL 3x07 CDA  (20 Lutego 2018, Wto 9:37 pm)
Stargate: Origins {S01E04} online napisy PL 1x4 CDA/Zalukaj  (20 Lutego 2018, Wto 9:32 pm)
Wojny magazynowe {S11E21} online napisy PL 11x21 CDA  (20 Lutego 2018, Wto 9:29 pm)
Katastrofy w przestworzach {S18E02} online napisy PL 18x02  (20 Lutego 2018, Wto 9: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