Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

Создаем свой блок. Вопросы, помощь знатоков.
Ответить
Аватара пользователя
ViktorPetrov
Лейтенант
Сообщения: 421
Зарегистрирован: 09.04.2018{, 23:56}
Репутация: 26
Имя: Виктор

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#1

Сообщение ViktorPetrov » 22.11.2019{, 12:40}

При изучение протокола NMEA обмена данными навигационных электронных устройств появилась необходимость вычислить расстояние от текущего положения до заданной точки. Фактически это вычисление расстояния по двум GPS координатам.
Дистанция_и_курс_(CODE).ubi
Раздельно:
Дистанция_до_точки._(CODE).ubi
Курс_gps_(CODE).ubi
Идея такова построить управляющее устройство из связки Ардуино для реализации полноценной многозадачности,где каждый МК будет выполнять свой узкий круг задач GPS.

Для проверки блоков ,вставить свои координаторы и пройти по ссылке: Калькулятор расстояния и азимута по географическим координатам
Для скачивания вложений Вы должны быть зарегистрированы.

AstroGraf
Рядовой
Сообщения: 25
Зарегистрирован: 21.08.2018{, 19:05}
Репутация: 1
Откуда: Калининград
Имя: Алексей

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#2

Сообщение AstroGraf » 03.06.2021{, 18:38}

Добрый день!

Не совсем понятно, а куда вводить координаты для расчетов? У блоков только выходы...

Аватара пользователя
ViktorPetrov
Лейтенант
Сообщения: 421
Зарегистрирован: 09.04.2018{, 23:56}
Репутация: 26
Имя: Виктор

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#3

Сообщение ViktorPetrov » 03.06.2021{, 21:54}

По UART должен получать,как и блок GPS-Block ,хотел разобраться как в функции вход добавить ,чтоб вместе оба блока можно использовать в проекте ,время не хватило до конца разобраться, может пример неудачный выбрал ,хотел румпельный автопилот сделать для троллинга .Сама по себе тема лодочного компьютера и бортовой сети по протоколу NMEA2000 интересная, хотя и обширная.

Аватара пользователя
Anydy
Администратор
Сообщения: 3037
Зарегистрирован: 30.12.2017{, 12:10}
Репутация: 247
Имя: Андрей

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#4

Сообщение Anydy » 05.06.2021{, 09:17}

ViktorPetrov писал(а):
03.06.2021{, 21:54}
хотел румпельный автопилот сделать для троллинга

Аватара пользователя
ViktorPetrov
Лейтенант
Сообщения: 421
Зарегистрирован: 09.04.2018{, 23:56}
Репутация: 26
Имя: Виктор

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#5

Сообщение ViktorPetrov » 05.06.2021{, 12:54}

Anydy писал(а):
05.06.2021{, 09:17}
ViktorPetrov писал(а):
03.06.2021{, 21:54}
хотел румпельный автопилот сделать для троллинга
Со скоростью 6км/час :)

Аватара пользователя
Anydy
Администратор
Сообщения: 3037
Зарегистрирован: 30.12.2017{, 12:10}
Репутация: 247
Имя: Андрей

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#6

Сообщение Anydy » 05.06.2021{, 14:43}

как бы надо понять --- нужно много точек.....очень много

AstroGraf
Рядовой
Сообщения: 25
Зарегистрирован: 21.08.2018{, 19:05}
Репутация: 1
Откуда: Калининград
Имя: Алексей

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#7

Сообщение AstroGraf » 05.06.2021{, 19:39}

У меня задача попроще - нужно определить курс и дистанцию из текущей точки до предварительно заданной. Чтобы наземное транспортное средство могло доехать по прямой. Не совсем понимаю как совместить навигатор и эти блоки.
Буду очень признателен за помощь.
В наличии NEO6 и NEO8

Аватара пользователя
ViktorPetrov
Лейтенант
Сообщения: 421
Зарегистрирован: 09.04.2018{, 23:56}
Репутация: 26
Имя: Виктор

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#8

Сообщение ViktorPetrov » 07.06.2021{, 12:53}

Чтоб курс держать нужен компас .Чтоб подключится к навигатору ,нужно NEO6 и ардуину , подключить как внешний приемник ,я попробовал на программе SASPlanet,только возникает вопрос нужен ли вообще блок GPS-Block,здесь получается проще сразу со строками работать .На форуме были хорошие примеры : Gps парсинг или разбор строки.

AstroGraf
Рядовой
Сообщения: 25
Зарегистрирован: 21.08.2018{, 19:05}
Репутация: 1
Откуда: Калининград
Имя: Алексей

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#9

Сообщение AstroGraf » 07.06.2021{, 16:38}

Виктор, объясните подробно - в каком виде Ваши блоки получаю информацию? Из UART в формате NMEA?
Зачем тогда парсер? Если нет, в другом формате, поясните, как можно подробнее.

Аватара пользователя
ViktorPetrov
Лейтенант
Сообщения: 421
Зарегистрирован: 09.04.2018{, 23:56}
Репутация: 26
Имя: Виктор

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#10

Сообщение ViktorPetrov » 08.06.2021{, 20:19}

AstroGraf писал(а):
07.06.2021{, 16:38}
Зачем тогда парсер?
Чтоб двойное преобразование не делать : с NEO6 или NEO8 по RX и TX ,ардуино получает строку типа - $GPRMC,180301.45,A,5546.8890,N,03733.3533,E,22.4,090.4,190608,10,E*45 и пересылает в СОМ порт навигационной программы,получается внешний приемник GPS для навигатора . Парсингом получаешь данные для управления ,расстояние нужно для переключения на следующию точку (когда расстояние минимальное до точки,пройден марширут до первой точки, переходим к второй и т.д.). Полученный направление движения от GPS сверяется с компасом ,получаем управляющий сигнал на автопилот (не зависимо от течения и ветра,лодку может сносить приходим на заданную точку). Ну и там разные плюшки :количество топлива в баке ,расход топлива ,обороты ,скорость и т.д. виртуальная приборная панель,все приборы объединить в одну сеть.

AstroGraf
Рядовой
Сообщения: 25
Зарегистрирован: 21.08.2018{, 19:05}
Репутация: 1
Откуда: Калининград
Имя: Алексей

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#11

Сообщение AstroGraf » 08.06.2021{, 21:51}

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

Ingwar
Подполковник
Сообщения: 1249
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 75
Откуда: Ленобласть
Имя: Игорь

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#12

Сообщение Ingwar » 08.06.2021{, 22:08}

ViktorPetrov, эту бибку рассматривали https://www.arduino.cc/reference/en/libraries/tinygps/ ? https://github.com/mikalhart/TinyGPSPlus

Отправлено спустя 2 минуты 23 секунды:
Или http://arduiniana.org/libraries/tinygpsplus/
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Аватара пользователя
ViktorPetrov
Лейтенант
Сообщения: 421
Зарегистрирован: 09.04.2018{, 23:56}
Репутация: 26
Имя: Виктор

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.

#13

Сообщение ViktorPetrov » 10.06.2021{, 17:28}

Ingwar, Обновленная библиотека TinyGPS++ ,это как раз и не хватало в блоке GPS-Block_v0.5 :smile9:

Ответить

Вернуться в «Разработка пользовательских блоков»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость