How to find ports names on ReferenceModel block
7 次查看(过去 30 天)
显示 更早的评论
Hello, I would like with a script to find the Inports names and Outports names of a ReferenceModel block which file is missing.
I tried to find it with the structure returned by get(gcbh). But no information.
If I save the model in ".mdl" I can find this information while I read it in text mode.
ModelReferenceVersion "1.4"
List {
ListType InputPortNames
port0 "SW_rad"
port1 "SW_radps"
port2 "IS_radps"
port3 "IS_rad"
}
List {
ListType OutputPortNames
port0 "VehicleSpeed_kmph"
port1 "TS_Nm_target" ....
So the information is saved but I don't know how to access to it.
Thank you.
0 个评论
回答(2 个)
Mayur Agnani
2018-12-17
Hi Stephane,
I understand that you want to get Inport and Outport names of a Reference model block.For getting names of port you can use
find_system(gcb,'BlockType','Outport')
find_system(gcb,'BlockType','Inport')
In your question you mentioed that that the files are missing for the Referenced block. For the above function to work you need to have files of the Referenced block.
Below is the link to find_system documentation
Mayur
1 个评论
Fang Fang
2021-3-10
hi Mr. Agnani,
will matlab search the source model (.slx) automatically and find the names of a reference model block? I have tried your method but it showed error
Alex Hirzel
2023-1-27
For future reference, as of MATLAB 2020b, it is possible to use the following to get a structure that can be parsed into the port names and numbers. These numbers can then be fed to e.g. add_line.
inports = get_param(handle, 'InputPortNames');
outports = get_param(handle, 'OutputPortNames');
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!