Es gibt im Internet und auch hier im Forum viele Beiträge über Brushless Regler und wie man sie selbst programmiert. Aber es gibt kein Regler, der ein Brushlessmotor wie ein Servomotor ansteuert, also eine genaue Positionierung vorwärts und rückwärts mit einem externen Feedback. Habe mir also selber Gedanken gemacht wie ich das in Assembler lösen könnte. Das Problem ist aber, das die Berechnungen zur Positionierung viel zeit in Anspruch nehmen und länger dauern als die Phasenweiterschaltung bei hohen Drehzahlen. Deshalb berechne ich im Hauptprogramm immer wieder neu alle Werte und in Timerinterrupts werden diese Werte benutzt, um den Motor zu bewegen. Aber irgendwie befinde ich mich da in einer Sackgasse und wollte fragen, ob jemnad dazu irgendwelche Infos hat über ein ähnliches Projekt oder so?
Die Positionsbestimmung machen ich mit einem Sinus-Cosinus Magnetgeber, welcher mir eine 12-Bit Winkelposition gibt. Allerdings ist dieser erst hinter dem Getriebe. Ich dachte mir, das ich über diesen Geber die Drehzahl des Motors berechne (Drehzahl Geber * Übersetzung) und dann den Motor entsprechend beschleunige oder bremse, je nachdem wie die berechneten Sollwerte sind. Eine Phasenweiterschaltung muß ich aber ohne direktes Feedback machen, da ich keine Hallsensoren oder ähnliches am Motor habe. Mit der EMK ginge es zwar, aber nicht bei niedrigen Drehzahlen. Die aber brauche ich für die genaue Positionierung.
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.