Алгоритм дешифровки навигационных сообщений с эфемеридами спутника и измеренными псевдодальностями




Данный документ описывает алгоритм дешифровки навигационных параметров, поступающих с приемника на ЭВМ, используемых для определения координат спутника в системе ECEF. Предлагается навигационные параметры записывать в виде массива векторов, компонентами которых являются номер спутника, момент времени в системе GPS, когда сигнал был получен приемником, эфемериды и поправки для эфемерид спутника.

Первый этап. На первом этапе проводится дешифровка параметров, поступающих в сообщениях U-blox класса RXM, с ID соответствующей RXM-EPH.

Дешифровка проводится только с сообщениями, у которых нулевой байт содержит 0xB5, в первом байте - 0x62, во втором байте - 0x02, в третьем байте – 0x31

Ниже идет последовательность шагов алгоритма на первом этапе дешифровки:

1. Получить первую компоненту вектора, номер спутника, SVN, (безразмерная величина) которая находится на байтовом промежутке [6, 9] (4 байта). SVN принимает значение от 1 до 32.

2. Проверить что HOW (байтовый промежуток [10, 13] (4 байта)) не равен нулю, иначе прекратить дешифровку данного сообщения.

3. Получить вторую компоненту, (размер 16 бит), местоположение [35, 36]. SF =

4. Получить третью компоненту, (размер 8 бит), местоположение [38, 38]. SF =

5. Получить четвертую компоненту, (размер 16 бит), местоположение [39, 40]. SF =

6. Получить пятую компоненту, (размер 22 бита), местоположение [42, 44-ый байт шестой бит]. SF =

7. Получить шестую компоненту, (размер 16 бит), местоположение [47, 48]. SF =

8. Получить седьмую компоненту, (размер 16 бит), местоположение [50, 51]. SF =

9. Получить восьмую компоненту, (размер 32 бита), местоположение начальной части [52, 52], а конечной [54, 56]. SF =

10. Получить девятую компоненту, (размер 16 бит), местоположение [58, 59]. SF =

11. Получить десятую компоненту, e (размер 32 бита), местоположение начальной части [60, 60], а конечной [62, 64]. SF =

12. Получить одиннадцатую компоненту, (размер 16 бит), местоположение [66, 67]. SF =

13. Получить двенадцатую компоненту, (размер 32 бита), местоположение начальной части [68, 68], а конечной [70, 72]. SF =

14. Получить тринадцатую компоненту, (размер 16 бит), местоположение [74, 75]. SF =

15. Получить четырнадцатую компоненту, (размер 16 бит), местоположение [78, 79]. SF =

16. Получить пятнадцатую компоненту, (размер 32 бита), местоположение начальной части [80, 80], а конечной [82, 84]. SF =

17. Получить шестнадцатую компоненту, (размер 16 бит), местоположение [86, 87]. SF =

18. Получить семнадцатую компоненту, (размер 32 бита), местоположение начальной части [88, 88], а конечной [90, 92]. SF =

19. Получить восемнадцатую компоненту, (размер 16 бит), местоположение [94, 95]. SF =

20. Получить девятнадцатую компоненту, (размер 32 бита), SF = местоположение начальной части [96, 96], а конечной [98, 100].

21. Получить двадцатую компоненту, (размер 24 бита), месторасположение [102, 104]. SF =

22. Получить двадцать первую компоненту, IDOT (размер 14 бит), месторасположение [107, 108-ой байт шестой бит]. SF =

 

Рисунок 4 - Алгоритм обработки сообщения с эфемеридами

Второй этап.На втором этапе проводится дешифровка навигационных измерений, поступающих в сообщениях U-blox класса RXM, с ID соответствующей RXM-RAW.

Дешифровка проводится только с сообщениями, у которых нулевой байт содержит 0xB5, в первом байте - 0x62, во втором байте - 0x02, в третьем байте – 0x10 Измеренные значения присоединяются к тому вектору, компоненты которого были получены на ЭВМ одновременно с вышеупомянутыми измерениями.

Ниже идет последовательность шагов алгоритма на втором этапе дешифровки:

1. Получить двадцать вторую компоненту, ITOW (размер 32 бита), месторасположение [6, 9]. Это значение записано в числовом формате I4 Signed Long, и имеет размерность в миллисекундах.

2. Получить двадцать третью компоненту, Week (размер 16 бит), месторасположение [10, 11]. Это значение записано в числовом формате I2 Signed Short и имеет размерность в неделях.

3. Получить значение NSV (размер 8 бит), количество спутников, от которых были получены сигналы в данный момент времени. Месторасположение [12, 12]. Числовой формат значения – U1 Unsigned Char. Вводится индекс

k:= NSV.

4. I:= 0; k:= k-1

5. Получить значение SV (размер 8 бит), номер текущего спутника. Месторасположение [34+24*I, 34+24*I]. Это значение записано в числовом формате U1 Unsigned Char.

6. Получить двадцать четвертую компоненту, PR (размер 8 байт), месторасположение [22+24*I, 29+24*I]. Это значение записано в числовом формате R8 IEEE 754 Double Precision. PR необходимо включить в тот вектор, у которого первая компонента SVN равно значению SV, найденному на шаге 5 второго этапа.  

7. Если (k>0) то I:= I+1 и возврат к шагу 4 второго этапа.

Если же (k=0) тогда алгоритм завершается.

Рисунок 5 – Алгоритм обработки сообщения с сырыми данными

Третий этап.На третьем этапе проводится подведение компонентов вектора к соответствующим истинным значениям навигационных параметров с помощью фактора масштабирования SF (Scale Factor). Для компонент вектора без указания параметра SF следует полагать что фактор масштабирования равен единице. Таким образом,

a[ I ]:= SF*a[ I ] (1)

где a[ I ] –компонента вектора.

 

В результате работы данного алгоритма на выходе получается массив векторов, имеющих по 24 компоненты. Каждый вектор содержит данные по эфемеридам и поправкам эфемерид для заданного спутника в определенный момент времени в системе отсчета GPS.

 

Примечание: Байт, который идет в начале сообщения следует считать нулевым, а начальный бит в байте – первым, дешифруемые значения навигационных параметров записанными в память в числовом формате (U4) Unsigned Long, если не оговорено обратное. Все мультибайтовые значения в сообщений записаны в порядковом формате Little Endian ("Прямой порядок байт" в исполняемом коде; порядок от младшего к старшему: запись начинается с младшего и заканчивается старшим байтом).

 

 

 

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2018-02-24 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: