www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik BLDC Motor - Startposition


Autor: Tom G. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin,

Ich hab mir einen fertigen Brushless-Regler bei "Mikrocopter" gekauft.
Leider ist es so, dass beim Starten des Motor der Motor kurz springt.
Den Grund dafür hab ich in der Software gefunden. Der Motor muss vor dem 
Starten synchronisiert werden.
Leider kann ich dass in meinem System nicht brauchen und suche deshalb 
nach Alternativen zur Bestimmung der Startposition.
Welche Methoden wendet man dafür außerhalb des Modellbaus an?
Ideal wäre natürlich, wenn ich die bestehende Hardware dafür verwenden 
könnte.
Jedoch ist der eine oder andere Pin frei, sodass kleine Erweiterungen 
möglich sind.

Danke
Tom G.

Autor: Karl Zeilhofer (griffin27)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie viele Pole hat denn der Motor?
Bzw. wie genau muss die Positionserfassung sein?

Warum darf der Motor am anfang nicht springen. Muss die Drehzahl 
schalgartig bereit stehen? Was ist deine Anwendung? Etwas mehr Infos 
wären schon hilfreich, um dir helfen zu können.

lg, Karl

Autor: name (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich kenne keine fertige lösung.

das problem ist ja, dass die steuerung nicht weiß wie der rotor zum 
stator steht. damit sie das beim einschalten wüßte müßte man einen 
absolutwertgeber verwenden. den gibt es meines wissens nach aber nicht 
für wenig geld und auch nicht in sonderlich klein.

vielleicht kann man das springen verhindern indem man den strom der zu 
beginn "wahllos" auf die spulen gegeben wird langsam ansteigen läßt und 
nicht gleich voll aufreißt. wäre vielleicht ein versuch wert.

schönen abend!

Autor: Thomas Otto (tarzanwiejane)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ausserhalb des Modellbaus nimmt man dafuer Magnete an der achse und 
Hallsensoren. Die geben einem den Stand auf wenige Grad genau aus und 
man kann mit der passenden Kommutierung starten. Der Hallsensor wird 
auch fuer die Kommutierung waehrend des Betriebs genutzt. Back-EMF wie 
bei dem Mikrokopterdingens wird dort nicht genutzt.

cu Tarzanwiejane

Autor: Tom G. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin.

Die Ansteuerung erfolgt ja in 6 Phasen. Die Startposition muss halt so 
genau ermittelt werden, dass bekannt ist in welcher Phase der Motor 
steht und somit die "Startphase" feststeht.
Der Motor treibt eine relativ große Schwungmasse an. Das Problem dabei 
ist nicht direkt der Sprung, sondern dass aufgrund der großen zu 
beschleunigenden Masse dieser Sprung nicht voll ausgeführt werden kann. 
Das heißt der Motor bleibt wieder in einer "falschen Position". Das kann 
zur Folge haben, dass der Motor in die falsche Richtung anläuft.

Tom

Autor: Karl Zeilhofer (griffin27)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hier sollte das langsame Anfahren (Strom langsam durch PWM hochfahren) 
Abhilfe schaffen. Dabei nimmt ma halt in kauf, dass der Motor nicht 
unbedingt synchron läuft. lg

Autor: Tom G. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Motor muss synchron laufen, da sonst die BEMF abhängige Kommutierung 
nicht mehr funktioniert.

Die vorgehensweise mit Hallsensoren ist mir klar.
Aber es gibt genauso sensorless Systeme. Es gibt bestimmt auch Methoden 
hier eine Startposition zu finden....

Autor: Karl Zeilhofer (griffin27)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stimmt, asynchron geht einmal gar nicht.
"Sensorless" die Position rauszufinden ist wahrscheinlich nicht möglich.

Wenn der Motor nur ein- oder zweipolig ist, müsste es mit einem 
Reflektorstreifen auf der Achse möglich sein, die Position 
herauszufinden.

Autor: C. H. (_ch_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wenn dich der Sprung nicht stört, dann mache doch einfach die 
"Sprungdauer" länger - also den Anfangsschaltzustand deines Umrichters. 
Der Rotor hat dann mehr Zeit die Schwungmasse und sich selbst 
auszurichten und die Maschine läuft insgesamt dann richtig an.
Aber aufpassen, dass du dabei deine Spulen und/oder deinen Umrichter 
nicht grillst.
Solange sich der Rotor nicht dreht hast du keine Gegenspannung. Der 
Spulenstrom wird nur durch seinen ohmschen Anteil begrenzt (außer du 
machst ne Stromregelung).

Gruß,
Christian

Autor: Andreas R. (rebirama)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es gibt eine Möglichkeit die Rotorposition festzustellen,
ob das allerdings mit deinem Praktikabel ist steht auf einem anderen 
Blatt:

Die Ständerinduktivität in der d-Achse ist meist unterschiedlich zur der 
in der q-Achse. (die d-Achse ist die, in die der Läuferfluss gerichtet 
ist)
Wenn du eine Möglichkeit hast, den Ständerstrom zu messen, so kannst du 
mit zwei unterschiedlich gerichteten Spannungspulsen (natürlich so 
klein/kurz, das der Motor noch nicht merklich zuckt) die Richtung der 
größten Induktivität herausfinden könnnen (die d-Achse dürfte die 
größere induktivität haben, wegen einem kleinerem Luftspalt?!).

Alternativ zum Strompuls fällt mir noch eine Hochfrequente
Wechselspannung ein. Das lässt den Motor auch nicht loslaufen.

Versuch macht kluch
Ich hab allerdings noch nicht ausprobiert...

Autor: Tom G. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok ich versuch den Gedanken mal weiter zu führen.
Ich geb auf eine Phase (Coil A + Coil B-) einen Spannungsimpuls, der so 
klein ist, dass der Motor nicht zuckt. Zeitlich kurz versetzt messe ich 
auf der anderen Wicklung (Coil C) den Strom. Dies mach ich für alle 
Phasen und kann dann anhand der Strom auf die Position schließen?
Hast du da nähere Infos dazu? Auch das mit der hochfrequenten 
Wechselspannung würd mich interessieren.

Tom

Autor: C. H. (_ch_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Auch das mit der hochfrequenten
>Wechselspannung würd mich interessieren
...schau dir mal das an:
http://deposit.ddb.de/cgi-bin/dokserv?idn=97443892...
so ab Seite 38 wird's für dich interessant.

Gruß,
Christian

Autor: josef (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine einfache und elegante Loesung ist der AMS Rotaryencoder.
Einfach Magnet auf die Achse und der Chip liefert je nach Typ eine 
Aufloesung bis zu 0.01 Grad. 
http://www.austriamicrosystems.com/03products/20_r...

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]
  • [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.