Straton 튜토리얼 2: IEC 61850에서 MMS 통신 마스터하기
소개
안녕하세요, IEC 61850 표준에 대한 두 번째 튜토리얼입니다. 올바르게 따라오려면 첫 번째 튜토리얼을 읽는 것을 강력히 권장합니다. 그 끝에서부터 엔지니어링을 계속하기 때문입니다.
링크: Straton 튜토리얼 1: PLCnext Engineer와 Straton 간 데이터 교환
이 글에서는 표준 전체를 다루지 않으므로 이미 표준에 익숙한 분들을 대상으로 합니다.
이 기사는 이 표준의 두 통신 프로토콜 중 하나인 MMS(Manufacturing Message Specification)에 초점을 맞춰 Straton에서 프로그래밍하는 방법을 자세히 설명합니다.
이 프로토콜은 실제 장치와 기능을 모델링하고, 실시간 조건에서 정보와 프로세스 데이터를 교환하는 데 사용됩니다. 이 통신은 클라이언트-서버 원칙에 기반하며 네트워크 아키텍처에서 수직으로 이루어집니다.
MMS에는 두 가지 메커니즘이 있습니다:
- 요청-응답 메커니즘: 클라이언트와 서버 간 연결 초기에 수행됩니다. 클라이언트는 연결 설정 전 정보를 읽어야 합니다. 클라이언트는 폴링으로 읽거나, 서버에서 명령 실행으로 쓸 수 있습니다.
- 보고 메커니즘: 서버가 사용자가 애플리케이션과 IEC 61850 표준에 따라 정의한 경우에만 데이터를 전송합니다. SCADA 애플리케이션에 자주 사용됩니다.

튜토리얼 2 - MMS 통신
- PLCnext Engineer와 Straton 간 데이터 교환이 구성됐으면 필드버스 구성에 IEC 61850 서버를 삽입해야 합니다. "구성 삽입" 클릭 → "IEC 61850 Server incl. GOOSE" 선택. 표준은 MMS 서버 역할에 TCP 포트 102를 정의합니다.

- SCL(Substation Configuration description Language)을 통해 IED(Intelligent Electronic Device) 구성 가능. Tools 탭에서 SCL 에디터 열기.

- IED를 더블클릭해 SCL의 통신 부분 구성.

- 두 개의 필수 논리 노드 LLNO와 LPHD 추가. 기본 데이터 객체는 이미 선택돼 있으며, 체크박스 클릭으로 더 추가 가능.

- 자체 논리 노드 생성해 처리할 데이터 포함. GGIO(범용 논리 노드) 생성. PLCnext Engineer에서 두 개의 알람(BOOL)을 임포트했으니 두 개의 SPS(Single Point Status) 데이터 객체 임포트부터 시작. SPC(Single Point Controllable) 데이터 객체도 구성해 4번째 튜토리얼에서 클라이언트로부터 명령 전송에 활용 예정.
두 번째 알람용으로 자체 SPS 생성 필요.

생성한 데이터 객체(Ind2)의 데이터 속성(stVal, q(quality), t(timestamp)) 선택 필요.

이제 여러 유형의 명령에서 사용할 수 있도록 SPC의 데이터 속성 구성.

- 데이터 세트 추가: 데이터 모델에 포함된 데이터 객체/데이터 속성 참조의 순서 있는 그룹을 포함하며 61850 클라이언트와 공유됨. 표준에 따라 데이터 세트는 논리 노드 일부이며 주로 LLN0에 포함.

더블클릭 후 적절한 데이터 선택.

- 리포트 제어 블록(RCB) 추가 후 구성: 유형 선택, 데이터 세트와 연결, 적절한 선택적 필드와 트리거 옵션 선택.

- 이 도구에는 구문 검사기도 있습니다. 클릭하면 로그에 오류 표시. 오류 클릭 후 기본 옵션 누르기 반복해 "검사 성공(Check succeeded)" 메시지 나올 때까지. 파일 저장 잊지 마세요.

- SCL 준비 완료. 메인 프로젝트로 가져오기: 필드버스 구성에서 IEC61850 Server incl. GOOSE 우클릭 → "SCL 파일에서 변수 읽기" 선택.

"삽입" 클릭 후 방금 만든 SCL 파일 임포트 → 데이터 객체의 데이터 속성 선택해 프로그램에서 변수로 사용. 타임스탬프 선택 안 하면 런타임 스택이 자동 처리.

- 마지막 단계: MODBUS로 임포트한 PLCnext 변수를 SCL로 생성한 변수와 매핑. 프로젝트 트리의 "프로파일" 탭 → IEC61850S2 선택 → MODBUS 변수 이름을 61850 변수의 "이름" 열에 복사 붙여넣기.

- 이제 61850 가상 클라이언트에서 61850 서버 변수를 온라인으로 읽습니다. Straton Editor에도 이 도구가 있어 구성 매우 쉽습니다. 연결할 IP 주소만 구성하면 됩니다. IEDExplorer에 익숙하다면 그것도 잘 작동합니다.

이제 PLCnext Engineer에서 변수를 토글하고 61850 클라이언트가 61850 서버에서 읽는 효과를 확인하세요.

읽어주셔서 감사합니다. 다음 튜토리얼은 진행 중입니다.