Mapa de compliance de integridade DO-316 / DO-229E
Este documento mapeia os requisitos de nível de proteção e de monitoramento de integridade da RTCA (antiga Radio Technical Commission for Aeronautics) DO-229E (SBAS (sistema de aumento baseado em satélite) MOPS (normas de desempenho operacional mínimo)) e DO-316 (equipamento de bordo GPS/SBAS (GPS: Sistema de Posicionamento Global)) para as funções do Kshana que os implementam. É um auxílio de rastreabilidade de engenharia, e não uma declaração de que algum requisito é atendido: o Kshana implementa os algoritmos publicados; não é aviônica aprovada.
A forma legível por máquina é sbas::do316_compliance_map; esta prosa é a sua companheira (espelhando docs/ARAIM_REFERENCE.md).
Níveis de proteção de mínimos quadrados ponderados (DO-229E Apêndice J)#
Para cada satélite i com elevação Elᵢ e azimute Azᵢ no usuário, a linha de observação de nível local (ENU (leste-norte-cima) + relógio) é
Gᵢ = [ −cos Elᵢ·sin Azᵢ, −cos Elᵢ·cos Azᵢ, −sin Elᵢ, 1 ]
com peso wᵢ = 1/σᵢ², σᵢ² = σ_flt² + σ_uire² + σ_air² + σ_tropo² (o orçamento de UDRE (erro diferencial de distância do usuário) / GIVE (erro vertical ionosférico em grade) / bordo / troposfera). A covariância de posição é D = (GᵀWG)⁻¹; o seu bloco ENU dá os níveis de proteção horizontal e vertical (HPL, VPL):
d_major = √( (d_E² + d_N²)/2 + √( ((d_E² − d_N²)/2)² + d_EN² ) )
d_U = √(d_U²)
HPL = K_H · d_major VPL = K_V · d_U
O Kshana calcula D invertendo a matriz normal 4×4 com a mesma rotina que a pilha de RAIM (monitoramento autônomo de integridade pelo receptor) usa (orbit::invert4), e valida o resultado de duas formas (o caminho da covariância D[2][2] e o caminho da projeção Σᵢ S_{U,i}²·σᵢ² devem concordar), além de uma geometria de referência numpy inv(GᵀG) independente.
K-factors#
| Modo | K_H | K_V | Fonte |
|---|---|---|---|
| En-route → NPA (aproximação de não precisão; somente horizontal) | 6.18 | — | Rayleigh √(−2·ln 5e-9) = 6,1829 |
| Aproximação de precisão | 6.0 | 5.33 | DO-229E MOPS |
Nota de honestidade: o MOPS usa a constante horizontal arredondada 6.0; o quantil normal bilateral exato Φ⁻¹(1 − 1e-9/2) é 6.109. O Kshana usa o valor publicado 6,0 no código e deriva K_V = Φ⁻¹(1 − 1e-7/2) = 5.327 do mesmo raim::normal_quantile que a pilha de RAIM usa, uma verificação cruzada não circular (o valor arredonda para o 5,33 do MOPS).
Combinação livre de ionosfera de dupla frequência L1/L5 (IS-GPS-705)#
Com f₁ = 1575.42 MHz, f₅ = 1176.45 MHz, γ₁₅ = (f₁/f₅)² = 1.79327:
ρ_IF = (f₁²·ρ₁ − f₅²·ρ₅) / (f₁² − f₅²) = c₁·ρ₁ + c₅·ρ₅
c₁ = +2.260604, c₅ = −1.260604 (c₁ + c₅ = 1, unit gain)
O atraso ionosférico de primeira ordem (40.3·10¹⁶·TEC/f²) se cancela exatamente, verificado contra a física independente de timetransfer_adv::iono_delay_m do motor para uma faixa de TEC (conteúdo total de elétrons). A amplificação de ruído para entradas de variância igual é √(c₁² + c₅²) = 2.588.
Estado da validação#
- No repositório, automatizado (a cada commit): os fatores K contra as suas definições distribucionais,
γ₁₅e os coeficientes livres de ionosfera (IF) contra as frequências do IS-GPS-705 (IS: Interface Specification), o cancelamento ionosférico de primeira ordem contra a física de atraso independente, e os níveis de proteção de mínimos quadrados ponderados (WLS) contra uma geometria de referência numpyinv(GᵀG)(sbas::tests::wls_pl_matches_numpy_on_five_satellite_geometry). - Referência independente externa, automatizada (
tests/sbas_reference.rs): dados a elevação, o azimute e o 1-σ total de cada satélite,sbas_protection_levelreproduz o HPL de uma implementação independente,waasprotlevels()no fork de nível de proteção SBAS do RTKLIB (uma biblioteca de código aberto de posicionamento cinemático em tempo real)zsiki/rtklib_ws(Siki & Takács 2017), em seis épocas que essa ferramenta calculou a partir de mensagens de transmissão do EGNOS (European Geostationary Navigation Overlay Service) real (PRN (número do código pseudoaleatório) geoestacionário 120) e de observações RINEX (Receiver Independent Exchange Format) reais da estação BUTE, em Budapeste (2017-02-19), até < 2e-3 m. A referência independente arredonda K_V para 5,33, de modo que a vertical é comparada sem fator K, comod_Ucontra o seu VPL / 5,33. O gLAB v6.0.0 da ESA (European Space Agency) (core/filter.c) usa a mesma fórmula. - Não feito: o σ por satélite é o da própria referência independente; modelar o σ a partir de mensagens UDRE/GIVE brutas está fora do escopo, e nenhum produto oficial publicado de nível de proteção do WAAS (Wide Area Augmentation System) ou do EGNOS foi reproduzido de ponta a ponta. A DO-229E/DO-316 em si são pagas pela RTCA; a fonte aberta da derivação são as páginas SBAS da ICAO (Organização da Aviação Civil Internacional)/EGNOS do ESA Navipedia.