Maskinöversättning, inte granskad av en modersmålstalare. Engelska är referensen.

Integritet och störningRedigera på GitHubKälla: docs/SPECTRUM.md

Spektrummodell och vattenfallsdiagram

Scenariotypen spectrum bygger GNSS-L-bandet (Global Navigation Satellite System), och varje annat band som en utformad signal upptar (ultrahög frekvens (UHF), S-band, C-band), som en enda spektral effekttäthet (PSD), låter den ändras över en skriptad jammer-tidslinje och reducerar den till det som en spårningsslinga bryr sig om: jammer-till-signal-förhållandet (J/S) och det effektiva förhållandet mellan bärvåg och brustäthet (C/N₀) för varje band. Den ritar resultatet som ett vattenfallsdiagram (frekvens tvärs, tid nedåt, färg för effekt) bredvid C/N₀-staplar per band, och den läser och skriver inspelningar i Signal Metadata Format (SigMF) så att en verklig inspelning kan skattas och ritas bredvid modellen.

Skriv det medföljande exemplet till en fil och kör det:

kshana example l-band-waterfall-jamming > l-band-waterfall-jamming.toml
kshana l-band-waterfall-jamming.toml
# writes .result.json, .chart.svg, .report.html and .report.json next to the file

I en utcheckning kör kshana scenarios/l-band-waterfall-jamming.toml samma fil.

Kod: src/spectrum.rs (modellen, typen, Welch-skattaren), src/sigmf.rs (inspelningskodeken), src/navsignal.rs (spektra med enhetsarea för signaler och spektralseparationskoefficienten) och src/leo_signal.rs (förinställningarna för signalutformning som ett band kan namnge).

Vad som modelleras#

Band Bärvåg Modulation Standardvärde för mottagen effekt Standardvärde för mottagarbandbredd
gps-l1ca 1575,42 MHz binär fasskiftsmodulation, BPSK(1) −158,5 dBW (IS-GPS-200) 2,046 MHz
galileo-e1 1575,42 MHz multiplexad binär offsetbärvåg, MBOC(6,1,1/11), eller binär offsetbärvåg BOC(1 1) −157,25 dBW (Galileo OS SIS ICD Issue 2,1, Table 12) 14,322 MHz
gps-l2c 1227,60 MHz BPSK(1) (CM- och CL-koder tidsmultiplexade) −160,0 dBW (IS-GPS-200) 2,046 MHz
gps-l5 1176,45 MHz BPSK(10) −157,9 dBW (IS-GPS-705) 20,46 MHz
galileo-e5a 1176,45 MHz BPSK(10) −155,25 dBW (Galileo OS SIS ICD Issue 2,1, Table 12) 20,46 MHz

GPS (Global Positioning System) L1 C/A är grov-/förvärvskoden; L2C är den civila L2-signalen; IS-GPS-200 och IS-GPS-705 är GPS-gränssnittsspecifikationerna; Galileo OS SIS ICD är Galileos Open Service Signal-in-Space Interface Control Document. De mottagna effekterna är specifikationernas minimivärden; bandbredderna är modelleringsval. Båda kan åsidosättas per band. Utan en tabell [[bands]] använder körningen dessa fem. GLONASS G1/G2, BeiDou B1/B2 och Galileo E6 finns inte bland de namngivna banden.

En post [[bands]] har en av tre former:

  • ett namn från tabellen ovan, med valfria signal_power_dbw, rx_bandwidth_mhz och, för galileo-e1, modulation = "boc11";
  • signal = "<preset>": en LEO-signal (låg jordbana) eller en representativ signalutformning från förinställningsbiblioteket i typen leo-signal (LEO-SIGNAL.md), i vilket band som helst, ritad med varje komponent (förvärv, data, pilot, frekvensdelningsunderbärvågor) och bandbegränsad till sin sändningsbandbredd; C/N₀ och J/S avser den spårade komponenten, och name märker den bara. Förinställningarna är xona-x1, xona-x5, iridium-stl, starlink-ku-beacon, centispace-l1, centispace-l5, generic-c-band-leo, generic-uhf, generic-l, generic-s, generic-c och generic-c-wide;
  • ett eget band: vilken name som helst med centre_mhz, modulation (BPSK(n), BOC(m,n) eller MBOC(6,1,p)) och signal_power_dbw.

Jammers ([[jammers]]) tar en waveform:

  • cw — en kontinuerlig tonvåg (CW) vid centre_mhz;
  • narrowband — platt brus över bandwidth_mhz;
  • wideband — platt brus över en bred bandwidth_mhz (en barrage-jammer): samma täthet som narrowband, namngiven separat eftersom typen jamming poängsätter den som bredbandig;
  • chirp — ett linjärt sågtandssvep på bandwidth_mhz varje sweep_period_us;
  • matched — bredbandigt brus vars spektrum är den egna modulationen för bandet matched_to.

Var och en anger antingen received_power_dbw, eller en effektiv isotropiskt utstrålad effekt eirp_dbw med ett range_m (och eventuellt rx_gain_dbi), som går genom frisiktsdämpningen i typen jamming. on_s och off_s skriptar tidslinjen.

Mottagaren ([receiver]) anger brusgolvet, N₀ = k·T_sys med T_sys = T_ant + 290 K × (F − 1) för antenntemperatur T_ant och brustal F, och spårningströskeln.

Huvudvattenfallsdiagrammet täcker [grid] (standard 1160 till 1590 MHz i 430 fack). Varje post [[panels]] (name, f_min_mhz, f_max_mhz, n_freq, standard 200 fack) lägger till ytterligare ett vattenfallsdiagram över sitt eget frekvensområde på samma tidslinje, för ett spektrum som spänner över flera band.

Störningskedjan#

För en signal med enhetsareaspektrum G_s och en jammer med enhetseffektspektrum G_j är spektralseparationskoefficienten (SSC) över mottagarbandet B κ = ∫_B G_s(f) G_j(f) df, och den effektiva bärvågs-till-brustätheten med flera jammers är

(C/N₀)_eff = [ 1/(C/N₀) + Σ_j (J/S)_j · κ_j ]⁻¹

(Betz 2001; Kaplan & Hegarty, Understanding GPS/GNSS, 3:e uppl., §9,4). För en jammer är detta exakt anti-jam-ekvationen i typen jamming med Q = 1/(R_c κ); rapportens block jamming_kind_cross_check kör de egna funktionerna i typen jamming på samma länkindata och skriver ut skillnaden, som är noll upp till avrundning.

Rapporten skriver också ut det C/N₀ som typen jamming ger med sin Q-tabell. Tabellen innehåller läroboksvärdena, fastlåsta i testerna mot de slutna formerna:

  • CW och smalband: Q = 1. En CW-ton på C/A-bärvågen har κ = T_c, så Q = 1, och tabellen och spektra stämmer överens. I det medföljande exemplet ger tonen 17,98 dB-Hz från båda (tabellen gav 19,74 när den innehöll 1,5).
  • Bredband och svept: Q = 2, sedan 0,36. Det är vitt brus över huvudloben med signaleffekten i bandet normaliserad till ett, κ = 1/(2R_c). Tabellen innehöll 1 till 0,36, cirka 3 dB pessimistisk (xval/jammer-q/PREREGISTRATION.md).

Spektrummodellen härleder sina egna värden ur spektra:

  • Q = 1.5 för brus matchat mot C/A (κ = 2/(3R_c));
  • Q = 2.2 för platt brus från nollställe till nollställe utan normaliseringen (2/0.9028).

Så för dessa jammers skiljer sig de två utskrivna C/N₀-värdena fortfarande åt, med avsikt.

Varje cell i vattenfallsdiagrammet är PSD:n medelvärdesbildad över sitt frekvensfack och sin rad. Ett chirp medelvärdesbildas exakt över raden, hela svep plus det partiella; en jammer som slås på eller av mitt i en rad viktas efter sin driftcykel. C/N₀-tidslinjen använder samma medelvärden, så bilden och siffrorna stämmer överens. Per band redovisar tidslinjen J/S i bandet (jammereffekt inom mottagarbandbredden över signaleffekten). Per jammer och band anger rapporten SSC, Q, total J/S, J/S i bandet och det stationära C/N₀.

Det medföljande exemplet#

scenarios/l-band-waterfall-jamming.toml: en tidslinje på 60 s, en rad per sekund, en antenn på 290 K och ett brustal på 2 dB (golv −201,98 dBW/Hz).

  • 10 s till 40 s: ett chirp på 16 MHz kring L1, svep på 9 µs, 50 mW på 100 m.
  • Från 30 s: en CW-ton på L1-bärvågen, 10 mW på 1 km.
  • Från 45 s: platt brus på 2 MHz på L2 mottaget vid −135 dBW.

Vad körningen beräknar:

Band Nominell C/N₀ Lägsta C/N₀ Första förlust Rader med spårning
gps-l1ca 43,48 dB-Hz 3,23 dB-Hz 10 s 17 %
galileo-e1 44,73 dB-Hz 4,44 dB-Hz 10 s 50 %
gps-l2c 41,98 dB-Hz 36,86 dB-Hz aldrig 100 %
gps-l5 44,08 dB-Hz 44,08 dB-Hz aldrig 100 %
galileo-e5a 46,73 dB-Hz 46,73 dB-Hz aldrig 100 %

CW-tonen är orsaken till att de två L1-signalerna skiljs åt vid 40 s. Den hamnar på toppen av C/A-spektrumet och håller C/A på 17,98 dB-Hz, under tröskeln på 25 dB-Hz. Den hamnar i nollstället i MBOC-spektrumet, så Galileo E1 återgår till sitt nominella C/N₀ när chirpet upphör.

Signalerna själva ligger cirka 20 dB under brusgolvet, så vattenfallsdiagrammet visar golvet och jammers; C/N₀-staplarna visar vad avspridningen återvinner.

Samma jammers driver ett kedjat uppdrag i scenarios/campaign-spectrum-holdover-integrity.toml (se CAMPAIGNS.md): klockan går i holdover medan chirpet är på, och mottagaren faller tillbaka på Galileo E1 under CW-tonen.

Bortom L-bandet#

scenarios/multi-band-jamming-waterfall.toml placerar signaler för LEO-positionering, navigering och tidssynkronisering (PNT) i fyra band bredvid GPS L1 C/A och Galileo E5a, varje band med sin egen jammer, på en tidslinje på 60 s. Vattenfallsdiagrammet [grid] är L-bandet; tre [[panels]] lägger till UHF (455 till 475 MHz), S (2482 till 2502 MHz) och C (5005 till 5035 MHz).

  • 10 s: en CW-ton vid UHF-bärvågen, mottagen vid −120 dBW.
  • 20 s: chirpet från L-bandsexemplet (16 MHz kring L1, svep på 9 µs, 50 mW på 100 m).
  • 30 s: bredbandsbrus, 40 MHz kring 1185 MHz, −118 dBW.
  • 40 s: smalbandsbrus, 2 MHz vid S-bärvågen, −128 dBW.
  • 50 s: brus matchat mot C-bandssignalens eget spektrum, −124 dBW.

Vad körningen beräknar (C/N₀ för de utformade signalerna är det för den spårade komponenten, så det nominella värdet ligger under den totala mottagna effekten med den spårade andelen):

Band Signal Bärvåg Nominell C/N₀ Lägsta C/N₀ Rader med spårning
generic-uhf representativ, BPSK(5), −150 dBW 465 MHz 49,41 dB-Hz 34,38 dB-Hz 100 %
gps-l1ca specifikationens minimum 1575,42 MHz 43,48 dB-Hz 3,38 dB-Hz 33 %
galileo-e5a specifikationens minimum 1176,45 MHz 46,73 dB-Hz 38,51 dB-Hz 100 %
xona-x5 publicerad utformning, −144,9 dBW 1190,51625 MHz 54,51 dB-Hz 46,29 dB-Hz 100 %
generic-s representativ, BPSK(5), −150 dBW 2492,028 MHz 49,23 dB-Hz 41,69 dB-Hz 100 %
generic-c-band-leo representativ, BPSK(10), −152 dBW 5020 MHz 47,41 dB-Hz 40,35 dB-Hz 100 %

Bara chirpet tar bort en signal (GPS L1 C/A, från 20 s). Varje annan jammer försämrar bara det band som dess spektrum når: det C-bandsmatchade bruset har till exempel en SSC på −71,87 dB/Hz med C-bandssignalen och under −133 dB/Hz med varje annat band.

Samma maskineri driver LEO-PNT-resiliensscenarierna (LEO-PNT.md):

  • scenarios/leo-resilience-js-margin.toml stegar en barrage-jammer på 40 MHz vid 1185 MHz upp 5 dB var 10 s från −125 dBW. GPS L5 förloras vid steget −105 dBW, Galileo E5a vid −100 dBW och Xona X5 vid −95 dBW, medan en representativ LEO-L-bandssignal mottagen vid −135 dBW fortfarande spåras vid −90 dBW: mottagen effekt köper J/S-marginal dB för dB.
  • scenarios/leo-resilience-multiband-diversity.toml är en kampanjsvepning av en körning spectrum över effekten hos en barrage i L5-bandet (CAMPAIGNS.md).
  • scenarios/leo-resilience-gnss-jammed-leo-carries.toml är en kedjad kampanj vars faser läser GNSS- och LEO-C/N₀ från körningar spectrum, med paneler för S- och C-band.

IQ, SigMF och Welch#

[iq] ritar modellen vid ett ögonblick som komplexa IQ-sampel (in-phase och quadrature), skriver dem som en SigMF-inspelning (cf32_le eller ci16_le), läser tillbaka inspelningen och skattar dess PSD med Welchs metod (Hann-fönster, 50 % överlapp, medelvärdesbildade periodogram, densitetsskalade). Termiskt brus, signaler och brusliknande jammers ritas fack för fack ur modellens egen täthet; en ton och ett chirp ritas som verkliga vågformer. Med enbart brusliknande jammers ligger Welch-skattningen inom 0,1 dB från modellen (median). Ett periodiskt chirp är ett linjespektrum vid sin svepfrekvens, med rippel och svansar bortom sina bandkanter som den släta modellen utelämnar: i det medföljande exemplet stämmer totaleffekten inom 0,02 % och medianfacket skiljer sig med 0,5 dB. Ögonblicksbilden är en fil som skrivs för analys; ingenting sänds och ingen radiohårdvara styrs.

[recording] (endast nativa byggen) läser en verklig SigMF-inspelning från meta_path (datafilen får som standard samma filstam med .sigmf-data), skattar dess PSD och skriver ut den bredvid modellen vid inspelningens frekvenser. En SigMF-fil har ingen absolut effektkalibrering, så rapporten anger medianoffseten och formen, inte en nivå.

I WebAssembly-bygget är filläsning inte tillgänglig; kshana::sigmf::read och kshana::spectrum::welch_psd fungerar på byte som sidan tillhandahåller.

Evidens#

Påstående Etikett Oberoende referens
Signal-PSD:er och SSC:er VALIDATED BPSK(n) huvudlob 2n × 1,023 MHz nollställe till nollställe; lober för BOC(1 1) centrerade vid ±1,023 MHz (Betz 2001); SSC:er −61,86 / −64,87 / −67,88 dB/Hz för C/A×C/A, BOC(1 1)×BOC(1 1), C/A×BOC(1 1) från deras slutna Parseval-former, värdena bakom de publicerade −61,8 / −64,8 / −67,8 dB/Hz; Q = 1 (CW) och 1,5 (matchat) (Kaplan & Hegarty §9,4); tabellposterna i typen jamming är lika med de slutna formerna: CW och smalband Q = 1, bredband och svept Q = 2 (vitt brus över huvudloben, effekt i bandet normaliserad; 1 till 0,36)
Vattenfallsdiagram, J/S och C/N₀-tidslinje MODELLED Reduceras exakt till kedjan i typen jamming; jammereffekterna, tidslinjen och bandbredderna är indata
SigMF-kodek och Welch-skattning MODELLED Rundturer, en direkt diskret Fouriertransform, identiteter för vitt brus och Parseval; ingen tredjepartsinspelning finns i repot
Vattenfallsdiagram för flera band med utformade signaler och jammers per band MODELLED Reduceras till L-bandskedjan (ett band med en enda komponent ger samma siffror som före utvidgningen) och till de validerade signalspektra; de utformade signalerna, jammers och bandbredderna är indata

En rättelse av en vanlig förkortning: loberna i spektrumet för BOC(1 1) är centrerade vid ±1,023 MHz (mellan bärvågsnollstället och nollstället vid 2,046 MHz), men PSD:ns maximum ligger vid ±0,759 MHz, där tan y = 2y med y = πf/(2R_c). Testerna fastlåser båda.

Inte modellerat#

  • Linjestruktur hos spridningskoden (linjerna på 1 kHz i C/A): en ton poängsätts mot den släta envelopen, inte mot den närmaste kodlinjen.
  • Automatisk förstärkningsreglering, kvantisering, pulsblankning och notchfiltrering.
  • Mottagarantennens mönster mot jammern utöver ett förstärkningsvärde.
  • Fleråtkomststörning mellan satelliter i ett och samma band.
  • En utformad signals emissioner utanför sin sändningsbandbredd: dess spektrum trunkeras där, så ingen emission utanför bandet når ett angränsande band.
  • Ett chirps inverkan på slingan vid svepfrekvenser jämförbara med slingbandbredden: dess C/N₀ använder det radmedelvärdesbildade spektrumet.

Referenser#

  • J. W. Betz, "Binary Offset Carrier Modulations for Radionavigation," NAVIGATION 48(4), 2001.
  • E. D. Kaplan and C. J. Hegarty (eds.), Understanding GPS/GNSS: Principles and Applications, 3rd ed., Artech House, 2017, §9,4.
  • G. W. Hein et al., "MBOC: The New Optimized Spreading Modulation Recommended for Galileo L1 OS and GPS L1C," Inside GNSS, May/June 2006.
  • P. D. Welch, "The Use of Fast Fourier Transform for the Estimation of Power Spectra," IEEE Transactions on Audio and Electroacoustics 15(2), 1967.
  • IS-GPS-200, IS-GPS-705; Galileo OS SIS ICD.
  • SigMF-specifikation, https://sigmf.org/ (källa: https://github.com/sigmf/SigMF).