tracking-loop (scenariotype)
Scenariotype i motoren v0.40.0, familie Jamming, spoofing og spekteret. Veiledende: analyseresultat fra et forsknings- og ingeniørverktøy, ikke typegodkjent navigasjonsutstyr og ikke en safety-of-life-tjeneste. Hver etikett her kommer fra motoren eller verifikasjonsmatrisen; en type er MODELLED med mindre matrisen sier noe annet (hvordan en etikett oppnås: avsnittet Evidence i README).
Hva den gjør#
Tap av lås i sporingssløyfen: C/N0 -> lås/ulåst MED HYSTERESE, tiden det tar å miste låsen, og spoof pull-in som funksjon av kode- og bærebølgeforskyvningens HASTIGHET. Motorens eksisterende kriterier for denial og capture er forholdstall på mottatt effekt (en jammer nekter ved J/S = 30 dB, en spoofer overtar ved 3 dB); reelt tap av lås er ikke et effektforhold, men det punktet der en sløyfes jitter pluss dynamisk belastning sprenger budsjettet for sporingsterskelen. Rapporterer (1) 1-sigma termisk jitter for bærebølge (Costas) og kode (ikke-koherent early/late) mot C/N0, med kvadreringstap, mot de oppgitte reglene 3sigma_PLL + theta_e <= 45 deg (15-gradersregelen i tresigmaform) og 3sigma_DLL + rampeetterslep <= d/2 chip; (2) terskelverdiene for tap og gjenopprettet lås i C/N0 med den bindende sløyfen navngitt, der terskelen for gjenopprettet lås er UTLEDET av den bredere båndbredden en mottaker henter seg inn igjen med, i stedet for å være påstått, slik at hysteresebredden må ligge mellom 5log10(forhold) og 10log10(forhold) dB; (3) den deklarerte tiden til tap av lås fra en låsdetektor med to terskler og bekreftelsesopphold, drevet over en C/N0-rampe, rapportert atskilt fra den fysiske faseflukttiden (Viterbis midlere tid mellom syklusslipp, i log10 s fordi den spenner over hundrevis av tiere); (4) grenser for spoof pull-in — den største kodeslewen og Doppler-raten for bærebølgen en offersløyfe kan følge, med et kart over begge akser, fordi en spoofer som slewer raskere enn dette ikke fanger sløyfen, men løper fra den; og (5) NEKTELSESRADIUSEN sløyfedynamikken tilsier, rapportert SAMMEN MED den eksisterende effektforholdsradiusen, aldri i stedet for den, med deres fortegnsbelagte differanse som et eget navngitt felt (denial_radius_delta_km) og en definisjon ved siden av. Hvert utgitt numerisk felt har en enhet og en proveniensklasse. VALIDATED lukkede former: uttrykkene for jitter i bærebølge og kode, sløyfefilterreduksjonen sqrt(2B_nT) og førsteordens rampeetterslep er kryssjekket mot motorens egen sdr-korrelator, stegvis kjørt på seedet syntetisk IF — en annen vei til de samme tallene — til henholdsvis 0,6 %, 3,7 % og 0,17 %, og den modifiserte Bessel I0 bak syklusslipptiden mot standard tabulerte verdier til 1e-7. Den nedre gyldighetsgrensen er påstått, ikke bare oppgitt: under ~32 dB-Hz ved 1 ms metter den reelle atan-diskriminatoren mot sitt +-pi/2-område og måler mindre jitter enn noen lineær teori. MODELLED: sløyfebåndbreddene, integrasjonstiden, korrelatoravstanden, forholdet for pull-in-båndbredde, bekreftelsesoppholdene, jammereffekten og antenneforsterkningene er representative båndverdier, ikke et datablad. IKKE modellert: oscillatorjitter (Allan-deviasjon) og vibrasjonsjitter, båndbreddebegrensning i frontenden, flerveisutbredelse, AGC-dynamikk, tap ved databitovergang, ekstern støtte, og enhver halvsyklus-korreksjon i Costas' syklusslippformel. Under sløyfedynamikk har spoof-capture ingen radius i det hele tatt — den bindende begrensningen er forskyvningsraten, ikke effekten — så det feltet er null med en begrunnelse i stedet for et oppdiktet tall. Ikke et sertifisert produkt for mottakerytelse.
Én kjøring av scenarios/tracking-loop.toml gir denne oppsummeringen: tracking-loop: B_pll 10,0 Hz / B_dll 1,0 Hz, T 1 ms, d 0,50 chip -> drop 25,4744 dB-Hz (carrier binds), relock 27,4413 dB-Hz, hysteresis 1,9669 dB | loss of lock declared 39,101 s into the ramp | denial radius threshold(J/S 30 dB) 127,413 km vs loop dynamics 53,1694 km, delta -74.2438 km | spoof pull-in <= 0,966 chip/s code and 41,45 Hz/s carrier (MODELLED loop, VALIDATED closed forms)
Inndata#
Fra skjemaet (kshana kinds --json):
- Påkrevde felt: ingen
- Valgfrie felt:
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
Eksemplet scenarios/tracking-loop.toml setter blant annet:
| Felt | Verdi | Enhet |
|---|---|---|
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 | antall |
freq_hz |
1575420000 | Hz |
Kjør den#
kshana scenarios/tracking-loop.toml
Hva den gir#
Skalarresultatene fra den kjøringen, med enhetene motoren oppgir:
| Resultat | Verdi | Enhet |
|---|---|---|
denial.capture_js_threshold_db |
3 | dB |
denial.capture_radius_loop_dynamics_km |
ingen verdi | km |
denial.capture_radius_threshold_km |
2852.426643 | km |
denial.capture_radius_threshold_status |
avgrenset | tekst |
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 |
Resultatetikett (motorens egen): MIXED — VALIDATED lukkede former for sløyfen, MODELLED sløyfekonfigurasjon. Uttrykkene for termisk jitter i bærebølge og kode, sløyfefilterreduksjonen sqrt(2B_nT) og førsteordens rampeetterslep er kryssjekket mot motorens egen sdr-korrelator, stegvis kjørt på seedet syntetisk IF (en annen v
Evidens#
MODELLED: radene i verifikasjonsmatrisen som navngir denne typen.
- MODELLED Rapporten
lunar-jamminghviler ikke lenger sin nektelseskontur på én skalar. - MODELLED Tap av lås beregnet fra sløyfedynamikk i stedet for et effektforhold: 1σ termisk jitter for bærebølge (Costas) og kode (ikke-koherent early/late) mot C/N₀ med kvadreringstap, mot de oppgitte reglene 3σ_PLL + θ_e ≤ 45° og 3σ_DLL + rampeetterslep
Radene kjøringen selv brukte, med den uavhengige referansen matrisen gir hver (de offentlige kildene er navngitt der):
- MODELLED Deterministisk, scenariohashet, SBOM + gates med gylne verdier på tvers av plattformer. Uavhengig referanse (ExternalDataset): SBOM-overensstemmelse med det offisielle CycloneDX 1,5 JSON Schema (+ gyldige SPDX-identifikatorer), en ekstern publisert standard, null valideringsfeil over hele avhengighetsgrafen; delen om FoM-determinisme / byte-reproduserbarhet er fortsatt en festet selvkonsistenssjekk, så raden forblir MODELLED
- PARTNER Ikke levert — Kshana modellerer signalytelse, ikke nyttelast- eller antennemaskinvare. Uavhengig referanse (NoneKind): ingen: en disiplin som eies av partneren, uten modul og uten test etter utforming
- MODELLED Tap av lås beregnet fra sløyfedynamikk i stedet for et effektforhold: 1σ termisk jitter for bærebølge (Costas) og kode (ikke-koherent early/late) mot C/N₀ med kvadreringstap, mot s. Uavhengig referanse (ReferenceImpl): Motorens egen sdr-korrelator (sdr::correlate / synth_if / CaCode), stegvis kjørt på seedet syntetisk IF ved en kalibrert C/N₀ — en separat kodevei som når de samme tallene ved numerisk korrelasjon av samplet IQ i stedet for et algebraisk jitteruttrykk, så det er en annen vei og ikke en gjentakelse — pluss standard tabulerte verdier for modifisert Bessel I₀ til syklusslippleddet. Sløyfeteori ifølge Kaplan & Hegar
Begrensninger#
Hva kjøringens egen rapport sier ikke er modellert eller ikke er validert:
- MIXED — VALIDATED lukkede former for sløyfen, MODELLED sløyfekonfigurasjon. Uttrykkene for termisk jitter i bærebølge og kode, sløyfefilterreduksjonen sqrt(2B_nT) og førsteordens rampeetterslep er kryssjekket mot motorens egen sdr-korrelator, stegvis kjørt på seedet syntetisk IF (en annen vei til de samme tallene), og den modifiserte Bessel I0 mot standard tabulerte verdier. MODELLED: sløyfebåndbreddene, integ (resultat
label) - MODELLED: sløyfebåndbreddene, integrasjonstiden, korrelatoravstanden, forholdet for pull-in-båndbredde, bekreftelsesoppholdene, jammereffekten og antenneforsterkningene er representative båndverdier, ikke et datablad. (typekatalog (
kshana kinds --json)) - IKKE modellert: oscillatorjitter (Allan-deviasjon) og vibrasjonsjitter, båndbreddebegrensning i frontenden, flerveisutbredelse, AGC-dynamikk, tap ved databitovergang, ekstern støtte, og enhver halvsyklus-korreksjon i Costas' syklusslippformel. (typekatalog (
kshana kinds --json)) - Hver sløyfeparameter nedenfor er en MODELLED representativ båndverdi, ikke et datablad. (kommentar i scenariofilen, linje 22)
- --- sløyfegeometri ----------------------------------------------------------- En Costas-bærebølgesløyfe på 10 Hz og en bærebølgestøttet kodesløyfe på 1 Hz, 1 ms koherent integrasjon (én C/A-kodeperiode, så ingen databitsynkronisering antas), smal korrelator på 0,5 chip. (kommentar i scenariofilen, linje 25 til 28)
- Reproduserbarhet og programvarekvalitetssikring er MODELLED, ikke validert: en delpåstand er kontrollert eksternt, men hele funksjonen setter sammen modellerte deler, så funksjonen forblir modellert. (verifikasjonsmatrise (docs/MODELLED-RATIONALE.md))
- Tap av lås i sporingssløyfen og spoof pull-in under interferens er MODELLED, ikke validert: kontrollert mot en separat implementasjon i samme kodebase — uavhengig av enheten som testes, men ikke eksternt autoritativ. (verifikasjonsmatrise (docs/MODELLED-RATIONALE.md))
Se også#
- Familieside: Jamming, spoofing og spekteret
- Alle typer: KINDS.md