/ Forside / Karriere / Uddannelse / Højere uddannelser / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Højere uddannelser
#NavnPoint
Nordsted1 1588
erling_l 1224
ans 1150
dova 895
gert_h 800
molokyle 661
creamygirl 610
berpox 610
jomfruane 570
10  3773 570
Hvor nøjagtig er en FFT
Fra : Christian


Dato : 08-12-03 17:33

Hej NG.

Jeg har lavet en FFT på en måleserie og forventede at se en
frekvenspeak ved ca. 2.5sek, men min FFT giver mig 2.8sek. Kan det
skyldes en overlapning af en anden frekvens som jeg ikke kan se og som
forskyder "gennemsnittet" (nu ved jeg ikke engang om det er særligt
korrekt at tale om et gennemsnit, men jeg mener at det er det ikke).
Burde jeg ikke i stedet se en peak ved 2.5sek og igen en ved den anden
overlappende frekvens (hvis denne findes)?

Eller er en FFT bare ikke mere nøjagtig.
Eller kan det skyldes at min FFT ikke er særlig lang? Jeg bruger excel
og den kan kun tage op til 4096 elementer og min måleserier er på
næsten 9000 målinger.
Hvis jeg nu ikke har samplet lang tid nok til at så tilstrækkelig
mange cykler med, kan FFT resultatet ikke blive degraderet? Specielt
når jeg så kun må bruge 4096 elementer til min FFT rutine.

 
 
Glenn Møller-Holst (08-12-2003)
Kommentar
Fra : Glenn Møller-Holst


Dato : 08-12-03 19:01

Christian wrote:
> Hej NG.
>
> Jeg har lavet en FFT på en måleserie og forventede at se en
> frekvenspeak ved ca. 2.5sek, men min FFT giver mig 2.8sek. Kan det

Hej Chrstian

Du skal have styr på:

*Frekvenser angives i Hertz, Hz eller S^-1 - ikke sekunder.
*Du skal kende sample/diskretiseringsafstanden i sekunder. Den er
knyttet sammen med definitionen af frekvensafstanden i
frekvensfunktionsrummet.

mvh/Glenn


Glenn Møller-Holst (09-12-2003)
Kommentar
Fra : Glenn Møller-Holst


Dato : 09-12-03 08:24

Glenn Møller-Holst wrote:
> Christian wrote:
>
>> Hej NG.
>>
>> Jeg har lavet en FFT på en måleserie og forventede at se en
>> frekvenspeak ved ca. 2.5sek, men min FFT giver mig 2.8sek. Kan det
>
>
> Hej Chrstian
>
> Du skal have styr på:
>
> *Frekvenser angives i Hertz, Hz eller S^-1 - ikke sekunder.

og

*Du skal kende sample-/diskretiserings-afstanden i sekunder eller
samplesPerEnhed.

I frekvensfunktionsrummet kan følgende beregnes:
samplesPerEnhed= 1/diskretiseringsafstand

SamplesPerEnhed er knyttet sammen med definitionen af den højeste
frekvens (Hz) i frekvensfunktionsrummet. Den er:
højeste_frekvens= ((n-1)/n)*samplesPerEnhed, for komplekse tidssignaler.
højeste_frekvens= ((n-1)/n)*samplesPerEnhed, for komplekse tidssignaler,
hvor den imaginære del er nul. Nogle kalder det et reelt tidssignal.


I frekvensfunktionsrummet kan følgende beregnes:

frekvensafstand= (1/n)*samplesPerEnhed, dette gælder uanset om
tidssignalets imaginærdel er nul eller ej.

mvh/Glenn


Christian (09-12-2003)
Kommentar
Fra : Christian


Dato : 09-12-03 12:46

> > Du skal have styr p :
> >
> > *Frekvenser angives i Hertz, Hz eller S^-1 - ikke sekunder.
>

ok. Jeg kan godt se at det må virke forvirrende for dig.
Min forventede frekvenspeak er ved 0.4Hz og min FFT giver en peak ved
0.36Hz


> *Du skal kende sample-/diskretiserings-afstanden i sekunder eller
> samplesPerEnhed.

Jeg kender godt min samplefrekvens. Den er på 100Hz, dvs da jeg ikke
har noget frekvensfilter på så er min analyse kun god op til 50Hz.

Mvh Christian

Glenn Møller-Holst (09-12-2003)
Kommentar
Fra : Glenn Møller-Holst


Dato : 09-12-03 21:38

Glenn Møller-Holst wrote:
> Glenn Møller-Holst wrote:
>
>> Christian wrote:
>>
>>> Hej NG.
>>>
>>> Jeg har lavet en FFT på en måleserie og forventede at se en
>>> frekvenspeak ved ca. 2.5sek, men min FFT giver mig 2.8sek. Kan det
>>
>>
>>
>> Hej Chrstian
>>
>> Du skal have styr på:
>>
>> *Frekvenser angives i Hertz, Hz eller S^-1 - ikke sekunder.
>
>

og

*Du skal kende sample-/diskretiserings-afstanden i sekunder eller
samplesPerEnhed.

I tidsfunktionsrummet kan følgende beregnes:
samplesPerEnhed= 1/diskretiseringsafstand

SamplesPerEnhed er knyttet sammen med definitionen af den højeste
frekvens (Hz) i frekvensfunktionsrummet. Den er:
højeste_frekvens= ((n-1)/n)*samplesPerEnhed, for komplekse tidssignaler.
højeste_frekvens= ((n/2-1)/n)*samplesPerEnhed, for komplekse tidssignaler,
hvor den imaginære del er nul. Nogle kalder det et reelt tidssignal.


I frekvensfunktionsrummet kan følgende beregnes:

frekvensafstand= (1/n)*samplesPerEnhed, dette gælder uanset om
tidssignalets imaginærdel er nul eller ej.

mvh/Glenn


Niels L. Ellegaard (09-12-2003)
Kommentar
Fra : Niels L. Ellegaard


Dato : 09-12-03 13:34

allettidersigen@hotmail.com (Christian) writes:

> Jeg har lavet en FFT på en måleserie og forventede at se en
> frekvenspeak ved ca. 2.5sek, men min FFT giver mig 2.8sek. Kan det
> skyldes en overlapning af en anden frekvens som jeg ikke kan se og som
> forskyder "gennemsnittet" (nu ved jeg ikke engang om det er særligt
> korrekt at tale om et gennemsnit, men jeg mener at det er det ikke).
> Burde jeg ikke i stedet se en peak ved 2.5sek og igen en ved den anden
> overlappende frekvens (hvis denne findes)?
>
> Eller er en FFT bare ikke mere nøjagtig.

Her er et par ideer til test

Tag FFT to gange og se om du ender med dit oprindelige resultat, men
det gør du nok. (Bliver det ganget med en faktor? Det har jeg glemt)

Sammenlign 3 forskellige forsøg med 1024, 2049, og 4096
elementer. Giver de det samme? Ellers er der et måske et problem med
antallet af målupunkter.

Det følgende er lidt snyd, men du kunne sikkert få lidt bedre data ved
at dele dine data op i to datasæt.
Sæt1 = data(1 .. 4096)
Sæt2 = data(4500 .. 8596)
Resultat = 0.5*(FFT(Sæt1) + FFT(Sæt2))

Hvis du vil have et ordentligt værktøj med mere matematik, så kunne du
også overveje at installere Octave.
http://www.octave.org/
http://sourceforge.net/projects/octave

God regnelyst

--
Niels L Ellegaard http://dirac.ruc.dk/~gnalle/

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408934
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste