Сохраните информацию состояния

Сохраните информацию состояния для каждого шага симуляции

Можно сохранить информацию состояния для регистрируемых состояний для каждого шага симуляции во время симуляции. Тот уровень информации состояния может быть полезным для отладки.

  1. Установите флажок Configuration Parameters> Data Import/Export> States.

  2. В окне редактирования States можно задать различную переменную для получения информации состояния, если вы не хотите использовать xout по умолчанию переменная.

  3. Также в панели Data Import/Export, установленной параметр Format на DatasetСтруктура, или Structure with time, если вы не используете формат массивов для совместимости с устаревшей моделью.

    Dataset формат не поддерживает:

    • Логгирование информации о состояниях в подсистеме вызова функций

    • Логгирование состояний во время быстрых симуляций акселератора

    • Генерация кода

  4. Нажмите Apply.

  5. Симулируйте модель.

Сохраните частичную информацию конечного состояния

Сохранить только регистрируемые состояния (непрерывные и дискретные состояния блоков):

  1. Установите флажок Configuration Parameters> Data Import/Export> Final states.

  2. В окне редактирования Final states можно задать различную переменную для получения информации состояния, если вы не хотите использовать xFinal по умолчанию переменная.

  3. Очистите параметр Save final operating point.

  4. Установите параметр Format на DatasetСтруктура, или Structure with time.

  5. Нажмите Apply.

  6. Симулируйте модель.

Исследуйте информацию состояния, сохраненную без рабочей точки

Если вы включаете Configuration Parameters> Data Import/Export> Final states или параметры States, Simulink® сохраняет информация состояния в формате, который вы задаете параметром Format. Переменной по умолчанию для получения информации о Final state является xFinal, и переменной для получения информации состояния для получения информации о состояниях является xout.

Если модель не имеет никаких сохраненных состояний, то xFinal и xout пустые переменные. Чтобы определить, имеет ли модель сохраненные состояния, используйте isempty(xout) команда.

Информация о конечном состоянии в формате набора данных

Например, предположите, что вы сохранили информацию конечного состояния в Dataset формат и использование xFinal по умолчанию переменная для сохраненной информации состояния.

xFinal
xFinal = 

Simulink.SimulationData.Dataset 'xFinal' with 2 elements

                        Name    BlockPath 
                        ______  _________ 
    1  [1x1 State]      CSTATE  vdp/x1   
    2  [1x1 State]      DSTATE  vdp/x2   

  - Use braces { } to access, modify, or add elements using index.

Исследуйте первый элемент набора данных состояния.

xFinal{1}

ans = 

  Simulink.SimulationData.State
  Package: Simulink.SimulationData

  Properties:
         Name: 'CSTATE'
    BlockPath: [1x1 Simulink.SimulationData.BlockPath]
        Label: CSTATE
       Values: [1x1 timeseries]

Информация о конечном состоянии в структуре с форматом времени

Например, предположите, что вы сохранили информацию конечного состояния в структуре с форматом времени, и используйте xFinal по умолчанию переменная для сохраненной информации состояния.

Найти время симуляции и количество состояний в vdp модель, введите xFinal переменная.

xFinal
xFinal = 

       time: 20
    signals: [1x2 struct]

В этом случае время симуляции равняется 20 и существует два состояния. Чтобы исследовать первое состояние, используйте эту команду.

xFinal.signals(1)
ans = 

               values: 2.0108
           dimensions: 1
                label: 'CSTATE'
            blockName: 'vdp/x1'
            stateName: ''
    inReferencedModel: 0

values и blockName поля первой структуры состояния показывают, что окончательное значение для выходного сигнала блока x1 2.018.

Примечание

Если вы пишете скрипт, чтобы анализировать информацию состояния, используйте комбинацию label и blockName значения, чтобы идентифицировать определенное состояние исключительно. Не используйте порядок состояний.

Сохраните информацию конечного состояния с рабочей точкой

Чтобы сохранить полную информацию состояния, сохраните ModelOperatingPoint объект для симуляции.

  1. Установите флажок Configuration Parameters> Data Import/Export> Final states.

  2. Также в панели Импорта/Экспорта Данных, выберите параметр Save final operating point.

  3. В окне редактирования рядом с параметром Save final operating point введите имя переменной для ModelOperatingPoint возразите и нажмите Apply.

  4. Симулируйте модель.

Для получения дополнительной информации об использовании рабочей точки смотрите, Сохраняют и Рабочая точка Симуляции Восстановления.

Связанные примеры

Больше о