Tradução automática, não revista por um falante nativo. O inglês é a referência.

Páginas dos tipos de cenárioEditar no GitHubFonte: docs/kinds/by-kind/tracking-loop.md

tracking-loop (tipo de cenário)

Tipo de cenário do motor v0.40.0, família Jamming, spoofing e o espetro. Consultivo: resultado de análise de uma ferramenta de investigação e engenharia, não um equipamento de navegação homologado e não um serviço de segurança da vida humana. Cada etiqueta aqui é do motor ou da matriz de verificação; um tipo de cenário é MODELLED salvo indicação em contrário da matriz (como se obtém um rótulo: a secção Evidence do README).

O que faz#

Perda de bloqueio do laço de seguimento: C/N0 -> bloqueio/desbloqueio COM HISTERESE, o tempo que demora a perder o bloqueio e a captura por spoofing em função da TAXA de desvio de código e de portadora. Os critérios de negação e de captura já existentes no motor são razões de potência recebida (um jammer nega a J/S = 30 dB, um spoofer captura a 3 dB); a perda de bloqueio real não é uma razão de potência, é o ponto em que o jitter de um laço mais o esforço dinâmico saem do seu orçamento de limiar de seguimento. Indica (1) o jitter térmico de 1 sigma da portadora (Costas) e do código (early/late não coerente) em função de C/N0, com a perda de quadratura incluída, face às regras indicadas 3sigma_PLL + theta_e <= 45 deg (a regra dos 15 graus em forma de três sigma) e 3sigma_DLL + atraso de rampa <= d/2 chips; (2) os limiares de C/N0 de perda e de rebloqueio com o laço determinante identificado, o limiar de rebloqueio DERIVED da largura de banda mais larga com que um recetor volta a captar, em vez de afirmado, de modo que a largura da histerese tem de situar-se entre 5log10(razão) e 10log10(razão) dB; (3) o tempo declarado até perder o bloqueio a partir de um detetor de bloqueio de dois limiares com tempos de permanência de confirmação, conduzido sobre uma rampa de C/N0, indicado em separado do tempo de escape de fase físico (o tempo médio de Viterbi entre deslizamentos de ciclo, em log10 s porque abrange centenas de décadas); (4) os limites de captura por spoofing — a maior variação de código e a maior taxa de Doppler da portadora que os laços de uma vítima conseguem seguir, com um mapa sobre os dois eixos, porque um spoofer que varia mais depressa do que estes não captura o laço, ultrapassa-o; e (5) o RAIO DE NEGAÇÃO que a dinâmica do laço implica, indicado EM PARALELO COM o raio de razão de potência existente, nunca em seu lugar, com a sua diferença com sinal como campo próprio com nome (denial_radius_delta_km) e uma definição ao lado. Cada campo numérico emitido inclui uma unidade e uma classe de proveniência. Formas fechadas VALIDATED: as expressões de jitter da portadora e do código, a redução do filtro de laço sqrt(2B_nT) e o atraso de rampa de primeira ordem são verificados por comparação com o próprio correlador sdr do motor avançado sobre IF sintético com semente — um caminho diferente para os mesmos números — a 0,6 %, 3,7 % e 0,17 % respetivamente, e a Bessel I0 modificada subjacente ao tempo de deslizamento de ciclo face a valores tabelados padrão a 1e-7. O limite inferior de validade é afirmado, não apenas indicado: abaixo de ~32 dB-Hz a 1 ms o discriminador atan real satura face ao seu intervalo +-pi/2 e mede menos jitter do que qualquer teoria linear. MODELLED: as larguras de banda dos laços, o tempo de integração, o espaçamento dos correladores, a razão de largura de banda de captura, os tempos de permanência de confirmação, a potência do jammer e os ganhos das antenas são valores representativos de banda, não uma ficha técnica. NÃO modelados: o jitter do oscilador (desvio de Allan) e da vibração, a limitação de largura de banda do front-end, o multipercurso, a dinâmica do AGC, a perda por transição de bits de dados, a assistência externa e qualquer correção de meio ciclo à fórmula de deslizamento de ciclo de Costas. Sob a dinâmica do laço, a captura por spoofing não tem qualquer raio — a restrição determinante é a taxa de desvio, não a potência — pelo que esse campo é nulo com uma razão, em vez de um número fabricado. Não é um produto certificado de desempenho de recetores.

Uma execução de scenarios/tracking-loop.toml resume-se assim: tracking-loop: B_pll 10,0 Hz / B_dll 1,0 Hz, T 1 ms, d 0,50 chip -> perda 25,4744 dB-Hz (a portadora determina), rebloqueio 27,4413 dB-Hz, histerese 1,9669 dB | perda de bloqueio declarada 39,101 s após o início da rampa | raio de negação limiar(J/S 30 dB) 127,413 km vs dinâmica do laço 53,1694 km, delta -74.2438 km | captura por spoofing <= 0,966 chip/s de código e 41,45 Hz/s de portadora (laço MODELLED, formas fechadas VALIDATED)

Entradas#

A partir do esquema (kshana kinds --json):

  • Campos obrigatórios: nenhum
  • Campos opcionais: pll_bandwidth_hz, dll_bandwidth_hz, predetection_integration_s, correlator_spacing_chips, carrier_allowance_deg, code_allowance_chips, pullin_bandwidth_ratio, drop_confirm_epochs, relock_confirm_epochs, doppler_rate_hz_per_s, code_slew_chips_per_s, cn0_high_dbhz, cn0_low_dbhz, ramp_duration_s, jitter_table_cn0_dbhz, jammer_power_dbw, jammer_gain_dbi, rx_gain_toward_jammer_db, rx_gain_toward_sat_db, signal_power_dbw, temp_k, freq_hz, chip_rate_hz, jammer_type, q_override, denial_js_threshold_db, capture_js_threshold_db, spoof_code_slew_chips_per_s, spoof_doppler_rate_hz_per_s

O exemplo scenarios/tracking-loop.toml define, entre outros:

Campo Valor Unidade
capture_js_threshold_db 3 dB
carrier_allowance_deg 45 deg
chip_rate_hz 1023000 Hz
cn0_high_dbhz 45 dB-Hz
cn0_low_dbhz 15 dB-Hz
code_slew_chips_per_s 0 chip/s
correlator_spacing_chips 0.5 chip
denial_js_threshold_db 30 dB
dll_bandwidth_hz 1 Hz
doppler_rate_hz_per_s 0 Hz/s
drop_confirm_epochs 50 contagem
freq_hz 1575420000 Hz

Execute-o#

kshana scenarios/tracking-loop.toml

O que dá#

Os resultados escalares dessa execução, com as unidades que o motor indica:

Resultado Valor Unidade
denial.capture_js_threshold_db 3 dB
denial.capture_radius_loop_dynamics_km sem valor km
denial.capture_radius_threshold_km 2852.426643 km
denial.capture_radius_threshold_status entre limites texto
denial.denial_cn0_at_threshold_radius_dbhz 32.864222 dB-Hz
denial.denial_js_delta_db 7.591059 dB
denial.denial_js_loop_db 37.591059 dB
denial.denial_js_threshold_db 30 dB
denial.denial_radius_delta_km -74.243845 km
denial.denial_radius_loop_dynamics_km 53.169373 km

Etiqueta de resultado (a do motor): MIXED — formas fechadas de laço VALIDATED, configuração de laço MODELLED. As expressões de jitter térmico da portadora e do código, a redução do filtro de laço sqrt(2B_nT) e o atraso de rampa de primeira ordem são verificados por comparação com o próprio correlador sdr do motor avançado sobre IF sintético com semente (um caminho diferente

O gráfico que o motor escreve para scenarios/tracking-loop.toml, tipo tracking-loop

Evidências#

MODELLED: as linhas da matriz de verificação que nomeiam este tipo.

  • MODELLED O relatório lunar-jamming já não apoia o seu contorno de negação num único escalar.
  • MODELLED Perda de bloqueio calculada a partir da dinâmica do laço em vez de uma razão de potência: jitter térmico de 1σ da portadora (Costas) e do código (early/late não coerente) face a C/N₀ com a perda de quadratura, face às regras indicadas 3σ_PLL + θ_e ≤ 45° e 3σ_DLL + atraso de rampa

As linhas que a própria execução exercitou, com a referência independente que a matriz dá a cada uma (as fontes públicas estão aí nomeadas):

  • MODELLED Determinista, com hash do cenário, SBOM + portões de referência multiplataforma. Referência independente (ExternalDataset): aderência à norma do SBOM ao esquema JSON oficial CycloneDX 1,5 (+ identificadores SPDX válidos) — uma norma externa publicada, zero erros de validação em todo o grafo de dependências; a parte de determinismo das FoM / reprodutibilidade byte a byte permanece uma verificação de autoconsistência fixada, pelo que a linha permanece MODELLED
  • PARTNER Não fornecido — o Kshana modela o desempenho de sinal, não o hardware de carga útil/antena. Referência independente (NoneKind): nenhuma: uma disciplina de propriedade do parceiro, sem módulo e sem teste por conceção
  • MODELLED Perda de bloqueio calculada a partir da dinâmica do laço em vez de uma razão de potência: jitter térmico de 1σ da portadora (Costas) e do código (early/late não coerente) face a C/N₀ com a. Referência independente (ReferenceImpl): o próprio correlador sdr do motor (sdr::correlate / synth_if / CaCode) avançado sobre IF sintético com semente a um C/N₀ calibrado — um caminho de código separado que chega aos mesmos números por correlação numérica de IQ amostrado em vez de por uma expressão algébrica de jitter, pelo que é um caminho diferente e não uma reformulação — mais valores tabelados padrão da Bessel modificada I₀ para o termo de deslizamento de ciclo. Teoria do laço segundo Kaplan & Hegar

Limitações#

O que o próprio relatório da execução diz que não está modelado ou não está validado:

  • MIXED — formas fechadas de laço VALIDATED, configuração de laço MODELLED. As expressões de jitter térmico da portadora e do código, a redução do filtro de laço sqrt(2B_nT) e o atraso de rampa de primeira ordem são verificados por comparação com o próprio correlador sdr do motor avançado sobre IF sintético com semente (um caminho diferente para os mesmos números), e a Bessel I0 modificada face a valores tabelados padrão. MODELLED: as larguras de banda dos laços, integ (resultado label)
  • MODELLED: as larguras de banda dos laços, o tempo de integração, o espaçamento dos correladores, a razão de largura de banda de captura, os tempos de permanência de confirmação, a potência do jammer e os ganhos das antenas são valores representativos de banda, não uma ficha técnica. (catálogo de tipos (kshana kinds --json))
  • NÃO modelados: o jitter do oscilador (desvio de Allan) e da vibração, a limitação de largura de banda do front-end, o multipercurso, a dinâmica do AGC, a perda por transição de bits de dados, a assistência externa e qualquer correção de meio ciclo à fórmula de deslizamento de ciclo de Costas. (catálogo de tipos (kshana kinds --json))
  • Cada parâmetro de laço abaixo é um valor representativo de banda MODELLED, não uma ficha técnica. (comentário do ficheiro de cenário, linha 22)
  • --- geometria do laço ----------------------------------------------------------------- Um laço de portadora Costas de 10 Hz e um laço de código assistido pela portadora de 1 Hz, integração coerente de 1 ms (um período do código C/A, pelo que não se pressupõe sincronização de bits de dados), correlador estreito de 0,5 chip. (comentário do ficheiro de cenário, linhas 25 a 28)
  • A reprodutibilidade e a garantia de software são MODELLED, não validadas: uma subafirmação é verificada externamente, mas a capacidade no seu conjunto compõe partes modeladas, pelo que a capacidade permanece modelada. (matriz de verificação (docs/MODELLED-RATIONALE.md))
  • A perda de bloqueio do laço de seguimento e a captura por spoofing sob interferência são MODELLED, não validadas: verificadas face a uma implementação separada nesta mesma base de código — independente da unidade em ensaio, mas sem autoridade externa. (matriz de verificação (docs/MODELLED-RATIONALE.md))

Ver também#