OpenEnergyTools / scl-substation-editor

OpenSCD core editor for the `Substation` section describer in the SCL
Apache License 2.0
1 stars 1 forks source link

IED LN mapping onto LNode within Substation Section #5

Open jarradraumati opened 8 months ago

jarradraumati commented 8 months ago

Related to https://github.com/openscd/open-scd/issues/1128

@danyill suggested a pull request might be good after demonstrating earlier today. But I thought I'd outline what I propose first.

The SSD files we generate contain LNode's which are templates/typicals (iedName=None). They are clues/placeholders for a system integrator to map appropriate LNs from instantiated IEDs to show the secondary system connection to the primary system. Support for the substation section from IED vendors is somewhat lacking, but I feel it's the direction the standard is heading.

One metric to determine whether a substation has been "configured" is to see if there are any LNodes which remain unmapped after the engineering process. This can be beneficial for both the system integrator and the client to show that the specification has been met (in some aspects, but not all).

Here's an example CSWI which is intended to be mapped to a bay controller IED:

image

This CSWI is generated from a lnType template (using the Template Generator plugin which is very good). Without too much effort and very quickly a specification SSD file for the substation section can be created.

I propose that a new action is provided to allow for a LN to be mapped from a list of IEDs within the SCD:

image

Which provides a dialog window to select a LN from an instantiated IED (filters based on the lnClass, and only allows one unmapped LN):

image

This then updates the LNode attributes from the selected LN:

image

If a mistake is made, then the LN can be remapped by carrying out the action again.

I thought about an unmap button and make use of the IEC 61850-6-100 LNodeSpecNaming private element to repopulate the original LNode from the template, but LNodeSpecNaming does not have a field to keep the lnType (maybe a deficiency in the proposed namespace). The alternative is to simply not care about lnType, but it feels a bit incomplete to offer a "undo" feature which isn't an exact replica of the original LNode.

This does require some development within the scl-wizarding plugin, so I am somewhat limited in what I can contribute. But I am happy to show what I did (to be honest, it's not pretty).

Prototype Substation editor with this functionality available below (ignore the other stuff, I've been doing a fair bit of experimenting/educating myself about Lit and Material web components).

https://jarradraumati.github.io/scl-editor/

jarradraumati commented 8 months ago

And a SCD file you can use:

XAT_LLN0_mapped.zip