Forum: Offtopic Simulink mehrere PID's einstellen mit Tool möglich?


von Max M. (max_m1)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe einen Regelkreis in Simulink aufgebaut mit 4 PID Reglern (siehe 
BEISPIEL im Bild).

Mit einem einzigen PID Regler ist es in dieser (meiner) Situation leider 
unmöglich das System stabil zu bekommen, deswegen benötige ich mehrere 
PID Regler.

Mit geschickter manullen Auswahl von passenden Reglerkoeffizienten 
bekomme ich einen stabilen Regelkreis hin. Mit 4 PID Reglern hätte man 
4x3 = 12 Reglerparemeter welche man einstellen muss, also da ist schon 
ganz schön viel Probiererei nötig wenn man das per Hand machen muss.

Frage: Gibt es in Simulink/Matlab eine Möglichkeit mehrere PID Regler 
(wie im Bild) gleichzeitig und automatisch von Simulink einstellen zu 
lassen?

Es gibt so eine Möglichkeit wenn man mehrere Arbeitspunkte hat, siehe: 
https://se.mathworks.com/help/slcontrol/ug/designing-a-family-of-pid-controllers-for-multiple-operating-points.html

Aber ich habe nur einen Arbeitspunkt welchen ich mit einen Regler nicht 
stabil bekomme und benötige deswegen mehrere Regler welche ich gemeinsam 
einstellen müsste.

Wäre super wenn es in Simulink ein Hilfsprogramm dafür gäbe, weiß da 
jemand was? Es geht mir nur ums Prinzip, bitte nehmt das Bild nicht 
allzu ernst, es soll nur als Anschauung dienen.

von Tilo (Gast)


Lesenswert?

Was willst du mit "PID Controller" regeln? Da fehlt die Rückkopplung.
Ansonsten gibt das REgler Toolkit, damit kann man die Koeffizienzen 
eines Reglers ganz gut hinbekommen, so fern man Phasenreserve etc. 
angibt.
Dafür muss du mit der inneren Schleife anfangen und dich dann nach 
aussen arbeiten.
Es wird aber nichts geben, dass dir einfach alle Regler auf einmal 
optimiert, denken gehört dazu.

Ich hatte mal was ähnliches mit einer Motoransteuerung. Die Bestand aus 
einem Stromregler und einem Positionsregler.
Der Stromregler (PI) saß in der inneren Schleife. Für die Koeffizienten 
habe ich statt dem eigentlichen Signal einen Sprung auf den maximalen 
Strom angelegt und damit ganz passable Koeffizienten hinbekommen.
Danach kam der Positionsregler (PID) aussen rum dran. Hierauf gab ich 
den maximalen Positionssprung.
War soweit dann ganz einfach.

Was willst du damit aufbauen? Dein Beispiel verwendet kontinuierliche 
Signale. Eine Implementierung wird meistens diskret sein. Denk daran das 
die innere Schleife schneller sein sollte, damit das System stabil ist.

Das Konstrukt aus PID Controller 2 und 3 wundert mich ein wenig. Lässt 
sich der nicht zusammenfassen?

Bei mir hat sich der Regleraufbau durch nachdenken und Physik deutlich 
reduziert.

von Max M. (max_m1)


Lesenswert?

Hallo Tilo,

Danke für deinen Beitrag.

Tilo L. schrieb:
> Was willst du mit "PID Controller" regeln? Da fehlt die
> Rückkopplung.

Ja, die Rückkopplung hab ich vergessen.

Das mit innen anfangen und nach außen arbeiten hört sich gut an, dass 
werde ich probieren.

Ansonsten mein Beispielbild nicht so ernst nehmen.




> Ansonsten gibt das REgler Toolkit, damit kann man die Koeffizienzen
> eines Reglers ganz gut hinbekommen, so fern man Phasenreserve etc.
> angibt.

Meinst du das PID Tuning Tool in Simulink? Das hier:
https://www.mathworks.com/help/examples/slcontrol_product/xxxhtml_extraxscdspeedctrlpidblockpid_initialtuner.png

> Dafür muss du mit der inneren Schleife anfangen und dich dann nach
> aussen arbeiten.

Das ist ein guter Tipp! Ich probiers das mal aus mit dem PID Tuning 
Tool.

> Es wird aber nichts geben, dass dir einfach alle Regler auf einmal
> optimiert, denken gehört dazu.
>

Ja, leider bin ich noch kein richtiger Profi auf dem Gebiet wodurch ich 
mich da schwer tue.

> Was willst du damit aufbauen? Dein Beispiel verwendet kontinuierliche
> Signale. Eine Implementierung wird meistens diskret sein. Denk daran das
> die innere Schleife schneller sein sollte, damit das System stabil ist.
>

Gibt es da eine Faustformel um wieviel schneller der innere Kreis im 
Vergleich zum äußeren Laufen muss? Oder wie bestimmt man die 
Schnelligkeit im Allgemeinen wie schnell sowas sein muss? (Notfalls mach 
ich diesbezüglich einen extra Beitrag auf).
Macht es dann mehr Sinn wenn ich den Reglerentwurf gleich auf einen 
diskreten Regler (z statt s) in Simulink basieren würde?

Ich will eine Stabilisierungsplattform damit bauen. Gemessen wird die 
Drehrate (Kreisel), Beschleunigung (Beschleunigungssensor) und 
Neigungswinkel (AHRS). Bitte aber nicht zusehr auf meinen Anwendungsfall 
vertiefen, mich interessiert eher wie man in Simulink eine 
Reglerauslegung generell hinbekommt.


> Das Konstrukt aus PID Controller 2 und 3 wundert mich ein wenig. Lässt
> sich der nicht zusammenfassen?
>
Soll ein PI-Glied sein zur Pol-Nullstellenkompensation um Überschwinger 
wegzubekommen. Ich bin mir aber auch nicht ganz so sicher darüber (Ich 
hab ein wenig abgekupfert).

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.