В этом примере показано, как можно получить доступ и анализировать информацию о нулевых пересечениях в процессе моделирования. По умолчанию данные о пересечении нулем не регистрируются. Если вы устанавливаете флажок Log simulation statistics, логарифмическая переменная симуляции содержит дополнительный SimulationStatistics
узел для каждого блока, который может произвести нулевые пересечения по цене более медленной скорости симуляции и более тяжелого потребления памяти.
Откройте Механическую Систему с Поступательной моделью Жесткого упора в качестве примера путем ввода ssc_mechanical_system_translational_hardstop
в командном окне MATLAB®.
Откройте диалоговое окно Configuration Parameters и затем, на левой панели, выберите Simscape. Вы видите, что эта модель в качестве примера уже имеет регистрацию данных для целой модели, включенной, а также статистика симуляции, и что именем переменной рабочей области является simlog_ssc_mechanical_system_translational_hardstop
.
Симулируйте модель. Это создает переменную рабочей области под названием simlog_ssc_mechanical_system_translational_hardstop
(как задано параметром Workspace variable name), который содержит данные моделирования. Поскольку вы установили флажок Log simulation statistics, переменная рабочей области содержит дополнительные узлы, которые представляют данные о пересечении нулем.
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
Под Translational_Hard_Stop
узел, существует узел под названием SimulationStatistics
, который содержит информацию о пересечении нулем. Это означает, что Translational Hard Stop является единственным блоком в модели, которая может сгенерировать нулевые пересечения в процессе моделирования.
Можно получить доступ и анализировать эти данные, похожие на другие данные, которые регистрируются к рабочей области в процессе моделирования. Для получения дополнительной информации смотрите simscape.logging.Node
и simscape.logging.Series
страницы с описанием.