exponenta event banner

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

Тестовый электрический жгут - это блок-схема модели, которую можно использовать для тестирования, редактирования или отладки модели Simulink ®. В главной модели электрический жгут связывается с компонентом модели или моделью верхнего уровня. Тестовый электрический жгут содержит отдельное рабочее пространство модели и набор конфигурации. Тестовый электрический жгут связан с главной моделью и доступен через холст модели.

При создании внешнего электрического жгута также создается XML-файл метаданных. XML-файл содержит уникальный идентификатор конструкторской модели, который поддерживает связь между моделью и ее кабельным жгутом. Файл метаданных не должен находиться в той же папке, что и модель, если они оба находятся в пути MATLAB ®.

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

  • Компонент модели, например подсистема, библиотечный блок, ссылочный блок подсистемы или блок модели. Тестовый электрический жгут изолирует компонент в отдельной среде моделирования. При преобразовании блока ссылки на подсистему или подсистему в блок модели тестовые жгуты переносятся в ссылку на модель (см. раздел «Анализ тестовых кабелей»).

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

Взаимосвязь кабельных трасс и модели для компонента модели

При связывании тестового электрического жгута с компонентом модели рабочее пространство модели электрического жгута содержит копии параметров, связанных с компонентом. Например, предположим, что создается тестовый электрический жгут для компонента, который содержит блок усиления, а затем добавляется второй блок усиления к электрическому жгуту.

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

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

  • Параметр h - это коэффициент усиления блока усиления, добавленного к электрическому жгуту. Поскольку этот блок находится вне тестируемого компонента, h существует только в рабочем пространстве модели кабельных трасс.

Взаимосвязь кабельных трасс и модели для модели верхнего уровня

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

  • Тестируемый компонент ссылается на главную модель, а параметр g существует в рабочей области главной модели. Рабочее пространство модели кабельных трасс не содержит копию g.

  • Параметр h - это коэффициент усиления блока усиления, добавленного к электрическому жгуту. Поскольку этот блок находится вне тестируемого компонента, h существует только в рабочем пространстве модели кабельных трасс.

Разрешение параметров

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

Рекомендации по тестовым кабелям

  • Тестовый электрический жгут можно построить для следующих типов компонентов модели:

    • Блоки модели

    • Опорные блоки подсистемы

    • Блоки подсистем

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

    • Блоки Stateflow ®, включая диаграммы Stateflow, блоки Truth Table, блоки State Transition Table и блоки Test Sequence

    • Блоки вызывающего абонента C

    • Функциональные блоки MATLAB

    • Пользовательские функциональные блоки

  • Одновременно откройте только один тестовый электрический жгут для каждой модели Simulink.

  • Не комментируйте тестируемый компонент в тестовом жгуте. Комментирование тестируемого компонента может привести к непредвиденному поведению.

  • Если подсистема имеет тестовый электрический жгут, невозможно развернуть содержимое подсистемы в модель, содержащую подсистему. Удалите тестовый электрический жгут перед развертыванием подсистемы. Дополнительные сведения см. в разделе Расширение содержимого подсистемы.

  • Тестовые жгуты, подключенные к моделям подсистем:

    • Всегда синхронизироваться с базовой моделью

    • Создаются без компиляции

    • Не поддерживать обратные вызовы после сборки

    • Не поддерживать режим проверки SIL/PIL

    • Не автоматизировать ввод фигур

  • Блоки ссылок подсистемы синхронизируют свои параметры блоков, но не их содержимое.

  • При преобразовании блока «Подсистема» (Subsystem) или «Привязка подсистемы» (Subystem Reference) в блок «Модель» (Model) тестовые жгуты переносятся в привязку модели. Жгуты в блоке подсистемы преобразуются в жгуты блок-схемы. Вложенные жгуты в подсистеме копируются в идентичные блоки в ссылке модели. Все перенесенные жгуты являются внутренними жгутами в ссылке Модель (Model). При передаче тестовые жгуты могут быть переименованы. Отзывы о переносе кабельных трасс можно просмотреть на панели «Полное преобразование» помощника по преобразованию или в командной строке MATLAB.

    Эти ограничения применяются к преобразованию блока подсистем или подсистем в блок модели.

    • Жгуты SIL и PIL не переносятся.

    • Требования к тестовому жгуту для подсистемы не переносятся. Их необходимо скопировать вручную.

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

  • Тестовые жгуты не поддерживаются для следующих типов объектов Stateflow:

    • Атомарные подшаблоны

    • Состояния на основе Simulink

    • Функции симулятора

    • Функции MATLAB

  • Помощник по обновлению и дифференцирование XML не поддерживаются для тестовых моделей кабельных трасс.

  • Тестовый электрический жгут с источником блока Signal Builder не поддерживает:

    • Сигналы на основе кадров

    • Сложные сигналы

    • Сигналы переменного размера

  • Для тестового электрического жгута с блоком тестовой последовательности или диаграммой потока состояний в качестве источника все входы в тестируемый компонент должны работать с одинаковым временем выборки.

  • Следующие соображения относятся к сбору покрытия в тестовом жгуте:

    • Загрузка результатов покрытия в модель или агрегирование результатов покрытия по моделям требует модели, согласующейся с результатами покрытия. Поэтому для выполнения агрегированного сбора покрытия используйте тестовые жгуты, сконфигурированные для автоматической синхронизации тестируемого компонента. Установить режим синхронизации в значение Synchronize on harness open and close. Дополнительные сведения см. в разделе Синхронизация изменений между тестовым кабелем и моделью.

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

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

      • При закрытии тестового электрического жгута результаты покрытия удаляются из памяти.

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

      • Можно агрегировать результаты покрытия с главной моделью, если тестируемый компонент не отличается, но необходимо вручную загрузить результаты покрытия в основную модель. См. описание функции cvload (Simulink Coverage).

    Сведения о покрытии см. в разделе Сбор покрытия в тестах

См. также

Связанные темы