Пишем программу для вывода логов формата CSV
Начал делать модуль полётной мисии. Дошёл до реализации рисования роутов. Возможных алоритна два: один как в менеджере на данный момент, второй, как в гугл-земле.
Второй цпособ мне нравится больше… Начну с него, если кто привык к оригинальному менеджеру и так прям сильно его хотите, сообщите.
Доделал рисования маршрутов, точек и взлёных полос. Все данные параллельно отбражаются в таблице, всё синхронно. Окно с таблицей с тремя вкладками: таблица с точками, с маршрутами и с ВВП.
Для просчёта пути, нужно указать последовательность. То есть, будет появляться окно с двумя списками: слева все точки/маршруты, справа создаём последовательность, которая потом и считается.
Так как у точек и маршрутов есть ограничение по высоте, добавлю “оперативные” точки, которые можно добавить в список для просчёта, но они не будут загружаться в файл.
Теперь нужно забацать сам просчёт и отображения на карте и панели с профилем высоты.
Маразм крепчал, и я задумался, что раз уже заморочился, то почему не сообразить псевдо ПИД.
То бишь грубо говоря, определяем шаг (ну скажем 3 метра), знаем куда нужно, знаем ошибку, пид выдаёт направление. По этому направлению рисуем прямую длиной 3 метра и всё по кругу. Можно будет добиться похоже на то, как модель пролетит на самом деле.
Набор высоты, только по готовым числам из лога или вручную.
Доделал главные функции в программе расчёта полёта, выложил на гугл диск.
drive.google.com/open?id=1PPlifIIH-31tuhYEVSwjKuMo…
Архив нужно просто распоковать и запустить екзэшник.
Лень писать мануал, тем более переводить его на английский, так что в кратце всё опишу тут.
В общем программа по большому счёту пока что для польователей ПитЛаб и для тех кто хочет заморочится и подробно и самое главное правдоподобно хочет расчитать предстоящий полёт.
Первое, что нужно сделать, загрузить в программу лог с полёта. Желательно лог выбирать с спокойго полёта с выраженными фазами: подъёмы, спуски, полёт в круизе. Так же желательно, что бы в этом полёте был сделан “круг почёта” для расчёта ветра.
При загрузки лога программа спросит у вас ёмкость батареи (вводить в мили ампер/часах) и минимальное напряжение (одной банки). Ёмкость вводить не с этикетки батареи, а ту, при достижении которой, напряжение станет минимально допустимым (как раз то напряжение, которое вы так же ввели).
При этом программа расчитает функцию разряда по напряжению и по внутренему сопротивлению. Пользовател эти данные не увидит, они нужны для расчёта на маршруте.
Далее собственно сам интерфейс: карта - главное окно, на нём рисуется точки, маршруты, посадочные полосы, а так же уже посчитанный путь модели.
Справа вверху панель параметров, расчитанных программой при загрузке лога. Их можно корректировать.
Ниже спраава, панель “упрощёной” погоды: программа скачивает прогноз ветра на 5 дней в точке “Дом”. Ползунком после загрузки погоды, можно менять время с шагом в три часа.
Ниже панели с ветром, панель с двумя окошками: в левом все точки/ маршруты/ посадочные полосы, которые отображаются на карте. В правое окошко добавляем нужные пункты в нужной вам последовательности. Например: точка А, маршрут хххх, посадочная ПОС44. Маршрут будет строится именно по этому списку.
Ещё ниже панель с тремя вкладками точки/маршруты/впп. На каждой вкладке таблица с детальной информацией соответствующих данных.
В таблице все данные можно корректировать.
И наконец последняя панель с профилем посчитанного пути. Собственно изображается сам профиль, маркирован по подъёму, круизу и спуску цветами красный, зелёный и синий соответственно. Так же нанесён график ёмкости батареи (в ампер часах). Снизу профиль возвышения земли (AMSL).
При наведении мыши на профиль появляются вертикальный и горизонтальный маркер, при этом параметры полёта в данной точке пути отображаются сверху(над картой).
Oтображается маркер модели самолёта на карте в виде синего треугольника. По нему можно определить “снос на ветер”. И визуально увидеть соответствие положения модели на карте и на профиле по высоте.
Логика навигации идентична таковой в Питлабе на автоматических режимах: полёт к точке - держим азимут на точку, полёт по маршруту - держимся маршрута, полёт на впп - расчитываем точку входа в глисаду и снижения, долетаем до нее и садимся. Запуск только с “дома” и пока только строго на север (добавлю чтоб можно было крутить направление запуска). Минимальный радиус поворота считается из лога, но его можно править.
Все новые точки создаются с помощью клика правой кнопкой мыши и там выбирается что именно вы хотите. Путь рисуется не как в питлабе, а поочерёдно добавляя точки, при этом уже добавленые точки маршрута можно коректировать. Маршрутов одновременно можно нарисовать 8 штук, все будут разного цвета для лучшей читаимости. В конце создания маршрута, кликаем правой кнопкой и выбираем “закончить маршрут”
При добавлении впп, она добавляется с ореинтированием на 0 градусов - правый шелчёк мышью и выбираем настрить азимут, правой кнопкой крутим впп.
Все созданные точки можно сохранить и потом выбрать из списка. Это находится в “меню” сверху.
Так же там можно экспортировать в файлы самого питлаба для дальнейшей загрузки в автопилот.
Ещё в меню находится пункты погода. Простая погода: после установки базы, по нажатию на пункт, загружаем погоду на 5 дней (на уровне 100 метров, но программа эту погоду применяет по всем высотам), её можно корректировать в панели погода.
Так же в меню есть пункт “детальная погода”. Её можно выбрать после нанесения минимум двух точек на карту (допустим база и ещё одна точка). Программа предоставит пользователю заполнить таблицу параметра ветра по высотам и на двух точках.
Программа сама выбирает самые крайнии точки которые нанесены на карту. Так же просчитываются промежуточные значения ветра по всей длине между этими точками, и промежуточные значения по высоте (опорных высот около 6-7 штук, не помню).
Грубо говоря: летите из “Москвы” в “Питер”. Забиваете ветер повысотно в Москве и повысотно ветер в Питере, надеетесь что ветер не менял своё направление на 360 градусов)) - шучу.
В итоге, когда есть база и какието точки, вы составили их в список на просчёт, нажимаете кнопку Калк сим и смотрим результат.
Теперь о неприятном: возвышение земли… Её беру у гугла, максимум он разрешает около 2500 точек в день с одного ип адресса. Точки грузятся медленно. Есть буферизация: то есть загруженные точки остаются у вас на компе. Так же можно заранее буферизировать участок на карте: с меню правой кнопки мыши выбираем нужный пункт и выбираем нужную площадь.
Резолюция примерно 90 метров.
Я пользовался ВПН программой и за день выкачал нужный мне участок.
Так же уже буферезированные точки можно визуализировать, через меню сверху.
Сейчас ищу ВПН программу с открытым АПИ, чтобы программа могла автоматом менять ип адресса при бане-лимита от гугла, такие программы есть.
В общем как то так… сорри много букф.
Скорей всего заметите ошибки, как в орфографии, так и самой логике. Пишите, исправлю.
Ах да, по ошибке залил папку с выкаченными точками куска Израиля(amslBuff), рекомендую удалить - все не нужнуе точки только тормозят при визуализации и жрут оперативку.
Так же удалите файлы:
batGrOm
batGrV
dirPID
lastView
simParam
savedPoints
Все они в корневой папке.
С цветовой гаммой и шрифтами особо не играля, так что ещё буду править.
Свою программу минимум выполнил.
Молодец маньяк! По описанию как то все сложно и непонятно…(сижу с телефона) Надо будет качнуть, посмотреть что ты там намутил…
Не не, всё норм. Мой косяк. По ошибке выгрузил не то… ничего педустанавливать не нужно, просто запустить екзешник…
Вечером залью нормально.
Перезалил, открыл с чистой виртуальной винды, всё работает. Так же удалил лишние файлы.
drive.google.com/open?id=17WFbV4tB8ocMsy8rg4lKsjUb…
Хочу акцентировать внимание на запросе об максимальной емкости батареи: она должна быть в миллиампер-часах и она должна быть больше, чем максимально достигнутая в логе. Так же, если программа посчитает скорость разворота меньше 6-7 градусов в секунду, увеличите вручную.
В бедующем исправлю.
Никто не пробовал? Сергей, ничего устанавливать не нужно…
Посмотрел одним глазом, как то сложно всё…
Времени разбираться плотно пока нет…
Понаходил множество багов… Вроде всё исправил, докручу цветовую тему и перезалью.
ты бы снял видео, как пользоваться и для чего это всё надо… Просто так, ужас как непонятно…
Думал над этим… Обновлю програмку, запилю…
Немного новостей по проектам…
Доработал две программы. Нашёл путь обойти гугл и находить точки возвышения земли без него, что очень ускорило и развязало руки.
В общем, наконец то есть полностью завершённые версии.
Состряпал два видоса для выгрузки их на ютуб.
Но пока что нарисовалась следущая трабла: для упрощения жизни пользователям, использовал программу Excelsior JET для сборки проекта. При этом программа запускалась как обычное приложение под винду (не требовала установки жава машины).
Теперь Excelsior JET распростроняется с ограничением 2 месяца.
Но так как проект не монетезирован и полностью свободен, по их правилам, я могу получить бесплатную лицензию.
Одно из требований, это выгрузка проекта на депозиторий (типа ГитХаб).
Я в этом полный профан. Выгрузил, как смог, отписался им. Теперь жду от них ответа.
Вообщем, такие новости.
Тем временем у нас циклон В Израиле надуло и даже не полетать ))
Хотим видео мануал по использованию…
Окей, хотел сразу с сылками на программы выложить.
Завтра залью два ролика. И кому не влом устанавливать Жава машину дам сылки на проги с Jar файлами.
Думаю раньше понедельника, мне ребята из Excelsior JET не ответят.
Вот Обзор програмки по прощёту пути.
Единственное забыл рассказать о выборе карт, но это ерунда, сами разберётесь.
Так же в меню, последняя строчка, фича в разработке.
К слову скорее всего мне датут беспланую версию проги для Java. Так что будет версия без необходимости Вирт-Машины.
Пока что выкладываю сылку на проект с Жавой. Пусковой Jar - FPV.
drive.google.com/open?id=1y1_jmH07SNTUqnCXuXtPp_y8…
карта приближается и назад уже хрен отодвинешь… Найти нужное место не реально…
drive.google.com/open?id=1oqUSp_9bEj9dgofxQqLSdOC0…
На видео, ты карту отдалил…
Не совсем понял где она приблизилась…?
Понял, то есть тебе не хватает минимального масштаба? Странно, как бы я сам так ограничил, не думал что кому то не хватит, вроде у нас не большая авиация…
Я вышлю файлик на сотню киллобайт. Поменяй его в папке.
drive.google.com/open?id=1m4mZTal1mkisC5NrOVI0NifJ…
Вот, установи его в корневую папку.
Приближаешь карту, после этого отдалить её до первоначального масштаба(увидеть весь глобус, или хотябы Азию) невозможно!
А искать свою местность, если приблизил сильно, без отдаления - целая проблема…
Файл пока не менял…
Да, я уже понял это. Увеличил в несколько раз минимальный масштаб. Файлик меньше чем пол Мб.
Кстате, рекомендую просмотреть все карты в списке. Скорее всего, карта с названиями понравится больше. Мне например спутниковая карта никакая не нравится, глазу удобней когда фон светлый (типа топологической или как они там ее назвали “национальной”), а на спутниковой всё в кашу.
Скачал последнюю версию из поста #85 и что-то ничего не работает… или проект больше не поддерживается?
Программа открывается, при попытке открыть лог спрашивает mah аккума и минимальное напряжение для одной банки, но по нажатию ОК ничего не происходит, при попытке закрыть это окно - закрывается вся программа