[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
TSIP (и частично TAIP) работают двояко, т.е. запрос (команда) - ответ (пакет) и/или автовыдача НЕКОТОРЫХ заданных пакетов с заданным циклом, там есть некоторые способы привязки ДАННЫХ пакета к 1PPS. NMEA просто тупо выпихивается в выход, на запросы реагировать не приучена.
Момент 1PPS ВСЕГДА является точкой, к которой привязаны данные текущего цикла (Fix). Кстати, если сконфигурировать порт на NMEA Out и TSIP In, то остается возможность управления параметрами, хоть и вслепую (не будет response, разумеется - NMEA это не предусматривает). Ни в TSIP/TAIP, ни в NMEA момент физической выдачи пакета в порт не привязан строго к FixTime/1PPS - Вы и сами это заметили, судя по тому, что предупреждали коллегу о геморрое с определением момента истины. К тому же, можно вообще запутаться при слишком низкой скорости порта и большом числе заказанных пакетов, когда все пакеты просто не успеют выскочить до следующего 1PPS.
Мораль проста - не следует никоим образом привязываться к моменту физической выдачи пакета, для этого есть 1PPS, а все, что идет после него, относится именно К ПОСЛЕДНЕМУ выданному импульсу (Last fix). И еще - имейте в виду, что бывают пропуски 1PPS, обязательно учитывайте состояние флагов состояния - Position Fix Status и иже с ними. При темпе выдачи данных один раз в секунду проблем практически не возникает, но когда темп составляет 20 раз в секунду, да еще и с полной выдачей Raw Data (для пост-DGPS), вот тогда приходится изрядно попотеть.
Удачи!
E-mail: info@telesys.ru