matlab/octave를 사용하여 스윕/챠프 신호를 만들고 내 종료 신호가 잘못된 주파수로 끝나는 것처럼 보입니다. 신호가 올바른 주파수로 끝나도록 수정하는 방법은 무엇입니까?스윕/첩프 신호가 잘못된 주파수에서 끝납니다
추 신 : 특정 방정식을 사용하여 챠프/스윕 신호를 생성하기 때문에 옥타브에서 chirp 명령을 사용할 수 없습니다.
예제 코드는 간단한 방정식을 사용합니다. 그리고 문제의 플롯
%test sweep/chirp
clear all,clc
freq1=20; %start freq
freq2=200; %end freq
fs=44100;
dur=1; %duration of signal in seconds
t = linspace(0,2*pi,fs*dur);
f=freq1:(freq2-freq1)/length(t):freq2-(freq2-freq1)/length(t);
%20:(200-20)/lenght(t) :200-(200-20)/length(t)
data=sin(f.*t); %build signal
data=(data/max(abs(data))*.8); %normalize signal
wavwrite([data'] ,fs,32,strcat('/tmp/del.wav')); %export file
plot(t,data)
PS : 나는 옥타브 3.8.1
수학 오류가 발생했습니다. 당신의 웨이브가 sin (0)에서 시작하여 sin (t * 200)에서 끝나는 경우 총 사이클 수는 고정되어 평균 200hz에 해당합니다. 그 사이의 값은 x- 시프트입니다. – Daniel
@Daniel에 감사하지만 어떻게 해결할 수 있습니까? –