Развертывание блоков автотюнера ПИДа позволяет вам настроить свою систему в режиме реального времени без Simulink® в цикле. Однако может быть полезно запустить автоматически настраивающийся алгоритм на оборудовании при управлении экспериментом от Simulink.
Один способ сделать так состоит в том, чтобы использовать модель, которая содержит ПИД-регулятор и блок автотюнера ПИДа, и запустите эту модель во внешнем режиме симуляции. Режим external mode позволяет связь между Диаграммой Simulink и автономной программой, которая создается из сгенерированного кода. В этом режиме Simulink служит контрольным интерфейсом в реальном времени, в котором можно взаимодействовать с настраивающимся алгоритмом, работающим на оборудовании. Например, можно запустить и остановить эксперимент или настраивающие цели изменения от интерфейса Simulink, в то время как модель запускается.
При настраивании режима external mode можно развернуть алгоритм эксперимента только, такой, что настраивающая часть ПИДа вычисления выполняется в Simulink. Выполнение так может сохранить память на вашем целевом компьютере. Выполнение алгоритма автонастройки ПИД-регулятора в режиме external mode требует продукта генерации кода, такого как Simulink Coder™.
Модель Simulink для автонастройки ПИД-регулятора в режиме external mode напоминает следующий рисунок.
Здесь, блоки отметили Read plant output from hardware
и Write plant input to hardware
представляйте аппаратные интерфейсы, которые считывают данные из или записывают данные к вашему физическому объекту. Когда вы готовы к настройке, вы запускаете эту модель во внешнем режиме симуляции.
При использовании автонастройки ПИД-регулятора во внешнем режиме симуляции не используйте XCP on Serial
коммуникационный интерфейс. Используйте Serial
вместо этого. Задавать коммуникационный интерфейс, в параметрах конфигурации модели, в панели Hardware Implementation:
Выберите свое оборудование из меню Hardware board.
В Hardware board settings, под Target hardware resources, в панели External mode, устанавливает Communication interface на Serial
.
Когда вы используете Open-Loop PID Autotuner, если ваш контроллер включает действие интегратора, полагайте, что сигнал реализации, отслеживающий, избегает завершения интегратора во время настраивающегося эксперимента. Отслеживание сигнала позволяет ПИД-регулятору продолжить отслеживать действительный вход объекта, в то время как это вне цикла. Без него ваша система может испытать удар, когда цикл управления закрывается в конце настраивающего процесса.
Если ваш ПИД-регулятор является блоком Simulink PID Controller, можно использовать параметр Enable tracking mode блока контроллера, чтобы избежать этого удара. Следующая схема иллюстрирует модуль, содержащий блок Open-Loop PID Autotuner и блок PID Controller со сконфигурированным режимом отслеживания. Объект ввел подачу во вход отслеживания блока контроллера.
Для настройки режима external mode вы конфигурируете start-stop
сигнал как описано в Автонастройке ПИД-регулятора для Объекта, Смоделированного в Simulink. Модели, проиллюстрированные здесь, используют простой переключатель с двоичным сигналом запустить и остановить эксперимент вручную.
Вы также конфигурируете параметры контроллера, настраивая цели и параметры эксперимента как описано в Автонастройке ПИД-регулятора для Объекта, Смоделированного в Simulink.
После конфигурирования параметров блоков для эксперимента, в модели, выбирают external mode
, установите время симуляции на бесконечный, и запустите модель.
Simulink компилирует модель и развертывает ее в ваше подключенное оборудование.
Если вы сконфигурировали start/stop
сигнал начаться и закончить настраивающий процесс в конкретные моменты времени, позвольте симуляции пробегать конец эксперимента.
Если вы сконфигурировали ручной start/stop
предупредите, начните эксперимент, когда ваш объект достигнет установившийся. Наблюдайте сигнал в % conv
выведите и остановите эксперимент, когда сигнал стабилизирует близкие 100%.
Когда настройка будет завершена, исследуйте и подтвердите настроенные усиления как описано в Автонастройке ПИД-регулятора для Объекта, Смоделированного в Simulink.
Для более подробного примера, который иллюстрирует использование режима external mode, чтобы управлять процессом автоматической настройки через Simulink, смотрите ПИД-регулятор Мелодии в режиме реального времени Используя Блок Автотюнера ПИДа Разомкнутого цикла.
Блоки автотюнера содержат два модуля, тот, который выполняет оценку частотной характеристики в реальном времени и ту, которая использует получившийся предполагаемый ответ, чтобы настроить коэффициенты ПИД. Когда вы запускаете модель Simulink, содержащую блок во внешнем режиме симуляции, по умолчанию оба модуля развертываются. Можно сохранить память на целевом компьютере путем развертывания модуля оценки только. В этом случае настраивающийся алгоритм работает на хосте - компьютере Simulink вместо целевого компьютера. Для этого используйте опцию Reduce memory and avoid task overrun в блоке автотюнера. Когда эта опция выбрана, развернутое использование алгоритма приблизительно одна треть столько же памяти как тогда, когда опция очищена.
Кроме того, вычисление коэффициента ПИД требует большего количества вычислительной загрузки, чем оценка частотной характеристики. Для быстрых шагов расчета контроллера некоторое оборудование не может закончить вычисление усиления в одном цикле выполнения. Поэтому при использовании оборудования с ограниченной вычислительной мощностью, выбирая эту опцию позволяет вам настроить ПИД-регулятор с быстрым шагом расчета.
Когда вы используете эту опцию, модель должна быть сконфигурирована таким образом, что числовые параметры блоков являются настраиваемыми в сгенерированном коде, не встроенном. Задавать настраиваемые параметры:
В редакторе моделей: В Configuration Parameters, в Code Generation> Optimization, поведение параметра Значения по умолчанию набора к Tunable
.
В командной строке: Используйте set_param(mdl,'DefaultParameterBehavior','Tunable')
.
Closed-Loop PID Autotuner | Open-Loop PID Autotuner