DShot ESCs
DShot - це альтернативний протокол ESC, який має кілька переваг над PWM або OneShot:
- Зменшений час затримки.
- Підвищена надійність за допомогою контрольної суми.
- Не потрібна калібрування ESC, оскільки протокол використовує цифрове кодування.
- Зворотний зв'язок телеметрії доступний/підтримується на деяких ESC.
- Може змінювати напрямок обертання двигуна за допомогою команд при потребі (замість фізичного переміщення проводів / перепайки).
- Інші корисні команди підтримуються.
Ця тема показує, як підключити та налаштувати DShot ESC.
Wiring/Connections
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 Commands
Команди можна надсилати на ESC через MAVLink shell. Дивіться тут для повного посилання на підтримувані команди.
Найважливіші з них:
Make a motor connected to to FMU output pin 1 beep (helps with identifying motors)
shdshot beep1 -m 1
Retrieve ESC information (requires telemetry, see below):
shnsh> 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
Permanently set the spin direction of a motor connected to FMU output pin 1 (while motors are not spinning):
Set spin direction to
reversed
:shdshot reverse -m 1 dshot save -m 1
Retrieving ESC information will then show:
shRotation Direction: reversed
Set spin direction to
normal
:shdshot normal -m 1 dshot save -m 1
Retrieving ESC information will then show:
shRotation Direction: normal
INFO
- The commands will have no effect if the motors are spinning, or if the ESC is already set to the corresponding direction.
- The ESC will revert to its last saved direction (normal or reversed) on reboot if
save
is not called after changing the direction.
:::
Телеметрія
Деякі ESC можуть надсилати телеметрію до контролера польоту, включаючи:
- температура
- напруга
- струм
- накопичене поточне споживання
- Значення RPM
Ці DShot ESCs матимуть додатковий телеметрійний дріт.
Щоб увімкнути цю функцію (на ESC, які її підтримують):
- Об'єднайте всі дроти телеметрії з усіх ESC разом, а потім підключіть їх до одного з контактів RX на не використаному порту послідовного зв'язку контролера польоту.
- Увімкніть телеметрію на цьому послідовному порту за допомогою DSHOT_TEL_CFG.
Після перезавантаження ви можете перевірити, чи працює телеметрія (переконайтеся, що акумулятор підключений), використовуючи:
sh
dshot esc_info -m 1
TIP
Можливо, вам доведеться налаштувати MOT_POLE_COUNT, щоб отримати правильні значення обертів на хвилину (RPM).
TIP
Не всі ESC, які підтримують DSHOT, підтримують [esc_info]
(наприклад, APD 80F3x), навіть коли підтримується телеметрія та ввімкнено. Отримана помилка:
sh
ERROR [dshot] No data received. Якщо телеметрія налаштована правильно, спробуйте ще раз.
Перевірте документацію виробника для підтвердження/подробиць.