rfbudget

Создайте бюджет РФ, возражают и вычисляют бюджетные результаты РФ для цепи элементов с 2 портами

Описание

Используйте rfbudget объект создать rfbudget элемент, чтобы вычислить бюджетные результаты РФ схемы. Можно использовать любой элемент с 2 портами в этой схеме, такой как amplifier, modulator, или nport. Откройте полный rfbudget схема в приложении RF Budget Analyzer. Можно также экспортировать завершенную схему в RF Blockset™.

Создание

Описание

пример

rfobj = rfbudget создает объект rfbudget, rfobj, с пустыми значениями свойств по умолчанию.

пример

rfobj = rfbudget(elements,inputfreq,inputpwr,bandwidth) создает бюджетный объект РФ из входа элементы РФ, и независимо вычисляет бюджетный анализ РФ на заданных входных частотах, доступной входной мощности и пропускной способности сигнала. Входные параметры хранятся в Elements, InputFrequency, AvailableInputPower, и SignalBandwidth свойства. Результаты анализа хранятся в зависимых свойствах. По умолчанию, если какое-либо из входных свойств изменяется, объект повторно вычисляет результаты.

rfobj = rfbudget(___,autoupdate)устанавливает 'AUTOUPDATE' свойство к false. Установка AutoUpdate ко лжи выключает автоматический бюджетный перерасчет, когда параметры изменяются. Можно использовать этот синтаксис с любым из драгоценных синтаксисов.

rfobj = rfbudget(....,Name,Value)создает бюджетный объект РФ с дополнительными свойствами, заданными одним или несколькими аргументами пары "имя-значение". Name имя свойства и Value соответствующее значение. Можно задать несколько аргументов пары "имя-значение" в любом порядке как Name1, Value1, ..., NameN, ValueN. Свойства, не заданные, сохраняют свои значения по умолчанию.

Свойства

развернуть все

Бюджетные элементы РФ в виде разделенной запятой пары, состоящей из 'Elements' и объект тулбокса РФ или массив объектов тулбокса РФ. Возможными элементами является amplifier, modulator, типовой rfelement, и nport объекты. Чтобы задать схему, состоящую из нескольких объектов РФ, укажите элементы как массив ячеек. Для получения информации о случаях ребра см. S21 = 0.

Пример: a = amplifier;m =modulator;rfbudget('Elements',[a m]) вычисляет бюджетный анализ РФ схемы усилителя и модулятора.

Введите частоту сигнала в виде разделенной запятой пары, состоящей из 'InputFrequency' и скаляр или вектор в Гц. Если входная частота является вектором, то бюджетный объект РФ вычисляет анализ для каждой входной частоты отдельно.

Пример: 'InputFrequency',2e9

Типы данных: double

Питание, поданное во входе каскада в виде разделенной запятой пары, состоящей из 'AvailableInputPower' и скаляр в dBm.

Пример: 'AvailableInputPower',-30

Типы данных: double

Пропускная способность сигнала во входе каскада в виде разделенной запятой пары, состоящей из 'SignalBandwidth' и скаляр в Гц.

Пример: 'SignalBandwidth',10

Типы данных: double

Опция, чтобы автоматически повторно вычислить бюджетный анализ РФ путем слияния изменений, внесенных в существующую схему в виде разделенной запятой пары, состоящей из 'AutoUpdate' и булев скаляр.

Пример: 'AutoUpdate',true

Типы данных: логический

Метод расчета в виде Friis или HarmonicBalance. Friis решатель быстрее, чем HarmonicBalance решатель, но не поддерживает расчет нелинейности, такой как OIP2. HarmonicBalance решатель, тон и гармонически-зависимые свойства отображены.

Примечание

HarmonicBalance не поддерживает архитектуры, где частоты ввода или вывода на любом этапе являются ненулевыми и меньше, чем SignalBandwidth.

Пример: 'Solver','Friis'

Типы данных: string

Это - свойство только для чтения.

Выведите частоты в виде разделенной запятой пары, состоящей из 'OutputFrequency' и вектор-строка в Гц.

Типы данных: double

Это - свойство только для чтения.

Выходная мощность в виде разделенной запятой пары, состоящей из 'OutputPower' и вектор-строка в dBm.

Типы данных: double

Это - свойство только для чтения.

Степень преобразователя получает в виде разделенной запятой пары, состоящей из 'TransducerGain' и вектор-строка в дБ.

Типы данных: double

Это - свойство только для чтения.

Шумовые фигуры в виде разделенной запятой пары, состоящей из 'NF' и вектор-строка в дБ. Эти значения вычисляются только, когда выбранным решателем является Friis решатель.

Типы данных: double

Это - свойство только для чтения.

Отнесенное к входу прерывание второго порядка в виде разделенной запятой пары, состоящей из 'IIP2' и вектор-строка в dBm. Эти значения вычисляются только, когда выбранным решателем является HarmonicBalanceрешатель.

Типы данных: double

Это - свойство только для чтения.

Отнесенное к выходу прерывание второго порядка в виде разделенной запятой пары, состоящей из 'OIP2' и вектор-строка в dBm. Эти значения вычисляются только, когда выбранным решателем является HarmonicBalanceрешатель.

Типы данных: double

Это - свойство только для чтения.

Отнесенный к выходу третий порядок прерывает в виде разделенной запятой пары, состоящей из 'OIP3' и вектор-строка в dBm.

Типы данных: double

Это - свойство только для чтения.

Отнесенный к входу третий порядок прерывает в виде разделенной запятой пары, состоящей из 'IIP3' и вектор-строка в dBm.

Типы данных: double

Это - свойство только для чтения.

Отношение сигнал-шум в виде разделенной запятой пары, состоящей из 'SNR' и вектор-строка в дБ. Эти значения вычисляются только, когда выбранным решателем является Friisрешатель.

Типы данных: double

Функции объекта

showОтобразите бюджетный объект РФ в приложении RF Budget Analyzer
computeBudgetВычислите результаты объекта rfbudget
exportScriptЭкспортируйте код MATLAB, который генерирует бюджетный объект РФ
exportRFBlocksetСоздайте модель RF Blockset из бюджетного объекта РФ
exportTestbenchСоздайте испытательный стенд измерения из бюджетного объекта РФ
rfplotПостройте совокупный бюджетный результат РФ по сравнению с каскадной входной частотой
smithplotОтобразите данные об измерении на графике по графику Смита
polarПостройте заданные параметры объекта на полярных координатах

Примеры

свернуть все

Откройте бюджетный объект РФ по умолчанию.

obj = rfbudget
obj = 
  rfbudget with properties:

               Elements: []
         InputFrequency: [] Hz 
    AvailableInputPower: [] dBm
        SignalBandwidth: [] Hz 
                 Solver: Friis      
             AutoUpdate: true

Создайте усилитель с усилением 4 дБ.

a = amplifier('Gain',4);

Создайте модулятор с OIP3 13 dBm.

m = modulator('OIP3',13);

Создайте nport использование passive.s2p.

n = nport('passive.s2p');

Создайте rf элемент с усилением 10 дБ.

r = rfelement('Gain',10);

Вычислите rf бюджет серии rf элементов на входной частоте 2,1 ГГц, доступной входной мощности-30 dBm и пропускной способности 10 МГц.

b = rfbudget([a m r n],2.1e9,-30,10e6)
b = 
  rfbudget with properties:

               Elements: [1x4 rf.internal.rfbudget.Element]
         InputFrequency: 2.1 GHz
    AvailableInputPower: -30 dBm
        SignalBandwidth:  10 MHz
                 Solver: Friis      
             AutoUpdate: true

   Analysis Results
        OutputFrequency: (GHz) [  2.1    3.1    3.1     3.1]
            OutputPower: (dBm) [  -26    -26    -16   -20.6]
         TransducerGain: (dB)  [    4      4     14     9.4]
                     NF: (dB)  [    0      0      0  0.1392]
                   IIP2: (dBm) []                           
                   OIP2: (dBm) []                           
                   IIP3: (dBm) [  Inf      9      9       9]
                   OIP3: (dBm) [  Inf     13     23    18.4]
                    SNR: (dB)  [73.98  73.98  73.98   73.84]

Покажите анализ в приложении RF Budget Analyzer.

show(b)

Создайте систему РФ.

Создайте РФ bandpassfilter использование файла Пробного камня RFBudget_RF.

f1 = nport('RFBudget_RF.s2p','RFBandpassFilter');

Создайте усилитель с усилением 11,53 дБ, шумовой фигурой (NF) 1,53 дБ и выходным прерыванием третьего порядка (OIP3) 35 dBm.

a1 = amplifier('Name','RFAmplifier','Gain',11.53,'NF',1.53,'OIP3',35);

Создайте демодулятор с усилением-6 дБ, NF 4 дБ и OIP3 50 dBm.

d = modulator('Name','Demodulator','Gain',-6,'NF',4,'OIP3',50, ...
        'LO',2.03e9,'ConverterType','Down');

Создайте IF bandpassfilter использование файла Пробного камня RFBudget_IF.

f2 = nport('RFBudget_IF.s2p','IFBandpassFilter');

Создайте усилитель с усилением 30 дБ, NF 8 дБ и OIP3 37 dBm.

a2 = amplifier('Name','IFAmplifier','Gain',30,'NF',8,'OIP3',37);

Вычислите бюджет РФ системы с помощью входной частоты 2,1 ГГц, входной мощности-30 dBm и пропускной способности 45 МГц.

b = rfbudget([f1 a1 d f2 a2],2.1e9,-30,45e6)
b = 
  rfbudget with properties:

               Elements: [1x5 rf.internal.rfbudget.Element]
         InputFrequency: 2.1 GHz
    AvailableInputPower: -30 dBm
        SignalBandwidth:  45 MHz
                 Solver: Friis      
             AutoUpdate: true

   Analysis Results
        OutputFrequency: (GHz) [   2.1    2.1   0.07    0.07   0.07]
            OutputPower: (dBm) [-31.53    -20    -26  -27.15  2.847]
         TransducerGain: (dB)  [-1.534  9.996  3.996   2.847  32.85]
                     NF: (dB)  [ 1.533  3.064  3.377   3.611  7.036]
                   IIP2: (dBm) []                                   
                   OIP2: (dBm) []                                   
                   IIP3: (dBm) [   Inf     25  24.97   24.97  4.116]
                   OIP3: (dBm) [   Inf     35  28.97   27.82  36.96]
                    SNR: (dB)  [ 65.91  64.38  64.07   63.83  60.41]

Постройте доступную выходную мощность.

rfplot(b,'Pout')
view(90,0)

Постройте усиление преобразователя.

rfplot(b,'GainT')
view(90,0)

Plot sparameters of RF System on a Smith Chart and a Polar plot

s = smithplot(b,1,1,'GridType','ZY'); 

p = polar(b,2,1); 

Создайте два модулятора, m1 и m2, с отнесенным к выходу набором прерывания второго порядка к 20 и доступным набором усиления степени к 3.

m = modulator('Gain',3,'OIP2',20,'ImageReject',false,'ChannelSelect',false);
m2 = modulator('Gain',3,'OIP2',20,'ImageReject',false,'ChannelSelect',false);

Создайте бюджетный объект РФ определение входной частоты сигнала, питание, поданное в каскаде и пропускной способности сигнала. Выберите HarmonicBalance как метод решателя, чтобы вычислить нелинейные эффекты, такие как IIP2 и OIP2.

b = rfbudget([m m2],2.1e9,-30,100e6,'Solver','HarmonicBalance')
b = 
  rfbudget with properties:

               Elements: [1x2 modulator]
         InputFrequency: 2.1 GHz
    AvailableInputPower: -30 dBm
        SignalBandwidth: 100 MHz
                 Solver: HarmonicBalance
                  Tones: [1e+09 2.1e+09 2.1125e+09]
              Harmonics: 3                         
             AutoUpdate: true

   Analysis Results
        OutputFrequency: (GHz) [3.1    4.1]
            OutputPower: (dBm) [-27    -24]
         TransducerGain: (dB)  [  3      6]
                     NF: (dB)  []          
                   IIP2: (dBm) [ 17  4.457]
                   OIP2: (dBm) [ 20  10.46]
                   IIP3: (dBm) [Inf    Inf]
                   OIP3: (dBm) [Inf    Inf]
                    SNR: (dB)  []          

Алгоритмы

развернуть все

Введенный в R2017a