PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : L297/298 > Ctrl und Vref



aml.byst.10
30.03.2009, 09:19
Guten Tag

ich bin auf der Suche nach Hilfe zum L297-Controller auf diese Seite gestossen.

Ich baue eine X-Y-(Z)-Graviermaschiene, Angesteuert durch die L297/8-Steuerung, mit welcher ich als Einstieg schon einmal auf eine simple Weise 2 Steppermotoren angesteuert habe.

Doch jetzt muss ich das ganze etwas "professioneller" machen, bin jedoch bei den Eingängen Ctrl und Vref gescheitert.



Frage 1:
Ich muss bei den Motoren im Halte-Moment den Strom absenken können (Wärmeentwicklung). Wie stelle ich das an?
Enable=HIGH
CLK=HIGH
Vref=I(Motorenstrom pro Wicklung[1A]) * R(Sense-Widerstand[0R5] bei mir [1R])

Frage 2:
Wie kann ich Drehmoment & Geschwindigkeit der Motoren erhöhen? Ich weis nicht ob ich CTRL Low oder High schalten muss!?
Kann ich nun bei Umotor=12V Vss=24-32Volt speisen?


Der Rest der Schaltung habe ich Verstanden. Ich hab mich noch nicht für einen Motor entschieden [Bipolar] weil ich zuerst die offenen Fragen klären muss, daher die fehlenden angaben. Alles andere könnte ich noch liefern.

Vielen Dank im Voraus.

Lukas

hardware.bas
30.03.2009, 13:07
Soweit mir bekannt ist, ist der Ruhepegel an den CLK-Eingängen
nicht entscheidend, sondern es wird eine Flanke (welche weiss ich
leider nicht) zum Schalten genutzt. Die weitere Impulsaufarbeitung
macht dann der L297 intern. Wenn die Vref im Haltemoment vermindert
wird, kann der Haltestrom abgesenkt werden. Wo man das Steuersignal
dafür hernimmt, ist mir z.Zt. auch noch nicht klar. Entweder lieferts
die Software oder man leitet es aus den CLK- Signalen mit
einemm schnellen Monoflop ab. Bin selber für derartige Infos
dankbar. VG Micha

BurningBen
30.03.2009, 17:30
Motorstrom absenken:

Du musst mit nem Transistor einen Widerstand parallel zur restlichen Referenzspannungserzeugung schalten. Wenn du dann den Transistor öffnest, wird die Referenzspannung auf einen Wert vermindert, was auch den Motorstrom absenkt.

Die Ansteuerung kannst du zB mit nem 4538 machen.

Control würde ich auf HIGH setzen. Das hat aber nicht direkt was mit der Geschwindigkeit und dem Drehmoment zu tun.

Um die Geschwindigkeit zu erhöhen, musst du eine höhere Versorgungsspannung anlegen.
Um das Drehmoment zu erhöhen, musst du den Motorstrom erhöhen. (Maximalwerte beachten)


Kann ich nun bei Umotor=12V Vss=24-32Volt speisen?

Wenn du den richtigen Motorstrom einstellst, ja.

aml.byst.10
30.03.2009, 18:31
Kann ich nun bei Umotor=12V Vss=24-32Volt speisen?

Wenn du den richtigen Motorstrom einstellst, ja.

Ich hab oben die Formel vermerkt:
Vref=I(Motorenstrom pro Wicklung[1A]) * R(Sense-Widerstand [1R])

1) Ist das richtig?
2) Wie wirken die Sense Widerstände? Es stand: "Wenn die Vref an Rsens erreicht wurde sperrt einer der Transistoren. Ist das die Interne Pulsweitenmodulation?


gruss luk

Gock
30.03.2009, 19:08
Motorstrom absenken:
Du musst mit nem Transistor einen Widerstand parallel zur restlichen Referenzspannungserzeugung schalten. Wenn du dann den Transistor öffnest, wird die Referenzspannung auf einen Wert vermindert, was auch den Motorstrom absenkt.
Ein Widerstand parallel zu den Senswiderständen würde die Spannung an Vref und damit den Gesamtwiderstand senken. Das bedeutet HÖHEREN Motorstrom!
Du musst stattdessen die Spannung an den Senseeingängen bei gleichem Strom erhöhen, zB, indem Du die Senswiderstände erhöhst. Das könntest Du mit einem Transistor in Reihe oder aber mit zwei Gruppen von Senswiderständen, von denen Du eine zu- bzw anschalten kannst.


Um die Geschwindigkeit zu erhöhen, musst du eine höhere Versorgungsspannung anlegen.
???
Um die Geschwindigkeit zu erhöhen musst Du die Taktfrequenz erhöhen.
Die Versorgungsspannung für den Motor kann und soll höher sein, als dessen Nennspannung.
Ja, das Ohmsche Gesetz ist richtig... Widerstände wirken mit U = R x I, und ja, das ist die interne PWM. U ist konstant, R legst Du fest und I stellt sich ein. Hohes R -> kleines I u.u.
Gruß

aml.byst.10
30.03.2009, 19:21
Motorstrom absenken:
Du musst mit nem Transistor einen Widerstand parallel zur restlichen Referenzspannungserzeugung schalten. Wenn du dann den Transistor öffnest, wird die Referenzspannung auf einen Wert vermindert, was auch den Motorstrom absenkt.
Ein Widerstand parallel zu den Senswiderständen würde die Spannung an Vref und damit den Gesamtwiderstand senken. Das bedeutet HÖHEREN Motorstrom!
Du musst stattdessen die Spannung an den Senseeingängen bei gleichem Strom erhöhen, zB, indem Du die Senswiderstände erhöhst. Das könntest Du mit einem Transistor in Reihe oder aber mit zwei Gruppen von Senswiderständen, von denen Du eine zu- bzw anschalten kannst.


Vielen Dank, das könnte ich auch machen.
Ich nehme an dass BurningBen nicht einen Parallel-R zu den Sense-R gemeint hat sondern Parallel zu den R beim Eingang vom L297.

Und zur 2. Frage

Ich hab mich falsch Ausgedrückt. Mit Geschwindigkeit meine ich nicht die Umdrehungsgeschwindigkeit sondern wie man die maximalen Schritte pro Sekunde(oder Minute, wie auch immer) erhöhen kann.
Ich habe im Forum gelesen, dass sich ziemlich viele User damit rumschlagen.
Bsp.: Ich schneide mit meiner Graviermaschine das Wort HALLO. In meiner Software kann ich die Frequenz beliebig wählen, jedoch fangen die Motoren bei mehr als 120mm/min an zu pfeifen.
(1mm=200Schritte | 200Schritte=360grad)

lg lukas

MarsoTexx
30.03.2009, 20:18
Hast du schon ein komplettes Schaltplan?
Es gibt verschidenen Sachen womit du rechnung halten must.

1) Control Eingang:
Mit diesem entscheidest du ob das Chopper uber die 4 ABCD Lines laufen
oder uber die 2 Enable-Lines (auch INH-Lines genant).
Ich wende L297 in Kombination mit 'ne L298 an.

2) Geschwindigkeit geht, wie Gock schon gesagt hat.

Drehmoment ist direct abhangin von Strom-Starke. Nach ein 'Takt' wird ein Spull bekraftigt. Die Strom geht hoch. Die Motor-Spannung must nicht zu niedrich sein, sonst gibst nicht viel Kraft und dauert zu Lange wann der
Spulle Volle strom kriegt und 'Voll' ist Zeit ist zwischen 2 'Takten'.
Bei niderige Frequnaz bemerkt man das gut. Mit Chopper gibt es in ein
'Takt' mehere kleinere Pulsen. Und bei jeden 'Puls' wird de Spul bekraftigt.
Zo bleibt den Strom/Drehmoment wahrend ein Takt 'behalten'.

Was ich selbst verwenden ist:
Strombegrenzung direct am L298 zu Enable-Lines mittels ein Opamp und wenig extra bauteilen.
Von L297 wende ich kein Sens-Eingang an!

Wenn du L298 anwendeest kann ich Schalplan posten und erklaren.

MarsoTexx
30.03.2009, 20:21
'schuldigung': sehe gerade wendest L297 und 9 an....

BurningBen
30.03.2009, 20:33
Ich muss mich entschuldigen. Ich habe mich oben etwas undeutlich ausgedrückt.
Deshalb poste ich hier gleich mal nen Schaltplan, wie ich das meine.
EDIT: Hier ist er:
http://www.burning-world.de/grafik/elektronik/stromabsenkung.png
Wenn der Transistor schaltet, wird Vref kleiner. (Im Schaltplan ist der erstbeste Transistor)

Bezüglich der Geschwindigkeit:
Natürlich kann man die Geschwindigkeit mit der Taktfrequenz erhöhen. Aber nur bis zu einer Grenze. Und will man diese Grenze anheben, dann braucht man mehr Spannung

Gock
30.03.2009, 21:57
@BurningBen
Achso, ja... Referenzspannungserzeugung hätt' ich auch jetzt nicht mit Sensespannung in einen Topf schmeißen müssen.
Dann stimme ich natürlich in beiden Fällen zu.
Gruß

aml.byst.10
31.03.2009, 13:50
Tag

Besten Dank für eure Hilfe. Nun noch eine Frage zu Vref:

Vref=I(Motorenstrom pro Wicklung[1A]) * R(Sense-Widerstand [1R])

Wenn ich das nun so einstelle, ist das der maximal zulässige Strom der nun fliesst?

BurningBen
31.03.2009, 15:01
Ja, das stimmt so.
U=R * I

ManuelB
31.03.2009, 22:15
Bitte noch bedenken, dass Vref nach dem Datenblatt des L297 aber max. 3V betragen darf.
Ansonsten kann ich noch als Gedankenstütze für die Referenzspannungserzeugung verweisen auf:
http://www.nc-step.de/pdf/3dstep_doku_27.pdf
oder:
http://www.einfach-cnc.de/download/index.php?Steuerung/Schaltplaene/Schaltplaene.zip
wobei letzteres mit den L6203 als Brücken arbeitet.
Die Widerstände für die Referenzspannungserzeugung müssen natürlich bei Verwendung anderer Sense-Widerstände angepasst werden.

MfG
Manu

Tomizz
01.04.2009, 10:48
Hi,

zur Absenkung des Motorstromes über Verringerung von Vref hatte ich mal folgende Schaltung gefunden:

http://www.freenet-homepage.de/tomizz/Pics/vref2.gif

Würde das so funktionieren? Ich kenne mich mit Transistoren nicht so gut aus. Vom Microcontroller würde ein einfaches 5V-Signal kommen. Könnte man auch einen MOSFET-Transistor nehmen (z. B. BS170)? Wie würde die Schaltung dann aussehen?

Tomizz

aml.byst.10
01.04.2009, 12:16
ha würde auch funktionieren, hab die schaltung nun nach dem "spannungsteiler" prinzip aufgebaut. gibt mir zwar ein bisschen mehr zu rechnen wie ich nun erkenne, aber sollte auch funktionieren :D mfg

BurningBen
01.04.2009, 15:55
Viel zu rechnen gibts, wenn du ne Sleepabsenkung, Boostanhebung, und ne Halbschrittstromanhebung haben willst.^^

Solltest du da interesse haben, kann ich dir nen fertig berechneten Schaltplan schicken.

hardware.bas
04.04.2009, 19:18
Das mit der Sleepschaltung bzw. Stromabsenkung in Arbeitspausen
würde mich auch interessieren. Beim ersten Clocksignal müsste dann
jedoch wieder volle Leistung da sein. Ich rätsele zur Zeit auch daran,
dieses Problem zu lösen, hab schon an schnelle nachtiggerbare Monoflops
gedacht, aber warum soll man das Rad nochmal erfinden, bin gespannt.
VG Micha

BurningBen
04.04.2009, 19:32
Hier ist ein Schaltplan, für eine Schrittmotorsteuerung mit einem L297 und zwei L6203. (Für L298 siehts ziemlich ähnlich aus)
http://www.burning-world.de/fotos/cnc/l6203-einkanal.png

Rechts oben ist die Erzeugung des Sleep und Boostsignals.
Links unten wird Vref erzeugt.

Verwendet wird dazu ein 74HC4538
(retriggerbarer monoflop)

Auch eine Halbschrittanhebung ist zu sehen.

(Entworfen mit Hilfe von "CNC-Fräsen im Modellbau" von C. Selig)

hardware.bas
04.04.2009, 23:13
Burning Ben: GENIAL... also auch mit Monoflop, dann werd ich wohl
diese Schaltung in mein L297/L298 System integrieren. Vielen Dank und
viele Grüße, Micha

BurningBen
05.04.2009, 18:14
Ich habe sie bisher noch nicht aufgebaut, da ich momentan treibermäßig ausgestattet bin, kannst du mal rückmeldung geben, wenn du die benutzt?

Bei den eingezeichneten Widerständen sind folgende Referenzspannungen eingestellt:
(alles ca.)
Boost (erster Schritt nach Sleep) 130%
Normal (nur eine Spule aktiv) 100%
Normal + Halbschrittabsenkung: 70%
Sleep 35%

Durch die Boostfunktion braucht man normalerweise nicht so viel Strom.
Max. 1,5A normalstrom einstellen beim L298! (dann bleibt auch Boost bei rund 2A)

aml.byst.10
06.04.2009, 13:03
hey.

was ich nicht ganz verstehe, was genau passiert bei derner Boost/Sleep erzeugung? wann wird boost und sleep aktiviert?

in meinem fall kann ich das weglassen weil mir die software diesen teil abnimmt.

mich interessiert deine schaltung jedoch sehr :D kann ich später mal gut brauchen. gruss

hardware.bas
06.04.2009, 14:55
BurningBen: Das mit den SLEEP ist mir klar, wie gesagt, lange danach
gesucht. Wozu braucht man aber BOOST? Wenn die Motoren laufen,
wird da nicht eh der volle Strom gebraucht. Wozu also ein noch höherer?
Übersehe ich was? Vielen Dank für die Info. VG Micha

BurningBen
06.04.2009, 15:49
also standardmäßig ist weder Sleep noch Boost aktiv.
Da kann man die Motoren mit ca. 70% Der maximalen Stromstärke betreiben. (Das sollte meistens reichen).

Wenn nun nix mehr bewegt wird, wird das Sleepsignal High, und durch den neuen Widerstand wird die Referenzspannung auf ca. 1/3 abgesenkt.

Und wenn jetzt Sleep durch den ersten Taktimpuls wieder deaktiviert wird, geht Boost an, um sicherzustellen, dass der Motor wirklich anläuft.


Durch Boost wird also sichergestellt, dass der Motor besser anläuft, und man im Normalbetrieb etwas weniger Strom durch die Phasen jagen muss.
Ist also nicht nötig, wenn man den Motor auch normal am Limit betreibt. (Dafür hab ich den Jumper vorgesehen)

hardware.bas
06.04.2009, 16:47
Danke für die Info.... also BOOST ist sozusagen eine Anlaufhilfe. Ich denke
mal, ich werds nicht brauchen, da ich eine starke Untersetzung durch den
Antrieb mit Gewindestangen habe. Ich will bloss erstmal alles hardware-
mässig und mechanisch total fertig haben, da es mir immer noch nicht
gelungen ist, eine funktionsfähige rässoftware zu finden. VG Micha

BurningBen
06.04.2009, 17:04
wie wärs mit EMC?

hardware.bas
06.04.2009, 17:16
Hab leider kein Linux. Und habe hier schon fast alles probiert. Diverse
Fräsprogramme lasasen sich nicht installieren und NC-FRS funktionirt nach
Installation nicht. Das ganze System ist bei mir hard- und softwaremässig
fast fertig und funktioniert mittels Einspeisung von einem Taktgeber auch
einwandfrei. Viele Mitglieder wollten mir hier auch schon helfen, aber
CNC leider Pustekuchen, keine Chance! VG Micha

BurningBen
06.04.2009, 18:06
Es gibt ne LiveCD mit EMC und Ubuntu-Linux drauf.
Lässt sich sehr leicht verwenden, und wenn es dir gefällt installierst dus einfach. (Geht auch parallel zu Windows)
http://www.linuxcnc.org/

hardware.bas
06.04.2009, 18:14
Keine Ahnung, was der Link darstellt... Trotzdem vielen Dank. VG Micha

BurningBen
06.04.2009, 18:59
Da gibts besagte LiveCD als Download :)

hardware.bas
06.04.2009, 19:04
Ist mir schon klar, war ja auch drauf. Blicke bloss nicht im Geringsten
durch. VG Micha

BurningBen
06.04.2009, 19:20
kommst du mit der Seite nicht klar, oder mit emc selber?
wenns die seite ist, hier wäre der downloadlink der iso:
http://www.linuxcnc.org/iso/emc2.2.2-1-ubuntu6.06-desktop-i386.iso
die musst du auf ne CD brennen, dann PC neustarten, CD einlegen, und von CD booten.

hardware.bas
06.04.2009, 19:45
Danke für den Link. Lade gerade runter. Ist das jetzt EMC oder/und
Linux? Verdaut das auch ein WIN98-Rechner? Na mal sehen, probieren
kann ichs zur Zeit eh nur an dem Letzteren. Ich brauchs lediglich zum
Platinenfräsen. Vielen Dank und Viele Grüße, Micha

BurningBen
06.04.2009, 19:54
das ist sowohl linux als auch emc2

Von den Anforderungen sollte das auch ein Win98-Rechner packen.
musst nur mit dem latenztest die maximale schrittfrequenz rausfinden.

hardware.bas
07.04.2009, 11:26
BurningBen, nochmals vielen Dank. Leider funktioniert auch das nicht.
Ausser einem Startbildschirm, welcher kurz angezeigt wird, passiert nix.
Habe jetzt quasi alles durchprobiert, auf mehreren Rechnern, ausser
NC-FRC, welches nur Unsinn ausspuckt, liess sich nix installieren. Das wirds
wohl dann mit der Fräse, welche mechanisch und elektronisch funktioniert,
gewesen sein. Naja, kein Thema für diesen Tread. VG Micha

BurningBen
07.04.2009, 14:22
Was ist denn das für ein Startbildschirm?
Nur so ein kleiner in der Mitte vom Bildschirm?

hardware.bas
07.04.2009, 14:40
"UBUNTU" und dann wars das. VG Micha