Моделируйте радиочастотный фильтр, используя огибающую схемы

В этом примере показано, как смоделировать RF-фильтр с помощью библиотеки огибающих цепи. В этом примере вы сравниваете амплитуды входного и выходного сигналов, чтобы изучить ослабление сигнала.

Обзор модели

В этом примере используется полосно-пропускающий фильтр LC, рассчитанный на полосу пропускания 200 МГц. Фильтр использует трехтональный входной сигнал, чтобы продемонстрировать свойство ослабления фильтра для внутриполосных и внеполосных частот. Тональные сигналы входного сигнала:

  • 700 МГц - Центральная частота полосы пропускания фильтра

  • 600 МГц - нижняя граничная частота полосы пропускания фильтра

  • 900 МГц - Частота вне полосы пропускания фильтра

Задайте переменные модели и настройки

Задайте переменные модели для блоков, которые разделяют значения параметров с помощью InitFcn:

  1. В Simulink® нажмите кнопку Modeling. На панели инструментов, в SETUP > Model Settings, нажмите Model Properties.

  2. В диалоговом окне Model Properties на вкладке Callbacks на Model callbacks панели выберите InitFcn.

  3. На панели Model initialization function введите:

    amp = ones(1,3)
    freq = [600 700 900]*1e6
    stepsize = 1/500e6
  4. Нажмите OK.

  5. На панели инструментов Simulink измените время остановки симуляции на 0.

  6. В редакторе Simulink щелкните Simulation Во вкладке <reservedrangesplaceholder6>, click <reservedrangesplaceholder5> in <reservedrangesplaceholder4> In the <reservedrangesplaceholder3> в изменении Solver options Solver к discrete (no continuous states).

Необходимые блоки

Система фильтров состоит из LC Ladder, Inport, Outport и Configuration блоков. Физическая часть модели использует двунаправленные радиочастотные сигналы.

В системе используются следующие блоки:

Блок

Путь к библиотеке

Использовать

Количество

ConstantSimulink> Sources

Чтобы сгенерировать действительное и комплексное постоянное значение

1

InportRF Blockset> Circuit Envelope> Utilities

Для преобразования входного сигнала Simulink в RF Blockset™ входной сигнал

1

ConfigurationRF Blockset> Circuit Envelope> Utilities

Установка параметров всей системы для симуляции RF Blockset

1

LC LadderRF Blockset> Circuit Envelope> Elements

Для моделей ослабления сигнала

1

OutportRF Blockset> Circuit Envelope> Utilities

Для преобразования сигналов RF Blockset в сигналы Simulink

1

db ConversionDSP System Toolbox> Math Functions> Math Operations

Чтобы преобразовать данные величины в децибелы

2

Math FunctionSimulink> Math Operations

Для выполнения математических функций

2

To workspaceSimulink> Sinks

Запись данных в MATLAB® рабочая область для графического изображения

2

TerminatorSimulink> Commonly Used Blocks> Terminator

Для завершения основной полосы выхода угла блока Outport

1

Соедините блоки как показано на рисунке:

Сконфигурируйте входной сигнал

Сгенерируйте трехтональный входной сигнал, используя эти блоки:

  • Блок Constant задает амплитуду сигнала.

  • Блок Inport конфигурирует частоты трех тональных сигналов.

  • Блок Configuration задает размер шага.

  1. В Constant установите диалоговое окно блока значение Constant равным amp, как определено в InitFcn.

  2. В блоке Inport:

    • Установите Source type значение Power.

    • Установите Carrier frequencies значение freq, как определено в InitFcn. The freq переменная устанавливает частоту трех тонов 600 МГц, 700 МГц и 900 МГц соответственно.

      Нажмите OK.

  3. В диалоговом окне Configuration блока:

    • Установите Step size значение step size, как определено в InitFcn.

    • Очистить Simulate noise.

      Нажмите OK.

    Основные тона и гармоники обновляются автоматически при запуске модели.

Сконфигурируйте радиочастотный фильтр

  1. В диалоговом окне LC Ladder блока:

    • Установите Ladder topology значение LC Bandpass Pi.

      Щелкните Apply и затем щелкните OK.

Сконфигурируйте выходные параметры

  1. В блоке Outport:

    • Установите Sensor type значение Power.

    • Установите Output значение Magnitude and Angle Baseband.

    • Установите Carrier frequencies значение freq, как определено в InitFcn.

      Нажмите OK.

  2. В редакторе Simulink соедините порт Ang блока Outport с блоком Terminator, чтобы завершить выход основной полосы частот угла.

  3. В Math Function и Math Function 1 диалоговых окнах установите Function равным magnitude^2 и нажмите OK. Блок строит квадраты величины сигнала входа и выхода.

  4. В dB Conversion и dB Conversion 1 диалоговых окнах установите Input Signal равным Power и нажмите OK. Блок преобразует входной и выходной сигналы в дБ.

  5. В To Workspace смените Variable name на In. В To Workspace 1 смените Variable name на Out. В обоих диалоговых окон блока измените Save format набора на Array и нажмите OK.

  6. Использование Simulation > Run чтобы запустить модель.

Построение и анализ ослабленных выходных сигналов

Отобразите входной и выходной сигналы, используя semilogx функция, в дБ.

  1. Перенесите входные и выходные значения дБ в рабочее пространство MATLAB с помощью блока To Workspace.

  2. Чтобы просмотреть входной сигнал, постройте график 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')
  3. Чтобы просмотреть сигнал выхода, постройте график 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')
  4. Сравните входы и выходного сигналов, чтобы проверить ослабление, вызванное фильтром.

    Входной сигнал к радиочастотному фильтру

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

    Ослабленный выходной сигнал

    Заметьте, что радиочастотный фильтр не ослабляет сигнал на центральной частоте 700 МГц.

Анализ ответа полосно-пропускающего фильтра LC

  1. Постройте больше точек, чтобы лучше понять ответ полосно-пропускающего фильтра LC. Измените определенные переменные в Model Properties на:

    amp = ones(1,201)
    freq = logspace (8,10,201)
    stepsize = 1/500e6

  2. Запустите модель. Заметьте, что сигнал не ослабляется в области значений 200 МГц полосового фильтра LC.

  3. Постройте график ослабленного выхода:

    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')
    

См. также

Похожие темы