EasyToTrack - DIY универсальная наземка, повортка, телеметрия
нет. Не представлю как это реализовать с одним приемником
Я уже много раз сталкивался с таким вопросом. Исходя из такой теории - антенну невозможно навести на самолет - ведь мы же не знаем куда крутить 😃
а если серьезно, то алгоритм не сложный. - рсси уменьшился - довернуть немного антенну в сторону последнего доворота. Если еще уменьшился - крутим в противоположную сторону. Увеличился - крутим дальше пока не начнет уменьшатся, после чего возвращаемся назад в точку максимума. Следующий цикл коррекции - через секунду.
Если сигнал вообще пропал - пробуем посканировать горизонт в обе стороны от последнего курса. Все это может происходить не спеша с периодом 1-5 секунд.
В любом случае это лучше чем сканировать в ручную.
Кстати мне показалось, что в последней версии апликухи 0 анетнны не совпадает с севером на карте.
Я имею ввиду, если наземка перезагрузилась, откуда она берет точку дома?
У нас летает толпа и наступают на провода, ветер опрокидывает, батарейка садится - это все реально было.
А если самолет не улетел, как поворотка получит точку дома? Я так и не могу понять как это работает.
Да не получает поворотка координаты точки возврата! Они ей не нужны!
Я вспомнил как у меня работает.
При перезагрузки она просто продолжит поворачиваться за самолетом, получая от него углы.
Понимаешь, самолет передает готовые углы по азимуту и высоте и все! Это старый вариант прошивки от Сергея msv, Константин может что то изменил. Но смысл такой. Самолет передает углы, он рассчитывает внутри своего автопилота эти углы. Поворотка просто вертит антенной, но она не понимает где самолет, ей вообще это фиолетово, она просто тупо верит этим углам, а они честно правильные, их же самолет передал…) Но здесь есть одно но, её нужно один раз на самолет направить, вручную или кнопочкой на наземке, и углы, с направлением начнут совпадать.
Как я делал. Включал все, взлетал, поворотка по азимуту смотрела не на самолет, а куда то в сторону, но она вертелась синхронно с самолетом, с одним и тем же запозданием или отставанием, смотря с какой стороны смотреть. Самолет взлетал автоматически и начинал летать вокруг базы, сам. В это время, я подхожу к наземке и направляю её по азимуту вручную на самолет. Все теперь антенна смотрит на самолет и не отстает и не запаздывает.
Если на наземке передернуть питание, то антенна замрет, потом получит углы с самолета, довернет на самолет и снова будет за ним следить. Углы то как шли так и идут с самолета. Если самолет улетел за дальность действия видео, и ты не получаешь картинки, и наземка не получает углы, то она замирает на последних углах. В таком случае просто включаем автовозврат. Самолет летит домой, расстояние сокращается, наземка начинает видеть углы, появляется изображение, и антенна доворачивает сразу на самолет, т.к. видит информацию об углах. И она опять смотрит четко на самолет. То есть угол поворота не сбивается. Внутри автопилота самолета, координаты не сбрасывались, и углы не сдвигались. По этому по возврату все четко.
Так что при передергивании питания наземки, ничего не сбивается.
а если серьезно, то алгоритм не сложный.
Ок, попробуем, но что-то мне подсказывает, что это будет только мешать.
Кстати мне показалось, что в последней версии апликухи 0 анетнны не совпадает с севером на карте.
А коррекция азимута при этом чему равна?
Понимаешь, самолет передает готовые углы по азимуту и высоте и все!
Все абсолютно верно. Идея и реализация Сергея (msv) идеальна. Наземка совсем не делает вычислений, и направление на ЛА знает только благодаря полученным от него (ЛА) значениям азимута и элевации. В принципе у наземки есть все данных от от ЛА и поэтому вычислить азимут и элевацию можно и на земле, но зачем, если уже все подсчитано?
А коррекция азимута при этом чему равна?
Градусов 120, но это вроди, не должно мешать правильно разверуть индикатор. Если географический азимут на самолет 0 то то антенна должна смотреть на север.
Спасибо, наконец дошло!
Довольно оригинальная реализация. У всех других что я видел вычисления происходят на земле. Поэтому так долго не мог понять. Но вот как правильно заметил Yanchak, нужно переходить на Лору, и вот моя поворотка берет телеметрию откуда угодно, какую угодно и никогда ничего не теряет, даже если штатив повернуть руками в другую сторону, ибо в ней компас и ЖПС. По моему это очень удобно и универсально. ЖПС сейчас стоит 6 баксов, и вся готовая электроника к ней обходится в 18 баксов. Но это уже совсем другая история, больше с ней не флужу. Просто хотел понять как тут это работает. Долго собирался эту собирать, но в результате нашел более доступный для меня вариант.
ибо в ней компас и ЖПС.
Машина убивает в хлам эту идею 😦 Компас сойдет с ума на крыше.
Но вот как правильно заметил Yanchak, нужно переходить на Лору, и вот моя поворотка берет телеметрию откуда угодно, какую угодно и никогда ничего не теряет, даже если штатив повернуть руками в другую сторону, ибо в ней компас и ЖПС. По моему это очень удобно и универсально. ЖПС сейчас стоит 6 баксов, и вся готовая электроника к ней обходится в 18 баксов.
Это дороже по деталям. Когда Сергей msv разрабатывал, он старался сделать как можно проще, и дешевле. И что бы была хорошая повторяемость.
Сейчас конечно все подешевело, в плане GPS модули стали доступнее. Да и опыт появился. Сейчас смотришь на это все, и кажется все просто, можно дополнить тем или тем…
Мне электроника обошлась в 18 баксов, а вам ваша дешевле? Даже если так, то просто смешно обсуждать такие цифры. Тут гораздо важнее то, что мой вариант валяется на дороге, буквально. А вы в очень жестких рамках. Для многих повторить этот проект вообще нереально. В этой ветке три человека, как показатель.
Машина убивает в хлам эту идею Компас сойдет с ума на крыше.
Я лично видел как МФД поворотка с компасом работает на крыше на штативе.
У нас все летают на этих поворотках. Все счастливы.
У нас все летают на этих поворотках. Все счастливы.
При калибровке компаса пишут отойти на 10 метров от машины.
У нас все летают на этих поворотках
Может я пропустил, а что у вас за поворотка?
Для многих повторить этот проект вообще нереально. В этой ветке три человека, как показатель.
Многие только читают.
Давайте попросим отписаться, кто повторил. Будет пять человек. )
Хотя самостоятельно поворотки все равно мало кто делает. Но смысл понятен - поставить Назе32 и на ней все запустить за час, или заказывать платы и паять смд - несопоставимые вещи. Опять же, тут есть видео модем, кому он нужен, для тех этот проект очень хорош. Без пайки видео модемов все равно нет. Так что тут не спор, что лучше. Это просто разные проекты.
Может я пропустил, а что у вас за поворотка?
Самодельная механика, и полусамодельная прошивка на Назе32 с компасом и жпс.
Так что тут не спор, что лучше. Это просто разные проекты.
Ну да.
ибо в ней компас и ЖПС
Юзал поворотку от АТТ, относили метров на 6-10 от машин и там она калибруется по сторонам горизонта,компас в ней изначально работает, а жпс только если она стоит на машине и машина едет, тогда поворотка коректирует углы. А вот по точности направления- можно сказать супер, ставил патч и самодельный хеликс - как зенитка по обеим координатам! Вот только если откалибровать точно компас, ибо будет смещение 😃 . Да, и на самом сендере есть кнопка “0”, т.е. база, обнуляется при запуске. Все остальное так же как и в самоделке. Ну разве еще только отключаемое осд родного сендера, бо подключал через фишку,у которой своя осд 😃
Моя наземка еще в собирается
подвижная наземка, тут да - обязательно наличие в ней GPS, или на крайний случай в моем варианте наземке, такие данные может передать ей смартфон
а такой функционал реально реализовать как доп. режим?
Приветствую.
Что-то давно не писал, хотя кое-какие наработки есть.
1. Про Mavlink в наземке.
Меняется то только источник данных, остальное железо то не меняется.
Ох покушал я какашек с реализацией. Ну нету в наземке свободных uart. А программная реализация ни на ATmega ни на ESP8266 не увенчалась надежным результатом. В результате сделал две разные прошивки под ESP8266 на разных SDK, которые бы принимали мавлинк и слали его в мегу наземки, но все в топку. То пакеты теряет, то скорость низкая. А решение проблемы на самом деле простое как ведро - берем и подаем сигнал мавлинка на сендер, подключеный напрямую к видеовходу наземки. И всего делов.
2. Про самонаведение
а если серьезно, то алгоритм не сложный.
Пока реализована только симуляция, которая показала работоспособность идеи, и теперь можно подобрать времена, фильтры, углы коррекции…
На картинках ниже ЛА летит на высоте 600м по кругу диаметром 300м с довольно низкой скоростью 10м/с (не суть) на удалении 6,5км от наземки. Начальное смещение азимута наземки (юзер криво накрутил при старте или ногой кто-то зацепил) 5 градусов. Частота видео 5.8ГГц, мощность передатчика 0.5Вт, антенна 9dB с диаграммой направленности с вики
Наземка каждые 20 секунд делает шаг, равный 1 градусу, влево или вправо и ждет в этом положении секунду, во время которой усредняет значения rssi. И принимает решение куда крутить далее, как писал Саша. Эти эволюции наземки по азимуту ограничены ±7 градусами. Выяснилось, что это работает отлично, но… только в идеальных условиях, как только добавляем шумы к уровню rssi все это ни в какие ворота не лезет. Ниже несколько картинок из симуляции.
Собственно XYZ ЛА
Коррекция азимута в градусах
Видно что наземка за две 20 сек итерации добралась с овершутом до верного значения коррекции (-5 градусов) и далее плавает вокруг него. Если убрать шумы, то достигает нужного значения за одну итерацию и стоит там как вкопанная.
Азимут наземки.
В симуляции наземка с сервой в 360 градусов. И тут очень хорошо видна еще одна нерешенная проблема. А что если наземка с 180 градусной сервой эти эволюции будут в районе 180? Это ж постоянные перекидоны. Так что либо учесть это в алгоритме и жить с “мертвой зоной” или наземка должна быть с непрерывным вращением.
Наконец сигнал rssi.
Показал идеальный сигнал и с шумами ±0.5 попугая. Все предыдущие результаты получены на основе зашумленного rssi
а такой функционал реально реализовать как доп. режим?
.
Все возможно. И в следующей версии будет отображаться и текущее положение смарта на карте наряду с домом ЛА и возможность указать наземке, что координаты смарта - это ее дом.
Но наиболее правильно, чтобы ЛА знал о новом доме. И если АП поддерживает динамический дом, то и наземка без проблем получит от него эти данные.
Наземка каждые 20 секунд делает шаг, равный 1 градусу, влево или вправо и ждет в этом положении секунду, во время которой усредняет значения rssi. И принимает решение куда крутить далее, как писал Саша. Эти эволюции наземки по азимуту ограничены ±7 градусами. Выяснилось, что это работает отлично, но… только в идеальных условиях, как только добавляем шумы к уровню rssi все это ни в какие ворота не лезет. Ниже несколько картинок из симуляции.
Я предлагал не пробовать постоянно, а ждать уменьшения RSSI, потом доворвчивать в направлении последнего доворота (т.е как вариант уследить за самолетом по сигналу, даже если координаты не идут). Ну это вобщем мелочь сокращающая количество попыток, основной алгоритм от этого не меняется.
По перекидке - не допускать перекидку на коррекции. Лететь с антенной не перекидке - очень не удачная идея, коррекцию в этом случае можно ограничить толко в одном направлении.
Кстати RSSI не так уж сильно скачет - вот пример с моей ЛРС, но там 8 каналов, поэтому, когда начинает влиять близость канала к частоте антенны он начинает дуреть, а когда все каналы примаются ведет себя вполне пристойно.
Ох покушал я какашек с реализацией. Ну нету в наземке свободных uart. А программная реализация ни на ATmega ни на ESP8266 не увенчалась надежным результатом. В результате сделал две разные прошивки под ESP8266 на разных SDK, которые бы принимали мавлинк и слали его в мегу наземки, но все в топку. То пакеты теряет, то скорость низкая. А решение проблемы на самом деле простое как ведро - берем и подаем сигнал мавлинка на сендер, подключеный напрямую к видеовходу наземки. И всего делов.
Использовать ЕСП 32 и расстатся вообще с атмегой. Ее же можно использовать и в самом АП. 240 МГц это не 20.
Костя, сохранился файлик мантажка первой версии сендера?
Найду. Какого цвета печатка? Гребенка данных в торце или по длинной стороне?
Найду. Какого цвета печатка? Гребенка данных в торце или по длинной стороне?
Та уже разобрался по маркировке. Схема соответствует. А в от в осд там нумерация не совпадает,но есть монтажка.
Потихоньку, приближаюсь к давней мечте, о полете из разных, труднодоступных мест. Попытался освоить, давно, примеченный холм и сразу столкнулся с некоторыми трудностями.
Не смотря на то, что обзор там шикарный мобильная связь ловит ниже плинтуса. Сответсвенно пропала карта…
И возникло пару вопросов.
- Можно ли еспшку И планшет подосединить к вайфай роутеру? Увилдят ли они один другого?
- Релально ли сделать кеш карты или использовать, например, маптековскую карту?
Первовое позволило бы летать там, где есть хоть какойто намек на покрытие, второе - везде.
Ну и полет, если кому интересно.
- Можно ли еспшку И планшет подосединить к вайфай роутеру? Увилдят ли они один другого?
Да, без проблем.
- Релально ли сделать кеш карты или использовать, например, маптековскую карту?
В общем реально.
Уже неделю пытаюсь выложить обновления всего - и приложения и прошивок. Очень много изменений, но все время из разных концов поступают предложения по улучшению…
Завидую твоей погоде 😃
Завидую твоей погоде
Второй погожий день с начала марта. Сегодня был третий, но надо было вездеход после зимы подкрасить.
Привет всем.
Обновил все. Изменения в приложении очень внушительные, поэтому может что-то вылезти. Сам гонял вроде все ок, но то такое, нужен реальный пользователь. Итак что нового в EasyToFly Monitor 2.2 для Android:
- Наконец то его можно скачать с Google Play. Вбиваем в поиск EasyToFlyMonitor и устанавливаем.
- Возможно выбрать следующие варианты карты (наравне с существующими пяти типами Гуглокарт): Спутниковый bing, OpenStreetMap и оффлайн карты
- Изменился интерфейс. Есть кнопки выбора источника трекинга: дом, ЛА, устройство андроид.
- Добавилась возможность калибровки RSSI видеоприемника. (Необходимый шаг, перед тестированием алгоритмов завязанных на RSSI)
- Возможность отсылать наземке координаты устройства в качестве дома.
- Есть принудительный ручной режим. Включается на слайдере антенны - кнопка mnl.
Активируется первым запросом на изменение положения антенны (кнопки громкости). Ось наземки выбирается тапом по значку антенны. Такой же принцип ручного управления доступен, если количество ошибок телеметрии велико. - В ручном и принудительном ручном режиме можно направить антенну в необходимую точку по длинному тапу на карте.
- Приложение не рассчитывает расстояние до ЛА, а получает его по телеметрии (если такие данные передаются - доступно только в новых версиях осд, АП, сендера, если нет - то рассчитывает).
- Цвет трека ЛА меняется в зависимости от высоты полета. Низко - красный, высоко - зеленый.
Новое в Sender v1.9/EasyToTrackOSD v1.9:
- добавлен новый пакет телеметрии с расстоянием до дома и пробегом
Новое в EasyToFly OSD 2.12.8
- исправлена ошибка величины минимального RSSI на итоговом экране
- исправлена ошибка мерцания координат в режиме wide pixel
- добавлен новый пакет телеметрии с расстоянием до дома и пробегом
Новое в прошивке наземки v1.7
- все необходимые изменения для поддержки новых функций андроид приложения.
Где брать прошивки: Гуглдрайв или через windows приложение EasyToFlyMonitorPC
Как делать и куда закидывать оффлайн карты. Не буду описывать подробно свои мысли и злоключения, просто знайте что с некоторых пор (с 2015-2016 года) создание оффлайн карт с онлайн-сервисов сильно противоречит условиям использования всех картографических сервисов… И все что было актуально несколько лет назад, не работает. Остались лишь несколько способов, мне показался наиболее простым этот.
- Качаем Portable Basemap Server v3.1
- Запускаем от имени админа.
- В главном меню выбираем Format Convert -> Online Maps --> MBTites
- Выбираем из списка Data Source Type интересующий вариант карты.
- Выбираем место и имя для сохранения файла типа *.mbtiles. Указываем описание по желанию, зумимся до нужного участка, правой кнопкой мыши выделяем зону карты. Отмечаем необходимые уровни карты.
Обращаем внимание на количество tile, которое будет закачано с сервера-источника. Если выбрали большую зону и/или максимальный уровень, то будет качать оооочень долго, набираемся терпения. Я не вижу смысла для Гуглкарт ставить уровень более 18
Далее берем полученный *.mbtiles файл и записываем его в телефон/планшет по пути EasyToFlyMonitor/OfflineMaps/. В приложении при этом нужно выбрать Settings -> Map Style -> Offline.
Так как Open Street Map хранит кеш около недели, можно не заморачиваться и просто прокрутить предполагаемую зону полетов с нужным масштабом в режиме Settings -> Map Style -> Bing Satellite или Settings -> Map Style -> OSM Normal. Обнаружил, что кеширование может перебивать оффлайн карты. Если это мешает, и хочется созерцать только оффлайн в приложении, удалите содержимое EasyToFlyMonitor/OfflineMaps/MapsCache
Удачных полетов.
Ну ты дал! Класс! Особенно оффлайн карты порадовали. Теперь я свободен от интернета 😃!!
- добавлен новый пакет телеметрии с расстоянием до дома и пробегом
Ты пофиксил баг в подсчете пробега?
На скрине плохо читается - вобщем пробег при полете вдаль оказывается меньше макимального расстояния.