В этом примере показано, как измерить входную проводимость конвертера повышения, смоделированного в Simulink® с помощью компонентов Simscape™ Electrical™. Этот пример обращается к процессу оценки частотной характеристики, чтобы измерить входную проводимость существующей модели схемы силовой электроники.
Как правило, измерение входной проводимости систем силовой электроники требует обширных модификаций к этим моделям. Однако программное обеспечение Simulink Control Design™ обеспечивает инструменты, чтобы провести оценку частотной характеристики, чтобы измерить это важное свойство схемы силовой электроники. В этом примере вы также сравниваете предполагаемый результат частотной характеристики с аналитической моделью передаточной функции, созданной с помощью параметров компонента.
Этот пример использует конвертер повышения, основанный на модели на scdboostconverter
. Модель изменяется с блоком Probe, и линейный анализ указывает, чтобы измерить текущий вход.
Откройте модель.
mdl = 'scdboostconverterMeasureAdmittance';
open_system(mdl)
Чтобы использовать версию блока Boost Converter подсистемы, в модели, нажимают Boost Converter Block или используют следующую команду.
set_param([bdroot '/Simscape Power Systems Boost Converter'],... 'OverrideUsingVariant','block_boost_converter')
Чтобы оценить частотную характеристику для конвертера повышения, необходимо сначала определить установившуюся рабочую точку, в которой вы хотите, чтобы конвертер действовал. Для получения дополнительной информации о нахождении рабочих точек смотрите, Находят Установившиеся Рабочие точки для Моделей Simscape. В данном примере используйте рабочую точку, оцененную из снимка состояния симуляции в 0,045 секунды.
opini = findop(mdl,0.045);
Инициализируйте модель вычисленной рабочей точкой.
set_param(mdl,'LoadInitialState','on','InitialState','getstatestruct(opini)')
Псевдослучайный двоичный сигнал (PRBS) является периодическим, детерминированным сигналом с подобными белому шуму свойствами что сдвиги между двумя значениями. PRBS является по сути периодической длиной периода имеющей сигнала, где порядок PRBS. Для получения дополнительной информации см. Входные сигналы PRBS.
Создайте PRBS со следующей настройкой:
Чтобы использовать апериодический PRBS, определите номер периодов к 1.
Используйте порядок PRBS 14, производя сигнал длины 16383. Чтобы получить точную оценку частотной характеристики, длина PRBS должна быть достаточно большой.
Установите инжекционную частоту PRBS к 200 кГц совпадать с шагом расчета в модели. Таким образом, задайте шаг расчета 5e-6
секунды.
Чтобы гарантировать, что система правильно взволнована, устанавливает амплитуду возмущения на 0,5.
in_PRBS = frest.PRBS('Order',14,'NumPeriods',1,'Amplitude',0.5,'Ts',5e-6);
Создайте sinestream входной сигнал с 30 частотами между 200 рад/с и 600 000 рад/с. Установите амплитуду входного сигнала к 0,25 делать его сопоставимым с входным сигналом PRBS.
in_Sinestream = frest.createFixedTsSinestream(5e-06,{200,6e5}); in_Sinestream.Amplitude = 0.25;
Используя различные входные сигналы приводит к различному времени симуляции для процесса оценки частотной характеристики. Чтобы достигнуть подобных результатов, входной сигнал PRBS обычно берет намного более короткое время симуляции, чем sinestream входной сигнал. Здесь, in_PRBS
берет приблизительно 15% времени симуляции как in_Sinestream
.
Следующее является временем симуляции для оценки частотной характеристики in_PRBS
.
in_PRBS.getSimulationTime
ans = 0.0819
Следующее является временем симуляции для оценки частотной характеристики in_Sinestream
.
in_Sinestream.getSimulationTime
ans = 0.5207
Чтобы собрать данные о частотной характеристике, можно оценить частотную характеристику объекта в командной строке. Для этого сначала получите ввод и вывод линейные аналитические точки из модели.
io = getlinio(mdl);
Задайте рабочую точку с помощью начальных условий модели.
op = operpoint(mdl);
Найдите все исходные блоки в путях прохождения сигнала линеаризации выходными параметрами, которые генерируют изменяющиеся во времени сигналы. Такие изменяющиеся во времени сигналы могут вмешаться в сигнал в выходных точках линеаризации и привести к неточным результатам оценки.
srcblks = frest.findSources(mdl,io);
Чтобы отключить изменяющиеся во времени исходные блоки, создайте frestimateOptions
набор опции и задает BlocksToHoldConstant
опция.
opts = frestimateOptions; opts.BlocksToHoldConstant = srcblks;
Оцените частотную характеристику с помощью входного сигнала PRBS.
sysest_prbs = frestimate(mdl,io,op,in_PRBS,opts);
Оценка частотной характеристики с входным сигналом PRBS приводит к результатам с большим количеством точек частоты. Программное обеспечение Simulink Control Design позволяет вам оценить частотную характеристику объекта с помощью приложения Model Linearizer. Можно также использовать Model Linearizer, чтобы далее улучшить частотную характеристику, оцененную в командной строке.
Можно использовать Результат, Утончающийся в Model Linearizer, чтобы извлечь интерполированный результат предполагаемой модели частотной характеристики через заданный частотный диапазон и количество точек частоты. Для получения дополнительной информации смотрите Результат Утончиться.
Примените утончение к sysest_prbs
по частотам между 200 рад/с и 600 000 рад/с с 50 логарифмически расположенными с интервалами точками частоты.
Нажать ОК. Разбавленная модель, sysest_prbs_thinned
, появляется в MATLAB® Workspace.
В целях сравнения оцените частотную характеристику с помощью заданного sinestream входного сигнала.
sysest_sine = frestimate(mdl,io,op,in_Sinestream,opts);
Сравните результаты оценки с аналитической передаточной функцией на основе параметров компонента. Используйте следующие параметры из модели.
L = 20e-6; C = 1480e-6; R = 6; rC=8e-3; rL=1.8e-3;
Чтобы вычислить аналитическую передаточную функцию, вы требуете фактического значения рабочего цикла. Для этого конвертера повышения используйте регистрируемый рабочий цикл в рабочей точке.
D = 0.734785; d = 1-0.734785;
Задайте аналитическую передаточную функцию, которая основана [1], с помощью параметров компонента в модели конвертера повышения.
Yin = tf([C*(R+rC) 1], [L*C*(R+rC) L+C*rL*(R+rC)+C*R*rC-R*D*C*rC R+rL-R*D-R^2*D*d/(R+rC)]);
Для более детального описания объясните задержку из-за сигнала PWM в передаточной функции Yin
.
N = 0.5;
Ts = 5e-6;
iodelay = N*Ts; % 0.5 PWM
Yin.IODelay = iodelay;
Сравните результаты FRE с помощью PRBS и sinestream входных сигналов к аналитической передаточной функции по частотному диапазону интереса.
Загрузите разбавленный PRBS, следуют из ранее сохраненного сеанса и строят результаты.
load sysest_prbs_thinned_result figure bode(sysest_prbs_thinned,'b-') hold on bode(sysest_sine,'k*-') bode(Yin,'r--',{10,1e6}) legend('FRE Result Using PRBS','FRE Result Using Sinestream','Analytical Result',... 'Location','northeast') grid on
Исследуйте Диаграмму Боде. Результат FRE получил использование, входной сигнал PRBS получает интересные свойства частотного диапазона. Например, результат оценки частотной характеристики с входным сигналом PRBS, вокруг пика величины, совпадает с аналитической передаточной функцией намного лучше, чем результат оценки частотной характеристики с sinestream входным сигналом.
Закройте модель.
close_system(mdl,0)
[1] Ахмадит, Реза, и Мехди Фердоуси. "Моделируя Импедансы Ввода и вывода С обратной связью Конвертеров DC-DC, Действующих в Системах распределения Dc". 2 014 IEEE Прикладная Конференция по Силовой электронике и Выставка - АТЭС 2014, 2014 1131-38. https://doi.org/10.1109/APEC.2014.6803449.
frest.PRBS
| frest.createFixedTsSinestream
| frestimate
| frestimateOptions