Model Loop

Цикл на моделях и системах Simulink, заданный дочерними компонентами

Описание

Этот компонент закольцовывается в Simulink® модели и системы, заданные дочерними компонентами. Для примера можно использовать Model Loop с дочерним System Loop для отчета о подсистемах указанной системы.

Рассмотрите создание дочерних элементов этих компонентов Model Loop (хотя Model Loop не обязательно должен быть непосредственным родительским элементом данного компонента).

Для условной обработки, основанной на блоках, можно использовать RptgenSL.getReportedBlock функция. Для получения дополнительной информации см. Раздел «Функции контекста цикла».

Модели, которые нужно включить

Можно добавить модель в список, нажав Add New Model to List. В следующей таблице показаны кнопки, которые можно использовать для перемещения модели вверх или вниз в списке, или для добавления или удаления модели.

Кнопка

Действие

Переместите модель вверх в списке.

Переместите модель вниз по списку.

Удалите модель из списка.

Добавьте новую модель в список.

Опции модели

  • Active: Включает заданную модель в цикл. Эта опция выбрана по умолчанию. Удаление этой опции опускает модель из цикла.

    Эта опция позволяет вам временно исключить одну или несколько моделей из отчета.

  • Model name: Задает имя модели.

    • Current block diagram

    • All open models

    • All open libraries

    • Block diagrams in current directory

    • Custom block diagram: Выбор этой опции автоматически устанавливает поле Starting system(s) $top чтобы начать в корневой системе модели.

    • %<VariableName>: Для получения дополнительной информации смотрите %<VariableName> Notation на Text страница с описанием компонента в MATLAB® Report Generator™ документации.

  • Traverse model: Задает системы для траверсы.

    • All systems in model

    • Selected system(s) only

    • Selected system(s) and ancestors

    • Selected system(s) and children

  • Look under masks: Определяет, как обрабатывать маски.

    • Functional masks only

    • No masks

    • All masks

    • Graphical masks only

    Для получения дополнительной информации см. раздел «Создание маски блоков».

  • Follow library links: Указывает библиотечные ссылки, которые нужно включить.

    • Do not follow library links: Библиотечные ссылки рассматриваются как блоки.

    • Include library links: Библиотечные ссылки рассматриваются как подсистемы.

    • Include unique library links: С несколькими копиями одной и той же библиотечной ссылки в системе, один рассматривается как подсистема, а другие как блоки.

    Для получения дополнительной информации см. раздел «Связанные блоки».

  • Model reference: Определяет, следует ли сообщать о моделях, на которые ссылается блок Model. Если необходимо сообщить о ссылочных моделях, то можно управлять глубиной иерархии модели и сообщать ли о вариантных моделях.

    • Do not follow Model blocks: Не сообщать о блоках, содержащихся в ссылочных моделях.

    • Follow all Model blocks: Отчет о блоках, содержащихся во всех моделях, на которые ссылается любая часть иерархии модели.

    • Follow Model blocks defined in current model: Сообщить о блоках в моделях, которые модели-ссылки выбранные в данный момент.

    • <Custom model reference depth>: Сообщите о блоках в моделях, на которые ссылается заданный вами уровень в иерархии модели.

  • Include all variants: Отчет по всем вариантным моделям. Чтобы включить эту опцию, установите опцию Model reference для отчета о блоках в ссылочных моделях.

  • Starting system(s): Задает систему, в которой будет запускаться цикл. Доступные опции зависят от значения, выбранного в Traverse model опции. Выбор любой опции кроме All systems in model для Traverse model активирует опцию Starting system(s).

    Если вы не вводите имя модели в опцию Model name, выберите Root model или Current чтобы указать, с чего начать цикл.

    Если вы задаете имя модели в опции Model name, то опция Starting system(s) предоставляет поле редактирования, в которое можно ввести:

    • Полный путь к подсистеме или подсистемам

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

    • $current чтобы запустить цикл в текущей выбранной системе

Опции раздела

  • Create section for each object in loop: Вставляет раздел в сгенерированный отчет для каждого объекта, найденного в цикле.

  • Display the object type in the section title: Автоматически вставляет тип объекта в заголовок раздела сгенерированного отчета.

  • Create link anchor for each object in loop: Создайте цель ссылки для каждой модели в цикле, чтобы другие части отчета могли связать с ней.

Примеры

Пример 1. Создание отчетов по заданным системам и их подсистемам

Этот пример показывает, как закольцовать указанную систему и ее подсистемы в модели выборки sldemo_auto_climate_elec, который включает программное обеспечение Simulink.

  1. (Необязательно) Чтобы открыть sldemo_auto_climate_elec модель, в командной строке MATLAB, введите следующую команду:

    sldemo_auto_climate_elec

    Исследуйте модель, чтобы ознакомиться с ее подсистемами.

  2. Откройте Report Explorer.

  3. Создайте файл настройки отчета, нажав File > New.

  4. Сохраните файл настройки отчета нажатием кнопки File > Save As. Дайте ему имя sldemo_auto_report.

  5. Добавление Chapter/Subsection компонент в файле настройки отчета для включения информации о подсистемах модели:

    1. На панели Library в середине дважды кликните Chapter/Subsection, чтобы добавить его в файл настройки отчета.

    2. Для Title выберите Custom. В поле заголовок введите Description of subsystems.

    3. Добавление Model Loop как ребенок Chapter/Subsection компонент. Это закольцовывается по ClimateControlSystem система и ее подсистемы в sldemo_auto_climate_elec модель:

      1. На панели Library в середине дважды кликните Model Loop, чтобы добавить его в файл настройки отчета. По умолчанию Report Explorer добавляет этот компонент в качестве дочернего элемента Chapter/Subsection компонент.

      2. На панели свойств Цикл из списка Model name выберите <Custom block diagram> .

      3. В Model name поле удалите текст <Custom block diagram>, а затем введите sldemo_auto_climate_elec.slx. Щелкните любой компонент в файле настройки отчета, чтобы добавить эту модель в список Models to include.

      4. В списке Traverse model выбора выберите Selected system(s) and children.

      5. В списке Look under masks выбора выберите All masks.

      6. В списке Model reference выбора выберите Do not follow Model blocks.

      7. В Starting system(s) поле введите sldemo_auto_climate_elec/ClimateControlSystem. Потому что вы выбрали Selected system(s) and children для Traverse model, Model Loop циклы по sldemo_auto_climate_elec/ClimateControlSystem и его подсистемы.

      8. В разделе Section Options установите флажок Create section for each object in loop. При выборе этой опции в сгенерированном отчете создаются отдельные разделы для каждой модели, по которой выполняется цикл компонента.

      Панель свойств Model Loop выглядит следующим образом.

  6. Сохранить отчет можно нажав кнопку File > Save.

  7. Добавление System Loop как ребенок Model Loop компонент.

    1. На панели Library в середине дважды кликните System Loop, чтобы добавить его в файл настройки отчета. По умолчанию Model Explorer добавляет этот компонент как дочерний элемент Model Loop компонент.

    2. На панели свойств System Loop в разделе Loop Options установите флажок Create section for each object in loop. Выбор этой опции создает раздел в сгенерированном отчете для каждой подсистемы, на которой строится цикл компонента. Примите значения по умолчанию для всех других полей.

  8. Добавление System Snapshot компонент как дочерний элемент System Loop компонент. Этот шаг создает моментальные снимки всех подсистем ClimateControlSystem в сгенерированном отчете. На панели «Библиотека» в середине дважды кликните System Snapshot. По умолчанию Model Explorer добавляет этот компонент как дочерний элемент System Loop компонент.

  9. Сохраните отчет.

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

  10. Запустите отчет, щелкнув File > Report.

    Отчет закольцовывается в системе ClimateControlSystem от sldemo_auto_climate_elec модель и все ее подсистемы, как показано в следующем списке сообщений.

Ниже приведена выдержка из сгенерированного отчета.

Пример 2. Временное опущение модели из цикла

В этом примере показано, как использовать Model Loop Active флажок, чтобы временно исключить модель из цикла. Этот пример использует файл настройки отчета, созданный в приведенном выше примере Генерации отчетов по заданным системам и их подсистемам sldemo_auto_report.rpt, и f14 модель, которая включена в Simulink

  1. В Report Explorer щелкните File > Open, а затем откройте sldemo_auto_report.rpt дважды кликнув по нему.

  2. На панели Контур слева нажмите Model Loop Section 1 - sldemo_auto_climate_elec.

  3. На панели свойств Model Loop нажмите кнопку, чтобы добавить модель в список Models to include.

  4. На панели свойств Model Loop из списка Model name выберите <Custom block diagram>.

  5. В Model name поле удалите текст <Custom block diagram> и вводите f14.slx.

  6. В списке Look under masks выбора выберите All masks.

    Теперь панель свойств Model Loop выглядит следующим образом.

  7. Сохраните файл настройки отчета.

  8. Сгенерируйте отчет.

    Процесс генерации отчетов закольцовывается по указанным системам в f14 и sldemo_auto_climate_elec модели, как показано в следующем окне сообщений.

    Ниже приведена выдержка из сгенерированного отчета.

  9. В списке Models to include нажмите f14 чтобы выбрать его.

  10. Снимите флажок Active, чтобы опустить f14 моделировать информацию из сгенерированного отчета.

  11. Перезапустите отчет.

    Теперь отчет включает информацию только о sldemo_auto_climate_elec модель, как показано в конце предыдущего примера, Генерация отчетов по заданным системам и их подсистемам.

  12. Чтобы повторно активировать f14 модель, в списке Model Loop Models to include, выберите f14 Модели а затем установите флажок Active.

Вставить что-нибудь в отчет?

Да, вставляет сечение, если вы выбираете Create section for each object in loop и цель ссылки, если вы выбираете Create link anchor for each object in loop.

Класс

rptgen_sl.csl_mdl_loop

См. также

Block Loop, System Loop

Для просмотра документации необходимо авторизоваться на сайте