Настройтесь ПИ-контроллеры Используя поле сориентировали блок автотюнера управления в системах реального времени

Этот пример вычисляет значения усиления контроллеров пропорционального интеграла (PI) в скорости и токовых контроллерах при помощи блока Field Oriented Control Autotuner. Для получения дополнительной информации об ориентированном на поле управлении, смотрите Ориентированное на поле управление (FOC).

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

Модель начинает настраиваться только в устойчивом состоянии. Это вводит воздействия в контроллере выход в зависимости от целей контроллера (полоса пропускания и запас по фазе). Модель использует отклик системы для воздействий, чтобы вычислить оптимальное усиление контроллера.

Модель

Пример включает модель mcb_pmsm_foc_autotuner_speedgoat.

Можно использовать эту модель и для симуляции и для генерации кода. Можно использовать open_system команду, чтобы открыть модель Simulink®.

open_system('mcb_pmsm_foc_autotuner_speedgoat.slx');

Для получения дополнительной информации на настройке поддерживаемого оборудования, смотрите, что Необходимый Раздел оборудования под Генерирует Код и Развертывает Модель в Целевой компьютер.

Необходимый MathWorks® Products

  • Motor Control Blockset™

  • Simulink Control Design™

  • Simulink Real-Time™

  • Библиотека ввода-вывода Speedgoat

Необходимые условия

1. Параметры двигателя, доступные в модели в качестве примера, для двигателя, который идет с Speedgoat Electric Motor Control Kit. Можно изменить эти параметры для любого другого двигателя, заменив их на значения или от моторной таблицы данных или от других источников.

2. Если вы получаете параметры двигателя из таблицы данных или других источников, обновляете параметры двигателя и инвертора в скрипте инициализации модели, сопоставленном с моделями Simulink®. Для инструкций см. Скрипт Инициализации Модели.

Модель симулируется

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

1. Откройте модель, включенную с этим примером.

2. Проверяйте профиль задающей скорости, сконфигурированный в Signal Builder (доступный в Ссылке Входных параметров/Скорости mcb_pmsm_foc_autotuner_speedgoat/System).

3. Проверяйте и обновите параметры Автотюнера FOC в маске блока Field Oriented Control Autotuner (доступный в Управлении подсистема Algorithms/FOC_AutoTuner). Для получения дополнительной информации о блоке Field Oriented Control Autotuner, смотрите Поле Ориентированный Автотюнер Управления.

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

5. Нажмите работает на вкладке Simulation, чтобы симулировать модель.

6. Проверьте, что двигатель достигает операции устойчивого состояния, по крайней мере, для половины расчетной скорости с помощью простых значений усиления, которые вы ввели. Модель начинает настройку ориентированного на поле управления (FOC) (использующий блок Field Oriented Control Autotuner) в семнадцатую секунду.

7. После того, как настройка завершается, наблюдайте вычисленные значения усиления ПИ-контроллера в блоке Display PI Params, доступном в подсистеме Алгоритмов управления.

8. Наблюдайте отклик системы недавно вычисленными параметрами PI при помощи Инспектора Данных моделирования.

Для получения дополнительной информации смотрите, что ПИ-контроллеры Мелодии Используют Поле Ориентированный Автотюнер Управления.

Сгенерируйте код и разверните модель в целевой компьютер

Этот раздел сообщает вам о том, как сгенерировать код и запустить алгоритм FOC на целевом компьютере.

Необходимое оборудование

Этот пример поддерживает Speedgoat Electric Motor Control Kit это включает эти компоненты:

  • Трехфазный инвертор оценивается для 48 В и 20 А от Speedgoat

  • Трехфазный бесщеточный двигатель постоянного тока на 100 Вт от Двигателя Maxon

  • Квадратурный энкодер с 4 096 импульсами

  • Предоставление мощности постоянного тока на 150 Вт 254 В

ПРИМЕЧАНИЕ: Speedgoat Контакта для файла потока битов, который допустим для вашего оборудования.

Для получения дополнительной информации о настройке оборудования Speedgoat, смотрите Speedgoat Software Configuration Guide.

Сгенерируйте код и запущенную модель на целевом компьютере

1. Симулируйте модель и проверьте, что вы получаете желаемый ответ контроллера.

2. Завершите аппаратные связи для Набора Управления Электродвигателем Speedgoat.

  • Калибруйте текущее смещение

1. В модели, Рабочем режиме набора к Текущей Калибровке Смещения.

2. Во вкладке Real-Time на панели инструментов Simulink нажмите Build Model в Запуске в Целевом выпадающем меню, чтобы создать модель.

ПРИМЕЧАНИЕ: не нажимайте Run on Target, потому что эта модель в качестве примера не поддерживает выполнение в реальном времени в режиме external mode.

3. Перейдите к папке, где Simulink создал модель. Дважды щелкните по файлу mcb_pmsm_foc_autotuner_speedgoat.mldatx открыть диалоговое окно Simulink Real-Time Application.

4. В диалоговом окне Simulink Real-Time Application выберите целевой компьютер, с которым вы соединяетесь. Нажмите ОК, чтобы загрузить файл приложения к оборудованию.

5. Введите эти команды (в тот же порядок) в командной строке MATLAB, чтобы выполнить загруженное приложение на оборудовании.

  • tg = slrealtime;

  • tg.start;

6. После того, как модель запускается успешно, используйте Data Inspector на вкладке Simulation, чтобы видеть регистрируемые сигналы. Стабилизированный Iab_offset сигналы являются текущими смещениями.

7. Обновите текущие значения смещения в inverter.CtSensAOffset и inverter.CtSensBOffset переменные, доступные в скрипте инициализации модели, сопоставлены с моделью Simulink.

  • Запустите двигатель в регулировании без обратной связи

1. В модели, Рабочем режиме набора к Регулировке скорости Разомкнутого контура.

2. Во вкладке Real-Time на панели инструментов Simulink нажмите Build Model в Запуске в Целевом выпадающем меню, чтобы создать модель.

3. Перейдите к папке, где Simulink создал модель. Дважды щелкните по файлу mcb_pmsm_foc_autotuner_speedgoat.mldatx открыть диалоговое окно Simulink Real-Time Application.

4. В диалоговом окне Simulink Real-Time Application выберите целевой компьютер, с которым вы соединяетесь. Нажмите ОК, чтобы загрузить файл приложения к оборудованию.

5. Введите эти команды (в тот же порядок) в командной строке MATLAB, чтобы выполнить загруженное приложение на оборудовании.

  • tg = slrealtime;

  • tg.start;

6. После того, как модель выполняется, используйте Data Inspector на вкладке Simulation, чтобы видеть регистрируемые сигналы. Проверьте что обратная связь скорости (Speed_fb) следует за задающей скоростью (Speed_Ref) сигнал.

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

Если существует несоответствие в знаке сигналов обратной связи задающей скорости и скорости, изменитесь, A приводит параметр B (Инвертора и Модели объекта управления/SpeedGoatDrivers/Condition блок Encoder) или от 0 до 1 или от 1 до 0. Затем следуйте за шагами 2 - 6 в этом разделе, чтобы выполнить модель снова на оборудовании.

ПРИМЕЧАНИЕ: В режиме Open Loop Speed Control, частота вращения двигателя ограничивается между 500 об/мин и 1 200 об/мин.

  • Запустите двигатель в управлении с обратной связью

1. В модели, Рабочем режиме набора к Регулировке скорости Замкнутого цикла.

2. Установите кнопку FOC Autotuner на модели Отключать, чтобы отключить Автотюнер ориентированного на поле управления (FOC).

3. Во вкладке Real-Time на панели инструментов Simulink нажмите Build Model в Запуске в Целевом выпадающем меню, чтобы создать модель.

4. Перейдите к папке, где Simulink создал модель. Дважды кликните файл mcb_pmsm_foc_autotuner_speedgoat.mldatx открыть диалоговое окно Simulink Real-Time Application.

5. В диалоговом окне Simulink Real-Time Application выберите целевой компьютер, с которым вы соединяетесь. Нажмите ОК, чтобы загрузить файл приложения к оборудованию.

6. Введите эти команды (в тот же порядок) в командной строке MATLAB, чтобы выполнить загруженное приложение на оборудовании и запустить двигатель.

  • tg = slrealtime;

  • tg.start;

Двигатель запускается в управлении с обратной связью на скорости, которая сконфигурирована в Signal Builder.

7. Проверьте, что двигатель достигает операции устойчивого состояния, потому что Автотюнер FOC не будет работать, если частота вращения двигателя будет нестабильна.

Если двигателю не удается достигнуть устойчивого состояния, изменить параметры PI вручную в скрипте инициализации модели (сопоставленный с моделью), пока частота вращения двигателя не стабилизировалась к половине номинальной скорости двигателя.

ПРИМЕЧАНИЕ: При настройке параметров PI в скрипте инициализации модели, двигатель может показать низкоскоростной ответ.

8. Если двигатель достигает устойчивой скорости, выполните шаги, чтобы запустить Автотюнер FOC.

  • Запустите автотюнер FOC

1. Установите кнопку FOC Autotuner на модели Включать, чтобы включить ориентированный на поле автотюнер управления.

2. Проверьте, установлен ли Рабочий режим в Регулировку скорости Замкнутого цикла.

3. Проверяйте и обновите параметры Автотюнера FOC (такие как триггерная синхронизация автотюнера и цель контроллера) в маске блока Field Oriented Control Autotuner (доступное внутреннее Управление подсистема Algorithms/FOC_AutoTuner). Для получения дополнительной информации о блоке Field Oriented Control Autotuner, смотрите Поле Ориентированный Автотюнер Управления.

4. Во вкладке Real-Time на панели инструментов Simulink нажмите Build Model в Запуске в Целевом выпадающем меню, чтобы создать модель.

5. Перейдите к папке, где Simulink создал модель. Дважды щелкните по файлу mcb_pmsm_foc_autotuner_speedgoat.mldatx открыть диалоговое окно Simulink Real-Time Application.

6. В диалоговом окне Simulink Real-Time Application выберите целевой компьютер, с которым вы соединяетесь. Нажмите ОК, чтобы загрузить файл приложения к оборудованию.

7. Введите эти команды (в тот же порядок) в командной строке MATLAB, чтобы выполнить загруженное приложение на оборудовании и запустить двигатель.

  • tg = slrealtime;

  • tg.start;

Модель начинает настройку ориентированного на поле управления (FOC) (использующий блок Field Oriented Control Autotuner) в семнадцатую секунду после того, как выполнение модели начнется на оборудовании. Это регистрирует значения усиления ПИ-контроллера (kp_Id, ki_Id, kp_Iq, ki_Iq, kp_speed, ki_speed) в инспекторе данных моделирования.

8. Наблюдайте и сравните отклик системы с параметрами PI прежде, чем настроиться и после настраивания Инспектора Данных моделирования.

9. Если отклик системы после настройки является удовлетворительным, обновите значения усиления в скрипте инициализации модели, сопоставленном с моделью. Для последовательного выполнения модели можно отключить настройку FOC с помощью кнопки FOC Autotuner в модели и продолжить тестирование с обратной связью с помощью новых параметров PI.

ПРИМЕЧАНИЕ: не реконфигурируйте или измените значение задающей скорости в Signal Builder, таким образом, что задающая скорость изменяется во время настраивающего процесса.