-         
+ Antworten
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Schrittverluste

  1. #1
    tacitus
    Gast

    Schrittverluste

    Hallo zusammen ...

    bin neu hier, mal sehen, ob ihr mir helfen könnt ....

    Ich betreibe hier zwei Schrittmotoren über jeweils einen Treiberbaustein der Firma Allegro ( A3977 ). Das PWM Signal
    wird über ein MPC823 Timerbaustein generiert. Jeweils ein Timer hängt an einem Interrupt der das PWM
    Signal erzeugt und via FPGA an den A3977 übergibt.
    Auf dem MPC823 laufen jedoch noch weitere Dinge ( Tasks, DMA-Stuff, LCD-Stuff ... ), sodass das PWM Signal
    nicht equdistant ist, das heisst, die Frequenz variiert. Je höher die Frequenz desto höher die Variation.

    Frage: Kann dies ein Grund für ( meine real existierenden jedoch zur Zeit unerklärlichen ) Schrittverluste sein oder ist der Motor prinzipiell zu träge um solche Schwankungen im PWM Signal überhaupt zu "bemerken"

    Vielen dank im voraus ...

  2. #2
    Super-Moderator Lebende Robotik Legende Avatar von Manf
    Registriert seit
    30.01.2004
    Ort
    München
    Alter
    63
    Beiträge
    12.203
    Das PWM Signal ist moduliert und führt eine Spannung an den Motor, die entsprechend des Tastverhältnisses wirksam wird.
    Das kann in einer Regelschleife sein, die den Strom konstant hält, oder ungeregelt, einfach nur, um die wirksame Spannung herabzusetzen.

    Dann gibt es noch die Schrittsteuerung, die die Phasen für die Motorstellungen erzeugt. Die sollte natürlich auch möglichst gleichmäßig sein, um keine Zitterbewegung vorzugeben.

    Wie sieht die Steuerung denn aus und wie hoch sind denn die PWM- und die Schrittfrequenz? (ungefähr)
    Manfred

  3. #3
    Gast
    So wie ich die Spec verstehe liegt eine Strom-Regel vor, see ...

    http://www.allegromicro.com/sf/3977/

    und ich fahre hier den X-Motor mit ca. 500Hz und den Y-Motor mit etwa 300 HZ im Vollstepmode ( Mode 4). Unterschiedliche Freq. aufgrund von unterschiedlichen Lasten

    ciao

  4. #4
    Super-Moderator Lebende Robotik Legende Avatar von Manf
    Registriert seit
    30.01.2004
    Ort
    München
    Alter
    63
    Beiträge
    12.203
    Ich nehme an, daß der Baustein seine PWM Frequenz selbst generiert und hier von der Gleichmäßigkeit der Schrittfrequenz die Rede ist.

    Dann sind Einflußgrößen die Ungleichmäßigkeit der mechnischen Last, die Höhe des Stromes, die Schrittfrequenz und die Gleichmäßigkeit der Schrittfrequenz. Am sicherten wäre es, wenn die mechnische Last gleichmäßig ist, den Schrittverlust sicher zu reproduzieren und danach wenn möglich die Schrittfrequenz um eine Sicherheitsabstand zu reduzieren.
    Das Motorendiagramm könnte helfen den Sicherheitsabstand des Momentes in eine Schrittfrequezabsenkung umzurechnen.
    Geht das in Richtung einer Antwort?
    Manfred

  5. #5
    Gast
    Hallo Manfred

    danke erstmal ....

    Nein, dass PWM Signal wird von mir selbst ( im Interrupt des MPC823 ) erzeugt und via FPGA an den Treiberbaustein gelegt.
    Du verwendest den Begriff Schrittfrequenz der mir unklar ist ... ich habe hier ein PWM Signal mit einer Frequenz von z.B. 500Hz, das sollte doch genügen ... was für eine Schrittfrequenz meinst Du ?
    Mein Problem ist es, das ich die Frequenz des PWM Signales nicht äquidistant hinbekomme, ich also eine PWM Frequenz von vielleicht 500HZ +/- 20Hz habe und ich mir nicht sicher bin, ob das meine Schrittverluste verursacht. Mit den unterschiedlichen Motorbelastungen muss ich leben, die sind von besser bezahlten ( höheren ) Wesen als gegeben definiert

    gruss
    mark

  6. #6
    Gast
    und ich fahre hier den X-Motor mit ca. 500Hz und den Y-Motor mit etwa 300 HZ im Vollstepmode ( Mode 4). Unterschiedliche Freq. aufgrund von unterschiedlichen Lasten
    Wenn die Schritte des Motors so schnell sind wie die PWM, die beispielsweise auch wie ein Schaltnetzteil mit 20kHz geschaltet werden könnte, dann haben wir ein Problem.
    Die PWM schaltet die Spannung ein und aus weil ein zu viel ist und aus zu wenig, der Mittelwert wird wirksam. Wenn das solange dauert wie die Schritte dann können in den Ausschalt-Pausen ganze Schritte verloren gehen.
    Manfred

  7. #7
    Gast
    Hallo Manfred
    Den Allegro Treiber kann ich in vier Modi betreiben Vollstep, 1/2, 1/4, und 1/8 Step wobei ein Step 1.8 Grad entspricht.... Schrittfrequenz nun auch klar. Im Vollstep entspricht die Schrittfrequenz also der PWM Frequenz.
    Das mit dem Mittelwert ist auch meine Befürchtung, SV wären die logische Folge

    mark

  8. #8
    Super-Moderator Lebende Robotik Legende Avatar von Manf
    Registriert seit
    30.01.2004
    Ort
    München
    Alter
    63
    Beiträge
    12.203
    Es ist hoffentlich klar, daß die Schrittfrequenz der PWM Frequenz nicht entsprechen darf. Die PWM sollte einen guten Sicherheitsabstand nach oben haben Faktor 10 (?) minimal, denn dann erhält man ja immer noch einen Jitter der Sollschrittfrequenz.

    Das mit dem Mittelwert ist ja keine Befürchtung sondern eine Art die Spannung zu regeln (auf konstanten Strom innerhalb des Schrittes). Dabei wird die induzierte Spannung des Motors und die Wickungsinduktivität so gut es geht ausgeregelt.

    So genau habe ich mir den Treiber nicht angesehen, aber warum sollte er nicht mit PWM 10kHz laufen?
    Manfred

  9. #9
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    11.05.2004
    Ort
    München
    Alter
    47
    Beiträge
    444
    Es gibt bei Schrittmotoren durchaus einige unangenehme Effekte, die sich nicht so leicht greifen lassen.

    z.B. Resonanzen. Abhängig von der Last, wie hart die angekoppelt ist, welches Trägheitsmoment das gesamte System aufweist, läuft der Schrittmotor ja nicht konstant durch, sondern schwingt sich gerade bei niedrigeren Frequenzen immer wieder auf eine neue Position=Schritt ein. Es wäre jetz übertieben zu sagen, daß er bei jedem Schritt kurz stehenbleibt, aber der Effekt ist da. Und nun kommt es darauf an, ob der nächste Schritt gerade nach einem Überschwinger oder genau beim Zurückschwingen kommt. So kann es beim Durchlaufen einer Rampe schon weit vor der Grenzfrequenz, an der die Induktivität den Strom und damit das Drehmoment begrenzt, zu einem oder mehreren kritischen Bereichen kommen. Auch bei einem nackten Motor ohne Last. Das heißt, Last unterdimensionieren oder Motor überdimensionieren muß nicht zwingend helfen. Oft bringt einen aber schlicht der Wechsel eines Parameters zufällig aus dem kritischen Bereich heraus.

    Frequenzjitter macht sich sehr schlecht, wenn Du zufällig IN einem der kritischen Bereiche bist.

    Wenn man sich durch Mikroschritt einer sinusförmigen Ansteuerung annähert, müßten die Resonanzeffekte weniger werden.

    Bist Du aktuell bei Vollschritt, 1/2, 1/4, 1/8? Ich dachte die Allegro Treiber gehen sogar bis 64tel... Nachdem Du von der Frequenzgenerierung erst bei 500Hz bist, wirst Du den Motor eher noch nicht mit Mikroschritten betreiben.

    Grundsätzlich wäre besser: höhere Grundfrequenz und Mikroschritte. Wenn bei der Frequenzerzeugung Deiner Wahl der Jitter aber dann noch größer wird, hast Du nichts gewonnen.

    Effekte bei der Stromregelung im Allegro: Glaube ich eher nicht. Habe ich es denn richtig verstanden, daß die Ansteuerfrequenz für die Schritte 500Hz ist?

    Jetzt werden Vermutungen über eine Art Aliasing/Undersampling/Quantelung des eingebrachten Strom-Mittelwerts angestellt, wenn z.B. die interne PWM-Frequenz des Allegro zur Stromregelung 10kHz wäre.
    So genau kenne ich mich zwar auch nicht aus. Ich glaube aber, daß der Strom über eine Chopperschaltung (Zweipunktregelung mit nicht festgelegter, aber bestimmt ziemlich schneller Frequenz) geregelt wird. Schließlich wird der Baustein mit (Halb-)Schrittfrequenzen bis zu 6kHz betrieben, da wären 10kHz als feste PWM-Frequenz tatsächlich undenkbar. 500Hz Ansteuerfrequenz müßten jedenfalls noch weit von solchen Effekten weg sein. Das einzige, das den Strom wirklich begrenzt, ist eigentlich fast immer die Induktivität des Motors im Zusammenspiel mit der Leerlaufspannung der Ansteuerung.

  10. #10
    Super-Moderator Lebende Robotik Legende Avatar von Manf
    Registriert seit
    30.01.2004
    Ort
    München
    Alter
    63
    Beiträge
    12.203
    Das einzige, das den Strom wirklich begrenzt, ist eigentlich fast immer die Induktivität des Motors im Zusammenspiel mit der Leerlaufspannung der Ansteuerung
    Die Ansteuerspannung wird noch um die induzierte Spannung verringert. Die Differenz wirkt dann auf die Induktivität und den ohmschen Widerstand der Spule.
    Manfred

+ Antworten
Seite 1 von 2 12 LetzteLetzte

Benutzer, die dieses Thema gelesen haben: 0

Derzeit gibt es keine Benutzer zum Anzeigen.

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •