BLDC mit Sinuskommutierung

Gast #2579571
Lesenswert?
• ▲
▼
Hallo,
ich verwende einen LPC2468. Ich möchte damit einen BLDC ansteuern, 
allerdings mit Sinuskommutierung. Dazu habe ich mir die Application Note 
AVR447 zu gemüte geführt (http://www.atmel.com/Images/doc8010.pdf), wo 
das einigermassen gut erklärt wird. Dort kommt auch ein interessantes 
Verfahren zum Zug:

Die Rotorposition wird interpoliert, indem mittels Timer die Dauer der 
High-Phase eines Hallsensors gemessen wird. Lässt man den Timer 120 mal 
schneller laufen, dann zählt der Timer quasi die Rotorposition in Grad.
Genau sowas will ich hier auch implementieren, das braucht man ja 
sowieso für Sinuskommutierung.
Mein uC hat entsprechende Input Capture Eingänge sowie ausreichend 
Timer, aber ich weiss jetzt grade nicht so recht, wie ich das angehen 
kann.
Könnt ihr mir einen Tipp geben?

Ich denke mir das so:
Mit Input Capture die High-Zeit eines Hallsensors messen, und danach 
einen Timer so einstellen, dass er 120 mal schneller hochzählt. Der 
Timer muss nicht unbedingt einen IRQ generieren; vielmehr stelle ich mir 
das so vor, dass ich einfach dann, wenn ich die Rotorposition wissen 
will, das Timerregister lese. Geht das?
Ich stehe momentan extrem auf dem Schlauch.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.