Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

Stateflow.SimulationData.Data

シミュレーション中のデータ値

説明

Stateflow.SimulationData.Data を使用して、シミュレーション中のローカル データと出力データの値を記録します。

作成

  1. [シンボル] ペインで、ローカルまたは出力データ オブジェクトを選択します。

  2. プロパティ インスペクターの [ログ] で、[信号データのログ] チェック ボックスをオンにします。

プロパティ

すべて展開する

データ オブジェクトのログ名。文字配列として指定します。既定では、データ オブジェクトのログ名はデータ オブジェクトの名前です。データ オブジェクトに別の名前を割り当てるには、プロパティ インスペクターの [ログ名][カスタム] を選択し、カスタム ログ名を入力します。

データ型: char

ソース ブロックのブロック パス。Simulink.SimulationData.BlockPath (Simulink) オブジェクトとして指定します。

データ型: Simulink.SimulationData.BlockPath

ログ データと時間。timeseries オブジェクトとして指定します。

データ型: timeseries

オブジェクト関数

plot (Simulink)シミュレーション データ インスペクターでのシミュレーション出力データのプロット

すべて折りたたむ

  1. sf_semantics_hotel_checkin モデルを開きます。

  2. Hotel チャートを開きます。

  3. [シンボル] ペインを開きます。[シミュレーション] タブの [準備] で、[[シンボル] ペイン] をクリックします。

  4. プロパティ インスペクターを開きます。[シミュレーション] タブの [準備] で、[プロパティ インスペクター] をクリックします。

  5. ログを作成する service ローカル データを設定します。

    • [シンボル] ペインで、service を選択します。

    • プロパティ インスペクターの [ログ] タブで、[信号データのログ] チェック ボックスをオンにします。

  6. Simulink® モデルに戻ります。

  7. モデルのシミュレーションを実行します。シミュレーション開始後に、1 つ目のスイッチを切り替えてホテルにチェック インし、2 つ目のスイッチを切り替えてルーム サービスを複数回注文します。シミュレーション時に、Stateflow® により、ログ データは Simulink.SimulationData.Dataset (Simulink) 信号のログ オブジェクトに保存されます。信号のログ オブジェクトの既定の名前は logsout です。詳細については、信号ログを使用して、信号データをエクスポート (Simulink)を参照してください。

  8. シミュレーションを停止します。

  9. 信号のログ オブジェクトにアクセスするには、MATLAB® コマンド プロンプトで、以下のように入力します。

    logsout = out.logsout
    logsout = 
    
    Simulink.SimulationData.Dataset 'logsout' with 1 element
    
                            Name         BlockPath                        
                            ___________  ________________________________ 
        1  [1x1 Data ]      service      sf_semantics_hotel_checkin/Hotel

  10. ログが作成された要素にアクセスするには、get (Simulink) メソッドを使用します。

    serviceLog = logsout.get('service')
    serviceLog = 
    
      Stateflow.SimulationData.Data
      Package: Stateflow.SimulationData
    
      Properties:
             Name: 'service'
        BlockPath: [1×1 Simulink.SimulationData.BlockPath]
           Values: [1×1 timeseries]
    

  11. ログ データおよびログが作成された各要素の時間にアクセスするには、Values.Data プロパティと Values.Time プロパティを使用します。たとえば、関数 table を使用して、ログ データを表形式でまとめます。

    Tbl = table(serviceLog.Values.Time,serviceLog.Values.Data);
    Tbl.Properties.VariableNames = {'Time','Data'}
    Tbl =
    
      6×2 table
    
           Time       Data
        __________    ____
        1.7076e+06     0  
        1.8607e+06     1  
        1.9653e+06     2  
        1.9653e+06     3  
        1.9653e+06     4  
        2.2912e+06     5  
    

R2017b で導入