Simulink ブロックのファイル名​パラメータをワークス​ペース変数で定義する​にはどうすればよいで​すか?

JMAG-RT ブロックや S-Function ブロックなど、ファイル名を指定するパラメータに対して、ファイル名を直接入力する代わりにワークスペース変数を使用して設定することはできますか。また、変数による設定ができない場合の代替方法はありますか。Simulink R2022a を使用しています。

 Accepted Answer

MathWorks Support Team
MathWorks Support Team about 2 hours ago

0 votes

ブロックの仕様によりますが、多くの場合はワークスペース変数を利用してファイル名を設定できます。
例えば MATLAB コマンドウィンドウで以下のように変数を定義します。
x ='filename';
その後、ブロックのファイル名パラメータに以下のいずれかを入力します。
x
または
sprintf(x)
​ただし、変数名を入力した際にエラーとなる場合は、そのパラメータが変数参照をサポートしていない可能性があります。その場合は MATLAB スクリプトから set_param を使用してパラメータ値を変更する方法をご利用ください。​
set_param を使用する方法
ブロックにファイル名を設定した状態でブロックを選択します。
get(gcbh)
表示されたパラメータ一覧から、対象となるファイル名パラメータの名前を確認します。
例:filename_ : myFile.rtt
set_param を使用して値を設定します。
set_param('ブロックパス', 'filename_', 'myFile.rtt')
注意
  • 変数参照が利用できるかどうかはブロックごとの実装に依存します。
  • 変数参照をサポートしていない場合でも、set_param を利用することでモデルを開かずにパラメータ値を変更できる場合があります。

More Answers (0)

Categories

Find more on Simscape in Help Center and File Exchange

Products

Release

R2022a

Community Treasure Hunt

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

Start Hunting!