26.01.2021 10:10 | |
Beigetreten: 10.10.2005 Letzter Bes: 18.10.2024 Beiträge: 1921 Bewertung: (136) |
Hallo Zottel so richtig verstanden habe ich das Problem noch nicht. Welche STEP 7 (TIA Portal) Version haben Sie? Zu dem FB "LRailCtrl_MC_TorqueLimiting" gibt es ein Beispiel zur Parametrieung und Anwendung. Dies ist in dem Anwendungsbeispiel " SIMATIC S7-1500T: Ansteuerung eines Multi-Carrier-Systems" im Siemens Internet beschrieben. Anbei der Link: Vielleicht hilft Ihnen das Anwendungsbeispiel ein wenig weiter. Mit freundlichem GrußCicero |
26.01.2021 20:27 | |
Beigetreten: 24.10.2016 Letzter Bes: 12.10.2021 Beiträge: 55 Bewertung: (0) |
Ich habe gerade mal getraced und hoffe a), dass er die Bilder korrekt darstellt und b), dass man so besser versteht, was ich meine. Die folgende Abbildung zeigt die exemplarische Drehzahlrampe des GX200, die beabsichtigt ist: Bild-Link: [snip](hoffentlich dargestellte breite Abbildung - Scrollen nach rechts mit mittlerer Maus) n2, also der neuere Drehzahl-Momentanwert, ist blau. n1, also der Vorgängerwert ist grün. Der Servo fährt die "jump start"-Rampe um den GX200 zu starten - Starthilfe zu geben. Diese Rampe beschleunigt in 1 [s] auf 1500 [rpm]. Dann läuft der Motor kurz im Leerlauf (der GX200) und treibt dabei den Servo an, dessen Moment nach der 1 [s] Beschleunigung auf 0 [Nm] herunter gesprungen ist. Der Servo übt so kein Gegenmoment auf den GX200 aus und kann mitgetrieben werden. Bei ca. t = 3,5 [s] betätige ich den Gashahn am GX200 und die Drehzahl läuft von 1500 [rpm] idle speed auf ca. 4800 [rpm] max GX200-speed. Am Maxpunkt lasse ich den Gashahn schlagartig los und der GX200 tourt durch die wirkenden Widerstände zügig herunter zurück auf Leerlauf drehzahl. Ziel ist es nun mit guter Zeitauflösung den Differenzenquotient der Drehzahl zu bilden, so alpha zu erhalten und damit dann während der Beschleunigung von 1500 [rpm] auf 4800 [rpm] ein aus alpha resultierendes Gegenmoment zu erzeugen - durch den Servo. Das würde simulieren, dass der GX200 seine translatorische Masse vor sich herschiebt - also eine Fahrt unter etwas mehr Last, als den GX200 nur so drehen zu lassen. Das Problem ist, dass der Differenzenquotient nicht nur hin un her springt, sondern teilweise auch mittendrin die richtung ändert (positiv und negativ). Mit M_w = J * alpha, wobei ich J z. B. auf 3 [kgm²] setzen möchte, kann ich das voll vergessen. Bildlink: [snip] (hoffentlich dargestellte breite Abbildung - Scrollen nach rechts mit mittlerer Maus) Das sehen wir in dieser Abbildung. Die Beschleunigung aus dem Differenzen-Qoutient ist die rote Kennlinie. Zusammen mit der Drehzahl in einem DIagramm sieht das dann so aus: Bildlink: [snip] (hoffentlich dargestellte breite Abbildung - Scrollen nach rechts mit mittlerer Maus) Absolut nicht zu gebrauchen.Man darf nicht vergessen, bei jedem Vorzeichenwechsel würde der Servo einmal treiben, einmal bremsen wollen. Es kommt zu Momentschlägen, die der berechneten Winkelbeschleunigung folgen. Na klar! werden jetzt einige denken, das ist eben das PRoblem der diskreten Abtastwerte, bilde den Mittelwert oder den Median, aaaaabbbber ... ich kann nicht großartig mehrere Werte zu einem zusammenfassen, das führt - bzw. würde - stets dazu, dass dann das berechnete Gegenmoment einer falschen IST-Drehzahl auferlegt wird.Beispielsweise wird ein alpha-Mittelwert aus den letzten 3 Werten gebildet, dann liegt das daraus resultierende Drehmomentbei der neusten Momentandrtehzahl an. Da aber durch den Median, das alpha geglättet und geringer / höher ist als der reale Momentanwert wäre, wird ein nicht korrektes, ein falsches Gegenmoment bei der kürzlichsten ISTdrehzahl erzeugt. Nämlich eines, was theoretisch bei einer etwas niedrigeren Drehzahl greifen würde, die real ohne Mittelwert genau das berechnete alpha-Ergebnis erzeugt hätte. Ich habe jetzt versucht, das mit Fallunterscheidungen zu arbeiten, so nach dem Motto, das berechnete Momentan-Drehmoment M = J*alpha wird nur erzeugt, wenn die Drehzahl geringer als -1700 [rpm] ist, damit will ich realisieren, dass ich hoffentlich nicht in dem schwankenden alpha-Bereich bin, wie er bei Leerlaufdrehzahl zu erkennen ist. Dort alternieren die alphas zwischen +180 [rad/s²] und -240 [rad/s²] (vgl. Abb.). Weitere sage ich z. B. bilde das Moment nur, wenn alpha < -50 [rad/s³] ist, damit will ich auch ein bisschen abfangen, dass zu geringe alphas schon zur Momentbildung führen, obwohl da noch gar keine Beschleunigung anliegt. Die Frage ist / bleibt, wie würdet ihr so ein Problem lösen, wo man eigentlich gern Kurvendiskussion und kontinuierliche Funktionen hätte? Hat jemand schon mal versucht die Werte für MC_TorqueLimitting drehzahlabhängig zu aktualisieren? Edit 1: natürlich klappt es wieder nicht mit den Bildern. Eines zeigte das Forum an, die anderen beiden nicht. =( Also dumme Links hinzugefügt und auf 'ner Bilderschmiede hochgeladen .. Sorry DateianhangScreenshots.zip (351 Downloads) |
Zuletzt bearbeitet von: Zottel86 am: 01/26/2021 20:53:48Zuletzt bearbeitet von: Jen_Moderator am: 01/27/2021 07:39:15Links entfernt und als Anhang hinzugefügt. |
|
Folgen Sie uns auf