본문으로 건너뛰기
고급약 35분

공장 소프트웨어 지도 — MES·PLC·SCADA·ERP 가 맞물리는 구조

공장 소프트웨어는 센서와 PLC 가 있는 현장부터 ERP 가 있는 경영까지 계층으로 쌓이고, 계층마다 요구하는 응답 시간이 수십 밀리초에서 하루까지 다르다. ISA-95 가 말하는 계층 구분, MES 가 실제로 담당하는 일(작업 지시·실적 수집·추적성·품질·설비), 그리고 QA 가 어느 경계에 서야 결함을 잡는지를 예제 공장 하나로 정리한다.

  • #스마트팩토리
  • #MES
  • #PLC
  • #SCADA
  • #ERP
  • #ISA-95
  • #제조QA

개념

공장 소프트웨어는 한 덩어리가 아니다

웹 서비스를 테스트하던 사람이 제조 현장에 처음 들어가면 "MES 를 테스트해 달라"는 말을 듣는다. 그런데 막상 화면을 열면 작업 지시 목록과 실적 조회 그리드가 나오고, 버튼을 눌러도 아무 일이 일어나지 않는 것처럼 보인다. 실제로 일이 일어나는 곳은 화면이 아니라 라인 위 설비 다. 그 사이에 최소 세 겹의 소프트웨어가 더 있다.

제조 소프트웨어의 결함은 그래서 책임 소재가 모호하다. "실적이 2대 적게 올라왔다"는 현상 하나를 두고 설비 담당은 PLC 가 신호를 보냈다고 하고, 제어 담당은 SCADA 로그에 찍혔다고 하고, MES 담당은 수신 큐에 안 들어왔다고 한다. 어느 계층에서 끊겼는지를 말할 수 있는 사람이 없으면 결함은 "간헐적 현상"으로 분류돼 몇 달을 떠돈다.

이 레슨의 목표는 그 지도를 손에 쥐는 것이다. 계층을 구분할 수 있으면 질문이 달라진다. "실적이 왜 틀리죠"가 아니라 "PLC 의 생산 카운터 값과 MES 수신 레코드 수가 어느 시점부터 벌어집니까" 로 좁혀 묻게 된다.

계층 모델 — 현장에서 경영까지

제조 IT 는 전통적으로 계층(level) 으로 나눠 이야기한다. 이 계층 구분의 뿌리는 퍼듀 참조 모델(Purdue Reference Model for CIM) 이고, 기업 시스템과 제어 시스템의 연결을 다루는 ISA-95 가 그 모델 위에서 인터페이스를 규정한다. ISA 의 공식 표준 위원회 소개는 ISA-95 의 목적을 퍼듀 참조 모델의 레벨 3 과 레벨 4 사이 인터페이스 를 다루는 것으로 적고 있고, 국제 표준으로는 IEC 62264 계열과 정렬돼 있다고 안내한다. 계층 번호를 0 부터 4 까지 매기는 관행 자체는 널리 쓰이지만, 각 번호의 정확한 정의 문장과 파트별 범위는 표준 원문에서 확인해야 한다 (ISA-95 / IEC 62264 각 파트의 조항과 레벨 정의 — 원문 확인).

실무에서 통용되는 모습으로 정리하면 이렇다.

계층구성하는 일QA 가 보는 산출물
현장센서·액추에이터·모터·실린더물리적으로 움직이고 측정한다없음(물리 현상)
제어PLC·안전 PLC·로봇 컨트롤러·모션 제어기정해진 순서로 설비를 돌리고 인터락을 지킨다래더/ST 프로그램, 태그 값
감시SCADA·HMI라인 상태를 사람에게 보여주고 수동 조작을 받는다화면, 알람 이력, 트렌드
운영MES·MOM·WMS·LIMS무엇을 몇 개 만들라고 지시하고, 만든 결과를 기록한다작업 지시, 실적, 추적성
경영ERP·PLM·SCM수주·자재·원가·납기를 계획한다전표, 재고, 원가

여기서 중요한 것은 위로 갈수록 추상화되고 아래로 갈수록 물리에 가까워진다 는 점이다. ERP 는 "9월에 EWP 를 4만 대 만든다"고 말하고, MES 는 "오늘 2교대에 작업 지시 WO-0912 로 1,200대"로 바꾸고, PLC 는 "실린더를 전진시키고 압입 하중이 8.0 ~ 9.2 kN 범위인지 확인한다"로 바꾼다. 같은 "생산"이라는 단어가 계층마다 다른 단위를 가진다.

각 계층의 응답 시간 요구가 다르다

이것이 제조 QA 에서 가장 자주 놓치는 지점이다. 계층마다 허용되는 지연이 자릿수로 다르다.

  • 제어 계층 — PLC 의 스캔 주기는 보통 수 밀리초에서 수십 밀리초다. 안전 인터락은 더 빠듯하다. 여기서 10밀리초가 밀리면 제품이 깨지거나 설비가 충돌한다.
  • 감시 계층 — SCADA 화면 갱신은 수백 밀리초에서 1~2초면 충분하다. 사람이 보는 속도이기 때문이다. 다만 알람은 다르다 — 알람이 5초 늦으면 작업자가 늦게 달려간다.
  • 운영 계층 — MES 실적 수집은 보통 초 단위다. 택트 22초인 라인에서 실적 1건 처리가 3초 걸려도 문제가 없다. 하지만 작업 지시 다운로드 는 설비가 다음 제품을 받기 전에 끝나야 하므로 택트 안에 들어와야 한다.
  • 경영 계층 — ERP 연동은 분·시간 단위다. 자재 소요 반영이 10분 늦어도 라인은 멈추지 않는다. 대신 일 마감 처럼 하루 한 번만 도는 처리는 틀리면 하루치가 전부 틀린다.

QA 의 성능 기준은 이 차이를 반영해야 한다. 모듈 16 에서 배운 응답 시간·처리량 개념은 그대로 쓰이지만, 임계값의 근거가 사용자 체감이 아니라 택트 타임 이라는 점이 다르다. "3초 안에 응답"이 아니라 "택트 22초에서 설비가 다음 제품을 집기 전까지 남은 4.5초 안에 응답"이 기준이 된다.

MES 가 실제로 하는 일

MES(Manufacturing Execution System) 를 "생산 관리 시스템"이라고만 알면 테스트 범위를 정할 수 없다. MES 가 담당하는 기능군을 구체적으로 열면 이렇다. 기능 분류의 고전적 출발점은 MESA International 이 1990년대에 제시한 기능 모델이고, 이후 개정판이 여러 번 나왔다(MESA 모델의 기능 목록과 개정 이력 — 원문 확인). 여기서는 한국 제조 현장에서 실제로 MES 가 맡는 일을 기준으로 다섯 덩어리로 묶는다.

1) 작업 지시와 디스패칭 ERP 가 내린 생산 계획을 라인·설비·교대 단위의 작업 지시로 쪼갠다. 지시에는 품목, 수량, 공정 순서(라우팅), 적용할 레시피/파라미터, 투입할 자재 로트가 붙는다. 테스트 질문: 지시 수량이 라인 능력을 넘으면 어떻게 되는가. 지시가 중간에 변경되면 이미 라인에 올라간 제품은 어느 지시로 집계되는가.

2) 실적 수집 설비가 제품 하나를 끝낼 때마다 MES 가 양품/불량, 사이클 타임, 측정값, 작업자, 설비 번호를 기록한다. 수집 방식은 설비가 밀어 주기(push), MES 가 주기적으로 읽기 (poll), 둘의 혼합 중 하나다. 테스트 질문: 설비가 두 번 보내면 2대로 세는가. MES 가 죽어 있던 5분 동안의 실적은 복구되는가.

3) 추적성(traceability) 완성품 시리얼 번호 하나에서 거꾸로 어떤 자재 로트가 들어갔고, 어느 설비가 어느 파라미터로 가공했고, 어떤 측정값이 나왔는지 를 되짚을 수 있어야 한다. 이것이 제조 소프트웨어가 가진 가장 비싼 요구사항이다. 리콜이 터지면 추적성 데이터로 회수 범위를 좁힌다 — 데이터가 끊겨 있으면 전수 회수가 된다.

4) 품질 공정 검사 결과 기록, 불량 코드 분류, 재작업(rework) 과 폐기(scrap) 처리, SPC 관리도, 부적합 격리(hold). 테스트 질문: 불량 판정된 제품이 다음 공정으로 흘러가는 것을 막는가. 재작업 후 재투입된 제품의 이력은 이어지는가.

5) 설비 관리 가동/비가동 상태 집계, 비가동 사유 분류, 설비 종합 효율(OEE) 계산, 예방 보전 주기 관리. 테스트 질문: 상태 전이 시각이 어디 기준인가(PLC 시계인가 MES 시계인가).

이 다섯 덩어리는 서로 데이터를 주고받는다. 그래서 MES 테스트는 화면 단위가 아니라 흐름 단위 로 설계해야 한다. "작업 지시 등록 화면" 을 테스트하는 게 아니라 "지시 → 투입 → 가공 → 검사 → 집계 → 마감" 한 바퀴를 테스트한다.

예제 공장 — 한빛정밀 2공장 EWP 조립 라인

이 모듈 전체가 하나의 가상 공장을 쓴다. 뒤 레슨들은 이 라인에 계속 돌아온다.

한빛정밀 2공장 — 자동차용 전동식 워터펌프(EWP) 를 조립한다.

  • 라인 구성(공정 5개)

    • OP10 하우징 압입 — 서보 프레스. 압입 하중·변위 곡선을 측정한다
    • OP20 임펠러·모터 조립 — 6축 로봇 2대. 나사 체결 토크를 측정한다
    • OP30 기밀 시험 — 리크 테스터. 누설량을 측정한다
    • OP40 특성 검사 — EOL(End Of Line) 시험기 2대 병렬. 유량·소비 전류·소음
    • OP50 레이저 마킹·포장 — 시리얼 번호를 제품에 각인한다
  • 제어 — PLC 5대(공정별 1대), 라인 통합 PLC 1대, 안전 PLC 1대

  • 감시 — SCADA 서버 1대, 라인 사이드 HMI 5대

  • 운영 — MES(웹 기반, DB 는 관계형 1대 + 이력 테이블 파티셔닝)

  • 경영 — ERP(수주·자재·원가), 일 1회 양방향 연동 공장에서 쓰는 통신 방식 이름 둘을 먼저 적어 둔다. OPC UA 는 설비·제어 시스템과 상위 시스템이 데이터를 주고받는 산업용 표준 규약이고(공장판 창구라고 보면 된다), Modbus 는 그보다 훨씬 오래된 단순한 규약으로 아직도 널리 쓰인다. EOL 시험기 는 생산 라인 끝(End of Line)에서 완성품을 최종 검사하는 장비다.

  • 통신 — PLC ↔ MES 는 OPC UA, 리크 테스터는 Modbus TCP, EOL 시험기는 자체 TCP 텍스트 프로토콜, ERP 는 파일 연계 + REST

  • 운전 조건 — 2교대(08:0020:00 / 20:0008:00), 일 마감 배치는 매일 06:00, 목표 택트 22초, 계획 일산 2,400대, 설비는 주말 보전 외에는 연속 가동

  • 품질 요구 — 완성품 시리얼 단위 추적성 10년 보관, OP30·OP40 측정값 전수 저장

이 라인이 가진 조건이 모듈의 난이도를 정한다. 시리얼 단위 추적성 이 있으니 데이터 정합성이 l04 의 주제가 되고, 연속 가동 이니 장기 안정성이 l05 의 주제가 되고, 프레스와 로봇 이 있으니 설비 안전이 l06 의 주제가 된다.

QA 는 어디에 서는가

계층을 다 알아야 한다는 뜻은 아니다. QA 가 실제로 서는 자리는 계층 사이의 경계 다.

  • 제어 ↔ 감시 경계 — PLC 태그 값이 SCADA 화면과 알람에 제대로 반영되는가
  • 제어 ↔ 운영 경계 — 설비가 만든 실적이 MES 레코드와 1:1 로 맞는가. 여기가 제조 QA 결함의 최다 발생지다
  • 운영 내부 — MES 의 지시·실적·품질·추적성이 서로 모순되지 않는가
  • 운영 ↔ 경영 경계 — MES 집계와 ERP 전표의 수량·금액이 맞는가

PLC 래더 로직 자체의 검증은 보통 설비 업체와 제어 엔지니어의 일이고, QA 가 거기까지 들어가는 조직은 많지 않다. 반대로 경계의 검증은 아무도 자기 일이라고 하지 않는다 — 설비 업체는 "우리는 태그에 썼다", MES 업체는 "우리는 받은 걸 넣었다"고 한다. 그 사이에 QA 가 선다.

경계에 서려면 양쪽을 다 읽을 수 있어야 한다. 그래서 이 모듈은 l02 에서 프로토콜을, l03 에서 설비 없이 시험하는 방법을 먼저 다룬다.

실무에서 왜 필요한가

제조 소프트웨어 프로젝트에서 QA 가 가장 먼저 요구받는 산출물은 테스트 케이스가 아니라 인터페이스 목록 인 경우가 많다. 어떤 시스템이 어떤 데이터를 어떤 프로토콜로 어느 주기에 주고받는지가 적힌 표다. 이 표가 없으면 통합 시험 범위를 정할 수 없고, 있으면 그 표의 행 하나하나가 시험 항목이 된다.

계층 지도를 못 쥐면 테스트 전략이 화면 중심으로 쏠린다. MES 화면 300개를 다 클릭해도 설비에서 올라오는 실적이 틀리면 공장은 멈춘다. 반대로 계층을 알면 적은 공수로 큰 위험을 덮을 수 있다 — 경계 네 곳에 집중하는 쪽이 화면 전수 클릭보다 언제나 효율이 높다.

응답 시간 요구가 계층마다 다르다는 사실도 실무 판단을 바꾼다. 제조 프로젝트에서 "MES 조회가 8초 걸린다"는 결함은 심각도가 낮을 수 있다. 같은 8초가 작업 지시 다운로드 에서 걸리면 라인이 택트를 못 맞춰 멈춘다. 같은 숫자인데 영향이 전혀 다르다. 이 판단을 하려면 그 기능이 어느 계층 경계에 있는지를 알아야 한다.

마지막으로, 이 지도는 이관 책임의 지도 이기도 하다. 공장 소프트웨어는 설비 업체·SI·사내 IT·운영 부서가 나눠 만든다. 결함이 났을 때 누구를 불러야 하는지를 QA 가 알고 있으면 대응 시간이 줄어든다.

채용시장에서의 위치

제조 QA 수요는 완성차·부품(1·2차 벤더), 반도체·디스플레이 장비, 2차전지, 화학· 제약, 식품 쪽에서 꾸준히 나온다. 공고 제목은 "MES QA", "스마트팩토리 품질 엔지니어", "생산정보시스템 검증", "설비 연동 테스트" 처럼 붙고, 자격 요건에는 SQL, 생산 공정 이해, PLC·SCADA 용어 이해, OPC UA·Modbus 경험이 자주 들어간다.

이 영역의 특징은 도메인 지식이 곧 희소성 이라는 점이다. 웹 QA 는 공급이 많지만 "압입 하중 곡선이 왜 품질 데이터인지 아는 QA" 는 적다. 반대로 제조 현장 경력자는 많지만 테스트 설계·결함 보고·자동화를 아는 사람은 적다. 두 쪽을 겹쳐 가진 사람이 협상력을 가진다.

면접에서 힘을 갖는 이야기는 "MES 를 테스트했다"가 아니라 "설비 카운터와 MES 실적이 교대 경계에서 어긋나는 패턴을 찾아, 설비 시계가 MES 서버보다 7초 앞서 있던 것을 원인으로 특정했다" 처럼 계층 경계에서 원인을 규명한 이야기다.

실습 과제

과제 1 — 계층 지도 그리기 (25분)

한빛정밀 2공장 설명을 보고 계층 지도를 직접 그린다.

  1. 다섯 계층을 가로 띠로 그리고, 위 설명에 나온 구성 요소를 각 띠에 배치한다
  2. 띠 사이에 데이터가 흐르는 선 을 그린다. 선마다 다음 네 가지를 적는다 — 무엇을(데이터 항목), 어느 방향으로, 어떤 프로토콜로, 어느 주기로
  3. 선이 몇 개 나왔는지 센다. 이 선의 개수가 통합 시험의 최소 범위다
  4. 각 선 옆에 허용 지연 을 적는다. 택트 22초를 기준으로 근거를 쓴다

제출물은 지도 1장 + 인터페이스 목록 표 1장이다.

과제 2 — MES 기능별 위험 평가 (20분)

위에서 정리한 MES 다섯 기능군(작업 지시·실적 수집·추적성·품질·설비 관리)에 대해 표를 만든다.

기능군이게 틀리면 생기는 일발견까지 걸리는 시간위험 등급

"발견까지 걸리는 시간" 칸이 핵심이다. 실적 수집 오류는 교대 종료 때 드러나지만, 추적성 단절은 리콜이 터질 때까지 몇 년 드러나지 않을 수 있다. 조용히 오래 숨는 결함에 높은 등급을 준다. 등급을 매긴 근거를 한 줄씩 쓴다.

과제 3 — 경계 질문 10개 쓰기 (15분)

"제어 ↔ 운영 경계"에 집중해, 실적 수집 흐름에 대해 답을 모르면 테스트 설계를 시작할 수 없는 질문 10개를 쓴다. 예를 들면 — 실적은 설비가 밀어 주는가 MES 가 읽어 가는가, 중복 전송을 막는 식별자가 있는가, MES 가 응답하지 않으면 설비는 어떻게 하는가, 시각은 누구의 시계를 쓰는가. 10개를 쓴 뒤 각 질문에 누구에게 물어야 하는지(설비 업체·제어 엔지니어·MES 개발자·운영 부서) 를 적는다.

자가 체크리스트

  • 현장·제어·감시·운영·경영 다섯 계층에 각각 어떤 구성 요소가 들어가는지 말할 수 있다
  • ISA-95 가 다루는 인터페이스가 어느 레벨 사이인지, 국제 표준 번호가 무엇인지 안다
  • 계층마다 허용 지연이 자릿수로 다르다는 것을 예를 들어 설명할 수 있다
  • 제조 성능 기준의 근거가 사용자 체감이 아니라 택트 타임임을 설명할 수 있다
  • MES 의 다섯 기능군을 열고, 각 기능군의 전형적 결함을 하나씩 말할 수 있다
  • 추적성 데이터가 끊기면 리콜 범위가 어떻게 달라지는지 설명할 수 있다
  • QA 가 서야 할 계층 경계 네 곳을 짚고, 왜 거기가 결함 최다 발생지인지 말할 수 있다
  • 인터페이스 목록을 통합 시험 범위로 옮기는 절차를 설명할 수 있다
  • 예제 공장(한빛정밀 2공장) 의 공정·설비·통신·운전 조건을 보고 설명할 수 있다

흔한 실수

MES 를 웹 애플리케이션으로만 테스트한다. 화면 전수 클릭으로 커버리지를 채우고 통합 시험을 뒤로 미룬다. 실제 결함은 설비 연동과 집계·마감에 몰려 있다. 화면 테스트는 필요하지만 그것만으로는 라인이 멈추는 결함을 못 잡는다.

계층을 구분하지 않고 "공장 시스템"으로 뭉친다. 결함 보고서에 "생산 데이터 오류"라고만 쓰면 담당자가 정해지지 않는다. 어느 계층의 어느 값이 어느 계층의 어느 값과 다른지를 써야 결함이 움직인다.

응답 시간 기준을 웹 서비스 감각으로 가져온다. "2초 이내"를 모든 기능에 똑같이 적용하면 택트를 못 맞추는 구간을 놓치고, 반대로 조회 화면에 과도한 기준을 걸어 불필요한 튜닝 공수를 쓴다.

ERP 연동을 "나중에" 로 미룬다. 경영 계층 연동은 주기가 길어서 시험 기회가 적다. 일 마감을 한 번도 돌려 보지 않고 가동하면 첫 마감에 하루치 집계가 틀어진다. 주기가 긴 인터페이스는 일부러 주기를 당겨서라도 시험 계획에 넣는다.

표준 번호와 레벨 번호를 외워서 쓴다. ISA-95·IEC 62264 의 파트 구성과 레벨 정의는 판본에 따라 서술이 다르다. 문서에 쓸 때는 원문을 확인하고, 확인 못 하면 "퍼듀 참조 모델 기반의 계층 구분" 처럼 범위를 줄여 쓴다.

추적성을 기능 하나로 본다. 추적성은 작업 지시·실적·자재 투입·검사 결과가 모두 정확할 때만 성립하는 결과 다. 추적성 조회 화면이 열린다고 추적성이 보장되지 않는다.

참고 자료

  • ISA, ISA-95 Enterprise-Control System Integration 표준 위원회 안내 — 표준의 목적과 범위, 퍼듀 참조 모델 레벨 3·4 인터페이스 언급. 파트별 상세 조항은 유료 원문 확인 필요
  • IEC, IEC 62264 시리즈 (Enterprise-control system integration) — ISA-95 와 정렬된 국제 표준. 각 파트 번호와 범위는 IEC 웹스토어 원문 확인
  • MESA International — MES 기능 모델과 개정판. 기능 목록의 정확한 항목과 발행 연도는 MESA 공식 자료 원문 확인
  • 한국 제조 현장 용어는 한국산업기술시험원·한국생산기술연구원 공개 자료와 스마트공장 추진 사업 공개 가이드에서 교차 확인할 수 있다
  • 모듈 46 레슨 1 — 임베디드 해부: PLC 아래쪽 하드웨어 계층의 이해에 이어진다
  • 모듈 16 레슨 1 — 비기능 테스트 개관: 응답 시간·처리량 개념의 출발점

낯선 말 풀이

이 레슨에 나온 약어입니다. 본문에서도 처음 나올 때 점선으로 표시해 두었습니다 (제목과 링크 글자는 그대로 둡니다).

MES — 제조 실행 시스템
공장에서 무엇을 얼마나 어떤 순서로 만들지 관리하는 시스템.
PLC — 프로그램 가능 제어기
공장 설비를 직접 움직이는 산업용 제어 장치.
SCADA — 감시 제어 및 데이터 수집
공장 설비 상태를 한 화면에 모아 보며 조작하는 감시 시스템.
IT — 정보기술
컴퓨터와 통신으로 정보를 다루는 기술 전체.
ISA-95 — 기업-제어 시스템 통합 표준
공장 설비부터 경영 시스템까지를 층으로 나눠 정리한 국제 표준.
IEC — 국제전기기술위원회
전기·전자 분야의 국제 규격을 만드는 단체.
QA — 품질보증
만든 것이 쓸 만한지 확인하고, 애초에 덜 망가지게 만드는 방법을 정하는 일. "테스트"는 그 일의 일부다.
HMI — 사람-기계 인터페이스
설비를 사람이 조작하는 화면이나 조작판.
ERP — 전사 자원 관리
회사의 돈·재고·인사를 한 시스템에서 관리하는 업무 소프트웨어.
DB — 데이터베이스
데이터를 넣어 두고 꺼내 쓰는 저장소. 보통 표 여러 개가 서로 연결된 형태다.
TCP — 전송 제어 규약
데이터를 빠뜨리지 않고 순서대로 보내는 약속. 웹도 이 위에서 돌아간다.
REST — 레스트
창구를 만드는 가장 흔한 방식. 주소 하나가 자원 하나를 가리키고, 동작은 정해진 몇 가지 말로 구분한다.

이 레슨에 나온 나머지 2개를 포함해 용어집 전체 보기