Half-self-answer: I managed to get this block run by the creation of a global list of objects. The simulink blocks just keep a reference (index as a scalar value) to these objects in their own state space.
custom type in Simulink S-Function internal state
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hi all,
What's the correct way to keep an internal reference to an object inside a Simulink Matlab level 2 S-Function. Buitins block.Dwork and block.ContState only support data types, I need to keep a reference to a network object tcp/udp and the following code fails:
block.Dwork(1).Data = tcpip('localhost',1234);
with message:
Invalid assignment in 'test/test'. Data must be a numeric or logical array
Looking at the documentation, I see no way to keep this reference in a "clean" way. The page http://www.mathworks.fr/fr/help/simulink/sfg/custom-data-types.html is about defining types for inputs/outputs and I understand limitations for signals entering and leaving the block. My case is a little bit different: this internal object should be kept during simulation but it is not intended to leak from the Simulink block.
Any help?
TIA
- Florent
0 Commenti
Risposta accettata
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Block Creation Basics in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!