PLC Interlock Logic이란?|안전한 동작순서를 만드는 원리
PLC Interlock Logic은 정해진 조건이 충족되지 않으면 장치가 동작하지 못하도록 제한하는 제어 로직입니다. 인터록의 기본 원리부터 Permissive, Alarm과의 차이, 모터·실린더·자동운전 적용방법과 설계 시 주의사항까지 알아봅니다.
자동화 설비에서는 작업자가 Start 버튼을 눌렀다고 해서 모든 장치가 즉시 동작하도록 프로그램을 작성하지 않습니다.
모터를 운전하기 전에 안전도어 상태나 다른 장치의 운전조건을 확인해야 할 수 있고, 실린더를 전진시키기 전에 상대편 실린더가 원위치에 있는지 확인해야 할 수도 있습니다.
이처럼 특정 조건이 만족되었을 때만 장치가 동작하도록 제한하는 제어 로직을 Interlock Logic이라고 합니다.
Interlock을 제대로 구성하면 장치끼리 충돌하거나 잘못된 순서로 동작하는 것을 방지하고, 설비가 정해진 조건과 순서에 따라 운전되도록 만들 수 있습니다.
PLC Interlock Logic이란 무엇일까?
PLC Interlock Logic은 설비나 장치가 동작하기 전에 필요한 조건을 확인하고, 조건이 만족되지 않으면 해당 동작을 제한하는 프로그램 로직입니다.
예를 들어 컨베이어 모터를 운전하기 위해 다음과 같은 조건이 필요하다고 가정해 보겠습니다.
운전 준비 완료 + 모터 Fault 없음 + 관련 장치 정상 + Start 명령 → 모터 운전
여기에서 Start 명령을 제외한 여러 운전 허용조건을 Interlock 조건으로 구성할 수 있습니다.
작업자가 Start 버튼을 눌러도 필요한 조건이 하나라도 충족되지 않았다면 PLC는 모터 운전 출력을 발생시키지 않습니다.
따라서 Interlock의 핵심은 단순히 장치를 정지시키는 것이 아니라 동작해도 되는 조건을 프로그램에서 명확하게 정의하는 것입니다.
Interlock은 왜 필요할까?
자동화 설비에는 여러 장치가 서로 연계되어 움직이는 경우가 많습니다.
실린더와 로봇이 같은 작업영역을 사용하거나 여러 컨베이어가 제품을 순서대로 전달할 수도 있습니다.
이때 각 장치를 독립적으로 동작시키면 기계적인 충돌이나 공정 오류가 발생할 수 있습니다.
예를 들어 A 실린더와 B 실린더가 서로 충돌할 수 있는 구조라고 가정해 보겠습니다.
A 실린더가 전진하기 위해서는 B 실린더가 후진 완료 상태여야 한다는 조건을 만들 수 있습니다.
B 실린더 후진 완료 → A 실린더 전진 허용
반대로 B 실린더를 전진시키려면 A 실린더의 위치를 확인하도록 구성할 수 있습니다.
이러한 조건이 바로 장치 사이의 Interlock입니다.
즉 Interlock은 PLC 프로그램에서 하면 안 되는 동작을 막고, 필요한 조건이 충족되었을 때만 다음 동작을 허용하는 역할을 합니다.
Interlock과 Permissive는 어떻게 다를까?
자동화 현장에서는 Interlock과 함께 Permissive라는 용어도 사용합니다.
두 용어의 사용방법은 회사나 프로젝트에 따라 조금씩 다를 수 있지만 개념적으로 구분하면 이해하기 쉽습니다.
Permissive는 특정 장치가 동작하기 위해 필요한 운전 허용조건을 의미하는 경우가 많습니다.
예를 들어 펌프를 운전하기 위해 탱크 수위가 정상이고 밸브가 열려 있어야 한다면 다음과 같이 구성할 수 있습니다.
수위 정상 + 밸브 Open 확인 = Pump Run Permissive
이 Permissive가 성립해야 Start 명령을 받아들일 수 있도록 프로그램을 작성합니다.
Interlock은 운전 중 또는 운전 전에 특정 조건 때문에 장치의 동작을 제한하거나 차단하는 의미로 사용되는 경우가 많습니다.
하지만 실제 PLC 프로젝트에서는 두 용어가 명확하게 구분되지 않고 비슷한 의미로 사용되기도 합니다.
따라서 용어 자체보다 어떤 조건에서 운전을 허용하고 어떤 조건에서 운전을 차단하는지를 명확하게 정의하는 것이 중요합니다.
모터 Interlock은 어떻게 구성할까?
모터는 Interlock Logic을 이해하기 좋은 대표적인 장치입니다.
컨베이어 모터가 다음 조건에서만 운전되어야 한다고 가정해 보겠습니다.
- Motor Overload 정상
- Inverter Fault 없음
- 후단 컨베이어 운전 가능
- 자동운전 조건 정상
- 정지 명령 없음
이러한 조건을 모두 만족했을 때 Motor Run Permissive를 만들 수 있습니다.
개념적으로 표현하면 다음과 같습니다.
Overload 정상 AND Inverter 정상 AND 후단설비 정상 AND 운전허용 → Motor Run 가능
작업자가 Start 버튼을 눌러도 Run Permissive가 성립하지 않으면 모터는 동작하지 않습니다.
이 방식의 장점은 운전 명령과 운전 가능조건을 분리해서 관리할 수 있다는 것입니다.
프로그램을 점검할 때도 Start가 들어왔는데 왜 모터가 움직이지 않는가?를 확인하기보다 어떤 Permissive 조건이 성립하지 않았는지를 확인하면 원인을 찾기 쉬워집니다.
실린더에서는 Interlock을 어떻게 사용할까?
공압 실린더에서도 Interlock은 매우 중요합니다.
예를 들어 A 실린더가 전진하기 위해 다음 조건이 필요하다고 가정해 보겠습니다.
B 실린더 후진 완료
제품 감지 정상
공압 정상
자동운전 상태
이 조건이 모두 만족되었을 때만 A 실린더 전진 Solenoid를 ON하도록 프로그램을 구성할 수 있습니다.
특히 두 개 이상의 실린더가 동일한 공간에서 움직이는 설비에서는 상대 장치의 위치를 확인하지 않고 동작시키면 기계적인 충돌이 발생할 수 있습니다.
따라서 단순히 출력끼리 서로 동시에 ON되지 않도록 만드는 것뿐 아니라 실제 센서에서 장치의 위치가 확인되었는지까지 검토하는 것이 중요합니다.
예를 들어 A 전진 출력이 OFF니까 B를 움직여도 된다고 판단하는 것보다 실제 A 실린더의 후진 완료 센서를 확인하는 방식이 더 적절할 수 있습니다.
출력 상태와 실제 기계 위치는 항상 동일하다고 보장할 수 없기 때문입니다.
Interlock과 Sequence Logic은 어떤 관계가 있을까?
Sequence Logic은 설비가 정해진 순서에 따라 동작하도록 만드는 프로그램입니다.
예를 들어 다음과 같은 공정이 있다고 가정해 보겠습니다.
제품 감지 → Clamp 동작 → 실린더 전진 → 가공 → 실린더 후진 → Clamp 해제
이러한 순서를 Step 방식으로 프로그램할 수 있습니다.
하지만 Sequence가 다음 단계로 이동한다고 해서 장치를 무조건 동작시키는 것은 적절하지 않을 수 있습니다.
각 단계에서는 실제 장치가 동작할 수 있는 상태인지 Interlock을 함께 확인해야 합니다.
예를 들어 실린더 전진 단계가 되었더라도 Clamp 완료 센서가 확인되지 않았다면 전진을 허용하지 않는 방식입니다.
따라서 Sequence Logic이 무엇을 어떤 순서로 실행할 것인지 결정하는 구조라면 Interlock Logic은 현재 그 동작을 실행해도 되는지 확인하는 구조라고 볼 수 있습니다.
두 기능을 적절하게 분리하면 복잡한 자동화 프로그램을 관리하기 쉬워집니다.
Interlock과 Alarm Logic은 무엇이 다를까?
Interlock과 Alarm도 함께 사용되는 경우가 많지만 목적은 다릅니다.
Interlock은 특정 조건에서 장치의 동작을 제한합니다.
Alarm은 설비에서 발생한 이상상태를 작업자에게 알려주는 역할을 합니다.
예를 들어 공압이 부족하면 실린더 동작을 제한할 수 있습니다.
공압 부족 → 실린더 동작 Interlock
동시에 작업자에게 원인을 알려줄 수 있습니다.
공압 부족 → Low Air Pressure Alarm
이렇게 하면 설비는 잘못된 조건에서 움직이지 않고 작업자는 HMI를 통해 왜 장치가 동작하지 않는지 확인할 수 있습니다.
Interlock만 만들고 작업자에게 아무런 정보를 제공하지 않으면 현장에서는 Start를 눌렀는데 왜 움직이지 않는지 알기 어려울 수 있습니다.
따라서 중요한 Interlock 조건은 HMI 상태표시나 Alarm Logic과 연결해 원인을 확인할 수 있도록 구성하는 것이 좋습니다.
Interlock이 해제되면 자동으로 재동작해도 될까?
Interlock Logic을 설계할 때 특히 주의해야 하는 부분입니다.
예를 들어 모터가 운전 중일 때 Interlock 조건이 해제되어 모터가 정지했다고 가정해 보겠습니다.
잠시 후 조건이 다시 정상으로 돌아왔다고 모터가 즉시 자동 재기동하도록 프로그램이 구성되어 있다면 작업자가 예상하지 못한 순간에 설비가 움직일 수 있습니다.
따라서 Interlock 해제 이후의 동작을 명확하게 정의해야 합니다.
설비 특성에 따라 조건이 복구되면 자동으로 다시 운전해도 되는 장치가 있을 수 있고 작업자가 Reset 또는 Start 명령을 다시 입력해야 운전하도록 구성해야 하는 장치도 있습니다.
특히 정전 복구, Fault Reset, Interlock 복구 후 자동 재기동 여부는 설비 위험성 평가와 운전 요구사항을 고려해 결정해야 합니다.
Software Interlock과 Safety Interlock은 같은 것일까?
여기서 매우 중요한 구분이 필요합니다.
일반 PLC 프로그램에서 작성하는 Software Interlock과 사람의 안전을 목적으로 하는 Safety 기능을 동일하게 생각해서는 안 됩니다.
일반 PLC의 Interlock Logic은 장치의 정상적인 운전순서를 만들고 기계적인 충돌이나 공정 오류를 줄이는 데 사용할 수 있습니다.
하지만 비상정지, 안전도어, 라이트커튼처럼 사람의 안전과 직접적으로 관련된 기능은 요구되는 안전 수준에 따라 Safety Relay, Safety PLC, 안전용 입출력 등의 구조가 필요할 수 있습니다.
예를 들어 일반 PLC 프로그램에 다음과 같은 조건을 추가했다고 가정해 보겠습니다.
안전도어 닫힘 → 모터 운전 허용
이 프로그램만으로 필요한 안전 기능이 모두 확보되었다고 판단해서는 안 됩니다.
사람의 안전과 관련된 회로는 관련 안전규격과 위험성 평가에 따라 적절한 안전시스템을 설계해야 합니다.
따라서 일반적인 PLC Interlock은 공정 및 장치 제어용 Interlock과 기능 안전을 위한 Safety Interlock을 구분해서 이해하는 것이 중요합니다.
Interlock Logic은 어떻게 관리하면 좋을까?
설비가 복잡해질수록 Interlock 조건도 많아집니다.
하나의 모터를 운전하기 위해 10개 이상의 조건을 확인해야 할 수도 있습니다.
이 조건들을 Motor Run 출력 앞에 모두 나열하면 처음에는 이해하기 쉬워도 프로그램 규모가 커지면서 유지보수가 어려워질 수 있습니다.
따라서 여러 조건을 하나의 Permissive 또는 Ready 신호로 정리하는 방법을 사용할 수 있습니다.
예를 들어 다음과 같습니다.
Motor Ready = Overload 정상 + Inverter 정상 + 후단설비 정상 + 공압 정상
그리고 최종 운전조건에서는 다음처럼 사용할 수 있습니다.
Start 명령 + Motor Ready → Motor Run
이렇게 구성하면 프로그램을 읽을 때 전체 구조를 파악하기 쉬워집니다.
또한 HMI에서 각각의 Interlock 조건을 표시하면 어떤 조건 때문에 Ready가 성립하지 않는지도 확인할 수 있습니다.
Interlock Bypass를 사용할 때 주의할 점
설비 시운전이나 유지보수 과정에서는 특정 Interlock을 임시로 무시해야 하는 상황이 생길 수 있습니다.
이때 Bypass 기능을 만드는 경우가 있습니다.
하지만 Interlock Bypass는 잘못 사용하면 설비의 보호조건을 무력화할 수 있으므로 신중하게 관리해야 합니다.
필요하다면 관리자 권한에서만 사용할 수 있도록 하고 Bypass가 활성화된 상태를 HMI에 명확하게 표시하는 방법을 고려할 수 있습니다.
또한 자동운전에서는 사용할 수 없도록 제한하거나 일정 조건에서 자동으로 해제하도록 설계할 수도 있습니다.
특히 사람의 안전과 관련된 Safety 기능을 일반 PLC 프로그램의 Bypass Bit 하나로 임의 해제하는 방식은 적절하지 않습니다.
Interlock Logic을 작성할 때 주의할 점
Interlock을 너무 많이 추가하면 설비가 안전해질 것처럼 보이지만 불필요한 조건이 많아지면 오히려 유지보수가 어려워질 수 있습니다.
따라서 각 조건에는 명확한 목적이 있어야 합니다.
왜 이 조건이 필요한가?
조건이 해제되면 어떤 장치를 정지해야 하는가?
조건이 다시 정상으로 돌아오면 자동 복귀할 것인가?
작업자에게 어떤 메시지를 보여줄 것인가?
이러한 내용을 설계 단계에서 결정하는 것이 좋습니다.
또한 출력 상태만으로 다른 장치의 실제 위치를 판단하지 않는 것이 중요합니다.
가능하다면 Limit Sensor, Proximity Sensor, Pressure Switch 등 실제 상태를 확인할 수 있는 Feedback 신호를 이용해 Interlock을 구성하는 것이 좋습니다.
PLC Interlock Logic 핵심 정리
PLC Interlock Logic은 설비가 정해진 조건을 만족했을 때만 특정 장치의 동작을 허용하도록 만드는 제어 로직입니다.
모터나 실린더, 컨베이어, Servo 등 여러 장치가 서로 연계되는 자동화 설비에서는 잘못된 동작순서와 기계적인 충돌을 줄이기 위해 Interlock을 활용할 수 있습니다.
Interlock을 설계할 때는 단순히 동작을 막는 것에서 끝나는 것이 아니라 운전 허용조건, 실제 Feedback, Alarm 표시, Reset 조건, Interlock 복구 후 재기동 방식까지 함께 고려해야 합니다.
또한 일반 PLC 프로그램에서 작성하는 공정용 Interlock과 사람의 안전을 위한 Safety 기능은 구분해야 합니다.
결국 잘 설계된 Interlock Logic은 장치를 무조건 움직이지 못하게 만드는 프로그램이 아니라 필요한 조건이 확인되었을 때 올바른 순서로 움직이도록 만드는 프로그램이라고 할 수 있습니다.




댓글 0
첫 댓글을 남겨보세요.