Forum: Mikrocontroller und Digitale Elektronik Strecke regeln mit Matlab und OHNE SIMULINK


von Ralph (Gast)


Lesenswert?

Hallo,

ich müsste in Matlab eine einfache Regelstrecke aufbauen: eine PT1 
Strecke, die von einem PI-Regler geregelt wird.
Mit Simulink wäre es kein Problem, aber es soll ohne gehen.

Vielleicht stehe ich jetzt etwas auf dem Schlauch, aber ich weiß einfach 
nicht genau, wie ich das nun machen soll.

Den PT1 kann ich ja mit dem Befehl tf darstellen.
Den PI-Regler kann ich auch durch die Übertragungsfunktion darstellen.

Wie verknüpfe ich die beiden jetzt, einfach multiplizieren? Und wie baue 
ich die Rückführung ein?

Vielleicht kennt jemand ja hierzu nützliche und frei zugängliche 
Lektüre, das wäre super.

Schon mal vielen Dank,
Ralph

von Alex E. (tecnologic) Benutzerseite


Lesenswert?

Moin,

ohne das jetzt probiert zu haben. Die Funktionen TF und PID haben doch 
einen Ausgang und einen Eingang wo ein Struct oder Array rein geht. Und 
wieder zurückgegeben wird. Also den Ausgang des PID an den Eingang von 
der TF, ob du das nun malst oder schreibst. Das Prinzip bleibt.

Multiplizieren nur wenn du die TF vom Gesamtsystem haben willst. Aber du 
willst sicherlich Zeitsignale Plotten oder?

MfG

Tec

von TestX .. (xaos)


Lesenswert?

@TO
Du solltest dich mal ein wenig mit Systemtheorie beschäftigen...es gibt 
etwas das sich "Gesamtübertragungsfunktion" des geschlossenen Kreises 
nennt. Die kannst du einfach mit tf() darstellen und beliebig in Matlab 
rumrechnen.

Als Tipp: K(S)-Regler, P(S)-Übertragungsstrecke, M(S)-Messglied(=1 wenn 
in der Rückführung nichts drinnen ist.)
Damit ergibt sich als Gesamtübertragungsfunktion der Strecke (Also 
Eingang Führungsgröße -> Ausgang Systemgröße)
G(S) = (K(S)*P(s))/(1+K(s)*P(s)*M(S))

von Ralph (Gast)


Lesenswert?

Hi Tec,

danke für deine Antwort.
Ich hab mittlerweile noch ein wenig über die Sache gefunden. Es gibt 
extra Befehle wie feedback für Rückführung, series für Reihenschaltungen 
etc.

Damit sollte es denke ich gehen! :-)

Die Idee mit dem Array sollte wahrscheinlich auf's Gleiche rauslaufen..

von Ralph (Gast)


Lesenswert?

Hi Andi,

vielen Dank auch dir.
So sollte es noch einfacher gehen, ich probiers gleich mal aus!

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.