Самолеты-дубли в ModeSDeco2
Я собрал все доступные варианты ошибок на этой странице.
Получается, что фильтр должен уметь справляться с разными типами дублей-призраков. Их три варианта. А не один, как я думал раньше.
Надеюсь, что эта систематизация поможет учесть все возможные варианты, чтобы успешно давить дубли.
Имеющиеся записи: их две на .168 в директории ~/dup.
Я все перенес на .168, где удобнее видимо будет тестировать.
sergsero@ac168:~/dup$ ls -l
итого 1300
-rw-rw-r-- 1 sergsero sergsero 681679 сент. 15 21:03 Avrtwinputty.log
-rw-rw-r-- 1 sergsero sergsero 36410 сент. 14 21:12 ModeSDeco2_awk_cut.log
-rw-rw-r-- 1 sergsero sergsero 609277 авг. 2 11:09 ModeSDeco2.log
Файл ModeSDeco2_awk_cut.log
– это я сделал сам из лога ModeSDeco2.log
.
Может и не правильно, но вырезал 4-й столбец ICAO адресов в awk.
При его “скармливании” миксеру почему-то не возникает (у меня) Mode S призрак с CallSign DTR5. Есть только он, как ADS-B.
Но на присланном скрине они оба есть. Не понял – почему так?
Итак ниже – три вида пар, которые удалось получить от пользователей:
1. Mode-S/Mode-S – оба без координат.
Анализируем фильтром и находим что: Одинаковые CallSign (POF75), Squawk (0205), Altitude (25000). Разные ICAO (395184/398155) всегда отличие в младшем(?) разряде на единицу (больше или меньше). И разное число сообщений (2289/101). При этом оба существуют в базе, как реальные.
Однозначно не определить кто реальный, а кто его призрак. Предлагаю по большему числу сообщений (2289/101)? Если согласен, то фильтр оставляет данные только для ICAO 395184.
Другой пример – для него есть AVR-запись и можно протестировать. Не знаю, как тут определить? Высота здесь разная. Только тоже по числу сообщений?
А здесь – первая пара на земле (GND). Она вообще без CallSign и Squawk. Но различается все-таки числом сообщений! И это хорошо для определения реального – тот, у которого число больше.
2. ADS-B/ADS-B – оба с координатами. И оба с валидной CRC, по-идее. Как же они получились – непонятно? Но они есть.
Оба есть реальные самолеты из Норвегии:
ICAO24-address 4787B1
LN-NGF | Boeing | 737-8JP (W) | B738 | 39017 | 4234 | L2J | 4787B1 | NAX [DY] Norwegian Air Shuttle | 2012 |
ICAO24-address 4787B0
LN-NGG | Boeing | 737-8JP (W) | B738 | 39018 | 4289 | L2J | 4787B0 | NAX [DY] Norwegian Air Shuttle | 2012 |
Не знаю, как их разделить и определить кто же летел? Убить обоих? Или проверить фильтр CRC для DF17 сообщений. Может он не работает? Ведь CRC должно было однозначно определить реальный борт?
3. ADS-B/Mode-S – я думал сначала, что только такие смешанные по типу и бывают. Но выше – примеры моно-пар.
Тут думаю просто оставляем тот, который ADS-B (с координатами), то есть был получен из DF17 сообщений. Дублера Mode S убиваем. Но это при условии, что другой алгоритм – CRC для ADS-B у нас верен и работает.
Этот фильтр я перенес в ModesMixer2, но он не устраняет призраки Mode-S (45AA5B и 48AE02), к сожалению. Или я не правильно тестировал, подавая AVR-запись?
Вот еще микс из классических пар смешанного типа ADS-B/Mode-S:
20151115