|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : mars 2011 Messages : 4 ![]() |
Bonjour,
Je travaille sur un projet sur lequel le service scientifique travaille sous Matlab et le système final est sous LabVIEW. Du classique Une fonction sous Matlab doit être appelée par le soft sous Labview. Après réunion avec les collègues, il y a deux possibilités:
Nous sommes en train de tester la solution de la dll (la 1)). La fonction a été compilée sous Matlab avec la commande suivante: En sortie j'ai 6 fichiers nommé WD (.dll, .c, .h, .exp, .exports, .lib). Jusque là ça SEMBLE ok. Dans le fichier WD.h, on trouve le prototype suivant: Code C :
Sous Labview, j'ai créé un VI contenant juste le test de cette dll. L'entrée est fichier texte contenant des valeurs numériques et de NaN. ![]() J'utilise la boite "Appeler une fonction d'une DLL". Pour la configuration de la boite, j'ai fait comme suis: ![]() ça c'est la configuration du tableau de sortie: ![]() Quand j'exécute mon VI, le tableau de sortie (mat_bw) contient les mêmes données que le tableau d'entrée (je devrai avoir des 0 ou des 1). Je suppose donc que ça ne marche pas :redface: Le soucis c'est que je n'ai aucune idée à quel(s) endroit(s) c'est mal configuré (compilation de la dll? appel? ...) Si des personnes s'y connaissant peuvent me donner des indications |
||
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Nicolas CHEVALIERDéveloppeur informatique Inscription : juillet 2007 Messages : 23 ![]() |
Bonsoir,
Il me semble que le paramètre "mat_bw" n'est pas du bon type. Dans la liste "Type de données", vous devriez trouver un élément "Unsigned Pointer-sized Integer" (Désolé je n'ai pas la version française devant les yeux). ![]() En espérant que cela vous permettra de résoudre votre problème. |
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() slimane souagEnseignant Chercheur Inscription : septembre 2009 Messages : 43 ![]() |
ça a marché pour vous les gars ?? confirmé nous pour qu'on pouvons apprendre de nouveau de vous
|
|
|
00
|
|
|
#4 |
|
Futur Membre du Club
![]() slimane souagEnseignant Chercheur Inscription : septembre 2009 Messages : 43 ![]() |
j'arrive pas a compiler le fichier .m sous matlab pourton matlab compiler est instaler jles vérifier avec la commande "ver" alors quelle est la comande que je doit appliqué j'ai essayer mcc -B csharedlib:WD windshear_detect et ça marche pas
|
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() slimane souagEnseignant Chercheur Inscription : septembre 2009 Messages : 43 ![]() |
alors la c'est bon la commande a marché ces moi qui a pas cherché le fichier apres lol
la commande pour crée un fichier DLL a partir d'un fichier .m est simple il suffit de mettre comme suit: Code : Sélectionner tout - Visualiser dans une fenêtre à part d'ou WD le nom du fichier résultant car yaura des fichier (.dll, .c, .h, .exp, .exports, .lib) et Abc.m est le nom du fichier matlab qui doit étre dans "current folder" le dossier par défault de matlab sujet résolue merci forum |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com