Perché il GPS dello smartphone trova la sua posizione molto più velocemente di un modulo GPS?


81

Quando sto usando il modulo GPS arduino di solito ci vogliono un paio di minuti prima che inizi a inviare dati. E sembra che di solito sia il caso di tutti i moduli GPS poiché devono "ascoltare" i satelliti per un po 'di tempo. Tuttavia, ogni volta che utilizzo il GPS interno dei miei telefoni, trova la sua posizione in pochi secondi. Perché?


16
Una sola risposta: "A-GPS"
Agent_L

10
Non è una parola, è un acronimo di quattro parole!
Transistor

10
@Transistor Beh, se vuoi diventare pedante, A-GPS non è un acronimo, ma un inizialismo. ;)
DavidCAdams il

7
@DavidCAdams: hai ragione! Li ho cercati entrambi. Non mi ero mai reso conto che un acronimo sia pronunciato (o almeno, presumo, essere pronunciabile) come una parola. Le cose che ho imparato su EE.SE!
Transistor

1
@DavidCAdams E in tutti questi anni ho seguito la rotta NASA di pronunciare A-GPS come "aggs", e ora stai dicendo che non posso più farlo? Le cose che impari su EE.SE!
un CVn

Risposte:


117

Ci sono diverse cose che influenzano il tempo per la prima correzione (TTFX) .

  1. Ottenere l'almanacco e gli effemeridi. Queste due cose sono tecnicamente un po 'diverse l'una dall'altra, ma per i nostri scopi le tratteremo allo stesso modo. Sono le posizioni dei satelliti e devi sapere dove si trovano per capire la tua posizione. Ogni satellite trasmette l'intero lotto all'incirca una volta ogni 12 minuti. Quindi da un avvio completamente freddo con un ricevitore a un canale e un segnale decente, il TTFX sarà di almeno 12 minuti. Puoi velocizzare le cose:

    • Download da Internet invece - generalmente una buona scelta per i telefoni. Il download dell'almanacco e dell'ephemreris in questo modo è noto come MSB Assisted GPS.
    • Ricordare l'almanacco dell'ultima volta (va bene per molte settimane) e scaricare solo gli effemeridi.
    • Avere più di un canale di ricezione nel dispositivo in modo da poter ascoltare più di un satellite alla volta. Le trasmissioni sono sfalsate per far funzionare questo, e con un po 'di cura puoi usare le effemeridi senza un almanacco che fa risparmiare molto tempo. La stragrande maggioranza dei moduli sul mercato in questi giorni ha più canali, quindi sarebbe raro trovarne uno che abbia ancora bisogno di 12 minuti.
  2. Identificazione dei satelliti. È necessario ascoltare almeno tre satelliti, preferibilmente di più, per ottenere una buona soluzione, ma ogni ricevitore (noto come correlatore) può essere sintonizzato solo su uno alla volta. Se sai più o meno dove sei, a che ora è e hai già un almanacco, allora puoi indovinare quali satelliti puoi vedere. I telefoni tendono a sapere approssimativamente da dove provengono riconoscendo i segnali wifi o bluetooth, sapendo quale torre cellulare stanno usando e altre fonti. Ricevono regolarmente anche aggiornamenti temporali molto precisi, quindi di solito possono andare direttamente per il satellite corretto. Sia i telefoni che i moduli più grandi possono anche ricordare quando e dove sono stati utilizzati l'ultima volta e utilizzarli per iniziare.

  3. Numero di correlatori. A causa del bassissimo rapporto segnale-rumore dei segnali GPS, è necessario un hardware speciale per riceverli. Alcuni ricevitori ne hanno solo uno e devono ruotare attorno ai satelliti. Altri ne hanno di più e possono ascoltarne di più contemporaneamente. Quindi, anche se hai già l'almanacco / effemeridi e sai all'incirca dove ti trovi, allora più correlatori ti aiuteranno comunque a risolvere più velocemente. Potresti pensare che più sia sempre meglio, ma di più aumenta i costi e il consumo di energia. Alcuni telefoni e moduli hanno più di altri.

  4. Segnale e antenne. I correlatori faranno il loro lavoro più velocemente se hai un buon segnale-rumore che li attraversa. Segnali molto scadenti potrebbero non funzionare affatto. Un buon design dell'antenna, un amplificatore, una vista del cielo e un buon layout PCB possono fare la differenza. Alcuni moduli potrebbero funzionare correttamente e molto meglio con un'antenna inserita.

  5. Numero di satelliti utilizzabili. In realtà ci sono due grandi costellazioni di satelliti lassù, GPS (gestito dagli Stati Uniti) e GLONASS (gestito dalla Russia). Ce ne sono anche altri in costruzione: Galileo (UE) e BeiDou-2 (Cina) e alcuni con copertura locale come l'India NAVIC o BeiDou-1. Un ricevitore che può funzionare con satelliti provenienti da più di una costellazione ha più satelliti tra cui scegliere e otterrà una soluzione più rapida e accurata.

  6. Qualità dei correlatori. I nuovi progetti hardware sono migliori di quelli vecchi e saranno in grado di individuare meglio i frammenti del messaggio GPS con un segnale rumoroso. Un altro trucco che i telefoni possono fare è catturare frammenti di segnale e trasmetterli su Internet a un server con un ottimo correlatore software e completare almanacco / effemeridi da esaminare. Questo è noto come MSA Assisted GPS.

  7. Alcuni telefoni (e anche alcuni moduli) potrebbero anche usare alcuni trucchi leggermente subdoli per evitare o nascondere un lungo TTFX. Dato che sono sempre accesi, potrebbero accendere brevemente il GPS senza dirlo all'utente al fine di mantenere la posizione e le effemeridi approssimativamente aggiornate. Altri potrebbero mostrare una posizione recente mentre sono ancora in attesa di una correzione reale - che sembra un buon TTFX per la maggior parte del tempo, ma sembra male se si scopre che la posizione è molto sbagliata.

Il punto 1 sopra è la cosa che fa la differenza e di solito è la cosa chiave che differisce tra moduli di base, moduli più avanzati e telefoni. Gli altri di solito fanno una differenza minore, ma in realtà può diventare una cosa molto complicata. Se vuoi leggere di più, allora "Tempo GPS per la prima correzione" è il termine da cercare.


32
Al punto 2: Oltre al WiFi, il telefono potrebbe anche ottenere una posizione approssimativa in base alla stazione o alle basi cellulari con cui è in contatto.
alfabetico

4
Un dispositivo potrebbe anche "memorizzare nella cache" gli ultimi dati di posizione conosciuti, utilizzarli immediatamente e regolarli quando arrivano dati reali. Il mio cellulare lo fa con il suo GPS.
rdtsc,

17
Oltre alla rete cellulare, un certo numero di provider (incluso Google) ha creato database delle posizioni fisiche dei punti di accesso WiFi, che consente loro di individuare in modo sorprendentemente preciso la posizione di un dispositivo. Il mio tablet Android economico non ha accesso GPS né cellulare, tuttavia Google Maps sembra sempre sapere esattamente dove mi trovo, purché sia ​​collegato a un WAP. Sospetto che ottengano le posizioni dei WAP attraverso un processo inverso, deducendolo dalle posizioni dei telefoni collegati e di altri dispositivi che dispongono di GPS.
Dave Tweed

5
@ ゼ ー ロ Ogni fotogramma dura 35 secondi, ma l'almanacco completo è suddiviso in 25 fotogrammi e la trasmissione richiederà 12-13 minuti. È vero che puoi ottenere una correzione dai dati delle effemeridi senza l'almanacco, ma avrai bisogno dell'almanacco per 1) hardware molto vecchio, 2) correzione accurata dal tempo GPS all'UTC e 3) correzione del ritardo ionosferico su alcuni hardware.
Jack B,

4
@ ゼ ー ロ Ummm. Ero molto chiaro che 12 minuti erano per un ricevitore a canale singolo. Ho anche detto che i ricevitori multicanale sono più veloci. La maggior parte dei ricevitori moderni sono multicanale, ma certamente ne ho alcuni più vecchi a canale singolo - e impiegano tutti i 12 minuti. E se hai un singolo canale e vuoi la correzione del ritardo ionosferico, allora non c'è modo di ottenerlo più velocemente di quanto si possa ottenere l'intero almanacco. Il fatto che tu usi moduli multicanale e richieda un TTFX di 3 minuti non significa che l'altro tipo non esista. Ma aggiornerò la risposta per dire che il vecchio tipo è raro.
Jack B

22

Il sistema operativo del telefono cellulare scarica i dati almanacco GPS (effemeridi satellitari e informazioni sullo stato) su Internet tramite la rete cellulare e li carica nel modulo GPS molto più velocemente di quanto sarebbe necessario per scaricarli dai satelliti GPS direttamente a 50 bps ( sì, sono 50 bit al secondo, il GPS è una tecnologia piuttosto vecchia ottimizzata per il funzionamento a SNR molto basso), che accelera notevolmente il tempo per la prima correzione. Questo si chiama GPS assistito. Probabilmente ha anche un riferimento temporale iniziale molto accurato dal modem cellulare (le torri cellulari sono di solito sincronizzate nel tempo tramite GPS) e probabilmente una stima approssimativa della posizione dal modem cellulare. Tutto ciò combinato riduce drasticamente la quantità di ricerche che il ricevitore deve fare: sa quali satelliti dovrebbe essere in grado di vedere, quindi cerca solo quelli e non ha bisogno di aspettare che i satelliti trasmettano l'intero messaggio.


Quindi sostanzialmente elimina la "sincronizzazione" dal processo. Il modulo GPS cerca il satellite utilizzando i dati inviati dal satellite stesso, giusto?
Dodecaedro antropomorfo

3
Non lo elimina dal processo, lo accelera dando al ricevitore GPS una buona stima da cui partire.
alex.forencich,

29
I 50 bps non sono solo perché il GPS è vecchio. È parte integrante del modo in cui i ricevitori GPS possono rilevare il segnale estremamente debole e come tutti i satelliti GPS possono trasmettere su una singola frequenza ma siano comunque ricevuti indipendentemente. Un sacco di cose complicate accade in un ricevitore GPS.
JRE,

5
@ TomTom: No, il segreto del GPS non è mai stato raggiunto dall'oscurità. Potresti pensare a Selective Availability (SA), ma si è trattato di un errore di posizionamento intenzionale.
Salmo

1
@ TomTom: lo spettro di diffusione del GPS non era destinato a nascondere i segnali. Ha quell'effetto per semplici ricevitori RF, ma non era questo il punto. La tecnica dello spettro di diffusione offre due cose: funzionamento con rapporti segnale-rumore estremamente bassi e un grado di immunità agli inceppamenti. Praticamente tutti e suo fratello sanno (e sapevano già da quando) quale frequenza utilizza il GPS. Inutile nascondere ciò che è già noto. Non essere (facilmente) bloccato è stato un grande vantaggio, però. Ci sono jammer GPS (ora) ma all'epoca era molto più difficile da fare.
JRE,


8

Parte della risposta qui è che il cellulare GPS non è solo GPS. Cell utilizza anche altre informazioni per la geolocalizzazione, come la triangolazione delle torri dei telefoni cellulari e la visibilità delle reti wifi. Ad esempio, la versione non cellulare dell'iPad Air non ha un GPS reale ma sa ancora dove ti trovi nelle aree costruite usando queste tecniche.


4
La domanda riguardava in particolare il funzionamento del GPS. I telefoni cellulari non possono triangolare dalle torri dei telefoni cellulari in quanto non sono disponibili informazioni sulla posizione da loro.
Transistor

6
@Transistor La domanda mette a confronto il GPS stand-alone con il GPS del cellulare e il titolo della domanda chiede specificamente come i cellulari eseguono il GPS più velocemente delle unità GPS stand-alone. E Wikipedia dice che i cellulari non usano torre di triangolazione per determinare la posizione. Non sono sicuro del motivo per cui dici che non ci sono informazioni sulla posizione disponibili: certo, la torre non annuncia la sua posizione ma nemmeno le strade ne annunciano la posizione: il tuo telefono ha una mappa memorizzata in un database.
David Richerby,

3
@Transistor: il cellulare non esegue la triangolazione. Il provider di rete lo fa.
Jörg W Mittag,

2
@ JörgWMittag: dipende dalla rete AFAICT. Le reti moderne forniscono servizi di localizzazione come parte di Enhanced 911 / E112.
Salmi

@DavidRicherby: grazie per il link. L'ho letto due volte, ma tutto quello che posso vedere è che la posizione del telefono è nota alla rete , non al telefono. Cosa mi sono perso?
Transistor

5

Volevo solo aggiungere un po 'più di dettaglio a ciò che sta accadendo quando i ricevitori più anziani sono in attesa di dati. In altre parole, perché quell'almanacco (e la posizione ricordata) è così utile?

I segnali GPS sono molto deboli. Data la distanza, il segnale è ben al di sotto del rumore di fondo quando raggiunge la terra. Non rileveresti mai direttamente il satellite se guardassi semplicemente una scansione dell'oscilloscopio con la frequenza corretta.

Il modo in cui il ricevitore ottiene informazioni è confrontando il segnale in arrivo con un modello specifico (tramite una correlazione FFT). Se viene utilizzato il modello corretto, la correlazione si allinea e i dati possono essere visualizzati.

Per un semplice ricevitore vecchio stile arrivare a questo punto richiede due elementi dal correlatore del dispositivo: la frequenza del messaggio dal satellite e la fase del messaggio (allineando gli schemi). Se uno di questi non è corretto, la correlazione non ha esito positivo e non viene rilevato nulla. I movimenti dei satelliti indicano che il segnale ricevuto è soggetto a spostamenti Doppler relativamente grandi.

Con un almanacco in atto e una buona idea della posizione e del tempo attuali, il ricevitore può stimare i movimenti relativi del satellite e del ricevitore per rimuovere la maggior parte dello spostamento Doppler e avvicinarsi in qualche modo alla frequenza. Ciò significa che il correlatore di solito può dare un colpo solo provando diverse fasi per il modello di segnale. Questa ricerca nello spazio delle fasi può essere eseguita in pochi secondi.

Se manca l'almanacco o se non esiste una stima della posizione e del tempo attuali, il sistema deve provare fasi diverse e frequenze diverse per ottenere dati da ciascun satellite. Ora, dovendo cercare in due diverse dimensioni, possono essere necessari alcuni minuti anche per un sistema multicanale per "trovare" 3 satelliti con la forza bruta.

I moderni chipset possono utilizzare segnali aggiuntivi e molti comparatori paralleli per accelerare la ricerca, anche senza la presenza dell'A-GPS. Ho il sospetto che il chipset che ottieni su uno scudo Arduino sia probabilmente più vecchio / più economico e non utilizzerà queste nuove funzionalità.


3

Negli Stati Uniti, la FCC ha richiesto agli operatori di telefoni cellulari di essere in grado di identificare la posizione di un chiamante quando chiama i servizi di emergenza entro 300 metri entro 6 minuti dalla telefonata iniziale entro l'11 settembre 2012.

Ciò è stato gradualmente introdotto negli anni precedenti e negli anni successivi il requisito è stato inasprito sia dal rapporto distanza che dal tempo di localizzazione.

Le compagnie di telefonia cellulare non potevano garantirlo in aree remote dove solo una o due torri cellulari erano a contatto con il telefono cellulare, né in ambienti urbani in cui i riflessi e la densità dell'edificio impedivano la posizione anche quando il telefono aveva diverse torri che poteva ricevere. I chip GPS non sono stati in grado di fornire questo entro i tempi richiesti a una potenza sufficientemente bassa da rendere il telefono cellulare ancora commercialmente praticabile (al momento dell'introduzione del requisito. I chipset sono ora molto più efficienti e più veloci, in parte a causa del requisito che ogni telefono include alcuni o tutti i chipset GPS). Inoltre, i chipset GPS erano molto costosi rispetto agli altri componenti del telefono.

Così hanno creato alcuni diversi sistemi concorrenti che rientrano tutti nel moniker "AGPS" per Assisted GPS.

La tecnologia che corre dietro questi vari sistemi AGPS differisce, a volte notevolmente.

I sistemi AGPS cellulari più economici registrano diversi millisecondi del segnale RF GPS, lo inviano al server AGPS che quindi, conoscendo la posizione approssimativa del telefono, può utilizzare lo snippet RF GPS per determinare una posizione molto più accurata. Questi telefoni non possono ottenere le coordinate GPS senza una buona connessione cellulare.

Alcuni hanno chipset GPS completi, ma consentono al telefono di fornire loro l'almanacco e gli effemeridi - due informazioni che consentono al chipset di ottenere una correzione in pochi secondi - dopodiché utilizza i suoi metodi normali per produrre risultati di posizione. Dato il tempo, questi telefoni possono ottenere una posizione indipendente dalla loro rete.

La maggior parte dei chipset GPS ti consente di caricare informazioni effimere e almanacco, quindi se il tuo dispositivo arduino ha una connessione Internet e hai accesso a un server AGPS puoi velocizzare la tua correzione GPS in modo simile. Tuttavia, per la maggior parte dei progetti l'aggiunta di una batteria a bottone al litio al pin destro del ricevitore GPS consente di mantenere l'ultimo aggiornamento di almanacco ed effemeridi e poiché le modifiche sono piccole per brevi periodi di tempo, ciò accelera notevolmente la prima correzione poiché purché il dispositivo non si sia spostato di migliaia di miglia e sia acceso ogni pochi giorni.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.