Thema | Konzeption und Entwicklung eines echtzeitfähigen Algorithmus zur Kurvenerkennung |
---|---|
Bearbeitungszeitraum | 01.08.2014 – 14.01.2015 |
Betreuer |
Prof. Dr. rer. nat. Toralf Trautmann Dipl.-Ing. (FH) Erik Unger |
Aufgabenstellung
Mobile Endgeräte finden auch im Fahrzeugeinsatz eine immer stärkere Verbreitung für die dynamische Bereitstellung von verkehrsrelevanten Informationen. Eine wichtige Voraussetzung für eine hohe Qualität ist die genaue Kenntnis der aktuellen Fahrsituation. Im Rahmen der Diplomarbeit sollen die Möglichkeiten und Grenzen der in den Geräten vorhandenen Sensoren für solche Anwendungen objektiv bewertet werden
Arbeitsschwerpunkte:
- Literaturrecherche und Einarbeitung in Matlab/Simulink
- Anforderungsanalyse für echtzeitfähige Systeme
- Entwicklung von Algorithmen zur dynamischen Kurvenerkennung
- Verifizierung der Algorithmen in der Simulation
- Konzeption zur Implementierung in einer Echtzeitumgebung
Grundlagen
Eigenschaften echtzeitfähiger Systeme
Ein echtzeitfähiges System charakterisiert im Wesentlichen die Bearbeitung eingehender Daten und anschließende Ausgabe innerhalb einer vorgegebenen Zeit. Zu unterscheiden ist dabei die harte und die weiche Echtzeit. Bei der harten Echtzeit wird eine Zeitspanne vorgegeben, die unter keinen Umständen überschritten werden darf. Als Beispiel sei das ABS-System zu erwähnen, wo eine Überschreitung der vorgegebenen Zeitspanne zu gefährlichen Situationen führen kann. Bei weichen Echtzeitsystemen ist die Forderung, dass zumindest der Großteil der Berechnungen die geforderte Zeitspanne nicht überschreitet.
Ein weiteres Merkmal echtzeitfähiger Systeme ist die Determiniertheit und Vorhersagbarkeit. Dies bedeutet auch, dass es eine gewisse Sicherheit vor Ausfällen oder Fehlern gibt. Da die Nutzung mobiler Endgeräte nur der Informationssammlung dient und keinen direkten Einfluss auf die gegebenen Fahrzustände erzeugt, besteht keinerlei Gefahr für Menschen, anderer Lebewesen und Sachen durch den Ausfall des Systems. Somit ist eine Risikobewertung unnötig.
Ein Hauptmerkmal echtzeitfähiger Systeme ist die ständige Betriebsbereitschaft des Systems. Auslösekriterium ist bei einem zeitgesteuerten System die Überschreitung eines Zeitpunkts, während bei ereignisgesteuerten Systemen auf eine Zustandsänderung gewartet wird.
Um die Echtzeitfähigkeit komplexer Systeme zu garantieren, werden diese meist in kleinere Rechensysteme unterteilt (verteilte Echtzeitsystem, z.B. Flugzeug). Dies ermöglicht die Prozessabarbeitung auf kleineren Einzelsystemen, wobei die verwendeten Rechensysteme über das Senden und Empfangen miteinander in Verbindung stehen. Im zentralisierten Echtzeitsystem hingegen wird der gesamte Prozess auf einem Rechensystem verarbeitet (z.B. Herzschrittmacher).
In der Programmierung echtzeitfähiger Systeme sind kaum Einschränkungen gegeben. Die Verwendung von Schleifen können zwar zu einer Überschreitung der Zeitgrenze führen, fließen aber häufig, bei Kenntnis der Anzahl an Schleifendurchläufen, in die Zeitbetrachtung mit ein. Lediglich Zufallsalgorithmen sind nicht verwendbar, da bei ihnen die Determiniertheit des Systems nicht gewährleistet werden kann.
verwendete Messtechnik
Für die Bearbeitung des Themas steht ein Apple iPad 4g mini zur Verfügung. Dieses verfügt über eine App, die eine Messwertaufzeichung und anschliessende Verabeitung ermöglicht. Die Messwerte werden von den integrierten Sensoren (GPS-Receiver, Drehratensensor und Beschleunigungssensor) aufgenommen.
Beim Beschleunigungssensor handelt es sich um einen MEMS-Sensor (mikro-elektro-mechanisches System) mit einer gefedert aufgehängten Masse. Sobald auf die Masse eine Beschleunigung wirkt, wird diese aus ihrer Ruhelage bewegt. Dabei ändert sich der Abstand zu einer Bezugselektrode, was eine Änderung der Kapazität zu Folge hat. Diese Kapazitätsänderung ist dabei ein Maß für die Beschleunigung.
Beim Drehratensensor handelt es sich auch um ein MEMS. Hierbei wird jedoch eine Masse dauerhaft zum Schwingen gebracht. Sobald eine Drehbewegung der Sensoreinheit erfolgt, verformt sich die schwingende Masse aufgrund der Wirkung einer Scheinkraft (Corioliskraft). Diese Verformung hat eine Abstandsänderung zu einer Bezugselektrode zur Folge, die wiederum eine Kapazitätsänderung erzeugt. Da die Schwingungsanregung zweier gegenüberliegender Massen gegenläufig erfolgt, resultiert auch eine gegenläufige Abstandsänderung zu der Bezugselektrode. Dadurch wird eine einfachere Auswertung der Signale ermöglicht.
Im iPad 4g mini ist ein single-chip A-GPS Receiver verbaut (A-GPS= Assisted Global Positioning System). Dieser ermöglicht eine kürzere Aufstartzeit (Zeit bis zum ersten festlegen der Koordinaten) durch Verwendung eines Hilfsnetzwerkes, z.B. GSM-Mobilfunknetz. Über dieses Hilfsnetz werden die Hilfsdaten, wie Positionsdaten der GPS-Satelliten, übermittelt. Zudem ist es möglich die Positionsbestimmung bei geringer Signalstärke über die Position der Mobilfunkmasten zu konkretisieren.
Vom GPS-System zur Verfügung gestellt werden die GPS-Koordinaten (Longitude, Latitude, Altitude), die GPS-Geschwindigkeit und die GPS-Orientierung (Bewegungsrichtung).
Die für die Auswertung erforderlichen Vergleichsmesswerte konnten dem Fahrzeug entnommen werden. Hierfür stand das CANalizer-System von Vector Informatik GmbH zur Verfügung. Dieses System erlaubt es, Daten von dem Fahrzeuginternen CAN-Bussystem abzugreifen und aufzuzeichnen.
Fahrdynamische Grundlagen
Während der Bewegung eines Fahrzeugs wirken die unterschiedlichsten Kräfte. In der Fahrzeugtechnik lassen sich diese Einteilen in die Längsdynamik, Vertikaldynamik und die Querdynamik. Besonders geeignet ist die Betrachtung der Querdynamik zur Einschätzung des Lenkverhaltens eines Fahrzeugs, da die durch Lenkbewegung verursachten Querbewegungen den Großteil der Reaktionen verursacht.
Das Verhalten des Fahrzeugs lässt sich hierbei näherungsweise mit dem linearen Einspurmodell beschreiben. Um ggf. störende Einflüsse, die durch das Wanken des Fahrzeugs verursacht werden, zu eliminieren, sind in diesem Modell mehrere Vereinfachungen getroffen wurden. So werden z.B. die beiden Fahrzeugachsen zu jeweils einem Rad zusammengefasst und der Schwerpunkt des Fahrzeugs auf Fahrbahnhöhe gelegt. Desweiteren wird die Annahme getroffen, dass sich die aus dem Seitenwind resultierende Seitenkraft proportional zum Anströmwinkel und sich die Reifenseitenkraft proportional zum Schräglaufwinkel ändert.
Aus diesem Modell heraus können Rückschlüsse auf den Eigenlenkgradient, den Schwimmwinkel und Schwimmwinkelgradient, dem Gierverstärkungsfaktor und dem Dämpfungsgrad des Fahrzeugs bei einem Lenkwinkelsprung gezogen werden.
Konstruktive Ausgestaltung der Straßen
In welcher Form und Größe sich fahrdynamische Parameter einstellen, hängt unmittelbar vom Verlauf der abgefahrenen Strecke ab. Konstruktiv gesehen sind Straßen Verbindungen zwischen Ortschaften, die einen komfortablen und schnellen Ortswechsel ermöglichen sollen. Dies setzt unter anderem eine feste Fahbahnoberfläche vorraus, die jedoch eine schlechtere Wasserabführung besitzt als offener Untergrund. Daher wird im Straßenbau immer eine gewisse Quer bzw. Längsneigung vorgesehen. Darüber hinaus ist es notwendig eine Kurve mit einer Klothoide einzuleiten. Dadurch wird die Notwendigkeit eines Lenkwinkelsprungs vermieden.
Grundlagen des Kálmán-Filters
Für die Rekonstruktion der Fahrstrecke und der Glättung eingehender Messwert ist eine Filterung erforderlich. Hierfür eignet sich besonders das Kálmán-Filter.
Das Kálmán-Filter ist ein Satz mathematischer Gleichungen die es erlauben, nicht direkt messbare Größen zu schätzen. Vorteil des Kálmán-Filters ist vor allem seine Echtzeitfähigkeit, die Möglichkeit der Einbindung von Vorwissen (z.B. Sensorvarianzen) und Rauschmodellen, der übersichtliche Formelsatz und das Verhalten eines Tief-Pass-Filters. Dabei arbeitet das Kálmán-Filter in zwei Schritten:
- Im Prädiktorschritt erfolgt zunächst eine Schätzung des kommenden Zustands. Diese Schätzung erfolgt aus den Werten vorhergehenden Zustands.
- Im Korrekturschritt erfolgt anschließend die Aufarbeitung mit den eingehenden Messwerten. Dabei wird durch das sogenannte Kálmán-Gain entschieden, welches Vertrauen in die Korrektheit der Messwerte gelegt wird. Das Ergebnis des Korrekturschritts ist wiederum ein Schätzwert der dem wahren Zustand des Systems am nächsten kommt.
Da die Schätzung des kommenden Zustands immer aus den Werten des vorhergehenden Zustands erfolgt, ist zu Beginn der Messung eine manuelle Anfangsschätzung des Systemzustands und dessen Kovarianzmatrix erforderlich. Hierbei werden zur Beschreibung des Systemzustands dem Kálmán-Filter die ersten eingehenden Messwerte übergeben. Die Schätzung der Kovarianzmatrix kann beliebig erfolgen, da sich dieser schnell an den wahren Wert annähert.
Die für diesen Fall relevanten Gleichungen sind in der folgenden Abbildung dargestellt.
Um auch für nichtlineare Zustandsbeschreibungen das Kálmán-Filter verwenden zu können, müssen die Gleichungen einer Linearisierung unterzogen werden. Dies geschieht durch die Entwicklung sogenannter Jacobi-Matrizen. In den Jacobi-Matrizen
[Math]J_A[/Math]
und
[Math]J_D[/Math]
werden die partiellen Ableitungen der Zustandsgleichungen
[Math]g_A[/Math]
und der Messgleichungen
[Math]g_D[/Math]
nach den Zustandsgrößen
[Math]x[/Math]
abgelegt.
Auslegung der Kurvendefinition
Um Kurven und Geraden voneinander unterscheiden zu können, ist die Definition einer Kurve erforderlich. Diese kann jedoch nur aus den zur Verfügung stehenden Messwerten durchgeführt werden. Die Beschleunigungswerte sind hierfür jedoch nicht geeignet, da bereits aus der Querneigung der Straßen Beschleunigungswerte resultieren. Daher dient allein der Quotient aus Geschwindigkeit und Drehrate
[Math]R=\frac{v_{GPS}}{\dot{\psi}}[/Math]
zur Unterscheidung zwischen Kurve und Gerade. Da die Berechnung aus Messwerten erfolgt, besitzen auch die Radiuswerte eine gewisse Ungenauigkeit. Im Fall eines Geradenabschnitts werden die Radiuswerte jedoch so hoch ausfallen, dass durch unterschreiten eines Maximalwertes, eine eindeutige Abgrenzung zu einer Gerade erfolgen kann.
Hinzu kommt die Zeit die eine Kurve in Anspruch nimmt. Dadurch wird eine Unterteilung der Kurven in
- Korrekturlenkbewegung
- Ausweichmanöver
- Kurvenfahrt resultierend aus dem Streckenverlauf.
Von Interesse sind jedoch nur das Ausweichmanöver und die Kurvenfahrt resultierend aus dem Streckenverlauf.
Um eine Erkennung von kritischen Kurven zu ermöglichen, können die Beschleunigungswerte verwendet werden. Dabei besteht die Möglichkeit die Werte des Beschleunigungssensors zu nutzen oder eine Berechnung der Querbeschleunigung aus
[Math]a_{Quer}=v_{GPS}*\dot{\psi}[/Math]
durchzuführen.
Sensorbewertung
Die durchgeführten Messungen zur Beurteilung der Sensoren wurden in Ruhelage über einen längeren Zeitraum mit dem Beschleunigungssensor, Drehratensensor und dem GPS-Sensor durchgeführt.
Beschleunigungssensor
Laut Datenblatt des Beschleunigungssensors, besitzt dieser einen Messbereich von [Math]\pm 2g – \pm 8g.[/Math] Dem zugrunde liegt eine variierende Sensitivität von [Math]0,9mg/digit – 4,3mg/digit.[/Math] Neben diesen Grundgrößen variiert das Offset bei 0g in einem Bereich von [Math]\pm 20mg.[/Math]
Während der durchgeführten Messungen bestätigten sich die genannten Parameter. Jedoch offenbarte sich das wesentliche Problem mit dem variierenden Offset.
Durch die in die Messung gelegte Ausgleichsfunktion 3. Grades lässt sich diese Variation kenntlich machen. Da die Variation des Offsets in diesem Beispiel nur eine geringe Schwankungsbreite aufweist, liegen die Standardabweichung der gesamten Messung und die Standardabweichung um die Ausgleichsfunktion nahe bei einander. Bei anderen Messungen konnte jedoch ein größerer Unterschied festgestellt werden.
Drehratensensor
Laut Datenblatt des Drehratensensors, besitzt dieser einen Messbereich von [Math]\pm 200 \textdegree{}/s – \pm 2000 \textdegree{}/s.[/Math] Die Sensitivität des Sensors variiert diesbezüglich im Bereich von [Math]8,75 \frac{m\textdegree{}}{s*digit} – 70 \frac{m\textdegree{}}{s*digit}.[/Math] Beim Drehratensensor werden jedoch, je nach Messbereich, unterschiedliche Null-Drehraten-Offsetbereiche angegeben. Diese variieren in einem Bereich von [Math] 10\textdegree{}/s – 75\textdegree{}/s.[/Math]
Besonders bei dem Drehratensensor zeigt sich das Problem des variierenden Offsets. Zu Beginn der gezeigten Messung vollzieht dieser sogar einen Vorzeichenwechsel. Da hier ein großer Schwankungsbereich aufgespannt wird, resultieren auch erhebliche Abweichungen zwischen den ermittelten Standardabweichungen.
GPS-Sensor
Beim GPS-Sensor besteht das Problem, dass eine genaue Analyse der Genauigkeit nur über einen Zeitraum von mehr als 24 Stunden an einem GPS-Referenzpunkt ermittelt werden kann. Dies liegt vor allem daran, dass die Satellitenpositionen ständig variieren und somit auch die Signalqualität. Daher wurde nur eine Analyse der Abweichungen um einen Mittelwert durchgeführt. Die genaue Positionsabweichung ist nicht bestandteil der Ergebnisse.
In der Abbildung werden die Koordinaten der Aufstartzeit und der regulären Messung getrennt voneinander dargestellt. Die Aufstartzeit ist die Zeit, in der die Aktualisierung des Almanach bzw. Ephemeriden noch nicht abgeschlossen wurde. Hier kann es, wie in der Abbildung ersichtlich, zu erheblichen Abweichungen der Koordinaten kommen. Der Mittelwert und die Standardabweichung sind hier aus den Koordinaten der regulären Messung ermittelt worden.
Neben den Koordinaten wurden auch die GPS-Geschwindigkeit und -Orientierung betrachtet. Hier besteht jedoch das Problem, dass diese Werte nur bei Bewegung des GPS-Empängers sich dem wahren Wert annähern. Da die Messungen in Ruhelage und nicht unter einem definierten Bewegungszustand durchgeführt wurden, kann auch keine aussagekräftige Analyse der Messwerte durchgeführt werden. Um dennoch Varianzen für GPS-Geschwindigkeit und -Orientierung zu erhalt, wurde eine mathematische Betrachtung (Fehlerfortplanzung) aus den Koordinatenabweichungen durchgeführt.
Konzeption der Kurvenerkennung
Messwertanpassung
Um eine einwandfrei Funktion des Algorithmus zu gewährleisten, ist zunächst eine Anpassung der eingehenden Messwerte erforderlich. Zu aller erst werden dabei die eingehenden Messwerte auf die, in der Berechnung verwendeten Einheiten umgeformt. im Anschluss erfolgt die Offsetkorrektur, die vor allem für die Drehrate von großer Bedeutung ist. Die Erkennung erfolgt dabei unter Einhaltung gewisser Vorgaben aus der Offseterkennung, bei der die Steigung eines erfassten Bereichs dem Offset entspricht.
Um ggf. die GPS-Orientierung als Messwert verwenden zu können, muss der Verlauf zunächst stetig gemacht und mit einem Korrekturfaktor, der die Winkeldefinitionen angleicht, belegt werden.
Entwicklung der Kálmán-Filter-Gleichungen
Mit den angepassten Messwerten kann nun die Kálmán-Filterung durchgeführt werden. Die Beschreibung des Systemzustands erfolgt hierbei über das sogenannte CTRV-Modell („Contant Turn Rate and Velocity“).
Da es sich hierbei um eine nichtlineare Zustandsbeschreibung handelt, ist die Verwendung des extended Kálmán-Filter und somit Entwicklung der Jacobi-Matrizen erforderlich.
Die Messgleichung sieht dabei wie Folgt aus.
In der Messrauschkovarianzmatrix werden auf der Hauptdiagonalen einfach die ermittelten Sensorvarianzen hinterlegt.
In der Prozessrauschkovarianzmatrix sind die Ungenauigkeiten, die aus der näherungsweisen Beschreibung des Systemzustands zurückzuführen sind, abgelegt. Dabei wird die Annahme getroffen, dass die Ungenauigkeiten mit der doppelten Sensorvarianz auftreten.
Die Anfangsschätzung der Systemzustands-Kovarianzmatrix sieht wie Folgt aus.
Kurvenerkennung und Einteilung
Aus den Kálmán-Filter-Daten erfolgt anschließend die Erkennung und Einteilung der Kurven.
Für die Einteilung sind zunächst 7 Kategorien vorgesehen, wobei die erste nur für die erkannten Geradenabschnitte beinhaltet.
Die Einteilung der Kurven erfolgt auf Basis gewisser Parameter wie Geschwindigkeit, Kurvenradius, Querbeschleunigung und Zeit.Auswertung
Betrachtung der Messfahrte
Zu Beginn der Auswertung soll eine Betrachtung der Messfahrten durchgeführt werden. Charakteristisch für die Messfahrt im Campusbereich ist ein Abschnitt in der eine Sinusfahrt durchgeführt wurde. Die Langzeitmessung charakterisiert im wesentlichen die lange Zeit in der keine Offseterkennung durchgeführt werden konnte, sowie einen Abschnitt mit einer Geschwindigkeit größer 80 km/h und einer Fahrt auf einem Parkplatz.
Bei der Messfahrt im Campusbereich kommt nur ein Abschnitt vor in dem eine Offseterkennung durchgeführt werden konnte. Ein weiterer Abschnitt mit der Geschwindigkeit 0 war zwar vorhanden, jedoch konnte in diesem das Zeitkriterium nicht eingehalten werden. In der Kálmán-Filterung zeigt sich dies in einer Verdrehung der rekonstruierten Fahrstrecke. Dieser Effekt konnte durch eine Neuinitialisierung des Kálmán-Filters kurzzeitig korrigiert werden.
Erkannt werden konnten in diesem Beispiel sowohl Kurven die aus der Straßenführung hervorgehen als auch Korrekturlenkbewegungen. Aber auch die Sinusfahrt konnte erkannt werden. Um die Erkennung von Korrekturlenkbewegungen zu vermeiden, kann eine Zeitanpassung der Kurvendefinition durchgeführt werden.
In der Langzeitmessung zeigt sich besonders das Problem des variierenden Offsets. Dies wird in den besonders starken Abweichungen des Streckenverlaufs deutlich. Durch eine Neuinitialisierung des Kálmán-Filter konnte dies auch nur zum Teil korrigiert werden. Daher wurde eine Änderung der Messgleichung des Kálmán-Filters vorgenommen. Zusätzlich zu der GPS-Geschwindigkeit und der Drehrate, wurde nun auch die GPS-Orientierung als Messwert verwendet. Durch diese Änderung kann eine deutliche Verbesserung des Streckenverlaufs realisiert werden.
Einen Einfluss auf die Kurvenerkennung hat diese Änderung nicht, da weiterhin nur die GPS-Geschwindigkeit, die Drehrate und die Zeit dafür verwendet werden. Wie im voran gegangenen Beispiel, wurden auch hier wieder Korrekturlenkbewegungen und Kurven resultierend aus dem Straßenverlauf erkannt.
Beurteilung erkannter Kurven
Die Auswertung erkannter Kurven soll nun gesondert durchgeführt werden. Bei den in den Abbildungen gezeigten Radienverläufen handelt es sich zum einen um die Werte die vom iPad gewonnen wurden und zum anderen um die Daten vom CAN-Bus des Fahrzeugs.
Besonders interessant sind dabei die Kurven der Sinusfahrt. Da die gefahrenen Kurven nicht dem Straßenverlauf entsprechen, kann hier mit der Software Google Earth Pro 7.1 (Testversion) kein Referenzbereich festgelegt, sondern nur ein Vergleich mit den CAN-Daten des Fahrzeugs durchgeführt werden. Dabei zeigt sich, dass trotz der stark verrauschten iPad-Werte eine gute Übereinstimmung mit den CAN-Daten vorliegt. Die Differenz zwischen beiden Ergebnissen hat dabei einen Wert von 5m nicht überschritten.
Eine weitere interessante Kurve, ist eine während der Langzeitmessung erkannte Doppelkurve. Bei dieser Kurve handelt es sich eigentlich um zwei voneinander unabhängigen Kurven, die vom System jedoch als eine Kurve wahrgenommen wurde. In der Auswertung wurde jedoch jede Kurve für sich betrachtet. Dabei zeigte sich wiederum eine gute Übereinstimmung der iPad- und CAN-Werte. Die Differenz zwischen beiden Werte lag hier bei ca. 2,5m.
Der gesetzte Referenzbereich wurde bei beiden Kurven eingehalten.
Zusammenfassung
Zusammenfassend lässt sich sagen, dass durch das entwickelte Konzept die Echtzeitfähigkeit des Systems grundsätzlich gewährleistet werden kann. Dies hängt natürlich noch von der verwendeten Technik sowie der Auslastung des Rechensystems ab. Bei der Auswertung offenbarte sich besonders das Problem der Offseterkennung.
Die in mobilen Endgeräten verbaute Sensorik dient nicht dazu wissenschaftliche Anforderungen zu erfüllen, weshalb in dieser Hinsicht auch Einschränkungen in der Genauigkeit getroffen werden müssen. Eine zuverlässige Kurvenerkennung ist dennoch erreicht wurden, besonders für Kurven mit einem geringen Kurvenradius bzw. hoher Drehrate. Abstriche in der Genauigkeit der Ergebnisse müssen jedoch aufgrund der fehlerbehafteten GPS-Geschwindigkeit getroffen werden. Eine Verbesserungsmöglichkeit des Systems wäre, die Ausrichtung des iPad-Koordinatensystems automatisch durchzuführen. Des weiteren kann auf die Nutzung der GPS-Geschwindigkeit verzichtet werden, wenn ein Zugang des mobilen Endgeräts zur OBD-II-Schnittstelle bestehen würde. Dies ermöglicht die Nutzung der Fahrzeuggeschwindigkeitswerte, die im wesentlichen dynamischer Bereitgestellt wird als die GPS-Geschwindigkeit. Die Speicherung der gesammelten Informationen kann dazu dienen, bei erneuter Durchfahrt einer Strecke, Hinweise zu erzeugen, die zu einer Verbesserung der Kurvensicherheit führen.