Новая система от Смаллтим - SwiftAI Next Generation - автопилот+телеметрия+ИМУ

Kozhenkov
vasia:

И чего смолтим не умеет, автовзлет есть, полет по точкам пожалуйста, сам сесть красиво не может

Назовите АП, который может провести беспилотную посадку кроме Смалтима?

Сегодня опробовал новую прошивку, с полётом по точкам.
Задействовал все 16. Длина отдельной ветки 1 км. Расстояние между ветками 130 м. Высота 100 м.
План полёта

Полёт проходил в плохих условиях видимости. Нижняя кромка ниже 100 м. Ветер 4-6 м/с - боковой по отношению к основным направления полёта.
Если по снимку, то направление ветра снизу - вверх (южный). Практически весь полёт по точкам проходил только по приборам. Однако АП с задачей справился.
Высоту выдерживал отлично. Однако, что не понравилось:

  1. Номер рабочей точки на ОСД есть, но нет направления на неё и расстояния до неё. Направление и расстояние показывается до точки старта.
    Если нельзя вывести отдельно, то надо в режиме полёта по точкам предусмотреть замену данных расстояния до базы и направления до неё на аналогичные данные рабочей точки.
  2. В случае пропажи РУ в работу вмешивается режим АВД. Его вмешательство видно в правом нижнем углу фото маршрута реального полёта. Считаю, что режим АВД не должен мешать выполнению полёта по точкам до достижения последней точки. По достижении последней точки должен включиться АВД.
    Далее, в зависимости от выбора - или посадка или кружение над базой.
  3. Необходимо доработать алгоритм разворота на новую точку с целью исключения небольшого переруливания по курсу.
    Фактический маршрут полёта:

    Видео коментарий условий полёта на высоте 100 м.

Моё мнение - в целом новую прошивку и КП можно выдать в общую эксплуатацию с последующим устранением выше перечисленных недостатков здесь и в посте rcopen.com/forum/f90/topic334687/518

Виктор
Kozhenkov:

Назовите АП, который может провести беспилотную посадку кроме Смалтима?

Два приведставленных ролика выше. Там пилота как такового вообще нет.

baychi:

Цель миссии какая

А вы что, не поняли? Он не просто составил карту облётанной местности, но и создал её 3Д-модель.

baychi:

любопытно как эта игрушка летает в ветер или снег?

какая в этом необходимость.

Kozhenkov
Виктор:

Там пилота как такового вообще нет.

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

Kozhenkov:

Назовите АП, который может провести беспилотную посадку кроме Смалтима?

Я имел ввиду АП, которыми пользуются ФПВэшики

rattis

У Megapirate X высочайшее качество автопосадки.

Kozhenkov
rattis:

У Megapirate X высочайшее качество автопосадки.

Видео - в студию, пожалуйста.

smalltim

Геннадий, огромное спасибо за облеты!

Kozhenkov:
  1. Номер рабочей точки на ОСД есть, но нет направления на неё и расстояния до неё. Направление и расстояние показывается до точки старта.
    Если нельзя вывести отдельно, то надо в режиме полёта по точкам предусмотреть замену данных расстояния до базы и направления до неё на аналогичные данные рабочей точки.

В настройке экранов есть крыжик “время до прихода в точку”. При его включении на экране OSD включается оценка времени до прихода в точку и второй строчкой стрелка на точку с расстоянием до точки. Каюсь, в редакторе экранов в Контрольной Панели я вторую строчку не дорисовал. Дорисую обязательно.

2. В случае пропажи РУ в работу вмешивается режим АВД. Его вмешательство видно в правом нижнем углу фото маршрута реального полёта. Считаю, что режим АВД не должен мешать выполнению полёта по точкам до достижения последней точки. По достижении последней точки должен включиться АВД.

Я считаю, что автовозврат таки должен вмешиваться в режим полета по точкам при потере связи: пилот всегда должен иметь возможность вмешаться в полет. Если не нравится, то можно снять галку включения автовозврата по потере связи.
Компромиссный вариант - сделать новую галку: заприетить автовозврат по потере связи в режиме полета по точкам.
Профессиональная версия прошивки может вообще ни разу не увидеть, что такое RC пульт, т.е. летать либо автономно, либо с компа.

По достижении последней точки, даже если управляющий канал стоит в позиции полета по точкам, включается автовозврат. После выполнения программы полета полет по точкам больше не включится до перезагрузки АП. Вместо него будет всегда включаться автовозврат.

3. Необходимо доработать алгоритм разворота на новую точку с целью исключения небольшого переруливания по курсу.

Сейчас у Вас в настройках стоит упреждение по курсу 70% - АП “заглядывает вперед” по курсу ровно на 0.7 сек. Думаю, этого мало с учетом лага GPS в 0.3…0.6 сек. Стоит поставить ~1.5 сек - 150%.
К слову, по логам модель шпарит 60…70 км/ч. Возможно, стоит добавить и компенсацию лага GPS по позиции. Но сначала - увеличить упреждение по курсу до 150%, должно помочь.

Автопосадка есть, по глиссаде, с фиксированного азимута, задаваемого из КП, либо против ветра, либо по прямой прямо с того направления, где на момент включения автопосадки находится самолет.
Глиссада задается удалением и возвышением дальней точки и состоит из трех фаз: подготовка к заходу на посадку, заходом на посадку по глиссаде, и конечная фаза глиссады с выключением газа и ограничением по крену и тангажу. Кто читал мануал, тому все понятно.
Точность автопосадки определяется точностью GPS и бародатчика высоты. Ультразвуковой датчик поддерживается, он дает намного более высокую точность по высоте и позволит мягко сажать даже большие ДВС модели, но это до сих пор требует больше практики.

Автопосадки с выбросом парашюта нет, и не уверен, что будет в базовой версии прошивки.

По поводу инструментов расстановки точек. По указанным пожеланиям поправлю.

Инструмент “сетка” с возможностью указывать число точек по X и Y, вертеть, масштабировать и т.д. как в фотошопе, либо просто указывать квадрат съемки и дать КП самой расставить сетку с учетом FOV камеры и высоты полета - предусмотрен в профессиональной версии прошивки, я не уверен, что она нужна в базовой версии.

rattis
Kozhenkov:

Видео - в студию, пожалуйста.

Так в профильной ветке десятки этих автопосадок по “виртуальным приводам”.

Kozhenkov
smalltim:

“время до прихода в точку”.

Предлагаю время заменить на расстояние

smalltim:

Компромиссный вариант - сделать новую галку: заприетить автовозврат по потере связи в режиме полета по точкам.

Согласен

smalltim:

После выполнения программы полета полет по точкам больше не включится до перезагрузки АП. Вместо него будет всегда включаться автовозврат.

Согласен

smalltim:

Сейчас у Вас в настройках стоит упреждение по курсу 70% - АП “заглядывает вперед” по курсу ровно на 0.7 сек. Думаю, этого мало с учетом лага GPS в 0.3…0.6 сек. Стоит поставить ~1.5 сек - 150%.
К слову, по логам модель шпарит 60…70 км/ч. Возможно, стоит добавить и компенсацию лага GPS по позиции. Но сначала - увеличить упреждение по курсу до 150%, должно помочь.

Это я посмотрю и поправлю, но это, считаю, недостаточным. Алгоритм разворота на нужный курс нуждается в доработке. Допустим, это в какой-то мере решит проблему, но при изменении внешних условий полёта проблема может проявиться. Надо по мере приближения к нулевому курсу АП уменьшать крен с небольшим упреждением, чтобы к нулевому курсу крен был нулевой.

rattis:

Так в профильной ветке десятки этих автопосадок по “виртуальным приводам”.

Если вас не затруднит, дайте ссылку пожалуйста.

smalltim
Kozhenkov:

Предлагаю время заменить на расстояние

Время до точки идет первой строкой, расстояние - второй.

smalltim
  • Сделал выбор высоты новой точки в редакторе маршрута такой, как была у предыдущей точки.

  • Исправил ошибку с выводом координат Y точки начала маршрута в просмотровщике логов.

  • Сделал отображение оценки времени до прихода в точку и курса/расстояния на точку в Контрольной Панели таким, как оно выглядит на OSD.

  • Исправил сообщение об ошибке при попытке записи в параметры “только для чтения” - емкость лога и т.д.

  • Добавил удобное отображение режима и фазы навигации в просмотровщике логов.
    Напомню, SwiftAI NG имеет новую логику навигации, имеющую мало общего с логикой навигации старого АП:
    Помимо режима навигации (ручной, стабилизация, ит.д.), похожего на режим работы старого АП, есть еще подрежим, который я называю Фаза навигации. Это может быть фаза набора высоты, полета по прямой, по кругу, и т.д. И всё это - в рамках, например, режима автовозврата.

    Теперь в логах видна практически исчерпывающая информация о всей логике навигации АП, и можно посекундно разобраться со всем полетом.

Напомню, в просмотровщике логов теперь можно отображать графики параметров на отдельных панелях, до 6 паналей под графики + 2 панели под режим и фазу навигации АП.
Число панелей меняется кликом в кнопки (+) / (-).

Как и ранее, можно приблизить/отдалить какой-нибудь регион графика колесом мыши, или кнопками “^” / “v”.

Как и раньше, можно перемещаться по шкале времени (шкале номера записи в логе) цеплянием и тасканием графика влево-вправо левой кнопкой мыши или ползунком под графиком.

Наконец, правую панель можно скрыть/открыть нажатием “>” / “<”.

Релиз новой Контрольной Панели и прошивки сегодня.

Виктор
mrdmoroz:

Да а комплектик этого всего стоит 25000евро - это нормально?

Во первых это же не FPV, а во вторых это же профессиональная техника.

mrdmoroz
Виктор:

Во первых это же не FPV, а во вторых это же профессиональная техника.

Ну так и железо там заточено строго для аэрофотосъемки. Просто думаю заточим постепенно софт под такие нужды.

baychi
smalltim:

Теперь в логах видна практически исчерпывающая информация о всей логике навигации АП, и можно посекундно разобраться со всем полетом.

Очень хочется, что-бы была кривая “Удаление от точки старта”.
А вот очень многие параметры, ИМХО, редко используемы и для большинства - излишни (Упреждающая позиция…, Начальная позиция… Целевая позиция… Состояние памяти, корректность записи). Их лучше убрать из основного списка (на экране он уже целиком не помещается) в доп. меню, а еще лучше вместо списка сделать дерево.
И в идеале - добавить измерительную вертикальню планку, что-б параметры всех кривых в цифрах на данный момент вермени. Понимаю, что хочу много. 😃

smalltim
baychi:

Очень хочется, что-бы была кривая “Удаление от точки старта”.

Сделаем.

baychi:

измерительную вертикальню планку, что-б параметры всех кривых в цифрах на данный момент вермени.

Сделаем.

baychi:

А вот очень многие параметры, ИМХО, редко используемы и для большинства - излишни (Упреждающая позиция…, Начальная позиция… Целевая позиция… Состояние памяти, корректность записи). Их лучше убрать из основного списка (на экране он уже целиком не помещается) в доп. меню, а еще лучше вместо списка сделать

А вот это, что интересно, посложнее. Но сделаем.

smalltim

Коллеги, в прошивке 1.0.3 небольшое изменение:

  • Величина упреждения по курсу для компенсации лага GPS по курсу опять берется не с курсового гироскопа, а от модуля GPS. Взятие угловой скорости от курсового гироскопа может вызывать небольшую раскачку по крену и не выполняет свою прямую задачу - компенсацию лага GPS и уменьшение “перестрелов” в навигации.

Несколько траекторий полета по точкам, экспортированных из просмотровщика логов в Google Earth.
Умеренный боковой ветер ~6 м/сек.
Первая с чувствительностью по курсу 40%,
Вторая с чувствительностью по курсу 25%,
Третья - 75%.
Четвертая картинка - профиль высоты.
Пятая - маршрут полета в Контрольной Панели.
Все точки заданы так, что АП должен пролетать строго через них, а не срезать путь на следующий отрезок пути при приближении к точке.
Поэтому АП проходит через точку по направлению текущего сегмента пути, и только потом выравнивается на следующий сегмент.

smalltim

www.swiftai.com/ru/news/novaya-proshivka-ap-103

Контрольная Панель версии 6.3.1 от 26/02/2014 (последняя версия)
Отличия от предыдущей версии, 6.1.8:

  • Добавлен выбор SBUS в качестве RC сигнала
  • Добавлено управление голосовыми сообщениями
  • Добавлена возможность настраивать приглушение внешних звуков на время воспроизведения голосовых сообщений
  • Добавлена поддержка ультразвукового датчика расстояния
  • Улучшена устойчивость работы
  • Добавлена возможность сохранять, стирать, настраивать и просматривать логи
  • Значительно переделан просмотровщик логов
  • Исправлено “замораживание” окон скачки и стирания логов в определенных ситуациях
  • Добавлена обработка абсолютной высоты по показаниям модуля GPS
  • Добавлена настройка маршрута полета (полет по точкам)
  • Редактирование позиции и свойств точек
  • Чтение/запись точек в АП, чтение/запись точек в файл
  • Чтение и кэширование на диске карт Google 4 типов, 2 уровня качества, 4 уровня приближения
  • Добавлена поддержка множителя и смещения для датчика тока
  • Сделан выбор высоты новой точки в редакторе маршрута такой, как была у предыдущей точки
  • Сделано отображение оценки времени до прихода в точку и курса/расстояния на точку в Контрольной Панели таким, как оно выглядит на OSD
  • Исправлено сообщение об ошибке при попытке записи в параметры “только для чтения” - емкость лога и т.д.
  • Добавлено удобное отображение режима и фазы навигации в просмотровщике логов

Оптимальный вариант действий при обновлении прошивки:

  1. Сохранить все настройки и калибровки в файл.
  2. Обновить прошивку.
  3. Сбросить все настройки АП в значения по умолчанию через Файл - Сбросить все настройки. Все новые настройки, которых не было в старой КП, встанут в значение по умолчанию.
  4. Прочитать настройки и калибровки из файла и записать всё в АП через Файл - Автопилот - Записать все настройки в память платы.

Прошивка АП версии 1.0.3 от 26/02/2014 (последняя версия)
Отличия от предыдущей версии, 0.8.14:

  • Добавлена поддержка ультразвуковых датчиков расстояния с автоопределением подключения датчика
  • Добавлена поддержка Futaba SBUS с расширениями для поддержки LRS Expert-baychi, сигнал подключается на первый сервовход АП.
  • Разделены радиусы круга для удержания позиции и круга при возврате в точку старта
  • Убраны ограничения на радиусы кругов
  • Улучшена математика расчета ориентации по компасу
  • Реализован новый алгоритм записи логов без задержки на операции с флеш-памятью
  • Реализована запись, стирание и передача логов на ПК
  • Добавлены экранные предупреждения при воздушной скорости выше и ниже порогов
  • Добавлено мигание параметров при уровне RSSI ниже порога и количестве спутников ниже порога
  • Добавлена поддержка голосовых сообщений об изменении состояния и режимов автопилота
  • Добавлена поддержка голосовых сообщений с диктовкой полетных параметров
  • Добавлена поддержка дублирования экранных предупреждений голосовыми сообщениями
  • Добавлено задание опорного напряжения АЦП автопилота (повышает точность работы с аналоговыми датчиками) джампером не только на последний аналоговый вход АП, но и предпоследний аналоговый вход АП
  • Исправлено некорректное отображение напряжения питания АП и дополнительной батареи (-1В) при установке джампера
  • Исправлено некорректная реакция на настройку отображения режимов работы автопилота
  • Добавлена настройка приглушения внешних звуков во время голосовых сообщений
  • Исправлен и дополнен список параметров, сохраняемых в бортовом журнале
  • Улучшена работа звуковых сообщений при обнаружении спутников и сохранении точки старта
  • Введено отслеживание и автоматическая коррекция дрейфа нуля гироскопов
  • Исправлена логика включения режима аварийной посадки: теперь переход в этот режим возможен из любых режимов, кроме ручного управления, приоритет режима аварийной посадки выше приоритета включения автовозврата
  • Введена возможность сохранения израсходованного заряда батареи в энергонезависимой памяти
  • Добавлена возможность вызова экранного меню
  • Добавлена возможность сброса израсходованного заряда батареи, переинициализации позиции точки старта по GPS, датчиков отриентации, бародатчиков, датчика тока из экранного меню
  • Введена возможность автоматической и ручной блокировки и разблокировки автопилота
  • Введена блокировка автопилота при ошибке чтения настроек/калибровок или повреждении данных в энергонезависимой памяти
  • Добавлена поддержка полета по точкам
  • Исправлен и дополнен расчет времени до прихода домой / в целевую точку
  • Исправлена небольшая неточность в математической библиотеке- Повышена точность расчета расстояний по GPS координатам
  • Добавлена поддержка множителя / смещения для датчика тока.
smalltim

Фото лога сегодняшнего полета Геннадия на релизной прошивке на первой картинке.
Я считаю, полет по маршруту выполнен практически идеально. Переруливания практически отсутствуют, прямые выдерживаются практически идеально и полетные точки проходятся точно (а эти 2 фактора - самое, по-моему, главное требование полета по маршруту), по высоте уже давно нет претензий.
Есть вопрос с тем, что модель очень уж быстро маршрут проходит, шпарит 60-70 км/ч, но это уже по логам и настройкам посмотрим.

А теперь самое интересное. Коллеги, прошу вашей помощи и совета.
Смотрите картинку номер два.
Геннадию ОЧЕНЬ не нравится маневр типа крюка, который АП выполняет, проходя через точку и выравниваясь на следующий сегмент маршрута. Текущий курс в этом маневре на рисунке показан красными стрелками.

На рисунке я показал черными линиями заданный маршрут, красные точки - маршрутные точки, желтая кривая - фактический маршрут полета.

Фиолетовые линии - поведение АП в том случае, если бы АП было разрешено в этих точках срезать маршрут. Геннадий не разрешал срезать маршрут в своих полетах, поэтому пока треков со срезанием нет.

Итак, какие есть варианты для того, чтобы минимизировать “переруливания автопилота” в терминах Геннадия?

Вариант 1 - в момент поворота на следующую точку перестроить текущий сегмент так, чтобы начало сегмента оказалось в этой точке. Эта точка и новый сегмент показаны синим цветом. Так у меня сделано в режиме автовозврата. Но мне этот вариант не нравится: в этом случае АП летит не по заданной в маршруте прямой и не с заранее известным курсом, а по отрезку с заранее непредсказуемым началом. Мне это не нравится.

Вариант 2 - увеличить резкость выхода на сегмент. Показано зеленой линией. Мне этот вариант тоже не нравится: придется ломать нелинейный контроллер курса, который четко держит прямые, и который давно уже доказал свою эффективность во всех режимах.

Вариант 3 - позволить АП рассчитать круговую траекторию, сопрягающую 2 сегмента, и попросить АП держать модель в режиме полета “круг” на этом сегменте. Мне этот вариант нравится больше всего. Режим “круг” с центром в заданной точке и с заданным радиусом автопилот держать умеет. Единственное, что нужно сделать - позволить выбирать для каждой точки в Контрольной Панели тип сегмента, начинающегося в этой точке: круг или прямая.

А вы что скажете, друзья?

Evgeny_917

Самый лучший вариант это 3. Выполнять развороты с учетом ЛУРа (чем больше угол разворота тем больше ЛУР) так и принято делать развороты на маршруте в авиации)

msv

Вариант 4. Лететь не прямиком на точку, а на касательную к окружности, проходящую через нужную точку. Все будет плавно и точно через точку пройдем (правда не с нулевым креном…).