| 
MATLAB und LabVIEW 
				 
					Hallo, Leute! 
 
Ich hab' ein Problem mit der Einbindung einer von MATLAB generierten DLL in LabVIEW. Die Versionen, welche ich verwende, sind MATLAB R2006a und LabVIEW 8.2.1. Ich verwende weiters das Simulation Interface Toolkit Version 3.2.0 zur Generierung einer DLL mittels des Real-Time Workshops. 
 
Folgende Schwierigkeiten haben sich ergeben: 
 
Grundsätzlich möchte ich in MATLAB Simulink einen Stateflow modellieren und hab' zu Testzwecken zwei Inports (3x3-Matrix) verwendet und im Zuge meines Flows werden diese beiden miteinander multipliziert und anschließend eine Inverse-Matrix erstelt. Diese soll dann mittels Outport wieder an die aufrufende Instanz übergeben werden. Das ganze hab ich jetzt von MATLAB kompilieren lassen und eine DLL erstellt. Diese hab' ich dann in LabVIEW eingebunden, wobei ich folgende Methoden in angegebener Reihenfolge verwendet habe: 
 
1.	Initialisierung des Modells: NIRT_InitializeModel 
 
Parametername	Parametertyp 
return		double 
finaltime		double 
outTimeStep	double* (Pointer to Value) 
outNumInPorts	double (Pointer to Value) 
outNumOutports	double (Pointer to Value) 
numTasks		double (Pointer to Value) 
 
2.	Durchführen und Durchlaufen des Stateflows: NIRT_Schedule 
 
Parametername	Parametertyp 
return		double 
inData		double* (3D-Array) 
outTime		double* (Pointer to Value) 
dispatchtasks	long * (Pointer to Value) 
 
3.	Ermitteln des Outputs: NIRT_PostOutputs 
 
Parametername	Parametertyp 
return		long 
outData		double* 
 
4.	Abschließen und Finalisieren des Modells: NIRT_FinalizeModel 
 
Parametername	Parametertyp 
return		long 
 
Jetzt ist es aber so, wenn ich diesen Ablauf in LabVIEW durchspiele, dass die gesamte Entwicklungsumgebung abstürzt und einen Speicherfehler meldet. Das Lustige an dieser Sache ist jedoch jenes Faktum, dass die DLL ohne die Berechnung der Inverse-Matrix keine Probleme bereitete. 
 
Hat von euch irgendwer eine Ahnung was ich falsch mache oder warum kann ich eine 3x3-Matrix nicht mittels einer von MATLAB generierten DLL invertieren? 
 
Liebe Grüße 
Stefan
				 
				
				
				
				
				 
			 |