Main Content

Stateflow 차트의 실행

Stateflow® 차트가 웨이크업 상태가 되면 차트는 워크플로를 따르고 동작을 실행합니다. Stateflow 차트는 다음의 경우 웨이크업 상태가 됩니다.

  • 각 시간 스텝에서

  • Stateflow 차트가 이벤트를 수신할 때

차트가 처음으로 웨이크업 상태가 되면 Workflow for Entering a Chart or State에 설명된 대로 차트가 초기화되고 활성화됩니다. 더 이상 수행할 동작이 없으면, 차트는 새로운 시간 스텝 또는 이벤트가 차트를 웨이크업할 때까지 슬립 상태가 됩니다.

Stateflow 차트 실행에 대한 워크플로

다음 플로우 차트는 차트 또는 상태 실행 시 Stateflow가 이벤트를 진행하는 과정을 보여줍니다. 이 플로우 차트에서 현재 상태는 결정 또는 진행이 발생하는 상태를 의미합니다.

Flow chart that shows the steps for executing a chart or state.

디폴트 천이

디폴트 천이는 소스가 없는 천이입니다. 상태를 포함하지 않은 Stateflow 차트에서 디폴트 천이는 플로우 차트의 시작을 표시합니다. 자세한 내용은 Stateflow에서 플로우 차트 만들기 항목을 참조하십시오.

Stateflow 차트에 상태가 포함되지 않은 경우 차트는 차트가 웨이크업 상태가 될 때마다 디폴트 천이 경로를 평가합니다. 차트는 평가할 디폴트 천이를 표시한 후 Workflow for Evaluating Transitions에 나와 있는 단계를 따릅니다.

참고

차트는 상태 진입 중에만 상태 내부의 디폴트 천이 경로를 평가합니다(차트가 웨이크업 상태가 될 때마다 평가하지 않음).

외부 천이

외부 천이는 소스 상태를 종료하고 빠져나가는 천이입니다. Stateflow 차트는 평가할 외부 천이를 상태 실행에서 첫 번째 단계로 표시합니다. 차트는 평가할 외부 천이를 표시한 후 Workflow for Evaluating Transitions에 나와 있는 단계를 따릅니다.

during 동작

during 동작은 접두사 during 또는 du를 사용하여 상태 레이블 동작에 정의된 동작입니다. 자세한 내용은 상태의 동작 정의하기 항목을 참조하십시오.

차트가 웨이크업 상태이고, 상태가 활성화되어 있고, 유효한 외부 천이가 없으면 상태는 during을 수행합니다.

내부 천이

내부 천이는 소스 상태에 남고 빠져나가지 않는 천이입니다. 자세한 내용은 Control Chart Execution by Using Inner Transitions 항목을 참조하십시오.

상태가 during 동작을 수행하고 나면 Stateflow 차트는 평가할 내부 천이를 표시합니다. 차트는 평가할 내부 천이를 표시한 후 Workflow for Evaluating Transitions에 나와 있는 단계를 따릅니다.

유효한 천이로 차트 실행

이 예제에서는 Stateflow 차트가 초기화되었으며 entry 동작이 StateAStateA1에 대해 수행되었습니다. 새로운 시간 스텝이 발생하고 차트는 웨이크업 상태가 됩니다.

이 시간 스텝에서 x = 5, y = 2, z = 0입니다.

Stateflow chart with top-level states called StateA and StateB. StateA has substates StateA1 and StateA2. StateB has substates StateB1 and StateB2.

차트는 다음 단계를 실행합니다.

  1. 차트에 활성 하위 상태 StateA가 있습니다.

  2. StateAStateB로의 외부 천이가 있습니다. 차트는 천이가 유효한지 확인합니다.

  3. 차트가 StateB를 entry로 표시합니다. StateA는 exit로 표시됩니다.

  4. StateA를 종료하고 빠져나가기 위해 차트는 상태에서 나가기(진출)에 대한 워크플로에 나와 있는 단계를 따릅니다.

  5. StateB에 진입하기 위해 차트는 Workflow for Entering a Chart or State에 나와 있는 단계를 따릅니다.

유효한 천이 없이 차트 실행

이 예제에서는 Stateflow 차트가 초기화되었으며 entry 동작이 StateAStateA1에 대해 수행되었습니다. 새로운 시간 스텝이 발생하고 차트는 웨이크업 상태가 됩니다.

이 시간 스텝에서 x = 3, y = 0, z = 0입니다.

Stateflow chart with top-level states called StateA and StateB. StateA has substates StateA1 and StateA2. StateB has substates StateB1 and StateB2.

차트는 다음 단계를 실행합니다.

  1. 차트에 활성 하위 상태 StateA가 있습니다.

  2. StateAStateB로의 외부 천이가 있습니다. 차트는 천이가 유효하지 않은지 확인합니다.

  3. 차트가 StateA에 대해 during 동작을 수행합니다. 이제 y = 1입니다.

  4. StateA에 내부 천이가 없습니다.

  5. StateA의 활성 하위 상태는 StateA1입니다.

  6. StateA1StateA2로의 외부 천이가 있습니다. 차트는 천이가 유효하지 않은지 확인합니다.

  7. 차트가 StateA1에 대해 during 동작을 수행합니다. 이제 x = 4입니다.

  8. StateA1에 활성 하위 상태가 없습니다.

  9. 차트가 슬립 상태로 전환됩니다.

관련 항목