Git Product home page Git Product logo

open-scd's People

Contributors

apupier avatar ca-d avatar clepski avatar danyill avatar davoodsooran avatar dlabordus avatar flurb avatar fossabot avatar github-actions[bot] avatar jakobvogelsang avatar jarradraumati avatar juancho0202 avatar mandurisaimounika avatar marcvanraalte avatar pascalwilbrink avatar sander3003 avatar stef3st avatar trusz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

open-scd's Issues

Log information cannot be read

On small devices and with long strings from the schema validator the information cut off. This is unfortune especially for schema validation.

Add error/warning log

Add a log displaying error and warning messages along with their "viewed" status.

Add bay editor

Add a container that displays and manipulates the bay element in the substation section of the SCL file.
The following user interaction shall be included

  • add conducting equipment of the type CBR
  • add conducting equipment of the type DIS
  • add conducting equipment of the type DIS with a single Terminal that has a cNodeName="grounded"
  • add conducting equipment of the type CTR
  • add conducting equipment of the type VTR
  • add power transformer element
  • edit name and desc attribute of the bay element
  • delete the bay element
  • add LNode to the bay element - opens UI to connect and save the bay element in the destination filter
  • copy bay structure (excluding the LNode)
  • move bay element to any voltage level element in the file

Log Information

Hey,
I am not sure If there is a purpose to keep the System behavior in the Log section as well.
But since I save the project, or change the language in the left toolbar, It didn't appear in the logs.

Additionally
2020-12-18 11_25_54-OpenSCD and 1 more page - Work - Microsoft​ Edge
It would be better to have white text on the toolbar when you turn on the dark theme. Its nearly not visible

Add LNode connection container to the substation editor

The LNode connection container shall manipulate LNode elements to all substation section elements.

  • as source all IEDs shall be allowed
  • add filter for source IED names
  • as destination all substation section elements up to the conducting equipment level shall be possible
  • add filter for source element (use CSS pattern: substation name > voltage level name > bay name > conducting equipment name)
  • show example filter in the textfield
  • show default logical nodes for specific element (conducting equipment of type CTR,VTR,CBR,DIS)
    • for conducting equipment of type CBR: CILO,CSWI,XCBR
    • for conducting equipment of type DIS: CILO,CSWI,XSWI
    • for conducting equipment of type CTR: TCTR
    • for conducting equipment of type VTR: TVTR
  • otherwise show the complete data model up until the logical node level as a tree with all nodes folded as default

Allow following user interaction in the editor:

  • create LNode
    • only when substation element and logical node are selected
    • if filter for destination leaves one possible element this a valid selection
  • delete LNode
    • only if LNode is selected

Note: Visualize LNode in subequipment as well but not allow to add/delete LNodes to subequipment

Add copy/paste functionality to the substation editor

Substation elements as Bay and VoltageLevel do not vary a lot in their structure in a substation. This is especially true for the Bay element.
Copying a Bay element structure and pasting to the same or other parent elements would be a speed booster.

Restrictions:
-Make sure that then name attribute is unique
-Make sure that all LNode elements stay unique

Allow re-opening of the same file

<open-scd> is currently only listening to #file-input's change event, meaning a file is not loaded if it's the same file as before.

We could either implement a "reload file" button parsing the same File object again or listen to something like #file-input's click event, checking whether the selected file has changed, and asking whether to reload if not.

Fix wizard-textfield helper behavior for initially nulled value

Add a <wizard-textfield nullable .maybeValue=${null} helper="test"> to some lit-html template.

Expected result

textfield.helper == "No default value.";
textfield.helperPersistent == true;
await textfield.nullSwitch.click();
textfield.helperPersistent == false;
textfield.helper == "test";

Actual result

textfield.helper == "No default value.";
textfield.helperPersistent == true;
await textfield.nullSwitch.click();
textfield.helperPersistent == true;
textfield.helper == "";

add voltage level editor

Add a container that displays and manipulates the voltage level element in the substation section of the SCL file.
The following user interaction shall be included

  • add bay element
  • add power transformer element
  • edit name, desc, nomFreq, numPhases attributes as well as voltage element of the voltage level element
  • voltage element attributes shall be multiplier="k" and unit="V"
  • delete the voltage level element
  • add LNode to the voltage level element - opens UI to connect and save the bay element in the destination filter
  • copy bay structure (excluding the LNode)

Dark theme does not adapt color in drawer

Brough in with #79 . Unfortunately there is a bug in the library we are using. We are waiting for the bug fix here and are confident that the bug will be resolved in near future.

Importing IED

OpenSCD
Hey, Is there any reason that i cant import additional IEDs in to a SCD file which is already open ? It was available in previous OpenSCD.

Or should we stick to the application instructions?
2020-12-17 11_38_04-Inbox - ozan dayanc@omicronenergy com - Outlook

Errors/typos in de.ts + en.ts

At first glance, the following terms need correction:
(- old version > new, corrected version)

German:

  • Neues Project > Neues Projekt
  • IED Importieren > IED importieren
  • Lade Project {{ name }} > Lade Projekt {{ name }}
  • Bitte laden Sie eine SCL Datei, die IED Elemente enthält. > Bitte laden Sie eine SCL-Datei, die IED-Elemente enthält.

English:

  • {{ name }} read error > Error reading {{ name }}
  • {{ name }} read aborted > Aborted reading {{ name }}
  • {{ name }} added > Added {{ name }}
  • {{ name }} removed > Removed {{ name }}
  • {{ name }} moved > Moved {{ name }}

And a few capitalization errors :)
(we only capitalize all words in a term if it's a window/section header)

  • No Substation > No substation
  • Substation Name > Substation name
  • Substation Description > Substation description
  • Add Substation > Add substation
  • Edit Substation > Edit substation
  • Add Voltage Level > Add voltage level
  • Voltage Level Name > Voltage level name
  • Voltage Level Description > Voltage level description
  • Nominal Frequency > Nominal frequency
  • Number of Phases > Number of phases
  • Nominal Voltage > Nominal voltage
  • Edit Voltage Level > Edit voltage level
  • Bay Name > Bay name
  • Bay Description > Bay description
  • Add Bay > Add bay
  • Edit Bay > Edit bay
  • Conducting Equipment Name > Conducting equipment name
  • Conducting Equipment Description > Conducting equipment description
  • Conducting Equipment Type > Conducting equipment type
  • Add Conducting Equipment > Add conducting equipment
  • Edit Conducting Equipment > Edit conducting equipment
  • Select Logical Devices > Select logical devices
  • Select Logical Nodes > Select logical nodes
  • Please load a SCL file that contains IED elements first. > Please load an SCL file that contains IED elements.
  • filter > Filter

Add pretty-print

Element created with OpenSCD miss line break and tab. This is important as many users still look at the CML in simple editors to check. Add pretty-print function before saving

Create landing page

OpenSCD works on a scd file only. With the landing page the user can either create a new project (scd file) or load an existing project (scd file). The landing page shall be active as long as not project is loaded.

Custom checkValidity() in wizard-textfield does not reset customValidity

In the mwc-textfield doc it says that:
If this message is not the empty string, then the element is suffering from a custom validity error and does not validate.
When not reset to an empty string the outcome of super.checkValidity() is always false.

Possible solution would be to reset custom validity message before checking super.checkValidity().

Missing information in lnodewizard with files without IEDs

When a SCL file is loaded that does not contain any IEDs, the lnodewizard does not have any massage. Especially for those how never used the lnodewizard before might be confused.

Suggestion: Add a hint on the first page of the wizard: There

Introduce tooltips

Some of the icons buttons do not clearly tell what the functionality of the button is. To help the user a bit tooltips would be very helpful.

Suggestion: Add tooltips for all icon buttons

Update GSEcontrol with subscriber information

Edition 1 of IEC 61850-6 has an element IEDName that allows to see the subscribing IED of GSEControl and SampledValueControl. This element is not set by every vendor as is optional. Create an update function that updates the SCL file by setting this element.

As this is not a feature for a system configuration tool per-se, it shall be encapsulated in a plug-in. For the time being the plug-in shall be delivered together with OpenSCD as long as the tool is used to manipulate SCL files rather then create them.

Misleading disabled desc textfield

For someone not familiar with the standard it might be misleading that a textfield is disabled. Especially when creating new elements the predefined attributes should never be null.

Suggestion: predefined value for desc textfield should be empty string instead of null.

Add guess function to substation equipment

When no or an empty substation section is present OpenSCD shall guess the substation structure and its connection to the IED elements. Two algorithms shall be installed:

  1. Guess on CSWI assumption
    This assumption is based on the CSWI being a bay controller and therefore every IED that has at least one such logical node shall be interpreted as a bay controller.
  • For every bay controller (IED with at least one CSWI logical node) a bay shall be created.
  • If the bay controller has a joint logical node XCRB orXSWI a ConductingEquipment shall be created with the specific type attribute CBR, DIS, respectively. Joint means that the logical device CSWI resides in as well as the prefix attribute and the inst attribute of CSWI and XCBR, XSWI, respectively, match.
  • All IEDs that did not have a CSWI in their data model shall be sorted to the Bay elements based on the number of GOOSE and SMV connections. In case there are two Bay elements with the same amount of connection compared to another Bay the alphabetically first shall be chosen.
  • Naming convention for the Bay element shall be Qxx (e.g Q01)
  • Before creating Bay elements the IED elements shall be sorted alphabetically
  1. Guess based on the name attribute of the IED element
    Very often the name attribute of IED is constructed from the location of the IED within the substation structure. A typical example might be AA1E1Q01 standing for substation AA1 voltage level E1 and bay Q01. However the identifier a bay (in the example 'Q') the voltage level ( in the example 'E') might differ from region to region.
  • Allow to define identifier(s) for both voltage level's and bay's being the first inputs to the guess algorithm
  • First sort the IEDs to the voltage levels based on the defined voltage level identifiers
  • Second sort the IEDs within voltage levels to the bays based on the identifier(s) for the bay
  • Sort the Bay elements alphabetically
  1. Handling switch gear
    Adding switch gear to Bay element as ConductingEquipment independent of the ctrModel might lead to a lot unnecessary ConductingEquipment. Reason is that logical nodes CSWI, XCBR and XSWI are not only uses for switch gear in the bay but for other automation functions. That is why ctlModel shall be used to differentiate between the switch gear and other controlled objects in the bay.
  • Allow user to choose for the ctlModel of the switch gear

Restrictions:

  • name attribute of the VoltageLevel element shall be unique within the Substation element
  • name attribute of the Bay element shall be unique within the VoltageLevel element
  • name attribute of the ConductingEuipment element shall be unique within the Bay element
  • LNode element shall be unique with the substation meaning the combinations of its attributes shall be unique

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.