このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
operpoint
Simulink モデルの操作点を作成
説明
例
Simulink モデルの操作点の作成
Simulink モデルを開きます。
open_system('magball')
モデルに操作点を作成します。
op = operpoint('magball')
op = Operating point for the Model magball. (Time-Varying Components Evaluated at time t=0) States: ---------- x _______ (1.) magball/Controller/PID Controller/Filter/Cont. Filter/Filter 0 (2.) magball/Controller/PID Controller/Integrator/Continuous/Integrator 14.0071 (3.) magball/Magnetic Ball Plant/Current 7.0036 (4.) magball/Magnetic Ball Plant/dhdt 0 (5.) magball/Magnetic Ball Plant/height 0.05 Inputs: None ----------
op
は、モデル内で状態をもつ各ブロックをリストします。このモデルにはルートレベルの入力端子がないため、op
には入力が含まれません。
操作点のコピー
新しい operating-point 変数は次の 3 つの方法で作成することができます。
関数
operpoint
を使用する等号 (
=
) 演算子による割り当てを使用する関数
copy
を使用する
=
演算子を使用すると変数がリンク付けられ、どちらの変数も基となる同じデータを指しています。関数 copy
を使用すると、結果として独立した操作点オブジェクトが作成されます。この例では操作点オブジェクトを両方の方法で作成し、それらの動作を検証します。
mdl = 'watertank';
open_system(mdl)
op1 = operpoint(mdl)
op1 = Operating point for the Model watertank. (Time-Varying Components Evaluated at time t=0) States: ---------- x _ (1.) watertank/PID Controller/Integrator/Continuous/Integrator 0 (2.) watertank/Water-Tank System/H 1 Inputs: None ----------
=
演算子による割り当てを使用して、新しい操作点オブジェクトを作成します。
op2 = op1;
op2
は、op1
と同じ基となるデータを指す操作点オブジェクトです。このリンクのために、2 つの操作点オブジェクトのプロパティを独立して変更することはできません。これを確認するには、op2
のプロパティを変更します。たとえば、最初の状態の値を 0 から 2 に変更します。変更が画面の States
セクションに表示されます。
op2.States(1).x = 2
op2 = Operating point for the Model watertank. (Time-Varying Components Evaluated at time t=0) States: ---------- x _ (1.) watertank/PID Controller/Integrator/Continuous/Integrator 2 (2.) watertank/Water-Tank System/H 1 Inputs: None ----------
op1
の表示を検証し、op1
の対応するプロパティ値も 0 から 2 に変更されることを確認します。
op1
op1 = Operating point for the Model watertank. (Time-Varying Components Evaluated at time t=0) States: ---------- x _ (1.) watertank/PID Controller/Integrator/Continuous/Integrator 2 (2.) watertank/Water-Tank System/H 1 Inputs: None ----------
操作点オブジェクトの独立したコピーを作成するには、copy
コマンドを使用します。
op3 = copy(op1);
ここで、op3
のプロパティを変更しても、op1
は変更されません。たとえば、最初の状態の値を 2 から 4 に変更します。
op3.States(1).x = 4
op3 = Operating point for the Model watertank. (Time-Varying Components Evaluated at time t=0) States: ---------- x _ (1.) watertank/PID Controller/Integrator/Continuous/Integrator 4 (2.) watertank/Water-Tank System/H 1 Inputs: None ----------
op1
では、対応する値は 2 のままです。
op1.States(1).x
ans = 2
このコピー動作が発生するのは、操作点オブジェクトが "ハンドル オブジェクト" であるためです。ハンドル オブジェクトの詳細については、ハンドル オブジェクトの動作を参照してください。
入力引数
mdl
— Simulink モデル名
文字ベクトル | string
Simulink モデル名。文字ベクトルまたは string として指定します。モデルは現在の作業フォルダー内または MATLAB® パス上になければなりません。
出力引数
op
— 操作点
OperatingPoint
オブジェクト
操作点。次のプロパティをもつ OperatingPoint
オブジェクトとして返されます。
プロパティ | 説明 | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Model | Simulink モデル名。文字ベクトルとして返されます。 | ||||||||||||||||||
States | 状態の操作点。状態オブジェクトのベクトルとして返されます。 操作点オブジェクトでサポートされる状態のリストについては、操作点オブジェクトに含まれる Simulink モデルの状態を参照してください。 メモ ブロックに名前付きの連続状態が複数ある場合、 各状態オブジェクトには次のフィールドがあります。
| ||||||||||||||||||
Inputs | 操作点での入力レベル。入力オブジェクトのベクトルとして返されます。 各入力オブジェクトには次のフィールドがあります。
| ||||||||||||||||||
Time | モデル内の任意の時変関数が評価される時間。ベクトルとして返されます。 | ||||||||||||||||||
Version | オブジェクトのバージョン番号 |
ヒント
代替機能
関数 operpoint
は、モデルの初期の状態値と入力値を使用して操作点を返します。アプリケーションの仕様に合致する操作点を作成するには、関数 findop
を使用します。詳細については、定常状態の操作点の計算を参照してください。
バージョン履歴
R2006a より前に導入R2021b: 操作点の入力の PortWidth
プロパティは削除予定
操作点の入力の PortWidth
プロパティは将来のリリースで削除される予定です。代わりに、新しい Nu
プロパティを使用してください。
コードを更新するには、次の表に示すように、PortWidth
のインスタンスを Nu
に変更します。
非推奨 | 推奨 |
---|---|
op = operpoint('scdplane'); numIn = op.Inputs(1).PortWidth; | op = operpoint('scdplane'); numIn = op.Inputs(1).Nu; |
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)