Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

how to change the reference of linked block..

Asked by Jonghun on 19 Nov 2012

Hello all.

I need some advice...

I made a link block which refers to a block in another lib file. (This link made by my dragging of the block from lib.mdl file to a.mdl)

is there any way to change this link manually like using set_param command. To make this problem clearly, I'd like to give you an simple example.

"a.mdl" has a linked block whose name is "target" that refers to "lib/target_a" block(lib.mdl file has target_a). And I want to change this linked block referring to "lib/target_b" block through command window

Simply, this is equivalent to change the value of "SourceBlock" in "a.mdl" file.

I did many googlings to find the answer of my question, but I couldn't get closer. I guess.. this type of control path would not be opened for users....

is there any suggestion or comment for this?

Thanks in advance..

0 Comments

Jonghun

Products

2 Answers

Answer by Guy Rouleau on 19 Nov 2012
Accepted answer

This should do it:

set_param('a/target','referenceBlock','lib/target_b')

This is mentioned here:

http://www.mathworks.com/help/releases/R2012b/simulink/ug/creating-and-working-with-linked-blocks.html

2 Comments

Jonghun on 20 Nov 2012

It works!

Thanks again.

Guy Rouleau
Answer by Kaustubha Govind on 19 Nov 2012

I don't imagine that this would be allowed with a simple set_param command because it might mean that things could go wrong with how library links work. One way to do this might be to use delete_block and add_block to physically replace the block.

1 Comment

Jonghun on 20 Nov 2012

You're right. We should use carefully .. this kind of internal value changing.. But I checked this was not impossible.

Anyway, thanks for your answer.

Kaustubha Govind

Contact us