Programmatically to get member data type in In Bus Element Block

Hello everyone
i would like to get data type of member in the bus element
could anyone suggest me with an example code

Respuestas (5)

I have created and uploaded an example file with an "Out Bus Element Block" and shown how to access the "Data Type" in the following code:
open_system("example");
block = Simulink.findBlocksOfType(bdroot,'Outport');
portname = get_param(block(1),'PortName');
% Here, we have only one Outport, you might need to modify in order to specify
% which block corresponds to Out Bus Element
param = get_param([bdroot '/' portname '.Signal.signal1'],'DataType')
param = 'int64'
close_system(bdroot)
Further, you can use the following documentation which illustrates the ability to set a parameter, and use the convention to get parameters too:
Hope this helps!

7 comentarios

thank you very much for your answer @Ganesh
i understood the concept of bus element parameter extraction
but it is not works for me.
the error it shown "Invalid Simulink object name"
Ganesh
Ganesh el 6 de Ag. de 2024
Editada: Ganesh el 6 de Ag. de 2024
Could you please share the model that you are using? Or a part of it should be good too.
thank you every much
but sorry i can not share it or a part of it .
That's okay.
The naming should go something like this -- model_name/portname.NestedData.var
Do ensure that this is being used. Also, try removing any spaces in your model name, port name or variable names.
thank you very much for your suggestion
Thank you
Thanks for your confirmation

Iniciar sesión para comentar.

Hi,
To programmatically obtain the data type attribute value of an In Bus Element, the function “get_param” should be used. The data type attribute value of an In Bus Element corresponds to the parameter ‘OutDataTypeStr’. This parameter should be passed to the “get_param” function, to programmatically obtain the data type of the bus element. For more information, refer to this documentation link of the function “get_param” - https://www.mathworks.com/help/simulink/slref/get_param.html.
get_param("<path_to_OutBus>/OutBus.NestedBus.Chirp", "OutDataTypeStr")
Note: Modify the path so that it corresponds to the correct location of OutBus” in your model.
Please refer to this documentation link for more details on programmatically accessing attributes of the In Bus Element - https://www.mathworks.com/help/simulink/slref/inbuselement.html#:~:text=elements%0Ano%20default-,Attributes,-To%20specify%20attributes
Hope this helps!
Raghava

2 comentarios

thank you very much for your answer
but i have try above method before , it is not work TT.
Ok thank you

Iniciar sesión para comentar.

Categorías

Más información sobre Simulink Functions en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 6 de Ag. de 2024

Respondida:

el 25 de Sept. de 2024

Community Treasure Hunt

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

Start Hunting!

Translated by