# TC3: Motor in Drehmoment- oder Drehzahlregelung auf bestimmte Wellenleistung regeln



## oliver.tonn (23 Juli 2021)

Hallo,
ich benötige mal etwas (OK, viel) Nachhilfe was die Benutzung von Reglern angeht. Ich hatte damit während meiner Umschulung und später der Technikerschule reichlich zu tun, aber seit dem nie wieder und so habe ich praktisch alles vergessen. Ich weiß noch, dass ein Regler aus der Differenz von Soll und Istwert in Verbindung mit den Regelparametern eine Stellgröße ausgibt, aber das war es dann. Allgemeine Fragen zum Thema Regler wären erstmal, welche Einheit und welchen Wert hat die Stellgröße (Absolutwert oder Differenz)? Wenn ich eine Temperatur regeln will sind die Eingangswerte logischerweise Temperaturen, aber der Ausgangswert muss ja z.B. eine Heizerleistung oder ein Prozentwert werden der dann wieder in ein PWM-Signal gewandelt wird, wie läuft das ab.
Doch zum konkreten Fall. An einem Teststand für E-Motore werden die Prüflinge über einen weiteren Motor belastet. Dieser wird über einen Umrichter entweder auf eine Drehzahl oder ein Drehmoment eingestellt das er hält. Nun soll das System aber über einen überlagerten Regler auf eine bestimmte Wellenleistung geregelt werden. Die Leistung wird über 2µ * M * n, berechnet, soweit bin ich schon, aber dann verließen Sie ihn auch schon. Ich könnte jetzt aus OSCAT den Regler CTRL_PI oder CTRL_PID nehmen. An die Eingänge muss ja die Soll und Ist Leistung, das ist soweit wieder klar, aber was muss ich mit dem Ausgangswert anstellen, damit ich einen Sollwert für den Umrichter erhalte und zwar je nach Betriebsart einmal Drehzahl und einmal Drehmoment.


----------



## Thruser (23 Juli 2021)

Hallo,

entweder Du arbeitest mit zwei Reglern und schaltest zwischen diesen um oder mit einem, dann muß Du dort die Parameter umschalten. Mit einem Satz für beide Regelungen wirst Du nicht auskommen, da das Verhalten unterschiedlich sein sollte. Im Umrichter wirst Du ja auch den Parametersatz umschalten müssen für Drehzahlregelung und Momentenregelung.

Gruß


----------



## oliver.tonn (23 Juli 2021)

Das mit dem Umschalten ist klar, vermutlich werden zwei Regler eingesetzt. Aber leider weiß ich nicht wie ich den Regler mit anderen Bausteinen verschalten muss, damit ich eine Drehzahl oder ein Drehmoment für den FU bekomme. Der Regler bekommt ja als Eingangswerte die Wellenleistung, aber für den FU brauch ich ja Drehmoment oder Drehzahl.


----------



## Thruser (25 Juli 2021)

Hallo,

Du hast die Gleichung doch oben angegeben. Die Leistung ist P = M * ω, mit ω = 2 * π * f = 2 * π * n / 60 (n in Umdrehungen/Min, f in Hertz bzw. 1/s)

Dann dementsprechend umstellen:

M = P * 60 / (2 * π * n)
n = P * 60 / ( 2 * π * M)

P (Vorgabe) und M bzw. n müssten ja jeweils bekannt sein (Messung oder aus dem Umrichter)

Ansonsten beschreib mal etwas mehr zu dem Prüfstand und der Anordnung. Ist separate Drehmomentmesswelle mit Drehzahlmessung vorhanden oder wird alles über den FU des Belastungsmotors bestimmt?

Für Drehmomentregelung verstehe ich es im Augenblick so der Test-/Antriebsmotor gibt über seinen Sollwert die Drehzahl vor, dann wird für die Messung die Leistung vorgegeben und der Belastungsmotor soll dann den Antriebsmotor mit dem entsprechenden Drehmoment belasten.

Auf jeden Fall benötigst Du entweder die aktuelle Drehzahl oder das aktuelle Moment.

Gruß


----------



## oliver.tonn (26 Juli 2021)

Thruser schrieb:


> Hallo,
> 
> Du hast die Gleichung doch oben angegeben. Die Leistung ist P = M * ω, mit ω = 2 * π * f = 2 * π * n / 60 (n in Umdrehungen/Min, f in Hertz bzw. 1/s)
> 
> ...


Das heißt es ist tatsächlich so einfach? Der Regler wird einen Wert mit der "Einheit" Wellenleistung ausschmeißen, den rechne ich mit der Formel entweder in ein Drehmoment oder eine Drehzahl um und übergebe den Wert dann dem FU?


----------



## Thruser (27 Juli 2021)

Eigentlich ja, ob Du die Umrechnung vor oder hinter dem Regler machst ist eigentlich egal.

Du mußt nur ein Punkte beachten. Da Du nach der Umstellung der Gleichung ~1/x hast, gehen die Werte für x->0 die resultierenden gegen unendlich. Bei Drehmomentregelung solltest Du daher eine Drehmomentbegrenzung haben. Auch für den Anlauf des Testmotors solltest Du die Belastungsmaschine im Freilauf bzw. Solldrehmoment = 0 Nm haben, um den Motor nicht unter last anlaufen zu lassen. Aber das solltest Du mit Deinem Auftrageber/Aufgabebsteller klären. Der sollte wissen wie die Maschinen zu betreiben sind.

Gruß


----------



## zako (27 Juli 2021)

vielleicht hat ja Dein Antrieb auch einen Eingang wo man die Leistungsgrenze direkt vorgeben kann (bei Bedarf auch von einem Regler, der z.B. den Drehmomentistwert direkt einliesst). Bei kleinen Drehzahlen könnte man dann mit einer Drehmomentgrenze arbeiten, die dann bei der entsprechenden Drehzahl von einer Leistungsgrenze abgelöst wird.


----------



## oliver.tonn (27 Juli 2021)

zako schrieb:


> vielleicht hat ja Dein Antrieb auch einen Eingang wo man die Leistungsgrenze direkt vorgeben kann (bei Bedarf auch von einem Regler, der z.B. den Drehmomentistwert direkt einliesst). Bei kleinen Drehzahlen könnte man dann mit einer Drehmomentgrenze arbeiten, die dann bei der entsprechenden Drehzahl von einer Leistungsgrenze abgelöst wird.


Sah auf den ersten Blick gut aus, aber wenn ich den Hilfetext vom Starter richtig verstehe ist damit die elektrische Leistung gemeint, ich muss aber die Wellenleistung regeln, also die mechanische Leistung.


----------



## zako (27 Juli 2021)

für den SINAMICS S120 gilt: addiere noch per Reibkennlinie die Verluste drauf, dann kommst Du auch auf die Katalogangaben bzgl. Drehmomentgenauigkeit (also mit 1PH8- Motor und entsprechenden Drehzahlbereich).
Oder hast Du eh eine Drehmomentmesswelle? Dann kann man es noch verrechnen (z.B. per Technologieregler im Antrieb)


----------



## oliver.tonn (27 Juli 2021)

zako schrieb:


> Oder hast Du eh eine Drehmomentmesswelle? Dann kann man es noch verrechnen (z.B. per Technologieregler im Antrieb)


Vielleicht sind ein paar Details ganz hilfreich. Der Prüfling ist über eine Drehmomentmesswelle mit der Lastmaschine verbunden. Dem Prüfling soll nun über eine gewisse Zeit eine bestimmte mechanische Leistung abgefordert werden. Hier wollte ich die errechnete mechanische Leistung an einen PID-Regler von OSCAT geben und das Ergebnis, je nach Betriebsart, als neuen Drehmoment- oder Drehzahlsollwert an den S120.


----------



## zako (27 Juli 2021)

Ja kann man in der Steuerung machen, aber auch im Antrieb.
Im Antrieb nimmt man da den Technologieregler - der könnte auch im Stromreglertakt laufen, z.B. 0,125 ms. Oder DCC.
Nur mal aus Interresse - wie kommunizierst Du mit dem Antrieb (Profinet IRT, Ethercat, Profibus, ...?)


----------



## Thruser (27 Juli 2021)

@zako wie viele Betriebsmodi kann man denn so im Umrichter hinterlegen?

Bei unserem Prüfstand fahren wir meistens mit fester Drehmomentvorgabe, zur Vermessung unserer PM Motoren treiben wir diese aber mit dem Belastungsmotor auch auf bestimmte Drehzahlen.

Ich weiß ja nicht, welche Betriebsarten in diesem benötigt werden.

Gruß


----------



## oliver.tonn (28 Juli 2021)

Hm, irgendwie begreife ich die Funktionsweise eines Reglers nicht mehr, bzw. wie ich ihn richtig einsetze. Ich habe jetzt mal einen Versuch gestartet mit KP von 0,1 KI und KD von 0, LL ist 0,0 und LH 99000, Zielleistung sollte 1400 Watt sein. Zunächst rufe ich den Regler mit RST = TRUE auf und der S120 bekommt eine Zieldrehzahl. Dann setze ich RST auf False und errechne aus Y über oben stehende Formel eine Drehzahl die ich an den S120 gebe. Mein Problem ist jetzt, dass die Leistung auf ca. 3800 Watt hochschießt und dann eine andere Begrenzung greift die ein Zerlegen des Teststandes verhindert und der Regler an Y eine 0 ausgibt. Stelle ich als Solleistung mal 4000 Watt ein kommt an Y ein Wert von ca. 38 raus, was ja auch nicht sein kann.
Ich vermute mal an Y kommt kein Absolutwert raus, sondern ein Relativwert, aber was fange ich mit dem an?


----------



## oliver.tonn (28 Juli 2021)

Leider muss ich mit wirklich vielen Fragen nerven.
Die Welle soll ja nur in eine Richtung drehen. Jetzt war es aber so, dass das Drehmoment minimal ins Minus rutschte und dann kommt bei der Formel ja auch eine negative Drehzahl raus, was, ohne die Sicherheitsbegrenzungen, hier zum Crash geführt hätte.
Meine Frage wäre jetzt, was ich sinnvolles tun muss, damit die Drehzahl nicht ins negative oder besser nicht in die andere Richtung läuft?


----------



## Larry Laffer (28 Juli 2021)

Mal so ins Unreine gefragt :
warum machst du nicht eine generelle Drehzahl-Vorgabe mit einer Drehmoment-Begrenzung (oder Strom-Begrenzung) ?


----------



## oliver.tonn (28 Juli 2021)

Larry Laffer schrieb:


> Mal so ins Unreine gefragt :
> warum machst du nicht eine generelle Drehzahl-Vorgabe mit einer Drehmoment-Begrenzung (oder Strom-Begrenzung) ?


Das Problem ist, das Maß aller Dinge ist die Drehmomentwelle die in der SPS ausgewertet wird.


----------



## Larry Laffer (28 Juli 2021)

... dann wirst du sehr wahrscheinlich nicht darum herumkommen, die einen eigenen Algorythmus zu erstellen, die solche Erscheinungen, wie von dir benannt, verhindern ... (also z.B.- negative Drehzahl ... oder ggf. Drehmoment < ein bestimmter Wert)


----------



## oliver.tonn (28 Juli 2021)

Mein Problem ist ja leider schon, dass ich beim Regler scheitere. Der gibt an Y etwas aus, aber was mache ich mit dem Wert?
An die Eingänge des Reglers geht die mechanische Leistung (Soll und Ist).


----------



## Thruser (28 Juli 2021)

oliver.tonn schrieb:


> KP von 0,1 KI und KD von 0


Das sollte ja ein reiner P Regler sein. Der verstärkt natürlich nur die Differenz von Soll- und Istwert. Ist diese 0, dann ist auch das Ausgangssignal 0. Du benötigst noch einen I Anteil, damit das Ausgangssignal den Wert des Sollwertes annimmt, unter der Annahme, daß das Stellglied (FU) den Wert 1:1 stellt. Sollte hier aber so sein, Du gibst eine Solldrehzahl an und der FU fährt diese an, entsprechend Drehmoment. Es ist ja nich so, daß Du eine Beschleunigung oder Drehzahländerungsgeschwindigkeit vorgibst.

Aber jetzt nenne uns mal bitte mehr Informationen.

Du hast einen Prüfling, den steuerst Du auch schon mittels FU an. Was gibst Du dem als Sollgröße, Drehzahl oder auch Drehmoment?
Der Prüfling ist gekoppelt mit einem Belastungsmotor. Mit dem kannst Du den Prüfling belasten indem Du den FU des Belastungsmotors als Drehmomentsteller verwendest. Du kannst natürlich dem Belastungsmotor eine Drehzahl vorgeben, wodurch der Belastungsmotor versucht den Prüfling herunterbremst oder beschleunigt. Bei herunterbremsen wird natürlich auch ein entsprechendes Belastungsmoment erzeugt. Diese Lösung finde ich persönlich aber nicht sehr schön.

Beschreibe also mal Deine Anwendungsfälle. Gibt es auch einen Regler für den Prüfling? Soll auch bei Drehzahl 0 ein Moment anliegen.


----------



## oliver.tonn (28 Juli 2021)

OK, vielleicht habe ich teilweise etwas mit Informationen gegeizt, sorry. Dann das Ganze mal etwas ausführlicher. Holt Euch einen Kaffee, das könnte dauern. An einem Motorteststand ist ein Prüfling mit einem Lastmotor verbunden. Dazwischen ist noch ein Drehmomentsensor. Die Lastmaschine wird über einen S120 gesteuert und normalerweise auf Drehzahl oder Drehmoment direkt aus dem S120 geregelt. Ist die Lastmaschine eingeschaltet wird der Prüfling dazu geschaltet. Durch eine Änderung der Drehzahl oder des Drehmoments wird der Prüfling jetzt belastet. Nun soll der Prüfling über die Lastmaschine so belastet werden, dass eine bestimmte (vorgegebene) mechanische Last abgefordert wird, dabei soll die mechanische Last aus der IST-Drehzahl vom S120 und dem IST-Moment vom Sensor errechnet werden. Nun hat sich ein Techniker gedacht, er schreibt da einfach ein Programm mit einem Regler und gut ist. Moment, verdammt, der Techniker bin ja ich und gut ist gar nichts. Ich hatte ein Programm geschrieben wo der CTRL_PID von OSCAT genutzt wird. Solange das Programm kein Startsignal erhält wird der Regler mit RST = TRUE ausgeführt. Nun wird die Lastmaschine auf eine Drehzahl gefahren die minimal unter der Solldrehzahl des Prüflings liegt, dann wird der Prüfling zugeschaltet. Nun wird der Regler dazugeschaltet. Der Regler erhält am Eingang die mechanische Leistung als Soll- und Istwert und gibt am Ausgang einen Wert Y aus. Hier ist jetzt meine erste Frage, was fange ich mit dem Wert an? Ich habe ihn jetzt mal zur aktuellen mechanischen Leistung dazu addiert, was nicht so schlecht aussieht. Ohne I Teil kann ich natürlich nie auf die Zielleistung kommen, das ist klar. Das Ergebnis der Rechnung habe ich dann mit der passenden Formel unter Verwendung des aktuellen Drehmoments in eine neue Solldrehzahl umgerechnet. Hier lauert nun das nächste Problem, sollte aufgrund von großen Schwankungen beim Einstellen der Reglerparameter das Drehmoment ins Negative rutschen würde die Berechnung eine negative Drehzahl ergeben was nicht passieren darf. Hier wäre die Frage wie man am Besten auf diesen Fall reagiert? Die Solldrehzahl auf den vorherigen Wert lassen oder das Drehmoment auf einen sehr kleinen Wert begrenzen, aber das wäre nicht so schön für die Achse.
Dem Prüfling wird nie bei Drehzahl 0 ein Drehmoment abgefordert, immer nur bei > 0.


----------



## Larry Laffer (28 Juli 2021)

... dann müßte dein Belastungsmotor aus meiner Sicht ein Servomotor sein, dem du eine Zielposition entgegen der Drehrichtung deines Prüflings vorgibst, eine relativ geringe Drehzahl und ein maximales Drehmoment - also feste Drehzahl mit max. Drehmoment und Schleppfehler-Überwachung Aus.
So etwas hatte ich genau so mal für einen Prüfstand für einen Sitzhöhenversteller gemacht, bei dem auch eine Belastung des sich drehend verstellenden Prüflings generiert werden sollte. Also ähnlich wie bei dir ...

Gruß
Larry


----------



## oliver.tonn (28 Juli 2021)

Larry Laffer schrieb:


> ... dann müßte dein Belastungsmotor aus meiner Sicht ein Servomotor sein, dem du eine Zielposition entgegen der Drehrichtung deines Prüflings vorgibst, eine relativ geringe Drehzahl und ein maximales Drehmoment - also feste Drehzahl mit max. Drehmoment und Schleppfehler-Überwachung Aus.
> So etwas hatte ich genau so mal für einen Prüfstand für einen Sitzhöhenversteller gemacht, bei dem auch eine Belastung des sich drehend verstellenden Prüflings generiert werden sollte. Also ähnlich wie bei dir ...


Geringe Drehzahl geht nicht, da der Motor kurz unter seiner Solldrehzahl laufen soll.


----------



## Holzmichl (28 Juli 2021)

Wie dynamisch soll denn dein System sein?
Hast Du einen statischen Sollwert oder gibt es dynamische Lastkurven etc?
Wenn die Regelung "nur" einen statischen Sollwert hat, würde ich persönlich auf einen 3-Punkt-Regler mit taktweiser Änderung des Sollwerts zum S120 gehen.
Hat dann eine Art Fuzzy-Character. Hier kannst Du völlig nach Belieben auf deine Wünsche eingehen.
Oder auch spezielleres Verhalten im Detail, wie schnelles Hochregeln->leichtes Überschwingen->langsames Abregeln, aber nicht anders herum oder eine Art Vorsteuerung bei besonderen Ereignissen.
Ich nehme die Art der Regelung zum Beispiel gerne bei Vakuumsystemen: Vakuum soll immer stärker oder gleich dem Sollwert sein, ansonsten gibt es ziemlich schnell eine Störung im Prozess + wenn das Ventil zum Verbraucher schaltet, pauschal x% plus als Vorsteuerung.
Das Ganze ist von der Reaktion aber wahrscheinlich langsamer als ein PID-Regler. Kann bei einem steifen System aber auch ordentlich schnell eingestellt werden.
Was natürlich auch noch eine Rolle spielt, ist die Genauigkeit, Geschwindigkeit und das Rauschen deiner externen Drehmoment-Messung.
Die Vorgehensweise gibt es meiner Meinung nach nicht fertig, ist aber normalerweise kein Hexenwerk sich das selbst zu schreiben.


Edit: Ergänzung


----------



## Thruser (28 Juli 2021)

OK,

jetzt sehe ich etwas klarer. Ich würde den FU des Belastungsmotors dann normalerweise auf Drehmomentregelung umschalten. Das erforderliche Drehmoment läßt sich nach der obigen Formel bestimmen. Abweichungen lassen sich mit Regler ausregeln.

Aber es geht auch so wie Du es machst, über die Drehzahlvorgabe für die Belastungsmaschine. Wenn beide mit der gleichen Drehzahl angesteuert werden ergibt sich, wenn wir jetzt mal die mechan. Verluste vernachlässigen ein Drehmoment von 0 Nm. 

Würde sich der Belastungsmotor etwas langsamer drehen, würde sich ein positives Drehmoment für den Prüfmotor einstellen und der Prüfmotor wird gebremst. Je nach Dimensionierung der Motoren würde die resultierende Drehzahl beider Maschinen entweder näher des Prüflings oder der des Belastungsmotors sein. Der Belastungsmotor würde Übersynchron betrieben -> generatorisch.

Würde sich der Belastungsmotor schneller drehen, wird der Prüfmotor geschleppt und würde ein negatives Drehmoment haben. Jetzt würde der Prüfmotor den Belastungsmotor bremsen.

Um den Prüfmotor zu Belasten mußt Du jetzt dafür sorgen, daß der Belastungsmotor eine geringere Solldrehzahl als der Prüfmotor hat. Du nimmst also die Solldrehzahl des Prüfmotors und ziehst einen Faktor ab, das Ergebnis ist dann die Solldrehzahl des Belastungsmotors. 

Für den Faktor kommt jetzt Dein Regler zum Einsatz. Ist Sollleistung größer als Istleistung, muß der Faktor größer werden. Ist sie kleiner, muß er kleiner werden. Wenn Soll- gleich Istleistung ist, darf der Faktor sich nicht mehr ändern -> es muß ein integrierendes Verhalten des Reglers vorhanden sein. Ob das jetzt mit einem klassischen PI/PID Regler erreicht wird oder mit vielleicht mittels Fuzzy Regler ist Dir überlassen.

Der Faktor darf nicht kleiner 0 werden, da dann der Prüfmotor angetrieben werden würde und er sollte auch nicht so groß wie die Solldrehzahl des Prüfmotors werden, da dann die Solldrehzahl des Belastungsmotors gegen 0 geht und der Prüfmotor blockiert würde. Vorher sollten natürlich schon die Strombegrenzungen greifen.

Mit dieser Vorgehensweise dürfte auch keine Drehrichtungsumkehr stattfinden.

Theoretisch könntest Du hier mit der obigen Formel auch das nötige Drehmoment berechnen, welches der Belastungsmotor erzeugen soll. Dieses mußt Du dann in Verbindung mit dem Motormodell des Belastungsmotors in die Solldrehzahl umrechnen.

Einfacher wäre aber hochschleppen des Prüfmotors mit dem Belastungsmotor auf Solldrehzahl, Einschalten des Prüfmotors, Umschalten des Belastungsmotors auf Drehmomentregelung mit Sollwert 0 Nm, dann den Drehmomentsollwert hochfahren bis Wunschleistung erreicht.

Gruß


----------



## Larry Laffer (29 Juli 2021)

oliver.tonn schrieb:


> Geringe Drehzahl geht nicht, da der Motor kurz unter seiner Solldrehzahl laufen soll.


Naja ... es ist ja nicht so, dass der Belastungsmotor hier der Bestimmer ist / sein kann.
Der Belastungsmotor ist im Grunde nichts anderes als eine andere Form einer Bremse.
Im Grunde kannst du dasselbe Verhalten auch hinbekommen wenn du den Belastungsmotor generatorisch laufen läßt und den Strom von ihm limitierst. In diesem Fall müßte man aber zunächst ermitteln welcher Strom welche Belastung erzeugt ...

Gruß
Larry


----------



## oliver.tonn (29 Juli 2021)

Holzmichl schrieb:


> Wie dynamisch soll denn dein System sein?
> Hast Du einen statischen Sollwert oder gibt es dynamische Lastkurven etc?
> Wenn die Regelung "nur" einen statischen Sollwert hat, würde ich persönlich auf einen 3-Punkt-Regler mit taktweiser Änderung des Sollwerts zum S120 gehen.
> Hat dann eine Art Fuzzy-Character. Hier kannst Du völlig nach Belieben auf deine Wünsche eingehen.
> ...


Die Belastung soll statisch sein, allerdings wird er natürlich ab und zu geändert und es macht nichts, wenn es kurz dauert bis der IST-Wert stabil ist. Die Lastmaschine läuft hoch (Auf Drehzahl), der Prüfling wird dazu geschaltet, eventuell wird dann auf Drehmomentregelung im S120 geschaltet und dann soll der Sollwert (Drehzahl oder -moment) von einem Regler in der SPS, der auf eine mechanische Last regeln soll, über die Formel ermittelt und übergeben werden.


----------



## zako (29 Juli 2021)

Thruser schrieb:


> @zako wie viele Betriebsmodi kann man denn so im Umrichter hinterlegen?


Da könnte ich jetzt wohl einen Roman schreiben. Wenn Dein Prüfling z.B. ein Motor eines BEV´s sind, dann kenne ich eher die Herausforderung neben der Möglichkeit von Drehzahl-/ Drehmoment (Leistungs-)vorgabe v.a. hinsichtlich der Regelbarkeit.  D.h. Motoren wie die von AKH, Schorch, Krebs und Aulich (und all die Spindelhersteller) muss natürlich gegeben sind. Aber gerade die BEV- Motoren haben eben recht hohe Unterschiede zwischen Lq/Ld, Reluktanzmomente und v.a. allerlei Motorgeber die nicht unbedingt "Industriestandard" entsprechen. Aber zumindest habe ich die mit dem S120 bislang immer ganz gut zum Laufen gebracht. Teilweise sind diese Motoren recht empfindlich gegen Spannungen (da nimmt man z.B. den S120 mit Sinusfilter, bzw. auch DC-Link Smoothingfilter).
Aber gerade die Anforderungen im Prüfstandsbereich sind extrem breit gefächert. Nochmal zu den Fragen bgzl. Antriebsfunktionlitäten, hier ein paar  Punkte die mir spontan einfallen bzw. immer wieder begegnen:
- Dieselkalttestände (dort mit konstanter Drehzahl eingetrieben und das Drehmoment ist ein Abbild für die Güte des Diesels. Da sind nur sehr geringe Drehzahlwelligkeiten erlaubt und erfordert somit ein automatisiertes Einlernen der Störmomente ==> Funktion "LECO")
- Simulation des Drehmomentverhaltens von Verbrennungsmotoren durch Vorgabe von Drehmomentverläufen (electronic torque pulse simulation durch die Funktion POLYGON und SETPGEN
- Batteriesimulation / Versorgung vom Fahrzeugumrichter etc.: Funktion DCDC-Converter (incl. galvanischer Trennung bzw. Zwischenkreiserdung)
- Crashsimulatoren / Shaker etc.: neue Funktion der Spannungsvorsteuerung im Stromregler (z.B. Drehmomentanregelzeiten von z.B. 0,2ms auch bei Asynchronmotoren und einige 100Nm)
- Vermessung der Motor-EMK und Gebersignalpegel (aber das wäre eher ein Thema Richtung Messtechnik)
- ...


----------



## oliver.tonn (30 Juli 2021)

Nachdem ich begriffen habe, dass der OSCAT Regler "nur" eine Differenz errechnet und keinen neuen Sollwert, habe ich das Ganze nochmals durchdacht und bin jetzt der Meinung, dass die Sache viel komplizierter wird und vermutlich nicht einfach durch die Benutzung eines PID Reglers gelöst werden kann. Über die Formel kann man zu einem Drehmoment ja die Drehzahl errechnen bei der eine bestimmte Leistung anliegt und könnte dann die Drehzahl entsprechend anpassen. Das kann so aber nur bei einer "normalen" Anordnung funktionieren, sprich ein Motor treibt eine feste Last. In meinem Fall belastet ja aber, bekanntermaßen, ein zweiter Motor als Lastsimulation den Antriebsmotor und der Lastmotor müsste, so geregelt werden, dass die gewünschte Leistung anliegt und das Ganze läuft dann ja auch noch in die "verkehrte" Richtung. Bei einer "normalen" Anordnung müsste ich die Drehzahl erhöhen, um eine höhere Leistung abzufordern, bei der Belastung durch einen Lastmotor muss ich aber ja die Drehzahl des Lastmotors verringern damit die Leistung sich erhöht. Alles in allem nicht so einfach. Der Lastmotor soll/muss sowohl in Drehzahl als auch in Drehmomentregelung durch den S120 laufen?
Das große Problem wird sicher sein, dass wenn ich die Drehzahl ändere sich gleichzeitig auch das Drehmoment ändert und die Leistung sich dadurch nicht linear ändert was den Regler vermutlich aus den Tritt bringt.
Was kann man hier noch machen?


----------



## Larry Laffer (30 Juli 2021)

Ich denke, du siehst das zu kompliziert ...
Vielleicht überdenkst du doch noch einmal meinen Vorschlag im Beitrag #25 - falls wir von einer dynamischen Last sprechen.
Oder mein Vorschlag aus Beitrag #21 wenn du eine (mehr oder weniger) statische Last brauchst.
Wie schon geschrieben - im Grunde hast du hier eine Art Bremse. Die Frage ist :  wie bremse ich ?


----------



## oliver.tonn (30 Juli 2021)

Larry Laffer schrieb:


> Ich denke, du siehst das zu kompliziert ...
> ...
> Oder mein Vorschlag aus Beitrag #21 wenn du eine (mehr oder weniger) statische Last brauchst.
> Wie schon geschrieben - im Grunde hast du hier eine Art Bremse. Die Frage ist :  wie bremse ich ?


Mag sein, dass ich zu kompliziert denke. Ich habe jetzt die Drehzahl in immer kleineren Schritten geändert bis ich in der Nähe der gewünschten Leistung bin und dann einen Regler dazugeschaltet, aber leider kommt es immer noch zu Schwankungen.
Es soll eine statische Last sein, was ich nur nicht verstehe ist, wie ich diese bei Deinem Vorschlag aus #21 einstellen soll, der momentane Prüfling hat eine feste Drehzahl.


----------



## Larry Laffer (30 Juli 2021)

OK ... dann beschreibe ich nochmal was ich damals gemacht habe :
Ich hatte einen Prüfling, der mit einem vorgegeben Drehmoment belastet werden sollte. Dann hatte ich auf der anderen Seite einen Antrieb, der den Prüfling betätigen sollte. Dieser Antrieb war in jedem Fall stark genug um egal welche Last zu überwinden. Als Belastung hatte ich einen Servomotor, dessen maximale Drehzahl eingeschränkt war in dessen Drehmoment meinem Belastungswert entsprach. Der Motor sollte sich gegen die Betätigungsrichtung drehen - was er natürlich nicht konnte, da er ja viel schwächer als der Betätiger war. Damit diese Form der Regelung so funktionieren konnte durfte es natürlich nur ein minimales Getriebe am Lastmotor geben. Das Moment habe ich über einen DM-Sensor überprüft und es war während der Betätigung konstant - lediglich beim Stoppen und Starten gab es erstmal eine Spitze.

Bezogen auf deinen Fall :
Der Belastungsantrieb und der zugehörige Regler sollte für das größmögliche Belastungsmoment ausgelegt sein (+ Angstzuschlag).
Idealerweise gibt es kein Getriebe.
Du läßt den Belastungsantrieb gegen den Prüfling drehen und gibst dem Servoregler (ich hatte hier Bosch-Rexroth verwendet) eine relativ kleine Drehzahl und dein gewünschtes Drehmoment vor und läßt den Regler machen - ggf. geht sogar das Stillstandsmoment schon ...
Da du wahrscheinlich (so habe ich es verstanden) auf den Kopplungswelle auch einen DM-Sensor hast kannst du das Ergebnis ja überprüfen.
In meinem Fall dauerte ein Prüfzyklus nur einige Sekunden, dann war erstmal wieder eine zeitlang Pause - dadurch konnte ich die Kühlung des Belastungsmotors ignorieren. Bei dir würde das möglichweise anders sein ...
Wie schon geschrieben :  die Drehzahl des Belastungsantriebs ist eigentlich irrelevant da er ja von dem Prüfling immer mitgezogen wird. Das Belastungsmoment entsteht aus der quasi-Bremswirkung des Belastungsmotors ...


----------



## oliver.tonn (30 Juli 2021)

OK, das ist dann aber eher eine Trial and Error Geschichte oder? Oder geht der Betätiger, wie Du ihn nennst immer auf seine Norm-Drehzahl (oder wie die auch immer heiß), dann könnte ich natürlich durch die Beeinflussung des Drehmoments die Leistung errechnen und einstellbar machen.
Das Problem ist, dass die hier als Lastmotor einen Siemens 1PH8135 an einem S120 im Einsatz haben und das, wenn ich nicht falsch liege ein Asynchronmotor ist.


----------



## Larry Laffer (30 Juli 2021)

Ich hatte ja geschrieben :  für die Belastung hatte ich einen Servo. Da nimmt einem der Regler schon viel Arbeit ab. Mit einem FU könnte es aber auch funktionieren - dazu habe ich aber keine Erfahrung. Allerdings hast du hier (selbst mit Geber-Rückführung) kein konstantes DM-Verhalten. Da wäre dann generatorisch schon fst besser.
In jedem Fall aber in diesem Fall (also FU mit Asynchronmotor) ist es wahrscheinlich wirklich Try-and-Error - sorry.
An dem, was ich dir beschrieben habe, hatte ich damals auch lange herum-überlegt und mußte mit dem Konstrukteur den einen oder anderen Kampf ausfechten - am Ende (weil es auch keine bessere Idee gab - aber die Anforderung) haben wir es dann so genmacht ...
Ich denke mal, dass es in deinem Fall so auch funktionieren würde.
Ggf. vielleicht auch noch mal schauen ob und wie sich ggf. @zako hierzu noch mal äußert ...


----------



## oliver.tonn (2 August 2021)

So, hier mal ein Update.
Wenn man weiß was man tut klappt es auch. Ich hatte zwei Varianten, die ich Euch leider vorenthalten hatte (sorry), bei der einen wurde nur bei einem positivem Drehmoment der Wert des Reglers verarbeitet, bei der anderen sowohl bei positivem als auch bei negativem Drehmoment. Die erste Variante ist, zumindest in diesem Fall, völliger Blödsinn, bei der Zweiten hatte ich einen Gedankenfehler. Der Regler schmeißt mir ja als Y raus um wie viel man die Leistung erhöhen oder verringern muss. Über die Formel (s. oben) kann man dann ja daraus eine Drehzahländerung berechnen. Bei einem einzelnen Motor müsste man diese jetzt auf die aktuelle Drehzahl addieren. Da ich aber nicht den Motor direkt beeinflusse, sondern über einen Zweiten eine Last simuliere und diese Lastmaschine steuere muss die Drehzahldifferenz abgezogen werden, da eine höhere Belastung durch eine niedrigere Drehzahl der Lastmaschine erreicht wird. Mein Gedankenfehler war jetzt, dass bei einem negativen Drehmoment auch ein Ergebnis mit einem umgekehrten Vorzeichen rauskommt. Nachdem ich den errechneten Wert bei einem negativen Drehmoment mit -1.0 multipliziert habe läuft es halbwegs, jetzt müssen wir "nur" noch die Regelstrecke stabiler bekommen.
Nochmals vielen Dank an alle, die hier mitgeholfen haben.


----------



## zako (2 August 2021)

oliver.tonn schrieb:


> ... jetzt müssen wir "nur" noch die Regelstrecke stabiler bekommen.


Nach meinen Verständnis kann man hier klassisch mit Sprungantwort oder per Bodediagramm optimierten. 
Da der Regler in der Steuerung läuft, sollten diese Möglichkeiten dort vorhanden sein. Zumindest bei einer Sprungantwort könnte man Psoll zu Pist aufzeichnen. Falls das dort nicht möglich ist, könntest Du diese Daten auch zusätzlich an den SINAMICS übertragen und die dortige TRACE- Funktionalität nutzen - oder nur die Regeldifferenz im Antrieb (das muss man dann gedanklich entsprechend interpretieren)


----------



## oliver.tonn (2 August 2021)

Morgen kommt jemand der weiß was er tut, da werden wir uns den Regler mal ansehen und ihn tunen (Also den Regler, nicht den Kollegen).


----------

