Перейти к содержимому

Моторы и ESC … ↩ 9.13 m4

mod. Среда, 07 октября 2026 14:55 . См. 85

Betaflight без GUI · Урок 9 из 13 · Модуль 4. Моторы и безопасность

Протокол ESC, переназначение выводов и ручной тест моторов — вкладка Motors в командах, со снятыми винтами.

Команда motor раскручивает моторы по-настоящему. Всегда снимайте пропеллеры перед тестом — даже на 5% газа винт травмирует.

Содержание

1. Цели урока

После этого урока вы будете понимать:

  • как задать протокол ESC (motor_pwm_protocol)
  • как переназначить выводы моторов (resource)
  • как тестировать моторы (motor)
  • почему сами ESC настраиваются отдельным инструментом
↑ К оглавлению
motors_section_2bb77.png

2. Шаг 1. Протокол ESC

На скриншоте открыт блок [Настройки ESC / Моторов]. Его числа не являются универсальными настройками. Положение переключателя [3D режим] на картинке не доказывает, что эта функция включена в контроллере сейчас: проверяйте состояние через feature в CLI.

Поле на скриншотеCLIПрактический смысл
[Протокол ESC / Мотора] — DSHOT300 set motor_pwm_protocol = DSHOT300 Выбранный на снимке цифровой протокол; конкретную скорость DShot выбирайте по возможностям полётника и ESC.
[Двунаправленный DShot] — включён set dshot_bidir = ON Обратная RPM-телеметрия для функций вроде RPM-фильтра; требует совместимого ESC.
[3D режим] — переключатель на снимке feature (проверить включённые фичи) Если 3D включен, нейтраль DShot становится 1500. Не включайте режим по примеру скрина. Он приведен исключительно для полноты информации по CLI.
Не на скриншоте: другие протоколы set motor_pwm_protocol = DSHOT600 / set motor_pwm_protocol = MULTISHOT Это альтернативы, а не дополнительные настройки к DSHOT300; выбирается один поддерживаемый протокол.
3D: команда feature без аргументов перечисляет Enabled функции текущей конфигурации. В предоставленном выводе может быть RX_SERIAL GPS TELEMETRY OSD AIRMODE ANTI_GRAVITY, а 3D нет — значит, при этой проверке 3D выключена. feature list покажет доступные имена, включая 3D в стандартном Betaflight 4.5.4; «доступна» не означает «включена».
DShot не требует калибровки диапазона газа ESC: Это цифровой протокол; выбор DSHOT600 «по умолчанию для всех» неверен. Перед изменениями узнайте модель и возможности своего ESC.
↑ К оглавлению

3. Шаг 2. Выводы и направление моторов

Переназначение выводов (resource)

Если моторы подключены не на стандартные выходы, их «переназначают» (remapping). В CLI — команда resource.

# resource
# resource MOTOR 1 B01
Продвинутая операция: Нужна редко — только при нестандартной распайке. Список допустимых выводов — в документации платы.

Реверс направления

С DShot направление вращения переворачивается программно, без перепайки — через BLHeli passthrough или ESC Configurator.

↑ К оглавлению

4. Шаг 3. Ручной тест моторов

Снимите пропеллеры до любого теста: Команда motor задаёт выход мотора даже без взлёта. Ваш вывод feature не содержит 3D: при этой проверке действует обычный режим, несмотря на положение переключателя на скриншоте. Проверяйте feature непосредственно перед испытанием; если мотор не останавливается ожидаемо — отключите питание безопасным способом.

В CLI синтаксис motor <индекс> <значение>: индексы начинаются с нуля, а допустимое значение в Betaflight 4.5.4 — от 1000 до 2000. Это внешняя шкала команды, а не процент газа и не длительность импульса DShot. Ползунок 1 в GUI соответствует motor 0 в CLI.

УсловияКоманда нейтрали/остановки DShotОсторожность
Обычный DShot, режим 3D выключен motor 0 1000 В коде 4.5.4 нижняя граница 1000 преобразуется в команду остановки DShot.
DShot, и feature выводит 3D в Enabled motor 0 1500 Только при действительно включённом 3D нейтраль — 1500. Если 3D отсутствует в Enabled, 1500 может раскрутить мотор!
Команда motor 0 0 НЕ останавливает мотор: motor 0 0 вне допустимого диапазона: CLI отвергает её, не изменяя ранее установленный моторный выход. Значение 1200 нельзя считать «20 % вперёд» для DShot 3D: режим меняет направление и шкалу. В вашем текущем выводе feature режима 3D нет; исходите из фактического состояния контроллера, а не только из скриншота.
Нумерация различается: motor нумерует с нуля (0, 1, 2, 3), а resource MOTOR — с единицы (MOTOR 1..4).
↑ К оглавлению

5. BLHeli passthrough

Прошивка ESC (например, BLHeli_S / BLHeli_32) отличается от прошивки полетного контроллера. Для её параметров используют совместимый ESC Configurator / BLHeliSuite и поддерживаемый им проход к ESC; обычная CLI-команда полётника не заменяет этот инструмент.

dshotprog — не вход в BLHeli passthrough: В Betaflight 4.5.4 dshotprog требует индекс мотора и коды DShot-команд: dshotprog <index> <command>+. Команда без аргументов выдаст ошибку, а передавать случайные коды ESC небезопасно. Не используйте её как шаг подключения к BLHeliSuite.
↑ К оглавлению

6. Таблица соответствия

Поле GUI / операцияCLIЗамечание по скриншоту
[Протокол ESC / Мотора] — DSHOT300 set motor_pwm_protocol = DSHOT300 На снимке выбран DSHOT300, не DSHOT600.
[Двунаправленный DShot] set dshot_bidir = ON Требуется поддержка RPM-телеметрии самим ESC.
Переназначить вывод 1-го мотора resource MOTOR 1 B01 B01 приведён только как пример: пин выбирают по схеме конкретной платы.
Тест отдельного мотора motor <индекс> <1000–2000> Только без пропеллеров; нейтраль различается для обычного и 3D DShot.
Настройка прошивки ESC Внешний ESC Configurator / BLHeliSuite dshotprog — не команда входа в BLHeli passthrough.
↑ К оглавлению

7. Практика

Задание 9.1. Протокол и безопасность

Только чтение конфигурации: запускать моторы не требуется.

  • get motor_pwm_protocol — узнайте текущий протокол, сравните с возможностями своего ESC.
  • get dshot_bidir, feature и feature list — различите включённые функции от доступных. В приведённом вами выводе 3D не включена.
  • Объясните, почему в обычном DShot нейтраль внешней шкалы — 1000, а при DShot 3D — 1500.
  • Объясните, почему motor 0 0 не остановит мотор. Команды motor в этом упражнении не вводите.
↑ К оглавлению

8. Проверьте себя

Сформулируйте ответ своими словами, прежде чем сверяться со справочником ответов (последняя статья курса).

  1. Почему DShot не требует калибровки ESC?
  2. Чем нумерация motor отличается от resource MOTOR?
  3. Почему ESC настраиваются отдельным инструментом, а не CLI полётника?
  4. Почему motor 0 0 не остановит мотор? Как определить по feature, нужна ли нейтраль 1000 или 1500?
↑ К оглавлению

9. Чек-лист самопроверки

  • Знаю протокол своих ESC и умею его задать
  • Понимаю, что resource переназначает выводы
  • Знаю разницу: motor нумерует с 0, resource MOTOR — с 1
  • Знаю допустимый диапазон motor и что нейтраль 3D DShot — 1500, а не 1000
  • Помню, что параметры ESC настраиваются отдельным инструментом, не голой командой dshotprog
Результат: Все пункты выполнены — переходите к следующему уроку.
↑ К оглавлению

10. Что дальше

  • Предыдущий урок: 8. Питание и батарея
  • Следующий урок: 10. Фейлсейф
  • Полный перечень тем — в статье «Содержание курса».
↑ К оглавлению
  • мод. : Среда, 07 октября 2026