Журнал статистики симуляции

В этом примере показано, как вы можете получить доступ и анализировать информацию о пересечениях нуля во время симуляции. По умолчанию данные пересечения нулем не регистрируются. Если установлен флажок Log simulation statistics, переменная журнала симуляции содержит дополнительную SimulationStatistics узел для каждого блока, который может производить пересечения нуля, по цене более медленной скорости симуляции и более тяжелого потребления памяти.

  1. Откройте Механическую Систему с помощью модели примера Translational Hard Stop путем набора ssc_mechanical_system_translational_hardstop в MATLAB® Командное окно.

  2. Откройте диалоговое окно Параметры конфигурации, а затем на левой панели выберите Simscape. Можно увидеть, что в этом примере уже включена регистрация данных для всей модели, а также статистика симуляции, и что имя переменной рабочей области simlog_ssc_mechanical_system_translational_hardstop.

  3. Симулируйте модель. Это создает переменную рабочей области с именем simlog_ssc_mechanical_system_translational_hardstop (как задано параметром Workspace variable name), который содержит данные моделирования. Поскольку вы установили флажок Log simulation statistics, переменная рабочей области содержит дополнительные узлы, которые представляют данные пересечения нулем.

  4. The simlog переменная имеет ту же иерархию, что и модель. Чтобы увидеть всю структуру переменной, в командной строке введите:

    simlog_ssc_mechanical_system_translational_hardstop.print

    Эта команда печатает целое дерево данных.

         ssc_mechanical_system_translational_hardstop
         +-Damper_M1
         | +-C
         | | +-v
         | +-R
         | | +-v
         | +-f
         | +-v
         +-Damper_M2
         | +-C
         | | +-v
         | +-R
         | | +-v
         | +-f
         | +-v
         +-MTRef_DM1
         | +-V
         |   +-v
         +-MTRef_DM2
         | +-V
         |   +-v
         +-MTRef_VS
         | +-V
         |   +-v
         +-Mass_1
         | +-M
         | | +-v
         | +-f
         | +-v
         +-Mass_2
         | +-M
         | | +-v
         | +-f
         | +-v
         +-Sensor_M1
         | +-Ideal_Translational_Motion_Sensor
         | | +-C
         | | | +-v
         | | +-P
         | | +-R
         | | | +-v
         | | +-V
         | | +-f
         | | +-v
         | | +-x
         | +-MTRef
         | | +-V
         | |   +-v
         | +-PS_Terminator
         | | +-I
         | +-PS_Terminator1
         |   +-I
         +-Sensor_M2
         | +-Ideal_Translational_Motion_Sensor
         | | +-C
         | | | +-v
         | | +-P
         | | +-R
         | | | +-v
         | | +-V
         | | +-f
         | | +-v
         | | +-x
         | +-MTRef
         |   +-V
         |     +-v
         +-Spring_M1
         | +-C
         | | +-v
         | +-R
         | | +-v
         | +-f
         | +-v
         | +-x
         +-Translational_Hard_Stop
         | +-C
         | | +-v
         | +-R
         | | +-v
         | +-SimulationStatistics
         | | +-zc_1
         | | | +-crossings
         | | | +-values
         | | +-zc_2
         | |   +-crossings
         | |   +-values
         | +-f
         | +-v
         | +-x
         +-Velocity_Source
           +-C
           | +-v
           +-R
           | +-v
           +-S
           +-f
           +-v
  5. Под Translational_Hard_Stop узел, существует узел, называемый SimulationStatistics, который содержит информацию о пересечении нулем. Это означает, что Translational Hard Stop является единственным блоком в модели, который может сгенерировать пересечения нулем во время симуляции.

  6. Вы можете получить доступ и проанализировать эти данные, аналогичные другим данным, которые регистрируются в рабочей области во время симуляции. Для получения дополнительной информации смотрите simscape.logging.Node и simscape.logging.Series страницы с описанием.