PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Schrittmotor ansteuern mit L297/298 -> wie "heiß&quo



olli2home
08.08.2008, 09:38
Hallo an alle!

Ich bin neu hier und hab auch gleich mal eine Frage:

Ich hab mir eine Schrittmotoransteuerung mit der L297/298 Combo zusammengelötet. Nun wird beim Betrieb (funktioniert noch nicht ganz so richtig...komm ich später mal drauf zurück) der L298 sehr heiß. Einen Kühlkörper hab ich dran, wenn man das so nennen kann. Ist ein Chipsatzkühler ca 3.5 x 3.5 cm. Als Motor nutz ich zu Testzwecken einen aus nem Drucker ohne weitere Angaben. Der Wicklungswiderstand liegt bei 5 Ohm. Bei einer Spannung von 12 V zieht der doch 2.4A oder? Nun ja, der 298 wird heiß und der Schrittmotor wird heiß. Man kann die Teile mit der Hand schon gar nicht mehr anfassen. Hab ich da irgendwas falsch gemacht?

Und gleich noch ne Frage: Kann mir jemand eine Schaltung erklären, wie ich den 297 mit der Lpt-Port am Rechner über Transistoren verbinde. Bis jetzt dreht sich der Motor nur, wenn ich mit dem Finger die Basis berühre.
Momentan geht ein Datenpin vom LPT über einen 4,7 kOhm WS an die Basis, + am Collector und die Eingänge des 297 an Emitter.

Ich muß dazu sagen, daß ich mich mit dem Projekt "Schrittmotor" auf meinen ersten Gehversuchen in Richtung Elektronik befinde.

Ich wäre für Eure Hilfe sehr dankbar.

Gruß

Olli

ManuelB
08.08.2008, 10:04
Hallo,
auf Basis welchen Schaltplanes hast Du den die Steuerung gebaut? Ich glaube nicht, dass der Motor aus dem Drucker 2,4 A verträgt. In der von ST vorgschlagenen Schaltung wird der Stromregler des L297 mit verwendet. Hiermit ist es möglich ,den Strom auf die für den Motor erforderlichen Werte zu begrenzen und über weite Bereiche, je nach Versorgungsspannung, konstant zu halten.

Wird Vref verwendet?

MfG
Manu

olli2home
08.08.2008, 10:21
Hallo und Danke für die Antwort.

Ich hab die Schaltung entsprechend dem Plan hier im RN aufgebaut, jedoch leicht verändert. Die 2.4A ist ausgerechten. Es stand ja nix drauf. Im Anhang stell ich mal meinen Schaltplan vor. Ich hoffe, da hat sich KEIN Fehler eingeschlichen.

ManuelB
08.08.2008, 11:23
Hallo,
die Schaltung ist mit Stromregler. Wenn Du Vref runterdrehst, verringert sich der Motorstrom.
Bei der Beschaltung für die Eingänge bin ich mir aber nicht wirklich sicher.
Irgendwie sieht es so aus,als wenn der Port durch die Diode schon auf 5V (oder so dazwischen gehalten wird. Kann sein, dass das Signal etwas undefiniert ist.
Wenn der L297 so direkt an den LPT angeschlossen wird müsste er auch gehen. Der Strom der Logikeingänge ist ,soweit ich weiß, nicht all zu hoch. Das sollte der LPT auch so schaffen.
Nur eine galvanische Trennung ist nicht vorhanden, d.h. wenn der L297 hochgeht kann es ev. zu einer Zerstörung des LPT Ports kommen.

MfG
Manu

little_asimo
08.08.2008, 12:25
Hallo zusammen,

ich habe auch mal wieder ein Problem mit der L297/L298er Schaltung.
Wenn ich Vref auf 1-1,5V einstelle (1A Motorstrom, 1Ohm Widerstände) zuckt der Motor nur. Wenn ich Vref höher drehe (2,5V), läuft der Motor. In beiden Fällen wird Rs2 (an Pin15 vom L298) extrem heiß ("unanfassbarkeit" schon nach ca 5 sek... Rs1 bleibt kühl).

Kennt jemand das Problem? Liegt irgendwo ein kurzer vor?

Andere Frage:
ich habe zur Zeit noch kein Oszi.. wenn ich mir das bei Reichelt angucke, kosten die Dinger ja 1000,- bis 2000,- Euro, gibt aber kleine Handgeräte für 300Euro... was braucht man denn so im Hobby-Bereich, auf was sollte man achten (analog, digital, Abtastrate etc)? Ich will ja nicht viel machen.. nur mal die Ein- und Ausgänge am L297/L298 und am Atmel testen.


Danke und Gruß

olli2home
10.08.2008, 08:43
aber die eigentliche Frage ist mir noch nicht beantwortet worden. Ist es normal, daß die Komponenten so extrem heiß werden? 298 UND der Schrittmotor?

ManuelB
10.08.2008, 10:29
Hallo nochmal.
Ist denn der Strom richtig eingestellt? Bei zu hohem Strom ist es normal das die Komponeneten zu heiß werden. Der l298 ist ja nur für 2A und der Schrittmotor wird sicherlich auch nicht so viel haben.
Eine gewisse Erwärmung des Motors ist normal (bis ca. maximal 70°C) und der verwendete Kühler des L298 klingt mit 3,5x3,5cm nicht wirklich groß dimensioniert, da die Verluste des L298 relativ hoch sind. Hngt aber, wenn alles korrekt aufgebaut ist, eigendlich nur vom eingestellten Strom ab.

MfG
Manu

olli2home
10.08.2008, 10:36
ich hab mal einen "kleineren" Motor drangehöngt. Wicklungswiderstand 150 Ohm. Das heißt, nach I=U/R = 12V/150Ohm = 0.08A * 0,5Ohm = 40 mV.
Also hab ich jetzt 40mV als Vref eingestellt. Die Komponenten werden jetzt nicht mal mehr warm.

Laut RN-SChaltplan verträgt doch die Schaltung bis 3A, oder lieg ich da falsch.

ManuelB
10.08.2008, 13:11
Hallo,
Kurzzeitig 3A (laut Datenbaltt 100µs), als Dauer 2A. Wobei bei hohen Strömen erachte ich den angesprochenen Kühler eher als zu klein.

MfG
Manu

olli2home
10.08.2008, 13:36
Nachdem daß mit der Temperaturgeklärt ist =D> gehts nun weiter mit der Ansteuerung über den Parallelport.
Funktioniert soweit ganz gut. Aber so richtig schnell dreht sich der Motor noch nicht. Ich habe folgende Schleife programmiert:



while (count >=0) {

_status += 1;
outportb(0x378, _status);
Sleep(1);
_status -= 1;
outportb(0x378, _status);

count--;

}



Dieses "Sleep(1)" brauch ich, damit sich überhaupt was dreht. Lass ich das weg, wird zwar die Schleife schneller abgearbeitet, aber auch die Übertragung über den LPT-Port ist vermutlich zu schnell. Kann ich das auch anders lösen?

ManuelB
10.08.2008, 15:54
Hallo nochmal,
nur mal so nebenbei. Die Einstellung des Motorstroms geht entweder über die Stromangabe auf dem Motor oder dem Wicklungswiderstand und der Motornennspannung (nicht der Betriebsspannung der Endstufe).
Liegt beides nicht vor (weder Nennspannung noch Strom), würde ich mal nach Motoren vergleichbarer Größe auschau halten und über die Leistung (Anschlusswerte) des vergleichbaren Motors sowie dem Wicklungswiderstand des eigenen Motors auf einen Stromwert zurückrechenen oder man hat Glück und die Wicklungswiderstände passen vom Vergleichsmotor mit dem eigenen überein.

Was heiß denn nicht richtig schnell?
Extrem hohe Drehzahlen bekommt man mit Schrittmotoren normalerweise nicht so einfach hin. Da würde ich eher auf den Motor mit dem niedrigen Wicklungswiderstand zurückgreifen. Dann hat das noch was mit der Betriebsspannung der Endstufe zu tun und oftmals sind dann noch Anfahrrampen erforderlich.

MfG
Manu

olli2home
10.08.2008, 16:21
Es handelt sich um Schrittmotoren aus alten 5-1/4 Zoll Diskettenlaufwerken. Die sind ja mit 12 Volt betrieben worden (geh ich jetzt mal von aus). Aber letztendlich werden sowieso "gute" Motoren eingesetzt. Es soll später einmal eine CNC-Fräse damit angetrieben werden.

Aber wie bekommt man solche Geschwindigkeiten wie
hier http://video.google.de/videoplay?docid=5234660367258602284&ei=OQafSO2jDpKw2QKftuUo&q=schrittmotor&vt=lf&hl=de hin?
Ich weiß, daß da andere Motoren verwendet werden. Mich interresiert jetzt nur, wie die Daten so schnell aus dem Rechner geholt werden können.
[/url]

ManuelB
10.08.2008, 20:49
Die Steuerprogramme laufen als Echtzeitprogramme. Im normalen Rechnerbetrieb werden die Systemresourcen ja aufgeteilt und Windows macht mal hier was und mal da was. Das geht aber beim Fräsen nicht, da die Motoren dauernd angesteuert werden müssen. Bevor das mit Echzeit in Kombination mit Windows funktioniert hat wurde auf externe Controller oder DOS zurückgegriffen. Die Controller haben dann die Bearbeitungsdaten gespeichert bzw. zwischengespeicher und an die Endstufen ausgegeben während der Rechner multitasken kann wie er will.

Hohe Geschwindigkeiten lassen sich mit entsprechenden Motoren (niedrige Induktivität) und hoher Betriebsspannung der Endstufen erreichen.

MfG
Manu

AlKI
10.08.2008, 23:08
so nen Motor aus nem alten Floppy-Disc-Laufwerk hab ich auch. lief bei mir mit 12V ganz gut.

hat 200 (Voll-)Schritte/Umdrehung?


mit dem ist nix mit großer umdrehungszahl.

zu deinem Problem mit zu schnellem ausgeben: an CLK (clock) kannst du (meiner Meinung nach, habs irgendwo hier gelesen, im Datenblatt find ichs nicht) mit mehreren kHz Signale geben, ohne dass der L297 sie "übersieht". das größere Problem wird sein, dass der Motoranker zu träge ist (darum die Anfahrrampen, von denen ManuelB gereset hat)

olli2home
11.08.2008, 04:57
Das mit der Trägheit des Motors hab ich mir schon gedacht.

Da ich meinen Parallelport schonen will, hab ich ja einen Transistor dazwischengeklemmt. Am Kollektor ne LED mit Widerstand an +.
Bei einer Ausgabe ohne Sleep() tut sich da gar nix. Nicht mal ein kurzes aufleuchten der LED. Kann es vielleicht sein, daß der Transistor nicht so schnell schalten kann?

Wie wäre es, wenn ich einen AtMega8 als "Zwischenprozessor" einsetze, der dann die Daten vom PC übersetzt und an den 297 ausgiebt. Der erhält vom PC dann Anweisungen wie "Port 1 200 Schritte nach rechts". Würde das die Geschwindigkeit vergrößern (Jetzt mal den Motor vernachlässigt)?

AlKI
11.08.2008, 10:48
ich hab meinen mit Optokopplern geschützt, dann ist wirklich jedes Gefahrenpotential weg.

Schaltplan:
https://www.roboternetz.de/phpBB2/download.php?id=13528


das ist jetzt mit 6 Optokopplergeschützten Ausgängen (KL1 für 3 Schrittmotoren) und weiter unten noch 2 Relais dran, die kann man natürlich auch weglassen und statdessen hat man 2 weitere Ausgänge für nen 4. Schrittmotor.


Die Platine ist eigentlich für ne CNC-Fräse konzipiert. Darum die Relais(+Ansteuerung) und die anderen Ausgänge. die auf die Optokoppler gelegten Anschlüsse vom lpt sind vom Datenregister, also die eigentlichen Datenausgänge.

olli2home
11.08.2008, 15:03
Danke, aber ziehen die LED´s D1 bis D8 nicht zuviel Saft aus dem lpt-port?

Was sagst Du zum Atmel? Lohnt sich das...

AlKI
11.08.2008, 17:18
Danke, aber ziehen die LED´s D1 bis D8 nicht zuviel Saft aus dem lpt-port?
Nein, nicht mehr als ohne sie gezogen würde. Du könntest statt denen auch 250Ohm-Widerstände einsetzen, die "verbraten" dann halt das bisschen Leistung, was so eben als Licht abgegeben wird.

die LEDs der Optokoppler benötigen ja etwa denselben Strom und dieselbe Spannung wie ne standart-LED. 1,7 bis 2,5V und ~20mA.

aus dem lpt kommen 5V und ziehbar sind afaik 25mA pro Pin.

ergo: 2 LEDs in Reihe und das ganze ist perfekt.
Praktischerweiße lässt du dir dabei auch die Signale anzeigen. Falls es also einen Fehler gibt, siehst du gleich, ob und wo das Problem zu suchen oder eben nicht zu suchen ist.


Bei mir läuft alles ohne Atmel einwandfrei, ich hätte zwar das Zeugs, einen zu Programmieren, aber dann kann man sich die L297 gleich sparen, die Datenverarbeitung kann man ja auch den Microcontroller machen lassen. und zwar für mehrere L298.

ManuelB
11.08.2008, 17:24
Man kann sich ja auch erstmal Demo oder gratis CNC Programme holen, die für Echzeitbetrieb ausgelegt sind. Wie Mach3 oder NCFRS oder wie sie alle heißen.

MfG
Manu

stepmaster
29.11.2008, 13:05
hallo leute habe mal eine frage da ich neu hier bin und ein wenig technikbegeistert bin

komme aber leider nicht weiter ich würde gerne mit der cnc software winpc-nc über meinen lpt port 2 oder 3 zwei phasen schrittmotoren ansteuern

die motoren sind aus 3 scannern von tevion und sollten mit 5 volt laufen laut datenblatt jeder motor hat 4 anschlüsse kann mir jemand mal sagen wie da die motoren an welche pins angeschlossen werden müssen damit die software damit arbeiten kann laut software heißt es man kann schrittmotoren im xy z betrieb ohne weitere steurkarte direkt mit dem parallelen port steuern


bitte um hilfe anschlußplan vom schrittmotor parallelen port wäre toll

ManuelB
29.11.2008, 16:39
Der direkte Anschluss an den LPT-Port geht nicht, dass schafft der Port vom Strom her nicht. Was bei Win-PCNC gemeint ist, ist dass kein extra Controller für den Echtzeitbetrieb notwendig ist. Für Win-PCNC werden Schrittmotorentreiber mit Takt-Richtungseingang, wie die L297/L298 oder ähnliche benötigt. Gibt auch noch einfachere vollintegrierte ICs wie IMT 901 bzw. der TA8435H von Toshiba.

MfG
Manu

stepmaster
29.11.2008, 18:21
der baustein TA8435H kann ich damit einen bipolaren schrittmotor ansteuern mit 4 anschlußkabeln
schaut euch doch mal diesen link an und sag mir ob ich damit und mit der software winpc-nc steuern bipolare schrittmotoren mit 4 kabel kann


http://miba.yweb.sk/Projects/XY_Positioner/schema-menic.jpg

stepmaster
29.11.2008, 19:02
ICH SUCHE IMMER NOCH EINEN SCHALTPLAN FÜR EINE 2 KANAL STEUERUNG MIT DER ICH MIR SELBST EINEN CONTROLLER ZUSAMMENBAUEN KANN DEN ICH DANN MIT DEM LPT PORT MEINES PC´S UND WINPC-NC BETREIBEN KANN

HAT JEMAND EINEN SCHALTPLAN MIT BEZEICHNUNGEN VON DEN PINS DES PORTS DEN WIEDERSTÄNDEN UND DEN KONDENSATORGRÖßEN

DANKE SCHON MAL IM VORRAUS


MFG MICHAEL

AlKI
29.11.2008, 20:27
Ruhig, ich hätte da was für 3 Bipolare Schrittmotoren:

https://www.roboternetz.de/phpBB2/download.php?id=13528
https://www.roboternetz.de/phpBB2/download.php?id=13613

Die beiden gehören zusammen, hab sie nur einzeln auf Platinen aufgebaut, da die gesamtschaltung nicht auf eine 160x100mm-Platine passt (und das Programm zum Schaltpläne zeichnen hat auch ne begrenzung). die ist eigentlich für ne CNC-Fräse konzipiert. kannst also die Relais und Klemmen für die unbenutzten lpt-Anschlüsse raus lassen.

Alternative für nur einen Schrittmotor:
http://e.imagehost.org/t/0523/SchrittmotorStrgUnipolar.jpg (http://e.imagehost.org/view/0523/SchrittmotorStrgUnipolar)

Weiss nur nicht, ob du den mit WIN-PCNC betreiben kannst, die sind beide Schritt-Richtung-gesteuert (oder Takt/Richtung, wie dus nennen willst). aber mit Turbocnc gehts. Und es gibt genug Programme, die mit der Ansteuerart arbeiten.


Schau mal in die CNC-Fräsen-Threads, da gibts einige Schaltpläne und Infos:
https://www.roboternetz.de/phpBB2/viewtopic.php?t=26187 (da ist auch die Erklärung von meiner Fräse, Material (auch Elektronik) auf der ersten Seite aufgelistet)