Spektrummodel og vandfaldsdiagram
Scenarietypen spectrum bygger L-båndet i Global Navigation Satellite System (GNSS), og ethvert andet bånd, et udformet signal optager (ultrahøj frekvens (UHF), S-bånd, C-bånd), som én effektspektraltæthed (PSD), lader det ændre sig over en scriptet jammer-tidslinje og reducerer det til det, en sporingssløjfe interesserer sig for: forholdet mellem jammer og signal (J/S) og det effektive forhold mellem bærebølge og støjtæthed (C/N₀) for hvert bånd. Den tegner resultatet som et vandfaldsdiagram (frekvens på tværs, tid nedad, farve for effekt) ved siden af C/N₀-søjler for hvert bånd, og den læser og skriver optagelser i Signal Metadata Format (SigMF), så en virkelig optagelse kan estimeres og plottes ved siden af modellen.
Skriv det medfølgende eksempel til en fil og 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 et checkout kører kshana scenarios/l-band-waterfall-jamming.toml den samme fil.
Kode: src/spectrum.rs (modellen, typen, Welch-estimatoren), src/sigmf.rs (optagelseskodeken), src/navsignal.rs (signalspektrene med enhedsareal og den spektrale separationskoefficient) og src/leo_signal.rs (de signaludformningsforudindstillinger, et bånd kan navngive).
Hvad der modelleres#
| Bånd | Bærebølge | Modulation | Standard for modtaget effekt | Standard for modtagerbåndbredde |
|---|---|---|---|---|
gps-l1ca |
1575,42 MHz | binær faseskiftkodning, BPSK(1) | −158,5 dBW (IS-GPS-200) | 2,046 MHz |
galileo-e1 |
1575,42 MHz | multiplekset binær offset-bærebølge, MBOC(6,1,1/11), eller binær offset-bærebølge BOC(1.1) | −157,25 dBW (Galileo OS SIS ICD Issue 2,1, tabel 12) | 14,322 MHz |
gps-l2c |
1227,60 MHz | BPSK(1) (CM- og CL-koder tidsmultiplekset) | −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, tabel 12) | 20,46 MHz |
GPS (Global Positioning System) L1 C/A er coarse/acquisition-koden; L2C er det civile L2-signal; IS-GPS-200 og IS-GPS-705 er GPS-grænsefladespecifikationerne; Galileo OS SIS ICD er Galileo Open Service Signal-in-Space Interface Control Document. De modtagne effekter er specifikationernes minimumsværdier; båndbredderne er modelleringsvalg. Begge kan tilsidesættes for hvert bånd. Uden en tabel [[bands]] bruger kørslen disse fem. GLONASS G1/G2, BeiDou B1/B2 og Galileo E6 er ikke blandt de navngivne bånd.
En post [[bands]] har en af tre former:
- et navn fra tabellen ovenfor, med valgfri
signal_power_dbw,rx_bandwidth_mhzog, forgalileo-e1,modulation = "boc11"; signal = "<preset>": en signaludformning for lav jordbane (LEO) eller et repræsentativt signal fra forudindstillingsbiblioteket for typenleo-signal(LEO-SIGNAL.md), i ethvert bånd, tegnet med hver komponent (acquisition, data, pilot, frekvensdelte underbærebølger) og båndbegrænset til sin sendebåndbredde; C/N₀ og J/S henføres til den sporede komponent, ognamemærker den blot. Forudindstillingerne erxona-x1,xona-x5,iridium-stl,starlink-ku-beacon,centispace-l1,centispace-l5,generic-c-band-leo,generic-uhf,generic-l,generic-s,generic-coggeneric-c-wide;- et brugerdefineret bånd: enhver
namemedcentre_mhz,modulation(BPSK(n),BOC(m,n)ellerMBOC(6,1,p)) ogsignal_power_dbw.
Jammere ([[jammers]]) tager en waveform:
cw— en kontinuert bølge (CW)-tone vedcentre_mhz;narrowband— flad støj overbandwidth_mhz;wideband— flad støj over en bredbandwidth_mhz(en barrage-jammer): den samme tæthed somnarrowband, navngivet for sig, fordi typenjammingscorer den som bredbåndet;chirp— et lineært savtandssvep påbandwidth_mhzhvertsweep_period_us;matched— bredbåndsstøj, hvis spektrum er båndetmatched_tos egen modulation.
Hver angiver enten received_power_dbw eller en effektiv isotropisk udstrålet effekt eirp_dbw med en range_m (og eventuelt rx_gain_dbi), som går gennem typen jammings frirumsdæmpning. on_s og off_s scripter tidslinjen.
Modtageren ([receiver]) fastlægger støjgulvet, N₀ = k·T_sys med T_sys = T_ant + 290 K × (F − 1) for antennetemperatur T_ant og støjtal F, og sporingstærsklen.
Det primære vandfaldsdiagram dækker [grid] (standard 1160 til 1590 MHz i 430 intervaller). Hver post [[panels]] (name, f_min_mhz, f_max_mhz, n_freq, standard 200 intervaller) tilføjer endnu et vandfaldsdiagram over sit eget frekvensområde på den samme tidslinje, for et spektrum, der spænder over flere bånd.
Interferenskæden#
For et signal med enhedsarealspektrum G_s og en jammer med enhedseffektspektrum G_j er den spektrale separationskoefficient (SSC) over modtagerbåndet B lig κ = ∫_B G_s(f) G_j(f) df, og den effektive bærebølge-til-støjtæthed med flere jammere er
(C/N₀)_eff = [ 1/(C/N₀) + Σ_j (J/S)_j · κ_j ]⁻¹
(Betz 2001; Kaplan & Hegarty, Understanding GPS/GNSS, 3. udg., §9,4). For én jammer er dette nøjagtigt anti-jam-ligningen for typen jamming med Q = 1/(R_c κ); rapportens blok jamming_kind_cross_check kører typen jammings egne funktioner på de samme linkinput og udskriver forskellen, som er nul op til afrunding.
Rapporten udskriver også den C/N₀, som typen jamming giver med sin Q-tabel. Tabellen indeholder lærebogsværdierne, fastholdt i testene til de lukkede former:
- CW og smalbånd:
Q = 1. En CW-tone på C/A-bærebølgen harκ = T_c, såQ = 1, og tabellen og spektrene stemmer overens. I det medfølgende eksempel giver tonen 17,98 dB-Hz fra begge (tabellen gav 19,74, da den indeholdt 1,5). - Bredbånd og svep:
Q = 2, siden 0,36. Det er hvid støj over hovedloben med signaleffekten i båndet normaliseret til én,κ = 1/(2R_c). Tabellen indeholdt 1 indtil 0,36, omkring 3 dB pessimistisk (xval/jammer-q/PREREGISTRATION.md).
Spektrummodellen udleder sine egne værdier af spektrene:
Q = 1.5for støj tilpasset til C/A (κ = 2/(3R_c));Q = 2.2for flad støj fra nulpunkt til nulpunkt uden normaliseringen (2/0.9028).
For de jammere afviger de to udskrevne C/N₀-værdier altså stadig fra hinanden, med vilje.
Hver celle i vandfaldsdiagrammet er PSD'en middelværdidannet over sit frekvensinterval og sin række. Et chirp middelværdidannes nøjagtigt over rækken, hele svep plus det delvise; en jammer, der tændes eller slukkes midt i en række, vægtes efter sin driftscyklus. C/N₀-tidslinjen bruger de samme middelværdier, så billedet og tallene stemmer overens. For hvert bånd rapporterer tidslinjen J/S i båndet (jammereffekt inden for modtagerbåndbredden over signaleffekten). For hver jammer og hvert bånd angiver rapporten SSC, Q, samlet J/S, J/S i båndet og den stabile C/N₀.
Det medfølgende eksempel#
scenarios/l-band-waterfall-jamming.toml: en tidslinje på 60 s, én række pr. sekund, en antenne på 290 K og et støjtal på 2 dB (gulv −201,98 dBW/Hz).
- 10 s til 40 s: et chirp på 16 MHz omkring L1, svep på 9 µs, 50 mW ved 100 m.
- Fra 30 s: en CW-tone på L1-bærebølgen, 10 mW ved 1 km.
- Fra 45 s: flad støj på 2 MHz på L2, modtaget ved −135 dBW.
Hvad kørslen beregner:
| Bånd | Nominel C/N₀ | Mindste C/N₀ | Første tab | Rækker med sporing |
|---|---|---|---|---|
| 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 er grunden til, at de to L1-signaler skilles ved 40 s. Den lander på toppen af C/A-spektret og holder C/A på 17,98 dB-Hz, under tærsklen på 25 dB-Hz. Den lander i nulpunktet af MBOC-spektret, så Galileo E1 vender tilbage til sin nominelle C/N₀, når chirpet stopper.
Selve signalerne ligger omkring 20 dB under støjgulvet, så vandfaldsdiagrammet viser gulvet og jammerne; C/N₀-søjlerne viser, hvad afspredningen genvinder.
De samme jammere driver en kædet mission i scenarios/campaign-spectrum-holdover-integrity.toml (se CAMPAIGNS.md): uret kører i holdover, mens chirpet er tændt, og modtageren falder tilbage til Galileo E1 under CW-tonen.
Ud over L-båndet#
scenarios/multi-band-jamming-waterfall.toml placerer LEO-signaler til positionering, navigation og tidssynkronisering (PNT) i fire bånd ved siden af GPS L1 C/A og Galileo E5a, hvert bånd med sin egen jammer, på en tidslinje på 60 s. Vandfaldsdiagrammet [grid] er L-båndet; tre [[panels]] tilføjer UHF (455 til 475 MHz), S (2482 til 2502 MHz) og C (5005 til 5035 MHz).
- 10 s: en CW-tone ved UHF-bærebølgen, modtaget ved −120 dBW.
- 20 s: chirpet fra L-bånd-eksemplet (16 MHz omkring L1, svep på 9 µs, 50 mW ved 100 m).
- 30 s: bredbåndsstøj, 40 MHz omkring 1185 MHz, −118 dBW.
- 40 s: smalbåndsstøj, 2 MHz ved S-bærebølgen, −128 dBW.
- 50 s: støj tilpasset C-bånd-signalets eget spektrum, −124 dBW.
Hvad kørslen beregner (de udformede signalers C/N₀ er den for den sporede komponent, så den nominelle værdi ligger under den samlede modtagne effekt med den sporede andel):
| Bånd | Signal | Bærebølge | Nominel C/N₀ | Mindste C/N₀ | Rækker med sporing |
|---|---|---|---|---|---|
| generic-uhf | repræsentativ, 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 | publiceret udformning, −144,9 dBW | 1190,51625 MHz | 54,51 dB-Hz | 46,29 dB-Hz | 100 % |
| generic-s | repræsentativ, BPSK(5), −150 dBW | 2492,028 MHz | 49,23 dB-Hz | 41,69 dB-Hz | 100 % |
| generic-c-band-leo | repræsentativ, BPSK(10), −152 dBW | 5020 MHz | 47,41 dB-Hz | 40,35 dB-Hz | 100 % |
Kun chirpet tager et signal væk (GPS L1 C/A, fra 20 s). Hver anden jammer forringer kun det bånd, dens spektrum når: den tilpassede støj i C-båndet har for eksempel en SSC på −71,87 dB/Hz med C-bånd-signalet og under −133 dB/Hz med hvert andet bånd.
Det samme maskineri driver scenarierne for LEO-PNT-robusthed (LEO-PNT.md):
scenarios/leo-resilience-js-margin.tomltrinvis hæver en barrage-jammer på 40 MHz ved 1185 MHz med 5 dB hvert 10 s fra −125 dBW. GPS L5 mistes ved trinnet på −105 dBW, Galileo E5a ved −100 dBW og Xona X5 ved −95 dBW, mens et repræsentativt LEO-L-bånd-signal modtaget ved −135 dBW stadig spores ved −90 dBW: modtaget effekt køber J/S-margin dB for dB.scenarios/leo-resilience-multiband-diversity.tomler et kampagnesvep af en kørsel afspectrumover effekten af en barrage i L5-båndet (CAMPAIGNS.md).scenarios/leo-resilience-gnss-jammed-leo-carries.tomler en kædet kampagne, hvis faser læser GNSS- og LEO-C/N₀ fra kørsler afspectrum, med paneler for S- og C-bånd.
IQ, SigMF og Welch#
[iq] tegner modellen på ét tidspunkt som komplekse in-fase- og kvadratursampler (IQ), skriver dem som en SigMF-optagelse (cf32_le eller ci16_le), læser optagelsen tilbage og estimerer dens PSD med Welchs metode (Hann-vindue, 50 % overlap, middelværdidannede periodogrammer, skaleret til tæthed). Termisk støj, signaler og støjlignende jammere tegnes interval for interval ud fra modellens egen tæthed; en tone og et chirp tegnes som virkelige bølgeformer. Med kun støjlignende jammere ligger Welch-estimatet inden for 0,1 dB af modellen (median). Et periodisk chirp er et linjespektrum ved sin svephastighed, med krusninger og haler uden for sine båndkanter, som den glatte model udelader: i det medfølgende eksempel stemmer den samlede effekt inden for 0,02 %, og det mediane interval afviger med 0,5 dB. Snapshottet er en fil skrevet til analyse; intet udsendes, og ingen radiohardware styres.
[recording] (kun native builds) læser en virkelig SigMF-optagelse fra meta_path (datafilen har som standard den samme stamme med .sigmf-data), estimerer dens PSD og udskriver den ved siden af modellen ved optagelsens frekvenser. En SigMF-fil har ingen absolut effektkalibrering, så rapporten angiver den mediane forskydning og formen, ikke et niveau.
I WebAssembly-buildet er filaflæsninger ikke tilgængelige; kshana::sigmf::read og kshana::spectrum::welch_psd arbejder på de bytes, siden leverer.
Evidens#
| Påstand | Mærkat | Uafhængig reference |
|---|---|---|
| Signal-PSD'er og SSC'er | VALIDATED | BPSK(n)-hovedlobe 2n × 1,023 MHz nulpunkt til nulpunkt; BOC(1.1)-lober centreret ved ±1,023 MHz (Betz 2001); SSC'er −61,86 / −64,87 / −67,88 dB/Hz for C/A×C/A, BOC(1.1)×BOC(1.1), C/A×BOC(1.1) ud fra deres lukkede Parseval-former, værdierne bag de publicerede −61,8 / −64,8 / −67,8 dB/Hz; Q = 1 (CW) og 1,5 (tilpasset) (Kaplan & Hegarty §9,4); tabelposterne for typen jamming er lig de lukkede former: CW og smalbånd Q = 1, bredbånd og svep Q = 2 (hvid støj over hovedloben, effekt i båndet normaliseret; 1 indtil 0,36) |
| Vandfaldsdiagram, J/S og C/N₀-tidslinje | MODELLED | Reduceres nøjagtigt til kæden for typen jamming; jammereffekter, tidslinje og båndbredder er input |
| SigMF-kodek og Welch-estimat | MODELLED | Rundture, en direkte diskret Fouriertransformation, identiteter for hvid støj og Parseval; ingen tredjepartsoptagelse findes i repositoriet |
| Vandfaldsdiagram for flere bånd med udformede signaler og jammere for hvert bånd | MODELLED | Reduceres til L-bånd-kæden (et bånd med én komponent giver de samme tal som før udvidelsen) og til de validerede signalspektre; de udformede signaler, jammere og båndbredder er input |
En rettelse til en udbredt forkortelse: BOC(1.1)-spektrets lober er centreret ved ±1,023 MHz (mellem bærebølgens nulpunkt og nulpunktet ved 2,046 MHz), men PSD'ens maksimum ligger ved ±0,759 MHz, hvor tan y = 2y med y = πf/(2R_c). Testene fastholder begge.
Ikke modelleret#
- Linjestrukturen i spredekoden (linjerne på 1 kHz i C/A): en tone scores mod den glatte omhylling, ikke mod den nærmeste kodelinje.
- Automatisk forstærkningsregulering, kvantisering, pulsblanking og notchfiltrering.
- Modtageantennens mønster mod jammeren ud over ét forstærkningstal.
- Flerbrugerinterferens mellem satellitter i ét bånd.
- Et udformet signals emissioner uden for dets sendebåndbredde: dets spektrum afkortes dér, så ingen emission uden for båndet når et nabobånd.
- Et chirps virkning på sløjfen ved svephastigheder, der kan sammenlignes med sløjfebåndbredden: dets C/N₀ bruger det rækkemiddelværdidannede spektrum.
Referencer#
- J. W. Betz, "Binary Offset Carrier Modulations for Radionavigation," NAVIGATION 48(4), 2001.
- E. D. Kaplan og C. J. Hegarty (red.), Understanding GPS/GNSS: Principles and Applications, 3. udg., 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, maj/juni 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-specifikationen, https://sigmf.org/ (kilde: https://github.com/sigmf/SigMF).