Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
- ViktorPetrov
- Капитан
- Сообщения: 807
- Зарегистрирован: 09 апр 2018, 23:56
- Имя: Виктор
- Благодарил (а): 4 раза
- Поблагодарили: 1 раз
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
При изучение протокола NMEA обмена данными навигационных электронных устройств появилась необходимость вычислить расстояние от текущего положения до заданной точки. Фактически это вычисление расстояния по двум GPS координатам.
Раздельно:
Идея такова построить управляющее устройство из связки Ардуино для реализации полноценной многозадачности,где каждый МК будет выполнять свой узкий круг задач GPS.
Для проверки блоков ,вставить свои координаторы и пройти по ссылке: Калькулятор расстояния и азимута по географическим координатам
Для проверки блоков ,вставить свои координаторы и пройти по ссылке: Калькулятор расстояния и азимута по географическим координатам
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- Рядовой
- Сообщения: 93
- Зарегистрирован: 21 авг 2018, 19:05
- Откуда: Калининград
- Имя: Алексей
- Благодарил (а): 1 раз
- Поблагодарили: 2 раза
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
Добрый день!
Не совсем понятно, а куда вводить координаты для расчетов? У блоков только выходы...
Не совсем понятно, а куда вводить координаты для расчетов? У блоков только выходы...
- ViktorPetrov
- Капитан
- Сообщения: 807
- Зарегистрирован: 09 апр 2018, 23:56
- Имя: Виктор
- Благодарил (а): 4 раза
- Поблагодарили: 1 раз
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
По UART должен получать,как и блок GPS-Block ,хотел разобраться как в функции вход добавить ,чтоб вместе оба блока можно использовать в проекте ,время не хватило до конца разобраться, может пример неудачный выбрал ,хотел румпельный автопилот сделать для троллинга .Сама по себе тема лодочного компьютера и бортовой сети по протоколу NMEA2000 интересная, хотя и обширная.
- ViktorPetrov
- Капитан
- Сообщения: 807
- Зарегистрирован: 09 апр 2018, 23:56
- Имя: Виктор
- Благодарил (а): 4 раза
- Поблагодарили: 1 раз
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
Со скоростью 6км/час

Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
как бы надо понять --- нужно много точек.....очень много
-
- Рядовой
- Сообщения: 93
- Зарегистрирован: 21 авг 2018, 19:05
- Откуда: Калининград
- Имя: Алексей
- Благодарил (а): 1 раз
- Поблагодарили: 2 раза
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
У меня задача попроще - нужно определить курс и дистанцию из текущей точки до предварительно заданной. Чтобы наземное транспортное средство могло доехать по прямой. Не совсем понимаю как совместить навигатор и эти блоки.
Буду очень признателен за помощь.
В наличии NEO6 и NEO8
Буду очень признателен за помощь.
В наличии NEO6 и NEO8
- ViktorPetrov
- Капитан
- Сообщения: 807
- Зарегистрирован: 09 апр 2018, 23:56
- Имя: Виктор
- Благодарил (а): 4 раза
- Поблагодарили: 1 раз
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
Чтоб курс держать нужен компас .Чтоб подключится к навигатору ,нужно NEO6 и ардуину , подключить как внешний приемник ,я попробовал на программе SASPlanet,только возникает вопрос нужен ли вообще блок GPS-Block,здесь получается проще сразу со строками работать .На форуме были хорошие примеры : Gps парсинг или разбор строки.
-
- Рядовой
- Сообщения: 93
- Зарегистрирован: 21 авг 2018, 19:05
- Откуда: Калининград
- Имя: Алексей
- Благодарил (а): 1 раз
- Поблагодарили: 2 раза
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
Виктор, объясните подробно - в каком виде Ваши блоки получаю информацию? Из UART в формате NMEA?
Зачем тогда парсер? Если нет, в другом формате, поясните, как можно подробнее.
Зачем тогда парсер? Если нет, в другом формате, поясните, как можно подробнее.
- ViktorPetrov
- Капитан
- Сообщения: 807
- Зарегистрирован: 09 апр 2018, 23:56
- Имя: Виктор
- Благодарил (а): 4 раза
- Поблагодарили: 1 раз
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
Чтоб двойное преобразование не делать : с NEO6 или NEO8 по RX и TX ,ардуино получает строку типа - $GPRMC,180301.45,A,5546.8890,N,03733.3533,E,22.4,090.4,190608,10,E*45 и пересылает в СОМ порт навигационной программы,получается внешний приемник GPS для навигатора . Парсингом получаешь данные для управления ,расстояние нужно для переключения на следующию точку (когда расстояние минимальное до точки,пройден марширут до первой точки, переходим к второй и т.д.). Полученный направление движения от GPS сверяется с компасом ,получаем управляющий сигнал на автопилот (не зависимо от течения и ветра,лодку может сносить приходим на заданную точку). Ну и там разные плюшки :количество топлива в баке ,расход топлива ,обороты ,скорость и т.д. виртуальная приборная панель,все приборы объединить в одну сеть.
-
- Рядовой
- Сообщения: 93
- Зарегистрирован: 21 авг 2018, 19:05
- Откуда: Калининград
- Имя: Алексей
- Благодарил (а): 1 раз
- Поблагодарили: 2 раза
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
Т.е. я пишу парсер, который выделяет текущие координаты - это понятно.
Но не понимаю, что значит "пересылает в СОМ порт навигационной программы"?
Поясните как пользоваться Вашими блоками, как и в каком виде можно передать в блоки координаты, полученные парсером?
Но не понимаю, что значит "пересылает в СОМ порт навигационной программы"?
Поясните как пользоваться Вашими блоками, как и в каком виде можно передать в блоки координаты, полученные парсером?
-
- Полковник
- Сообщения: 1928
- Зарегистрирован: 28 окт 2015, 22:47
- Откуда: Ленобласть
- Имя: Игорь
- Поблагодарили: 2 раза
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
[ref]ViktorPetrov[/ref], эту бибку рассматривали https://www.arduino.cc/reference/en/libraries/tinygps/ ? https://github.com/mikalhart/TinyGPSPlus
Отправлено спустя 2 минуты 23 секунды:
Или http://arduiniana.org/libraries/tinygpsplus/
Отправлено спустя 2 минуты 23 секунды:
Или http://arduiniana.org/libraries/tinygpsplus/
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.
- ViktorPetrov
- Капитан
- Сообщения: 807
- Зарегистрирован: 09 апр 2018, 23:56
- Имя: Виктор
- Благодарил (а): 4 раза
- Поблагодарили: 1 раз
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
[ref]Ingwar[/ref], Обновленная библиотека TinyGPS++ ,это как раз и не хватало в блоке GPS-Block_v0.5 

-
- Рядовой
- Сообщения: 93
- Зарегистрирован: 21 авг 2018, 19:05
- Откуда: Калининград
- Имя: Алексей
- Благодарил (а): 1 раз
- Поблагодарили: 2 раза
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
Добрый день!
Мои пионеры доработали блоки ViktorPetrov, приделав им входы. Работу начали в новом конструкторе блоков, однако из-за отсутствия стандартного блока ATAN2 (как позднее выяснилось не только его) пришлось сделать и второй блок (программный), в котором заканчиваются расчеты дистанции и вычисляется курс.
Пока данные берутся из переменных, далее планируется получать их из GPS-блока. Однако возникли проблемы с работой программы - вычисления происходят как бы не сразу, а через 5-10 секунд, при этом в монитор выводятся ненужные нули.
Может кто-то подскажет где ошибка и поможет доделать программу?
Программа
Мои пионеры доработали блоки ViktorPetrov, приделав им входы. Работу начали в новом конструкторе блоков, однако из-за отсутствия стандартного блока ATAN2 (как позднее выяснилось не только его) пришлось сделать и второй блок (программный), в котором заканчиваются расчеты дистанции и вычисляется курс.
Пока данные берутся из переменных, далее планируется получать их из GPS-блока. Однако возникли проблемы с работой программы - вычисления происходят как бы не сразу, а через 5-10 секунд, при этом в монитор выводятся ненужные нули.
Может кто-то подскажет где ошибка и поможет доделать программу?
Программа
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- rw6cm
- Полковник
- Сообщения: 2372
- Зарегистрирован: 06 сен 2015, 20:25
- Имя: Владимир
- Поблагодарили: 41 раз
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
Много лишнего, и да и расчет не точный. особенно расстояние.AstroGraf писал(а): 13 июл 2021, 21:33 Может кто-то подскажет где ошибка и поможет доделать программу?
Хотя бы по гуглу сравнили, или онлайн калькулятором,

Если это творят детишки, то зачет

У вас нет необходимых прав для просмотра вложений в этом сообщении.
Win10-64, FLProg (portable)
-
- Рядовой
- Сообщения: 93
- Зарегистрирован: 21 авг 2018, 19:05
- Откуда: Калининград
- Имя: Алексей
- Благодарил (а): 1 раз
- Поблагодарили: 2 раза
Расчет дистанции и курса на точку, между двумя точками по GPS координатам.
Спасибо огромное, [ref=#ff8000]rw6cm[/ref]! Как всегда, выручил!
Да, это ребята 13-15 лет тренируются.
Со схемотехникой я им помогаю, а вот по С++ должным образом помочь не могу , как говорится, читаю, но не разговариваю.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя