|
|
Schrittmotor-Ansteuerung |
|
|
Autor/Einsender: Datum: |
|
Andreas Gölzer 07/2001 |
|
|
|
Schrittmotoren sind relativ praktisch und bei den Conrad Electronic
- Restposten gelegentlich billig zu bekommen. Durch ihre Genauigkeit eignen sie sich sehr gut, um langsame, aber präzise Bewegungen durchzuführen
|
|
|
Bei Fragen zu diesem Tutorial nutzen Sie bitte unser VB-/VBA-Forum. |
|
|
Es gibt zwei Typen von Schrittmotoren, bipolare und unipolare. Die bipolaren sind etwas häufiger, benötigen jedoch eine teurere Ansteuerung (8 Transistoren pro Motor oder ein nicht gerade billiger Motorsteuerungs-IC wie z.B. der L293D). Ich habe unipolare Typen verwendet.
|
|
|
Man kann die Motoren einfach unterscheiden: Bipolare Motoren habe 4 Anschlusskabel, Unipolare deren sechs (vielleicht gibt es auch Typen mit nur fünf, dazu weiter unten mehr).
|
|
|
Identifizierung der Anschlüsse
|
[ Top ]
|
|
Ein unipolarer Schrittmotor ist aus zwei Spulen aufgebaut:
|
|
|
Mit einem Ohmmeter kann man die Anschlüsse einfach identifizieren: Von
Spule 1 - a nach Spule 1 - Common ist der Widerstand halb so groß wie der Widerstand von
Spule 1 - a nach Spule 1 - b.
|
Der Widerstand nach den Anschlüssen von Spule b sollte unendlich sein.
|
Beim Bau von Verlängerungskabeln können Sie die beiden Common - Anschlüsse miteinander verbinden, dann benötigen Sie nur noch ein fünfadriges Kabel.
|
Dass die Anschlüsse a und b voneinander nicht zu unterscheiden sind, ist unwichtig. Falls Sie sie vertauschen, dreht sich der Motor andersherum. Wichtig ist allenfalls, dass sie bei mehreren Motoren gleichen Typs die Anschlüsse gleich legen, um voraussagen zu können, in welche Richtung der Motor sich drehen wird.
|
|
|
Den Common-Anschluss kann man beliebig verbinden, die Anschlüsse
a und b sollen zeitweise ein anderes Potential erhalten.
|
Es bietet sich, sofern man den ULN2803 verwendet an, die Common - Anschlüsse auf V+ zu legen und a und b mit den Kollektor Ausgängen des ICs zu verbinden.
|
An beiden Spulen soll jeweils nur einmal ein Spannungsunterschied
vorliegen, das invertierte Signal von b liegt a
an
|
|
|
Man sieht auf dem Diagramm, dass man die Motoren theoretisch durch zwei gegeneinander phasenverschobene Rechteckspannungen ansteuern könnte. Dies wäre jedoch nicht im Sinne des Erfinders, schließlich wäre es Verschwendung, die Schrittmotoren nicht schrittgenau anzusteuern.
|
Daher erscheint eine digitale 2bit Ansteuerung sinnvoll. |
0 1 1 0 0 1 1 0 (Bit 1)
0 0 1 1 0 0 1 1 (Bit 2)
|
Eine Möglichkeit, zwei unipolare Schrittmotoren anzusteuern, wäre als
folgende: |
|
|
|
Im wesentlichen besteht die Software aus der Visual-Basic-Klasse "stepper". Das Projekt ist wenig mehr als ein Beispiel, diese Klasse einzusetzen.
|
|
|
Das Projekt verwendet die InpOut32.dll von Lakeview Research. Durch eine kleine Veränderung des Quellcodes kann es jedoch derart modifiziert werden, dass es die port.dll (Dem Buch "PC-Schnittstellen unter Windows" beigelegt) verwendet. Die
DLL ist in der Zip-Datei samt der offiziellen Anleitung enthalten.
|
Das Programm verwendet Für den ersten Schrittmotor die Datenbits 0 und 1 und für den zweiten die Bits 2 und 3 auf der parallelen Schnittstelle. Diese Ausgänge müssen an die Schaltung oben angeschlossen werden, und es sollte funktionieren.
|
Das Programm ist bei weitem nicht perfekt, ich stelle es trotzdem zum Download zur Verfügung. Es wurde getestet unter Windows 98.
|
Mit Schrittmotoren kann man eine Menge anstellen. Ich habe mir auf einfachste Weise eine bewegliche Kamera gebaut.
|
|
|
Download (29
kB)
|
Downloads bisher: [ 2972
]
|
|
|