Архивная копия форума. Читать можно всё, отвечать — уже нет.
Форум › Творческий › Прикручиваем GPS
 Прикручиваем GPS
katsuk
09.07.2009 12:32
Сообщение #25


Активный участник
Группа: Админы
Сообщений: 436
Регистрация: 30.06.2009

Ань, суть простая. GPS вешается на COM порт, постоянно изливается данными. Данные выглядяк как текстовые строки, в которых данные разделены запятыми, это называется NMEA протокол.

Каждая строка начинается с "$GP"

Тебе надо поймать строку, начнающуюся с "$GPRMC", ловишь всю строку, затем парсишь ее через "," (запятую)

пример того, что выдает GPS:

$GPRMC,112233.001,A,4455.6677,N,8899.1234,E,05.3,11.22,051009,,*2F

 

тут 112233.001 это время (11ч 22м 33.001сек)

"А" - значит "достоверно", т.е. поймал сигнал

4455.6677 это широта, дальше идет "N" - северная

8899.1234 долгота, "E" - западная

05.3 - скорость (в км/ч должна быть...)

11.22 - азимут

051009 - 5 октября 2009

*2F - CRC (тебе не надо :) )

там есть и другие строки, не "RMC", типа уровней сигналов со спутника и т.д., тебе пока не надо :)

 

вот так будет выглядеть строка, пока GPS еще не поймал спутники:

$GPRMC,,V,,,,,,,051078,9.6,,N*7A

V - недостоверно

N*7A - контрольная сумма с флагом "недостоверно"

051078  - дата

иногда еще и время отображает

 

Просто сделай в проге выбор порта и выбор скорости...

 



NMEA0183.pdf (58.7 КБ)
а вот и сам протокол
Альфа
09.07.2009 17:03
Сообщение #27


Активный участник
Группа: Админы
Сообщений: 343
Регистрация: 04.07.2009

Спасибо, Юра. У меня с наскоку, как я помню, проблемы возникли не с форматом данных протокола NMEA, а с функциями MS Visual C# (C++?) (у меня глюк, я уже не помню, на каком языке это писала) для работы с gps. Помнится, не нашла их или не нашла, какую библиотеку подключить, чтобы они были. Надо собраться с мозгами и восстановить контекст :)

На этой неделе вряд ли успею (нашла-таки довольно приличные карты белорусской части Зоны, ура! Надо срочно внедрить в адресную книгу), а на следующей торжественно обещаю поставить "Студию" (чёрт, система уже трижды переставленная с тех пор) и начать втыкать в gps. Раз есть такая потребность -- развивать программулю дальше, все постепенно будет :)

katsuk
09.07.2009 18:04
Сообщение #28


Активный участник
Группа: Админы
Сообщений: 436
Регистрация: 30.06.2009
Интересно, кто быстрее что-то сделает, я железяку или ты софт? :)
Альфа
10.07.2009 09:35
Сообщение #32


Активный участник
Группа: Админы
Сообщений: 343
Регистрация: 04.07.2009
Ты железяку, однозначно.
katsuk
10.07.2009 11:20
Сообщение #33


Активный участник
Группа: Админы
Сообщений: 436
Регистрация: 30.06.2009
Ну это весьма не факт...