2015-01-01 11 views
-1

코드에서 아래에 표시된 것과 같이 정의되지 않은 고정 신호의 네 가지 주파수 구성 요소가 있습니다. 이 신호의 주파수 영역을 플롯하려했는데 아래 그림과 같이 3 개의 주파수 피크 만있는 그래프가 나타납니다.4 주파수의 멀티 톤 코사인 파. 구성 요소는 단지 3 개의 피크를 나타냅니다.

내가 4 개의 주파수를 가지고있는 동안 ia m이 단지 3 개의 피크를 얻는 이유를 친절하게 알려주세요. 구성 요소.

코드 :

% Time specifications: 
Fs = 8000;      % samples per second 
dt = 1/Fs;      % seconds per sample 
StopTime = 2;     % seconds 
t = (0:dt:StopTime-dt);    % seconds 

t1 = (0:dt:.25); 
t2 = (.25:dt:.50); 
t3 = (.5:dt:.75); 
t4 = (.75:dt:1); 

x1 = (10)*sin(2*pi*10*t1); 
x2 = (10)*sin(2*pi*20*t2) + x1; 
x3 = (10)*sin(2*pi*50*t3) + x2; 
x4 = (10)*sin(2*pi*70*t4) + x3; 

NFFT = 2^nextpow2(length(t));  % Next power of 2 from length of y 
Y = fft(x4, NFFT); 
f = Fs/2 * linspace(0, 1, NFFT/2 + 1); 
figure; 
plot(f(1:200), 2 * abs(Y(1:200))); 

% Plot the signal versus time: 
figure; 
xlabel('time (in seconds)'); 
ylabel('Amplitude'); 
title('non-stationary Signal versus Time'); 

hold on 
plot(t1,x1,'r'); 
plot(t2,x2,'g'); 
plot(t3,x3,'b'); 
plot(t4,x4,'black'); 
    legend('x1 = (10)*sin(2*pi*15*t1) + (10)*sin(2*pi*8*t1)', 'x2 = (10)*sin(2*pi*25*t2) 
+  
x1', 'x3 = (10)*sin(2*pi*50*t3) + x2', 'x4 = (10)*sin(2*pi*75*t4) + x3', ... 
'Location', 'SouthWest'); 

이미지 :는 : enter image description here

+0

관련 부분 만 포함하도록 코드를 편집 할 수 있습니까 (시간 영역 플롯은 관련 없음). 주석이 의미가 있는지 확인하십시오 (15Hz ??). –

+0

내 질문을 편집했습니다. 죄송합니다. – rmaik

+2

코드를 복사 한 결과 주파수가 4 봉우리가되었습니다. 질문은 확실합니까? – Rashid

답변

0

당신은 처음 3 개 개의 신호의 합이다 X3의 FFT를 꾸몄다했습니다. 제 4의 신호를 포함하는 x4에 대해 이것을 음모로 꾸미는 것을 의미한다고 생각합니다.

+0

x4로 변경했지만 여전히 동일한 문제가 있음 – rmaik

-1

t1, t2, t3, t4로 무엇을하려고하는지 잘 모르겠습니다. 이들 각각은 2000 개의 샘플이므로 X1, X2, X3 및 X4의 크기는 모두 2000입니다. 나머지 시간 t (16000)는 정의되지 않습니다.