- Schrittmotor:
- ULN2003 Schrittmotortreiber:
- Erforderliche Materialien:
- Schaltplan:
- Code und Arbeitserklärung:
In diesem Tutorial werden wir den Schrittmotor mit MSP430 verbinden. Der MSP-EXP430G2 ist ein Entwicklungstool, auch bekannt als LaunchPad, das von Texas Instruments bereitgestellt wird, um den Umgang mit ihren Mikrocontrollern zu erlernen und zu üben. Diese Karte fällt unter die Kategorie MSP430 Value Line, in der wir alle Mikrocontroller der MSP430-Serie programmieren können. Wenn Sie MSP noch nicht kennen, lesen Sie unser Tutorial Erste Schritte mit MSP430.
Schrittmotor:
Der Schrittmotor ist eine Art bürstenloser Gleichstrommotor, der elektrische Impulse in unterschiedliche mechanische Bewegungen umwandelt. Die Welle eines Schrittmotors dreht sich in diskreten Schritten. Wir können je nach Bedarf präzise Schritte und Geschwindigkeit erzielen.
Wir werden einen bipolaren Schrittmotor 35BYJ46 verwenden, der auf dem Markt billig erhältlich ist. Es hat 6 Drähte, aber es kommt auch mit 5 Drähten. In unserem Schrittmotor befinden sich 2 Spulen. Jeder hat 3 Drähte, die herauskommen. Von 3 Drähten ist 1 zentriert, so dass 2 Drähte direkt mit der Spule verbunden sind. Insgesamt haben wir 4 Signalkabel und 2 zentrierte Abgriffskabel, die mit einer 5-12-V-Stromversorgung verbunden sind.
Wenn insgesamt 5 Drähte aus dem Motor kommen, sind 4 Drähte Signaldrähte und 1 ist zentriert auf beide Spulen abgegriffen. So was.
Um zu überprüfen, welcher Draht zentriert oder welcher Signaldraht ist, müssen Sie den Widerstand der aus dem Motor kommenden Drähte prüfen. Die Drähte, die mit derselben Spule verbunden sind, haben also einen hohen Widerstandswert im Vergleich zum Widerstand des zentrierten Abgriffs.
Wenn wir im obigen Diagramm den Widerstandswert der blauen und gelben Drähte überprüft haben und der Widerstand zwischen ihnen größer ist als der Wert zwischen Gelb und Rot oder Blau und Rot. Rot ist also zentriert.
Wir haben zuvor den Schrittmotor mit anderen Mikrocontrollern verbunden:
- Schrittmotor mit Arduino Uno verbinden
- Schrittmotorsteuerung mit Raspberry Pi
- Schrittmotor-Schnittstelle mit 8051-Mikrocontroller
- Schrittmotor mit PIC-Mikrocontroller verbinden
Der Schrittmotor kann auch ohne Mikrocontroller gesteuert werden, siehe diese Schrittmotortreiberschaltung.
ULN2003 Schrittmotortreiber:
Die meisten Schrittmotoren arbeiten nur mit Hilfe eines Treibermoduls. Dies liegt daran, dass das Controller-Modul (in unserem Fall MSP) nicht genügend Strom von seinen E / A-Pins liefern kann, damit der Motor funktioniert. Wir werden also ein externes Modul wie das ULN2003- Modul als Schrittmotortreiber verwenden. Es gibt viele Arten von Treibermodulen, und die Bewertung eines Moduls ändert sich je nach verwendetem Motortyp. Das Hauptprinzip für alle Treibermodule besteht darin, genügend Strom zu liefern, damit der Motor funktioniert.
In diesem Projekt werden wir den Motortreiber-IC ULN2003 verwenden. Das Pin-Diagramm des IC ist unten angegeben:
Wir werden 4 Eingangs- und 4 Ausgangsanschlüsse verwenden, wenn IC.
Erforderliche Materialien:
- MSP430
- 35BYJ46 oder 28-BYJ48 Schrittmotor
- ULN2003 IC
- Leitungen
- Steckbrett
Schaltplan:
In der obigen Abbildung ist der rote Draht des Steppers nicht mit der PIN5 des IC verbunden. Er muss mit 5 V verbunden werden. Der Farbcode Ihres Schrittmotors kann von den im Schaltplan angegebenen Farben abweichen. Schließen Sie also die Drähte an, nachdem Sie die richtigen Signaldrähte überprüft haben.
Wir werden unseren Code mit Energia IDE schreiben. Es ist dasselbe wie Arduino IDE und einfach zu bedienen. Beispielcode zum Antreiben des Steppers finden Sie auch im Beispielmenü der Arduino IDE.
Code und Arbeitserklärung:
Bevor wir mit dem Programmieren mit unserem MSP430 beginnen, lassen Sie uns verstehen, was im Programm tatsächlich passieren sollte. Wir werden die 4-Schritt-Sequenzmethode verwenden, sodass wir vier Schritte ausführen müssen, um eine vollständige Umdrehung durchzuführen. Betrachten Sie A, B, C und D als vier Spulen.
Schritt |
Pin aktiviert |
Spulen erregt |
Schritt 1 |
6 und 7 |
A und B |
Schritt 2 |
7 und 8 |
B und C. |
Schritt 3 |
8 und 9 |
C und D. |
Schritt 4 |
9 und 6 |
D und A. |
In diesem Tutorial schreiben wir den Schrittmotorcode MSP430. Das vollständige Programm finden Sie am Ende des Tutorials. Einige wichtige Zeilen werden unten erläutert.
Die Anzahl der Schritte pro Umdrehung für unseren Schrittmotor wurde mit 32 berechnet; daher geben wir das wie in der Zeile unten gezeigt ein
const int STEPS = 32;
Als nächstes müssen Sie Instanzen erstellen, in denen wir die Pins angeben, an die wir den Schrittmotor angeschlossen haben.
Stepper myStepper (SCHRITTE , 6, 7, 8, 9);
Da wir die Stepper-Bibliothek verwenden, können wir die Drehzahl des Motors über die folgende Zeile einstellen. Die Drehzahl kann bei 35BYJ46-Schrittmotoren zwischen 0 und 200 liegen.
Mystepper.setSpeed (200);
Um den Motor einen Schritt weiter zu bewegen, können wir die folgende Zeile verwenden.
myStepper.step (SCHRITTE);
Da wir 32 Stufen und 64 als Übersetzungsverhältnis haben, müssen wir 2048 (32 * 64 = 2048) bewegen, um eine vollständige Umdrehung durchzuführen. Laden Sie nun den folgenden Code hoch und ändern Sie die Nr. von Schritten nach Ihrem Bedarf.
Auf diese Weise können Sie den Schrittmotor mit einem PIC-Mikrocontroller verbinden. Jetzt können Sie Ihre eigene Kreativität einsetzen und Anwendungen dafür finden. Es gibt viele Projekte, die einen Schrittmotor verwenden.