-
Technisches Gebiet
-
Ausführungsbeispiele befassen sich mit einer Vorrichtung und einem Verfahren zum Trainieren eines Neuronalen Netzwerks zur Bestimmung eines Drehwinkels eines Objekts und einer Vorrichtung, einem System und einem Verfahren zum Bestimmen eines Drehwinkels eines Objekts.
-
Hintergrund
-
Winkelsensoren finden häufig Verwendung in der Automobilindustrie zum Beispiel für Servolenkungen oder für Antiblockiersysteme (ABS). Winkelsensoren umfassen Komponenten wie z.B. einen Magneten und Magnetsensoren, um einen Drehwinkel eines rotierenden Objekts, wie z.B. einer Welle zu bestimmen. Bei der Herstellung und Assemblierung von Winkelsensoren kann eine Fehlausrichtung der Komponenten meistens nicht vollständig vermieden werden. Zudem können Positionsabweichungen von Magnet und Magnetsensoren aufgrund von Vibrationen, die z.B. durch den Betrieb des Winkelsensors oder den Betrieb von benachbarten Vorrichtungen in der Umgebung entstehen, auftreten. Ferner können Vorrichtungen von Elektrofahrzeugen aufgrund hoher elektrischer Ströme magnetische Streufelder verursachen, die sich mit dem Magnetfeld des Winkelsensors überlagern können. Abweichende Ausrichtungen von Winkelsensor-Komponenten und überlagernde magnetische Streufelder können die Winkelbestimmung beeinträchtigen bzw. die Messgenauigkeit reduzieren.
-
Um den Einfluss der Fehlausrichtung zu minimieren, werden einerseits aufwändige Verfahren auf der Herstellungsebene von Winkelsensoren eingesetzt. Andererseits werden Winkelsensoren kalibriert, um einen Fehler in der Winkelbestimmung kompensieren zu können. Andere Methoden verwenden Winkelsensoren, die einen Magneten mit einem größeren Durchmesser haben. Magnete mit einem größeren Durchmesser können ein stärkeres Magnetfeld erzeugen, sodass ein Fehler bei der Bestimmung des Drehwinkels reduziert werden kann. Allerdings sind die genannten Konzepte häufig mit höheren Produktions- oder Entwicklungskosten verbunden.
-
Um den Einfluss von externen Magnetfeldern zu reduzieren, werden kostenintensive Methoden angewandt, um eine Abschirmung des Magnetfeldsensors von der Außenumgebung zu gewährleisten. Differentielle Messmethoden mit mehreren Magnetsensoren werden herangezogen, um die Überlagerung von externen Magnetfeldern zu korrigieren. Allerdings sind Winkelsensoren mit differentieller Messung häufig noch anfälliger auf Fehlausrichtungen von Winkelsensor-Komponenten, was wiederum die Genauigkeit der Drehwinkelbestimmung beschränkt.
-
Mittels induktiver Sensoren kann eine Winkelbestimmung bei auftretenden magnetischen Streufeldern teilweise genauer erfolgen. Für eine 360°-Winkelbestimmung sind induktive Winkelsensoren jedoch kostspielig und komplex. Zudem haben diese Winkelsensoren einen höheren Platzbedarf mit z.B. mehr als 30mm, was für viele Anwendungen oftmals nicht tolerierbar ist.
-
Dieser Zustand gibt Anlass dazu, ein besseres Konzept für Winkelsensoren zu ermöglichen, um Drehwinkel besser, genauer, mit einem kleineren Fehler, einfacher oder kostengünstiger bestimmen zu können.
-
Zusammenfassung
-
Diese Aufgabe kann von den in den unabhängigen Patentansprüchen definierten Gegenständen gelöst werden.
-
Ein Ausführungsbeispiel befasst sich mit einer Vorrichtung zum Trainieren eines Neuronalen Netzwerks zur Bestimmung eines Drehwinkels eines Objekts. Die Vorrichtung ist ausgebildet zum Empfangen von Systemdaten über ein Sensorsystem zum Messen eines Magnetfelds, um den Drehwinkel zu bestimmen. Ferner ist die Vorrichtung ausgebildet zum Erzeugen von Fehlerdaten, die zumindest eine Abweichung der Systemdaten von einem Sollzustand des Sensorsystems oder die Stärke der Komponenten eines überlagerten externen Magnetfelds umfassen. Die Vorrichtung ist ferner ausgebildet zum Erstellen von Trainingsdaten unter Verwendung der Systemdaten und der Fehlerdaten und zum Trainieren des Neuronalen Netzwerks mittels der Trainingsdaten. Systemdaten umfassen beispielsweise Informationen über die geometrische Anordnung von Magneten und Magnetsensoren, die Anzahl von Magnetsensoren oder über die Form des Magneten eines Winkelsensors. Basierend auf den Systemdaten können Fehlerdaten erzeugt werden. Fehlerdaten können eine Abweichung z.B. von einer idealen geometrischen Position des Magneten oder des Magnetsensors oder von einer idealen Form des Magneten umfassen. Fehlerdaten umfassen beispielsweise mögliche verdrehte Anordnungen von Magnetsensoren relativ zum Magneten oder potenzielle Formabweichungen eines z.B. Ferromagneten von einer idealen kreisrunden Form. Ferner können die Fehlerdaten verschiedene Stärken von externen Magnetfeldkomponenten umfassen, die z.B. in einer Umgebung des Winkelsensors entstehen und sich mit dem Magnetfeld des Winkelsensors überlagern. Basierend auf den Systemdaten und den Fehlerdaten können Trainingsdaten zur Verfügung gestellt werden, um ein künstliches Neuronales Netzwerk zum Bestimmen eines Drehwinkels trainieren zu können. Trainingsdaten können einen Zusammenhang zwischen Sensordaten von Magnetsensoren und Drehwinkeln wiedergeben. Das trainierte Neuronale Netzwerk kann basierend auf (fehlerbehafteten) Sensordaten von Winkelsensoren, die z.B. geometrische Abweichungen umfassen oder einem externen Magnetfeld ausgesetzt sind, Drehwinkel mit einem kleineren Fehler bestimmen. Unter Verwendung der Vorrichtung können mittels einfach (nicht-komplex) hergestellten, kostengünstigen Winkelsensoren, die z.B. geometrische Abweichungen umfassen und/oder nicht (aufwändig) kalibriert oder abgeschirmt wurden, Drehwinkel mit kleineren Fehlern bestimmt werden.
-
Ein Ausführungsbeispiel befasst sich mit einer Vorrichtung zum Bestimmen eines Drehwinkels eines Objekts. Die Vorrichtung ist ausgebildet zum Empfangen von Sensordaten eines ersten Sensors und eines zweiten Sensors von einem Sensorsystem zum Messen eines Magnetfelds. Die Vorrichtung ist ferner ausgebildet zum Bestimmen des Drehwinkels mittels eines trainierten Neuronalen Netzwerks. Das trainierte Neuronale Netzwerk verwendet die Sensordaten des ersten Sensors und des zweiten Sensors als Eingangsdaten. Sensordaten können beispielsweise von einem ersten und zweiten Hallsensor zur Verfügung gestellt werden. Die Sensordaten können Informationen über (eine) detektierte Magnetfeldkomponente(n) eines Magnetfelds im Sensorsystem umfassen. Das Magnetfeld kann von einem rotierbaren Magneten oder Encoder erzeugt werden. Das trainierte Neuronale Netzwerk kann die Sensordaten des Winkelsensors empfangen und zu einer Ausgangsinformation verarbeiten, um einen Drehwinkel des Magneten bzw. Encoders bestimmen zu können. Das Neuronale Netzwerk der Vorrichtung kann derart trainiert sein, dass basierend auf (fehlerbehafteten) Sensordaten ein Drehwinkel mit einem kleineren Fehler bestimmt werden kann. (Fehlerbehaftete) Sensordaten können beispielsweise von einem Winkelsensor erzeugt werden, der z.B. Komponenten mit einer geometrischen Abweichung von einem Sollwert umfasst oder einem externen Magnetfeld ausgesetzt ist. Mittels der Vorrichtung kann eine aufwändige Herstellung oder kostenintensive Kalibrierung oder Abschirmung von Winkelsensoren vermieden werden.
-
Ein Ausführungsbeispiel befasst sich mit einem Verfahren zum Trainieren eines Neuronalen Netzwerks zur Bestimmung eines Drehwinkels eines Objekts. Das Verfahren umfasst ein Empfangen von Systemdaten über ein Sensorsystem zum Messen eines Magnetfelds, um den Drehwinkel zu bestimmen. Ferner umfasst das Verfahren ein Erzeugen von Fehlerdaten, die zumindest eine Abweichung der Systemdaten von einem Sollzustand des Sensorsystems oder die Stärke der Komponenten eines überlagerten externen Magnetfelds umfassen. Das Verfahren umfasst ferner ein Erstellen von Trainingsdaten unter Verwendung der Systemdaten und der Fehlerdaten und ein Trainieren des Neuronalen Netzwerks mittels der Trainingsdaten. Systemdaten umfassen beispielsweise Informationen über die geometrische Anordnung von Magneten und Magnetsensoren, die Anzahl von Magnetsensoren oder über die Form des Magneten eines Winkelsensors. Basierend auf den Systemdaten können Fehlerdaten erzeugt werden. Fehlerdaten können eine Abweichung z.B. von einer idealen geometrischen Position des Magneten oder des Magnetsensors oder von einer idealen Form des Magneten umfassen. Fehlerdaten umfassen beispielsweise mögliche verdrehte Anordnungen von Magnetsensoren relativ zum Magneten oder potenzielle Formabweichungen eines z.B. Ferromagneten von einer idealen kreisrunden Form. Ferner können die Fehlerdaten verschiedene Stärken von externen Magnetfeldkomponenten umfassen, die z.B. in einer Umgebung des Winkelsensors entstehen und sich mit dem Magnetfeld des Winkelsensors überlagern. Basierend auf den Systemdaten und den Fehlerdaten können Trainingsdaten zur Verfügung gestellt werden, um ein künstliches Neuronales Netzwerk zum Bestimmen eines Drehwinkels trainieren zu können. Trainingsdaten können einen Zusammenhang zwischen Sensordaten von Magnetsensoren und Drehwinkeln wiedergeben. Das trainierte Neuronale Netzwerk kann basierend auf (fehlerbehafteten) Sensordaten von Winkelsensoren, die z.B. geometrische Abweichungen umfassen oder einem externen Magnetfeld ausgesetzt sind, Drehwinkel mit einem kleineren Fehler bestimmen. Unter Anwendung des Verfahrens können mittels einfach (nicht-komplex) hergestellten, kostengünstigen Winkelsensoren, die z.B. geometrische Abweichungen umfassen und/oder nicht (aufwändig) kalibriert oder abgeschirmt wurden, Drehwinkel mit kleineren Fehlern bestimmt werden.
-
Ein Ausführungsbeispiel eines Verfahrens zum Bestimmen eines Drehwinkels eines Objekts umfasst ein Empfangen von Sensordaten eines ersten Sensors und eines zweiten Sensors von einem Sensorsystem zum Messen eines Magnetfelds. Ferner umfasst das Verfahren ein Bestimmen des Drehwinkels mittels eines trainierten Neuronalen Netzwerks. Das trainierte Neuronale Netzwerk verwendet die Sensordaten des ersten Sensors und des zweiten Sensors als Eingangsdaten. Sensordaten können beispielsweise von einem ersten und zweiten Hallsensor zur Verfügung gestellt werden. Die Sensordaten können Informationen über (eine) detektierte Magnetfeldkomponente(n) eines Magnetfelds im Sensorsystem umfassen. Das Magnetfeld kann von einem rotierbaren Magneten oder Encoder erzeugt werden. Das trainierte Neuronale Netzwerk kann die Sensordaten des Winkelsensors empfangen und zu einer Ausgangsinformation verarbeiten, um einen Drehwinkel des Magneten bzw. Encoders bestimmen zu können. Das Neuronale Netzwerk der Vorrichtung kann derart trainiert sein, dass basierend auf (fehlerbehafteten) Sensordaten ein Drehwinkel mit einem kleineren Fehler bestimmt werden kann. (Fehlerbehaftete) Sensordaten können beispielsweise von einem Winkelsensor erzeugt werden, der z.B. Komponenten mit einer geometrischen Abweichung von einem Sollwert umfasst oder einem externen Magnetfeld ausgesetzt ist. Unter Anwendung des Verfahrens kann eine aufwändige Herstellung oder kostenintensive Kalibrierung oder Abschirmung von Winkelsensoren vermieden werden.
-
Figurenliste
-
Einige Beispiele von Vorrichtungen und/oder Verfahren werden nachfolgend bezugnehmend auf die beiliegenden Figuren lediglich beispielhaft näher erläutert. Es zeigen:
- 1 ein Ausführungsbeispiel einer Vorrichtung zum Trainieren eines Neuronalen Netzwerks zur Bestimmung eines Drehwinkels eines Objekts;
- 2 beispielhaft ein Konzept zum Trainieren eines Neuronalen Netzwerks zur Bestimmung eines Drehwinkels eines Objekts;
- 3 ein Beispiel für ein Simulationsmodell zum Erstellen von Trainingsdaten;
- 4 ein Beispiel für kumulative Wahrscheinlichkeiten von Drehwinkelfehlern basierend auf Abweichungen von Systemdaten von einem Sollzustand des Sensorsystems;
- 5 ein Beispiel für kumulative Wahrscheinlichkeiten von Drehwinkelfehlern basierend auf Abweichungen von Systemdaten von einem Sollzustand des Sensorsystems und einem überlagernden externen Magnetfeld;
- 6 ein Ausführungsbeispiel einer Vorrichtung zum Bestimmen eines Drehwinkels eines Objekts;
- 7 ein Beispiel für eine Architektur eines (trainierten) Neuronalen Netzwerks zum Bestimmen eines Drehwinkels eines Objekts;
- 8 ein Ausführungsbeispiel eines Systems zum Bestimmen eines Drehwinkels eines Obj ekts;
- 9 ein weiteres Ausführungsbeispiel eines Systems zum Bestimmen eines Drehwinkels eines Objekts;
- 10 ein Beispiel für kumulative Wahrscheinlichkeiten von Drehwinkelfehlern basierend auf unterschiedlichen radialen Abständen von Sensoren eines Sensorsystems;
- 11 ein weiteres Ausführungsbeispiel eines Systems zum Bestimmen eines Drehwinkels eines Objekts;
- 12 ein Beispiel für eine Ausgabe einer Vorrichtung oder eines Systems zum Bestimmen eines Drehwinkels eines Objekts;
- 13 ein Flussdiagramm eines Ausführungsbeispiels eines Verfahrens zum Trainieren eines Neuronalen Netzwerks zur Bestimmung eines Drehwinkels eines Objekts; und
- 14 ein Flussdiagramm eines Ausführungsbeispiels eines Verfahrens zum Bestimmen eines Drehwinkels eines Objekts.
-
Beschreibung
-
Einige Beispiele werden nun ausführlicher Bezug nehmend auf die beiliegenden Figuren beschrieben. Weitere mögliche Beispiele sind jedoch nicht auf die Merkmale dieser detailliert beschriebenen Ausführungsformen beschränkt. Diese können Modifikationen der Merkmale sowie Entsprechungen und Alternativen zu den Merkmalen aufweisen. Ferner soll die Terminologie, die hierin zum Beschreiben bestimmter Beispiele verwendet wird, nicht einschränkend für weitere mögliche Beispiele sein.
-
Gleiche oder ähnliche Bezugszeichen beziehen sich in der gesamten Beschreibung der Figuren auf gleiche oder ähnliche Elemente beziehungsweise Merkmale, die jeweils identisch oder auch in abgewandelter Form implementiert sein können, während sie die gleiche oder eine ähnliche Funktion bereitstellen. In den Figuren können ferner die Stärken von Linien, Schichten und/oder Bereichen zur Verdeutlichung übertrieben sein.
-
Wenn zwei Elemente A und B unter Verwendung eines „oder“ kombiniert werden, ist dies so zu verstehen, dass alle möglichen Kombinationen offenbart sind, d. h. nur A, nur B sowie A und B, sofern nicht im Einzelfall ausdrücklich anders definiert. Als alternative Formulierung für die gleichen Kombinationen kann „zumindest eines von A und B“ oder „A und/oder B“ verwendet werden. Das gilt Äquivalent für Kombinationen von mehr als zwei Elementen.
-
Wenn eine Singularform, z. B. „ein, eine“ und „der, die, das“ verwendet wird und die Verwendung nur eines einzelnen Elements weder explizit noch implizit als verpflichtend definiert ist, können weitere Beispiele auch mehrere Elemente verwenden, um die gleiche Funktion zu implementieren. Wenn eine Funktion im Folgenden als unter Verwendung mehrerer Elemente implementiert beschrieben ist, können weitere Beispiele die gleiche Funktion unter Verwendung eines einzelnen Elements oder einer einzelnen Verarbeitungsentität implementieren. Es versteht sich weiterhin, dass die Begriffe „umfasst“, „umfassend“, „aufweist“ und/oder „aufweisend“ bei deren Gebrauch das Vorhandensein der angegebenen Merkmale, Ganzzahlen, Schritte, Operationen, Prozesse, Elemente, Komponenten und/oder einer Gruppe derselben beschreiben, dabei aber nicht das Vorhandensein oder das Hinzufügen eines oder mehrerer anderer Merkmale, Ganzzahlen, Schritte, Operationen, Prozesse, Elemente, Komponenten und/einer Gruppe derselben ausschließen.
-
1 zeigt ein Ausführungsbeispiel einer Vorrichtung 100 zum Trainieren eines Neuronalen Netzwerks 150 zur Bestimmung eines Drehwinkels eines Objekts. Die Vorrichtung 100 ist ausgebildet zum Empfangen von Systemdaten 102 über ein Sensorsystem 120 zum Messen eines Magnetfelds, um den Drehwinkel zu bestimmen. Ferner ist die Vorrichtung 100 ausgebildet zum Erzeugen von Fehlerdaten, die zumindest eine Abweichung der Systemdaten 102 von einem Sollzustand des Sensorsystems 120 oder die Stärke der Komponenten eines überlagerten externen Magnetfelds umfassen. Die Vorrichtung 100 ist ferner ausgebildet zum Erstellen von Trainingsdaten 104 unter Verwendung der Systemdaten 102 und der Fehlerdaten und zum Trainieren des Neuronalen Netzwerks 150 mittels der Trainingsdaten 104.
-
Das Neuronale Netzwerk 150 kann verwendet werden, um basierend auf Sensordaten des Sensorsystems 120, wie z.B. einem Winkelsensor, einen Drehwinkel eines Objekts zu bestimmen. Die Vorrichtung 100 kann das Neuronale Netzwerk 150 in Bezug auf das Sensorsystem 120 derart trainieren, dass ein Drehwinkel mit einem kleineren Fehler bestimmt werden kann. Ein Fehler des Drehwinkels kann aufgrund von (fehlerhaften) Sensordaten entstehen, die durch ein Sensorsystem mit einer abweichenden (z.B. geometrischen oder physikalischen) Konfiguration von einem Sollzustand und/oder mit einem überlagerten externen Magnetfeld erzeugt werden.
-
Eine abweichende Konfiguration umfasst beispielsweise eine herstellungsbedingt versetzte oder verdrehte Anordnung von Magnetsensoren und Magneten in Bezug auf eine vorgeschriebene geometrische Anordnung. Die Sensorsysteme können (abweichende) Sensordaten generieren, die zu einer fehlerhaften Drehwinkelbestimmung führen können. Abweichende Sensordaten können entstehen, da das Magnetfeld an einer anderen Position als vorgeschrieben durch die Magnetsensoren detektiert wird. Ferner kann ein externes Magnetfeld sich mit einem Magnetfeld eines Magneten im Sensorsystem überlagern. Überlagernde externe Magnetfelder können ebenfalls bewirken, dass das Sensorsystem abweichende Sensordaten erstellt. Abweichende Sensordaten können entstehen, da die Magnetsensoren aufgrund der Wechselwirkung des externen Magnetfelds eine z.B. stärkere oder schwächere Magnetfeldkomponente detektieren als die (allein) durch den Magneten des Sensorsystems anliegende Magnetfeldkomponente (Superposition von Magnetfeldern).
-
Die Vorrichtung 100 kann das Neuronale Netzwerk 150 auf mögliche Abweichungen des Sensorsystems bzw. auf mögliche überlagernde externe Magnetfelder hinsichtlich einer Winkelbestimmung mit einer höheren Genauigkeit bzw. einem kleineren Fehler trainieren. Für das Training des Neuronalen Netzwerks 150 kann die Vorrichtung 100 Systemdaten 102 über das Sensorsystem 120 empfangen. Systemdaten 102 umfassen beispielsweise eine Anordnung von Magnetsensoren und Magneten im Sensorsystem 120, die Form des Magneten oder die Magnetfeldstärke des Magneten. Die Vorrichtung 100 kann Fehlerdaten erzeugen, um basierend auf den Systemdaten 102 des Sensorsystems 120 und den erzeugten Fehlerdaten das Neuronale Netzwerk 150 zu trainieren. Die Fehlerdaten können mögliche Abweichungen der Systemdaten des Sensorsystems 120 von einem idealen Zustand umfassen. Beispielsweise umfassen Fehlerdaten mögliche Positionsverschiebungen von Magnetsensoren oder Magneten des Sensorsystems oder Formabweichungen des Magneten z.B. von einer idealen kreisrunden Form. Fehlerdaten können externe, z.B. homogene Magnetfelder umfassen, die sich potenziell mit dem Magnetfeld des Magneten des Sensorsystems überlagern können. Die Vorrichtung 100 kann Trainingsdaten 104 basierend auf den Systemdaten 102 des Sensorsystems 120 und den erzeugten Fehlerdaten erstellen. Das Neuronale Netzwerk 150 kann durch das Training erlernen, einen Drehwinkel mit einer höheren Genauigkeit basierend auf Sensordaten des (fehlerbehafteten) Sensorsystems 120 zu bestimmen. Die Vorrichtung 100 kann ermöglichen, dass mit bestehenden Sensorsystemen, die Abweichungen von einer Vorgabe umfassen und/oder externen Magnetfeldern ausgesetzt sind, Drehwinkel mit einem kleineren Fehler bestimmt werden können. Beispielsweise können Sensorsysteme verwendet werden, die mit weniger aufwändigen und/oder kostenintensiven Maßnahmen zur Abschirmung oder Kalibrierung hergestellt wurden.
-
Gemäß einem Beispiel können die Systemdaten zumindest eine Information über eine geometrische Anordnung eines Sensors, eines Magneten oder eines Encoders des Sensorsystems, über ein Magnetfeld des Magneten oder des Encoders, über eine Form des Magneten oder des Encoders oder über einen Abstand zwischen Sensor und Magnet oder Encoder umfassen. Systemdaten können Informationen über einen Zustand oder eine Konfiguration des Sensorsystems umfassen. Ein Zustand des Sensorsystems kann über die geometrische Anordnung von Komponenten des Sensorsystems, wie z.B. Magnetsensoren, Magneten, Encodern oder anderen Elementen zur Bestimmung eines Drehwinkels bestimmt sein. Ein Zustand des Sensorsystems kann über die Anzahl der vorkommenden Magnetsensoren, der Magneten oder Magnetelementen in einem Encoder bestimmt sein. Der Zustand kann über die Art der Magnetsensoren, z.B. ID-Sensoren, 2D-Sensoren, 3D-Sensoren, Hall-Sensoren, induktive Sensoren oder magnetoresistive Sensoren bestimmt sein. Der Zustand kann über die Form und/oder Art des Magneten, wie z.B. Ferromagnet, Dipolmagnet, Stabmagnet, Material des Magneten, Stärke des Magnetfelds bestimmt sein. Der Zustand kann über die Art eines Encoders des Sensorsystems bestimmt sein. Die Art des Encoders kann über die Form oder Art der Codescheibe (z.B. Zahnrad, Scheibe mit Magnetsegmenten, Anzahl/Form der Segmente zur Kodierung) bestimmt sein.
-
Fehlerdaten können mögliche Abweichungen von den Systemdaten des Sensorsystems von einem Sollzustand umfassen. Der Sollzustand kann einem idealen Zustand des Sensorsystems entsprechen. Beispielsweise umfassen Fehlerdaten verschieden mögliche geometrische Koordinaten eines von einer Idealposition verschobenen, verdrehten oder gekippten Magnetsensors. Beispielsweise umfassen Fehlerdaten Winkelabweichungen zwischen einem ersten Magnetsensor und einen zweiten Magnetsensor oder einem Magnetsensor und einem Magneten. Fehlerdaten können potenzielle Abweichungen in einem Sensorsystem repräsentieren, die z.B. während der Herstellung des Sensorsystems auftreten und nicht vermieden werden können. Fehlerdaten können auch potenzielle Abweichungen in einem Sensorsystem repräsentieren, die alterungsbedingt im Laufe des Betriebs des Sensorsystems auftreten können. Alterungsbedingte Abweichungen können beispielsweise durch Verschließ von mechanischen Komponenten oder durch eine allmähliche Abschwächung des magnetischen Felds des Magneten entstehen.
-
Fehlerdaten können alternativ oder zusätzlich die Stärke der Komponenten eines externen Magnetfelds umfassen, das sich mit dem Magnetfeld des Magneten des Sensorsystems potenziell überlagern kann. Externe Magnetfelder können beispielsweise homogene Magnetfelder sein, die in der Umgebung des Sensorsystems beispielsweise beim Betrieb von Elektrofahrzeugen auftreten können. Das externe Magnetfeld kann z.B. auch statisch, inhomogen oder ein zeitlich änderndes (z.B. niederfrequentes) Wechselfeld sein.
-
Gemäß einem Beispiel können die Fehlerdaten innerhalb eines Toleranzbereiches erzeugt werden, sodass die Abweichung der Systemdaten von dem Sollzustand und die Stärke der Komponenten des externen Magnetfelds eine kritische Grenze nicht überschreiten. Der Toleranzbereich kann durch eine Ungenauigkeit bedingt durch die Herstellung des Sensorsystems oder bedingt durch eine Messungenauigkeit der Sensoren des Sensorsystems bestimmt sein. Fehlerdaten können innerhalb des Toleranzbereichs erzeugt werden, um mögliche (z.B. wahrscheinliche oder vorhersehbare) Abweichungen der Systemdaten von einem Sollzustand zu umfassen. Der Toleranzbereich kann durch die (magnetische) Umgebung des Sensorsystems bestimmt sein. Fehlerdaten können innerhalb des Toleranzbereichs erzeugt werden, um mögliche, überlagernde externe Magnetfelder, die mit einer höheren Wahrscheinlichkeit aufgrund von elektrischen Geräten in der Nähe des Sensorsystems auftreten können, zu umfassen. Beispielsweise können die Fehlerdaten durch den Toleranzbereich auf eine maximale Abweichung der Systemdaten von dem Sollzustand des Sensorsystems oder auf eine maximal mögliche Magnetfeldstärke eines überlagernden externen Magnetfelds begrenzt werden. Fehlerdaten können im Allgemeinen (innerhalb des Toleranzbereichs) mit einer zufälligen Verteilung erzeugt werden.
-
Basierend auf den Systemdaten und den Fehlerdaten kann die Vorrichtung 100 Trainingsdaten 104 erstellen. Mittels der Trainingsdaten 104 kann das Neuronale Netzwerk 150 trainiert werden, um den Drehwinkel des Objekts genauer bzw. mit einem kleineren Fehler bestimmen zu können.
-
Gemäß einem Beispiel können Trainingsdaten mittels eines Simulationsmodells erstellt werden. Das Simulationsmodell kann basierend auf den Systemdaten des Sensorsystems, wie z.B. Geometrien des Magneten, Positionen von Magneten und Magnetsensoren, Magnetfeldstärke des Magneten oder Abstände zwischen den Magnetsensoren und dem Magneten erstellt werden. Der Zustand des Sensorsystems kann durch eine Abweichung eines jeden Systemparameter (isoliert) beeinflusst werden. Im Simulationsmodell kann für jeden Systemparameter, wie z.B. Position des Magneten in X-Richtung, ein Fehler, wie z.B. eine geometrische Verschiebung um ΔX, definiert werden, um jeweils eine Abweichung von einem idealen Sollzustand des Sensorsystems zu beschreiben. Weitere Fehler sind beispielsweise Positionsverschiebungen des Magneten in Y- und/oder Z-Richtung in Bezug auf ein gemeinsames kartesisches Koordinatensystem im Sensorsystem, Positionsverschiebungen der Magnetsensoren usw. Im Simulationsmodell können alternativ oder zusätzlich Offset-Fehler von Magnetfeldstärken bestimmt werden.
-
Das Simulationsmodell kann verwendet werden, um Trainingsdaten zu erstellen. Gemäß einem Beispiel können die Trainingsdaten basierend auf einer Vielzahl von Kombinationen von Fehlerdaten hinsichtlich der Systemdaten erstellt werden, um für jede Kombination Sensordaten und einen Drehwinkel zu erhalten. In den Trainingsdaten können für jede Kombination von Fehlerdaten Sensordaten und ein (richtiger, zu erlernender) Drehwinkel zugeordnet werden. Unter Verwendung der Trainingsdaten können Drehwinkel mit einem kleineren Fehler für jede mögliche Kombination von Fehlerquellen bestimmt werden.
-
Gemäß einem anderen Beispiel können die Trainingsdaten basierend auf einer Vielzahl von Kombinationen von Fehlerdaten hinsichtlich der Systemdaten erstellt werden, um für jede Kombination Sensordaten und eine Ausgabe zu erhalten, um mittels der Ausgabe einen Drehwinkel zu bestimmen. In den Trainingsdaten können für jede Kombination von Fehlerdaten Sensordaten und eine Ausgabe, wie z.B. neue Sensordaten zugeordnet werden. Neue Sensordaten (Output des Neuronalen Netzwerks) können sich von den Sensordaten (Input des Neuronalen Netzwerks) derart unterscheiden, dass ein richtiger Drehwinkel (Kompensierte geometrische Abweichungen und/oder überlagernde externe Magnetfelder) zugeordnet werden kann.
-
Zum Beispiel umfassen die Sensordaten eine Information über eine von den Sensoren des Sensorsystems zu detektierende Magnetfeldkomponente des Magnetfelds. Sensordaten können z.B. Informationen zu Magnetfeldkomponenten Bxn, Byn und Bzn für jeden Magnetsensors n des Sensorsystems umfassen.
-
Zum Beispiel kann das Neuronale Netzwerk durch Überwachtes Lernen (engl. Supervised Learning) und den Trainingsdaten trainiert werden. Im Rahmen des Trainings kann das Neuronale Netzwerk Parameter, wie z.B. Gewichte zwischen den Neuronen, z.B. durch Fehlerrückführung (engl. Backpropogation) lernen.
-
Weitere Einzelheiten und optionale Aspekte der Vorrichtung 100 zum Trainieren eines Neuronalen Netzwerks zum Bestimmen eines Drehwinkels eines Objekts sind in Verbindung mit dem vorgeschlagenen Konzept oder einem oder mehreren der im Folgenden beschriebenen Beispiele beschrieben.
-
2 zeigt schematisch ein Konzept zum Trainieren eines Neuronalen Netzwerks 250 zum Bestimmen eines Drehwinkels eines Objekts. Das Neuronale Netzwerk 250 wird mit Trainingsdaten 204 trainiert, die z.B. durch eine Vorrichtung 200 zum Trainieren eines Neuronalen Netzwerks 250 erstellt wurden. Wie beispielhaft gezeigt, werden Trainingsdaten 204 mittels eines Simulationsmodells 203 erstellt. In dem Beispiel verwendet das Simulationsmodell 203 Systemdaten 202, wie z.B. Form eines Magneten, Position des Magneten und von Sensoren. Ferner verwendet das Simulationsmodell 203 Fehlerdaten 201, wie geometrische Abweichungen, externe magnetische Streufelder, Abweichungen von einer Magnetfeldstärke des Magneten etc. Das Trainieren des Neuronalen Netzwerks 250 mittels der Trainingsdaten 204 kann als Trainingsphase bezeichnet werden.
-
Die Bestimmung des Drehwinkels mittels des trainierten Neuronalen Netzwerks 250 kann als Anwendungsphase bezeichnet werden. In der Anwendungsphase kann das trainierte Neuronale Netzwerk 250 Sensordaten 221b, 222b, 223b usw. von einem Sensorsystem 220 mit n Sensoren wie 221a, 222a und 222b usw. empfangen. Sensordaten wie z.B. 221b des ersten Sensors 221a umfassen z.B. Informationen über gemessene Magnetfeldkomponenten Bxo, Byo und Bzo. Das trainierte Neuronale Netzwerk 250 kann die Sensordaten 221a, 222a, 223a usw. verwenden, um zwei phasenverschobene Signale 251a-b (Ausgabe), wie z.B. Sinus- und Kosinus-Signale, vorherzusagen. Die phasenverschobenen Signale 251a-b können gemäß einem Algorithmus zur Winkelbestimmung 252, z.B. unter Verwendung einer Arkustangensfunktion, zum Bestimmen des Drehwinkels 253 verwendet werden.
-
3 zeigt beispielhaft ein Simulationsmodell (Python, „magpylib“ Paket) zum Simulieren eines Magnetfeldes eines Magneten 322, der innerhalb eines Toleranzbereichs in seiner Position verschoben wird. Für die Magnetfeldsimulation wird ein diametral magnetisierter Magnet verwendet. Der im Simulationsmodell verwendete Magnet 322 hat eine Höhe von 25mm und einen Durchmesser von 6mm. Die Erzeugung von Fehlerdaten und Trainingsdaten ist nicht auf die genannten Beispiele beschränkt. Ausführungen dienen lediglich zu dem besseren Verständnis des beschriebenen Konzepts.
-
In einem anderen Beispiel können Trainingsdaten experimentell z.B. durch eine Vielzahl von verschieden geometrischen Anordnungen von Sensoren oder Magneten des Sensorsystems, erstellt werden.
-
Weitere Details und beispielhafte Ausführungen zum Neuronalen Netzwerk werden im Zusammenhang mit den 6-7 und zum Sensorsystem im Zusammenhang mit den 8-11 genauer beschrieben.
-
4 zeigt beispielhaft kumulative Wahrscheinlichkeiten P von Drehwinkelfehlern Δφ basierend auf (z.B. simulierten) Abweichungen von Systemdaten von einem Sollzustand. In 4 sind kumulative Wahrscheinlichkeiten von Drehwinkelfehlern jeweils mit und ohne Verwendung der Vorrichtung 100 zum Trainieren eines Neuronalen Netzwerks zum Bestimmen eines Drehwinkels gegenübergestellt.
-
Die Kurve mit der Bezeichnung 410a wurde unter Verwendung eines Referenzsystems mit einem Referenzsensorsystem erstellt. Das Referenzsensorsystem wurde unterhalb eines Zentrums eines drehbaren Magneten platziert. Das Zentrum des Magneten ist beispielsweise durch die Achse, um die der Magnet gedreht werden kann, bestimmt. Drehwinkel des Magneten wurden mittels des Referenzsystems ohne die Verwendung der Vorrichtung 100 bestimmt. Das Referenzsystem wurde nicht mit Trainingsdaten trainiert. Sensordaten des Referenzsensors wurden mit einem Algorithmus zur Drehwinkelbestimmung (z.B. unter Anwendung einer Arkustangensfunktion) bestimmt.
-
Die Kurve mit der Bezeichnung 411a wurde unter Verwendung eines Sensorsystems und einer Vorrichtung (z.B. 100, 200) zum Trainieren eines Neuronalen Netzwerks erstellt. Das Sensorsystem wurde unterhalb eines Zentrums eines drehbaren Magneten platziert. Für die Bestimmung des Drehwinkels wurde ein Neuronales Netzwerk verwendet, das mittels der Vorrichtung auf das Sensorsystem trainiert wurde. Eine Ausgabe des trainierten Neuronalen Netzwerks wurde verwendet, um den Drehwinkel (z.B. unter Anwendung einer Arkustangensfunktion) zu bestimmen.
-
In dem gezeigten Beispiel ist das Neuronale Netzwerk zum Bestimmen des Drehwinkels auf eine Abweichung von Systemdaten von einem Sollzustand trainiert. Abweichungen von Systemdaten von einem Sollzustand können in den nachfolgenden Ausführungen auch als mechanische Toleranzen bezeichnet sein. Die folgende Tabelle zeigt beispielhaft mögliche Abweichungen von Systemdaten von einem Sollzustand im Rahmen eines Toleranzbereichs, die zum Erstellen der Trainingsdaten verwendet wurden. Tabelle 1
Sensor X Verschiebung | -0.3...0.3 mm |
Sensor Y Verschiebung | -0.3...0.3 mm |
Sensor Neigung (zufällige Richtung) | -3...3 ° |
Magnet X Verschiebung | -0.3...0.3 mm |
Magnet Y Verschiebung | -0.3...0.3 mm |
Magnet Neigung (zufällige Richtung) | -3...3 ° |
Abstand zwischen Sensor und Magnet | 2.2...2.8 mm |
Magnetisierung Magnet | 1100...1400 mT |
-
Wie in Tab. 1 beispielhaft gezeigt, umfassen Abweichungen von Systemdaten von einem Sollzustand (mechanische Toleranzen) eine Verschiebung eines Magnetsensors und/oder eines Magneten jeweils in eine erste Richtung (X-Achse) und/oder eine zweite Richtung (Y-Achse) und/oder eine Neigung (oder Verkippung) z.B. in Bezug auf eine dritte Richtung (Z-Achse) hinsichtlich eines kartesischen Koordinatensystems. Ferner beziehen sich Abweichungen auf den Abstand zwischen dem Magnetsensor und dem Magneten und auf eine Magnetisierung des Magneten. Magnetisierungen des Magneten betreffen beispielsweise die Magnetfeldstärke des Magneten im Hinblick auf verschiedene Magnetfeldkomponenten (z.B. x-Komponente, y-Komponente, z-Komponente) oder die Orientierung des Magnetfelds (Richtung der Magnetfeldlinien).
-
Ferner wurde das Neuronale Netzwerk im Hinblick auf ein homogenes, externes Magnetfeld trainiert: Tabelle 2
Streufeld (zufällige Richtung) | -6...6 mT |
-
Basierend auf den in Tab. 1 und Tab. 2 gegebenen möglichen Fehlerquellen, wurden Trainingsdaten mittels der Vorrichtung erstellt. Eine Ausgabe des trainierten Neuronale Netzwerks wurde verwendet, um den Drehwinkel zu bestimmen.
-
Drehwinkelfehler der beiden Wahrscheinlichkeiten 410a, 411a beziehen sich auf einen korrekten Drehwinkel, der aus dem verwendeten Simulationsmodell bekannt ist. Der Drehwinkelfehler ergibt sich aus der Differenz zwischen dem vorhergesagten Drehwinkels und dem korrekten Drehwinkel. Die gestrichelten Kurven 410b, 411b geben jeweils ein Maß für die Streuung und basieren auf dem Quartilsabstand. 4 zeigt, dass mittels der Vorrichtung zum Trainieren eines Neuronalen Netzwerks zum Bestimmen eines Drehwinkels, Drehwinkelfehler signifikant reduziert werden können. Drehwinkelfehler, welche mittels des trainierten Neuronalen Netzwerks bestimmt wurden, liegen im Bereich von etwa [-0,2°; 0,2°].
-
Drehwinkelfehler, welche mittels des Referenzsystems bestimmt wurden, überschreiten diesen Bereich signifikant.
-
5 zeigt beispielhaft kumulative Wahrscheinlichkeiten 510a, 511a von Drehwinkelfehlern Δφ zusätzlich mit (simulierten) überlagernden externen Magnetfeldern. Im Vergleich zu 4 nimmt die Genauigkeit der Drehwinkelbestimmung mittels des Referenzsystems ab, während die Genauigkeit der Drehwinkelbestimmung unter Verwendung des trainierten Neuronalen Netzwerks zu nimmt. Demnach kann das Neuronale Netzwerk durch das Training erlernen, eine Ausgabe hinsichtlich eines auftretenden homogenen Streufelds (zumindest teilweise) für die Drehwinkelbestimmung zu korrigieren.
-
Die Vorrichtung kann ein Neuronales Netzwerk zum Bestimmen eines Drehwinkels spezifisch z.B. im Hinblick auf einen (mehr oder weniger beschränkten) Toleranzbereich, auf die Art von Systemabweichungen oder auf eine Umgebung des Sensorsystems trainieren. Die Umgebung des Sensorsystems kann durch elektrische Ströme, Umgebungstemperaturen, Vibrationen oder im Allgemeinen durch physikalische Zustände, die einen Einfluss auf eine Messung des Sensorsystems haben können, bestimmt sein.
-
Die Vorrichtung kann ein Neuronales Netzwerk zum Bestimmen eines Drehwinkels spezifisch auf eine Art von Sensorsystem trainieren. Neuronale Netzwerke können sich z.B. in ihren Inputparametern abhängig vom Sensorsystem zum Detektieren eines Magnetfelds unterscheiden. Die Vorrichtung ist nicht auf eine bestimmte Art von (Systemdaten eines) Sensorsystem(s) und/oder auf ein Training eines bestimmten Neuronalen Netzwerks beschränkt. Trainingsdaten, die von der Vorrichtung zum Trainieren des Neuronalen Netzwerks erstellt werden, können sich z.B. in Umfang oder Art oder Anzahl von Ein- und/oder Ausgabeparametern unterscheiden.
-
Weitere Einzelheiten und optionale Aspekte der Vorrichtung (z.B. 100, 200) zum Trainieren eines Neuronalen Netzwerks zum Bestimmen eines Drehwinkels eines Objekts sind in Verbindung mit dem vorgeschlagenen Konzept oder einem oder mehreren der im Folgenden beschriebenen Beispiele beschrieben.
-
6 zeigt ein Ausführungsbeispiel einer Vorrichtung 660 zum Bestimmen eines Drehwinkels eines Objekts. Die Vorrichtung 660 ist ausgebildet zum Empfangen von Sensordaten 621b, 622b eines ersten Sensors 621a und eines zweiten Sensors 622a von einem Sensorsystem 620 zum Messen eines Magnetfelds 601. Die Vorrichtung 660 ist ferner ausgebildet zum Bestimmen des Drehwinkels mittels eines trainierten Neuronalen Netzwerks 650. Das trainierte Neuronale Netzwerk 650 verwendet die Sensordaten 621b, 622b des ersten Sensors 621a und des zweiten Sensors 622a als Eingangsdaten.
-
Das Sensorsystem 620 kann ähnlich oder gleich ausgebildet sein wie das Sensorsystem 120 in 1 oder 220 in 2. Das Sensorsystem 620 kann ein (Teil eines) Winkelsensor(s) sein und das Magnetfeld 601 mittels der Magnetsensoren 621a und 622a, wie z.B. Hallsensoren, detektieren. Das Sensorsystem 620 kann basierend auf der Messung des Magnetfelds 601 Sensordaten 621b, 622b generieren. Sensordaten können auf einer Messung von Magnetfeldkomponenten des Magnetfelds 601 mittels des ersten und zweiten Sensors basieren. Sensordaten können Informationen über gemessene Magnetfeldkomponenten, wie z.B. BX, BY, BZ für jeweils den ersten Sensor 621a und den zweiten Sensor 622a umfassen. Das trainierte Neuronale Netzwerk 650 kann in der Vorrichtung 660 z.B. als integrierte Schaltung implementiert sein. Das trainierte Neuronale Netzwerk 650 kann ähnlich oder gleich wie das Neuronale Netzwerk 150 in 1 (oder 250 in 2) ausgebildet sein. Das trainierte Neuronale Netzwerk 650 kann mittels der Vorrichtung 660 zum Trainieren eines Neuronalen Netzwerks (z.B. 100, 200) trainiert worden sein. Das Neuronale Netzwerk 650 kann die Sensordaten 621b, 622b als Eingangsdaten verwenden und darauf basierend eine Ausgabe zum Bestimmen eines Drehwinkels erstellen. Das Neuronale Netzwerk 650 kann Sensordaten 621b, 622b von dem Sensorsystem 620, das Abweichungen von einem Sollzustand umfasst und/oder einem externen Magnetfeld ausgesetzt ist, verwenden. Mittels der Sensordaten 621b, 622b des Sensorsystems 620 kann das Neuronale Netzwerk 650 eine Ausgabe 651, wie z.B. neue Sensordaten generieren, um einen Drehwinkel mit einem kleineren Fehler bestimmen zu können. Gemäß einem anderen Beispiel kann das Neuronale Netzwerk 650 basierend auf den Sensordaten 621b, 622b des Sensorsystems 620 unmittelbar den Drehwinkel ausgeben.
-
Zum Beispiel kann das trainierte Neuronale Netzwerk 660 unter Verwendung von Systemdaten über das Sensorsystem 620 und von Fehlerdaten trainiert worden sein. Die Fehlerdaten können zumindest eine Abweichung der Systemdaten von einem Sollzustand des Sensorsystems oder die Stärke der Komponenten eines überlagerten externen Magnetfelds umfassen. Abweichung von Systemdaten von einem Sollzustand des Sensorsystems 620 umfassen beispielsweise geometrische Verschiebungen des ersten Sensors 621a, des zweiten Sensors 622a z.B. relativ zueinander, relativ zu einer vorgegebenen Position im Sensorsystem 620 oder relativ zu einem Objekt (z.B. Magnete oder Encoder), dass das Magnetfeld 601 erzeugt. Das externe Magnetfeld ist z.B. ein homogenes Magnetfeld, das mit dem Magnetfeld 601 wechselwirkt. Weitere Details zum Training des trainierten Neuronalen Netzwerks können sich auf die vorherigen Ausführungen in Zusammenhang mit den 1-3 und den Tab. 1-2 beziehen.
-
Weitere Einzelheiten und optionale Aspekte der Vorrichtung 660 zum Bestimmen eines Drehwinkels eines Objekts sind in Verbindung mit dem vorgeschlagenen Konzept oder einem oder mehreren der Vorherigen oder im Folgenden beschriebenen Beispiele beschrieben.
-
7 zeigt beispielhaft eine Architektur des (trainierten) Neuronalen Netzwerks 650 zum Bestimmen eines Drehwinkels eines Objekts. Gemäß dem Beispiel umfasst das Neuronale Netzwerk vier verdeckte Schichten 754a-d zwischen einer Eingabeschicht 752 und einer Ausgabeschicht 756. Die Eingabeschicht 752 ist ausgebildet, um die Sensordaten 621a, 622a des Sensorsystems 620 zu empfangen und die Ausgabeschicht 756 ist ausgebildet, um eine Ausgabe 758 für die Bestimmung des Drehwinkels auszugeben.
-
Die verdeckten Schichten 754-d (engl. hidden layer), oder auch als Zwischenschichten bezeichnet, können Gewichte w (engl. weights) und Schwellwerte b (engl. bias) haben, die vor dem Training des Neuronalen Netzwerks auf bestimmte Werte initialisiert sein können. Im Laufe des Trainings des Neuronalen Netzwerks können die Parameter w und b (z.B. durch lineare Regression) hinsichtlich einer zuverlässigeren Vorhersage des Drehwinkels angepasst bzw. erlernt werden. Wie beispielhaft gezeigt, kann das Neuronale Netzwerk ein mehrschichtiges Neuronales Netzwerk sein (deep neuronal network). Das Neuronale Netzwerk kann z.B. in der ersten verdeckten Schicht 754a 50 Neuronen, in der zweiten verdeckten Schicht 754b 25 Neuronen, in der dritten Schicht 754c 20 Neuronen und in der vierten Schicht 754c 10 Neuronen haben.
-
In der Eingangsschicht 752 kann das Neuronale Netzwerk Sensordaten, wie z.B. n x m Messdaten aufnehmen, wobei n der Anzahl der Sensoren eines Sensorsystems entspricht und m der Anzahl der messbaren Magnetfeldkomponenten entspricht. Zum Beispiel kann ein Neuronales Netzwerk, das auf ein Sensorsystem mit vier 3D-Hallsensoren trainiert wurde, 4 x 3 = 12 Eingangsparameter zum Erstellen der Ausgabe 758 zum Bestimmen des Drehwinkels verwenden. In der Ausgabeschicht 756 können Cosinus- und Sinus-Funktionen oder beliebige phasenverschobene Funktionen ausgegeben (bzw. vorhergesagt) werden, um den Drehwinkel anhand eines Algorithmus zum Bestimmen eines Drehwinkels bestimmen zu können.
-
Zum Beispiel kann der Drehwinkel unter Verwendung der Sensordaten und Anwendung einer Arkustangens-Funktion bestimmt werden. Beispielsweise kann eine Schaltung des Sensorsystems die Ausgabe des Neuronalen Netzwerks verwenden, um basierend auf einem im Sensorsystem integrierten Algorithmus den (zuverlässigeren) Drehwinkel bestimmen zu können.
-
Wie beispielhaft gezeigt, kann das Neuronale Netzwerk eine Feed-Forward Architektur aufweisen. Informationen von der Eingabeschicht können über die Zwischenschichten bis hin zur Ausgabeschicht entlang einer Richtung weitergeleitet werden. In einem anderen Beispiel kann das Neuronale Netzwerk beispielsweise eine rückgekoppelte Architektur (engl. recurrent network) aufweisen, bei denen z.B. zusätzliche Verbindungen existieren, sodass Informationen Bereiche des Netzwerkes rückwärts, in mehrere Richtungen oder erneut durchlaufen können.
-
Die hier beschriebenen Konzepte sind nicht auf die genannten Beispiele von Neuronalen Netzwerken beschränkt. Die Vorrichtung zum Trainieren eines Neuronalen Netzwerks und die Vorrichtung zum Bestimmen eines Drehwinkels sowie Systeme zum Bestimmen von Drehwinkeln können Neuronale Netzwerke einer anderen Art verwenden.
-
8 zeigt ein Ausführungsbeispiel eines Systems 870 zum Bestimmen eines Drehwinkels eines Objekts. Das System 870 umfasst eine Vorrichtung 860 zum Bestimmen eines Drehwinkels eines Objekts gemäß einem Konzept der vorhergehenden Ausführungen. Das System 870 umfasst ferner ein Sensorsystem 820 zum Messen des Magnetfelds. Das Sensorsystem 820 umfasst zumindest einen ersten Sensor 821a und einen zweiten Sensor 822a. Das Sensorsystem 820 kann ähnlich oder gleich wie eines der oben oder nachfolgend beschriebenen Sensorsysteme (wie z.B. 120, 220, 620 oder 920) ausgebildet sein. Das System 870 kann mittels des Sensorsystems 820 ein Magnetfeld in der Umgebung des Sensorsystems 820 detektieren und beispielsweise Sensordaten generieren. Die Vorrichtung 860 kann die Sensordaten aufnehmen, verarbeiten und eine Ausgabe erzeugen. Die Ausgabe kann beispielsweise neue Sensordaten oder phasenverschobene Winkelfunktionen basierend auf den Sensordaten umfassen, um einen Drehwinkel bestimmen zu können. In einem anderen Beispiel kann die die Vorrichtung 860 den Drehwinkel direkt ausgeben.
-
Im Allgemeinen kann das Sensorsystem 820 eine beliebige Anzahl von Sensoren, wie z.B. einen 2D oder 3D Hallsensor oder mehr umfassen, um ein Magnetfeld in der Umgebung des Sensorsystems 820 zum Bestimmen eines Drehwinkels eines Objekts zu messen. Das Objekt kann drehbar gelagert sein. Das Objekt kann beispielsweise ein Magnet oder ein Encoder (des Sensorsystems 820) sein oder ein beliebiges Objekt (wie z.B. eine Welle) sein, das mit dem Magneten oder Encoder des Sensorsystems 820 gekoppelt ist. Eine Drehbewegung des Objekts kann ein magnetisches Wechselfeld erzeugen. Das magnetische Wechselfeld kann durch das Sensorsystem 820 detektiert werden.
-
Der Zustand des drehbar gelagerten Obj ekts kann über den Drehwinkel bestimmt werden. Der Drehwinkel kann eine Winkelposition des Objekts beschreiben. Drehwinkel können sich z.B. auf einen initialen Drehwinkel (z.B. vor Betrieb eines Systems oder vor Drehung des Objekts) oder auf einen absoluten Drehwinkel des Objekts (z.B. Referenzposition des Magneten oder des Encoders) beziehen.
-
Weitere Einzelheiten und optionale Aspekte des Systems 870 zum Bestimmen eines Drehwinkels eines Objekts sind in Verbindung mit dem vorgeschlagenen Konzept oder einem oder mehreren der im Folgenden beschriebenen Beispiele beschrieben.
-
In einem anderen Ausführungsbeispiel umfasst das System zum Bestimmen eines Drehwinkels ferner einen dritten Sensor zum Messen des Magnetfelds. Der dritte Sensor kann im Vergleich zu dem ersten oder zweiten Sensor gleich, ähnlich oder verschieden ausgebildet sein. Sensordaten können Informationen vom dritten Sensor umfassen und für eine Drehwinkelbestimmung verwendet werden.
-
9 zeigt ein Ausführungsbeispiel eines Systems 970 zum Bestimmen eines Drehwinkels eines Objekts mit einem Sensorsystem 920, das vier Sensoren 921-924, umfasst. Im Vergleich zu den vorhergehenden Ausführungen umfasst das Sensorsystem 920 ferner einen vierten Sensor 924 zum Messen des Magnetfelds. Der vierte Sensor 924 kann im Vergleich zu dem ersten Sensor 921, dem zweiten Sensor 922 und/oder dem dritten Sensor 923 gleich, ähnlich oder verschieden ausgebildet sein. Sensordaten können Informationen vom vierten Sensor 924 umfassen und für eine Drehwinkelbestimmung verwendet werden.
-
In der nachfolgenden Tabelle werden ein Referenzsystem (ohne Training eines Neuronalen Netzwerks (NN)) und (trainierte) Systeme zum Bestimmen eines Drehwinkels mit einer unterschiedlichen Anzahl von Sensoren im Sensorsystem im Hinblick auf Drehwinkelfehler gegenübergestellt. Die Bestimmung der Drehwinkel mittels des Referenzsystems erfolgte unter Anwendung einer Arkustangensfunktion und mit einem Sensor, der unterhalb eines rotierbaren Magneten angeordnet wurde. Tabelle 3
Anzahl der Sensoren | Drehwinkelfehler Standardabweichung [◦] | Maximaler Drehwinkelfehler [°] | Größe des NN (Parameter) |
Referenz | 0,743 | 4,39 | - |
1 | 1,074 | 6,80 | 2227 |
2 | 0,141 | 1,37 | 2377 |
3 | 0,073 | 0,48 | 2527 |
4 | 0,063 | 0,62 | 2677 |
5 | 0,063 | 0,62 | 2827 |
6 | 0,062 | 0,50 | 2977 |
-
Wie beispielhaft gezeigt, kann das (trainierte) System mit 2 Sensoren einen Drehwinkel mit einem kleineren Fehler im Vergleich zum Referenzsystem und zum (trainierten) System mit einem einzelnen Sensor bestimmen. Für mehr als zwei Sensoren des (trainierten) Systems kann der Drehwinkelfehler weiter abnehmen. Demnach kann ein System mit einem Sensorsystem mit mehr als zwei Sensoren, Drehwinkel genauer, zuverlässiger oder mit kleineren Fehlern bestimmen.
-
Die Sensoren können 3D-Hallsensoren oder magnetoresistive (z.B. AMR-, GMR- TMR-) Sensoren sein. In einem anderen Beispiel können Sensoren des Sensorsystems z.B. 1D-Hallsensoren, 2D-Hallsensoren oder induktive Sensoren sein. Die Sensoren des Sensorsystems können beliebig ausgebildet sein, um ein Magnetfeld in der Umgebung zu detektieren.
-
9 zeigt beispielhaft die Hardware des Systems zum Bestimmen eines Drehwinkels. Gemäß dem Ausführungsbeispiel, umfasst das System 970 ferner einen Magneten 932, der eine Achse 976 aufweist, um die der Magnet 932 rotierbar ist. Die Achse 976 ist senkrecht zu einer Sensorebene, auf dem die Sensoren 921-924 angeordnet sind. Der Magnet 932 ist entlang der Achse von der Sensorebene beabstandet. Durch die rotierbare Anordnung des Magneten kann ein magnetischen Wechselfeld generiert werden, dass von den Sensoren 921-924 des Sensorsystems 920 detektiert werden kann. Der Magnet kann beispielsweise wie dargestellt ein Dipol-Magnet sein oder mehrere Magnetpole aufweisen. Der Magnet kann kreisrund sein oder eine andere wie z.B. rechteckige, quadratische oder elliptische Form aufweisen.
-
Gemäß einem anderem Ausführungsbeispiel kann das System 970 alternativ oder zusätzlich einen Encoder aufweisen. Der Encoder kann mehrere Segmente, die z.B. Kavitäten oder Magnetelemente umfassen, aufweisen. Eine Rotation des Encoders kann ein magnetisches Wechselfeld erzeugen oder ein magnetisches Wechselfeld durch einen Einfluss auf ein existierendes Magnetfeld bewirken.
-
Der Abstand zwischen dem Magneten (oder Encoder) kann einen Einfluss auf den Drehwinkelfehler haben. Der Abstand kann z.B. weniger als 3mm, weniger als 2,5mm, weniger als 2mm, weniger als 1,5mm oder weniger als 1mm betragen. Die Sensoren 921-924 können eine gemeinsame Fläche aufspannen, die die Sensorebene umfasst.
-
Wie in
9 beispielhaft dargestellt, können die Sensoren jeweils mit einem gleichen radialen Abstand r von der Achse 976 auf der Sensorebene angeordnet sein. Eine Anordnung mit gleichem radialem Abstand kann für die Bestimmung des Drehwinkels z.B. aus Symmetriegründen vorteilhaft sein. Ferner können bei einer Anordnung mit gleichem radialem Abstand bessere Sensordaten (Verstärkung, Kompensation von Streufeldern, Reduktion von Rauschen) erzeugt werden. Der radiale Abstand kann sich auf der Sensorebene von der Achse 976 zu einer Mitte jeweils eines Sensors 921-924 erstrecken. Der radiale Abstand von der Achse 976 kann beispielsweise weniger oder gleich 4mm, weniger oder gleich 3mm, weniger oder gleich 2mm, weniger oder gleich
mm oder weniger oder gleich 1mm betragen. Der radiale Abstand kann einen Einfluss auf den Drehwinkelfehler haben.
-
10 zeigt beispielhaft kumulative Wahrscheinlichkeiten von Drehwinkelfehlern, die durch (trainierte) Systeme mit Sensorsystemen mit unterschiedlichen radialen Abständen von Sensoren bestimmt wurden. Drehwinkelfehler wurden mit einer Vorrichtung zum Bestimmen eines Drehwinkels mit einem Neuronalen Netzwerk der Architektur wie in Zusammenhang mit
7 beschrieben, bestimmt.
10 zeigt kumulative Wahrscheinlichkeiten mit radialen Abständen von r= 1mm,
mm, r= 2mm, r= 3mm und r= 4mm.
10 zeigt, dass mit einem zunehmenden radialen Abstand der Drehwinkelfehler zunehmen kann. Sensoren, die mit einem zu kleinen radialen Abstand angeordnet sind, können ebenfalls zu einer Zunahme des Drehwinkelfehlers führen. In dem in
10 gezeigten Beispiel, weist ein (trainiertes) System mit einem radialen Abstand von
mm einen kleineren Drehwinkelfehler auf als die dargestellten (trainierten) Systeme mit einem größeren oder kleineren radialen Abstand.
-
In einem anderen Beispiel kann die Achse 976 auch anders als wie in 9 dargestellt ausgeführt sein. Die Achse kann horizontal oder im Allgemeinen mit einem anderen Winkel ausgebildet sein. Die Sensorebene kann entlang der Achse verschoben oder entlang einer Fläche senkrecht zur Achse 976 verschoben sein. Im Allgemeinen sind Konzepte von Vorrichtungen zum Trainieren eines Neuronalen Netzwerks oder von Vorrichtungen oder Systemen zum Bestimmen eines Drehwinkels nicht auf die Art des Sensorsystems beschränkt. Die hier beschriebenen Konzepte können beispielsweise mit Sensorsystemen mit einer von der Welle versetzten Anordnung (engl. out of shaft configuration) in Bezug auf die Rotationsachse angewandt werden. Bei dieser Anordnung kann sich das Sensorsystem neben dem Magneten oder Encoder befinden, z.B. wenn das Ende des Magneten oder einer Welle entlang der Rotationsachse nicht erreichbar ist. Das Sensorsystem kann beispielsweise ein Magnetfeld hinsichtlich einer Magnetkomponente, z.B. BX detektieren und (phasenverschobene) Sensordaten hinsichtlich dieser Magnetkomponente erzeugen.
-
In einem Beispiel kann die Vorrichtung zum Bestimmen eines Drehwinkels und das Sensorsystem in einem gemeinsamen Chip integriert sind. 11 zeigt ein Ausführungsbeispiel eines Systems 1170 zum Bestimmen eines Drehwinkels mit einem Chip 1190 und einem rotierbaren Magneten 932. Der Chip 1190 kann integrierte Schaltungen umfassen, um basierend auf Sensordaten eine Ausgabe zu erstellen, um Drehwinkel bestimmen zu können. 12 zeigt beispielhaft für die in 11 gezeigte Anordnung eine Ausgabe des Chips 1190 in Abhängigkeit einer Phase θ. Beispielsweise kann über die Beziehung arctan2 (BX, BY) ein Drehwinkel φ bestimmt werden.
-
13 zeigt ein Ausführungsbeispiel eines Verfahrens 1300 zum Trainieren eines Neuronalen Netzwerks zur Bestimmung eines Drehwinkels eines Objekts. Das Verfahren umfasst ein Empfangen 1301 von Systemdaten über ein Sensorsystem zum Messen eines Magnetfelds, um den Drehwinkel zu bestimmen. Das Verfahren 1300 umfasst ferner ein Erzeugen 1302 von Fehlerdaten, die zumindest eine Abweichung der Systemdaten von einem Sollzustand des Sensorsystems oder die Stärke der Komponenten eines überlagerten externen Magnetfelds umfassen. Ferner umfasst das Verfahren 1300 ein Erstellen 1303 von Trainingsdaten unter Verwendung der Systemdaten und der Fehlerdaten und ein Trainieren 1304 des Neuronalen Netzwerks mittels der Trainingsdaten.
-
Weitere Einzelheiten und optionale Aspekte des Verfahrens 1300 zum Trainieren eines Neuronalen Netzwerks zum Bestimmen eines Drehwinkels eines Objekts sind in Verbindung mit dem vorgeschlagenen Konzept oder einem oder mehreren der Vorherigen oder im Folgenden beschriebenen Beispiele beschrieben.
-
14 zeigt ein Ausführungsbeispiel eines Verfahrens 1400 zum Bestimmen eines Drehwinkels eines Objekts. Das Verfahren 1400 umfasst ein Empfangen 1401 von Sensordaten eines ersten Sensors und eines zweiten Sensors von einem Sensorsystem zum Messen eines Magnetfelds. Ferner umfasst das Verfahren 1400 ein Bestimmen des Drehwinkels mittels eines trainierten Neuronalen Netzwerks. Das trainierte Neuronale Netzwerk verwendet die Sensordaten des ersten Sensors und des zweiten Sensors als Eingangsdaten.
-
Weitere Einzelheiten und optionale Aspekte des Verfahrens 1300 zum Trainieren eines Neuronalen Netzwerks zum Bestimmen eines Drehwinkels eines Objekts sind in Verbindung mit dem vorgeschlagenen Konzept oder einem oder mehreren der Vorherigen oder im Folgenden beschriebenen Beispiele beschrieben.
-
Ein anderes Ausführungsbeispiel betrifft ein Computerprogramm mit Programmcode, welches ein Verfahren nach einem der vorhergehenden Ausführungen anhand eines programmierbaren Prozessors ausführt.
-
Einige Beispiele können sich auf magnetische Winkelsensoren beziehen. Die vorgeschlagenen Konzepte können einzeln oder in Kombination z.B. auf Produkt- oder Systemebene verwendet werden. Beispielsweise kann eine Vorrichtung zum Trainieren eines Neuronalen Netzwerks auf einen Microcontroller, in dem ein Neuronales Netzwerk implementiert ist, angewandt werden.
-
Trainingsdaten zum Trainieren des Neuronalen Netzwerks können spezifisch auf einen Magneten eines Sensorsystems abgestimmt sein. Für ein Sensorsystem mit einem anderen Magneten (z.B. mit einer anderen Größe, anderen Form, anderer Magnetfeldstärke) können andere Trainingsdaten erstellt werden, um ein Neuronales Netzwerk auf das genannte Sensorsystem zu trainieren.
-
Die Aspekte und Merkmale, die im Zusammenhang mit einem bestimmten der vorherigen Beispiele beschrieben sind, können auch mit einem oder mehreren der weiteren Beispiele kombiniert werden, um ein identisches oder ähnliches Merkmal dieses weiteren Beispiels zu ersetzen oder um das Merkmal in das weitere Beispiel zusätzlich einzuführen.
-
Beispiele können weiterhin ein Computerprogramm mit einem Programmcode zum Ausführen eines oder mehrerer der obigen Verfahren sein oder sich darauf beziehen, wenn das Computerprogramm auf einem Computer oder Prozessor ausgeführt wird. Schritte, Operationen oder Prozesse von verschiedenen der oben beschriebenen Verfahren können also auch durch programmierte Computer oder Prozessoren ausgeführt werden. Beispiele können auch Programmspeichervorrichtungen, z. B. Digitaldatenspeichermedien, abdecken, die maschinen-, prozessor- oder computerlesbar sind und maschinenausführbare, prozessorausführbare oder computerausführbare Programme und Anweisungen codieren beziehungsweise enthalten. Die Programmspeichervorrichtungen können z. B. Digitalspeicher, magnetische Speichermedien wie beispielsweise Magnetplatten und Magnetbänder, Festplattenlaufwerke o-der optisch lesbare Digitaldatenspeichermedien umfassen oder sein. Weitere Beispiele können auch Computer, Prozessoren oder Steuereinheiten, die zum Ausführen der Schritte der oben beschriebenen Verfahren programmiert sind, oder (feld-)programmierbare Logik-Arrays ((F)PLAs = (Field) Programmable Logic Arrays) oder (feld-)programmierbare Gate-Arrays ((F)PGA = (Field) Programmable Gate Arrays), die zum Ausführen der Schritte der oben beschriebenen Verfahren programmiert sind, abdecken.
-
Es versteht sich ferner, dass die Offenbarung mehrerer, in der Beschreibung oder den Ansprüchen offenbarter Schritte, Prozesse, Operationen oder Funktionen nicht als zwingend in der beschriebenen Reihenfolge befindlich ausgelegt werden soll, sofern dies nicht im Einzelfall explizit angegeben oder aus technischen Gründen zwingend erforderlich ist. Daher wird durch die vorhergehende Beschreibung die Durchführung von mehreren Schritten oder Funktionen nicht auf eine bestimmte Reihenfolge begrenzt. Ferner kann bei weiteren Beispielen ein einzelner Schritt, eine einzelne Funktion, ein einzelner Prozess oder eine einzelne Operation mehrere Teilschritte, -funktionen, -prozesse oder -operationen einschließen und/oder in dieselben aufgebrochen werden.
-
Die folgenden Ansprüche werden hiermit in die detaillierte Beschreibung aufgenommen, wobei jeder Anspruch als getrenntes Beispiel für sich stehen kann. Ferner ist zu beachten, dass - obwohl ein abhängiger Anspruch sich in den Ansprüchen auf eine bestimmte Kombination mit einem oder mehreren anderen Ansprüchen bezieht - andere Beispiele auch eine Kombination des abhängigen Anspruchs mit dem Gegenstand jedes anderen abhängigen oder unabhängigen Anspruchs umfassen können. Solche Kombinationen werden hiermit explizit vorgeschlagen, sofern nicht im Einzelfall angegeben ist, dass eine bestimmte Kombination nicht beabsichtigt ist. Ferner sollen auch Merkmale eines Anspruchs für jeden anderen unabhängigen Anspruch eingeschlossen sein, selbst wenn dieser Anspruch nicht direkt als abhängig von diesem anderen unabhängigen Anspruch definiert ist.