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