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).

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

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

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

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

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

Примеры

свернуть все

  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 (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