PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Ansteuerung, PWM, Frequenz und Stromverbrauch



Dr.Dread
05.08.2007, 17:01
Hi @all :)

1hdsquad und ich haben im Thread https://www.roboternetz.de/phpBB2/viewtopic.php?t=30961&postdays=0&postorder=asc&start=88 eine technische Frage, die evtl. von allg. Interesse ist.

Ich zitiere einfach mal 1hdsquad:

Folgender Gedanke: Wenn ein IC den L298 steuert, hängt die PWM-Frequenz doch nur vom Stromverbrauch der Motoren ab, oder nicht? Spannung kriegen sie immer ihre z.B. 36 Volt, das PWM sorgt dafür, dass der maximale Strom vom Treiber und vom Motor nicht überschritten wird. Von der Drehrichtung etc. wird das ganze nur indirekt durch den sich verändernden Strom beeinflusst. Stimmt das so? Denn dann könnte ein IC die Ströme aller Treiber überwachen und die PWMs regeln, während ein Anderer für die korrekten Drehungen, die automatischen Rampen, den sanften Auslauf und den ganzen Schnickschnack

Zitat ende.

Falls jemand einen Rat hat, wir nehmen ihn gerne ;)

Bis dahin,
Dr.Dread

Manf
05.08.2007, 17:43
Normalerweise ist die PWM-Frequenz konstant.

Die Pulsbreite gibt den wirksamen Spanungswert für die DC Motoren an.
Sie wirkt so etwa wie eine variable Gleichspannung zur Versorgung der Motoren. Abgesehen von den Verlusten gibt man durch die Spannung die Drehzahl vor.

Die Stromaufnahme der Motoren ist durch die Belastung der Motoren bei der wirksamen Spannung bestimmt, je größer das Lastmoment umso größer der Strom.
Manfred

1hdsquad
05.08.2007, 21:31
Okay, zu wenig nachgedacht, wie es konkret funktioniert. Ist ja klar, PulsWEITENmodulation ;-)
Aber kann ich diese Lösung trotz meines Gedankenfehlers wählen? Strommessung und PWM-Regelung in einem AVR und in einem anderen die Richtungssteuerungen etc... Die beeinflussen sich doch nicht direkt, dass der µC sie berücksichtigen müsste, oder? Oder reden wir aneinander vorbei?
MFG

Hubert.G
05.08.2007, 21:48
Also ich würde nicht zwei µC nehmen wenn es nicht Hardwareprobleme gibt. Die Kommunikation der beiden µC ist doch nur zusätzlicher Programmieraufwand und einen Fehlerquelle.

1hdsquad
05.08.2007, 21:58
Ha, ich rede von 5 Treibern! Das macht 5*8 = 40 Pins!!! Welcher AVR (kein SMD) Soll das können? Und davon noch 10 PWM und 10 ADC, nee, das ist schwierig ;-) Und zu den 40 kommt noch die Schnittstelle.
Aber was sagst du zu meiner Lösung? Habe ich mich verdacht oder geht das?
P.S.: Die Schaltung hat übrigens in jedem Fall mehr als 4 AVRs, ist also auch egal, einer mehr oder weniger...

Hubert.G
05.08.2007, 22:07
Wie kommst du auf 8Pin pro Treiber? Ich komme nur auf 4 und da ist PWM und ADC schon inbegriffen. Oder hast du da eine Spezialschaltung.

1hdsquad
05.08.2007, 22:11
Ist bei mir auch schon mit drin, aber ein L298 hat nunmal 2 PWM-Eingänge, 2 Sense-Ausgänge und vier weitere Pins für die Richtung des Steppers...

Hubert.G
06.08.2007, 08:26
Das sind aber pro L298 zwei Treiber, ich glaube wir reden da etwas aneinander vorbei.

1hdsquad
06.08.2007, 11:18
Okay, ich muss wohl doch etwas ausholen. Es sollen ja Stepper gesteuert werden. Vier Treiber steuern je einen Stepper, ein fünfter und sechster sind jeweils gebrückt, zählen also insgesamt nur als einer (jeweils nur halbe Pinanzahl). Die gebrückten Treiber steuern jeder einen DC-Motor...
Aber das alles ist egal, es geht nur um das Prinzip der Ansteuerung, egal ob für einen oder 100 Stepper, es bleibt ja gleich.

Manf
06.08.2007, 16:59
Bei Steppern ist es schon etwas anders, da wird wie sicher bereits vermutet, die Drehzahl durch die Schrittfrequenz gesteuert.

Der Strom der durch das Choppen geregelt wird, soll so gewählt werden, dass er das notwendige Moment aufbringen kann.
Manfred

Dr.Dread
06.08.2007, 17:07
Hi Manf,

erstmal schönen Dank, das Du Dich unserem Problem annimmst, aber es wäre hilfreich, wenn Du Deine Antwort bei dieser speziellen Frage niocht immer so allgemein halten würdest. ;)

Nix für ungut,
Dr.Dread

1hdsquad
06.08.2007, 17:10
Okay, dankeschön Manf. War das jetzt ein Ja zu meinem Gedanken oder ein Nein? Oder Jain? :oops:

Manf
06.08.2007, 17:40
Ich wollte nur erst einmal auf die Wirkungsweise von Motoren eingehen.
Bei Schrittmotoren ist es wohl am besten man sieht sich eine Drehmoment-Drehzahl Kennlinie an und überlegt sich ob das Moment bis zur gewünschten Frequnz ausreicht.

Die Ansteuerung soll mit L298erfolgen? Auch mit L297?

Bei 20kHz Chopperfrequenz sollte es schon eine erprobte Regelschaltung sein. Es ist sicher schwierig mehrere schnelle Regelungen mit Reaktionszeiten im unteren µs Bereich mit einem Prozessor zu realisieren.
Manfred


Strommessung und PWM-Regelung in einem AVR
Hier steht es ja, Messung und Regelung mit AVR.
Wie schnell reagiert der AVR wenn er einen Stromkreis regelt? Wie groß ist die Steigung des Stroms in U/L (Versorgungsspannung pro Wicklungsinduktivität), also beispielsweise wieviele mA/µs?

Wenn es bei 24V und 2mH dann 12mA/µs sind, dann ist der Strom 120mA zu groß wenn die Regelung 10µs später abschaltet. Das geht ja dann gerade noch. Verzögert er das Abschalten für 250µs dann geht es bei 3A Überstrom schon heißer zu.

1hdsquad
06.08.2007, 17:59
Die Schrittmotoren werden von L298 getrieben. Auf L297 wird verzichtet, weil die 2 AVRs, die ich nehmen will (1 für PWM, 1 für Drehzahl) weniger kosten und ich ICs spare. L297 (oder vergleichbare ICs) wollte ich auf keinen Fall nehmen. Ich orientiere mich an RN-Schrittmotor (http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=65&products_id=173), dort steuert ein AVR 2 Treiber.
Für das PWM und die dazugehörende Strommessung will ich einen AT90PWM3 nutzen, er verfügt über 10 ADC und 10 PWM. Die maximale Taktfrquenz liegt bei 16 MHZ. Da ein AVR entweder nicht genug Pins hat (auch wollte ich auf die fetten MEGA128-gehäusigen AVRs verzichten) oder nicht genug Features (ADC. PWM etc...) habe ich mir eben diese Möglichkeit überlegt. Der AT90PWM3 kümmert sich um das "Wohl" der Motoren und Treiber, während der andere die Drehungen regelt. Mit L297 würde ich eben mehr bezahlen, hätte mehr ICs und bedeutend weniger Funktionen wie Wicklungstests, automatische programmierbare Rampen, programmierbare Motorströme usw. Also nochmal: Ist es so möglich? Wie ein Stepper funktioniert ist mir wohl klar... ;-)

Manf
06.08.2007, 18:06
Unmöglich ist es nicht, der Controller sollte sich aber schon auf die Aufgabe konzentrieren.
Ich habe oben das Beispiel noch ein wenig ausgeführt.
Zeiten von 10µs sollten in jedem Fall mit dem AVR sichergestellt werden können.
Manfred

1hdsquad
06.08.2007, 18:20
Okay, dann ist mir für den Schaltplan schon geholfen, danke. Der L298 hält für 100µs auch 1 Ampere mehr aus, wird schon klappen.
MFG