このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
操作点を使用したシミュレーションの初期状態の指定
この例では、操作点を使用して、時間 t = 0 から開始せずに連続シミュレーションの結果を取得する方法を説明します。"操作点" とは、シミュレーション中の Simulink® モデルの状態のスナップショットです。モデルに Stateflow® チャートが含まれている場合、操作点にはアクティブ ステート、出力データとローカル データ、および永続変数についての情報が含まれます。詳細については、Stateflow チャートの操作点の保存と復元を参照してください。
sf_boiler
モデルは、ボイラーの温度を制御するバンバン制御システムのロジックを示します。
このモデルのシミュレーション時間は 1400 秒です。シミュレーションの初期フェーズで、ボイラーの温度が 15℃ から 20℃ に上昇します。このシミュレーションの初期フェーズは約 500 秒かかります。
シミュレーションの初期フェーズ後に、温度の指定値の変化に対してシステムがどのように反応するかを確認するには、モデルをシミュレートし、t =500 における操作点を保存します。その後、この操作点を読み込み、異なる温度の指定値を使用して、t = 500 と t = 1400 の間でシミュレーションを実行します。
このモデルの詳細については、バンバン温度制御システムのモデル化を参照してください。
初期のシミュレーション セグメントの操作点の保存
sf_boiler
モデルを開きます。openExample("stateflow/BangBangControlUsingTemporalLogicExample")
最終の操作点を保存するようにモデルを設定します。[コンフィギュレーション パラメーター] ダイアログ ボックスを開き、[データのインポート/エクスポート] ペインで次を行います。
[最終状態] を選択し、操作点の名前を入力します。この例では、
xFinal
を使用します。[最終の操作点を保存] を選択します。
[OK] をクリックします。
このシミュレーション セグメントの終了時間を設定します。[シミュレーション] タブで、[終了時間] を
500
に設定します。シミュレーションを実行します。
このモデルをシミュレートするときに、t = 500 における操作点を MATLAB® ベース ワークスペース内の変数
xFinal
に保存します。[コンフィギュレーション パラメーター] ダイアログ ボックスの [データのインポート/エクスポート] ペインで、[最終の操作点を保存] パラメーターと [最終状態] パラメーターをクリアします。こうしておけば、前の手順で保存した操作点が上書きされることはありません。
操作点からのシミュレーションの開始
モデルの初期状態として操作点を読み込みます。[コンフィギュレーション パラメーター] ダイアログ ボックスの [データのインポート/エクスポート] ペインで、[初期状態] を選択し、チャートの操作点を含んでいる変数
xFinal
を入力します。その後、[OK] をクリックします。新しいシミュレーション セグメントの終了時間を定義します。[シミュレーション] タブで、[終了時間] を
1400
に設定します。シミュレーションを実行します。
モデルは、シミュレーションの初期フェーズを繰り返さずに、t = 500 で開始します。Scope ブロックは、元の温度の指定値 20℃ を使用して、t = 500 と t = 1400 の間のチャート出力を表示します。
temperature set point
ブロックの値を18
に変更します。シミュレーションを再度実行します。
Scope ブロックは、変更された温度の指定値 18℃ を使用して、t = 500 と t = 1400 の間のチャート出力を表示します。
参考
モデル設定
オブジェクト
Stateflow.op.BlockOperatingPoint
|Stateflow.op.OperatingPointContainer
|Stateflow.op.OperatingPointData
関数
setActive
|setPrevActiveChild
|clone
|get
(Simulink) |set
(Simulink)