Регуляторы

Прошивка регулятора через Multi Wii

esc
Автор aeroadmin

Началось все с того, что внезапно отказал регулятор на коптере: не падал, не промокал- просто отказал. Полистав страницы этого форума и форума RCgroups я пришел к выводу, что слетела прошивка. Благодаря статье JustACat «BLHeli для ESC с контроллером SiLabs» прояснил основные моменты, связанные с прошивкой регуляторов на данном чипе. И сразу же столкнулся с проблемой отсутствия адаптера для прошивки Toshiba Toolstick. Московские магазины заламывали за него просто сказочную цену, а ждать 1-2 месяца посылки из Китая не было ни времени ни желания. Полистав ветку RC Groups наткнулся на пост #159, где описывается прошивка регулятора данного типа с помощью стандартной платки MultiWii. Совершенно случайно дома нашалась как раз такая платка. Решил попробовать повторить, а в случаи удачи, поделиться опытом с однофорумчанами.

Итак, начнем.
Виновник торжества- регулятор со слетевшей прошивкой:
Регулятор maytech в термоусадке
И без термоусадки с лицевой
Схема полжадко для перепрошивки maytech 18A
и тыльной стороны
Регулятор maytech без термоусадки фронт
Дальнейшее описание процесса поделю на два этапа: железо, soft и настройка.
Итак, железo:
Нам понадобится Платка Multi Wii
Я думаю, что подойдет любая платка MultiWii или Cruise SE.
Платка MultiWii
Необходимо соединить выводы D11, D12 (на некоторых платах он не помечен и находится слева от D11) и «ground» на плате MultiWii c соответствующими площадки для прошивки нашего регулятора.
Схема контактных площадок моего регулятора
Регулятор maytech без термоусадки тыл
Красный (+5В ) соединить с D11, белый (data) c D12 , черный (ground) c любым из разъемов «ground» платы Multi Wii.
У меня получилось так
Платка MultiWii-контакты прошивальщика
На регуляторах с другой схемотехникой расположение контактных площадок может отличаться.
Их расположение можно посмотреть в PDF файле с описанием поддерживаемых типов регуляторов или по таблице .
Вид платы регулятора без термоусадки доступен по ссылке в колонках «back» и «Front» таблицы.
Припаиваем три провода к пятачкам для прошивки в соответствии со схемой вашего регулятора.
Мне необходимо было прошить несколько регуляторов сразу и умчаться с подпайкой к контактным площадкам не хотелось. Поэтому я изготовил из бельевой прищепки и нескольких булавок зажим для программатора.
Получилось так
Прищепка- прошивальщик
На премию конкурса красоты не претендует, но свои функции выполняет сполна :)
Затем, с помощью импровизированного зажима, соединяем программатор с контактными площадками, через которые будет производиться прошивка регулятора.
Плата Multi wii для прошивки blheli и прищепка
Теперь подключаем регулятор к двигателю (не обязательно).
При прошивке и проверке регулятора нам будет необходимо подать силовое питание (+ и -) на регулятор.
В качестве силового питания КАТЕГОРИЧЕСКИ НЕЛЬЗЯ использовать батарею Li-Po напрямую. Батарея подключается к регулятору последовательно с автомобильной лампочкой 12в.
Это делается для ограничения тока, что при неправильной прошивке поможет избежать возгорания регулятора и прочих неприятностей. Также в качестве источника тока можно использовать любое слаботочное питания: блок питания с ограничением тока или, как сделал я, сборку из нескольких пальчиковых батареек от пульта.
Все! Наш регулятор готов к прошивке! Можно переходить к следующему этапу.

Soft:
1. Качаем архив со всем необходимым и софтом, включая файлы прошивок для разных типов регуляторов и распаковываем его в папку.
2. Еще раз сверяем название нашего регулятора с типом и самое главное, с картинками платы нашего регулятора и выбираем файл прошивки из таблицы.
Для моего типа регулятора прошивки не оказалось, но я нашел по фотографиям из данного руководства регулятор с полностью идентичной схемотехникой.
Прошивка регулятора
1. Подключаем платку контроллера к компьютеру и устанавливаем драйвера.
Если все прошло гладко, то в диспетчере устройств должен появиться новый COM порт. Запоминаем его номер, он пригодиться нам в дальнейшем.
Если что- то пошло не так, то переустанавливаем драйвера, при этом не забыв удалить старые.
Проблема с правильным определением COM порта возникала у меня на компьютере несколько раз. Причиной оказалась несовместимость драйверов COM порта и драйверов кабеля пульта для симулятора.
Т.е. приходилось при прошивке или использовании пульта заново переустанавливать драйвера для устройства. Тестировалось несколько раз, на разных компьютерах- результат то же.
2. Открываем папку с архивом ow-silprog-blhelitool-blhelibox-20130204 и, при подключенной к компьютеру плате Multi Wii/ запускаем программу BLHeliTool_v102.exe
3. На вкладке «Tools» выбираем пункт «AvrBurnTool- Make owSilProg Programmer».
4. В окне «Select your projekt» выбираем «owSilProg on Arduino Nano (w ATmega328p)» или тот тип микросхемы контроллера, который есть у вас.
5. Указываем номер COM порта, тот, который у нас появился после установки драйверов на платку MultiWii.
После этого в окне «Select the bootloader/fimware» должна автоматически выбраться прошивка контроллера. Для моей платки это «ATmega328p @ 16MHz: owsilprog_v110_m328p_16mhz_pb3pb4.hex»
Должно получиться так:
Окно программы AvrBurnTool
8. Проверяем все еще раз, затем жмем «Check connection» и проверяем соединение контроллера.
9. Если все в порядке и контроллер определился, то жмем кнопку «Burn all» и ждем окончания прошивки.
Если пошло что- то не так, то еще раз проверяем соединение платы с компьютером, правильность установки драйверов и в пункте 7 вручную указываем путь к папке с прошивками.
Иногда проблема определения контроллера может быть связана с большой длиной или маленьким сечением USB кабеля.
Советую взять кабель покороче.
10. После прошивки НЕ ЗАБЫВАЕМ, что у нас теперь не MultiWii, а программатор чипов Silabs и летать на этом без обратной прошивки на MultiWii не получиться ))
11. Подключаем регулятор к программатору и перезапускаем программу.
11. Теперь переходим на вкладку «FlashBlHeli to BESC».
В пункте «Hex File Directory «указываем путь к папке с прошивками
В пункте «BESC» указываем тип регулятора
В пункте «Revision» — ревизию платы (до конца не разобрался- просто выбрал самый последний номер)
В пункте «Hex File» — файл прошивки нашего регулятора, если он не определился автоматически.
В пункте «Mode» — то, как мы будем использовать регулятор ( multi- для коптеров, Tail- для вертолетов, Main- ,как я понял общий тип)
12. На вкладке Port указываем номер COM порта, на вкладке «multiple esc mode» режим работы регулятора.
Я указал «MAIN ESC», по поводу остальных пунктов ничего сказать не могу»
Должно получиться так
Окно программы AvrBurnTool- настройки
13. Подаем силовое питание на регулятор, жмем Verify и ждем проверки правильности соединения регулятора с программатором.
14. Жмем «Flash» и ждем окончания прошивки.
15. Отключаем силовое питание и программатор.
16. Подключаем двигатель к регулятору (если ранее не был подключен).
17. Подключаем сигнальные провода регулятора к сервотестеру или приемнику. Подавать силовое питание без подключенного сервотестера или приемника не рекомендую т.к. бывали случаи возгорания регулятора. Возможная причина- особенность прошивок Simonk.
18. И ТОЛЬКО ТЕПЕРЬ подаем силовое питание.
Если все прошло гладко, то вы услышите мелодию инициализации регулятора отличную от начальной. Поздравляю, прошивка регулятора прошла успешно!
Если мелодия инициализации не прозвучала, то немедленно отключите регулятор и проверьте все еще раз!!!

Настройка:
1. Подключите программатор, затем подайте силовое питание и запустите программу BLHeliTool_v102.exe.
2. Сразу же попадаем на вкладку «Setup Basic». Указываем номер COM порта, к которому подключен программатор и жмем «Read». В окнах программы появятся настройки нашего регулятора.
У меня это выглядит так
BLHeliTool-  начальные параметры
при смене значения какого-либо из параметров оно подсвечивается синим
BLHeliTool-  изменённые параметры
3. Переходим на вкладку «Setup Advanced». Здесь находятся расширенные настройки регулятора.
Выглядит так
BLHeliTool-  дополнительные настройки
Переводить название каждого пункта и, тем более, рекомендовать настройки не вижу смысла- они индивидуальны для каждого коптера.
Отдельно хочу отметить лишь пункт «Programming by Tx»
BLHeliTool-  Programming by Tx
Включение или выключение этого параметра позволяет включить или выключить возможность калиброки газа и настройки других параметров с пульта вашей аппаратуры.
Я сам лично читаю, что настройка из программы намного быстрее, удобнее и нагляднее, но для тех, кто привык делать это с пульта могу предложить файл описания настройки регуляторов с пульта. Вид сигналов для разных версий прошивок может отличаться.
Новые версии прошивок и их описаний можно Скачать здесь

4. По окончании всех настроек не забываем нажать кнопку «Write» и дождаться записи настроек в регулятор.
5. Отключаем силовое питание, программатор и наслаждаемся «совсем другими регуляторами».
Напоследок напишу несколько обнаруженных мной фишек, которые включает в себя прошивка регулятора Simonk:
— «защита от дурака»: при уровне газа выше нуля (мелодия инициализации регуляторов короткая) регулятор не запустит двигатель до тех пор, пока мы не опустим газ в ноль
— помощь при поисках потерянного коптера: при долгом отсутствии управляющего сигнала на регуляторе (регулятор подключен, но газ на нем вы не прибавляете) регулятор начинает коротко пищать. Длительность сигналов и промежуток времени по прошествии которого регулятор начинает пищать, также настраивается из меню программы.
— и конечно же- очень быстрый отклик, не доступный ранее )

До прошивки регуляторов долго искал им замену.
Прошил и менять регуляторы сразу передумал )

Удачных и безаварийных полетов всем!

Об авторе

aeroadmin