Обсуждение и перепрошивка регуляторов (ESC) прошивками SimonK/BLHeli

An_private

Чёрт, ничего не понимаю… Поменял inc файл, переназначил все пины. Всё пять раз перепроверил. Прошил. Подаю питание, радостно пищит. Подаю ppm на вход 1200. Начинает медленно крутиться (1-2 оборота в секунду) и всё - не разгоняется. Ест где-то полампера при этом. Греется немного сам моторчик и градусов до 40-50 силовые ключи. Включаю реверс через blheli - крутится в другую сторону с такой же скоростью. Все пины и сигналы проверил - драйвера живые, сигнал до ключей доходит, ключи, вроде, тоже живые, сигнал обратной связи на все 4 положенных пина доходит. Что ему еще надо - ума не приложу…

An_private
ssilk:

ШИМ?

Приборы? Что приборы? 😃
ШИМ присутствует, конечно 😃
То есть на пинах сигналы управления присутствуют - могу осциллограммы дать.
Такое ощущение, что с обратной связью что-то не то - то ли где-то что-то перепутано, то ли где-то что-то сдохло. Но прохождение сигналов до пинов я проверил.
Попробую сегодня взять запасной Overskyrc MR-20A, перепрошить его в BlHeli и посмотреть - где там и что происходит. Может хоть что-то пойму…

ssilk

Не управления… Я имею ввиду частоту коммутации, от нее непосредственно обороты зависят. Если она слишком низкая или слишком высокая мотору не хватит мощности обороты набрать. Еще момент: Бывают моторы(не хоббийные, из разных отраслей), у которых обороты меняются сдвигом фазы. Например, 0 или 180 это максимальная мощность и обороты, а 90 или 270 - минимальные. Посмотрите в сторону тайминга, это и есть сдвиг фазы…
Я тут недавно тоже запускал бесколлекторник с датчиками Холла, либо не крутится вообще, либо только в ненужную сторону, пока до меня дошло что датчики надо переполюсовывать вместе с силовыми я изрядно поматерился и собирался уже спор открывать…) Засада в том, что нет схемы подключения мотора к драйверу…)

An_private
ssilk:

Я имею ввиду частоту коммутации

Ну так её полностью определяет контроллер - я в неё вмешиваться не могу никак.
Вот так выглядит сигнал на фазах двигателя:

Визуально правдоподобно…

An_private

А ни у кого нету, случайно, схемы какого-нибудь ESC на Silabs, который бы поддерживал BLHELI? Ничего не могу найти. Хочу кое-какие принципы устройства проверить…

ssilk

Поздравляю… И в чем дело было?

An_private
ssilk:

в чем дело было?

Ну, привычка читать комментарии к коду сыграла плохую роль в данном случае. Кратко:

  • в коде задефайнены пины, соответствующие входам драйверов
  • выглядит это примерно так:
    AnFET EQU 5 ;o “nFETs” are really the high side drivers
    BnFET EQU 4 ;o
    CnFET EQU 3 ;o
    ApFET EQU 2 ;o “pFETs” are really the low side drivers
    BpFET EQU 1 ;o
    CpFET EQU 0 ;o
  • читаю комментарии и вижу, что pFET - нижняя сторона, а nFET - верхняя
  • несколько удивляюсь (так как обычно наоборот), но вбиваю пины в соответствии с комментами
  • ни хрена не работает
  • вожусь полтора дня, снимаю полную схему - всё правильно, но не работает
    Тут я начинаю что-то подозревать 😃 Ищу в инете фото самого простого трёхамперного ESC вообще без драйверов. Беру соответствующий ему inc-файл. И за 10 минут убеждаюсь, что как и подсказывает логика - nFET - нижние, pFET - верхние.
    Долго матерюсь.
    Перезабиваю определения и макросы - тут же всё начинает крутиться как родное.
    Остались не совсем понятны две вещи:
  • в каких единицах забиваются задержки между коммутациями для избежания входного тока? Пока поставил примерно средние по больнице, так как судя по схеме этот ESC должен быть довольно быстрым
  • от чего зависит вид макроса, который делает DampingLight. В разных inc он разный и пока не понял чётко закономерность. Вроде и так работает, но как-то это не совсем правильно.
Hyperion

на фоне этого
rcopen.com/forum/f123/topic276142/25461
решил сравнить damped light в blheli и motor_brake в simonke

youtu.be/fUtqhOsaN9o

по стоп кадрам сделал несколько замеров дабы усреднить показания и в целом вырисовалась следующая картина
simonk_vs_blheli by Alexey Degterev, on Flickr
а картина такова.
simonk_vs_blheli_chart by Alexey Degterev, on Flickr

  1. Без Торможения blheli жрет больше тока. Теперь это 100% точно доказано для себя. А то были сомнения.
  2. Damped light оказывает самым экономичным режимом.
  3. У Simonk режимы более сбалансированы. Самый экономичный оказывается comp_pwm off motor_brake off
  4. comp_pwm какой то непонятный режим. По работе мотора я не увидел эффекта
  5. motor_brake работает аналогично damped light. Но торможение более плавное. У второго торможение более резкое.
Hyperion

меряю эффективность при тяге ~300г. Именно такой вес коптера у меня - 1200г и такая тяга нужна.

SergejK
Hyperion:

решил сравнить damped light в blheli и motor_brake в simonke

Вообще comp_pwm это аналог damped light. На эффективность кроме прошивки будет влиять еще и схемотехника регулятора, в идеале нужно использовать один и тот же. Незнаю правда, насколько блхели хорош на атмегах, всетаки точат его в основном под силабсы. На разных регулях сравнение врядли будет 100% корректным. Кроме того тот же тайминг тоже может влиять на эффективность. А найти одинаковый по характеристикам для обеих прошивок весьма проблематично.

Hyperion

Регуль один и тот же! ztw spider lite 18a. На atmel чипе конечно же. damped light включался и отключался через конфигуратор между тестами. Симонк заливался через rapidflash с указанием режимов (comp_pwm и motor_brake)

SergejK:

Вообще comp_pwm это аналог damped light.

Я тоже так думал, как оказалось нет. Тоже думал что это аналог damped light - но на видео видно что с включеным comp_pwm торможение не работает. Тайминги везде дефолт. Я до этого сравнивал эти моторы на блхели с разными таймингами. Срывов нету в любых диапазонах. Эффективность в пределах погрешности. Таки и летаю на дефолтныйх. Моторы 980кв и пропы 10дюймов.

SergejK
Hyperion:

Я тоже так думал, как оказалось нет.

Да нет, так и есть. У саймонк торможение и comp_pwm это разные вещи. Если на пальцах, то торможение работает при остановке, а comp_pwm только при вращении. Потому торможение и заметно в принципе.

Hyperion

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

youtu.be/0M1iOlgDxJk

снял второе видео.
прямо кардинально отличается работа регулей.
пояснение. На blheli при поднятии газа от нуля до середины обороты не меняются. Причем это так стало в прошивке 3.4 апм коптера. При уровне газа середина и чуть выше коптер сразу взлетает.
на симонке же газ растет линейно как и было на старых прошивках. При этом если коптер стоит криво, то один из моторов не крутится. Стоит его наклонить - начинает вращаться. При этом сразу после калибровки газ растет линейно. Блхели был откалибровка до записи видео (летал на этой прошивке) а симонк калибровал на видео. К сожалению не снял как реагирует блхели на газ сразу после калибровки.

ssilk
Hyperion:

При этом если коптер стоит криво, то один из моторов не крутится. Стоит его наклонить - начинает вращаться. При этом сразу после калибровки газ растет линейно

Не парьтесь по этому поводу, так и должно быть… Сразу после калибровки сигнал на регули идет байпассом на регули, потому и линейно… Как только питание переподключили байпасс отключается и сигнал идет через мозг, то есть просчитывается алгоритмом стабилизации… У меня так на любых регулях и любых контроллерах, кроме самых тупых…

Hyperion

Сергей, я не парюсь) Просто интересно что разные прошивки совершенно по разному ведут себя)

wbcs

Всем привет!
Уважаемые гуру, такой вот вопросец - имел ли кто дело с регами Emax Nano 20A OPTO?
Чем шьются/настраиваются? Есть ли для них ЮСБ “свисток”, или тока подпаиваться к регу?
Реги из ЭТОГО набора.
На вид как этот, только на 20А.

Чип Силаб, Ф330.

Всем заранее спасибо!

Hyperion

Как правильно конфигурировать симонк прошивку перед заливкой?
Использую Rapidflash
Надо ли STOP RC PULS, FULL RC PULS указывать то которое настроил в трансмиттере? RC CALIBRATION включено. Перезаписываются ли это параметры при калибровке регулей через полетник?
все таки не дает мне такое поведение моторов на 4.3 прошивке)

youtu.be/0M1iOlgDxJk

при этом на 3.3 все раскручивается прелестно синхронно. Ни один мотор не останавливается)