В этом примере показано, как настроить PID-контроллер для установок, которые не могут быть линеаризованы. Для определения установки для модели используется PID Tuner. Затем настройте PID-контроллер с помощью идентифицированной установки.
В этом примере используется модель конвертера баков, для которой требуется программное обеспечение Simscape™ Electrical™.
Преобразователи Buck преобразуют постоянный ток в постоянный ток. Эта модель использует коммутируемый источник питания для преобразования 30V источника постоянного тока в регулируемый источник постоянного тока. Преобразователь моделируется с использованием МОП-транзисторов, а не идеальных переключателей, чтобы гарантировать правильное представление сопротивлений устройства. Отклик преобразователя от опорного напряжения к измеренному напряжению включает в себя МОП-переключатели. Конструкция ПИД требует линейной модели системы от опорного напряжения до измеренного напряжения. Однако из-за переключателей автоматическая линеаризация приводит к нулевой системе. В этом примере с помощью PID-тюнера можно определить линейную модель системы с помощью моделирования вместо линеаризации.
Дополнительные сведения о создании модели конвертера баков см. в разделе Конвертер баков (Simscape Electrical).
open_system('scdbuckconverter') sim('scdbuckconverter')

Модель сконфигурирована с опорным напряжением, которое переключается от 15 до 25 вольт на 0,004 секунды, и током нагрузки, который активен от 0,0025 до 0,005 секунды. Контроллер инициализируется с усилениями по умолчанию и приводит к перегрузке и медленному времени установки.
open_system('scdbuckconverter/Scope 1') open_system('scdbuckconverter/Scope 2')


Для открытия тюнера PID в подсистеме контроллера обратной связи откройте диалоговое окно блока контроллера PID и нажмите кнопку Tune. PID-тюнер указывает, что модель не может быть линеаризована и возвращает нулевую систему.

PID Tuner предоставляет несколько альтернатив в случае сбоя линеаризации. В раскрывающемся списке Завод можно выбрать один из следующих методов:
Импорт (Import) - импорт линейной модели из рабочего пространства MATLAB.
Релинеаризация замкнутого цикла (Re-linearize Closed Loop) - линеаризация модели при различных моментальных снимках моделирования.
Определить новый завод (Identify New Plant) - определение модели завода с использованием измеренных данных.
В этом примере щелкните Определить новое растение (Identify New Plant), чтобы открыть инструмент Идентификация растения (Plant Identification). Для идентификации завода необходимо указать конечное значение времени остановки модели Simulink.

Чтобы открыть инструмент, моделирующий модель для сбора данных для идентификации завода, на вкладке Идентификация завода (Plant Identification) щелкните Получить данные ввода-вывода (Get I/O Data) > Смоделировать данные (Simulate Data).

На закладке Simulate I/O Data (Моделирование данных ввода-вывода) можно смоделировать завод, отображаемый контроллером. Программное обеспечение временно:
Удаляет блок контроллера PID из модели.
Вводит сигнал, где используется выходной сигнал блока PID.
Измеряет результирующий сигнал, в котором использовался вход блока PID.
Эти данные описывают реакцию установки, наблюдаемую контроллером. Тюнер PID использует эти данные ответа для оценки линейной модели установки.
Сконфигурируйте входной сигнал как ступенчатый вход со следующими свойствами:
Время выборки
() = 5e-6 - Частота выборки контроллера.
Offset
() = 0.51 - значение выходного смещения, которое переводит преобразователь в состояние, когда выходное напряжение близко к 15V, и дает рабочую точку, вокруг которой нужно настроить контроллер.
Время начала
() = 0,003 - задержка, позволяющая преобразователю достичь 15V установившегося состояния до применения ступенчатого изменения.
Step Amplitude
() = 0.4 - Размер выходного сигнала контроллера (входного сигнала установки), применяемого к модели. Это значение добавляется к значению смещения
таким образом, что фактический ввод завода изменяется от 0,51 до 0,91. Выход контроллера (вход установки) ограничен диапазоном [0,01 0,95].


Выберите «Показать входной ответ», «Показать отклик смещения» и «Показать идентификационные данные». Затем нажмите кнопку Run Simulation (Выполнить моделирование). График «Идентификация завода» обновлен.

Красная кривая - это отклик смещения. Отклик смещения - отклик установки на постоянный вход.
Ответ показывает, что модель имеет некоторые переходные процессы с постоянным входом, в частности:
Второй диапазон [0 0,001], в котором преобразователь достигает 15V установившегося состояния. Напомним, что этот сигнал является сигналом ошибки управления и, следовательно, падает до нуля по мере достижения установившегося состояния.
Второй диапазон [0,0025 0,004], в котором преобразователь реагирует на прикладываемую нагрузку тока, в то время как опорное напряжение поддерживается на уровне 15V.
Точка 0,004 секунды, в которой сигнал опорного напряжения изменяется с 15V на 25V, что приводит к увеличению сигнала ошибки управления.
Второй диапазон [0,005 0,006], в котором преобразователь реагирует на снимаемую токовую нагрузку.
Синяя кривая показывает полный отклик установки, который содержит вклад от начальных переходных процессов (значительный для времени < 0,001 секунды), отклик на циклическую токовую нагрузку (длительность времени от 0,0025 до 0,005 секунды), изменение опорного напряжения (через 0,004 секунды) и отклик на сигнал шагового испытания (поданный в момент времени от 0,003 секунды). Напротив, красная кривая является реакцией только на начальные переходные процессы, шаг опорного напряжения и циклическую токовую нагрузку.
Зеленая кривая - это данные, которые будут использоваться для идентификации завода. Эта кривая представляет собой изменение отклика из-за сигнала ступенчатого теста, который представляет собой разность между синей (входной отклик) и красной (отклик смещения) кривыми с учетом знака отрицательной обратной связи.
Чтобы использовать измеренные данные для идентификации модели завода, щелкните Применить (Apply). Затем для возврата к идентификации завода нажмите кнопку Закрыть.
PID-тюнер идентифицирует модель завода с использованием данных, генерируемых при моделировании модели. Параметры идентифицированного завода настраиваются таким образом, чтобы выявленный отклик завода при наличии измеренного входного сигнала соответствовал измеренному выходному сигналу.

Расчетную модель можно скорректировать вручную. Щелкните и перетащите кривую растения и положение полюса (X), чтобы откорректировать идентифицированный отклик растения так, чтобы он как можно ближе соответствовал идентификационным данным.

Чтобы настроить идентифицированную установку с помощью автоматизированной идентификации, щелкните Автоматическая оценка (Auto Estimate). Отклик автоматической настройки не намного лучше, чем интерактивная настройка. Выявленные заводские и идентификационные данные плохо совпадают. Измените структуру завода, чтобы получить лучшее соответствие.
В раскрывающемся списке Структура (Structure) выберите Неполная пара (Underdamped pair).
Щелкните и перетащите конверт 2-го порядка, чтобы максимально приблизить идентифицированные данные (почти критически затухшие).
Щелкните Автоматическая оценка (Auto Estimate) для точной настройки модели установки.


Чтобы обозначить идентифицированную модель как текущую установку для настройки контроллера, щелкните Применить (Apply). Затем PID Tuner автоматически настраивает контроллер для идентифицированной установки и обновляет график шага эталонного отслеживания.
PID-тюнер автоматически настраивает PID-контроллер для идентифицированной установки. Отклик настроенного контроллера имеет около 5% превышения и время установки около 6 секунд. Щелкните график шага Отслеживание привязок (Reference Tracking), чтобы сделать его текущей фигурой.

Выходной сигнал контроллера является рабочим циклом системы ШИМ и должен быть ограничен значением [0,01 0,95]. Чтобы убедиться, что выходные данные контроллера удовлетворяют этим границам, создайте график усилий контроллера. На вкладке PID Tuner в выпадающем списке Add Plot (Добавить график) в разделе Step (Шаг) щелкните Controller effort (Усилие контроллера). Переместите созданный график усилий контроллера во вторую группу графиков.

На графике усилий контроллера настроенный отклик (сплошная линия) показывает большое контрольное усилие, необходимое в начале моделирования. Чтобы получить время установки около 4 секунд и превышение 9%, отрегулируйте ползунки Время отклика (Response Time) и Переходное поведение (Transient Behavior). Эти регулировки уменьшают максимальное усилие управления до приемлемого диапазона.

Чтобы обновить блок Simulink с помощью настроенных значений контроллера, нажмите кнопку «Обновить блок».
Для подтверждения производительности контроллера PID смоделируйте модель Simulink.

bdclose('scdbuckconverter')