このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Parameter Writer
ブロック パラメーターまたは変数への書き込み
ライブラリ:
Simulink /
Signal Routing
説明
Parameter Writer ブロックは、次のいずれかに書き込むことでブロック パラメーターの値を変更します。
シミュレーション中に調整可能なブロックのパラメーター
モデルを参照する Model ブロックに属するインスタンス パラメーター
マスク サブシステムのパラメーター
モデル ワークスペースの変数
ベース ワークスペース変数
Simulink.data.Dictionary
内の作成した変数。
Parameter Writer ブロックからパラメーターを書き込むことができるブロックを "パラメーター オーナー ブロック" と呼びます。パラメーター オーナー ブロックのサポートされるパラメーターが Parameter Writer ブロックで検出されるためには、サポートされるパラメーターが有効になっていなければなりません。
Initialize Function、Reinitialize Function、および Reset Function ブロックを含む Parameter Writer ブロックを使用して、イベントに応答します。たとえば、イベントはハードウェア センサーから値を読み取ってから、センサーの値に基づいてブロック パラメーターを更新することができます。
Parameter Writer ブロックの使用の詳細については、パラメーター値の初期化とリセットを参照してください。
それ以外の場合は、Parameter Writer ブロックを次のいずれかと同じタスクに含める必要があります。
Parameter Writer ブロックによってパラメーターが直接書き込まれるブロック (Gain ブロック、Model ブロック、マスク Subsystem ブロックなどの組み込みブロック、または S-Function ブロックなどの User-Defined Functions ブロックのいずれか)
ワークスペース変数を通じてパラメーターが間接的に書き込まれるブロック
ベース ワークスペース変数、モデル ワークスペース変数、Simulink.data.Dictionary
内の作成した変数、マスク パラメーター、または Model ブロック インスタンス パラメーターに Parameter Writer ブロックで書き込むには、その変数、マスク パラメーター、または Model ブロック インスタンス パラメーターが実行時に調整可能なパラメーターをもつパラメーター オーナー ブロックか C MEX S-Function で使用されていなければなりません。
マスク サブシステムに含まれる Parameter Writer ブロックの場合、Parameter Writer ブロックと対応するパラメーター オーナー ブロックの直接の親が同じマスク サブシステムでなければなりません。
Parameter Writer ブロックが double
(既定のデータ型) 以外のデータ型の値をマスク パラメーターに書き込む場合、Parameter Writer ブロックで書き込まれる値と同じデータ型の値でマスク パラメーターを初期化する必要があります。マスク パラメーターを初期化するには、ブロックをダブルクリックしてマスク ダイアログ ボックスを開き、マスク パラメーターのデータ型と値を指定します。あるいは、プログラムによってマスク パラメーターを初期化するには、関数 set_param
で MaskValues パラメーターを使用します。詳細については、プログラムによるマスクの制御を参照してください。
この示されている例では、Parameter Writer ブロックが single
データ型の値をマスク サブシステム内の Gain ブロック パラメーターに書き込んでいます。マスク パラメーターは、single
データ型で 1 に初期化されています。
Parameter Writer ブロックでストレージ クラスが [モデルの既定の設定]
に設定されたインスタンス パラメーターに書き込む場合、コード ジェネレーターでパラメーターのコードを生成する際に [Model parameter arguments] の既定の構成が使用されます。再利用可能な参照モデルへのインスタンス固有パラメーター値の指定 (Simulink Coder)を参照してください。
Parameter Writer ブロックをもつライブラリ ブロックを作成するときは、対応するパラメーター オーナー ブロックもライブラリ ブロックに含めなければなりません。
パラメーター オーナー ブロックの特定
ブロックがサポートされるパラメーター オーナー ブロックであるかどうかは、IsParamOwnerBlock
ブロック パラメーターの値で確認できます。ブロックの名前またはハンドル (blk
) と IsParamOwnerBlock
ブロック パラメーターを指定して関数 get_param
を使用します。
get_param(blk,'IsParamOwnerBlock')
ブロックがサポートされるパラメーター オーナー ブロックの場合は 'on'
、それ以外の場合は 'off'
が関数から返されます。
Parameter Writer ブロックとそのブロックが値を書き込むパラメーター オーナー ブロックの組み合わせにより、関連するブロックのセットが形成されます。Parameter Writer ブロックを選択すると関連するパラメーター オーナー ブロックを強調表示できます。その逆も同様です。関連するブロックを強調表示すると、現在のモデル内の関連するブロックを含むブロックも強調表示されます。たとえば、選択したブロックに関連する Parameter Writer ブロックが Initialize Function ブロックに含まれている場合、そのブロックが強調表示されます。モデル キャンバスで強調表示されたブロックはミニマップでも強調表示されます。
開いているブロック線図または新しいタブに関連するブロックを表示するには、選択後に表示される省略記号で一時停止します。その後、操作バーから [関連するブロック] ボタン を選択します。関連するブロックが表示された開いているブロック線図または新しいタブにウィンドウのフォーカスが移ります。
例
制限
Parameter Writer ブロックを Simulink® 関数内に配置することはできません。
端子
入力
パラメーター
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
拡張機能
バージョン履歴
参考
ブロック
- Initialize Function | Reinitialize Function | Reset Function | Terminate Function | Event Listener | State Reader | State Writer | Model | S-Function | Subsystem