callback simulink library StopFcn

4 次查看(过去 30 天)
Bonjour, je souhaite créer un bloc simulink (dans une librairie) qui utilise deux paramètres (placé dans le Mask). A la fin de l'exécution du modèle, je veux exécuter un petit bout de code, que j'ai placé dans un callback dans StopFcn. L'utilisateur saisit donc les 2 paramètres lorsqu'il double-clique sur le bloc (un nom de fichier et un format (bmp, jpg ou png)). C'est pour du traitement d'images. Le bloc est fonctionnel lorsque j'exécute mon petit bout de code (sans callback) après le Stop de mon modèle. Mais lorsque je place celui-ci dans le StopFcn du callback, les variables du Mask ne sont pas reconnues.
Dois-je rajouter dans un callback InitFcn ou autre, une instruction qui charge dans les 2 variables les paramètres saisis par l'utilisateur ?
Voici le message d'erreur : Error evaluating 'StopFcn' callback of SubSystem block (mask) 'sauvegarde_image4/Prise d'images avec RaspBerryPi'. Caused by: Undefined function or variable 'NomFichier'.
Merci d'avance pour vos réponses.

采纳的回答

Sebastian Castro
Sebastian Castro 2017-7-10
Hello! I have put your question through Google Translate -- I hope an English answer is fine...
Mask variables are, by design, only visible under the mask. For example, imagine you had 3 of these blocks in one model -- you would cause a variable conflict.
The way you could extract the block parameter into the base workspace is:
>> NomFichier = get_param('ModelName/BlockName','NomFichier');
- Sebastian

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Author Block Masks 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by