Archiv verlassen und diese Seite im Standarddesign anzeigen : Encoder für BL Motor
kristof81
25.05.2010, 13:34
Hallo Zusammen,
Folgendes Problem:
Ich möchte die Position eines brushless Motors für den Modellbau (z.B. Graupner Compact 160) stets bestimmen.
Erste Versuche, dies bei einem sensorlosen Motor zu machen scheitern natürlich beim Starten als auch beim Stoppen des Motors. Ideal wäre es natürlich einen Encoder zu verwenden. Hat das schonmal jemand bei solch einem Motor gemacht? Es muss halt später fliegen und entsprechend leicht sein. Mir würde auch eine recht niedrige Genauigkeit (so praktisch auf eine Umdrehung genau) ausreichen - es ist nur wichtig, dass ich stets genau weiß wie oft sich der Motor gedreht hat.
Meine Idee war bisher dies einfachst über eine Reflexlichtschranke unter dem Motor zu realsieren, die die Bewegung eines Striches mitlogged. Aber der Teufel steckt da natürlich meist im Detail mit Störlicht etc...
Danke
Kristof
BurningBen
02.06.2010, 22:49
Magnet und Reedkontakt/Hallschalter würde mir dazu einfallen.
Da haste keine Probleme mit Störlicht
Hallo!
Ich habe gerade eine einfachste Schaltung mit kleinem DC Motor aus Kasettenrekorder und Oszilloskop auf die schnelle ausprobiert (siehe Code). Die positive Nadelimpulse haben bei Leerlauf ca. 3 V und bei großer Belastung bis zu 10 V gehabt.
Die Flanken, ob sie "sauber" sind, habe ich nicht analisiert. Eventuell wäre ein Monoflop nötig. Pro Umdrehung sind es 6 Impulse, da der Motor 3 Spulen am Rotor hat.
Weil bei BL Motoren elektronischer Komutator ist, sollte solche Schaltung die Drehungen mit Genauigkeit min. +/- 1 messen ermöglichen.
Der "L" Shunt müsste natürlich für bestimmten Motor angepasst werden.
MfG
+----------+
| |
| L C| C
| 4m7 C| µ1
| C|
| | ||
| +---||---> zum Zähler
| | ||
/+\ / \
(5V ) ( M )
\-/ \_/
| |
=== ===
GND GND
Die Permanentmagnete im Außenläufer sind ja recht kräftig. Gut möglich, dass deren Streufeld knapp neben dem Rotor noch einwandfrei mit einer Hallsonde gemessen werden kann. Das hängt natürlich vom speziellen Motor ab und man muss ja auch eine solide Befestigungsmöglichkeit für die Hallsonde finden, aber es wäre der Weg, den ich als erstes in Erwägung ziehen würde. Vermutlich kommt in allen Zuständen nur eine Drehrichtung vor, falls die Drehrichtung zusätzlich erfasst werden müßte, braucht man zwei Hallsonden nebeneinander.
Ich habe so etwas ähnliches, Drehzahlerfassung bei einen einfachen
Scheibenwischer Motor, versucht. Der Motor hatte 12 Poole die habe ich
mittels Hallsensor abgefragt. Ergebnis NEGATIV...12 Poole x xyz 1/Min.
waren einfachzu schnell für den verwendeten Hallsensor.
Ein Bs Modellbau Motor dreht "leicht" höher als ein Scheibenwischer
Motor....Da muß etwas sehr schnelleres herhalten als ein Hallsensor.
Gruß Richard
Ich habe so etwas ähnliches, Drehzahlerfassung bei einen einfachen
Scheibenwischer Motor, versucht. Der Motor hatte 12 Poole die habe ich
mittels Hallsensor abgefragt. Ergebnis NEGATIV...12 Poole x xyz 1/Min.
waren einfach zu schnell für den verwendeten Hallsensor.
Scheibenwischermotor als BL-Außenläufer?
Scheibenwischermotoren, die ich kenne sind bürstenkommutierte Innenläufer. Da wird das Feld der Dauermagneten im Ständer nicht rotieren (zumindest nicht auf Bezug zum stillstehenden Gehäuse). Auch das Feld des Ankers rotiert nicht, obwohl der Anker rotiert, das ist ja gerade der Sinn der Kommutierung. Das man da mit der Hallsonde wenig messen kann liegt nicht an deren Geschwindigkeit.
Beim BL ist das anders, dort rotiert sowohl das vom Ständer (elektrisch) erzeugte Feld als auch das vom Läufer mit Permanentmagneten. Indem die Permanentmagneten das stärkere Feld aufbauen, wird man vorwiegend dieses messen (das hängt natürlich auch vom genauen Meßort ab).
Hallo!
Ich habe gerade in meiner oben skizzierter Schaltung einen 12 V BL Motor aus PC Lüfter (Aussenläufer mit 4 Spulen) angeschlossen und auf dem Oszi abwechselnde Nadelimpulse mit Amplitude von 6 V und 10 V gesehen (siehe Code).
Einziger Unterschied zum DC Motor mit Bürsten ist, dass die Amplitude der Impulse unabhängig von mechanischer Belastung des Motors ist. Mein Wissen über BL Motoren ist aber zu gering um das zu interpretieren. Vermutlich sind es 4 Impulse pro Umdrehung.
MfG
U (V)
A
12 _|
|
10 _|
| | | | | |
8 _| | | | | |
| | | | | |
6 _| | | | | |
| | | | | | | | | | | |
4 _| | | | | | | | | | | |
| | | | | | | | | | | |
2 _| | | | | | | | | | | |
| | | | | | | | | | | |
0 _|__|__|__|__|__|__|__|__|__|__|__|_> t
Ich habe so etwas ähnliches, Drehzahlerfassung bei einen einfachen
Scheibenwischer Motor, versucht. Der Motor hatte 12 Poole die habe ich
mittels Hallsensor abgefragt. Ergebnis NEGATIV...12 Poole x xyz 1/Min.
waren einfach zu schnell für den verwendeten Hallsensor.
Scheibenwischermotor als BL-Außenläufer?
Scheibenwischermotoren, die ich kenne sind bürstenkommutierte Innenläufer. Da wird das Feld der Dauermagneten im Ständer nicht rotieren (zumindest nicht auf Bezug zum stillstehenden Gehäuse). Auch das Feld des Ankers rotiert nicht, obwohl der Anker rotiert, das ist ja gerade der Sinn der Kommutierung. Das man da mit der Hallsonde wenig messen kann liegt nicht an deren Geschwindigkeit.
Beim BL ist das anders, dort rotiert sowohl das vom Ständer (elektrisch) erzeugte Feld als auch das vom Läufer mit Permanentmagneten. Indem die Permanentmagneten das stärkere Feld aufbauen, wird man vorwiegend dieses messen (das hängt natürlich auch vom genauen Meßort ab).
Das war ein Hallsensor mit eigenem Magnet und der hat einfach fie
Metall Pakete gemessen. und bei 12 und ca 2500 1/Min. waren das
einfach zu viel Impulse, der Sensor war schlicht zu lagngsam. Die Art
des Motors spielt dabei keine Rolle.
Gruß Richard
Das war ein Hallsensor mit eigenem Magnet und der hat einfach fie
Metall Pakete gemessen. und bei 12 und ca 2500 1/Min. waren das
einfach zu viel Impulse, der Sensor war schlicht zu lagngsam.
Gut, jetzt habe ich verstanden, wie Du es gemacht hast. Kannst Du noch Angaben machen, welchen Sensor Du verwendet hast (möglicherweise Reedkontakt)?
Ich habe gerade einmal den TLE 4935L herausgesucht, das wäre ein möglicher Kandidat, kostet bei Reichelt EUR 0,75 pro Stück. Bei den Anwendungen ist auch explizit die Kommutierung von Brushless Motoren genannt. Das Datenblatt (http://www.datasheetarchive.com/datasheet-pdf/011/DSA00185315.html) gibt (bei einer bestimmten Beschaltung) eine Rise/Fall-time von max. 1 Mikrosec. an (Tabelle auf S. 7 des pdf, letzte Zeile). Bei einem Motor mit 20 Polen wäre dann bei 40 Mikrosekunden pro Umdrehung etwa die äußerste Grenze des Darstellbaren. Das entspräche einer Motordrehzahl von 1,5 Millionen Umdrehungen pro Minute. Daran soll es also nicht scheitern.
kristof81
05.06.2010, 09:25
Also die Hall Lösung funktioniert bei mir einwandfrei. Einfach zwei Hall Sensoren außen befestigt und man bekommt auch noch Drehrichtung mit. Die Positionierung ist unkritisch - es muss ja nicht genau sein, sondern nur kurz hintereinander die Impulse. Ich brauche es für beide Drehrichtungen, da die BL Regler ja oft beim Anlauf den Motor mal kurz in die andre Richtung drehen und diese Fehler summieren sich dann natürlich auf. Geschwindigkeit ist auch kein Problem. Ich habe 2 Hall Sensoren mit 20 us genommen - wie von ranke berechnet reicht das für alle Motoren locker aus.
Danke für die Antworten!
Das war ein Hallsensor mit eigenem Magnet und der hat einfach fie
Metall Pakete gemessen. und bei 12 und ca 2500 1/Min. waren das
einfach zu viel Impulse, der Sensor war schlicht zu lagngsam.
Gut, jetzt habe ich verstanden, wie Du es gemacht hast. Kannst Du noch Angaben machen, welchen Sensor Du verwendet hast (möglicherweise Reedkontakt)?
Sorry das ich so spät antworte, habe 2 Tage lang meine Brille gesuch...
Nein kein Reedkontackt sondern ein Hallsensor mit intregierten Magnet.
der reagiert dann auf Metall z.b. Zähne vom Zahnrad. Ich hatte den von Conrad finde den dort aber nicht mehr. Leider war bei den Sensor bei
ca. 30 kHz Schluss.
Gruß Richard
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.