Задайте интерфейсы компонентов модели

Задавая интерфейс компонента модели, такого как Simulink® подсистема, ссылка подсистемы, или модель - ссылка, является ключевым первым шагом, прежде чем другие смогут использовать ее.

  • Достижение соглашения об интерфейсе помогает определить, как сломать функциональность большой системы на компоненты.

  • После того, как вы зададите интерфейсы между компонентами, можно разработать компоненты параллельно. Если интерфейс остается устойчивым, то легко интегрировать те компоненты в большую систему.

  • Изменение интерфейса между компонентами является дорогим. Изменение интерфейса требует изменений по крайней мере в двух компонентах (источник и любые приемники) и к любым тестовым обвязкам. Это также делает все предыдущие версии тех компонентов несовместимыми с текущими и будущими версиями.

Изменение интерфейса намного легче, если компоненты хранятся при управлении конфигурацией. Можно отследить настройки совместимых версий компонента, чтобы предотвратить несовместимые комбинации компонентов.

Примечание

Эта тема фокусируется на интерфейсах проекта для моделирования и симуляции. Чтобы сконфигурировать интерфейс для генерации кода и развертывания, см.:

Идентифицируйте контуры компонента

Основывайте контуры компонентов на контуры соответствующих действительных систем. Эта инструкция особенно полезна, когда модель содержит:

  • И физический (объект и среда) и системы управления

  • Алгоритмы, которые запускаются на различных уровнях

  • Система, которую вы хотите снова использовать многократно

Если вы намереваетесь добавить датчики или другие компоненты, когда вы разрабатываете свою модель, создаете компоненты, чтобы представлять их. Можно сконфигурировать эти компоненты, чтобы передать сквозные сигналы или выполнить преобразование имени или единичная задержка.

Упростите интерфейсы с шинами

Упростить интерфейсы, сигналы группы и сообщения в шины. Шины упрощают подсистему и интерфейсы модели, позволяя вам сопоставить несколько сигналов или сообщений с одним портом. Они уменьшают сложность линии и помеху в блок-схеме и облегчают изменять интерфейс инкрементно. Например, если необходимо добавить или удалить элементы из интерфейса компонента, изменение шины может быть более простым, чем добавление или удаление портов. Чтобы логически сгруппировать или задать свойства фрагмента интерфейса, используйте несколько входов шины.

Шины хорошо подходят для компонентов, которые имеют много сигналов ввода и вывода и не используют все доступные сигналы. Шины передают только необходимые данные каждому компоненту от вводов и выводов. Если вы задаете шину в интерфейсе с Simulink.Bus объект, интерфейс требует данных для целой шины.

Чтобы получить доступ к элементу от входной шины, используйте блок In Bus Element. Чтобы создать выходную шину, используйте блоки Out Bus Element. Для получения дополнительной информации смотрите, Упрощают Подсистему и Интерфейсы модели с Шинами.

То, как вы реализуете шины в интерфейсе, зависит от ваших требований моделирования.

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

Используйте Simulink.Bus объекты задать свойства виртуальных шин в интерфейсе. Используйте строгое соглашение о присвоении имен для элементов шины и Bus объекты.

Поместить Bus объекты при управлении версиями, сохраните их в словаре данных, функции, скрипте или файле MAT.

Реплицируйте тип структуры в сгенерированный кодИспользуйте невиртуальные шины, чтобы описать структурированный тип данных для элемента в интерфейсе.
Сигналы пакета или параметры в структуры, которые соответствуют struct введите определение, которое задает ваш внешний код СИмпортируйте тип как Bus возразите и используйте объект в качестве типа данных для шин и MATLAB® структуры. Чтобы создать объект, используйте Simulink.importExternalCTypes функция.

Данные об интерфейсе раздела

Явным образом управляйте осциллографом данных для ваших компонентов глобальными и неглобальными параметрами.

  • Глобальные параметры — общий подход в автомобильном мире к абсолютно отдельному устройству хранения данных параметра от устройства хранения данных модели. Параметры для модели прибывают из базы данных калибровочных данных, и определенный калибровочный используемый файл становится частью настройки. Калибровочные данные обработаны как глобальные данные и находятся в основном рабочем пространстве MATLAB. Можно переместить данные о базовом рабочем пространстве на словарь данных для большего количества управления.

  • Неглобальные параметры — Объединяющиеся компоненты, которые хранят их собственные данные о параметре, имеют риск столкновений названия параметра. Если вы не используете соглашение о присвоении имен для параметров или список уникальных названий параметра и определения, то два компонента могут использовать параметр с тем же именем, но с различными значениями.

Хранить локальные данные о параметре:

  • Данные о разделе в ссылочные словари для каждого компонента.

  • Для моделей, на которые ссылаются можно использовать рабочие пространства модели.

  • Используйте файлы параметра (.m или .mat) и коллбэки отдельных моделей Simulink (например, preload функция.

    Можно также автоматически загрузить требуемые данные с помощью ярлыков проекта.

  • Используйте рабочие области маски с или без использования функций инициализации маски.

  • Для подсистем можно управлять осциллографом данных для подсистемы с помощью параметра Permit hierarchical resolution блока Subsystem.

Сконфигурируйте интерфейсы данных

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

  • Model Data Editor, чтобы сконфигурировать атрибуты проекта блоков.

    Чтобы открыть Model Data Editor, на вкладке Modeling Панели инструментов Simulink, нажимают Model Data Editor. На вкладке Inports/Outports Model Data Editor каждая строка соответствует блоку ввода или вывода, и столбцы соответствуют атрибутам, которые можно установить для блоков.

  • Интерфейсная перспектива отображения, чтобы просмотреть интерфейс компонента в целом и микроэлементы интерфейса к использованию указывает во внутреннем алгоритме блока.

    Чтобы открыть интерфейсную перспективу отображения, на вкладке Modeling, в галерее Design, нажимают Model Interface. Для получения дополнительной информации смотрите, что Связи Трассировки Используют Интерфейсное Отображение.

По умолчанию список Change view Model Data Editor установлен в Design, который конфигурирует столбцы, чтобы соответствовать атрибутам проекта. Используйте столбцы, чтобы явным образом сконфигурировать атрибуты проекта интерфейса. Например, задайте минимальные и максимальные значения для каждого блока со столбцами Max и Min.

В качестве альтернативы можно задать допускающий повторное использование набор атрибутов проекта в интерфейсах компонента вместо того, чтобы индивидуально задать каждый атрибут.

  • Используйте Simulink.ValueType объекты присвоить или подтвердить свойства сигнала на основе специализированных типов значения, таких как скорость ветра, давление воздуха в шине или температура воды.

  • Используйте Simulink.Bus объекты присвоить или подтвердить свойства каждого элемента шины.

Чтобы отобразить блоки ввода и вывода подсистем, нажмите кнопку Change Scope. В качестве альтернативы просмотрите только блоки ввода и вывода на корневом уровне модели исключением блоков в подсистемах.

Похожие темы