Еще о вариантах бездатчиковых стабилизаторов скорости

Оказывается есть довольно современные разработки: (AN863) Improved sensorless control with the ST62 MCU for universal motor. Кому интересно - почитайте, там довольно красивые картинки и понятные пояснения.

Если кратко - девайс меряет ток во время zero-cross и пытается его стабилизировать. А конские формулы заменяются табличками компенсаций. Только диапазон скоростей приходится бить на полосы, и строить свою табличку для каждой полосы. Если речь о серийном производстве - вполне годное решение. Но в нашем случае это плохо, потому что:

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

Отсюда кстати понятно, почему регулятор на U2010B хорошо работать не сможет - там просто таблички компенсаций отсутствуют. Точнее, он будет работать относительно хорошо только на средних и высоких оборотах. И под конкретный движок понадобится настраивать вручную.

Если проводить параллели с регулятором, который мы сейчас сочиняем, то у нас измерения идут не на zero-cross, а непрерывно, и считается свертка. В итоге намного меньше проблем с шумами.

Теперь о “свежих идеях”. Вместо магических табличек, заточенных на конкретный мотор, мы используем автокалибровку. Для скорости нужно знать так называемое “активное сопротивление мотора”, которое включает в себя все возможные потери - от сопротивления обмоток, гистерезиса, вихревых токов, щеток и т.п. Его можно померить, подав на мотор короткий импульс, методология тут. С этим всплыла странность - почему-то на коротком импульсе и на длинном сопротивление разное. Мы пока на это дело просто забили, только добавили табличку для компенсации нелинейности мотора (см. тут).

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

Будем пробовать.

Да, на всякий случай напомню, что текущие алгоритмы на бормашинке и так работают достаточно хорошо. Вся тяга к улучшениям - просто от желания понять нюансы лично для себя. Я не объявлял об “официальном релизе” регулятора просто потому что хочется получше все оформить. Но собирать и юзать можно уже сейчас.

  • 682
Comments
alexeykozin

здравствуйте
вы пишите

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

а затем

почему-то на коротком импульсе и на длинном сопротивление разное

я полагаю что на коротком импульсе, при остановленном моторе происходит измерение “Активного” сопротивления
а на длинном “Активного” + некоторой части “Реактивного” т.е. начинает сказываться индуктивность катушек статора и ротора
кроме того на коротком и длинном импульсе могут различаться сопротивления в щеточном узле так как длинный импульс может вызывать некоторое движение, искрение итд

Vitaly

Нет. Реактивное сопротивление не имеет ни какого отношения к делу. Оно отвечает за вращение. А нас интересует та часть, которая отвечает за потери. Я ж написал, что основная причина в гармониках, когда синусоиду режут.