Как подобрать регулятор оборотов для бесколлекторного двигателя
Перейти к содержимому

Как подобрать регулятор оборотов для бесколлекторного двигателя

  • автор:

моторы и регуляторы оборотов

пост о моторах и регуляторах оборотов к ним.
моторы — бесколлекторные, управляются через так называемые ESC (Electronic Speed Controller),
были выбраны исходя из «цена-качество», фирмы sunnysky с параметрами x2212 980kv

где:
2212 — размер статора, 22×12мм
980kv — величина, обозначающая количество оборотов на 1 вольт. тол есть, при 14 вольтах он будет выдавать
±13720 оборотов
эти моторы при использовании пропеллера 10″ дают тяги более 1кг. то есть, 4 мотора квадрокоптера потянут >4кг веса.
это хорошо показано на данном тесте на youtube:

Теперь регуляторы. поскольку моторы бесколлеекторные, у них нет щеток, кроме того значительно выше КПД, и они требуют использования обязательного электронного узла — регулятора скорости (ESC — Electronic Speed Controller), который контролирует вращение электрического магнитного поля своевременно подавая напряжение на соответствующие обмотки мотора. Регулятору бесколлекторного мотора необходимо знать положение ротора в каждый момент времени, для этого могут использоваться либо встроенные в мотор датчики, либо импульсы обратного электромагнитного поля (кстати, именно поэтому каждому б/к мотору требуется свой собственный регулятор). Моторы без датчиков проще по конструкции, поэтому в р/у моделях в основном используется второй вариант — контроллер рассчитывает положение ротора на основе времени между импульсом напряжения питания и импульса обратного электромагнитного поля и использует эту информацию для определения фазы и того куда подать следующий импульс напряжения питания. Регулирование скорости вращения мотора происходит с помощью изменения продолжительности импульса питания (широтно-импульсная модуляция) — более длительная серия импульсов создает большее магнитное поле, которое заставляет ротор вращаться быстрее, что вынуждает контроллер увеличивать частоту подачи импульсов.

выглядят они как электронная плата, засунутая внутрь термоусадки. на плате установлен микроконтроллер Atmel ATmega. Самые популярные прошивки для регуляторов — SimonK и BL-HELI. я буду использовать
последнюю прошивку SimonK. (для заливки в ESC новых прошивок был куплен копеечный программатор, который позволяет заливать прошивки по сигнальному проводу без разрезания термоусадки и пайки к ногам процессора или тестовым точкам на плате. о нем позже напишу)
обычно, используются для каждого мотора по собственному регулятору. но есть и конструкции 4-in-1,
когда 4 регулятора собраны на одной плате. Я выбрал по совету более опытных товарищей достаточно качественные регуляторы Afro.

Летательная болезнь — О регуляторах.

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

Ок. А вот теперь полезли в дебри. 🙂
По факту сам регулятор ESC (Electronic speed control) — довольно интересная штука. Он сам по себе представляет микроконтроллерный преобразователь входного сигнала с полётного контроллера в 3-х фазный сигнал для двигателя. То есть он как раз и обеспечивает то самое вращающееся магнитное поле в статоре движка. Так же он может содержать на борту стабилизатор напряжения на 5 вольт, для запитки того-же полётного контроллера. Называется эта часть регулятора BEC (Battery eliminator circuit) стабилизатор короче. Только будьте внимательны. Во первых он не очень мощный. Обычно около 1 Ампера. Во вторых он импульсный. А это значит, что если производитель экономил на весе, то придётся ставить ещё дополнительный фильтр. Иначе например камера может рябить. А по слухам иногда при полной нагрузке может даже глючить полётный контроллер. Так что пользуйтесь им с умом и осциллографом. Не нужно гнаться за использованием BEC в регуляторах. Обычно BEC суют во всё что не попадя. И на плате разводки питания он может быть, и на токозамеряющей для OSD, и просто отдельно. Короче выбор есть!
Самая простая схема запитки бортового оборудования как раз таки осуществляется от ESC BEC. Но не забудьте отключить остальные 3 BEC, они вместе работать на одну нагрузку не умеют. Отключение надо произвести путём удаления среднего пина (обычно красная жила) из разъёма подключения к полётному контроллеру. Там такой плоский 3-х пиновый разъем.

Ок. Самое главное теперь осознать, что не все ESC одинаково полезны 🙂 Из существует довольно много модификаций. Не все из них вот так сразу подходят для квадрокоптеров. Например, существуют следующие функции которые может поддерживать выбранный вами ESC:
Плавный пуск — нужен для вертолётов чтобы раскрутить их массивный винт. Для квадры плохо, ибо быстрый старт не получится.
Кривые тяги — эта штука позволяет выбрать некий рабочий диапазон и растянуть его на больше управляющих значений. Короче делает характеристику оборотов двигателя от управляющего сигнала нелинейной. На мой взгляд для квадры фигово.
Контроль питания и отключение регулятора при критически малом напряжении — Для моделей машин классно, но вот жёсткое отключение регулятором на квадре — жесть. Прикиньте, летите вы над площадью, и тут бац! Ваш квадрокоптер превращается в кирпич и падает в толпу. Бр-р-р. Я предпочитаю либо вообще это отключать, либо, если есть такая функция, плавно снижать тягу. Это и батарейки сбережёт, и квадру позволит увести в сторонку.
Говорят есть Реверс на ходу — для квадры тоже не надо.
А вот реверс который жёстко программится — интересная функция. Она вам позволит не перепаивать провода к двигателям.
Угол опережения поля тоже интересная фича. Ведь сам регулятор управляет оборотами двигателя амплитудой напряжения (или скважностью импульсов если точнее) . Частоту вращения магнитного поля он подбирает по реальному вращению ротора, но чуть чуть сдвигает поле по направлению вращения, как бы затягивая ротор за собой. И вот этот угол регулируется. На маленьких движках с лёгкой вращающейся частью этот угол может быть до 30 град. Но чем больше и мощнее двигатель, тем меньше должен быть угол. Иначе может наступить срыв синхронизации. А это равносильно остановке двигателя в полёте. Так кстати и происходит . Двигатель просто останавливается и начинает дрожать на месте. В этом случае только крутость регулятора решит судьбу квадрика. Дешёвые могут даже не заметить остановки ротора. Соответственно квадра, эффектно кувыркаясь, рухнет вниз. Дорогие регуляторы произведут повторный запуск через 1/12 оборота. Ну с остальными как повезёт 🙂
Защита от перегрева — Наверно нужная штука, вот только на квадре надо 10 раз подумать надо ли.
Частота ключей управления — бывает 8 и 22 килогерца. Знаете, считается что 22 круче. Но я так и не смог найти внятного описания отличий. По моему опыту 22 килогерца более плавно и точно регулирует напряжение на двигателе, но при этом возрастает риск того, что ключи не успеют закрыться до открытия других, которые отвечают за другую полярность, в итоге мы получаем коротковременное Короткое Замыкание в цепи. В итоге перегрев, и выход ключей из строя. Да, и думаю не стоит использовать 22 килогерца на больших двигателях с большой индуктивностью. Греться будут. Если что на 250-ке движки мелкие и можно переключить на 22.
Ну дальше производители развлекаются как могут. Используют оптопары для развязки сигнальных линий, их же используют для развязки силовой части, но это уже дело вкуса.
Кстати схемная часть ESC по большей части очень похожа у всех.

Разные только прошивки. Это позволило развиваться альтернативным прошивками, таким как Simon K. Очень часто на Али ESC идут сразу с этой прошивкой. Сама прошивка из самых простых. Никаких наворотов не поддерживает. Подходит для квадр. Вот только не всегда хорошо совместима с железом на котором стоит. Например мои первые ESC были какие-то странные. Грелись, неадекватно реагировали на команды. Один вообще не мог запустить двигатель на малых оборотах. Из-за них я чуть не закинул все эти полёты. Слишком неадекватно всё было!
Хорошо догадался купить второй комплект регуляторов от производителя Emax. Хоть в них и была прошивка Simon K, но даже сравнивать их работу со старыми нельзя. После их установки квадра просто взяла и полетела, без выбрыков и непоняток.
Следующие буду брать Emax BLHely . Их вообще можно программировать с помощью софта. Выглядит очень удобным.

Ок. Теперь про подключение. Тут всё просто. Два толстых провода к аккумулятору. Разумеется через плату распределитель. Три толстых провода к двигателю. Если вы хотите, чтобы двигатель крутился в другую сторону, надо просто поменять местами любые 2 провода. Ну или в продвинутых регуляторах это можно сделать программно. Тройной провод подсоединяем к полётному контроллеру, разумеется не забывая при этом про провод от BEC. Соответственно или его убираем и изолируем, либо один регулятор подключаем с ним к полётному контроллеру.
Ну и последнее. Не забываем калибровать регуляторы. Это делается затем, чтобы регулятор знал значения сигналов при минимальном и максимальном положении стиков газа на аппаратуре. Ну либо крайние значения которые в последствии регулятору будет скармливать полётный контроллер. У CC3D есть спец режим этой калибровки. Там где он просит снять винты перед подключением батарейки. Настойчиво просит ! Даже заставляет галочки нажимать. Серьёзно, снимайте винты. Я часто калибровал ESC через это меню, и перестал реагировать на предупреждения. В итоге у меня на потолке теперь имеются четыре аккуратных полуокружностей от винтов 🙂 Мда.

Калибровку можно сделать и вручную. Просто включаем ESC в приёмник на канал газа. Потом подаём питание на ESC держа стик газа в максимуме. ESC пропищит длинно (ну или как то по особому) значит максимум она запомнила, опускаем стик газа вниз. ESC пропищит дважды, значит запомнила и нижнее значение. Можно вырубать. И так все. Главное, чтобы все были откалиброванны одинаково. Иначе не будет летать адекватно.
Ну и последнее, для тех кто знает толк в извращениях! Обычно все ESC можно прошивать. Там стоит обычный микроконтроллер ATM. Да и на плате есть площадки для подключения программатора. Так что если есть желание и интерес, можно сказать свежую прошивку, прошить, и потом помучится с установочными битами для получения приемлемых характеристик регулятора. Но я этим пока не страдал. Не хочется. А то вдруг ещё потянет проги исправлять или вообще своё что-то писать. Нафиг-нафиг. Пока и так спокойно живётся. 🙂
Ну до скорого. В следующий раз поговорим о батареях и зарядках для них.

Как подобрать регулятор оборотов для бесколлекторного двигателя

Новичкам сюда ( https://www.rcdrift.ru/forum/forumdisplay.php?f=19 )

— — Как подобрать регулятор скорости? ( https://www.rcdrift.ru/forum/showthread.php?t=34990 )

Snp.Prophet 03.06.2014 15:29

Как подобрать регулятор скорости?

Всем здраствуйте. Приобрел давече шась с двигателем без регулятора и сервы, остро встал вопрос о доукомплектовании своего нового агрегата) но как правильно подобрать регуль я так и не понял до конца. Мотор из комбо Vortex Combo BL Experience Drift, у бывшего хозяина в регуль попала вода и он сгорел. Отдельно как в комбо найти регуль не удалось, так же не удалось выяснить колличество витков, в одном месте указано 13 а в другом 15, в остальных вообще нет никакой инфы по этому поводу! Подскажите какой регуль подобрать под дрифт но что бы он стоил вменяемых денег) ну и серво машинка собственно тоже нужна) заранее спасибо!)

maXtreme 03.06.2014 17:07

любой бессенсорный регулятор на 60А и выше вполне подойдёт.

Snp.Prophet 03.06.2014 22:39

Управляем бесколлекторными двигателями, господа

Привет Хабровчане!
Решил я рассказать «всему свету» о проблеме, с которой столкнулся при постройке своего проекта, и как мне удалось её решить.

А речь сегодня пойдет о бесколлекторных двигателях, о регуляторах хода и как ими управлять.
Что же такое бесколлекторный двигатель, я не буду долго расписывать (сами можете посмотреть Wiki), а скажу в 2х словах, это 3х фазный двигатель постоянного тока.

image

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

Первые проблемы
Были закуплены 2 комплекта двигатель + регулятор, ждал около месяца, пришли.

Мною овладел приступ безудержного веселья по этому поводу, но, к сожалению, это было ненадолго….
Рассмотрев эти чудеса техники я решил подключить их к источнику питания, и тут то первое разочарование, тихий хлопок (как от КЗ) и тишина, светодиоды не горят, писка нет (а он должен быть), только крутится кулер на регуле, беда…
Побежал в ближайший Хобби магазин, и добрый консультант вынес вердикт: сгорел!

Со вторым такая же история, в общем ребята, не повезло, оба бракованные…
Ну хоть кошечка порадовалась:

image

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

image

image

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

Перелопатив тонны сайтов, перечитав сотни форумов и ответов на мой вопрос, так как же управлять этим регулятором я слышать только одно: «…чувак да там простой ШИМ…», «… ШИМ тебе в помощь…».
Ну ШИМ, так ШИМ.
Написал простенькую программу:

#include Servo motor; int mot_pin = 7; //Подключаем левый мотор к пину 7 int js_position = 800; int max_position = 3000; void setup() < motor_teft.attach(mot_pin, js_position, max_position); //Инициальзация мотора >void loop() < motor.write(1800); //Записываем положение и отправляем на регулятор >

Залил, ноль эмоций…

Бился 2 дня, пока не наткнулся на случайный пост, о том, что у регулятора есть защита, и он начинает функционировать только при подаче на его вход ШИМ сигнала 1,5 мс.
Окей, будет сделано.

Дальше я подцепил обыкновенный резистор через АЦП, и опытным путем подобрал крайние значения ШИМ регулятора.
Код получившийся в итоге:

#include Servo motor_teft; Servo motor_right; int mot_pin_left = 7; //Подключаем левый мотор к пину 7 int mot_pin_right = 8; //Подключаем правый мотор к пину 8 int js_position = 1500; //Начальная позиция, всегда 1.5 мс для регуляторов бесколлекторных двигателей int max_position = 2300; //Максимальное значение ШИМ 2.3 мс int min_position = 800; //Минимальное значени ШИМ 0.8 мс int start = 1; //Флаг задержки запуска void setup() < motor_teft.attach(mot_pin_left, js_position, max_position); //Инициальзация левого мотора (порт, начальная позиция, максимальная позиция) . motor_right.attach(mot_pin_right, js_position, max_position); //Инициальзация правого мотора (порт, начальная позиция, максимальная позиция) . >void loop() < //Начальная установка регуляторов в нулевое положение if(start == 1) < motor_teft.write(js_position); motor_right.write(js_position); delay(700); start = 0; >js_position = analogRead(A0); //Считывание положения потенциометра js_position = map(js_position, 0, 1023, 75, 140); //Преобразование положения потенциометра в угол поворота motor_left.write(js_position); //Записываем положение и отправляем на регулятор левого мотора motor_right.write(js_position); //Записываем положение и отправляем на регулятор правого мотора delay(20); //Задержка цикла 20 мс > 

И все заработало.
Теперь все крутиться, шумит, пищит и просто радует.
P.S. Это код для управления сразу 2мя двигателями.

image

И последняя проблема, питание…
Здесь расскажу немного, а именно, от регулятора идет 3 провода:

Центральная колодка, по порядку Черный — минус, Красный — плюс и Белый — провод управления.

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

Спасибо большое за внимание.
Надеюсь мой опыт будет полезен для вас.
До скорых встреч.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *