CN107764258A | 2018-03-06 | |||
US20170336228A1 | 2017-11-23 | |||
US20160047675A1 | 2016-02-18 |
Ansprüche: 1. Verfahren zur Positionsbestimmung mittels Trägheitsnavigation, bei dem aus einer bekannten Ausgangsposition (104) und Ausgangsorientierung durch Erfassen von Beschleunigungen und Drehraten eine aktuelle Position (103) bestimmt wird, umfassend die Schritte: Bereitstellen von Sensoren (10) zum Erfassen von Beschleunigungen und Drehraten; Berechnen der über einen Zeitraum auf die Sensoren (10) wirkenden Beschleunigungen und Drehraten entlang bzw. um drei Sensorachsen; dadurch gekennzeichnet, dass aus den Daten der einzelnen Sensoren (10) jeweils eine Position ermittelt wird und die Vektorkomponenten der ermittelten Positionen anschließend gewichtet addiert werden, wobei die Gewichte durch Kalibrierung ermittelt werden. 2. Verfahren nach Anspruch 1 , dadurch gekennzeichnet, dass zur Ermittlung der aktuellen Position eine nichtlineare Kombination der Vektorkomponenten der Positionen einer Vielzahl von Sensoren (10) gebildet wird, wobei die Vektorkomponenten und jeweils mindestens die zweite Potenz davon separat gewichtet aufsummiert werden. 3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass zur Kalibrierung aus einer Vielzahl von Sensorkombinationen für jede Koordinatenrichtung eine Anzahl von Sensorkombinationen ausgewählt wird, von denen jede mindestens ein Gütekriterium erfüllt. 4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass zur Erfüllung des Gütekriteriums für jede Koordinatenrichtung 4.1. am Ende der Kalibrierung die Summe der Abweichungen der Koordinaten der Positionen der einzelnen Sensoren (10) der jeweiligen Sensorkombination vom tatsächlichen Wert der Koordinate der aktuellen Position unterhalb eines definierten Grenzwertes liegt; und /oder 4.2. am Ende der Kalibrierung die Abweichung des Schwerpunkts der Koordinaten der Positionen der einzelnen Sensoren (10) der jeweiligen Sensorkombination vom tatsächlichen Wert der Koordinate der aktuellen Position unterhalb eines definierten Grenzwertes liegt. 5. Verfahren nach Anspruch 3 oder 4, dadurch gekennzeichnet, dass zur Erfüllung des Gütekriteriums für jede Koordinatenrichtung die über den Kalibrierzeitraum integrierte Summe der Abweichungen der einzelnen Koordinaten der Positionen der zur Sensorkombination gehörigen Sensoren (10) vom tatsächlichen Wert der Koordinate der aktuellen Position unterhalb eines definierten Grenzwertes liegt. 6. Verfahren nach einem der Ansprüche 3 bis 5, dadurch gekennzeichnet, dass eine Anzahl von Sensorkombinationen ausgewählt wird, die zu verschiedenen Zeitpunkten während der Kalibrierung mindestens ein Gütekriterium erfüllen. 7. Verfahren nach einem der Ansprüche 3 bis 6, dadurch gekennzeichnet, dass eine vorgegebene minimale und/oder maximale Anzahl von Sensorkombinationen, die das Gütekriterium erfüllen, ausgewählt wird. 8. Verfahren nach einem der Ansprüche 3 bis 7, dadurch gekennzeichnet, dass zur Bestimmung der Gewichte 8.1. für jede der ausgewählten Sensorkombinationen eine Raumkoordinate des Schwerpunkts der entsprechenden Koordinaten der aktuellen Positionen der einzelnen Sensoren (10) der Sensorkombination berechnet wird, und/oder 8.2. eine Raumkoordinate des Schwerpunkts der Schwerpunkte der entsprechenden Koordinaten berechnet wird, und/oder 8.3. für jede Koordinatenrichtung die Abweichungen der entsprechenden Koordinaten der aktuellen Positionen der einzelnen Sensoren (10) der ausgewählten Sensorkombinationen vom tatsächlichen Wert der entsprechenden Koordinate der aktuellen Position verwendet werden, und/oder 8.4. für jede Koordinatenrichtung ein überbestimmtes Gleichungssystem gelöst wird. 9. Verfahren nach einem der Ansprüche 3 bis 8, dadurch gekennzeichnet, dass die Gewichte der Sensoren (10) für jede Koordinate aus Koeffizienten einer Linearkombination von entsprechenden Koordinaten der zu den Sensoren (10) gehörigen Positionen gebildet werden. 10. Vorrichtung zur Positionsbestimmung mittels Trägheitsnavigation, umfassend eine Vielzahl von Sensoren (10) zum Erfassen von Beschleunigungen und Drehraten entlang bzw. um ihre jeweilige Sensorachse, und eine Auswerteeinrichtung (13) zur Berechnung einer aktuellen Position aus den erfassten Beschleunigungen und Drehraten, dadurch gekennzeichnet, dass die Auswerteeinrichtung (13) derart gestaltet ist, dass sie aus den Daten der einzelnen Sensoren (10) jeweils eine Position ermittelt und die Vektorkomponenten der ermittelten Positionen anschließend gewichtet addiert, wobei die Gewichte durch eine Kalibrierung der Sensoren (10) ermittelt sind. 11. Vorrichtung nach Anspruch 10, dadurch gekennzeichnet, dass die Auswerteeinrichtung zur Durchführung des Verfahrens nach einem der Ansprüche 1 bis 9 ausgestaltet ist. 12. Vorrichtung nach Anspruch 10 oder 11, gekennzeichnet durch Mittel zur thermischen Entkopplung der Sensoren (10) von der Umgebung und /oder durch Thermoelemente zum Ausgleich von Temperaturänderungen. 13. Vorrichtung nach einem der Ansprüche 10 bis 12, gekennzeichnet durch eine Einrichtung zur mechanischen Dämpfung der Sensoren (10) 14. Vorrichtung nach einem der Ansprüche 10 bis 13, dadurch gekennzeichnet, dass sie in einem Raum-, Luft-, Land- oder Wasserfahrzeug oder Flugkörper verwendet wird und/oder als transportables Navigationsgerät für Personen und/oder zum Einsatz unter Wasser ausgebildet ist. 15. Kalibriersystem, umfassend eine Vorrichtung nach einem der Ansprüche 10 bis 14 und eine Kalibriereinheit zum Kalibrieren der Vorrichtung nach einem der Ansprüche 3 bis 9. |
Trägheitsnavigation, und Kalibriersystem
Die Erfindung betrifft ein Verfahren zur Positionsbestimmung mittels
Trägheitsnavigation, bei dem aus einer bekannten Ausgangsposition und
Orientierung durch Messung von Beschleunigungen und Drehraten eine aktuelle Position bestimmt wird. Weiterhin betrifft die Erfindung eine Vorrichtung zur Positionsbestimmung mittels Trägheitsnavigation mit einer Vielzahl von Sensoren zur Messung von Beschleunigungen und Drehraten. Ferner betrifft die Erfindung ein Kalibriersystem zum Kalibrieren der Vorrichtung.
Die Ermittlung der aktuellen räumlichen Position eines Objekts wird häufig über globale oder regionale satellitengestützte Positionsbestimmungssysteme (GNSS) realisiert, wie z. B. GLONASS, Galileo, GPS, Beidou, IRNSS oder QZSS, und entsprechende Empfänger. Die Anwendbarkeit der Technologie im Bereich der Navigation ist jedoch auf Situationen beschränkt, in denen ein Empfang der Signale gewährleistet ist. Aufgrund der relativ geringen Sendeleistung und der daraus resultierenden geringen Feldstärke der Satellitensignale stellen
Abschirmungen jeglicher Art ein massives Flindernis für die Funktionsweise eines GNSS dar.
Neben dieser physikalisch begründeten Einschränkung, die die satellitengestützte Navigation beispielsweise in Gebäuden, unter der Wasseroberfläche und im Untertagebau empfindlich stören oder auch unmöglich machen kann, stellen elektromagnetische Störsender eine weitere Gefahr bei der Positionsbestimmung mittels GNSS dar. Beispielsweise können sogenannte Spoofer das Satellitensignal manipulieren, während sogenannte Jammer den Empfang des Signals partiell oder vollständig stören oder unterbinden können. Trägheitsbasierte Navigationssystemen, auch INS genannt, basieren in ihrer prinzipiellen Funktionsweise auf der Messung von linearen Beschleunigungen und Drehraten entlang bzw. um drei paarweise linear unabhängige Körperachsen. Ausgehend von der klassischen Mechanik gewinnt man bei Kenntnis der initialen räumlichen Position, Geschwindigkeit und Ausrichtung, den Anfangsbedingungen, aus den kontinuierlich gemessenen Drehraten um die drei Achsen über eine einfache Integration zunächst die Ausrichtung oder Orientierung. Zusammen mit der ebenfalls kontinuierlich gemessenen linearen Beschleunigung, bereinigt um die Gravitationsbeschleunigung, ergibt sich nach einer Integration die aktuelle Geschwindigkeit und nach einer weiteren Integration die momentane räumliche Position eines sich bewegenden Körpers.
Trotz der Tatsache, dass keine elektromagnetischen Signale bzw. optische Marken verwendet werden, weisen solche Systeme einige gravierende Nachteile auf. Insbesondere bei der Verwendung kostengünstiger MEMS-basierter
Inertialsensoren kommen diese Nachteile zum Tragen, sodass die Navigation lediglich für eine relativ kurze Zeitspanne mit ausreichender Positionsgenauigkeit möglich ist. Eines der Hauptprobleme trägheitsbasierter Sensorik stellt der Bias- Fehler dar. Auch bei geringen Beträgen dieses Fehlers resultiert eine
Bewegungsdrift, die sich beispielsweise darin äußert, dass aus den gemessenen Beschleunigungsdaten eines ruhenden Körpers rechnerisch eine Bewegung abgeleitet wird, die aber tatsächlich nicht stattfindet. Aufgrund der zweifachen Integration bei der Positionsberechnung, steigt der Positionsfehler quadratisch mit der Zeit. Dies führt dazu, dass die Positionsbestimmung innerhalb von Minuten unbrauchbar werden kann.
Die Figuren 1a und 1b zeigen Beispiele für den Einfluss eines geringen
Rauschens und Bias-Fehlers der Daten eines Beschleunigungssensors auf die berechnete Geschwindigkeit in X-Richtung (Fig. 1a) und auf die X-Koordinate der aktuellen Position (Fig. 1 b) ohne dass eine tatsächliche Bewegung stattfindet. Dabei zeigt in diesen Figuren jeweils eine gerade, gestrichelte Linie 1 den tatsächlichen Wert, während jeweils eine gekrümmte, durchgehende Linie 2 den aus den Daten des Sensors ermittelten Wert zeigt. Die Erfindung hat sich zur Aufgabe gestellt, die Genauigkeit der Positionsbestimmung in Umgebungen oder Situationen zu erhöhen, in denen kein zuverlässiger Empfang von elektromagnetischen Signalen einschließlich sichtbarem Licht möglich ist oder keine entsprechende technische Infrastruktur vorliegt.
Zum Lösen dieser Aufgabe schafft die Erfindung ein Verfahren zur
Positionsbestimmung mittels Trägheitsnavigation, bei dem aus einer bekannten Ausgangsposition und Ausgangsorientierung durch Erfassen von
Beschleunigungen und Drehraten eine aktuelle Position bestimmt wird, umfassend die Schritte: Bereitstellen von Sensoren zum Erfassen von Beschleunigungen und Drehraten; Berechnen der über einen Zeitraum auf die Sensoren wirkenden Beschleunigungen und Drehraten entlang bzw. um drei Sensorachsen; wobei aus den Daten der einzelnen Sensoren jeweils eine Position ermittelt wird und die Vektorkomponenten der ermittelten Positionen anschließend gewichtet addiert werden, wobei die Gewichte durch Kalibrierung ermittelt werden.
Vorteilhafte Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche.
Bevorzugt wird zur Ermittlung der aktuellen Position eine nichtlineare Kombination der Vektorkomponenten der Positionen einer Vielzahl von Sensoren (10) gebildet wird, wobei die Vektorkomponenten und jeweils mindestens die zweite Potenz davon separat gewichtet aufsummiert werden.
Beispielsweise wird zur Kalibrierung aus einer Vielzahl von Sensorkombinationen für jede Koordinatenrichtung eine Anzahl von Sensorkombinationen ausgewählt, von denen jede mindestens ein Gütekriterium erfüllt.
Vorteilhaft ist das Gütekriterium dann erfüllt, wenn für jede Koordinatenrichtung am Ende der Kalibrierung die Summe der Abweichungen der Koordinaten der Positionen der einzelnen Sensoren der jeweiligen Sensorkombination vom tatsächlichen Wert der Koordinate der aktuellen Position unterhalb eines definierten Grenzwertes liegt. Bevorzugt ist das Gütekriterium dann erfüllt, wenn für jede Koordinatenrichtung am Ende der Kalibrierung die Abweichung des Schwerpunkts der Koordinaten der Positionen der einzelnen Sensoren der jeweiligen Sensorkombination vom tatsächlichen Wert der Koordinate der aktuellen Position unterhalb eines definierten Grenzwertes liegt.
Beispielsweise ist das Gütekriterium dann erfüllt, wenn für jede
Koordinatenrichtung die über den Kalibrierzeitraum integrierte Summe der
Abweichungen der einzelnen Koordinaten der Positionen der zur
Sensorkombination gehörigen Sensoren vom tatsächlichen Wert der Koordinate der aktuellen Position unterhalb eines definierten Grenzwertes liegt.
Vorteilhaft wird eine Anzahl von Sensorkombinationen ausgewählt, die zu verschiedenen Zeitpunkten während der Kalibrierung mindestens ein
Gütekriterium erfüllen.
Bevorzugt wird eine vorgegebene minimale und/oder maximale Anzahl von Sensorkombinationen ausgewählt, die das Gütekriterium erfüllen.
Beispielsweise wird zur Bestimmung der Gewichte für jede der ausgewählten Sensorkombinationen eine Raumkoordinate des Schwerpunkts der
entsprechenden Koordinaten der aktuellen Positionen der einzelnen Sensoren der Sensorkombination berechnet.
Vorteilhaft wird zur Bestimmung der Gewichte eine Raumkoordinate des
Schwerpunkts der Schwerpunkte der entsprechenden Koordinaten berechnet.
Bevorzugt werden zur Bestimmung der Gewichte für jede Koordinatenrichtung die Abweichungen der entsprechenden Koordinaten der aktuellen Positionen der einzelnen Sensoren der ausgewählten Sensorkombinationen vom tatsächlichen Wert der entsprechenden Koordinate der aktuellen Position verwendet. Beispielsweise wird zur Bestimmung der Gewichte für jede Koordinatenrichtung ein überbestimmtes Gleichungssystem gelöst.
Vorteilhaft werden die Gewichte der Sensoren für jede Koordinate aus
Koeffizienten einer Linearkombination von entsprechenden Koordinaten der zu den Sensoren gehörigen Positionen gebildet.
Gemäß einem anderen Aspekt der Erfindung wird eine Vorrichtung zur
Positionsbestimmung mittels Trägheitsnavigation geschaffen, umfassend eine Vielzahl von Sensoren zum Erfassen von Beschleunigungen und Drehraten entlang bzw. um ihre jeweiligen Sensorachsen, und eine Auswerteeinrichtung zur Berechnung einer aktuellen Position aus den erfassten Beschleunigungen und Drehraten, wobei die Auswerteeinrichtung derart gestaltet ist, dass sie aus den Daten der einzelnen Sensoren jeweils eine Position ermittelt und die
Vektorkomponenten der ermittelten Positionen anschließend gewichtet addiert, wobei die Gewichte durch eine Kalibrierung der Sensoren ermittelt sind.
Vorteilhaft ist die Auswerteeinrichtung zur Durchführung des erfindungsgemäßen Verfahrens ausgestaltet.
Bevorzugt umfasst die Vorrichtung Mittel zur thermischen Entkopplung der Sensoren von der Umgebung und /oder Thermoelemente zum Ausgleich von Temperaturänderungen.
Beispielsweise umfasst die Vorrichtung eine Einrichtung zur mechanischen Dämpfung der Sensoren.
Bevorzugt wird die Vorrichtung in einem Luft-, Land- oder Wasserfahrzeug verwendet, das zum Beispiel bemannt oder unbemannt sein kann, und/oder sie ist als transportables Navigationsgerät für Personen und/oder zum Einsatz unter Wasser ausgebildet, wie insbesondere für Tauchereinsätze.
Gemäß einem weiteren Aspekt der Erfindung wird ein Kalibriersystem geschaffen, das eine Vorrichtung gemäß der Erfindung und eine Kalibriereinheit zum Kalibrieren der erfindungsgemäßen Vorrichtung umfasst.
Vorteilhaft werden mindestens 25, bevorzugt mindestens 36, und insbesondere bevorzugt mindestens 42 oder 100 Sensoren in der Vorrichtung und/oder bei dem Verfahren verwendet.
Bevorzugt werden mehr als 50, besonders bevorzugt mehr als 100 gute
Sensorkombinationen ermittelt.„Gute Sensorkombinationen“ sind
Sensorkombinationen, die zumindest ein Gütekriterium erfüllen.
Beispielsweise umfassen die guten Sensorkombinationen jeweils mehr als 10 Sensoren, bevorzugt zwischen 12 und 36 Sensoren.
Zum Beispiel kann die Rechenzeit zur Bestimmung der Gewichte bei z.B. 100 Sensoren bei Verwendung eines üblichen Computers im Bereich von einigen Minuten liegen. Mit größerer Leistungsfähigkeit des Computers kann die
Rechenzeit auch kürzer sein.
Die Bestimmung der Gewichte kann zum Beispiel auch mit Hilfe eines PC durchgeführt werden, der beispielsweise direkt in eine Ladestation integriert ist. Nachdem die Gewichte mit Hilfe des externen PC bestimmt sind, werden diese auf die Vorrichtung bzw. auf das Navigationsgerät übertragen und das System kann verwendet werden, beispielsweise durch einen Benutzer.
Die Erfindung löst die oben genannten Probleme im Stand der Technik durch den Verzicht auf die Auswertung von Satellitensignalen. Generell wird auf jegliche elektromagnetische Strahlung als Informationsträger verzichtet. Damit
unterscheidet sich die Erfindung grundlegend von Lokalisierungstechnologien wie Wi-Fi-basierte Ortung, Beacons, Time of Flight mittels UWB, VLC, wo Lichtsignale für die Navigation verwendet werden und von kamerabasierten Lösungen wie Stereovision, Triangulation usw.
Diese Eigenschaft prädestiniert die vorliegende Erfindung für den Einsatz in Umgebungen und Situationen, in denen kein zuverlässiger Empfang von EM- Signalen (inklusive sichtbarem Licht) möglich ist oder keine entsprechende technische Infrastruktur vorliegt. Dazu zählen die Lokalisierung von Einsatz- und Rettungskräften beispielsweise bei Bergwerksunglücken, Gebäudebränden, Tauchmissionen oder die Navigation zur See, am Boden oder im Luftraum bei gestörtem oder manipuliertem GPS-Empfang.
Die Erfindung kann zu den trägheitsbasierten Navigationssystemen gezählt werden. Sie kann beispielsweise auch als Trägheitsnavigation mittels IMU-Matrix bezeichnet oder beschrieben werden (IMU=lnertial Measurement Unit bzw. Inertiale Messeinheit).
Die Erfindung verwendet zum Beispiel eine Anzahl von in Mikrosystemtechnik (engl micro electro mechanical System - MEMS) gefertigten sog. Inertialen Messeinheiten (engl. IMU: Intertial Measurement Unit) als Sensoren.
Beispielsweise wird eine Matrix von inertialen Messeinheiten verwendet.
Wenn nicht explizit ausgeschlossen, dann wird im Folgenden davon
ausgegangen, dass die Sensoren bzw. IMU-Sensoren jeweils einen digitalen dreiachsigen Beschleunigungssensor sowie ein dreiachsiges digitales Gyroskop bzw. Drehratensensor enthalten. Es ist aber keine notwendige Bedingung, dass sich Beschleunigungssensoren und Gyroskope im gleichen Gehäuse befinden. Einige IMUs enthalten zusätzlich ein digitales Thermometer sowie ein
dreiachsiges digitales Magnetometer.
Die Erfindung basiert auf folgenden Überlegungen:
Jeder Sensor liefert für jede der drei Achsen einen Strom von Daten, der die lineare Beschleunigung und Drehrate kennzeichnet. Das einfachste Modell setzt für den Zusammenhang von Sensorwert und Bewegungsgrößen ein lineares Verhältnis an. Für beispielsweise die lineare Beschleunigung und die Drehrate entlang bzw. um die X-Achse gilt dann näherungsweise die folgende Abbildungs oder Transformationsvorschrift:
Die Parameter sind sensorspezifisch a* und ox bezeichnen die tatsächliche Beschleunigung und Winkelgeschwindigkeit bzw. Drehrate entlang bzw. um die Sensor-X-Achse, a x,s und oox.s die vom Sensor gesendeten Rohwerte für die lineare Beschleunigung und Drehrate in bzw. um die Sensor-X-Richtung, sc ax und sccox die Skalierungsfaktoren und biasax bzw. bias ffl x die Werte, die bei
verschwindender Beschleunigung und Drehrate entlang bzw. um die Sensor-X- Achse (a x = 0, cox = 0) von einer IMU gesendet werden.
Die Parameter scax, sc«,x, biasax und biaso* der obigen Abbildung werden über einen Kalibrierprozess bestimmt, der jedoch nicht Bestandteil der vorliegenden Erfindung ist. Zur Unterscheidung von der Kalibrierung, die weiter unten beschrieben wird, wird diese im Folgenden Parameterkalibrierung genannt.
Prinzipiell wird in dem einfachsten Modell aufgrund des linearen Charakters der Abbildung jede der drei Sensorachsen z. B. parallel und dann antiparallel zur Richtung der Erdbeschleunigung ausgerichtet. Die währenddessen
aufgezeichneten Sensorrohwerte entsprechen der Beschleunigung 1g bzw. -1g oder 9.81m/s 2 und -9.81 m/s 2 . Zur Kalibrierung der Parameter für die Drehraten um die jeweiligen Achsen werden die Sensoren mit mindestens zwei verschiedenen aber bekannten Winkelgeschwindigkeiten um die entsprechende Achse gedreht.
Die oben beschriebene Drift wird u. a. durch das Rauschen und durch die
Tatsache verursacht, dass die Skalierungsparameter und insbesondere die Bias- Werte auch nach einer Parameterkalibrierung nur mit begrenzter Genauigkeit bekannt sind und nach jedem Einschalten der IMU leicht variieren können (turn-on to turn-on bias oder turn-on instability).
Die Figuren 2, 3a und 3b zeigen ein mögliches Histogramm bzw. die
Verteilungen des Bias-Fehlers (als Sensorrohwerte) der linearen Beschleunigung auf die einzelnen Sensoren der Matrix. Der Bias-Fehler der linearen Beschleunigung und Drehrate entlang bzw. um einer-Achse kann definiert werden als die Abweichung des jeweiligen aktuellen Bias-Wertes für diese Achse vom wahren Wert.
Dabei zeigt die Fig. 2 ein Histogramm der Bias-Fehler (in Sensorrohwerten) der linearen Beschleunigung für die X-Achse bei 36 IMU-Sensoren.
Die Figuren 3a und 3b zeigen eine mögliche Verteilung des bias-Fehlers (in Sensorrohwerten) der linearen Beschleunigung für die X- und Y-Achse bei 36 IMU-Sensoren. Die Grafik zeigt, dass die bias-Fehler für jeden Sensor und für jede Achse unterschiedliche Werte annehmen.
Der der Erfindung zugrunde liegende Ansatz für die Berechnung der Bahnkurve oder Trajektorie und damit der aktuellen Position unterscheidet sich von demjenigen existierender Navigationssysteme mit einer oder mehreren IMUs. Es ist nicht das primäre Ziel, das Rauschen der Sensorwerte durch die Anwendung eines intelligenten Filter zu minimieren, oder den Einfluss anderer Effekte, Parameter und Größen zu identifizieren und in geeigneter Weise einzubeziehen, um optimierte Eigenschaften hinsichtlich des Driftverhalten zu erhalten, oder um generell einen Positionsfehler zu verhindern oder klein zu halten.
Bei dem in dieser Erfindung beschrittenen Weg wird stattdessen die aktuelle Positionsbestimmung durch eine Gewichtung der mit Hilfe der einzelnen Sensoren errechneten Positionen derart optimiert, dass z. B. eine Linearkombination der X- Koordinaten der zu den einzelnen Sensoren der IMU-Matrix gehörigen Positionen zu einer genaueren X-Koordinate führt.
Die grundlegende Idee besteht darin, zunächst jede IMU der Anordnung separat zu betrachten und jeweils die zugehörige Trajektorie bzw. die aktuelle Position mittels üblicher und bekannter Methoden aus den kontinuierlich gemessenen und mit beispielsweise einem Mikrokontroller ausgelesenen Sensordaten mit Hilfe einer geeigneten Rechenarchitektur zu berechnen. Üblicherweise ergeben sich bei Verwendung von N Sensoren z. B. aufgrund des Rauschens und des oben erwähnten sensorspezifischen Bias-Fehlers als
Ergebnisse im Allgemeinen N verschiedene Trajektorien und damit auch N aktuelle Positionen im Raum, welche, teils sehr stark, von der tatsächlichen Bahnkurve und aktuellen Raumposition abweichen können (siehe Figur 4).
Figur 4 zeigt die berechneten aktuellen Positionen 41 der einzelnen Sensoren einer Anordnung von 36 IMU-Sensoren (Kreuze) nach einer Kalibrierzeitdauer von 10 Minuten (die Z-Koordinate wurde weggelassen); das System befand sich während der Kalibrierung im Zustand der Ruhe. Sehr deutlich ist zu erkennen, dass nach 10 Minuten die Abweichung der berechneten Werte aus den
Sensordaten, die als Kreuze 41 dargestellt sind, von der im Zentrum der Grafik befindlichen Ruheposition 42 (x=0, y=0) bis zu ca. 2 oder 3 km und mehr betragen.
Dem Erfindungsgedanken liegt zugrunde, dass anstatt der für jeden Sensor individuell berechneten Bahnkoordinaten auch die Komponenten der linearen Beschleunigung und der Drehrate der einzelnen Sensoren geeignet gewichtet werden können, um dadurch kontinuierlich für jeden Zeitpunkt einen
repräsentativen, einzelnen Ersatzwert für die Komponenten der Beschleunigung und Drehrate zu generieren, mit deren Hilfe die aktuelle Orientierung und
Raumposition berechnet werden kann.
Die Anordnung als Matrix ist dabei nicht relevant. Beispielsweise können die Sensoren in einer einzelnen Reihe oder vollkommen willkürlich angeordnet sein, solange die Positionen bekannt und die drei Sensorachsen aller IMUs jeweils parallel sind. Es ergeben sich dadurch auch Vorteile bei der
Parameterkalibrierung, da dann alle Sensoren gleichzeitig kalibriert werden können, um die jeweiligen sensorspezifischen Skalierungsfaktoren und Bias-Werte zu bestimmen.
Mit zunehmender Anzahl N von Sensoren steigt die Wahrscheinlichkeit, dass die Berechnung einer mittleren Trajektorie bzw. die Bildung des Schwerpunktes aller N aktuellen Positionsergebnisse zu einem genaueren Resultat bei der Berechnung der tatsächlichen Trajektorie bzw. der tatsächlichen Position im Raum führt.
Der genannte Schwerpunkt t stellt die Vektorsumme aller von den einzelnen Sensoren stammenden aktuellen Positionen | n = 1.. N] dividiert durch N dar und kann mathematisch als Linearkombination der N aktuellen Positionen mit den identischen Koeffizienten 1/N angesehen werden:
Trotz einer Verbesserung der Genauigkeit übersteigt der Fehler, d.h. die
Abweichung der über die Mittelung berechneten zur tatsächlichen aktuellen Position, bereits nach kurzer Zeit einen Betrag, der dieses Vorgehen für die Navigation ungeeignet erscheinen lässt (siehe Fig. 5).
Figur 5 zeigt den Fehler 51 der berechneten X-Koordinate für alle Sensoren der IMU-Anordnung nach 10 Minuten. Der arithmetische Mittelwert der Abweichungen beträgt ca. 200 m.
Es steigt aber auch die Wahrscheinlichkeit, dass der Schwerpunkt der aktuellen Positionen nur einer Teilmenge der Sensoren zu einem genaueren Ergebnis führt. Driften beispielsweise die Einzelergebnisse der Sensoren unsystematisch in verschiedene Richtungen, dann ist es ab einer ausreichend großen Anzahl an Sensoren wahrscheinlich, dass die Drift eines Einzelsensors durch die Drift eines anderen Einzelsensors kompensiert wird. Die Schwerpunktbildung als Sonderfall einer Linearkombination mit identischen Koeffizienten ist allerdings nicht die einzige Möglichkeit, die Sensorergebnisse zu kombinieren. Der Kerngedanke dieser Erfindung verfolgt einen allgemeineren Ansatz und besteht darin, zur aktuellen Positionsbestimmung komponentenweise eine gewichtete Addition der einzelnen Koordinaten oder deren Potenzen aller aktuellen IMU-Positionsvektoren durchzuführen. Simulationsrechnungen haben bestätigt, dass dieses Vorgehen hinsichtlich der Genauigkeit meist zu genaueren Resultaten führt als eine klassische Schwerpunktbildung. Mit sehr hoher
Wahrscheinlichkeit werden die Gewichte oder Beiträge der einzelnen IMUs für die drei Raumkoordinaten verschieden sein, sodass für jede der Koordinaten X, Y, Z der aktuellen Position ein eigener Satz von N Gewichten oder auch
Gewichtsvektor anzusetzen ist, also wx— (wx lt ... , wx N ) (4) wy = (wy 1 , ... , wy N ' )
wz = ( wz lt ... , wz N )
Beispielsweise ist es sehr wahrscheinlich, dass das Gewicht des IMU-Sensors Sj bei der Ermittlung der X-Koordinate der momentanen Position vom Gewicht für die Y- und Z-Koordinate abweicht: wxi wyi wzi .
Es ist auch durchaus denkbar, dass diese Gewichtsvektoren keine zeitlichen Konstanten darstellen und beispielsweise von der Temperatur abhängen, sodass für jede Koordinate verschiedene Gewichtsvektoren für verschiedene
Zeitabschnitte und Temperaturen verwendet werden müssen.
Prinzipiell ließe sich die Temperatur der IMUs bis zu einem gewissen Grad und mit einem gewissen Aufwand relativ konstant halten (thermische Isolierung, Heiz- bzw. Kühlelemente, frühzeitiges Einschalten etc.). Alternativ kann der weiter unten beschriebene Kalibrierprozess auch für verschiedene Temperaturen durchgeführt werden. Aus diesen Gründen wird der Temperatureinfluss zunächst nicht weiter betrachtet. Im einfachsten Fall sind die Gewichtsvektoren für jede Koordinate, d.h. wx, wy und wz, zeitlich konstant und nicht oder nicht mehr temperaturabhängig (s. oben).
Der Ansatz zur Berechnung der Koordinaten der aktuellen Position lautet dann:
(der Operator ° bezeichnet das Hadamard-Produkt) oder in Komponenten:
X(t ) = wx x Xi(t + wx 2 Xz(t) + ··· + wx N X N t) (6)
oder kompakter mit Hilfe des Skalarproduktes:
Z(t) = (wz,Z(t ) mit
Z(t): = (Zi(t), -.Z w (t)) (8) und den Gewichtsvektoren:
wx = (wx lt ... , WX N )
wy = (wy lt ... , wy N )
wz = ( wz lt ... , wz N )
Die Formulierung mittels Skalarprodukt zeigt besonders deutlich die Grundidee des Ansatzes, dass die einzelnen Koordinaten der aktuellen Position aus den entsprechenden Koordinaten der Einzelsensoren mit jeweils separater
Gewichtung hervorgehen.
Es ist aber auch denkbar, dass eine nichtlineare Kombination genauere
Ergebnisse liefert als die lineare Variante. Exemplarisch für die X-Koordinate und mit 2 als höchster Potenz für die aktuellen X-Koordinaten der einzelnen IMUs ergibt sich:
+ wx N2 X N 2 (t )
Der zugehörige Gewichtsvektor hat dann die doppelte Anzahl an Komponenten: wx = (wx ll wx 1 2, ... , wx N1 , wx N2 ) (10)
Wie eingangs erwähnt, können die bisherigen Überlegungen auch auf die
Komponenten der linearen Beschleunigungen und Drehraten angewendet werden. Die Ansätze zur Berechnung der Komponenten der momentanen linearen
Beschleunigung sowie der Drehraten entlang bzw. um die Sensorachsen lauten dann (die Zeitabhängigkeit wird zur Vereinfachung weggelassen): a x = waxy a x l + wax 2 a x 2 + · + wax N a X N (11) a Y = way- L a Y1 + way 2 a Y 2 H - l· way N a Y N a z = waz x a zi + waz 2 a Z2 +— I- waz N a Z N
und
w c = wgx x w CL + wgx 2 w C2 + - + wgx N ü) XN ü Y = wgy i w g1 + wgy 2 w U2 + ··· + wgy N w UN w g = wgz- L w z i + wgz 2 w Z2 + ··· + wgz N w ZN mit den Gewichtsvektoren
wax = ( wax l ...,wax N ) (12) way = (way l ...,way N ) waz = ( waz lt ... ,waz N )
und
wgx = ( wgx l ... ,wgx N ) wgy = (wgy l ...,wgy N ) wgz = {wgz^ ^ wgz^.
Dabei bezeichnen beispielsweise a Xn\ = a Xn (t ) und w Ch : = co Xn (t) die aktuelle lineare Beschleunigung und Drehrate entlang bzw. um die X-Achse des Sensors Sn, die unter Verwendung der Parameter biasax.n, scax.n, bias ffi x,n und sc m x,n (aus der Parameterkalibrierung) aus den zugehörigen Sensordaten abgeleitet werden (s. Formeln (1) und (2)).
Sind die Gewichtsvektoren in einem Kalibrierprozess bestimmt worden, dann können aus den Rohdaten aller N Sensoren für jede IMU-Achse und zu jedem Zeitpunkt genau ein Ersatzwert für die lineare Beschleunigung und ein Ersatzwert für die Drehrate ermittelt werden. Dadurch ist es möglich, die Sensor-Matrix wie eine einzige IMU zu behandeln. Die Bestimmung der Orientierung und räumlichen Position des Systems kann dann nach üblichen und bekannten Verfahren erfolgen, die nicht Bestandteil dieser Erfindung sind.
Im Prinzip wird dabei der von einer IMU im eigenen Bezugsystem („body frame“) gemessene Beschleunigungsvektor in das Weltkoordinatensystem („earth frame“) transformiert, nachdem zum einen die momentane Orientierung bezüglich einer Anfangsorientierung mit Hilfe des dreiachsigen Gyroskops der IMU durch eine einfache Integration der Winkelgeschwindigkeit bzw. Drehrate ermittelt (s. Formel (14)) und zum anderen die Erdbeschleunigung vom oben genannten
Beschleunigungsvektor subtrahiert wurde. Eine zweifache Integration der
Beschleunigung im Weltkoordinatensystem ergibt die Position bezogen auf eine bekannte Anfangsposition.
Statt der Winkelgeschwindigkeit bzw. Drehrate können alternativ auch die
Orientierungswinkel um die drei Welt-Achsen nach den entsprechenden Winkeln der einzelnen IMUs entwickelt werden:
<Px s wgx 1 f c 1 + wgx 2 f c 2 + ··· + wgx N f C N (13) yg = w 9Vi <PY,1 + wgy 2 f U 2 + - + wgy N f U N f g = wgz Y f z 1 + wgz 2 f z 2 + ··· + wgz N f Z N
Beispielsweise gilt für den Sensor Si, dass die aktuelle Drehwinkelposition um die Y-Achse des Weltkoordinatensystems mit Hilfe einer initialen Winkelposition f U ί (t 0 ) und der folgenden Formel berechnet werden kann:
Es handelt sich dabei um das Integral einer Treppenfunktion, deren Stufen w U ί {ί h ) durch die vom Gyroskop der IMU Si bis zum Zeitpunkt t gesendeten Rohdaten für die Sensor-Y-Achse gegeben sind, die jedoch zusätzlich mit Hilfe von
zugehörigem Skalierungsfaktor und Bias- oder Offset-Wert aus der
Parameterkalibrierung in Drehraten transformierten wurden. Die in den
Summanden als Faktoren auftretenden Zeitintervalle ergeben sich aus dem Kehrwert der Ausleserate und müssen nicht notwendigerweise identisch sein. Je kürzer die Zeitintervalle sind, desto genauer wird über obigen Ausdruck das Integral der Drehrate und damit der Winkel um die Y-Achse approximiert.
Im Folgenden werden Ausführungsbeispiele der Erfindung anhand der
beigefügten Zeichnungen näher erläutert. Darin zeigt:
Flgs. 1a, b ein Diagramm eines Beispiels für den Einfluss eines geringen
Rauschens und bias-Fehlers der Daten eines
Beschleunigungssensors auf die berechnete X-Koordinate der Geschwindigkeit und der Position;
Fig. 2 ein beispielhaftes Histogramm der bias-Fehler der linearen
Beschleunigung für die X-Achse bei 36 IMU-Sensoren;
Figs. 3a, b eine mögliche Verteilung des bias-Fehlers der linearen
Beschleunigung für die X- und Y-Achse bei 36 IMU-Sensoren;
Fig. 4 ein Beispiel für die berechneten aktuellen Positionen einzelner
Sensoren einer Anordnung von 36 IMU-Sensoren nach einer Kalibrierzeitdauer von 10 Minuten;
Fig. 5 Beispielhaft die Fehler einer berechneten X-Koordinate für alle
Sensoren einer IMU-Anordnung nach 10 Minuten;
Figs. 6a, b eine Vorrichtung zur Positionsbestimmung gemäß einer bevorzugten
Ausführungsform der Erfindung als schematische Darstellung; Fig. 7 ein Histogramm der akkumulierten Abweichungen pro
Sensorteilmenge bei einer großen Anzahl von Sensorteilmengen (>10 5 );
Fig. 8 ein Beispiel für gute Teilmengen bzw. Sensorkombinationen zur
Berechnung der X- und Y-Koordinate der aktuellen Position;
Fig. 9 ein Beispiel für eine tatsächliche und für eine mittels
Gewichtsvektoren berechnete ebene Bahnkurve für eine Anordnung von 25 IMU-Sensoren;
Figs. 10a, b die zeitliche Entwicklung der X- und Y-Fehler der in Fig. 9 gezeigten berechneten Trajektorie;
Fig. 11 ein Beispiel für die Erfassung einer Bewegung einer Person nach 12
Minuten nach dem erfindungsgemäßen Verfahren;
Fig. 12 ein Blockdiagramm eines Ausführungsbeispiels des
erfindungsgemäßen Verfahrens als schematische Darstellung;
Fig. 13 ein Blockdiagramm gezeigt, in dem eine Kalibrierung gemäß einem
Ausführungsbeispiel der Erfindung schematisch dargestellt ist; und
Fig. 14 ein Kalibriersystem 200 gemäß einer bevorzugten Ausführungsform der Erfindung als schematische Darstellung.
Die Figuren 1 bis 5 dienen zur Veranschaulichung der allgemeinen
Grundüberlegungen zur Erfindung. Sie wurden oben bereits erläutert.
Figuren 6 a und b zeigen den prinzipiellen Aufbau einer Vorrichtung 100 zur Positionsbestimmung gemäß einer bevorzugten Ausführungsform als
schematische Darstellung. Dabei ist die Vorderseite A und die Rückseite B dargestellt. Figur 6b zeigt eine Anordnung zur Anzeige und Übertragung der Daten. Eine Vielzahl von Sensoren 10, die als inertiale Messeinheiten (IMUs) ausgebildet sind, bilden eine Sensoranordnung 20, die auf einer als Platine ausgebildeten Trageeinheit 11 angeordnet ist. Die Sensoren 10 dienen zur Messung von
Beschleunigungen und Drehraten entlang bzw. um die Sensorkörperachsen und sind auf der Vorderseite A der Platine 11 angeordnet. In diesem Beispiel besteht die Sensor- bzw. IMU-Anordnung aus 25 Sensoren.
Weiterhin ist eine Auswerteeinrichtung 13 in Form von mehreren Prozessoren bzw. Mikrokontrollern (MCU) 13a, 13b vorgesehen, die auf der Rückseite B der Platine 11 angeordnet sind. Die Hauptaufgabe der Prozessoren bzw. MCUs 13a, 13b ist das Auslesen der IMU-Daten und das Berechnen der Position. Die MCU 13b dient dabei zur Gewichtung der Einzelergebnisse und zur Durchführung weiterer Berechnungsschritte, sowie zur Darstellung des Resultats auf einem Display 16 und/oder zum Senden an eine Empfangsstation über einen Transmitter bzw. Receiver 17 mit Hilfe einer MCU 13c (siehe auch Fig. 6b).
Die Auswerteeinrichtung 13 ist so gestaltet, dass sie aus den Sensordaten der Vielzahl von Sensoren 10 für jede Koordinatenachse und für jeden Zeitpunkt einen Positionswert berechnet, wobei beispielsweise aus den Sensordaten der Vielzahl von Sensoren 10 nach einer Umrechnung in Beschleunigungen und Drehraten Positionen für jede IMU separat berechnet und anschließend komponentenweise gewichtet addiert werden. Das Gewicht für jeden Sensor 10 und für jede
Koordinate wird durch eine Kalibrierung ermittelt.
Aufgrund der geringen Größe der IMU-Sensoren 10 (ca. 4 mm x 4 mm x 1 mm) ist das System sehr kompakt konstruiert. Die Fläche der Platine 11 mit der
Sensoranordnung 20, die in diesem Beispiel aus 25 Sensoren 10 besteht, beträgt 35 mm x 35 mm.
Auf der Rückseite B der Platine 11 sind weiterhin l 2 C-Multiplexer bzw. I 2 C- Switches 14 angeordnet. Die hier gezeigten Vorrichtung 100 ist so gestaltet, dass mehrere IMUs bzw.
Sensoren 10 von einer MCU 13a ausgelesen werden können. Die IMUs verfügen jeweils über eine l 2 C-Schnittstelle, so dass diese direkt oder bei Bedarf über einen l 2 C-Multiplexer separat von einer MCU angesprochen werden können.
Für den Fall, dass die l 2 C-Adresse der IMUs nicht verändert werden kann, bieten die l 2 C-Multiplexer 14 eine Möglichkeit zum separaten Auslesen aller damit verbundenen IMUs. Jeder Mikrokontroller 13a kann dabei über Adressierungen z.B. eine von 8 IMUs selektieren, welche über separate Kanäle mit einem l 2 C- Multiplexer verbunden sind.
In einer möglichen Variante ist jeder IMU genau ein Mikrokontroller zugeordnet.
Die Platine 11 bildet auf diese Weise eine IMU-Matrix-Platine mit geeigneter Rechnerarchitektur 13, 14 zum Auslesen der IMU-Daten über l 2 C-Multiplexer, zur Berechnung der Position über Gewichtsvektoren mittels dem Prozessor bzw. der MCU 13b, zur Übertragung an ein Display 16 und an einen PC während einer Kalibrierung. Dabei können die berechneten Positionsdaten oder die Sensordaten oder andere relevante Informationen auch an einen Empfänger gesendet werden.
Nachfolgend wird beispielhaft ein Verfahren zur Positionsbestimmung erläutert, das bevorzugt mit der oben beschriebenen Vorrichtung durchgeführt wird.
Um die Gewichte bzw. die Gewichtsvektoren für jede Koordinatenrichtung X, Y, Z für eine genauere Positionsberechnung zu bestimmen, bieten sich mehrere Möglichkeiten an, wie nachfolgend beschrieben.
Die im Folgenden vorgestellte Kalibriermethode bezieht sich der Einfachheit halber nur auf die X-Koordinate und hat sich in Computersimulationen als zielführend erwiesen.
Der Grundgedanke dabei basiert auf der zufälligen Auswahl von Q Teil- oder Untermengen aus der Menge der Sensoren 10 {5 1 ... ,S N } mit wenigstens K und höchstens M Elementen:
{5 1 ... , S N ] A Ti gute Teilmenge], was diese Menge zu einer Teilmenge der Potenzmenge P({S lt ... , S N }) macht.
Ferner sollen es sich um gute Teilmengen handeln, d.h. die Teilmengen oder Sensorkombinationen Ti zeichnen sich dadurch aus, dass z. B. die akkumulierte Abweichung Xerror, d. h. die Summe der Abweichungen der X-Positionen der einzelnen Sensoren 10 der Teilmenge vom tatsächlichen Wert der aktuellen Position C(ΪE) , am Ende des Kalibrierzeitraums T calib = [0; t E ] gering ist. Eine genauere Definition für den Begriff gute Teilmengen wird weiter unten gegeben.
Figur 7 zeigt ein mögliches Histogramm der akkumulierten Abweichungen Xerror pro Sensorteilmenge bei einer großen Anzahl (>10 5 ) von Teilmengen der Sensoranordnung 20
Im Allgemeinen weist also nur ein relativ kleiner Teil der möglichen
Sensorkombination die genannte Eigenschaft auf (xerror gering). Eine mögliche Definition für eine gute Teilmenge lautet:
wobei sich die Summation über die |Ti| Elemente der zur Teilmenge gehörigen Sensoren 10 bzw. deren X-Koordinatenfehler erstreckt und C ti,h die X-Position des n-ten zur Teilmenge Ti gehörigen Sensors am Ende des Kalibrierzeitraums Tcaii b = [0; t E ] bezeichnet. Ein ähnliches Kriterium zur Auswahl guter Teilmengen stellt die folgende
Bedingung dar:
(ü) Ti ist eine gute Teilmenge für die Berechnung der X Koordinate (17)
<=>
Es fordert, dass der Schwerpunkt oder Mittelwert der X-Positionen der Sensoren 10 der Teilmenge vom tatsächlichen Wert der X-Koordinate am Ende des
Kalibrierzeitraumes tE nicht zu stark abweichen darf.
Der Schwerpunkt der X-Koordinate XTI einer solchen guten Teilmenge als Summe der aktuellen X-Positionen der einzelnen zur Teilemenge gehörigen Sensoren Cti, h dividiert durch die Anzahl der Elemente der Teilmenge
kann bereits eine brauchbare Näherung für die aktuelle X-Position sein.
Figur 8 zeigt ein Beispiel für gute Teilmengen zur Berechnung der X- und Y- Koordinate der aktuellen Position. Die horizontal gestreiften IMUs bzw. Sensoren 10a stellen eine gute Teilmenge bzw. gute Sensorkombination für die Berechnung der X-Koordinate der aktuellen Position dar; die vertikal gestreiften Sensoren 10b bilden eine gute Teilmenge für die Y-Koordinate. Ein Sensor kann auch den beiden guten Teilmengen angehören.
Bei der praktischen Durchführung der Kalibrierung werden die Sensordaten aller IMUs bzw. Sensoren 10 für eine gewisse Zeitdauer T calib = [0; t E ] mit einer ausreichend hohen Rate (z. B. tE=10 min bei 100 Hz) kontinuierlich aufgezeichnet, während eine definierte Systembewegung mit exakt bekannter Trajektorie mit bekanntem Anfangs- und Endpunkt sowie bekannter Anfangs- und Endorientierung durchgeführt wird. Es ist jedoch auch denkbar, dass die
Sensoranordnung mit bekannter Orientierung während der Datenaufzeichnung nicht bewegt wird.
Besteht die IMU-Matrix aus z. B. N=25 Sensoren 10 und soll die maximale
Mächtigkeit der zu untersuchenden Untermengen {Ti} z. B . M = max((|Ti |}) = 16 und die Mindestanzahl an Sensoren 10 pro Teilmenge K = min({|Til}) = 6 betragen, dann existieren sehr viele solche Untermengen:
Bei N=36 Sensoren 10 existieren bereits Milliarden solcher Teilmengen, sodass nur ein relativ kleiner Teil davon in annehmbarer Zeit auf das obige Gütekriterium hin überprüft werden kann.
Das Ziel der Kalibrierung besteht darin, solche guten Teilmengen zu identifizieren und für die Ermittlung der Gewichtsvektoren zu verwenden. Es wird nicht nur jene Teilmenge gesucht, deren zugehörige aktuelle X-Koordinate als Schwerpunkt der aktuellen X-Koordinaten der zur dieser Teilmenge gehörigen Sensoren 10 am besten mit der tatsächlichen X-Koordinate des Systems übereinstimmt, sondern eine gewisse, vorgegebene Anzahl Q solcher guter Teilmengen (z. B. einige Hundert bei 25 IMU-Sensoren). In den durchgeführten Simulationen betrug der Wert von Limit typischerweise zwischen 10 m und 100 m. Je kleiner dieser Wert angesetzt wird, desto weniger Sensorkombinationen können das Kriterium erfüllen.
Aufgrund der beschränkten Kapazität hinsichtlich Speicher und Rechenleistung wird die Kalibrierung bevorzugt mit Hilfe eines PCs oder einer anderen geeigneten externen Plattform durchgeführt. Die oben beschriebenen Figuren 6a und 6b zeigen einen möglichen Aufbau des Systems. Die Taktraten der verwendeten Mikrokontroller (MCU) liegen typischerweise zwischen 20 und 200 MHz und sind damit um mehr als eine Größenordnung langsamer als moderne PCs. Daher ist es vorteilhaft, die IMU-Daten während der Kalibrierung an einen PC zu übertragen, um dort die Suche nach guten Sensorkombinationen und die Gewichtsberechnung durchzuführen. Die Gewichtsvektoren werden anschließend vom PC auf das System übertragen und stehen für eine Positionsbestimmung zur Verfügung.
Die beiden angegebenen Kriterien können durch andere Gütekriterien bzw.
Bedingungen ersetzt oder ergänzt werden. So ist es beispielsweise möglich, dass nicht nur die Summe der Abweichungen zur aktuellen X-Position am Ende der Aufzeichnung tE betrachtet wird, sondern stattdessen die Erfüllung der Kriterien zu verschiedenen Zeitpunkten tk des Kalibrierzeitraumes gefordert wird mit
Eine andere Bedingung kann zum Beispiel lauten, dass zusätzlich die Länge der über die Teilmengen gemittelten Trajektorien mit der tatsächlichen Länge möglichst gut übereinstimmen muss.
Ein noch strengeres Kriterium kann für eine gute Sensorkombination auch fordern, dass die über die gesamte Messzeit der Kalibrierung integrierte Summe der Abweichungen zum wahren Wert möglichst gering sein muss, was der Forderung, dass die gemittelte Trajektorie der Teilmenge gut mit der tatsächlichen Trajektorie übereinstimmt, äquivalent ist.
Bei der Kalibrierung ist es vorteilhaft, die Sensormatrix nicht zu bewegen, da auch in diesem Fall die tatsächliche Position und Ausrichtung zu jedem Zeitpunkt bekannt sind.
Gibt man zum Beispiel vor, aus wie vielen Sensoren 10 eine gute
Sensorkombination höchstens bestehen darf und mindestens bestehen muss, dann besteht eine Möglichkeit zur Ermittlung guter Teilmengen darin, so lange eine Reihe von Sensorkombinationen bzw. Teilmengen per Zufallsgenerator auszuwählen und jeweils auf die Erfüllung eines Gütekriteriums hin mit einem geeigneten Rechnersystem zu überprüfen, bis eine vorgegebene Mindestanzahl gefunden ist. Streng genommen ist die Verwendung des Begriffs der Teil- oder Untermenge in mathematischem Sinne dann inkorrekt, wenn Sensoren 10 auch mehrfach pro Sensorkombination Vorkommen dürfen, z.B. T34 = {S4, S9, S9, S9, S12, S19, S21}, was algorithmisch durchaus erlaubt sein darf aber die genannten Zahlen zur Anzahl von möglichen Untermengen noch einmal deutlich erhöht.
Simulationsrechnungen sowohl ohne als auch mit der Einschränkung einer Einfachverwendung pro Sensorkombination haben bisher noch keinen
Unterschied in Bezug auf die erzielte Positionsgenauigkeit ergeben. Ein Einfluss auf die Berechnungsdauer bei der Suche nach guten Teilmengen ist aber möglich.
Sind Q solcher guten Teilmengen identifiziert, wird zunächst für jede dieser Teilmengen die X-Koordinate des Schwerpunktes der aktuellen Positionen XTI berechnet (i = 1 ... Q), wobei dieser wie oben definiert ist (Formel (18)).
Anschließend erfolgt die Berechnung der X-Koordinate Xs des Schwerpunktes dieser Schwerpunkte (die Zeitabhängigkeit wird im Folgenden weggelassen):
Das folgende Beispiel soll der Verdeutlichung dienen. Es werden lediglich 2 gute Teilmengen bzw. Sensorkombinationen Ti und T2 (d. h. Q=2) verwendet. Sei zum Beispiel Ti = {S2, S3, S6, S11 , S12, S19} und T2 = {Si , S3, S6, S11 , SH, S17, S21}. Es gilt dann: |Ti |=6 und |T2|=7. Die zugehörigen Schwerpunkte sind:
wobei Xi die zum Sensor Si gehörige X-Koordinate der aktuellen Positionen bezeichnet. Der Schwerpunkt dieser Schwerpunkte ist: s « 0.071 X + 0.083 X 2 + 0.155 X 3 + 0.155 X 6 + 0.155 X 1 +
0.083 X 12 + 0.071 X 1A + 0.071 X 17 + 0.083 X 19 + 0.071 X 21
Dieser Ausdruck lässt sich in die folgende Form bringen:
und stellt damit eine Linearkombination der aktuellen X-Koordinaten der
Einzelsensoren dar und kann als Approximation für die X-Koordinate der aktuellen Position X curr verwendet werden. Die Koeffizienten bilden den gesuchten
Gewichtsvektor für die X-Koordinatenrichtung. Wie das Beispiel zeigt, können einzelne Komponenten eines Gewichtsvektors auch 0 sein (z. B. wx 4 = wx 5 = wx 7 = wx a = wx 9 = wx 10 = 0, da die zugehörigen Werte X4, X5, X7, Cb, X9, X10 bei der Schwerpunktberechnung nicht verwendet werden).
Bereits dieses einfache Beispiel demonstriert, dass je häufiger Sensoren in guten Teilmengen Vorkommen, desto größer sind ihre Gewichte (S3, S6, S11 kommen in beiden guten Teilmengen vor; entsprechend ist ihr Gewicht größer als das der anderen Sensoren). Ferner kann man sehen, dass die Gewichte auch von der Anzahl der Elemente einer guten Teilmenge abhängen. Beispielsweise
unterscheiden sich die Gewichte der Sensoren S x e T 2 und S 2 e 7 (wx 1 =
0.071; wx 2 = 0.083) aufgrund der Tatsache, dass die guten Teilmengen, deren Element sie sind, eine unterschiedliche Mächtigkeit besitzen: \T \ = 6 \T 2 \ - 7. Je mächtiger die guten Teilmengen sind, in denen die Sensoren Vorkommen, desto geringer sind die Gewichte der enthaltenen Sensoren in der
Linearkombination (siehe Formel 23).
Je mehr gute Sensorkombinationen es gibt, desto ausgeglichener wird die
Gewichtung, so dass im Grenzfall der Gewichtsvektor konvergiert:
was auf eine klassische Mittelung hinausläuft.
Ein typisches Beispiel für Gewichtsfaktoren für die Berechnung der aktuellen X- Koordinate bei einer Anordnung aus 36 IMUs ist: wx = (0.034, 0.013, 0.022, 0.025, 0.022, 0.032,
0.036, 0.036, 0.023, 0.026, 0.021, 0.036,
0.030, 0.039, 0.044, 0.027, 0.028, 0.025,
0.029, 0.030, 0.017, 0.028, 0.037, 0.019,
0.023, 0.030, 0.031, 0.027, 0.010, 0.029,
0.035, 0.031, 0.035, 0.017, 0.024, 0.030)
Es sei noch einmal daran erinnert, dass die oben beschriebene Art der
Gewichtsermittlung nicht die einzige Möglichkeit darstellt und lediglich als Beispiel anzusehen ist. So kann man alternativ für Formel 22 für eine Näherung für die aktuelle Position eine Wichtung der Schwerpunkte XTI der guten Teilmengen mit der Mächtigkeit der zugehörigen guten Teilemengen durchführen:
Oder man kann auch die oben erwähnten Abweichungen A T. X = x err0r dazu verwenden, die Schwerpunkte XTI der guten Teilmengenentsprechend zu Wichten:
X s = d 1 X Tl + d 2 X j2 + H dqX TQ (24) wobei die Koeffizienten di umgekehrt proportional zu den Abweichungen D t. c = x err o r sind, also di ~ V x err o r · Dadurch wird ausgedrückt, dass die Koeffizienten di größer ausfallen je geringer die akkumulierten Abweichungen bzw. die Fehler der Mittelwerte D t. c = x err o r der zugehörigen Sensorkombinationen Ti sind. Dieser Ausdruck lässt sich wieder als Linearkombination der X Koordinaten der von den N IMUs der Matrix stammenden aktuellen Positionen darstellen:
X s = wx 1 X 1 + WX2X2 + ··· + wx N X N und kann ebenfalls eine gute Näherung für die aktuelle X-Positionskoordinate sein: Xs(t) » Xtrue(t).
Abschließend sei noch auf die Möglichkeit hingewiesen, dass ein Gewichtsvektor wx = wx^ ... , wx N ) für die Berechnung der tatsächlichen bzw. aktuellen X- Koordinate auch aus der Lösung des folgenden Gleichungssystems abgeleitet werden kann. Auf der linken Seite stehen Werte der tatsächlichen X-Position des Systems zu verschiedenen Zeitpunkten während des Kalibrierprozesses, wobei deren Anzahl W die Zahl N der IMU-Sensoren übersteigen muss (W > N). Dabei handelt es sich um ein überbestimmtes Gleichungssystem in N Unbekannten {wxi, ... , WXN}, das mit verschiedenen Ansätzen numerisch behandelt werden kann, um den besten Gewichtsvektor wx = (wx l ... , wx N ) zu bestimmen: (t x ) = wx 1 X 1 (t x ) + WZ 2 2 (£ I ) + "· + wx N X N {t ) (25) (t 2 ) = wx^iti + wx 2 X 2 (t 2 ) + + wx N X N (t 2 )
Xitw " )— wx lXl(. tw) + wx 2Xl fw) ' " T T WX NXN ^W mit W > N A ti 6 T calib , T calib = [0; t E ]. Werden bei der Entwicklung der aktuellen X-Koordinate auch Potenzen der aktuellen X-Koordinaten der einzelnen Sensoren zugelassen, dann ergibt sich im Falle von Quadraten das folgende Gleichungssystem in 2N Unbekannten (wxn,
WX12, . . . , WXN1 , WXN2}:
mit 2W > 2N L t t e T calib , T calib = [0; t ß ] .
Da der Gewichtsvektor wx = (wx^ wx^, ... , WX N1 , WX N2 ) (27) nun doppelt so viele Komponenten hat, ist die Anzahl der Messungen während des Kalibrierprozesses und damit die Anzahl der Gleichungen für eine
Überbestimmung des Systems entsprechend zu erhöhen.
Es ist zum Beispiel vorteilhaft, für verschiedene Zeitabschnitte l k = [t k >a ,- t k b \ angepasste Gewichtsvektoren für die Ermittlung der aktuellen Position zu verwenden. Damit ergibt sich für jeden Zeitabschnitt folgende Entwicklung (erneut nur für die X-Koordinate): N (28)
X(t) = > wXi,i k Xi (t), t e l k
i= 1 mit den zugehörigen Gewichtsvektoren
WX, k = (WX 1Jkl ... , WX NJk ) . (29)
Um für jeden Zeitpunkt Positionskoordinaten berechnen zu können, muss die Vereinigung der Zeitabschnitte den interessierenden Zeitraum T abdecken:
Wie bereits oben erwähnt, gelten die bisherigen Ausführungen der Einfachheit halber nur für die X-Koordinate der aktuellen Position. Bei den verbleibenden Raumkoordinaten, Y und Z, ist bei der Bestimmung der zugehörigen
Gewichtsvektoren in analoger Weise zu verfahren.
Im Allgemeinen gilt, dass die mittels verschiedener Methoden berechneten Gewichtsvektoren nicht notwendigerweise identisch sein müssen.
Die Figuren 9, 10a und b sowie 11 zeigen Ergebnisse von
Simulationsrechnungen für eine einstündige bzw. 12 Minuten andauernde ebene Bewegung.
Dabei zeigt die Figur 9 ein Beispiel für eine tatsächliche ebene Bahnkurve 81 (durchgehend dargestellt) und mittels Gewichtsvektor berechnete ebene
Bahnkurve 82 (gestrichelt dargestellt) für eine Anordnung von 25 IMU-Sensoren 10.
Die Figuren 10a und 10b zeigen die zeitliche Entwicklung der X- und Y-Fehler der in Figur 9 gezeigten berechneten Trajektorie. Die Figur 11 zeigt ein Beispiel für die Bewegung einer Person, welche die
Vorrichtung 100 trägt, nach 12 Minuten; die Kreuze zeigen die mit Hilfe der einzelnen Sensoren 10 der IMU-Matrix ermittelten Positionen 101 ; der Stern zeigt die über einen Gewichtsvektor gemäß der Erfindung bestimmte Position 102 und koinzidiert gut mit der tatsächlichen Position 103, die als ein Kreis dargestellt ist. Die Ausgangsposition 104 ist als doppelter Kreis dargestellt.
Im Prinzip gelten alle obigen Überlegungen auch für den Fall, dass eine
Gewichtung der linearen Beschleunigungen und Drehraten oder Drehwinkel der Einzelsensoren 10 durchgeführt wird, um mit Hilfe der berechneten Ersatzwerte die aktuelle Orientierung und Position zu berechnen.
Die Rolle der Koordinaten der einzelnen Sensoren 10 übernehmen die
Komponenten der linearen Beschleunigung und Winkelgeschwindigkeit oder Drehwinkel entlang bzw. um die entsprechenden Achsen. Auch in diesem Fall werden bei der Kalibrierung die Sensordaten aller IMUs für eine gewisse
Kalibrierzeitdauer mit einer ausreichend hohen Rate (z. B. 15 min bei 200 Hz) kontinuierlich ausgelesen, während eine definierte Systembewegung mit exakt bekannten Anfangsbedingungen, bekannter Bahnkurve und bekanntem zeitlichem Verlauf von Beschleunigung und Winkelgeschwindigkeit bzw. Orientierung durchgeführt wird, sodass für jeden Zeitpunkt (nach Transformation der
Sensorrohdaten) für jeden Sensor 10 und für jede Sensorachse Werte für die lineare Beschleunigung und die Drehrate vorliegen.
Von guten Sensorkombinationen bzw. Teilmengen für die X-Achse zur
Berechnung der Drehrate, des Drehwinkels und der linearen Beschleunigung kann z. B. Folgendes gefordert werden:
< Limit bzw.
Ti ist eine gute Teilmenge für die Berechnung des Drehwinkels (31) um die (Welt) X Achse => Terror < Limit f
und
Ti ist eine gute Teilmenge für die Berechnung der linearen (32)
Für die Y- und Z-Achse gelten analoge Definitionen. w c t. n (t E ) und a X T n (t E ) bezeichnen die Drehrate um bzw. die lineare Beschleunigung entlang der Sensor X-Achse des n-ten Sensors der Teilemenge T und yc , t^^e) den Drehwinkel des n-ten Sensors der Teilemenge T um die Welt-X-Achse am Ende des
Kalibrierzeitraumes T caüb .
Ebenso ist es möglich, die genannten Kriterien für gute Sensorkombinationen zu verschiedenen Zeitpunkten während der Kalibrierung zu fordern, nicht nur am Ende des Kalibrierzeitraumes tE. Sei beispielsweise Z = (0, t , t 2 , ..., t E ) eine Zerlegung des Kalibrierzeitraums T caüb = [0; t E \, dann kann zum Beispiel für eine gute Sensorteilmenge gefordert werden, die obigen Kriterien für alle Zeitpunkte der Zerlegung zu erfüllen (gegebenenfalls mit Ausnahme von t=0).
Wie bereits oben erwähnt, sind auch andere Kriterien möglich. Die verschiedenen Methoden zur Ableitung der Gewichtsvektoren aus einer Anzahl von guten Teilmengen oder über die Lösung eines überbestimmten
Gleichungssystems wurden bereits weiter oben beschrieben.
Ergänzend zu dem oben beschriebenen Verfahren ist in Fig. 12 ein
Blockdiagramm des Verfahrens schematisch dargestellt. Dabei bezeichnet
Schritt A: Bereitstellung der Sensoren;
Schritt B: Erfassen der Beschleunigungen und Drehraten;
Schritt C: Ermitteln der Positionen, die sich aus den Daten jedes Sensors ergeben;
Schritt D: Gewichtete Addition der Vektorkomponenten der ermittelten Positionen.
Die einzelnen Schritte des Verfahrens sind oben im Detail beschrieben, worauf hier Bezug genommen wird.
In Fig. 13 ist ergänzend ein Blockdiagramm gezeigt, in dem eine Kalibrierung gemäß einem Ausführungsbeispiel schematisch dargestellt ist. Dabei bezeichnet
Schritt K1 : Erfassen von Positionen, die durch eine Vielzahl von Sensoren an einer bekannten Position ermittelt werden;
Schritt K2: Prüfen einer Vielzahl unterschiedlicher Sensorkombinationen auf das
Erfüllen mindestens eines Gütekriteriums;
Schritt K3: Auswahl derjenigen Sensorkombinationen, die mindestens ein
Gütekriterium erfüllen;
Schritt K4: Bestimmung der Gewichte für die ausgewählten
Sensorkombinationen; Schritt K5: Bereitstellung der Gewichte für die gewichtete Addition bei der Durchführung des Verfahrens zur Positionsbestimmung.
Die einzelnen Schritte der Kalibrierung sind oben im Detail beschrieben, worauf hier Bezug genommen wird.
Figur 14 zeigt ergänzend ein Kalibriersystem 200 gemäß einer bevorzugten Ausführungsform der Erfindung, die eine Kalibriereinheit 110 zum Kalibrieren der Vorrichtung 100, wie sie oben beschrieben ist, umfasst. Die Kalibriereinheit 110 umfasst Einheiten zur Durchführung der oben im Detail beschriebenen
Kalibrierung.
Falls während des Einsatzes des Systems mit einer Veränderung der
Gewichtsvektoren z.B. aufgrund sich temperaturbedingt verändernder
Skalierungs- oder bias-Werte der einzelnen Sensoren zu rechnen ist,
beispielsweise aufgrund einer schwankenden Umgebungstemperatur oder einer zunehmenden Betriebstemperatur, ist gemäß einer Ausführungsform der
Erfindung eine thermische Entkopplung des Systems von der Umgebung und/oder eine Verwendung von Thermoelementen zur Temperaturkompensation
vorgesehen, was jeweils eine hilfreiche Maßnahmen zur Fehlerreduktion darstellt.
Ein betriebsbedingter zeitlicher Temperaturgradient kann gemäß einer
Ausführungsform durch das frühzeitige Einschalten vor einer Kalibrierung und vor einem Einsatz verringert werden.
Auch kann das System bzw. die Vorrichtung 100 oder zumindest die IMU- Sensoren 10 durch eine entsprechende Energieversorgung permanent
eingeschaltet bleiben, was bei einer Leistung von weniger als 20mW/IMU
(MPU6050) meist keine zu große Einschränkung darstellt.
Die Kalibrierung, wie sie oben beschrieben, sollte vorteilhafterweise immer erst nach einer gewissen Einschaltdauer bzw. Betriebszeit durchgeführt werden, da dann eher von einem konstanten bias-Fehler ausgegangen werden kann und es ist auch vorteilhaft, wenn diese zeitnah zum eigentlichen Einsatz erfolgt, ohne dass das System zwischenzeitlich ausgeschaltet wird, womit auch das bereits erwähnte„turn-on to turn-on Problem“ gelöst wird.
Auch kann ein Benutzer zwei Systeme betreiben, wovon eines kalibriert wird, während sich das andere gerade im Einsatz befindet.
Eine weitere Möglichkeit zur Erhöhung der Genauigkeit besteht darin, die
Kalibrierung über einen langen Zeitraum, zum Beispiel über einige Stunden, durchzuführen und in zeitliche Abschnitte zu unterteilen, für die jeweils für jede Koordinate ein eigener Gewichtsvektor bestimmt wird.
Schließt sich ein Einsatz zeitlich unmittelbar an die Kalibrierung an und wird das System zwischenzeitlich nicht ausgeschaltet, dann kann ein aktueller
Gewichtsvektor für jede Koordinate aus den zugehörigen Gewichtsvektoren der vorangegangenen Abschnitte der Kalibrierung durch einen Fit extrapoliert werden.
Im Gegensatz zur Positionsbestimmung, für die es keine Möglichkeit zu einem Abgleich mit anderen manipulationssicheren und störungsunempfindlichen
Systemen gibt, ist es bei der Bestimmung der Ausrichtung des Systems unter gewissen Umständen und bis zu einem gewissen Grad von Vorteil, die berechnete Ausrichtung mit Hilfe eines Magnetometers auf Konsistenz zu prüfen und gegebenenfalls zu korrigieren.
Insbesondere wenn das Erdmagnetfeld nicht durch Hindernisse in unbekannter Weise deformiert wird, kann die tatsächliche Ausrichtung des Systems bezüglich der Orientierung der magnetischen Linien des Erdmagnetfeldes gemessen und für eine Korrektur der berechneten Bewegungsrichtung bzw. Orientierung verwendet werden.
Unter bestimmten Voraussetzungen kann auch der aus der Verarbeitung der Beschleunigungsdaten resultierende Positionsfehler verringert werden.
Beispielsweise kann über eine externe Sensorik oder generell mittels externer Informationen festgestellt werden, ob eine tatsächliche Bewegung relativ zur Erdoberfläche stattfindet. Dabei ist es gegebenenfalls auch möglich, den Betrag der Geschwindigkeit abzuschätzen. So kann beispielsweise eine Kopplung des Systems bzw. der Vorrichtung 100 an z. B. eine Antriebswelle oder die Räder eines Landfahrzeugs Aufschluss darüber geben, ob und wie schnell sich das System bewegt oder es sich im Zustand der Ruhe befindet.
Diese Informationen, zusammen mit beispielsweise der Kenntnis der maximal möglichen Geschwindigkeit, können dazu verwendet werden, die nach einer einfachen Integration der Beschleunigungsdaten berechnete
Systemgeschwindigkeit abzugleichen und damit den Fehler bei der Berechnung der momentanen oder aktuellen Position zu verringern.
Wird das System bzw. die Vorrichtung 100 von Personen verwendet, die sich gehend fortbewegen, werden gemäß einer vorteilhaften weiteren Ausgestaltung der Erfindung z. B. über heuristische Betrachtungen der Sensordaten Schritte detektiert. Beim Ausbleiben von Schritten beträgt die Geschwindigkeit höchstwahrscheinlich Null. Damit wird die berechnete Geschwindigkeit korrigiert und eine Drift bzw. der Fehler bei der Positionsberechnung wird verringert.
Gemäß einer weiteren besonderen Ausgestaltung der Erfindung werden
Messdaten physikalischer Größen wie Wasser- oder Luftdruck zur Berechnung der Tauchtiefe oder der Höhe über dem Boden verwendet, um Fehler zumindest für die Z- bzw. Höhenkoordinate noch weiter zu reduzieren.
Können schnelle lineare oder rotatorische Systembewegungen bzw.
Beschleunigungen aufgrund z. B. der Massenträgheit ausgeschlossen werden, werden vorteilhafterweise die Sensorrohwerte aller Sensoren über eine angepasste Tiefpassfilterung oder auch über einen Historienfit von
hochfrequenten Anteilen befreit. Dadurch wird der Einfluss des Rauschens oder von Vibrationen reduziert. Ist hingegen eine driftartige Bewegung nicht zu erwarten, dann erfolgt vorteilhaft eine Hochpassfilterung um eine Drift zu minimieren.
Die vorliegende Erfindung kann vorteilhaft auch in Kombination mit anderen Lokalisierungstechnologien verwendet werden. Ist beispielsweise der Empfang des GPS-Signals umgebungsbedingt nur sporadisch möglich, dann können die empfangenen GPS-Koordinaten dazu verwendet werden, die mit der IMU-Matrix kontinuierlich berechnete Position zu korrigieren.
Bezugszeichenliste:
1 tatsächlicher Wert
2 aus Sensordaten ermittelter Wert
10 Inertiale Messeinheit / Sensor
10a Sensoren einer guten Sensorkombination (X-Richtung)
10b Sensoren einer guten Sensorkombination (Y-Richtung)
11 Trageeinheit / Platine
13 Auswerteeinheit
13a, 13b, 13c Prozessoren / MCUs
14 l 2 C-Multiplexer
16 Display
17 Transmitter bzw. Receiver
20 Sensoranordnung
41 aktuelle Sensorposition
42 Ruheposition
51 Fehler der berechneten X-Koordinate
81 tatsächliche ebene Bahnkurve
82 berechnete ebene Bahnkurve
101 mit Sensoren ermittelte Positionen
102 über Gewichtsvektor bestimmte Position
103 tatsächliche Position
104 Ausgangsposition
110 Kalibriereinheit
200 Kalibriersystem
A Vorderseite
B Rückseite