В этом примере показано, как инициировать Блок Дискретной Схемы событий по прибытию сообщения при генерации частей в средстве и выполнении гарантии качества. В примере сравнены поведения Дискретной Схемы событий и блоков Графика Stateflow®. Оба блока требуют лицензии Stateflow®. Пример показывает, что, блок Discrete-Event Chart выполняется по прибытию сообщения и не ожидает следующего хита шага расчета.
В этом примере часть сгенерирована в блоке Part Generation, и это отправляется в блок Quality Assurance для контроля качества Части. После оценки блок Quality Assurance выводит подтвержденную часть.
Модель далее изменяется, чтобы передать подтвержденную часть обратно в блок Part Generation, от которого это поставляется клиенту. Для обеих моделей в этом примере решатель установлен в Fixed-step
с размером шага 1
, и для всех блоков Графика Stateflow®, Enable Super Step Semantics
опция выбрана. Для получения дополнительной информации смотрите Супер Семантику Шага (Stateflow).
В PartQualityEvaluationModel
модель, Генерация Части моделируется блоком Discrete-Event Chart, и График Генерации Части моделируется блоком Chart Stateflow®. Оба блока содержат ту же логику изменения состояния включая два состояния, CreatePart
и WaitForQA
.
CreatePart
состояние представляет производство Part
в pi
секунды.
WaitForQA
состояние представляет ожидание отдела контроля качества по Part
валидация.
Точно так же Гарантия качества моделируется блоком Discrete-Event Chart, и График Гарантии качества моделируется при помощи блока Chart Stateflow®. Оба блока содержат ту же логику изменения состояния включая три состояния, WaitForPart
, Evaluating
, и Finished
.
WaitForPart
состояние представляет ожидание сгенерированной Части.
Когда Часть прибывает, переходы блока к Evaluating
состояние, чтобы представлять запуск процесса оценки.
После 1
во-вторых, оценка завершена и переходы блока к Finished
состояние.
Часть отбывает из блока и переходов блока назад к WaitForPart
состояние.
Симулируйте модель. Наблюдайте блок Scope, соединенный с блоком Quality Assurance. Блок выводит Часть после 4.14
секунды, который является суммой 3.14
секунды требуются для генерации Части и 1
s для его контроля качества.
Наблюдайте блок Scope, который соединяется с блоком Quality Assurance Chart. Блок выводит Часть после 5
секунды, который является суммой 4
секунды для генерации Части и 1
второй для его контроля качества в результате фиксированного размера шага 1
. Это различие основано на точном свойстве синхронизации Дискретной Схемы событий. Для получения дополнительной информации см. Дискретную Схему событий Точная Синхронизация.
Откройте PartQualityControlShip, который является модифицированным модель, которая передает обработанную Часть обратно в блок Part Generation для отгрузки. В PartQualityControlShip
модель, модифицированные блоки Графика Генерации Генерации и Части Части содержат тот же набор дополнительных состояний и переходов.
В блоках графика генерации генерации и части части:
Review
состояние представляет анализ отчета контроля качества для ProcessedPart
. Когда ProcessedPart
возвращается, переходы блока к Review
состояние.
Когда анализ завершен после sqrt(2)
секунды, переходы блока к Ship
состояние.
Когда обработанная Часть поставляется клиенту, переходы блока назад к CreatePart
состояние, чтобы сгенерировать новую часть.
Симулируйте модифицированную модель. Заметьте, что обработанная Часть отбывает из блока Part Generation после 5.55
секунды, который является суммой 4.14
требуемый для генерации части и контроля качества и 1.41 для анализа перед отгрузкой.
Заметьте, что обработанная Часть отбывает из Графика Генерации Части после 8
секунды, который является суммой 5
требуемый для генерации части и контроля качества, 2 для анализа перед отгрузкой и 1
для статического планирования блока.
Наблюдайте блок Sequence Viewer. Каждый раз строка сетки, ограниченная двумя синими линиями, содержит события, которые происходят в том же времени симуляции. Окно Sequence Viewer показывает события вертикально, упорядоченный вовремя, и использует комбинацию линейных и нелинейных отображений. Для получения дополнительной информации смотрите Использование Блок Sequence Viewer, чтобы Визуализировать сообщения, События и Сущности.
ProcessedPart
отправляется от блока Quality Assurance до Генерации Части в 4.1
и прибытие Части сразу инициировало блок Discrete-Event Chart. Во время 5
, ProcessedPart
отправляется от Графика Гарантии качества до Графика Генерации Части. Однако График Генерации Части ожидает следующего шага расчета, нападает на 6
после прибытия сообщения, чтобы выполниться.
В порядке График Генерации Части выполняется сначала, и График Гарантии качества выполняется второй в одном хите шага расчета. Это - причина, почему блок Part Generation Chart ожидает следующего хита шага расчета, чтобы выполниться как первый блок в порядке.