Be s ehr eibung
Synchronisation von Basisstationen über ein Netzwerk
Im Bereich der Materialverfolgung und Logistik besteht ein großer Bedarf an Systemen, die in der Lage sein sollen, die lokale Position von Gegenständen oder Personen zu bestimmen.
Funkbasierte lokale Positionsmesssysteme arbeiten meist der- art, dass ein mobiles Objekt mit einem Transponder versehen wird und die Umgebung des Objektes, also beispielsweise die Wände einer Werkshalle, mit mehreren Basisstationen ausgestattet wird. Der Transponder sendet dann zyklisch Signale aus, die von allen Basisstationen mit einem charakteristi- sehen Laufzeitunterschied empfangen werden. Durch Verrechnung dieser Laufzeitunterschiede wird auf die lokale Position des mobilen Objekts geschlossen. Nachteilig ist bei diesen Lösungen, dass es zur exakten Bestimmung der Laufzeitunterschiede in den Basisstationen zwingend notwendig ist, dass entweder die Uhren bzw. Taktsignale in den Basisstationen höchst synchron laufen, also beispielsweise teuere Frequenznormale verwendet werden müssen, und/oder zusätzliche, bezüglich ihrer Position exakt vermessene Referenztransponder zu benutzen sind.
Deshalb wird in der deutschen Patentanmeldung mit dem Aktenzeichen 103 36 084.0 ein lokales Positions essSystem (Local Positioning Radar System: LPR) für den Einsatz von Transportmitteln wie Kranen, Fahrzeugen, Trolleys, Hubwagen, Gabel- Staplern oder AGVs (Automated Guided Vehicles) vorgeschlagen, bei dem die Systemarchitektur umgedreht ist, das heißt, die Basisstation mobil gestaltet ist und die Transponder an einem festen Ort vorgesehen sind.
Dies bedeutet allerdings, dass die Signal verarbeitenden Basisstationen auf dem mobilen, zu ortenden Objekt installiert sein müssen und die ermittelten Koordinaten über WLAN an eine
am Rand der Anlage befindliche Zentrale übertragen werden müssen. Daraus ergibt sich wiederum der Nachteil, dass ein recht teueres und aufwändiges und zusätzlich mit einem WLAN ausgestattetes Gerät auf dem mobilen Objekt installiert werden muss. Anwendungen mit anspruchsvollen Anforderungen an kompakte Bauweise, Gewicht und Energieverbrauch können deshalb mit diesem System nicht abgedeckt werden. Außerdem wird das System bei einer sehr hohen Anzahl von zu ortenden Objekten relativ teuer.
Der Erfindung liegt deshalb die Aufgabe zugrunde, eine Systemarchitektur zu finden, die es erlaubt, mehrere Basisstation so zu koordinieren, dass sie sich nicht gegenseitig stören und einem zentralen AuswertungsSystem die gemessenen Trans- ponderentfernungen inklusive deren IDs effizient übergeben.
Diese Aufgabe wird durch die in den unabhängigen Ansprüchen angegebenen Erfindungen gelöst. Vorteilhafte Ausgestaltungen ergeben sich aus den abhängigen Ansprüchen.
Dementsprechend weist eine Anordnung eine Basisstation mit Mitteln zum Erzeugen eines Zeitwertes der Basisstation, einen Zeitserver mit Mitteln zum Erzeugen eines Zeitwertes des Zeitservers und ein, insbesondere paketorientiertes, asyn- chrones, Netzwerk zum Verbinden der Basisstation mit dem Zeitserver und mit weiteren Basisstationen auf. Die Mittel zum Erzeugen von Zeitwerten sind beispielsweise Zeitzähler, Uhren und/oder Quarze. Der Zeitserver kann als zusätzliche Hardware implementiert sein. Alternativ fungiert eine der weiteren Basisstationen als Zeitserver.
Von der BasisStation wird mittels einer über das Netzwerk übermittelten Abfrage vom Zeitserver bzw. dessen Mitteln zum Erzeugen des Zeitwerts der Zeitwert des Zeitservers abge- fragt. Der Zeitserver übermittelt daraufhin seinen Zeitwert in einer Antwort an die Basisstation zurück. Von der Basisstation wird dann ein Zeitschätzwert unter Berücksichtigung
des vom Zeitserver übermittelten Zeitwerts des Zeitservers und der, beispielsweise von der Basisstation gemessenen, Laufzeit von Anfrage und Antwort im Netzwerk ermittelt. Zum Durchführen dieser Schritte sind in der Anordnung entspre- chende Mittel und Elemente vorgesehen.
Insbesondere ist der Zeitschätzwert ermittelbar, indem zum Zeitwert des Zeitservers etwa oder genau die Hälfte der Laufzeit von Anfrage und Antwort hinzuaddiert wird.
Genauer kann der Zeitschätzwert unter Berücksichtigung eines seinem Zeitpunkt entsprechenden Zeitwertes der BasisStation ermittelt werden. Dem ist gleichwertig, dass ein nach den zuvor geschilderten Prinzipien ermittelter Zeitschätzwert unter Berücksichtigung eines seinem Zeitpunkt entsprechenden Zeitwertes der Basisstation korrigiert wird.
Bei der präziseren Ermittlung bzw. Korrektur des Zeitschätzwertes wird vorteilhaft der Zeitwert der BasisStation gegen- über dem Zeitwert des Zeitservers umso stärker gewichtet, je länger die Laufzeit von Anfrage und Antwort ist. Das resultiert daraus, dass die Präzision des Zeitwertes der Basisstation gegenüber der Präzision eines nur aus dem Zeitwert des Zeitservers und der Laufzeit von Anfrage und Antwort ermit- telten Zeitschätzwertes um so höher ist, je länger die Laufzeit von Anfrage und Antwort ist.
Vorzugsweise wird auch noch ein Offsetwert berücksichtigt, der ein Maß für die Zeit ist, die die Basisstation zur Er- mittlung des Zeitschätzwertes braucht.
Die Basisstation weist eine normalerweise anhand ihres Zeitwertes eingestellte Systemzeit auf. Diese wird dann vorteilhaft anhand des Zeitschätzwertes korrigiert.
Das Netzwerk ist vorzugsweise ein Ethernet oder ein WLAN.
Die Anordnung ist insbesondere eine Anordnung zur Positionsmessung, vorzugsweise ein Local Positioning Radar.
Dementsprechend weist die BasisStation Mittel zur Entfer- nungsmessung auf, über die Entfernungen insbesondere drahtlos und vor allem mit Radar messbar sind.
Vorteilhaft werden die Entfernungen mittels LaufZeitmessung gegenüber Transpondern gemessen.
Zur Messung von Positionen von mobilen Objekten, an denen die Transponder angeordnet sind, werden jeweils mehrere Entfernungen gemessen.
Dazu weist die Anordnung weitere Basisstationen auf, die ebenfalls in der beschriebenen Weise Zeitschätzwerte ermitteln, ihre Systemzeit damit korrigieren und sich dadurch miteinander synchronisieren. Dadurch können von den Basisstationen nacheinander Entfernungsmessungen durchgeführt werden, ohne dass sich die Entfernungsmessungen gegenseitig beeinflussen und ohne dass längere Totzeiten entstehen, in denen keine Entfernungsmessung durchgeführt wird.
Die BasisStationen sind vorzugsweise an festen, bekannten Po- sitionen angeordnet, während die Transponder sich frei im
Raum bewegen, wobei über Entfernungsmessung ihre Position bestimmt wird. Alternativ kann der Aufbau auch umgekehrt sein, so dass die Transponder an festen, bekannten Positionen angeordnet sind und die Basisstationen an den mobilen Objekten, die sich frei im Raum bewegen, so dass über Entfernungsmessungen die Position der Basisstationen bestimmt wird. Hierfür ist das Netzwerk dann vorteilhaft als drahtloses Netzwerk vorzusehen, insbesondere als WLAN.
Anfrage und Antwort können im Netzwerk mit einem binären
Übertragungsprotokoll übertragen werden. Alternativ kann das Übertragungsprotokoll auch in ASCII verfasst sein. Dadurch
ergibt sich zwar eine bessere Lesbarkeit, aber auch ein erhöhtes Datenaufkommen.
Die Anordnung kann vorteilhaft auch Mittel zur Prüfung, ins- besondere in Form einer CRClβ-Prüfung, von Fehlern der Übertragung von Anfrage und Antwort aufweisen.
Das Netzwerk kann Unternetzwerke aufweisen, wobei dann die Basisstationen zur Entfernungsmessung in Unterräumen auf die- se Unternetzwerke verteilt sind.
Vorteilhafte Ausgestaltungen des Verfahrens ergeben sich analog zu den vorteilhaften Ausgestaltungen der Anordnung und umgekehrt. Dabei sind jeweils für die Verfahrensschritte ent- sprechende Mittel vorzusehen und umgekehrt.
Weitere Vorteile und Merkmale ergeben sich aus der Beschreibung von Ausführungsbeispielen anhand der Zeichnung. Dabei zeigt
Figur 1 eine Anordnung zur Positionsmessung mit Basisstationen, Transpondern, einem Netzwerk und einem Zeitserver;
Figur 2 einen Synchronisationsablauf in der Anordnung nach Figur 1;
Figur 3 ein Messablaufdiagramm exemplarisch für vier Basisstationen;
Figur 4 die Struktur eines Übertragungsprotokolls im Netzwerk in formatierter Darstellung;
Figur 5 ein binäres Übertragungsprotokoll;
Figur 6 eine Anordnung mit einzelnen Unterräumen (Parzellen) .
Grundlegende Eigenschaften der im Weiteren beschriebenen Anordnungen und Verfahren bestehen darin, dass
- ein effizientes und geschwindigkeitsoptimiertes Protokoll zwischen den Basisstationen und dem Zentralserver hohe Messraten ermöglicht,
- die zu ortenden Ziele mit einem leichten und energiesparenden Transponder in Form eines Tags ausgestattet werden können,
- viele verschiedene Ziele ohne aufwendige Kommunikation und Synchronisation gleichzeitig gemessen werden können,
- zum ersten Mal mobile Tags in Größe einer Streichholzschachtel mit einer Genauigkeit von 10cm in Echtzeit geortet werden können,
- das System beliebig skalierbar ist und beliebig viele zu- sammenhängende Unterzellen bzw. Unterräume gebildet werden können.
Wie in der deutschen Patentanmeldung mit dem Aktenzeichen 103 36 084.0 dargestellt, werden beim Local Posititioning Ra- dar zwischen einer beweglichen Basisstation und mindestens drei am Rand montierten festen Transpondern jeweils die Entfernungen gemessen und daraus die kartesischen Koordinaten der BasisStation berechnet. Die Daten fallen hierbei auf der Basisstation an und müssen über ein zusätzliches WLAN-Modul zur Datenbank transferiert werden. Da nur eine Basisstation zur gleichen Zeit senden darf, müssen sich mehrere in einem Raum befindliche Basisstationen drahtlos synchronisieren und dies ist nur bei einer Anzahl <10 mit akzeptabler Messrate möglich. Außerdem muss der Ein- und Austritt einer Basissta- tion in einen bestimmten Raum möglich sein, .was an die Protokollstruktur höhere Anforderungen stellt.
Beim hier beschriebenen und in Figur 1 dargestellten Ausführungsbeispiel sind Basisstationen (Base Station 1, Bs2, ..., Bs8) an festen Orten eingerichtet und werden über ein Ethernet-Netzwerk (Ethernet Cable, LAN, Switch) synchronisiert.
Die Transponder (idl, id2, id5, idl5, id32, id45, id55, id64) sind im Folgenden mobil und können aufgrund des in der deutschen Patentanmeldung mit dem Aktenzeichen 103 36 084.0 beschriebenen Frequenzmultiplex-Verfahrens zur gleichen Zeit senden und auch ausgewertet werden. Es ist dabei keinerlei Kommunikation zwischen Basisstationen und Transpondern erforderlich. Die Basisstationen senden nacheinander und schicken jeweils eine Liste der gemessenen Entfernungen, Pegel, Geschwindigkeiten und die zugehörigen Transponder-Ids über das Ethernet-Netzwerk zu einem LPR-Server (PC) , auf dem ein Ex- tended Kaiman Filter zur Koordinatenbestimmung läuft. Außerdem dient der LPR-Server gleichzeitig als Datenbank und Diagnosegerät sowie als Knotenpunkt zwischen verschiedenen LPR- Unterzellen.
Um die Daten zu dem LPR-Server in Form eines zentralen Auswertungsrechners zu übermitteln, wird eine Netzwerkcontroller-Platine eingesetzt, die die Daten der Basisstation über eine RS232 Schnittstelle einliest und sie über Ethernet an den LPR-Server sendet. Der wesentliche Vorteil von Ethernet ist die große Verbreitung und Standardisierung dieses Protokolls. Hierdurch ist es in vielen Fällen möglich, auf schon bestehende LAN Infrastruktur zurückzugreifen. Damit entfällt das in den meisten Fällen sehr aufwendige und teure Verlegen von speziellen Datenleitungen.
Damit die Basisstationen sich bei der Messung nicht gegenseitig stören, müssen sie synchronisiert werden. Die Synchronisation erfolgt über einen zentralen Zeitserver, auf dessen Zeit sich die Basisstationen synchronisieren. Da die Laufzeit bei Ethernet im Messaufbau meist zwischen 2ms und 7ms schwankt, was sich bei ungünstigen Bedingungen noch wesentlich erhöhen kann, ist die Synchronisation nicht durch Senden eines einzelnen Paketes möglich. Deshalb wurde ein Algorith- mus entworfen, der die verschiedenen Paketlaufzeiten berücksichtigt.
Um dies zu realisieren wird eine weitere Netzwerkcontoller- Platine (Ethernutplatine) in das Netzwerk eingefügt, die als Zeitserver (Time Server) dient. Auf jeder Ethernutplatine laufen nun Mittel zum Erzeugen eines Zeitwerts der Basissta- 5 tion in Form eines nun ein Timer, die mit Mitteln zum Erzeugen eines Zeitwerts des Zeitservers in Form eines Timers auf dem Zeitserver synchronisiert werden. Dabei besitzen alle Timer die gleiche Zykluszeit, die der Zeit entspricht, die alle Basisstation benötigen, um hintereinander eine Messung durch- 10 zuführen.
Um die Timer zu synchronisieren fragen die Ethernutplatinen, die mit den DSP's verbunden sind, den Zeitwert, also den Zählerstand, des Zeitservers ab. Der Zeitserver empfängt diese
15 Pakete und sendet seinen Zählerstand zurück. Dabei merkt sich die Ethernutplatine den Zählerstand, bei dem sie die Anfrage in Form eines Anfragepakets zum Zeitserver gesendet hat als Tsβnd und den Zählerstand, zu dem sie das Antwortpaket erhält, als Tge, . Dieser Ablauf ist in Figur 2 dargestellt. Der Zeit-
20 Server schreibt seinen Zählerstand T
Serv-- in das Antwortpaket. Anhand der Laufzeit von Anfrage und Antwort und des übermittelten Zählerstandes des Zeitservers, kann man den aktuellen Zählerstand des Zeitservers folgendermaßen berechnen:
Da die Laufzeit der Anfrage von der Basisstation zum Zeitserver im Allgemeinen nicht gleich der Laufzeit der Antwort vom Zeitserver zur Basisstation ist, ist Tv nur ein Zeitschätz-
30 wert des Zeitserverzählerstandes. Die Zeit, die die Ethernutplatine übernimmt errechnet sich dabei nach
Tπ T=* $-R. )t v* p+o
35
p ist dabei ein Faktor, der angibt wie stark der geschätzte Zeitserverzählerstand und wie stark der eigene Zählerstand der Basisstation in die Schätzung mit einfließt. Man kann dabei davon ausgehen, dass die Schätzung des Zeitserverzählerstands besser ist, wenn die Laufzeit geringer ist. Daraus ergibt sich Formel
P= b+ TeFsT-nd)
für die Berechnung des Faktors p. o ist ein Offset, der die Zeit berücksichtigt, die zur Berechnung der Formeln und zum einstellen des Zählers benötigt wird, a und b sind zwei Faktoren, die den Verlauf der Funktion und damit den Wert von p angeben.
Um eine BasisStation nun messen zu lassen wird ein Interrupt von dem Timer einer Ethernutplatine erzeugt, der ein Kommando zur Durchführung einer Messung über die serielle Schnittstelle zum DSP sendet. Dieser Vergleichswert ist in jeder Basis- Station unterschiedlich eingestellt, so dass sich für vier BasisStationen beispielsweise das in Figur 3 dargestellte Messablaufdiagramm ergibt.
Ein Beispiel für ein mögliches Übertragungsprotokoll für die Übertragung von Daten einer jeden Basisstation zum LPR-Server in Form des zentralen Auswertungsrechners ist in Figur 4 gezeigt und besteht aus ASCII Zeichen, die über die serielle Schnittstelle übertragen werden. Dabei ist die Größe der Nutzdaten auf 25 Byte beschränkt. Der Overhead beträgt 7 Byte.
Dieses Protokoll ist sehr einfach und für geringe Datenmengen bestens geeignet. Außerdem ist es durch das Kodieren der Daten als ASCII gut möglich dieses Protokoll mitzulesen, was die Fehlersuche vereinfacht.
Für große Datenmengen ist dieses Protokoll jedoch nicht geeignet, da es einen recht hohen Overhead erzeugt. Deswegen wurde ein binäres Übertragungsprotokoll nach Figur 5 entwickelt.
Innerhalb dieses binären Protokolls werden nun keine ASCII Zeichen mehr verwendet. Das verschlechtert zwar die Lesbarkeit des Protokolls, dafür ist die Übertragung, besonders bei großen Datenmengen, wesentlich effizienter. Ein Grund dafür ist das Feld Anzahl. Ist z.B. schon ein Feld mit Transponder- daten vorhanden, so erzeugt ein weiteres Paket mit Transpon- derdaten keinen weiteren Overhead. Es werden lediglich die Nutzdaten in das Feld Daten eingefügt und die Anzahl um eins erhöht.
Um die Effizienz dieses Übertragungsprotokolls zu verdeutlichen, wird angenommen, dass mit diesem Protokoll nun die Daten von 64 Transpondern übertragen werden sollen. Daraus folgt ein Header von 15 Byte. Hinzu kommen die Daten der po- tenziell 64 Transponder, die jeweils vier Byte für die Distanz, vier für den Pegel, vier für die Geschwindigkeit und zwei für die Transponder-ID versenden. Daraus ergibt sich ein Datenvolumen von 64*16 = 896 Byte. Zusammen mit den 4 Byte für das Feld "For Future Use" und den 2 Byte für die CRC- Summe erhält man eine Gesamtgröße von 917 Byte. Der Overhead beträgt somit 2,3%. Das ASCII Protokoll hatte dagegen einen Overhead von 28%. Die ungünstige Zahlendarstellung erhöht das Datenvolumen zusätzlich. Das ASCII-Protokoll benötigt 10 Byte zur Darstellung einer Zahl im float Format, während beim bi- nären Übertragungsprotokoll nur vier Byte benötigt werden.
Durch eine CRC16-Prüfung ist es jetzt auch möglich, Fehler bei der Übertragung festzustellen. Dies ist bei Verwendung eines ASCII-Protokolls nur bedingt möglich. CRC ist ein sehr sicheres Verfahren um Fehler zu entdecken und wird z.B. auch bei der Übertragung von IP-Paketen oder bei der Speicherung auf Disketten verwendet. Die Größe eines Paketes wurde auf
IKbyte beschränkt. Dies macht es möglich, solche Pakete auch mit der Ethernutplatine zu bearbeiten.
Ein Datenpaket enthält folgende Bestandteile: - Header: Informiert darüber, um welche Daten es sich handelt und wie groß das Paket ist. Im Einzelnen setzt er sich aus den folgenden Feldern zusammen: - Startsequenz: Sind 4 Byte, die den Start eines Paketes signalisieren. Hier wurde 0x43545053 gewählt. - Version: Enthält die Version des Protokolls (hier 1) . - Header length: Enthält die Anzahl der ID-Felder. - Data length: Enthält die Anzahl der Datenbytes. - ID_Feld_x: Enthält Angaben über die Daten. Dabei können mehrere ID-Felder innerhalb eines Paketes verschickt werden. - ID1: Gibt die primäre ID an. Die IDl-Kennung "vier" bedeutet zum Beispiel, dass es sich um Informationen handelt. - ID2: Gibt die sub ID an. Die ID2-Kennung "drei" der In- formationen bedeutet zum Beispiel, dass es sich bei den zugehörigen Daten um den Cycle counter und die Cycle time des LPR-Systems handelt . - Anzahl: Gibt an, wie viele Daten mit der gleichen ID folgen. - Adresse: Gibt an, an welcher Stelle des Datenfeldes sich die Daten im Bezug zu der vorangegangenen ID befinden.
- Daten: Enthält die gesamten Daten des Paketes.
- For Futur Use: Ist ein Feld, dass für Änderungen am Protokoll oder für Tests benutzt werden kann, die zum Zeitpunkt der Protokollerstellung noch nicht vorhersehbar waren.
- CRC: Ist ein Feld, in dem eine Prüfsumme enthalten ist. Mit Hilfe dieser kann man mit hoher Wahrscheinlichkeit feststellen, ob während der Übertragung ein Fehler aufgetreten ist.
Für die Ortung in unterteilten Arealen, z.B. größeren Gebäuden und Häusern, ist es sinnvoll aufgrund der stets anzustre-
benden Echtzeitfähigkeit das System in mehrere voneinander unabhängige Ortungseinheiten in Form von Unterräumen aufzuteilen. Dies ist in Figur 6 dargestellt und wird wie folgt realisiert. Jeder Unterraum (Celli, Cell2, Cell3, Cell4) ist mit einer Recheneinheit (Computing Unit z.B. PC104) ausgestattet, die die zugehörigen Basisstationen auswertet und das Kaimanfilter für die in diesem Raum befindlichen Transponder rechnet. In jeder dieser Recheneinheiten wird somit momentan alle 200ms eine Liste mit allen in dem Raum befindlichen Transponder-Ids und deren Koordinaten erstellt. Die Recheneinheiten sind alle untereinander vernetzt und die Daten werden von einem zentralen LPR-Server verwaltet und abgespeichert. Dort liegt also gesammelt die Koordinaten-Information über die sich in dem Gebäude bzw. Areal befindlichen Transponder vor. ProtokollStandard ist auch hier TCP/IP, was den Vorteil hat, dass ein ggf. vorhandenes bzw. vorinstalliertes Rechnernetzwerk auch für das LPR mitgenutzt werden kann. Die Echtzeitanforderungen an den Datentransfer zwischen den Unterräumen sind gering, weil es hier nicht mehr um eine Auswertung, die bereits in der Untereinheit abgeschlossen ist, sondern lediglich um mit Zeitstempel versehenen Daten- Transfer geht.
Die wesentlichen praktischen Vorteile der in der Erfindung beschriebenen technischen Merkmale sind folgende:
- Kleine kompakte Transponder sind in großer Zahl ortbar und können aufgrund ihrer geringen Größe an der Kleidung von Personen etc. befestigt werden. - Ortungssystem mit der Möglichkeit zur Bildung von Unterräumen zu Gunsten der Messrate.
- Echtzeit-optimiertes und effizientes binäres Datenprotokoll zum Datenaustausch zwischen BasisStationen und Rechner (hohe Messrate, gute Synchronisation) . - Energiesparende Transponder-Tags, die mit kleiner Batterie versorgt werden können.
Billige Ortungseinheiten (Transponder) , eignet sich besonders, wenn viele Objekte in einem Gebäude gleichzeitig geortet werden sollen.
Einsetzbar in der Sicherheitstechnik (neben Identifikation erfolgt gleichzeitig Ortung) mit geringem Überlistungs- Risiko .