[PLC 실무 5편] PLC 비상정지(E-Stop), 제대로 알고 설계하고 있습니까?
실무 시리즈 5편에서는 안전 설계의 기본 중 기본이지만, 의외로 잘못 시공되거나 오해하고 있는 경우가 많은 **비상정지(Emergency Stop, E-Stop)**를 다뤄보려 합니다.
신입 시절 저도 "빨간 버튼 누르면 다 꺼지는 거 아냐?"라고 단순하게 생각했다가, 안전 심사에서 제대로 지적받은 기억이 있습니다. 비상정지는 단순히 전원을 끄는 스위치가 아니라, **규격에 따라 설계되어야 하는 안전 기능(Safety Function)**입니다.
1. 비상정지는 왜 PLC 로직으로 처리하면 안 되는가
현장에서 종종 이런 설계를 봅니다.
비상정지 버튼 → PLC 입력(P0) → PLC 프로그램에서 판단 → 출력 차단
결론부터 말씀드리면, 이 방식은 원칙적으로 틀렸습니다.
비상정지는 관련 국제 규격(ISO 13850, IEC 60204-1)에서 하드와이어드(Hard-wired) 방식으로 직접 전원 회로를 차단하도록 요구합니다. PLC는 스캔 타임이 존재하고, 프로그램 오류·통신 지연·CPU 다운 등의 리스크가 있기 때문에, PLC의 판단을 거쳐야만 정지되는 구조는 안전 기능으로 인정받기 어렵습니다.
실무 원칙
- 비상정지 신호는 안전 릴레이(Safety Relay) 또는 안전 PLC(Safety PLC)로 직접 배선하여 전동기/구동부 전원을 물리적으로 차단
- 일반 PLC는 어디까지나 "비상정지가 눌렸다"는 **상태를 모니터링(Monitoring)**하는 용도로만 입력을 받아 알람 표시, 로그 기록, HMI 화면 표시 등에 활용
- 즉, PLC 입력은 "결과 확인용"이지 "차단 실행용"이 아닙니다
2. Stop Category — 정지 카테고리부터 구분하자
IEC 60204-1에서는 정지를 크게 세 가지로 구분합니다.
Category 0 (즉시 전원 차단) 구동부 전원을 즉시, 무조건적으로 차단하는 방식입니다. 관성으로 인한 정지 거리가 발생할 수 있지만, 전기적으로는 가장 확실한 차단입니다. 대부분의 비상정지는 이 방식을 기본으로 합니다.
Category 1 (제어된 감속 후 차단) 서보/인버터 등으로 제어된 감속을 시킨 뒤 일정 시간 내 전원을 차단하는 방식입니다. 급정지 시 오히려 위험한 대형 설비(고속 회전체, 큰 관성체)에 적용됩니다.
Category 2 (제어된 정지, 전원 유지) 전원은 유지한 채 정지시키는 방식으로, 비상정지에는 일반적으로 사용하지 않습니다.
여기서 실무자가 반드시 확인해야 할 것은, 설비 특성상 어떤 Category가 적합한지 리스크 어세스먼트(Risk Assessment) 단계에서 결정되어야 한다는 점입니다. "일단 Category 0으로 걸어놓고 보자"는 식의 설계는 대형 관성체 설비에서는 오히려 2차 사고(급정지로 인한 기계적 파손, 적재물 낙하 등)를 유발할 수 있습니다.
3. 이중 채널(Dual Channel) 구성이 필요한 이유
비상정지 버튼 접점이 단일 채널(Single Channel)로만 구성되어 있다면, 접점 하나가 융착(고착)되었을 때 비상정지가 눌려도 정지가 되지 않는 치명적인 상황이 발생할 수 있습니다.
그래서 안전등급이 요구되는 설비(PL c 이상, SIL 1 이상)에서는 이중 채널 + 자기진단(Self-monitoring) 구성이 기본입니다.
- 비상정지 버튼 내부에 NC 접점 2조 사용
- 안전 릴레이가 두 채널의 상태를 비교하여 불일치(Discrepancy) 발생 시 자동으로 재기동 금지
- 채널 간 단선/단락도 감지 가능하도록 배선
단일 채널로 시공된 노후 설비를 이중화로 개선하는 것도 실무에서 자주 발생하는 리트로핏(Retrofit) 작업 중 하나입니다.
4. 자기 유지(Self-latching)와 수동 리셋(Manual Reset)
비상정지가 해제되었다고 해서 설비가 자동으로 재기동되면 절대 안 됩니다. 이건 정말 중요한 부분이라 다시 한번 강조합니다.
- 비상정지 버튼을 손으로 돌려 해제(Reset)하더라도, 설비는 자동으로 다시 돌아가서는 안 됨
- 별도의 수동 리셋 버튼을 눌러야만 안전 릴레이가 재기동 준비 상태(Ready)로 전환
- 그 이후 운전자가 별도의 기동(Start) 조작을 해야 실제 구동 시작
이 로직이 빠져 있으면, 비상정지를 풀자마자 컨베이어가 갑자기 움직이는 등의 사고로 이어질 수 있습니다. 안전 릴레이 모듈(예: PNOZ, PSR류 등)을 쓰면 이 리셋 로직이 하드웨어적으로 내장되어 있는 경우가 많으니, 카탈로그의 결선도를 꼭 확인하시기 바랍니다.
5. PLC 래더 프로그램 예제 (LS산전 XGK / XG5000 기준) — "PLC는 모니터링만" 원칙을 코드로 보기
앞서 강조드린 대로, 실제 전원 차단은 안전 릴레이가 하드웨어적으로 수행합니다. 그렇다면 PLC 프로그램에서는 무엇을 해야 할까요? ① 비상정지 상태를 감시해서 경보/HMI에 띄우고, ② 소프트웨어 레벨의 추가 인터록(Defense in Depth)으로 기동을 막고, ③ 수동 리셋 없이는 절대 재기동되지 않도록 래치를 걸어주는 역할입니다. XGK + XG5000 환경 기준으로 예시를 들어보겠습니다.
입력/출력 정의 (예시 — 실제 번지는 사용 중인 베이스/슬롯 구성에 맞춰 XG5000의 I/O 파라미터에서 확인해 주세요)
| P0000 | 안전릴레이 응답접점 K1 (a접점, 정상 시 ON) |
| P0001 | 안전릴레이 응답접점 K2 (a접점, 정상 시 ON, 이중화 비교용) |
| P0002 | 리셋(Reset) 버튼 |
| P0003 | 기동(Start) 버튼 |
| P0004 | 정지(Stop) 버튼 |
| M0000 | 비상정지 정상상태 플래그 (K1·K2 모두 ON일 때만 정상) |
| M0001 | 리셋 펄스 |
| M0002 | 운전준비(Ready) 상태 |
| P0020 | 비상정지 경보램프 |
| P0021 | 운전 출력 (실제 구동은 안전릴레이 주회로가 별도로 차단/허용) |
XG5000에서는 디바이스마다 **변수/디바이스 주석(Comment)**을 달 수 있으니, P0000은 "EMG_K1_ANS", M0002는 "READY" 식으로 심볼을 붙여두면 나중에 유지보수하는 사람이 훨씬 편합니다. 안전 관련 비트는 이렇게 이름부터 명확히 구분해두는 습관을 권합니다.
Rung 1 — 비상정지 상태 감시 (이중 채널 비교 포함)
P0000 P0001 M0000
--| |----| |------------------------------------( )--
(K1) (K2) 두 응답접점이 모두 ON일 때만
"비상정지 정상(미작동)"으로 판단
[명령어]
LD P0000
AND P0001
OUT M0000
두 채널 중 하나라도 OFF면(버튼이 눌렸거나, 배선 단선·접점 융착 의심) M0000이 즉시 OFF 됩니다. P0000 하나만 보고 판단하면 안 되는 이유는, 접점이 융착되면 실제로 눌려도 신호가 살아있는 것처럼 보일 수 있기 때문입니다. 두 채널을 AND로 비교하는 것 자체가 이중화 감시의 핵심입니다.
Rung 2 — 경보 출력
M0000 P0020
--|/|--------------------------------------------( )--
(비상정지 정상상태가 아니면 = 눌렸으면) 경보램프/부저
LDI M0000 ← b접점 로드 (M0000이 OFF일 때, 즉 비상정지 발생 시 ON)
OUT P0020
Rung 3 — 리셋 및 운전준비(Ready) 래치
P0002 M0001
--|↑|--------------------------------------------( )-- (PLS: 상승엣지 1스캔)
M0001 M0000 M0002
--| |------| |------------------------------------(S)-- 운전준비 SET
(리셋 펄스 + 비상정지 정상상태일 때만 준비상태로 전환)
M0000 M0002
--|/|---------------------------------------------(R)-- 비상정지 발생 시 즉시 RST
LD P0002
PLS M0001
LD M0001
AND M0000
SET M0002
LDI M0000
RST M0002
핵심은 M0002(운전준비)가 리셋 버튼을 누른다고 무조건 서는 게 아니라, 비상정지 상태가 정상(M0000 ON)일 때만, 그것도 상승엣지 한 번만 반영된다는 점입니다. 그리고 비상정지가 다시 발생하면 조건 없이 즉시 M0002를 RST 시켜, 어떤 경우에도 준비상태가 남아있지 않도록 합니다.
Rung 4 — 기동/정지 (자기유지 회로, 소프트웨어 인터록 포함)
P0003 M0002 P0021
--| |------| |--------------------------------------(S)-- 기동버튼으로 SET
(M0002=준비 상태일 때만 기동 허용)
P0004 P0021
--| |------------------------------------------------(R)-- 정지버튼으로 RST
M0000 P0021
--|/|-------------------------------------------------(R)-- 비상정지 시 소프트웨어 출력도 즉시 차단
LD P0003
AND M0002
SET P0021
LD P0004
RST P0021
LDI M0000
RST P0021
P0021(운전 출력)은 어디까지나 PLC 레벨의 "허가 신호"입니다. 실제 모터 주회로 전원은 안전 릴레이의 K1/K2 접점이 물리적으로 직렬 차단하고 있으므로, 설령 P0021 로직에 버그가 있어도 하드웨어 차단은 살아있는 다중 방어(Defense in Depth) 구조가 되는 것이죠. 이게 바로 "PLC는 모니터링, 실제 차단은 하드웨어"라는 원칙이 프로그램 레벨에서 구현되는 방식입니다.
XG5000 실무 팁
- M0000/M0002/P0021 같은 안전 관련 비트는 XG5000의 강제(Force) I/O 설정에서 강제 조작이 걸리지 않도록 주의하시고, 가능하면 강제 On/Off 이력이 남는 옵션을 켜두시길 권합니다. 디버깅 중 무심코 강제 ON 시켰다가 큰 사고로 이어진 사례를 실제로 봤습니다.
- XG5000의 PLC 시뮬레이터(모의 실행) 기능으로 위 4개 랑을 실제 배선 전에 미리 검증해보시는 것도 좋은 습관입니다. 특히 M0002 래치와 RST 우선순위(비상정지 신호가 항상 최우선으로 이겨야 함)는 시뮬레이터에서 강제로 P0000/P0001을 OFF 시켜보며 꼭 확인하시길 바랍니다.
- 위 예제는 이해를 돕기 위한 최소 구성입니다. 실제 라인에서는 다중 비상정지 버튼(직렬 연결), 도어 인터록, 라이트커튼 등 다른 안전입력과 함께 안전 릴레이 모듈(PNOZ, G9SA 등) 단에서 먼저 통합되고, PLC는 그 통합된 결과(응답접점)만 받는 구조가 일반적입니다.
6. 현장에서 자주 목격한 실수들
① 비상정지 버튼을 인버터 입력단에만 연결 인버터의 STO(Safe Torque Off) 기능을 활용하지 않고, 그냥 정회전/역회전 신호만 차단하는 식으로 배선한 경우. 관성 회전은 여전히 위험 요소로 남습니다.
② 여러 개의 비상정지 버튼을 직렬로만 연결하고 단선 감지 미적용 배선이 길어지는 대형 라인에서 케이블이 눌리거나 손상되어도 알아채지 못하는 사례. 반드시 단선까지 감지 가능한 회로 구성이 필요합니다.
③ 비상정지 후 PLC 프로그램에서 임의로 자동 리셋 로직을 넣은 경우 "현장에서 자꾸 불편하다고 해서" 자동 리셋 로직을 프로그램에 넣는 경우를 실제로 본 적 있습니다. 이는 명백한 규격 위반이며 절대 해서는 안 됩니다.
④ 비상정지 스위치 색상/설치 규정 미준수 빨간 버튼 + 노란 배경이 기본 원칙(ISO 13850)입니다. 의외로 이 기본조차 지켜지지 않은 노후 설비가 많습니다.
7. 실무 체크리스트
설계/점검 시 아래 항목을 순서대로 확인하시면 큰 도움이 됩니다.
- 비상정지가 하드와이어드로 전원을 직접 차단하는가 (PLC 판단 경유 여부 확인)
- Stop Category(0/1)가 설비 특성에 맞게 선정되었는가
- 이중 채널 구성 및 단선/융착 감지가 가능한가
- 리셋 후 자동 재기동이 되지 않고, 별도 기동 조작이 필요한가
- 비상정지 버튼 색상, 위치, 접근성이 규격에 맞는가
- PLC는 상태 모니터링 용도로만 신호를 받고 있는가
- 정기 점검(Fail-safe test) 주기가 문서화되어 있는가
마무리하며
비상정지는 "누르면 꺼지는 버튼" 그 이상입니다. 리스크 어세스먼트, Stop Category 선정, 이중화, 리셋 로직까지 전체 안전 체계의 시작점이라고 보시면 됩니다. 특히 PLC 엔지니어 입장에서는 "내 프로그램이 안전을 담당한다"는 착각을 버리고, PLC는 어디까지나 모니터링, 실제 차단은 하드웨어가 담당한다는 원칙을 꼭 기억하시길 바랍니다.
다음 6편에서는 안전 릴레이 모듈 선정 및 배선 실전 예제를 다뤄보겠습니다. 궁금한 점은 댓글로 남겨주세요.
