exponenta event banner

Автоматический запуск PID с замкнутым контуром

Автоматическая настройка коэффициентов усиления PID на основе частотных характеристик установки, оцененных по результатам эксперимента с замкнутым контуром в реальном времени

  • Библиотека:
  • Проект управления Simulink

  • Closed-Loop PID Autotuner block

Описание

Блок Autotuner PID с замкнутым контуром позволяет настраивать PID-контроллер в режиме реального времени по отношению к физическому заводу, для которого имеется начальный PID-контроллер, обеспечивающий стабильный цикл. Установка остается под замкнутым контролем начального ПИД-контроллера в течение всего процесса автотренирования. Блок может настраивать PID-контроллер для достижения заданной полосы пропускания и запаса по фазе без параметрической модели установки. Если у вас есть продукт для генерации кода, такой как Simulink ® Coder™, вы можете создать код, который реализует алгоритм настройки на оборудовании, позволяя настраиваться в режиме реального времени с помощью или без использования Simulink для управления процессом автоматической настройки.

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

Для обеспечения безмодельной настройки блок Autotuner PID с замкнутым контуром:

  1. Ввод тестового сигнала в установку для сбора входных-выходных данных установки и оценки частотной характеристики в реальном времени. Тестовый сигнал представляет собой комбинацию синусоидальных сигналов возмущения, добавленных на вход установки.

  2. В конце эксперимента настраивают параметры ПИД-контроллера на основе оцененных частотных характеристик установки вблизи целевой полосы пропускания.

  3. Обновление блока PID Controller или пользовательского PID-контроллера с помощью настроенных параметров, что позволяет проверять производительность по замкнутому циклу в реальном времени.

В отличие от блока Autotuner PID с открытым контуром, цикл остается замкнутым на протяжении всего эксперимента. Сохранение замкнутого контура помогает поддерживать безопасную работу установки во время оценочного эксперимента.

Блок автоматической настройки PID с замкнутым контуром можно использовать для настройки PID-контроллеров для:

  • Любое стабильное растение

  • Любая установка непрерывного времени с одним или несколькими интеграторами (полюсами при s = 0) или одной или несколькими парами комплексных полюсов на воображаемой оси

  • Любая дискретно-временная установка с одним или несколькими интеграторами (полюсами при z = -1) или парами комплексных полюсов на единичной окружности | z | = 1

Если у вас нет начального контроллера PID, вы можете использовать блок автоотюнера PID с разомкнутым контуром для его получения. Затем можно переключиться на автозапуск PID с замкнутым контуром для уточнения или повторного выполнения.

Блок поддерживает создание кода с помощью Simulink Coder, Embedded Coder ® и Simulink PLC Coder™. Он не поддерживает генерацию кода с помощью HDL Coder™.

Для получения дополнительной информации об использовании блока Autotuner PID с замкнутым контуром см.:

Дополнительные общие сведения об автоматическом запуске PID и сравнении подходов с замкнутым и разомкнутым контуром см. в разделе Когда использовать автоматический запуск PID.

Порты

Вход

развернуть все

Вставьте блок в систему таким образом, чтобы этот порт принимал управляющий сигнал от источника. Как правило, этот порт принимает сигнал от контроллера PID в системе.

Типы данных: single | double

Подключите этот порт к выходу завода.

Типы данных: single | double

Для запуска и остановки процесса автозапуска необходимо подать сигнал на start/stop порт. При изменении значения сигнала с:

  • Отрицательный или нулевой до положительного, эксперимент начинается

  • Положительный на отрицательный или нулевой, эксперимент прекращается

Когда эксперимент не выполняется, блок пропускает сигналы без изменений от u до u + Δu. В этом состоянии блок не влияет на поведение установки или контроллера.

Обычно можно использовать сигнал, который изменяется с 0 на 1, чтобы начать эксперимент, и с 1 на 0, чтобы остановить его. При конфигурировании сигнала запуска/останова необходимо учитывать следующие моменты:

  • Начать эксперимент, когда установка находится в требуемой рабочей точке равновесия. Используйте начальный контроллер для перемещения установки в рабочую точку. Если у вас нет начального контроллера (только настройка с разомкнутым контуром), вы можете использовать исходный блок, подключенный к u, для перемещения установки в рабочую точку.

  • Во время эксперимента следует избегать любых нарушений нагрузки на установку. Нарушение нагрузки может исказить производительность установки и снизить точность оценки частотно-отклика.

  • Пусть эксперимент работает достаточно долго, чтобы алгоритм собрал достаточные данные для хорошей оценки на всех частотах, которые он зондирует. Есть два способа определить, когда остановить эксперимент:

    • Заранее определите продолжительность эксперимента. Консервативная оценка продолжительности эксперимента составляет 200/λ c для настройки с замкнутым контуром, или 100/startc для настройки с разомкнутым контуром, где startc - целевая полоса пропускания.

    • Наблюдайте за сигналом на % conv и прекратить эксперимент, когда сигнал стабилизируется около 100%.

  • Когда вы останавливаете эксперимент, блок вычисляет настроенные коэффициенты усиления PID и обновляет сигнал в pid gains порт.

Вы можете настроить любую логику, подходящую для вашего приложения, чтобы контролировать время начала и окончания эксперимента.

Типы данных: single | double

Введите значение для Target bandwidth (rad/sec) параметр. Дополнительные сведения см. в этом параметре.

Зависимости

Чтобы включить этот порт, на вкладке Настройка рядом с Target bandwidth (rad/sec)выберите Использовать внешний источник.

Типы данных: single | double

Введите значение для Target phase margin (degrees) параметр. Дополнительные сведения см. в этом параметре.

Зависимости

Чтобы включить этот порт, на вкладке Настройка рядом с Target phase margin (degrees)выберите Использовать внешний источник.

Типы данных: single | double

Введите значение для Sine Amplitudes параметр. Дополнительные сведения см. в этом параметре.

Зависимости

Чтобы включить этот порт, на вкладке «Эксперимент» рядом с Sine Amplitudesвыберите Использовать внешний источник.

Типы данных: single | double

Продукция

развернуть все

Вставьте блок в систему таким образом, чтобы этот порт подавал входной сигнал на завод.

  • При выполнении эксперимента (start/stop ), блок вводит тестовые сигналы в установку в этом порту. Если имеется какой-либо предел насыщения или скорости, защищающий растение, подавайте в него сигнал от u + Δu.

  • Когда эксперимент не выполняется (start/stop нуль или минус), блок пропускает сигналы без изменений от u до u + Δu.

Зависимости

Чтобы включить этот порт, в окне «Output Signal Configuration» (Конфигурация выходного сигнала) выберите элемент управления + возмущение.

Типы данных: single | double

Блок генерирует сигнал возмущения на этом порте. Как правило, вы вводите возмущение из этого порта через блок суммирования, как показано на следующей диаграмме.

  • Когда эксперимент выполняется (положительный старт/стоп), блок генерирует сигналы возмущения на этом порте.

  • Если эксперимент не выполняется (нулевой или отрицательный старт/стоп), сигнал на этом порту равен нулю. В этом состоянии блок не оказывает влияния на растение.

Зависимости

Чтобы включить этот порт, в поле Output Signal Configuration (Конфигурация выходного сигнала) выберите только возмущение.

Типы данных: single | double

При выполнении эксперимента (start/stop положительный), блок вводит тестовые сигналы в установку и измеряет реакцию установки при y. Эти сигналы используются для оценки частотной характеристики установки на нескольких частотах вокруг целевой полосы пропускания для настройки. % conv указывает, насколько близка к завершению оценка частотной характеристики установки. Обычно это значение быстро повышается до примерно 90% после начала эксперимента, а затем постепенно сходится к более высокому значению. Остановите эксперимент, когда он выровняется около 100%.

Типы данных: single | double

Этот 4-элементный сигнал шины содержит настроенные коэффициенты усиления PID P, I, D и коэффициент фильтрации N. Эти значения соответствуют P, I, D, и N параметры в выражениях, приведенных в Form параметр. Первоначально значения равны 0, 0, 0 и 100 соответственно. Блок обновляет значения по окончании эксперимента. Этот сигнал шины всегда имеет четыре элемента, даже если вы не настраиваете контроллер PIDF.

Если с блоком связан контроллер PID, его можно обновить этими значениями после завершения эксперимента. Для этого на вкладке «Блок» нажмите «Обновить блок PID».

Типы данных: single | double

Этот порт выводит оцененный запас по фазе, достигаемый настроенным контроллером, в градусах. Блок обновляет это значение по окончании эксперимента настройки. Расчетный запас по фазе вычисляется из угла G (j, с) C (j, с), где G - расчетная установка, C - настроенный контроллер, и, с - перекрестная частота (полоса пропускания). Предполагаемый запас фазы может отличаться от целевого запаса фазы, указанного Target phase margin (degrees) параметр. Это показатель надежности и стабильности, достигаемых настроенной системой.

  • Обычно оцененный запас фазы находится вблизи целевого запаса фазы. В общем, чем больше значение, тем надежнее настроенная система, и тем меньше перегрузка.

  • Отрицательный запас фазы указывает на то, что система с замкнутым контуром может быть нестабильной.

Зависимости

Чтобы включить этот порт, на вкладке Tuning выберите Output estimated phase margin accounted by tuned controller.

Этот порт выводит данные частотного отклика, оцененные в ходе эксперимента. Первоначально значение при frd равно [0, 0, 0, 0, 0]. В ходе эксперимента блок вводит сигналы на частотах [1/10, 1/3, 1, 3, 10] startc, где startc - целевая полоса пропускания. Во время каждого примера во время эксперимента блок обновляетсяfrd с вектором, содержащим комплексную частотную характеристику на каждой из этих частот, соответственно. Можно использовать ход выполнения ответа в качестве альтернативы % conv для изучения сходимости оценки. Когда эксперимент прекращается, блок обновляется frd с конечной оцененной частотной характеристикой, используемой для вычисления коэффициентов усиления PID.

Зависимости

Чтобы включить этот порт, на вкладке Experiment выберите Plant frequency responses near bandwidth.

Этот порт выводит вектор, содержащий входной сигнал установки (u + Δu) и выходной сигнал установки (y), когда начинается эксперимент. Эти значения представляют собой входные и выходные данные установки в номинальной рабочей точке, в которой блок выполняет эксперимент.

Зависимости

Чтобы включить этот порт, на вкладке Experiment выберите Plant nominal input and output.

Параметры

развернуть все

Вкладка «Настройка»

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

  • P - Только пропорциональный

  • I - Только интегральный

  • PI - Пропорциональный и интегральный

  • PD - Пропорциональная и производная

  • PDF - Пропорциональный и производный с производным фильтром

  • PID - Пропорциональная, интегральная и производная

  • PIDF - Пропорциональная, интегральная и производная с производным фильтром

При обновлении блока контроллера PID или пользовательского контроллера PID с настроенными значениями параметров убедитесь, что тип контроллера совпадает.

Настраиваемый: Да

Программное использование

Параметр блока: PIDType
Текст: символьный вектор
Значения: 'P' | 'I' | 'PI' | 'PD' | 'PDF' | 'PID' | 'PIDF'
По умолчанию: 'PI'

Укажите форму контроллера. Форма контроллера определяет интерпретацию PID коэффициентов P, I, D и N.

  • Parallel - В Parallel функция передачи дискретно-временного контроллера PIDF:

    C = P + IFi (z) + D [N1 + NFd (z)],

    где Fi (z) и Fd (z) являются формулами интегратора и фильтра ( см.Integrator method и Filter method). Передаточная функция параллельного ПИДФ контроллера непрерывного времени:

    C = P + I (1 с) + D (Nss + N).

    Другие действия контроллера равняются установке P, I или D в нуль.

  • Ideal - В Ideal функция передачи дискретно-временного контроллера PIDF:

    C = P [1 + IFi (z) + D (N1 + NFd (z))].

    Передаточная функция контроллера PIDF идеальной формы непрерывного времени:

    C = P [1 + I (1 с) + D (Nss + N)].

    Другие действия контроллера равносильны установке D на ноль или установке, I на Inf. (В идеальной форме контроллер должен иметь пропорциональное действие.)

При обновлении блока контроллера PID или пользовательского контроллера PID с настроенными значениями параметров убедитесь, что форма контроллера соответствует.

Настраиваемый: Да

Программное использование

Параметр блока: PIDForm
Текст: символьный вектор
Значения: 'Parallel' | 'Ideal'
По умолчанию: 'Parallel'

Укажите, является ли ПИД-контроллер дискретным или непрерывным.

  • Для дискретного времени необходимо указать время выборки контроллера PID с помощью параметра Controller sample time (sec).

  • Для непрерывного времени необходимо также указать время выборки для эксперимента с автоматическим запуском PID с помощью параметра Experiment sample time (sec).

Программное использование

Параметр блока: TimeDomain
Текст: символьный вектор
Значения: 'discrete-time' | 'continuous-time'
По умолчанию: 'discrete-time'

Укажите время выборки контроллера PID в секундах. Это значение также устанавливает время выборки для эксперимента, выполняемого блоком.

Для выполнения настройки PID блок измеряет частотно-ответную информацию до частоты, в 10 раз превышающей целевую полосу пропускания. Чтобы гарантировать, что эта частота - меньше, чем частота Найквиста, целевая пропускная способность, ωc, должна удовлетворить ωcTs ≤ 0.3, где Ts ωc - время образца диспетчера, когда Вы определяете с Controller sample time (sec) параметр.

При обновлении блока контроллера PID или пользовательского контроллера PID с настроенными значениями параметров убедитесь, что время выборки контроллера совпадает.

Совет

Если необходимо запустить развернутый блок с различными временами выборки в приложении, установите для этого параметра значение -1 и поместите блок в триггерную подсистему. Затем запустите подсистему в требуемое время выборки. Если вы не планируете изменять время выборки после развертывания, укажите фиксированное и конечное время выборки.

Зависимости

Чтобы включить этот параметр, установите для параметра Time Domain значение discrete-time.

Программное использование

Параметр блока: DiscreteTs
Тип: скаляр
Положительное значение скаляра | -1
По умолчанию: 0,1

Включите этот параметр для выполнения настройки с частотой выборки, которая отличается от частоты выборки настраиваемого PID-контроллера и эксперимента по оценке частотного отклика, выполняемого блоком. Алгоритм настройки усиления PID является интенсивным в вычислительном отношении, и когда требуется развернуть блок на аппаратные средства и настроить контроллер с быстрым временем выборки, некоторые аппаратные средства могут не завершить вычисление усиления PID за один шаг времени. Чтобы снизить требования к пропускной способности оборудования, укажите время выборки настройки медленнее, чем время выборки контроллера, используя параметр Tuning sample time (sec).

Зависимости

Чтобы включить этот параметр, установите для параметра Time Domain значение discrete-time.

Программное использование

Параметр блока: UseTuningTs
Текст: символьный вектор
Стоимость 'off' | 'on'
По умолчанию: 'off'

Укажите время выборки алгоритма настройки в секундах.

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

Зависимости

Чтобы включить этот параметр, установите для параметра Time Domain значение discrete-time и выберите Настроить в разное время.

Программное использование

Параметр блока: TuningTs
Тип: скаляр
Значение положительного скаляра
По умолчанию: 0.2

Даже при настройке контроллера непрерывного времени необходимо указать время выборки для эксперимента, выполняемого блоком. Как правило, настройка контроллера с непрерывным временем не рекомендуется для автоматического запуска PID на физическом предприятии. Если вы хотите настроить непрерывное время в зависимости от модели завода Simulink, используйте быстрое время выборки эксперимента, например 0,02/λ c.

Зависимости

Этот параметр активизируется при значении временной области continuous-time.

Программное использование

Параметр блока: ContinuousTs
Тип: положительный скаляр
По умолчанию: 0.02

Укажите формулу дискретного интегрирования для термина интегратора в контроллере. За дискретное время передаточная функция ПИД-контроллера, принимаемая блоком, составляет:

C = P + IFi (z) + D [N1 + NFd (z)],

в параллельной форме или в идеальной форме,

C = P [1 + IFi (z) + D (N1 + NFd (z))].

Для времени Ts выборки контроллера Integrator method параметр определяет формулу Fi следующим образом:

Метод интегратораFi
Forward Euler

Цз 1

Backward Euler

Цз 1

Trapezoidal

Ts2z+1z−1

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

При обновлении блока контроллера PID или пользовательского контроллера PID с настроенными значениями параметров убедитесь, что метод интегратора соответствует.

Настраиваемый: Да

Зависимости

Этот параметр активизируется при значении временной области discrete-time и контроллер включает в себя интегральное действие.

Программное использование

Параметр блока: IntegratorFormula
Текст: символьный вектор
Значения: 'Forward Euler' | 'Backward Euler' | 'Trapezoidal'
По умолчанию: 'Forward Euler'

Укажите формулу дискретного интегрирования для термина фильтра производных в контроллере. За дискретное время передаточная функция ПИД-контроллера, принимаемая блоком, составляет:

C = P + IFi (z) + D [N1 + NFd (z)],

в параллельной форме или в идеальной форме,

C = P [1 + IFi (z) + D (N1 + NFd (z))].

Для времени Ts выборки контроллера Filter method параметр определяет формулу Fd следующим образом:

Метод фильтрацииFd
Forward Euler

Цз 1

Backward Euler

Цз 1

Trapezoidal

Ts2z+1z−1

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

При обновлении блока контроллера PID или пользовательского контроллера PID с настроенными значениями параметров убедитесь, что метод фильтра соответствует.

Настраиваемый: Да

Зависимости

Этот параметр активизируется при значении временной области discrete-time и контроллер включает в себя член производного фильтра.

Программное использование

Параметр блока: FilterFormula
Текст: символьный вектор
Значения: 'Forward Euler' | 'Backward Euler' | 'Trapezoidal'
По умолчанию: 'Forward Euler'

Целевая полоса пропускания, указанная в градусах/сек, является целевым значением для частоты пересечения 0-dB усиления настроенного отклика CP с разомкнутым контуром, где P - ответ установки, а C - ответ контроллера. Эта частота пересечения приблизительно задает полосу пропускания управления. Для разовые повышением τ секунды, хорошее предположение для целевой пропускной способности - 2/τ радиус/секунда.

Для выполнения настройки PID блок autotuner измеряет частотно-ответную информацию до частоты, в 10 раз превышающей целевую полосу пропускания. Для того, чтобы эта частота была меньше частоты Найквиста, целевая полоса пропускания, (, в), должна удовлетворять ≤ 0.3, где Ts - время выборки контроллера, указанное с параметром Время выборки контроллера (с). Из-за этого условия самое быстрое время подъема, которое можно принудительно применить для настройки, - это примерно 1.67Ts. Если это время подъема не соответствует целям проектирования, рассмотрите возможность уменьшения Ts.

Для получения наилучших результатов при настройке с замкнутым контуром используйте целевую полосу пропускания, которая находится в пределах приблизительно 10-кратного коэффициента полосы пропускания, с исходным ПИД-контроллером. Чтобы настроить контроллер на большее изменение пропускной способности, выполните пошаговую настройку с использованием меньших изменений.

Для предоставления целевой полосы пропускания через входной порт выберите Use external source.

Программное использование

Параметр блока: Bandwidth
Тип: положительный скаляр
По умолчанию: 1

Укажите целевой минимальный запас по фазе для настроенного отклика с разомкнутым контуром на перекрестной частоте. Целевой запас фазы отражает требуемую надежность настроенной системы. Обычно значение выбирается в диапазоне около 45 ° -60 °. В целом, более высокий запас по фазе улучшает превышение, но может ограничить скорость отклика. Значение по умолчанию, 60 °, стремится сбалансировать производительность и надежность, давая около 5-10% превышения, в зависимости от характеристик вашего завода.

Для обеспечения целевого запаса фазы через входной порт выберите Use external source.

Настраиваемый: Да

Программное использование

Параметр блока: TargetPM
Тип: скаляр
Значения: 0-90
По умолчанию: 60
Вкладка «Эксперимент»

Укажите, является ли завод стабильным или интегрированным. Если на заводе имеется один или несколько интеграторов, выберите Integrating.

Программное использование

Параметр блока: PlantType
Текст: символьный вектор
Значения: 'Stable' | 'Integrating'
По умолчанию: 'Stable'

Укажите, является ли завод положительным или отрицательным. Если положительное изменение на входе в установку в номинальной рабочей точке приводит к положительному изменению на выходе установки, укажите Positive. В противном случае укажите отрицательное значение. Для стабильных растений признаком растения является признак усиления постоянного тока растения.

Программное использование

Параметр блока: PlantSign
Текст: символьный вектор
Значения: 'Positive' | 'Negative'
По умолчанию: 'Positive'

В ходе эксперимента блок вводит синусоидальный сигнал в установку на частотах [1/10, 1/3, 1, 3, 10] startc , где startc - целевая полоса пропускания для настройки. Используйте синусоидальные амплитуды, чтобы задать амплитуду каждого из этих введенных сигналов. Укажите:

  • Скалярное значение для ввода одинаковой амплитуды на каждой частоте

  • Вектор длины 5 для задания различной амплитуды при каждом из [1/10, 1/3, 1, 3, 10]

В типичной установке с типичной целевой полосой пропускания величины откликов установки на частотах эксперимента не варьируют в широких пределах. В таких случаях можно использовать скалярное значение, чтобы применить одно и то же возмущение величины на всех частотах. Однако, если известно, что отклик резко затухает в диапазоне частот, рассмотрите возможность уменьшения амплитуды низкочастотных входов и увеличения амплитуды высокочастотных входов. Количественно лучше для оценочного эксперимента, когда все реакции растений имеют сопоставимые величины.

Амплитуды возмущений должны быть:

  • Достаточно большой, чтобы возмущение преодолело любой диапазон нечувствительности в приводе установки и генерировало отклик выше уровня шума

  • Достаточно мало для поддержания работы установки в пределах приблизительно линейной области вблизи номинальной рабочей точки и во избежание насыщения вводимой или выводимой мощности установки

В эксперименте синусоидальные сигналы накладываются друг на друга. Таким образом, возмущение может быть, по меньшей мере, равно сумме всех амплитуд. Убедитесь, что наибольшее возможное возмущение находится в пределах диапазона привода установки. Насыщение исполнительного механизма может привести к ошибкам в расчетной частотной характеристике.

Для обеспечения синусоидальных амплитуд через входной порт выберите Use external source.

Настраиваемый: Да

Программное использование

Параметр блока: AmpSine
Тип: скаляр, вектор длиной 5
По умолчанию: 1
Вкладка «Блок»

Блок содержит два модуля, один из которых выполняет оценку частотного отклика в реальном времени, а другой использует результирующий оценочный отклик для настройки коэффициентов усиления PID. При запуске модели Simulink, содержащей блок в режиме внешнего моделирования, по умолчанию развертываются оба модуля. Память на целевом оборудовании можно сохранить, развернув только модуль оценки (см. раздел Управление автоматическим запуском PID в режиме реального времени в Simulink). В этом случае алгоритм настройки выполняется на хост-компьютере Simulink вместо целевого оборудования. При выборе этой опции развернутый алгоритм использует примерно на треть столько же памяти, сколько при сбросе этой опции.

Вычисление коэффициента усиления PID требует большей вычислительной нагрузки, чем оценка частотного отклика. Для быстрого времени выборки контроллера некоторые аппаратные средства могут не завершить вычисление коэффициента усиления в течение одного цикла выполнения. Поэтому при использовании оборудования с ограниченной вычислительной мощностью выбор этого параметра позволяет настроить PID-контроллер с быстрым временем выборки.

Кроме того, при включении этой опции может возникнуть задержка в несколько периодов выборки между завершением эксперимента настройки и приходом новых коэффициентов усиления PID к выходному порту коэффициента усиления pid. Перед подачей коэффициентов усиления на контроллер сначала подтвердите изменение в выходном порту коэффициентов усиления pid вместо использования сигнала запуска/остановки в качестве триггера для обновления.

Если предполагается развернуть блок и выполнить настройку PID без использования режима внешнего моделирования, не выбирайте эту опцию.

Внимание

При использовании этой опции модель должна быть настроена таким образом, чтобы числовые параметры блока были настраиваемыми в сгенерированном коде, а не встроенными. Чтобы указать настраиваемые параметры:

  • В редакторе модели «Параметры конфигурации» в меню «Создание кода» > «Оптимизация» задайте для параметра «Поведение по умолчанию» значение Tunable.

  • В командной строке: Использовать set_param(mdl,'DefaultParameterBehavior','Tunable').

Программное использование

Параметр блока: DeployTuningModule
Текст: символьный вектор
Значения: 'off' | 'on'
По умолчанию: 'off'

Выберите этот параметр, если для создания кода блока автотюнера используется кодер ПЛК Simulink. Очистите параметр для генерации кода с помощью любого другого продукта MathWorks ® .

Выбор этого параметра влияет только на конфигурацию внутреннего блока для совместимости с кодером ПЛК Simulink. Параметр не оказывает оперативного влияния на сгенерированный код.

По умолчанию блок принимает управляющий сигнал в качестве входного и выдает управляющий сигнал плюс возмущение эксперимента на порте u + Δu. Затем этот сигнал подается на вход завода, как показано на следующей схеме.

Эта конфигурация по умолчанию требует вставки блока между контроллером и заводом. Если вы хотите добавить сигнал возмущения к управляющему сигналу самостоятельно, выберите только возмущение. В этой конфигурации блочный выход содержит только сигнал возмущения на порте Δu. Этот сигнал возмущения вводится в установку, например, с помощью блока суммирования, как показано на следующей диаграмме.

В этой конфигурации можно дополнительно комментировать блок автоотюнера PID с замкнутым контуром без прерывания работы модели.

Задание точности с плавающей запятой на основе среды моделирования или требований к оборудованию.

Программное использование

Параметр блока: BlockDataType
Текст: символьный вектор
Значения: 'double' | 'single'
По умолчанию: 'double'

При некоторых условиях блок автотюнера может записывать настроенные коэффициенты усиления в стандартный или пользовательский блок контроллера PID. Чтобы указать, что целевой контроллер PID является блоком, подключенным к порту u блока autotuner, выберите эту опцию. Чтобы указать PID-контроллер, который не подключен к u, снимите этот флажок.

Для записи настроенных коэффициентов усиления из блока автотюнера в контроллер PID в любом месте модели целевой блок должен быть следующим:

  • Блок PID-контроллера или дискретного PID-контроллера.

  • Маскированная подсистема, в которой коэффициенты PID являются параметрами маски P, I, D, и N, или какой-либо поднабор этих параметров существует в контроллере. Например, при использовании пользовательского PI-контроллера требуются только параметры маски P и I.

При некоторых условиях блок автотюнера может записывать настроенные коэффициенты усиления в стандартный или пользовательский блок контроллера PID. Этот параметр используется для указания пути к целевому PID-контроллеру.

Для записи настроенных коэффициентов усиления из блока автотюнера в контроллер PID в любом месте модели целевой блок должен быть следующим:

  • Блок PID-контроллера или дискретного PID-контроллера.

  • Маскированная подсистема, в которой коэффициенты PID являются параметрами маски P, I, D, и N, или какое-либо подмножество этих параметров существует в вашем контроллере

Зависимости

Этот параметр активизируется при нажатии кнопки «Update PID Block» (обновить блок PID), когда выбирается настроенный коэффициент усиления блока PID, подключенного к порту «u».

Блок не перемещает автоматически настроенные коэффициенты усиления в целевой блок PID. Если блок контроллера PID соответствует критериям, описанным в Specify PID block path описание параметра, после настройки нажмите эту кнопку, чтобы перенести настроенные коэффициенты усиления в блок.

Блок PID можно обновить во время выполнения моделирования, в том числе во время работы во внешнем режиме. Это полезно для немедленной проверки настроенного усиления PID. В любое время во время моделирования можно изменить параметры, начать эксперимент снова и переместить новые настроенные коэффициенты усиления в блок PID. Затем можно продолжить выполнение модели и наблюдать за поведением завода.

При нажатии этой кнопки блок создает структуру в рабочем пространстве MATLAB ®, содержащую результаты эксперимента и настройки. Эта структура ,OnlinePIDTuningResult, содержит следующие поля:

  • P, I, D, N - Настроенный прирост PID. Структура содержит любое из этих полей, необходимых для настраиваемого типа контроллера. Например, при настройке PI-контроллера структура содержит P и I, но не D и N.

  • TargetBandwidth - значение, указанное в параметре Target bandwidth (rad/sec) блока.

  • TargetPhaseMargin - значение, указанное в параметре Target phase margin (degrees) блока.

  • EstimatedPhaseMargin - Расчетный запас по фазе, достигаемый настроенной системой.

  • Controller - настроенный PID-контроллер, возвращенный как pid (для параллельной формы) или pidstd (для идеальной формы) объект модели.

  • Plant - Расчетный завод, возвращенный как frd объект модели. Это frd содержит данные отклика, полученные на частотах эксперимента [1/10, 1/3, 1, 3, 10 ]

  • PlantNominal - Ввод и вывод установки в номинальной рабочей точке при начале эксперимента, указанной как структура, имеющая поля u (вход) и y (выход).

Можно экспортировать в рабочую область MATLAB во время выполнения моделирования, в том числе во время работы во внешнем режиме.

Расширенные возможности

Создание кода C/C + +
Создайте код C и C++ с помощью Simulink ® Coder™

.

Создание кода ПЛК
Создание структурированного текстового кода с помощью Coder™ Simulink ® PLC

.
Представлен в R2018a