Использование идентификатора последовательного сообщения AIS Sentence - PullRequest
0 голосов
/ 19 октября 2019

Здесь пояснил, что поле 4 представляет собой последовательный идентификатор сообщения для сообщений из нескольких предложений. Что это значит? В чем разница между полем 4 и полем 3?

1 Ответ

1 голос
/ 30 октября 2019

С веб-сайта:

Поле 2 (1 в этом примере) - это количество фрагментов в текущем сообщении. Размер полезной нагрузки каждого предложения ограничен 82-символьным максимумом NMEA 0183, поэтому иногда требуется разделить полезную нагрузку по нескольким фрагментным предложениям.

Поле 3 (в данном примере 1) является фрагментом номер этого предложения. Это будет один на основе. Предложение с числом фрагментов 1 и номером фрагмента само по себе завершено.

Поле 4 (пустое в этом примере) представляет собой последовательный идентификатор сообщения для сообщений из нескольких предложений.

Рассмотрим сообщение, отправленное с использованием 2 фрагментов:

  • Поле 2 будет 2, количество фрагментов.
  • Поле 3 будет 1 для первого фрагмента и 2 для второго
  • Поле 4 может быть любой цифрой от 0 до 9, но будет общим для обоих сообщений. Этот номер увеличивается для каждого нового многофрагментного сообщения, отправленного судном. Это позволяет программе декодирования сопоставлять фрагменты, принадлежащие одному и тому же сообщению.

Вот еще один пример:

!AIVDM,2,1,8,A,56;OaD02B8EL990b221`P4v1T4pN0HDpN2222216HHN>B6U30A2hCDhD`888,0*4D
!AIVDM,2,2,8,A,88888888880,2*2C

Сообщение состоит из 2 частей (из поля #2) мы можем видеть фрагменты 1 и 2 (из поля # 3), а message_id для обоих фрагментов этого сообщения - 8 (из поля # 4).

С тех же судов я ранее получил идентификатор сообщения 7, а прямо перед этим идентификатором сообщения 6 и т. Д.

...