Распространите широкополосный сигнал с тремя тонами в подводном слуховом аппарате с постоянной скоростью распространения. Можно смоделировать эту среду как свободное пространство. Центральная частота составляет 100 кГц, и частоты трех тонов составляют 75 кГц, 100 кГц и 125 кГц, соответственно. Постройте спектр исходного сигнала и распространенного сигнала наблюдать эффект Доплера. Частота дискретизации составляет 100 кГц.
Примечание: Этот пример запускается только в R2016b или позже. Если вы используете более ранний релиз, заменяете каждый вызов функции с эквивалентным синтаксисом step
. Например, замените myObject(x)
на step(myObject,x)
.
c = 1500; fc = 100e3; fs = 100e3; relfreqs = [-25000,0,25000];
Настройте стационарный радар и перемещающий цель и вычислите ожидаемого Доплера.
rpos = [0;0;0]; rvel = [0;0;0]; tpos = [30/fs*c; 0;0]; tvel = [45;0;0]; dop = -tvel(1)./(c./(relfreqs + fc));
Создайте сигнал и распространите сигнал к движущейся цели.
t = (0:199)/fs; x = sum(exp(1i*2*pi*t.'*relfreqs),2); channel = phased.WidebandFreeSpace(... 'PropagationSpeed',c,... 'OperatingFrequency',fc,... 'SampleRate',fs); y = channel(x,rpos,tpos,rvel,tvel);
Постройте спектры исходного сигнала и переключенного Доплерами сигнала.
periodogram([x y],rectwin(size(x,1)),1024,fs,'centered') ylim([-150 0]) legend('original','propagated');
Для этого широкополосного сигнала вы видите, что значение эффекта Доплера увеличивается с частотой. Напротив, для узкополосных сигналов эффект Доплера принят постоянный по полосе.