| Using Simulink | ![]() |
表示
replace_block('sys', 'blk1', 'blk2', 'noprompt')
replace_block('sys', 'Parameter', 'value', 'blk', ...)
詳細
replace_block('sys', 'blk1', 'blk2') は、ブロックまたはマスクタイプが 'blk1' である 'sys' 内のすべてのブロックを 'blk2' で置き換えます。'blk2' がSimulinkの組み込みブロックの場合は、ブロック名のみで構いません。'blk' が別のシステムにもある場合は、そのブロックの絶対パス名が必要です。'noprompt' を省略すると、Simulinkは、置換する前に、一致するブロックを選択するよう尋ねるダイアログボックスを表示します。'noprompt' 引数を指定すると、ダイアログボックスは表示されなくなります。出力変数を指定すると、置き換えられたブロックのパスがその変数に格納されます。
replace_block('sys', 'Parameter', 'value', ..., 'blk') は、指定したパラメータに対して指定した値をもつ'sys' 内のすべてのブロックを 'blk' で置き換えます。パラメータと値の組合わせを何組でも指定することができます。
例題
つぎのコマンドは、f14 システムにあるすべてのGainブロックをIntegratorブロックで置き換え、置き換えられたブロックのパスを RepNames に格納します。Simulinkは、置換を行う前に、一致するブロックの一覧をダイアログボックスに表示します。
RepNames = replace_block('f14','Gain','Integrator')
つぎのコマンドは、clutch システム内のUnlockedサブシステムにある Gain が 'bv' のすべてのブロックをIntegratorブロックで置き換えます。Simulinkは、置換を行う前に、一致するブロックの一覧をダイアログボックスに表示します。
replace_block('clutch/Unlocked','Gain','bv','Integrator')
つぎのコマンドは、f14 システム内のGainブロックをIntegratorブロックで置き換えますが、ダイアログボックスを表示しません。
replace_block('f14','Gain','Integrator','noprompt')
参考
find_system, set_param
| open_system | save_system | ![]() |