Этот пример показывает, как измерить входной допуск усилителя конвертера, смоделированного в Simulink ®, используя компоненты Simscape™ Electrical™. Этот пример относится к процессу оценки частотной характеристики, чтобы измерить вход допуск существующей степени модели электронной схемы.
Обычно измерение входа допуск степени электронных систем требуют обширных модификаций этих моделей. Однако программное обеспечение Simulink Control Design™ предоставляет инструменты для оценки частотной характеристики, чтобы измерить это важное свойство степени электронной схемы. В этом примере вы также сравниваете предполагаемый результат частотной характеристики с аналитической моделью передаточной функции, созданной с использованием параметров компонента.
Этот пример использует модель усилителя конвертера, основанную на scdboostconverter
. Модель изменяется блоком Probe и точками линейного анализа, чтобы измерить входной ток.
Откройте модель.
mdl = 'scdboostconverterMeasureAdmittance';
open_system(mdl)
Чтобы использовать блок версию подсистемы Boost Converter, в модели нажмите Boost Converter Блока или используйте следующую команду.
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);
Создайте входной сигнал синестрима с 30 частотами между 200 рад/с и 600000 рад/с. Установите амплитуду входного сигнала равную 0,25, чтобы она соответствовала входному сигналу PRBS.
in_Sinestream = frest.createFixedTsSinestream(5e-06,{200,6e5}); in_Sinestream.Amplitude = 0.25;
Использование различных входных сигналов приводит к другому времени симуляции для процесса оценки частотной характеристики. Для достижения аналогичных результатов входной сигнал PRBS обычно занимает намного меньше времени симуляции, чем входной сигнал синестреама. Здесь, 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 логарифмически разнесенными частотными точками.
Нажмите OK. Утонченная модель, sysest_prbs_thinned
, появляется в Рабочей области MATLAB ®.
Для сравнения оцените частотную характеристику, используя заданный входной сигнал синестреама.
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, вокруг величины пика, соответствует аналитической передаточной функции намного лучше, чем результат оценки частотной характеристики с входным сигналом синестрейма.
Закройте модель.
close_system(mdl,0)
[1] Ахмади, Реза и Мехди Фердоуси. «Моделирование замкнутой системы Входа и Выхода импедансов преобразователей Степеней постоянного тока, работающих в системах Распределения постоянного тока». 2014 IEEE Applied Степени Electronics Conference and Exposition - APEC 2014, 2014 1131-38. https://doi.org/10.1109/APEC.2014.6803449.
frest.createFixedTsSinestream
| frest.PRBS
| frestimate
| frestimateOptions