LabVIEWForum.de - mxarray und Matlab

LabVIEWForum.de

Normale Version: mxarray und Matlab
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Zusammen,

ich möchte mit Matlab erzeugte Dll in LabVIEW verwenden, jedoch unterstützt LabVIEW den DatenTyp "mxarray" nicht.
Der Support rät mir Wrapper Dateien zu schreiben, aber erst Matlab, dann C und dann erst in LabVIEW scheint mir ein wenig am Ziel vorbei.
In LabVIEW muss irgendwo schon dieser Datentyp "Mxarray" schon vorhanden sein, da das Math Interface Toolkit diesen Datentyp erzeugt.
Kann mir jemand helfen?

Grüße Hepman
' schrieb:Hallo Zusammen,

ich möchte mit Matlab erzeugte Dll in LabVIEW verwenden, jedoch unterstützt LabVIEW den DatenTyp "mxarray" nicht.
Der Support rät mir Wrapper Dateien zu schreiben, aber erst Matlab, dann C und dann erst in LabVIEW scheint mir ein wenig am Ziel vorbei.
In LabVIEW muss irgendwo schon dieser Datentyp "Mxarray" schon vorhanden sein, da das Math Interface Toolkit diesen Datentyp erzeugt.
Kann mir jemand helfen?

Grüße Hepman

Da hast Du wohl Pech. Denn mxArray is GANZ sicher kein eingebauter LabVIEW Datentyp. Das wird irgendwo extern in einer DLL oder eventuel mit viel Tricks in einem VI gemacht.

Ich bin mir nicht ganz sicher was Du mit dem Math Interface Toolkit meinst. Ist das die MathScript Erweiterung? In dem Falle ist das Ganze in einer externen Komponente die nicht weiter dokumentiert ist und daher nicht von anderen Modulen in LabVIEW einfach so verwendet werden kann. Ansonsten wenn es sich um eine extra VI library handelt, kannst Du eventuel versuchen in den VIs selber zu schauen wie das getan wird. Falls Du die VIs nicht anschauen kannst da sie Passwort geschützt sind bleibt halt doch nur das selber wrappen.

Rolf Kalbermatter
Rolf,
mittels des Math Interface Toolkits ist es moeglich, aus einem VI eine MEX function zu generieren die in Matlab per default Functioncall aufgerufen werden kann.
Dieses Toolkit ist voellig unabhaengig vom Matlab Script Server und/oder Mathscript Node.
Einfach gesagt, das Math Interface Toolkit erzeugt aus deinem LabVIEW eine Executable fuer Matlab, somit gelten auch dessen Randbedingungen wie RunTimeEngine und Treiberabhaengigkeiten.



So wie es aussieht ist der Datentyp mxArray vom Typ struct und somit kannst du dir selbst per Cluster diesen Datentyp aufbauen.
' schrieb:So wie es aussieht ist der Datentyp mxArray vom Typ struct und somit kannst du dir selbst per Cluster diesen Datentyp aufbauen.
In Theorie schon. In der Praxis ist es wohl ein dynamischer Datentyp der sich an die benötigte Grösse anpassen lässt, ähnlich wie LabVIEW Arrayhandles, und dann wirds etwas schwiereiger um das einfach so mittles Cluster zu simulieren. Ohne Aufruf von Mathlab API Funktionen wird es in dem Fall wohl eher nicht gehen.

Rolf Kalbermatter
Referenz-URLs