# US 2020/0034218 A1 · Device-based Engineering System for Programmable Logic Controllers

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

- Number: US 2020/0034218 A1
- Document ID: US20200034218A1
- Status: Published application
- Kind: A1
- Application number: 16/491,308
- Filed: 2018-03-09
- Published: 2020-01-30
- Earliest claimed: 2017-03-16
- Assignees: Siemens Aktiengesellschaft
- Applicants: Siemens Aktiengesellschaft
- Inventors: Gustavo Arturo Quiros Araya; Georg Muenzel; Swen Elpelt; Kai Liu; Jörg Neidig; Andreas von Schwerin
- Web page: https://patentgrep.com/patent/US20200034218A1

## CPC

- G06F 9/45533: {Hypervisors; Virtual machine monitors}
- G06F 9/546: {Message passing systems or structures, e.g. queues}
- G05B 19/056: {Programming the PLC}
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 9/541: {via adapters, e.g. between incompatible applications}
- G06F 16/972: {Access to data in other repository systems, e.g. legacy data or dynamic Web page generation}
- G05B 2219/13144: GUI graphical user interface, icon, function bloc editor, OI operator interface
- G05B 2219/15011: Configuration of operating system
- G06F 2009/45579: {I/O management, e.g. providing access to device drivers or storage}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- 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)

## Abstract

A system for configuration and control of a device includes a device processor includes at least two processing cores. Device firmware executes on a first processing core and a device-based engineering server executes on a second processing core. A web server running on the device-based engineering server includes a webApp providing web-based functionality for configuration and control of the device. The webApp is downloaded from the web server to the user's browser. A hypervisor manages communication between the device firmware and the device-based engineering server. A communication path established in the hypervisor for communicating a configuration or control instruction to the device firmware. The configuration or control instruction is initiated by a user via a web browser. The users web browser may run on a computer workstation that does not otherwise meet processing requirements of an engineering system for the device.

## Claims

### Claim 1

A system for configuration and control of a device comprising:
a device processor comprising at least two processing cores, the device processor configured to control a physical equipment system;
a device firmware executed by one or more processing cores of the at least two processing cores; and
a device-based engineering server executed on one or more processing cores of the at least two processing cores independent of the device firmware for performing engineering services related to configuration and control of the device.

### Claim 2 (depends on 1)

The system of claim 1, further comprising:
a web server running on the device-based engineering server; and
a webApp for performing web-based functionality for configuration and control of the device.

### Claim 3 (depends on 2)

The system of claim 2, further comprising:
a repository of engineering business logic in communication with the device-based engineering server.

### Claim 4 (depends on 2)

The system of claim 2, further comprising:
a hypervisor configured to manage communication between the device firmware and the device-based engineering server; and
a communication path established in the hypervisor for communicating a configuration or control instruction to the device firmware.

### Claim 5 (depends on 4)

The system of claim 4, wherein the configuration or control instruction is initiated by a user via a web browser in communication with the web server running on the device-based engineering server.

### Claim 6 (depends on 5)

The system of claim 5, wherein the user's web browser is running on a computer workstation, the computer workstation not meeting processing requirements of an engineering system for the device.

### Claim 7 (depends on 2)

The system of claim 2, further comprising:
a second web server executing within the device firmware and in communication with the device runtime system, the second web server configured to receive a request from a user via a web browser and to provide real-time information about the device to the user via the user's web browser.

### Claim 8 (depends on 2)

The system of claim 2, further comprising:
web services for device-based engineering in communication with the web server, configured to allow the webApp to be downloaded to a user's web browser.

### Claim 9 (depends on 8)

The system of claim 8, wherein the web services for device-based engineering comprises at least one of hypertext markup language and JavaScript.

### Claim 10 (depends on 1)

The system of claim 1, wherein the device is a programmable logic controller.

### Claim 11

A method of configuration or programming of a device having a processor and at least two processing cores within the processor, comprising:
in a first processing core of the processor, executing a runtime system for the device; and
in a second processing core, executing an engineering system for configuration or programming of the device.

### Claim 12 (depends on 11)

The method of claim 11, further comprising:
on the second processing core, executing a device-based engineering server, the device-based engineering server hosting a first web server.

### Claim 13 (depends on 12)

The method of claim 12, further comprising:
hosting on the first web server, a device-based engineering webApp and device-based engineering web services.

### Claim 14 (depends on 13)

The method of claim 13, further comprising:
storing a repository of device-based engineering business logic in data communication with the device-based engineering server executing on the second processing core.

### Claim 15 (depends on 12)

The method of claim 12, further comprising:
downloading the webApp to a user's web browser in response to a request from the user to perform engineering tasks relating to the device.

### Claim 16 (depends on 15)

The method of claim 15, further comprising:
loading information representative of information generated by the device-based engineering server to render a graphical user interface (GUI) on the user's web browser, the GUI configured to offer features found in an engineering system.

### Claim 17 (depends on 16)

The method of claim 16, wherein the device is a programmable logic controller (PLC) and the GUI is configured to offer at least one of: browsing a PLC configuration, opening function and data blocks of the PLC, viewing parameters or program code, editing parameters and program code, and compiling and activating configuration or program code of the PLC.

### Claim 18 (depends on 12)

The method of claim 12, wherein the device comprises a programmable logic controller (PLC).

### Claim 19 (depends on 18)

The method of claim 18, further comprising:
executing on the first processing core, a second web server.

### Claim 20 (depends on 19)

The method of claim 19, further comprising:
downloading via the second web server to a web browser of a user, information relating to execution of the PLC including monitoring and diagnostics services.
