Schrittmotoren werden vielseitig
eingesetzt - in der Automatisierungs- und Steuerungstechnik mit
Schwerpunkten in z.B. der industriellen Fertigungstechnik, Robotik,
Modellbau, und manches mehr. Das besondere an diesen Motortyp ist, dass
feste Positionen wiederholt exakt angefahren werden können. Sie
benötigen nur einfache digitale Signale und es sind, im Gegensatz zu
Servomotoren, mehrfache Umläufe möglich. Anwendungsgebiete sind oft
3D-Drucker, Laser-Cutter, CNC-Fräsen, Roboterarme und vieles mehr. In
diesem Projekt wird der preisgünstige kleine Schrittmotor 28BYJ-48 mit
unterschiedlicher Ansteuerung getestet. Dieser Schrittmotor hat
bauseitig eine unipolare Ausführung. Eine ausführliche und sehr zu
empfehlende Erklärung der Funktionsweise bietet die Webseite =>
https://playwithcircuit.com/28byj48-stepper-motor-arduino-tutorial/ .
Zum Testen bietet sich besonders die Programmierumgebung von TLScript
an, wobei Testscripte schnell geladen, modifiziert und ausgeführt
werden können. Hier im Beispiel wird mit Hilfe des Mikrocontrollers
CH32V003 gezeigt, wie die Schrittfolge der Ansteuerung mit den 4
digitalen Pins PC1, PC2, PC3 und PC4 erfolgt. Da nur die digitalen Pins
eingesetzt werden, kann auch jeder andere beliebige Mikrocontroller
verwendet werden. Idealerweise sollte man für die Motorwicklungen
höhere Ströme verwenden als die Ausgänge der Mikrocontroller hergeben.
Daher wird üblicherweise noch eine H-Brücke zwischengeschaltet (hier
ein Adapterboard mit Chip ULN2003AN), die einerseits das Signal
invertiert und andererseits den Strom verstärkt. Dieser kann auch von
einer äußeren stärkeren Quelle stammen. Realisiert wird dies durch eine
Open-Collector Ausführung der H-Brücke. Mit einer Versorgungsspannung
von 5V liefert die H-Brücke 100mA pro Ausgangsleitung.
Rem Full steps light
0x091E Pdir = 0b00011110
0x0802 Pout = 0b00000010
L1:
0x0810 Pout = 0b00010000
0x210B Call L2:
0x0808 Pout = 0b00001000
0x210B Call L2:
0x0804 Pout = 0b00000100
0x210B Call L2:
0x0802 Pout = 0b00000010
0x210B Call L2:
0x2002 Jmp L1:
L2:
0x1902 Delay ms = 2
0x4800 Ret
Weitere Testprogramme:
Schrittmotor_28BYJ-48.zip
Der Schrittmotor 28BYJ-48 kann aber auch im bipolaren Betriebsmodus
eingesetzt werden. Dazu werden lediglich die 4 Pin-Ausgänge jeweils
über z.B. 50 Ohm Widerstände abgesichert an die Motorleitungen
angeschlossen. Die zentrale Konstantstromleitung (rotes Kabel) bleibt
dabei frei. Dies funktioniert sowohl im Halbschrittmodus wie auch im
Vollschrittmodus. Mit einer Versorgungsspannung der Mikrocontroller von
5 V fließen dann allerdings nur 36 mA pro Leitung. Die Kraftwirkung ist
dann geringer. Der Widerstand einer Motorwicklung (zwischen 2
Eingangsleitungen) beträgt 40 Ohm, der Widerstand zwischen einer
Eingangsleitung und dem Zentralleiter entsprechend nur 20 Ohm.
Rechnung: I = 5 V / ( (2*50 + 40 ) Ohm) = 36 mA.