addPoint
slLinearizer
または slTuner
インターフェイスの解析ポイントのリストに信号を追加
説明
addPoint(
は、指定された点を s
,pt
)slLinearizer
または slTuner
インターフェイス s
の解析ポイントのリストに追加します。
解析ポイントとは、解析および調整のために入力、出力またはループ開始点の場所として使用できるモデル信号のことです。解析ポイントは、s
の線形化コマンドの入力として使用します。getIOTransfer
、getLoopTransfer
、getSensitivity
および getCompSensitivity
。線形化コマンドの入力として、解析ポイントによりモデル内の開ループまたは閉ループの伝達関数を指定できます。また、解析ポイントを使用して systune
の調整目標を指定することもできます。
例
信号名を使用した解析ポイントの追加
scdcascade
モデルを開きます。
mdl = 'scdcascade';
open_system(mdl);
モデルの slLinearizer
インターフェイスを作成します。
sllin = slLinearizer(mdl);
sllin
の解析ポイントとして u1
と y1
を追加します。
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);
scdbusselection
の COUNTERBUS
信号には、複数のバス要素が含まれます。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
ブロックの最初 (かつ唯一) の端子で発生します。そのため、blk
と port_num
には同じ要素を 2 回指定します。
入力引数
s
— Simulink® モデルへのインターフェイス
slLinearizer
インターフェイス | slTuner
インターフェイス
Simulink モデルへのインターフェイス。slLinearizer
インターフェイスまたは slTuner
インターフェイスとして指定します。
pt
— 解析ポイント
文字ベクトル | string | 文字ベクトルの cell 配列 | string 配列 | 線形化 I/O オブジェクトのベクトル
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'
タイプのすべての信号も永続的な開始点として追加されます。
blk
— 解析ポイントの発信元となるブロックを識別するブロック パス
文字ベクトル (既定値) | string | 文字ベクトルの cell 配列 | string 配列
解析ポイントの発信元となるブロックを識別するブロック パス。次のいずれかで指定します。
単一のポイントを指定する文字ベクトルまたは string (例:
blk = 'scdcascade/C1'
)。複数のポイントを指定する文字ベクトルの cell 配列または string 配列 (例:
blk = {'scdcascade/C1','scdcascade/Sum'}
)。
blk
、port_num
および bus_elem_name
(指定する場合) は同じサイズでなければなりません。
port_num
— 解析ポイントの発信元となる端子
正の整数 (既定値) | 正の整数のベクトル
解析ポイントの発信元となる端子。次のいずれかで指定します。
単一のポイントを指定する正の整数 (例:
port_num = 1
)。複数のポイントを指定する正の整数のベクトル (例:
port_num = [1 1]
)。
blk
、port_num
および bus_elem_name
(指定する場合) は同じサイズでなければなりません。
bus_elem_name
— バス要素名
文字ベクトル (既定値) | string | 文字ベクトルの cell 配列 | string 配列
詳細
解析ポイント
"解析ポイント" は、slLinearizer
と slTuner
インターフェイスで使用され、モデル内で線形解析と制御システムの調整に関連する箇所を示します。解析ポイントは、getIOTransfer
、getLoopTransfer
、getSensitivity
、getCompSensitivity
などの線形化コマンドの入力として使用します。線形化コマンドの入力として、解析ポイントによりモデル内の開ループまたは閉ループの伝達関数を指定できます。また、systune
などのコマンドを使って制御システムを調整する際に、解析ポイントを使用して設計要件を指定することもできます。
"場所" とは、モデル内の特定のブロック出力端子か、そのような出力端子にあるバス要素を指します。便宜上、この端子から発信する信号の名前を使って解析ポイントを示すことができます。
解析ポイントは、slLinearizer
または slTuner
インターフェイス s
に対して、インターフェイスの作成時に追加できます。以下に例を示します。
s = slLinearizer('scdcascade',{'u1','y1'});
また、addPoint
コマンドを使用することもできます。
s
のすべての解析ポイントを表示するには、コマンド プロンプトで s
と入力してインターフェイスの内容を表示します。s
の各解析ポイントの表示には、ブロック名、端子番号、およびこの解析ポイントから発信される信号の名前が含まれます。getPoints
を使用して、すべての解析ポイントのリストをプログラムで取得することもできます。
解析ポイントの使用方法の詳細については、制御システムの解析と設計における対象信号のマークおよびバッチ線形化用に対象の信号をマークするを参照してください。
永続的な開始点
"永続的な開始点" とは、slLinearizer
および slTuner
インターフェイスで使用され、ソフトウェアがモデル内で信号の流れを中断する箇所を示します。線形化および調整時に、これらの開始点が強制的に適用されます。永続的な開始点は、ある特定のモデル コンポーネントを分離するために使用します。航空機のダイナミクスを取得する大規模なモデルがあり、機体にのみ線形解析を実行するとします。永続的な開始点を使用すれば、このモデルの他のコンポーネントをすべて除外できます。モデル内にカスケード式ループがあり、特定のループを解析する場合などにも使用できます。
"場所" とは、モデル内の特定のブロック出力端子を指します。便宜上、この端子から発信する信号の名前を使って開始点を示すことができます。
永続的な開始点は、slLinearizer
または slTuner
インターフェイス s
に対して、インターフェイスの作成時に追加するか、addOpening
コマンドを使用して追加できます。永続的な開始点のリストから場所を削除するには、removeOpening
コマンドを使用します。
s
のすべての開始点を表示するには、コマンド プロンプトで s
と入力してインターフェイスの内容を表示します。s
のそれぞれの永続的な開始点の表示には、ブロック名、端子番号、およびこの場所から発信される信号の名前が含まれます。getOpenings
を使用して、すべての永続的なループ開始点のリストをプログラムで取得することもできます。
バージョン履歴
R2013b で導入
参考
slLinearizer
| slTuner
| addOpening
| linio
| removePoint
| removeAllPoints
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)