BLDC Regler Timing

OP #3117930
Lesenswert?
• ▲
▼
Hallo Zusammen,

ich bin dabei mir einen BLDC Regler zu bauen. Aber jetzt stelle ich mir 
die Frage: Wie kann man das Timing erzeugen? Es soll wählbar zwischen 
6°, 12°, 18° sein. Momentan habe ich es so, dass die Kommutierung direkt 
nach dem Analog-Komparator Interrupt ausgelöst wird. Theoretisch müsste 
ich doch dazu die Drehzahl wissen, damit ich dann von einer Umdrehung 
auf den Winkel schließen kann?

Vielen Dank. Gruß Steffen
Gast #3118043
Lesenswert?
• ▲
▼
Steffen Ha schrieb:
> Momentan habe ich es so, dass die Kommutierung direkt
> nach dem Analog-Komparator Interrupt ausgelöst wird.

Dann ist deine Kommutierung aber zu früh. Der Interruppt erfolgt bei 
dieser Erkennungsschaltung, wenn die generierte Spannung am 
nichtbestromten Pin die virtuelle Masse erreicht. Das ist aber 
eigentlich genau der Mittelpunkt der Phase und nicht der Beginn der 
neuen.

Ich kenne es so dass dann ein Timer gestartet wird, der abhängig von der 
bisherigen Drehzahl eine Zeit lang warte und dann die Kommutierung 
auslöst.
Gast #3134749
Lesenswert?
• ▲
▼
Hi, das Timing stellt sich durch die Kommutation von selbst ein da mußt 
du nichts machen. Wichtig ist das die Kommutation stimmt, habe auch ewig 
dafür gebraucht. Welchen Prozessor verwendest du? Wenn du einen Atxmega 
verwendest kann ich dir eventl weiterhelfen.
OP #3136896
Lesenswert?
• ▲
▼
Hi, ich verwende bis her einen Atmega 8 im TQFP Gehäuse. Werde aber auf 
einen größeren umsteigen. Wie meinst du das mit: das Timing stellt sich 
von selbst ein? Ich muss doch dafür sorgen z.B. das nicht bei 0° 
weitergeschaltet wird sondern z.B. bei 15°. Das wollte ich mit einem 
Timer machen.

Ist der unterschied zwischen den XMega und Megas so groß? Programmierst 
du in C?

Gruß Steffen
#3139005
Lesenswert?
• ▲
▼
Lisa schrieb:
> Hoi!
>
> Du musst einen Timer starten wenn du eine Phase umgeschaltet hast. Dann
> misst du die Zeit bis zu deinem Interrupt. Diese Zeit musst du dann
> nochmal nach dem Interrupt warten und dann deine Phase weiterschalten.
> Steht auch hier -> http://www.atmel.com/Images/doc8012.pdf nochmal
> erklärt auf Seite 11

Genau so. Dann hast du eine 30 Grad Verschiebung. Wenn du weniger haben 
willst, musst du entsprechend weniger Zeit warten, bis er wirklich 
umschaltet.

Geht recht einfach mit einem Timer, den du an deinen Komparator koppeln 
kannst. Gibt einige AVR's, bei denen du den Capture Interrupt an den 
Komparator koppeln kannst. Diesen Wert lässt du einfach in diesem 
Register stehen, nullst den Timer und schaltest einen Timer Mode an, der 
ICR als Top-Wert hat. Ganz einfach also..

MFG Dennis
Gast #3139428
Lesenswert?
• ▲
▼
Steffen Ha schrieb:
> Wie muss ich denn noch die
> Phasenverschiebung von der BEMF Schaltung einrechnen? Den ICP vom Atmega
> verwende ich leider schon zum Einlesen des PPM Signals von meiner
> Modellbau Fernsteuerung.

Hi Steffen!
Falls Du die Kondensatoren wegläßt, entfällt die Phasenverschiebung.
Ansonsten: Rs zusammenfassen und Phasengang des resultierenden 
RC-Gliedes betrachten.
Daß Du den ICP nutzt, scheint mir etwas ungünstig, da Du damit den 
Timer1 belegst, der aber ein sehr guter Kandidat (weil 16 Bit) wäre, um 
präzise die Kommutierung zu kontrollieren (OCR1A/B), wie Floh und Lisa 
es vorgeschlagen haben. Vielleicht kannst Du die PPM Auswertung über 
einen der 8 Bit Timer und INT0 oder INT1 machen (ausgelöst auf Flanke, 
jeweils zwischen steigend und fallend umgeschaltet)?
Der dann noch verbleibende 8 Bit Timer eignet sich (falls noch nicht 
geschehen) übrigens prima für eine PWM der Fets!

Viel Erfolg
 flipsi

Antwort schreiben

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.

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.