www.mikrocontroller.net

Forum: FPGA, VHDL & Co. Resolverauswertung in VHDL


Autor: Patrick Buchbauer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

bin gerade dabei für ein Projekt die Resolverauswertung auf einem FPGA
zu realisieren. Über die feldorientierte Regelung regel ich eine PMSM.
Für die Regelung wird die Lage des Rotors sowie die Drehzahl benötigt.
Es wird mit einem SinCos Geber als Resolver gearbeitet.
Das bedeutet ich gebe mein Excitation Signal auf den Resolver und er
gibt mir Usin und Ucos zurück. Im Prinzip wie ein
Drehtransformator.Diese Signale digitalisiere ich mir über einen ADC
und will dann die Signale im FPGA verarbeiten.
Nun habe ich ein bißchen über das Verfahren Angle Tracking Observer
gefunden, das mir die Lage und die Drehzahl berechnet.
Doch leider komme ich nicht ganz dahinter, wie ich die Struktur
programmieren soll.
Vielleicht hat jemand schon Erfahrung mit diesem Verfahren und kann mir
weiterhelfen.
Vielen Dank

Gruß
Patrick

Autor: Horst (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Patrick,

ich bin an eben dem gleichen Problem... Nur implementiere ich die 
Auswertung gerade auf einen 32Bit Mikrocontroller. Kann dir ein 
Application Scheet von TI empfehlen, falls du noch nicht selbst drauf 
gekommen bist.

http://focus.ti.com/lit/an/spra605/spra605.pdf

Es beschreibt groben den Ablauf und die Funktionalität des Ganzen...

PS: welche Genauigkeit strebst du an, bzw. hast du erreicht?

Gruß
Horst

Autor: Smoki (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Zusammen
Ich hab ein problem ich weiss nicht wie ich zu dem Signal im Bild
Blau(Motor) kriege. Ich hab das Rosarote und das Gelbe.
Das ist die Formel: Resolver Signal(Ausgabe 1)= Erreger*Motor
Signal := 7*(sin(2*pi*8000*t))*sin(2*pi*3000/60*t)
Erreger = sin(2*pi*8000*t)
Motor   = sin(2*pi*3000/60*t)

Hat jemand eine Idee wie ich das Bauen muss? Komarator oder auch
anderst?
THX

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du brauchst die Hüllkurve des gelben Signals. Das hat mit VHDL aber erst 
mal gar nichts zu tun... :-/
Lies dir mal das hier ab Abschnitt 3.2.3 Resolverauswertung
http://www.sew-eurodrive.de/download/pdf/11322802.pdf

BTW: das habe ich mit Google nach 5 Sekunden gefunden mit den Begriffen:
resolverauswertung hüllkurve

Übrigens:
Du wirst aus dem gelben und dem roten Signal niemals das blaue Signal 
bekommen können. Denn dir fehlen ja alle Stützpunkte zwischen 2 
Spitzenwerten...

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]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [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.