Stateflow.SimulationData.Data

Значения данных в процессе моделирования

Описание

Используйте Stateflow.SimulationData.Data регистрировать значения локальных и выходных данных в процессе моделирования.

Создание

  1. В панели Символов выберите объект локальных или выходных данных.

  2. В Property Inspector, под Logging, устанавливают флажок Log signal data.

Свойства

развернуть все

Логгирование имени объекта данных в виде символьного массива. По умолчанию имя логгирования для объекта данных является именем объекта данных. Чтобы присвоить другое имя к объекту данных, в Property Inspector, под Logging Name, выбирают Custom и введите пользовательское имя логгирования.

Типы данных: char

Блок path для исходного блока в виде Simulink.SimulationData.BlockPath объект.

Типы данных: Simulink.SimulationData.BlockPath

Записанные данные и время в виде a timeseries объект.

Типы данных: timeseries

Функции объекта

plotПостройте выходные данные симуляции в Инспекторе Данных моделирования

Примеры

свернуть все

  1. Откройте sf_semantics_hotel_checkin модель.

  2. Откройте Hotel график.

  3. Откройте панель Символов. Во вкладке Simulation, в Prepare, нажимают Symbols Pane.

  4. Откройте Property Inspector. Во вкладке Simulation, в Prepare, нажимают Property Inspector.

  5. Сконфигурируйте service локальные данные для логгирования.

    • В панели Символов выберите service.

    • В Property Inspector, на вкладке Logging, устанавливают флажок Log signal data.

  6. Возвратитесь к модели Simulink®.

  7. Симулируйте модель. После запуска симуляции зарегистрируйтесь в отеле путем переключения первого переключателя и закажите обслуживание номеров многократно путем переключения второго переключателя. В процессе моделирования Stateflow® сохраняет записанные данные в Simulink.SimulationData.Dataset объект логгирования сигнала. Именем по умолчанию объекта логгирования сигнала является logsout. Для получения дополнительной информации смотрите, что Данные сигнала Экспорта Используют Логгирование Сигнала.

  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 метод.

    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