В этом примере показано, как моделировать РЧ-фильтр с помощью библиотеки оболочек цепей. В этом примере сравниваются амплитуды входного и выходного сигналов для изучения ослабления сигнала.
В этом примере используется полосовой фильтр LC, предназначенный для полосы пропускания 200 МГц. Фильтр использует трехтональный входной сигнал для демонстрации свойства ослабления фильтра для внутриполосных и внеполосных частот. Тональные сигналы входного сигнала:
700 МГц - центральная частота полосы пропускания фильтра
600 МГц - частота нижнего края полосы пропускания фильтра
900 МГц - частота вне полосы пропускания фильтра
Определение переменных модели для блоков, имеющих общие значения параметров, с помощью InitFcn:
В редакторе Simulink ® щелкните Моделирование. На панели инструментов в меню «НАСТРОЙКА» > «Параметры модели» выберите «Свойства модели».
В диалоговом окне «Свойства модели» на вкладке «Обратные вызовы» на панели «Обратные вызовы модели» выберите InitFcn.
На панели функции инициализации модели введите:
amp = ones(1,3) freq = [600 700 900]*1e6 stepsize = 1/500e6
Нажмите кнопку ОК.
На панели инструментов Simulink измените время остановки моделирования на 0.
В редакторе Simulink щелкните Моделирование (Simulation) В окне ПОДГОТОВКА (PREPARE) щелкните Настройки модели (Model Settings) в разделе Конфигурация и моделирование (Configuration and Simulation) На вкладке Решатель (Solver) в параметрах Решатель (Solver) измените решатель на discrete (no continuous states).
Система фильтров состоит из блоков LC Ladder, Inport, Outport и Configuration. Физическая часть модели использует двунаправленные радиочастотные сигналы.
В системе используются следующие блоки:
Блок | Путь к библиотеке | Использовать | Количество |
|---|---|---|---|
| Постоянный | Simulink > Источники | Создание действительного и комплексного значения константы | 1 |
| Inport | RF Blockset > Оболочка цепи > Утилиты | Преобразование входного сигнала Simulink в входной сигнал RF Blockset™ | 1 |
| Конфигурация | RF Blockset > Оболочка цепи > Утилиты | Установка параметров системы для моделирования RF Blockset | 1 |
| Лестница LC | RF Blockset > Оболочка цепи > Элементы | Для моделирования ослабления сигнала | 1 |
| Вспомогательный порт | RF Blockset > Оболочка цепи > Утилиты | Преобразование сигналов RF Blockset в сигналы Simulink | 1 |
| Преобразование базы данных | Панель системных инструментов DSP > Математические функции > Математические операции | Преобразование данных о величине в децибелы | 2 |
| Математическая функция | Simulink > Математические операции | Для выполнения математических функций | 2 |
| К рабочему пространству | Simulink > Раковины | Запись данных в рабочую область MATLAB ® для печати | 2 |
| Терминатор | Simulink > Часто используемые блоки > Терминатор | Завершение вывода угловой основной полосы блока Outport | 1 |
Подключите блоки, как показано на рисунке:

Создайте трехтональный входной сигнал, используя следующие блоки:
Постоянный блок определяет амплитуду сигнала.
Блок ввода конфигурирует частоты трех тональных сигналов.
Блок конфигурации определяет размер шага.
В диалоговом окне «Блок константы» задайте для параметра «Константа» значение amp, как определено в InitFcn.
В блоке Inport:
Задать тип источника как Power.
Установите несущие частоты в значение freq, как определено в InitFcn. freq переменная устанавливает частоту трех тонов на 600 МГц, 700 МГц и 900 МГц соответственно.
Нажмите кнопку ОК.
В диалоговом окне «Блок конфигурации»:
Установить размер шага в step size, как определено в InitFcn.
Очистить шум Simulate.
Нажмите кнопку ОК.
Основные тона и гармоники обновляются автоматически при запуске модели.
В диалоговом окне LC Ladder Block выполните следующие действия.
Установить топологию многозвенной цепи в значение LC Bandpass Pi.
Нажмите кнопку Применить, а затем кнопку ОК.
В блоке Outport:
Задайте для параметра Тип датчика значение Power.
Установить вывод в Magnitude and Angle Baseband.
Установите несущие частоты в значение freq, как определено в InitFcn.
Нажмите кнопку ОК.
В редакторе Simulink подключите порт Ang блока Outport к блоку Terminator, чтобы завершить выход угловой основной полосы частот.
В диалоговых окнах блока Математическая функция (Math Function) и Математическая функция (Math Function) 1 задайте для параметра Функция (Fun magnitude^2 и нажмите OK. Блок суммирует величину входного и выходного сигнала.
В диалоговых окнах «Преобразование дБ» и «Преобразование дБ 1» установите для параметра «Входной сигнал» значение Power и нажмите OK. Блок преобразует входной и выходной сигналы в дБ.
В диалоговом окне «В рабочую область» измените имя переменной на In. В разделе В рабочую область 1 измените имя переменной на Out. В обоих диалоговых окнах блока измените значение параметра «Сохранить формат» на Array и нажмите кнопку ОК.
Использовать Simulation > Run для запуска модели.
Отображение входных и выходных сигналов с помощью semilogx функция, в дБ.
Перенесите входные и выходные значения дБ в рабочую область MATLAB с помощью блока «В рабочую область».
Для просмотра входного сигнала постройте график In массив из рабочей области MATLAB:
figure h = semilogx(freq, In,'-gs','LineWidth',1,... ...'MarkerSize',3,'MarkerFaceColor','r'); xlim([5.5e8,9.5e8]) xlabel('Frequency[Hz]') ylabel('Amplitude[dB]') title('Input Signal')
Для просмотра выходного сигнала постройте график Out массив из рабочей области MATLAB:
figure h = semilogx(freq, Out,'-gs','LineWidth',1,... ...'MarkerSize',3,'MarkerFaceColor','r'); xlim([5.5e8,9.5e8]) ylim([-25,1]) xlabel('Frequency[Hz]') ylabel('Amplitude[dB]') title('Attenuated Output Signal')
Сравните графики входных и выходных сигналов для проверки ослабления, вызванного фильтром.
Входной сигнал на РЧ-фильтр

На следующем графике показан отфильтрованный ослабленный сигнал.
Ослабленный выходной сигнал

Обратите внимание, что радиочастотный фильтр не ослабляет сигнал на центральной частоте 700 МГц.
Постройте график дополнительных точек, чтобы лучше понять реакцию полосового фильтра LC. Измените определенные переменные в свойствах модели на:
amp = ones(1,201) freq = logspace (8,10,201) stepsize = 1/500e6
Запустите модель. Обратите внимание, что сигнал не ослабляется в диапазоне 200 МГц полосового фильтра LC.
Постройте график ослабленного выходного сигнала:
figure h = semilogx(freq, Out,'-gs','LineWidth',1... .............,'MarkerSize',3,'MarkerFaceColor','r'); xlim([5.5e8,9.5e8]) ylim([-25,1]) xlabel('Frequency[Hz]') ylabel('Amplitude[dB]') title('LC Bandpass Filter Frequency Response')
