EMR RUL Generator
SYNTHETIC

사용 설명서

SYNTHETIC

이 도구는 실제 릴레이를 고장까지 시험하기 전에, 똑같은 구조의 가상(합성) 데이터를 브라우저 안에서 만들어 줍니다. 실데이터가 오기 전에 RUL(잔여수명) 예측 파이프라인을 미리 만들고 검증하는 연습장입니다. 모든 계산은 브라우저에서 돌아가며 서버로 전송되지 않습니다.

⚠ 여기서 나온 모든 숫자는 합성입니다. 실제 릴레이 수명·모델 성능의 절대값으로 인용하지 마세요. 우측 상단의 노란 SYNTHETIC 배지가 이를 항상 알려줍니다.

5분 빠른 시작

처음 켰다면 이 5단계만 따라 하세요.

  1. 1
    생성(Studio) 화면 열기
    도구를 켜면 자동으로 생성(Studio) 화면이 나옵니다 (상단 메뉴 '생성').
  2. 2
    프리셋 고르기
    좌측 프리셋 카드에서 demo 를 클릭합니다. 처음엔 demo 권장 — 약 1초 만에 데이터가 생깁니다 (개체 수 기본 3대).
  3. 3
    (선택) 미리보기
    몬테카를로 미리보기 버튼으로 생성 전에 예상 수명 분포(β·η)·고장 모드 비율을 확인합니다.
  4. 4
    생성 시작
    ▶ 생성 시작 버튼. 진행 막대·개체별 상태·실시간 열화 곡선이 나타나고 demo는 1초 내 끝납니다.
  5. 5
    결과 보기
    완료되면 하단에 집계 / Analysis / Export 바로가기가 나옵니다. 차례로 둘러보세요.
💡 막히면 언제든 상단 메뉴 Guide(이 화면)로 돌아올 수 있습니다. 데이터를 다시 만들려면 생성 화면에서 같은 시드로 생성하면 똑같은 결과가 재현됩니다.

화면별 안내

상단 메뉴 순서대로. 카드 제목을 누르면 해당 화면으로 이동합니다.

생성데이터 생성 (Studio)

프리셋 선택 → 설정 조정 → 생성. 몬테카를로 미리보기로 결과를 예측하고, Preflight로 예상 시간·용량을 미리 봅니다.

💡 demo로 익히고 grayzone(노이즈 ×4)과 비교하면 '데이터 난이도'가 체감됩니다.
집계열화 궤적 대시보드 (Fleet)

6개 핵심 지표를 ON/OFF/통전 구간으로 나눠 개체별 곡선을 한눈에. 우상향하면 열화 진행 중. 상단 공용 필터로 개체를 켜고 끕니다.

💡 true_HI 오버레이를 켜면 정답 건강지표가 보라 점선으로 겹쳐집니다.
Cycle파형 뷰어

선택한 사이클의 전기 파형(ON 60ms / OFF 80ms / 코일)을 합성해 보여줍니다. 바운스·아크·재점호가 색으로 표시됩니다.

💡 키보드 ←/→ 사이클 이동(Shift ±1000), E 다음 이벤트, G GT 토글.
Analysis분석·게이트

위상-아크 산점의 [원시↔잔차] 토글이 핵심. 게이트 배지(GO/회색지대/NO-GO), 와이블 플롯, 난이도 카드를 제공합니다.

💡 원시 → 잔차로 바꾸면 위상에 묻혀 있던 말기 열화 추세가 드러납니다.
Export내보내기

observed_*(관측)와 ground_truth_*(정답지)를 분리해 CSV로 받습니다. pandas 스니펫 복사로 Python 로드 코드를 가져옵니다.

💡 학습에는 observed_*만 사용하세요. ground_truth_*를 넣으면 컨닝입니다.
Runs실행 관리

지금까지 만든 run 목록·활성화·삭제. 세션 메모리 보관이지만 같은 설정+시드로 언제든 똑같이 재생성됩니다.

💡 탭을 닫아도 시드만 알면 동일하게 복원됩니다 (Tier 1 결정론).

꼭 알아야 할 용어

프리셋
미리 짜둔 설정 묶음. demo(빠른 연습)·nominal(실제 스케일)·grayzone(어려움)·weld_dominant(융착 위주).
SYNTHETIC
이 데이터는 전부 가상이라는 표식(우측 상단 노란 배지). 끌 수 없고, 보고서에 실데이터처럼 쓰면 안 됩니다.
GT (정답지·보라)
ground truth. 실제 시험에선 알 수 없는 진짜 상태값. 채점에만 쓰고 학습 입력엔 절대 넣지 않습니다.
사이클
릴레이 ON→통전→OFF 한 번. 이 도구의 시간 단위는 '초'가 아니라 '회'입니다.
바운스(bounce)
접점이 닫히는 순간(ON) 한 번에 붙지 않고 여러 번 튕기는 현상(접점 채터링). 스프링·기구부로 움직이다 보니 '붙었다 떨어졌다'를 수 회 반복합니다. 매 튕김마다 미세 아크가 일어 접점을 갉아먹고, 닳을수록 횟수·지속시간이 늘어 열화 지표가 됩니다. 집계 화면의 '바운스 총지속' = 한 번 닫을 때 튕김이 안정될 때까지 걸린 총 시간(ms).
RUL / capped RUL
잔여수명(고장까지 남은 사이클 수). 너무 먼 미래는 정보가 없어 상한(cap)으로 자릅니다.
게이트
'이 데이터로 RUL 예측이 될까?'를 추세 신호 세기(ρ)로 판정. GO / 회색지대 / NO-GO.
검열(censored)
시험이 끝났는데 아직 고장 안 난 개체. 수명을 모르므로 RUL 학습엔 못 씁니다.

고장 판단 기준

시뮬레이터는 건강지표가 낮다고 고장으로 보지 않고 물리 사건으로 판정합니다(그래야 라벨 누수가 없음). 대부분 접점 침식 → 오버트래블 소진 → 접압 붕괴라는 한 줄기에서 갈라집니다.

융착 (weld)
· 의미: 차단하려는데 접점이 녹아붙어 안 떨어짐
· 시뮬레이터 판정: 닫힘 시 미세용착력이 접압(스프링힘)을 초과 → 차단 실패. 백업 차단 후 코일 재여자 충격에도 안 떨어지면 영구 고장. 2P(양극)는 두 접점이 모두 붙어야 시스템 고장.
소호 실패 (arc_non_quench)
· 의미: 차단 아크(불꽃)가 안 꺼지고 재발화 반복
· 시뮬레이터 판정: 일시 융착이 풀린 직후 개리 속도가 급락하면 매 반주기마다 아크가 다시 붙음 → 연속 12회 재점호면 고장 (=100ms 소호 감시 ÷ 8.33ms 반주기).
미투입 (no_close)
· 의미: 닫으라 했는데 전류가 안 흐름
· 시뮬레이터 판정: 접압 저하·오버트래블(여유 눌림) 소진 → 연속 3회 미투입이면 고장. 1~2회는 전조 이벤트로만 기록.
열한계 (thermal)
· 의미: 통전 발열 폭주 (보조 기준)
· 시뮬레이터 판정: soak ΔΔT·접점저항 한계 초과. demo/nominal 물리에선 위 3개가 먼저 발생해 거의 트리거되지 않음.
검열 (censored)
· 의미: 고장이 아니라 시험 종료
· 시뮬레이터 판정: 사이클/시간 캡까지 무고장 → 수명 라벨 없음(와이블 분석엔 '최소 생존'으로 사용).
모든 임계값은 물리 상수 파일(presets.ts)에 정의되어 있으며, 실물 시험에서는 파일럿 데이터로 재보정합니다.

자주 묻는 질문

Q. 데이터가 서버로 가나요?
A. 아니요. 모든 계산·저장이 브라우저 안에서 일어납니다. 인터넷 없이도 동작합니다.
Q. demo 수명(~1.5만)과 nominal(~4.9만)이 왜 다른가요?
A. demo는 빠른 연습을 위해 수명을 1/4로 가속한 설정입니다. 실제 물리 스케일은 nominal입니다.
Q. 같은 결과를 다시 만들 수 있나요?
A. 네. 같은 프리셋+같은 시드면 비트 단위로 동일하게 재현됩니다 (동일 브라우저 기준).
Q. 여기서 모델 A가 B보다 좋게 나왔는데 실제로도 그런가요?
A. 단정하면 안 됩니다. 합성 데이터는 파이프라인이 '도는지' 검증용이지 모델 우열 선택용이 아닙니다.
Q. Python으로 어떻게 가져가나요?
A. Export 화면에서 CSV를 받고 'pandas 스니펫 복사'로 로드 코드를 가져갑니다.

해도 되는 것 / 하면 안 되는 것

한 줄 원칙: 이 도구는 “연습장”입니다. 실제 판정은 항상 실데이터로 합니다.

✅ 해도 됨
파이프라인 구현 검증, 누수(컨닝) 테스트, 시각화·내보내기 도구 개발, 난이도·경향 실험
⚠️ 조건부
게이트 검정력·표본 수 실험 → “경향”으로만 해석
❌ 금지
합성에서의 모델 우열을 실데이터에 그대로 적용, 합성 성능 수치를 보고서 절대값으로 인용, GT 컬럼을 학습 입력에 사용
더 알아보기: 설계 근거는 『가상 데이터셋 생성기 개발설계서 v3』, AI 모델 개발 전체 흐름은 『초보 AI 개발자 가이드』.