PID регулятор MATLAB может быть настроен функцией pidTuner(). Каждый PID регулятор библиотеки Simulink также содержит механизм настройки параметров. При использовании SISO (Один Вход Один Выход) регуляторов многоконтурное управление рекомендуют выполнять последовательно: переходя от внутреннего контура (местная обратная связь) к внешнему. Но как быть с настройкой многоконтурных систем управления с параллельными или с перекрещивающимися (перекрестными) связями, например, как показано на Рисунок 1 [1], где требуется одновременная настройка блоков?

image

Рисунок 1. Многоконтурная Simulink модель.
Для настройки многоконтурных Simulink моделей в MATLAB имеется приложение “Control System Tuner” image. В этой работе рассматриваются особенности этого настройщика на примере построения двухконтурной системы управления.


Control System Tuner
“Control System Tuner” позволяет настроить любую архитектуру управления содержащую ПИД-регуляторы, коэффициенты усиления и другие элементы. Настройка параметров выполняется в соответствии с требованиями к системе управления, такими как точность отслеживания заданных переменных, подавление помех, обеспечение требуемых запасов устойчивости, и др. (более 20 целевых критериев разного типа).
В примере [1] MATLAB, показанном на Рисунок 1, для настройки модели используются следующие цели управления:
• Отслеживание заданных значений трех переменных с нулевой установившейся ошибкой, с заданным временем нарастания, минимальным перерегулированием и минимальными перекрестными связями.
• Ограничение полосы пропускания, для защиты от высокочастотных вращений ротора и шума измерений.
• Обеспечение многопараметрического запаса по усилению и фазе.

Пример применения Control System Tuner
В этом примере используется приложение Control System Tuner для настройки Simulink модели многоконтурного привода (Рисунок 2) с контурами регулирования по скорости и положению.
Целью управления является отслеживание изменения заданного положения с максимальным быстродействием, без перерегулирования и нулевой установившейся ошибкой.
Привод построен на базе двигателя постоянного тока 89810, 24V [2].
image
Рисунок 2. Simulink модель с двумя контурами регулирования.
Характеристики двигателя 89810, 24V
Us = 24;                % [V]
speed_nom = 2900;       % [rpm]
crnt_nom = 1;           % [A]
R = 7.3;                % [Ohm]
L = 6;                  % [mH]
torq_cnst = 56;         % [mNm/A]
inertia = 75;           % [g*cm2]

Постоянная времени по току 0,8 мс. Электромеханическая постоянная времени (по скорости) 17 мс.
Начальные значения параметров регуляторов PID1 и PID2 равны 1. Насыщение регулятора PID1 равно ±3000 об/мин (максимальная скорость двигателя). Насыщение PID2 регулятора ±24 В (номинальное напряжение питания двигателя). Шаг моделирования 1e-5 с.
Реакция модели на ступенчатое воздействие и изменение скорости при начальных параметрах регуляторов показаны на Рисунок 3.
image
Рисунок 3. Реакция модели на ступенчатое воздействие и изменение положения и скорости при начальных параметрах регуляторов.
Для настройки параметров необходимо открыть приложение “Control System Tuner”, для этого в окне Simulink модели выбираем меню “APPS”  Control Systems  Control System Tuner:
image
Далее, указываем на блоки модели, которые будут настраиваться. Для этого в “Control System Tuner” на вкладке “Tuning” выбираем “Select Blocks”.
image
Затем открываем “Add blocks” и в списке блоков модели выделяем регуляторы PID1 и PID2.
image
Теперь выбираем целевые функции настройки. Поочередно для контуров положения и скорости указываем требования к настройке параметров, которая должна обеспечивать требуемую реакцию системы (блок “Tracking of step commands”). Отличие в применении “Tracking of step commands” заключается в том, что контур скорости настраивается при разомкнутом внешнем контуре.

Открываем Control System Tuner  TUNING  New Goal  TIME-DOMAIN REQUIREMENTS  “Tracking of step commands”.
image
Вводим имена ступенчатого воздействия r и реакции внешнего контура position, и желаемую постоянную времени 0.1 с.
Последовательность ввода (см. рисунок ниже) параметров основного контура включает
Ввод заданного воздействия: Step Tracking Goal  Step Response selection  Specify step-response input  Add signal to list  Select signal from model  Выделение на модели выход r блока ступенчатого воздействия  Add signal to list.
Ввод реакции: Step Tracking Goal  Step Response selection  Specify step-response output  Add signal to list  Select signal from model  Выделение на модели сигнал position  Add signal to list.
Ввод постоянной времени: Step Tracking Goal  Desired Response  Specify as First-order characteristics  Time constant: 0.1 s.

image
Рисунок 4. Результат ввода указаний для настройки параметров внешнего контура.

По аналогии с предыдущим пунктом, вводим имена воздействия u1, реакции speed контура скорости при разорванном контуре положения и указываем желаемую постоянную времени контура скорости 0.02 с. Результат ввода показан на Рисунок 5.
image
Рисунок 5. Результат ввода указаний для настройки параметров контура скорости.
Параметры “Tuning Goals” повторно открываются двойным щелчком по соответствующему
разделу, например “StepTrackingGoal1”.

Запуск настройки параметров системы управления
На вкладке «TUNING» нажимаем image. Настройщик системы управления вычисляет параметры, которые наилучшим образом соответствуют требованиям “Tuning Goals”.
“Control System Tuner” показывает насколько выполнимы требования к настройке системы (Рисунок 6). Синий графика показывает траекторию настроенной системы. Розовый график – заданная (требуемая) реакция.
image
Рисунок 6. Совпадение требуемых и настроенных переменных.

Значения настроенных регуляторов image и результаты настройки параметров image показаны на Рисунок 7.
image
Рисунок 7. Значения настроенных регуляторов и результаты настройки.
Для тестирования модели необходимо параметры настроенных регуляторов скопировать в блоки регуляторов модели.
image
Запуск модели с обновленными параметрами дает следующие результаты.
image
Рисунок 8. Перемещение на 10 оборотов с максимальной скоростью 3000 об/мин. Переход выполнен за 0,36 с без перерегулирования.
Перемещение на 20 оборотов выполняется с максимальной скоростью 3000 об/мин за 0,49 с без перерегулирования. Перемещение на 1 оборот выполняется с максимальной скоростью 630 об/мин за 0,3 с без перерегулирования.

Сравнение исходного варианта (Рисунок 3) и настроенного варианта (Рисунок 8) показало, что применение “Control System Tuner” для настройки двухконтурной системы управления (Рисунок 2) позволило выполнить требования к системе управления.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. MATLAB HELP: Tune a Control System Using Control System Tuner.
2. Каталог двигателей постоянного тока. docs.rs-online.com/6e07/0900766b81478614.pdf

Комментарии (2)


  1. OldFashionedEngineer
    04.01.2024 19:51

    Интересный материал, но хотелось бы более наглядный прикладной пример. Очень небрежно оформленно, особенно вторая половина текста.


  1. dr_bob_davidov Автор
    04.01.2024 19:51

    Рекомендую пример по ссылке [1].