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

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

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

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

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

  3. Также на панели Data Import/Export установите параметр Format равным Dataset, Structure, или 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, или 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

The 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. Симулируйте модель.

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

Похожие примеры

Подробнее о