25.01.2021 22:07 | |
Beigetreten: 24.10.2016 Letzter Bes: 12.10.2021 Beiträge: 55 Bewertung:
|
Hi Leute, ich hab 'mal wieder eine Frage. Ich sitze immernoch an meiner Masterarbeit ( "Automobil"-Prüfstand für kleine Fahrzeuge wie Gokarts). Es ist kaum noch Zeit und so richtig krieg ich es immernoch nicht hin, alles umzusetzen, was mindestens laufen muss. Aktuelles Problem: Im Rahmen von Analysen und Testmessungen bin ich gerade dabei die Motorkennlinie vom GX200 Honda Kleinmotor zu "ermitteln". Dazu nutze ich folgenden Aufbau: (ACHTUNG: breites Bild -> nach rechts scrollen (mittlere Maustaste)) Abb. 1: Aufbau zum Vermessen des Gokartmotors (Honda GX200) An der Stelle, wo mein E-Strang in den GX200 reinragt, sitz normalerweise das Anzugsseil (stino Wald und Wiesen Rasenmähermotor). Um das Problem zu lösen, habe ich eine Rampe für den Servo programmiert, die in einer Sekunde auf Leerlaufdrehzahl des GX200 mit 10 Nm TorqueLimit dreht und dann spingt das Torquelimit auf 0 Nm. Ist die GX200 Zündung eingeschaltet, so ist das im Grunde eine Starthilfe und ab da hält der Motor sich selbst in Leerlaufdrehzahl, und treibt die ganzen Servo-Motorkomponenten. Durch Trapezrampen habe ich im Vorfeld so leidlich die Trägheitsmomente vom GX200, vom Servo (1FT7-...) und die ganzen Amaturen (wie z.B. Drehmomentmesswelle, Stehlager, Radnabenflansch, etc.) bestimmt. Heißt durch die Trapezmethode habe ich so ungefähre Trägheitmomente der sich drehenden Teile ermittelt (Warum ungefähr?, weil das Trägheitsmoment bei den Messungen nie über den gesamten Drehzahlbereich konstant ist > ergo Mittelwert). Bei den meisten Werten helfen aber auch die Datenblätter. Das deckt sich einigermaßen gut mit den Messergebnissen für die Trägheiten. Nur der GX200 hat eben keine dokumentierte Trägheit... nun weiter.. Zunächst habe ich nun Vollgasmessungen vom GX200 mit anschließendem Ausrollversuch gemacht. Durch die "Kenntnis" von J, also dem Trägheitsmoment, kann man das Beschleunigungsmoment M_B ermitteln (positive Drehzahlrampe) und das Widerstandsmoment M_W beim Ausrollen ermitteln (negative Drehzahlrampe).
Abb. 2: ermittelte Motorkennlinie des HONDA GX200 SIeht erst einmal nicht schlecht aus, würde man meinen, aber zum Vergleich, will ich den einzigen Schnipsel anhängen, der offiziell über den GX200 bekannt ist: Abb. 3: SOLL-Motorkennlinie des GX200 Man erkennt, dass ich die Leistung und das Moment zu hoch ermittelt habe. Im HONDA Datenblatt wird bei dem Schnipsel auf SAE J1349 Bedingungen verwiesen... ja keine Ahnung. Ich denke mir nur jetzt, dass die "Last", unter der ich meine Messung gemacht habe, möglicherweise zu gering ist. Denn letztendlich hat mein GX200 bei meiner Messung nur ein bisschen rotierende Masse gesehen, deren Trägheitsmoment jetzt nicht die Welt ist. Die positive Drehzahlrampe wird in meiner Messung z. B. in ca. 1.2 s durchfahren (von ca. 1500 rpm auf 4950 rpm] und die Ausrollrampe dauert ca. 3 s. Das sind natürlich keine Vollastbedingungen. Nun wollte ich ausporbieren, dass der Servo im Moment der "Energieabgabe" - Sprung von Antreibenden +10 Nm auf 0 Nm TorqueLimit - ab da drehzahlabhängig ein Gegenmoment erzeugt. So könnte ich z. B. auf dem Prüfstand, unter diesem Aufbau simulieren, dass das Kart fährt (z. B.). Generell muss ich ja sagen: "Servo fahre im generatorischen Betrieb bitte die ZIEL-Drehzahl 0 rpm an und du darfst dazu XYZ Nm TorqueLimit benutzen." Ich hole mir durch einen zyklischen OB alle 50 ms die momentane Drehzahl und den Zeitstempel. Dann berechne delta n durch delta t und erhalte eine "ruhigere" Beschleunigung, als wenn ich Sie dire aus dem TO von der Positionierachse (Servo) auslese. Ich würde gern z. B. sagen, wenn die translatorische Masse des Karts (80+95) kg ist, dann soll ich den Beschleunigungsphasen des GX200 (positive Drehzahlrampe) der Servo ein Gegenmoment von z. B. J*α aufbringen, wobei J jetzt eben nicht mehr so klein ist, wie bei der eingangs beschriebenen Messung sondern z. B. der translatroischen Masse draußen auf der Straße entspricht ( m_T*α*r² = J*α -> J = m_T*r² = 175 kg * 0.131² m²= 3 kgm² ). Wenn ich also den Servo, gesteuert durch das momentane α (alpha)und einem Trägheitsmoment von J = 3 kgm², ein Gegenmoment erzeugen lasse, dann würde ich damit simulieren, dass der Motor die Kartmasse vor sich herschiebt. Derzeit versuche ich es mit .. umzusetzen:
Im Case 3 wird das momentane Gegenmoment, was abhängig von der GX200 verursachten Drehzahl wirken soll, berechnet und soll im idealfall wirksam werden. Ich habe versucht, das Schlagen / Rucken bei schwankenden Beschleunigungswerten abzufangen, indem ich für diesen Abschnitt die TO-Beschleunigung herunter setze, aber das bewirkt nicht sehr viel. Spätestens bei der negativen Drehzahlrampe (Ausrollprozess, wenn ich das GX200 Gas loslasse) knallt mir ein Moment rein, was den Motor sofort absterben lässt. Auch ein Herausschrauben der Zündkerze (sodass die Kompression vom GX wegfällt) und ein Ausführen vom OBT-Tuning passt die Reglerparameter dahingehend nicht so an, dass das Gegenmoment schön sanft und kontinuierlich anliegt. Hat jemand eine Idee oder kann jemand teilen, wie er solche drehzahlabhängigen Momente realisiert ?Mir drückt zeitlich wirklich der Schuh. Im März ist Abgabe und mein Prüfstand kann einfach noch nicht das, was er soll. Finden wir hier eine gute Lösung, so kann ich die dann auch für den Hauptbetriebsfall nutzen: Kart auf den Prüfstand aufspannen und Gasgeben. Den Prüfstand ( 2 Servos ) dabei genau die WIderstände erzeugen lassen, die bei der indoor-Messung fehlen ( Wind, Steigung, Roll, und Beschleunigung der abmontierten Reifen, also M_B ) Vielen Dank fürs Lesen und viele Grüße Edit 1: Abb. 1 war irgendwie weg Edit 2: Abb. 1 kommt irgendwie nicht wieder, obwohl sie in der Vorschau und beim SChreiben korrekt angezeigt wird -> Anhang |
Zuletzt bearbeitet von: Zottel86 am: 01/25/2021 23:23:47Zuletzt bearbeitet von: Zottel86 am: 01/25/2021 23:27:21 |
|
26.01.2021 10:10 | |
Beigetreten: 10.10.2005 Letzter Bes: 29.01.2025 Beiträge: 1940 Bewertung:
|
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 17:22 | |
Beigetreten: 24.10.2016 Letzter Bes: 12.10.2021 Beiträge: 55 Bewertung:
|
Huhu Cicero, Danke für die Rückmeldung. Ja ich sabbel immer viel, weil ich immer versuche, dass es jeder vor dem geistigen Auge sehen kann und genau weiß, was ich meine .. und schgeinbar erreiche ich damit genau das Gegenteil ^^ Ich benutze - eine S7 1516 Generell arbeite ich auch schon mit den MC-Bausteinen. Generell benutze ich auch immer schon MCTorqueLimitting, aber bisher eben immer nur für verhältnismäßig langsame Änderungen des Limits (Also z. B. dauerhaft konstante Lastbegrenzung, oder abschnittsweise Unterscheidung etc.). Ich benutze / benutzte es bis jetzt noch nicht als wirklichen Funktionswert. Jetzt würde ich gern mit dem GX200 eine Beschleunigungsrampe fahren (Vollgas) und zu jedem Abtastzeitpunkt (z. B. OB30 a la 50 ms) das TorqueLimiting aktualisieren nach: Ich bräuchte quasi mal einen Tipp, wie genau Ihr das Problem löst, falls ihr mal eine Anwendung habt, bei der ihr drehzahlabhängig die Momentbegrenzung steuert (richtig als Funktion). |
26.01.2021 20:27 | |
Beigetreten: 24.10.2016 Letzter Bes: 12.10.2021 Beiträge: 55 Bewertung:
|
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 (371 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. |
|
Wir arbeiten an einem neuen Interface unseres Forums! Dieses stellt eine bessere Übersicht zur Verfügung und liefert mehr Relevanz.
Ihr könnt die neue Oberfläche erkunden, indem ihr der Textbox in der rechten Spalte folgt. Alternativ gelangt Ihr mit dem folgenden Link zur Startseite des neuen Forums:
https://sieportal.siemens.com/de-ww/support/forum
In den kommenden Tagen werden wir die Konfiguration so umstellen, dass Ihr per Standard ins neue Forum geleitet werdet. Das klassische Forum wird parallel mit allen bekannten Funktionalitäten erreichbar bleiben. Der Inhalt wird in beiden Oberflächen konsistent sein.
Wir freuen uns auf die gemeinsame Zukunft des Forums mit Euch. Danke für Euer Engagement!
Viele Grüße,
Das Forum Support-Team
Folgen Sie uns auf