Обновите существующую модель, чтобы использовать модули

В этом примере показано, как добавить модули в существующую модель. Вы видите как к:

  • Используйте инкрементный рабочий процесс, чтобы добавить модули в компоненты в вашей модели

  • Интегрируйте компоненты, которые используют различные модульные системы

  • Задайте модули для отдельных элементов объекта шины

  • Диагностируйте проблемы несоответствия единиц измерения

Модель в примере является топливной системой управления. Контроллер (Fuel Rate Controller) и объект (Engine Gas Dynamics) компоненты модели является невиртуальными подсистемами. Невиртуальным подсистемам выбрали параметр Treat as atomic unit. Вы вводите модули объекту прежде, чем ввести модули контроллеру и соединить сигналы. Вы также задаете модули для отдельных элементов объекта шины в модели.

Откройте ex_units_fuelsys модель в качестве примера.

Для топ-модели параметр конфигурации Allowed unit systems определяет модульные системы, которые может использовать модель. Для каждого объекта и подсистем контроллера, блок Unit System Configuration определяет позволенные модульные системы.

КомпонентПозволенные модульные системы
Топ-модельSI
Подсистема Fuel Rate Controller (контроллер)all
Подсистема Engine Gas Dynamics (объект)all

В подсистеме объекта, на вкладке Signal Attributes каждого диалогового окна блока Inport, устанавливает параметр Unit на значение, подходящее для связанного физического сигнала.

БлокФизический сигналМодульная установка параметра
1скорость вращения двигателяrad/s (радианы в секунду)
2отрегулируйте уголdeg (степени)
3топливный уровеньg/s (граммы в секунду)

К дисплеям на портах и сигналах в модели, на вкладке Debug, выбирают Information Overlays> Port Units.

В подсистеме объекта вы видите модули на блоках Inport и соединенных сигналах.

Перейдите назад топ-модели. Чтобы скомпилировать модель, нажмите Ctrl+D, который также выполняет модульную проверку непротиворечивости.

Модель выводит предупреждение, чтобы указать, что существует запрещенный модуль для throttle angle сигнал. Нажатие на значок предупреждения отображает ссылку на отчет Model Advisor, который предоставляет вам больше подробной информации.

Модель также выводит предупреждение в нижней части окна редактирования моделей.

В подсистеме объекта вы задали модуль deg (степени) для throttle angle сигнал. Однако предупреждающее сообщение указывает, что степени не находятся в системе единицы СИ. Как определено параметром конфигурации Allowed unit systems, SI является единственной модульной системой, которую в настоящее время позволяет топ-модель. Чтобы разрешить это предупреждение, у вас есть две опции:

  • В подсистеме объекта задайте модуль для throttle angle сигнализируйте, что система единицы СИ поддерживает. Для получения дополнительной информации о поддерживаемых модульных системах и модулях они содержат, видят Позволенные Модули.

  • В топ-модели измените параметр конфигурации Allowed unit systems, чтобы расширить набор позволенных модульных систем.

В этом случае, модуль deg для throttle angle сигнал является соответствующим. Вместо этого чтобы разрешить предупреждение, расширьте набор позволенных модульных систем для топ-модели. Установите параметр конфигурации Allowed unit systems топ-модели к all. Чтобы перекомпилировать модель, нажмите Ctrl+D.

Топ-модель больше не выводит предупреждения.

Теперь, когда вы ввели модули объекту и успешно разрешили модульные проблемы несоответствия, можно добавить модули в контроллер. В подсистеме Fuel Rate Controller, установленной параметр Unit блока fuel_rate Outport к kg/s (килограммы в секунду).

Перейдите назад топ-модели. Чтобы перекомпилировать его, нажмите Ctrl+D.

Топ-модель теперь показывает предупреждение для несовпадающих модулей между контроллером и объектом. Чтобы разрешить эту ошибку, вы можете:

  • Явным образом вставьте блок Unit Conversion между этими двумя компонентами.

  • Выберите параметр конфигурации Allow automatic unit conversions.

Обе опции преобразовывают единицы таким же образом. Ситуация, в которой вы можете запретить автоматические преобразования и вставить блоки преобразования вместо этого, состоит в том, когда вы интегрируете много компонентов в большой системной модели. В этом случае вручную вставляющие блоки преобразования могут дать вам добавленный уровень контроля модульных преобразований в модели. Кроме того, с блоком преобразования можно управлять типом данных конвертированного сигнала. Это полезно, например, когда вы моделируете для точности фиксированной точки.

В этом случае, чтобы позволить Simulink® разрешить модуль не сочетаются автоматически, выбирают Allow automatic unit conversions. Чтобы перекомпилировать модель, нажмите Ctrl+D.

Simulink автоматически преобразовывает единицы между контроллером и объектом. Автоматический значок преобразования заменяет предупреждение.

Топ-модель включает EngSensors соедините шиной возражают, что передает различные сигналы датчика как составной сигнал контроллеру. Чтобы использовать Редактор Шины, чтобы добавить модули в отдельные элементы объекта шины, на вкладке Modeling, под Design, нажимают Bus Editor.

Для EngSensors соедините шиной объект, установленный параметр Unit каждого элемента.

СигналМодульная установка параметра
throttledeg (степени)
speedrad/s (радианы в секунду)
egoV (вольты)
mapbar (панели)

Чтобы перекомпилировать модель, нажмите Ctrl+D.

Модель показывает модули на отдельных элементах объекта шины.

Можно также видеть модули в интерфейсном представлении модели. На вкладке Modeling, под Design, нажимают Model Interface.

Блок airflow_calc подсистемы контроллера отображает модули на отдельных элементах объекта шины, и в интерфейсе компонента и в компоненте.

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

Для fuel сигнал, который соединяется с осциллографом, окно графика, отображает связанные модули kg/s как y - подпись по осям.

Смотрите также

| | |

Похожие темы