Diagrama unifilar (SLD)

Acerca de los diagramas unifilares

Un diagrama unifilar (también llamado diagrama de una línea) representa el sistema de energía eléctrica de una instalación o subestación usando una sola línea para representar las tres fases de un sistema de CA trifásico. Los equipos — transformadores, disyuntores, barras, motores, cargas — se muestran con símbolos estandarizados, y el camino del flujo de energía los conecta de arriba hacia abajo desde la fuente hasta la carga. Los ingenieros eléctricos, planificadores de servicios públicos y gestores de instalaciones usan los SLDs como documento de referencia primario para cada proyecto de sistema de energía: es el primer entregable en cualquier solicitud de interconexión, estudio de arco eléctrico o paquete de puesta en marcha.

Schematex sigue las convenciones de símbolos gráficos de IEEE Std 315 (ANSI Y32.2) para equipos, extendidas con la notación de configuración de devanado IEC 60617 para variantes de transformadores. Esta página documenta lo que el parser acepta hoy.

SLD·§ IEEE 315-1975
↘ preview
100%
13.8 kV Substation Single-line diagram with 10 nodes and 9 connections 13.8 kV Substation 138kV 138kV/13.8kV 13.8kV Grid 138 kV 138kV · HV Bus Δ Y Main Xfmr 15 MVA 138kV/13.8kV 13.8kV · MV Bus BKR-1 1200A BKR-2 1200A BKR-3 1200A Feeder 1 Feeder 2 Feeder 3
UTF-8 · LF · 20 lines · 646 chars✓ parsed·1.2 ms·7.3 KB SVG

1. Tu primer diagrama unifilar

El SLD más simple: una fuente de servicio público, un transformador, un disyuntor y una carga.

SLD·§ IEEE 315-1975
↘ preview
100%
Simple feeder Single-line diagram with 5 nodes and 4 connections Simple feeder 13.8kV/480V 480V Utility 13.8kV xfmr 500 kVA 13.8kV/480V 480V · 480V Bus cb1 200A Panel LP-1
UTF-8 · LF · 10 lines · 288 chars✓ parsed·0.7 ms·5.1 KB SVG

Cuatro reglas cubren el 80% del uso:

  1. Comienza con sld, seguido opcionalmente por un título entre comillas.
  2. Declara cada elemento del equipo como id = tipoNodo [atributos] — uno por línea.
  3. Conecta los elementos con desde -> hasta, añadiendo opcionalmente [cable: "…", label: "…"].
  4. Los IDs pueden contener letras, dígitos, guiones bajos e hifenes — pero deben comenzar con una letra.

Los comentarios pueden comenzar con #, // o estilo Mermaid %% en su propia línea.


2. Tipos de nodo

Una línea de nodo es id = tipoNodo [attr: valor, …]. El tipo de nodo determina el símbolo dibujado.

2.1 Fuentes

TipoSímboloUso típico
utilityFlecha de fuente de servicioBus infinito / conexión a la red
generatorCírculo con GGenerador diésel, gas o hidro
solarSímbolo de panel fotovoltaicoArreglo fotovoltaico
windSímbolo de turbinaTurbina eólica
upsBloque con bateríaSistema de alimentación ininterrumpida
SLD·§ IEEE 315-1975
↘ preview
100%
Generation sources Single-line diagram with 5 nodes and 4 connections Generation sources Grid 115 kV G Diesel Gen 2 MW PV Array 500 kW Wind Turbine 1 MW UPS UPS System 100 kVA
UTF-8 · LF · 10 lines · 316 chars✓ parsed·0.6 ms·5.1 KB SVG

2.2 Transformadores

TipoConfiguración de devanadoNotas
transformerDos devanados genéricoSin especificación de devanado
transformer_dyDelta → Estrella aterrizada (Δ-Yg)Distribución más común
transformer_ydEstrella aterrizada → Delta (Yg-Δ)
transformer_yyEstrella-Estrella (ambas aterrizadas)
transformer_ddDelta-Delta
autotransformerUn devanado con tomaSímbolo de bobina en zigzag
transformer_3windingTres devanadosTomas HV / MV / LV
SLD·§ IEEE 315-1975
↘ preview
100%
Transformer configurations Single-line diagram with 5 nodes and 4 connections Transformer configurations 138kV/13.8kV 138kV Grid Δ Y Δ-Yg (most common) 30 MVA 138kV/13.8kV Y Y Yg-Yg 10 MVA 138kV/13.8kV Autotransformer 50 MVA 138kV/69kV 3-Winding 40 MVA 138/13.8/4.16kV
UTF-8 · LF · 10 lines · 483 chars✓ parsed·0.7 ms·6.6 KB SVG

2.3 Barras y nodos

TipoSímboloUso típico
busLínea horizontal gruesaBarra principal de tensión
bus_tieDisyuntor de enlaceConecta dos barras paralelas en la misma tensión
hubRectángulo anchoPunto de combinación de múltiples alimentadores

2.4 Maniobra y protección

TipoSímboloNúmero de dispositivo
breakerDiagonal + arco52 (disyuntor de CA)
breaker_vacuumDiagonal + óvalo V52 tipo vacío
switchDiagonal (sin arco)89 (desconectador / aislador)
switch_loadSwitch interruptor de carga
ground_switchDiagonal + símbolo de tierraDesconectador de puesta a tierra
atsSímbolo de switch de transferenciaSwitch de transferencia automática
recloserDiagonal + arco + flechaDisyuntor de reconexión automática
sectionalizerDiagonal + SSeccionalizador de distribución
fuseÓvalo con diagonalFusible de expulsión
fuse_clRectángulo con diagonalFusible limitador de corriente
SLD·§ IEEE 315-1975
↘ preview
100%
Switching and protection Single-line diagram with 6 nodes and 5 connections Switching and protection Source Recloser S Sectionalizer Fuse Disconnect Ground SW
UTF-8 · LF · 12 lines · 317 chars✓ parsed·0.6 ms·5.5 KB SVG

2.5 Protección y monitoreo

TipoSímboloUso típico
ctPequeño círculo con líneaTransformador de corriente
ptPequeño círculoTransformador de potencial / tensión
relayPequeño círculo con número de dispositivoRelé de protección (número ANSI mediante device:)
surge_arresterFlecha + tierraPararrayos
ground_faultSímbolo GFIDetector de falla a tierra

2.6 Cargas y equipos

TipoSímboloUso típico
motorCírculo con MMotor trifásico
loadRectánguloCarga genérica o alimentador
capacitor_bankDos placas + switchCorrección del factor de potencia
harmonic_filterSímbolo LCFiltro de armónicos pasivo
vfdRectángulo con VFDVariador de frecuencia

2.7 Medición

TipoSímboloUso típico
watthour_meterCírculo con WhMedidor de energía
demand_meterCírculo con DMedidor de demanda
SLD·§ IEEE 315-1975
↘ preview
100%
Equipment types Single-line diagram with 10 nodes and 9 connections Equipment types 13.8kV/480V 480V Grid 13.8kV G Emergency Gen 500kW Δ Y Main TX 1000 kVA 13.8kV/480V ATS ATS-1 800A Main Breaker 2000A 480V · 480V MV Bus CT CT-1 PF Cap 150 kVAR M Pump Motor 100HP 51 Overcurrent Relay
UTF-8 · LF · 20 lines · 631 chars✓ parsed·1.0 ms·8.5 KB SVG

3. Atributos de nodo

Los atributos se escriben dentro de […] después del tipo de nodo, separados por comas.

AtributoValoresEfecto
label: "…"cadena entre comillasNombre de visualización en el diagrama
voltage: "…"cadena entre comillas, ej. "13.8kV", "480V"Anotación del nivel de tensión
rating: "…"cadena entre comillas, ej. "1000 kVA", "200A"Anotación de la clasificación del equipo
device: "…"número de dispositivo ANSI, ej. "51", "87"Se usa con nodos relay
cualquier otra clavecadena entre comillasAlmacenado como datos de placa de características (kVA del transformador, %Z, etc.)

Ejemplo con todos los atributos comunes:

xfmr = transformer_dy [
  label: "Main Transformer",
  voltage: "13.8kV/480V",
  rating: "1000 kVA",
  impedance: "5.75%Z"
]

El bloque de atributos puede abarcar múltiples líneas — el parser une las líneas hasta que el ] esté equilibrado.


4. Conexiones

Una línea de conexión es idOrigen -> idDestino, seguida opcionalmente por [cable: "…", label: "…"].

bus1 -> cb1
bus1 -> cb1 [cable: "3#2/0 AWG"]
bus1 -> cb1 [cable: "3#2/0 AWG", label: "Feeder A"]

Reglas:

  • Ambos IDs deben declararse antes o después de la conexión — todas las conexiones se validan al final del parseo.
  • Solo se acepta -> (dirigido, de fuente a carga). La dirección de la conexión se usa para el diseño.
  • Un ID de nodo desconocido lanza SLDParseError: Connection references unknown node "…".
SLD·§ IEEE 315-1975
↘ preview
100%
ATS backup with cable labels Single-line diagram with 8 nodes and 7 connections ATS backup with cable labels 480V Normal source Emergency source 3#2/0 AWG 3#4 AWG 3#4 AWG Utility 480V G Emergency Gen 500 kW ATS ATS-1 800A 480V · Critical Bus CB-1 200A CB-2 200A Server Room Life Safety
UTF-8 · LF · 16 lines · 580 chars✓ parsed·9.9 ms·6.7 KB SVG

5. Etiquetas y comentarios

  • Título: sld "Substation One-Line" — solo en la primera línea.
  • Etiqueta de nodo: id = tipo [label: "…"] — el nombre de visualización.
  • Etiqueta de conexión: A -> B [label: "…"] — aparece junto a la línea de conexión.
  • Anotación de cable: A -> B [cable: "3#2/0 AWG, 200ft"] — especificación del conductor.
  • Comentarios: # al inicio de una línea. El # en línea en la misma línea que un nodo o conexión también se elimina.
  • Alias residenciales: el vocabulario IEC / REBT como mcb, rcd, rcbo, rccb, pia, iga, main_switch, consumer_unit, distribution_board, panel y panelboard se acepta como entrada y se mapea a primitivas SLD existentes.

6. Palabras reservadas y escape

Reservadas al inicio de línea: sld (encabezado).

Token operador — evita -> dentro de los IDs de nodo. Los IDs pueden contener [A-Za-z][A-Za-z0-9_-]* — los hifenes son válidos (ej. CB-101 es un ID legal).

Bloque de atributos — los corchetes […] pueden abarcar múltiples líneas físicas. El parser une las líneas de continuación hasta que la profundidad del corchete llega a cero.

Los IDs duplicados lanzan SLDParseError: Duplicate node id "…".


7. Errores comunes

EscribisteParser diceSolución
xfmr1 [type: transformer]SLDParseError: Cannot parse lineUsa asignación con =: xfmr1 = transformer [...]
id = battery [...]SLDParseError: Unknown node type "battery"No hay tipo battery — usa ups o generator
id = breakerzSLDParseError: Unknown node type ... (did you mean 'breaker'?)Usa el tipo canónico sugerido o un alias
A -- B (bidireccional)SLDParseError: Cannot parse lineSolo se acepta ->; usa dos líneas -> si es necesario
A -> B -> C (encadenado)SLDParseError: Cannot parse lineCada conexión es un -> por línea
relay [label: "OC"] (sin número de dispositivo)Relé se renderiza con número en blancoAgrega device: "51" para el número de dispositivo ANSI
voltage: 480V (sin comillas)Valor de atributo no reconocidoPon entre comillas todos los valores: voltage: "480V"
ID de nodo comenzando con dígito: 2BUSSLDParseError: Cannot parse lineLos IDs deben comenzar con letra: BUS2
Conexión antes de declarar el nodoSLDParseError: Connection references unknown node "…"Declara los nodos antes o después de las conexiones — se validan al final del parseo, por lo que el orden es flexible

8. Gramática (EBNF)

document      = header NEWLINE ( blank | comment | node-def | connection )*

header        = "sld" ( WS quoted-string )? NEWLINE
quoted-string = '"' any-char-but-quote* '"'

node-def      = id WS "=" WS node-type ( WS "[" attr-list "]" )? NEWLINE
node-type     = "utility" | "generator" | "solar" | "wind" | "ups"
              | "transformer" | "transformer_dy" | "transformer_yd"
              | "transformer_yy" | "transformer_dd"
              | "autotransformer" | "transformer_3winding"
              | "bus" | "bus_tie" | "hub"
              | "breaker" | "breaker_vacuum" | "switch" | "switch_load"
              | "ground_switch" | "ats" | "recloser" | "sectionalizer"
              | "fuse" | "fuse_cl"
              | "ct" | "pt" | "relay" | "surge_arrester" | "ground_fault"
              | "motor" | "load" | "capacitor_bank" | "harmonic_filter" | "vfd"
              | "watthour_meter" | "demand_meter"
              | residential-alias

residential-alias
              = "mcb" | "mccb" | "rcd" | "rcbo" | "rccb"
              | "differential" | "diferencial" | "pia" | "iga"
              | "main_switch" | "isolator" | "disconnector"
              | "consumer_unit" | "distribution_board" | "panel" | "panelboard"

attr-list     = attr ( "," attr )*
attr          = key ":" WS quoted-string

connection    = id WS "->" WS id ( WS "[" conn-attrs "]" )? NEWLINE
conn-attrs    = conn-attr ( "," conn-attr )*
conn-attr     = "cable" ":" WS quoted-string
              | "label" ":" WS quoted-string

id            = [A-Za-z] [A-Za-z0-9_-]*
key           = [A-Za-z] [A-Za-z0-9_]*
comment       = ( "#" | "//" | "%%" ) any NEWLINE

El bloque de atributos […] puede abarcar múltiples líneas físicas — el parser une las líneas de continuación hasta que la profundidad del corchete vuelve a cero.

Fuente autorizada: src/diagrams/sld/parser.ts. Si esto difiere del parser, el parser tiene precedencia — por favor abre un issue.


9. Cumplimiento del estándar

Los SLDs de Schematex siguen las convenciones de símbolo gráfico de IEEE Std 315 (ANSI Y32.2) para equipos de maniobra, transformadores y fuentes. Las variantes de configuración de devanado del transformador (transformer_dy, transformer_yy, etc.) usan la notación Δ/Y de IEC 60617. Los números de dispositivo de relé de protección siguen ANSI/IEEE C37.2.

Lo que está implementado hoy:

  • ✅ Todos los tipos de fuente: servicio público, generador, solar, eólico, UPS
  • ✅ Seis variantes de transformador más autotransformador y tres devanados
  • ✅ Barra, enlace de barra, hub
  • ✅ Aliases de vocabulario residencial IEC / REBT mapeados a primitivas canónicas
  • ✅ Conjunto completo de maniobra: disyuntor, disyuntor de vacío, switch, switch de carga, switch de tierra, ATS, reconectador, seccionalizador, fusible, fusible limitador de corriente
  • ✅ Protección y monitoreo: TC, TP, relé (con número de dispositivo ANSI), pararrayos, detector de falla a tierra
  • ✅ Equipo de carga: motor, carga, banco de condensadores, filtro de armónicos, VFD
  • ✅ Medición: medidor de vatios-hora, medidor de demanda
  • ✅ Conexiones dirigidas con anotaciones de cable y etiqueta
  • ✅ Atributos de nodo label, voltage, rating, device; datos de placa de características arbitrarios
  • ⏳ Maniobra de enlace de barra con indicador de estado abierto/cerrado
  • ⏳ Zonas de protección (líneas de límite punteadas que encierran relé + TC)
  • ⏳ Bloques de etiqueta de arco eléctrico (energía incidente, nivel PPE, distancia de trabajo)
  • ⏳ Bandas de nivel de tensión (bandas horizontales automáticas con código de color por nivel de kV)

Referencias:

  • IEEE Std 315-1975 / ANSI Y32.2-1975 — Graphic Symbols for Electrical and Electronics Diagrams
  • IEC 60617:2025 (BS 3939) — Graphical symbols for diagrams
  • ANSI/IEEE C37.2 — Electrical Power System Device Function Numbers

10. Ejemplos relacionados

sld·§ IEEE 315
Utility + Generator Backup Single-line diagram with 8 nodes and 7 connections Utility + Generator Backup 480V 480V Utility 480V G Emergency Gen 500 kW 480V ATS ATS-1 800A 480V · Critical Load Bus CB1 200A CB2 200A Critical Load 1 100A Critical Load 2 100A
Generator + ATS backup power
Single-line diagram for a utility + emergency generator ATS transfer system feeding critical loads on a 480 V bus — per IEEE 315 for facility design review.
industrial & process
sld·§ IEEE 315
13.8 kV Substation Single-line diagram with 10 nodes and 9 connections 13.8 kV Substation 138 13.8 Grid 138 kV 138 · bus_hv xfmr1 kva: 15000 primary: 138 secondary: 13.8 13.8 · bus_mv brk1 brk2 brk3 Feeder 1 Feeder 2 Feeder 3
13.8 kV utility substation
13.8 kV distribution substation single-line diagram with 138 kV grid input, 15 MVA step-down transformer, and three feeder breakers per IEEE 315.
industrial & process

11. Roadmap

Planificado — aún no parseable. No uses esto en DSL generado hoy; el parser lo rechazará o ignorará.

  • Estado abierto/cerrado de enlace de barrabus_tie con atributo explícito abierto/cerrado para que el símbolo se renderice en la posición de maniobra correcta.
  • Zonas de protección — un bloque zone: o boundary: que dibuja un rectángulo punteado alrededor de un conjunto de nodos (relé + TC + disyuntor) para indicar una zona de protección.
  • Bloques de anotación de arco eléctricoarc_flash: [incident_energy: "8 cal/cm²", ppe: "2", distance: "18in"] según IEEE 1584.
  • Bandas de nivel de tensión — bandas de sombreado horizontal automáticas por nivel de kV; los nodos se colocan automáticamente en su nivel de tensión.
  • Conexión bidireccional (<->) — para rutas de enlace de barra o de conexión normalmente abierta donde la dirección no está definida.

Rastrea en los issues de GitHub si necesitas alguno de estos antes.

Found this useful?

Schematex is free, fully open source, and zero-dependency. A star helps other developers discover it.