Files
HC900-Crawler/prompts/instrument_inference.yaml
windpacer 16fc7a2598 Initial commit: HC900 Crawler
Honeywell HC900을 Modbus TCP로 직접 폴링 → gRPC → C# 크롤러 → PostgreSQL.
기존 Experion OPC UA 데이터 경로를 HC900 직접 통신으로 대체.

- industrial-comm/cpp: C++ Modbus 게이트웨이 (gRPC 서버)
- src: C# .NET 8 ASP.NET Core 크롤러 + 웹 UI (3-Layer)
- mcp-server: Python FastMCP (RAG/NL2SQL/P&ID)
- 다중 컨트롤러(N-Controller) 지원

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 20:28:14 +09:00

53 lines
1.6 KiB
YAML

measurement:
f: flow
p: pressure
t: temperature
l: level
a: analysis
s: speed
w: weight
d: density
j: power
h: moisture
modifiers:
i: { role: indicator, virtual: true }
r: { role: recorder, virtual: true }
t: { role: transmitter, data_points: [.pv] }
c: { role: controller, data_points: [.sp, .op] }
q: { role: totalizer, data_points: [.qv, "qv.value"] }
s: { role: switch, data_points: [.instate0, .instate1] }
a: { role: alarm }
y: { role: interlock-relay }
z: { role: positioner }
auto_pair:
- if_role: controller
create:
role: control-valve
id_pattern: "{meas}cv-{loop}"
display_pattern: "{MEAS}CV-{loop}"
special_prefixes:
xv: { role: shutdown-valve, measures: null }
sdv: { role: shutdown-valve, measures: null }
fy: { role: interlock-relay, measures: flow }
fz: { role: positioner, measures: flow }
p: { role: power_equipment, measures: null, equipment_type: pump }
k: { role: power_equipment, measures: null, equipment_type: compressor }
ag: { role: power_equipment, measures: null, equipment_type: agitator }
b: { role: power_equipment, measures: null, equipment_type: blower }
f: { role: power_equipment, measures: null, equipment_type: fan }
confidence:
high_when:
- prefix matches measurement OR special_prefixes
- all modifiers resolved
- data_points present and consistent
medium_when:
- prefix matches but some data_points missing
- modifiers contain unknown letter
low_when:
- special_prefixes only AND data_points unusual
- first letter not in measurement table