Es scheint, dass sich Ihr Problem sehr gut für die Verwendung eines CDMA- Schemas eignet .
Beginnen wir mit einigen Eigenschaften von (DSSS) CDMA. (Direct Sequence Spread Spectrum, Code-Division-Mehrfachzugriff). Es ist ein Schluck, aber es ist wirklich einfach zu implementieren.
In CDMA besteht Ihr Puls (im Basisband) tatsächlich aus vielen verketteten " Chips ", wie sie genannt werden. Die Chips sind nur 1s oder -1s von fester Dauer. Zum Beispiel könnte Ihre Chipping-Sequenz [1 -1 1 -1 -1 -1 1] sein. Sie würden diese Chipping-Sequenz verwenden, um Ihren Träger zu modulieren.
Sie können jedoch nicht einfach Ihren Chipping-Code erstellen. Was Sie tun möchten, ist Chipping-Codes zu verwenden, die die sehr schöne Eigenschaft haben, dass ihre Autokorrelationsfunktion eine Delta-Funktion wie folgt ist:
(Entsprechend ist ihre spektrale Leistungsdichte weiß). Sie können beispielsweise die Verwendung von Barker-Sequenzen als Chipping-Code (normalerweise im Radar verwendet) oder die Verwendung von Gold-Codes untersuchen . In der Praxis bedeutet dies jedoch, dass Sie die maximale Korrelationsbewertung in Ihrem Empfänger erhalten, NUR wenn der Code des Empfängers genau mit dem übertragenen Code übereinstimmt, andernfalls Null .
Wie hilft dir das? In Ihrem Empfänger würden Sie kontinuierlich einen Korrelator ausführen. Der Korrelator würde ein laufendes Punktprodukt seines eigenen lokalen Codes ausführen, mit allem, was empfangen wird. Stellen Sie sich nun vor, Sie empfangen eine übertragene Wellenform von Ihrem Stift und eine zweite Wellenform von einer Reflexion. Während der Korrelator Ihres Empfängers ausgeführt wird, gibt er einen Spitzenwert, wenn sein eigenes Codewort genau mit Ihrem Code aus dem Stift übereinstimmt. Dadurch wird Ihr Detektor auf diesen bestimmten Verzögerungswert eingestellt. Nun, hier ist , wo Sie die Vorteile einer nahes Delta Autokorrelationsfunktion des Codes ernten: Das reflektierte Signal wird auch anwesend sein und auch seine Skalarprodukt mit den Empfängern locked Code genommen haben, aber es gibt null oder nahe Null Punktzahl, da es orthoginal istoder nahezu orthogonal zu dem verzögerten Code, auf den sich Ihr Empfänger bereits festgelegt hat.
Wenn Sie dagegen einen nicht codierten Trägerimpuls gesendet hätten, wären Sie einer konstruktiven oder destruktiven Interferenz ausgeliefert, die abfällt, wenn genau Ihr Impuls auf der Detektorebene Ihres Empfängers seinen Höhepunkt erreicht, und somit fehlerhafte TDOAs erhalten.