В этом примере показано, как идентифицировать модель частотного диапазона использование псевдослучайной двоичной последовательности (PRBS) для системы силовой электроники, смоделированной в Simulink® с помощью компонентов Simscape™ Electrical™. Этот пример обращается к процессу оценки частотной характеристики в рабочем процессе проектирования контроллера с помощью PRBS в качестве входного сигнала.
Как правило, системы силовой электроники не могут линеаризоваться, потому что они используют высокочастотные компоненты переключения, такие как генераторы модуляции длительности импульса (PWM). Однако большинство настраивающих инструментов Simulink® Control Design™ PID проектирует коэффициенты ПИД на основе линеаризовавшей модели объекта управления. Чтобы получить такую модель для модели силовой электроники, которая не может линеаризоваться, можно оценить частотную характеристику объекта в области значений частот как показано в этом примере. Чтобы собрать данные о частотной характеристике, вы можете:
Оцените частотную характеристику объекта в командной строке.
Оцените частотную характеристику объекта с помощью приложения Model Linearizer.
Этот пример использует модель конвертера повышения в качестве примера системы силовой электроники. Схема конвертера повышения преобразует одно напряжение постоянного тока в другого, обычно выше, напряжение постоянного тока управляемым прерыванием или переключением исходного напряжения.
mdl = 'scdboostconverter';
open_system(mdl)
В этой модели MOSFET, управляемый сигналом модуляции длительности импульса (PWM), используется в переключении. Выходное напряжение должно быть отрегулировано к ссылочному значению. Цифровой ПИД-регулятор настраивает рабочий цикл PWM, на основе сигнала ошибки напряжения. В данном примере вы оцениваете частотную характеристику от рабочего цикла PWM до напряжения загрузки.
Программное обеспечение Simscape Electrical содержит предопределенные блоки для многих систем силовой электроники. Эта модель содержит различную подсистему с двумя версиями модели конвертера повышения:
Повысьте схему конвертера, созданную с помощью компонентов электроэнергии. Параметры элементов схемы основаны [1].
Повысьте блок конвертера, сконфигурированный, чтобы иметь те же параметры как схема конвертера повышения. Для получения дополнительной информации об этом блоке смотрите Конвертер Повышения.
Чтобы использовать версию блока 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 является по сути периодической длиной периода имеющей сигнала 2^n-1
, где n
порядок PRBS.
Создайте PRBS со следующей настройкой.:
Чтобы использовать апериодический PRBS определяет номер периодов к 1
.
Используйте порядок PRBS 12
, создание сигнала длины 4095
. Чтобы получить точную оценку частотной характеристики, длина PRBS должна быть достаточно большой.
Установите инжекционную частоту PRBS к 200 кГц совпадать с шагом расчета в модели.
Чтобы гарантировать, что система правильно взволнована, устанавливает амплитуду возмущения на 0.05
. Если входная амплитуда является слишком большой, конвертер повышения действует в прерывисто-текущем режиме. Если входная амплитуда слишком мала, PRBS неотличим от пульсаций в электронных схемах степени.
in_PRBS = frest.PRBS('Order',12,'NumPeriods',1,'Amplitude',0.05,'Ts',5e-6);
Чтобы собрать данные о частотной характеристике, можно оценить частотную характеристику объекта в командной строке. Для этого сначала получите ввод и вывод линейные аналитические точки из модели.
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 к найденным использованием sinestream входного сигнала. Сравните сигналы через 15
логарифмически распределенные частоты используются в sinestream в пределах от 50 Hz
к 5 kHz
.
load frdSinestream wbode = estsysSinestream.Frequency; bode(sysest_prbs,'b-'); hold on bode(estsysSinestream,'ro--',wbode(1:end-2)); legend('PRBS estimation result','Sinestream estimation result',... 'Location','northeast') grid on
В качестве альтернативы можно использовать приложение Model Linearizer, чтобы собрать данные о частотной характеристике из той же модели с помощью входного сигнала PRBS. Чтобы собрать данные о частотной характеристике для сигнала PRBS, в Model Linearizer, на вкладке Estimation, под Входным сигналом, выбирают PRBS Pseudorandom Binary Sequence.
В диалоговом окне входа Create PRBS сконфигурируйте параметры PRBS.
Нажать ОК. Программное обеспечение добавляет сигнал PRBS в Линейную Аналитическую Рабочую область.
Чтобы оценить и построить частотную характеристику, на вкладке Estimation, нажимают Bode.
В Model Linearizer можно также сравнить данные о частотной характеристике с результатом, полученным с помощью сигнала sinestream. Следующая фигура выдерживает сравнение, система оценила использование входного сигнала PRBS (estsys1
) результатом, полученным с помощью сигнала sinestream (estsysSinestream
).
Частотная характеристика с помощью входного сигнала PRBS показывает несоответствия от результата, полученного с помощью sinestream входного сигнала. Чтобы улучшить результат оценки частотной характеристики, можно использовать различный шаг расчета кроме шага расчета в исходной модели конвертера повышения. Для этого измените модель, чтобы использовать постоянный блок во входной аналитической точке и блок Rate Transition в выходной аналитической точке.
И для блока Constant и для блока Rate Transition, используйте шаг расчета 5e-5
s, который в десять раз медленнее, чем исходный шаг расчета 5e-6
s.
Создайте входной сигнал PRBS с помощью нового шага расчета.
in_PRBS = frest.PRBS('Order',12,'NumPeriods',1,'Amplitude',0.05,'Ts',5e-5);
С новым входным сигналом PRBS можно получить улучшенную частотную характеристику, которая более тесно совпадает с результатом sinestream.
Способность изменить шаг расчета времени входного сигнала PRBS обеспечивает дополнительную степень свободы в процессе оценки частотной характеристики. Используя больший шаг расчета, чем в исходной модели, можно получить более высокий результат оценки частотной характеристики разрешения в низкочастотной области значений.
Закройте модель.
close_system(mdl,0)