Прошивка Dshot для ESC

Aleksandr_L

Пытался понять, может проблема моих дергающихся моторов в мапинге ресурсов контроллера, но вроде DMA назначен на все моторы, кто разбирается посмотрите листинг:


# resource
resource BEEPER C15
resource MOTOR 1 A06
resource MOTOR 2 A07
resource MOTOR 3 A11
resource MOTOR 4 A12
resource PPM A00
resource PWM 1 A00
resource PWM 2 A01
resource PWM 3 B11
resource PWM 4 B10
resource PWM 5 B04
resource PWM 6 B05
resource PWM 7 B00
resource PWM 8 B01
resource LED_STRIP A08

# resource list
Currently active IO resource assignments:
(reboot to update)
--------------------
A00: PPM
A01: FREE
A02: FREE
A03: FREE
A04: ADC_BATT
A05: FREE
A06: MOTOR 1
A07: MOTOR 2
A08: FREE
A09: SERIAL_TX 1
A10: SERIAL_RX 1
A11: MOTOR 3
A12: MOTOR 4
A13: FREE
A14: FREE
A15: FREE
B00: FREE
B01: FREE
B02: FREE
B03: LED 1
B04: FREE
B05: FREE
B06: I2C_SCL 1
B07: I2C_SDA 1
B08: FREE
B09: FREE
B10: FREE
B11: FREE
B12: FLASH_CS
B13: SPI_SCK 2
B14: SPI_MISO 2
B15: SPI_MOSI 2
C13: MPU_EXTI
C14: FREE
C15: BEEPER
F00: FREE
F01: FREE
F03: FREE
F04: FREE


Currently active DMA:
--------------------
DMA1 Channel 1: MOTOR 3
DMA1 Channel 2: FREE
DMA1 Channel 3: MOTOR 1
DMA1 Channel 4: MOTOR 4
DMA1 Channel 5: FREE
DMA1 Channel 6: FREE
DMA1 Channel 7: MOTOR 2
DMA2 Channel 1: ADC
DMA2 Channel 2: FREE
DMA2 Channel 3: FREE
DMA2 Channel 4: FREE
DMA2 Channel 5: FREE

Дергается второй мотор и иногда, очень редко первый.
Если тестировать во вкладке моторы, все моторы крутятся стабильно.
Видимо все таки какая то помеха проскакивает, подозреваю из-за ВЕС-ов или OSD на борту мозга.

lunohod

Конденсаторы надо выпаять, дёргается из-за них.

Aleksandr_L
lunohod:

Конденсаторы надо выпаять, дёргается из-за них.

А почему только моторы 1 и 2? Тогда бы все дергались.
И каким образом фильтрующий конденсатор может сказаться на нулевом значении?
Ошибки в работе - да, срывы синхры - да, а на нуле как?

arb
Aleksandr_L:

а на нуле как?

Так из-за кондера большой емкости и нуля чистого нет. Есть завалы, которые мозг считывает по разному.
Привел же осциллограммы для понимания (что должно быть и что на самом деле приходит в мозг рега).

Aleksandr_L:

А почему только моторы 1 и 2? Тогда бы все дергались.

Емкости кондеров разные, вот и дергаются по разному.

Lavrentiiy

Всем привет. Как узнать версию прошивки регулятора, чтобы выбрать из списка .hex? Дело в том что Blheli версия отображается названием самого регулятора DYS XM20A. Так же ни какой инфы по своим регулям не нашёл. Эксперентировать не боюсь т.к. их у меня целая жменя.

Andreyvche
GT_80:

Выпаял конденсаторы , Dshot заработал.
Так что имейте в виду , на LittleBee Blheli_S 20 без выпаивания даже Dshot 150 не работает.
В принципе в списке совместимых регулей так и было написано про LittleBee …

Не делал фотку, какой кондер выпаивать?
Уже пробовал летать? Срывов нет?

GT_80

Не делал фотку, какой кондер выпаивать?
Уже пробовал летать? Срывов нет?

В списке совместимых регулей есть ссылка на фото ( на rcgroups) , где видно какой выпаивать.
Делал только тестовые подлеты в комнате. Все ОК . Нормальные полеты будут только весной.

Serёga

Парни, подскажите в чём может быть у меня проблема?
Поставил такие регули pirofliprc.com/Spedix-ES-25A-...SC_p_3536.html только от RCX (просто нет наклейки)
Прошил последнюю прошивку 16.6 в регули. В мозге Ф4 от Бангуда последняя 3.1.3
Смог запустить регули только на ваншот 125. Ни мультишот, ни любой дшот не работает. Включаешь мотор , а он пиликает, как будто перезагружается.
Кондёры не снимал, хотя видел в инете какие нужно снимать. Я думал кондёры нужно убирать для дшот600, а мне хотя бы дшот150 запустить.
2 дня уже парюсь и не могу разобраться.
Блхели-С вообще работаю с мультишотом? Или только с ваншотом и дшотом?

Nik_son
Lavrentiiy:

Всем привет. Как узнать версию прошивки регулятора, чтобы выбрать из списка .hex? Дело в том что Blheli версия отображается названием самого регулятора DYS XM20A. Так же ни какой инфы по своим регулям не нашёл. Эксперентировать не боюсь т.к. их у меня целая жменя.

На оф. Сайте DYS не рекомендуют самостоятельно менять прошивку в блхели сюит. У них вроде как свой какой то прошивальщик. У меня xs30a, на регулях указано что поддерживают ваншот 42 но я спокойно включил дшот 600 в бетафлай и работают отлично.

arb
Serёga:

Ни мультишот, ни любой дшот не работает.

Странно, что мшот не работает. Если ВШ42 еще не работает, то это уже совсем плохо.
Ну если Мшот не работает из-за кондера, то Дшот вообще не сможет работать.
Чем выше частота сигнала, тем сильнее его размазывает кондером.
Для кондера у Мшот типа 32кГц, а у Дшот150 уже 150 кГц. И т.д.

Fenixing
arb:

а у Дшот150 уже 150 кГц. И т.д.

8кгц примерно

arb
Fenixing:

8кгц примерно

8 кГц это частота пид луп (если еще заведется при дшот150) или по другому частота повторения пачки из 16 сигналов.
А вот частота этих 16 сигналов 150 кГц (отсюда и название дшот150). Для фильтра НЧ соответственно частота будет 150 кГц.

Может кто-нибудь подскажет как подкорректировать прошивку или куда обратиться за помощью.
А то слишком резко тормозит и на ВМГ получается ударная нагрузка.

13 days later
severteka
arb:

…Может кто-нибудь подскажет как подкорректировать прошивку или куда обратиться за помощью.
А то слишком резко тормозит и на ВМГ получается ударная нагрузка.

Когда впервые включил торможение, в blheli, тоже испугался, т.к. начали соскакивать 12 дюймовые пропеллеры с гайками при торможении. Моторы были CW, CCW на своих местах и я считал, что открутиться в полете никак не могут. Затягивал при этом не сильно. После этого начал просто хороше затягивать гайки.

По поводу силы или скорости этого торможения. Я думаю она зависит от параматров мотора и регулятора. Чем мощнее связка, тем быстрее разгон и и резче торможение. Вы ранее проводили тесты с несколькими регуляторами на скорость разгона при изменении управляющего сигнала. Регулятор-прошивка которые быстрее выходят на заданные обороты выглядят “привлекательнее”, т.к. максимально быстро выполняют пожелание контроллера. С торможением ситуация аналогичная. Сказали: “замри” , он и замер почти моментально, как от него и хотели. 😁
Сам не слышал, чтоб можно было регулировать скорость торможени и разгона. Но раньше в конфигураторе BLheli (тот что без S) Были какие-то параметры как у ПИД регулятора. По умолчанию они были не активные. Но их как-то можно было активировать и “крутить”, но я не пробовал. Это версии 14.4 может быть.

arb

Я думаю она зависит от параматров мотора и регулятора. Чем мощнее связка, тем быстрее разгон и и резче торможение. Вы ранее проводили тесты с несколькими регуляторами на скорость разгона при изменении управляющего сигнала. Регулятор-прошивка которые быстрее выходят на заданные обороты выглядят “привлекательнее”, т.к. максимально быстро выполняют пожелание контроллера.

Это все правильно.

С торможением ситуация аналогичная. Сказали: “замри” , он и замер почти моментально, как от него и хотели.

Если Вы смотрели результаты тестов в моем дневнике, то на графиках видно, что скорость снижения оборотов на последнем участке существенно превосходит скорость снижения с одного уровня на другой.
Разница заключена в принципе снижения оборотов. В работе снижается за счет управления самим регулятором. На последнем участке (собственно остановка, торможение) снижение происходит за счет закорачивания обмоток мотора между собой. И если на рейсерских моторах это работает слабо ввиду маленького момента, то на больших моторах с их большим моментом это работает как ударная нагрузка. И даже если винт не откручивается и не ломается, то это все равно удар по мотору и винту. Последствия могут сказаться со временем.
Как это работает можно проверить отключением рега и закорачиванием обмоток мотора. Когда вращаешь можно почувствовать как сопротивляется мотор.

severteka

До этого видел только графики в этой ветке. Посмотрел дневник - интересное и трудоемкое исследование.
Я понимаю процессы происходящие при замыкании обмоток вращающегося мотора. Самые большие мотры у меня 3110 480кв. При дизарме я слышу резкий звук остановки, но меня он не беспокоил. Возможно потому что торможени происходит с невысоких оборотов. Ну и это торможение, я думаю, всеравно не такое жесткое, как если между ротором и статором вставить лом.

Пока писал вспомнил принцип регулировки напряжения в мотоциклетных трехфазных генераторах (не совковых). Там внутри статора с обмотками, включенными по схеме “треугольник”, крутится ротор (постоянный магнит) надетый на коленвал. Диапазон оборотов от 1000 на хх до 10-15 тысяч в минуту. На ХХ на обмотка порядка 12-15В на максимальных под 300В. Так вот там регулировка напряжения происходит закорачиванием обмоток при помощи симисторов в момент, когда напражение на обмотке достигает заданной величины. При этом величина тока в обмотке на превышает определенного (зависящего от конфигурации генератора) значения, и похоже (уже подзабылось), не зависит от оборотов ротора. При этом греющееся обмотки статора охлаждаются маслом смазывающим двигатель (температура около 100 градусов, если сильно не газовать). Провода идущие к реле регулятору тоже греются, но не сильно. И все это работает весьма долго и надежно. Ндаааа… понесло…

arb
severteka:

При дизарме я слышу резкий звук остановки, но меня он не беспокоил.

Да тоже сначала не придавал значение и даже поначалу считал это достоинством, но при больших моментах уже очевидна разрушительность функции. А на малых неприятны улеты винтов.

severteka:

Возможно потому что торможени происходит с невысоких оборотов.

На сегодня, к сожалению, это единственная защита от этой функции.

9 days later
Александр_Г

Э, вопрос чисто теоретический- как протокол дшот работает без калибровки регулей, где скрыта инфа по минимуму и максимуму газа?
Или всё жестко привязано к 1000-1500-2000?

PaulM

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

Александр_Г
PaulM:

Протокол цифровой, поэтому калибровка не нужна, все значения передаются явно, иное толкование невозможно

Тут всё понятно, видимо не так задал вопрос.
Это я ступил, все определяется в МК (min и max газ)

arb

Похоже Дшот в Блхели_С остановился на 600.
1200 уже будет только на Блхели32. Соответственно новые реги.
Зато вроде будут новые вкусности.

PaulM
Александр_Г:

все определяется в МК (min и max газ)

да, при этом min и max уже не задаются пользователем, а фиксированы, привязаны к соответствующим значениям в протоколе