Main Content

Stateflow.AtomicSubchart

チャート、ステート、またはボックス内の Atomic サブチャート

    説明

    Stateflow.AtomicSubchart オブジェクトは、Stateflow® チャートで独立したサブコンポーネントを作成するために使用します。Atomic サブチャートには以下のことが可能です。

    • 同じステートまたはサブチャートを複数のチャートやモデルで再利用する

    • 多くのステートまたは階層レベルをもつチャートに小さい変更を加えた後のシミュレーションが高速化する

    • 複数の人が同じチャートの異なる部分で作業する場合にチームでの開発がしやすくなる

    • チャート内の特定のステートまたはサブチャートで生成されたコードを手動で検査できる

    詳細については、Atomic サブチャート使用した再利用可能なサブコンポーネントの作成を参照してください。

    作成

    説明

    atomicSubchart = Stateflow.AtomicSubchart(parent) は、親であるチャート、ステート、またはボックス内に Stateflow.AtomicSubchart オブジェクトを作成します。

    入力引数

    すべて展開する

    新しい Atomic サブチャートの親。次のいずれかのタイプの Stateflow API オブジェクトとして指定します。

    プロパティ

    すべて展開する

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

    内容

    Atomic サブチャートの名前。string スカラーまたは文字ベクトルとして指定します。

    Atomic サブチャートのラベル。string スカラーまたは文字ベクトルとして指定します。

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

    Atomic サブチャートがライブラリ リンクであるかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    Atomic サブチャートをコメントアウトするかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。このプロパティを true に設定することは、Atomic サブチャートを右クリックして [コメント アウト] を選択することと等価です。詳細については、Stateflow チャート内のオブジェクトのコメントアウトを参照してください。

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

    Atomic サブチャートを暗黙的にコメントアウトするかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。Atomic サブチャートを含むオブジェクトを明示的にコメントアウトすると、その Atomic サブチャートは暗黙的にコメントアウトされます。Atomic サブチャートが別の Atomic サブチャートに含まれている場合、明示的にコメント化されたオブジェクトもその Atomic サブチャートに含まれていない限り、このプロパティは false になります。

    R2023a 以降

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

    Atomic サブチャートをコメントアウトするかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。IsExplicitlyCommented または IsImplicitlyCommentedtrue の場合、このプロパティは true になります。

    Atomic サブチャートのコメント テキスト。string スカラーまたは文字ベクトルとして指定します。このプロパティは、IsExplicitlyCommented プロパティが true である場合にのみ適用されます。Stateflow エディターで、Atomic サブチャート上のコメント バッジ をポイントすると、テキストがツールヒントとして表示されます。IsExplicitlyCommented プロパティを false に設定すると、CommentText の値は "" に戻ります。

    グラフィカルな外観

    Atomic サブチャートの位置とサイズ。[left top width height] 形式の 4 要素数値ベクトルとして指定します。

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

    Atomic サブチャートがボックス、ステート、または関数とグラフィカルに交差するかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    Atomic サブチャートの内容のプレビューを表示するかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    入力遷移の矢印のサイズ。スカラーとして指定します。

    Atomic サブチャート ラベルのフォント サイズ。スカラーとして指定します。Atomic サブチャートを含むチャートの StateFont.Size プロパティが、このプロパティの初期値を設定します。

    ステート構造

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

    兄弟ステートの構造。'AND' または 'OR' として指定します。Atomic サブチャートは、親であるステートまたはチャートの Decomposition プロパティからこのプロパティを継承します。

    パラレル (AND) 構造内の Atomic サブチャートの実行順序。整数スカラーとして指定します。このプロパティは、次の両方の条件が満たされている場合にのみ適用されます。

    • Atomic サブチャートの Type プロパティが "AND" である。

    • Atomic サブチャートを含むチャートの UserSpecifiedStateTransitionExecutionOrder プロパティが true である。

    アクティブ ステートの出力

    Atomic サブチャートのアクティブ ステート データの出力端子を作成するかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。詳細については、アクティブ ステート データによるステート アクティビティの監視を参照してください。

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

    Atomic サブチャートのアクティブ ステート データ オブジェクト。Stateflow.Data オブジェクトとして指定します。このプロパティは、Atomic サブチャートの HasOutputData プロパティが true である場合にのみ適用されます。

    Atomic サブチャートのアクティブ ステート データ オブジェクトの名前。string スカラーまたは文字ベクトルとして指定します。このプロパティは、Atomic サブチャートの HasOutputData プロパティが true である場合にのみ適用されます。

    アクティブ ステートの出力データに対する監視モード。string スカラーまたは文字ベクトルとして指定します。Atomic サブチャートの場合、"SelfActivity" が唯一のオプションです。

    信号ログとテスト ポイントの監視

    Atomic サブチャートに対する信号のログのプロパティ。次のプロパティをもつ Stateflow.SigLoggingInfo オブジェクトとして指定します。

    • DataLogging — 信号のログを有効にするかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    • DecimateData — ログ データの量を制限するかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    • Decimation — 間引き間隔。整数スカラーとして指定します。このプロパティは、DecimateData プロパティが true である場合にのみ適用されます。

    • LimitDataPoints — ログに記録するデータ点の数を制限するかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    • MaxPoints — ログに記録するデータ点の最大数。整数スカラーとして指定します。このプロパティは、LimitDataPoints プロパティが true である場合にのみ適用されます。

    • NameMode — 信号名のソース。"SignalName" または "Custom" として指定します。

    • LoggingName — カスタム信号名。string スカラーまたは文字ベクトルとして指定します。このプロパティは、NameMode プロパティが "Custom" である場合にのみ適用されます。

    信号のログでは、シミュレーション中に Atomic サブチャートの自己アクティビティが MATLAB® ワークスペースに保存されます。詳細については、ステートとデータのシミュレーション出力のログを参照してください。

    例: state.LoggingInfo.DataLogging = true;

    Atomic サブチャートをテスト ポイントとして設定するかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。シミュレーション時にテストポイントをフローティング スコープで監視できます。テスト ポイントの値を MATLAB ワークスペースにログ記録することも可能です。詳細については、Stateflow チャートのテスト ポイントの監視を参照してください。

    デバッグ

    ステート、Atomic サブチャート、または Simulink® ベースのステートに対するデバッガーのプロパティ。次のプロパティをもつ Stateflow.StateDebug オブジェクトとして指定します。

    • OnEntryOn State Entry ブレークポイントを設定するかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    • OnDuringDuring State ブレークポイントを設定するかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    • OnExitOn State Exit ブレークポイントを設定するかどうか。数値あるいは logical の 1 (true) または 0 (false) として指定します。

    詳細については、チャートのデバッグのためのブレークポイントの設定を参照してください。

    例: atomicSubchart.Debug.Breakpoints.OnEntry = true;

    例: atomicSubchart.Debug.Breakpoints.OnDuring = true;

    例: atomicSubchart.Debug.Breakpoints.OnExit = true;

    階層

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

    Atomic サブチャートを含むチャート。Stateflow.Chart オブジェクトとして指定します。

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

    Atomic サブチャートの内容。Stateflow.Chart オブジェクトとして指定します。このオブジェクトを使用して、ステートや遷移などの子を Atomic サブチャートに追加します。詳細については、Atomic サブチャートへの exit 端子および exit ジャンクションの追加を参照してください。

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

    Atomic サブチャートのサブビューアー。Stateflow.ChartStateflow.StateStateflow.Box のいずれかのオブジェクトとして指定します。サブビューアーは、Atomic サブチャートをグラフィカルに表示できるチャートまたはサブチャートです。

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

    Atomic サブチャートを含むマシン。Stateflow.Machine オブジェクトとして指定します。

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

    モデルの階層構造における Atomic サブチャートの親の場所。文字ベクトルとして指定します。

    識別

    Atomic サブチャートの説明。string スカラーまたは文字ベクトルとして指定します。

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

    Atomic サブチャートのユーザー定義のタグ。任意の型のデータとして指定します。

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

    セッションに依存しない識別子。整数スカラーとして指定します。このプロパティを使用して、Atomic サブチャートをモデル内の他のオブジェクトと区別します。

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

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

    オブジェクト関数

    getParentオブジェクトの親の特定
    getReferencesシンボル名への参照の特定
    renameReferencesシンボル名の変更とそのシンボル名への参照の更新
    commentedByグラフィカル オブジェクトを暗黙的にコメントアウトするオブジェクトの特定
    getMappingForSymbolAtomic サブチャート、Atomic ボックス、または Simulink ベースのステート内のシンボルに対するマッピングを取得
    setMappingForSymbolAtomic サブチャート、Atomic ボックス、または Simulink ベースのステート内のシンボルに対するマッピングを設定
    clearMappingForSymbolAtomic サブチャート、Atomic ボックス、または Simulink ベースのステート内のシンボルに対するマッピングをクリア
    disableMappingForSymbolAtomic サブチャートまたはボックス内の入力イベントの無効化
    dialogプロパティ ダイアログ ボックスを開く
    view編集環境でオブジェクトを表示
    highlightグラフィカル オブジェクトの強調表示
    fitToViewグラフィカル オブジェクトの拡大表示

    すべて折りたたむ

    チャート ch に Atomic サブチャートを追加します。名前は A に設定します。

    atomicSubchart = Stateflow.AtomicSubchart(ch);
    atomicSubchart.Name = "A";

    R2021b 以降

    A という Atomic サブチャート内で、"exit" というラベルが付いた exit 端子と exit ジャンクションを追加します。

    チャート ch 内で、Atomic サブチャート A に対応する Stateflow.AtomicSubchart オブジェクトを検索します。

    atomicSubchart = find(ch,"-isa","Stateflow.AtomicSubchart",Name="A");

    exit ジャンクションを Atomic サブチャートに追加します。Atomic サブチャートの Subchart プロパティを、exit ジャンクションの親として使用します。exit ジャンクションの PortType プロパティの値を表示します。

    exitJunction = Stateflow.Port(atomicSubchart.Subchart,"ExitJunction");
    exitJunction.PortType
    ans =
    
        'ExitJunction'

    exit ジャンクションのラベルを "exit" に設定します。

    exitJunction.labelString = "exit";

    一致する exit 端子の Stateflow.Port オブジェクトを検索します。exit 端子の PortType プロパティの値を表示します。

    exitPort = Stateflow.findMatchingPort(exitJunction);
    exitPort.PortType
    ans =
    
        'ExitPort'

    exit 端子のラベルを表示します。

    exitPort.labelString
    ans =
    
        'exit'

    R2022b 以降

    A という Atomic サブチャート内で、サブチャートの入力 u1 のマッピングを変更します。

    モデル sf_atomic_iodata_fixed.slx を開きます。

    open_system("sf_atomic_iodata_fixed")

    Atomic サブチャート AStateflow.AtomicSubchart オブジェクトにアクセスします。

    subsystem = find(sfroot,"-isa","Stateflow.AtomicSubchart", ...
        Name="A");

    Subchart プロパティを使用して、サブチャートの入力 u1Stateflow.Data オブジェクトにアクセスします。

    subsystemSymbol = find(subsystem.Subchart, ...
        "-isa","Stateflow.Data",Name="u1");

    Chart プロパティを使用して、チャートの入力 u2Stateflow.Data オブジェクトにアクセスします。

    chartSymbol = find(subsystem.Chart, ...
        "-isa","Stateflow.Data",Name="u2");

    サブチャートの入力 u1 のマッピングをチェックします。

    getMappingForSymbol(subsystem,subsystemSymbol).Name
    ans = 
    'u1'
    

    サブチャートの入力 u1 をチャートの入力 u2 にマッピングします。

    setMappingForSymbol(subsystem,subsystemSymbol,chartSymbol)
    getMappingForSymbol(subsystem,subsystemSymbol).Name
    ans = 
    'u2'
    

    サブチャートの入力 u1 のマッピングをクリアします。

    clearMappingForSymbol(subsystem,subsystemSymbol)
    getMappingForSymbol(subsystem,subsystemSymbol).Name
    ans = 
    'u1'
    

    バージョン履歴

    R2010b で導入

    すべて展開する