Main Content

writeLookupTableData

調整後のルックアップ テーブルの一部を更新

説明

ルックアップ テーブル ブロックを systune で調整する場合、Simulink® モデルのテーブル データの一部のみを更新するにはこの関数を使用します。この関数はルックアップ テーブルの 1 点あるいは一部を再調整する場合に役立ちます。ルックアップ テーブル全体を更新するには writeBlockValue を使用してください。

writeLookupTableData(st,blockid,breakpoints) は、slTuner インターフェイスから、関連付けられた Simulink モデル内のルックアップ テーブルの一部に調整されたゲイン値を書き込みます。breakpoints の各行が、ルックアップ テーブル内の更新するエントリを特定します。blockid は、slTuner インターフェイスの TunedBlocks プロパティ内の単一ブロックを特定しなければなりません。

writeLookupTableData(st,blockid,ix1,…,ixN) はテーブル データの四角形部分を更新します。インデックス ベクトル ix1,…,ixN は、テーブルの各次元に沿って特定のブレークポイントを選択します。

すべて折りたたむ

2-D Lookup Table ブロック Kp Lookup を含む Simulink モデルへの slTuner インターフェイス st があるとします。ブロックは slTuner.TunedBlocks にリストされています。さらに、ルックアップ テーブルの (3,5) および (4,6) のブレークポイントに対応する設計点について再調整を行ったと仮定します。ルックアップ テーブルを新しい値で更新します。

breakpoints = [3 5;4 6];
writeLookupTableData(st,'Kp Lookup',breakpoints)

最初のスケジューリング変数の 3 番目と 5 番目の値の間の設計点と、2 番目のスケジューリング変数の 7 番目と 10 番目の値の間の設計点を再調整したと仮定します。ルックアップ テーブルを新しい値で更新します。

ix1 = 3:5;
ix2 = 7:10;
writeLookupTableData(st,'Kp Lookup',ix1,ix2)

入力引数

すべて折りたたむ

Simulink でモデル化された制御システムを調整するためのインターフェイス。slTuner インターフェイスとして指定します。

調整した値で更新するルックアップ テーブル。文字ベクトルまたは string として指定します。blockid で特定されるブロックは、slTuner インターフェイス stTunedBlocks プロパティにあるルックアップ テーブル ブロックでなければなりません。ブロックの絶対パスか、st の他の調整ブロックの中から該当ブロックを一意に識別できるブロックの部分パスを指定できます。

例: 'scdcascade/Kp Lookup'

例: "Kp Lookup"

ルックアップ テーブルの更新するエントリ。整数配列として指定します。breakpoints の各行は、その添字 (i1,i2,…,iN) でテーブル エントリを指定します。たとえば次のようにします。

  • 1-D Lookup Table ブロックの最初と 3 番目のブレークポイントに関連するデータを更新するには、breakpoints = [1;3] を使用します。

  • 2-D Lookup Table ブロックの (3,5) および (4,6) のエントリに関連するデータを更新するには、breakpoints = [3 5;4 6] を使用します。

ルックアップ テーブルの更新する部分。テーブルの各次元に沿った特定のブレークポイントを選択するインデックス ベクトルとして指定します。たとえば、2-D Lookup Table ブロックを更新するには、更新する行と列を特定する 2 つのインデックス ベクトルを指定します。テーブルの最初の次元の 3 番目から 5 番目のエントリ、2 番目の次元の 7 番目から 10 番目のエントリで区切られる部分を更新するには、ix1 = 3:5 および ix2 = 7:10 を使用します。

ヒント

  • writeBlockValue を使用してモデル内の他の再調整ブロックを更新する場合、この関数で更新されるブロックのリストから、ルックアップ テーブル blockid を除外します。

バージョン履歴

R2017b で導入