# 활용 사례

> 실제 플랜트가 X-Edge AI Box를 도입하는 목적 — 예지 보전, 이상 감지, 폐루프 라이트백, SCADA 연동, 배포 전 모델 검증.

이 박스는 한 가지 일을 확실하게 수행합니다. **실시간 시계열 신호**(OPC UA,
MQTT 또는 CSV 리플레이)를 받아 `health_score`, `failure_probability`,
잔여 수명(RUL)이라는 모델 출력 스트림으로 변환합니다 — 클라우드 의존성 없이
**온프레미스**에서 계산하고, 플랜트가 필요로 하는 곳 어디로든 전달합니다:
운영자 대시보드, PLC 설정값, 브로커 토픽, 또는 외부 API를 통한 SCADA/히스토리안.

아래의 모든 활용 사례는 이 하나의 파이프라인 위에 구축됩니다.

## 생태계 안에서 박스의 위치

```mermaid
flowchart LR
  subgraph Plant["Plant floor"]
    PLC["PLCs · OPC UA servers"]
    BR["MQTT brokers · sensors"]
  end

  subgraph Line["One production line"]
    BOX["X-Edge AI Box\n(self-contained runtime)"]
  end

  subgraph Ops["Operations & IT"]
    HMI["Operator dashboard\n(browser)"]
    SCADA["SCADA · MES · Historian"]
  end

  subgraph Studio["Engineering workstation (offline)"]
    MC["modelctl\nconvert · validate · package"]
  end

  PLC -->|"tags (polled)"| BOX
  BR -->|"topics (push)"| BOX
  BOX -->|"live charts · alerts"| HMI
  BOX -->|"predictions & setpoints\n(OPC UA / MQTT write-back)"| PLC
  BOX -->|"external API\n(API key)"| SCADA
  MC -.->|"ONNX bundle\ncrosses the air gap"| BOX
  BOX2["Box — line 2"] ~~~ BOX
  BOX -.->|"config export/import\n(JSON envelope)"| BOX2
```

각 라인마다 전용 박스를 두며, 박스들은 서로에게도 클라우드에도 의존하지
않습니다. 모델은 [modelctl](/ko/configure/prepare-models/)로 박스 밖에서
제작되어 검증된 ONNX 번들 형태로 에어갭을 건너오고, 검증이 끝난 라인 구성은
[구성 내보내기/가져오기](/ko/api-reference/overview/)로 다음 라인에
복제합니다.

## 예지 보전

핵심 활용 사례입니다. 회전 장비의 진동·온도·전류·압력 태그를 스트리밍하면,
윈도우 기반 모델이 베어링 마모와 모터 결함을 **고장 몇 시간 전에** 매 샘플마다
점수화합니다.

- **입력 신호:** 데이터소스 샘플링 속도(기본 10 Hz)의 태그 10–100개.
- **출력:** 대시보드의 health score·고장 확률 추세, 외부 API를 통해 정비
  계획에 공급되는 RUL.
- **사용자:** 운영자는 추세를 감시하고, 정비 계획자는 이력을 활용합니다.

## 공정 변수 이상 감지

규칙 기반 SCADA 알람은 이미 예측한 것만 잡아냅니다. 같은 공정 변수를 지켜보는
모델은 임계값이 놓치는 패턴 — 드리프트, 진동, 태그 간 상관 편차 — 을
드러냅니다.

이 파이프라인은 여기서 *신뢰할 수 있게* 동작하도록 설계되었습니다. 침묵하는
센서나 오래된 MQTT 토픽은 모델에 정지된 데이터를 공급하는 대신 **추론을
가시적으로 중단**시키고(움직임 없는 데이터는 "정상"으로 읽힙니다 — 이상
감지에서 최악의 실패 모드), `NaN`/`Infinity` 페이로드는 모델에 도달하지
않습니다.

## 폐루프 라이트백

예측은 차트에서 멈추지 않아도 됩니다. 출력 채널을 싱크 고유 주소 — OPC UA
노드, MQTT 토픽, CSV 열 — 에 매핑하면 박스가 scale/offset을 적용해 QoS 1로
각 예측을 라이트백하고, 컨트롤러나 HMI가 이를 활용할 수 있습니다.

쓰기 실패는 추론을 멈추지 않으며, 병합된 **Output write failed** 알림으로
표면화됩니다. [출력 데이터소스](/ko/configure/output-datasources/)를
참조하세요.

## SCADA / MES / 히스토리안 연동

사이트 IT와 SI 파트너는 [외부 REST API](/ko/api-reference/overview/)를 통해
기존 플랜트 시스템으로 예측을 가져갑니다 — API 키 인증, 속도 제한 적용,
대시보드 계정 불필요:

- `GET /api/external/v1/predictions/latest` — HMI 위젯용 현재 상태.
- `GET /api/external/v1/predictions/history` — 히스토리안용 최근 구간.

## CSV 리플레이 기반 모델 검증

모델이 실제 장비에 닿기 전에, CSV 입력 어댑터로 **기록된 사고 데이터**를
프로덕션과 동일한 파이프라인 — 동일한 윈도잉, 동일한 모델 런타임, 동일한
대시보드 — 에 리플레이하세요. 재생 속도를 조절하고 파일을 반복 재생하며,
기록해 둔 고장을 모델이 실제로 탐지하는지 확인합니다. 플랜트 연결 없이 박스를
시연하는 가장 빠른 방법이기도 합니다.

## 확장: 라인당 박스 한 대

의도적으로 **멀티 박스 페더레이션은 없습니다** — 각 박스는 PLC만큼
자기완결적이며, 운영자가 박스를 신뢰할 수 있는 이유가 바로 이것입니다.
플랜트 확장은 검증된 레시피의 반복입니다:

1. 라인 1 시운전: 데이터소스 연결, 모델 페어링, 임계값 튜닝.
2. 추론 구성 내보내기(시크릿은 마스킹, JSON 봉투 하나).
3. 다음 박스에서 가져오기, 라인 2의 엔드포인트로 변경, 활성화.

## 다음 단계

  - [퀵스타트](/ko/install-deploy/quickstart/) — 전원 투입부터 첫 예측까지.
  - [시스템 아키텍처](/ko/architecture/) — 이 활용 사례들을 떠받치는 파이프라인의 구조.
  - [입력 데이터소스 연결](/ko/configure/input-datasources/) — OPC UA, MQTT, CSV — 보안 래더와 함께.
  - [modelctl로 모델 준비](/ko/configure/prepare-models/) — 에어갭을 건너는 ONNX 번들 제작.
