Yleiskatsaus
Starlink Viewer näyttää reaaliaikaisen 3D-maapallon, jossa kaikki ~10 000 Starlink-satelliittia liikkuvat reaaliajassa, lautasantennisi sijainnin ja päätellyn yhteyden satelliittiin, joka todennäköisimmin palvelee päätettäsi.
Ihanteellinen Starlink-seurantatyökalu näyttäisi tarkalleen, minkä satelliitin kanssa lautasantennisi kommunikoi kulloinkin, milloin se vaihtaa uuteen satelliittiin ja signaalireitin lautasantennistasi satelliitin kautta maa-asemalle. Tämä edellyttäisi, että lautasantenni paljastaisi palvelevan satelliitin tunnisteen ja elektronisen keilansuuntauksen suunnan. SpaceX ei paljasta kumpaakaan, joten Nexus päättelee palvelevan satelliitin saatavilla olevista tiedoista.
Miksi päättely on tarpeen
SpaceX lukitsee satelliittien tunnistustiedot todennettujen gRPC-päätepisteiden taakse, jotka eivät ole käytettävissä kuluttajalaiteohjelmistolla.
dish_get_contextsisältääinitial_satellite_id-kentän, mutta on palauttanutPermissionDenied-virheen kuluttajalaitteistolla laiteohjelmistoversiosta9f4d05a4(kesäkuu 2021) lähtien.transceiver_get_telemetrypaljastaalmac_satellite_id- jatarget_satellite_id-kentät, mutta palauttaaUNIMPLEMENTED-virheen kaikissa kuluttajapäätteissä.- PKI haaste-vastaus-todennus SpaceX:n hallitsemilla avaimilla tarkoittaa, ettei yhteisöllisiä ohitusratkaisuja ole olemassa.
- Elektronisen keilansuuntauksen suunta: joka tunnistaisi palvelevan satelliitin suoraan; ei ole saatavilla minkään päätepisteen kautta.
- Lautasantennin vaiheistettu ryhmäantenni suuntaa keilansa elektronisesti jopa ±50° boresightista, mutta tämä suuntauskulma on täysin näkymätön API:n ulkoisille kuluttajille.
Saatavilla olevat tiedot
Lautasantennista mitatut
| Tieto | Mitä se kertoo meille | Päivitystahti |
|---|---|---|
| Boresightin atsimuutti ja korkeuskulma | Lautasantennin rungon fyysinen suuntaus | 1 Hz |
| PoP-ping-viive | Edestakainen aika läsnäolopisteeseen | 1 Hz |
| Lataus- ja lähetyskaistanleveys | Nykyinen läpäisykyky | 1 Hz |
| Aikaväliajastin | Satelliittiaikaväliajastin (aina 0 testatulla laitteistolla) | 1 Hz |
| GPS-koordinaatit | Lautasantennin sijainti | Pyynnöstä |
Katkohistoria (did_switch) |
Vahvistettu satelliitinvaihto palvelukatkoksen aikana | Katkokohtaisesti |
| Estekartta (SNR-ruudukko) | 123×123 pikselin taivaskartta; sisältää reaaliaikaista satelliittisignaalitietoa, kun se nollataan vaihdon rajoilla (katso Obstruction Map and Satellite Tracking) | 1 Hz |
Ulkoiset lähteet
| Tieto | Mitä se kertoo meille |
|---|---|
| TLE-rataelementit ~10 000 Starlink-satelliitille (CelesTrak / 18th Space Defence Squadron) | Laskettu atsimuutti, korkeuskulma ja viistoetäisyys jokaiselle satelliitille mistä tahansa havaintosijainnista |
Mikä ei ole saatavilla
| Tieto | Miksi haluamme sen | Tila |
|---|---|---|
| Palvelevan satelliitin ID | Suora tunnistus | Lukittu todennuksen taakse |
| Elektronisen keilansuuntauksen kulma | Tarkka keilansuunta | Ei saatavilla missään päätepisteessä |
| Toimiva aikaväliajastin | Vaihdon ajoitussignaali | Kenttä on olemassa, mutta lukee 0 nykyisellä kuluttajalaiteohjelmistolla |
Kuinka sovitus toimii
Satelliittisovitus
Katseluohjelma suorittaa seuraavan laskennan taajuudella 1 Hz:
-
Havainnoijan sijainti: lautasantennin GPS-koordinaatit
get_location-kyselystä määrittävät sijaintisi Maapallolla. -
Satelliittien sijainnit: käyttäen SGP4-ratapropagointia CelesTrak-palvelun TLE-tiedoilla katseluohjelma laskee atsimuutin, korkeuskulman ja viistoetäisyyden jokaiselle Starlink-satelliitille lautasantennisi sijainnista katsottuna.
-
Näkökentän suodatus: vain yli 10° korkeuskulmalla olevat satelliitit huomioidaan. Lautasantennin fyysinen boresight-suunta (
alignment_stats-tiedoista) määrittää vaiheistetun ryhmäantennin ~100° näkökentän kartion keskipisteen. -
Lähimmän ehdokkaan valinta: satelliitti, jolla on pienin kulmaetäisyys fyysisestä boresightin keskipisteestä, valitaan todennäköisimmäksi palvelevaksi satelliitiksi.
Boresightin tähtäin
Polaaritaivaskartan tähtäin edustaa lautasantennin rungon fyysistä suuntausta, ei elektronisen keilan suuntaa. Starlink-vaiheistettu ryhmäantenni on suurelta osin paikallaan alkuperäisen kohdistuksen jälkeen; boresight-arvot muuttuvat tuntien aikana murto-osien asteita tuulen tai lämpövaikutusten vuoksi. Lautasantenni ei liiku fyysisesti seuratakseen yksittäisiä satelliitteja.
Varsinainen keilansuuntaus tapahtuu elektronisesti vaiheistetun ryhmäantennin sisällä RF-tasolla pyyhkäisten jopa ±50° fyysisestä boresightista palvelevan satelliitin seuraamiseksi. Tämä elektronisen keilan suunta ei ole saatavilla minkään kuluttaja-API-päätepisteen kautta.
Satelliitinvaihdon havaitseminen
Kun lähin satelliittiehdokas vaihtuu (eri NORAD-ID tulee geometrisesti lähimmäksi), tämä havaitaan pääteltynä satelliitinvaihtona. Nämä muutokset korreloivat todellisten lautasantennin vaihtojen kanssa, mutta eivät vahvista niitä. Ne heijastavat ratamekaniikkaa; satelliittien kulkiessa yläpuolella ~7,5 km/s nopeudella lautasantennin boresightin keskipistettä lähin satelliitti vaihtuu luonnollisesti muutaman minuutin välein.
Todelliset satelliitinvaihdot Starlinkissä on suunniteltu saumattomiksi (make-before-break), eivätkä ne aiheuta mitattavaa epäjatkuvuutta viiveessä tai läpäisykyvyssä, jota voitaisiin käyttää luotettavana havaitsemissignaalina nykyisellä laiteohjelmistolla.
Luottamuspistemäärä
Luottamuspistemäärä heijastaa geometristä todennäköisyyttä, että sovitettu satelliitti on todellinen palveleva:
| Luottamus | Kriteerit | Tulkinta |
|---|---|---|
| Korkea | < 10° boresightista, ≤ 3 läheistä ehdokasta | Vähän satelliitteja lähistöllä; vahva geometrinen ehdokas |
| Keskitaso | < 25° boresightista | Hyvin näkökentässä; kohtuullinen ehdokas |
| Matala | < 50° boresightista | Lautasantennin suuntausalueella, mutta monta läheistä ehdokasta |
| Ei osumaa | > 50° boresightista | Yksikään satelliitti ei ole lautasantennin elektronisen suuntauksen alueella |
Nämä kynnysarvot on kalibroitu fyysiselle boresightille (lautasantennin rungon suunta), ei elektroniselle keilalle. Koska vaiheistettu ryhmäantenni voi suunnata ±50° lautasantennin pinnasta, palveleva satelliitti on tyypillisesti 10–40° fyysisestä boresightin keskipisteestä. “Korkea”-luottamusosuma tarkoittaa, että on yksi vahva geometrinen ehdokas; se ei tarkoita, että tunnistus on vahvistettu.
Tarkkuusaste
Mihin voit luottaa
Satelliittien sijainnit maapallolla ovat tarkkoja. CelesTrak-palvelun TLE-tiedot ovat arvovaltaisia (peräisin US Space Force 18th Space Defence Squadronilta) ja SGP4-propagointi on avaruusseurantayhteisön käyttämä vakiomenetelmä. Sijaintitarkkuus on tyypillisesti muutaman kilometrin sisällä äskettäin päivitetyillä TLE-tiedoilla.
Lautasantennisi sijainti on tarkka. Se tulee suoraan lautasantennin sisäisestä GPS:stä.
Fyysinen boresight-suunta on tarkka. Sen mittaa lautasantennin IMU (inertiamittausyksikkö) ~0,6°:n epävarmuudella.
Näkyvien satelliittien joukko on tarkka. Lasketut katselukulmat sijainnistasi kuhunkin satelliittiin ovat geometrisesti tarkkoja, joten polaarikarttta näyttää oikein, mitkä satelliitit ovat yläpuolella ja missä ne ovat taivaalla.
Mikä on pääteltyä
Tunnistettu satelliitti on perusteltu arvaus. Boresightin keskipistettä lähin satelliitti on paras geometrinen ehdokas, mutta lautasantenni saattaa kommunikoida minkä tahansa satelliitin kanssa ±50° elektronisen suuntausalueensa sisällä. Minä tahansa hetkenä kymmeniä satelliitteja voi olla näkökentässä.
Satelliitinvaihdot ovat havaittua geometriaa, eivät vahvistettuja vaihtoja. Kun lähin ehdokas vaihtuu, se heijastaa ratasiirtymää; eri satelliitti tulee geometrisesti lähimmäksi. Todelliset lautasantennin vaihdot voivat osua yhteen näiden geometristen muutosten kanssa tai eivät. Jotkut todelliset vaihdot ovat näkymättömiä päättelylle (lautasantenni vaihtaa toiseen satelliittiin, mutta geometrisesti lähin ei muutu), ja jotkut havaitut muutokset ovat puhdasta ratasiirtymää (geometrisesti lähin muuttui, mutta lautasantenni ei todella vaihtanut).
Luottamuspistemäärät ovat geometrisiä, eivät signaalipohjaisia. “Korkea”-luottamusosuma tarkoittaa hyvää geometriaa, ei vahvistettua yhteyttä. Ilman pääsyä elektronisen keilan suuntaan tai palvelevan satelliitin ID:hen mikään kuluttajalaiteohjelmistopohjainen työkalu ei voi vahvistaa, mitä satelliittia lautasantenni todellisuudessa käyttää.
Signaalit, joita tutkimme
Kehityksen aikana useita signaaleja arvioitiin vaihdonhavaitsemista varten. Kaikkia testattiin todellisella laitteistolla (rev3_proto2, laiteohjelmistot 2026.02.16.cr74084 ja 2026.04.07.mr77639.1).
| Signaali | Hypoteesi | Havainto |
|---|---|---|
seconds_to_first_nonempty_slot |
Pitäisi laskea alaspäin satelliittiaikaväliä kohti ja nollautua vaihdossa | Lukee aina 0 testatulla kuluttajalaitteistolla; kenttä on täyttämätön |
pop_ping_latency_ms-epäjatkuvuudet |
Viiveen pitäisi hypätä, kun viistoetäisyys muuttuu vaihdon aikana | Viive pysyy tasaisena vaihtojen läpi; SpaceX käyttää todennäköisesti make-before-break-kytkentää, joka absorboi reittimuutokset |
did_switch katkohistoriasta |
Vahvistettu vaihtolippu katkokirjauksissa | Laukeaa vain palvelukatkojen aikana, ei rutiininomaisten ~15 sekunnin puhtaiden vaihtojen aikana |
| Boresight-epäjatkuvuudet | Lautasantennin fyysinen uudelleenasemointi saattaisi liittyä vaihtoihin | Lautasantennin runko tuskin liikkuu; elektroninen keilansuuntaus hoitaa satelliittiseurannan äänettömästi |
| Estekartan SNR (ilman nollausta) | Solukohtaisten SNR-muutosten pitäisi seurata satelliitin liikettä näkökentän läpi | Ilman kartan nollausta esteettömällä lautasantennilla se palauttaa staattisen kumulatiivisen kirkkaan taivaan maskin; kaikki näkyvät solut lukevat ~1,0 ilman vaihtelua peräkkäisten kyselyjen välillä. Kertyneet tiedot ovat täysin kyllästyneitä, joten kehysten välinen erotus ei näytä muutoksia. |
| Estekartan SNR (nollauksella) | dish_clear_obstruction_map-kutsun jälkeen kartan tulisi rakentua uudelleen tyhjästä ja paljastaa palvelevan satelliitin sijainti, kun uusia pikseleitä maalataan sekunnin välein |
Vahvistetusti toimiva. Vaihdon rajoilla tehdyn nollauksen jälkeen 1 Hz:n kysely tuottaa puhtaita yhden pikselin satelliittiratoja. Katso Obstruction Map and Satellite Tracking. |
Obstruction Map and Satellite Tracking
Tausta
Ahangarpour, Zhao, and Pan -tutkijoiden SatInView-tutkimus (ACM MobiCom '24 LEO-NET Workshop) osoitti, että palveleva satelliitti voidaan tunnistaa nollaamalla lautasantennin estekartta 15 sekunnin vaihdon rajoilla, kyselemällä sitä 1 Hz:n taajuudella ja soveltamalla XOR-operaatiota peräkkäisiin kehyksiin, jotta satelliitin rata näkökentän läpi saadaan poimittua. Havaittu rata sovitetaan sitten TLE-propagoituihin satelliittisijainteihin lähes yksiselitteisen tunnistamisen saavuttamiseksi.
Starlink Viewerin alkuvaiheen kehityksen aikana testasimme estekarttaa ilman nollauksen suorittamista. Esteettömällä lautasantennilla kartta näytti staattiselta, täysin kyllästyneeltä kirkkaan taivaan maskilta ilman kehysten välistä vaihtelua. Päätimme, että tiedot eivät sisällä reaaliaikaista satelliittisignaalitietoa. Tämä johtopäätös oli tarkka nollaamattomalle kartalle, mutta epätäydellinen: kartta näytti staattiselta, koska jokainen pikseli, jonka nykyinen satelliitti olisi voinut maalata, oli jo valaistu aiemmista satelliittien ohilennoista. Ilman kertyneiden tietojen etukäteistä tyhjentämistä XOR-operaatiolla ei ollut mitään uutta havaittavaa.
Päivitetyt havainnot
SatInView-tutkimusryhmän kanssa käydyn kirjeenvaihdon jälkeen testasimme täydellistä nollaukseen perustuvaa lähestymistapaa rev3_proto2-laitteistolla, jossa oli käytössä laiteohjelmisto 2026.04.07.mr77639.1 (huhtikuu 2026). Tulokset vahvistavat, että tekniikka toimii nykyisellä laitteistolla ja laiteohjelmistolla:
dish_clear_obstruction_mapon käytettävissä ja toimiva. Sen kutsuminen tyhjentää kertyneet SNR-tiedot (377 aktiivista pikseliä vähentyi 1:een testauksessa).- Nollauksen jälkeen kartta rakentuu uudelleen noin yhdellä uudella pikselillä sekunnissa, kun palveleva satelliitti liikkuu näkökentän läpi.
- Peräkkäisten kehysten XOR-operaatio 1 Hz:n taajuudella tuottaa puhtaita yhden pikselin ratapisteitä lähes nolla-hajonnalla.
- 15 sekunnin vaihdon ajoitus (jokaisen minuutin 12., 27., 42. ja 57. sekunti, globaalisti synkronoitu) vahvistettiin laitteistollamme. Peräkkäiset intervallit seurasivat samaa satelliittia jatkuvasti, ja selvä radan hyppäys havaittiin todellisen vaihdon tapahtuessa.
- Kartta raportoi
FRAME_EARTHpaikallaan olevilla aktiivisilla lautasantenneilla, mikä tarkoittaa, että ruudukko on suunnattu siten, että ylä-keskipikseli vastaa tosi pohjoista. Liikkuvat tai passiiviset lautasantennit voivat raportoidaFRAME_UT, jolloin ala-keskipikseli vastaa boresight-suuntaa.
Kompromissi: miksi Nexus ei oletuksena nollaa karttaa
dish_clear_obstruction_map-kutsu on tuhoava; se poistaa lautasantennin kertyneen esteprofiilin. Käyttäjille, joilla on esteitä (puita, rakennuksia tai muita rakenteita), nämä tiedot ovat arvokkaita signaaliongelmien diagnosointiin ja kertyvät ajan myötä monien satelliittien ohilentojen aikana. Niiden nollaaminen 15 sekunnin välein estää lautasantennia keräämästä mitään estetietoja, ja Starlink-mobiilisovellus näyttää tyhjän tai osittaisen kartan.
Nexus käyttää tällä hetkellä geometristä päättelyä (boresight-suunta + TLE-sovitus) oletustapana satelliitintunnistukseen. Tämä lähestymistapa on ei-tuhoava; se ei kutsu mitään kirjoituspäätepisteitä lautasantennista eikä sillä ole sivuvaikutuksia käyttäjän estetietoihin.
Käytämme rataan perustuvaa lähestymistapaa kalibrointityökaluna geometrisen päättelymme tarkkuuden vahvistamiseen ja parantamiseen. Arvioimme myös, tarjoammeko radan seurannan valinnaisena tilana edistyneille käyttäjille ja tutkijoille, ja ilmoitamme selkeästi kartan nollauksen kompromissista.
Mikä voisi muuttaa tämän
Tulevat laiteohjelmistopäivitykset tai laitteistomuutokset voisivat paljastaa lisätelemetriaa, joka parantaisi päättelyn tarkkuutta:
- Toimiva
seconds_to_first_nonempty_slot: jos tämä kenttä täytetään uudemmalla laiteohjelmistolla tai laitteistolla, se tarjoaisi luotettavan ajoitussignaalin vaihtokohtaisesti. - Elektronisen keilansuuntauksen kulmat: mikä tahansa vaiheistetun ryhmäantennin todellisen keilansuunnan paljastaminen mahdollistaisi suoran satelliittitunnistuksen.
- Lievennetty todennus
dish_get_context-kyselyssä: jos SpaceX ottaisiinitial_satellite_id-kentän uudelleen käyttöön, ongelma ratkeaisi kokonaan. - Ei-tuhoavat reaaliaikaiset signaalitiedot: jos tuleva laiteohjelmisto paljastaisi satelliittikohtaista signaalitietoa erillisen päätepisteen tai estekartan ei-tuhoavan muunnelman kautta, rata-sovitus-lähestymistapaa voitaisiin käyttää nollaamatta käyttäjän estetietoja.
- Uudet laitteistosukupolvet: SpaceX ottaa käyttöön V3-satelliitteja ja uutta päätteistölaitteistoa. Eri laiteohjelmisto- tai laitteistoversiot saattavat täyttää nykyisin kuolleita kenttiä tai paljastaa uutta telemetriaa.
Aiempi tutkimus
Nexus käyttää geometristä päättelyä (boresight-suunta + TLE-propagoidut satelliittisijainnit) arvioidakseen, mikä satelliitti palvelee lautasantennia. Tämä on heuristinen lähestymistapa; tehokas ja ei-tuhoava, mutta tarkkuudeltaan rajoittunut.
Tarkempaan tunnistukseen Ahangarpour, Zhao, and Pan -tutkijoiden University of Victoriassa kehittämä SatInView-tekniikka (ACM MobiCom 2024, LEO-NET Workshop) saavuttaa lähes yksiselitteisen satelliitintunnistuksen korreloimalla estekartan ratoja TLE-tietoihin. Heidän lähestymistapansa edellyttää estekartan nollaamista vaihdon rajoilla, minkä olemme vahvistaneet toimivaksi nykyisellä laitteistolla ja laiteohjelmistolla (katso Obstruction Map and Satellite Tracking). Heidän toteutuksensa on saatavilla osoitteessa github.com/aliahan/SatInView.
Käytämme heidän rataan perustuvaa tekniikkaansa vertailukohtana Starlink Viewerissä käytetyn geometrisen päättelyn tarkkuuden kalibrointiin ja parantamiseen.
Ratatiedot
Satelliittien sijainnit ovat peräisin CelesTrak-palvelun täydentävästä GP-päätepisteestä, joka yhdistää SpaceX:n toimittamat efemeridit vakiomuotoisen 18th Space Defence Squadronin luettelotietoihin. Tiedot tallennetaan paikallisesti Rust-taustajärjestelmän välimuistiin ja päivitetään 6 tunnin välein, ja 48 tunnin vanhentunut välimuistivaravaihtoehto on käytettävissä, jos CelesTrak ei ole tavoitettavissa. Tilarivi näyttää nykyisen satelliittimäärän ja tietojen iän.
Lautasantennin sijainti
Katseluohjelma käyttää GPS-koordinaatteja lautasantennin get_location-päätepisteestä, kun ne ovat saatavilla. Jos GPS-tiedot eivät ole käytettävissä, voit syöttää leveysasteesi ja pituusasteesi manuaalisesti asetuspaneelissa.