Replacing Blocks in Simulink but keep their value

1 view (last 30 days)
Leonid Guerchkovitch
Leonid Guerchkovitch on 11 Nov 2021
Answered: Paul on 11 Nov 2021
Hello,
I'm runnign the following script for a Simulink model called Replacement_Blocks. I am attempting to replace the constant block found in the generic Simulink library with a certified primitive library that is needed for aerospace development applications.
RepNames = replace_block('Replacement_Blocks','Constant','do178Lib/Simulink/Sources/Constant');
When I run this script the values of the replacement blocks(ones originally with white background) are overwritten. Is there a way to keep the value of the original constant blocks while replacing it with the primitive library equivalent?

Answers (1)

Paul
Paul on 11 Nov 2021
You can use :
val = get_param(blk,'Value')
to get the value of the Contant block(s) to be replaced.
Then replace the block(s).
Then use
set_param(RepNames,?,val) % fill in ? with the correct parmeter for the new block
Should be able to loop over all the block replacement pairs.

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!