Sfera-perm.ru

Сфера Пермь
4 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Стабилизатор постоянного тока для двигателя постоянного тока

Включение двигателя постоянного тока в сеть 110/220вольт, схема, управление

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

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

На схеме ниже представлено подключение пускового реостата по последовательной схеме с цепью якоря.

  • Л – соединенный с сетью зажим;
  • М – соединенный с цепью возбуждения зажим-фиксатор;
  • Я – соединенный с якорем зажим;
  • 1 – дуга, 2 – рычаг, 3 – контакт рабочий.

Включение и управление двигателем постоянного тока важно выполнять, принимая во внимание информацию, приведенную на самом агрегате или в инструкции (если таковая еще сохранилась).

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

Расшифровка обозначений: Rn – пусковое сопротивление реостата, U – напряжение сети (100 или 220), Iном – номинальное значение тока электрического двигателя, Rя – показатели сопротивления обмотки якоря.

Порядок и схема включения двигателя постоянного тока

  • Установите рычаг на реостате в положение «0» — холостой контакт;
  • После включения сетевого рубильника необходимо перевести этот рычаг в положение первого промежуточного контакта. Подключаемый двигатель постоянного тока перейдет в стадию возбуждения. По якорной цепи потечет ток, показатель которого зависит от величины сопротивления, включающего все 4 секции пускового реостата;
  • Посредством увеличения частоты вращения якоря пусковой ток снижается. В результате уменьшается и сопротивление, возникшее при пуске. Для выполнения задачи рычаг реостата постепенно проводят по контактам до тех пор, пока он не займет рабочего контакта. НЕ задерживайтесь на промежуточных контактах, на такие нагрузки пусковые реостаты не рассчитаны.

Схема двигателя постоянного тока предполагает и определенную последовательность действий для его отключения.

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

Если игнорировать приведенный выше порядок действий, при размыкании цепи велик риск возникновения напряжения такой силы, которая выведет электрический двигатель из строя.

Включение двигателя постоянного тока для промышленных применений может отличаться.

ОБОРУДОВАНИЕ
ТЕХНОЛОГИИ
РАЗРАБОТКИ

Блог технической поддержки моих разработок

Урок 75. Разработка ПИД-регулятора скорости вращения двигателя постоянного тока.

Проверим измеритель скорости вращения на реальном двигателе, управляя им без обратной связи. Разработаем ПИД-регулятор стабилизации скорости вращения.

В предыдущем уроке мы научились измерять период импульсов дискретного сигнала. Теперь мы можем определить скорость вращения двигателя, используя сигнал с датчика Холла.

Измерение скорости вращения двигателя.

Давайте соединим первую и последнюю программы предыдущего урока, добавим вычисление скорости вращения и проверим все это на реальном двигателе.

Зарегистрируйтесь и оплатите. Всего 60 руб. в месяц за доступ ко всем ресурсам сайта!

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

Вычисление скорости происходит в строке:

Serial.print( 60000000. / ((float)tempPeriodTime * 0.0625 * NUM_PULS_REV));

  • 60000000. – это минута, переведенная в микросекунды;
  • t empPeriodTime * 0.0625 – реальное время периода импульсов на выходе датчика Холла;
  • NUM_PULS_REV – число импульсов на один оборот.

Загружаем, запускаем монитор последовательного порта.

Вместо датчика у нас к выводу 8 подключен тестовый сигнал (вывод 5). На нем формируются импульсы с периодом примерно 10 мс, что соответствует скорости 3000 об/мин. Убеждаемся, что программа показывает такое значение скорости. Вращением переменного резистора проверяем, что ШИМ регулируется во всем диапазоне.

Подключаем к выводу 8 датчик Холла и подаем питание 12 В.

Скорость вращения мотора изменяется переменным резистором, измеритель показывает правильную скорость.

Но ШИМ стабильно держится на значении 200, а скорость все время “дергается” в небольших пределах. Логично предположить, что я не смог приклеить постоянные магниты на абсолютно одинаковом расстоянии друг от друга. А значит, время прохождения одного магнита под датчиком отличается от другого. В результате два соседних импульса датчика Холла имеют разные периоды.

Давайте усредним период для двух соседних импульсов.

Зарегистрируйтесь и оплатите. Всего 60 руб. в месяц за доступ ко всем ресурсам сайта!

Если раньше при стабильном ШИМ равном 200 скорость “прыгала” от 2305 до 2357, то после усреднения диапазон изменений стал значительно уже 2310…2312.

Это всего 0,09 %, или ± 0,045 %.

Определяем, в каком диапазоне скоростей работает наш мотор. У меня двигатель равномерно вращается, начиная со скорости 300 об/мин. Его максимальная скорость вращения немногим более 2600 об/мин. Эти параметры потребуются в следующем разделе.

Читайте так же:
Стабилизатор напряжения переменного тока электромеханический ресанта

Теперь у нас есть все, чтобы стабилизировать скорость вращения двигателя.

Разработка ПИД-регулятора скорости вращения.

Кто не знает, что такое ПИД-регулятор убедительно советую прочитать урок 40.Он полностью посвящен пропорционально-интегрально-дифференцирующим регуляторам. Еще надо просмотреть начало урока 39. Там есть раздел ”Общие сведения о регуляторах”.

Скажу только, что в нашем устройстве:

  • регулируемый параметр – это измеренная скорость;
  • регулирующий элемент – значение ШИМ.

Вот окончательный скетч устройства.

Зарегистрируйтесь и оплатите. Всего 60 руб. в месяц за доступ ко всем ресурсам сайта!

В тексте программы много комментариев. Поясню то, что считаю нужным, то, что добавилось к предыдущей программе.

  • В основном цикле loop() происходит измерение напряжения на аналоговом входе A0, усреднение его значения и вычисления заданной скорости.

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

Полный диапазон задатчика скорости – напряжения на выводе A0 масштабируется в диапазон допустимых скоростей регулятора. При изменении напряжения в диапазоне 0…5 В, заданная скорость меняется в диапазоне, определенном константами MIN_VELOCITY … MAX_VELOCITY (минимальное и максимальное значения скорости).

setVelocity= MIN_VELOCITY + (MAX_VELOCITY — MIN_VELOCITY) * (float)averageAdc / NUM_AVERAGE_ADC / 1023.;

  • В обработчике прерывания по переполнению таймера 1 вырабатывается признак остановки двигателя flagVelZerro.

if( numOverflowTimer1 > periodTimeStop ) flagVelZerro= true;

Если таймер 1 переполнился заранее рассчитанное количество раз ( periodTimeStop ), то это означает, что в течение соответствующего времени с датчика Холла не пришел ни один импульс. Время, при котором двигатель считается остановленным, рассчитывается исходя из константы ZERRO_VELOCITY .

// вычисление периода импульсов остановленного двигателя
periodTimeStop= 14648 / NUM_PULS_REV / (unsigned long)ZERRO_VELOCITY;

  • Если двигатель вращается (flagVelZerro != true), то в основном цикле вычисляется измеренная скорость.

measuredVelocity= 60000000. / ( (float)averageVel / NUM_AVERAGE_VEL * 0.0625 * NUM_PULS_REV);

Число выборок для усреднения измеренной скорости определяется константой NUM_AVERAGE_VEL . При готовом результате формируется признак flagVel .

  • При остановленном двигателе ( flagVelZerro == true ) искусственно вырабатывается признак flagVel= true; . Это необходимо для того, чтобы ПИД-регулятор работал при остановленном двигателе. Что-то же должно начинать его крутить.
  • В основном цикле проверяется состояние сигнала включения (вывод PIN_ON ). Если работа мотора запрещена, то программный блок ПИД-регулятора пробрасывается. Запрещается работа ШИМ и интегральное звено устанавливается на начальное значение (константа INT_BEGIN ).
  • Блок собственно ПИД-регулятора вызывается при условии, что:
    • разрешена работа двигателя;
    • рассчитана новая измеренная скорость
    • с предыдущего вызова прошло время не менее REG_TIME мс.

Т.е. константа REG_TIM E определяет временную дискретность работы регулятора.

  • Математика самого регулятора полностью повторяет формулы из учебников.
  • В основном цикле с периодом, заданным константой DISPLAY_TIME , в последовательный порт выводятся: заданная и измеренная скорости, период импульсов датчика Холла и значение ШИМ.

Основное по программе все.

Проверка работы ПИД-регулятора на тестовом сигнале.

Давайте проверим, как работает регулятор без использования двигателя. Кроме собственно проверки, это даст понимание, как он должен работать.

Отключим питание 12 В, отключим датчик Холла от 8 вывода, соединим 8 и 5 выводы. Т.е. подадим на вход измерения скорости тестовый сигнал.

Загрузим программу в плату.

Зарегистрируйтесь и оплатите. Всего 60 руб. в месяц за доступ ко всем ресурсам сайта!

Подадим разрешающий сигнал на вывод PIN_ON .

  • Заданная скорость меняется вращением переменного резистора в пределах 300 … 2600.
  • Измеренная скорость определяется частотой тестового сигнала и равна 1500.

Выключаем интегральную часть. Пропорциональный коэффициент задаем равным 0,01.

#define K_P 0.01 // пропорциональный коэффициент
#define K_I 0. // интегральный коэффициент

Загружаем скетч в плату, открываем монитор последовательного порта.

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

ШИМ = начальное значение интегрального звена + (заданная скорость – измеренная скорость) * пропорциональный коэффициент.

В моем случае ШИМ = 25 + (2217 – 1500) * 0,01 = 32

Проверяем тоже самое для заданной скорости меньше измеренной.

В моем случае ШИМ = 25 + (1100 – 1505) * 0,01 = 21

Проверяем интегральное звено. Отключаем пропорциональную часть, интегральный коэффициент устанавливаем равным 0,001.

#define K_P 0. // пропорциональный коэффициент
#define K_I 0.001 // интегральный коэффициент

Загружаем, открываем монитор.

Устанавливаем заданное значение скорости 1600. Убеждаемся, что ШИМ нарастает начиная со значения 25 со скоростью 1 единица в сек. С учетом того, что в монитор данные выводятся каждые 0,2 сек, нарастание ШИМ на 1 должно происходить через каждые 5 строк.

Ошибка рассогласования равна 1600 – 1500 = 100. За одну временную дискретность регулятора (0,1 сек) приращение = 100 * 0,001 = 0,1. Приращение 0,1 десять раз в секунду получается 1 в секунду.

Проверяем для отрицательного рассогласования. Задаем скорость равной 1400.

Измеряемая скорость ”прыгает” потому, что программа разрослась и цикл loop() стал в значительных пределах изменять свою длительность. Период тестовых импульсов становиться все менее стабильным. Вот почему я стараюсь использовать для таких целей только прерывания по таймеру. Но таймеров у нас уже не осталось.

В принципе ПИД-регулятор работает. В следующем уроке будем настраивать работу с реальным двигателем. Я разработал для этого программу верхнего уровня с регистратором и графическим отображением параметров в реальном времени.

Читайте так же:
Для чего используются стабилизаторы тока

Электродвигатели постоянного тока. Устройство и работа. Виды

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

Устройство и принцип работы

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

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

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

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

Для поочередной подачи тока на обмотки якоря применяются специальные щетки из сплава графита и меди.

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

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

Щетки требуют периодического их перемещения в пазах и продувки воздухом, так как от накопившейся пыли они могут застрять в направляющих пазах. Это приведет к зависанию щеток над коллектором и нарушению работы двигателя. Щетки периодически требуют замены из-за их износа. В месте контакта коллектора со щетками также происходит износ коллектора. Поэтому при износе якорь снимают и на токарном станке протачивают коллектор. После проточки коллектора изоляция, находящаяся между ламелями коллектора стачивается на небольшую глубину, чтобы она не разрушала щетки, так как ее прочность значительно превышает прочность щеток.

Виды
Электродвигатели постоянного тока разделяют по характеру возбуждения:
Независимое возбуждение

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

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

Параллельное возбуждение

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

Регулировка оборотов двигателя обеспечивается реостатом в последовательной цепи с обмотками возбуждения или в цепи ротора.

Последовательное возбуждение

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

Смешанное возбуждение

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

Читайте так же:
Стабилизатор тока в нагрузке

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

Особенности эксплуатации

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

Такие электродвигатели постоянного тока можно также применять в качестве генератора. Изменив направление тока в обмотке возбуждения или в якоре, можно изменять направление вращения двигателя. Регулировка оборотов вала двигателя осуществляется с помощью переменного резистора. В двигателях с последовательной схемой возбуждения это сопротивление расположено в цепи якоря и позволяет уменьшить скорость вращения в 2-3 раза.

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

Для моторов с параллельной схемой возбуждения в цепи якоря также применяются реостаты для уменьшения оборотов в два раза. Если в цепь обмотки возбуждения подключить сопротивление, то это позволит повышать обороты до 4 раз.

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

На коэффициент полезного действия мотора, работающего на постоянном токе, влияет его мощность. Слабые электродвигатели постоянного тока обладают малой эффективностью, и их КПД около 40%, в то время, как электродвигатели мощностью 1 МВт могут обладать коэффициентом полезного действия до 96%.

Подключение бесколлекторного электродвигателя постоянного тока (BLDC) к Arduino

В настоящее время наблюдается небывалый интерес к конструированию различных летающих механизмов – дронов, планеров, глайдеров, вертолетов и т.д. Сейчас их можно легко сконструировать самостоятельно благодаря большому количеству материалов по ним в сети интернет. Все эти летающие механизмы используют для своего движения так называемые бесщёточные (бесколлекторные) электродвигатели постоянного тока (BLDC — Brushless DC Motor). Что представляют собой подобные двигатели? Почему именно они сейчас используются в различных летающих дронах? Как правильно купить подобный двигатель и подключить его к микроконтроллеру? Что такое ESC и почему мы будем его использовать? Ответы на все эти вопросы вы найдете в данной статье.

В этой статье мы рассмотрим управление скоростью вращения бессенсорного бесколлекторного электродвигателя постоянного тока A2212/13T (Sensorless BLDC outrunner motor), часто используемого для конструирования дронов, с помощью ESC (Electronic Speed Controller – электронный контроллер скорости) и платы Arduino.

Необходимые компоненты

  1. Плата Arduino Uno (купить на AliExpress).
  2. A2212/13T BLDC Motor (бесколлекторный электродвигатель постоянного тока).
  3. ESC (20A) (электронный контроллер скорости) (купить на AliExpress).
  4. Источник питания (12V 20A).
  5. Потенциометр 10 кОм (купить на AliExpress).

Принцип действия BLDC двигателей

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

Хотя BLDC относятся к двигателям постоянного тока они управляются с помощью последовательности импульсов. Для преобразования напряжения постоянного тока в последовательность импульсов и распределения их по трем проводникам используется контроллер ESC (Electronic speed controller). В любой момент времени питание подается только на две фазы, то есть электрический ток заходит в двигатель через одну фазу, и покидает его через другую. Во время этого процесса запитывается катушка внутри двигателя, что приводит к тому, что магниты выравниваются по отношению к запитанной катушке. Затем контроллер ESC подает питание на другие два провода (фазы) и этот процесс смены проводов, на которые подается питание, продолжается непрерывно, что заставляет двигатель вращаться. Скорость вращения двигателя зависит от того как быстро подается энергия на катушку двигателя, а направление вращения – от порядка смены фаз, на которые поочередно подается питание.

Существуют различные типы BLDC двигателей – давайте рассмотрим основные из них. Различают Inrunner и OutRunner BLDC двигатели. В Inrunner двигателях магниты ротора находятся внутри статора с обмотками, а в OutRunner двигателях магниты расположены снаружи и вращаются вокруг неподвижного статора с обмотками. То есть в Inrunner (по этому принципу конструируется большинство двигателей постоянного тока) ось внутри двигателя вращается, а оболочка остается неподвижной. А в OutRunner сам двигатель вращается вокруг оси с катушкой, которая остается неподвижной. OutRunner двигатели особенно удобны для применения в электрических велосипедах, поскольку внешняя оболочка двигателя непосредственно приводит в движение колесо велосипеда, что позволяет обойтись без механизма сцепления. К тому же OutRunner двигатели обеспечивают больший крутящий момент, что делает их также идеальным выбором для применения в электрических движущихся средствах и дронах. Поэтому и в этой статье мы будем рассматривать подключение к платы Arduino двигателя OutRunner типа.

Читайте так же:
Импульсный стабилизатор тока lm2576

Примечание : существует еще такой тип BLDC двигателей как бесстержневой (coreless), который находит применение в «карманных» дронах. Эти двигатели работают по несколько иным принципам, но рассмотрение принципов их работы выходит за рамки данной статьи.

BLDC двигатели с датчиками (Sensor) и без датчиков (Sensorless). Для BLDC двигателей, которые вращаются плавно, без рывков, необходима обратная связь. Поэтому контроллер ESC должен знать позиции и полюса магнитов ротора чтобы правильно запитывать статор. Эту информацию можно получить двумя способами: первый из них заключается в размещении датчика Холла внутри двигателя. Датчик Холла будет обнаруживать магнит и передавать информацию об этом в контроллер ESC. Этот тип двигателей называется Sensor BLDC (с датчиком) и он находит применение в электрических движущихся транспортных средствах. Второй метод обнаружения позиции магнитов заключается в использовании обратной ЭДС (электродвижущей силы), генерируемой катушками в то время когда магниты пересекают их. Достоинством этого метода является то, что он не требует использования каких либо дополнительных устройств (датчик Холла) – фазовый провод самостоятельно используется в качестве обратной связи благодаря наличию обратной ЭДС. Этот метод используется в двигателе, рассматриваемом в нашей статье, и именно он чаще всего применяется в дронах и других летающих устройствах.

Почему дроны и вертолеты используют именно BLDC двигатели?

Сейчас существует множество различных типов дронов – с двумя лопастями, с четырьмя лопастями и т.д. Но все они используют именно BLDC двигатели. Почему именно их, ведь BLDC двигатели стоят дороже чем обычные электродвигатели постоянного тока?

Существует несколько причин для этого:

  • большой крутящий момент, который очень важен для того чтобы оторвать летающее средство от земли;
  • эти двигатели доступны в формате OutRunner, что позволяет обойтись без сцепления в конструкции дрона;
  • маленький уровень вибраций во время работы, что очень важно для неподвижного зависания дрона в воздухе;
  • хорошее соотношение мощности к весу двигателя. Это очень важно для использования на летающих механизмах чтобы все элементы его конструкции имели как можно меньший вес. Обычный двигатель постоянного тока, обеспечивающий такой же крутящий момент как и BLDC двигатель, будет как минимум в два раза тяжелее него.

Зачем нужен контроллер ESC

Как мы уже знаем, для функционирования BLDC двигателей необходим какой-нибудь контроллер, который преобразует напряжение постоянного тока от батарейки в последовательность импульсов, подаваемую в определенном порядке на провода (фазы) двигателя. Этот контроллер называется ESC (Electronic Speed Controller – электронный контроллер скорости). Основной обязанностью данного контроллера является правильная подача питания на провода BLDC двигателя чтобы двигатель вращался в нужном направлении. Это осуществляется с помощью считывания обратной ЭДС (back EMF) с каждого провода и подачи питания на катушку в то время когда магнит пересекает ее. Внутри себя контроллер ESC содержит достаточно много разнообразной электроники и при желании вы можете подробно изучить его устройство по соответствующим материалам в сети интернет. Здесь же мы кратко рассмотрим рассмотрим только основные компоненты его конструкции.

Управление скоростью вращения на основе ШИМ (широтно-импульсной модуляции, в англ. PWM) . Контроллер ESC может управлять скоростью вращения BLDC двигателя при помощи считывания сигнала ШИМ подаваемого на его оранжевый провод. Принцип управления им очень похож на управление сервомоторами. Сигнал ШИМ, подаваемый на контроллер ESC, должен иметь период 20ms, а коэффициент заполнения этого ШИМ сигнала будет определять скорость вращения BLDC двигателя. Поскольку точно такой же принцип используется для управления углом поворотом сервомотора, то для управления BLDC двигателем мы можем использовать библиотеку для управления сервомоторами. Если вы не сталкивались с этим принципом ранее, то вы можете прочитать статью о подключении сервомотора к плате Arduino.

Battery Eliminator Circuit (BEC) – цепь, исключающая батарею . Почти все контроллеры ESC поставляются с этой схемой. Как следует из ее названия, данная схема устраняет потребность в использовании отдельной батареи для питания микроконтроллера, то есть в данном случае нам не понадобится отдельный источник питания для платы Arduino – контроллер ESC сам обеспечит плату Arduino регулируемым напряжением питания +5V. В различных контроллерах ESC используются различные схемы регулировки данного напряжения, но в большинстве случаев распространена схема с линейной регулировкой.

Встроенное ПО . Каждый контроллер ESC содержит в своем ПЗУ встроенную прикладную программу, написанную производителем контроллера. Эта программа во многом определяет логику функционирования контроллера. Наиболее популярными встроенными программами для контролеров ESC являются Traditional, Simon-K и BL-Heli. Эта программа может изменяться пользователем, однако мы в этой статье не будем рассматривать данный вопрос.

Читайте так же:
Электронный стабилизатор тока это

Некоторые термины, используемые в тематике BLDC и ESC

При изучении принципов работы BLDC двигателей и контроллеров ESC вы можете столкнуться с некоторыми терминами, используемыми в данной тематике. Кратко рассмотрим основные из этих терминов.

Braking (торможение) – определяет насколько быстро BLDC двигатель может остановить свое вращение. Это особенно актуально для летающих средств (дронов, геликоптеров и т.д.) поскольку они вынуждены часто изменять количество оборотов двигателя в минуту чтобы маневрировать в воздухе.

Soft Start (плавный пуск, старт) – эта способность особенно важна для BLDC двигателей когда вращающий момент от него на исполнительный механизм (колесо, винт и т.д.) передается через механизм передач, обычно состоящий из шестерен. Плавный пуск означает, что двигатель не начнет сразу вращаться с максимальной скоростью, а будет увеличивать свою скорость вращения постепенно независимо от того, с какой скоростью нарастает управляющее воздействие. Плавный пуск значительно снижает износ шестерен, входящих в передаточный механизм.

Motor Direction (направление вращения двигателя) – обычно направление вращения BLDC двигателей не изменяется в процессе эксплуатации, однако во время сборки и тестирования работы изделия может потребоваться изменение направления вращения двигателя, обычно это можно сделать просто поменяв местами любые два провода двигателя.

Low Voltage Stop (остановка при низком напряжении питания) . Обычно BLDC двигатели калибруют так, чтобы при одинаковом уровне управляющего воздействия скорость его вращения была постоянной. Однако этого трудно достигнуть потому что со временем напряжение питающей батареи уменьшается. Чтобы предотвратить это обычно контроллеры ESC программируют таким образом чтобы они останавливали работу BLDC двигателя когда напряжение питающей батареи опускается ниже определенной границы. Особенно эта функция полезна при использовании BLDC двигателей в дронах.

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

Advance (движение вперед) . Эта проблема является своеобразной «ахиллесовой пятой» для BLDC двигателей. Все BLDC двигатели имеют хотя бы небольшой подобный баг. Эта проблема вызвана тем, что когда катушка статора запитана ротор движется вперед поскольку на нем есть постоянный магнит. И когда управляющее напряжение с этой катушки снимают (чтобы подать его на следующую катушку) ротор продвигается вперед немного дальше чем предусмотрено логикой функционирования двигателя. Это нежелательное продвижение двигателя вперед в англоязычной литературе называют “Advance” и оно может приводить к нежелательным вибрациям, нагреву и шуму при работе двигателя. Поэтому хорошие контроллеры ESC стараются по возможности устранить этот эффект в работе BLDC двигателей.

Работа схемы

Схема подключения BLDC двигателя и контроллера ESC к плате Arduino представлена на следующем рисунке.

Как видите, схема достаточно проста. Контроллеру ESC необходим источник питания с напряжением 12V и током как минимум 5A. Для питания схемы можно использовать адаптер или Li-Po батарейку. Три фазы (провода) BLDC двигателя необходимо подсоединить к трем выходным проводам контроллера ESC – неважно в каком порядке.

Предупреждение : у некоторых контроллеров ESC нет выходных проводов, в этом случае вам необходимо будет припаивать провода от BLDC двигателя к контактам контроллера ESC. Обязательно изолируйте эти оголенные места (пайки) с помощью изоляционной ленты потому что через эти провода возможно протекание достаточно больших токов и любое короткое замыкание может привести к повреждению двигателя и контроллера ESC.

Схема BEC (Battery Eliminator circuit) в контроллере ESC будет самостоятельно обеспечивать (регулировать) постоянное напряжение +5V, поэтому его можно непосредственно использовать для питания платы Arduino. Для управления скоростью вращения двигателя в схеме используется потенциометр, подключенный к контакту A0 платы Arduino.

Внешний вид собранной конструкции показан на следующем рисунке.

Объяснение программы для Arduino

Полный код программы приведен в конце статьи, здесь же мы рассмотрим только его основные фрагменты.

Для управления BLDC двигателем мы будем формировать ШИМ сигнал с частотой 50 Гц и изменяемым от 0 до 100% коэффициентом заполнения. Значение коэффициента заполнения будет управляться с помощью потенциометра. То есть, вращая потенциометр, мы будем управлять скоростью вращения двигателя. Как уже указывалось, управление BLDC двигателем очень похоже на управление сервомотором с помощью ШИМ 50 Гц, поэтому в данном случае мы будем использовать ту же самую библиотеку, которую использовали для управления сервомотором. Если вы начинающий в изучении платформы Arduino, то перед дальнейшим прочтением данной статьи рекомендуем вам изучить принципы формирования ШИМ сигнала в Arduino и подключение сервомотора к плате Arduino.

ШИМ сигнал можно генерировать только на тех цифровых контактах платы Arduino, которые обозначены символом

. В нашей схеме мы будем управлять контроллером ESC с контакта 9 платы Arduino, поэтому следующей командой мы прикрепим контроллер ESC к этому контакту:

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector