Kategorien: Elektromotoren und ihre Anwendung, Mikrocontroller-Schaltungen
Anzahl der Ansichten: 24464
Kommentare zum Artikel: 0

Arduino- und Schrittmotor: Grundlagen, Schemata, Anschluss und Steuerung

 

Schrittmotoren werden verwendet, um die Position von etwas zu steuern oder um die Arbeitseinheit mit einer bestimmten Geschwindigkeit und einem bestimmten Winkel zu drehen. Solche Funktionen ermöglichten den Einsatz in der Robotik, in numerisch gesteuerten Maschinen (CNC) und anderen Automatisierungssystemen. In diesem Artikel werden wir eine Reihe von Fragen im Zusammenhang mit dem Aufbau von Schrittmotoren und deren Steuerung mit dem Arduino-Mikrocontroller behandeln.

Arduino und Schrittmotor

Der Schrittmotor unterscheidet sich vom Üblichen

Alle in der Praxis verwendeten Elektromotoren arbeiten aufgrund elektrodynamischer Phänomene und Prozesse, die in den Magnetfeldern von Rotoren und Statoren auftreten. Wie bereits erwähnt, besteht jeder Motor aus mindestens zwei Teilen - mobil (Rotor) und bewegungslos (Stator). Für seine Drehung ist es notwendig, dass sich auch das Magnetfeld dreht. Das Rotorfeld dreht sich nach dem Statorfeld.

Grundsätzlich reichen solche Basisinformationen aus, um das allgemeine Bild des Betriebs von Elektromotoren zu verstehen. Tatsächlich produziert die Industrie jedoch verschiedene Motoroptionendarunter sind:

1. Induktionsmotor mit Käfigläufer oder gewickeltem Rotor.

2. Synchronmotor mit Feldwicklungen oder mit Permanentmagneten.

3. Gleichstrommotor.

4. Universeller Kollektormotor (arbeitet sowohl mit Gleichstrom als auch mit Wechselstrom, da die Rotorwicklungen selbst aufgrund der Konstruktion von Lamellen und Ankern mit den Kontakten der Stromquelle verbunden und von diesen getrennt sind).

5. Bürstenlose Gleichstrommotoren (BLDC).

6. Servos.

7. Schrittmotoren.

Die letzten beiden Arten sind von besonderem Wert, da sie bis zu einem gewissen Grad genau im Raum positioniert werden können. Schauen wir uns das Design des Schrittmotors genauer an.

Schrittmotor

Definition

Ein Schrittmotor wird als bürstenloser Synchronmotor bezeichnet. Am Stator befindet sich eine bestimmte Anzahl von Wicklungen, deren Verbindung bewirkt, dass sich der Rotor abhängig von der Anzahl der Schritte um einen bestimmten Winkel dreht. Mit anderen Worten bewirkt der Strom in der Statorwicklung, dass sich die Welle in einem diskreten Winkel dreht.

Mit einer gleichmäßigen und sequentiellen Änderung der Polarität der Spannung über den Wicklungen und dem Schalten der unter Spannung stehenden Wicklungen dreht sich der Schrittmotor ähnlich wie bei einem herkömmlichen Elektromotor, obwohl tatsächlich einfach eine regelmäßige Drehung unter einem festen Winkel stattfindet.

Schrittmotorvorrichtung

Der Schrittmotor wird manchmal als Motor bezeichnet. mit einer endlichen Anzahl von Rotorpositionen. Es klingt nicht sehr klar, lassen Sie es uns herausfinden. Stellen Sie sich einen herkömmlichen Motor vor - die Position seines Rotors ist in keiner Weise festgelegt, dh er dreht sich einfach, während die Stromversorgung angeschlossen ist, und wenn er sich abschaltet, stoppt er je nach Trägheit nach einiger Zeit. Die Positionen des Rotors können beliebig viele sein, sie können sich jedoch um die kleinsten Bruchteile eines Grades unterscheiden.

Bei einem Schrittmotor bewirkt das Verbinden einer Wicklung oder mehrerer Wicklungen eine "Magnetisierung" des Rotors in Bezug auf diese Wicklungen. Äußerlich sieht es genauso aus, als würde man die Welle in einem bestimmten Winkel (Steigung) drehen. Da die Anzahl der Schritte eines der wichtigen Merkmale dieser Art von elektrischem Antrieb ist, entspricht die Anzahl der Rotorpositionen der Anzahl der Schritte. Für Anfänger ist es schwierig zu verstehen, wie dies sein kann und wie es sich in diesem Fall dreht. Tatsächlich ist alles recht einfach. Wir werden dies in den folgenden Abbildungen und Beschreibungen zeigen.

Arduino und Schrittmotor

Bau

Erregerwicklungen sind am Stator des Elektromotors befestigt. Sein Rotor besteht aus weichmagnetischen oder hartmagnetischen Materialien. Das Material des Rotors hängt vom Drehmoment und der Befestigung der Welle mit stromlosen Wicklungen ab. Diese Parameter können kritisch sein.

Schrittmotorwicklungen

Daher werden magnetisch feste Rotoren (sie sind auch mit Permanentmagneten) und magnetisch weiche (reaktive) Rotoren unterschieden, zusätzlich gibt es Hybridrotoren.

Der Hybridrotor ist gezähnt, die Anzahl der Zähne entspricht der Anzahl der Schritte. Die Zähne befinden sich entlang der Rotorachse. Darüber hinaus ist ein solcher Rotor in zwei Teile unterteilt. Zwischen ihnen ist ein Permanentmagnet installiert, sodass jede der Hälften des Rotors ein Magnetpol ist. Es sollte auch gesagt werden, dass die Hälfte des Rotors um die Hälfte der Teilung der Zähne relativ zueinander gedreht ist.

Motorrotor

Wie bereits erwähnt, ist ein solcher Motor synchron, und der Vorgang seiner Drehung besteht darin, ein Drehfeld des Rotors zu erzeugen, das der Magnetrotor sucht, und dies wird durch Umschalten der Wicklungen durch die Steuerung der Reihe nach realisiert.

Arten von Schrittmotoren für die Auslegung von Wicklungen werden gemäß dem Anschlussschema der Wicklungen in drei Hauptgruppen unterteilt:

1. Bipolar.

2. Unipolar.

3. Mit vier Wicklungen.

Arten von Schrittmotoren

Die meisten bipolaren Elektromotoren haben 4 Kontakte - dies sind Schlussfolgerungen aus zwei Wicklungen. Im Motor sind sie im Großen und Ganzen nicht miteinander verbunden. Das Hauptproblem besteht darin, dass das Umschalten der Leistungspolarität sichergestellt werden muss, was bedeutet, dass der Treiber und der Steuerungsprozess selbst komplizierter werden.

Unipolar ähneln der Verbindung der Wicklungen nach dem Muster des Sterns. Mit anderen Worten, Sie haben 5 Schlussfolgerungen - 4 davon sind die Enden der Wicklungen und 1 ist der Verbindungspunkt aller Wicklungen.

Um einen solchen Motor zu steuern, müssen Sie nur abwechselnd jedes Ende der Wicklung mit Strom versorgen (oder einige davon, abhängig vom ausgewählten Rotationsmodus). Auf diese Weise wird jedes Mal die Hälfte der Wicklung mit Strom versorgt. Es kann im bipolaren Modus arbeiten, wenn Sie die gesamte Wicklung vollständig unter Umgehung des Abgriffs von seiner Mitte aus versorgen.

Motoren mit 4 Wicklungen haben den Vorteil, dass Sie die Wicklungen auf jede für Sie bequeme Weise anschließen und sowohl einen bipolaren als auch einen unipolaren Motor erhalten können.



Steuermodi

Es gibt 4 Hauptsteuermodi für Schrittmotoren:

1. Wellensteuerung.

2. Voller Schritt.

3. Halbschritt.

4. Mikroschritt


Volnov Die Steuerung wird als Steuerung einer Wicklung bezeichnet. Das heißt, Gleichzeitig fließt Strom durch eine der Wicklungen, daher zwei charakteristische Merkmale - geringer Stromverbrauch (das ist gut) und geringes Drehmoment (das ist schlecht).

In diesem Fall macht dieser Motor 4 Schritte in einer Umdrehung. Echte Motoren machen Dutzende von Schritten in einer Umdrehung. Dies wird durch eine große Anzahl von Magnetpolwechseln erreicht.

Wellensteuerung

Vollständige Schrittverwaltung wird am häufigsten verwendet. Hier wird die Spannung nicht einer Wicklung, sondern zwei gleichzeitig zugeführt. Wenn die Wicklungen parallel geschaltet sind, verdoppelt sich der Strom, und wenn sie in Reihe geschaltet sind, verdoppelt sich die Versorgungsspannung. Einerseits verbraucht der Motor bei dieser Regelungsmethode im Gegensatz zur vorherigen mehr Energie, andererseits 100% Drehmoment.

Vollständige Schrittverwaltung

Halbschrittkontrolle Es ist insofern interessant, als es möglich wird, die Motorwelle genauer zu positionieren, da zu ganzen Schritten Hälften hinzugefügt werden. Dies wird erreicht, indem die beiden vorherigen Betriebsarten kombiniert werden und die Wicklungen abwechselnd und dann paarweise und dann einzeln eingeschaltet werden.

Es ist zu berücksichtigen, dass das Moment auf der Welle zwischen 50 und 100% schwimmt, je nachdem, ob 1 oder 2 zwei Wicklungen im Moment beteiligt sind.

Noch genauer ist Mikroschritt. Es ähnelt dem vorherigen, unterscheidet sich jedoch darin, dass die Leistung der Wicklungen nicht in vollem Umfang zugeführt wird, sondern sich allmählich ändert. Somit ändert sich der Aufprallgrad auf den Rotor jeder der Wicklungen und der Drehwinkel der Welle in Zwischenschritten ändert sich gleichmäßig.

Wo man einen Schrittmotor bekommt

Wo man einen Schrittmotor bekommt

Sie werden immer Zeit haben, einen Schrittmotor zu kaufen, aber echte Funkamateure, selbstgemachte Leute und Elektronikingenieure sind dafür bekannt, dass sie aus Müll etwas Nützliches machen können. Sicherlich haben Sie mindestens einen Schrittmotor in Ihrem Haus. Lassen Sie uns herausfinden, wo Sie suchen müssen, um einen solchen Motor zu finden.

1. Der Drucker.Schrittmotoren können auf der Drehung der Papiereinzugswelle stehen (es kann aber auch einen Gleichstrommotor mit einem Wegsensor geben).

2. Scanner und MFPs. Scanner installieren häufig einen Schrittmotor und ein mechanisches Teil, entlang dessen der Schlitten führt. Diese Teile können auch bei der Entwicklung einer selbstgebauten CNC-Maschine nützlich sein.

3. CD- und DVD-Laufwerke. Sie können auch Stangen und Schraubenwellen für hausgemachte Produkte und verschiedene CNCs darin erhalten.

Schraubenwelle

4. Diskettenlaufwerke. Die Disketten haben auch Schrittmotoren, insbesondere Diskettendateien im 5,25-Zoll-Format.

Diskettenlaufwerk

Schrittmotortreiber

Verwenden Sie zur Steuerung der Schrittmotoren spezielle Treiber-Mikroschaltungen. Meist ist dies eine H-Brücke von Transistoren. Dank dieser Einbeziehung ist es möglich, die Spannung der gewünschten Polarität an der Wicklung einzuschalten. Diese Chips eignen sich auch zur Steuerung von Gleichstrommotoren mit Unterstützung für die Änderung der Drehrichtung.

Grundsätzlich können sehr kleine Motoren direkt gestartet werden von den Stiften des Mikrocontrollers, aber normalerweise geben sie bis zu 20-40 mA ab, was in den meisten Fällen nicht ausreicht. Daher hier einige Beispiele für Treiber für Schrittmotoren:


1. Boards basierend auf L293D. Es gibt viele von ihnen, eine davon wird unter der inländischen Marke Amperka unter dem Namen Troyka Stepper verkauft. Ein Beispiel für die Verwendung in einem realen Projekt ist im folgenden Video dargestellt. Der Vorteil dieser speziellen Karte besteht darin, dass sie über Logikchips verfügt, die die Anzahl der zur Steuerung verwendeten Pins reduzieren können.

Der Chip selbst arbeitet unter einer Spannung von 4,5 bis 36 V und erzeugt je nach IC-Gehäuse einen Strom von bis zu 600 mA-1A.


2. A4988-basierter Treiber. Es wird mit einer Spannung von bis zu 35 V betrieben, kann einem Strom von bis zu 1 A ohne Kühler und einem Kühler von bis zu 2 A standhalten. Es kann den Motor sowohl in ganzen Schritten als auch in Teilen steuern - von 1/16 Schritt bis 1 Schritt, nur 5 Optionen. Enthält zwei H-Brücken. Mit dem Abstimmwiderstand (siehe rechtes Foto) können Sie den Ausgangsstrom einstellen.

Schrittmotortreiber

Die Schrittweite wird durch die Signale an den Eingängen MS1, MS2, MS3 eingestellt.

Die Schrittweite wird durch die Signale an den Eingängen MS1, MS2, MS3 eingestellt

Hier ist ein Diagramm seiner Verbindung. Jeder Impuls am STEP-Eingang setzt den Motor so, dass er sich um 1 Schritt oder einen Mikroschritt dreht.

Schaltplan

3. Der auf ULN2003 basierende Treiber arbeitet mit 5- und 12-V-Motoren und erzeugt einen Strom von bis zu 500 mA. Auf den meisten Karten befinden sich 4 LEDs, die den Betrieb jedes Kanals anzeigen.

ULN2003-basierter Treiber

Auf der Platine befindet sich auch der Klemmenblock zum Anschließen von Motoren. Viele davon werden übrigens mit diesem Stecker verkauft. Ein Beispiel für einen solchen Motor ist ein 5V-Modell - 28BYJ-48.

Modell - 28BYJ-48

Und dies sind nicht alle Treiberoptionen für Schrittmotoren, es gibt sogar noch mehr davon.


Verbindung zum Arduino-Treiber und Schrittmotor

In den meisten Fällen müssen Sie einen Mikrocontroller verwenden, der mit einem Treiber für einen Schrittmotor gekoppelt ist. Schauen wir uns das Verbindungsdiagramm und die Codebeispiele an. Stellen Sie sich eine Verbindung vor, die auf dem neuesten aufgelisteten Treiber basiert - ULN2003 an das Arduino Board. Und so hat es 4 Eingänge, sie sind als IN1, IN2 usw. signiert. Sie müssen an die digitalen Pins der Arduino-Platine angeschlossen werden, und ein Motor sollte an den Treiber angeschlossen werden, wie in der folgenden Abbildung gezeigt.

Verbindung zum Arduino-Treiber und Schrittmotor

Abhängig von der Steuermethode müssen Sie außerdem die Eingänge 1 oder 0 von diesen Pins einschließlich 1 oder 2 Wicklungen in der erforderlichen Reihenfolge anlegen. Der Code für das Vollschritt-Steuerprogramm sieht ungefähr so ​​aus:

int in1 = 2;

int in2 = 3;

int in3 = 4;

int in4 = 5;

const int dl = 5;

void setup () {

pinMode (in1, OUTPUT);

pinMode (in2, OUTPUT);

pinMode (in3, OUTPUT);

pinMode (in4, OUTPUT);

}

void loop () {

digitalWrite (in1, HIGH);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

Verzögerung (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, HIGH);

digitalWrite (in4, LOW);

Verzögerung (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HIGH);

digitalWrite (in4, HIGH);

Verzögerung (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

Verzögerung (dl);

}

 

Es enthält Wicklungen in der folgenden Reihenfolge:

Wicklungssequenz

Hier ist der Code für den Halbschrittmodus, wie Sie sehen können, er ist viel voluminöser, da er eine größere Anzahl von Schaltwicklungen umfasst.

int in1 = 2;

int in2 = 3;

int in3 = 4;

int in4 = 5;

const int dl = 5;

void setup () {

pinMode (in1, OUTPUT);

pinMode (in2, OUTPUT);

pinMode (in3, OUTPUT);

pinMode (in4, OUTPUT);

}

void loop () {

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

Verzögerung (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

Verzögerung (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, LOW);

digitalWrite (in4, LOW);

Verzögerung (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, HIGH);

digitalWrite (in3, HIGH);

digitalWrite (in4, LOW);

Verzögerung (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HIGH);

digitalWrite (in4, LOW);

Verzögerung (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, HIGH);

digitalWrite (in4, HIGH);

Verzögerung (dl);

digitalWrite (in1, LOW);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

Verzögerung (dl);

digitalWrite (in1, HIGH);

digitalWrite (in2, LOW);

digitalWrite (in3, LOW);

digitalWrite (in4, HIGH);

Verzögerung (dl);

}

 

Dieses Programm enthält Wicklungen wie folgt:

Wicklungssequenz

Sehen Sie sich das nützliche Video an, um die erhaltenen Informationen zu konsolidieren:


Fazit

Schrittmotoren sind bei Arduinen beliebt zusammen mit Servos, weil Sie damit Roboter und CNC-Maschinen erstellen können. Letzteres wird durch die Fülle an supergünstigen gebrauchten optischen Laufwerken auf dem Sekundärmarkt unterstützt.

Siehe auch auf i.electricianexp.com:

  • Unterscheiden eines Induktionsmotors von einem Gleichstrommotor
  • Schrittmotoren
  • Arten von Elektromotoren und die Prinzipien ihrer Arbeit
  • Methoden zum Lesen und Verwalten von Arduino-E / A-Ports
  • Anschließen und Programmieren von Arduino für Anfänger

  •