# US 10,871,768 B2 · Apparatus, device and computer implemented method for automatic generation of SCADA slave interface

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,871,768 B2
- Document ID: US10871768B2
- Status: Granted
- Kind: B2
- Application number: 16/163,952
- Filed: 2018-10-18
- Published: 2020-04-23
- Granted: 2020-12-22
- Earliest claimed: 2018-10-18
- Assignees: WäRtsilä North America, Inc.
- Applicants: WäRtsilä North America, Inc.
- Inventors: Sen Zhang; Murat Bayraktar; Nikolai Teleguine
- Web page: https://patentgrep.com/patent/US10871768B2

## CPC

- G05B 19/4186: {by protocol, e.g. MAP, TOP}
- G01R 19/2513: {Arrangements for monitoring electric power systems, e.g. power lines or loads; Logging}
- G05B 15/02: electric
- G05B 19/4183: {characterised by data acquisition, e.g. workpiece identification}
- G06F 9/44505: {Configuring for program initiating, e.g. using registry, configuration files}
- G06Q 50/06: Energy or water supply
- G05B 2219/24215: Scada supervisory control and data acquisition
- G05B 2219/2639: Energy management, use maximum of cheap power, keep peak load low
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)
- G01R: MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES (indicating correct tuning of resonant circuits H03J3/12)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

A computer implemented method at an energy management system (EMS) controller apparatus for automatic generation of a SCADA (supervisory control and data acquisition) slave interface for an energy management system (EMS), includes storing a SCADA configuration file mapping SCADA data points to EMS data objects; providing the EMS data objects coded in statically typed programming language; providing site configuration information of the energy management system (EMS); scanning, by an object access framework (OAF), EMS data objects with EMS annotations and combining them with the site configuration information to generate an object binding repository (OBR); and compiling the SCADA configuration file to combine the SCADA data points mapping with the object binding repository to generate SCADA bindings information as part of the SCADA slave interface for the energy management system (EMS).

## Claims

### Claim 1

A computer implemented method at an energy management system (EMS) controller apparatus for automatic generation of a SCADA (Supervisory Control And Data Acquisition) slave interface for an energy management system (EMS), comprising:
storing a SCADA configuration file, the SCADA configuration file including a point map mapping SCADA data points to EMS data objects, wherein the point map is configured to define the EMS data objects accessible via the SCADA slave interface using the SCADA data points;
providing the EMS data objects coded in statically typed programming language, wherein each EMS data object comprises entity properties associated using EMS annotations;
providing site configuration information of the energy management system (EMS);
scanning, by an object access framework (OAF), EMS data objects with EMS annotations and combining them with the site configuration information to generate an object binding repository (OBR); and
compiling, by a SCADA binding framework, the SCADA configuration file to combine the SCADA data points mapping with the object binding repository (OBR) to generate communication protocol specific SCADA bindings information configured to form a part of the SCADA slave interface for the energy management system (EMS).

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
receiving a data request from a SCADA client at the SCADA slave interface;
determining, by an EMS SCADA protocol library layer, a SCADA protocol of the data request;
generating a service call to a points bridge layer in response to the determined SCADA protocol; and
converting the service call to an EMS data object call for a SCADA bindings layer.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
connecting the EMS data object call, by the SCADA bindings layer, to at least one method call to an executable EMS data object coded in a statically typed programming language.

### Claim 4 (depends on 3)

The method of claim 3, wherein the executable EMS data object call is connected via an object access framework (OAF) layer to an EMS object layer.

### Claim 5 (depends on 3)

The method of claim 3, wherein the EMS data object call is connected to at least one EMS device or EMS service of the EMS object layer.

### Claim 6 (depends on 4)

The method of claim 4, wherein the object access framework (OAF) layer is configured to provide binding and metadata.

### Claim 7 (depends on 1)

The method of claim 1, wherein the EMS data object comprises at least one of the following:
an energy resource equipment;
an energy storage system (ESS);
a measurement device;
a software logic status; and
an operation setpoint.

### Claim 8 (depends on 1)

The method of claim 1, wherein the SCADA data point comprises at least one of the following received information:
equipment status data;
state of charge (SOC) of an energy storage system;
measurement readings;
real power or reactive power status information;
temperature information; and
fault status information.

### Claim 9 (depends on 1)

The method of claim 1, wherein the SCADA data point comprises at least one of the following transmitted information:
start command;
stop command;
reset command; and
update setpoint command.

### Claim 10 (depends on 1)

The method of claim 1, wherein the SCADA slave interface is configured to operate using at least one of the following protocols;
DNP3; and
Modbus.

### Claim 11 (depends on 10)

The method of claim 10, wherein the SCADA data point is configured to comprise:
a register in Modbus; or
a point or an object in DNP3.

### Claim 12 (depends on 1)

The method of claim 1, wherein the EMS annotations comprising at least one of the following:
indication which EMS data objects are part of public API; and
metadata.

### Claim 13 (depends on 12)

The method of claim 12, wherein the metadata comprising at least one of the following:
units of measurement; and
human-readable descriptions.

### Claim 14 (depends on 1)

The method of claim 1, wherein the SCADA configuration file comprises at least one of the following protocol information:
data type used;
encoding information; and
point positions and their mapping to physical EMS device properties.

### Claim 15 (depends on 1)

The method of claim 1, wherein the SCADA slave interface for an energy management system (EMS) comprising at least one of:
a first slave interface for a remote terminal unit (RTU) for controlling the EMS; and
a second slave interface for a local access for status monitoring and support.

### Claim 16 (depends on 15)

The method of claim 15, wherein at the energy management system (EMS) controller apparatus, a HTTPS Web based human-machine interface is configured to control the EMS system remotely using Web browsers.

### Claim 17

A controller apparatus for an energy management system (EMS) for automatic generation of SCADA slave interface, the controller apparatus comprising:
a communication interface configured to transceive information with a SCADA client and EMS data objects;
at least one processor; and
at least one memory including computer program code;
the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to:
store a SCADA configuration file, the configuration file including a point map mapping SCADA data points to EMS data objects, wherein the point map is configured to define the EMS data objects accessible via the SCADA slave interface using the SCADA data points;
provide the EMS data objects coded in statically typed programming language, wherein each EMS data object comprises entity properties associated using EMS annotations;
provide site configuration information of the energy management system (EMS);
scan, by an object access framework (OAF), EMS data objects with EMS annotations and combining them with the site configuration information to generate an object binding repository (OBR); and
compile, by a SCADA binding framework, the SCADA configuration file to combine the SCADA data points mapping with the object binding repository (OBR) to generate SCADA bindings information configured to form a part of the SCADA slave interface for the energy management system (EMS).

### Claim 18

A computer program embodied on a computer readable non-transitory medium comprising computer executable program code, which code, when executed by at least one processor of an apparatus, causes the apparatus to:
store a SCADA configuration file, the configuration file including a point map mapping SCADA data points to EMS data objects, wherein the point map is configured to define the EMS data objects accessible via the SCADA slave interface using the SCADA data points;
provide the EMS data objects coded in statically typed programming language, wherein each EMS data object comprises entity properties associated using EMS annotations;
provide site configuration information of the energy management system (EMS);
scan, by an object access framework (OAF), EMS data objects with EMS annotations and combining them with the site configuration information to generate an object binding repository (OBR); and
compile, by a SCADA binding framework, the SCADA configuration file to combine the SCADA data points mapping with the object binding repository (OBR) to generate SCADA bindings information configured to form a part of the SCADA slave interface for the energy management system (EMS).
