AlKI (Diskussion | Beiträge) (→Unverzichtbare Daten) |
AlKI (Diskussion | Beiträge) (→Schaltung zum Ansteuern eines Schrittmotors mit L298 und L297) |
||
Zeile 182: | Zeile 182: | ||
− | Wer eine etwas einfachere Schaltung zum Ansteuern eines | + | Wer eine etwas einfachere Schaltung zum Ansteuern eines kleineren Uni-/bipolaren Schrittmotors möchte, kann auch einen SAA1024 benutzen. Dieser 16-polige IC beinhaltet ein Schieberegister mit CW/CCW- und CLK-Eingängen, 4 Output-Transistoren und Freilaufdioden. Durch die einzelnen Windungen des Schrittmotors dürfen (lt. Datenblatt) maximal 500mA fliessen. |
− | Der | + | Der SAA1024 arbeitet mit bis zu 20V Versorgungsspannung, es ist gleichzeitig die Arbeitsspannung für den Schrittmotor. |
Schaltplan und Anschlussbelegung folgen. | Schaltplan und Anschlussbelegung folgen. |
Version vom 9. September 2007, 13:59 Uhr
Inhaltsverzeichnis
- 1 Was ist ein Schrittmotor
- 2 Wie unterscheidet man Schrittmotoren
- 3 Prinzip der Schrittmotoren
- 4 Schrittmotoransteuerung
- 5 Ansteuerarten
- 6 Schrittmotoren in Bezug auf Roboter
- 7 Fehler, die bei der Motorwahl oft gemacht werden
- 8 Schaltung zum Ansteuern eines Schrittmotors mit L298 und L297
- 9 Wie identifiziert man die Leitungen wenn man kein Datenblatt zum Motor hat?
- 10 Phasenbeschreibung der Ansteuerung
- 11 Motoren mit 5 Anschlüssen?
- 12 Die wichtigsten Daten bei einem Schrittmotor
- 13 Praxisbeispiel für Stromberechnung
- 14 Autor
- 15 Siehe auch
- 16 Weblinks
Was ist ein Schrittmotor
Schrittmotoren arbeiten völlig anders als Gleichstrommotoren. Das ist schon daran zu erkennen, dass diese keine zwei, sondern meist 4, 6 oder 8 Anschlüsse (bipolare oder unipolare Motoren) besitzen. Demzufolge ist es also nicht damit getan, irgendwo Spannung anzulegen, um den Motor zum Drehen zu bewegen. Aber keine Sorge, sehr kompliziert ist es dennoch nicht.
Ein Schrittmotor (oft auch Stepper genannt) ist ein Synchronmotor, bei dem der Rotor (drehbares Motorteil mit der Welle) bei geschickter Wahl der angesteuerten Statorspulen (nichtdrehbarer Motorteil) gezielt um einen Winkel gedreht werden kann. Auf diese Weise kann man in mehreren Schritten jeden Drehwinkel, wenn er ein Vielfaches des minimalen Drehwinkels ist, anfahren.
Wie unterscheidet man Schrittmotoren
Man unterscheidet den Schrittmotor nach seiner Bauform in Reluktanzmotor und Permanentmagnetmotor, wobei man beide Formen auch zu einem Hybridschrittmotor kombinieren kann. Beim Reluktanzschrittmotor besteht der Rotor aus einem gezahnten Weicheisenkern. Dieses Material gewährleistet nach dem Ausschalten des Statorstromes das Verschwinden jedes Rest-Magnetfeldes. Dadurch kann der magnetische Fluss bei eingeschaltetem Strom ungehindert durch den Weicheisenkern fließen. Die Drehbewegung des Rotors kommt zustande, weil so der Abstand zwischen dem nächstliegendem Zahn des Rotors und dem Stator verringert werden kann und der magnetische Widerstand verringert wird.
Beim Permanentmagnetschrittmotor besteht der Stator aus Weicheisen und der Rotor aus Dauermagneten, die abwechselnd einen Nord- und einen Südpol aufweisen. Mit dem Stator-Magnetfeld richtet man den dauermagnetischen Rotor so aus, dass eine Drehbewegung entsteht.
Da der Reluktanzschrittmotor keine Permanentmagnete enthält, hat er daher im Gegensatz zum Permanentmagnetschrittmotor auch kein Rastmoment bei ausgeschaltetem Strom. Beim Permanentmagnetschrittmotor ist die Anzahl der Pole (und damit die Auflösung) begrenzt. Der Hybridschrittmotor vereint die Eigenschaften beider Bauformen, in dem auf den Permanentmagneten noch ein gezahnter Weicheisenkranz eingefügt wird. Nahezu alle heute erhältlichen Schrittmotoren sind Hybridmotoren. Als High-Torque Motoren (=hohes Drehmoment) werden häufig Typen bezeichnet, bei denen für den Rotor besonders starke Seltenerdenmagnete verwendet werden. So lässt sich eine besonders hohe Kraftdichte erzielen.
Typische Anwendungsgebiete sind Drucker, vor allem Matrixdrucker, oder der Antrieb des Schreib-/Lesekopfes in einem Diskettenlaufwerk. Da Schrittmotoren (solange sie nicht überlastet werden) exakt dem außen angelegten Feld folgen, können sie ohne Sensoren zur Positionsrückmeldung (Encoder, Drehgeber oder ähnliches) betrieben werden (Synchronmotorverhalten). Daher können sie im Gegensatz zu Servomotoren gesteuert betrieben werden. Servos müssen auf Position geregelt werden.
Schrittmotoren existieren auch in Form von Linearmotoren. Schrittmotoren können bis ca. 1 kW wirtschaftlich eingesetzt werden.
Prinzip der Schrittmotoren
Der bipolare Motor besitzt zwei Spulen, und da jede Spule nun mal zwei Enden hat, also 4 Anschlüsse. Der unipolare Motor ist ebenfalls so aufgebaut, jedoch wird hier noch jede Spule in der Mitte durch eine Anschlussleitung angezapft (siehe Bild)
Um den Motor nun in Bewegung zu bringen, muss an den Spulen eine Spannung angelegt werden. Legt man die Mittelanzapfung auf Masse, so hat man also noch 4 Anschlüsse. Legt man nun an zwei dieser Anschlüsse die Spannung an, bewegt sich der Motor - allerdings nur einen winzigen kaum sichtbaren Schritt. Wie groß ein Schritt ist, hängt vom jeweiligen Motor ab. Bei den meisten Motoren beträgt der Schrittwinkel 1,8 Grad. Das bedeutet, dass 200 Schritte notwendig sind, um die Achse einmal rund zu drehen. Nachdem der Motor nun einen Schritt gemacht hat, muss die Spannung an einer anderen Kombination von Anschlüssen eingeschaltet werden. Es gibt somit 4 Kombinationen, wobei immer zwei Anschlüsse an die Spannung und zwei andere auf 0 V gelegt werden. Dies ist die sogenannte unipolare Ansteuerung. Wechselt man ständig diese verschiedenen Anschlussbelegungen, so würde sich der Motor mit jeder Änderung einen Schritt drehen.
Schrittmotoransteuerung
Um dies zu erreichen, benötigt man entweder eine elektronische Schaltung oder man verbindet die einzelnen Spulenenden jeweils mit einem Port eines Microcontrollers. Vorsicht, natürlich nicht direkt verbinden. Die Leistung eines Ports reicht natürlich niemals aus, um einen Motor zu bewegen. Ein Motortreiber (Verstärker) muss also schon dazwischen geschaltet werden. Zum Beispiel der Schaltkreis L293D, siehe Zeichnung.
oder aber der stärkere L6205:
Nun müsste der Microcontroller also nur noch eine 4-stellige Bitfolge ausgeben, um den Motor an den 4 Anschlüssen ständig in einer bestimmten Kombination mit Spannung zu versorgen.. Bei jeder Portausgabe würde sich somit der Schrittmotor einen Schritt bewegen. Das Ganze könnte natürlich in der Software in einer Schleife gemacht werden. Der Schleifenindex würde somit die Zahl der Schritte angeben. Der große Vorteil bei Schrittmotoren ist, dass man durch diese Methode ganz genau festlegen kann, wie weit sich ein Schrittmotor dreht. Man kann somit auch genau ausrechnen, wie viel Schritte pro Radumdrehung notwendig sind. Nutzt man keine Untersetzung (was ich allerdings noch zusätzlich empfehlen würde) so bräuchte man bei den meisten Motoren wie schon erwähnt 200 Schritte pro Radumdrehung. Berechnet man dann den Umfang des Rades, so kann man genau ausrechnen, wie viele Schritte pro cm Fahrtstrecke notwendig sind. So könnte man schnell eine Routine schreiben, welche als Parameter die Fahrtstrecke entgegennimmt und dann daraus die Schritte errechnet und in einer Schleife an die Ports weitergibt.
Genauer lässt sich ein Roboter eigentlich kaum steuern. Ein Schrittmotor bewegt sich nur bei einem Schritt, ansonsten sorgt das Haltemoment dafür, dass er sich nicht weiter bewegt. Nachteil ist nur, dass der Motor auch im Stand mit Strom versorgt wird, damit er sich nicht bei unebenen Böden oder an Steigungen bewegt. Bei Robotern, die sich nur in der Wohnung bewegen, kann man oft auch in der Praxis die Spannung abschalten, ohne dass sich der Motor bewegt, insbesondere wenn man vielleicht durch einen Zahnriemen noch eine Untersetzung von 4:1 oder 6:1 eingebaut hat.
In der Tat werden viele Roboter schon auf diese Weise gesteuert. Optimal ist diese Methode allerdings nicht, insbesondere bei schweren Robotern reicht die Kraft bei dieser Art Steuerung nicht aus, dies wird leider in vielen Artikeln zu diesem Thema verschwiegen. Wenn ein Motor zu schwach ist, können auch Schritte verloren gehen, wenn die Kraft nicht ausreicht um z.B. einen höheren Teppichrand zu überfahren. Dadurch würde die genaue Positionierung wieder gestört.
Gleich dazu mehr. Erwähnen möchte ich erst noch kurz die bipolaren Motoren mit 4 Anschlüssen (also ohne Mittelanzapfung). Diese sind im Prinzip nicht anders aufgebaut als die unipolaren. Da sie jedoch keine Mittelanzapfung besitzen, wird das unterschiedliche Magnetfeld dadurch erreicht, dass man die Spannung an den Spulenenden immer umpolt. Lange Zeit galt das für Bastler als etwas zu kompliziert, daher wurde die unipolare Ansteuerung oft vorgezogen. Durch neue integrierte Schaltkreise wie den L298 ist das aber auch kein Problem mehr. Erwähnen möchte ich noch die Motoren mit 8 Anschlüssen. Im Prinzip sind das Motoren, in denen die beiden Spulen in der Mitte aufgetrennt und herausgeführt wurden. Diese Motoren erlauben wahlweise eine bipolare oder unipolare Ansteuerung. Man kann die Leistung und Anschlusswerte auch verändern, indem man hier die 4 Spulen (sind ja nun quasi 4 durch die Auftrennung) entweder parallel oder in Serie schaltet.
Hier alle denkbaren Ansteuerungsmöglichkeiten bei den unterschiedlichen Motoren (die Farbangaben können bei den Motoren sehr unterschiedlich sein):
Ansteuerarten
Die einfachste Art, einen Schrittmotor zu betreiben, ist der sogenannte WaveDrive-Betrieb, bei dem immmer nur eine Spule stromerfüllt ist. Dies ist am einfachste zu realisieren, birgt aber ein geringes Drehmoment. Die Positionnen, die der Rotor einnehmen kann, liegen bei 0, 90, 180 und 270 Grad. Werden dagegen immer zwei benachbarte Spulen mit Strom versorgt, gelangt man zum sog. Vollschrittbetrieb und erreicht ein größeres Drehmoment. Die Positionen liegen hier genau zwischen den Positionen beim WaveDrive-Betrieb. Werden beide Betriebsarten kombiniert, also immer abwechselnd eine oder beide Spulen versorgt, können insgesamt schon 8 Positionen anfahren werden. Dies nennt man Halbschrittbetrieb. Führt man diese Idee wieter, so gelangt man zu einem Idealen Drehfeld: Beide Spulenpaare werden mit einer Sin/Cos-Welle angesteuert, sodaß sich ein nahezu idealer Rundlauf ergibt. Die Vorteile des Mehrschrittbetriebs liegen auf der Hand: Der Kraftverlauf wird bei kleinere Schritten gleichmäßiger, die Gefahr des Schrittverlustes sinkt und der Motor wird deutlich leiser.
Schrittmotoren in Bezug auf Roboter
Schrittmotoren eignen sich vorzüglich für Roboter. Insbesondere für Roboter, die sich nur im Haus bewegen und weniger als 20 kg wiegen, halte ich persönlich Schrittmotoren für die 1. Wahl. Sie zeichnen sich dadurch aus, dass die Steuerung besonders leicht und präzise per Software möglich ist. Oft hört man in Foren, dass Schrittmotoren im Vergleich zu Getriebemotoren recht schwach seien. Dazu ist zu sagen, dass dieser Vergleich etwas hinkt. Ein Schrittmotor könnte ja auch mit einem Getriebe versehen werden. Also wenn man Getriebemotoren schon mit Schrittmotoren vergleicht, dann müssten beide über ein Getriebe verfügen. Natürlich gibt es auch Schrittmotoren mit Getriebe. Allerdings braucht man bei Schrittmotoren oft gar kein Getriebe, denn die Kraft ohne Getriebe ist nämlich in der Regel wesentlich höher als bei den Gleichstrommotoren. Auch niedrige Drehzahlen sind bei Schrittmotoren kein Problem, sogar von Vorteil. Je niedriger die Drehzahl, desto höher ist bei Schrittmotoren das Drehmoment. Dass es trotzdem immer wieder bei Einsteigern Probleme mit der Wahl des richtigen Schrittmotors gibt, liegt vorwiegend am mangelnden Wissen über das Stromverhalten dieser Motoren. Dazu später ein paar Tipps, die zeigen, dass man auch schwere Roboter durchaus mit recht kleinen Motoren bewegen kann. Zuvor aber ein paar Grundlagen für Einsteiger. Anwender, die sich schon etwas mit Schrittmotoren auskennen, können den nächsten Absatz überspringen
Fehler, die bei der Motorwahl oft gemacht werden
Bei der Auswahl eines Schrittmotors sollte man sorgfältig vorgehen. Kleine Motoren, wie sie in Druckern oder Floppys stecken, reichen in der Regel wirklich nur für Roboter der Fliegengewichtsklasse aus. Wenn ein Roboter ein paar kg wiegt, dann braucht man schon etwas mehr Power. Hier sollte man immer auf das Haltemoment achten, dies entspricht fast dem Drehmoment. Mit einem Motor, der 40 Ncm Haltemoment besitzt kann man schon einiges anfangen. Bei einigen Versuchen hab ich durchaus Roboter mit 10 kg ohne Schrittverlust damit bewegt. Allerdings hab ich noch eine Untersetzung 6:1 über Riemen eingebaut. Wenn man sicher gehen will, dann nimmt man immer einen etwas stärkeren Motor. Ein 100 Ncm Motor kommt oft noch mit 6 oder 7 VA (Watt) aus. Es ist ein Irrtum, dass sich die Größe des Motors linear mit der Kraft ändert. Es gibt zahlreiche Motoren, welche die gleiche Größe aufweisen und dennoch ganz unterschiedlich stark sind. Ein Standardmaß ist 56 x 56 mm. In der Regel findet man in dieser Größe schon starke Motoren, die keine Wünsche mehr offen lassen.
Ein Fehler, der bei der Auswahl des Motors oft gemacht wird, ist die Betriebsspannung. Auch ich habe am Anfang gedacht, dass man bei einer vorhandenen Spannung von 12 V am besten einen Motortyp mit 12 V kaufen muss. Dies ist zwar nicht ganz falsch, aber wird nie zu großer Leistung führen. Wichtig für den Motor ist, dass der angegebene Strom fließt. Ein Motor, bei dem beispielsweise 12 V und 0,5 A angegeben sind, wird in der Praxis nur bei wirklich sehr niedrigen Drehzahlen seine Kraft, also sein Drehmoment, erreichen. Je höher die Drehzahl, desto schwächer wird der Motor. Das kann soweit gehen, dass schon das geringste Hindernis den Motor Schritte verlieren lässt oder dass der Motor bei höheren Drehzahlen gar nicht mehr anläuft.
Woran liegt dies? Ganz einfach: Ein Schrittmotor hat auch eine Induktivität. Da der Motor ständig umgepolt wird, wird durch diese Induktivität eine Art Gegenstrom erzeugt. Dies hat zur Folge, dass der eigentliche Strom bei höheren Drehzahlen nicht mehr erreicht wird. Je schneller sich der Motor dreht, desto weniger Strom fließt. Verständlich, dass dadurch die Leistung reduziert wird.
Wie kann man diesem Verhalten entgegenwirken? Ganz einfach mit einer wesentlich höheren Spannung als auf dem Motor angegeben. Doch Vorsicht, so einfach geht es nicht. Wenn der Motor steht oder sich langsam dreht, dann würde der Motor ja sofort durchbrennen. Die Lösung ist eine stromgeregelte Steuerung! Die Regelung wird mit einer hohen Spannung (oft bis zu 30 oder 40 Volt) versorgt. Aber die Regelung sorgt dafür, dass immer nur der eingestellte Nennstrom, in unserem Beispiel 0,5 A, zum Motor gelangt. Auf diese Art und Weise wird der Motor, ohne Schaden zu nehmen, immer mit der optimalen Spannung versorgt.
In der Tat werden heute alle Schrittmotoren, die etwas Leistung bringen müssen, z.B. bei Drehmaschinen, auf diese Art angesteuert. Das Ganze klingt nun recht kompliziert und aufwendig für einen Roboter-Hobbybastler. Ist es aber nicht, denn es gibt heute zwei integrierte Schaltkreise, die einen das Ganze recht einfach machen.
Schaltung zum Ansteuern eines Schrittmotors mit L298 und L297
Die hier abgebildete Schaltung ist quasi der Standard für Schrittmotoren. Auch bei Drehmaschinen wird diese Schaltung oft eingesetzt.
Die Schaltung lässt sich recht einfach auf einer Experimentierplatine aufbauen, es gibt jetzt aber auf vielfachen Wunsch auch eine fertig erhältliche Platine für Einsteiger.
Bedenkt man, dass auch bei einem Gleichstrommotor ein Motortreiber notwendig ist, dann ist diese Schaltung auch nicht viel komplexer. Die einzelnen Steuerleitungen können direkt mit den Ports eines Microcontrollers (Controllerboard) oder mit dem Parallelport eines PCs verbunden werden. Hier die Bedeutung:
|
|
Wie Sie sehen, braucht man also nur 3 Port-Pins, um einen Schrittmotor in beliebige Richtungen und in beliebiger Geschwindigkeit bewegen zu können. Kommt noch ein Motor hinzu, dann könnte man die Enable-Leitung beider verbinden, sodass dann zwei Motoren mit 5 Ports-Pins optimal gesteuert werden können. Ich habe mit einer solchen Schaltung auf einer Experimentierplatine schon einen 15-kg-Roboter problemlos mit einer C-Control gesteuert.
Einen interessanten Forum Thread zu oberer Schaltung findet man unter #Weblinks
Hier noch mal ein größerer Schaltplan mit eingezeichnetem Anschlussstecker und Spannungsteiler.
Wichtig ist nur, dass man diese Schaltung mit einer möglichst hohen Spannung versorgt und einen Schrittmotor mit möglichst niedriger Spannung auswählt. Man sollte sich nicht davor abschrecken lassen, dass Schrittmotoren mit niedriger Spannung höhere Ströme z.B. 1 bis 2 A benötigen. Die Leistung berechnet sich ja bekanntlich mit der Formel P=U*I. Somit brauchen auch diese Motoren nicht mehr Energie als Motoren mit höherer Spannung und niedrigem Strombedarf. Hat man bei einem Roboter nur 12 V zur Verfügung, so ist es empfehlenswert z.B. einen 3- oder 4-Volt-Motor zu kaufen. Der Widerstand sollte jedenfalls deutlich unter 10 Ohm liegen. In diesem Fall könnte man dann die obige Schaltung auch mit 12 V betreiben. Allerdings bei höheren Drehzahlen würde die Spannung wegen der Induktivität meist immer noch nicht ausreichen, um die volle Leistung des Motors zu nutzen. Daher wäre zu überlegen, ob man nicht zwei 12-V-Batterien in Serie schaltet oder eine Spannungsverdopplerschaltung einsetzt. Ich habe mich für letzteres entschieden. Mit ein paar Kondensatoren und Dioden kann man recht einfach die Spannung von 12 auf ca. 21 V erhöhen. In der Praxis bricht dieses Spannung bei hohen Strömen ein paar Volt ein, aber das tut der Leistung keinen Abbruch. Mit Spannungsverdoppler war der Motor jedenfalls deutlich stärker und hatte mit 15 kg in der Wohnung keinerlei Probleme. Schwieriger wird es mit Motoren, die schwerer als 15 kg sind, denn hier wird der Strombedarf einfach zu groß und die Akku-Kapazität ist zu schnell erschöpft.
Fazit: Roboter, die sehr genau gesteuert werden müssen und deutlich weniger als 10 kg wiegen, kann man sehr gut mit Schrittmotoren steuern. Bei Robotern, die schwerer sind, sich sehr schnell bewegen müssen oder deren Steuergenauigkeit nicht so wichtig ist, sind Getriebemotoren oft sinnvoller.
Als Alternative eine Ansteuerung für 2 Schrittmotoren per Befehl über I2C oder RS232 speziell für Roboter Bastler (ebenfalls mit Stromregelung und L298). Das Board RN-Motor beruht auf dieser Schaltung
Ein interessanter Forum Thread zu dieser Schaltung findet man unter #Weblinks
Neben dem Motortreiber L298 gibt es aber auch Alternative Motortreiber die sich sehr gut für die Schrittmotorsteuerung eignen. Sehr gut eignen sich zum Beispiel auch L293D oder der neuere L6205. Diese Treiber werden auf unserer Seite Getriebemotoren Ansteuerung näher beschrieben.
Wer eine etwas einfachere Schaltung zum Ansteuern eines kleineren Uni-/bipolaren Schrittmotors möchte, kann auch einen SAA1024 benutzen. Dieser 16-polige IC beinhaltet ein Schieberegister mit CW/CCW- und CLK-Eingängen, 4 Output-Transistoren und Freilaufdioden. Durch die einzelnen Windungen des Schrittmotors dürfen (lt. Datenblatt) maximal 500mA fliessen.
Der SAA1024 arbeitet mit bis zu 20V Versorgungsspannung, es ist gleichzeitig die Arbeitsspannung für den Schrittmotor.
Schaltplan und Anschlussbelegung folgen.
Wie identifiziert man die Leitungen wenn man kein Datenblatt zum Motor hat?
Ein 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 2 sollte unendlich sein.
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.
Um den Motor bipolar anzusteuern, werden übrigens die Common-Anschlüsse nicht benötigt.
Phasenbeschreibung der Ansteuerung
Schema zur Beschreibung der Spulen
Zur Beschreibung verwenden wir wieder das folgende Schema der Spulen:
Unipolare Ansteuerung Vollschritt
Unipolare Ansteuerung Vollschritt | ||||||
---|---|---|---|---|---|---|
Phase Spule 1a | Phase Spule 1b | Common Spule 1 | Phase Spule 2a | Phase Spule 2b | Common Spule 2 | |
Schritt 1 | + | 0 | - | 0 | + | - |
Schritt 2 | + | 0 | - | + | 0 | - |
Schritt 3 | 0 | + | - | + | 0 | - |
Schritt 4 | 0 | + | - | 0 | + | - |
- steht für Minus + steht für Plus 0 steht für Unbelegt |
Bipolare Ansteuerung Vollschritt
Bipolare Ansteuerung Vollschritt | ||||||
---|---|---|---|---|---|---|
Phase Spule 1a | Phase Spule 1b | Common Spule 1 | Phase Spule 2a | Phase Spule 2b | Common Spule 2 | |
Schritt 1 | + | - | 0 | + | - | 0 |
Schritt 2 | + | - | 0 | - | + | 0 |
Schritt 3 | - | + | 0 | - | + | 0 |
Schritt 4 | - | + | 0 | + | - | 0 |
- steht für Minus + steht für Plus 0 steht für Unbelegt |
Bipolare Ansteuerung Halbschritt
Bipolare Ansteuerung Halbschritt | ||||||
---|---|---|---|---|---|---|
Phase Spule 1a | Phase Spule 1b | Common Spule 1 | Phase Spule 2a | Phase Spule 2b | Common Spule 2 | |
Schritt 1 | + | - | 0 | + | - | 0 |
Schritt 2 | + | - | 0 | 0 | 0 | 0 |
Schritt 3 | + | - | 0 | - | + | 0 |
Schritt 4 | 0 | 0 | 0 | - | + | 0 |
Schritt 5 | - | + | 0 | - | + | 0 |
Schritt 6 | - | + | 0 | 0 | 0 | 0 |
Schritt 7 | - | + | 0 | + | - | 0 |
Schritt 8 | 0 | 0 | 0 | + | - | 0 |
- steht für Minus + steht für Plus 0 steht für Unbelegt |
Schrittmotorphasen bildlich dargestellt
Motoren mit 5 Anschlüssen?
Es gibt auch Schrittmotoren mit 5 Drähten. In diesem Fall sind die mittleren Spulenanzapfungen miteinander verbunden und nur als einzige Leitung herausgeführt (also beide Common-Anschlüsse /siehe Skizze).
In dem Fall kann man den Motor nicht bipolar ansteuern, sondern muss ihn unipolar ansteuern. Mit L297/L298 bzw. RN-Motor usw. wird ein Schrittmotor immer bipolar angesteuert, also kann dafür kein Motor mit 5 Drähten verwendet werden.
Da heutzutage Schrittmotoren bevorzugt bipolar angesteuert werden um maximales Drehmoment (Kraft) zu erreichen, sollte man daher beim Kauf möglichst Motoren mit 4, 6 oder 8 Drähten kaufen.
Merke:
Motoren mit 4 Drähten kann man immer nur bipolar ansteuern. Motoren mit 6 oder 8 Drähten kann man sowohl bipolar als auch unipolar ansteuern. Gewöhnlich werden Motoren heute bevorzugt bipolar angesteuert, weil diese Ansteuerung ein größeres Drehmoment erzeugt. Bei der bipolaren Ansteuerung in Verbindung mit Stromregelung (wie bei L297/L298 oder RN-Motor etc.) kann die Nennspannung des Motors weit unter der Betriebsspannung liegen. Bei einer Ansteuerung ohne Stromregelung muss die Nennspannung des Motors in etwa der Betriebsspannung entsprechen (egal ob unipolar oder bipolar Ansteuerung). In diesem Fall ist jedoch das Drehmoment (Kraft) erheblich (deutlich spürbar) geringer. |
Die wichtigsten Daten bei einem Schrittmotor
Zum besseren Verständnis habe ich die Daten in die Klassen Unverzichtbar, Hilfreich und weniger notwendig unterteilt. Diese Unterteilung habe ich vorwiegend im Blick auf Hobby-Anwender und Robotik-Bastler vorgenommen. Es versteht sich von selbst das je nach Vorhaben oder bei industrieller Anwendung eines Motors alle Daten wichtig sein könnten.
Unverzichtbare Daten
- Nennstrom
- Maximal zulässiger Strom pro Wicklung (Phase). Bei Motoren mit mehreren Wicklungen (also Motoren mit 6 oder 8 Anschlüssen) bezieht sich die Stromangabe auf nur eine Wicklung (unipolare Ansteuerung). Siehe dazu auch das Rechenbeispiel im nächsten Abschnitt.
- Haltemoment
- Bis zu diesem Moment (Drehmoment, also dieser Kraft) kann ein Schrittmotor belastet werden, bis sich die Achse um einen oder mehrere Schritte durch die Belastung verdreht. Diese Angabe gilt für einen stehenden Schrittmotor der unter voller Betriebsspannung steht. Die Angabe gibt somit quasi an wieviel Kraft der Motor besitzt, eine sehr wichtige Angabe.
- Schrittwinkel
- Der Schrittwinkel gibt an um wieviel Grad sich die Achse bei einem Vollschritt bewegt. Dadurch wird also gleichzeitig angegeben, wie viele Schritte ein Motor für eine volle Drehung benötigt. Man teilt einfach 360 Grad durch den Schrittwinkel und erhält die Schrittanzahl. Bei guten Industriemotoren beträgt der Schrittwinkel oft 1,8 Grad, das ergibt also 200 Vollschritte pro Umdrehung. Nutzt man das Halbschrittverfahren zur Ansteuerung, also 400 Schritte. Je mehr Schritte ein Motor besitzt desto genauer kann er natürlich bestimmte Positionen anfahren, zugleich läuft er ruhiger und leiser. Nachteil von hohen Schrittzahlen ist allerdings, dass oft nicht so hohe Drehzahlen erreicht werden können wie bei großen Schrittwinkeln.
- Nennspannung
- Die Betriebsspannung, die notwendig ist, um den Nennstrom zu erreichen. Die Nennspanung gilt in der Regel für den stehenden Schrittmotor. Bei drehenden Motoren reduziert sich der Strom durch die Induktivität des Motors, daher könnte dann die Nennspannung mit steigender Drehzahl höher werden. Genau das machen auch moderne Schrittmotoransteuerungen. Darüber haben wir aber oben im Artikel schon ausgiebig gelesen. Steuert man einen Schrittmotor mit konstanter Spannung, so sollte man die Nennspannung verwenden damit der Motor nicht überhitzt.
- Anschlussbelegung
- Schrittmotoren haben 4, 5, 6 oder 8 Anschlussdrähte. Daher gehört zu jedem Schrittmotor ein Plan, der Auskunft über interne Verdrahtung der Spulen gibt. Notfalls kann man dieses auch mit Hilfe eines Ohmmeters ermitteln, auch dies wurde oben schon geschildert.
Hilfreiche Daten
- Start-Stop Frequenz (fs)
- Die maximale Frequenz (Geschwindigkeit der Schrittfolge), bei der ein nicht belasteter Schrittmotor anläuft ohne Schritte zu verlieren. Leider findet man auch diese Angabe wohl nur bei etwas teureren Markenmotoren.
- Betriebsmoment
- Ähnlich wie das Haltemoment, jedoch wird hier das Moment für den drehenden Schrittmotor angegeben. Da bei Schrittmotoren das Drehmoment mit steigender Drehzahl abnimmt, reicht hier also kein einzelnen Wert. Daher wird diese Angabe in Form einer Kennlinie, oft mit verschiedenen Betriebsspannungen, dargestellt. Eine solche Kennline haben wir schon im Artikel weiter oben kennengelernt. Sie ist sehr hilfreich um den richtigen Motor für ein Vorhaben zu finden. Man sollte insbesondere darauf achten, dass das Drehmoment bei der maximalen geplanten Drehzahl auch wirklich noch für die Aufgabe ausreichend ist. Leider wird das Betriebsmoment (also diese Kennlinie) bei vielen Motoren (insbesondere bei Angeboten, kleineren Motoren usw.) nicht angegeben. Da der Kennlienienverlauf der Schrittmotoren jedoch eine gewisse Grundähnlichkeit aufweist, kann man in der Praxis deshalb oft auch mit der Angabe des Haltemoments auskommen.
Weniger oft notwendige Daten
- Widerstand
- Manchmal wird der ohmsche Widerstand der Spule angegeben, allerdings nicht immer. Wenn die Nennspannung und der Nennstrom angebenen sind, so kann man sich den Widerstand nach dem ohmschen Gesetz selbst berechnen (R=U/I). Sind nur die Nennspannung und der Widerstand angegeben, was auch vorkommt, so muss man sich dagegen den Nennstrom selbst ausrechnen (I=U/R). Die Leistungsaufnahme der Wicklung kann man natürlich ebenfalls durch diese Angaben bestimmen (P=I²*R)
- Rastmoment
- Das Rastmoment kennt man bei Permanentmagnet- und Hybrid-Schrittmotoren. Es ist beim Drehen des Motors (ohne Spannung) spürbar. Wenn man die Wicklungen kurzschließt, wird dieses erheblich stärker. Dieser Sachverhalt kann auch für eine Bremse ausgenutzt werden.
- Rotorträgheit
- Das Massenträgheitsmoment des Rotors. Je größer und schwerer ein Motor bzw. eine Achse wird, desto größer wird die Masse des Rotors, der zusammen mit der Nutzlast beschleunigt werden muss. Je niedriger dieser Wert ist, desto schneller und dynamischer verhält sich der Motor bei Beschleunigungen. Da die Masse des Rotors und der Last ein schwingungsfähiges System bilden, sollte das auf die Motorwelle reduzierte Trägheitsmoment der Last in der selben Größenordnung liegen wie die Rotorträgheit.
Praxisbeispiel für Stromberechnung
Soll ein Schrittmotor mit 8 Anschlüssen (4 Wicklungen) bipolaren angesteuertet werden, so hat man die Wahl jeweils zwei Spulen parallel oder in Reihe zu schalten. Die Stromangaben auf dem Motor beziehen sich in der Regel auf eine Phase, also eine Wicklung. Angenommen wir haben einen Motor mit folgender Beschriftung:
- Nennspannung: 5,1 V
- Phasenstrom: 1,0 A
- Anschluß: 8 Drähte = wahlweise unipolar oder bipolar
- Schrittwinkel 1,8 Grad / 200 Schritte pro Umdrehung
- Haltekraft: ca. 50 Ncm
- Wellendurchmesser: 6 mm
Möchte man die Spulen in Reihe schalten, so muss der Strom in etwas um den Faktor 1,41 (Wurzel aus 2) verringert werden damit der Motor nicht zu heiß wird.
In unserem Beispiel müsste also 1A / 1,41 = 0,792A fließen. Bei einer Chopper-Regelung (Stromregelung) müsste man somit 0,79A einstellen. Da sich der ohmische Widerstand durch die Reihenschaltung verdoppelt, benötigt man auch eine höhere Spannung. Anhand des ohmischen Widerstandes, der sich messen oder berechnen läßt, kann man in etwa die notwendige Mindestspannung berechnen. Wenn bei 5,1V ein Strom von 1 A fließt, so müsste der ohmische Widerstand R=U/i = 5,1V / 1 = 5,1 Ohm betragen. Der Gesamtwiderstand der Reihenschaltung wäre demnach 10,2 Ohm. Wenn wir den Strom von 0,79A erreichen wollen, so müsste U=I*R = 0,79*10,2 = 8,06V vorhanden sein. Das wäre aber nur die Mindestspannung, also die Spannung die man ohne Stromregelung auch konstant anlegen könnte. Nutzt man jedoch eine Stromregelung so müssen natürlich Regelreserven vorhanden sein. Zudem müssten die Schaltungsverluste der Chopperregelung berücksichtigt werden. Daher verwendet man eine deutlich höhere Spannung. 12V bis 24 V wären in dem Beispiel durchaus angebracht. Je höher desto besser, denn so kann bei hohen Drehzahlen der Strom schneller dem induktiven Widerstand entgegenwirken und das Drehmoment fällt nicht mehr so stark bei steigenden Drehzahlen ab. Das Drehmoment erhöht sich im übrigen bei der Reihenschaltung ebenfalls in etwa um den Faktor 1,41 (Wurzel aus 2).
Bei der Parallelschaltung von zwei Spulen ist es genau umgekehrt. Hier muss der Strom in etwas um den Faktor 1,41 erhöht werden. Also 1A * 1,41 = 1,41 A sollten hier fließen. Da sich der ohmische Widerstand durch die Parallelschaltung halbiert, also in unserem Fall auf 2,55 Ohm, ist natürlich auch eine niedrigere Spannung notwendig. Die Berechnung wäre also U=I*R = 1,41A * 2,55 = 3,6V Auch da sist wieder die Mindestspannung die auch als Konstantspannung angelegt werden darf. Auch hier muss bei der Chopper-Regelung (Stromregelung) eine höhere Spannung angelegt werden. Mit Werten zwischen ca. 8 und 16V würde man jetzt aber schon sehr gute Ergebnisse erzielen. Auch in diesem Beispiel würde sich das Drehmoment in etwa um den Faktor 1,41 erhöhen.
Problematisch kann bei der Parallelschaltung mancher Motoren der niedrige ohmsche Widerstand werden. Nicht jede Motorregelung/Motortreiber macht das mit. Aus diesem Grund werden sicherlich Reihenschaltungen in der Praxis bevorzugt eingesetzt.
Autor
- Frank
Siehe auch
Weblinks
Hier noch ein paar Links, wenn ihr euch noch eingehender mit dem Thema befassen wollt:
- Doku zum Bausatz / Platine für L297/L298 Schaltung
- Robotertutorial (Projekt mit Schrittmotor)
- Phasentabelle als Grafik
- L297/L298 Bauteilesortiment + Schrittmotoren
- Bequeme Schrittmotoransteuerung über RS232 , I2C und Takt mit RN-Schrittmotor
- 800mA I2C Schrittmotorsteuerung mit Trinamic TMC222
- Nanotec
- Schrittmotor_Faq
- Wolfgang Backs Seite
- Automatische Berechnung der Robotergeschwindigkeit und Drehmoment bei unterschiedlichen Motoren
- Schaltung mit L297/L298 Protobed_StepM_297-298
Englische Links
- Stepping Motors Fundamentals (enthält INFOs über Microstepping)
- Control of stepping motors (gutes Tutorial)
- Drive motor circuit basics
- Half stepping techniques
- Microstepping
- Microstepping drive technology
Datenblätter