37
F1_C_be 1 Telekommunikation,Kiruna Signalanalys F1_C

Telekommunikation,Kiruna Signalanalys F1_C

  • Upload
    barth

  • View
    34

  • Download
    0

Embed Size (px)

DESCRIPTION

Telekommunikation,Kiruna Signalanalys F1_C. Frekvensanalys. Exempel: Inspelat ljud av Tåg-vissla. Signalen i Frekvensplanet. Figuren genererad med program F31 i Appendix. Spektrogram: x-axel visar Tid y-axel visar Frekvens. VIKTIGT ATT FÖRSTÅ : - PowerPoint PPT Presentation

Citation preview

Page 1: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 1

Telekommunikation,Kiruna

Signalanalys

F1_C

Page 2: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 2

Frekvensanalys

Exempel:Inspelat ljudav Tåg-vissla

Page 3: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 3

Signalen i Frekvensplanet.

Figuren genereradmed program F31 iAppendix

Page 4: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 4

Spektrogram: x-axel visar Tid y-axel visar Frekvens

Page 5: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 5

VIKTIGT ATT FÖRSTÅ:

Relationen mellan signalen i

* Tidsplan * Frekvensplan

Grundregel:”Smalt i tid =Brett i frekvens”

och vice versa.

Page 6: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 6

Tid Frekvens

20 0.05

<95% av signal-effekten i frekvens-Intervallet 0-0.05

MATLAB-kod: Se Ex1.m

Page 7: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 7

Tid Frekvens

5 0.2

Page 8: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 8

Tid Frekvens

20 0.05

>99% av signal-effekten i frekvens-Intervallet 0-0.05

MATLAB-kod: Se Ex2.m

Page 9: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 9

Hur beräknas effekten i en signal ?

Effekt.m

t=0:.01:9.99; %Tid

f1=1; %Frekvens

x=sin(2*pi*1*t); %Signal

p_sin=sum(x.^2)/length(x);

var_sin=var(x) %Signaleffekt

%

N=length(x);

brus=randn(1,N); %Brus

var_brus=var(brus) %Bruseffekt

%

z=x+brus;

var(z) %Effekterna (varianserna ) adderas

Page 10: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 10

Klassificering av signaler i tidsplanet:

Tidskontinuerlig

Icke- Periodisk Tidsdiskret

Icke-Periodisk

TidskontinuerligPeriodisk

TidsdiskretPeriodisk

Page 11: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 11

VÅRAT VERKTYG FÖR ATT HOPPAMELLAN TIDS- OCH FREKVENS-PLANEN

ÄR

FFT (Tid Frekvens)

IFFT (Frekvens Tid)

”Fast Fourier Transform”

I MATLAB: fft RESP: ifft

Page 12: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 12

Tidskontinuerliga periodiska signaler

• Man kan visa att varje periodisk tidskontinuerlig signal med periodtiden T kan byggas upp av deltoner.

• Dessa toner har frekvens k*ω0 där k är ett heltal och ω0 = 2π / T

Page 13: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 13

Ex: Fourier-Serie för fyrkant-våg med frekvens 2 och amplitud 1

T

Page 14: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 14

1 delton = Grundtonen 1* ω0 6 deltoner: (1,3,5,7,9,11)*ω0

Slutsatser:

• För att återge snabba förändringar krävs många deltoner.

• För att återge snabba förändringar krävs stor bandbredd.

Tid Tid

Page 15: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 15

ω0 11 ω0ω0

Page 16: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 16

%Analysera en fyrkantvåg

%med FFT

frekvens=0.5;

Fs=10;%Sampelfrekvens

Dt=1/Fs;%Tidssteg

N=100;%Antal sampel

t=0:Dt:(N-1)*Dt;%Tid

x=square(2*pi*0.5*t);%Fyrkantvåg

figure(1)

stem(t,x,'k');%Plotta vågen

%FFT:

y=abs(fft(x));

y=(2/N)*y;%Skala om

df=Fs/N;%Frekvenssteg

f=0:df:(N/2-1)*df;

figure(2);%Frekvens

stem( f,y(1:N/2),'k');%Observera index

Page 17: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 17

Continuous-Time Fourier Series ( FS )

][)(

)(1

][

][)(

0

0

kXtx

etxT

kX

ekXtx

tkj

T

tkj

x(t) och X[k] bildar ett ” Fourier-par ”

Page 18: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 18

Icke-periodiska signaler

• Periodiska signaler kan användes för att testa funktionen hos ett system,men är inte särskilt intressanta i sig.

• Teorin för kontinuerliga och tidsdiskretaFourier-serier kan emellertid utvecklas tillgälla även icke-periodiska signaler.

Page 19: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 19

Continuous-Time Fourier Transform ( FT )

)()(

)()(

)(2

1)(

jXtx

dtetxjX

dejXtx

tj

tj

Page 20: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 20

FT –generella egenskaper

• Insignalen är kontinuerlig och icke- periodisk

• Beskrivningen i frekvensplanet är inte periodisk

• Beskrivningen i frekvensplanet är ibland svår att beräkna eftersom den bygger på integrering

Page 21: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 21

Ex:

2sin

2

)(2/

2/

2/

2/

aelEulersForm

tjj

adteajX etj

2/2/t

a

x(t)

Page 22: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 22

%F33%Fourier-Transform%of single pulsetau=1;a=1;w=-20:.01:20;x=2*a*sin(w*tau/2)./w;plot(w,x,'k');

Page 23: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 23

Frekvensanalys igen!

• Frekvensanalys av en okänd signal görs i praktiken alltid med datotorstöd. Med datorer är det naturligare att summera istället för att integrera och man bör därför använda en metod som enbart kräver summering och multiplikation.

• Den enda Fourier-metod som detta gäller för är DTFT. Alltså för en periodisk tidsdiskret signal.

Page 24: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 24

DFT = Discrete Fourier Transform

• Om man har en digital signal så är denna ytterst sällan periodisk. För att få den att uppfattas som periodisk gör man därför följande trick:

• Man tar den digitala signalens N st. sampel. Därefter placerar man ut kopior av sekvensen före och efter originalet och skapar sålunda en ny, periodisk signal.

Page 25: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 25

Ex: Icke-periodisk till Periodisk

%F34%Non-periodic%2 periodicx=[2 4 7 8 6 5 1 -2];nollor=zeros(1,length(x));x1=[nollor x nollor];subplot(2,1,1)stem(x1,'filled','k');axis([0 25 -3 10]);%x2=[x x x];subplot(2,1,2)stem(x2,'filled','k');axis([0 25 -3 10]);

Page 26: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 26

Om signalen är analog

• Om signalen är analog måste den först samplas i N st. punkter med tidsintervall T

• Man kan sedan beräkna frekvensinnehållet i signalen för intervallet 0 till fs [Hz], där fs är samplingsfrekvensen = 1/T

Page 27: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 27

Val av samplingstid T

• T ( samplingstiden ) måste väljas så att att man får minst 2 sampel på varje period av högsta frekvenskomponenten fmax i signalen.

1/T = fs >2 fmax

• Om fmax inte är känd måste den analoga signalen filtreras så att inga frekvenskomponenter > fs /2 finns kvar vid samplingen.

Page 28: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 28

Val av antal sampel N

• Om man gör frekvensanalys på N sampel kommer man att kunna beräkna frekvensinnehållet i N st. frekvenser på intervallet 0 till fs.

• Frekvensupplösningen blir fs/N [Hz].

• Vid givet fs styrs alltså valet av antal sampel av den frekvensupplösning man önskar.

Page 29: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 29

FFT forts.

% Frekvensanalys med FFT

%

figure(2)

Y=abs(fft(ys));

df=fs/Ns;%Frekvensupplösning

f=0:df:(Ns-1)*df;

plot(f,Y,'k');

xlabel('Frekvens [Hz]');

Kod för frekvensanalys

Page 30: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 30

FFT forts.

figure(3)

Y=abs(fft(ys));

f=-Ns/2*df:df:(Ns-1)/2*df;

plot(f,fftshift(Y),'k');

xlabel('Frekvens [Hz]');

Om man vill rita frekvens-innehållet från -fs/2 till fs/2:

Page 31: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 31

FFT utskrift

0 4.0000

0.1563 4.0988

0.3125 4.4270

0.4688 5.1101

0.6250 6.5239

0.7813 10.1575

0.9375 32.4705

1.0938 19.8411

1.2500 6.8284

1.4063 3.8508

1.5625 2.5354

1.7188 1.7891

... ...

Utskrift av frekvens ochDFT-värdena kan göras:

[ f’ , Y’ ]

Page 32: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 32

Ändrad samplingsfrekvens

• Den FFT = DFT som gjorts kan förbättras, men hur?

• Prova med att öka samplings- frekvens, dock utan öka N

• fs = 20 Hz

• fs = 100 Hz

• Kom ihåg: Frekvensupplösningen df = fs / N

Page 33: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 33

Ändrat antal sampel

Nu med N = 512och fs = 100:

Page 34: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 34

Slutligen brukar man multiplicera med en fönsterfunktion

• Multiplicera tidsfunktionen med:

• hamming(Ns)’ ( obs transponat )

• Ns = tidsfunktionens längd

Page 35: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 35

%F31%Load train.m%Do FFT%load trainFs=8192;%Sampling frequencyN=length(y);%Nr of samplesdt=1/Fs;%Time resolutiont=0:dt:(N-1)*dt;%Time axisfigure(1)plot(t,y,'k');xlabel('Time [sek]');%df=Fs/N;%Frequency resolutionf=0:df:(N/2-1)*df;%Frequency axisyy=abs(fft(y));yy=yy(1:(N/2));figure(2)plot(f,yy,'k');xlabel('Frequency [Hz]');

Page 36: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 36

%Ex1.m

%Beräknar enkelsidigt spektrum

%för en puls.

%Pulsen beskrivs:

%

x=zeros(1,100);%100 nollor på rad

tau=20;%pulsbredd

x(1:tau)=1;%Fyll i med 20 1:or

Fs=1;%Samplingsfrekvens

figure(1)

stem(x,'k');

%Spektrum med FFT

Dt=1;%1/Fs

N=length(x);

t=0:Dt:(N-1)*Dt;

y=abs(fft(x));

Df=Fs/N;%Frekvensupplösning

f=0:Df:(N/2-1)*Df;

y=y(1:N/2);%Spegelbilden ej med

figure(2)

stem(f,y,'k');%FFT plottas

hold

Page 37: Telekommunikation,Kiruna Signalanalys F1_C

F1_C_be 37

%Ex2.m

%Beräknar enkelsidigt spektrum

%för en halvperiod-sinus.

%Pulsen beskrivs:

x=zeros(1,100);

tau=20;%pulsbredd

x(1:tau)=sin(1*pi*(0:tau-1)/tau);

Fs=1;%Samplingsfrekvens

figure(1)

stem(x,'k');

%Spektrum med FFT

Dt=1;%1/Fs

N=length(x);

t=0:Dt:(N-1)*Dt;

y=abs(fft(x));

Df=Fs/N;%Frekvensupplösning

f=0:Df:(N/2-1)*Df;

y=y(1:N/2);%Spegelbilden ej med

figure(2)

stem(f,y,'k');%FFT plottas

%

totaleffekt=sum(y.^2);

z2=y(1:8);

deleffekt=sum(z2.^2)

q=(deleffekt/totaleffekt)*100