exponenta event banner

Данные моделирования журнала и графика

В этом примере показано, как можно регистрировать и выводить на печать расчетные данные вместо добавления датчиков в модель.

Показанная модель представляет двигатель постоянного тока с постоянным магнитом.

Эта модель очень похожа на пример двигателя постоянного тока постоянного магнита, но, в отличие от модели примера, она не включает сенсорный блок w (идеальный датчик вращательного движения и блок PS-Simulink Converter) вместе с объемом измерения частоты вращения двигателя. Подробное описание примера двигателя постоянного тока с постоянным магнитом см. в разделе Оценка рабочих характеристик двигателя постоянного тока.

  1. Создайте модель, как показано на предыдущей иллюстрации.

  2. В окне модели откройте вкладку Моделирование (Modeling) и щелкните Настройки модели (Model Settings). Откроется диалоговое окно Параметры конфигурации (Configuration Parameters).

  3. В диалоговом окне «Параметры конфигурации» на левой панели выберите Импорт/экспорт данных. Снимите флажок Вывод одного моделирования (Single simulation output), который установлен по умолчанию. Этот шаг позволяет связать записанные данные моделирования с отдельной переменной рабочей области, а не с одним выходным объектом.

  4. Чтобы включить ведение журнала данных, в диалоговом окне «Параметры конфигурации» на левой панели выберите Simscape, а затем задайте для параметра Данные моделирования журнала значение All и нажмите кнопку ОК.

  5. Моделирование модели. Создается переменная рабочего пространства с именем simlog (как указано параметром Имя переменной рабочей области), который содержит данные моделирования.

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

    print(simlog)

    Эта команда используется для печати всего дерева данных.

         mlog_ex_dcmotor1
         +-Electrical_Reference2
         | +-V
         |   +-v
         +-Friction_Mr
         | +-C
         | | +-w
         | +-R
         | | +-w
         | +-t
         | +-w
         +-L
         | +-i
         | +-i_L
         | +-n
         | | +-v
         | +-p
         | | +-v
         | +-v
         +-Load_Torque
         | +-C
         | | +-w
         | +-R
         | | +-w
         | +-S
         | +-t
         | +-w
         +-Mechanical_Rotational_Reference
         | +-W
         |   +-w
         +-Mechanical_Rotational_Reference1
         | +-W
         |   +-w
         +-Motor_Inertia_J
         | +-I
         | | +-w
         | +-t
         | +-w
         +-Rotational_Electromechanical_Converter
         | +-C
         | | +-w
         | +-R
         | | +-w
         | +-i
         | +-n
         | | +-v
         | +-p
         | | +-v
         | +-t
         | +-v
         | +-w
         +-Rotor_ResistanceR
         | +-i
         | +-n
         | | +-v
         | +-p
         | | +-v
         | +-v
         +-x1_5V
           +-i
           +-n
           | +-v
           +-p
           | +-v
           +-v
  7. Каждый узел, представляющий переменную Across, Through или внутренний блок, содержит данные серии. Чтобы перейти к серии, необходимо указать полный путь к ней через дерево, начиная с имени переменной верхнего уровня. Например, чтобы получить ручку на последовательности, представляющей угловую скорость двигателя, введите:

    s1 = simlog.Rotational_Electromechanical_Converter.R.w.series;

    Отсюда можно получить доступ к значениям и векторам времени для ряда и проанализировать их.

  8. Нет необходимости изолировать данные серии для печати их значений по времени или по другим сериям. Например, чтобы увидеть, как скорость двигателя (в оборотах в минуту) изменяется со временем, введите:

    plot(simlog.Rotational_Electromechanical_Converter.R.w,'units','rpm')

  9. Сравните этот рисунок с отображением области RPM в примере двигателя постоянного тока с постоянным магнитом. Результаты точно такие же.

  10. Для построения графика крутящего момента двигателя относительно его угловой скорости, в rpmи добавьте описательные имена осей, введите:

    plotxy(simlog.Rotational_Electromechanical_Converter.R.w,simlog.Motor_Inertia_J.t,...
       'xunit','rpm','xname','Angular velocity','yname','Torque')
    

    Дополнительные сведения о выводе на печать записанных данных моделирования см. в разделе simscape.logging.plot и simscape.logging.plotxy справочные страницы.