Fisch´s Projekte-Seite

Schrittmotorsteuerung (L297 / L298)



Ein Schrittmotor benötigt im Gegensatz zu z.B. Gleichstrommotoren eine besondere Ansteuerung.
Wie bereits erwähnt lassen sich Unipolare Schrittmotoren (Also mit Mittelanzapfung der beiden Spulen) relativ einfach mit einem Darlington IC (z.B. ULN2803) und einem entsprechenden Controller (Atmega, Computer über LPT Port, etc.) zum Drehen animieren.
Unipolare Schrittmotoren haben allerdings ein geringeres Drehmoment als Bipolare Schrittmotoren aufgrund der sozusagen nur zur Hälfte genutzten Spulen und sind desswegen nur für Anwendungen geeignet, wo es nicht auf Kraft oder Geschwindigkeit ankommt; Ich denke dabei an z.B. eine Analoge Uhr.

Mithilfe des L298 in zusammenarbeit mit dem L297 ist es möglicht Bipolare Schrittmotoren vergleichsweise Kostengünstig zu betreiben.
Der L298 übernimmt dabei die Versorgung des Motors mit Strom, der L297 steuert den L298. Dabei liegt am Motor im Stillstand eine geringere Spannung an, im Betrieb eine höhere (maximal die angelegte Spannung) um so das Abbauen des Magnetfeldes im Motor zu beschleunigen.
Am Ende legt man eine recht Hohe Spannung (bis zu 46V) an den L298 an, Versorgt den L297 mit 5V und muss nachher nur noch die Richtung bestimmen und den Takt angeben; Also statt 4 Leitungen nur noch 2.

Die Grundschaltung der beiden IC's ist sehr einfach und auf Seite 8 im Datenblatt zu finden.



Hier erstmal die beiden IC's; Kosten liegen pro IC bei etwa 2,50 €
Als Sense-Widerstände hab ich 1,5 Ohm Leistungswiderstände genommen, welche ich dann später jeweils parallel zusammenlöte damit ich in etwa auf die 0,5 Ohm komme (laut Datenblatt).
Durch diese Widerstände wird im Betrieb der Komplette Strom, den die Motoren verbrauchen fließen, weswegen sie ausreichend Dimensioniert sein sollten. Sie sind natürlich nur nötig, wenn man den Chopper-Betrieb nutzen möchte (Also das Anpassen (wörtlich: Zerhacken) der Spannung).


Hier mein allererster Testaufbau auf nem Breadboard. Sieht weitaus wilder aus als es ist.
Alles klappte sogar wie es soll.
Bei späteren Versuchen wollte der Motor sich nicht mehr bewegen und das ganze verbrauchte auch nichtmal 100mA, was im Endeffekt dran lag, dass zwei Anschlüsse des Motors vertauscht waren (die sind beim IBM 6328861 etwas durcheinander). Auch kann es daran liegen, dass der "Enable" Pin vom L297 nicht auf high (+5V) liegt.


Der erste Testversuch fand mit einem Schwachen 1A 24V Netzteil statt (solch ein IBM Motor zieht 2A), zudem mussten die Logik 5V zusätzlich zugeführt werden.
Für den weiteren Aufbau hab ich mir daher ein schickes Netzteil von Pollin für unter 10€ geleistet, welches mit 5V, 12V und 24V zur Verfügung stellt (bei 24V bis 6A).


Als erstes der Aufbau des L297. Alles auf Lochraster, da mir der Aufwand für eine solch einfache Schaltung zu groß gewesen wäre.
Die ICs hab ich auf getrennten Platinen aufgelötet, da ein späterer Austausch bei defekten etc. dann einfacher ist.
Verbunden werden die Platinen über ein Kabel mit Buchsenleisten, welche auf die Platinen aufgesteckt werden.


Hier die Platine für den L298; etwas größer als beim L297


Da mir bei einem Versuch der L298 aufgrund eines Kurzschlusses der Ausgänge durchgebrannt ist hab ich mich dazu entschieden den IC in Buchsenleisten zu stecken, wodurch er später einfacher auszutauschen ist (es ist nahezu unmöglich mit einem normalen Lötkolben solch einen IC auszulöten).
Direkt daneben die Stiftleisten für die Verbindung mit der Partnerplatine.
3. Bild: Die Bat48 Dioden; ähnlich aufgelötet wie im Schaltplan. Sie dienen dem schnelleren Abbau des Magnetfeldes im Motor, wodurch höhere Drehzahlen erreicht werden können.


Schraubanschlüsse und Widerstände druff, festlöten, fertig.


Als letztes noch nen fetten Kühlkörper mit Wärmeleitpaste am IC festschrauben. Das Teil wird auf Dauer richtig heiß, später kommt für längeren Betrieb noch nen aktiver Kühler in die Nähe.


Alles wieder provisorisch anschließen und testen. ... Läuft!
(Nicht täuschen lassen von dem Gewirr auf dem Breadboard, war nur noch der alte Testaufbau drauf)



Drei dieser Steuerungen sind in der Steuerbox meiner CNC verbaut.
Wem die L298/L297 zu steinzeit sind, kann sich ja an den etwas effizienteren L6208 Motortreibern versuchen.