RSS лента

An_private

Перепрошивка регулятора Cheerson CX20 ver 2.4b прошивкой BlHeli

Рейтинг: 5.00. Голосов: 2.
15.12.2016 в 11:48 (2135 Показов)
DISCLAIMER

Данная прошивка является неофициальной! Автор не несёт ответственности за любые проблемы, вызванные использованием ESC с этой прошивкой! Во время прошивки соблюдайте предосторожности, описанные далее!

ДАННАЯ ПРОШИВКА РАБОТАЕТ ТОЛЬКО НА РЕГУЛЯТОРАХ ВЕРСИИ 2.4b. РЕГУЛЯТОРЫ 1.6 ИМЕЮТ ДРУГУЮ СХЕМУ И С ДАННОЙ ПРОШИВКОЙ РАБОТАТЬ НЕ БУДУТ!!!

Предыстория

Как известно многим пользователям Cheerson CX20 родные регуляторы имеют неприятную привычку со временем выходить из строя сами по себе. Обычно это происходит после долгого стояния. Симптомы - либо просто полная тишина, либо непрекращающийся прерывистый писк вместо нормальной инициализации. Судя по симптомам - проблемы во входе в какой-то некорректный режим, а не железные.
Столкнулся с такой проблемой и я. Был заказан и получен новый регулятор, после чего я попытался снять с него прошивку. Выяснилось, что производитель закрывает прошивку от чтения и снять её нельзя. Посмотрев внимательно на устройство ESC я подумал, что на него вполне нормально должен встать BlHeli для микроконтроллеров SiLabs. Убив на это дело пару дней мне таки удалось заставить работать BlHeli на данном ESC.

Исходные данные

По всему тексту я буду ссылаться на файлы в папке на GoogleDrive:
https://drive.google.com/open?id=0B4...DRzbmk2cUVnSTQ
Если я просто даю имя файла - надо его скачать оттуда. В некоторых случаях буду давать прямые линки на сторонние ресурсы.
В процессе работы была снята полная схема ESC:
cx20_esc.pdf
Все обозначения деталей соответствуют фотографиям face.jpg и rear.jpg.
Тип драйверов на самом деле неизвестен, так как затёрты - были взяты подобные по функциям. Особенности - внутренний диод на бустер (обычно внешний), инвертированный сигнал по нижнему драйверу (выход активен при 0 на входе).
Силовые транзисторы PK650BA, их Datasheet:
http://www.unikc.com.cn/UploadFile/p...1_20150720.pdf
Кратко: до 30В, сопротивление в открытом состоянии 3.3мОм, постоянный прямой ток - 19А, импульсный - до 100А, время включения - 23нс, время выключения - 40 нс. В общем - очень приличные параметры.

Необходимое

Для прошивки надо приготовить:
Arduino Nano - одна из самых дешёвых ардуин, меньше 2$
Лампочку на 12В. Желательно на небольшую мощность, например какую-нибудь подсветки салона из машины.
Провода, паяльник, терпение.

Процедура прошивки

Скачиваем BLHeliSuite16514801.zip , распаковываем его в любое место.
Скачиваем обновление 16514800to16514801patch.zip , распаковываем его туда же.
Качаем прошивку XP_3A_MULTI_REV14_8.HEX

Подключаем Arduino Nano по USB, ждём появления нового последовательного порта и смотрим его номер в диспетчере устройств. У меня это COM6, в дальнейшем буду использовать этот номер. Если вместо последовательного порта обнаружилось неизвестное устройство - качаем драйвера для CH340 и устанавливаем:
http://www.wch.cn/download/CH341SER_ZIP.html
Либо гуглением они находятся за 5 минут.

Запускаем BlHeliSuite.
Идём на закладку MakeIntefaces.
Панель Make Arduino Interface Boards.
Arduino Board - выбираем Nano w/ Atmega 328.
Baud - 57600
Port (в самом низу) - выбираем тот, на который встала Arduino.
Нажмите на изображение для увеличения
Название: blheli1.jpg
Просмотров: 45
Размер:	88.4 Кб
ID:	1279517
Теперь жмём по нижней кнопке: Arduino 4Way-interface
Появится окошечко подтверждения, нажимаем OK.
Появляется окно выбора файла прошивки. Выбираем:
4wArduino_Nano__16_PB3PB4v16400.hex
ВНИМАНИЕ: именно с PB3PB4 в имени, не перепутайте.
Еще одно окошечко подтверждения - жмём Yes.
Появится окно со всякими бегающими строками, всё должно закончиться окном с сообщениями от флешера и кнопкой OK. Убеждаемся, что последняя строка от флешера "done. Thank you" и жмём OK.
Всё, Silabs C2 интерфейс для прошивки подготовлен. Пока отключаем Arduino от USB.

Вытаскиваем ESC, отпаиваем провода мотора, отключаем управление, отпаиваем питание, кладём на стол.
Подпаиваем три коротких проводочка (сантиметров 10-15, не более) к Arduino:
Нажмите на изображение для увеличения
Название: owsilprog-arduino-nano-setup-02-02-wp1.jpg
Просмотров: 112
Размер:	46.0 Кб
ID:	1279527
С другой стороны подпаиваем их к ESC в соответствии с картинкой:
Нажмите на изображение для увеличения
Название: ci.jpg
Просмотров: 75
Размер:	58.1 Кб
ID:	1279528
VDD НЕ ПАЯЕМ
От отдельной батарейки ЧЕРЕЗ ЛАМПОЧКУ заводим питание на ESC. Лампочка защитит от бросков тока, если вдруг ключи откроются неправильно во время перепрошивки.
Подключаем Arduino к USB.
Запускаем BlHeliSuite. Закладка SiLabs ESC Setup. Меню Select Atmel / Silabs Interface - выбираем вариант B Silabs C2 (4way-if).
Внизу проверяем номер порта, должен быть тот, Arduino. Нажимаем около него Connect.
На родном ESC выдастся ошибка, что память не может быть считана, игнорируем.
Нажимаем Flash other. Появится окно выбора файла - выбираем тот самый скачанный XP_3A_MULTI_REV14_8.HEX
Будет предупреждение какое-то - типа "Вы уверены, что хотите прошить именно этот файл". Отвечаем Yes. Если всё нормально, то побегут отсчёты Write, потом Read.
Появится табличка с надписью "Flashed file succesfully" и кучей предупреждений. Жмём Ок.
Появится вопрос: Do you want write current settings to ESC? То есть сохранить ли текущие настройки в ESC. Если вы еще не настраивали ESC, то нажимаем NO.
Всё, прошились.
Настраиваем. Мои рекомендации (многие взяты с потолка):
Closed loop mode: Off
Motor Gain: x1.00
Startup power: 1.00
Temperature protection: On
PWM Output Dither: 7
Low RPM power protect: On
Brake on Stop: On
Motor direction: Normal
Demag compensation: Low
PWM Frequency/ Damped: High
Enable PWM Input: off
Motor timing: MediumHigh
Input polarity: Positive

Programming by TX: галочка снята
Остальное на ваш вкус - там всё понятно.
Настроили - давим на Write Setup и потом на Restart ESC.

Всё. Подключаем мотор, подключаем управление, пробуем покрутить (пока с лампочкой).
Если мотор без пропеллера, то на малых оборотах ток должен быть порядка 200-300 мА.
Если больше - что-то не так. Я проверял от лабораторного блока питания - там проще оценивать потребление.

TODO:
- времена включения/выключения сейчас в прошивке стоят по прикидке. Надо бы померить реальные и понять - в каких единицах они задаются в прошивке
- разобраться с DampedLight. Вроде он работает, но какой вариант макроса надо ставить в прошивке - пока не понял

Обновлено 11.01.2017 в 10:38 [ARG:5 UNDEFINED]

Метки: blheli
Категории
Без категории

Комментарии

  1. Аватар для An_private
    Так, с DampedLight разобрался, вроде. Работает. Вообще впечатляет мгновенная смена оборотов Но надо как-то жёстко крепить винты - иначе на торможении открутятся.
  2. Аватар для darkcats
    вопрос: а в качестве ардуины, Usbasp программатор пойдет? он же тоже не атмеге.... и миним осд я им поднимал) и точки MISO и MOSI на нем есть и разъем 6 пин))
  3. Аватар для An_private
    Цитата Сообщение от darkcats
    вопрос: а в качестве ардуины, Usbasf программатор пойдет? он же тоже не атмеге.... и миним осд я им поднимал) и точки MISO и MOSI на нем есть и разъем 6 пин))
    Штатными средствами не пойдёт. BlHeliSuite требует стандартного Silab С2 интерфейса, который он сам делает из любой ардуины. Скачайте BlHeliSuite - посмотрите там доступные интерфейсы.
  4. Аватар для darkcats
    Цитата Сообщение от An_private
    Штатными средствами не пойдёт. BlHeliSuite требует стандартного Silab С2 интерфейса, который он сам делает из любой ардуины. Скачайте BlHeliSuite - посмотрите там доступные интерфейсы.
    понятно, заказал уже ARDUINO NANO за 3 бакса))) с али)
  5. Аватар для An_private
    Цитата Сообщение от darkcats
    понятно, заказал уже ARDUINO NANO за 3 бакса))) с али)
    Грабёж Тут за 2.15$
    https://www.aliexpress.com/item/Free...382480158.html
    А для интерфейса только можно и на Atmega168 взять за 1.92$
  6. Аватар для darkcats
    Цитата Сообщение от An_private
    Грабёж Тут за 2.15$
    https://www.aliexpress.com/item/Free...382480158.html
    А для интерфейса только можно и на Atmega168 взять за 1.92$
    ну я примерно цену сказал)) я так и взял за 137р)) и именно у этого продавца)
  7. Аватар для darkcats
    по поводу лампочки, ее подключаем между + и - батареи, перед ESC ? так я понял?
  8. Аватар для An_private
    Цитата Сообщение от darkcats
    по поводу лампочки, ее подключаем между + и - батареи, перед ESC ? так я понял?
    А смысл какой? Между + батареи и + ESC. То есть последовательно.
  9. Аватар для darkcats
    спс
  10. Аватар для whoim
    Есть ли смысл прошивать регули, если они живые, для использования на f4 полетнике под inav? Функционала добавится?
  11. Аватар для An_private
    Цитата Сообщение от whoim
    Есть ли смысл прошивать регули, если они живые, для использования на f4 полетнике под inav? Функционала добавится?
    По настроению В общем-то, они и в изначальном виде нормально летают.Основное преимущество Blheli - это активное торможение. Ну и плюс всякие настройки, но насколько они нужны - вопрос спорный.
  12. Аватар для whoim
    Цитата Сообщение от An_private
    - вопрос спорный.
    Настроение есть, понимание что происходит - тоже)
    Но активное торможение на первых порах наверное не светит - винты самозатяг. С другой стороны, потом разбирать это все неохота, когда приедут нормальные трёшки.. Спасибо за ответ в общем, подумаю щас)
    ЗЫ а 4s эти моторы и регули на 9450 винтах точно сдюжат если пытаться жарить?)
  13. Аватар для An_private
    Цитата Сообщение от whoim
    4s эти моторы и регули на 9450 винтах точно сдюжат если пытаться жарить?)
    Должны. Ключи там хорошие. Насчёт моторов уже не так уверен, но 9450 не сильно большой размер. Думаю вытянут.
  14. Аватар для whoim
    Цитата Сообщение от An_private
    Должны. Ключи там хорошие. Насчёт моторов уже не так уверен, но 9450 не сильно большой размер. Думаю вытянут.
    Спасибо! Все перепрошил, от торможения моторов на столе прифигел)
    А подключаться к ним теперь случайно нельзя по проводу, которым оно управляется, pwm?)
    168я атмега не захотела прошиваться, хотя в программе она есть, только 328я, если что. Наверное, загрузчик уже более новый..
    Моторы отпаивать тяжко конечно, надо паяльник помощнее отдельно взять для такого.
  15. Аватар для whoim
    А ещё такой вопрос, если можно. Если на vdd пустить 3.3в, и не подключать питание регулятора, им можно будет управлять не отпаивая моторов?Хочу разьемчики мелкие впаять на будущее
    Обновлено 15.08.2019 в 09:47 [ARG:5 UNDEFINED]
  16. Аватар для An_private
    Цитата Сообщение от whoim
    А ещё такой вопрос, если можно. Если на vdd пустить 3.3в, и не подключать питание регулятора, им можно будет управлять не отпаивая моторов?Хочу разьемчики мелкие впаять на будущее
    Можно так. Можно подключать питание регулятора и настраивать, не отпаивая моторы - всё равно до арма ключи не активны.
    У меня подпаяны разъёмы без VDD.
  17. Аватар для whoim
    Спасибо! Посмотрим, сколько проживут)