Skip to content

DShot ESCs

DShot - це альтернативний протокол ESC, який має кілька переваг над PWM або OneShot:

  • Зменшений час затримки.
  • Підвищена надійність за допомогою контрольної суми.
  • Не потрібна калібрування ESC, оскільки протокол використовує цифрове кодування.
  • Зворотний зв'язок телеметрії доступний/підтримується на деяких ESC.
  • Може змінювати напрямок обертання двигуна за допомогою команд при потребі (замість фізичного переміщення проводів / перепайки).
  • Інші корисні команди підтримуються.

Ця тема показує, як підключити та налаштувати DShot ESC.

Проводка/З'єднання

DShot ESC підключені так само, як PWM ESCs. Єдина відмінність полягає в тому, що їх можна підключити лише до FMU, і зазвичай лише до певного підмножини контактів.

::: інформація Можливо, вам захочеться перевірити екран конфігурації приводу, щоб побачити, які контакти доступні для DShot на вашому контролері, перш ніж підключати їх! :::

Контролери Pixhawk з якими є як плата FMU, так і плата IO, зазвичай позначають їх як AUX (FMU) та MAIN (IO) відповідно. Ці відповідають виходам PWM AUX та PWM MAIN на вкладці конфігурації приводу. Для цих контролерів підключіть DShot ESC до порту AUX.

Контролери, які не мають плати введення-виведення (IO board), зазвичай позначають (один) вихідний порт як MAIN, і саме тут ви підключите свій DShot ESC. Якщо контролер без IO має власне програмне забезпечення, призначення приводу буде до відповідних виходів PWM MAIN. Однак, якщо для апаратного забезпечення з/без плати введення/виведення використовується та ж прошивка, наприклад, для Pixhawk 4 та Pixhawk 4 Mini, то вкладка призначення приводів в обох випадках однакова: PWM AUX (тобто не відповідає мітці порта MAIN у випадку "міні").

Налаштування

WARNING

Видаліть гвинти пропелерів перед зміною параметрів конфігурації ESC!

Увімкніть DShot для необхідних виходів у Конфігурації приводів.

DShot має різні варіанти швидкості: DShot150, DShot300, DShot600 та DShot1200, де число вказує на швидкість у кілобітах/секунду. Ви повинні встановити параметр на найвищу швидкість, підтримувану вашим ESC (згідно з його технічним описом).

Підключіть батарею та озбройте транспортний засіб. РЕГБ повинні ініціалізуватися, а мотори повинні обертатися в правильних напрямках.

  • Якщо двигуни не обертаються в правильному напрямку (для вибраної конструкції повітряного судна), ви можете змінити їх напрямок у користувацькому інтерфейсі, використовуючи опцію Встановити напрямок обертання (ця опція з'являється після вибору DShot та призначення двигунів). Ви також можете реверсувати двигуни, відправивши команду ESC.

Команди ESC

Команди можна надсилати на ESC через MAVLink shell. Дивіться тут для повного посилання на підтримувані команди.

Найважливіші з них:

  • Зробіть перший сигнал двигуна (допомагає ідентифікувати мотори):

    dshot beep1 -m 1
  • Отримати інформацію ESC (потрібно телеметрію, див. нижче):

    nsh> dshot esc_info -m 2
    INFO  [dshot] ESC Type: #TEKKO32_4in1#
    INFO  [dshot] MCU Serial Number: xxxxxx-xxxxxx-xxxxxx-xxxxxx
    INFO  [dshot] Firmware version: 32.60
    INFO  [dshot] Rotation Direction: normal
    INFO  [dshot] 3D Mode: off
    INFO  [dshot] Low voltage Limit: off
    INFO  [dshot] Current Limit: off
    INFO  [dshot] LED 0: unsupported
    INFO  [dshot] LED 1: unsupported
    INFO  [dshot] LED 2: unsupported
    INFO  [dshot] LED 3: unsupported
    • Назавжди змініть напрямок обертання першого двигуна:
    dshot reverse -m 1
    dshot save -m 1

    Отримання інформації ESC після команди dshot reverse -m 1 без команди dshot save -m 1 покаже:

    Rotation Direction: reversed

    після збереження його за допомогою команди dshot save -m 1, зворотній напрямок стане новим звичайним напрямком:

    Rotation Direction: normal

    Щоб змінити напрямок знову, потрібно відправити нову команду dshot reverse -m 1.

Телеметрія

Деякі ESC можуть надсилати телеметрію до контролера польоту, включаючи:

  • температура
  • напруга
  • струм
  • накопичене поточне споживання
  • Значення RPM

Ці DShot ESCs матимуть додатковий телеметрійний дріт.

Щоб увімкнути цю функцію (на ESC, які її підтримують):

  1. Об'єднайте всі дроти телеметрії з усіх ESC разом, а потім підключіть їх до одного з контактів RX на не використаному порту послідовного зв'язку контролера польоту.
  2. Увімкніть телеметрію на цьому послідовному порту за допомогою DSHOT_TEL_CFG.

Після перезавантаження ви можете перевірити, чи працює телеметрія (переконайтеся, що акумулятор підключений), використовуючи:

dshot esc_info -m 1

TIP

Можливо, вам доведеться налаштувати MOT_POLE_COUNT, щоб отримати правильні значення обертів на хвилину (RPM).

TIP

Не всі ESC, які підтримують DSHOT, підтримують [esc_info] (наприклад, APD 80F3x), навіть коли підтримується телеметрія та ввімкнено. Отримана помилка:

ERROR [dshot] No data received. Якщо телеметрія налаштована правильно, спробуйте ще раз.

Перевірте документацію виробника для підтвердження/подробиць.