メインコンテンツ

addPoint

slLinearizer または slTuner インターフェイスの解析ポイントのリストに信号を追加

説明

addPoint(s,pt) は、指定された点を slLinearizer または slTuner インターフェイス s解析ポイントのリストに追加します。

解析ポイントとは、解析および調整のために入力、出力またはループ開始点の場所として使用できるモデル信号のことです。解析ポイントは、s の線形化コマンドの入力として使用します。getIOTransfergetLoopTransfergetSensitivity および getCompSensitivity。線形化コマンドの入力として、解析ポイントによりモデル内の開ループまたは閉ループの伝達関数を指定できます。また、解析ポイントを使用して systune の調整目標を指定することもできます。

addPoint(s,blk,port_num) は、指定のブロックの指定の出力端子を起点とする点を s の解析ポイントとして追加します。

addPoint(s,blk,port_num,bus_elem_name) は、指定されたバス要素を解析ポイントとして追加します。

すべて折りたたむ

scdcascade モデルを開きます。

mdl = 'scdcascade';
open_system(mdl);

モデルの slLinearizer インターフェイスを作成します。

sllin = slLinearizer(mdl);

sllin の解析ポイントとして u1y1 を追加します。

addPoint(sllin,{'u1','y1'});

現在 sllin 内で定義されている解析ポイントを表示します。

sllin
 
slLinearizer linearization interface for "scdcascade":

2 Analysis points: 
--------------------------
Point 1:
- Block: scdcascade/C1
- Port: 1
- Signal Name: u1
Point 2:
- Block: scdcascade/G1
- Port: 1
- Signal Name: y1
 
No permanent openings. Use the addOpening command to add new permanent openings.
Properties with dot notation get/set access:
      Parameters         : [] 
      OperatingPoints    : [] (model initial condition will be used.)
      BlockSubstitutions : []
      Options            : [1x1 linearize.LinearizeOptions]

Magball モデルを線形化し、基準入力からプラント出力への伝達関数を取得するとします。Desired Height ブロックと Magnetic Ball Plant ブロックで発生した信号を、解析ポイントとして slLinearizer インターフェイスに追加します。

magball モデルを開きます。

mdl = 'magball';
open_system(mdl);

モデルの slLinearizer インターフェイスを作成します。

sllin = slLinearizer(mdl);

Design Height ブロックと Magnetic Ball Plant ブロックで発生した信号を、sllin の解析ポイントとして追加します。どちらの信号も、それぞれのブロックの最初 (かつ唯一) の端子で発生します。

blk = {'magball/Desired Height','magball/Magnetic Ball Plant'};
port_num = [1 1];
addPoint(sllin,blk,port_num);

scdbusselection モデルを開きます。

mdl = 'scdbusselection';
open_system(mdl);

slLinearizer インターフェイス モデルを作成します。

sllin = slLinearizer(mdl);

scdbusselectionCOUNTERBUS 信号には、複数のバス要素が含まれます。upper_saturation_limit および data バス要素を、解析ポイントとして sllin に追加します。入れ子にされたバス構造内に要素を追加する場合は、たとえば limits.upper_saturation_limit のようにドット表記を使用して、入れ子にされたバスの要素にアクセスします。

blk = {'scdbusselection/COUNTERBUSCreator','scdbusselection/COUNTERBUSCreator'};
port_num = [1 1];
bus_elem_name = {'limits.upper_saturation_limit','data'};
addPoint(sllin,blk,port_num,bus_elem_name);

両方のバス要素は、scdbusselection/COUNTERBUSCreator ブロックの最初 (かつ唯一) の端子で発生します。そのため、blkport_num には同じ要素を 2 回指定します。

入力引数

すべて折りたたむ

Simulink モデルへのインターフェイス。slLinearizer インターフェイスまたは slTuner インターフェイスとして指定します。

s解析ポイントのリストに追加する解析ポイント。以下で指定します。

  • 文字ベクトルまたは string — 次のいずれかの信号識別子。

    • 信号名 ('torque' など)

    • 出力端子が 1 つのブロックのブロック パス ('Motor/PID' など)

    • 信号の発信元のブロックおよび端子のパス ('Engine Model/1''Engine Model/torque' など)

  • 文字ベクトルの cell 配列または string 配列 — 複数の信号識別子を指定します。

  • 線形化 I/O オブジェクトのベクトル — linio を使用して pt を作成します。以下に例を示します。

    pt(1) = linio('scdcascade/setpoint',1)
    pt(2) = linio('scdcascade/Sum',1,'output')

    ここでは、pt(1) で入力を指定し、pt(2) で出力を指定します。このインターフェイスは、pt で指定されたすべての信号を追加し、それらの I/O タイプは無視します。このインターフェイスでは、'loopbreak' タイプのすべての信号も永続的な開始点として追加されます。

解析ポイントの発信元となるブロックを識別するブロック パス。次のいずれかで指定します。

  • 単一のポイントを指定する文字ベクトルまたは string (例: blk = 'scdcascade/C1')。

  • 複数のポイントを指定する文字ベクトルの cell 配列または string 配列 (例: blk = {'scdcascade/C1','scdcascade/Sum'})。

blkport_num および bus_elem_name (指定する場合) は同じサイズでなければなりません。

解析ポイントの発信元となる端子。次のいずれかで指定します。

  • 単一のポイントを指定する正の整数 (例: port_num = 1)。

  • 複数のポイントを指定する正の整数のベクトル (例: port_num = [1 1])。

blkport_num および bus_elem_name (指定する場合) は同じサイズでなければなりません。

バス要素名。次のいずれかで指定します。

  • 単一のポイントを指定する文字ベクトルまたは string (例: bus_elem_name = 'data')。

  • 複数のポイントを指定する文字ベクトルの cell 配列または string 配列 (例: bus_elem_name = {'limits.upper_saturation_limit','data'})。

blkport_num および bus_elem_name (指定する場合) は同じサイズでなければなりません。

詳細

すべて折りたたむ

バージョン履歴

R2013b で導入