Elektroda.pl
Elektroda.pl
X
Elektroda.pl
W2 Usługi badań i pomiarów
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Obliczanie widma sygnału

15 Lis 2007 15:38 10959 7
  • Poziom 15  
    Czy znacie jakiś w miarę przystępny program do obliczenia widma sygnału?
    Chodzi o to, żeby można było w prosty sposób wprowadzic sygnał(sinus, prostokąt, trójkąt, albo wszystko pomieszane)i uzyskac z tego widmo amplitudowe
  • W2 Usługi badań i pomiarów
  • Poziom 43  
    Witam,
    dj.stachu napisał:
    Czy znacie jakiś w miarę przystępny program do obliczenia widma sygnału?
    Chodzi o to, żeby można było w prosty sposób wprowadzic sygnał(sinus, prostokąt, trójkąt, albo wszystko pomieszane)i uzyskac z tego widmo amplitudowe

    i owszem, program z własnym udziałem pn. Rozwijanie Funkcji Okresowych w Szereg Fouriera... szukaj w podręcznikach do matematyki.

    Pozdrawiam
  • W2 Usługi badań i pomiarów
  • Poziom 15  
    bardzo śmieszne, z resztą to nie jest odpowiedz na pytanie
  • Poziom 43  
    dj.stachu napisał:
    bardzo śmieszne, z resztą to nie jest odpowiedz na pytanie

    Posłuchaj mnie uważnie i zechciej zrozumieć: mnie żadne tego typu programy nie są potrzebne do liczenia widna przebiegów okresowych, a to właśnie dlatego, iż znam w sposób biegły analizę fourierowską....
    Ale Wam, Dzieciom Neostrady, to tylko gotową papkę trza podawać, ponieważ samemu to nic nie potraficie.. .nawet skorzystać z niezawodnych Google'i.

    Quarz
  • Poziom 26  
    W matlabie mozesz jedym poleceniem uzyskac spektrogram a wlasciwie widmowa gestosc mocy, ale rezultat ten sam ;)
  • Poziom 23  
    Hi hi: Excel, Matlab, Calc (ten od windows - wersja zaawansowana).

    PS zgadzam się z kol. Quarz
  • Pomocny dla użytkowników
    Spróbuj się pobawić skryptem na tej stronie ("niestety" angielski :) :

    http://home.fuse.net/clymer/graphs/fourier.html

    albo tu:

    http://www.dsptutor.freeuk.com/jsanalyser/FFTSpectrumAnalyser.html

    W tym drugim adresie (niestety podaje tylko kształt przebiegu i widmo ale bez wartości liczbowych, aczkolwiek pozwala zobaczyć jak kształt wejściowy wpływa na wyniki)

    Ustawiamy tam sobie też częstotliwość próbkowania i ilość próbek przebiegu.

    Fala jest reprezentowana jako funkcja czasu t i jest konstruowana przy pomocy standardowej notacji.

    Sinusoida o częstotliwości f (w Hz) jest zapisywana w postaci:

    sin(2*pi*f*t)

    za f wstawiasz odpowiednią wartość liczbową. Nie należy pomijać znaku mnożenia * gdyż nie jest ono domyślne.

    Amplituda uzyskanego przebiegu jest skalowana względem maksymalnej próbki uzyskanego przebiegu. Względne wartości poszczególnych składników są jednak znaczące, co oznacza, że poniższe zapisy dadzą te same wyniki tak w przebiegu fali jak i obliczonym widmie.

    sin(1000*pi*t) + 0.5*sin(2000*pi*t)

    2*sin(1000*pi*t) + sin(2000*pi*t)

    Funkcje dodatkowe

    sqr() - przebieg prostokątny

    sqr(2000*pi*t) da przebieg prostokątny o częstotliwości 1000Hz
    (zastąpienie 2*1000 przez 2000, zmniejsza ilość mnożeń przy obliczeniach)

    tri() - przebieg trójkątny (symetryczny)
    tri(500*pi*t) daje przebieg trójkątny o częstotliwości 250Hz

    saw() - przebieg piłokształtny

    saw(1000*pi*t) daje przebieg piłokształtny o częstotliwości 500 Hz


    noise() - generuje szum (funkcja bezargumentowa)

    szum ma rozkład normalny (Gaussa), wartość średnią równą 0 i jednostkowe odchylenie standardowe.

    Amplitudę szumu uzyskujemy przez mnożenie funkcji
    noise przez jakąś wartość, np.
    0.2*noise().

    Powyższe funkcje mogą być dodawane, mnożone itd przez siebie dla uzyskania żądanej funkcji sumarycznej.

    Przykładowe zapisy

    sin(2000*pi*t) + 0.5 - sinus 1000Hz, amplituda 1V, składowa stała 0.5V
    --------------------------------------------------------------------------
    sin(2000*pi*t) + 0.5*noise() - sinusoida 1000Hz, 1V, zaszumiona przebiegiem o amplitudzie 0.5V
    --------------------------------------------------------------------------
    sin(2000*pi*t) + 2*sin(4000*pi*t) - suma sinusoid 1000Hz i 2000Hz o amplitudach 1V i 2V
    ----------------------------------------------------------------------------
    Modulacja AM bez fali nośnej

    sin(2000*pi*t)*sin(500*pi*t)
    ----------------------------------------------------------------------------
    Modulacja AM z falą nośną

    sin(2000*pi*t)*(1+0.5*sin(200*pi*t))

    ------------------------------------------------------
    sqr(500*pi*t)*sin(2000*pi*t) - fala prostokątna 250 Hz przemnożona przez sinusoidę 1000 Hz
    -------------------------------------------------------------------------
    tri(3000*pi*t)*hann(t) - fala symetryczna trójkątna przemnożona przez
    funkcję okna Hanna (od nazwiska Juliusa von Hann)

    hann(t) - argumentem jest tylko t bez innych składników.

    funkcji tej używa się do "wygładzenia" funkcji przetwarzanej na granicach ona przetwarzania (by nie było gwałtownych skoków wartości, jako, że to co w oknie traktujemy jako 1 pełny okres przebiegu badanego).
  • Poziom 15  
    Ten skrypt jest całkiem w porządku.
    Dzięki Paweł