fledge-power / fledge-south-iec61850

A south plugin for collecting data via the IEC 61850 protocol
3 stars 5 forks source link

Report instance handling #31

Closed JakobVogelsang closed 6 months ago

JakobVogelsang commented 7 months ago

There can be multiple instance of a report in a server. It has to be to allow multiple clients to use the same report. Say there is a report with all switchgear position of a bay and I want to have that information in the SCADA forwarded by the gateway in also in the local HMI.

Because there are multiple instances, we need to decide somehow which is connected to which client. There are two approaches to go about this in my opinion:

  1. The client(s) are smart enough to handle that. Say client A wants to use a specific report. It then starts to ask the server which instance of that server are already active and reserved and just picks the first unused not reserved one. The setting to configure would then be an object reference to the report, not a specific instance, say IEDLDevice/LLN0.xx.ReportControlName. With this approach, a direct linking of a client to a report instance in not necessary. This approach needs some extra code in this fledge power plugin.
  2. Use the SCL file to make the link. Unfortunately, SCL does not allow doing a clear mapping of a client to a report instance. But we can work with the order of the client mappings. The first client mapped to a report get the first instance, the second one the second and so on. For this plugin, this means the configuration is pointing to a report instance like so IEDLDevice/LLN0.xx.ReportControlName01.

Is there already a preferred approach. At the moment I think it is 1. but as in DEVELOPMENT not yet fully implemented.

JakobVogelsang commented 6 months ago

I think we can close this one as well. Option 2 is implemented.