Warum findet Smartphone-GPS seine Position viel schneller als ein GPS-Modul?

81

Wenn ich das arduino GPS-Modul verwende, dauert es normalerweise einige Minuten, bis das Senden von Daten beginnt. Und es scheint, dass dies normalerweise bei allen GPS-Modulen der Fall ist, da sie einige Zeit auf den Satelliten "lauschen" müssen. Wenn ich jedoch das interne GPS meines Telefons verwende, kann es seine Position innerhalb von Sekunden ermitteln. Warum ist das so?

Anthropomorphes Dodekaeder
quelle
16
Ein Wort Antwort: "A-GPS"
Agent_L
10
Das ist nicht ein Wort - es ist ein Akronym mit vier Wörtern!
Transistor
10
@Transistor Wenn Sie pedantisch werden möchten, ist A-GPS kein Akronym, sondern ein Initialismus. ;)
DavidCAdams
7
@DavidCAdams: Du hast recht! Ich habe beide nachgeschlagen. Mir war nie klar geworden, dass ein Akronym als Wort ausgesprochen wird (oder zumindest ausgesprochen werden sollte). Die Dinge, die ich auf EE.SE gelernt habe!
Transistor
1
@DavidCAdams Und all die Jahre bin ich auf die NASA-Route gegangen, um A-GPS als "aggps" auszusprechen, und jetzt sagst du, dass ich das nicht mehr kann? Die Dinge, die Sie auf EE.SE lernen!
einen Lebenslauf vom

Antworten:

116

Es gibt verschiedene Faktoren, die sich auf die Zeit bis zur ersten Korrektur auswirken (TTFX) .

  1. Den Almanach und die Ephemeride bekommen. Diese beiden Dinge unterscheiden sich technisch ein wenig voneinander, aber für unsere Zwecke werden wir sie als gleich behandeln. Sie sind die Standorte der Satelliten, und Sie müssen wissen, wo sie sich befinden, um Ihre eigene Position zu ermitteln. Jeder Satellit sendet das gesamte Los ungefähr alle 12 Minuten. Nach einem vollständigen Kaltstart mit einem Einkanalempfänger und einem anständigen Signal beträgt TTFX mindestens 12 Minuten. Sie können die Dinge beschleunigen, indem Sie:

    • Stattdessen aus dem Internet herunterladen - im Allgemeinen eine gute Wahl für Telefone. Das Herunterladen von Almanach und Ephemreris auf diese Weise wird als MSB-unterstütztes GPS bezeichnet.
    • Ich erinnere mich an den Almanach vom letzten Mal (er ist viele Wochen lang gut) und lade nur die Ephemeride herunter.
    • Das Gerät verfügt über mehrere Empfangskanäle, sodass Sie mehrere Satelliten gleichzeitig hören können. Die Übertragungen sind gestaffelt, um diese Arbeit zu machen, und mit etwas Sorgfalt können Sie die Ephemeride ohne einen Almanach verwenden, der viel Zeit spart. Die allermeisten Module auf dem Markt haben heutzutage mehrere Kanäle, so dass es selten ist, einen zu finden, der noch 12 Minuten benötigt.
  2. Satelliten identifizieren. Sie müssen sich mindestens drei Satelliten anhören, vorzugsweise mehr, um eine gute Lösung zu erhalten, aber jeder Empfänger (als Korrelatoren bezeichnet) kann jeweils nur auf einen Satelliten eingestellt werden. Wenn Sie ungefähr wissen, wo Sie sind, wie spät es ist und bereits einen Almanach haben, können Sie erraten, welche Satelliten Sie sehen können. Die Telefone neigen dazu, ungefähr zu wissen, wo sie WLAN- oder Bluetooth-Signale erkennen, welchen Mobilfunkmast sie verwenden und andere Quellen. Sie erhalten auch regelmäßig sehr genaue Zeitaktualisierungen, sodass sie in der Regel direkt zum richtigen Satelliten wechseln können. Sowohl Telefone als auch größere Module können sich auch merken, wann und wo sie zuletzt verwendet wurden.

  3. Anzahl der Korrelatoren. Aufgrund des sehr geringen Signal-Rausch-Verhältnisses von GPS-Signalen benötigen Sie spezielle Hardware, um diese zu empfangen. Einige Empfänger haben nur einen und müssen sich um die Satelliten drehen. Andere haben mehr und können mehr auf einmal hören. Selbst wenn Sie bereits den Almanach / die Ephemeride haben und ungefähr wissen, wo Sie sich befinden, helfen Ihnen mehr Korrelatoren, diese schneller zu beheben. Sie denken vielleicht, mehr ist immer besser, aber mehr erhöht die Kosten und den Stromverbrauch. Einige Telefone und Module haben mehr als andere.

  4. Signal und Antennen. Die Korrelatoren erledigen ihre Arbeit schneller, wenn Sie ein gutes Signal-Rausch-Verhältnis haben. Sehr schlechte Signale funktionieren möglicherweise überhaupt nicht. Ein gutes Antennendesign, ein Verstärker, eine gute Sicht auf den Himmel und ein gutes PCB-Layout können den Unterschied ausmachen. Einige Module funktionieren möglicherweise sofort und viel besser, wenn eine Antenne angeschlossen ist.

  5. Anzahl verwendbarer Satelliten. Es gibt zwei große Konstellationen von Satelliten, GPS (von den USA betrieben) und GLONASS (von Russland betrieben). Weitere befinden sich im Aufbau: Galileo (EU) und BeiDou-2 (China) und einige mit lokaler Abdeckung wie NAVIC oder BeiDou-1 in Indien. Ein Empfänger, der mit Satelliten aus mehr als einer Konstellation arbeiten kann, hat mehr Satelliten zur Auswahl und wird schneller und genauer repariert.

  6. Qualität der Korrelatoren. Neue Hardware-Designs sind besser als alte und können Fragmente der GPS-Nachricht in einem verrauschten Signal besser erkennen. Ein weiterer Trick, den Telefone tun können, besteht darin, Signalfragmente zu erfassen und sie über das Internet an einen Server mit einem sehr guten Software-Korrelator weiterzuleiten und den vollständigen Almanach / die Ephemeride zu untersuchen. Dies ist als MSA Assisted GPS bekannt.

  7. Einige Telefone (und sogar einige Module) verwenden möglicherweise auch ein paar hinterhältige Tricks, um eine lange TTFX zu vermeiden oder zu verbergen. Da sie die ganze Zeit eingeschaltet sind, können sie das GPS kurz einschalten, ohne es dem Benutzer mitzuteilen, um den Standort und die Ephemeride ungefähr auf dem neuesten Stand zu halten. Andere zeigen möglicherweise eine aktuelle Position an, während sie noch auf eine echte Korrektur warten - was die meiste Zeit wie eine gute TTFX aussieht, aber schlecht aussieht, wenn sich herausstellt, dass die Position sehr falsch ist.

Der obige Punkt 1 ist das, was den größten Unterschied ausmacht, und normalerweise der entscheidende Punkt, der sich zwischen Basismodulen, weiterführenden Modulen und Telefonen unterscheidet. Die anderen machen normalerweise einen kleineren Unterschied, aber es kann tatsächlich eine sehr komplizierte Sache werden. Wenn Sie mehr darüber erfahren möchten, sollten Sie nach dem Begriff "GPS-Zeit bis zur ersten Korrektur" suchen.

Jack B
quelle
32
Zu Punkt 2: Zusätzlich zu WLAN kann das Telefon auch einen ungefähren Standort basierend auf den Mobilfunkbasisstationen erhalten, mit denen es in Kontakt steht.
Alphabetter
4
Ein Gerät kann auch die letzten bekannten Positionsdaten "zwischenspeichern", diese sofort verwenden und sie anpassen, wenn echte Daten eingehen. Mein Mobiltelefon erledigt dies mit seinem GPS.
Rdtsc
17
Zusätzlich zum Mobilfunknetz haben eine Reihe von Anbietern (einschließlich Google) Datenbanken mit den physischen Standorten von WLAN-Zugangspunkten erstellt, mit denen sie den Standort eines Geräts überraschend genau bestimmen können. Mein billiges Android-Tablet verfügt weder über GPS noch über einen Mobilfunkanschluss. Google Maps scheint jedoch immer genau zu wissen, wo ich mich befinde, solange ich mit einem WAP verbunden bin. Ich vermute, dass sie die Standorte der WAPs durch einen umgekehrten Prozess ermitteln - aus den Standorten der angeschlossenen Telefone und anderer Geräte, die über GPS verfügen.
Dave Tweed
5
@ ゼ ゼ ロ Jeder Frame dauert 35 Sekunden, aber der gesamte Almanach ist auf 25 Frames aufgeteilt und die Übertragung dauert 12-13 Minuten. Es ist wahr, dass Sie einen Fix aus Ephemeriden-Daten ohne den Almanach erhalten können, aber Sie benötigen den Almanach für 1) sehr alte Hardware, 2) genaue Korrektur von GPS-Zeit auf UTC und 3) Korrektur der ionosphärischen Verzögerung auf einigen Hardware.
Jack B
4
@ ゼ ゼ ロ Ummm. Mir war sehr klar, dass 12 Minuten für einen Einkanalempfänger waren. Ich sagte auch, dass Mehrkanalempfänger schneller sind. Die meisten modernen Receiver sind Mehrkanal-Receiver, aber ich habe sicherlich einige ältere Einkanal-Receiver - und sie benötigen die vollen 12 Minuten. Und wenn Sie einen einzelnen Kanal haben und eine Korrektur der ionosphärischen Verzögerung wünschen, gibt es keine Möglichkeit, diese schneller zu erhalten, als der vollständige Almanach verfügbar ist. Die Tatsache, dass Sie Mehrkanalmodule verwenden und ein dreiminütiges TTFX benötigen, bedeutet nicht, dass der andere Typ nicht existiert. Aber ich werde die Antwort aktualisieren, um zu sagen, dass der alte Typ selten ist.
Jack B
22

Das Betriebssystem des Mobiltelefons lädt die GPS-Almanachdaten (Satelliten-Ephemeriden und Statusinformationen) über das Mobilfunknetz über das Internet herunter und lädt sie viel schneller in das GPS-Modul, als dies für das Herunterladen von den GPS-Satelliten direkt mit 50 bps erforderlich wäre ( Ja, das sind 50 Bit pro Sekunde. GPS ist ziemlich altmodisch ( optimiert für den Betrieb bei sehr niedrigem SNR), was die Zeit bis zur ersten Fehlerbehebung erheblich verkürzt. Dies nennt man Assisted GPS. Es hat wahrscheinlich auch eine sehr genaue anfängliche Zeitreferenz vom Mobilfunkmodem (die Mobilfunkmasten werden normalerweise über GPS zeitsynchronisiert) sowie möglicherweise eine grobe Standortschätzung vom Mobilfunkmodem. All dies zusammen reduziert den Suchaufwand des Empfängers drastisch - er weiß, welche Satelliten er sehen sollte, sucht also nur nach diesen und muss nicht warten, bis die Satelliten senden die gesamte Nachricht.

alex.forencich
quelle
Es nimmt also im Grunde die "Synchronisation" aus dem Prozess heraus. Das GPS-Modul sucht den Satelliten anhand der vom Satelliten selbst gesendeten Daten, oder?
Anthropomorphe Dodekaeder
3
Es nimmt es nicht aus dem Prozess heraus, es beschleunigt es, indem es dem GPS-Empfänger eine gute Schätzung gibt, von der aus man beginnen kann.
alex.forencich
29
Die 50 bps liegen nicht nur daran, dass GPS alt ist. Es ist ein wesentlicher Bestandteil davon, wie GPS-Empfänger das extrem schwache Signal erkennen und wie alle GPS-Satelliten auf einer einzigen Frequenz senden können, aber dennoch unabhängig voneinander empfangen werden können. In einem GPS-Empfänger geht eine Menge komplizierter Dinge vor sich.
JRE
5
@TomTom: Nein, die Geheimhaltung von GPS wurde nie durch Unbekanntheit erreicht. Möglicherweise haben Sie an Selective Availability (SA) gedacht, dies war jedoch ein vorsätzlicher Positionierungsfehler.
MSalters
1
@TomTom: Das Streuspektrum von GPS sollte die Signale nicht verbergen. Es hat diesen Effekt für einfache HF-Empfänger, aber das war nicht der Punkt. Die Spread-Spectrum-Technik bietet Ihnen zwei Vorteile: einen Betrieb mit extrem niedrigen Signal-Rausch-Verhältnissen und eine gewisse Störfestigkeit. So gut wie jeder und sein Bruder wissen (und wussten schon vor langer Zeit, wann), welche Frequenz GPS verwendet. Es macht keinen Sinn, das, was bereits bekannt ist, zu verstecken. Nicht (leicht) eingeklemmt zu sein, war jedoch ein großes Plus. Es gibt (jetzt) ​​GPS-Störsender, aber damals war es viel schwieriger.
JRE
8

Ein Teil der Antwort hier ist, dass Handy-GPS nicht nur GPS ist. Das Mobilfunknetz verwendet auch andere Informationen für die Standortbestimmung, z. B. die Triangulation von Mobilfunkmasten und die Sichtbarkeit von WLAN-Netzen. Beispielsweise verfügt die nicht-zellulare Version des iPad Air über kein tatsächliches GPS, weiß jedoch mithilfe dieser Techniken, wo Sie sich in Ballungsgebieten befinden.

David Richerby
quelle
4
Die Frage war speziell, wie GPS funktioniert. Handys können nicht von Handytürmen aus triangulieren, da von diesen keine Standortinformationen verfügbar sind.
Transistor
6
@Transistor Die Frage vergleicht Standalone-GPS mit Handy-GPS und der Fragentitel fragt speziell, wie Handys GPS schneller ausführen als Standalone-GPS-Geräte. Und Wikipedia sagt, dass Mobiltelefone die Tower-Triangulation verwenden , um den Standort zu bestimmen. Ich bin mir nicht sicher, warum Sie sagen, dass keine Standortinformationen verfügbar sind: Sicher, der Turm gibt seinen Standort nicht bekannt, aber auch die Straßen geben seinen Standort nicht bekannt: Auf Ihrem Telefon ist eine Karte in einer Datenbank gespeichert.
David Richerby
3
@Transistor: Das Mobiltelefon führt keine Triangulation durch. Der Netzbetreiber tut dies.
Jörg W Mittag
2
@ JörgWMittag: Kommt auf das Netzwerk AFAICT an. Moderne Netzwerke bieten Lokalisierungsdienste als Teil von Enhanced 911 / E112.
MSalters
@DavidRicherby: Danke für den Link. Ich habe es zweimal gelesen, aber alles, was ich sehen kann, ist, dass der Standort des Telefons dem Netzwerk bekannt ist - nicht dem Telefon. Was habe ich vermisst?
Transistor
5

Wollte nur ein bisschen genauer beschreiben, was passiert, wenn die älteren Empfänger auf Daten warten. Mit anderen Worten, warum ist dieser Almanach (und die gespeicherte Position) so nützlich?

Die GPS-Signale sind sehr schwach. In Anbetracht der Entfernung liegt das Signal weit unter dem Grundrauschen, wenn es die Erde erreicht. Sie würden den Satelliten niemals direkt erkennen, wenn Sie lediglich einen Scope-Scan mit der richtigen Frequenz beobachten würden.

Der Empfänger erhält Informationen, indem er das eingehende Signal mit einem bestimmten Muster vergleicht (über eine FFT-Korrelation). Wenn das richtige Muster verwendet wird, wird die Korrelation ausgerichtet und die Daten können angezeigt werden.

Damit ein einfacher Empfänger alten Stils an diesen Punkt gelangt, muss der Korrelator des Geräts zwei Anforderungen erfüllen: die Frequenz der Nachricht vom Satelliten und die Phase der Nachricht (Aneinanderreihung der Muster). Wenn eine dieser Angaben falsch ist, ist die Korrelation nicht erfolgreich und es wird nichts erkannt. Die Bewegungen der Satelliten bedeuten, dass das empfangene Signal relativ großen Doppler-Verschiebungen unterworfen ist.

Mit einem vorhandenen Almanach und einer guten Vorstellung des aktuellen Standorts und der aktuellen Zeit kann der Empfänger die relativen Bewegungen von Satellit und Empfänger schätzen, um den größten Teil der Doppler-Verschiebung zu entfernen und der Frequenz etwas näher zu kommen. Das bedeutet, dass der Korrelator normalerweise einen Treffer erzielen kann, indem nur verschiedene Phasen für das Signalmuster ausprobiert werden. Diese Phasenraumsuche kann in wenigen Sekunden durchgeführt werden.

Wenn der Almanach fehlt oder keine Schätzung des aktuellen Standorts und der aktuellen Zeit vorliegt, muss das System verschiedene Phasen und Frequenzen ausprobieren, um Daten von jedem Satelliten zu erhalten. Da jetzt in zwei verschiedenen Dimensionen gesucht werden muss, kann es einige Minuten dauern, bis selbst ein Mehrkanalsystem 3 Satelliten mit brachialer Gewalt "findet".

Moderne Chipsätze können zusätzliche Signale und viele parallele Komparatoren verwenden, um die Suche zu beschleunigen, auch wenn kein A-GPS vorhanden ist. Ich vermute, dass der Chipsatz, den Sie auf einem Arduino-Schild erhalten, wahrscheinlich älter / billiger ist und diese neueren Funktionen nicht verwendet.

BowlOfRed
quelle
3

In den USA forderte die FCC, dass Mobilfunkbetreiber in der Lage sind, den Standort eines Anrufers zu identifizieren, wenn sie innerhalb von 6 Minuten nach dem ersten Telefonanruf bis zum 11. September 2012 Rettungsdienste innerhalb von 300 Metern anrufen.

Dies wurde in den vergangenen Jahren schrittweise eingeführt, und die Anforderung wurde in den späteren Jahren sowohl in Bezug auf die Entfernung als auch auf die Zeit bis zum Standort verschärft.

Die Mobilfunkunternehmen konnten dies nicht in abgelegenen Gebieten garantieren, in denen sich nur ein oder zwei Mobilfunkmasten in Kontakt mit dem Mobiltelefon befanden, und auch in städtischen Umgebungen, in denen Reflexionen und Gebäudedichte den Standort verhinderten, selbst wenn das Telefon mehrere Türme hatte, die es empfangen konnte. GPS-Chips konnten dies nicht innerhalb des Zeitrahmens bereitstellen, der bei einer ausreichend geringen Leistung erforderlich war, damit das Mobiltelefon noch kommerziell rentabel wäre (zu dem Zeitpunkt, als die Anforderung eingeführt wurde. Chipsätze sind jetzt, teilweise aufgrund der Anforderung, viel energieeffizienter und schneller dass jedes Telefon einen Teil oder den gesamten GPS-Chipsatz enthält). Darüber hinaus waren GPS-Chipsätze im Vergleich zu den anderen Telefonkomponenten sehr teuer.

Deshalb haben sie verschiedene konkurrierende Systeme entwickelt, die alle unter den Spitznamen "AGPS" für Assisted GPS fallen.

Die Technologie, die hinter diesen verschiedenen AGPS-Systemen steckt, ist teilweise sehr unterschiedlich.

Die billigsten zellularen AGPS-Systeme zeichnen mehrere Millisekunden des GPS-RF-Signals auf und senden es an den AGPS-Server, der dann, wenn er den ungefähren Standort des Telefons kennt, dieses GPS-RF-Snippet verwenden kann, um eine viel genauere Position zu bestimmen. Diese Telefone können ohne eine gute Mobilfunkverbindung keine GPS-Koordinaten erhalten.

Einige haben vollständige GPS-Chipsätze, aber das Telefon kann sie mit dem Almanach und der Ephemeride versorgen - zwei Informationen, mit denen der Chipsatz innerhalb von Sekunden eine Fehlerbehebung erhält -, wonach er seine normalen Methoden verwendet, um Positionsergebnisse zu erzielen. Mit der Zeit können diese Telefone ihre Position unabhängig von ihrem Netzwerk ermitteln.

Mit den meisten GPS-Chipsätzen können Sie Ephemeriden- und Almanach-Informationen in sie laden. Wenn Ihr Arduino-Gerät über eine Internetverbindung verfügt und Sie Zugriff auf einen AGPS-Server haben, können Sie Ihren GPS-Fix auf ähnliche Weise beschleunigen. Bei den meisten Projekten kann jedoch durch einfaches Hinzufügen einer Lithium-Knopfzelle an den rechten Stift des GPS-Empfängers das letzte Almanach- und Ephemeriden-Update beibehalten werden. Da die Änderungen über einen kurzen Zeitraum hinweg gering sind, wird der erste Fix as erheblich beschleunigt solange sich das Gerät nicht Tausende von Kilometern bewegt hat und alle paar Tage eingeschaltet wird.

Adam Davis
quelle