Main Content

before

이벤트 브로드캐스트 또는 지정된 시간 전에 차트 실행

설명

예제

before(n,E)는 관련 상태가 활성화된 이후 이벤트 En회 미만 발생한 경우 true를 반환합니다. 그 외에는 연산자가 false를 반환합니다.

예제

before(n,tick)은 관련 상태가 활성화된 이후 차트가 n회 미만 웨이크업 상태가 된 경우 true를 반환합니다. 그 외에는 연산자가 false를 반환합니다.

Simulink® 모델의 Stateflow® 차트에 입력 이벤트가 있는 경우 묵시적 이벤트 tick은 지원되지 않습니다.

예제

before(n,time_unit)은 관련 상태가 활성화된 이후 n 단위의 시간보다 적게 경과한 경우 true를 반환합니다. 그 외에는 연산자가 false를 반환합니다.

time_unit을 초(sec), 밀리초(msec) 또는 마이크로초(usec)로 지정합니다. n을 표현식으로 지정하면 시뮬레이션 중에 표현식의 값이 변경됨에 따라 차트가 시간 지연을 조정합니다.

참고

시간 논리 연산자 before는 Simulink 모델의 Stateflow 차트에서만 지원됩니다.

예제

모두 확장

상태가 활성화된 후 차트가 이벤트 E의 첫 번째 브로드캐스트와 두 번째 브로드캐스트를 처리할 때 상태 메시지를 표시합니다.

on before(3,E): disp("ON");

Stateflow chart that uses the before operator in a state.

이벤트 E에 대해 5회 미만의 브로드캐스트 동안 상태가 활성화되어 있었던 경우에 한하여, 차트가 이벤트 E의 브로드캐스트를 처리할 때 관련 상태에서 천이됩니다.

before(5,E)

Stateflow chart that uses the before operator in a transition.

이벤트 E에 대해 5회 미만의 브로드캐스트 동안 상태가 활성화되어 있었던 경우 관련 상태에서 천이됩니다.

[before(5,E)]

Stateflow chart that uses the before operator in a transition.

변수 temp가 98.6보다 크고 상태가 활성화된 이후 차트가 7회 미만 웨이크업 상태가 된 경우에 한하여, 차트가 웨이크업 상태일 때 관련 상태에서 천이됩니다.

before(7,tick)[temp > 98.6]

Stateflow chart that uses the before operator in a transition.

12.3초 미만 동안 관련 상태가 활성화되어 있었던 경우에 한하여, 차트가 웨이크업 상태가 될 때마다 temp 변수를 MED로 설정합니다.

on before(12.3,sec): temp = MED;

Stateflow chart that uses the before operator in a state.

  • 따옴표를 사용하여 키워드 'tick', 'sec', 'msec', 'usec'를 묶을 수 있습니다. 예를 들어 before(5,'tick')before(5,tick)과 동일합니다.

  • Stateflow 차트는 관련 상태가 다시 활성화될 때마다 before 연산자가 사용하는 카운터를 재설정합니다.

버전 내역

R2014b에 개발됨