IEC 61850 — 변전소 자동화 (MMS)
IEC 61850 은 변전소 (substation) 자동화의 국제 표준입니다. 변전소 안의 IED (Intelligent Electronic Device) — 보호 계전기, Merging Unit, 차단기 컨트롤러 — 가 공통 데이터 모델로 통신합니다. 이 게이트웨이는 IEC 61850 의 MMS (Manufacturing Message Specification) 부분을 사용합니다.
게이트웨이의 IEC 61850 드라이버는 MMS associate + Read (polling) 을 제공하므로 IED 의 상태값 / 측정값을 주기적으로 수집하는 모니터링 용도로 그대로 사용할 수 있습니다. 추가로 Reporting (BRCB/URCB), GOOSE, Sampled Values, select-before-operate, SCL 파일 기반 자동 매핑 이 필요한 경우 개발팀 문의 부탁드립니다.
등록 폼 입력값
| 입력 칸 | 무엇을 적나요 | 예시 |
|---|---|---|
| IP 주소 | IED 의 IP | 192.168.0.130 |
| 포트 | MMS 포트 | 102 (표준 ISO-on-TCP) |
| 응답 타임아웃 (request-timeout) | 응답 대기 (ms) | 5000 |
IEC 61850 은 별도의 사용자/비밀번호가 표준에는 없으며, IED 측에서 “MMS 통신 허용” 설정을 켜야 합니다 (제조사별 도구: ABB PCM600, SEL AcSELerator, Siemens DIGSI 등).
태그의 PLC 주소 표기
IEC 61850 의 데이터는 객체 지향 트리 입니다.
LD (Logical Device) / LN (Logical Node) . DO (Data Object) . DA (Data Attribute)
게이트웨이에서는 슬래시 + 달러 형식으로 입력합니다 (61850-8-1 표준 문법).
| 표기 | 의미 |
|---|---|
LD0/LLN0$ST$Mod$stVal | LD0 의 Logical Node Zero, 모드 (status) |
LD0/MMXU1$MX$A$phsA$cVal$mag$f | A 상 (phase A) 전류 측정값 (Float) |
LD0/MMXU1$MX$PhV$phsA$cVal$mag$f | A 상 전압 |
LD0/MMXU1$MX$Hz$mag$f | 주파수 |
LD0/MMXU1$MX$TotW$mag$f | 총 유효전력 |
LD0/XCBR1$ST$Pos$stVal | 차단기 1 위치 (open/close) |
LD0/PTRC1$ST$Tr$general | 보호 trip 신호 |
자주 쓰는 Logical Node 약어
| LN | 의미 |
|---|---|
MMXU | 측정값 (전류/전압/전력 — 가장 많이 읽음) |
XCBR | 차단기 (Circuit Breaker) |
XSWI | 단로기 |
PTRC | Protection Trip |
LLN0 | Logical Node Zero (전체 상태) |
GGIO | 범용 입출력 (사용자 정의) |
CDC (Common Data Class) 의 주요 DA
| DA | 의미 |
|---|---|
stVal | 상태값 (boolean / enum) |
mag.f | float 측정값 |
mag.i | integer 측정값 |
q | quality flag |
t | timestamp |
general | 일반 trip 신호 (Boolean) |
데이터 형식 매칭
| 종류 | 데이터 형식 | 형식 보조 |
|---|---|---|
| stVal (Bool / enum) | Boolean 또는 Integer | (비움) |
| mag.f (측정값) | Float | REAL |
| mag.i (정수 측정값) | Integer | DW |
| timestamp (t) | String | (비움) |
흔한 문제와 해결
| 증상 | 가능한 원인 | 해결 |
|---|---|---|
| “Association rejected” | IED 의 MMS 비활성 또는 ACSE 인증 요구 | IED 설정에서 MMS 활성, 인증 off (가능하면) |
| “Object not found” | 잘못된 LN/DO/DA 경로 | IED 의 SCL (.icd / .scd) 파일에서 정확한 경로 확인 |
| 값을 못 읽음 (FCD only) | Functional Constraint 누락 | $ST$, $MX$, $CF$ 등 FC 명시 |
| 값이 stale | 현재 드라이버는 polling 기반 — IED 의 push reporting 미수신 | timecycle 을 짧게 (1~5 초) 또는 reporting 통합이 필요하면 별도 문의 |
자주 쓰는 IED 별 실제 매핑 예
SEL-451 (Schweitzer 보호계전기)
154kV / 22.9kV 변전소에서 가장 많이 쓰이는 IED 중 하나입니다. SCL 의 dataset.icd 에 보통 다음과 같이 정의됩니다.
| 태그 이름 | 주소 | 데이터 형식 |
|---|---|---|
| A 상 전류 | LD1/MMXU1$MX$A$phsA$cVal$mag$f | Float |
| B 상 전류 | LD1/MMXU1$MX$A$phsB$cVal$mag$f | Float |
| C 상 전류 | LD1/MMXU1$MX$A$phsC$cVal$mag$f | Float |
| A 상 전압 | LD1/MMXU1$MX$PhV$phsA$cVal$mag$f | Float |
| 주파수 | LD1/MMXU1$MX$Hz$mag$f | Float |
| 총 유효전력 | LD1/MMXU1$MX$TotW$mag$f | Float |
| 차단기 1 위치 | LD1/XCBR1$ST$Pos$stVal | Integer (1=open, 2=close) |
| 51P (과전류 trip) | LD1/PTOC1$ST$Op$general | Boolean |
| 50P (순시 과전류 trip) | LD1/PIOC1$ST$Op$general | Boolean |
ABB REC615 (계전기 + 차단기 컨트롤)
| 태그 이름 | 주소 |
|---|---|
| Bay 측 측정 | CTRL/MMXU1$MX$... |
| Feeder 측 측정 | MEAS/MMXU1$MX$... |
| Trip 신호 | PROT/PTRC1$ST$Tr$general |
| 차단기 위치 | CTRL/CBCSWI1$ST$Pos$stVal |
Siemens SIPROTEC 5
LD 이름이 좀 다릅니다 (Application/MeasFlt, Control/CB1 등). DIGSI 로 export 한 SCL 을 IEC 61850 browser 도구 (예: HelinKS, Triangle MicroWorks) 로 열어 Functional Constraint (FC) + 정확한 path 확인 후 등록하세요.
자주 쓰는 운영 패턴
패턴 1. 변전소 모니터링 대시보드
IED 1대당 핵심 측정 710 점만 polling — 더 많이 받고 싶다면 본격 reporting (BRCB) 을 써야 하므로 일단 polling 단계에서는 **timecycle 15 초** 권장.
패턴 2. trip 이벤트 검출
PTOC1$ST$Op$general (boolean) 변화를 감지해 알람 발송. PlantPulse 측에서 “지난 값과 다른지” 비교는 이상치 알림 노드 / 이벤트 참고.
패턴 3. 보고서용 누적값
총 유효전력 적산 (MMTR1$MX$TotWh) 은 누적값. 표시단에서 차분으로 일/월 사용량 산출.
다음 단계
- IED 의 SCL 파일 (
*.icd/*.scd) 을 확보하시면 모든 LD/LN/DO/DA 가 정확히 나옵니다. - 본격적 GOOSE / Reporting 이 필요하시면 개발팀에 별도 문의 부탁드립니다.
- 고급 — REST API 의 IEC 61850 예제 참고.