Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Zweipunktregler #4

Open
BjoernSch opened this issue Feb 3, 2016 · 17 comments
Open

Zweipunktregler #4

BjoernSch opened this issue Feb 3, 2016 · 17 comments

Comments

@BjoernSch
Copy link
Contributor

Hat vermutlich ein besseres Regelverhalten für den IO-Ausgang (weniger Schaltaktionen).

@cfi01
Copy link

cfi01 commented Oct 28, 2016

Vielleicht ist auch eine Implementierung eines Wurzelrekursionregler interessant.

https://www.thm.de/me/images/user/orlowski-50/Prozessoptimierung-ohne-Parameter.pdf

@BjoernSch
Copy link
Contributor Author

Hört sich sehr vielversprechend an.

@BjoernSch
Copy link
Contributor Author

Die Erklärungen und Literatur dazu sind die Hölle da nur von einem einzigen Autor beschrieben und sehr lückenhaft. Die Begründungen hören sich teilweise mehr nach Esotherik an als nach Wissenschaft, was eine konkrete Implementierung auch nicht vereinfacht.
In älteren Werken des Autors ist die Formel noch sehr einfach und wird erklärt. Die vollständige Form ist jedoch relativ komplex, in diese Grundformel werden dann abhängig ob eine Regelstrecke mit Ausgleich oder ohne Ausgleich vorliegt bestimmte Werte eingesetzt. Der Ursprung dieser Werte ist mir wie der der Grundformel völlig schleierhaft.
Ich werde mal bei Gelegenheit 2-3 Eimer Kohle verbrennen um zu sehen ob sich da etwas brauchbares rausholen lässt...

@cfi01
Copy link

cfi01 commented Nov 6, 2016

Ich habe das schon mal mit Heizungsregler mit dem Wurzelrekursionsregler getestet. Das hat sehr gut geklappt. Ich habe Regelungserfahrung mit PID-Regler und war erstaut wie gut es mit dem Wurzelrekursionsregler funktioniert. Ich könnte auch mal meinen UDS damit testen, wenn ich an die neue Software ran komme.

@BjoernSch
Copy link
Contributor Author

Ok, dann konkret:
w im Bereich von ?, kann man da einfach den Sollwert in °C reinkippen?
y = 0 - 1 ?
Ks = 1 (realistisch vielleicht 2-3)
h = eigentlich die Schleifenzeit des Reglers. Also 3. 0,001 - 1 wird aber empfohlen.
xd =Regeldifferenz, also auch in K bzw. °C?

Wie sieht das in der Heizungsregelung konkret aus?
Das Patent scheint ja zurückgezogen zu sein...

@cfi01
Copy link

cfi01 commented Nov 6, 2016

@BjoernSch
Copy link
Contributor Author

BjoernSch commented Nov 8, 2016

Ok.
folgende Fragen hätte ich dazu:
=WURZEL($B9_ABS(C9/$B$1+B$2_$B$3))
Gehört statt $B$3 nicht eher C10-B10 in die Formel? (xd)
Warum in Spalte E C10/D10, und warum * 1000
Das Ergebniss der Formel soll doch eigentlich y, also die Stellgröße sein?
Außerdem fehlt in der Formel der Bezug auf die vorherige Stellgröße, also die namensgebende Rekursion.
=WURZEL($B11_ABS($D10/$B$1+$B$2_(C11-B11))) hätte ich jetzt eingesetzt und hätte eine Stellgröße als Ergebniss erwartet.
Mir kommt das alles noch ziemlich nebulös vor.

@BjoernSch
Copy link
Contributor Author

BjoernSch commented Nov 8, 2016

http://www.sps-forum.de/simatic/55817-pid-regler-bei-differentialantrieb-post412037.html#post412037
Besser kann ich es gerade auch nicht ausdrücken...

@cfi01
Copy link

cfi01 commented Nov 8, 2016

Xd ist (e) = 2,7182818285
Man rechnet y und nicht (y-1) aus.

Mach doch mal ein eigenen Excel draus oder gib mir mal die neue Software. Dann probiere ich es mal.

@BjoernSch
Copy link
Contributor Author

BjoernSch commented Nov 8, 2016

Xd ist (e) = 2,7182818285

Eigentlich eher e als in Regelabweichung, Regeldifferenz. Das bestätigen auch die anderen Schriften des Herrn Orlowski.

Man rechnet y und nicht (y-1) aus.

y(n-1) ist die vorhergehende Stellgröße, daher das "-rekursion" im Namen.
Ob man jetzt die Stellgröße für den nächsten Schritt ausrechnet oder die Werte für den aktuellen Schritt benutzt verschiebt nur die Zeile in Excel. An den Werten ändert sich ja nichts, es wird in der Ansicht eventuell auch plausibler weil Eingangswert und Ergebniss in der gleichen Zeile steht.

@cfi01
Copy link

cfi01 commented Nov 8, 2016

Hallo Björn,

bitte ändere mal das Excel. Es sind ja 2 Blätter. Mit und ohne Ausgleich. Markiere bitte die Stellen. Dann schaue ich in Ruhe mal drüber.

@BjoernSch
Copy link
Contributor Author

Bitteschön:
2013-03-28_Frt-Wurzelrekursion.-.Prozessoptimierung.ohne.Regelparameter_korrigiert.xlsx
Die Ergebnisse machen einfach keinen Sinn.

@BjoernSch
Copy link
Contributor Author

https://github.com/WLANThermo/WLANThermo_v2/tree/frt_wurzelrekursion

In der Config muss man dann manuell
pit_controller_type = FRT
anpassen und auch die Werte manuell in der Config ändern.

@cfi01
Copy link

cfi01 commented Nov 9, 2016

2016-11-09_Frt-Wurzelrekursion - Prozessoptimierung ohne Regelparameter ohne Ausgleich.xlsx

Ich habe das Tabellenblatt "ohne Ausgleich" mal geändert. Bitte mal prüfen.

@BjoernSch
Copy link
Contributor Author

Da bleibt dann nur ein P-Regler mit nichtlinearer Kennlinie übrig.
Gibt es dazu irgend eine Herleitung, mit dem Original hat das ja so gut wie nichts mehr zu tun.

@cfi01
Copy link

cfi01 commented Nov 14, 2016

Es hat mir keine Ruhe gelassen. Nun mein letzter Versuch. Wir haben ja eine Regelstrecke mit Ausgleich. Siehe hier:
https://support.industry.siemens.com/cs/document/7789028/wann-spricht-man-von-einer-regelstrecke-mit-bzw-ohne-ausgleich-?dti=0&lc=de-WW
Den FRT Regler habe nun mal im Excel dem PID Regler gegenübergestellt.
2016-11-14_Frt-Wurzelrekursion - Prozessoptimierung ohne Regelparameter mit Ausgleich.xlsx

Die Ableitung ohne Ausgleich ist scheinbar fehlerhaft. Wenn es nicht brauchbar ist, möchte ich mich für die Verwirrung entschuldigen.

@BjoernSch
Copy link
Contributor Author

Wenn man ein bisschen hin- und hersimuliert erhält man auch gerne folgendes Problem:
Ist-Wert auf 22, langsam steigend, Führungsgröße auf 18.
Ausgangswert steigt dann auch immer weiter an,
Das mach so keinen Sinn. Im Moment habe ich auch keine Ahnung warum das alles nicht so funktioniert, denke aber das der Fehler nicht an uns liegt.
Sonst hätte man von der Wurzelrekursion auch schon mehr von gehört.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants