Прошивка регуляторов оборотов на BLHeli через Arduino UNO
Зачем
Название прошивки неоднозначно намекает на ее применение в РУ вертолетах (helicopter). Так и есть - если углубиться в историю, то можно узнать, что первые вертолеты летали на неэффективных и быстроизнашивающихся коллекторных двигателях, обороты которых регулировались открытием одного транзистора, который управлялся PWM (ШИМ) сигналом с приемника (то есть фактически изменением питающего напряжения).
Прошивка BLHeli позволяет регулятору оборотов (ESC) на чипе Silabs понимать PWM-сигнал, что собственно исключает этап конвертации сигнала и задержку отклика, что незаменимо в DroneRacing’е.
Кроме того, данная прошивка позволяет настраивать множество параметров регулятора прямо через полетный контроллер - не прибегая к пайке и/или разборке коптера.
Подготовка
Список поддерживаемых регуляторов: официальный репозиторийЕсли нужный регулятор присутствует в документе - идем дальше: на фотографиях указаны точки, к которым нужно подпаяться. Далее рассмотрим пример регуляторов EMAX 12A
Из документа узнаем точки пайки (1). Желательно при пайке использовать провода того же цвета, что и маркеры на фото также в качестве доп. информации рекомендую подпаять и четвертый контакт - это питание микроконтроллера 3,3 В - позволит не запитывать регулятор оборотов через силовой вход. По типу разъемов: оранжевый провод - папа, все остальные - мама (при использовании Arduino Uno для прошивки).
Кроме того, под цифрой (2) видим, что для прошивки подойдет файл от регулятора XP 12A.

![]() | ![]() |
Программатор
Как понятно из названия статьи, в роли программатора может выступить Arduino UNO, чей загрузчик будет прошит под текущие нужды. А сделать это можно через саму программу BLHeli.Качаем архив с офф. сайта и распаковываем (архив начинающийся с BLHeliSuite32… - для 32bit регуляторов).
Подразумеваем, что драйвер Arduino установлен, плата подключена к компьютеру и распознана как Arduino UNO => известен задействованный под нее COM-порт.







Прошивка
Если цвета проводов, припаянных к регулятору совпадают с рекомендациями, то подсоединяем их к Arduino следующим образом (оранжевый, питающий контроллер регулятора - к разъему 3,3 В в колодке POWER - не перепутать с 5 В !!!):


Жмем Flash BLHeli и выбираем из списка файл прошивки ВАЖНО правильно выбрать тип:
- MULTI - для коптера
- MAIN - для главного ротора вертолета
- TAIL - для хвостового


