Extending a Programmable Logic Controller with Apps

US2016239011A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016239011-A1
Application numberUS-201615040565-A
CountryUS
Kind codeA1
Filing dateFeb 10, 2016
Priority dateFeb 12, 2015
Publication dateAug 18, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A programmable logic controller comprises a processor, a PLC operating environment, a device memory, and an app container. The PLC operating environment is configured to execute a controller automation program providing a plurality of skill functions. The device memory comprises a plurality of apps which are configured to perform a discrete set of automation functions using the plurality of skill functions. The app container is logically separate from the PLC operating environment and configured to provide a runtime environment for the apps.

First claim

Opening claim text (preview).

We claim: 1 . A programmable logic controller comprising: a processor; a PLC operating environment configured to execute a controller automation program providing a plurality of skill functions; a device memory comprising a plurality of apps configured to perform a discrete set of automation functions using the plurality of skill functions; and an app container that is logically separate from the PLC operating environment, wherein the app container is configured to provide a runtime environment for the plurality of apps. 2 . The programmable logic controller of claim 1 , further comprising a real-time data backbone configured to maintain state information associated with the plurality of skill functions, the plurality of apps, and one or more processes under control of the programmable logic controller. 3 . The programmable logic controller of claim 2 , further comprising a communications container configured to facilitate communication between the real-time data backbone and one or more external sources. 4 . The programmable logic controller of claim 3 , wherein the one or more external sources comprise a second real-time data backbone in a second programmable logic controller. 5 . The programmable logic controller of claim 2 , wherein the app container comprises a local shared memory and the app container is further configured to (i) update the local shared memory prior to execution of the plurality of apps during a scan cycle and (ii) write any changes to the real-time data backbone at the beginning of a subsequent scan cycle immediately following the scan cycle. 6 . The programmable logic controller of claim 1 , wherein the plurality of apps comprises one or more app sequences and the app container is configured to execute each of the one or more app sequences in one or more single threaded schedulers. 7 . The programmable logic controller of claim 6 , wherein the app container is configured to sequentially execute apps included in each of the one or more app sequences. 8 . The programmable logic controller of claim 7 , wherein each of the one or more app sequences is executed by a distinct single threaded scheduler. 9 . The programmable logic controller of claim 8 , wherein the plurality of apps comprises one or more un-sequenced apps executing asynchronously in a thread distinct from each distinct single thread scheduler used to execute to the one or more app sequences. 10 . The programmable logic controller of claim 1 , wherein the app container is configured to trigger execution of at least a first portion of the plurality of apps in response to receive an indication of an external event. 11 . The programmable logic controller of claim 10 , wherein the app container is configured to execute a second portion of the plurality of apps according to a scan cycle. 12 . A programmable logic controller comprising: a PLC operating environment configured to execute a controller automation program providing a plurality of skill functions; a device memory comprising a plurality of apps configured to perform a discrete set of automation functions using the plurality of skill functions; a first instance of an app container that is logically separate from the PLC operating environment, wherein the first instance of the app container is configured to provide a first runtime environment for a first subset of the plurality of apps; a second instance of the app container that is logically separate from the PLC operating environment, wherein the second instance of the app container is configured to provide a second runtime environment for a second subset of the plurality of apps. 13 . The programmable logic controller of claim 12 , wherein the first subset of the plurality of apps comprises one or more cycle-synchronous apps; and the second subset of the plurality of apps comprises one or more free running apps. 14 . The programmable logic controller of claim 12 , further comprising a real-time data backbone operably coupled to the first instance of the app container and the second instance of the app container, wherein the real-time data backbone is configured to maintain state information associated with the plurality of apps and one or more processes under control of the programmable logic controller. 15 . The programmable logic controller of claim 14 , further comprising a communications container configured to facilitate communication between the real-time data backbone and one or more external sources. 16 . The programmable logic controller of claim 14 , wherein the first instance of the app container and the second instance of the app container each comprise a local shared memory updated with app state information during a scan cycle of the programmable logic controller. 17 . The programmable logic controller of claim 16 , wherein any changes to the local shared memory are written to the real-time data backbone at the beginning of a subsequent scan cycle immediately following the scan cycle. 18 . The programmable logic controller of claim 12 , wherein the first subset of the plurality of apps comprises one or more app sequences and the first instance of the app container is configured to execute each of the one or more app sequences in a distinct single threaded scheduler. 19 . The programmable logic controller of claim 18 , wherein the first instance of the app container is configured to sequentially execute apps included in each of the one or more app sequences. 20 . The programmable logic controller of claim 19 , wherein the first instance of the app container is further configured to execute at least one of the apps asynchronously in a thread which is separate from execution of other apps included in each of the one or more app sequences. 21 . The programmable logic controller of claim 18 , wherein the second subset of the plurality of apps comprises one or more un-sequenced apps executing asynchronously in a thread distinct from each distinct single thread scheduler used to execute to the one or more app sequences. 22 . A programmable logic controller comprising: a PLC operating environment configured to execute a controller automation program; one or more app containers configured to provide a runtime environment for the plurality of apps; and a real-time data backbone configured to maintain state information associated with the plurality of apps and to facilitate communication between the plurality of apps and the PLC operating environment.

Assignees

Inventors

Classifications

  • G05B19/05Primary

    Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts · CPC title

  • Pc implements plc, in application program, plc instruction register · CPC title

  • G05B19/042Primary

    using digital processors (G05B19/05 takes precedence) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016239011A1 cover?
A programmable logic controller comprises a processor, a PLC operating environment, a device memory, and an app container. The PLC operating environment is configured to execute a controller automation program providing a plurality of skill functions. The device memory comprises a plurality of apps which are configured to perform a discrete set of automation functions using the plurality of ski…
Who is the assignee on this patent?
Siemens Ag
What technology area does this patent fall under?
Primary CPC classification G05B19/05. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Aug 18 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).