카테고리 없음

plc 제어 타이머 사용 예제

abc0123 2018. 6. 2. 10:18
반응형

plc 제어 타이머 사용 예제

 

이번 plc 제어 예제에서는 타이머를 이용해서 원하는 시간만큼 출력을 제어하는 방법을 정리해보려고 하는데요. 시스템의 동작 조건은 다음과 같습니다.

 

두 개의 램프를 켜는 예제이며... 시스템의 시작과 함께 이것들은 소등되어 있습니다. ON 버튼을 누르면 두 개의 램프 모두 켜지고요. OFF 버튼을 누르면 첫 번째 램프는 바로 꺼지지만 두 번째 램프는 3초 뒤에 꺼지도록 하는 동작 조건입니다.

 

그리고 지난 글에서 알아봤듯이 ;plc에서 하나의 출력을 제어 하는데는 반드시 하나 이상의 자기 유지 회로가 필요하기 때문에 두 개의 램프(출력)을 제어하기 위해서는 두 개의 자기 유지 회로가 필요합니다. 즉, 두 개의 자기 유지 회로와 한 개의 타이머가 필요한 상황이고요.

 

자기유지회로

 

두 개의 출력을 하나로 묶어서 제어를 할지 각각 따로 제어할지에 따라서 프로그램의 내용이 조금 달라질 거 같은데 각각의 상황에 맞게 두 개의 plc 제어 프로그램을 작성해보겠습니다. 먼저 각각 제어하는 상황을 만들어보기 위해서 두 개의 자기 유지 회로를 만들어봅니다.

 

 

1. 각각 제어

각각 제어

 

▲ ON 버튼인 X0를 누르니 M1과 M2의 메모리가 세팅해서 두 개의 출력(Y20, Y21)이 모두 켜져 있는 걸 확인할 수 있습니다.

 

이제 생각을 좀 해보죠. OFF 버튼을 배치해서 그 녀석을 누름과 동시에 Y20은 소등되고요. Y21은 3초 후에 소등되도록 하기 위해서는 어떻게 해야 할까요? 일단 Y20을 바로 끄기 위해서는 다음과 같이 M1을 잘라주면 되겠네요.

 

출력 제어

 

▲ M1을 자르기 위에서 앞쪽에 OFF 버튼을 배치했고요. 누름과 동시에 Y20이 소등됩니다. 그리고 이 순간부터 3초 후에 Y21을 소등하기 위해서는 M1이 리셋됨과 동시에 타이머가 작동이 돼야겠죠?

 

그리고 두 번째 램프가 소등되면 타이머도 초기화가 되도록 하기 위해서 다음과 같이 타이머 배치를 하면 될 거 같습니다.

 

타이머 작동

 

▲ 전체적인 프로그램의 흐름을 정리하자면 ON 입력인 X0가 눌리면 M1과 M2가 세팅되어 Y20과 Y21 램프가 모두 점등됩니다. 그리고 OFF 버튼 X1을 누르기 전까지는 계속 점등되어 있다가 이 녀석을 누름과 동시에 M1이 초기화되기 때문에 Y20은 바로 소등되고 그 순간 타이머가 작동하기 시작해서 3초 후에 M2가 리셋되어 Y21이 소등되고 M2가 리셋되기 때문에 타이머 역시 초기화됩니다.

 

프로그램의 흐름을 생각하면서 천천히 생각해보니 아주 간단한 내용이네요. 그리고 똑같은 내용을 다음과 같이 하나로 묶어서 plc 제어 프로그램을 작성할 수도 있겠네요.

 

 

2. 하나로 묶어서 제어

하나로 제어

 

▲ 현재 ON 버튼 X0를 누른 상태인데요. M1과 M2가 모두 셋팅되어 두 개의 램프 모두 점등이 된 상태입니다. 이제 OFF 버튼 X1을 누르면 어떻게 될까요?

 

프로그램 실행 순서

 

공부하면서 정리하고 있는 제 눈에는 이 plc 제어 프로그램 실행 순서가 보이지만.... 혹시 이 글을 보시는 다른 분들한테는 어떻게 보일지 모르겠네요.;;

 

여하튼 X1을 누르면 M1이 초기화되겠죠? 그리고 빨간 화살표가 가리키는 값들이 변화가 되면서 Y20은 바로 소등이 되고 타이머가 작동합니다. 그리고 3초 후에 타이머에 의해서 M2가 초기화되기 때문에 Y21 역시 소등이 되는 내용인데 조금만 생각해보면 이 방법이 좀 더 효율적인 거 같네요.

 

이렇게 해서 타이머를 활용해서 간한한 PLC 제어 프로그램을 작성해봤는데요. 동일한 조건이어도 프로그램을 작성하는 사람에 의해서 그 모양이 달라지는데.... 저도 좀 더 단순하면서 효율적인 코딩을 하기 위해서 더 많이 노력해야겠다는 생각을 해봅니다.

반응형