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

smalltim

Вадим, скиньте, пожалуйста, файл настроек. Есть основания предполагать, что чувствительность по высоте надо поставить ниже процентов на 30 - 40. Именно не по тангажу, а по высоте в настройках автономного полета. Такая раскачка при большой чувствительности по высоте характерна, и может возникать не всегда, а тогда, когда что-то в полете кратковременно отклоняет модель от требуемой высоты.

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

Я допилил, наконец-то, редактор полетных точек до такого состояния, когда я исключительно доволен, ВСЕ проблемы предыдущего АП и его КП убраны на корню.
Никаких интернетов в поле, никаких неудобств, все просто, удобно и понятно.
Перед выкладыванием надо сделать пару тестовых полетов по точкам, хотите-стучитесь, я ж не собака на сене.

smalltim

Высота:

  • От 10 до 1200м относительно точки старта, с точностью 0.1м

Координаты:

  • Ограничения на координаты нет (* см ниже), с точностью 0.0001 угловой минуты (0.18м)

Число точек:

  • 16 точек

После задания координат района полетов Контрольная Панель выгружает карты района полетов (примерно 7х7 км на наших широтах) с максимальным разрешением около 0.5м на пиксел и сохраняет их на диске. Это приблизительно 10…30 МБ данных в зависимости от качества карт и типа местности.

При любом запуске редактора маршрутов Контрольная Панель проверяет, есть ли карты для этих координат на диске, и, если есть, то загружает их с диска, а не с Сети.

Это не противоречит политике Google в части кэширования карт: Контрольная Панель не выгружает с серверов Google непосредственно тайлы карт, а использует крайнюю версию Static Maps API для получения разбитых по квадрантам изображений именно района полета, и использование этих карт в сторонних приложениях бессмысленно.
Возможно, в будущем я добавлю ограничение на общий объем кэша карт и время хранения кэша, но пока не вижу проблем с этим.

Наборы карт для координат 55.000000N/36.000000E и 55.000001N/36.000001E - разные, и занимают двойной объем места на диске, несмотря на то, что фактически эти координаты различаются менее чем на метр. Возможно, в будущем я реализую поиск наиболее подходящих карт в кэше карт на диске, а пока Контрольная Панель ищет подгружает карты с диска только в том случае, когда координаты строго совпадают.

*

  1. Контрольная Панель позволяет задать любые координаты на глобусе в качестве координат контрольных точек, с единственным исключением: 2 соседние точки маршрута не могут находиться ближе чем 5 м друг от друга по координатам. Это сделано для того, чтобы исключить вырождение формул математики навигации, когда 2 полетные точки совпадают по координатам.

  2. Автопилот ведет модель между точками по локсодромам (линии одинакового азимута). Т.е. это прямые линии на карте в меркаторской проекции и спирали на глобусе.

  3. Автопилот сохраняет в энергонезависимой памяти координаты контрольных точек, а не смещения относительно точки старта. Однако, в момент инициализации позиции точки старта автопилот для каждой полетной точки рассчитывает смещения относительно точки старта и летает по смещениям. Это позволяет избежать потери точности в формулах навигации АП. Если описывать широту/долготу стандартным типом float, то максимальная точность этого типа в определенных случаях может быть хуже нескольких метров. Математика навигации АП оперирует с точностью ~0.1м на средних широтах (худший результат ~ 0.18м на экваторе).

Если в момент расчета смещений расстояние от точки старта до каких-то точек оказывается больше 3 км, то автопилот исключает такие точки из маршрута. Это сделано для того, чтобы исключить потерю модели, когда в АП был загружен маршрут в районе деревни Кузькино, а пилот передумал и поехал летать в район Петькино. От Петькино до Кузькино, возможно, будет очень далеко лететь, и АП может высадить батарею и не вернуться, если автовозврат по потреблению батареи не включен.

Сейчас попробую добавить пару скриншотов.

mrdmoroz

Ну наконец то дождался точек. Обещали еще в декабре когда звонил.

baychi
smalltim:

Если в момент расчета смещений расстояние от точки старта до каких-то точек оказывается больше 3 км, то автопилот исключает такие точки из маршрута.

3 км мало. Как-же тогда летать на рекорд? Или к другу за пивом? 😃

smalltim
baychi:

3 км мало. Как-же тогда летать на рекорд? Или к другу за пивом?

А круиза мало? Круиз выстреливает прямую вперед на 20км и на 100 в выходящей. Опять же, сделана еще одна защита “от дурака”: АП не болтается в круизе бесконечно, и если вы забыли о том, что ващета включен круиз, то он умотает по прямой на 20км и будет болтаться вокруг той точки, пока не скомандуете что-нибудь новое или автовозврат не включится.

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

Kozhenkov:

img-fotki.yandex.ru/get/9322/...d58a9e1_XL.jpg

Лог-запись полёта - yadi.sk/d/dMftXC_THXZrB
Настойки АП - yadi.sk/d/p8uZYnf9HXa7w

Геннадий, лог не качается, говорит, неправильная ссылка.

rattis

В прошедшие выходные испытывал круиз-контроль и автовозврат.
Настройки чувствительности скорректировал в соответствии с рекомендациями Тимофея.
Лучше не стало.
При автовозврате также как раньше клюет и задирает нос на целевой высоте.
В режиме круиз-контроля совершенно не борется с ветром.
Видео выкладывал выше в этой теме.
Кто летает на Скае - дайте правильные настройки. На сайте очень старые еще со старыми значениями величины рассогласования датчиков.

Zerop-52
smalltim:

Если в момент расчета смещений расстояние от точки старта до каких-то точек оказывается больше 3 км, то автопилот исключает такие точки из маршрута. Это сделано для того, чтобы исключить потерю модели, когда в АП был загружен маршрут в районе деревни Кузькино, а пилот передумал и поехал летать в район Петькино. От Петькино до Кузькино, возможно, будет очень далеко лететь, и АП может высадить батарею и не вернуться, если автовозврат по потреблению батареи не включен.
Сейчас попробую добавить пару скриншотов.

Сори, но требуется именно полёт по точкам с целью посылать самолёт снимать фото/видео вне на дальние расстояния (вне связи с землёй)
Предлагаю убрать лимит по точкам, иль сделать выбор лимита вручную…

Виктор
rattis:

На видео видно, что при достижения целевой высоты 150 метров и попытке ее удержания, АП начинает переруливать. Что подкрутить?

Я пока, что на “зелёном” чистый теоретик, но уже пора включаться, и проанализировав видео я бы увеличил значение “Газа для горизонтального плёта” процентов на 10, и посмотрел бы результат.

rattis

Виктор, спасибо. Попробую.
Когда планируешь начать облетывать “зеленого”? На каком носителе, если не секрет?

Виктор
rattis:

Когда планируешь начать облетывать “зеленого”? На каком носителе, если не секрет?

Когда тепло будет. На Скае - уже третьем.

smalltim
Zerop-52:

Сори, но требуется именно полёт по точкам с целью посылать самолёт снимать фото/видео вне на дальние расстояния (вне связи с землёй)
Предлагаю убрать лимит по точкам, иль сделать выбор лимита вручную…

Финальная прошивка с точками 1.0.2 и Контрольная Панель 6.3.0 ушла пилотам. Думаю, быстро облетается, ибо базовые принципы не менялись, добавился лишь полет по точкам, а всё остальное, кроме точек (звуки, логи, улучшение навигации, экранное меню, армы-дизармы, десятки фишек, короче) с успехом облеталось и отточилосьв 0.9.15 . Ну а Панель я отдрючил на своей стороне до звона.

Думаю, будет пара мелких замечаний, под них до кучи и галку снятия ограничения расстояния сделаю.

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

rattis:

В прошедшие выходные испытывал круиз-контроль и автовозврат.
Настройки чувствительности скорректировал в соответствии с рекомендациями Тимофея.
Лучше не стало.
При автовозврате также как раньше клюет и задирает нос на целевой высоте.
В режиме круиз-контроля совершенно не борется с ветром.
Видео выкладывал выше в этой теме.
Кто летает на Скае - дайте правильные настройки. На сайте очень старые еще со старыми значениями величины рассогласования датчиков.

Вадим, каюсь, хотел спросить логи, но в крайней публичной прошивке их еще нет. Обождите день - два, и полетаете на новой прошивке с логами, там моментом всё ясно станет.

Приступаю к мануалу, надо много добавлять…

mrdmoroz

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

smalltim
mrdmoroz:

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

День два, если тестпилоты не ушли в запой 😃
И если я еще не совсем отупел и натворил багов в полете по точкам.

Впрочем, персонально Вам я отписал в личку подробности.

rattis

Тимофей, спасибо.
С нетерпением жду выходных для облета.
Частоту записи в лог какую лучше выставить?

smalltim

Нет, не этот гпс приемник.

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