Протокол систем навигации

vovic

Не подскажет ли все знающий ALL описание протокола GPS - NMEA sentence , желательно на русском языке. На сообщение $GPRMC я описание нашел, а вот на $GPRMB - нет. А самое главное - управляющие команды.
Может кто занимался навигацией…

Lazy

Володя, члек профессионально строит БПЛА для армии одной из стран. Адрес я тебе в личку швырну.

nicetry

команды нужно искать в описанинии протокола конкретной модели приемника на сайте производителя, ибо не все приемники их вообще поддерживают.
а лучше не заморачиваться с NMEA и использовать фирменный протокол конкретного модуля, как правило он гораздо более удобный, нежели абстрактный NMEA0183, и позволяет использовать продвинутые фичи приеника.

Желтый_вжик

TO VOVIC на главной улице Воронеже в известном тебе институте есть группа лиц очень успешно и не первый год всем этим занимающееся.

vovic
Желтый_вжик:

TO VOVIC на главной улице Воронеже в известном тебе институте есть группа лиц очень успешно и не первый год всем этим занимающееся.

Это уже не институт, а Концерн.
Группа эта тоже известна. Но для работы с ними нужна хоть какая предварительная подготовка.
Я ж не могу как иные на форуме - полный ноль, а лезут вперед, - мне статус не позволяет.

Спасибо за подсказки.

Boroda

команды нужно искать в описанинии протокола конкретной модели приемника на сайте производителя, ибо не все приемники их вообще поддерживают.
а лучше не заморачиваться с NMEA и использовать фирменный протокол конкретного модуля, как правило он гораздо более удобный, нежели абстрактный NMEA0183, и позволяет использовать продвинутые фичи приеника.

Всё верно, производители не очень любят полностью поддерживать сообщения, а особенно команды стандарта. Я не уверен, что любой гармин выдаёт $GPRMB.
Для выработки канального сервоимпульса бортовому процессору придётся по любому сильно задуматься, поэтому NMEA0183 не так и плох. Уж $GPRMC и $GPGLL поддерживает любой модуль, заявленный как NMEA совместимый. А точку возврата наверное лучше запоминать не в навигаторе, а в автопилоте.
Вот, что я встречал из путного про NMEA по русски:
navrec.nm.ru/rus/soft.htm
А здесь были лёгкие недорогие модули на складе:
www.mitracon.ru

nicetry

я бы посоветовал Trimble Lassen SQ, торгует Навгеоком.

vovic
Boroda:

Для выработки канального сервоимпульса бортовому процессору придётся по любому сильно задуматься, поэтому NMEA0183 не так и плох. Уж $GPRMC и $GPGLL поддерживает любой модуль, заявленный как NMEA совместимый. А точку возврата наверное лучше запоминать не в навигаторе, а в автопилоте.
Вот, что я встречал из путного про NMEA по русски:
navrec.nm.ru/rus/soft.htm

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

Boroda
vovic:

Есть желающие поучаствовать в совместной разработке?
Делать я буду в любом случае. Как мимнимум вариант канадца Миши Павловски RCAP.
Но вместе - девайс может получиться гораздо лучше исходного варианта.

Есть желание и некоторые наработки. Вот со временем туго - сынишке 6 месяцев. Подробнее вопросы и соображения отпишу в личку. Завтра прозвоню Навгеоком и Митракон.
А есть описание устройства Павловски?

vovic
Boroda:

А есть описание устройства Павловски?

www.rconline.ca/products/mi-soft/rcap/
Софт я уже подробно разобрал по косточкам, кроме прерываний. Но они погоды не делают
Может, пикбейсик и не солиден, но для таких птюх (это выражение нашего директора) - самое то.

Boroda:

Вот, что я встречал из путного про NMEA по русски:
navrec.nm.ru/rus/soft.htm

Изучил. Но не нашел команд ввода опорных точек маршрута и команды GO TO.
Т.е. тех команд, после которых GPS-приемник начинает выдавать сообщение $GPRMB.
Кто-нить может что подсказать по этому поводу?
Как активизировать сообщение $GPRMB не вручную на навигаторе, а по RS-232?

nicetry

если в итоге хочется получить что-то путное, то придется оставить в покое команды и написать свою процедуру выбора пути к заданной точке.

Boroda
vovic:

Кто-нить может что подсказать по этому поводу?
Как активизировать сообщение $GPRMB не вручную на навигаторе, а по RS-232?

Стандарта в живую я не видел, но во всех приёмниках, с которыми имел дело, это устанавливается только по фирменному протоколу. А как ещё заставить пользователя купить фирменные репитеры или софт? $GPRMB может выдаваться сразу по включению, но информация недостоверна. Вот дамп с eTrex после старта, но до захвата:
$GPRMC,V,271105,9.8,E,N*39
$GPRMB,V,A,N*13
$GPGGA,0,00,M,M,*66
$GPGSA,A,1,*1E
$GPGSV,3,1,12,01,00,280,00,02,40,061,00,04,07,043,00,05,35,149,00*79
$GPGSV,3,2,12,06,61,253,00,10,21,113,00,13,04,026,00,16,00,308,00*71
$GPGSV,3,3,12,21,10,205,00,23,10,356,00,25,34,292,00,30,64,173,00*72
$GPGLL,V,N*64
$GPBOD,T,M,*47
$PGRME,M,M,M*00
$PGRMZ,f,1*29
$GPRTE,1,1,c,*37

vovic

если в итоге хочется получить что-то путное, то придется оставить в покое команды и написать свою процедуру выбора пути к заданной точке.

Аргументы - есть?
Как контраргумент - выше ссылка на работающий девайс, который вполне обходится без своей процедуры.

nicetry

есть, но оставлю при себе.
удачной разработки.

vovic

Вот, кое что нашел.
Вот эта команда заносит в приемник точки:

WPL - Waypoint Location data provides essential waypoint data. It is output when navigating to indicate data about the destination and is sometimes supported on input to redefine a waypoint location. Note that waypoint data as defined in the standard does not define altitude, comments, or icon data. When a route is active, this sentence is sent once for each waypoint in the route, in sequence. When all waypoints have been reported, the RTE sentence is sent in the next data set. In any group of sentences, only one WPL sentence, or an RTE sentence, will be sent.

$GPWPL,4807.038,N,01131.000,E,WPTNME*5C

With an interpretation of:

WPL Waypoint Location
4807.038,N Latitude
01131.000,E Longitude
WPTNME Waypoint Name
*5C The checksum data, always begins with *

А вот эта команда эквивалентна GO TO если точка одна или ROUTE если точек много:

RTE - RTE is sent to indicate the names of the waypoints used in an active route. There are two types of RTE sentences. This route sentence can list all of the waypoints in the entire route or it can list only those still ahead. Because an NMEA sentence is limited to 80 characters there may need to be multiple sentences to identify all of the waypoints. The data about the waypoints themselves will be sent in subsequent WPL sentences which will be sent in future cycles of the NMEA data.

$GPRTE,2,1,c,0,W3IWI,DRIVWY,32CEDR,32-29,32BKLD,32-I95,32-US1,BW-32,BW-198*69

Where:
RTE Waypoints in active route
2 total number of sentences needed for full data
1 this is sentence 1 of 2
c Type c = complete list of waypoints in this route
w = first listed waypoint is start of current leg
0 Route identifier
W3IWI,… Waypoint identifiers (names)
*69 checksum

По крайней мере, после нее GPRMB начнет выдавать истинные значения данных.
Я правильно понял? Может, кто меня поправит?

toxa
vovic:

Вот, кое что нашел.

Дело за малым: найти дешевый легкий gps приемник с интерфейсом rs232 который эту команду поддерживает.

vovic

С этим непросто. Даже поставщики головок GPS без навигатора - для КПК и ноутбуков не пишут в сети полных характеристик интерфейса NMEA и поддерживаемых команд.
По некоторым данным WPL поддерживает большинство приемников, а вот RTE - только некоторые.
Но, если речь об автопилоте, то не исключено, что команда на ввод активной точки WPL тоже активизирует процедуру GPRMB

nicetry
vovic:

С этим непросто. Даже поставщики головок GPS без навигатора - для КПК и ноутбуков не пишут в сети полных характеристик интерфейса NMEA и поддерживаемых команд.
По некоторым данным WPL поддерживает большинство приемников, а вот RTE - только некоторые.
Но, если речь об автопилоте, то не исключено, что команда на ввод активной точки WPL тоже активизирует процедуру GPRMB

зарёкся было давать вам советы, но… не выдержал, потому что смешно вас читать.
“головки GPS для КПК” в подавляющем большинстве строятся на чипах от SiRF (чип - это 99% такого устройства). Правда сама по себе SiRF - шарага и много инфы на её сайте не найдешь, но… выход есть! Набираем в google фразу “sirf command reference” и тыкаем в первую ссылку.
( для ленивых: www.google.ru/search?hl=ru&q=sirf+command+referenc… )

vovic

зарёкся было давать вам советы, но… не выдержал, потому что смешно вас читать.

Ну, посмеятся полезно… над тем, что действительно смешно.
Вот только позиция - я, дескать, знаю, а вы олухи - нет, так я вам не скажу и останусь при своих…
У кого - как, но у меня лично такая позиция симпатий не вызывает.
Знаешь - поделись, для того и форум.
А похихикать из угла…
Гуглем пользоваться умеем. Только для дилетанта объять море инфы - непросто. А въезжать досконально - ведь цели нет. Задача то весьма узкая.
У чипсета SiRF - куча модификаций. И какой чипсет в каком GPS приемнике стоит - тоже не вдруг разберешся…

nicetry

поделился, получил невежливый ответ. ваша позиция тоже не блещет.
еще раз: успехов, надеюсь ссылка вам поможет.

vovic

Еще вопрос для знающих:
ОЕМ GPS-приемники стартуют сами, или для их инициализации требуется внешний софт?

serj

я ж отвечал в личку… в основном сами, только мотопролу грузить надо… как правило изначально запророграммировано миниvум- ga, sa, sv, rmc.