Wireless device with a control engine using functional block programming
First Claim
Patent Images
1. A controller apparatus comprising:
- at least one processor and a memory;
a low power wireless network interface coupled to the at least one processor; and
a control engine executable by the at least one processor from the memory and operable to;
receive a command and one or more identifiers specifying one or more function blocks associated with the one or more identifiers, each of the one or more function blocks comprising a unit of execution of an application executing on the controller apparatus,perform one or more operations on the one or more function blocks in accordance with the command and the one or more identifiers, andcoordinate the operations on the one or more function blocks and interpretation of the function blocks of the application such that execution of the control engine and the application continue without restarting the control engine and the application.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods provide for programming a wireless device for an automation system. The system and methods include specifying commands that are to be preformed regarding function blocks that may be organized into an application on a wireless device. The function blocks may be maintained in a library by a control engine on the wireless device. The control engine receives commands related to function blocks, such as instantiating function blocks from the library or linking existing function blocks. The control application formed by the function blocks may be executed on the controller to provide an automation application.
24 Citations
30 Claims
-
1. A controller apparatus comprising:
-
at least one processor and a memory; a low power wireless network interface coupled to the at least one processor; and a control engine executable by the at least one processor from the memory and operable to; receive a command and one or more identifiers specifying one or more function blocks associated with the one or more identifiers, each of the one or more function blocks comprising a unit of execution of an application executing on the controller apparatus, perform one or more operations on the one or more function blocks in accordance with the command and the one or more identifiers, and coordinate the operations on the one or more function blocks and interpretation of the function blocks of the application such that execution of the control engine and the application continue without restarting the control engine and the application. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
presenting an interface allowing selection from a plurality of function block identifiers for a control system; receiving through the interface a selection of one or more of the plurality of function block identifiers and a command; transmitting the selection and the command through a low power wireless interface to a controller for the control system; determining in accordance with the selection and the command an operation to perform on one or more function blocks on the controller, the one or more function blocks comprising a unit of execution; specifying how the one or more function blocks are exposed to a domain expert during an assembly process via a slot, wherein the slot is a member of a component class, and wherein the slot comprises a configuration property, a runtime variable, or an action that defines a command that can be invoked for the one or more function blocks; and coordinating the operation on the one or more function blocks and interpretation of function blocks of an application such that execution of the application formed by the one or more function blocks continues without restarting the application. - View Dependent Claims (10, 11, 12)
-
-
13. A method comprising:
-
receiving by a controller a command and one or more identifiers specifying one or more function blocks associated with the one or more identifiers, each of the one or more function blocks comprising a unit of execution; compiling the one or more function blocks into a kit comprising a single binary image file; and performing one or more operations on one or more function blocks on the controller in accordance with the command and the one or more identifiers; wherein the one or more function blocks are included in an application executing on the controller, wherein the controller coordinates the operations on the one or more function blocks and interpretation of function blocks of the application such that the application is not restarted after performing the one or more operations on the one or more function blocks. - View Dependent Claims (14, 15, 16)
-
-
17. A system comprising:
-
a control engine for a controller, the control engine operable to maintain a plurality of function blocks, each of the function blocks comprising a unit of execution of an application executing on the controller; a function block programming tool operable to; provide an interface to select one or more identifiers associated with one or more function blocks and for selecting a command, and transmit the command and the one or more identifiers to the control engine over a low power wireless network interface; wherein the control engine, upon receiving the command and the one or more identifiers performs an operation related to one or more function blocks identified by the one or more identifiers in accordance with the command and coordinates the operation related to the one or more function blocks and interpretation of the function blocks of the application such that the control engine and the application are not restarted after performance of the operation related to the one or more function blocks. - View Dependent Claims (18, 19, 20, 21, 22)
-
-
23. A non-transitory machine-readable medium having stored thereon machine-executable instructions for causing one or more processors to perform operations comprising:
-
presenting an interface allowing selection from a plurality of function block identifiers for a control system; receiving through the interface a selection of one or more of the plurality of function block identifiers and a command; transmitting the selection and the command through a low power wireless network interface to a controller for the control system; determining in accordance with the selection and the command an operation to perform on one or more function blocks on the controller, each of the one or more function block comprising a unit of execution of an application executing on the controller; and coordinating the operation on the one or more function blocks and interpretation of function blocks of an application such that execution of the controller and the application formed by the one or more function blocks continues without restarting the controller and the application. - View Dependent Claims (24, 25, 26)
-
-
27. A non-transitory machine-readable medium having stored thereon machine-executable instructions for causing one or more processors to perform operations comprising:
-
receiving by a controller a command and one or more identifiers specifying one or more function blocks associated with the one or more identifiers; and performing one or more operations on one or more function blocks on the controller in accordance with the command and the one or more identifiers; wherein the one or more function blocks are included in an application executing on the controller, wherein the controller is configured to coordinate the operations on the one or more function blocks and to interpret the function blocks of the application such that the controller and the application are not restarted after performing the one or more operations on the one or more function blocks. - View Dependent Claims (28, 29, 30)
-
Specification