Abstract:
An automation control module (ACM) includes an ACM central processing unit (CPU), a backplane electrically coupled to the ACM CPU, and a web system embedded within the ACM and electrically coupled to the ACM CPU and backplane. The web system includes a secure web server and is configured to process hypertext transfer protocol (HTTP) requests from a network to program and configure the ACM through the network. The HTTP requests are received by the secure web server and transmitted by the secure web server directly the ACM CPU without using the backplane.

Description:
BACKGROUND OF THE INVENTION 
     This invention relates generally to automation control modules (ACMs) and more particularly to management and control of ACMs. 
     Remote monitoring and control of systems and processes have taken many forms. In the past, dedicated lines became the most common form of communication between a control system and a remote location. However, such systems have limited application since the control systems are not accessible from multiple locations. Modems have made it possible to access the control system from different locations, but these types of systems are generally restricted to downloading and uploading data files. Moreover, providing any type of control function between locations is rather limited in this type of environment. 
     Programmable logic controllers (PLCs) are widely used in industry and process control. At least some known systems provide factory automation information using various types of communication networking environments. These networks are usually slow, are not universally accessible and are limited to monitoring and data exchange. Control may be implemented, but since the communication networks are non-deterministic, control is not in real time. Specialized industrial networks using proprietary fieldbus alternatives can be very expensive. Conversion products are required to allow information carried over those networks to be visible on a general purpose network. There may be significant installation and other deployment costs associated with the existence of such intermediate devices. 
     At least some known applications and programs for ACMs are executed on general purpose computers that communicate with the ACMs over proprietary networks and protocols. However, developing and maintaining the proprietary networks and protocol increases the cost of ACM systems. Furthermore, because access to ACM data is typically restricted, communication between the general purpose computer and the ACM must be handled in a secure manner. As a result, such additional security measures also increases an overall cost of the ACM systems. 
     BRIEF DESCRIPTION OF THE INVENTION 
     In one aspect, an automation control module (ACM) is provided including an ACM central processing unit (CPU) and a web system electrically coupled to the ACM CPU. The web system is configured to process hypertext transfer protocol (HTTP) requests from a network such that a user on the network can configure the ACM using the network. 
     In another aspect, an automation control module (ACM) system is provided including an ACM, a network, a computer electrically coupled to the network and configured to communicate with the network, and a web subsystem electrically coupled to the ACM and the network. The subsystem is configured to process hypertext transfer protocol (HTTP) requests received from the computer through the network such that the computer can configure the ACM using the network. 
     In yet another aspect, a method is provided for management and control of an automation control module (ACM) including an ACM central processing unit (CPU) and a web system electrically coupled to the ACM. The web system is also electrically coupled to a network and the method includes electrically connecting the web system to the ACM CPU, and processing hypertext transfer protocol (HTTP) requests from the network using the web system such that a user on the network can configure the ACM using the network. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a block diagram illustrating one embodiment of an ACM system of the present invention. 
         FIG. 2  is a flow chart illustrating one embodiment of a method for management and control of an automation control module using an ACM system. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     Set forth below are descriptions of embodiments of methods and systems for control and management of an automation control module (ACM). The methods and systems facilitate viewing and controlling ACM data through standard networks, protocols, and browsers, developing and downloading user-defined web pages that include ACM data, and controlling the access level to the ACM and user-defined web pages. 
     The methods and systems are not limited to the specific embodiments described herein. Rather, components of each system and the associated steps of each method can be practiced independent and separate from other components and steps described herein. Each component and step can also be used in combination with other components and steps. 
     As used herein, the term ACM refers to any device used to control the automation of an activity, including but not limited to PLCs, computer numeric controls (CNCs), motion control products, home automation products, and commercial automation products. As used herein, ACM data includes different types of data within an ACM system  10  that control operation of ACM system  10 . For example, ACM data includes, but is not limited to, user logic programs, user program memory, ACM status and statistics, ACM faults, setting ACM operating states, setting privilege levels, and any other useful ACM information. 
       FIG. 1  illustrates, in block diagram form, an exemplary hardware architecture that may be utilized in conjunction with an ACM management and control system. The system can be implemented on many different platforms and may utilize different architectures. The architectures illustrated in  FIG. 1  are exemplary only. 
       FIG. 1  is a block diagram illustrating one embodiment of ACM system  10 . System  10  includes an ACM  12 , a web subsystem  14 , and a computer  16 . ACM  12  includes an ACM CPU  18  that executes ACM functions. For example, ACM CPU  18  may execute, but is not limited to executing, user logic and function block executions, input/output (I/O) scanning, and communications to other devices. ACM CPU  18  includes a CPU system memory  20  that is electrically coupled to CPU  18 . In one embodiment, system memory  20  includes both the operating system (not shown) for ACM CPU  18 , and a user&#39;s program and data. In one embodiment, an ACM I/O backplane interface  22  is coupled to ACM CPU  18 , and provides an interface between ACM CPU  18  and an ACM backplane  24  coupled to interface  22 . ACM backplane  24  provides a physical and an electrical means for connecting various I/O or other input modules  26 , for example, communications or motion modules, into ACM  12 . ACM backplane  24  facilitates data exchanges between modules  26  and ACM CPU  18 . In one embodiment, at least one module  26  provides an interface for real world inputs (not shown), such as, but not limited to the limit or proximity switch status, the position of an object, the temperature, or the pressure, to ACM CPU  18  as parameters for logic or function block execution. In another embodiment, one or more modules  26  provide an interface to real world outputs (not shown) as commanded by ACM CPU  18  to control output devices (not shown)., such as, but not limited to, actuators, contactors, or solenoids. 
     Computer  16  is electrically coupled to a network  28 . Network  28  includes the physical medium and intermediate devices (not shown), such as routers, and switches, that connect computer  16  to ACM  12 . In one embodiment, network  28  is a wide area network (WAN), such as the Internet. In an alternative embodiment, network  28  is a local area network (LAN), such as an Intranet. In the exemplary embodiment, a user  30  accesses an Intranet or the Internet to gain access to ACM  12 . In one embodiment, computer  16  includes a web browser, and ACM  12  is accessible to computer  16  via the Internet. Computer  16  is intercoupled to the Internet through many interfaces including, but not limited to, a different network (not shown), such as a WAN or a LAN, a dial in connection, a cable modem and a high-speed ISDN line. Computer  16  is any device capable of interconnecting to the Internet, and may include, a web-based telephone or other web-based connectable equipment. 
     Computer  16  executes a user application that makes decisions based on ACM data transferred from ACM  12  through a secure client connection through web subsystem  14  and network  28 . Computer  16  displays ACM data on at least one web page (not shown), and retrieves web page files (not shown) stored on a secure web server  32  embedded within web subsystem  14 . The web page files are text files that may contain hypertext markup language (HTML), Javascript, and/or references to other files, such as image files to be displayed with the web page or Java Applets. In another embodiment, the web page files include ACM tag functions that reference ACM data stored in CPU system memory  20 . The tag facilitates the exchange of data between ACM CPU  18  and web server  32  embedded within web subsystem  14 . Additionally, the tag provides a generic mechanism for user  30  to display and/or control ACM data using a standard browser. In one embodiment, computer  16  includes web authoring tools and/or text editors that, along with user input, are utilized to create and modify web page files. 
     Users  30  include at least one person who views and/or controls ACM data using computer  16 . In one embodiment, users  30  include a person who created a web page file. Web subsystem  14  is electrically coupled to ACM CPU  18 , CPU system memory  20 , and network  28 . Subsystem  14  is shown in  FIG. 1  as embedded within ACM  12 . In an alternative embodiment, subsystem  14  is contained in a separate module coupled to ACM backplane  24 . Web subsystem  14  includes secure web server  32  and a secure network interface  38  that provides the lower level protocols (TCP/IP) and physical hardware connections to network  28  in a secure fashion. Secure web server  32  is electrically coupled to network interface  38 , ACM CPU  18 , and CPU system memory  20 . More specifically, secure web server  32  provides a secure connection between secure web server  32  and computer  16  using a secure layer, such as, but not limited to, a secure sockets layer (SSL). In one embodiment, user  30  must enter a valid user name and valid user password to access ACM  12  and web subsystem  14 . The user name and user password correspond to a user profile stored in secure web server  32 . The user name and user password serve to authenticate secure web server  32  to computer  16  or alternatively, authenticate computer  16  to secure web server  32 . 
     Upon accessing web subsystem  14 , computer  16  and secure web server  32  communicate securely using security layer encrypted messages, based on mutually agreed to session keys for encryption and decryption, through network  28  and network interface  38 . In one embodiment, server  32  and computer  16  communicate to select cryptographic algorithms that both server  32  and computer  16  support. Once a secure connection is established between secure web server  32  and computer  16 , a user program on computer  16  generates a security layer encrypted hypertext transfer protocol (HTTP) request to access ACM data. Secure network interface  38  receives the request, decrypts the request and transfers the request to secure web server  32 . Secure web server  32  processes the security layer encrypted hypertext transfer protocol (HTTP) requests to send web pages to computer  16  and, based upon the requests, sends a web page representing the requested web page through secure network interface  38  and network  28  to computer  16 . 
     Secure network interface encrypts the web page representing the requested web page prior to sending it through network  28  to computer  16 . Computer  16  decrypts the requested web page upon receiving the requested web page. If the requested web page includes a tag function, secure web server  32  parses and executes the tag function and either embeds ACM data within a web page file, thereby displaying the web page on a browser on computer  16 , or transmits ACM data to ACM CPU  18 . In one embodiment, secure web server  32  transfers ACM data to ACM CPU  18  to control operation of ACM  12 . 
       FIG. 2  is a flow chart  50  illustrating an exemplary method  52  for management and control of ACM  12  (shown in  FIG. 1 ). Method  52  includes electrically connecting  54  web server  32  (shown in  FIG. 1 ) to ACM CPU  18  (shown in  FIG. 1 ). Web server  32  processes  56  HTTP requests from network  28  (shown in  FIG. 1 ) such that a user  30  on network  28  can at least one of program and configure ACM  12  using network  28 . In one embodiment, web server  32  transfers  58  web page files from web server  32  to network  28  and a user on network  28  receives  60  the web page files and uses  62  the web page files to identify a hardware configuration of ACM  12 . In another embodiment, web server  32  transfers  58  web page files from web server  32  to network  28  and a user on network  28  receives  60  the web page files and uses  64  the web page files to program CPU system memory  20 . 
     ACM system  10  facilitates reducing system hardware costs, shortening development time of custom ACM monitoring and control tools that reduce implementation costs, and increasing response time for accessing ACM data while reducing an impact on other critical real-time ACM functions, such as ACM sweep time, thereby reducing production costs. In addition, ACM system  10  facilitates rapid access to ACM data on standard devices such as a web browser on computer  16  or PDA via a standard network in a secure fashion. ACM system  10  also facilitates users programming and/or configuring ACM  12  using standard computer software. 
     While the invention has been described in terms of various specific embodiments, those skilled in the art will recognize that the invention can be practiced with modification within the spirit and scope of the claims.