Open-Loop PID Autotuner

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

  • Библиотека:
  • Simulink Control Design

  • Open-Loop PID Autotuner block

Описание

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

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

Чтобы добиться безмодельной настройки, Open-Loop PID Autotuner блок:

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

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

  3. Обновляет ПИД-регулятор блок или пользовательский ПИД-регулятор с помощью настроенных параметров, позволяя проверять эффективность с обратной связью в реальном времени.

Поскольку блок выполняет эксперимент по оценке без разомкнутого контура, не используйте этот блок с нестабильным объектом или объектом с несколькими интеграторами.

Чтобы использовать алгоритм, вам не нужен начальный ПИД-регулятор проекта. Однако у вас должен быть какой-то способ довести объект до номинальной рабочей точки для эксперимента по оценке частотной характеристики. Если у вас есть первоначальный проект контроллера, можно использовать Closed-Loop PID Autotuner. Для сравнения автонастройки ПИД-регулятора с обратной связью и разомкнутым контуром, смотрите, Когда использовать Автонастройки ПИД-регулятора.

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

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

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

Порты

Вход

расширить все

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

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

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

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

Чтобы запустить и остановить процесс автотунирования, предоставьте сигнал в start/stop порт. Когда значение сигнала меняется от:

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

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

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

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

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

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

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

    • Определите длительность эксперимента заранее. Консервативная оценка длительности эксперимента - 200/ ωc для настройки с обратной связью или 100/ ωc для настройки разомкнутого контура, где ωc - целевая полоса пропускания.

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

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

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

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

Задайте значение для Target bandwidth (rad/sec) параметр. Смотрите этот параметр для получения дополнительной информации.

Зависимости

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

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

Задайте значение для Target phase margin (degrees) параметр. Смотрите этот параметр для получения дополнительной информации.

Зависимости

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

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

Задайте значение для Sine Amplitudes параметр. Смотрите этот параметр для получения дополнительной информации.

Зависимости

Чтобы включить этот порт, на вкладке Эксперимент, рядом с Sine Amplitudes, выберите Use external source.

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

Задайте значение для Step Amplitude параметр. Смотрите этот параметр для получения дополнительной информации.

Зависимости

Чтобы включить этот порт, на вкладке Эксперимент, рядом с Step Amplitudes, выберите Use external source.

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

Выход

расширить все

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

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

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

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

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

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

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

Если у вас есть ПИД-регулятор, связанная с блоком, можно обновить этот контроллер этими значениями после завершения эксперимента. Для этого на вкладке Block нажмите Update PID Block.

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

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

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

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

Зависимости

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

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

Зависимости

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

Если вы выбираете Estimate DC gain with step signal на вкладке Эксперимент, блок оценивает коэффициент усиления постоянного тока объекта путем включения сигнала шага в введенное возмущение. Когда эксперимент останавливается, блок обновляет этот порт с предполагаемым значением усиления постоянного тока.

Зависимости

Чтобы включить этот порт, на вкладке Эксперимент выберите Plant DC Gain.

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

Зависимости

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

Параметры

расширить все

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Чтобы выполнить настройку ПИД, блок измеряет информацию частотной характеристики до частоты, в 10 раз превышающей целевую полосу пропускания. Чтобы гарантировать, что эта частота - меньше, чем частота Найквиста, целевая пропускная способность, ωc, должна удовлетворить <reservedrangesplaceholder4> <reservedrangesplaceholder3>  0.3 , где <reservedrangesplaceholder2> <reservedrangesplaceholder1> - шаг расчета контроллера, когда Вы определяете с Controller sample time (sec) параметр.

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

Совет

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

Зависимости

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

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

Параметры блоков: DiscreteTs
Тип: скаляр
Значение положительная скалярная величина | -1
По умолчанию: 0.1

Даже когда вы настраиваете контроллер непрерывного времени, вы должны задать шаг расчета для эксперимента, выполненного блоком. В целом настройка контроллера в непрерывном времени не рекомендуется для автонастройки ПИД-регулятора в отношении физического объекта. Если вы хотите настроить за непрерывное время против модели Simulink объекта, используйте быстрый шаг расчета эксперимента, такой как 0 .02/ ωc.

Зависимости

Этот параметр активируется, когда Time Domain 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

Tsz1

Backward Euler

Tszz1

Trapezoidal

Ts2z+1z1

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

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

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

Зависимости

Этот параметр активируется, когда Time Domain 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

Tsz1

Backward Euler

Tszz1

Trapezoidal

Ts2z+1z1

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

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

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

Зависимости

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

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

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

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

Чтобы выполнить настройку ПИД, блок autotuner измеряет информацию частотной характеристики до частоты, в 10 раз превышающей целевую полосу пропускания. Чтобы гарантировать, что эта частота - меньше, чем частота Найквиста, целевая пропускная способность, ωc, должна удовлетворить <reservedrangesplaceholder5> <reservedrangesplaceholder4>  0.3, где Ts - шаг расчета контроллера, когда Вы определяете с Controller sample time (sec) параметром. Из-за этого условия самое быстрое время нарастания, который вы можете применить для настройки, - это около 1,67 Ts. Если это время подъема не соответствует вашим целям проекта, рассмотрите уменьшение Ts.

Чтобы обеспечить целевую пропускную способность через вход порт, выберите Use external source.

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

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

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

Чтобы обеспечить целевой запас по фазе через порт входа, выберите Use external source.

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

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

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

Во время эксперимента по настройке блок вводит синусоидальный сигнал в объект на частотах [1/3, 1, 3, 10] ωc , где ωc является целевой шириной полосы для настройки. Используйте Sine Amplitudes, чтобы задать амплитуду каждого из этих инжектированных сигналов. Задайте a:

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

  • Вектор длины 4 чтобы задать разную амплитуду у каждого из [1/3, 1, 3, 10] ωc

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

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

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

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

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

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

  • Насколько изменяется реакция объекта в ответ на заданный вход привода в номинальной рабочей точке для настройки. Для образца предположим, что вы настраиваете ПИД-регулятор, используемую в скорость вращения двигателя управлении. Вы определили, что на частотах вокруг целевой полосы пропускания изменение угла дросселя на 1 ° вызывает изменение скорости вращения двигателя приблизительно на 200 об/мин. Предположим далее, что для сохранения линейной эффективности скорость не должна отклоняться более чем на 100 об/мин от номинальной рабочей точки. В этом случае выберите амплитуду, чтобы убедиться, что сигнал возмущения не больше 0,5 (принимая, что значение находится в пределах пределов привода ).

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

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

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

Параметры блоков: AmpSine
Тип: скаляр, вектор длины 4
По умолчанию: 1

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

Внимание

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

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

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

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

Если Estimate DC gain with step signal выбран, блок оценивает коэффициент усиления постоянного тока, вводя сигнал шага в объект. Используйте этот параметр, чтобы задать амплитуду сигнала. Факторы для выбора амплитуды шага те же, что факторы для определения Sine Amplitudes.

Чтобы обеспечить амплитуду шага через порт входа, выберите Use external source.

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

Зависимости

Этот параметр активируется, когда Estimate DC gain with step signal выбран.

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

Параметры блоков: AmpStep
Тип: скаляр
По умолчанию: 1
Блок»

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

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

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

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

Внимание

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

  • В редакторе моделей: В Configuration Parameters, в Code Generation > Optimization, установите поведение параметра Default равным Tunable.

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

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

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

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

Выбор этого параметра влияет только на строение блоков для совместимости с Simulink PLC Coder. Параметр не имеет рабочего эффекта по сгенерированному коду.

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

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

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

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

Чтобы записать настроенные усиления из блока autotuner в ПИД-регулятор в любом месте модели, целевой блок должен быть либо:

  • Блок PID Controller или Discrete PID Controller.

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

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

Чтобы записать настроенные усиления из блока autotuner в ПИД-регулятор в любом месте модели, целевой блок должен быть либо:

  • Блок PID Controller или Discrete PID Controller.

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

Зависимости

Этот параметр активируется, когда Clicking "Update PID Block" writes tuned gains to the PID block connected to "u" port выбран.

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

Можно обновить блок ПИД во время симуляции, в том числе при запуске в режиме external mode. Это полезно для немедленной проверки настроенных коэффициентов ПИД. В любой момент во время симуляции можно изменить параметры, начать эксперимент снова и подтолкнуть новые настроенные усиления к блоку PID. Затем можно продолжить запуск модели и наблюдать за поведением своего объекта.

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

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

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

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

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

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

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

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

  • PlantDCGain - расчетный коэффициент усиления постоянного тока системы в абсолютных модулях, если во время настройки выбран Estimate DC gain with step signal.

Можно экспортировать в рабочее пространство MATLAB во время выполнения симуляции, в том числе при запуске во режиме external mode.

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.

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

.
Введенный в R2017b