-
Ausführungsbeispiele der vorliegenden Erfindung beziehen sich auf einen beschleunigungskompensierten Neigungssensor sowie auf ein Verfahren zur Berechnung eines beschleunigungskompensierten Neigungssignals. Bevorzugte Ausführungsbeispiele beziehen sich auf einen beschleunigungskompensierten Neigungssensor für zwei Achsen mit einem Messbereich von jeweils 360° Grad. Zusätzliche Ausführungsbeispiele beziehen sich auf ein Computerprogramm zur Durchführung des obigen Verfahrens.
-
Bei einem Standardneigungssensor (z. B. Wasserwaage oder MEMS-Neigungssensor auf Beschleunigungssensorbasis) führt eine externe Beschleunigung zu einer Verfälschung des gemessenen Neigungswinkels, da sich in diesem Fall die Erdbeschleunigung und die externe Beschleunigung überlagern und vektoriell addieren (schwaches Äquivalenzprinzip).
-
Dieses Problem wird beispielsweise anhand der 4a bis 4d dargestellt. 4a zeigt eine geneigte Wasserwaage, bei der sich ein Schwimmer bzw. eine Luftblase immer nach oben (entgegen der Schwerkraft, vgl. Vektor g) bewegt. Auf diesem Prinzip kann der Winkel gegenüber dem Erdboden bestimmt werden, wie in 4b illustriert ist. Wenn nun aber eine Störung in Form einer Beschleunigung, die auf den Schwimmer/Luftblase wirkt, hinzukommt (vgl. 4c), ist es nicht mehr möglich, die Neigung bzw. den Neigungswinkel zu bestimmen, wie anhand von 4d illustriert ist. Das Problem tritt beispielsweise im Automobilbereich auf, wenn mit einem Neigungssensor im Fahrzeug die aktuelle Streckenneigung bestimmt werden soll und der Messwert von Beschleunigungs- und Abbremsvorgängen des Fahrzeugs verfälscht wird. Deshalb besteht der Bedarf nach einem verbesserten Ansatz.
-
Die Aufgabe der vorliegenden Erfindung ist es, einen Neigungssensor zu schaffen, der einen verbesserten Kompromiss aus Präzision und Unabhängigkeit von externen Einflüssen, wie etwa Beschleunigungen, darstellt.
-
Die Aufgabe wird durch die unabhängigen Patentansprüche gelöst.
-
Ausführungsbeispiele der vorliegenden Erfindung schaffen einen beschleunigungskompensierten Neigungssensor. Dieser umfasst in der Minimalkonfiguration einen (quasi)statischen Neigungssensor und einen dynamischen Neigungssensor. Der statische Neigungssensor ist ausgebildet, um insbesondere im (quasi)statischen Zustand einen Neigungswinkel des Neigungssensors zu ermitteln und um in Abhängigkeit von dem ermittelten Neigungswinkel ein statisches Neigungssignal auszugeben (das insbesondere im statischen Zustand hochgenau ist). Der dynamische Neigungssensor ist ausgebildet, um auf Basis einer Drehratenmessung eine Neigungswinkeländerung des Neigungssensors zu ermitteln und ausgehend hiervon ein dynamisches Neigungssignal auszugeben. Dieses dynamische Neigungssignal kann beispielsweise durch Aufintegrieren in ein Signal überführt werden, das - unabhängig von dem aktuellen Bewegungszustand - die Neigung des Sensors kurzzeitig genau angibt. Diese zwei Sensorsignale sowie einer ermittelten Beschleunigung werden unter Zuhilfenahme des Datenfusionierers zusammengefügt, um ein beschleunigungskompensiertes Neigungssignal auszugeben.
-
Entsprechend Ausführungsbeispielen kann der beschleunigungskompensierte Neigungssensor einen Beschleunigungssensor umfassen. Der Beschleunigungssensor ist ausgebildet, um eine Beschleunigung des Neigungssensors zu ermitteln und um in Abhängigkeit hiervon das Beschleunigungssignal auszugeben. Alternativ wäre es denkbar, dass die Beschleunigungsermittlung mittels des statischen Neigungssensor erfolgt bzw. das Beschleunigungssignal aus dem statischen Neigungssignal abgeleitet wird; dies ist im Regelfall dann möglich, wenn als statischer Neigungssensor ein umfunktionierter Beschleunigungssensor zum Einsatz kommt.
-
Entsprechend Ausführungsbeispielen kann beispielsweise ein Sensorfusionierungsalgorithmus in den beiden Fusionierern ablaufen. Insbesondere kann der Datenfusionierer durch einen Kalman-Filter bzw. einen EEKF-Filter (error-state extended-Kalman-Filter, Fehlerzustands erweiterter Kalman-Filter) oder anderer Orientierungsschätzmethoden gebildet sein. Bei der Datenfusion wird die Größe des Rauschens der einzelnen Eingangssignale berücksichtigt. Bei dem Verfahren handelt es sich um einen komplementären Ansatz.
-
Ausführungsbeispielen der vorliegenden Erfindung liegt die Erkenntnis zugrunde, dass die Vorteile von zwei unterschiedlichen Neigungssensorprinzipien, nämlich eines statischen Neigungssensors (wie z. B. einem flüssigkeitsbasierten, thermischen oder MEMS-Neigungssensor) und einem dynamischen Neigungssensor (wie z. B. einem (dreiachsigen) MEMS-Drehratensensor) genutzt werden können, wenn die zwei Sensorsignale geschickt miteinander kombiniert werden. Dieses geschickte Kombinieren erfolgt unter Berücksichtigung eines Beschleunigungssignals, das mittels eines Beschleunigungssensors ermittelt wird, und zwar in der Art, dass je nach vorherrschender Beschleunigung entweder bevorzugt das dynamische Neigungssignal oder das statische Neigungssignal Berücksichtigung in dem beschleunigungskompensierten Neigungssignal findet. Dieser Ansatz hat den Vorteil, dass die gute Messfunktionalität eines dynamischen Neigungssensors derart erweitert wird, dass die Schwächen wie z. B. eine kontinuierliche Signaldrift, die der dynamische Neigungssensor hat, durch Berücksichtigung des (zumindest im statischen Zustand) hochpräzisen Neigungssignals eines statischen Neigungssensors kompensiert werden kann. Das Ergebnis ist ein von der aktuellen Beschleunigung unabhängiges zuverlässiges, stabiles Neigungssignal.
-
Entsprechend weiteren Ausführungsbeispielen wird also primär das dynamische Neigungssignal durch den Datenfusionierer genutzt, welches durch das statische Neigungssignal korrigiert wird, wenn der Neigungssensor beispielsweise einen statischen oder annähernd statischen Zustand einnimmt. Entsprechend weiteren Ausführungsbeispielen kann statt dem eigentlichen Korrigieren ein Fusionieren der zwei Sensorsignale erfolgen, wobei das Fusionieren unter Berücksichtigung einer Gewichtung erfolgt. Die Gewichtung kann entsprechend Ausführungsbeispielen von dem (erdbeschleunigungsbereinigten) Beschleunigungssignal abhängen. So findet beispielsweise das statische Neigungssignal eine umso höhere Gewichtung, je geringer die vorherrschende Beschleunigung, d. h. also je geringer das vorherrschende Beschleunigungssignal (bzw. das eine geringe Beschleunigung anzeigende Signal) ist, wobei die Gewichtung des dynamischen Beschleunigungssignals höher gewählt wird, wenn eine hohe Beschleunigung, d. h. also ein hohes bzw. ein eine hohe Beschleunigung anzeigendes, Beschleunigungssignal vorliegt.
-
Entsprechend Ausführungsbeispielen wird das Beschleunigungssignal entweder in der Zeit- und/oder in der Frequenzdomäne ausgewertet und bei der Auswertung mit Schwellwerten verglichen, um dann die Gewichtung der zwei Signale (statisch und dynamisch) zueinander zu bestimmen. Bei dieser Auswertung kann auch eine Tiefpassfilterung des Signals erfolgen, um den Signalverlauf zu glätten, so dass kurzzeitige Peaks nicht zu viel Gewicht bekommen. Entsprechend Ausführungsbeispielen erfolgt die Berücksichtigung des Beschleunigungssignals in der Gewichtung dadurch, dass Filterparameter, zugehörig zu Filtern, mittels welchen die Datenfusionierung vollzogen wird, angepasst werden.
-
An dieser Stelle sei angemerkt, dass entsprechend weiteren Ausführungsbeispielen nicht nur auf eine Bewegung geschlossen wird, wenn der Beschleunigungssensor bzw. sein Beschleunigungssignal auf diese hindeutet, sondern auch wenn der dynamische Neigungssensor gleichzeitig eine Neigungsänderung erfährt.
-
Damit entsprechend den Ausführungsbeispielen alle drei Sensoren mechanisch miteinander gekoppelt sind und somit die gleiche Neigung und/oder die gleiche Beschleunigung erfahren, sind diese beispielsweise in einem gemeinsamen Gehäuse angeordnet. Entsprechend zusätzlichen Ausführungsbeispielen kann der beschleunigungskompensierte Neigungssensor auch einen Temperatursensor umfassen, so dass die Berechnung des beschleunigungskompensierten Neigungssignals unter Berücksichtigung eines Temperatursignals erfolgt, um Einflüsse der Temperatur auf das Sensorverhalten auszuschließen.
-
Ein weiteres Ausführungsbeispiel schafft ein Verfahren zur Ermittlung eines beschleunigungskompensierten Neigungssignals. Entsprechend diesem Verfahren wird ein statisches Neigungssignal, ein dynamisches Neigungssignal und ein Beschleunigungssignal ermittelt und mit einem nachfolgenden Schritt eine Fusion dieser drei Signale durchgeführt, um ein beschleunigungskompensiertes Neigungssignal auszugeben. Hierbei kann entsprechend Ausführungsbeispielen die Datenfusionierung derart durchgeführt werden, dass das dynamische und das statische Neigungssignal unter Berücksichtigung einer Gewichtung, welche von dem Beschleunigungssignal abhängt, erfolgt. Weitere Ausführungsbeispiele schaffen ein Computerprogramm zur Durchführung dieses Verfahrens.
-
Weiterbildungen sind in den Unteransprüchen definiert. Ausführungsbeispiele der vorliegenden Erfindung werden anhand der beiliegenden Figuren erläutert. Es zeigen:
- 1a ein schematisches Blockschaltbild eines beschleunigungskompensierten Neigungssensors gemäß einem Ausführungsbeispiel;
- 1b ein schematisches Flussdiagramm des Verfahrens zur Ermittlung eines beschleunigungskompensierten Neigungssignals gemäß einem Ausführungsbeispiel;
- 2a ein schematisches Blockdiagramm eines erweiterten Sensorsystems zur Ermittlung eines beschleunigungskompensierten Neigungssignals gemäß erweiterten Ausführungsbeispielen;
- 2b ein schematisches Blockdiagramm eines Sensorsystems zur Ermittlung eines beschleunigungskompensierten Neigungssignals mit minimalem Hardwareeinsatz gemäß einem Ausführungsbeispielen;
- 3 eine schematische Darstellung zur Illustration des Algorithmus zur Bewegungserkennung auf Basis von Sensorsignalen gemäß Ausführungsbeispielen; und
- 4a-d eine Illustration einer vereinfachten Neigungsmessung entsprechend dem Stand der Technik.
-
Bevor nachfolgend Ausführungsbeispiele der vorliegenden Erfindung im Detail erläutert werden, wird darauf hingewiesen, dass gleichwirkende Elemente und Strukturen mit gleichen Bezugszeichen versehen sind, so dass die Beschreibung derer aufeinander anwendbar bzw. austauschbar ist.
-
1a zeigt einen beschleunigungskompensierten Neigungssensor 10 mit den drei Einzelsensoren, nämlich statischer Neigungssensor 12, dynamischer Neigungssensor 14 und Beschleunigungssensor 16. Zusätzlich weist der beschleunigungskompensierte Neigungssensor 10 einen Datenfusionierer 18 auf.
-
Der (präzise) statische Neigungssensor 12 kann beispielsweise ein flüssigkeitsbasierter, thermischer oder MEMS-Neigungssensor sein, der ausgebildet ist, zweiachsig die Neigung des Sensors 12 bzw. des Sensors 10 zu bestimmen. Statische Neigungssensoren haben den Vorteil einer präzisen Erfassung der Neigung im statischen Zustand. Hierbei wird im Regelfall die Neigung als Absolutwert erfasst. Der dynamische Neigungssensor 14 kann beispielsweise ein MEMS-Drehratensensor (Gyroskop) sein, der als Feder-Masse-Schwinger arbeitet und auf dem Coriolis-Prinzip basiert. Derartige MEMS-Drehratensensoren sind im Regelfall dreiachsig ausgebildet, d. h. können Drehungen entlang der drei Achsen detektieren. Dynamische Neigungssensoren messen im Wesentlichen die dynamische Neigungsänderung, wobei anhand dessen ein Rückschluss auf die aktuelle Neigung, z. B. durch Aufintegrieren der Neigungsänderungen, gezogen werden kann. Der Beschleunigungssensor 16 kann ebenfalls ein (dreiachsiger) MEMS-Beschleunigungssensor auf Basis eines Feder-Masse-Schwingers sein und dient als externer Observer, um die Beschleunigungen des Neigungssensors 10 zu bestimmen.
-
Der Datenfusionierer 18 kann beispielsweise durch eine einfache Datenverarbeitungseinheit oder Mikrocomputer realisiert sein und ist, um die jeweiligen Sensorsignale zu erhalten, mit den Sensoren 12, 14 und 16 (zumindest informatorisch) verbunden. Hierbei werden die statischen und dynamischen Neigungssignale (parallel) in den Mikrocomputer eingelesen und dann durch einen Sensorfusionsalgorithmus verarbeitet, um im Resultat einen beschleunigungskompensierten genauen Neigungswert auszugeben (vgl. Sensorsignal bN).
-
Nachdem nun die Struktur des beschleunigungskompensierten Neigungssensors 10 erläutert wurde, wird nachfolgend auf die Funktionalität des Neigungssensors 10 eingegangen, wobei hierbei auch der Unterschied zu dem Stand-der-Technik-Ansatz deutlich gemacht wird. Da die Sensordatenfusion im Wesentlichen auch durch ein Verfahren dargestellt werden kann, wird die Erläuterung der Funktionsweise unter Bezugnahme auf 1b, das das Verfahren 100 zur Ermittlung eines beschleunigungskompensierten Neigungssignals zeigt, ausgeführt.
-
1b zeigt das Verfahren 100 mit den vier Basisschritten 110 bis 140. In dem Basisschritt 110 erfolgt das Ermitteln des statischen Neigungssignals, in dem Schritt 120 das Ermitteln des dynamischen Neigungssignals, wobei in dem Schritt 130 das Beschleunigungssignal bestimmt wird.
-
Im Gegensatz zum Stand der Technik verwendet der oben erläuterte Neigungssensor 10 zusätzlich zu dem Neigungssensor auf Beschleunigungssensorbasis (MEMS-Neigungssensor 14) einen statischen Neigungssensor 12 mit signifikant verbesserter Performance, da durch solche statischen Neigungssensoren eine Absolutwerterfassung möglich ist. Das heißt also, dass mittels dem Sensor 12 bei dem Schritt des Ermittelns der statischen Neigung 110 eine hohe statische absolute Genauigkeit erreicht werden kann, wobei mit dem Drehratensensor 14 zwar für eine begrenzte Zeit eine sehr genaue Messung der Neigung unter dynamischen Bedingungen über die Integration der Drehrate möglich ist, wobei sich bei längerer Integrationszeit eine zunehmende Neigungsabweichung einstellen kann, da Signalfehler bzw. Signalrauschen ebenfalls aufintegriert werden. Die Sensorfusion in dem Datenfusionierer 18 führt dazu, dass sich statische und dynamische Messungen zu einer insgesamt genauen Gesamtmessung ergänzen. Hierbei wird auch von einem komplementären Messprinzip gesprochen.
-
Der MEMS-Beschleunigungssensor 16 dient als externer Beobachter, um die Messbedingungen (Zeit- und Frequenzbereich) exakt erfassen zu können, um so die spätere Fusion (vgl. Schritt 140) von dynamischen Sensordaten (des MEMS-Drehratensensors 14) und von statischen Sensordaten (des statischen Neigungssensors 12) zu optimieren.
-
Hierbei ist der MEMS-Beschleunigungssensor 16 ausgebildet, um eine Vibrationsumgebung zu erkennen und den Sensorpositionsalgorithmus des Datenfusionierers 18 abzustimmen, um auch unter rauen Umgebungsbedingungen ein optimales Neigungssignal bN ausgeben zu können.
-
Die klassische Sensordatenfusion (gebräuchlich sind Fusionsalgorithmen basierend auf rekursiver Bayes-Schätzung, z. B. lineare Kalman-Filter für lineare Systeme, „extended and unscented“-Kalman-Filter für nicht-lineare Systeme, Partikelfilter für multi-modale Wahrscheinlichkeitsverteilung , ....) zwischen Sensorkomponenten stellt den Aufsetzpunkt für den hier eingesetzten Sensorfusionsalgorithmus, der beispielsweise einen sogenannten „error state extended“-Kalman-Filter nachbilden kann. Bei dieser Variante greift der Beschleunigungssensor 16 als externer Beobachter direkt in den Fusionsalgorithmus ein.
-
In Bezug auf das Verfahren aus 1b heißt es also, dass in dem Schritt 140 ein beschleunigungskompensiertes Neigungssignal bN errechnet wird, das auf den zwei Neigungssignalen sowie dem Beschleunigungssignal basiert. Hierbei wird von der sogenannten „Sensordatenfusion“ gesprochen.
-
Die Einflussnahme des Beschleunigungssensors 16 auf das auszugebende Neigungssignal bN kann entsprechenden weiteren Ausführungsbeispielen wie folgt gestaltet sein:
-
Es wird ausgehend von einem externen Beobachter die Bewertung und Gewichtung der Sensormessungen der zwei Neigungssensoren 12 und 14 im Fusionsalgorithmus beeinflusst bzw. angepasst. Unter Bezugnahme auf das Verfahren 100 stellt dies den optionalen dargestellten Schritt 150 der Anpassung der Gewichtung zwischen statischen und dynamischen Sensorsignalen dar. Diese Kenngrößen können beispielsweise im Zeit und Frequenzbereich des Beobachters 16 ermittelt werden und steuern damit die Schwell- und Grenzwerte bzw. die Gewichtung im Kalman-Filter. Beispielsweise können bei geringen Vibrationen bzw. Beschleunigungen, was anhand des Beschleunigungssignals des Beschleunigungssensors 16 erkennbar ist, die statischen Sensorsignale höher gewichtet werden, während, sobald das Beschleunigungssignal des Beschleunigungssensors 16 eine hohe Beschleunigung anzeigt, die Einflussnahme der dynamischen Sensorsignale auf das Neigungssignal bN erhöht werden. Mit anderen Worten ausgedrückt heißt das, dass insofern der Beschleunigungssensor 16 durch eine eindeutig ermittelte Kenngröße als die Steuergröße die Steuerung für den Algorithmus / Anpassung ermöglicht.
-
Somit wird also entsprechend Ausführungsbeispielen ein adaptiver Fusionsfilter geschaffen, der die Messung der Neigungszelle 12 und des Drehratensensors 14 fusioniert, wobei die Adaptivität über einen zusätzlichen Beschleunigungssensor 16 gesteuert wird. Der Vorteil dieses gestützten, adaptiven Systems ist eine hohe Genauigkeit auch bei der in vielen Anwendungen auftretenden Querbeschleunigungen oder dynamischen Änderungen des Neigungswinkels. Dabei ist es wichtig, sicherzustellen, dass trotz der zusätzlichen, komplexen Verarbeitungsschritte die Stabilität des Systems sichergestellt wird.
-
Entsprechend weiteren Ausführungsbeispielen kann der MEMS-Beschleunigungssensor 16 auch die Funktion der flüssigkeitsbasierten Neigungsmesszelle 12 mitübernehmen, falls die Anforderungen an die statische absolute Neigungsgenauigkeit es zulassen. In anderen Worten heist das, dass ein Beschleunigungssensor als statischer Neigungssensor eingesetzt werden kann. Dies ist dann vorteilhaft, da so der Beschleunigungssensor 16 entfallen kann, da der Beschleunigungssensor des statischen Neigungssensors dessen Funktion übernimmt. Dieses Ausführungsbeispiel ist in 2b gezeigt.
-
Bezug nehmend auf 2a und 2b wird ein erweitertes Ausführungsbeispiel erläutert.
-
2a zeigt ein Sensorsystem eines beschleunigungskompensierten Neigungssensors 10' mit einer hochpräzisen statischen Neigungsmesszelle 12', einem Dreiachsbeschleunigungssensor 16' und einem Dreiachs-MEMS-Drehratensensor zur dynamischen Neigungswinkelerfassung 14'. Die Sensoren 14' und 16' liefern Rohdaten für die x-, y- und z-Bewegungsrichtungen. Der Sensor 12' liefert Rohdaten für die zwei Neigungsachsen. Die Funktion der Neigungsmesszelle 12' kann optional durch den Dreiachsbeschleunigungssensor 16' mit übernommen werden. All diese Rohdaten laufen in einer Sensorkalibriereinheit 19 zusammen. Die Sensorkalibriereinheit 19 gibt ausgehend von den in derselben gespeicherten Kalibrierdaten die Sensorsignale für einen statischen Sensor 12', den dynamischen Sensor 14' und den Beschleunigungssensor 16' weiter.
-
Spätestens hier liegen dann auch die Sensorwerte in den entsprechenden Einheiten vor (Grad für 12', g für 16' und Grad pro Sekunde für 14'). Diese Sensordaten werden einerseits an den Datenfusionierer 18' weitergegeben, wobei insbesondere die Daten des dynamischen Neigungssensors 14' und des Beschleunigungssensors 16' unter Zuhilfenahme einer Bewegungserkennung 21 ausgewertet werden können, die beispielsweise ausgebildet ist, auf Basis dieser zwei Daten eine Bewegung zu erkennen. Entsprechend dem Ausführungsbeispiel liegt eine Bewegung beispielsweise dann vor, wenn mindestens einer der beiden Sensoren ein Sensorsignal aufweist, welches über einem zuvor definierten Schwellwert liegt. Basierend auf dieser Bewegungserkennung 21 erfolgt dann, wie bereits oben erläutert, die Anpassung des Fusionsalgorithmus, z. B. die Gewichtung der Sensordaten des statischen Sensors 12' und des dynamischen Sensors 14'. Diese Anpassung wird in dem Fusionierer 18' durchgeführt, der beispielsweise als „error-state extended“-Kalman-Filter (EEKF) ausgeführt ist.
-
Nachfolgend wird auf die Bewegungserkennung bzw. den alternativen Filter im Detail eingegangen. Eine Bewegungserkennung, die Bewegungen des linearbeschleunigungskompensierten Neigungssensors über die Signale des Beschleunigungssensors und des Gyroskops erkennt und daraufhin Anpassungen am Fusionsalgorithmus vornimmt, indem Filterparameter variiert werden, die die Gewichtung der einzelnen Sensoren bei der Berechnung des Neigungswinkels betreffen (z. B. die Rauschkovarianzmatrix). Neben der Größe der Änderungen wird auch der Zeitraum, für den diese Änderungen gelten sollen, vorgegeben (Änderungsprofil über Zeit).
-
Entsprechend einem weiteren Ausführungsbeispiel kann die Sensorkalibriereinheit 19 auch eine Temperaturkompensationsfunktionalität umfassen. Hierzu ist die Sensorkalibriereinheit 19 mit einem zusätzlichen (optionalen) Temperatursensor 15 verbunden, der die Umgebungstemperatur misst und in Abhängigkeit davon die jeweiligen Kalibrierparameter anpasst.
-
Wie hier dargestellt, ist bevorzugt die Sensorkalibriereinheit 19, der Fusionierer 18' sowie der Bewegungserkenner 21' in einem Mikrocomputer zusammenfasst.
-
Der Mikrocomputer bzw. insbesondere der Sensorfusionierer 18' gibt dann den beschleunigungskompensierten Neigungswinkel (über diverse Schnittstellen) aus.
-
Bei dem Ausführungsbeispiel aus 2b ist die statischen Neigungsmesszelle 12' als optional gekennzeichnet, da die statische Neigung auch mittels einem umfunktionierten Beschleunigungssensor (z.B. dem Sensor 16') ermittelt werden kann. Diese vereinfachte Variante ist in 2b gezeigt.
-
2b zeigt einen beschleunigungskompensierten Neigungssensors 10" mit einem Dreiachs-Beschleunigungssensor 16" und einem Dreiachs-MEMS-Drehratensensor 14'. Ferner umfasst der beschleunigungskompensierten Neigungssensors 10" die bezugnehmend auf 2a diskutierten Funktionseinheiten 19, 21 und 18' sowie optional den Temperatursensor 15.
-
Bei dem beschleunigungskompensierten Neigungssensors 10" ist die Messfunktionalität der statischen Neigungsmesszelle in den Dreiachsbeschleunigungssensor 16" integriert. D.h. also, dass Dreiachsbeschleunigungssensor 16" ausgebildet ist, die Bescheinigung von 10" sowie die statische Neigung zu detektieren.
-
Nachfolgend wird Bezug nehmend auf 3 eine erweiterte Variante entsprechend einem erweiterten Ausführungsbeispiel der Bewegungserkennung erläutert. Hierbei wird davon ausgegangen, dass sowohl die Signale des Beschleunigungssensors 16' als auch die Signale des dynamischen Beschleunigungssensors 14' ausgewertet werden.
-
Es wird über die Signale von Beschleunigungssensor 16' und Gyroskop 14' bestimmt, ob eine intertiale Beschleunigung des Systems vorliegt (z.B. durch Translation, Rotation, Vibration) oder ob es sich in Ruhe befindet. Es kann ebenfalls ein Maß für die Stärke dieser Bewegung ausgegeben werden.
-
Auf Basis dieser Entscheidung/Kenngröße wird der Fusionsalgorithmus angepasst, um ein möglichst optimales Ergebnis bei der Bestimmung des Neigungswinkels zu erzielen. Im Ruhezustand wird die Neigungsmesszelle bzw. der Beschleunigungssensor höher gewichtet, während im dynamischen Zustand dem Drehratensensor stärker vertraut wird (komplementäres Messprinzip).
-
Im einfachsten Fall der Bewegungserkennung werden Schwellwerte für die Beschleunigung und die Drehrate definiert, bei deren Überschreitung die Bewegung des Systems festgestellt wird. Bleiben die Schwellwerte unterschritten, so befindet sich das System in Ruhe. Die jeweils definierten Schwellwerte hängen stark vom jeweils verwendeten Sensor und dessen Charakteristik ab, insbesondere vom Rauschen (rms, peak-peak).
-
Es bietet sich an, auch vorangegangene Beschleunigungs- und Drehratenwerte bei der Bewegungserkennung heranzuziehen. Diese werden zuvor durch einen Tiefpassfilter, durch Berechnung des Medians oder des Mittelwerts geglättet und anschließend mit den definierten Schwellwerten verglichen, um den Bewegungszustand des Systems zu bestimmen.
-
Weiter ist eine Kantendetektion oder Frequenzanalyse möglich, um den Bewegungszustand des Systems zu bestimmen. Dies erfordert eine höhere Rechenleistung des verwendeten Mikrocomputers.
-
Ausgehend hiervon kann also die Auswertung des Beschleunigungssensors 16' entsprechend Ausführungsbeispielen wie folgt erfolgen (nicht kausaler Filter).
- 1. Es wird ein Ringbuffer (FIFO) mit den zuletzt gemessenen Beschleunigungswerten jeweils für x-, y- und z-Richtung geführt.
- 2. Es wird der Mittelwert jeweils über die obere und die untere Hälfte des Buffers pro Richtung berechnet.
- 3. Die Differenz dieser beiden Mittelwerte wird pro Richtung gebildet und quadriert.
- 4. Die Summe dieser Quadrate der drei Richtungen wird verglichen mit dem Produkt aus dem Quadrat aus (halber Buffergröße +1) und einem zuvor gesetzten Schwellwert.
- 5. Wenn der erste Teil kleiner ist als der zweite, so liegt keine Bewegung des Systems vor. Im umgekehrten Fall liegt Bewegung des Systems vor.
-
Entsprechend weiteren Ausführungsbeispielen kann die Auswertung des Drehratensensors 14' wie folgt erfolgen.
- 1. Es wird ein Ringbuffer (FIFO) mit den zuletzt gemessenen Drehratenwerten jeweils für x-, y- und z-Richtung geführt.
- 2. Es wird der Median über die Werte im Buffer für die einzelnen Richtungen gebildet.
- 3. Die einzelnen Medianwerte werden jeweils quadriert.
- 4. Jeder einzelne dieser quadrierten Werte wird mit dem zuvor festgelegten Schwellwert für die Drehrate verglichen.
- 5. Ist der jeweilige Wert kleiner als der Schwellwert, so liegt keine Bewegung vor, ansonsten Bewegung.
-
Entsprechend Ausführungsbeispielen können, wie auch hier in 3 dargestellt, die zwei Ausfertigungen des Beschleunigungssensors 16' und des Drehratensensors 14' durch die UND/ODER-Verknüpfung miteinander verknüpft werden. Das heißt also, dass entsprechend Ausführungsbeispielen, nur wenn alle Drehratenanteile und der Beschleunigungsanteil keine Bewegung detektiert (logisches „UND“) darauf geschlossen werden kann, dass keine Bewegung vorliegt. Ansonsten wird eine Bewegung detektiert. Alternativ könnte eine Bewegung festgestellt werden, wenn der Beschleunigungssensor oder der Drehratensensor Bewegung detektiert (logisches „ODER“).
-
Entsprechend weiteren Ausführungsbeispielen kann eine Verzögerungsverhinderung implementiert werden. Die Verzögerung resultiert aus der nicht kausalen Bestimmung der Bewegung.
-
Der aktuelle vom Filter ausgegebene Neigungswert liegt standardmäßig zeitlich gesehen eine halbe Bufferlänge hinter dem gemessenen Sensorsignal. Diese Verzögerung ist prinzipbedingt und kann kompensiert werden. Dies geschieht, indem parallel zur normalen Filterberechnung die Winkeländerung über die letzten Bufferwerte (halbe Bufferlänge) berechnet wird und diese Winkeldifferenz auf das Ergebnis der Winkelberechnung des Filters aufaddiert wird (Berechnung auf Quaternionbasis). Somit erhält man ein Winkelsignal ohne Verzögerung.
-
Hiervon ausgehend wird dann, wie bereits oben angesprochen, der Fusionsalgorithmus angepasst.
-
Bei intertialer Beschleunigung werden die Elemente der Rauschkovarianzmatrix des Beschleunigungssensors bzw. statischen Neigungssensors vergrößert (skaliert). Die Rauschkovarianzmatrix repräsentiert die Unsicherheit/Varianz der Messungen eines Sensors. Da beim Vorliegen einer überlagerten Beschleunigung der Gesamtbeschleunigungsvektor im Allgemeinen nicht der Richtung der Gravitation entspricht (der Neigungswinkel kann folglich daraus nicht fehlerfrei berechnet werden), macht es Sinn, die Unsicherheit zu vergrößern und den Einfluss der abweichenden Messung zu reduzieren. Die Beschleunigungsmessung ganz zu verwerfen, würde zu einer unbegrenzten Drift der dann nur anhand des Drehratensensors bestimmten Neigung führen. Außerdem kann über einen längeren Zeitraum meist davon ausgegangen werden, dass im Mittel der gemessene Beschleunigungsvektor in Richtung der Gravitation zeigt (z. B. Fahrzeuge beschleunigen nur kurz und bremsen dann wieder, bevor sie erneut kurz beschleunigen) und somit im Mittel sinnvolle Werte für die Winkelberechnung liefert. Durch die Vergrößerung der Rauschkovarianz werden die einzelnen Messungen automatisch weniger gewichtet. Über einen längeren Zeitraum verhindert sie aber dennoch eine Drift der ermittelten Neigung. Dies kann als stärkere Tiefpassfilterung der Beschleunigung in einem komplementären Filter interpretiert werden.
-
Obwohl manche Aspekte im Zusammenhang mit einer Vorrichtung beschrieben wurden, versteht es sich, dass diese Aspekte auch eine Beschreibung des entsprechenden Verfahrens darstellen, sodass ein Block oder ein Bauelement einer Vorrichtung auch als ein entsprechender Verfahrensschritt oder als ein Merkmal eines Verfahrensschrittes zu verstehen ist. Analog dazu stellen Aspekte, die im Zusammenhang mit einem oder als ein Verfahrensschritt beschrieben wurden, auch eine Beschreibung eines entsprechenden Blocks oder Details oder Merkmals einer entsprechenden Vorrichtung dar. Einige oder alle der Verfahrensschritte können durch einen Hardware-Apparat (oder unter Verwendung eines Hardware-Apparats), wie zum Beispiel einen Mikroprozessor, einen programmierbaren Computer oder eine elektronische Schaltung ausgeführt werden. Bei einigen Ausführungsbeispielen können einige oder mehrere der wichtigsten Verfahrensschritte durch einen solchen Apparat ausgeführt werden.
-
Je nach bestimmten Implementierungsanforderungen können Ausführungsbeispiele der Erfindung in Hardware oder in Software implementiert sein. Die Implementierung kann unter Verwendung eines digitalen Speichermediums, beispielsweise einer Floppy-Disk, einer DVD, einer Blu-ray Disc, einer CD, eines ROM, eines PROM, eines EPROM, eines EEPROM oder eines FLASH-Speichers, einer Festplatte oder eines anderen magnetischen oder optischen Speichers durchgeführt werden, auf dem elektronisch lesbare Steuersignale gespeichert sind, die mit einem programmierbaren Computersystem derart zusammenwirken können oder zusammenwirken, dass das jeweilige Verfahren durchgeführt wird. Deshalb kann das digitale Speichermedium computerlesbar sein.
-
Manche Ausführungsbeispiele gemäß der Erfindung umfassen also einen Datenträger, der elektronisch lesbare Steuersignale aufweist, die in der Lage sind, mit einem programmierbaren Computersystem derart zusammenzuwirken, dass eines der hierin beschriebenen Verfahren durchgeführt wird.
-
Allgemein können Ausführungsbeispiele der vorliegenden Erfindung als Computerprogrammprodukt mit einem Programmcode implementiert sein, wobei der Programmcode dahin gehend wirksam ist, eines der Verfahren durchzuführen, wenn das Computerprogrammprodukt auf einem Computer abläuft.
-
Der Programmcode kann beispielsweise auch auf einem maschinenlesbaren Träger gespeichert sein.
-
Andere Ausführungsbeispiele umfassen das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren, wobei das Computerprogramm auf einem maschinenlesbaren Träger gespeichert ist.
-
Mit anderen Worten ist ein Ausführungsbeispiel des erfindungsgemäßen Verfahrens somit ein Computerprogramm, das einen Programmcode zum Durchführen eines der hierin beschriebenen Verfahren aufweist, wenn das Computerprogramm auf einem Computer abläuft.
-
Ein weiteres Ausführungsbeispiel der erfindungsgemäßen Verfahren ist somit ein Datenträger (oder ein digitales Speichermedium oder ein computerlesbares Medium), auf dem das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren aufgezeichnet ist.
-
Ein weiteres Ausführungsbeispiel des erfindungsgemäßen Verfahrens ist somit ein Datenstrom oder eine Sequenz von Signalen, der bzw. die das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren darstellt bzw. darstellen. Der Datenstrom oder die Sequenz von Signalen kann bzw. können beispielsweise dahin gehend konfiguriert sein, über eine Datenkommunikationsverbindung, beispielsweise über das Internet, transferiert zu werden.
-
Ein weiteres Ausführungsbeispiel umfasst eine Verarbeitungseinrichtung, beispielsweise einen Computer oder ein programmierbares Logikbauelement, die dahin gehend konfiguriert oder angepasst ist, eines der hierin beschriebenen Verfahren durchzuführen.
-
Ein weiteres Ausführungsbeispiel umfasst einen Computer, auf dem das Computerprogramm zum Durchführen eines der hierin beschriebenen Verfahren installiert ist.
-
Ein weiteres Ausführungsbeispiel gemäß der Erfindung umfasst eine Vorrichtung oder ein System, die bzw. das ausgelegt ist, um ein Computerprogramm zur Durchführung zumindest eines der hierin beschriebenen Verfahren zu einem Empfänger zu übertragen. Die Übertragung kann beispielsweise elektronisch oder optisch erfolgen. Der Empfänger kann beispielsweise ein Computer, ein Mobilgerät, ein Speichergerät oder eine ähnliche Vorrichtung sein. Die Vorrichtung oder das System kann beispielsweise einen Datei-Server zur Übertragung des Computerprogramms zu dem Empfänger umfassen.
-
Bei manchen Ausführungsbeispielen kann ein programmierbares Logikbauelement (beispielsweise ein feldprogrammierbares Gatterarray, ein FPGA) dazu verwendet werden, manche oder alle Funktionalitäten der hierin beschriebenen Verfahren durchzuführen. Bei manchen Ausführungsbeispielen kann ein feldprogrammierbares Gatterarray mit einem Mikroprozessor zusammenwirken, um eines der hierin beschriebenen Verfahren durchzuführen. Allgemein werden die Verfahren bei einigen Ausführungsbeispielen seitens einer beliebigen Hardwarevorrichtung durchgeführt. Diese kann eine universell einsetzbare Hardware wie ein Computerprozessor (CPU) sein oder für das Verfahren spezifische Hardware, wie beispielsweise ein ASIC.
-
Die oben beschriebenen Ausführungsbeispiele stellen lediglich eine Veranschaulichung der Prinzipien der vorliegenden Erfindung dar. Es versteht sich, dass Modifikationen und Variationen der hierin beschriebenen Anordnungen und Einzelheiten anderen Fachleuten einleuchten werden. Deshalb ist beabsichtigt, dass die Erfindung lediglich durch den Schutzumfang der nachstehenden Patentansprüche und nicht durch die spezifischen Einzelheiten, die anhand der Beschreibung und der Erläuterung der Ausführungsbeispiele hierin präsentiert wurden, beschränkt sei.