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

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

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

user_Counter의 로컬 라벨들이다.

 

Counter의 로직이다.

bReset = true가 되면 cntCount = 0 이 된다.

input이 False면 return 시킨다.

bOnce = False면 bOnce = True로 바꿔주고 cntCount를 1증가 시킨다. bOnce의 조건을 준 이유는 한번만 증가 시키게 하기 위함이다.

결론 : input에 전기적 신호가 들어오면 카운터를 증가시키는 거다.

 

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

M0 가 켜지면 cntCount는 증가한다.

M1을 누르면 Reset 된다.

 

M0가 켜지면 cntCount가 1증가 했다.

M0를 4번 눌러서 cntCount가 4번 증가가 되었다.

M1을 누르면 bReset이 켜져서 cntCount가 0이 되었다. 잘된다.

+ Recent posts