LabVIEWForum.de
MATLAB-Script mit Live-Feedback - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: DLL & externer Code (/Forum-DLL-externer-Code)
+---- Thema: MATLAB-Script mit Live-Feedback (/Thread-MATLAB-Script-mit-Live-Feedback)



MATLAB-Script mit Live-Feedback - monoceros84 - 01.10.2013 14:15

Hallo!

Ich habe per Scriptknoten ein MATLAB-Script in mein VI eingebaut. Sinn des ganzen ist es, die ausgefeilten Optimierungsalgorithmen von MATLAB zu nutzen.

Das funktioniert auch ganz wunderbar, ich hätte nur gern eine Sache realisiert: Die Optimierungen dauern teilweise echt lang. Wir sprechen hier unter Umständen von mehreren Minuten, in denen der Benutzer vor seinem Programm sitzt und nicht weiß, ob dieses noch rechnet, wie weit es ist oder ob der PC schon abgestützt ist Wink Der Scriptknoten gibt nämlich seine Ergebnisse erst aus, wenn das MATLAB-Script durchgelaufen ist - klar, wie jedes andere VI aus.

Innerhalb MATLABs (wenn ich die Funktionen also nicht mit LabVIEW sondern direkt aus MATLAB heraus aufrufe) bekomme ich kontinuierlich Rückmeldungen im Kommandofenster zum Konvergenzverhalten, dem Fortschritt bzgl. maximalen Interationen usw. Auch Plots kann ich mir ausgeben lassen.
Die Frage nun: gibt es eine Chance, die Text- und/oder Grafikausgaben von Matlabfunktionen auch im Scriptknoten von LabVIEW zu nutzen? Oder gibt es anderweitig Möglichkeiten, noch während der Ausführung des Scriptknotens zumindest Status-Informationen an LV zu senden?

Ich denke da beispielsweise an parallele Schleifen, die mit einem kleinen Schriptknoten an MATLAB-Interna rankommen - oder dass im großen MATLAB-Script irgendwelche globalen Kommunikationsschnittstellen beschrieben werden, die ich in parallelen Schleifen kontinuierlich mit LV-Funktionen auslesen kann.
Ganz super wäre es, wenn dies sogar in beide Richtungen gehen würde, so dass der Nutzer über die LV-GUI die Scriptausführung abbrechen/beeinflussen kann.
Ich will euch aber nicht zu sehr in diese Richtung vorprägen, vielleicht gibt es ja noch ganz andere Lösungsansätze.

Dankeschön!


RE: MATLAB-Script mit Live-Feedback - Y-P - 28.11.2013 09:48

Hast Du da was herausgefunden? Das würde mich auch interessieren, ob, bzw. wie das geht.

Gruß Markus


RE: MATLAB-Script mit Live-Feedback - monoceros84 - 28.11.2013 10:54

Semi Wink

Also prinzipiell habe ich mein Script in verschiedene Abschnitte unterteilt, also mehrere Scriptknoten nacheinander angeordnet. Glücklicherweise bleibt die Matlab-Session erhalten, d.h. auf Variablen kann auch aus dem nachfolgenden Scriptknoten noch zugegriffen werden. Damit habe ich die Möglichkeit, zumindest Statusrückmeldungen und Zwischenergebnisse im LabVIEW auszugeben.

Darüber hinaus bietet Matlab für manche Funktionen die Option, automatisch einen Plot anzuzeigen - z.B. zum Konvergenzverhalten einer globalen Optimierungsfunktion. Witzigerweise unterdrückt LabVIEW genau diese Plots im Gegensatz zu eigenen Diagrammen nicht. Das hilft auch bei der Rückmeldung während längeren Rechenphasen.

Also zusammengefast habe ich mein Problem nicht wirklich gelöst, aber zumindest zur ersten Zufriedenheit umgangen.


RE: MATLAB-Script mit Live-Feedback - Y-P - 28.11.2013 12:43

Danke für die Infos. Top2

Gruß Markus