IP Library Granted Patent US 9,104,185
Granted Patent B2
US 9,104,185 · App. 13/911,866 · Granted Aug 11, 2015

Industrial controller automation interface

Inventors: Jeffrey A. McKelvey (Brookfield, WI); Mike D'Amico (East Troy, WI)
Assignee: ROCKWELL SOFTWARE INC.
G05B15/02G05B19/054G05B19/056G05B19/4185G05B2219/13121G05B2219/13172G05B2219/15027G05B2219/15038G05B2219/15052G05B2219/31422G05B2219/32126G05B2219/34038
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,104,185
App. No.
13/911,866
Granted
Aug 11, 2015
Kind
B2
Abstract

An automation interface is provided for interacting with industrial controllers. The automation interface provides for programming, editing, monitoring and maintenance of industrial controllers programmatically from a local or remote location. The automation interface component is adapted to communicate with industrial controllers by integrating a computer process interface library into the automation interface component. The computer process interface library exposes the automation interface component to client application processes, so that the client application processes can communicate with the at least one industrial controller programmatically. The automation interface is provided with functionality for downloading, uploading and programming of control programs to the processors of the industrial controllers.

Claims (46)

1. A system, comprising:

a processor, communicatively coupled to a memory that stores computer-executable components, that executes or facilitates execution of the computer-executable components, comprising:

an automation interface component configured with a plurality of project objects, wherein respective project objects are associated with industrial controllers, wherein the automation interface component is further configured to be accessed by a plurality of programming languages, and has a visible mode that includes a user interface and an invisible mode that does not include a user interface;

an application object configured to:

instantiate the automation interface for at least one network based client;

obtain respective project objects associated with at least one industrial controller of the industrial controllers;

expose the automation interface to the at least one network-based client; and

communicatively connect the automation interface to the at least one industrial controller and the at least one network-based client using the respective project objects associated with the at least one industrial controller;

a maintenance application configured to automatically determine when a first control program is to be replaced by a second control program based upon a specific process associated with the at least one industrial controller; and

wherein the automation interface is further configured to:

receive the first control program from the at least one industrial controller, wherein the first control program is utilized to control operation of at least one device associated with an industrial automation process controlled by the at least one industrial controller;

transmit the first control program to the at least one network-based client application;

receive the second control program generated by the at least one network-based client application based upon the determination by the maintenance application that the first control program is to be replaced by the second control program; and

instruct the at least one industrial controller to utilize the second control program to update the first control program.

2. The system of claim 1 , wherein the automation interface component is further configured to employ an Internet based protocol to connect to the at least one network-based client application.

3. The system of claim 1 , wherein the automation interface component is further configured to transmit the first control program to the at least one network-based client application in response to an event detected by the at least one industrial controller.

4. The system of claim 3 , wherein the event is a preconfigured time-of-day.

5. The system of claim 3 , wherein the event is a change in at least one of a property or method of a programmable object associated with the automation interface component.

6. A method, comprising:

instantiating, by an application object executing in a system including at least one processor, an automation interface for at least one network based client, wherein the automation interface is configured with a plurality of project objects, wherein respective project objects are associated with industrial controllers, wherein the automation interface is further configured to be accessed by a plurality of programming languages, and has a visible mode that includes a user interface and an invisible mode that does not include a user interface;

obtaining, by the application object, respective project objects associated with at least one industrial controller of the industrial controllers;

exposing, by the application object, the automation interface to the at least one network-based client; and

communicatively connecting, by the application object, the automation interface to the at least one industrial controller and the at least one network-based client using the respective project objects associated with the at least one industrial controller;

automatically determining, by the application object, that a first control program is to be replaced by a second control program based upon a specific process associated with the at least one industrial controller;

receiving, by the automation interface executing in the system, the first control program from the at least one industrial controller, wherein the first control program is utilized to control operation of at least one device associated with an industrial automation process controlled by the at least one industrial controller;

transmitting, by the automation interface, the first control program to the at least one network-based client application;

receiving, by the automation interface, the second control program generated by the at least one network-based client application based upon the determination that the first control program is to be replaced by the second control program; and

instructing, by the automation interface, the at least one industrial controller to utilize the second control program to update the first control program.

7. The method of claim 6 , further comprising, employing, by the automation interface, an Internet based protocol to connect to the at least one network-based client application.

8. The method of claim 6 , wherein the transmitting further comprises transmitting the first control program to the at least one network-based client application in response to an event detected by the at least one industrial controller.

9. The method of claim 8 , wherein the event is a preconfigured time-of-day.

10. The method of claim 8 , wherein the event is a change in at least one of a property or method of a programmable object associated with the automation interface.

11. A non-transitory computer-readable medium having instructions stored thereon that, in response to execution, cause at least one device including a processor to perform operations comprising:

instantiating, by an application object, an automation interface for at least one network based client, wherein the automation interface is configured with a plurality of project objects, wherein respective project objects are associated with industrial controllers, wherein the automation interface is further configured to be accessed by a plurality of programming languages, and has a visible mode that includes a user interface and an invisible mode that does not include a user interface;

obtaining, by the application object, respective project objects associated with at least one industrial controller of the industrial controllers;

exposing, by the application object, the automation interface to the at least one network-based client; and

communicatively connecting, by the application object, the automation interface to the at least one industrial controller and the at least one network-based client using the respective project objects associated with the at least one industrial controller;

automatically determining that a first control program is to be replaced by a second control program based upon a specific process associated with the at least one industrial controller;

receiving, by the automation interface, the first control program from the at least one industrial controller, wherein the first control program is utilized to control operation of at least one device associated with an industrial automation process controlled by the at least one industrial controller;

transmitting, by the automation interface, the first control program to the at least one network-based client application;

receiving, by the automation interface, the second control program generated by the at least one network-based client application based upon the determination that the first control program is to be replaced by the second control program; and

instructing, by the automation interface, the at least one industrial controller to utilize the second control program to update the first control program.

12. The method of claim 11 , further comprising, employing, by the automation interface, an Internet based protocol to connect to the at least one network-based client application.

13. The method of claim 11 , wherein the transmitting further comprises transmitting the first control program to the at least one network-based client application in response to an event detected by the at least one industrial controller.

14. The method of claim 13 , wherein the event is a preconfigured time-of-day.

15. The method of claim 13 , wherein the event is a change in at least one of a property or method of a programmable object associated with the automation interface.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2015
From: ROCKWELL AUTOMATION TECHNOLOGIES, INC.
To: ROCKWELL AUTOMATION, INC.
Reel/Frame 036602/0504 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2013
From: MCKELVEY, JEFFREY A.; D'AMICO, MIKE
To: ROCKWELL SOFTWARE INC.
Reel/Frame 031148/0869 →
Continuity (5)
Continuation 12189517 · Aug 11, 2008
Continuation 11533991 · Sep 21, 2006
Continuation 10945189 · Sep 20, 2004
Continuation 09928623 · Aug 13, 2001
Related Publication 20130268097A1 · Oct 10, 2013