산업 자동화에서의 MQTT: 제조업체를 위한 실전 가이드
MQTT란?
Message Queuing Telemetry Transport. 클라이언트-서버 발행/구독 메시징 전송 프로토콜. 대역폭 제한 환경에서 소량 패킷 전송에 최적화된 경량 프로토콜. IoT 연결 핵심 OASIS 표준.
역사
1990년대 말, 원격 유정(300 baud 초저속)에서 데이터 전송 필요. TCP 전송 계층 활용, 페이로드 중복 제거, 상태 유지, 예외 기반 보고 원칙으로 필립스66·시러스링크(알렌 니퍼)·IBM(앤디 스탠포드-클라크) 공동 개발.
초기 상용 사례
자동화 업계 제안(2000년대 초) 외 페이스북 메신저, 애플 메시지 '입력 중' 표시(상태·품질 보장)에 활용. 홈 모니터링, 기상 데이터 등 제한적 사용.
자동화 분야 채택
2010년대 중반 알렌 니퍼 재접근. 제조 데이터 추가 집약 네트워크 부담 최소화 필요. 시러스링크·인덕티브 오토메이션, 자동화 필수 속성(정의된 토픽, 표준 페이로드, 메시지 압축) 갖춘 스파크플러그(Sparkplug) 표준 개발.
구조: 토픽 네임스페이스
컴퓨터 폴더 구조와 유사. 예: Enterprise/Site/Area/Line/Cell. 상위 레벨 구독 시 더 많은 데이터 수신. 와일드카드: *(현재 레벨 이하 전체), +(한 레벨 하위).
ISA-95 표준과의 정렬
ISA-95 엔터프라이즈-제어 시스템 인터페이스 표준 모델·용어 정의. MQTT 토픽 네임스페이스를 Enterprise→Site→Area→Line→Cell 계층으로 구성 권장. 퍼블리셔/서브스크라이버 루트 폴더 적정 레벨 배치. 예: 셀 제어 PLC는 Enterprise/Site/Area/Line/Cell 토픽 발행. 영역별 공정 이력관리자는 Enterprise/Site/Area 구독.
아키텍처: 연결 단절 대응
- Store-and-Forward: SCADA 등 제어 계층 로컬 수집→브로커 재연결 시 타임스탬프 유지 전송.
- 백업 브로커: 주 브로커 장애 시 자동 페일오버. SCADA 등 애플리케이션 레벨 설정.
- 클러스터링: 다중 브로커 클러스터 구성, 메시지 공유·무중단 라우팅. 데이터 손실 불가 애플리케이션에 적합.
- 브리징: 플랜트 브로커→엔터프라이즈 브로커 네임스페이스 포워딩. 토픽·구조 정의로 데이터 양 제어·컨텍스트 부여. 예: Enterprise/Site 접두사 추가로 Area/+/Cell 데이터 전송.
조합 배포 가능: SCADA→클러스터(store-and-forward)→백업 클러스터→엔터프라이즈 클러스터 브리징. 엔터프라이즈 분석·머신러닝에 고품질 대용량 데이터 공급.
보안
사이버보안 최대 우려. 에어갭만이 완전 보안이나 디지털 전환 차단. MQTT 장점: 아웃바운드 연결만 필요, 인바운드 포트 개방 불필요. IT 조직 선호.
향후 고려사항
기존 아키텍처 대체 아닌 보완. OPC UA 등 제어용 프로토콜 병행. 대용량 데이터 집약엔 MQTT 최적. 향후 글에서 구체 애플리케이션, 비즈니스/엔지니어링 리더 관점 영향 다룰 예정.