KISS FC это полетный контроллер на базе процессора F3, разработанный Flyduino для мини коптеров. В этой статье мы рассмотрим особенности KISS FC, сравним его с CleanFlight/Betaflight и кратко опишем процесс настройки.
Купить KISS FC на сайте Flyduino.
Заранее извиняюсь за очень длинный пост, мне потребовалось не мало времени чтобы настроить KISS FC на моем коптере и пока я его настраивал, узнал много нового об этом полетном контроллере (FC, КП). Я надеюсь, что это будет полезно еще кому-нибудь.
Содержание:
- Технические характеристики
- Отличия от Cleanflight
- Программное обеспечение
- Мой обзор
- Настраиваем KISS FC
- Что можно улучшить
Последнее обновление: 5 марта 2016. Спасибо Артуру за предоставленные картинки.
Технические характеристики
Я не уверен что KISS действительно означает «keep it simple stupid» (сделай проще, дурачок) или «keep it super simple» (сделай это очень простым), но идея этого полетного контроллера и ПО для него в том, чтобы делать вещи проще.
Характеристики полетного контроллера KISS:
- STM32 F3, гироскопы/акселерометры MPU6050.
- Входное напряжение 2-6S.
- 6 выходов на моторы — список поддерживаемых конфигураций рам: бикоптеры, трикоптеры, квадрокоптеры и гексакоптеры.
- Встроенный BEC 5В, 500мА (78M05G). Т.е. можно питать контроллер напрямую от аккумулятора, кроме того от контроллера можно запитать приемник. Flyduino заверяет нас, что их LDO (регулятор напряжения), не чувствителен в скачкам напряжения, которые могут возникнуть из-за активного торможения. Кроме того, все это дело сразу работает как Vbat (т.е. измеряет напряжение аккумулятора).
- Поддерживает прием телеметрии с регуляторов KISS 24A (напряжение, ток, и температуру).
- Поддерживает SBUS и Smart Port Telemetry (и некоторые другие приемники и стандарты телеметрии).
- Есть защита от переполюсовки.
KISS FC — это полетный контроллер на базе 32х битного процессора серии F3, такого же как и в SPRacing F3, LUX или Tornado. В настоящее время на KISS FC работает их собственная прошивка, но из-за того что используется тот же самый процессор, то возможно в будущем на него можно будет установить Cleanflight. В плане железа KISS FC очень прост: нет барометра, магнитометра и чипа флеш памяти.
Размеры
Размеры платы 38 на 26 на 8.4 мм (включая разъемы) и весит она 4.6 грамм.
Крепежные отверстия: 30 на 30 мм, что на 0.5 мм меньше чем у других полетных контроллеров. Из-за этого придется проталкивать нейлоновые винты.
Форма похожа на LUX F3, оба выглядят как буква «Н». Используются контактные площадки для пайки, вместо традиционных отверстий под разъемы. Я думаю расчет идет на то, что лучше напрямую припаивать провода, чем использовать штыревые разъемы.
Комбо набор KISS Combo
Этот полетный контроллер разработан для использования совместно с KISS 24A ESC Race Edition. Однако он поддерживает и другие регуляторы.
При использовании телеметрии он может отображать ток, обороты двигателя и температуру каждого регулятора при помощи OSD.
Для каждого регулятора есть отдельный контакт (TRX) для приема телеметрии. При этом используется аппаратный последовательный порт процессора.
Отличия от других полетных контроллеров на процессорах F3
Большинство современных полетных контроллеров на базе процессоров серии F3 используют в качестве прошивки либо Cleanflight (CF) либо Betaflight (BF), так что сравнивать будем с этими прошивками.
Я думаю есть 2 основных отличия которые могут быть важны пользователю: поддержка телеметрии с регуляторов и прошивка от Феликса (Феликс — автор KISS FC). По моему, прошивки отличаются этим:
- CF и BF — прошивки с открытым исходным кодом, в то время как KISS FC — использует проприетарную (закрытую) прошивку.
- Кто-то может сказать что в CF есть очень много не нужных фишек (не нужных для гоночных коптеров). В конфигураторе KISS есть только 2 закладки с наиболее важными параметрами.
- У CF полноценная командная строка, команды с параметрами. У KISS FC командной строки нет.
- Частые обновления Betaflight и BLHeli. betaflight отличная прошивка, но, к сожалению, ее экспериментальная направленность значит что обновления будут частыми. Сложно постоянно использовать последнюю версию прошивки, есть вы хотите просто летать.
- BF и RaceFlight пытаются добиться минимального значения looptime (цикла обработки данных, который, в настоящее время равен 8кГц). KISS FC все еще работает на частоте 1кГц и тем не менее работает отлично.
Особенности программного обеспечения
ПИД регулятор
Прошивка написана полностью с нуля, и ПИД регулятор основан на математике с плавающей запятой. Но других ПИД регуляторов нет (в отличие от Cleanflight).
Значения ПИД коэффициентов имеют много знаков после запятой, что хорошо для точной настройки.
GUI — конфигуратор KISS FC
Как и в случае Cleanflight используется расширение для браузера Chrome. В настоящее время в приложении всего 2 вкладки: Configuration и Data Output, командной строки нет.
Для сравнения скриншот конфигуратора Cleanflight. Вкладок там очень много 🙂 кому-то это нравится, кому-то нет
Еще есть очень полезная функция: можно выбрать раму (как и заранее заготовленный пресет сделанный другим пользователем) и параметры ПИД будут автоматически загружены. Однако не все используют одни и те же моторы, регуляторы, винты, так что возможно это не самая полезная функция.
Фильтры
В настройках есть параметр программной фильтрации. Если ваш квадрик сильно вибрирует, это может помешать вам настроить ПИД контроллер, в этом случае можно усилить фильтрацию, для уменьшения уровня шума. Более подробно читайте ниже.
Телеметрия
Работает с такими системами как FrSky, Jeti и Graupner.
В настоящее время разрабатываются и другие, включая поддержку D4R-II.
OSD
Flyduino написали специальную прошивку для MicroMinimOSD, которую они также продают (их собственная версия). Я купил MinimOSD на Banggood и она работает нормально. Как настроить minimOSD для работы с KISS FC читаем ниже.
На момент написания поста MWOSD не поддерживает этот контроллер, а в ней можно менять PID и рейты и даже сами настройки OSD прямо в поле, используя только аппаратуру управления.
Что я думаю про KISS FC
Я не думаю что KISS FC лучше BF/CF или что они лучше чем KISS FC, у всех есть сильные и слабые стороны.
Мне кажется, что KISS FC будет проще в освоении новыми пользователями благодаря сильно упрощенному интерфейсу.
Тех поддержка также хороша. Мои знакомые, у которых были проблемы с их контроллерами KISS или с регуляторами, всегда получали необходимую помощь.
Однако KISS FC находится в начальной стадии развития и, для большинства пользователей, он не так прост как «plug and play» (включай и играй). Надеюсь потихоньку они все улучшат, хотя то что сделано сейчас выглядит сильно лучше того, что было 3 месяца назад.
Про программное обеспечение
Как начинающий пользователь KISS FC, я обнаружил что процесс обновления прошивки достаточно неудобный. В CF вы можете сделать это из конфигуратора, но при использовании KISS FC вы должны это делать в чьей-то сторонней программе, и делать это можно только под Windows! Кроме этого, необходимо скачать и установить парочку драйверов, прежде чем подключать контроллер к компьютеру.
Для прошивки вам всегда нужно припаивать перемычку на контакты bootloader, это значит, что каждый раз, когда необходимо обновить прошивку, приходится разбирать коптер. Я видел модификации, люди сами подпаивали выключатели к этим контактам. Но ведь процесс прошивки должен быть простым, не так ли? 🙂 Надеюсь они смогут что-то сделать, чтобы в будущем избежать необходимости замыкать перемычку для перепрошивки или добавят кнопку в следующую версию платы.
Помните, что все настройки теряются при перепрошивке, так что придется сохранить скриншон экрана настроек перед прошивкой! (нужна кнопка backup, для создания резервной копии конфигурации!)
Настройка далека от идеальной, но я очень доволен работой полетного контроллера. Связка KISS FC и регуляторов KISS 24A работает отлично, Управление четкое и квадрик быстро реагирует на стики.
Возможно это не очень четкое описание полученного опыта, но было похоже на катание по льду 🙂
Это мой первый полет с полетным контроллером KISS (серьезно, первый полет на улице!) ПИД и рейты еще не настроены, но летает вполне не плохо.
Теперь про настройку. Я летал на обоих конфигурациях: KISS и Betaflight+BLHeli, мне кажется, что при использовании KISS FC я могу настроить квадрик на 80% очень быстро (фактически значения ПИДов по умолчанию подойдет для очень многих), но оставшиеся 20% — прямо таки вызов: сможешь или нет (сложно настроить овершоты, и рейты). При использовании Cleanflight или Betaflight на настройку коптера до 80% или даже до 99% потребуется больше времени, но, я уверен: настроить получится.
В этом я виню Blackbox! 🙂 Я так сильно полагаюсь на него, что уже почти забыл как настраивать коптер не имея этой фишки. И, я правда надеюсь, что KISS добавит blackbox, это очень полезная штука!
Про железо
Честно говоря, я не фанат распиновки KISS FC, по моему, контакты расположены очень неудобно. Контакты с одного края платы, как сверху так и снизу. Я думаю KISS должны посмотреть как сделано в LUX’е.
Не уверен что понимаю почему они используют контактные площадки для пайки (возможно так проще развести плату?), они же легко отслаиваются. Лично я предпочитаю металлизированные отверстия под штыревые разъемы, это дает больше вариантов их использования.
Мне понравилась телеметрия с регуляторов, возможность увидеть потребляемый ток, температуру или обороты — это очень круто! Однако эту фишку можно использовать только с регуляторами KISS 24A, а это значит дополнительные затраты. 🙂
Программирование регуляторов через полетный контроллер не поддерживается в KISS FC, из-за 5В драйверов на выходных контактах (но это делает сигнальные линии более устойчивыми к помехам). Это значит что при появлении новой прошивки, вам придется обновлять регуляторы по одному. Это не серьезная проблема, хотя бы потому, что KISS не часто выпускает обновления. Скорее это проблема для пользователей прошивки BLHeli, и регуляторов Littlebee 20A и XM20A.
Настраиваем KISS FC
Кратенько пройдусь по тому как настраивал контроллер я сам и расскажу о том, что в инструкции не упоминается.
Несколько скриншотов я взял из инструкции. Скачать инструкцию версия 1.05 (pdf, англ.). Но они достаточно часто обновляют инструкцию, при этом получается новое имя файла, так что лучше использовать ссылку с их сайта на последнюю версию инструкции.
Обновление прошивки для начинающих пользователей
- Скачиваем KISS FC Flight Control GUI из Google Store
- Чтобы подключиться нужно вначале найти драйвер последовательного порта (ищите у гугле «STM32 Virtual com port driver»), мне все равно пришлось устанавливать драйвер, несмотря на то, что на моем компьютере нормально работают другие платы как на F1 так и на F3.
- Качаем программу DfuSe Demo, она нужна для загрузки прошивки в плату
- Если DfuSe Demo не нашла вашу плату, то нужно удалить автоматически установленный драйвер загрузчика (STM32 Bootloader driver — ZADIG), а затем установить другой драйвер используя диспетчер устройств
- Закоротите контакты bootloader на плате, прежде чем подключать по USB (держите замкнутыми пока идет прошивка)
Подключаем питание к полетному контроллеру
Контакты для подачи входного напряжения помечены как «VIN». Они же работают и как «VBAT», для измерения напряжения аккумулятора (как и ваши регуляторы KISS ESC).
На плате имеется преобразователь напряжения, который дает 5В необходимые плате, а также приемнику. Не питайте от этого источника другие устройства, чтобы не перегреть стабилизатор, максимальный ток всего 500мА.
Настраиваем MinimOSD
- Скачиваем прошивку для MinimOSD со страницы с описанием KISS FC
- Прошиваем MinimOSD точно также как это делается в случае MWOSD (через Arduino IDE)
Экранное меню настроек в этой прошивке отсутствует, поэтому чтобы изменить настройки OSD (что и где должно быть отображено), придется прошивать MinimOSD снова.
Чтобы это сделать откройте исходники, найдите раздел «CONFIGURATION», чтобы отключить какой-то параметр, просто впишите // в начале строке. Например, если вы не хотите видеть ток потребляемый регулятором, то сделайте так:
//============================= #define DISPLAY_RC_THROTTLE #define DISPLAY_COMB_CURRENT #define DISPLAY_LIPO_VOLTAGE #define DISPLAY_MA_CONSUMPTION #define DISPLAY_ESC_KRPM //#define DISPLAY_ESC_CURRENT #define DISPLAY_ESC_TEMPERATURE
Аббревиатуры означают:
- AT — ток
- KR — обороты (rpm) * 1000
- CO — сколько мАч было истрачено
Лучше всего не питать OSD от полетного контроллера, а использовать какой-либо другой внешний BEC, чтобы не перегреть встроенный стабилизатор.
Кстати, экраны OSD можно переключать используя канал AUX4, если ему еще не назначены какие-то другие функции (например режим телеметрии).
SmartPort Telemetry for X4R-SB
Я думаю большинство пилотов будет использовать приемник X4R (включая меня), так что вы можете настроить телеметрию через SmartPort Telemetry. Это очень легко, просто подключите разъем.
Но требуется убедиться что вы используете новую прошивку KISS FC, поддержка этой телеметрии добавлена кажется в V1.02 Beta7.4.
Подключите как указано на схеме и как только вы выберите FrSky SBUS в качестве типа приемника, smart port автоматически заработает.
В настоящее время поддерживается передача следующих данных:
- VFAS — напряжение аккумулятора в вольтах
- Current — потребляемый ток
- Fuel — сколько мАч истрачено
Подключаем регуляторы (ESC) и настраиваем их
Замечу, что порядок подключения моторов отличается от Cleanflight! На самом деле сделано как в OpenPilot
Я просто припаял регуляторы (ESC) к моторам (RS2205) и они вращались не в ту сторону. Изменить направление вращения можно запаиванием перемычки JP1 на регуляторе.
Если вы используете KISS 24A, то калибровать их не нужно (так написано в инструкции). Если вы используете регуляторы с прошивкой BLHeli, то читайте дальше.
В конфигураторе KISS FC GUI нет вкладки «моторы», так что нужно калибровать регули по старинке.
- Ставим минимальный газ 2000
- Нажимаем сохранить (save)
- Отключаем контроллер и подключаем его снова
- Армим квадрик
- Подсоединяем аккумулятор
- Слушаем бипы
- Дизармим квадрик
- Слушаем бипы
- Отключаем аккумулятор
Сохраняем параметры в конфигураторе KISS FC GUI
Помните, что KISS FC имеет интересную защиту. Когда он определяет, что входное напряжение больше 6В, то не сохраняет значения из конфигуратора, потому что «думает», что он подключен к литиевому аккумулятору, а не через USB.
Так что, если у вас есть какие-то проблемы с сохранением настроек, то в первую очередь проверьте питание контроллера. Если вы включили квадрик от аккумулятора и затем подключили USB, то вы не сможете сохранить настройки.
Включаем Airmode
Как сказано в инструкции:
Если Min Command стоит 1000 и функция арминга назначена на тумблер, то Airmode активируется автоматически.
Так что если вы армите коптер тумблером, то
- Min command = 1000 => airmode включен
- Min command = 1001 или больше => Airmode выключен
Будьте ОЧЕНЬ осторожны с режимом Airmode, потому что вы не можете его назначить на отдельный тумблер, и у него нет защитных функций как в Betaflight, т.е. он накопит значительное значение ошибки параметра I пока не взлетит, я бы сказал 3-5 секунд (т.е. если после арминга он будет стоять на земле больше 3-5 секунд, то при взлете он будет вести себя не адекватно, может даже перевернуться, прим. перев.). Те кого это беспокоит, могут использовать тумблер «idle up», который работает также как и «Air mode», но оба эти подхода работают немного по разному, поэтому возможно вы увидите разницу в поведении в воздухе.
Подключаем пищалку
Пищалка не пищит когда вы ее активируете, только издает постоянный высокочастотный писк. Как я ее подключил:
Фильтр
Допустимые значения фильтрации могут смутить. «HIGH» и «LOW» — это не то, на сколько нужно фильтровать данные, это частота которую нужно отфильтровывать. Например, если ваш коптер только слегка колеблется, вы можете попробовать «high», но если вибрации очень сильные — тогда лучше «low» или что-то промежуточное.
Не рекомендуется ставить «off» (отключать) в самом начале, лучше всего вначале настроить ПИД’ы используя фильтрацию по умолчанию («high») чтобы убедиться что все работает.
Failsafe
Если вы хотите чтобы моторы останавливались сразу после потери сигнала, то поставьте «FS level mode» равным 0.
KISS Carrier PDB
KISS Carrier PDB специально разработана для работы с KISS FC и KISS 24A ESC. Она сделает расположение кабелей более аккуратным, но будьте внимательны, из-за своих размеров она поместится не в каждой раме.
Пластиковые разъемы сбоку: для подключения полетного контроллера к KISS Carrier PDB и для сателита Spektrum.
Есть два способа подключения контроллера к PDB.
напрямую проводами
Или используя 6 контактный JST разъем
Кажется что соединяется только 1 телеметрийный контакт в обоих случаях (6 проводов, это 4 PWM, 1 земля и 1 для телеметрии), так что я не уверен в том, читает ли он телеметрию с одного регулятора (ESC) или со всех.
Что можно улучшить
- Крепежные отверстия 30.5 на 30.5 мм, это стандартное расстояние, большинство рам рассчитаны именно на этот размер
- USB разъем отваливается, похоже что это самая часто встречающаяся проблема у KISS FC. Я где-то читал, что USB порт работает как радиатор для BEC’а расположенного с другой стороны. Возможно BEC слишком сильно разогревается, и припой плавится? Это опять напоминает нам о том, что не нужно питать другие устройства от контроллера
- Инструкция — у Flyduino еще очень много работы. Например совсем не описано как работает TPA. Кроме того, нужно улучшить перевод на английский язык
- GUI — 1. подтверждение нажатия на кнопку Save? Или уведомление о том, что данные сохранены? 2. может стоит вернуть вкладку «моторы» для проверки вращения моторов? и для калибровки ESC. 3. нужен какой-то способ сохранения настроек, например кнопка «backup»!
- Возможно стоит добавить флэш память, чтобы сделать blackbox или скопировать его из cleanflight?
- Вращение платы — в настоящее время плату можно повернуть только на 180 градусов. Хотелось бы больше свободы, как в Cleanflight.
- Расположение контактов — регуляторы по углам, в верхней части платы
- Добавить поддержку меню в OSD: для изменения настроек OSD, ПИД коэффициентов, рейтов и т.д.
Когда значение параметра P в PID-регуляторе велико, полётный контроллер будет стремиться изменить скорость вращения моторов очень быстро, чтобы более резко стабилизировать коптер. В этом случае моторы потребляют повышенный электрический ток, в том числе и в пиках. Это вполне может вызывать сгорание регулятора.
Больше 100% газа все равно не получится, а значит, если регулятор подобран правильно, то не сгорит. Другое дело повышенное потребление энергии, при больших значениях P, будет перерегуляция, нужное значение будет проскакивать, будут осцилляции, а это как раз неэффективно.
Можно ли использовать простую аппаратуру?К примеру FlySky по IBUS?
Где-то натыкался на статью, что вроде как можно, но только не с родной прошивкой, а с betaflight.
Oj skolko vody uteklo s toj pory… ;))) Prjam pora uzhe novyj obzor pisat ;))) Blackbox ja gdeto eshe v ijule napisal ;))) Da i v RC30 fishek napihali nemerjano uzhe ;))))
FedorComander
Можно Оскару написать. 🙂 он обзор обновит, я переведу.