Seite 2 von 3

Re: PID Regler macht Unsinn...

Verfasst: Fr Mai 26, 2017 1:48 pm
von ChristianK
Welches delay? Das effektive, das vom Controller oder das von Autotune?

Wird das Autotune Delay mit eingerechnet? X mal nach gesucht und irgendwie nie eine amtliche Aussage gefunden.

Re: PID Regler macht Unsinn...

Verfasst: Fr Mai 26, 2017 2:55 pm
von Alfagta
Wird natürlich nirgends mit einbezogen außer beim Autotune und da ist es eine TunerStudio Variable. Die MS selbst weiß von dem Delay nichts.
Aber physikalisch ist es da.

Re: PID Regler macht Unsinn...

Verfasst: Fr Mai 26, 2017 3:06 pm
von martin2day
Hallo,

ich komme gerade von einer längeren Runde.
Ich habe meiner Theorie entsprechend die Werte angepasst.
Vorher hatte ich P=54 I=25 D=0
Aktuelle fahre ich P=30 I=40 D=0

An einigen Stellen sieht es jetzt plausibel aus, aber es gibt auch Stellen die wieder nicht passen.
Wichtig ist für mich aber die letzte Aussage: Der Delay wird nirgends mit einbezogen.
Mit dieser Tatsache ist es quasi unmöglich einen sauberen Regler einzustellen... zumindest bei meinem Motor.
Bei geschlossener TPS habe ich ein Delay von über 1,5s... hier muss die Reglung sehr sanft eingestellt werden, weil es sonst nur schwingt.

Ich fahre lieber mein VE ganz sauber ein und versuche mich an der EAE... die EGO wird deaktiviert.

Gruß Martin

Re: PID Regler macht Unsinn...

Verfasst: Fr Mai 26, 2017 4:46 pm
von Alfagta
Deswegen sagte ich stell die ignition events hoch, mal auf 24 oder 32...

Und Ego so 5-10% regeln lassen.

Gruß

Re: PID Regler macht Unsinn...

Verfasst: Sa Mai 27, 2017 9:29 am
von Dennis_Zx7r
Ego ist nicht dafür gedacht, bei AE-Events oder anderen Übergangszuständen zu arbeiten, damit sollte das Delay auch kein Problem sein.
Das soll bewusst keine schnelle Regelung sein.
Würde daher wie andre schon gesagt haben die Werte auch etwas träger stellen und (wenn perfekte Lamdawerte das Ziel sind) EAE versuchen einzupassen, wobei dafür aufgrund der Funktionsweise der VETable und Korrekturen top sein müssen.

Re: PID Regler macht Unsinn...

Verfasst: Mo Mai 29, 2017 7:59 am
von suzuki90
Ist das nur beim Lambdaregler so ein Typ C?
Wie ist das bei Leerlauf- und Ladedruckregelung?
Nachdem die mit den Initial Values arbeiten, sicher anders, oder?

Re: PID Regler macht Unsinn...

Verfasst: Mo Mai 29, 2017 9:42 am
von Cali-LET
Sofern mein bescheidenes Wissen richtig ist- weil ja ab und zu etwas über eine zu träge Regelung gesprochen wird und man sich von hohen WEerten in der Ign Events per Step sträubt.

Es werden ja Zündungen pro korrektur gezählt. also sinkt die Zeit mit steigender Drehzahl.
Drehzahl zu Zeit zwischen Korrektur

Bei einem 4 Zylinder und 20 Events

1000 rpm 0,6 Sek
2000 rpm 0,3 Sek
3000 rpm 0,2 Sek
4000 rpm 0,15 Sek
5000 rpm 0,12 Sek
6000 rpm 0,1 Sek

Bei 4 Zylinder und 30 Events
1000 rpm 0,9 Sek
2000 rpm 0,45 Sek
3000 rpm 0,3 Sek
4000 rpm 0,225 Sek
5000 rpm 0,18 Sek
6000 rpm 0,15 Sek

Bei einem 6 Zylinder 30 Events
1000 rpm 0,6 Sek
2000 rpm 0,3 Sek
3000 rpm 0,2 Sek
4000 rpm 0,15 Sek
5000 rpm 0,12 Sek
6000 rpm 0,1 Sek

Bei einem 6 Zylinder fahre ich meistens mit 31. Bei einem 4 Zylinder stelle ich meistens 26



@Alpha.
Warum aber nur 5-10%. Ich hab den auf 15% stehen. Nicht aus dem Grund weil die VE Werte wie eine Ackerlandschaft aussehen, sondern für den Fall dass irgendwann mal was schief läuft. Klar, dann hat man ganz andere Probleme, aber für so einen Fall habe ich dann doch etwas mehr sprit

Re: PID Regler macht Unsinn...

Verfasst: Mo Mai 29, 2017 10:35 am
von Alfagta
Cali-LET hat geschrieben: @Alpha.
Warum aber nur 5-10%. Ich hab den auf 15% stehen. Nicht aus dem Grund weil die VE Werte wie eine Ackerlandschaft aussehen, sondern für den Fall dass irgendwann mal was schief läuft. Klar, dann hat man ganz andere Probleme, aber für so einen Fall habe ich dann doch etwas mehr sprit
Das war jetzt speziell für Martin gemeint.
Wenn seine VE noch ned so gut passt ist EGO halt wild am korrigieren. Deswegen meinte ich er soll die mal etwas eingränzen.

Re: PID Regler macht Unsinn...

Verfasst: Mo Mai 29, 2017 10:39 am
von Cali-LET
Ah Ok, dann war das mein fehler. Hab ich anders verstanden

Re: PID Regler macht Unsinn...

Verfasst: Mo Mai 29, 2017 10:53 am
von ChristianK
Es funktioniert trotzdem deutlich schneller mit 2 Ignition Events.

Im Regelfall habe ich max. 2% ego (0,1-0,2 AFR). Die hätte ich wahrscheinlich nicht, wenn die Mat curve und baro curve drei mal so viele Punkte hätten.

Wenn der bei irgendeiner Mat oder baro zu fett/mager ist, hat man eine Tendenz. Diese Tendenz trifft eigentlich auf das gesamte Table zu.
Also warum soll man die Events so hoch stellen, dass der jedes mal so lange braucht, bis die Regelung alles x mal kontrolliert hat? Sobald die Regelung eine Tendenz erkennt, so die gas geben. Und selbst wenn es mal einen Überschwinger von 0,1AFR gibt, ist das in Ordnung.
Lieber einen kleinen Überschwinger, als ewige Regelaktion, ohne schnell das Ziel zu erreichen.

Die EGO habe ich auf 10%. Aber eher nicht der Sicherheit halber. Wenn keine MS3 verbaut ist, kann man das mit der Sicherheit sowieso vergessen. Da reicht das bisschen zusatzsprit sehr wahrscheinlich nicht. Um 15% fetter zu regeln vergeht so viel Zeit, dass der Motor zwischenzeitlich schon drei mal abgeraucht ist.

Re: PID Regler macht Unsinn...

Verfasst: Mo Mai 29, 2017 11:11 am
von Dominik335i
martin2day hat geschrieben:Ich habe mir den Regler noch einmal genau angesehen da mir der Typ C bis dahin nicht geläufig gewesen ist.

Der P-Anteil schaut schaut nur auf die Änderung vom Istwert. Wenn dieser sich nicht ändert, dann ist der P-Anteil in der Gleichung gleich Null. Geht dieser nach oben (Tendenz zum fetter werden) dann gibt er zu, und umgekehrt.

Der I-Anteil schaut als einziges auf die Abweichung zw. Soll und Ist. Allerdings auch immer wieder neu bei jeder Berechnung. Ein Aufsummieren und damit ausregnen eine Regelabweichung ist damit nicht möglich.

Im Grunde dürften die Parameter nicht so heißen, den der P-Anteil in MSQ ist eigentlich ein D Anteil und der I Anteil arbeite als P Anteil.
Es handelt sich also um einen PD Regler... es wird nie auf den eigentlichen Sollwert geregelt. Das kann der Regler gar nicht.

Jetzt macht es für mich auch Sinn, dass der Programmierer geschrieben hat er erhöht den I Anteil solange bis nichts übershwingt und nimmt dann noch etwas P hinzu.

Die Anleitung zum einstellen der Regelparameter ist damit vollkommen hinfällig. :-)

Hallo zusammen,

Regelungstechnik hat mir schon im Studium keinen Spaß gemacht und ich hab's nicht verstanden :lol:

Daher die Frage an die Profis: Gibt es denn für diesen Typ C Regler eine Anleitung zum Finden der passenden Parameter? Ich hab's bisher immer nach der Methode "P-Anteil erhöhen bis es schwingt und dann Amplitudendauer messen" gemacht. Aber das scheint ja leider nicht ordentlich zu funktionieren... :?

Gruß
Dominik

Re: PID Regler macht Unsinn...

Verfasst: Mo Mai 29, 2017 12:40 pm
von martin2day
Dominik,

ich kann es dir nicht sagen, da ich mit dieser Art Regler keine Erfahrung habe.
Für einen herkömmlichen PI(D) Regler nutze ich des öfteren verschiedenste Einstellregeln mit Erfolg.

Im Grund spricht nichts gegen den Ansatz das man erst einmal die Stabilitätsgrenze ermittelt und dann über Amplitude und PKrit. die Werte ermittelt.
Und ich würde auch nicht sagen der Regler arbeitet nicht... er ist ja extra so erstellt worden... mit dem Hintergrund "langsam" zu arbeiten.
Soll heißen kleine Abweichungen nachzuregeln... das macht er auch.

Mein VE Table passt übrigens sehr gut. Ich habe nur Probleme mit der TBI im AE Bereich...
Ab und an wird mein riesiger Wandfilm komplett trocken gezogen und dann reicht die große Menge Sprit einfach nicht aus um nicht abzumagern bei größerer Beschleunigung.
Die Idee war hier mit der EGO zu arbeiten, aber da der Regler nicht dafür ausgelegt ist macht das keinen Sinn.

Ich werde hierfür ausgiebig mit der EAE arbeiten.

Gruß Martin

Re: PID Regler macht Unsinn...

Verfasst: Mo Mai 29, 2017 1:14 pm
von Alfagta
Es ist halt einfach so das bei diesem Typ C Regler der Error von Soll - Ist nur auf den i-Term wirkt.

P -Anteil:= Kp * (Letzter Istwert - Istwert)
I -Anteil:= Ki * (Sollwert - Istwert)
D- Anteil:= Kd * (2*Vorletzter Istwert - Istwert - Letzter Istwert)

Also wirkt nur mehr der I-Anteil direkt auf die Sollwert Änderung ein. (Wie Marting schon mal erwähnt hat I = P beim Typ c)

In der Automatisierung kommt schon des öfteren der Typ C zum Einsatz, je nach Steuerung halt.
Hier ein Link wo man den Vergleich der Typen A,B,C mit Sprungantwort sieht. http://bestune.50megs.com/typeABC.htm

Warum die MS Jungs für das Ego den Typ C gewählt haben...keine Ahnung. Bei der Ego hat man ja selten einen genau gleichbleibenden Sollwert.
Und die Änderungen von Soll/Istwert sind sehr schnell und ned wirklich vorhersebar.
Rein über die EGO die VE ausbügeln geht einfach ned gut. Was mir auch ned so gut gefällt ist das EGO bei Decel, Accel jedesmal abgenullt statt angehalten wird.
Hier würde eine es glaub ich besser laufen wenn man den dort belässt wo er war. Also Gasstoß --> AE ballert rein is aber auch wieder mal vorbei, nach gewisser Zeit lass den Regler dort weiter machen wo er war.

Re: PID Regler macht Unsinn...

Verfasst: Mo Mai 29, 2017 1:58 pm
von Dominik335i
martin2day hat geschrieben:Im Grund spricht nichts gegen den Ansatz das man erst einmal die Stabilitätsgrenze ermittelt und dann über Amplitude und PKrit. die Werte ermittelt.
Aber sollte man die Stabilitätsgrenze für den P-Anteil ermitteln (P schrittweise erhöhen, so wie ich es bisher immer mache) oder den I-Anteil (P=I)?

Re: PID Regler macht Unsinn...

Verfasst: Mo Mai 29, 2017 4:58 pm
von martin2day
Hey,

eine schöne Diskussion ist das geworden, vielen Dank schon mal dafür.
Wie Alfagta schreibt:
P -Anteil:= Kp * (Letzter Istwert - Istwert)
I -Anteil:= Ki * (Sollwert - Istwert)
D- Anteil:= Kd * (2*Vorletzter Istwert - Istwert - Letzter Istwert)

Erschwerend kommt noch hinzu, dass die Summe der 3 Anteile, bei jedem EGOstep aufsummiert, quasi integriert wird.

Code: Alles auswählen

egocor_100[0] += ego1step;
Darauf bin ich im Nachbarforum aufmerksam gemacht worden.
Somit ist mir jetzt auch klar wo der I-Anteil her kommt.... Dieser ist dann über die Ignition Events Per Step änderbar. Es wird aber eben alles Integriert.

Die Aussage
Bei der Ego hat man ja selten einen genau gleichbleibenden Sollwert.
verstehe ich nicht ganz. Beim Reglerentwurf kann man doch nach Führungsverhalten oder Störverhalten einstellen. Führungsverhalten ist doch für einen sich ändernden Sollwert gedacht, oder? ;-)

Und warum soll die Reglung dort bleiben wo sie ist. Das macht in meinen Augen keinen Sinn. Nach dem Gas geben befinden man sich doch in den seltensten Fällen wieder bei der Ausgangssituation wieder. Und da ist es in meinen Augen, aufgrund der neuen Situation schon gut, dass er bei 0 (100%) wieder aufsetzt.

Aber am Ende ist das alles Theorie. :-)
Ich habe mir sehr viele Gedanken über den Regler gemacht und dabei festgestellt, dass es so viele Sonderfälle gibt, die mit einem einzig parametrierten Regler nicht abzulenken sind.
Betrachtet man das Entwurfsverfahren nach Einstellregeln nach Chien, Hrones und Reswick https://de.wikipedia.org/wiki/Faustform ... gstechnik) der Sprungantwort, sieht man sehr schnell, dass die Verzugszeit Tu (in unserem Fall das Lambdadelay) direkt in die Regelparameter mit eingeht.
--> Bei langer Totzeit und schnellem Gasgeben kann man die EGO Reglung nur sehr träge einstellen. Ergo kann man sie in diesem Fall vergessen.

Für den Fall, dass etwas "komisch" ist am Fahrzeug und der Wert aus welchen Gründen auch immer zu stark abweicht müsste man die Regelung ebenfalls sehr schnell einstellen. Auch das macht keinen Sinn. Da ist der Motor zu schnell kaputt... hier müsste man den AFR Wert direkt ansehen und sofort reagieren und z.B. die Zündung zurückfahren.

Also bliebt am Ende wirklich nur die Aufgabe nicht 100% passende Parameter wie INJ-Delay oder Baro oder was auch immer im Bereich von etwa 10% auszuregeln... und dass macht die verbaute Reglung ja bereits...
Zwar nicht 100% auf den Sollwert, aber es geht in guten Schritten in die richtige Richtung.

Und noch dazu Dämpft die verbaute Regelung zu stark auftretende Sprünge im AFR Signal. Was auf den ersten Blick komisch für mich aussieht aber am Ende Sinn macht.

Dominik: Auch meinen Regler habe ich über das Verfahren P soweit erhöhen bis es schwingt und dann über den LOG die Schwingungsdauer ablesen bestimmt. Da das bei mir auch auf Anhieb funktioniert hat, scheint der Ansatz erst mal zu funktionieren.
Ich musste aber bei mir die Ignition Events Per Step verringern und die Controller Auth erhöhen um das System überhaupt zum Schwingen zu bringen.

Gruß Martin