Also: Eine Treiberschaltung habe ich - ich nehme einfach mal eine "alte" Platine mit L293E und einem ATmega16. Die ist zwar nicht für SM ausgelegt worden (war für DC-Motoren), aber die tut es schon mal. Der ATmega16 ist immerhin im Design umzuprogrammieren. Später werde ich dann eine maßgeschneiderte MOSFET-Brücke verwenden um auch noch die Verlustleistung und den Spannungsverlust der L293 einzusparen. Da sehe ich kein Problem. Aber dafür ist halt erst mal die "Grundlagenforschung" nötig.
Verwendet werden 2-Phasen-bipolar-SM, ca. 3ms/Step, 31Ohm, 18mH.
2 bestromte Phasen (auch als FullStep FullDrive bezeichnet) kann ich nicht nehmen. Da ist die Spannungsmessung nicht machbar, da dann beide Phasen niederohmig bestromt sind. Einen Konstantstromtreiber (= hoher Innenwiderstand) verwende ich auch nicht -> Verlustleistung.
Damit ist für erste Tests die Betriebsart FullStep WaveDrive (eine Phase unter Strom die andere hochohmig) am naheliegensten. Immer nur eine Phase bestromt, die andere liefert dann die Gegen-EMK. Das liefert immerhin mindestens 70% des Drehmomentes mit 2 bestromten Phasen. Gestern abend habe ich schon mal einen Versuchsaufbau zusammengestellt und erste Tests gemacht, ob der Motor dreht und ich am Scope was sinnvolles sehe. Jetzt muß ich die genaueren Testbedingungen ausarbeiten, Scopefotos machen und auswerten. Bei HalfStep ist in jedem zweiten (Halb-)Schritt auch eine Phase stromlos und damit die Gegen-EMK meßbar. Das ist aber noch Zukunftsmusik. Könnte aber gehen und wegen der HalfStep-Steuerung läuft der SM dann auch noch leiser.
Drehzahl mit Stromaufnahme könnte klappen, aber dafür müßte der Motor auf einem Prüfstand eingemessen werden um die Zusammenhänge Drehzahl-Laststrom zu bekommen. Dabei kenne ich aber immer noch nicht den Lastwinkel des Rotors. Der dürfte das verlässlichste Maß für die Last (und den drohenden Synchronitätsverlust) darstellen. Natürlich hängt die Stromaufnahme des SM bei KONSTANTER Drehzahl nur vom Lastwinkel und damit vom Drehmoment ab. Das ist das gleiche wie bei Drehstrommaschinen in der Industrie. Aber wie kann ich drohende Überlast rechtzeitig vor dem Verlust der Synchronität erkennen? Oder noch eine Stufe weitergedacht: Wie kann ich die Hochlauframpen (evtl. auch die Bremsrampen) vom nötigen Lastmoment abhängig machen? Selbst die Synchronmaschinen in industriellem Einsatz laufen ASYNCHRON hoch und rasten dann erst synchron ins drehende Magnetfeld ein. Um die SM voll synchron anzufahren brauche ich zwingend die Info wie weit sich der Rotor TATSÄCHLICH gedreht hat, bevor ich den nächsten Schritt korrekt kommutieren kann. Der Phasenstrom ist dabei nicht brauchbar, da ich die tatsächlich erreichte Rotor-Drehzahl bzw. -position (relativ) nicht kenne; ohne Auswertung der Gegen-EMK kann ich die Rotor-Position nur raten.
(Vielleicht?) noch ein Argument gegen die Variante mit der Stromaufnahme: Die Zeitkonstante der Wicklungsinduktivität mit dem Wicklungs- und Treiberinnenwiderstand verbietet sofortige Stromänderungen. Der Phasenstrom ist phasenverschoben zur Erregerspannung. Die Gegen-EMK dagegen ist nicht phasenverschoben und hat keine Zeitkonstante.
Was passiert wenn ich den Motor mit hoher Schrittrate ansteuere, der Rotor aber steht? Der induktive Blindwiderstand ist recht hoch und der Phasenstrom erreicht vielleicht nicht mal die Werte, die ein synchronlaufender Rotor unter Last erreicht. Also eine Überschneidung der Bereiche und damit kein Kriterium für eine Lasterkennung. Aus der Schrittrate kenne ich ja nur das Drehzahl-Soll. Das Drehzahl-Ist kann ich immer nur raten. Daher die Idee die Gegen-EMK in der unbestromten Wicklung zu messen.
Bei niedrigen Schrittraten ist vielleicht die Gegen-EMK nicht hoch genug um die Phasenlage sauber zu detektieren. Das hängt ja auch vom Quantisierungsrauschen des ADC und anderen Störungen ab. Zumindest kann ich einen konstanten Zusammenhang zwischen Motor(soll)drehzahl und erwarteter Gegen-EMK aufstellen. Außerdem erwarte ich in jedem Fall, daß eine bestimmte Mindestdrehzahl der Maschine nicht unterschritten wird. Damit gibt es immerhin eine Untergrenze für die Gegen-EMK.
Der Einsatz des SM ist im Fahrantrieb des Roboters. Dadurch habe ich kein konstantes Lastmoment und kann es auch nicht voraussetzen. Die Vorteile des SM zum Positionieren ohne zusätzliche Sensoren will ich aber trotzdem nutzen. Natürlich könnte ich den SM so ansteuern, daß er unter den schlechtestmöglich erwarteten Bedingungen sicher arbeitet, aber dann verliere ich drastisch an Geschwindigkeit. Und ab und zu vielleicht doch die exakte Position.
So viele Gedanken und irgendwie noch keinen rechten Plan.
@Manf: Was hast Du denn für einen Einsatz im Auge?
Lesezeichen