Forum: Mikrocontroller und Digitale Elektronik Schrittmotor - Stromregelung, Stepping, Treiber


von André W. (sefiroth)


Lesenswert?

Hallo zusammen!

Ich habe hier einen kleinen 5V/30mA Schrittmotor, mit dem ich einen 
kleinen Zeiger möglichst gleichmäßig verafhren möchte. Hab den 
Schrittmotor von der Platine eines Kfz-Tachos runtergelötet, also sollte 
der für Zeigerdarstellungen ja schon geeignet sein ;-)

Nun stehe ich aber vor vielen unbekannten bei der 
Schrittmotoransteuerung, da es viele Empfehlungen gibt und ich es recht 
schwierig zu filtern finde, was davon für welche Fälle anzuwenden ist.

Ich hoffe das die Beantwortung meiner Fragen auch vielen weiteren hilft, 
die vor ähnlichen Problemen stehen ;-)

1) Stromregelung
Überall wird für eine gleichmäßige Verfahrweise die Stromreglung 
empfohlen, allerdings gab es auch schon vereinzelte Fälle wo es hieß, 
dass bei zu kleinen Schrittmotoren die Stromregelung nichts bringt oder 
gar nicht funktioniert. Ich habe vor einiger Zeit versucht einen ähnlich 
kleinen Schrittmotor mit einem TMC222 Schrittmotortreiber anzusteuern 
(kann bis zu 800mA Spulenstrom liefern). Das hat aber nicht funktionert. 
Im Hrsteller-Forum habe ich dann erfahren, dass der Chopperbetrieb des 
Treibers (was die Stromregelung ist, oder?) nur bei gewissen 
Mindestströmen funktioniert. Das Detail hatte man im Datenblatt 
vergessen anzugeben... Also nicht 0 bis 800mA, sondern ca. 100 bis 800mA 
Spulenstrom.
-> Daher die Frage: Ab welchen Spulenströmen (bzw. anderen Kennwerten) 
ist eine Stromregelung möglich und sinnvoll?

2) Full-Step/Half-Step vs Microstepping
Auch hier habe ich viel widersprüchliches gelesen. Einige behaupten, 
dass man für eine Zeigerpositionierung Microstepping benötigt, andere 
dass Half-Step völlig ausreicht. Da mir die Erfahrung fehlt muss ich 
mich zunächst auf die Empfehlungen anderer verlassen... Hängen die 
Stepping-Variante und die Gleichmäßigkeit der Bewegung stark voneinander 
ab? Oder geht es dabei nur um die Auflösung der erreichbaren Positionen?

3) Treiberdimensionierung
Oft wird ja die Kombination aus L298 und L297 empfohlen. Allerdings 
nehmen die beiden ziemlich viel Platz auf der Platine ein und sind ja 
auch für wesentlich höhere Ströme ausgelegt, als meine 60mA in Summe. 
Ist das dann nicht ziemlich überdimensioniert? Seit der Geschichte mit 
dem TMC222 bin ich da auch etwas verunsichert bei den 
Schrittmotortreiber-ICs. Ich habe mich ein bisschen umgesehen, aber die 
meisten Treiber scheinen so auf 1 bis 2A ausgelegt zu sein. Kennt 
vielleicht jemand zufällig einen kleiner ausgelegten Treiber? Für meinen 
Schrittmotor müsste doch ein schmales SOIC-Package ausreichen ;-)

Ich danke Euch schonmal für die Hilfe!

Gruß,
Sefi

PS: Happy Halloween ^_^

von Michael (Gast)


Lesenswert?

Ohne Teilschritte werden die Schritte des Motors zu grob sein. Der 
Zeiger wird nicht ganz Rund laufen. Vieleicht brauchst du aber keine 
Stromregelung sondern nur eine Stromsteuerung. D.h. die PWM aus dem 
Controller direkt auf den Motor. Eventuell kleiner Treiber 74HCxxx. 
Freilaufdiode nicht vergessen. Eine andere möglichkeit ist es den Motor 
über eine Linearendstufe zu versorgen. D.h. PWM -> Glättung durch RC 
oder Aktivfilter -> OP als Spannungs Stromwander. Bei so kleinen Strömen 
hält sich die Verlustleisung noch in Grenzen.

Mfg Michael

von Olaf (Gast)


Lesenswert?

> Ab welchen Spulenströmen (bzw. anderen Kennwerten)
> ist eine Stromregelung möglich und sinnvoll?

Falsche Frage. Das Problem einer Spule ist das sie schnellen
Aenderungen der Spannung nur unwillig folgt. Wenn du deinen Motor sehr 
schnell drehen lassen willst dann bist du gezwungen die Spannung von 5V 
auf 12V oder gar noch mehr zu erhoehen weil der Motor sonst nicht mehr 
genug Kraft hat.
Das fuehrt aber dann aber zu einer Ueberhitzung der Wicklung im 
Stillstand.

Ob du also soetwas brauchst haengt von deiner Zeigergeschwindigkeit hab. 
Ich wuerde aus dem Bauch raus erstmal auf soetwas verzichten.

> Stepping-Variante und die Gleichmäßigkeit der Bewegung stark voneinander
> ab? Oder geht es dabei nur um die Auflösung der erreichbaren Positionen?

Beides haengt voneinander ab. Du solltest erstmal herausfinden wieviel 
Schritte dein Motor hat und dann entscheiden wieviel du brauchst.

> Oft wird ja die Kombination aus L298 und L297 empfohlen.

Aber ganz gewiss nicht fuer deinen Spielzeugmotor. Es gibt auch kleinere 
Schrittmotortreiber deren Name mir gerade nicht einfallen will.
Eventuell kannst du bei deinem Spielzeug aber einfach nur ein TreiberIC 
ULNxxxx verwenden, oder einfach nur ein paar BC547.

Olaf

von Gast (Gast)


Lesenswert?

Bei 5V/30mA würde ich den Motor mit Sinusspannungen ansteuern 
(Operationsverstärker als Treiber). Der effektive Strom ergibt sich dann 
durch den Innenwiderstand des Motors.

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
Noch kein Account? Hier anmelden.