Hallo liebe Forengemeinde, ich bin Hobbybastler mit Vorkenntnissen zum Thema AVR und STM32 Programmierung, sowie ein wenig Elektronik. Bei dem folgenden Artikel https://www.mikrocontroller.net/articles/Brushless-Controller_f%C3%BCr_Modellbaumotoren hat mich die Lust zum Basteln mal wieder gepackt. Nachdem ich viel über das Thema gelesen habe, habe ich mir eine Versuchsplatine, auf Basis des oben genannten Artikels, gemacht und diese nun in Betrieb genommen. Ziel ist es einen Regler für einen Fahrrad-/Felgenmotor ohne Hall Sensoren für eine Spannung von 26 Volt mit 10 - 15 Ampere zu realisieren. Der Motor muss nicht von Stand an los laufen können. Mir reicht der Betrieb wenn dieser bereits in Bewegung ist. Jedoch bin ich mittlerweile an einem Punkt angekommen, an dem ich nicht weiter komme und auf eure Hilfe hoffe. Zum Testen habe ich mir einen kleinen Modellbaumotor bei ebay gekauft und betreibe diesen aktuell bei 10 Volt. Das ganze wird über ein regelbares Netzteil mit max 5 Ampere versorgt. Der Regelbetrieb des Motors funktioniert, lasst es mich mal vorsichtig sagen, sehr bescheiden. Mit der Hand gebe ich dem Motor einen kleinen Stups, dann dreht sich dieser. Jedoch hört man deutlich, dass Fehlkommutierungen dabei sind und dies funktioniert auch nur bei kleinen Gasstellungen bis ca. 25 % Duty Cycle der PWM. Darüber blockiert er komplett und die Strombegrenzung des Netzteils kommt. Am Oszi ist klar erkennbar, dass die Interrupts zur Detektierung der Kommutierungsänderung wild durcheinander kommen. Ein Wunder, dass er überhaupt dreht. Leider kann ich es momentan nicht eingrenzen, ob es hardware- oder softwarebedingt ist. Wenn ich jedoch das Feld für den Motor mit 3 ms zwangskommutiere, sowie mit einem Duty Cycle von 5 % betreibe, läuft der Motor sauber und auch die Interrupts für die Kommutierungszeitpunkte sehen am Oszi gut aus. Meine Vermutung ist, dass die Signale vom BEMF nicht gut oder falsch sind bzw. noch irgendwo ein Softwarefehler hängt. Anbei habe ich einen Auszug von meinem Code, Oszibilder und Schaltplan gehängt. Vielen Dank für eure Hilfe.
Moin, Deine PWM hat 15kHz, der Filter für die BEMF mit 1k und 100nF hat welche Zeitkonstante? Da würde ich mal dran drehen, das ist viel zu niederohmig. Gruß, Norbert
Als Lektüre empfehle ich Application Note AVR444 von Microchip/Atmel, dazu evtl. die Schaltpläne des alten Motor Kits MC100.
:
Bearbeitet durch User
Ingo Less schrieb: > Deine (Feld-)Drehrichtung stimmt nicht... Ist doch latte, dreht der Motor eben falsch rum oder man tauscht zwei Phasen. Daß die Reihenfolge passt (High-Low-Folge) sieht man ja daran, daß der Schrittmotorbetrieb funktioniert. 1k und 100nF filtert einfach nicht. Gruß, Norbert
Norbert S. schrieb: > Moin, > > Deine PWM hat 15kHz, der Filter für die BEMF mit 1k und 100nF hat welche > Zeitkonstante? > Da würde ich mal dran drehen, das ist viel zu niederohmig. > > Gruß, > Norbert Mh, ich verstehe, dass 100µs etwas kurz ist. Hier hatte ich auch schon andere Werte probiert. Habe mal alle Widerstände des BEMF durch 4,7k Ohm ersetzt. Leider läuft der Motor dadurch wesentlich schlechter. Anbei auch die Bilder von der Messung mit 4,7k Ohm. Oder sollte man hier noch höher gehen?! Matthias S. schrieb: > Als Lektüre empfehle ich Application Note AVR444 von Microchip/Atmel, > dazu evtl. die Schaltpläne des alten Motor Kits MC100. Werde mir diese heute Abend mal durchlesen. Habe auch gesehen, dass dort der komplette C-Code dabei ist. Vielleicht finde ich ja dort noch etwas. Ingo Less schrieb: > Deine (Feld-)Drehrichtung stimmt nicht... Diese Information, kann ich gerade nicht deuten. Die Drehrichtung des Motors, ist mir momentan egal, solange er sich dreht ... Kannst du es genauer erklären, was du damit meinst?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.