comm.FMBroadcastModulator

Модулируйте сигнал FM радиовещания

Описание

The comm.FMBroadcastModulator Система object™ предварительно подчеркивает аудиосигнал и модулирует его на сигнал FM основной полосы частот. Если на Stereo для свойства задано значение trueобъект модулирует звуковой вход (L - R) в диапазоне 38 кГц, в сложение к модулированию его в основной полосе (L + R). Если на RBDS для свойства задано значение trueобъект модулирует сигнал RDS/RBDS основной полосы частот на 57 кГц. Для получения дополнительной информации см. «Алгоритмы».

Для FM-моделирования аудиосигнала:

  1. Определите и настройте comm.FMBroadcastModulator объект. См. «Конструкция».

  2. Функции step применить широковещательную FM-модуляцию к аудиосигналу согласно свойствам comm.FMBroadcastModulator.

Примечание

Начиная с R2016b, вместо использования step метод для выполнения операции, заданной системным объектом, можно вызвать объект с аргументами, как если бы это была функция. Для примера, y = step(obj,x) и y = obj(x) выполнять эквивалентные операции.

Конструкция

fmbMod = comm.FMBroadcastModulator создает модулятор Системный объект, fmbMod, эта частота модулирует входной сигнал.

fmbMod = comm.FMBroadcastModulator(demod) создает объект широковещательного FM-модулятора, свойства которого определяются соответствующим объектом широковещательного FM-демодулятора, demod.

fmbMod = comm.FMBroadcastModulator(Name,Value) создает широковещательный объект FM модулятора с каждым заданным свойством Name установить на заданную Value. Можно задать дополнительные аргументы пары "имя-значение" в любом порядке как (Name1, Value1..., NameN, ValueN).

Свойства

SampleRate

Выборка выходного сигнала (Гц)

Задайте частоту дискретизации выходного сигнала в Гц как положительный действительный скаляр. Значение по умолчанию 240e3. Это свойство неразрывно.

FrequencyDeviation

Пиковое отклонение частоты выхода сигнала (Гц)

Задайте отклонение частоты FM модулятора в Гц как положительный действительный скаляр. Значение по умолчанию 75e3. Шумовая полоса системы равна удвоенной сумме отклонения частоты и ширины полосы пропускания сообщения. Стандарты FM-вещания определяют значение 75 кГц в Соединенных Штатах и 50 кГц в Европе. Это свойство неразрывно.

FilterTimeConstant

Фильтрация временных констант

Задайте временную константу фильтра верхнего уровня перед акцентом как положительный действительный скаляр. Стандарты FM-вещания определяют значение 75 мкс в Соединенных Штатах и 50 мкс в Европе. Значение по умолчанию 7.5e-05. Свойство nontunable.

AudioSampleRate

Частота дискретизации входа аудиосигнала (Гц)

Задайте частоту дискретизации звука как положительный действительный скаляр. Значение по умолчанию 48000. Это свойство неразрывно.

Stereo

Флаг для установки стерео операций

Установите это свойство на true если вход является стереофоническим аудиосигналом. Установите значение false если входной сигнал является монофоническим. Значение по умолчанию является false. Это свойство неразрывно.

RBDS

Флаг для моделирования RDS/RBDS сигнала

Если RBDS задано значение true, значение step метод принимает RDS/RBDS сигнал основной полосы частот как свой второй вход и объект модулирует сигнал на 57 кГц. Значение по умолчанию false. Это свойство неразрывно.

RBDSSamplesPerSymbol

Коэффициент избыточной дискретизации на входе RDS/RBDS

Задайте количество выборок на символ RDS/RBDS в виде положительного целого числа. Частота дискретизации RDS/RBDS определяется RBDSSamplesPerSymbol × 1187.5 Гц. Согласно стандарту RDS/RBDS, частота дискретизации каждого бита составляет 1187,5 Гц.

Это свойство применяется только при установке RBDS на true.

Значение по умолчанию является 10.

Методы

информацияФильтрация информации о модуляторе FM-вещания
шагПримените FM широковещательную модуляцию
Общий для всех системных объектов
release

Разрешить изменение значения свойства системного объекта

reset

Сброс внутренних состояний Системного объекта

При использовании resetэтот метод сбрасывает оконный суффикс из последнего символа в ранее обработанном системе координат.

Примеры

свернуть все

Модулируйте и демодулируйте передачу потокового аудио с объектами FM-широковещательного модулятора и демодулятора. Воспроизведение аудиосигнала с помощью аудио устройства по умолчанию.

Примечание.Этот пример выполняется только в R2016b или более поздней версии. Если вы используете более ранний релиз, замените каждый вызов функции на эквивалентный step синтаксис. Например, myObject (x) становится шагом (myObject, x).

Создайте средство чтения аудиофайлов System object™ и прочтите файл guitartune.wav.

audio = dsp.AudioFileReader('guitartune.wav','SamplesPerFrame',4410);

Создайте объекты FM-широковещательного модулятора и демодулятора. Установите AudioSampleRate свойство для соответствия скорости дискретизации входного сигнала. Установите SampleRate свойство демодулятора совпадать с заданной частотой дискретизации модулятора. Установите PlaySound свойство демодулятора для true для включения воспроизведения звука.

fmbMod = comm.FMBroadcastModulator('AudioSampleRate',audio.SampleRate, ...
    'SampleRate',240e3);
fmbDemod = comm.FMBroadcastDemodulator( ...
    'AudioSampleRate',audio.SampleRate, ...
    'SampleRate',240e3,'PlaySound',true);

Считывайте аудио данных в системы координат длины 4410, применяйте FM широковещательную модуляцию, демодулируйте FM сигнал и воспроизводите аудио входа.

while ~isDone(audio)
    audioData = audio();
    modData = fmbMod(audioData);
    demodData = fmbDemod(modData);
end

Сгенерируйте базовую форму сигнала RBDS, FM модулируйте его аудиосигналом, а затем демодулируйте.

Примечание.Этот пример выполняется только в R2017a или более поздней версии.

Создайте сигнал RBDS с 19 группами на систему координат и 10 выборками на символ. Скорость дискретизации сигнала RBDS задается 1187,5 x 10. Установите частоту дискретизации аудио равную 1187,5 x 40.

groupLen = 104;
sps = 10;
groupsPerFrame = 19;
rbdsFrameLen = groupLen*sps*groupsPerFrame;
afrRate = 40*1187.5;
rbdsRate = 1187.5*sps;
outRate = 4*57000;

afr = dsp.AudioFileReader('rbds_capture_47500.wav','SamplesPerFrame',rbdsFrameLen*afrRate/rbdsRate);
rbds = comm.RBDSWaveformGenerator('GroupsPerFrame',groupsPerFrame,'SamplesPerSymbol',sps);

fmMod = comm.FMBroadcastModulator('AudioSampleRate',afr.SampleRate,'SampleRate',outRate,...
    'Stereo',true,'RBDS',true,'RBDSSamplesPerSymbol',sps);
fmDemod = comm.FMBroadcastDemodulator('SampleRate',outRate,...
    'Stereo',true,'RBDS',true,'PlaySound',true);
scope = timescope('SampleRate',outRate,'YLimits',10^-2*[-1 1]);

Получите текущий аудио вход. Сгенерируйте информацию RBDS с той же сконфигурированной скоростью, что и аудио. FM модулирует стерео аудио с информацией RBDS. Добавьте добавку белого Гауссова шума. FM демодулирует звуковой сигнал и сигнал RBDS. Просмотрите формы волны в временных возможностях.

for idx = 1:7
    input = afr();
    rbdsWave = rbds();
    yFM = fmMod([input input], rbdsWave);
    rcv = awgn(yFM, 40);
    [audioRcv, rbdsRcv] = fmDemod(rcv);
    scope(rbdsRcv);
end

Алгоритмы

Модулятор FM Broadcast включает в себя функциональность модулятора FM основной полосы частот, фильтрацию перед акцентом и способность передавать стереофонические сигналы. Алгоритмы, которые управляют основной FM-модуляцией и демодуляцией, описаны в comm.FMModulator.

Фильтрация

FM усиливает высокочастотный шум и ухудшает общее отношение сигнал/шум. Чтобы компенсировать, FM-вещатели вставляют фильтр предварительного акцента перед FM-модуляцией, чтобы усилить высокочастотное содержимое. FM- приемника имеет обратный фильтр снятия акцента после FM-демодулятора, чтобы ослабить высокочастотный шум и восстановить плоский спектр сигнала.

Фильтр предварительного акцента имеет передаточную функцию с высокой характеристикой, заданную как

Hp(f)=1+j2πfτs,

где τs - временная константа фильтра. Константа времени составляет 50 мкс в Европе и 75 мкс в Соединенных Штатах. Точно так же передаточная функция для lowpass деудаления задается как

Hd(f)=11+j2πfτs.

Независимо от скорости дискретизации звука, сигнал преобразуется в выходную частоту дискретизации 152 кГц. Для частоты дискретизации звука 44,1 кГц фильтр предварительного акцента имеет следующий ответ.

Стерео и RDS/RBDS FM - мультиплексный сигнал

Модулятор FM-вещания поддерживает стереофонические и монофонические операции. Для поддержки передачи стерео информация левого (L) и правого (R) каналов (L + R) присваивается моно-части спектра (от 0 до 15 кГц). Информация (L-R) модулируется амплитудой в области от 23 до 53 кГц спектра основной полосы частот с использованием сигнала поднесущей 38 кГц. Пилот-тон на 19 кГц в мультиплексированном сигнале позволяет FM- приемника когерентно демодулировать стерео и сигналы RDS/RBDS. Вот спектр мультиплексного сигнала сгенерированного модулированного сигнала.

Вот блок схема модулятора FM-вещания, который используется для генерации мультиплексных сгенерированных модулированных сигналов. L(t) и R(t) обозначают формы волны во временной области из левого и правого каналов. RBDS(t) обозначает форму волны во временной области сигнала RDS/RBDS.

Сигнал сообщения мультиплексора, m(t) задается как

m(t)=C0[L(t)+R(t)]+C1cos(2π×19kHz×t)+C0[L(t)R(t)]cos(2π×38kHz×t)+C2RBDS(t)cos(2π×57kHz×t),

где C0, C1 и C2 - усиления. Чтобы сгенерировать соответствующий уровень модуляции, эти усиления масштабируют амплитуды (L(t) ± R(t)) сигналов, 19 кГц пилот-тонального сигнала и RDS/RBDS поднесущей, соответственно.

Ограничения

  • Если RBDS является trueи аудио, и входы удовлетворять следующему уравнению:

    audioLengthaudioSampleRate=RBDSLengthRBDSSampleRate

  • Входная длина аудиосигнала должна быть целым числом, кратным AudioDecimationFactor свойство. Входная длина сигнала RDS/RBDS должна быть целым числом, кратным RBDSDecimationFactor свойство. Для получения дополнительной информации об этих двух свойствах смотрите info способ.

Ссылки

[1] Chakrabarti, I. H. and Hatai, I. «A New High-Performance Digital FM Modulator and Demodulator for Программно Определяемое Радио and Its FPGA Implementation». International Journal of Reconfigurable Computing. Том 2011, № 10.1155/2011, 2011, стр. 10.

[2] Тауб, Герберт и Дональд Л. Шиллинг. Принципы систем связи. Нью-Йорк: McGraw-Hill, 1971, pp. 142-155.

[3] Дер, Лоуренс. «Учебное руководство по частотной модуляции (FM)». FM Tutorial. Silicon Laboratories Inc., стр. 4-8.

Расширенные возможности

.
Введенный в R2015a