Запланируйте разделы

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

Запланируйте модель экспорта функций Используя редактор расписания

В этом примере показано, как просмотреть и отредактировать порядок выполнения вызовов функции в модели экспорта функций использование Редактора Расписания. Как во всех моделях экспорта функций, желаемая функциональность моделируется как подсистемы вызова функций. Эти подсистемы вызова функций задают разделы, которые планируются Редактором Расписания.

С Редактором Расписания можно легко просмотреть и отредактировать расписание вызовов функции. Поведение системы зависит от порядка выполнения этих разделов. В этом примере мы изменяем порядок выполнения и наблюдаем его эффекты на поведении системы путем симуляции модели. Чтобы видеть удар редактирования расписания на симуляции, мы сравниваем симуляции модели до и после планирования.

Создайте разделы из модели экспорта функций, на которую ссылаются,

Чтобы просмотреть и отредактировать расписание модели экспорта функций, сошлитесь на модель.

open_system('ThrottlePositionControlTop.slx');

ThrottlePositionControl модель экспорта функций, на которую ссылаются. По умолчанию каждая функция имеет входной порт, который может использоваться, чтобы инициировать эти функции. Редактор Расписания автоматически обрабатывает эти порты. Чтобы использовать Редактор Расписания, установите Уровни Расписания параметром Планировать Редактор.

set_param('ThrottlePositionControlTop/ThrottleControl','ScheduleRatesWith','Schedule Editor');

Установите базовую линию симуляции

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

sim('ThrottlePositionControlTop');

Откройте редактор расписания

Чтобы открыть Редактор Расписания, нажмите Schedule Editor в разделе Design вкладки Modeling. В Редакторе Расписания различные компоненты модели представлены как разделы. Обновите схему, чтобы видеть разделы. Разделы являются точками входа в модели. Редактор Расписания показывает порядок выполнения и передачу данных этих разделов. Стрелы являются связями данных между разделами, которые показывают поток данных. Пунктирные линии указывают, что существует задержка, потому что источник выполняется после места назначения. Сплошные линии указывают, что нет никакой задержки, когда источник запускается перед местом назначения.

Отредактируйте расписание раздела

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

Перетащите ThrottleComposition.ActuatorRun5ms после ThrottleComposition.ControllerRun5ms в порядке выполнения. Заметьте что задержка между ThrottleComposition.ControllerRun5ms и ThrottleComposition.ActuatorRun5ms разделы превращаются в зависимость. Заметьте, что теперь нет никакой задержки между выполнением ThrottleComposition.ControllerRun5ms и ThrottleComposition.ActuatorRun5ms.

Запланируйте выполнение апериодических разделов

Модель экспорта функций содержит неограниченный раздел, AccelerationPedalPositionSensor. Предположим, что вы хотите запланировать неограниченный раздел, чтобы симулировать, как будто это было дискретно. Запланируйте AccelerationPedalPositionSensor раздел, чтобы запуститься в [0:0.02:100], чтобы наблюдать его поведение в различных экземплярах времени. Кликните по неограниченному разделу и войдите [(1:5000) *.02] в течение Времен Хита в Property Inspector.

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

Теперь симулируйте модель с измененным расписанием.

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

Copyright 2018-2019 The MathWorks, Inc.

Запланируйте Основанную на уровне Модель Используя редактор Расписания

В этом примере показано, как разделить основанную на уровне модель с помощью Редактора Расписания. Разделы являются компонентами модели, которая может выполниться независимо. В этом примере мы преобразуем подсистемы в разделы и просматриваем и редактируем их расписание.

С Редактором Расписания можно легко просмотреть и отредактировать расписание разделов. Поведение системы зависит от порядка выполнения этих разделов. В этом примере мы наблюдаем эффекты планирования этой модели на симуляции. Чтобы видеть удар разделения и планирования модели, мы сравниваем симуляции модели до и после создания разделов и планирования их.

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

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

open_system('ScheduleEditorWithSubsystemPartitions');
sim('ScheduleEditorWithSubsystemPartitions');

Откройте редактор расписания и создайте разделы

Чтобы открыть Редактор Расписания, нажмите Schedule Editor в разделе Design вкладки Modeling. Использование Управляет Разделами, чтобы создать разделы из подсистем в вашей модели. Выберите все подсистемы в ThrottlePositionControl, и кликните по Создать значку Разделов на верхней части Управлять панели Разделов. Задайте имена для разделов и их шага расчета. Обновите схему, чтобы видеть разделы в Редакторе Расписания.

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

Отредактируйте расписание раздела

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

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

Теперь симулируйте модель с измененным расписанием.

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

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

Похожие темы