SimpleCORE
POWER & INDUSTRY / PROJECT

GridRender

전력망 데이터를 브라우저에서 시각화합니다.

개발 중 · 브라우저 데모

목차 7세부 내용 7
프로젝트 상세
01 / 07
RUST + WEBASSEMBLY / SVG

브라우저에서 확인하는 전력망 구조

발전소에서 송전탑·변전소를 거쳐 도시로 이어지는 전력망

발전부터 송전과 배전까지.

GridRender는 변전소 설비부터 넓은 송전망까지 전력망 데이터를 도면으로 만드는 시각화 라이브러리와 브라우저 앱입니다. 설비와 연결선을 자동 배치해 SVG로 표시합니다.

데이터를 불러와 도면을 생성하고 살펴보는 작업을 한 화면에서 수행합니다. 도면과 원본 문서를 나란히 비교하고, 확대·이동·레이블 보정으로 설비 연결을 자세히 확인합니다.

LF Energy의 PowSyBl 프로젝트에서 제공하는 Java 다이어그램 기능을 Rust로 독립 이식했습니다. 브라우저의 WebAssembly가 데이터를 계산해 도면을 생성합니다. 전력 데이터 앱·HMI·변전소 모니터링·기존 시스템 연동에 활용할 수 있습니다.

  1. 01

    전력망 데이터

    문서 불러오기 · 예제 선택

  2. 02

    자동 배치와 렌더링

    Rust / WASM → SVG

  3. 03

    도면과 문서 탐색

    확대 · 이동 · 표시 옵션

BROWSER

변전소 단선도

모선·차단기·변압기와 연결선을 자동 배치한 SLD 화면입니다. 전압 수준 하나부터 변전소·구역까지 범위를 선택하고, 설비 기호와 이름을 함께 확인합니다. 실행한 데모의 substation 예제를 영어로 캡처했습니다.

BROWSER

송전망과 자동 배치

NAD는 전압 수준 사이의 선로와 변압기 연결을 보여줍니다. Atlas2와 BasicForceLayout을 선택해 배치를 다시 계산할 수 있습니다. 캡처는 IEEE_14_bus 예제이며, 화면에 보이는 값은 샘플 데이터입니다.

BROWSER

도면과 원본 문서

Diagram·Source·Split 중 표시 방식을 선택합니다. 분할 화면에서는 도면 옆에서 입력 문서, 설정, 생성 SVG와 변환한 전력망 문서를 검색·확인합니다. 원본 문서는 구문을 강조해 표시하며 복사와 다운로드를 제공합니다.

BROWSER

표시 옵션과 읽기 편한 도면

Quick·Options·Configuration에서 표시 규칙과 설정을 조정합니다. 변경 후에도 확대·이동 상태를 유지하며 SVG DOM의 달라진 부분을 갱신합니다. 화면의 글자 크기와 겹친 레이블 위치를 보정하며, 다운로드에는 렌더러의 원본 SVG를 유지합니다.

BROWSER

전력망 데이터 시각화

예제 또는 불러온 전력망 문서로 단선도와 네트워크 도면을 생성합니다. 현재 데모에서 XIIDM/XML·JIIDM/JSON·MATPOWER·IEEE CDF의 가져오기와 내보내기를 안내하고 있으며, 형식별 구현 범위를 구분합니다. 이 화면은 기본 예제를 생성한 결과입니다.

개발 기술과 구현 범위

Rust 2021 에디션의 Cargo 워크스페이스에서 전력망 모델, 단선도, 네트워크 도면, 공통 배치 기능과 WASM 바인딩을 나눠 관리합니다. 최소 Rust 버전은 1.80이며 wasm-pack으로 브라우저용 WebAssembly와 JavaScript 바인딩을 빌드합니다.

브라우저 앱은 HTML·CSS·JavaScript 모듈로 구성하고 Web Worker를 통해 렌더링을 요청합니다. Node.js와 npm으로 개발 서버와 검사 도구를 실행합니다. 빌드한 앱은 HTTP 정적 서버에서 동작하며, 실행할 때 Java나 Cargo 프로세스가 필요하지 않습니다.

자동 배치와 SVG 생성은 Rust/WASM이 담당합니다. 확대·이동·화면 글자 크기·레이블 겹침 보정은 브라우저의 표시 계층에서 다룹니다. SVG DOM 부분 갱신은 표시 방식의 최적화이며, 엔진은 현재 전체 SVG를 계산합니다.

현재 데모는 로컬 입력 문서와 샘플을 시각화합니다. Java 백엔드의 실시간 상태와 연결하는 기능은 계획 단계입니다. 향후 백엔드가 업무 로직·원본 상태·전기적 해석을 맡고 Rust/WASM이 시각화를 담당하는 구조를 지향합니다.

실시간 변경분을 순서대로 적용하는 영속 WASM 세션과 WebSocket/SSE 연결은 후속 개발 항목입니다. 현재 SVG 갱신 기능은 화면 표시를 위한 것이며 실시간 운영 데이터와는 연동하지 않습니다. 지원 문서 형식은 가져오기·내보내기의 구현 범위에 따라 확장하고 있습니다.

Rust 렌더러와 PowSyBl에서 유래한 자료는 MPL-2.0, 별도로 작성한 SimpleCORE 브라우저 앱은 SCL-1.0 범위로 구분합니다. 상세 조건과 원본 소스 제공 범위는 데모의 라이선스 문서에서 안내합니다. PowSyBl·LF Energy의 공식 인증 제품을 의미하지 않습니다.

  • Rust
  • WebAssembly
  • SVG
  • Power systems
  • JavaScript
© 2026 SIMPLECORE INC.CONTEXT. STRUCTURE. EXPERIENCE.