|
|
Simulinkmodell in Matlab einbinden |
|
trying |
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 30.05.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 12.10.2020, 11:21
Titel: Simulinkmodell in Matlab einbinden
|
|
Hallo Leute,
ich bin mal wieder ratlos.
Ich muss für ein kleines Simulinkmodell eine Optimierung für drei Parameter durchführen.
Leider weis ich nicht genau, wie ich das Simulinkmodell in Matlab einbinden bzw. aufrufen kann, dass ich anschließend die Optimierung für das Modell durchlaufen lassen kann?
Kann mir hier vllt. jemand helfen ?
Vielen Dank im Voraus!
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 12.10.2020, 12:04
Titel:
|
|
Hallo,
zwei Möglichkeiten:
a) Simulink Design Optimization. Ich kenne mich selbst nicht damit aus, aber es gibt viele Videos.
b) sim mit Option 'SrcWorkspace','current' in der Zielfunktion bzw. nichtlinearen Nebenbedingungsfunktion aufrufen.
Wenn du konkretere Fragen stellst, kann man auch konkreter antworten. ;)
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
trying |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 30.05.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 13.10.2020, 13:47
Titel:
|
|
|
|
|
Hallo Harald,
ich versuche mal mich etwas genauer auszudrücken.
Ich habe ein kleines Simulink-Gasmodell mit drei Variablen.
Das Modell beschreibt eine diskontinuierliche Gasproduktion, welche durch Zwischenspeicherung einen konstanteren Volumenstrom für einen anschließenden Prozess liefern soll.
1. Variable: Einspeicherdatenreihe ( 8760 Werte, also für jede Stunde des Jahres ein Wert)
2.Variable: Zwischenspeichergröße
3. Variable: konstante Ausspeicherung
Ich will nun eine Optimierung durchführen, dass der Tank möglichst viele Zyklen besitzt (ein Zyklus ist Tank wird gefüllt und wieder entleert ).
Ich habe für jede einzelne Variable 15 verschiedene Datenreihen bzw. Werte zur Verfügung und und soll ein Skript schreiben, der die optimalen Werte findet.
Dazu soll das Simulinkmodell in dem Matlabskript aufgerufen und mit den zur Verfügung stehenden Werten durchgespielt werden. Die Daten mit der maximalen Zyklenzahl brauche ich.
Frage:
Wie rufe ich das Simulinkmodell in Matlab auf, dass ich anschließend mit for-Schleifen die Optimierung durchführen kann?
Vielen Dank im Voraus!!
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 13.10.2020, 14:42
Titel:
|
|
Hallo,
okay, das hat jetzt wenig mit einer Optimierung zu tun, wie ich sie generell sehe.
Zitat: |
Ich habe für jede einzelne Variable 15 verschiedene Datenreihen bzw. Werte zur Verfügung und und soll ein Skript schreiben, der die optimalen Werte findet. |
Sollen dann alle Kombinationen getestet werden, also 15*15*15, oder gehören diese Datenreihen bzw. Werte zusammen?
Zitat: |
Wie rufe ich das Simulinkmodell in Matlab auf, dass ich anschließend mit for-Schleifen die Optimierung durchführen kann? |
Du hast dann wohl Vektoren / Matrizen mit den Daten. Aus denen musst du in einer for-Schleife den gerade benötigten Teil in eine Variable extrahieren und dann sim aufrufen. Wie genau, hängt von der Antwort auf die erste Rückfrage ab.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
trying |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 30.05.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 13.10.2020, 14:53
Titel:
|
|
Hallo,
danke für die schnelle Antwort!
Nein sie gehören nicht zusamme. Also quasi 15*15*15.
Ja genau ich habe dafür Vektoren.
Viele Grüße
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 13.10.2020, 16:06
Titel:
|
|
Hallo,
dann etwa so:
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
trying |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 30.05.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 13.10.2020, 17:25
Titel:
|
|
Hallo Harald,
super vielen Dank!!
Eine Frage hätte ich noch dazu.
Muss ich die Parameter p1; p2; p3 noch iwo definieren bzw angeben ?
Woher weis das Porgramm, dass z.B p1 die Einspeicherdatenreihe darstellen soll ?
Viele Grüße
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.492
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 13.10.2020, 18:06
Titel:
|
|
Hallo,
wie gesagt:
Zitat: |
das Modell nutzt die Parameter p1, p2, p3 |
Wenn die Parameter in deinem Simulink-Modell anders heißen, dann musst du das eben aneinander anpassen.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
trying |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 24
|
|
|
|
Anmeldedatum: 30.05.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 16.10.2020, 12:24
Titel:
|
|
Hallo Harald,
ich habs geschafft.
Vielen Dank mal wieder!
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|