Figured it out. Simscape blocks use "/RConn1", "/LConn1", etc. to denote ports, while Simulink blocks use "/1", "/2", etc. The converter blocks use both depending on which side you're referencing.
How do you add physical signal lines programmatically?
16 views (last 30 days)
Show older comments
Isaac Friedman
on 24 Jan 2020
Commented: Maximilian Bleicher
on 29 Mar 2020
I just need to connect a Simulink-PS Converter to a Connector port in a subsystem, but the usual add_line function doesn't work. It returns an error, saying the object doesn't exist.
add_line('mymodel/mySubsystem','C_1','Conn_1', 'autorouting', 'on');
This is the specific error:
Invalid Simulink object name: C_1/1
0 Comments
Accepted Answer
More Answers (2)
J Chen
on 30 Jan 2020
use h1 = get_param('mymodel/mySubsystem/C_1','PortHandles'); to get the port handles. Use add_line to draw line between the handles. Refer to Connect Blocks Using Port Handles section at https://www.mathworks.com/help/simulink/slref/add_line.html?searchHighlight=add_line&s_tid=doc_srchtitle
0 Comments
Maximilian Bleicher
on 29 Mar 2020
Hi,
i'm facing the same issue. But neither of these variants work:
'PS-Simulink Converter1/1' or 'PS-Simulink Converter1/LConn1'
Is there a simple way to display all ports? What does the following information tell me?
get_param('model/PS-Simulink Converter1','PortHandles')
Inport: []
Outport: 91.0541
Enable: []
Trigger: []
State: []
LConn: 92.0541
RConn: []
Ifaction: []
Reset: []
Thank you in advance
1 Comment
Maximilian Bleicher
on 29 Mar 2020
I just figured it out. As long as the connection rules are fulfilled you just have to find the right connectors.
In this case, the following solution works:
port1 = 'Voltage Sensor/RConn1';
port2 = 'PS-Simulink Converter1/LConn1';
add_line(sys,port1,port2);
See Also
Categories
Find more on Electromagnetic Models in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!