Export bus datatype from referenced subsystem
조회 수: 5 (최근 30일)
이전 댓글 표시
I have created a nested bus in a referenced subsystem in simulink and would like to use the bus datatype again in a different model. For this i would like to export the datatype from simulink to a dataDictionary. I tried to open the referenced subsystem in a model and use the commands Simulink.Bus.createObject and Simulink.Bus.save. But i was not able to generate the object in matlab to save it afterwards. Is there a easier solution to this?
댓글 수: 9
Fangjun Jiang
2024년 5월 13일
That is weird. No more advice other than trying on the real model. Maybe contact the Mathworks tech support.
답변 (1개)
Yatharth
2024년 5월 22일
Hi Lukas,
In your given code :
mdl = "BusHierarchy";
block = "BusHierarchy/Bus Creator1";
load_system(mdl)
busInfo = Simulink.Bus.createObject(mdl,block);
file1 = "DefaultFunction";
Simulink.Bus.save(file1); -> This command lead to an default matlab file without any content of the Bus Creator1
I am not able to figure out what is your referenced sub-system?
I will share my process and code for your reference:
1. Opening a Bus Object creation example
openExample('simulink/CreateSimulinkBusObjectFromBlockExample')
2. Modifying the BusObjectCreationModel.slx : I selected everything and right clicked to make a Subsystem named SS1
3. Modifying the CreateSimulinkBusObjectFromBlockExample.mlx file:
open_system('BusObjectCreationModel')
%Create a Bus object that corresponds with the bus created by the Bus Creator block.
busInfo = Simulink.Bus.createObject('BusObjectCreationModel','BusObjectCreationModel/SS1/Bus Creator'); %here I have added SS1 in the block path
Simulink.Bus.save('BusObjectFunctionCellFormat'); % here I have added the bus.save function to generate the BusObjectCreationModel.slx
Here is the documentation for the Simulink.Bus.save https://www.mathworks.com/help/simulink/slref/simulink.bus.save.html
You can also directly save it to a file while creating the Bus object refer to this link highlight: https://www.mathworks.com/help/simulink/slref/simulink.bus.createobject.html#:~:text=Create%20Simulink.Bus%20objects%20from%20the%20Bus%20Creator%20block%20named%20Bus%20Creator1.%20This%20block%20receives%20input%20from%20a%20source%20block%20and%20another%20Bus%20Creator%20block.%20To%20save%20the%20Simulink.Bus%20object%20definitions%20in%20a%20function%2C%20also%20specify%20a%20filename.
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Event Functions에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!