Этот пример показывает, как добавить модули в существующую модель. Вы видите как к:
Используйте инкрементный рабочий процесс, чтобы добавить модули в компоненты в вашей модели
Интегрируйте компоненты, которые используют различные модульные системы
Задайте модули для отдельных элементов объекта шины
Диагностируйте модульные проблемы несоответствия
Модель в примере является топливной системой управления. Контроллер (Топливный Контроллер скорости) и объект (Динамика Газа Engine) компоненты модели является невиртуальными подсистемами. Невиртуальным подсистемам выбрали параметр Treat as atomic unit. Вы вводите модули объекту прежде, чем ввести модули контроллеру и соединить сигналы. Вы также задаете модули для отдельных элементов объекта шины в модели.
Откройте модель ex_units_fuelsys
в качестве примера.
Для топ-модели параметр конфигурации Allowed unit systems определяет модульные системы, которые может использовать модель. Для каждого объекта и подсистем контроллера, блок Unit System Configuration определяет позволенные модульные системы.
Компонент | Позволенные модульные системы |
---|---|
Топ-модель | SI |
Топливная подсистема Контроллера скорости (контроллер) | all |
Подсистема Динамики Газа Engine (объект) | all |
В подсистеме объекта, на вкладке Signal Attributes каждого импорта блокируют диалоговое окно, устанавливают параметр Unit на значение, подходящее для связанного физического сигнала.
Блок | Физический сигнал | Модульная установка параметра |
---|---|---|
1 | скорость вращения двигателя | rad/s (радианы в секунду) |
2 | отрегулируйте угол | deg (степени) |
3 | топливный уровень | g/s (граммы в секунду) |
К дисплеям на портах и сигналах в модели, выберите Display> Signals & Ports> Port Units.
В подсистеме объекта вы видите модули на блоках импорта и соединенных сигналах.
Перейдите назад топ-модели. Чтобы скомпилировать модель, нажмите 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.
Топ-модель больше не выводит предупреждения.
Теперь, когда вы ввели модули объекту и успешно разрешили модульные проблемы несоответствия, можно добавить модули в контроллер. В Топливной подсистеме Контроллера скорости, установленной параметр Unit fuel_rate выходного порта, блокируются к kg/s
(килограммы в секунду).
Перейдите назад топ-модели. Чтобы перекомпилировать его, нажмите Ctrl+D.
Топ-модель теперь показывает предупреждение для несовпадающих модулей между контроллером и объектом. Чтобы разрешить эту ошибку, вы можете:
Явным образом вставьте блок Unit Conversion между этими двумя компонентами.
Выберите параметр конфигурации Allow automatic unit conversions.
Обе опции преобразовывают единицы таким же образом. Ситуация, в которой вы можете запретить автоматические преобразования и вставить блоки преобразования вместо этого, состоит в том, когда вы интегрируете много компонентов в большой системной модели. В этом случае вручную вставляющие блоки преобразования могут дать вам добавленный уровень контроля модульных преобразований в модели. Кроме того, с блоком преобразования можно управлять типом данных конвертированного сигнала. Это полезно, например, когда вы моделируете для точности фиксированной точки.
В этом случае, чтобы позволить Simulink® разрешить модуль не сочетаются автоматически, выбирают Allow automatic unit conversions. Чтобы перекомпилировать модель, нажмите Ctrl+D.
Simulink автоматически преобразовывает единицы между контроллером и объектом. Автоматический значок преобразования заменяет предупреждение.
Топ-модель включает объект шины EngSensors
, который передает различные сигналы датчика как составной сигнал контроллеру. Чтобы использовать Редактор Шины, чтобы добавить модули в отдельные элементы объекта шины, выберите Edit> Bus Editor.
Поскольку EngSensors
соединяет шиной объект, установленный параметр Unit каждого элемента.
Сигнал | Модульная установка параметра |
---|---|
throttle | deg (степени) |
speed | rad/s (радианы в секунду) |
ego | V (вольты) |
map | bar (панели) |
Чтобы перекомпилировать модель, нажмите Ctrl+D.
Модель показывает модули на отдельных элементах объекта шины.
Можно также видеть модули в интерфейсном представлении модели. Выберите Display> Interface.
airflow_calc блок подсистемы контроллера отображает модули на отдельных элементах объекта шины, и в интерфейсе компонента и в компоненте.
После того, как вы введете модули инкрементно и несоответствие твердости и проблемы несоответствия, можно моделировать модель.
Для сигнала fuel
, который соединяется с осциллографом, окно графика отображает связанные модули kg/s
как y - подпись по осям.
Inport | Выходной порт | Модульное преобразование | Модульная конфигурация системы