Main Content

Stateflow.Machine

Simulink モデル内の Stateflow ブロックのコンテナー

    説明

    Stateflow® の視点からは、Stateflow.Machine オブジェクトは Simulink® モデルと等価です。Stateflow.Machine オブジェクトには、Simulink モデル内の Stateflow チャート、State Transition Table ブロック、Truth Table ブロック、MATLAB Function ブロックを表す Stateflow.ChartStateflow.StateTransitionTableChartStateflow.TruthTableChartStateflow.EMChart の各オブジェクトが含まれています。詳細については、Stateflow API の概要を参照してください。

    作成

    Stateflow.Machine オブジェクトは、Stateflow ブロックを含むモデルを読み込むか関数 sfnew を呼び出したときに自動的に作成されます。Stateflow.Machine オブジェクトにアクセスするには、Simulink.Root オブジェクトに対して関数 find を呼び出します。たとえば、Simulink モデルの名前が myModel であれば次のように入力します。

    machine = find(sfroot,"-isa","Stateflow.Machine",Name="myModel");

    プロパティ

    すべて展開する

    Stateflow API オブジェクトには、Stateflow エディターで設定した値に対応するプロパティがあります。プロパティにアクセスするかプロパティを変更するには、ドット表記を使用します。複数の API オブジェクトの複数のプロパティにアクセスするか、それらを変更するには、関数 get および関数 set をそれぞれ使用します。詳細については、Stateflow オブジェクトのプロパティの変更と関数の呼び出しを参照してください。

    内容

    このプロパティは読み取り専用です。

    マシンの Simulink モデルの名前。文字ベクトルとして指定します。

    このプロパティは読み取り専用です。

    マシンの Simulink モデルの絶対ファイル パス。文字ベクトルとして指定します。

    このプロパティは読み取り専用です。

    マシンの Simulink モデルでアプリケーションではなくライブラリをビルドするかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    デバッグ

    マシンのチャートに対するデバッガーのプロパティ。次のプロパティをもつ Stateflow.MachineDebug オブジェクトとして指定します。

    • Animation.Enabled — シミュレーション時にマシンのチャートをアニメーション化するかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。このプロパティを無効にすることは、[デバッグ] タブの [アニメーション速度] ドロップダウン リストで [なし] を選択することと等価です。

    • Animation.Delay — マシンの各遷移セグメントを強調表示するためにチャートのアニメーションで使用する遅延。スカラーとして指定します。これらの値は [デバッグ] タブの [アニメーション速度] ドロップダウン リストの設定と対応します。

      遅延の値アニメーション速度
      0.5低速
      0.2中速
      0高速
      -1超高速

    • Animation.MaintainHighlighting — シミュレーションの終了後にマシンのアクティブ ステートの強調表示を維持するかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    例: machine.Debug.Animation.Enabled = true;

    例: machine.Debug.Animation.Delay = -1;

    階層

    このプロパティは読み取り専用です。

    モデルの階層構造におけるマシンの場所。文字ベクトルとして指定します。

    マシンの Simulink モデルが開かれたか保存された後に変更されたかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    マシンがロックされているかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。このマシン内の Stateflow チャート、状態遷移表、および Truth Table ブロックの変更を防止するには、このプロパティを有効にします。

    このプロパティは読み取り専用です。

    マシンがロックされているかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。このプロパティはプロパティ Locked と等価ですが、シミュレーション中のマシンの変更を防止するために内部で使用されます。

    識別

    このプロパティは読み取り専用です。

    マシンの作成日。文字ベクトルとして指定します。

    マシンの作成者。string スカラーまたは文字ベクトルとして指定します。

    マシンに対する変更の記録。string スカラーまたは文字ベクトルとして指定します。

    マシンのバージョン。string スカラーまたは文字ベクトルとして指定します。

    マシンの説明。string スカラーまたは文字ベクトルとして指定します。

    マシンのドキュメント リンク。string スカラーまたは文字ベクトルとして指定します。

    マシンのユーザー定義のタグ。任意の型のデータとして指定します。

    このプロパティは読み取り専用です。

    一意の識別子。整数スカラーとして指定します。このプロパティを使用して、マシンをモデル内の他のオブジェクトと区別します。このプロパティの値は、新しい MATLAB® セッションを開始するたびに再割り当てされ、オブジェクトが削除されるとリサイクルされる場合があります。

    オブジェクト関数

    find階層内で指定したオブジェクトの識別
    dialogプロパティ ダイアログ ボックスを開く

    すべて折りたたむ

    マシン machineModified プロパティと Version プロパティを更新します。

    machine.Modified = string(datetime);
    oldVersion = str2double(machine.Version);
    if isnan(oldVersion) 
        machine.Version = "1";
    else
        machine.Version = string(oldVersion+1);
    end

    バージョン履歴

    R2006a より前に導入