아래의 내용은 "GXworks2"로 작업하였습니다.

 

ST로 Timer의 기능을 만들어 보자.

그림1

user_Timer 펑션블록을 하나 만들었다. 

로컬 라벨은 input 2개 output 2개로 만들었다.

 

Timer의 로직이다.

그림 2

input = true가 되기 전까지는 return으로 끝내서 return 이하의 문으로 진행이 안된다. 

input = true면 cntTime 을 100ms로 더해준다. 

만약 cntTime(현재진행시간) >= inputTime(입력된 시간) 보다 크다면 result(결과를 ) true로 반환한다.

 

Function Block에서 Structure Ladder로 가져온 모습이다.

M0 , M1은 임의로 준 내부 메모리다.

inputTime은 초기 설정값 즉, 3초만 되면 result가 true로 반환하는거다.

 

M0를 켜기전 상태이다.

M0를 눌러서 진행되는 상태이다.

3초가 완료되면 M1이 켜지는 모습이다. 잘된다.

+ Recent posts