Главная | Использование MLAT - Часть 3 - Система координат

Использование MLAT - Часть 3 - Система координат

Тэги: 
Тэги: 
Тэги: 
Тэги: 
Тэги: 
Тэги: 
Тэги: 

Продолжение материала: Использование MLAT - Часть 2 - Данные

http://multilat.jetvision.de/inertia.htm

 
Конвертация инерциальной позиции
 
Пока мы радуемся тому, что ADS-B сквиттеры несут информацию о позиции ВС, эта информация на самом деле немного не та, что нам нужна. Так как мы конвертируем время распространения сигнала в дистанцию и v.v. то нам нужно перевести эти параметры в координаты на земной поверхности – долготу, широту и высоту и расстояние, в прямых и наклонных.
 
Высота для нас очень важна. К примеру, когда самолет находится над приемником, SBS-1 выдаст дистанцию до самолета 0 NM.
 
Для расчета расстояния и конвертации в координаты и высоту нам необходима инерциальная система координат. Картезианская система берет центр земли за начало координат.
 
 
Формула конвертации показана ниже:
[Latitude, Longitude, Height (=Altitude(FL)+GNSS Altitude Difference + radiusEarth)]>>[x,y,z]
 
Дистанция между двумя точками x1, y1, z1 и x2, y2, z2 будет равна:
d12 = sqrt[(x2-x1)2 + (y2-y1)2 + (z2-z1)2]
 
Принимая радиус Земли в среднем за 6371 км получим:
 
x = sin(Longitude)*cos(Latitude)*Height 
y = sin(Latitude)*Height
z = cos(Longitude)*cos(Latitude)*Height
все в км.
 
Значение среднего радиуса Земли 6371 км тема для обсуждения в дальнейшем, поскольку она может давать неправильное значение дистанции до ВС.
 
Первый взгляд на полученные данные
 
 
Полученные в ходе эксперимента данные за период 27.10.2008 между 20:00 и 20:02 UTC были сформированы в 6 файлов по  ~18Мб каждый.
 
 
Расположение приемников SBS-1
 
Хорошее расположение приемников очень важно для наших целей.  В идеале,  расположение 4-х SBS-1 должно быть по кругу или по четырехугольнику вокруг интересующей нас  территории.
 
Мы записывали данные с приемников расположенных как отмечено на карте. Также на картинке показаны треки, длительность по 2 минуты каждый, которые были получены в ходе эксперимента.
 
Станции отмеченные R1, MC, P5 и G9 получали наибольшее количество  пакетов информации и в совокупности они идеально расположены для слежения за ВС в области четырехугольника, который они очерчивают.
 
Синхронизация времени
 
Несколько шагов  предстоит сделать при обработке лог-файлов для наших целей.
Первый шаг, это идентифицировать ВС, которые «видят» все приемники одновременно. Сделаем это по следующей логике: Для движущейся цели ADS-B squitter позиции имеет уникальный паттерн байтов. Это следует из декодирования позиции. Выдержки из документа ICAO Annex 10:
- Разрешение (точность) сквиттера позиции (данных высокой точности) составляет 10 метров
- Периодичность выдачи сквиттера позиции транспондером составляет около 2-х раз в секунду (ICAO Annex 10 IV 3.1.2.8.6.4.2: «Сквиттер позиции ВС в воздушном пространстве должен передаваться когда ВС находится в воздухе, через случайные интервалы, которые равномерно распределены в пределах 0.4 – 0.6 сек используя временную квантизацию не более чем 15 мс относительно предыдущего сквиттера…»)
- Реактивный самолет пролетает в среднем 200 м за секунду, т.е. 100 м на каждый сквиттер.
 
Эти положения о сквиттерах высокой точности хорошо подтверждают мысль о том, что сквиттеры каждый раз будут разными и уникальными.
 
Сейчас мы найдем, какой из бортов со одинаковым сквиттером позиции, приняли все приемники в сети:
 
 
 
Левое окно показывает все сквиттеры, которые приняли все 4 приемника в ходе эксперимента. Справа находится список показывающий  те  ВС, сквиттеры позиции которых были одинаковы и были приняты всеми приемниками. Данные последних и пригодны для целей синхронизации.
 
Для демонстрации результатов мы продолжим использовать данные борта 4006DB. Это A321 G-OOAE. В это время мы больше не имеем информации об этом регулярном рейсе (нам и не нужно). На картинке выше его полет отмечен красным треком, который тянется от Coventry на Юг.
 
Здесь показаны данные, которые отсортированы по времени:
 
8D 40 06 DB 58 71 B6 43 D7 BE EB 00 00 00 0 B868BA 20:00:24.716
8D 40 06 DB 58 71 B6 43 D7 BE EB 00 00 00 1 D4CA7C 20:00:24.375
8D 40 06 DB 58 71 B6 43 D7 BE EB 00 00 00 2 C89D8B 20:00:26.802
8D 40 06 DB 58 71 B6 43 D7 BE EB 00 00 00 3 3AE78C 20:00:27.110
-----------------
8D 40 06 DB 58 71 F6 43 4F BF 0D 00 00 00 0 5AD76F 20:00:26.736
8D 40 06 DB 58 71 F6 43 4F BF 0D 00 00 00 1 7739A9 20:00:26.625
8D 40 06 DB 58 71 F6 43 4F BF 0D 00 00 00 2 6B0ECD 20:00:29.045
8D 40 06 DB 58 71 F6 43 4F BF 0D 00 00 00 3 DD56D1 20:00:29.589
-----------------
8D 40 06 DB 58 73 06 43 4F BF 0D 00 00 00 0 D7F67A 20:00:26.962
8D 40 06 DB 58 73 06 43 4F BF 0D 00 00 00 1 F458CB 20:00:27.062
8D 40 06 DB 58 73 06 43 4F BF 0D 00 00 00 2 E82E50 20:00:29.496
8D 40 06 DB 58 73 06 43 4F BF 0D 00 00 00 3 5A75F6 20:00:30.262
 
Вы видите сквиттер позиции, где номера станций приема 0, 1, 2 и 3, соответствующее значение 24-битного счетчика (в 16-ричном виде) штамп времени PC из лог-файла.
Мы видим, что штамп времени PC весьма грубо показывает распределение данных по времени, поскольку время значительно различается. Также очевидно, что есть определенные "провалы" в приеме сквиттераов для у каждого из 4-х приемников. Сквиттеры должны быть приняты  каждую секунду, но в реальности мы видим «дыры» в приеме.
 
Имея переполняющийся каждые 0.8 сек 24 битный счетчик, приходится проделывать дополнительные измерения, чтобы правильно соотнести пакеты данных с соотвествующим периодом счетчика. Вот небольшой скетч по проблеме:
 
 
 
 
 
 
 
 

Из фотографий

Комментарии

Clicky

Яндекс.Метрика