- 현장에서 IIoT Data를 Graph보여주고 질문과 응답
- IIoT Data에서 암묵지 추출하는 방안
. 특정 제품 제작 전반의 IoT data에서 데이터 분석


질문: “그래프와 같은 데이터는 무엇을 의미하나요?”
답변(숙련자):
그래프요? 펌프 온도 흐름이에요. 파란 선이 실제, 박스는 구간 나눠 본 거죠.
급히 내려가면 → 일단 정지. 공급 막힘/밸브 문제 먼저 봅니다.
급히 올라가면 → 부하 좀 빼고 냉각 키움. 유량/열교환 체크.
가끔 튀는 스파이크 → 센서나 접촉 흔들린 걸로 봄. 단자/케이블 확인.
계속 높은 채로 평탄 → 냉각 약해요. 열교환기 막힘/스케일 의심.
값이 너무 한 줄로 고정 → 센서 맛갔을 확률 큼. 교정하거나 갈아낍니다.
대충 기준: 85℃ 넘으면 쉬어가고, 90℃면 경보 수준입니다.
PS) 설비 명칭 및 설치 Spec data 포함 해야 됨
| 보이는 패턴 | 내가 바로 하는 말/행동 |
|---|---|
| 온도가 푹 떨어짐(급하강) | “라인 잠깐 세워요.” → 공급/밸브/펌프 먼저 봄 |
| 온도가 쭉쭉 올라감 | “부하 조금 빼자.” → 냉각/유량 키움, 열교환 확인 |
| 툭툭 튐(스파이크) | “센서 접점 봐요.” → 커넥터/케이블 흔들림 체크 |
| 높은 온도 유지 | “냉각 안 받네.” → 열교환기 막힘·스케일 점검 |
| 값이 안 움직임 | “센서 고정값이네.” → 센서 교정/교체 |
| 예측선보다 실제가 계속 높음 | “요즘 부하가 쎄요.” → 레시피/유량/주변온도 재확인 |
한마디식(그대로 적기 좋은 문장)
“푹 내려가면 멈추고 라인부터 봅니다.”
“온도 많이 오르면 냉각 키우고 유량 늘려요.”
“툭툭 튀면 센서 접점부터 확인합니다.”
“85도 넘기 시작하면 속도 줄이고, 90도면 경보라고 봐요.”
이러한 답변인 암묵지를 온톨로지로 변경하기 위해서는 좀 더 구체적인 질문 필요
암묵지를 온톨로지(KG)로 바꾸려면 “숫자·조건·행동”이 들리는 질문이 필요합니다.
바로 현장에서 쓸 수 있는 구체 질문 → (기대 답변형식) → 온톨로지 매핑 묶음을 드릴게요.
(워터펌프 온도 시계열 기준, 현장 말투 유지)
1) 설비·센서 맥락(누구의 어떤 값인가?)
ex:Equipment, ex:equipIdsosa:ObservableProperty, ex:tagIdqudt:unit, ex:unitex:samplingRate, ex:windowSec, ex:strideSec2) 밴드(정상/고온/과열) 경계
ex:Band/Normal ; ex:min ; ex:maxex:Band/High, ex:Band/Overheat, ex:alarmThreshold3) 안정성·변동 패턴 수치
ex:stdStableLt, ex:stdModerateLtex:dropSlopeThresh, ex:dropRunPctex:spikeDelta, ex:spikeWindowSec, ex:spikeZex:flatStdLt, ex:flatMinDurationSec4) 패턴 → 현장 조치(암묵지의 핵심)
ex:RapidDrop → ex:StopWorkex:RapidRise|Overheat → ex:CoolDownex:Spike → ex:Inspectex:Flat → ex:CheckSensorex:actionCondition (temp>85 & dur≥30s)5) 원인 가설·교차신호
ex:likelyCauseex:correlatedTag6) 예외·운전모드
ex:excludedModeex:debounceSec7) 메타데이터
prov:wasAttributedTo, ex:ruleVersion, dct:created“질문 → 필드 → 온톨로지” 상위 12개 필드(요약표)

8) 결과 TTL 템플릿(바로 쓰는 양식)
@prefix ex: <http://example.org/manufacturing#> .
@prefix time: <http://www.w3.org/2006/time#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
ex:Pump-AX1001 a ex:Equipment ;
ex:hasSignal ex:Pump-AX1001_T_out .
ex:Pump-AX1001_T_out a ex:TemperatureSignal ;
ex:tagId "T_out" ;
ex:unit "degC" ;
ex:samplingRate "1"^^xsd:double ;
ex:windowSec "120"^^xsd:int ;
ex:strideSec "30"^^xsd:int ;
ex:normalMin "30"^^xsd:double ; ex:normalMax "70"^^xsd:double ;
ex:highMin "70"^^xsd:double ; ex:highMax "85"^^xsd:double ;
ex:overheatMin "85"^^xsd:double ;
ex:alarmThreshold "90"^^xsd:double ;
ex:stdStableLt "2"^^xsd:double ; ex:stdModerateLt "5"^^xsd:double ;
ex:dropSlopeThresh "-1.0"^^xsd:double ; ex:dropRunPct "0.7"^^xsd:double ;
ex:spikeDelta "8"^^xsd:double ; ex:spikeWindowSec "10"^^xsd:int ;
ex:flatStdLt "0.3"^^xsd:double ; ex:flatMinDurationSec "60"^^xsd:int .
# 암묵지 규칙(패턴→조치)
ex:rule_RapidDrop_Stop a ex:OperationalHeuristic ;
ex:appliesToSignal ex:Pump-AX1001_T_out ;
ex:appliesToPattern ex:RapidDrop ;
ex:recommendsAction ex:StopWork ;
ex:hasSeverity "Critical" ;
ex:actionCondition "slope<-1.0 && runPct>=0.7" ;
ex:justification "급격 하향은 공급/밸브 문제 가능 → 즉시 정지 후 점검." .
ex:rule_Overheat_Cool a ex:OperationalHeuristic ;
ex:appliesToSignal ex:Pump-AX1001_T_out ;
ex:appliesToPattern ex:Overheat ;
ex:recommendsAction ex:CoolDown ;
ex:hasSeverity "High" ;
ex:actionCondition "temp>85 && dur>=30" ;
ex:justification "과열 지속 → 부하감소/냉각." .9) 빠른 수집 양식(JSON) — 인터뷰 기록 → KG 변환용
{
"equipId": "Pump-AX1001",
"tagId": "T_out",
"unit": "degC",
"samplingRateSec": 1,
"windowSec": 120,
"strideSec": 30,
"bands": {"normal":[30,70], "high":[70,85], "overheat":[85, null], "alarm": 90},
"stability": {"stableStdLt":2, "moderateStdLt":5},
"rapidDrop": {"slopeLt": -1.0, "runPctGe": 0.7},
"spike": {"deltaGe": 8, "windowSec": 10},
"flat": {"stdLt": 0.3, "minDurationSec": 60},
"rules":[
{"pattern":"RapidDrop","action":"StopWork","severity":"Critical","condition":"slope<-1.0 && runPct>=0.7"},
{"pattern":"Overheat","action":"CoolDown","severity":"High","condition":"temp>85 && dur>=30"}
],
"correlatedTags":["Flow_L_min","DeltaP_bar","Current_A","Vibration_mm_s"],
"excludedModes":["Warmup","Cleaning"],
"debounceSec":10,
"author":"Expert_007","ruleVersion":"v1.2","created":"2025-09-30"
}10) 인터뷰 진행 팁:
ex:TimeSeriesSegment : 슬라이딩 윈도우 조각ex:VolatilityPattern : RapidDrop/RapidRise/Spike/Flat …ex:Action : StopWork, CoolDown, Inspect, CheckSensor …ex:OperationalHeuristic : “패턴 → 권고조치(심각도, 근거 포함)” 규칙ex:hasPattern(세그먼트→패턴), ex:recommendsAction(규칙→액션)ex:hasSeverity(규칙/세그먼트 심각도), ex:justification(설명)@prefix ex: <http://example.org/manufacturing#> .
@prefix time: <http://www.w3.org/2006/time#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
# --- 패턴 ---
ex:RapidDrop a ex:VolatilityPattern . # 급격 하향
ex:RapidRise a ex:VolatilityPattern . # 급격 상승
ex:Spike a ex:VolatilityPattern . # 급변(스파이크)
ex:Flat a ex:VolatilityPattern . # 평탄(정상)
# --- 조치(Action) ---
ex:StopWork a ex:Action . # 작업 중지
ex:CoolDown a ex:Action . # 냉각/부하감소
ex:Inspect a ex:Action . # 설비 점검
ex:CheckSensor a ex:Action . # 센서 점검/교정
# --- 암묵지 규칙(Operational Heuristic) ---
ex:rule_RapidDrop_Stop a ex:OperationalHeuristic ;
ex:appliesToPattern ex:RapidDrop ;
ex:recommendsAction ex:StopWork ;
ex:hasSeverity "Critical" ;
ex:justification "급격한 하향 그래프는 작업 중지(공정 붕괴/공구 파손/공급단절 가능)." .
ex:rule_RapidRise_Cool a ex:OperationalHeuristic ;
ex:appliesToPattern ex:RapidRise ;
ex:recommendsAction ex:CoolDown ;
ex:hasSeverity "High" ;
ex:justification "급격 상승은 과열 위험 → 냉각·이송감속 권고." .
ex:rule_Spike_Inspect a ex:OperationalHeuristic ;
ex:appliesToPattern ex:Spike ;
ex:recommendsAction ex:Inspect ;
ex:hasSeverity "Medium" ;
ex:justification "불규칙 급변은 공정 불안정 → 설비 점검." .
ex:rule_Flat_CheckSensor a ex:OperationalHeuristic ;
ex:appliesToPattern ex:Flat ;
ex:recommendsAction ex:CheckSensor ;
ex:hasSeverity "Low" ;
ex:justification "비정상적 평탄/고정값 지속 시 센서 드리프트/단선 의심." .
# --- 세그먼트(점선 박스) 예시 ---
ex:seg_071 a ex:TimeSeriesSegment ;
time:hasBeginning "2025-09-30T10:25:00"^^xsd:dateTime ;
time:hasEnd "2025-09-30T10:27:00"^^xsd:dateTime ;
ex:hasPattern ex:RapidDrop ;
ex:mean 72.1 ; ex:std 5.9 ; ex:min 60.4 ; ex:max 78.2 .
ex:seg_072 a ex:TimeSeriesSegment ;
time:hasBeginning "2025-09-30T10:27:00"^^xsd:dateTime ;
time:hasEnd "2025-09-30T10:29:00"^^xsd:dateTime ;
ex:hasPattern ex:Spike ;
ex:mean 91.2 ; ex:std 6.7 ; ex:min 84.9 ; ex:max 97.6 .
이렇게 넣어두면 “점선 박스의 의미(패턴)와 현장 행동(조치)”가 데이터로 연결됩니다.
A. “작업 중지”가 권고되는 세그먼트 찾기
PREFIX ex: <http://example.org/manufacturing#>
SELECT ?seg ?severity ?why
WHERE {
?seg ex:hasPattern ?p .
?rule a ex:OperationalHeuristic ;
ex:appliesToPattern ?p ;
ex:recommendsAction ex:StopWork ;
ex:hasSeverity ?severity ;
ex:justification ?why .
}
ORDER BY DESC(?severity)B. 세그먼트별 권고 조치 표
PREFIX ex: <http://example.org/manufacturing#>
SELECT ?seg ?pattern ?action ?severity
WHERE {
?seg ex:hasPattern ?p .
?rule ex:appliesToPattern ?p ;
ex:recommendsAction ?a ;
ex:hasSeverity ?severity .
BIND(STRAFTER(STR(?p), "#") AS ?pattern)
BIND(STRAFTER(STR(?a), "#") AS ?action)
}C. (Update) 패턴 기반으로 ‘필요 조치’ 트리플을 그래프에 부여
PREFIX ex: <http://example.org/manufacturing#>
INSERT {
?seg ex:requiresAction ?a .
}
WHERE {
?seg ex:hasPattern ?p .
?rule ex:appliesToPattern ?p ;
ex:recommendsAction ?a .
}slope < -β 또는 연속 하락 샘플 비율 ≥ θslope > +βzscore(max) ≥ κ 또는 Δt 내 |Δx| ≥ δstd < ε 또는 (max-min) < εex:hasPattern만 KG에 적재하면 됩니다. (이미 만든 라벨링 파이프라인에 한 줄 추가)recommendsAction ex:StopWorkhasPattern ex:RapidDrop JOIN 규칙hasPattern ex:Spike + ORDER BY ?severity


기업 홍보를 위한 확실한 방법
협회 홈페이지에 회사정보를 보강해 보세요.