Правильные шины, используемые в качестве векторов

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

  • Улучшает обработку цикла

  • Способствует сопоставимому редактированию и поведению времени компиляции

Правильные шины Используя Model Advisor

При исправлении шин, используемых в качестве векторов, Model Advisor обычно обеспечивает самый эффективный подход.

  1. В Редакторе Simulink® выберите Analysis> Model Advisor> Model Advisor.

  2. Выберите и запустите сигналы шины Simulink Check, обработанные как проверка векторов.

    Model Advisor сообщает о любых случаях шин, обработанных как векторы.

  3. Следуйте за предложениями Model Advisor для исправления ошибок, о которых сообщает проверка.

Для получения дополнительной информации об использовании Model Advisor смотрите Выбор и Осуществленные Проверки Model Advisor.

Добавьте шину в векторные блоки

Чтобы явным образом преобразовать шину в мультиплексор (вектор), добавьте Шину в Векторные блоки с помощью одного из этих подходов:

  • Вставьте блок Bus to Vector в шины, обработанные как векторы.

  • Используйте функцию Simulink.BlockDiagram.addBusToVector, которая автоматически вставляет Шину в Векторные блоки, где шины обработаны как векторы.

Например, модель ex_bus_to_vector обрабатывает шины как векторы при помощи шин как входные параметры, чтобы Получить блоки.

Эти данные показывают ту же модель с Шиной к Векторным блокам после блока Bus Creator.

Блок Scope показывает результаты симуляции.

Результаты симуляции являются тем же самым в любом случае. Блок Bus to Vector является виртуальным, и не влияет на результаты симуляции, генерацию кода или производительность.

Реорганизуйте модель

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

Например, в модели ex_bus_to_vector, блок Gain требует векторного сигнала. Однако входной сигнал является шиной, созданной блоком Bus Creator.

Чтобы обеспечить необходимый векторный сигнал для блока Gain, замените блок Bus Creator на блок Mux.

Реорганизация модели вручную ставит эти проблемы:

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

  • Контакт со многими случаями в модели длителен и подвержен ошибкам.

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

Идентифицируйте неявные преобразования шины к вектору

Идентифицировать шины, обработанные как векторы:

  • Используйте проверку Check bus signals treated as vectors Model Advisor.

  • Используйте функцию Simulink.BlockDiagram.addBusToVector.

  • Установите параметр конфигурации Bus signal treated as vector на warning или error. Настройкой по умолчанию для Bus signal treated as vector является none, который не генерирует предупреждающего сообщения или сообщения об ошибке, когда блок неявно преобразовывает шину в вектор во время симуляции.

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

Блоки

Похожие темы