Re: D oder doch I?


[ FMSO.DE - Fahren mit Salatöl (deutsch) ]


Geschrieben von Joachim S am 03. April 2019 15:33:48:

Als Antwort auf: Re: D oder doch I? geschrieben von Uli S. am 03. April 2019 12:14:47:

Hi Zusammen,

so siehts aus... Ich bin zwar nicht der Meinung, dass der I-Anteil den Regler direkt langsam macht. Nur indirekt, weil er die Schwingneigung erhöht und man deshalb mit dem P-Faktor wieder zurück gehen muss.

Warum ich keinen I-Anteil will, hat der Uli perfekt geschrieben. Mit einer kleinen Richtigstellung meinerseits; Sollwertsprünge gibt es nicht. Da bin ich pragmatisch, der Sollwert steht platt auf 2 bar Überdruck. Was sich ständig ändert, sind sozusagen die Störgröße. Aber für die Abstimmung und Charakteristik des Reglers ist das Jacke wie Hose.

Der fixe Sollwert stört nicht weiter, auf Verbindungsetappen bleibt Gasfuß und Drehzahl so moderat, dass ich da nicht unnötig Verschleiß produziere... Da bleibt alles eher so bei 1 bar max.

Im Rennbetrieb gibt es wohl kaum mal auch nur ne Viertelsekunde, wo sich ein stationärer Betrieb einstellt. Entweder wird beschleunigt, die Drehzahl steigt also schnell bis sehr schnell. Oder es wird gebremst, die Drehzahl fällt. Alles noch durcheinander gebracht von ständigen Änderungen des Fahrerwunsches und Schaltvorgängen. Am Ehesten gibt es noch Leerlauf als stationären Betriebspunkt, aber da gibt's eh nix zu regeln...

So macht Integralanteil also keinen Sinn. Das ist was für gleichmäßige Fahrt, also für Alltaggsautos. Wo dann auch die schlaue Sollwertvorgabe sinnvoll ist.


@ Manuel, ja, dieses parametrieren mit Untersuchung der Sprungantwort ist mir auch sehr vertraut aus unseren Robbis. Wenn wir (was selten vorkommt) mal einen neuen Hersteller für Servoregler oder Motoren ausprobieren, dann kommen da immer die Spezialisten und tricksen ne Menge rum. Wenn sie weg sind, mach ich es dann so, dass wir es auch brauchen können ;-)

Ich plaudere mal ein bisschen aus dem Nähkästchen...

Unsere Robbis sprechen die Servomotoren in der Drehzahlregelung an.

Eine Roboter-Servoregelung hat drei aufeinander aufbauende Regelkreise.

1: Der Stromregler (auch Drehmomentregler). Der wird so parametriert, wie du das beschreibst. Wenn das fertig ist, lass ich die Finger davon. Da geht es rein darum, wie der Strom in den Motor gespeist wird. Die Regelstrecke kann man ausmessen, und sie bleibt dann für immer gleich. Perfekte Anwendung für solche Algorithmen (die die Servoregler teilweise sogar selbst ausführen können). Anschaulich gesprochen, der Stromregler bestimmt aus der Gaspedalstellung die Fördermenge...

2: Auf den Stromregler setzt der Drehzahlregler auf. Unsere Steuerung übermittelt ihm alle 10 ms einen neuen Sollwert. Wenn der Motor trotz aller Lasten und Unwägbarkeiten der Drehzahlvorgabe sauber folgt, dann fährt der Roboter theoretisch schon perfekt. Der Drehzahlregler bildet direkt die Sollwerte für den Stromregler.

3: Der Lageregler. Die Servoregler können das im Prinzip auch, wir haben diese Funktionalität aber in unsere eigene Steuerungssoftware geholt. Wir bekommen alle 10 ms die Istposition der Achsen zurück gemeldet. Weil der Drehzahlregler nicht 100% sauber folgen kann, bleibt eine gewisse Abweichung, der Schleppfehler. Gegen den regeln wir gegen, in dem wir die Drehzahlvorgaben etwas anpassen.

Alles recht komplex... Der Lageregler ist besonders interessant. Da zurückgelegte Strecke das Integral der Drehzahl über die Zeit ist, ist er eigentlich ein Integralanteil auf den Drehzahlregler... Aber irgendwie auch nicht, für uns ist er recht eigenständig.

Denn der Drehzahlregler selbst braucht bei uns schon zwingend einen Integralanteil, ohne ihn wird der Robbi total anfällig gegen wechselnde Lasten. Eine Hubachse etwa sackt ohne Integralanteil stetig durch, wenn man ihr Drehzahl Null vorgibt, und keinen Integral-Anteil vorgibt.

Wahrscheinlich muss man unser System so betrachten, dass die Regler auch unterschiedlich schnell arbeiten. Der Stromregler ist sehr schnell. Bringt man ihn zum Schwingen, dann kreischt der Motor.

Der Drehzahlregler ist deutlich langsamer, schwingt er, dann brummt es.

Unser Lageregler ist ein sehr langsames Teil. Wenn er schwingt, dann wackelt der Roboter... Seltsam genug, unser Lageregler selbst ist als reiner P-Regler programmiert. Trotzdem arbeitet er auf den eigentlichen Regelvorgang integrativ.

Wie auch immer, wenn die Servo-Spezialisten weg sind, bewegt sich der Roboter zwar anscheinend ganz gut, aber nur unter den Umständen, die die Spezialisten so vorgefunden hatten. Ein Robbi ist aber etwas komplexer... Es kann sein, dass er sich langweilt, und mit leichten Kartons gemächlich durch die Gegend schaukelt. Oder mit riesigen Kartons schnell zur Palette muss, und leer möglichst noch viel schneller wieder zurück soll. Und jede Fahrt ist anders. Mal geht's fast nur rauf, mal fast nur vor, mal wird vor allem gedreht... Die extremsten Schwankungen in den Anforderungen hat die Drehachse. Es gibt zentnerschwere riesige Greifer, mit extrem hohem Rotationsträgheitsmoment. Dann wieder simple kleine Saugreifer, die man an die Uhrkette hängen könnte.

Der Ehrgeiz ist, dass die Robbis das alles mitmachen, ohne dass man sie jedesmal neu abstimmen müsste. In der Firma gelte ich da als der "Hexenmeister", und meine Kollegen halten das fast für Magie, wenn nicht gar Teufelszeug... Dabei gucke ich doch nur, höre hin, und dann fummel ich dran rum ;-)

Was ich eigentlich sagen wollte, die unveränderliche Regelstrecke gehorcht gut, wenn man sie "nach Vorschrift" einstellt. Werden die Störgrößen unvorhersehbar, muss man oft noch nachhelfen... Was ich mehrfach erlebt habe, die Experten lassen den Roboter zwischen zwei Punkten hin und her flitzen, nehmen Diagramme auf, und optimieren so lange, bis er das perfekt kann. Gerne benutzen sie dazu gar eine "Vorsteuerung". Soll er eine andere Strecke fahren, passt es nicht mehr...

Regler ohne integrativen Anteil sind bedeutend leichter abzustimmen. Im Grunde geht man mit P rauf, bis es schwingt, und dann wieder etwas zurück. Oft ist dann schon gut. Wenn es nicht reicht, D-Anteil hinzu nehmen und P versuchen noch höher zu machen. Viel mehr ist erstmal nicht dran. Erstmal... In der Praxis haben die Regler noch ein paar Feinheiten. Etwa einen einstellbaren Totbereich, unter dem er erst garnicht reagiert. Und ganz wichtig, eine Begrenzung der maximalen Ausgangsgröße.

Bei den Bosch-Steuergeräten haben die P-Regler zwar keinen Totbereich (oder ich hab ihn noch nicht gesehen), dafür aber vier getrennte Faktoren für P. Negatives Kleinsignal, positives Kleinsignal, und beides nochmal für Großsignal... Und natürlich sind die Schwellen für Klein- und Großsignal auch einstellbar crazy. Jetzt wo ich es schreibe, erkenne ich, dass man den Totbereich so sehr einfach realisieren kann, Faktor für Kleinsignal auf Null, Grenzen auf den Totbereich...

Man tut jedenfalls gut daran, so einfach wie möglich dran zu gehen, wenn man denn wirklich ran will. Also erstmal I-Anteil weg...

Gruss Jo

Wie lesenswert findest Du diesen Beitrag?                 Info zur Bewertung




Antworten:


[ FMSO.DE - Fahren mit Salatöl (deutsch) ]