Afug-Info.de - Amateurfunk und mehr...  Afug-Info.de - Elektronik, Amateurfunk und mehr...  Afug-Info.de - Amateurfunk und mehr...
Afug-Info.de   ist
FÃœR ALLE BESUCHER

Ohne  Werbung
Ohne  Cookies
Ohne  Tracking
Ohne  Java
Ohne  Flash
Ohne  Skripte
Ohne  Active-X
Ohne  iFrames
Ohne  Social Plugins


Afug-Info.de bei YouTube


V I D E O - Empfehlung

Afug-Info.de bei YouTube

Afug-Info.de bei YouTube

Afug-Info.de bei YouTube

Afug-Info.de bei YouTube

Afug-Info.de bei YouTube

Afug-Info.de bei YouTube

Afug-Info.de bei YouTube


 Afug-Info.de - Elektronik, Amateurfunk und mehr...

Schrittmotor 28BYJ-48 ansteuern / testen

Für einen unglaublichen Preis von unter 2 Euro bekommt man den Schrittmotor 28BYJ-48 inklusive der ULN2003A-Treiber-Platine aus Fernost. Nachfolgend wird vorgestellt, wie man sie mit einem Microcontroller ansteuern und testen kann. Mit Schrittfolge und bebilderter Anleitung.

Bild: Schrittmotor 28BYJ-48 mit ULN2003-Treiber-Platine
Der Schrittmotor 28BYJ-48 ist als 5V- und 12V-Ausführung erhältlich. Die meist mitgelieferte ULN2003A-Treiber-Platine gibt es ebenfalls in zwei Ausführungen.

Schrittmotor-Ausführungen

Beschaltet und angesteuert werden die 5V und 12V Ausführungen zwar identisch, ihre Leistung ist aber unterschiedlich.

Bei den von Afug-Info.de getesteten Schrittmotoren hat sich die 12V-Variante als deutlich kräftigere Ausführung herausgestellt. Die Achse lässt sich mit der bloßen Hand nicht aufhalten. Die Stromaufnahme beträgt ca. 140mA bei maximaler Drehzahl und ca. 210mA bei minimaler Drehzahl. Bei ca. 120Hz arbeitet der 12V-Motor am effektivsten.

Die 5V-Variante hat im Vergleich nicht nur weniger Kraft, sondern auch die höhere Stromaufnahme von ca. 170 bis 300mA. Bei ca. 70 Hz hat die 5V-Ausführung die meiste Kraft, jedoch auch die höchste Stromaufnahme.

Beide Varianten sind mit einem Getriebe aus Kunststoff-Zahnrädern mit einer Übersetzung von 1:64 ausgestattet.

Bild: Technische Daten Schrittmotor 28BYJ-48

Die Treiber-Platine

Die zugehörigen Treiber-Module gibt es ebenfalls in zwei Ausführungen. Funktion und Ansteuerung sind identisch, jedoch wurde im Test die SMD-Variante wärmer, und hat zudem den Nachteil, dass man den fest verlöteten SMD-Chip ULN2003A bei Defekt nur schlecht tauschen kann, während die zweite, nur unwesentlich größere Ausführung gesockelt ist.

Die Treiber-Platine fungiert eigentlich nur als Verstärker und ist deshalb vonnöten, weil der PIC nur mit maximal 25mA belastet werden kann, der Schrittmotor aber - je nach Ausführung - zwischen ca. 140 und 300mA benötigt. Man könnte das Modul auch durch eine Reihe von Transistoren oder Operationsverstärkern ersetzen. Der Aufwand lohnt sich aber kaum, da die Schrittmotore meist schon zusammen mit dem Treiber-Modul verkauft werden.

Zwischen Microcontroller und Treiber-Platine fließen übrigens im Betrieb lediglich 700µA.

Bitte beachten: Die Treiber-Platine invertiert die Polarität. Wird vom Microcontroller her Plus eingespeist, dann liegt am Ausgang des ULN2003-Moduls Minus an.


Die Schaltung

Mit folgender Schaltung können die Motore angesteuert werden.

Bild: Schaltplan: Ansteuerung des 28BYJ-48 Schrittmotors
Schaltplan zur Ansteuerung des 28BYJ-48 Schrittmotors.

Funktionsweise

Der Schrittmotor dreht sich, wenn die 4 Steuerleitungen entsprechend der Schrittfolge mit Spannung versorgt werden. Der 5. Anschluss des Motors (rotes Kabel) ist eine gemeinsame Dauer-Plus-Leitung.

Bild: Schrittmotor 28BYJ-48
So ist der Schrittmotor aufgebaut.

Um den Motor anzusteuern, müssen also 4 Ausgänge des Microcontrollers die entsprechende Schrittfolge ausgeben - siehe nachfolgende Tabelle. Diese 4 Pins des Microcontrollers werden mit der ULN2003-Treiber-Platine verbunden, an die wiederum der Schrittmotor angeschlossen ist. Zwischen den einzelnen Schritten liegt jeweils eine Pause zwischen 1000 und 4000µS (= 1 bis 4mS), die die Drehgeschwindigkeit/Frequenz festlegt.


Bild: Schrittfolge für Schrittmotor 28BYJ-48
Mit diesen Schrittfolgen kann der 28BYJ-48 angesteuert werden.

Ein Beispiel für ein simples Ablauf-Schema für Vollschritte könnte so aussehen:

PORTB = 12     // oder PortB = %1100 (binär 1100 = dezimal 12)
Pause in µS
PORTB = 6      // oder PortB = %0110 (binär 0110 = dezimal  6)
Pause in µS
PORTB = 3      // oder PortB = %0011 (binär 0011 = dezimal  6)
Pause in µS
PORTB = 9      // oder PortB = %1001 (binär 1001 = dezimal  9)
Pause in µS


Für die entgegengesetzte Richtung wird einfach die umgekehrte Reihenfolge verwendet.

1 Umdrehung besteht aus 2048 Vollschritten oder 4096 Halbschritten.

Für eine Umdrehung muss der obige Code also 512 Mal wiederholt werden. Dies gilt gleichermaßen für Halbschritte (4 x 512 = 2048) und Vollschritte (8 x 512 = 4096).

Das wäre das Grundprinzip zum Ansteuern des 28-BYJ-48-Schrittmotors in der 5V- und 12V-Ausführung.

Zusätzlich wurden in diesem Beispiel noch ein Schalter zum Umschalten der Drehrichtung hinzugefügt.

Die Geschwindigkeit (langsamer, schneller) kann - je nach Position von Schalter S1 - wahlweise über zwei Tasten oder 1 Poti eingestellt werden.

Schalter S1 auf Plus:       Geschwindigkeit wird über das Poti eingestellt
Schalter S1 auf Masse:    Geschwindigkeit wird über die 2 Tasten eingestellt

Es kann auch während des Betriebs umgeschaltet und so zwischen Poti und Tasten gewechselt werden. Beim Wechsel von Poti auf Tasten wird die mit dem Poti eingestellte Geschwindigkeit übernommen.

Werden nur die Tasten verwendet (kein Poti): Pin 4 auf Masse legen.
Wird nur das Poti verwendet (keine Tasten): Pin 4 auf Plus legen.

Wird immer nur eine bestimmte Geschwindigkeitsstufe benötigt, Pin 4 auf Plus legen und das Poti durch einen Fest-Widerstand mit entsprechendem Wert ersetzen.


Test-Funktionen

Grundsätzlich kann man den Microcontroller so programmieren, dass er alle gewünschten Funktionen für Steuerungen umsetzt. Das vorliegende Beispiel ist hier nur zum Testen der Grundfunktionen.

Wenn alle Bauteile entsprechend dem obigen Schaltbild aufgebaut worden sind, stehen verschiedene Funktionen zur Verfügung.

Vollschritte / Halbschritte
Der Microcontroller kann sowohl Vollschritte als auch Halbschritte ausgeben. Beim normalen Einschalten sind standardmäßig Vollschritte vorgegeben.
Zum Umschalten auf Halbschritte, trennt man den Aufbau zunächst kurz von der Spannungsversorgung. Dann schaltet man bei gedrücktem Taster für langsamere Geschwindigkeit die Spannung wieder zu. Sobald der Aufbau Spannung hat, kann man die Taste loslassen und dann ganz normal zum Regeln der Geschwindigkeit verwenden. Der Microcontroller gibt dann Halbschritte aus, bis zum Ausschalten. Beim nächsten normalen Einschalten sind standardmäßig wieder Vollschritte eingestellt - oder beim Gedrückt-Halten der Langsamer-Taste wiederum Halbschritte.

Geschwindigkeit ändern
Wenn die Schaltung - im Halb- oder Vollschritt-Modus - läuft, kann man durch Drücken der jeweiligen Taster (schneller, langsamer) bzw. über das Poti die Drehgeschwindigkeit erhöhen oder verringern.

Über das Poti kann die Geschwindigkeit unterbrechungslos eingestellt werden. Erfolgt die Einstellung über die Taster, bleibt der Motor zur besseren Kontrolle pro Tastendruck kurz stehen und läuft erst beim Loslassen der Taste mit der neu eingestellten Geschwindigkeit weiter. Bleibt der Motor beim Drücken nicht stehen und läuft stattdessen ohne Unterbrechnung weiter, ist die Minimum- oder Maximum-Geschwindigkeit erreicht - dann bitte die jeweils andere Taste zum Regeln der Geschwindigkeit verwenden.

Es ist vom jeweiligen Motor abhängig, welche Höchstgeschwindigkeit er verträgt. Wurde die Geschwindigkeit zu hoch gewählt, dann über Tasten oder Poti die Geschwindigkeit verringern, so dass sich der Motor wieder dreht.

Drehrichtung
Mit einem Schalter (Pin 8) lässt sich während des Betriebs die Drehrichtung des Motors ändern - vor/zurück bzw. links/rechts (je nach Motorposition).


Microcontroller

Aus Missbrauchsgründen sind hex-Codes nicht zugänglich und werden nicht auch nicht per eMail versandt. Bei Interesse an einem beschriebenen Microcontroller bitte Anfrage per eMail senden.



Mai 2023



Jegliche Vervielfältigung bzw. Nutzung der Inhalte bedarf der vorherigen schriftlichen Genehmigung. Copyright: www.Afug-Info.de   Kontakt: http://www.afug-info.de/

Seitenanfang

 Afug-Info.de - Amateurfunk und mehr...