Запуск в разомкнутом контуре и переключение в замкнутую систему

Синхронный двигатель с постоянными магнитами (PMSM) с квадратурным датчиком энкодера требует начального положения, чтобы запустить двигатель. Поскольку у вас нет метода, чтобы определить начальное положение в начале (перед запуском двигателя), запустите двигатель в разомкнутом контуре и убедитесь, что квадратурный импульс индекса энкодера считывается по крайней мере один раз. На индекс импульсе квадратурного энкодера датчик квадратурного энкодера сбрасывает свое положение, чтобы соответствовать механическому углу двигателя. Двигатель переключается с разомкнутого контура запуска на регулирование скорости с обратной связью, чтобы поддерживать задающую скорость. Этот шаг применим только для квадратурного датчика энкодера, а не для датчика положения Холла. Датчик Холла выводит начальное положение сегмента ротора из входов порта сигнала Холла.

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

  1. Скопируйте mcb_pmsm_foc_qep_f28379d/Current Control/Control_system подсистема вашей модели. Это добавляет логику запуска двигателя в разомкнутом контуре. Эта подсистема переключает управление с разомкнутого контура на систему с обратной связью EnClosedLoop если вход 1. Добавьте входа порт EnClosedLoop. Это добавляет блоки Data Store Read для Enable и SpeedRef. Добавьте блоки Data Store Memory Enable, EnClosedLoop и SpeedRef на самом верхнем уровне модели.

    Когда начинается запуск без разомкнутого контура, знак SpeedRef определяет направление начального запуска мотора. Если SpeedRef отрицательно, двигатель вращается в противоположном направлении во время запуска без разомкнутого контура.

  2. Скопируйте mcb_pmsm_foc_qep_f28379d/Current Control/Input Scaling/Calculate Position and Speed подсистема вашей модели. Это добавляет IndexFinder блок. Когда первый импульс индекса квадратурного энкодера обнаруживается, IndexFound для порта задано значение 1. Добавьте выхода порт IndexFound и переименовать его в EnClosedLoop.

  3. Соедините выход порт EnClosedLoop из подсистемы Входа Scaling с входом портом EnClosedLoop в подсистеме Control_System как показано на этом рисунке.

  4. Скопируйте mcb_pmsm_foc_qep_f28379d/Speed Control/Speed_Ref_Selector подсистема вашей модели. Этот блок использует speed_ref блок, когда начинается управление с обратной связью. Для плавного перехода от разомкнутого контура к системе с обратной связью измеренная скорость используется в качестве скорости, ссылки во время разомкнутого контура запуска. Добавьте блок Data Store Write SpeedRef к PI_Controller_Speed входной порт.

  5. В модели объекта управления добавляется шаг входа для симуляции блока IndexFinder для симуляции. Переименуйте вход шага в Switch to closed loop. Смотрите mcb_pmsm_foc_qep_f28379d/Inverter and Motor - Plant Model/Sensor_Measurments подсистема для шагового входа для переключения на систему с обратной связью. Выберите время шага 0.1 и шаг расчета Ts_motor.

  6. Создайте блоки памяти хранилища данных для EnClosedLoop, Enable и SpeedRef. Enable блок используется для сброса интегратора ПИ перед запуском двигателя. Добавьте эти значения по умолчанию в блоки памяти хранилища данных: Enable = 1, EnClosedLoop = 0, и SpeedRef = 0.25.

    Блоки памяти хранилища данных используются для совместного использования данных через подсистему.

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

Для просмотра документации необходимо авторизоваться на сайте