Method and apparatus for programming programmable controllers and generating configuration data from a centralized server
First Claim
1. A system for creating programming code for a programmable controller, the system comprising:
- a first client device coupled to a network and adapted to execute network-interfacing-application;
a second client device directly coupled to a programmable controller disposed locally to the second client device;
a server in communication with the first and second client devices over the network and located remotely from the programmable controller;
an engineering tool residing on the server, the engineering tool adapted forcreating programmable controller executable programming code for the programmable controller by a user interacting with the engineering tool via the first client device,performing diagnostic tests on the programmable controller executable programming code based on testing algorithms stored on the server, the diagnostic tests comprising simulating inputs to the programmable controller and mimicking the response of the programmable controller, and downloading the programmable controller executable programming code to the second client which is adapted to download the programmable controller executable programming code to the programmable controller, the user interaction including editing programming code via an editor provided by the server to the first client device and initiating compilation of the programming code into the programmable controller executable programming code by a compiler located on the server, the programming code adapted to cause the programmable controller to control actuators, the actuators being field devices, the engineering tool adapted for creating an XML version of the programming code, residing on the server, and accessible by the second client device; and
a memory associated with the server adapted for storing the programming code.
4 Assignments
0 Petitions
Accused Products
Abstract
A method and system for generating programming code and/or configuration data for programmable controller and the networks on which they operate is disclosed. In one embodiment, programming code is generated on a centralized server having a web-enabled engineering tool. The engineering tool operates on client devices that are in communication with the server over a network, such as the Interntet. Preferably, the engineering tool runs in a browser application (or other network-interfacing-application) on the client device and a user generates the programming code on the server with the aid of the client device. By centralizing the engineering tool, which may contain a configuration editor and a configuration management tool having version management functionality, a new business paradigm for providing engineering tool services to customers having programmable controllers. In addition, new methods and tools for collaborative engineering of programming code are enabled.
-
Citations
38 Claims
-
1. A system for creating programming code for a programmable controller, the system comprising:
-
a first client device coupled to a network and adapted to execute network-interfacing-application; a second client device directly coupled to a programmable controller disposed locally to the second client device; a server in communication with the first and second client devices over the network and located remotely from the programmable controller; an engineering tool residing on the server, the engineering tool adapted for creating programmable controller executable programming code for the programmable controller by a user interacting with the engineering tool via the first client device, performing diagnostic tests on the programmable controller executable programming code based on testing algorithms stored on the server, the diagnostic tests comprising simulating inputs to the programmable controller and mimicking the response of the programmable controller, and downloading the programmable controller executable programming code to the second client which is adapted to download the programmable controller executable programming code to the programmable controller, the user interaction including editing programming code via an editor provided by the server to the first client device and initiating compilation of the programming code into the programmable controller executable programming code by a compiler located on the server, the programming code adapted to cause the programmable controller to control actuators, the actuators being field devices, the engineering tool adapted for creating an XML version of the programming code, residing on the server, and accessible by the second client device; and a memory associated with the server adapted for storing the programming code. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method for developing programming code for a programmable controller using a server located remotely from the programmable controller and having an engineering tool residing on the server that is invokable by a network-interfacing-application on a first client device and wherein the programmable controller is directly coupled to a second client device which is disposed locally to the programmable controller and adapted to communicate with the server, the method comprising the steps of:
-
accessing, via a network, the server with the first client device; providing an interface having an editor, the editor provided by the server to the first client device and adapted to receive user interaction for editing the programming code, and access to a compiler located on the server and adapted for use by a user to create programmable controller executable programming code via the first client device, the programming code adapted to cause the programmable controller to control actuators, the actuators being field devices, the engineering tool adapted for creating an XML version of the programming code; performing diagnostic tests on the programming code based on testing algorithms stored on the server, the diagnostic tests comprising simulating inputs to the programmable controller and mimicking the response of the programmable controller; converting the programming code into a document; and downloading the document directly into the programmable controller from the server, using the second client device. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A method of programming a programmable controller comprising the steps of:
-
connecting a programmable controller directly to a first client device in communication with a server; establishing communication between the programmable controller and a the server located remotely from the programmable controller, the server containing programmable controller executable programming code generated via user interaction with a second client device in communication with the server using web-enabled engineering tools residing on the server and provided to the second client device, the programming code adapted to cause the programmable controller to control actuators, the actuators being field devices, the web-enabled engineering tools including an editor provided by the server to the second client device and a compiler located at the server and adapted for creating an XML version of the programming code; performing diagnostic tests on the programmable controller programming code based on testing algorithms stored on the server, the diagnostic tests comprising simulating inputs to the programmable controller and mimicking the response of the programmable controller; and downloading the programming code to the programmable controller via the first client device. - View Dependent Claims (28)
-
-
29. A method for programming a programmable controller comprising:
-
maintaining a web-enabled engineering tool residing on a server for creating programmable controller executable programming code on the server for the programmable controller, the web-enabled engineering tool including an editor and a compiler, and the server being located remotely from the programmable controller and the programming code adapted to cause the programmable controller to control actuators, the actuators being field devices, the server accessible via a computer network; providing a user of a first client device with access to the web-enabled engineering tool over the computer network, including providing the editor to the first client device; performing diagnostic tests on the programmable controller programming code based on testing algorithms stored on the server, the diagnostic tests comprising simulating inputs to the programmable controller and mimicking the response of the programmable controller; receiving from the first client device a markup language document containing programming code created by the user with the editor of the web-enabled engineering tool; compiling the programming code at the compiler located on the server in response to a user instruction; connecting the programmable controller locally and directly to a second client device in communication with the server; and downloading the programmable controller executable programming code to the programmable controller. - View Dependent Claims (30, 31, 32, 33, 34)
-
-
35. A method for programming a programmable controller comprising the steps of:
-
generating programmable controller executable programming code for the programmable controller on a server by accessing an engineering tool residing on the server via user interaction with a first client device, the server being located remotely from the programmable controller and the programming code adapted to cause the programmable controller to control actuators, the actuators being field devices, the engineering tool providing an editor and a compiler and adapted for creating an XML version of the programming code, the user interaction including editing programming code via the editor provided by the server to the first client device; performing diagnostic tests on the programmable controller programming code based on testing algorithms stored on the server, the diagnostic tests comprising simulating inputs to the programmable controller and mimicking the response of the programmable controller; compiling the programming code at the editor located at the server; downloading the compiled programming code to a second client device; connecting the second client device to an electronic device that is directly connected to the programmable controller; copying the compiled programming code to the electronic device; and downloading the compiled programming code from the electronic device to the programmable controller. - View Dependent Claims (36, 37, 38)
-
Specification