Инициируйте блок Дискретной Схемы событий по прибытию сообщения

В этом примере показано, как инициировать Блок Дискретной Схемы событий по прибытию сообщения при генерации частей в средстве и выполнении гарантии качества. В примере сравнены поведения Дискретной Схемы событий и блоков Графика 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 ожидает следующего хита шага расчета, чтобы выполниться как первый блок в порядке.

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

Похожие темы