ssbdemod

Однополосная амплитудная демодуляция

Синтаксис

z = ssbdemod(y,Fc,Fs)
z = ssbdemod(y,Fc,Fs,ini_phase)
z = ssbdemod(y,Fc,Fs,ini_phase,num,den)

Описание

Для всех синтаксисов

z = ssbdemod(y,Fc,Fs) демодулирует одну амплитуду боковой полосы модулируемый y сигнала от сигнала поставщика услуг, имеющего частоту Fc (Гц). Сигнал поставщика услуг и y имейте частоту дискретизации Fs (Гц). Модулируемый сигнал имеет нулевую начальную фазу и может быть верхним - или сигнал более низкой боковой полосы. Процесс демодуляции использует фильтр lowpass, заданный [num,den] = butter(5,Fc*2/Fs).

Примечание

Fc и Fs аргументы должны удовлетворить Fs > 2 (Fc + BW), где BW пропускная способность исходного сигнала, который модулировался.

z = ssbdemod(y,Fc,Fs,ini_phase) задает начальную фазу модулируемого сигнала в радианах.

z = ssbdemod(y,Fc,Fs,ini_phase,num,den) задает числитель и знаменатель фильтра lowpass, используемого в демодуляции.

Примеры

свернуть все

Задайте частоту дискретизации и исходный сигнал.

fs = 270000;
t = (0:1/fs:0.01)';
signal = sin(2*pi*300.*t)+2*sin(2*pi*600.*t);

Преобразуйте исходный сигнал в верхнюю боковую полосу, и более низкая боковая полоса модулировала сигналы с помощью ssbmod. Используйте частоту среза 12000 и начальная фаза 0.

fc = 12000;
initialPhase = 0;
lowerSidebandSignal = ssbmod(signal,fc,fs,initialPhase);
upperSidebandSignal = ssbmod(signal,fc,fs,initialPhase,'upper');

Демодулируйте более низкие и верхние сигналы боковой полосы.

s1 = ssbdemod(lowerSidebandSignal,fc,fs);
s2 = ssbdemod(upperSidebandSignal,fc,fs);

Сравните обработанные сигналы с оригиналом и проверьте реконструкцию.

plot(t,signal,'k',t,s1,'r:',t,s2,'g-.');
legend('Original Signal','Demodulation of Lower Sideband','Demodulation of Upper Sideband');

Смотрите также

|

Представлено до R2006a