Оценка положения ротора BLDC на низкой скорости

Расскажу немного о методах используемых в PMC при работе на низкой скорости. Речь пойдет о векторном бездатчиковом управлении синхронными двигателями с постоянными магнитами. Как известно, при вращении ротора двигателя в обмотках статора возникает ЭДС, что позволяет оценить положение. Либо непосредственно измеряя ЭДС на отключенной фазе, как это делают в 6-ти шаговом управлении, либо косвенно с помощью наблюдателя состояния по измерениям тока, что подходит для векторного управления. Чем больше скорость, тем лучше видно вектор ЭДС на фоне шумов и неопределенностей. При неподвижном роторе этот метод очевидно бесполезен. В этом случае PMC может задействовать наблюдатель положения основанный на других особенностях мотора. О методе инжекции высокой частоты (HFI) далее.

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



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

Мост управляется одни таймером, для каждой фазы задается заполнение. Симметричная схема, таймер считает вверх, затем вниз. То есть, в начальный момент открыты все нижние ключи. Фаза с наибольшим заполнением раньше всех переключается на верхний ключ и соответственно позже всех возвращается на нижний. В середине когда все нижние ключи открыты происходит сэмплирование сигналов с датчиков тока. Этот момент считается началом нового такта работы. Абстрактно можем считать, что имеем три источника напряжения.

Все дела в векторном управлении делаются в подвижной ортогональной системе координат связанной с ротором. Ось D (direct) направлена по направлению потока ротора, ось Q (quadrature) ей ортогональна и направлена так, чтобы при положительном вращении знак ЭДС был положительным.



Промежуточная система координат XY (обычно обозначают альфа-бетта но у меня вот так) неподвижная и связана со статором. А на самом деле у нас три фазы и поэтому будем работать еще и с третьей системой координат ABC которая неподвижная и связана со статором но имеет три оси. Формулы перехода между разными системами координат достаточно просты [1], главное ничего не перепутать. Измерения тока преобразуются ABC->XY->DQ а выходной управляющий сигнал на мост DQ->XY->ABC.






Основная составляющая векторного управления это регуляторы тока в DQ осях. Для перехода из или в DQ необходимо знать положение ротора, но у нас есть только оценка, поэтому DQ может совпадает с положением ротора неточно. Задача в том, чтобы непрерывно оценивать положение и обеспечивать правильное преобразование для работы регуляторов тока.

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



Это записано с реального мотора, частота 3.75кГц, полученные значения индуктивностей 9 и 12 мкГ. След от тока образует эллипс вытянутый по направлению наименьшей индуктивности. Это направление совпадает с направлением потока ротора. Таким образом можно определять положение ротора. Сам угол или вектор направления вытаскивается с помощью нахождения тензора индуктивности (по аналогии с тензором инерции в механике) и дальнейшим анализом его собственных векторов. Это всего лишь симметричная матрица размерности 2x2, полученная путем дискретного преобразования Фурье над сигналами тока и напряжения и дальнейшим переходом к импедансу а именно мнимой части которая обусловлена индуктивностью.

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



Здесь, ток i и напряжения u в XY системе координат, матрица L диагональная содержащая индуктивности по DQ осям (тензор индуктивности), матрица A делает преобразование XY->DQ. Очевидно произведение трех матриц в правой части даст тензор в системе координат XY элементы которого зависят от положения ротора.

Дальше будем использовать пульсирующий вектор а не вращающийся, это гораздо лучше т.к. не создает пульсации вращающего момента и вибрации если направить вектор по прямой D оси, ток по которой не создает момента. Посмотрим, что будет с таким вектором если его пропустить через уравнения. Это достаточно легко представить, направим вектор тока по оси X, и масштабируем его разными коэффициентами из матрицы L в осях DQ. Если оси DQ и XY совпадают то направление вектора напряжения совпадает с током. Но если немного повернуть DQ то масштабирование будет изменять направление вектора, появится составляющая по оси Y.



Вместо XY здесь может быть любая другая система координат. Можем принять за нее оценку DQ которая имеется на данный момент. Подаем сигнал по прямой D оси, и смотрим на отклик по квадратурной Q оси. Если наша оценка DQ осей верна то отклика не будет, иначе знак и величина пульсации указывают в какую сторону и на сколько ошибаемся. Чтобы отделить полезный сигнал используется фильтр пропускающий только высокую частоту. Далее мгновенные значения тока умножаются на опорный гармонический сигнал, чтобы распознать знак и еще больше отфильтровать лишнее.



Здесь HPF означает High Pass Filter. Величина r используется для коррекции положения осей DQ и оценки скорости. Для оценки скорости используется phase locked loop, достаточно простой наблюдатель.

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



Такая схема достаточно хорошо работает на реальных двигателях. При низкой индуктивности и небольшом их различии по осям может потребоваться предельно высокая частота для надежной оценки. Мы приняли частоту в 12 раз ниже частоты ШИМ как предельно высокую.

Остается еще несколько проблем. Оценка работает в замкнутом цикле когда начальное значение уже было определено достаточно точно. Но если начать делать оценку из произвольного положения, можно стабилизироваться на ложном решении повернутом относительно верного на 180 градусов. Да у полученной системы две точки равновесия, но правильное решение соответствует одной. Оказывается, отклик по прямой D оси имеет составляющую на удвоенной частоте, вызванную тем, что индуктивность меняется в течении пульсации, размах в положительную сторону отличается от размаха в отрицательную. Отличие может быть на очень незначительную неуловимую величину, зависит от амплитуды пульсирующего вектора. Но нам не нужно быстро определять в какое из устойчивых положений попали, допустимо сделать это с некоторой задержкой, ведь делается это один раз в начале. Поэтому можем позволить себе аккумулировать значения длительное время для фильтрации шума.



Таким образом для решения проблемы с двумя устойчивыми положениями анализируем ток не только по Q оси но и по D. Умножаем на опорный сигнал удвоенной частоты, анализируем среднее значение f за некоторый период. Если перешла некоторый порог, переворачиваем оценку положения на 180 градусов.

Следующая проблема в том, что вам нужно не только определять положение но и создавать момент, использовать двигатель по назначению. Подавая ток по Q оси мы изменяем индуктивность по этой оси. На самом деле все сложнее, нельзя считать, что магнитопровод можно так просто разделить на две оси. Насыщение по одной оси направлению оказывает эффект и на другую. Но все таки ток по Q оси, особенно большая величина, портит отклик, что приводит к смещению оценки или в плохом случае к ее неустойчивости. Единственный метод борьбы это ограничение величины тока в режиме HFI. Некоторые источники рекомендовали компенсировать смещение зная ток, но тесты показывают неэффективность такого решения.

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



[1] www.ti.com/lit/an/bpra048/bpra048.pdf
[2] thescipub.com/PDF/ajeassp.2011.390.399.pdf
  • +7
  • 08 июля 2017, 01:25
  • amaora

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

RSS свернуть / развернуть
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.