Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

チャートのコンパイル時間の短縮

次の例では、Atomic サブチャートを使用して、Stateflow® チャートで一連の変更をテストする際のコンパイル時間を短縮する方法を説明します。Atomic サブチャートは、MATLAB® 内のスタンドアロンの Stateflow チャートではサポートされません。詳細については、Atomic サブチャート使用した再利用可能なサブコンポーネントの作成を参照してください。

Atomic サブチャートがない元のモデル

次のモデルには Sine Wave (Simulink) ブロックが 2 つあり、一方は周波数が毎秒 1 ラジアンで、もう一方は周波数が毎秒 2 ラジアンです。

チャートの各ステートは飽和論理を使用して、入力正弦波を同じ周波数の出力矩形波に変換します。

この例では Atomic サブチャートが使用されていないため、チャートを変更してシミュレーションを開始するたびに、チャート全体に対する再コンパイルが発生します。

一方で、ステート A は Atomic サブチャートに変換できます。この Atomic サブチャートを変更すると、チャート全体ではなくそのサブチャートに対してのみ再コンパイルが行われます。その結果、シミュレーションのインクリメンタル ビルドにより、再コンパイルに必要な時間が短縮されます。

Atomic サブチャートを使用するようにモデルを編集

手順 1: ステートの Atomic サブチャートへの変換

ステート A を右クリックして、[グループとサブチャート]、[Atomic サブチャート] を選択します。ステート A が Atomic サブチャートに変わり、左上隅に [Atomic] というラベルが表示されます。

手順 2: シミュレーションの開始

シミュレーションの前に、チャート全体に対するコンパイルが発生します。

手順 3: Atomic サブチャートの変更

  1. Atomic サブチャート A をダブルクリックします。サブチャートの内容が Stateflow エディターに表示されます。

  2. ステート Pos で、entry アクションを y1 = 2; に変更します。

  3. ステート Neg で、entry アクションを y1 = -2; に変更します。

手順 4: シミュレーションの再実行

A の変更後、チャート全体ではなく Atomic サブチャートに対してのみ再コンパイルが行われます。

参考

(Simulink)

関連するトピック