Bonjour tout le monde,
Avant toute chose, je voudrais rappeler que je travail sur une librairie xilinx, sur un modèle qui se nomme "test_replace.mdl".
Ce modèle dispose de blocks type 'Gain' (Simulink).
Je voudrais remplacer tout les 'Gain' (Simulink) par ceux de la librairie xilinx dont le nom est 'CMult'.
Pour ce faire je lance :
Tout fonctionne parfaitement, aucun problème de ce côte là.
Code : Sélectionner tout - Visualiser dans une fenêtre à part replace_block('test_replace', 'Gain', 'xbsIndex_r4/CMult');
Maintenant, je voudrais remplacer les blocks Gain (Simulink) par des CMult (Xilinx) tout en conservant la valeur du paramètre Gain.
Je ne vois pas trop comment faire puisqu'il me manque de la pratique mais voici mon idée.
Maintenant ce qu'il me manque c'est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Je fait une boucle qui scrutera un à un les blocks 'Gain' A chaque fois que je rencontre un block, je récupère la valeur de son gain en faisant : ParamGain = get_param(gcb,'Gain'); Je lance le remplacement de ce block uniquement. J'insère le Gain de l'ancien block via : set_param(gcb,'const',ParamGain) et je tourne dans la boucle tant qu'il reste des block non remplacés.
Comment tourner dans la boucle autant de fois qu'il y a de block 'Gain' ?
Comment faire en sorte que le gcb se déplace et se focalise sur le block en cours de remplacement (pour permettre la lecture du paramètre) ?
Comment faire en sorte qu'une fois le block remplacé, que le gcb soit focalisé sur le nouveau block (pour permettre l'écriture du paramètre) ?
Je sais qu'il me manque beaucoup d'éléments, et je ne compte pas faire cette fonction de remplacement en deux minutes, cependant, si vous avez une idée, même sur un seul des points, je suis preneur
Merci par avance
yamin
PS : j'ai regardé avec l'aide en ligne qui propose la syntaxe suivante, mais ce n'est pas vraiment ce que je cherche à faire :
This command replaces all blocks in the Unlocked subsystem in the clutch system having a Gain of 'bv' with the Integrator block.replace_block('clutch/Unlocked','Gain','bv','Integrator')
Partager