Create input port from .m file

2 vues (au cours des 30 derniers jours)
Poornachandran
Poornachandran le 29 Août 2024
Réponse apportée : Rahul le 29 Août 2024
I have bus signals , which is mentioned in .m file ,
I need to make the model with individual signal not as bus interface.
Any script to create inport as individual signal from the .mfile

Réponses (1)

Rahul
Rahul le 29 Août 2024
I understand that you have some bus signals mentioned in a '.m' file. Further you need to make a model with individual signals as inports using a script.
You can follow the following method:
run('your_bus_signals_file.m'); % Using 'run' function to load the bus data
% Replace with your actual .m file name
modelName = 'BusSignalsModel';
new_system(modelName);
open_system(modelName);
% Here assuming that the signals are stored in a 'struct' called 'busData'
% You can change this accordingly if the data is stored otherwise.
signalNames = fieldnames(busData);
% Using a loop adding all inport blocks to the model
for i = 1:length(signalNames)
% Creating inport using 'add_block' function
blockName = ['Inport', num2str(i)];
add_block('simulink/Sources/In1', [modelName, '/', blockName]);
% Setting properties of the inport
set_param([modelName, '/', blockName], 'Name', signalNames{i});
set_param([modelName, '/', blockName], 'Position', [30, 30 + 50*i, 60, 50 + 50*i]);
end
save_system(modelName);
open_system(modelName);
You can refer to the following documentations for your reference:
Hope this helps! Thanks.

Catégories

En savoir plus sur Schedule Model Components dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by