-
HINTERGRUND
-
Ein magnetischer Winkelsensor kann dazu verwendet werden, eine Orientierung eines Magnetfeldes (z. B. einen Winkel zwischen null Grad und dreihundertundsechzig Grad), das durch einen Magneten erzeugt wird, zu bestimmen. Der magnetische Winkelsensor kann ein Hall-Effekt-Sensor, ein magnetoresistiver (MR-)Sensor, ein Sensor mit veränderlichem magnetischem Widerstand (VRS, variable reluctance sensor), ein Fluxgate-Sensor oder dergleichen sein.
-
KURZDARSTELLUNG
-
Gemäß einigen möglichen Implementierungen kann eine Vorrichtung einen oder mehrere Prozessoren umfassen, um: Rohsensordaten zu erhalten, die durch eine Erfassungsvorrichtung gesammelt werden und einen Satz von Signalwerten und einen Satz von Temperaturwerten, der dem Satz von Signalwerten entspricht, umfassen, wobei der Satz von Signalwerten einem an der Erfassungsvorrichtung vorliegenden Magnetfeld entsprechen kann; auf der Basis des Satzes von Signalwerten einen ersten Wert eines Kalibrierungsparameters zu bestimmen, der einem Kalibrieren der Erfassungsvorrichtung zugeordnet ist; auf der Basis des Satzes von Temperaturwerten dem ersten Wert des Kalibrierungsparameters einen bestimmten Temperaturwert zuzuordnen; auf der Basis des bestimmten Temperaturwertes und einer dem Kalibrierungsparameter zugeordneten Temperaturkompensationsfunktion einen zweiten Wert des Kalibrierungsparameters zu bestimmen; und die Temperaturkompensationsfunktion auf der Basis eines Vergleichs des ersten Wertes und des zweiten Wertes selektiv zu aktualisieren.
-
Gemäß einigen möglichen Implementierungen kann ein Verfahren folgende Schritte umfassen: Erhalten, seitens einer Erfassungsvorrichtung, eines Satzes von Signalwerten und eines Satzes von Temperaturen, der dem Satz von Signalwerten entspricht, wobei der Satz von Signalwerten und der Satz von Temperaturen in Sensordaten, die durch die Erfassungsvorrichtung gesammelt werden, enthalten sein können, und wobei der Satz von Signalwerten einer oder mehreren Komponenten eines an der Erfassungsvorrichtung vorliegenden Magnetfeldes entsprechen kann; Bestimmen, seitens der Erfassungsvorrichtung und auf der Basis des Satzes von Signalwerten, eines ersten Wertes eines Kalibrierungsparameters, der einem Kalibrieren der Erfassungsvorrichtung zugeordnet ist; Zuordnen, seitens der Erfassungsvorrichtung und auf der Basis des Satzes von Temperaturen, einer bestimmten Temperatur zu dem ersten Wert des Kalibrierungsparameters; Berechnen, seitens der Erfassungsvorrichtung, eines zweiten Wertes des Kalibrierungsparameters auf der Basis der bestimmten Temperatur und einer Temperaturkompensationsfunktion, die dem Kalibrierungsparameter entspricht; und selektives Aktualisieren, seitens der Erfassungsvorrichtung, der Temperaturkompensationsfunktion auf der Basis des ersten Wertes und des zweiten Wertes.
-
Gemäß einigen möglichen Implementierungen kann ein Winkelsensor ein oder mehrere Erfassungselemente, einen Speicher und einen oder mehrere Prozessoren zum Ausführen folgender Schritte umfassen: Empfangen von Sensordaten, die einen Satz von Signalwerten und einen Satz von Temperaturwerten, der dem Satz von Signalwerten entspricht, umfassen, wobei der Satz von Signalwerten einem an dem Winkelsensor vorliegenden Magnetfeld entsprechen kann; Bestimmen, auf der Basis des Satzes von Signalwerten, eines ersten Wert eines Kalibrierungsparameters, der einem Kalibrieren des Winkelsensors zugeordnet ist; Identifizieren, auf der Basis des Satzes von Temperaturwerten, eines bestimmten Temperaturwerts, der dem ersten Wert des Kalibrierungsparameters zugeordnet ist; Bestimmen, auf der Basis des bestimmten Temperaturwertes und einer dem Kalibrierungsparameter zugeordneten Temperaturkompensationsfunktion, eines zweiten Werts des Kalibrierungsparameters; Aktualisieren der Temperaturkompensationsfunktion auf der Basis eines Vergleichs des ersten Wertes und des zweiten Wertes; und Speichern der der Temperaturkompensationsfunktion zugeordneten Informationen.
-
Figurenliste
-
- 1 ist ein Diagramm einer Übersicht einer hierin beschriebenen beispielhaften Implementierung;
- 2 ist ein Diagramm einer beispielhaften Umgebung, in der hierin beschriebene Systeme und/oder Verfahren implementiert werden können;
- 3 ist ein Diagramm beispielhafter Komponenten einer oder mehrerer Vorrichtungen der 2;
- 4A und 4B sind Flussdiagramme eines beispielhaften Prozesses zum Aktualisieren einer Temperaturkompensationsfunktion, die einem Kalibrieren eines Winkelsensors zugeordnet ist, unter Verwendung einer Backend-Kalibrierungstechnik; und
- 5A und 5B sind Diagramme beispielhafter Implementierungen, die sich auf den in 4A und 4B gezeigten beispielhaften Prozess beziehen.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Die folgende ausführliche Beschreibung beispielhafter Implementierungen bezieht sich auf die beiliegenden Zeichnungen. In verschiedenen Zeichnungen können dieselben Bezugszeichen dieselben oder ähnliche Elemente bezeichnen.
-
Ein magnetischer Winkelsensor (hierin als Winkelsensor bezeichnet) kann in der Lage sein, eine automatische Kalibrierung (hierin als Autokalibrierung bezeichnet) durchzuführen, um über eine Lebensdauer des Winkelsensors hinweg die Messgenauigkeit aufrechtzuerhalten und/oder zu verbessern. Beispielsweise kann ein Winkelsensor eine Autokalibrierung durchführen, um eine Lebensdauer-Drift und/oder Fehlanpassungseffekte zwischen einem Magnetfeld, wie es während einer anfänglichen Kalibrierung erfasst wird, und einem Magnetfeld, wie es bei einem Anwendungsaufbau erfasst wird, zu beseitigen. Ferner ermöglicht es die Autokalibrierung dem Winkelsensor, eine separate Temperaturkompensation zu vermeiden, indem sie eine kontinuierliche Anpassung an tatsächliche Bedingungen, die bei der Anwendung vorliegen, einschließlich sich verändernder Temperaturbedingungen, vornimmt.
-
Jedoch darf eine Autokalibrierung nicht verwendet werden, wenn der Winkelsensor bei einer Anwendung implementiert wird, bei der nicht regelmäßig vollständige Drehungen (d. h. Drehungen um 360°) des Magnetfeldes auftreten. Eine derartige Anwendung liegt beim Messen von Lenkwinkeln bei einem Automobil vor, da ein Automobil beispielsweise (z. B. auf einer Autobahn) über eine beträchtliche Zeitdauer hinweg ohne große Änderungen des Lenkwinkels fahren kann, und somit vollständige Drehungen eventuell nicht regelmäßig auftreten. In solchen Fällen muss der Winkelsensor eventuell eine Backend-Kalibrierung verwenden und Schutzbänder implementieren, um die Auswirkung von Kalibrierungsungenauigkeiten und Parameterdriften zu berücksichtigen. Beispielsweise kann der Winkelsensor nach Herstellung des Winkelsensors mit anfänglichen Werten für einen Satz von Kalibrierungsparametern konfiguriert sein, beispielsweise einen Versatzparameter, einen Gewinnparameter, einen Phasenparameter, einen Temperaturkoeffizienten oder dergleichen. Hier kann der Winkelsensor auf der Basis der anfänglichen Werte der Kalibrierungsparameter und einer Temperatur, wie sie während der Verwendung bei der Anwendung gemessen wurde, kalibriert werden (z. B. während der Verwendung bei einer Anwendung). Da jedoch die anfänglichen Werte der Kalibrierungsparameter zu einem frühen Zeitpunkt der Lebenszeit des Winkelsensors (z. B. kurz nach der Herstellung) auf dem Winkelsensor gespeichert werden, kann die Temperaturkompensation im Laufe der Lebenszeit des Winkelsensors (z. B. aufgrund von Alterungseffekten des Winkelsensors, des Magneten oder dergleichen) an Genauigkeit einbüßen. Als solches muss der Winkelsensor eventuell Schutzbänder verwenden, um den Effekt von Kalibrierungsungenauigkeiten und Parameterdriften über die Lebensdauer des Winkelsensors hinweg zu berücksichtigen.
-
Hierin beschriebene Implementierungen sehen Verfahrensweisen zum Bestimmen eines Satzes von Temperaturkompensationsfunktionen vor, die einer Durchführung einer Backend-Kalibrierung eines Winkelsensors zugeordnet sind (z. B. wenn eine Autokalibrierungstechnik nicht möglich ist oder nicht zur Verfügung steht). Bei manchen Implementierungen kann der Satz von Temperaturkompensationsfunktionen während der Lebensdauer des Sensors (z. B. nach der anfänglichen Kalibrierung) auf der Basis gesammelter Sensordaten aktualisiert werden, wodurch eine verbesserte Genauigkeit der Backend-Kalibrierung über die Lebensdauer des Winkelsensors hinweg ermöglicht wird und/oder ein Erfordernis, ein Schutzband zu verwenden, das einer Berücksichtigung von Kalibrierungsungenauigkeiten und/oder Parameterdriften zugeordnet ist, die über die Lebensdauer des Winkelsensors hinweg auftreten können, eliminiert wird.
-
1 ist ein Diagramm einer Übersicht über eine hierin beschriebene beispielhafte Implementierung 100. Wie durch das Bezugszeichen 105 in 1 gezeigt ist, kann ein Winkelsensor 220 Rohsensordaten sammeln, die Minimal- und Maximalwerte eines ersten Signals (z. B. eines x-Signals, das einer x-Komponente eines Magnetfeldes entspricht) und eines zweiten Signals (z. B. eines y-Signals, das einer y-Komponente des Magnetfeldes entspricht) umfassen. Die Minimal- und Maximalwerte sind als Xmin, Xmax, Ymin und Ymax in 1 gezeigt. Wie gezeigt ist, kann der Winkelsensor auch Temperaturwerte sammeln, die den Minimal- und den Maximalwerten entsprechen.
-
Wie durch Bezugszeichen 110 gezeigt ist, kann der Winkelsensor 220 bestimmen, ob ein Temperaturfenster erfüllt ist (d. h. ob die Temperaturwerte innerhalb einer Bandbreite von Temperaturen einer bestimmten Größe liegen). Bei manchen Implementierungen kann das Temperaturfenster Informationen umfassen, die eine Bandbreite zulässiger Temperaturunterschiede zwischen zwei beliebigen Posten der Temperaturdaten identifizieren, die den Werten Xmin, Xmax, Ymin und Ymax entsprechen.
-
Wie durch das Bezugszeichen 115 gezeigt ist, kann der Winkelsensor 220 auf der Basis des Bestimmens, dass die Temperaturwerte das Temperaturfenster erfüllen, einen ersten Werte eines Kalibrierungsparameters (P1) und einen Durchschnittstemperaturwert (T1), der den Rohsensordaten zugeordnet ist, bestimmen. Bei manchen Implementierungen kann der Kalibrierungsparameter einen Parameter umfassen, der einem Kalibrieren des Winkelsensors 220 zugeordnet ist. Beispielsweise kann der Kalibrierungsparameter einen Versatzparameter, der einem Korrigieren eines Versatzes des x-Signals (Ox) zugeordnet ist, einen Gewinnparameter, der einem Normieren einer Amplitude des x-Signals (Ax) zugeordnet ist, einen Versatzparameter, der einem Korrigieren eines Versatzes des y-Signals (Oy) zugeordnet ist, einen Gewinnparameter, der einem Normieren einer Amplitude des y-Signals (Ay) zugeordnet ist, einen Phasenparameter, der einem Korrigieren eines Nicht-Orthogonalität-Fehlers zwischen dem x-Signal und dem y-Signal (φ) zugeordnet ist, und dergleichen umfassen.
-
Bei manchen Implementierungen kann der Winkelsensor 220 den ersten Wert des Kalibrierungsparameters auf der Basis der Rohsensordaten bestimmen. Beispielsweise kann der Winkelsensor 220 den ersten Wert von Ox als Wert bestimmen, der gleich einem Durchschnitt von Xmin und Xmax ist. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 den ersten Wert von Oy als Wert bestimmen, der gleich einem Durchschnitt von Ymin und Ymax ist. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 den ersten Wert von Ax als Wert bestimmen, der die Hälfte einer Differenz zwischen Xmin und Xmax beträgt. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 den ersten Wert von Ay als Wert bestimmen, der die Hälfte einer Differenz zwischen Ymin und Ymax beträgt. Bei manchen Implementierungen kann der erste Wert von φ auf der Basis eines Vergleichens eines Winkels, der einem Nulldurchgang des x-Signals entspricht, und eines Winkels, der Ymin und/oder Ymax entspricht, bestimmt werden. Hier kann φ als Winkel bestimmt werden, der, wenn er an das x-Signal angelegt wird, bewirkt, dass eine Phasendifferenz zwischen dem x-Signal und dem y-Signal 90° beträgt. Bei manchen Implementierungen kann der Winkelsensor 220 die Durchschnittstemperatur (T1) dem ersten Wert des Kalibrierungsparameters zuordnen.
-
Wie durch das Bezugszeichen 120 gezeigt ist, kann der Winkelsensor 220 einen zweiten Wert eines Kalibrierungsparameters (P2) auf der Basis einer Temperaturkompensationsfunktion (fP) und von T1 bestimmen. Die Temperaturkompensationsfunktion kann eine Funktion umfassen, ausgehend von der ein Wert eines Kalibrierungsparameters auf der Basis einer Temperatur berechnet werden kann. Hier kann der zweite Wert des Kalibrierungsparameters einen Wert des Kalibrierungsparameters umfassen, wie er auf der Basis einer Temperaturkompensationsfunktion berechnet wird, die dem Kalibrierungsparameter zugeordnet ist und die durch den Winkelsensor 220 gespeichert wird oder für denselben zugänglich ist.
-
Wie durch das Bezugszeichen 125 gezeigt ist, kann der Winkelsensor 220 bestimmen, dass eine Differenz zwischen dem ersten Wert und dem zweiten Wert eine Abweichungsschwelle erfüllt, (z. B. erfüllt P1 - P2 die Schwelle = JA). Die Abweichungsschwelle kann Informationen umfassen, die eine Differenz zwischen dem ersten Wert und dem zweiten Wert identifizieren, die, wenn sie erfüllt ist, den Winkelsensor 220 dahin gehend auslöst, eine dem Kalibrierungswinkelsensor 220 zugeordnete Temperaturkompensationsfunktion zu aktualisieren.
-
Wie durch das Bezugszeichen 130 gezeigt ist, kann der Winkelsensor 220 die Temperaturkompensationsfunktion (fP) auf der Basis des ersten Wertes (P1) aktualisieren. Bei manchen Implementierungen kann der Winkelsensor 220 die Temperaturkompensationsfunktion auf der Basis eines polynomischen Lösungsansatzes oder eines Ansatzes einer stückweisen Funktion aktualisieren (wie hiernach unter Bezugnahme auf 4B ausführlicher erörtert wird). Zusätzlich oder alternativ dazu kann der Winkelsensor 220 die Temperaturkompensationsfunktion auf der Basis einer Splinefunktion aktualisieren.
-
Wie durch das Bezugszeichen 135 gezeigt ist, kann der Winkelsensor 220 nach dem Aktualisieren der Temperaturkompensationsfunktion die Temperaturkompensationen dazu verwenden, eine Backend-Kalibrierung von 220 vorzunehmen (z. B. wenn eine Autokalibrierung nicht möglich ist oder nicht zur Verfügung steht). Wie oben erörtert wurde, kann der Satz von Temperaturkompensationsfunktionen während der Lebensdauer des Winkelsensors 220 (z. B. nach der anfänglichen Kalibrierung) auf der Basis gesammelter Sensordaten aktualisiert werden, wodurch eine verbesserte Genauigkeit der Backend-Kalibrierung über die Lebensdauer des Winkelsensors hinweg ermöglicht wird und/oder ein Erfordernis, ein Schutzband zu verwenden, das einer Berücksichtigung von Kalibrierungsungenauigkeiten und/oder Parameterdriften zugeordnet ist, die über die Lebensdauer des Winkelsensors 220 hinweg auftreten können, eliminiert wird.
-
Wie oben angegeben wurde, ist 1 lediglich als Beispiel bereitgestellt. Andere Beispiele sind möglich und können sich von dem, was unter Bezugnahme auf 1 beschrieben wurde, unterscheiden.
-
2 ist ein Diagramm einer beispielhaften Umgebung 200, in der hierin beschriebene Apparaturen implementiert werden können. Wie in 2 gezeigt ist, kann die Umgebung 200 einen Magneten 210, der sich um eine Achse 215 drehen kann, einen Winkelsensor 220 und eine Steuerung 230 umfassen.
-
Der Magnet 210 umfasst einen oder mehrere Magneten, die dahin gehend positioniert sind, sich um die Achse 215 (z. B. eine imaginäre Linie) zu drehen. Bei manchen Implementierungen kann der Magnet 210 (z. B. mechanisch) mit einem (nicht gezeigten) drehbaren Objekt derart verbunden sein, dass ein Drehwinkel des Magneten 210 einem Drehwinkel des drehbaren Objekts entspricht (z. B. wenn zwischen einer Endfläche des drehbaren Objekts und dem Magneten 210 eine rutschfeste Beziehung vorliegt).
-
Bei der in 2 gezeigten beispielhaften Umgebung 200 weist der Magnet 210 eine erste Hälfe, die einen Nordpol (N) bildet, und eine zweite Hälfte, die einen Südpol (S) bildet, auf, so dass der Magnet 210 ein Polpaar aufweist. Bei manchen Implementierungen kann der Magnet 210 mehr als ein Polpaar aufweisen, ohne hierauf beschränkt zu sein. Bei manchen Implementierungen kann der Magnet 210 einen Scheibenmagneten umfassen, der konzentrisch um die Achse 215 positioniert ist, die durch die Mitte des Magneten 210 verläuft, wie in 2 gezeigt ist. Obwohl der Magnet 210 in 2 kreisförmig dargestellt ist, kann der Magnet 210 eine andere Gestalt aufweisen, beispielsweise ein Quadrat, ein Rechteck, eine Ellipse oder dergleichen. Beispielsweise kann der Magnet 210 in einem Fall, in dem ein Winkel zwischen einer Ebene, die einer Oberfläche des Magneten 210 entspricht, und einer Achse 215 von einer im Wesentlichen senkrechten Beziehung abweicht, eine elliptische Gestalt aufweisen. Die Ebene kann eine Ebene umfassen, die den Magneten 210 symmetrisch durchschneidet und eine Magnetmitte des Magneten 210 umfasst. In den meisten praktischen Fällen kann die Ebene im Wesentlichen senkrecht zu der Achse 215 sein. Als weiteres Beispiel kann der Magnet 210 einen Ringmagneten umfassen, der dahin gehend positioniert ist, sich (zusammen mit dem drehbaren Objekt) um die Achse 215 zu drehen. Ein Ringmagnet kann für eine Anordnung des Magneten 210 an einem Ende des drehbaren Objekts von Interesse sein.
-
Bei manchen Implementierungen kann der Magnet 210 zwei abwechselnde Pole an zwei Abschnitten des Magneten 210 umfassen (z. B. einen Nordpol an einer ersten Hälfte des Magneten 210, einen Südpol an einer zweiten Hälfe des Magneten 210). Zusätzlich oder alternativ dazu kann der Magnet 210 einen Dipolmagneten (z. B. einen Dipolstabmagneten, einen kreisförmigen Dipolmagneten, einen elliptischen Dipolmagneten usw.), einen Permanentmagneten, einen Elektromagneten, ein Magnetband oder dergleichen umfassen. Der Manget 210 kann aus einem ferromagnetischen Material (z. B. Hartferrit) gebildet sein und kann ein Magnetfeld erzeugen. Der Magnet 210 kann ferner ein Seltenerdmagnet sein, der aufgrund einer Seltenerdmagneten innewohnenden hohen Magnetfeldstärke vorteilhaft sein kann. Wie oben beschrieben wurde, kann der Magnet 210 bei manchen Implementierungen an einem drehbaren Objekt befestigt oder mit einem solchen gekoppelt sein, für das auf der Basis eines Drehwinkels des Magneten 210 ein Drehwinkel bestimmt werden kann (z. B. durch den Winkelsensor 220, durch die Steuerung 230).
-
Der Winkelsensor 220 umfasst eine oder mehrere Erfassungsvorrichtungen zum Detektieren von Komponenten eines Magnetfeldes zur Verwendung beim Bestimmen eines Drehwinkels (z. B. des Magneten 210, eines drehbaren Objekts, mit dem der Magnet 210 verbunden ist, usw.). Beispielsweise kann der Winkelsensor 220 eine oder mehrere Schaltungen (z. B. eine oder mehrere integrierte Schaltungen) umfassen. Bei manchen Implementierungen kann der Winkelsensor 220 derart an einer relativ zu dem Magneten 210 befindlichen Position platziert werden, dass der Winkelsensor 220 Komponenten des durch den Magneten 210 erzeugten Magnetfeldes detektieren kann. Bei manchen Implementierungen kann der Winkelsensor 220 eine integrierte Schaltung umfassen, die eine integrierte Steuerung 230 umfasst (z. B. derart, dass eine Ausgabe des Winkelsensors 220 Informationen umfassen kann, die einen Drehwinkel des Magneten 210 und/oder des drehbaren Objekts beschreiben).
-
Bei manchen Implementierungen kann der Winkelsensor 220 eine Gruppe von Erfassungselementen umfassen, die dazu konfiguriert sind, Amplituden von Komponenten des durch den Magneten 210 erzeugten Magnetfeldes, die an dem Winkelsensor 220 vorliegen, zu erfassen. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 ein Temperaturerfassungselement umfassen, das es dem Winkelsensor 220 ermöglicht, eine Temperatur an dem oder in der Nähe des Winkelsensors 220 zu bestimmen. Zusätzliche Einzelheiten bezüglich des Winkelsensors 220 werden nachstehend in Bezug auf 3 beschrieben.
-
Die Steuerung 230 umfasst eine oder mehrere Schaltungen, die einem Bestimmen eines Drehwinkels des Magneten 210 und einem Bereitstellen von Informationen zugeordnet sind, die dem Drehwinkel des Magneten 210 und somit dem Drehwinkel des drehbaren Objekts, mit dem der Magnet 210 verbunden ist, zugeordnet sind. Beispielsweise kann die Steuerung 230 eine oder mehrere Schaltungen (z. B. eine integrierte Schaltung, eine Steuerschaltung, eine Rückkopplungsschaltung usw.) umfassen. Die Steuerung 230 kann Eingangssignale von einem oder mehreren Sensoren wie beispielsweise einem oder mehreren Winkelsensoren 220 empfangen, kann die Eingangssignale (z. B. unter Verwendung eines analogen Signalprozessors, eines digitalen Signalprozessors usw.) verarbeiten, um ein Ausgangssignal zu erzeugen, und kann das Ausgangssignal einer oder mehreren Vorrichtungen oder einem oder mehreren Systemen bereitstellen. Beispielsweise kann die Steuerung 230 ein oder mehrere Eingangssignale von dem Winkelsensor 220 empfangen und kann das eine oder die mehreren Eingangssignale dazu verwenden, ein Ausgangssignal zu erzeugen, das die Winkelposition des Magneten 210 und/oder des drehbaren Objekts, mit dem der Magnet 210 verbunden ist, aufweist.
-
Die Anzahl und Anordnung der in 2 gezeigten Apparaturen sind als Beispiel angegeben. In der Praxis können zusätzliche Apparaturen, weniger Apparaturen, andere Apparaturen oder anders angeordnete Apparaturen als die in 2 gezeigten vorliegen. Ferner können zwei oder mehr in 2 gezeigte Vorrichtungen innerhalb einer einzigen Apparatur implementiert sein, oder eine einzige in 2 gezeigte Apparatur kann als mehrere, verteilte Apparaturen implementiert sein. Zusätzlich oder alternativ dazu kann ein Satz von Apparaturen (z. B. eine oder mehrere Apparaturen) der Umgebung 200 eine oder mehrere Funktionen erfüllen, die als durch einen anderen Satz von Apparaturen der Umgebung 200 erfüllt beschrieben werden.
-
3 ist ein Diagramm beispielhafter Komponenten des Winkelsensors 220, der in der beispielhaften Umgebung 200 der 2 enthalten ist. Wie gezeigt ist, kann der Winkelsensor 220 eine Gruppe von Erfassungselementen 310, einen Analog/Digital-Wandler (ADW) 320, einen digitalen Signalprozessor (DSP) 330, eine optionale Speicherkomponente 340 und eine digitale Schnittstelle 350 umfassen.
-
Das Erfassungselement 310 umfasst eine oder mehrere Apparaturen zum Erfassen einer Amplitude einer Komponente eines an dem Winkelsensor 220 vorliegenden Magnetfeldes (z. B. des durch den Magneten 210 erzeugten Magnetfeldes). Beispielsweise kann das Erfassungselement 310 einen Hall-Sensor umfassen, der auf der Basis eines Hall-Effekts arbeitet. Als weiteres Beispiel kann das Erfassungselement 310 einen MR-Sensor umfassen, der aus einem magnetoresistiven Material (z. B. Nickeleisen (NiFe)) gebildet ist, wobei der elektrische Widerstand des magnetoresistiven Materials von einer Stärke und/oder einer Richtung des an dem magnetoresistiven Material vorliegenden Magnetfeldes abhängen kann. Hier kann das Erfassungselement 310 den Magnetowiderstand auf der Basis eines anisotropen Magnetowiderstandseffekts (AMR-Effekts), eines gigantischen Magnetowiderstandseffekts (GMR-Effekts), eines Tunnelmagnetowiderstandseffekts (TMR-Effekts) und der dergleichen messen. Als zusätzliches Beispiel kann das Erfassungselement 310 einen Sensor mit veränderlichem Widerstand (VR-Sensor) umfassen, der auf der Basis von Induktion arbeitet. Bei manchen Implementierungen kann das Erfassungselement 310 ein Temperaturerfassungselement umfassen, das einem Messen einer Temperatur bei dem oder in der Nähe des Winkelsensors 220 zugeordnet ist.
-
Der ADW 320 umfasst einen Analog/Digital-Wandler, der ein analoges Signal von dem einen oder den mehreren Erfassungselementen 310 in ein digitales Signal umwandelt. Beispielsweise kann der ADW 320 analoge Signale, die von dem einen oder den mehreren Erfassungselementen 310 empfangen werden, in digitale Signale umwandeln, die durch den DSP 330 verarbeitet werden sollen. Der ADW 320 kann die digitalen Signale dem DSP 330 bereitstellen. Bei manchen Implementierungen kann der Winkelsensor 220 einen oder mehrere ADW 320 umfassen.
-
Der DSP 330 umfasst eine digitale Signalverarbeitungsvorrichtung oder eine Sammlung von digitalen Signalverarbeitungsvorrichtungen (d. h. einen oder mehrere Prozessoren). Bei manchen Implementierungen kann der DSP 330 digitale Signale von dem ADW 320 empfangen und kann die digitalen Signale verarbeiten, um Ausgangssignale zu bilden (die z. B. für die Steuerung 230 bestimmt sind, wie in 2 gezeigt ist), z. B, Ausgangssignale, die einem Bestimmen des Drehwinkels des sich mit einem drehbaren Objekt drehenden Magneten 210 zugeordnet sind. Bei manchen Implementierungen kann der DSP 330 einen oder mehrere Prozessoren wie z. B. eine Zentralverarbeitungseinheit (CPU - central processing unit), eine beschleunigte Verarbeitungseinheit (APU - accelerated processing unit), einen Mikroprozessor, eine Mikrosteuerung, ein feldprogrammierbares Gatterarray (FPGA - field-programmable gate array), eine anwendungsspezifische integrierte Schaltung (ASIC - application-specific integrated circuit) oder eine andere Art von Verarbeitungskomponente umfassen.
-
Die optionale Speicherkomponente 340 umfasst einen Nur-Lese-Speicher (ROM) (z. B. einen EEPROM), einen Direktzugriffsspeicher (RAM) und/oder eine andere Art von dynamischer oder statischer Speichervorrichtung (z. B. einen Flash-Speicher, einen magnetischen Speicher, einen optischen Speicher usw.), die Informationen und/oder Anweisungen zur Verwendung seitens des Winkelsensors 220 speichert. Bei manchen Implementierungen kann die optionale Speicherkomponente 340 Informationen speichern, die einer durch den DSP 330 durchgeführten Verarbeitung zugeordnet sind. Bei manchen Implementierungen kann der Winkelsensor 220 hierin beschriebene Prozesse auf der Basis einer Ausführung von Softwareanweisungen durchführen, die durch ein nicht-flüchtiges computerlesbares Medium wie z. B. die optionale Speicherkomponente 340 gespeichert werden. Ein computerlesbares Medium ist hierin als nicht-flüchtige Speichervorrichtung definiert. Zusätzlich oder alternativ dazu kann die optionale Speicherkomponente 340 Konfigurationswerte oder -parameter für Erfassungselemente 310 und/oder Informationen für eine oder mehrere sonstige Komponenten des Winkelsensors 220, z. B. den ADW 320 oder die digitale Schnittstelle 350, speichern.
-
Die digitale Schnittstelle 350 umfasst eine Schnittstelle, über die der Winkelsensor 220 Informationen von einer anderen Vorrichtung empfangen kann bzw. der anderen Vorrichtung, beispielsweise der Steuerung 230 (siehe 2), Informationen bereitstellen kann. Beispielsweise kann die digitale Schnittstelle 350 das durch den DSP 330 bestimmte Ausgangssignal der Steuerung 230 bereitstellen und kann ferner Informationen von der Steuerung 230 empfangen.
-
Die Anzahl und Anordnung von in 3 gezeigten Komponenten werden als Beispiel bereitgestellt. In der Praxis kann der Winkelsensor 220 zusätzliche Komponenten, weniger Komponenten, andere Komponenten oder anders angeordnete Komponenten als die in 3 gezeigten umfassen. Zusätzlich oder alternativ dazu kann ein Satz von Komponenten (z. B. eine oder mehrere Komponenten) des Winkelsensors 220 eine oder mehrere Funktionen erfüllen, die als durch einen anderen Satz von Komponenten des Winkelsensors 220 erfüllt beschrieben werden.
-
4A und 4B sind Flussdiagramme eines beispielhaften Prozesses 400 zum Aktualisieren einer Temperaturkompensationsfunktion, die einem Kalibrieren des Winkelsensors 220 unter Verwendung einer Backend-Kalibrierungstechnik zugeordnet ist. Bei manchen Implementierungen kann bzw. können ein oder mehrere Prozessblöcke des Prozesses 400 durch den Winkelsensor 220 durchgeführt werden. Bei manchen Implementierungen können ein oder mehrere Prozessblöcke des Prozesses 400 durch eine andere Vorrichtung oder eine Gruppe von Vorrichtungen durchgeführt werden, die von dem Winkelsensor 220 getrennt sind oder denselben umfassen, beispielsweise die Steuerung 230.
-
Wie in 4A gezeigt ist, kann der Prozess 400 ein Erhalten von Rohsensordaten, die minimale und maximale Werte eines ersten Signals und eines zweiten Signals umfassen, und von Temperaturdaten, die den minimalen und den maximalen Werten entsprechen, umfassen (Block 405). Beispielsweise kann der Winkelsensor 220 Rohsensordaten, die minimale und maximale Werte eines ersten Signals und eines zweiten Signals umfassen, und Temperaturdaten, die den minimalen und den maximalen Werten entsprechen, erhalten.
-
Bei manchen Implementierungen können die Rohsensordaten minimale und maximale Werte eines ersten Signals und eines zweiten Signals (z. B. Spannungssignale, Stromsignale), die durch den Winkelsensor 220 auf der Basis eines durch den Magneten 210 erzeugten Magnetfeldes erzeugt werden, umfassen. Beispielsweise können die Rohsensordaten ein Minimalwert- und ein Maximalwert-x-Signal (z. B. ein Kosinussignal) umfassen, das einer x-Komponente eines an dem Winkelsensor 220 vorliegenden Magnetfeldes entspricht. Diese Werte können als Xmin bzw. Xmax bezeichnet werden. Desgleichen können die Rohsensordaten einen minimalen Wert und einen maximalen Wert eines y-Signals (z. B. eines Sinussignals) umfassen, das einer y-Komponente des an dem Winkelsensor 220 vorliegenden Magnetfeldes entspricht. Diese Werte können als Ymin bzw. Ymax bezeichnet werden. Bei manchen Implementierungen können die Rohsensordaten auch Daten umfassen, die einem Nulldurchgang des x-Signals und/oder des y-Signals zugeordnet sind.
-
Bei manchen Implementierungen können die Rohsensordaten auch Temperaturdaten umfassen, die Xmin-, Xmax-, Ymin- und Ymax-Werten entsprechen. Beispielsweise kann der Winkelsensor 220 das Erfassungselement 310 umfassen, das es dem Winkelsensor 220 ermöglicht, eine Temperatur an dem oder in der Nähe des Winkelsensors 220 zu bestimmen. Hier kann der Winkelsensor 220 während der Drehung des Magneten 210 eine Temperatur bestimmen, die Xmin-, Xmax-, Ymin- und Ymax-Werten entspricht (z. B. eine Temperatur an dem oder in der Nähe des Winkelsensors 220 zu einem Zeitpunkt, wenn der Winkelsensor 220 jeden Wert erhält).
-
Bei manchen Implementierungen können die Rohsensordaten auch Zeitdaten umfassen, die Xmin-, Xmax-, Ymin- und Ymax-Werten entsprechen. Beispielsweise kann der Winkelsensor 220 einen Takt umfassen, der es dem Winkelsensor 220 ermöglicht, Zeiten (z. B. bis hin zu Zehntelsekunden, Hundertstelsekunden), zu denen Xmin-, Xmax-, Ymin- und Ymax-Werte erhalten werden, zu bestimmen. Bei manchen Implementierungen können die Zeitdaten eine Tageszeit, eine Zeit ab einem bestimmten Zeitpunkt (z. B. Anfangszeit eines Zeitzählers) oder dergleichen umfassen.
-
Bei manchen Implementierungen kann der Winkelsensor 220 die Rohsensordaten während einer Drehung des Magneten 210 erhalten. Beispielsweise kann sich der Magnet 210 um die Achse 215 drehen, und der Winkelsensor 220 kann die Rohsensordaten während der Drehung erhalten. Bei manchen Implementierungen kann der Winkelsensor 220 bestimmen, dass der Winkelsensor 220 Xmin-, Xmax-, Ymin- und Ymax-Werte erhalten hat (z. B. dass der Magnet 210 eine vollständige Drehung vorgenommen hat), bevor zu dem Prozess 400 übergegangen wird. Beispielsweise kann der Winkelsensor 220 eine Serie von Werten des x-Signals bestimmen und kann benachbarte (z. B. zeitlich benachbarte) Signalwerte vergleichen, um zu bestimmen, ob der Winkelsensor 220 einen Xmax-Wert erhalten hat (wenn z. B. ein zeitlich erster x-Signal-Wert geringer ist als ein zeitlich zweiter x-Signal-Wert, und ein zeitlich dritter x-Signal-Wert geringer ist als der zeitlich zweite x-Signal-Wert) und einen Xmin-Wert erhalten hat (z. B. wenn ein zeitlich vierter x-Signal-Wert größer ist als ein zeitlich fünfter x-Signal-Wert, und ein zeitlich sechster x-Signal-Wert größer ist als der zeitlich fünfte x-Signal-Wert). Der Winkelsensor 220 kann auf ähnliche Weise bestimmen, ob der Winkelsensor 220 Ymin- und Ymax-Werte erhalten hat.
-
Wie in 4A weiter gezeigt ist, kann der Prozess 400 ein Bestimmen, auf der Basis der Rohsensordaten, dessen umfassen, ob ein Temperaturfenster erfüllt ist (Block 410). Beispielsweise kann der Winkelsensor 220 bestimmen, ob ein Temperaturfenster erfüllt ist. Bei manchen Implementierungen kann der Winkelsensor 220 auf der Basis des Erhaltens der Rohsensordaten, die Xmin-, Xmax-, Ymin- und Ymax-Werte umfassen, bestimmen, ob die Temperaturdaten das Temperaturfenster erfüllen.
-
Das Temperaturfenster kann Informationen umfassen, die eine maximale zulässige Differenz der Temperatur zwischen zwei beliebigen Posten der Temperaturdaten, die Xmin-, Xmax-, Ymin- und Ymax-Werten entsprechen, identifizieren, um mit einem Aktualisieren einer Temperaturkompensationsfunktion, die einem Kalibrieren des Winkelsensors 220 zugeordnet ist, fortzufahren. Beispielsweise kann das Temperaturfenster ein Temperaturfenster von 0,50° Celsius (C) (was z. B. erfordert, dass die Posten von Temperaturdaten nicht weiter als 0,50° C auseinanderliegen), ein Temperaturfenster von 2,0° C (was z. B. erfordert, dass die Posten von Temperaturdaten nicht weiter als 2,0° C auseinanderliegen) oder dergleichen sein. Bei manchen Implementierungen kann das Temperaturfenster an dem Winkelsensor 220 konfigurierbar sein.
-
Bei manchen Implementierungen gewährleistet das Temperaturfenster, dass eine Aktualisierung der Temperaturkompensationsfunktion auf der Basis von Xmin-, Xmax-, Ymin- und Ymax-Werten durch eine beträchtliche Temperaturdifferenz zwischen den Xmin-, Xmax-, Ymin- und Ymax-Werten nicht beeinträchtigt wird (z. B. dort, wo eine Temperaturveränderung die Genauigkeit eines berechneten Kalibrierungsparameters verringern kann). Bei manchen Implementierungen kann der Winkelsensor 220 auf der Basis der Temperaturdaten, die Xmin-, Xmax-, Ymin- und Ymax-Werten entsprechen, bestimmen, ob das Temperaturfenster erfüllt ist. Beispielsweise kann der Winkelsensor 220 eine Differenz zwischen Temperaturen bestimmen, die jedem Wert zugeordnet sind (z. B. |TXmin - TXmax|, |TXmin - TYmin|, |TXmin - TYmax|, |TXmax - TYmin|, |TXmax - TYmax| und |TYmin - TYmax|), und kann bestimmen, ob jede Differenz innerhalb des Temperaturfensters liegt.
-
Wie ferner in 4A gezeigt ist, kann der Prozess 400 in dem Fall, dass das Temperaturfenster nicht erfüllt ist (Block 410 - NEIN), ein Erhalten von Rohsensordaten, die minimale und maximale Werte eines ersten Signals und eines zweiten Signals umfassen, und von Temperaturdaten, die den minimalen und den maximalen Werten entsprechen, umfassen (Block 405). Beispielsweise kann der Winkelsensor 220 bestimmen, dass das Temperaturfenster nicht erfüllt ist, und kann zu dem Block 405 zurückkehren und dazu übergehen, zusätzliche Rohsensordaten zu erhalten, wie oben beschrieben wurde.
-
Wie ferner in 4A gezeigt ist, kann der Prozess 400 in dem Fall, dass das Temperaturfenster erfüllt ist (block 410 - JA), ein Bestimmen, auf der Basis der Rohsensordaten, ob ein Zeitfenster erfüllt ist, umfassen (Block 415). Beispielsweise kann der Winkelsensor 220 bestimmen, ob ein Zeitfenster erfüllt ist. Bei manchen Implementierungen kann der Winkelsensor 220 auf der Basis eines Erhaltens der Rohsensordaten, die Xmin-, Xmax-, Ymin- und Ymax-Werte umfassen, bestimmen, ob die Zeitdaten das Zeitfenster erfüllen. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 auf der Basis des Bestimmens, dass die Temperaturdaten das Temperaturfenster erfüllen, bestimmen, ob die Zeitdaten das Zeitfenster erfüllen.
-
Das Zeitfenster kann Informationen umfassen, die eine maximale zusätzliche Zeitdifferenz zwischen zwei beliebigen Posten der Zeitdaten, die Xmin-, Xmax-, Ymin- und Ymax-Werten entsprechen, identifizieren, um mit einem Aktualisieren einer dem Kalibrieren des Winkelsensors 220 zugeordneten Temperaturkompensationsfunktion fortzufahren. Beispielsweise kann das Zeitfenster ein Zeitfenster von 0,5 Sekunden (s) sein (was z. B. erfordert, dass die Posten von Zeitdaten nicht weiter als 0,5 s auseinanderliegen), ein Zeitfenster von 2,0 s (was z. B. erfordert, dass die Posten von Zeitdaten nicht weiter als 2,0 s auseinanderliegen) oder dergleichen sein. Bei manchen Implementierungen kann das Zeitfenster an dem Winkelsensor 220 konfigurierbar sein.
-
Bei manchen Implementierungen gewährleistet das Zeitfenster, dass eine Aktualisierung der Temperaturkompensationsfunktion auf der Basis von Xmin-, Xmax-, Ymin- und Ymax-Werten durch eine beträchtliche Zeitdifferenz zwischen den Xmin-, Xmax-, Ymin- und Ymax-Werten nicht beeinträchtigt wird. Bei manchen Implementierungen kann der Winkelsensor 220 auf der Basis der Zeitdaten, die Xmin-, Xmax-, Ymin- und Ymax-Werten entsprechen, bestimmen, ob das Zeitfenster erfüllt ist. Beispielsweise kann der Winkelsensor 220 eine Differenz zwischen einer Zeit, die jedem Wert zugeordnet ist, bestimmen, und kann bestimmen, ob jede Differenz in dem Zeitfenster liegt. Bei manchen Implementierungen ist eine Bestimmung, ob das Zeitfenster erfüllt ist, optional (d.h. der Winkelsensor 220 kann von dem Block 410 zu dem Block 420 übergehen, ohne den Block 415 auszuführen).
-
Wie ferner in 4A gezeigt ist, kann der Prozess 400 in dem Fall, dass das Zeitfenster nicht erfüllt ist (Block 415 - NEIN), ein Erhalten von Rohsensordaten, die minimale und maximale Werte eines ersten Signals und eines zweiten Signals umfassen, und von Temperaturdaten, die den minimalen und den maximalen Werten entsprechen, umfassen (Block 405). Beispielsweise kann der Winkelsensor 220 bestimmen, dass das Zeitfenster nicht erfüllt ist, und kann zu dem Block 405 zurückkehren und dazu übergehen, Rohsensordaten zu erhalten, wie oben beschrieben wurde.
-
Wie ferner in 4A gezeigt ist, kann der Prozess 400 in dem Fall, dass das Zeitfenster erfüllt ist (block 415 - JA), ein Bestimmen, auf der Basis der Rohsensordaten, eines ersten Wertes eines Kalibrierungsparameters umfassen (Block 420). Beispielsweise kann der Winkelsensor 220 einen ersten Wert eines Kalibrierungsparameters bestimmen. Bei manchen Implementierungen kann der Winkelsensor 220 den ersten Wert eines Kalibrierungsparameters bestimmen, wenn (z. B. nachdem) der Winkelsensor 220 bestimmt, dass das Zeitfenster erfüllt ist. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 den ersten Wert der Kalibrierung bestimmen, wenn der Winkelsensor 220 bestimmt, dass das Temperaturfenster erfüllt ist.
-
Der Kalibrierungsparameter kann einen Parameter umfassen, der einem Kalibrieren des Winkelsensors 220 zugeordnet ist. Beispielsweise kann der Kalibrierungsparameter einen Versatzparameter, der einem Korrigieren eines Versatzes des x-Signals (Ox) zugeordnet ist, einen Gewinnparameter, der einem Normieren einer Amplitude des x-Signals (Ax) zugeordnet ist, einen Versatzparameter, der einem Korrigieren eines Versatzes des y-Signals (Oy) zugeordnet ist, einen Gewinnparameter, der einem Normieren einer Amplitude des y-Signals (Ay) zugeordnet ist, einen Phasenparameter, der einem Korrigieren eines Nicht-Orthogonalitätsfehlers zwischen dem x-Signal und dem y-Signal (φ) zugeordnet ist, eine Kombination beliebiger oder aller der vorstehenden Elemente oder dergleichen umfassen.
-
Bei manchen Implementierungen kann der Winkelsensor 220 den ersten Wert des Kalibrierungsparameters auf der Basis der Rohsensordaten bestimmen. Beispielsweise kann der Winkelsensor 220 den ersten Wert von Ox als Wert bestimmen, der gleich einem Durchschnitt von Xmin und Xmax ist. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 den ersten Wert von Oy als einen Wert bestimmen, der gleich einem Durchschnitt von Ymin und Ymax ist. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 den ersten Wert von Ax als einen Wert bestimmen, der gleich der Hälfte einer Differenz zwischen Xmin und Xmax ist. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 den ersten Wert von Ay als einen Wert bestimmen, der gleich der Hälfte einer Differenz zwischen Ymin und Ymax ist. Bei manchen Implementierungen kann der erste Wert von φ auf der Basis eines Vergleichens eines Winkels, der einem Nulldurchgang des x-Signals entspricht, und eines Winkels, der Ymin und/oder Ymax entspricht, bestimmt werden. Hier kann φ als Winkel bestimmt werden, der dann, wenn er an das x-Signal angelegt wird, eine Phasendifferenz von 90° zwischen dem x-Signal und dem y-Signal bewirkt. Es ist zu beachten, dass die obigen Techniken zum Bestimmen der ersten Werte der Kalibrierungsparameter lediglich Beispiele sind und dass verschiedene Techniken verwendet werden können.
-
Bei manchen Implementierungen kann der Winkelsensor 220 erste Werte eines oder mehrerer Kalibrierungsparameter bestimmen. Es ist zu beachten, dass, obwohl hierin beschriebene Implementierungen im Zusammenhang mit einem Bestimmen der Kalibrierungsparameter, wie sie oben beschrieben wurden, beschrieben werden, andere Techniken zum Bestimmen von Kalibrierungsparametern, die einem Kalibieren eines Winkelsensors zugeordnet sind, existieren, von denen beliebige auf hierin beschriebene Techniken angewendet werden können.
-
Wie in 4A ferner beschrieben ist, kann der Prozess 400 ein Zuordnen einer Temperatur zu dem ersten Wert des Kalibrierungsparameters umfassen (Block 425). Beispielsweise kann der Winkelsensor 220 eine bestimmte Temperatur (z. B. einen bestimmten Temperaturwert) dem ersten Wert des Kalibrierungsparameters zuordnen. Bei manchen Implementierungen kann der Winkelsensor 220 auf der Basis eines Bestimmens des ersten Wertes des Kalibrierungsparameters eine Temperatur dem ersten Wert des Kalibrierungsparameters zuordnen.
-
Bei manchen Implementierungen kann der Winkelsensor 220 eine Durchschnittstemperatur dem ersten Wert des Kalibrierungsparameters zuordnen. Beispielsweise kann der Winkelsensor 220 eine Durchschnittstemperatur der Temperaturen bestimmen, die anhand von Temperaturdaten, die Xmin-, Xmax-, Ymin- und Ymax-Werten entsprechen, identifiziert werden. Hier kann der Winkelsensor 220 die Durchschnittstemperatur dem ersten Wert des Kalibrierungsparameters zuordnen. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 einen Mittelwert von Temperaturdaten, einen Modus der Temperaturdaten, ein höchstes von Temperaturdaten, ein niedrigstes von Temperaturdaten oder dergleichen dem ersten Wert des Kalibrierungsparameters zuordnen.
-
Wie in 4B gezeigt ist, kann der Prozess 400 ein Bestimmen, auf der Basis der Temperatur und einer dem Kalibrierungsparameter zugeordneten Temperaturkompensationsfunktion, eines zweiten Wertes des Kalibrierungsparameters umfassen (Block 430). Beispielsweise kann der Winkelsensor 220 auf der Basis der Temperatur und einer dem Kalibrierungsparameter zugeordneten Temperaturkompensationsfunktion einen zweiten Wert des Kalibrierungsparameters bestimmen. Bei manchen Implementierungen kann der Winkelsensor 220 den zweiten Wert des Kalibrierungsparameters auf der Basis eines Zuordnens der Temperatur zu dem ersten Wert des Kalibrierungsparameters bestimmen.
-
Der zweite Wert des Kalibrierungsparameters kann einen Wert des Kalibrierungsparameters umfassen, wie er auf der Basis einer Temperaturkompensationsfunktion berechnet wird, die durch den Winkelsensor 220 gespeichert ist oder für denselben zugänglich ist.
-
Die Temperaturkompensationsfunktion kann eine Funktion umfassen, ausgehend von der ein Wert eines Kalibrierungsparameters auf der Basis einer Temperatur berechnet werden kann. Beispielsweise kann die Temperaturkompensationsfunktion eine polynomische Funktion, eine stückweise lineare Funktion, eine Spline-Funktion oder dergleichen umfassen, die eine Temperatur als Eingabe empfängt und als Ausgabe einen Wert des Kalibrierungsparameters bereitstellt.
-
Bei manchen Implementierungen kann der Winkelsensor 220 Informationen speichern, die der Temperaturkompensationsfunktion zugeordnet sind. Beispielsweise kann der Winkelsensor 220 während der anfänglichen Kalibrierung mit einer Temperaturkompensationsfunktion konfiguriert sein, die dem Kalibrierungsparameter zugeordnet ist. Bei manchen Implementierungen kann der Winkelsensor 220 die Temperaturkompensationsfunktion (gemäß der nachstehenden Beschreibung) aktualisieren und kann Informationen, die der aktualisierten Temperaturkompensationsfunktion zugeordnet sind, speichern, so dass der Winkelsensor 220 den Winkelsensor 220 zu einem späteren Zeitpunkt unter Verwendung einer Backend-Kalibrierungstechnik (z. B. auf der Basis der aktualisierten Temperaturkompensationsfunktion) kalibrieren kann. Bei manchen Implementierungen kann der Winkelsensor 220 Informationen speichern, die mehreren Temperaturkompensationsfunktionen zugeordnet sind, die mehreren Kalibrierungsparametern entsprechen (z. B. Ox, Oy, Ax, Ay und/oder φ).
-
Bei manchen Implementierungen kann der Winkelsensor 220 den zweiten Wert des Kalibrierungsparameters bestimmen, indem er Informationen, die der Durchschnittstemperatur zugeordnet sind, die dem ersten Wert des Kalibrierungsparameters zugeordnet ist, der Temperaturkompensationsfunktion als Eingang bereitstellt und indem er als Ausgang den zweiten Wert des Kalibrierungsparameters empfängt. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 den zweiten Wert des Kalibrierungsparameters auf der Basis einer Nachschlagtabelle bestimmen, die dem Kalibrierungsparameter entspricht (z. B. wenn die Nachschlagtabelle Werte des Kalibrierungsparameters, der verschiedenen Temperaturen entspricht, speichert). Bei manchen Implementierungen kann der Winkelsensor 220 zwischen zwei oder mehr Werten in der Nachschlagtabelle extrapolieren, um den zweiten Wert des Kalibrierungsparameters zu bestimmen.
-
Bei manchen Implementierungen kann der Winkelsensor 220 zweite Werte eines oder mehrerer Kalibrierungsparameter bestimmen. Beispielsweise kann der Winkelsensor 220 zweite Werte von Ox, Oy, Ax, Ay und/oder φ auf der Basis einer jeweiligen Temperaturkompensationsfunktion bestimmen, die jedem Kalibrierungsparameter entspricht und durch den Winkelsensor 220 gespeichert wird.
-
Wie in 4B weiter gezeigt ist, kann der Prozess 400 ein Vergleichen des ersten Wertes des Kalibrierungsparameters und des zweiten Wertes des Kalibrierungsparameters umfassen (Block 435) und kann ein Bestimmen, auf der Basis des Vergleichens des ersten Wertes und des zweiten Wertes, umfassen, ob eine Abweichungsschwelle erfüllt ist (Block 440). Beispielsweise kann der Winkelsensor 220 den ersten Wert des Kalibrierungsparameters und den zweiten Wert des Kalibrierungsparameters vergleichen und bestimmen, ob eine Abweichungsschwelle erfüllt ist (z. B. ob eine Differenz zwischen dem ersten Wert und dem zweiten Wert über einem Wert, der die Abweichungsschwelle darstellt, liegt, größer ist als derselbe, größer als oder gleich demselben ist oder dergleichen). Bei manchen Implementierungen kann der Winkelsensor 220 den ersten Wert und den zweiten Wert vergleichen, nachdem der Winkelsensor 220 den ersten Wert des Kalibrierungsparameters und den zweiten Wert des Kalibrierungsparameters bestimmt.
-
Die Abweichungsschwelle kann Informationen umfassen, die eine Differenz zwischen dem ersten Wert und dem zweiten Wert identifizieren, die, falls sie erfüllt ist, den Winkelsensor 220 veranlasst, eine einem Kalibrieren des Winkelsensors 220 zugeordnete Temperaturkompensationsfunktion zu aktualisieren. Beispielsweise kann die Abweichungsschwelle eine minimale Differenz, eine prozentuale Differenz oder dergleichen umfassen. Bei manchen Implementierungen kann die Abweichungsschwelle an dem Winkelsensor 220 konfigurierbar sein. Falls sie erfüllt ist, kann der Winkelsensor 220 mit einem Aktualisieren der Temperaturkompensationsfunktion fortfahren (d. h. kann zu Prozess 400 übergehen). Bei manchen Implementierungen ist die Bestimmung, ob die Abweichungsschwelle erfüllt ist, optional (d. h. der Winkelsensor 220 kann zu Block 445 übergehen, ohne die Blöcke 435 und 440 durchzuführen).
-
Wie ferner in 4B gezeigt ist, kann der Prozess 400 in dem Fall, dass die Abweichungsschwelle nicht erfüllt ist (Block 440 - NEIN), ein Erhalten von Rohsensordaten, die minimale und maximale Werte eines ersten Signals und eines zweiten Signals umfassen, und von Temperaturdaten, die den minimalen und den maximalen Werten entsprechen, umfassen (Block 405). Beispielsweise kann der Winkelsensor 220 bestimmen, dass die Abweichungsschwelle nicht erfüllt ist, und kann zu Block 405 zurückkehren und kann dazu übergehen, zusätzliche Rohsensordaten zu erhalten, wie oben beschrieben wurde. Hier kann eine Abweichung, die die Abweichungsschwelle nicht erfüllt, darauf hinweisen, dass die Temperaturkompensationsfunktion zuverlässig dafür verwendet werden kann, einen Wert des Kalibrierungsparameters zu bestimmen.
-
Wie ferner in 4A gezeigt ist, kann der Prozess 400 in dem Fall, dass die Abweichungsschwelle erfüllt ist (Block 440 - JA), ein Aktualisieren der Temperaturkompensationsfunktion auf der Basis des ersten Wertes des Kalibrierungsparameters umfassen (Block 445). Beispielsweise kann der Winkelsensor 220 die Temperaturkompensationsfunktion auf der Basis des ersten Wertes des Kalibrierungsparameters aktualisieren. Bei manchen Implementierungen kann der Winkelsensor 220 die Temperaturkompensationsfunktion nach einem Bestimmen, dass die Abweichungsschwelle erfüllt ist, aktualisieren. Zusätzlich oder alternativ dazu kann der Winkelsensor 220 die Temperaturkompensationsfunktion aktualisieren, nachdem der Winkelsensor 220 den zweiten Wert des Kalibrierungsparameters bestimmt. Bei manchen Implementierungen kann der Winkelsensor 220 die Temperaturkompensationsfunktion auf der Basis des ersten Wertes des Kalibrierungsparameters aktualisieren.
-
5A ist ein Diagramm eines Beispiels, das einem Aktualisieren einer polynomischen Temperaturkompensationsfunktion zugeordnet ist. Wie in 5A gezeigt ist, kann der Winkelsensor 220 einen Satz von N Kalibrierungspunkten gemäß der Temperaturkompensationsfunktion berechnen. Hier kann der Satz von N Kalibrierungspunkten (z. B. gleichmäßig) über einer dem Winkelsensor 220 zugeordneten Bandbreite von Temperaturen verteilt sein. Wie ferner gezeigt ist, kann der Winkelsensor 220 einen Punkt hinzufügen, der dem ersten Wert des Kalibrierungsparameters zugeordnet ist (z. B. bei der zugeordneten Temperatur), und einen Koeffizienten des Polynoms (z. B. unter Verwendung einer polynomischen Regressionstechnik) neu berechnen. Hier kann der zusätzliche Punkt die Temperaturkompensationsfunktion in der Nähe der entsprechenden Temperatur beeinflussen. Wie in 5A gezeigt ist, kann beispielsweise der dem ersten Wert zugeordnete Kalibrierungspunkt die Linie, die der Temperaturkompensationsfunktion zugeordnet ist, zu dem dem ersten Wert zugeordneten Punkt hin nach unten ziehen. Bei manchen Implementierungen kann die Anzahl von N Kalibrierungspunkten dazu konfiguriert sein, eine Auswirkung eines zusätzlichen Punktes auf die Temperaturkompensationsfunktion zu steuern.
-
Wie oben angegeben wurde, ist 5A lediglich als Beispiel vorgesehen. Andere Beispiele sind möglich und können sich von dem, was bezüglich 5A beschrieben wurde, unterscheiden.
-
5B ist ein Diagramm eines Beispiels, das einem Aktualisieren einer stückweisen linearen (PWL, piecewise linear) Temperaturkompensationsfunktion zugeordnet ist. Wie in 5B gezeigt ist, kann der Winkelsensor 220 einen Satz von Liniensegmenten, die durch Grenzknoten definiert sind, gemäß der Temperaturkompensationsfunktion berechnen. Wie weiter gezeigt ist, kann der Winkelsensor 220 einen Punkt hinzufügen, der dem ersten Wert des Kalibrierungsparameters zugeordnet ist (z. B. bei der zugeordneten Temperatur), und die stückweise Funktion neu berechnen. Beispielsweise kann der Winkelsensor 220 eine Differenz zwischen einem Liniensegment der stückweisen Funktion, das dem ersten Wert zugeordnet ist, berechnen und Grenzknoten, die dem Liniensegment zugeordnet sind, um einen bestimmten Betrag (z. B. 10 % der berechneten Differenz) zu dem ersten Wert hin bewegen (z. B. nach unten, wie in 5B gezeigt ist). Optional kann der Winkelsensor 220 die Grenzknoten um einen Bruchteil, der reziprok zu einer Temperatur eines benachbarten Grenzknotens ist, bewegen, um zu bewirken, dass sich Grenzknoten, die sich näher an dem hinzugefügten Punkt befinden, relativ zu anderen Grenzknoten weiter bewegen.
-
Bei manchen Implementierungen können, nach einem Aktualisieren der Temperaturkompensationsfunktion, Informationen, die den Temperaturkompensationsfunktionen zugeordnet sind, in eine Speicherkomponente des Winkelsensors 220 (z. B. einen nicht-flüchtigen Speicher) geschrieben werden. Bei manchen Implementierungen können die den Temperaturkompensationsfunktionen zugeordneten vorherigen Informationen beibehalten werden (z. B. in der Speicherkomponente gespeichert werden, ohne überschrieben oder gelöscht zu werden), bis der Erfolg der Schreibprozedur verifiziert wurde (z. B. indem die neuen Daten einschließlich einer zyklischen Redundanzprüfung (CRC, cyclic redundancy check) erneut gelesen werden und mit den extrahierten Daten verglichen werden), um zu gewährleisten, dass die ursprüngliche Temperaturkompensationsfunktion verfügbar ist, falls die Schreibvorgänge fehlschlagen (z. B. aufgrund eines Leistungsausfalls, der dem Winkelsensor 220 zugeordnet ist, aufgrund einer Transientenstörung, die dem Winkelsensor 220 zugeordnet ist, oder dergleichen).
-
Bei manchen Implementierungen wird die Aktualisierung der Temperaturkompensationsfunktion eventuell lediglich in dem Fall vorgenommen, dass die Relevanz der Abweichungsschwelle, die der Temperaturkompensationsfunktion zugeordnet ist, eine Schwellenanzahl von Malen erfüllt ist (z. B. derart, dass der Winkelsensor 220 die Temperaturkompensationsfunktion lediglich dann aktualisiert, wenn eine Schwellenanzahl von Abweichungen detektiert werden).
-
Bei manchen Implementierungen kann die Aktualisierung der Temperaturkompensationsfunktion ein oder mehrere Male vorgenommen werden, und die Übertragung auf die nicht-flüchtige Speicherkomponente kann vorgenommen werden, wenn die Temperaturkompensationsfunktion beträchtlich modifiziert wird. Beispielsweise kann der Winkelsensor 220 die Temperaturkompensationsfunktion aktualisieren, wie oben beschrieben wurde, schreibt jedoch die aktualisierte Temperaturkompensationsfunktion eventuell nur dann in den nicht-flüchtigen Speicher, wenn eine Änderung der Temperaturkompensationsfunktion eine Schwelle erfüllt (z. B. wenn eine Änderung eines Koeffizienten der Temperaturkompensationsfunktion größer ist als ein Schwellwert oder größer ist als eine bestimmte prozentuale Änderung). Hier wird eventuell die Bestimmung der Differenz zwischen dem ersten Wert und dem zweiten Wert nicht vorgenommen (d. h. der Winkelsensor 220 kann die Blöcke 435 und 440 überspringen), da der Winkelsensor 220 bestimmt, ob die aktualisierte Temperaturkompensationsfunktion später gespeichert werden soll, nachdem er die Temperaturkompensationsfunktion aktualisiert hat. Bei manchen Implementierungen kann ein Überspringen der Blöcke 435 und 440 eine Bewahrung von Ressourcen des Winkelsensors 220 (z. B. Verarbeitungsressourcen, Leistung oder dergleichen) berücksichtigen.
-
Bei manchen Implementierungen kann der Winkelsensor 220 nach dem Aktualisieren der Temperaturkompensationsfunktion die Temperaturkompensationsfunktion dazu verwenden, eine Backend-Kalibrierung des Winkelsensors 220 vorzunehmen. Wie oben erörtert wurde, kann die Temperaturkompensationsfunktion während der Lebensdauer des Winkelsensors 220 (z. B. nach der anfänglichen Kalibrierung) auf der Basis der gesammelten Sensordaten aktualisiert werden, wodurch eine verbesserte Genauigkeit der Backend-Kalibrierung über die Lebensdauer des Winkelsensors hinweg ermöglicht wird und/oder ein Erfordernis, ein Schutzband zu verwenden, das einem Berücksichtigen von Kalibrierungsungenauigkeiten und/oder Parameterdriften, die über die Lebensdauer des Winkelsensors 220 hinweg entstehen können, zugeordnet ist, eliminiert wird.
-
Obwohl 4 beispielhafte Blöcke des Prozesses 400 zeigt, kann der Prozess 400 bei manchen Implementierungen zusätzliche Blöcke, weniger Blöcke, andere Blöcke oder anders angeordnete Blöcke als die in 4 gezeigten umfassen. Beispielsweise können ein oder mehrere Blöcke des Prozesses 400 an einem anderen Punkt während des Prozesses 400 durchgeführt werden als in 4A und 4B veranschaulicht ist. Als bestimmtes Beispiel kann die Bestimmung dessen, ob das Temperaturfenster erfüllt ist (Block 410) und/oder die Bestimmung dessen, ob das Zeitfenster erfüllt ist (Block 415), unmittelbar vor dem Aktualisieren der Temperaturkompensationsfunktion (Block 445), unmittelbar nach dem Vergleich des ersten Wertes und des zweiten Wertes des Kalibrierungsparameters oder an einem anderen Punkt während des Prozesses 400 erfolgen.
-
Zusätzlich oder alternativ dazu können zwei oder mehr der Blöcke des Prozesses 400 parallel durchgeführt werden. Obwohl außerdem der Prozess 400 als durch den Winkelsensor 220 durchgeführt beschrieben wird, können bei manchen Implementierungen einer oder mehrere oder alle Blöcke des Prozesses 400 durch die Steuerung 230 durchgeführt werden.
-
Wie oben erörtert wurde, kann der Satz von Temperaturkompensationsfunktionen während der Lebensdauer des Winkelsensors 220 (z. B. nach der anfänglichen Kalibrierung) auf der Basis der gesammelten Sensordaten aktualisiert werden, wodurch eine verbesserte Genauigkeit der Backend-Kalibrierung über die Lebensdauer des Winkelsensors hinweg ermöglicht wird und/oder ein Erfordernis, ein Schutzband zu verwenden, das einem Berücksichtigen von Kalibrierungsungenauigkeiten und/oder Parameterdriften, die über die Lebensdauer des Winkelsensors 220 hinweg entstehen können, zugeordnet ist, eliminiert wird.
-
Die vorstehende Offenbarung liefert eine Veranschaulichung und Beschreibung, soll jedoch die Implementierungen nicht erschöpfend auf die genaue offenbarte Form beschränken oder einschränken. Modifikationen und Variationen sind angesichts der obigen Offenbarung möglich oder können aus der Praxis der Implementierungen abgeleitet werden.
-
Obwohl beispielsweise die hierin beschriebenen Techniken im Zusammenhang mit einem Winkelsensor beschrieben werden können, der dazu verwendet wird, eine Ausrichtung eines Magnetfeldes (z. B. einen Winkel zwischen null Grad und dreihundertsechzig Grad) zu bestimmen, können diese Techniken gleichermaßen in Kontexten gelten, die einer oder mehreren anderen Arten von Sensor zugeordnet sind, beispielsweise einem (z. B. magnetischen) Geschwindigkeitssensor, der dazu verwendet wird, eine Drehgeschwindigkeit eines drehbaren Objekts zu bestimmen.
-
Als bestimmtes Beispiel kann ein Geschwindigkeitssensor ein oder mehrere Erfassungselemente, einen Speicher und einen oder mehrere Prozessoren zum: Empfangen von Sensordaten, die einen Satz von Signalwerten und einen Satz von Temperaturwerten, der dem Satz von Signalwerten entspricht, umfassen, wobei der Satz von Signalwerten einem an dem Geschwindigkeitssensor vorliegenden Magnetfeld entsprechen kann; Bestimmen, auf der Basis des Satzes von Signalwerten, eines ersten Wertes eines Kalibrierungsparameters, der einem Kalibrieren des Geschwindigkeitssensors zugeordnet ist; Identifizieren, auf der Basis des Satzes von Temperaturwerten, eines bestimmten Temperaturwertes, der dem ersten Wert des Kalibrierungsparameters zugeordnet ist; Bestimmen eines zweiten Wertes des Kalibrierungsparameters auf der Basis des bestimmten Temperaturwertes und einer dem Kalibrierungsparameter zugeordneten Temperaturkompensationsfunktion; Aktualisieren der Temperaturkompensationsfunktion auf der Basis eines Vergleichs des ersten Wertes und des zweiten Wertes; und Speichern von Informationen, die der Temperaturkompensationsfunktion zugeordnet sind, umfassen.
-
Hierin werden manche Implementierungen in Verbindung mit Schwellen beschrieben. Gemäß der Verwendung hierin kann sich ein Erfüllen einer Schwelle darauf beziehen, dass ein Wert größer als die Schwelle, mehr als die Schwelle, höher als die Schwelle, größer als die oder gleich der Schwelle, weniger als die Schwelle, geringer als die Schwelle, niedriger als die Schwelle, weniger als die oder gleich der Schwelle, gleich der Schwelle usw. ist.
-
Obwohl bestimmte Kombinationen von Merkmalen in den Patentansprüchen dargelegt und/oder in der Spezifikation offenbart sind, sollen diese Kombinationen die Offenbarung möglicher Implementierungen nicht einschränken. In der Tat können viele dieser Merkmale auf Arten und Weisen kombiniert werden, die nicht speziell in den Patentansprüchen dargelegt und/oder in der Spezifikation offenbart sind. Obwohl jeder nachstehend aufgeführte abhängige Patentanspruch direkt von lediglich einem Anspruch abhängen kann, umfasst die Offenbarung möglicher Implementierungen jeden abhängigen Patentanspruch in Kombination mit jedem anderen Patentanspruch in dem Anspruchssatz.
-
Kein Element, keine Handlung oder keine Anweisung, das bzw. die hierin verwendet wird, sollte als kritisch oder essenziell angesehen werden, es sei denn, es bzw. sie ist ausdrücklich so beschrieben. Auch sollen die Artikel „ein/eine“ gemäß der Verwendung in dem vorliegenden Dokument einen oder mehrere Posten umfassen und können austauschbar mit „ein oder mehrere“ verwendet werden. Ferner soll gemäß der Verwendung in dem vorliegenden Dokument der Begriff „Satz“ einen oder mehrere Posten umfassen und kann austauschbar mit „ein/eine oder mehrere“ verwendet werden. Wo lediglich ein Posten beabsichtigt ist, wird der Begriff „ein/eine“ oder eine ähnliche Sprache verwendet. Ferner sollen gemäß der Verwendung in dem vorliegenden Dokument die Begriffe „hat“, „haben“ oder dergleichen offene Begriffe sein. Ferner soll der Ausdruck „auf der Basis von“ „zumindest teilweise auf der Basis von“ bedeuten, wenn nicht explizit etwas anderes angegeben ist.