День 7: Поглиблений аналіз навігаційних даних

Лектор: Андрій Ніколаєв, кандидат технічних наук, старший науковий співробітник, лабораторія навігаційних систем

Дата: березень 2003 р.


Тема: від похибок до точності — аналіз і контроль цілісності навігаційного поля

1. Вступ: чому варто довіряти, але перевіряти навігаційні дані?

Сучасні навігаційні системи міцно увійшли в наше життя, забезпечуючи точне позиціонування для різноманітних завдань. Однак покладатися на виміряні дані GNSS без перевірки неприпустимо. На точність навігації впливають різні похибки:

  • Атмосферні перешкоди: іоносфера та тропосфера спотворюють радіосигнали, спричиняючи затримки та похибки.
  • Неточності часу: навіть атомні годинники на супутниках і приймачах мають мікроскопічні відхилення.
  • Геометрія супутників: розташування супутників впливає на точність вимірювань.
  • Збої апаратного та програмного забезпечення: супутники та приймачі можуть давати збій.

Проста аналогія: уявіть хор, де кожен голос — це сигнал від супутника. Для «гармонійного звучання» (точної навігації) усі «голоси» мають бути чистими. Помилкові дані — це «фальшиві ноти», які потрібно виявити та виправити.

Мета лекції: вивчення аналізу даних GNSS та контролю цілісності для:

  • Підвищення точності навігації
  • Забезпечення надійності навігаційної інформації
  • Виявлення та виключення збоїв у даних

Ключові завдання аналізу:

  • Оцінка диференціальних корекцій для компенсації похибок
  • Перевірка достовірності сигналів для оцінки їхньої якості
  • Виключення помилкових даних для підвищення точності

2. Оцінка диференціальних корекцій: усунення спільних похибок

2.1. Що таке диференціальні корекції та як вони працюють?

Диференціальні корекції — це метод підвищення точності GNSS за допомогою базової станції з відомими координатами.

Принцип роботи: базова станція порівнює виміряні та фактичні відстані до супутників. Різниця — це диференціальна корекція. Корекції передаються на рухомий приймач (rover) для компенсації спільних похибок.

Схема, що ілюструє процес контролю цілісності GPS, показуючи, як аналіз матриці взаємної перевірки допомагає виявити несправні супутники
Процес контролю цілісності GPS: виявлення несправних супутників за допомогою аналізу матриці взаємної перевірки

Ключові компоненти диференціального GPS (DGPS)

1. Супутники GPS
Сузір’я супутників, що передають навігаційні сигнали
2. Опорна станція
Стаціонарна наземна станція з точно відомими координатами, що обчислює дані корекції
3. Мобільний приймач
Приймач на рухомому об’єкті (літак, транспортний засіб), що застосовує корекції для підвищення точності
4. Сигнал диференціальної корекції
Поправки, обчислені опорною станцією та надіслані мобільним приймачам
5. Канал зв’язку
Радіозв’язок у діапазоні LF/MF чи інші засоби передачі корекцій від базової станції до рухомого приймача

Формула диференціальної корекції (для псевдодальності):

\[ \Delta \hat{S}_{i,j,k} = R_{i,j,k} - \left( S_{i,j,k,3} - k \cdot c \cdot \Delta \tau_{\text{GLONASS}} \right) \]

Розбір формули:

  • \(R_{i,j,k}\) – справжня геометрична відстань від станції \(i\) до супутника \(j\):
    \[R_{i,j,k} = \sqrt{(x_{j,i,k} - X_i)^2 + (y_{j,i,k} - Y_i)^2 + (z_{j,i,k} - Z_i)^2}\]
  • \(S_{i,j,k,3}\) – вимірена псевдодальність (після атмосферних корекцій)
  • \(k\) – коефіцієнт GLONASS (1 для GLONASS, 0 для інших)
  • \(c\) – швидкість світла
  • \(\Delta\tau_{\text{GLONASS}}\) – часова корекція GLONASS

Пояснення індексів:

  • \(i\) – номер базової станції
  • \(j\) – номер супутника
  • \(k\) – момент часу

Числовий приклад обчислення диференціальної корекції:

Припустимо:

  • Вимірена псевдодальність: \(S_{i,j,k,3} = 20,000,150\) м
  • Геометрична відстань: \(R_{i,j,k} = 20,000,000\) м
  • Часова корекція GLONASS: \(k \cdot c \cdot \Delta\tau_{\text{GLONASS}} = 50\) м

Диференціальна корекція:

\[ \Delta \hat{S}_{i,j,k} = 20,000,000 - (20,000,150 - 50) = -100 \text{ м} \]

2.2. Урахування швидкості зміни псевдодальності: псевдошвидкість

Для підвищення точності аналізується псевдошвидкість — швидкість зміни псевдодальності. Диференціальні корекції для псевдошвидкості:

\[ \Delta \hat{\dot{S}}_{i,j,k} = \dot{R}_{i,j,k} - \left( \dot{S}_{i,j,k,3} - k \cdot c \cdot \Delta \dot{\tau}_{\text{GLONASS}} \right) \]

де:

\[ \dot{R}_{i,j,k} = \frac{1}{R_{i,j,k}} \left[ (x_{j,i,k} - X_i) \cdot \dot{x}_{j,i,k} + (y_{j,i,k} - Y_i) \cdot \dot{y}_{j,i,k} + (z_{j,i,k} - Z_i) \cdot \dot{z}_{j,i,k} \right] \]

Важливо: розбіжності між виміряними та обчисленими швидкостями вказують на похибки.


3. Контроль цілісності навігаційного поля: виявлення «фальшивих нот»

3.1. Матриці достовірності: \(H_i\) та \(G_i\)

Контроль цілісності передбачає оцінку достовірності даних GNSS. Використовується аналіз узгодженості надлишкових вимірювань. Формуються перевірочні матриці \(H_i\) (псевдодальність) та \(G_i\) (псевдошвидкість), що відображають узгодженість корекцій між супутниками. Цей підхід перевірки узгодженості належить до того ж сімейства методів, що й автономний контроль цілісності приймача (RAIM) — публічно документований підхід моніторингу цілісності GNSS, описаний у відкритій літературі ще в кінці 1980-х років, включно з роботами Brown & McBurney та Parkinson & Axelrad. Методи типу RAIM широко асоціюються з моніторингом цілісності цивільного GNSS, особливо в контексті авіаційної безпеки.

Алгоритм формування матриці \(H_i\):

Для базової станції \(i\) та пар супутників \((j_m, j_n)\):

  1. Перевірка наявності даних: дані псевдодальності мають бути доступні для обох супутників.
  2. Обчислення різниці корекцій:
    \(\delta S_{m,n} = \left| \Delta \hat{S}_{i,j_m,k_m} - \Delta \hat{S}_{i,j_n,k_n} \right|\)
  3. Порівняння з порогом (DS): Порогове значення (DS) встановлює допустиму різницю корекцій. Вибір DS залежить від необхідної точності та рівня шуму у вимірюваннях. У цьому прикладі ми використовуємо DS = 20 метрів. У реальних системах DS може встановлюватися на основі статистичного аналізу похибок і вимог до цілісності навігації.
  4. Заповнення елемента матриці:
    \[\{ H_i \}_{m,n} = \begin{cases} 0, & \text{якщо дані доступні та } \delta S_{m,n} \leq DS \\ 1, & \text{в іншому випадку} \end{cases}\]

Матриця \(G_i\) формується аналогічно для псевдошвидкості з порогом \(DS^{\dot{ }}\).

Приклад формування матриці \(H_i\):

Таблиця 1: Обчислення елементів матриці \(H_i\)
Пара супутників Різниця корекцій (\(\delta S_{m,n}\)) Порівняння з порогом (DS=20 м) Елемент матриці (\(\{ H_i \}_{m,n}\))
\((j_1, j_2)\) \(|-10 - (-15)| = 5\) м \(5 \leq 20\) 0
\((j_1, j_3)\) \(|-10 - 100| = 110\) м \(110 > 20\) 1
\((j_2, j_3)\) \(|-15 - 100| = 115\) м \(115 > 20\) 1

4. Прийняття рішення про відмову: підсумовування «голосів незгоди»

Для кожного супутника \(j_n\) система обчислює суми стовпців матриць достовірності \(H_i\) та \(G_i\):

\[ \Sigma_{i,j_n}^{H} = \sum_{m=1}^{M_i} \{H_i\}_{m,j_n}, \quad \Sigma_{i,j_n}^{G} = \sum_{m=1}^{M_i} \{G_i\}_{m,j_n} \]

Інтерпретація сум: чим вища сума для супутника \(j_n\), тим вища ймовірність, що саме цей супутник є джерелом похибки чи неузгодженості. Ці суми показують, скільки разів супутник \(j_n\) був «неузгодженим» з іншими в матрицях \(H_i\) (для псевдодальності) та \(G_i\) (для псевдошвидкості).

Правило прийняття рішення:

  • Коректна робота: якщо для всіх спостережуваних супутників виконуються обидві умови \(\Sigma_{i,j_n}^{H} = 0\) та \(\Sigma_{i,j_n}^{G} = 0\), усі супутники вважаються справними, а навігаційне поле — достовірним.
  • Виявлені похибки: якщо хоча б один супутник \(j_n\) задовольняє \(\Sigma_{i,j_n}^{H} \neq 0\) або \(\Sigma_{i,j_n}^{G} \neq 0\), цей супутник вважається підозрілим і виключається з подальших навігаційних обчислень.

Приклад інтерпретації матриці:

Матриця достовірності \(H_i\) із сумами стовпців
Супутник \(j_1\) \(j_2\) \(j_3\) Сума стовпця \(\Sigma_{i,j_n}^{H}\)
\(j_1\) - 0 1 1
\(j_2\) 0 - 1 1
\(j_3\) 1 1 - 2

Аналіз даних таблиці:

  • Для супутника \(j_1\): \(\Sigma_{i,j_1}^{H} = 1\)
  • Для супутника \(j_2\): \(\Sigma_{i,j_2}^{H} = 1\)
  • Для супутника \(j_3\): \(\Sigma_{i,j_3}^{H} = 2\)

Якщо матриця \(G_i\) (не показана) має всі нульові суми (\(\Sigma_{i,j_n}^{G} = 0\)), то супутник \(j_3\) найімовірніше є несправним і виключається.

Алгоритм контролю цілісності:

  1. Початок алгоритму контролю цілісності.
  2. Для кожної базової станції \(i\):
    • Формується матриця \(H_i\) на основі корекцій псевдодальності
    • Формується матриця \(G_i\) на основі корекцій псевдошвидкості
    • Обчислюються суми стовпців \(\Sigma_{i,j_n}^{H}\) та \(\Sigma_{i,j_n}^{G}\)
  3. Прийняття рішення:
    • Якщо всі супутники задовольняють \(\Sigma_{i,j_n}^{H} = 0\) та \(\Sigma_{i,j_n}^{G} = 0\), вони вважаються достовірними
    • Якщо хоча б один супутник має ненульову суму, він позначається як несправний і виключається
  4. Кінець алгоритму контролю цілісності. Остаточне навігаційне рішення обчислюється з використанням лише тих супутників, що залишилися достовірними.

5. Підсумкові висновки: досягнення точності через аналіз

  • 📌 Диференціальні корекції компенсують спільні похибки, підвищуючи точність
  • 📌 Контроль цілісності виявляє помилкові дані, забезпечуючи надійність
  • 📌 Матриці достовірності об’єктивно оцінюють якість вимірювань

6. Питання для студентів: перевірте своє розуміння

  1. Чому неможливо покладатися на сирі дані GNSS без аналізу?
  2. Як атмосфера впливає на вимірювання, і як допомагають корекції?
  3. Які ще методи контролю цілісності існують (наприклад, RAIM)?

💬 Порада від Андрія: будьте контролером якості в супутниковому «хорі»! Перевіряйте кожен «голос», щоб досягти «чистого звучання» точної навігації. «Довіряй, але перевіряй!» Успіхів!