Main Content

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Stateflow チャートのテスト ポイントの監視

この例では、シミュレーション時にフローティング スコープと共にプロット可能なテスト ポイント、または MATLAB® ベース ワークスペースへのログ作成可能なテスト ポイントとして、データまたはステートを指定する方法を説明します。

Stateflow チャートのテスト ポイントについて

Stateflow® のテスト ポイントは、たとえば Floating Scope ブロックを使用して、シミュレーション時に観察できる信号です。以下のプロパティをもつステートまたはローカル データをテスト ポイントとして指定できます。

  • サイズ - スカラー、1 次元、または 2 次元

  • - ml を除く任意のデータ型

  • 場所 - Stateflow チャートの子孫

Stateflow API、プロパティ インスペクター、またはモデル エクスプローラーで TestPoint プロパティを設定することにより、個々のデータまたはステートをテスト ポイントとして指定できます。

モデルのシミュレーション時に、個々の Stateflow テスト ポイントをフローティング スコープで監視できます。テスト ポイントの値を MATLAB ワークスペース オブジェクトにログ作成することも可能です。

また、アクティブ ステートの出力を使用して、Simulink® のステート アクティビティ データを表示したり、ログを作成したりできます。詳細については、アクティブ ステート データによるステート アクティビティの監視を参照してください。

プロパティ インスペクターを使用した Stateflow ステートおよびデータのテスト ポイントの設定

モデル エクスプローラーを使用して、個別のステート、ローカル データおよび出力データをテスト ポイントとして明示的に設定できます。以下の手順は、Stateflow ステートとデータに対して個別のテスト ポイントを設定する方法を示しています。

1. モデルを開きます。

Stateflow チャートでは、最初の tic イベント時に、ステート A およびそのサブステート X に入ります。tic イベントが 10 回発生するまでステート A とサブステート X はアクティブなままで、その後ステート B に入ります。次のイベントでは、ステート A とサブステート X に入り、サイクルが継続されます。データ data はサブステート X に属します。10 回の tic イベントにわたり X がアクティブである間、サブステート X の entry アクションと during アクションによって data はインクリメントします。ステート B に入ると data はゼロに再初期化され、その後サイクルが繰り返されます。

2.[ツール表示][プロパティ インスペクター] を選択して、プロパティ インスペクターを開きます。

3. ステート A を選択します。その後、プロパティ インスペクターの [ログ] セクションで、[テスト ポイント] を選択します。

4. これをステート XB について繰り返します。

5. [ツール表示][シンボル] を選択して、シンボル ビューアーを開きます。

6. データ data を選択します。その後、プロパティ インスペクターの [ログ] セクションで、[テスト ポイント] を選択します。

また、テスト ポイントのログも作成できます。詳細については、複数の信号のログ作成を参照してください。

フローティング スコープによるデータ値とステートの自己アクティビティの監視

この節では、データ値とステートの自己アクティビティを監視するように Floating Scope ブロックを設定します。

1. モデルを開きます。

2.Floating Scope ブロックをダブルクリックします。

3. [フローティング スコープ] ウィンドウで、[シミュレーション][信号セレクター] を選択します。

4. [モデルの階層構造] ペインでチャートを選択し、[リスト内容] で信号を選択します。

5. モデルのシミュレーションを実行します。

ステート A.X がアクティブな場合、信号値は 1 です。非アクティブの場合、信号値は 0 です。この値は他のデータと比較すると極端に小さいかまたは大きいため、2 番目の Floating Scope ブロックを追加して、アクティビティ信号を他のデータと比較する場合が考えられます。

関連するトピック