addOpening
slLinearizer
または slTuner
インターフェイスの開始点リストに信号を追加
説明
例
信号名を使用した開始点の追加
scdcascade
モデルの内側のループのダイナミクスのみを解析するとします。外側のループのフィードバック信号 y1m
を、slLinearizer
インターフェイスの永続的な開始点として追加します。
scdcascade
モデルを開きます。
mdl = 'scdcascade';
open_system(mdl)
モデルの slLinearizer
インターフェイスを作成します。
sllin = slLinearizer(mdl);
y1m
信号を sllin
の永続的な開始点として追加します。
addOpening(sllin,'y1m');
現在 sllin
内で定義されている解析ポイントを表示します。
sllin
slLinearizer linearization interface for "scdcascade": No analysis points. Use the addPoint command to add new points. 1 Permanent openings: -------------------------- Opening 1: - Block: scdcascade/Sum - Port: 1 - Signal Name: y1m Properties with dot notation get/set access: Parameters : [] OperatingPoints : [] (model initial condition will be used.) BlockSubstitutions : [] Options : [1x1 linearize.LinearizeOptions]
ブロック パスおよび端子番号を使用した開始点の追加
scdcascade
モデルの内側のループのダイナミクスのみを解析するとします。外側のループのフィードバック信号 y1m
を、slLinearizer
インターフェイスの永続的な開始点として追加します。
scdcascade
モデルを開きます。
mdl = 'scdcascade';
open_system(mdl)
モデルの slLinearizer
インターフェイスを作成します。
sllin = slLinearizer(mdl);
y1m
信号を sllin
の永続的な開始点として追加します。
addOpening(sllin,'scdcascade/Sum',1);
y1m
信号は、scdcascade/Sum
ブロックの最初 (かつ唯一) の端子で発生します。
開始点としてのバス要素の追加
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'};
両方のバス要素は、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 配列 — 複数の信号識別子を指定します。たとえば、
pt = {'Motor/PID','Engine Model/1'}
とします。線形化 I/O オブジェクトのベクトル —
linio
を使用してpt
を作成します。以下に例を示します。pt(1) = linio('scdcascade/setpoint',1) pt(2) = linio('scdcascade/Sum',1,'output')
ここでは、
pt(1)
で入力を指定し、pt(2)
で出力を指定します。ただし、ソフトウェアでは I/O のタイプは無視され、両方がs
の永続的な開始点のリストに追加されます。
blk
— 開始点の発信元となるブロックを識別するブロック パス
文字ベクトル (既定値) | string | 文字ベクトルの cell 配列 | string 配列
開始点の発信元となるブロックを識別するブロック パス。文字ベクトルまたは文字ベクトルの cell 配列として指定します。
blk
の次元:
単一の開始点の場合、文字ベクトルまたは string として
blk
を指定します。たとえば、
blk = 'scdcascade/C1'
とします。複数の開始点の場合、文字ベクトルの cell 配列または string 配列として
blk
を指定します。blk
、port_num
およびbus_elem_name
(指定する場合) は同じサイズでなければなりません。たとえば、
blk = {'scdcascade/C1','scdcascade/Sum'}
とします。
port_num
— 開始点の発信元となる端子
正の整数 (既定値) | 正の整数のベクトル
開始点の発信元となる端子。正の整数または正の整数のベクトルとして指定します。
port_num
の次元:
単一の開始点の場合、正の整数として
port_num
を指定します。たとえば、
port_num = 1
とします。複数の開始点の場合、正の整数のベクトルとして
port_num
を指定します。blk
、port_num
およびbus_elem_name
(指定する場合) は同じサイズでなければなりません。たとえば、
port_num = [1 1]
とします。
bus_elem_name
— バス要素名
文字ベクトル (既定値) | string | 文字ベクトルの cell 配列 | string 配列
バス要素名。文字ベクトルまたは文字ベクトルの cell 配列として指定します。
bus_elem_name
の次元:
詳細
永続的な開始点
"永続的な開始点" とは、slLinearizer
および slTuner
インターフェイスで使用され、ソフトウェアがモデル内で信号の流れを中断する箇所を示します。線形化および調整時に、これらの開始点が強制的に適用されます。永続的な開始点は、ある特定のモデル コンポーネントを分離するために使用します。航空機のダイナミクスを取得する大規模なモデルがあり、機体にのみ線形解析を実行するとします。永続的な開始点を使用すれば、このモデルの他のコンポーネントをすべて除外できます。モデル内にカスケード式ループがあり、特定のループを解析する場合などにも使用できます。
"場所" とは、モデル内の特定のブロック出力端子を指します。便宜上、この端子から発信する信号の名前を使って開始点を示すことができます。
永続的な開始点は、slLinearizer
または slTuner
インターフェイス s
に対して、インターフェイスの作成時に追加するか、addOpening
コマンドを使用して追加できます。永続的な開始点のリストから場所を削除するには、removeOpening
コマンドを使用します。
s
のすべての開始点を表示するには、コマンド プロンプトで s
と入力してインターフェイスの内容を表示します。s
のそれぞれの永続的な開始点の表示には、ブロック名、端子番号、およびこの場所から発信される信号の名前が含まれます。getOpenings
を使用して、すべての永続的なループ開始点のリストをプログラムで取得することもできます。
バージョン履歴
R2013b で導入
参考
slLinearizer
| slTuner
| addPoint
| addBlock
| linio
| removeOpening
| removeAllOpenings
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)