Этот пример показывает, как создать объект rfckt.mixer
и построить шпоры микшера того объекта.
Микшеры являются нелинейными устройствами, используемыми в системах РФ. Они обычно используются, чтобы преобразовать сигналы от одной частоты до другого. В дополнение к желаемой выходной частоте микшеры также производят продукты межмодуляции (также названный шпорами микшера), которые являются нежелательными побочными эффектами их нелинейности. Вывод микшера происходит на частотах:
где:
входная частота.
частота локального осциллятора (LO).
неотрицательное целое число.
целое число.
Только одна из этих выходных частот является желаемым тоном. Например, в микшере понижающего преобразования (т.е.). с LO низкой стороны (т.е.)., случай, представляет желаемый выходной тон. Это:
Все другие комбинации и представляют побочные продукты межмодуляции.
Таблицы межмодуляции (IMTs) часто используются в моделировании уровня системы микшеров. Этот пример сначала исследует IMT микшера. Затем пример читает файл формата .s2d
, содержащий IMT, и строит выходную мощность на каждой выходной частоте, включая желаемый сигнал и нежелательные шпоры. Пример также создает каскадную схему, которая содержит микшер с IMT, сопровождаемым фильтром, цель которого состоит в том, чтобы смягчить шпоры и строит выходную мощность до и после смягчения.
Для получения дополнительной информации о IMTs смотрите, что пример OpenIF Находит Свободную Пропускную способность IF.
Создайте объект rfckt.mixer
представлять downconverting микшер, который задан в файле, samplespur1.s2d
. Микшер характеризуется S-параметрами, точечным шумом и IMT. Эти данные хранятся в NetworkData
, свойствах NoiseData
и MixerSpurData
объекта rfckt
, соответственно.
Mixer = rfckt.mixer('FLO', 1.7e9); % Flo = 1.7GHz read(Mixer,'samplespur1.s2d'); disp(Mixer)
rfckt.mixer with properties: MixerSpurData: [1x1 rfdata.mixerspur] MixerType: 'Downconverter' FLO: 1.7000e+09 FreqOffset: [] PhaseNoiseLevel: [] NoiseData: [1x1 rfdata.noise] NonlinearData: Inf IntpType: 'Linear' NetworkData: [1x1 rfdata.network] nPort: 2 AnalyzedResult: [1x1 rfdata.data] Name: 'Mixer'
IMT = Mixer.MixerSpurData.data
IMT = Columns 1 through 13 99 26 35 39 50 41 53 49 51 42 62 51 60 24 0 35 13 40 24 45 28 49 33 53 42 60 73 73 74 70 71 64 69 64 69 62 74 62 72 67 64 69 50 77 47 74 44 74 47 75 44 70 86 90 86 88 88 85 86 85 90 85 85 85 99 90 80 90 71 90 68 90 65 88 65 85 99 99 90 90 90 90 90 90 90 90 90 90 99 99 99 90 90 90 90 90 87 90 90 90 99 99 99 99 99 95 99 95 99 95 99 95 99 99 99 99 99 90 95 90 90 90 99 90 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 90 99 90 95 90 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 90 99 90 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 Columns 14 through 16 47 77 50 47 63 99 60 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99
Используйте метод plot
объекта rfckt
построить степень желаемого выходного сигнала и шпор. Второй входной параметр должен быть строкой 'MIXERSPUR'
. Третий входной параметр должен быть индексом схемы, для которой можно отобразить данные о выходной мощности на графике. Объект rfckt.mixer
только содержит одну схему (микшер), таким образом, индекс 0 соответствует входу микшера, и индекс 1 соответствует микшеру вывод.
CktIndex = 1; % Plot the output only Pin = -10; % Input power is -10dBm Fin = 2.1e9; % Input frequency is 2.1GHz figure plot(Mixer,'MIXERSPUR',CktIndex,Pin,Fin);
Запустите курсор по графику получить частоту и уровень мощности каждого сигнала и шпоры.
Создайте объект усилителя для LNA, микшера и объектов Мишени Полосы пропускания LC. Затем создайте каскад, показанный в следующей фигуре:
FirstCkt = rfckt.amplifier('NetworkData', ... rfdata.network('Type','S','Freq',2.1e9,'Data',[0,0;10,0]), ... 'NoiseData',0,'NonlinearData',Inf); % 20dB LNA SecondCkt = copy(Mixer); % Mixer with IMT table ThirdCkt = rfckt.lcbandpasstee('L',[97.21 3.66 97.21]*1.0e-9, ... 'C',[1.63 43.25 1.63]*1.0e-12); % LC Bandpass filter CascadedCkt = rfckt.cascade('Ckts',{FirstCkt,SecondCkt,ThirdCkt});
Используйте метод plot
объекта rfckt
построить степень желаемого выходного сигнала и шпор. Третьим входным параметром является 3
, который направляет тулбокс, чтобы построить степень при выводе третьего компонента каскада (фильтр LC).
CktIndex = 3; % Plot the output signal and spurs of the LC filter, % which is the 3rd circuit in the cascade Pin = -30; % Input power is -30dBm Fin = 2.1e9; % Input frequency is 2.1GHz plot(CascadedCkt,'MIXERSPUR',CktIndex,Pin,Fin)
Используйте метод plot
объекта rfckt
с третьим входным параметром 'all'
, чтобы построить входную мощность и выходную мощность после каждого элемента схемы в каскаде. Индекс 0 схемы соответствует входу каскада. Индекс 1 схемы соответствует выводу LNA. Индекс 2 схемы соответствует выводу микшера, который показали в предыдущем графике. Индекс 3 схемы соответствует выводу фильтра Мишени Полосы пропускания LC.
CktIndex = 'all'; % Plot the input signal, the output signal, and the % spurs of the three circuits in the cascade: FirstCkt, % SecondCkt and ThirdCkt Pin = -30; % Input power is -30dBm Fin = 2.1e9; % Input frequency is 2.1GHz plot(CascadedCkt,'MIXERSPUR',CktIndex,Pin,Fin) view([68.5 26])