Forum: Mikrocontroller und Digitale Elektronik Resolverauswertung mit MSP430g2553


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Max S. (bonegasher)


Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich möchte eine Schaltung zur Auswertung eines Resolvers entwerfen und 
würde gerne den MSP430g2553 dazu benutzen, da ich diesen bereits samt 
Launchpad besitze.
Jetzt bin ich mir nur nicht sicher, ob dieser dafür auch geeignet ist.

Ich würde gerne das Erregersignal (ca 8KHz-Sinus) einlesen als Rechteck 
sozusagen. Werte über einer Schwelle sollen 1 sein, darunter wieder 0.

Damit könnte ich doch eine Periode bestimmen, in der ich die Werte der 
Sinus- und Cosinuswicklung (haben die gleiche Frequenz) auswerte und 
dann immer an der gleichen Stelle den Spitzenwert herausgreife. Den 
einen Wert pro Periode müsste ich dann manuell irgendwie einstellen. das 
wäre ja immer der größte, bzw. niedrigste Peak.

Damit könnte ich dann einen Winkel ausrechnen.

Am Ende würde ich gerne die beiden Spursignale über PWM + RC-Glied 
wieder ausgeben und auch den Winkel, als Sägezahn zum Beispiel.

Meine Frage wäre, ob der MSP430 dieser Aufgabe überhaupt gewachsen ist 
und ich mit PWM überhaupt einen 8KHZ Sinus, beziehungsweise Dreieck 
erzeugen kann.

Ich würde natürlich die Eingangsspannungen mit Spannungsregler so 
auslegen, dass sie den A/D-Wandler ausreizen (0-3v).

Der ADC10 kann ja anscheinend mit 200 ksps ein Signal verwerten, das 
sollte doch reichen.

Glaubt ihr das ist mit dem Mikrocontroller möglich?
Wie wäre die grobe Vorgehensweise?

: Bearbeitet durch User
von Volker B. (Firma: L-E-A) (vobs)


Bewertung
0 lesenswert
nicht lesenswert
Max S. schrieb:

> ich möchte eine Schaltung zur Auswertung eines Resolvers entwerfen und
> würde gerne den MSP430g2553 dazu benutzen, da ich diesen bereits samt
> Launchpad besitze.
> Jetzt bin ich mir nur nicht sicher, ob dieser dafür auch geeignet ist.

Da ich den genannten Controller nicht kenne, kann ich Dir diese Frage 
nicht beantworten. Vor ein paar Jahren habe ich jedoch eine 
Resolverauswertung mit einem AVR (at90usb162) realisiert, wie auf meiner 
Homepage beschrieben (dr-bosch.com/elektronik_resolverauswertung.php).

Die Schaltung basiert auf einem Vorschlag von Rolf Schönfeld. Wenn ich 
mich recht entsinne, heißt das Buch Digitale Regelung elektrischer 
Antriebe.

Schönfeld dreht das Prinzip um und erregt den Resolver über die beiden 
Sekundärwicklungen, die er mit einem Quadratursignal, also Sinus- und 
Kosinus, speist. An der Primärwicklung kann dann ein sinusförmiges 
Signal empfangen werden, dessen Phasenlage vom Rotorwinkel abhängt. So 
kann die Rotorlage recht einfach aus der Phasenverschiebung zwischen 
Rotorsignal und einem der beiden Erregersignale gemessen werden. Diese 
Messung kann recht einfach über die Capture-Unit einer MCU erfolgen. Zur 
Auswertung wird keine Berechnung trigonometrischer Funktionen benötigt.

Das Quadratursignal kann man über zwei Capture-Kanäle und 
nachgeschaltete Filter erzeugen.

Grüßle,
Volker.

von Torsten C. (torsten_c) Benutzerseite


Bewertung
0 lesenswert
nicht lesenswert
Der Flaschenhals beim MSP430G2553 ist oft das RAM.
Das sollte hier kein Problem sein.

Aber mit einem ADC, der zwischen zwei Pins umschaltet (wenn ich Dich 
richtig verstanden habe) bekommst Du einen Phasen-Versatz.

Vielleicht ist ein µC mit einem Dual-ADC besser geeignet?
Wo Du also beide Signale gleichzeitig samplest?

Um analog auszugeben, kann man z.B. einen billigen AUDIO-DAC aus 
CD-Playern nehmen (PT8211/TDA1311) oder gleich einen µC mit integriertem 
DAC.

Oder über welche Frequenzen reden wir? Reicht PWM + Tiefpass?

: Bearbeitet durch User
von Max S. (bonegasher)


Bewertung
0 lesenswert
nicht lesenswert
Danke erstmal für die Antworten.
Torsten C. schrieb:
> Aber mit einem ADC, der zwischen zwei Pins umschaltet (wenn ich Dich
> richtig verstanden habe) bekommst Du einen Phasen-Versatz.
>
> Vielleicht ist ein µC mit einem Dual-ADC besser geeignet?
> Wo Du also beide Signale gleichzeitig samplest?

Ist das denn so ein großes Problem? Ich möchte ja von beiden Signalen 
blos die Ampitude herausfinden, also den n-ten Wert sozusagen. Kann ich 
dann nicht bei zwei Signalen zwei verschiedene Werte (zeitversetzt) 
rausgreifen?

>
> Um analog auszugeben, kann man z.B. einen billigen AUDIO-DAC aus
> CD-Playern nehmen (PT8211/TDA1311) oder gleich einen µC mit integriertem
> DAC.
>
> Oder über welche Frequenzen reden wir? Reicht PWM + Tiefpass?

8 KHz. Deshalb bin ich mir nicht ganz sicher, ob PWM + Tiefpass 
reicht...

Ich habe gelesen, dass man mit dem integrierten Komparator auch ein 
Signal einlesen und mit Timer dann direkt als PWM wieder ausgeben kann. 
Aber da hab ich leider keine guten Beispiele von TI zu gefunden. Kann 
ich denn wohl aus einem Eingangssignal so sozusagen den Takt rausziehen?

Meint ihr, das wäre auch eine Möglichkeit?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.