Estoy desarrollando un código C# que lee 1090ES Automatic Dependent Surveillance - Broadcast (ADS-B).
Los mensajes de posición ADS-B emitidos por el transmisor ADS-B de la aeronave tienen una codificación diferente dependiendo de si la aeronave está en el aire o en tierra.
Cuando decodifico marcos de posiciones aerotransportadas como posiciones codificadas de informes de posición compactos (CPR), obtengo resultados realistas. Sin embargo, cuando decodifico el CPR para cuadros de posición de superficie, las posiciones que obtengo están muy lejos (geográficamente) de lo que debería obtener.
¿En qué se diferencian los mensajes de posición CPR en la superficie de los mensajes de posición en el aire y cómo se decodifican correctamente?
La codificación del informe de posición compacto (CPR) en los squiters de superficie es diferente de la codificación del CPR aerotransportado. La resolución es 4 veces mejor (~1,25 m en lugar de ~5 m), a costa de perder los 2 bits más significativos.
Debido a esto, la decodificación de la posición de la superficie global da una solución ambigua. IIRC la solución puede estar en 4 puntos del globo, tienes que seleccionar el más cercano a ti. Y debe validar que está dentro de un rango realista, como debe hacer con la decodificación Airborne CPR. Después de validar la posición usando la decodificación global en un par de pares de squiter impares, puede usar la decodificación local más eficiente. Por supuesto, al igual que con la decodificación de Airborne CPR, debe protegerse contra los saltos de posición y los intervalos de tiempo en su algoritmo de decodificación.
GDD
TTT
TTT
TTT
TTT
DeltaLima
TTT