Nach oben

Zwei Applets zur Veranschaulichung des Prinzips der Kreuzkorrelation in GPS-Empfängern

 

Oder vielleicht nur direkt zur Erläuterung des Prinzips der Kreuzkorrelation ?

Zur Erläuterung des obigen Applets:

Die obige Simulation soll einige Teilaspekte und Prinzipien nachahmen, die es ermöglichen, dass ein GPS-Empfänger aus einer komplizierten Mischung der Empfangssignale mehrerer GPS-Satelliten - die zu gleicher Zeit auf der gleichen Frequenz abstrahlen ! - die Entfernungen zu diesen Satelliten bestimmen kann.

Zunächst werden durch Anklicken der Schaltfläche "Neue Signalmuster erzeugen" für drei Satelliten drei zugehörige Muster erzeugt. Sie bestehen aus einer Zufallsfolge der Werte +1 und -1. Es kann angenommen werden, dass die Satelliten ihre Signalfolgen, die für die einzelnen Satelliten charakteristisch sind  wie Fingerabdrücke, über die eingebauten Sender abstrahlen können. Entsprechend der verschiedenen Entfernungen der Satelliten vom Empfänger auf der Erde, werden die Signalfolgen mit jeweils einer anderen zeitlichen Verzögerung am Empfänger eintreffen und sich dort zu einem Summensignal mit einem komplizierteren Muster addieren.

Der Empfänger soll nun durch geeignete Analyse des Empfangssignals die Verzögerungen für jedes Einzelsignal ermitteln. Wenn dies gelingt, sollten sich daraus durch Multiplikation mit der Lichtgeschwindigkeit die Entfernungen zu den drei Satelliten berechnen lassen.

In der obersten Abbildung ("Grafikzeile") sieht man die Pulsfolge des ersten Satelliten und in der Zeile darunter (2. Grafikzeile) ist diese Pulsfolge mit ihrer zeitlichen Verzögerung infolge der Signallaufzeit bis zum Empfänger dargestellt. Die Verzögerung lässt sich über den Schieberegler rechts daneben beliebig verändern. Die Veränderung kann statt über den Schieberegler auch durch Eintragen eines entsprechenden Zahlenwertes (zwischen 0 und 200) in das zugehörige Textfeld links neben der Grafik der Pulsfolge erreicht werden.

In der dritten und vierten Zeile finden sich die Signalfolge des zweiten Satelliten (3. Zeile) und die mit einer anderen zeitlichen Verzögerung beim Empfänger eintreffende Folge (4. Zeile). Mit dem zugehörigen Schieberegler rechts oder dem entsprechenden Textfeld links kann diese Verzögerung unabhängig von den anderen Laufzeiten verändert werden.

Die Zeilen 5 und 6 enthalten die entsprechenden Impulsfolgen des 3. Satelliten. Mit dem zugehörigen Schieberegler oder dem Textfeld lässt sich auch diese Zeitverzögerung beliebig ändern.

In der 7 Grafikzeile sieht man die Summe der verzögerten Signale wie sie der Empfänger registriert.

Bei Betätigen der einzelnen Schieberegler ist die Auswirkung auf die verzögerten Impulsfolgen unmittelbar zu sehen. Auch das Summensignal am Empfängereingang verändert sich dabei entsprechend.

Über der Schaltfläche "Neue Signalmuster erzeugen" lassen sich auch neue Zufallsfolgen für alle drei Satelliten erzeugen. Dies ist natürlich bei den realen GPS-Satelliten nicht der Fall, weil jeder sein charakteristisches Muster (seinen Fingerabdruck) als Erkennungsmerkmal beibehält. Beim Spielen mit dem Applet ergibt sich aber so die Möglichkeit, auch andere Signalmuster auszuprobieren. Der   Rechner generiert bei jedem Anklicken dieser Schaltfläche neue Zufallsfolgen für die drei "Satellitensignale". Es ist allerdings nicht vorgesehen ein "Wunschmuster" zu erzeugen.

Die unterste Grafik mit dem Titel "Ergebnis der Kreuzkorrelation" zeigt ein sehr kompliziertes Muster, das aus dem Muster am Empfängereingang und den "Fingerabdrücken" der drei Satellitensignale berechnet wird. Die drei Linien (rot grün und magenta) sind durch je eine herausragende Zacke (Peak) charakterisiert, die sich bei Betätigen der Schieberegister entsprechend mitbewegt.

Bei der Kreuzkorrelation wird das Eingangssignal am Empfänger mit dem "Fingerabdruck" eines der Satelliten Punkt für Punkt multipliziert und die Summe aus allen diesen Produkten gebildet.

Der entstandene Summen-Wert wird festgehalten. Danach wird der "Fingerabdruck" zur Nachbildung einer Zeitverzögerung immer wieder um eine Pulslänge nach rechts verschoben. Nach jeder solchen Verschiebung wird erneut  die Summe der Produkte gebildet und notiert. Es wird also das Empfängersignal über die ganze Länge der Impulsfolge mit einem zunehmend weiter nach rechts verschobenen - also zunehmend zeitverzögerten - "Fingerabdruck" verrechnet.

Auf diesem Wege entsteht eine Reihe von Zahlen, die man gegen die Verzögerungszeit auftragen kann. Man bezeichnet diese Folge von Werten in ihrer Abhängigkeit von der zugehörigen Verzögerungszeit als "Kreuzkorrelationsfunktion".

Es zeigt sich nun, dass von diesen Werten ein einziger die anderen überragt. Dies ist genau für diejenige Produktsumme der Fall, deren Rechtsverschiebung der Laufzeitverzögerung des Signals vom Satellit zum Empfänger gleich ist.

Wenn man also in der Korrelationsfunktion nach diesem Maximalwert sucht und nachsieht, bei welcher Zeitverschiebung er entstanden ist, hat man damit gleichzeitig die Signallaufzeit bestimmt (wenn man annimmt, dass die Uhr im Satellit und die im Empfänger synchronisiert wären !) .

Das Ganze mag - mit meinen Worten beschrieben - etwas verwirrend klingen. Deshalb habe ich mir noch das nachfolgende Applet ausgedacht, damit Sie sich mit dem Prinzip der "Kreuzkorrelation" spielend beschäftigen und sich die Vorgänge anschaulich machen können .

Es werden von oben nach unten dargestellt : 1. Das Signal im Empfänger  und   2. Das Signalmuster des zweiten Satelliten aus dem 1. Applet .

Mit dem Schieberegler rechts - oder durch Editieren des Zahlenwertes im Textfeld darunter - kann nun dieses Muster - als Simulation einer Laufzeitverzögerung - nach rechts und links verschoben werden. Dabei bedeuten größere Beträge der Verschiebung eine höhere Laufzeit des Signals vom Satellit zum Empfänger, d.h. der Satellit wäre weiter entfernt.

Zur Berechnung des "Ergebniswertes" wird jetzt das Empfangssignal mit dem verschobenen Satellitenmuster multipliziert. Die Multiplikation erfolgt "Punkt für Punkt", d.h. es werden jeweils die beiden Signalwerte eines einzigen Zeitwertes (in den beiden Grafiken jeweils untereinander liegenden Werte = Punkte) multipliziert und am Ende all diese Produktwerte addiert.

Damit wenigstens ausschnittsweise die Zahlen nachprüfbar sind, werden die Stellen 50 bis 57 (von den insgesamt 200 Stellen) in eigenen Textfeldern angezeigt. In der obersten Reihe stehen die Werte des Empfängersignals, in der zweiten Reihe die Werte des zeitverzögerten Satellitenmusters und darunter die Produktwerte ... also  2 · -1 = -2 oder -2 · -1 = 2  usw.

Das Aufsummieren aller 200 Werte der dritten Reihe (einschließlich der nicht angezeigten) führt zum "Ergebniswert" im Textfeld ganz unten rechts.

Bei Betätigen des Schiebereglers (oder Editieren des Textfeldes darunter) kann man nun beobachten, wie sich dieser Ergebniswert verändert - und man kann nach derjenigen Verschiebung fahnden, die zum maximalen Zahlenwert führt. Notfalls kann man ja oben im ersten Applet auch etwas "spicken", wenn die Geduld nicht ausreichen sollte.

Diese Seite wurde am 15.6.2000 erstellt,

Die letzte Aktualisierung erfolgte am 07.01.2002

Zurück zu den Applets