Auswertung von Resolver-Signalen mit Analog-to-Digital-Converter (ADC)
Die Resolversignale lassen sich auch direkt durch einen Mikrocontroller (MCU) auswerten. Hierzu ist eine MCU mit zwei unabhängigen Analog-Digital-Umsetzern (ADC) besonders gut geeignet, denn so können Sinus- und Kosinus-Signal zeitgleich erfasst werden.
Das Bild am rechten Rand (anlicken für eine größere Darstellung) zeigt einen Versuchsaufbau mit einer ATxmega64A3U-MCU. Deren beide 12-Bit-ADCs können gleichzeitig jeweils eine Sequenz von bis zu vier Samples erfassen, wobei die Triggerung über das Eventsystem der MCU direkt vom Analogkomparator erfolgt. Dieser wird von einer einfachen Spitzenwert-Detektierung gespeist, welche das Erregersignal des Resolvers auswertet. Sowohl der positive als auch der negative Scheitelwert der Erregerspannung lösen somit eine Sequenz von jeweils vier ADC-Wandlungen pro Kanal aus.
Die zwei mal vier Samples der Sinus- und Kosinussignale werden jeweils gemittelt und einer einfachen aber umso effektivereren Offset-Kompensation der Signalübertragungskette unterworfen. Anschließend wird der Resolverwinkel durch eine Arcustangens-Funktion ermittelt. Diese basiert auf einer Tabelle der atan-Funktion im Intervall [0;1[, was einem Winkel von 0° bis 45° entspricht. Der zugehörige Code wertet die Tabelle mit Hilfe von acht Fallunterscheidungen des Samplepaares aus. Die Tabelle ist so angelegt, dass die volle 12-Bit-Auflösung der ADCs erhalten bleibt.
Die MCU erzeugt auch das Erregersignal für den Resolver. Mittels zweier Timer/Counter, die über das bereits erwähnte Eventsystem zusammengeschaltet sind, wird ein Rechtecksignal mit einer Frequenz von 10kHz erzeugt, das keine dritte Oberschwingung aufweist. Somit genügt ein einfaches aktives Tiefpassfilter 2. Ordnung, das keinen sonderlich steilen Übergang vom Durchlass- in den Sperrbereich aufweisen muss, um die sinusförmige Grundschwingung des Erregersignals auszufiltern, denn die erste Oberschwingung, die unterdrückt werden muss, ist die fünfte Harmonische. Anschließend wird das Signal über einen einfachen integrierten Audioverstärker in Brückenschaltung auf die Erregerwicklung des Resolvers geführt.
Die beiden differentiellen Ausgangssignale Sinus und Kosinus des Resolvers werden jeweils durch einen Operationsverstärker in massebezogene Differenzsignale umgesetzt. Gleichzeitig wird ein Gleichspannungsoffset von 1,5V addiert, damit die Signale an die Eingangspins der MCU angelegt werden können. Die ADCs werden im Differenzmodus betrieben. Die nichtinvertierenden Eingänge sind mit den Ausgängen der Differenzverstärker verbunden, die invertierenden mit der erwähnten Offsetspannung. Dank der bereits erwähnten Offsetkompensation in der Signalkette können für die Signalkonditionierung sehr preisgünstige 5-Volt Rail-to-Rail Operationsverstärker verwendet werden. Weder die Offsetspannung noch deren Temperaturdrift beeinträchtigen die Genauigkeit der Lageerfassung.
Das mittlere Bild am rechten Rand zeigt einen einfachen Messaufbau mit einem Resolver, der von einem Gleichstrom-Getriebemotor angetrieben wird. Das unterste Bild zeigt die dabei von der MCU gemessenen Sinus- und Kosinuswerte in XY-Darstellung. Die Messung erfolgte über viele Umdrehungen des Resolvers. Es ist lediglich ein leichtes Quantisierungsrauschen erkennbar. Die Samples liegen alle sehr sehr gut auf der idealen Kreisbahn, die der Vektor des Resolverwinkels beschreibt.
Die Versuchsschaltung kann den so ermittelten Resolverwinkel über verschiedenen Schnittstellen ausgeben, wie RS232/V24, SPI, I2C, USB (CDC-Device, bzw. virtuelle RS232), 8- bzw. 14-Bit Parallelschnittstelle oder durch bis zu zwei analoge Signale über die Digital-Analog-Umsetzer (DAC) der MCU. Die Schaltung kann auch problemlos an ein bestehendes Resolversystem angeschlossen werden, das von einer anderen Schaltung erregt wird, so dass sie als Monitor für eine separate Datenerfassung oder als eine unabhängige Überwachung fungieren kann. Werden die drei Signale Sinus, Kosinus und Erregung durch Übertrager ausgekoppelt, ist eine galvanische Trennung der Systeme problemlos und mit geringem Aufwand möglich.
Gerne passe ich diese Schaltung auch an Ihre Bedürfnisse an und entwerfe für Sie eine kundenspezifische Leiterplatte nach Ihren Spezifikationen!
Fortsetzung: Low-Cost-Schaltung für die Resolverauswertung
Aktualisiert: 2023-08-14