exponenta event banner

Stateflow. SimulationData. Данные

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

Описание

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

Создание

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

  2. В инспекторе свойств в разделе «Ведение журнала» установите флажок «Регистрировать данные сигнала».

Свойства

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

Имя записи объекта данных, указанное как символьный массив. По умолчанию имя ведения журнала для объекта данных является именем объекта данных. Чтобы назначить объекту данных другое имя, в инспекторе свойств в разделе «Имя журнала» выберите Custom и введите имя пользовательского журнала.

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

Путь к блоку для исходного блока, указанный как Simulink.SimulationData.BlockPath (Simulink) объект.

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

Зарегистрированные данные и время, указанные как timeseries объект.

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

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

plot (Симулинк)Печать выходных данных моделирования в инспекторе данных моделирования

Примеры

свернуть все

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

  2. Откройте окно Hotel диаграмма.

  3. Откройте панель «Символы». На вкладке Моделирование (Simulation) в разделе Подготовка (Prepare) щелкните Панель символов (Symbols Pane).

  4. Откройте инспектор свойств. На вкладке «Моделирование» в разделе «Подготовка» выберите «Инспектор свойств».

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

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

    • В инспекторе свойств на вкладке «Ведение журнала» установите флажок «Данные сигнала журнала».

  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