The subject invention relates generally to industrial control systems and more particularly to distributing and manipulating data across data hierarchies that can be shared between organizational models and industrial control systems.
Industrial controllers are special-purpose computers utilized for controlling industrial processes, manufacturing equipment, and other factory automation, such as data collection or networked systems. At the core of the industrial control system, is a logic processor such as a Programmable Logic Controller (PLC) or PC-based controller. Programmable Logic Controllers for instance, are programmed by systems designers to operate manufacturing processes via user-designed logic programs or user programs. The user programs are stored in memory and generally executed by the PLC in a sequential manner although instruction jumping, looping and interrupt routines, for example, are also common. Associated with the user program are a plurality of memory elements or variables that provide dynamics to PLC operations and programs. Differences in PLCs are typically dependent on the number of Input/Output (I/O) they can process, amount of memory, number and type of instructions, and speed of the PLC central processing unit (CPU).
In a more macro sense than the controller, businesses have become more complex in that higher order business systems or computers often need to exchange data with such controllers. For instance, an industrial automation enterprise may include several plants in different locations. Modem drivers such as efficiency and productivity improvement, and cost-reduction, are requiring manufacturers to collect, analyze, and optimize data and metrics from global manufacturing sites. For example, a food company may have several plants located across the globe for producing a certain brand of food. These factories in the past were standalone, with minimum data collection and comparison of metrics with other similar factories. In the networked world of today, manufacturers are demanding real-time data from their factories to drive optimization and productivity. Unfortunately, conventional control systems architectures are not equipped to allow a seamless exchange of data between these various components of the enterprise.
The following presents a simplified summary in order to provide a basic understanding of some aspects described herein. This summary is not an extensive overview nor is intended to identify key/critical elements or to delineate the scope of the various aspects described herein. Its sole purpose is to present some concepts in a simplified form as a prelude to the more detailed description that is presented later.
An organizational model and addressing mode is provided that enables data to be automatically and efficiently exchanged from various layers of an organization, across organizational boundaries, and/or exchanged between lower-level control entities to upper-tiers of the organization. In one aspect, a hierarchical model of an organization is distributed across control systems and other components of the organization such as business computers. Such hierarchy can be stored in an instantiation of a controller which is also accessible by the controller. This enables external applications to address data in the controller via a controller namespace and/or via an organization hierarchy such as provided by a hierarchical plant model, for example. Portions of the hierarchy can be implemented in the controller without being connected to the central system. This enables distributed development by multiple users such as outside equipment manufacturers (OEMs).
The organizational hierarchy can also include other organizational units, controller scoped tags, programs with associated program scoped tags, add-on instructions, routines, operator interface screens, and/or user defined information such has procedures and help files, for example. A local hierarchy stored in a controller can be connected to the system hierarchy via a “mount point.” The “mount point” can be connected with a particular location in the system hierarchy during a configuration operation which associates the respective controller with a specific organizational project.
To the accomplishment of the foregoing and related ends, certain illustrative aspects are described herein in connection with the following description and the annexed drawings. These aspects are indicative of various ways which can be practiced, all of which are intended to be covered herein. Other advantages and novel features may become apparent from the following detailed description when considered in conjunction with the drawings.
An organizational model of a hierarchical system can be distributed across various elements of an enterprise. Such elements include representations of the system that are maintained on higher-level business servers and other representations that serve control elements of the system such as programmable logic controllers and/or other industrial control components. In one aspect, an industrial automation system is provided. The system includes at least one controller to instantiate a portion of an organizational hierarchy. A communications component in the controller interacts with at least one other portion of the organizational hierarchy to facilitate data exchange and control between various components of an enterprise.
It is noted that as used in this application, terms such as “component,” “hierarchy,” “model,” and the like are intended to refer to a computer-related entity, either hardware, a combination of hardware and software, software, or software in execution as applied to an automation system for industrial control. For example, a component may be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program and a computer. By way of illustration, both an application running on a server and the server can be components. One or more components may reside within a process and/or thread of execution and a component may be localized on one computer and/or distributed between two or more computers, industrial controllers, and/or modules communicating therewith.
Referring initially to
The system 100 enables combining organizational information called an organizational or hierarchical data model 110 which represents a common model of a plant that can be based in the S88 or S95 model, for example, and is distributed among computers of the enterprise 120 and industrial controllers 130, for example. The model 110 can be viewed as an Organizational Model—a tree-like hierarchical and heterogeneous structure of organizational Units. For instance, respective Organizational Units may include other Organizational Units. Organizational Units can be either physical locations (e.g., Site, Area) or logical grouping node or collection (e.g., Enterprise as a collection of Sites). The nodes in the organizational hierarchy or model 110 can have associated items representing the plant's production and control equipment, tags, backing tags (e.g., Alarm & Event and AOI objects), programs, equipment phases, I/O devices, and other application related entities. These organizational units thus can form an application view of the user's system.
A typical system 100 can assign the upper levels of the hierarchy such as an Enterprise node and site to a computer system and the lower levels such as area, line, cell and machine could be contained in multiple industrial controllers each of which can include components which are members of one or more organization units such as area or area model. An organization unit such as area can contain components from one or more controllers. To ease the integration of data with information technology (IT) applications, methods are provided for defining various data structures in the IT space and translating those to the controller and a method using transactions to connect the controller and IT versions of the structure.
Before proceeding, it is noted that the enterprise 120 can include various computer or network components such as servers, clients, communications modules, mobile computers, wireless components, and so forth which are capable of interacting across the network 114. Similarly, the term PLC as used herein can include functionality that can be shared across multiple components, systems, and or networks 114. For example, one or more PLCs 130 can communicate and cooperate with various network devices across the network 114. This can include substantially any type of control, communications module, computer, I/O device, Human Machine Interface (HMI)) that communicate via the network 114 which includes control, automation, and/or public networks. The PLC 130 can also communicate to and control various other devices such as Input/Output modules including Analog, Digital, Programmed/Intelligent I/O modules, other programmable controllers, communications modules, and the like.
The network 114 can include public networks such as the Internet, Intranets, and automation networks such as Control and Information Protocol (CIP) networks including DeviceNet and ControlNet. Other networks include Ethernet, DH/DH+, Remote I/O, Fieldbus, Modbus, Profibus, wireless networks, serial protocols, and so forth. In addition, the network devices can include various possibilities (hardware and/or software components). These include components such as switches with virtual local area network (VLAN) capability, LANs, WANs, proxies, gateways, routers, firewalls, virtual private network (VPN) devices, servers, clients, computers, configuration tools, monitoring tools, and/or other devices.
In addition to various hardware and/or software components, various interfaces can be provided to manipulate the hierarchical or organizational data model 110 where various examples are illustrated in more detail below. This can include a Graphical User Interface (GUI) to interact with the model 110 or other components of the hierarchy such as any type of application that sends, retrieves, processes, and/or manipulates factory or enterprise data, receives, displays, formats, and/or communicates data, and/or facilitates operation of the enterprise 120 and/or PLCs 130. For example, such interfaces can also be associated with an engine, server, client, editor tool or web browser although other type applications can be utilized.
The GUI can include a display having one or more display objects (not shown) for manipulating the model 110 including such aspects as configurable icons, buttons, sliders, input boxes, selection options, menus, tabs and so forth having multiple configurable dimensions, shapes, colors, text, data and sounds to facilitate operations with the model 110. In addition, the GUI can also include a plurality of other inputs or controls for adjusting and configuring one or more aspects. This can include receiving user commands from a mouse, keyboard, speech input, web site, remote web service and/or other device such as a camera or video input to affect or modify operations of the GUI.
Before proceeding, it is noted that
Referring now to
Turning to
From the respective area level 320, a line level 330 can be represented which includes equipment (further divided into work-cell), controllers, production components, segment components, and miscellaneous components such as training elements, quality control data, and maintenance data. At a control level 340, logic processors that execute sequential function charts or ladder logic are represented. Thus, from the high level enterprise view 310, data from the control view 340 is aggregated and federated from the top down where the data model shows a unified view of data that is distributed across remote or local geographic locations via network communications yet represented as a singular data model 300. At production and segment levels 350, components for processing data include work order elements, material managers, equipment sequencers, and production sequencers that may execute on machines such as batch processors or servers, for example.
At 950, data is managed across the enterprise or organization via the hierarchical organization model. This can include viewing upper layers of the organization in higher level nodes of the hierarchy, where such layers may conform to such standards as S88 or S95 as previously noted. Data structures can be defined which exchange data between substantially all layers of an organization from lower-level control and configuration layers on a network to higher level data nodes of the enterprise. Respective nodes can be adapted with varying levels of security to control the type of human or machine access to a data node that may be available from different portions of the hierarchy.
Now turning to
A second hierarchy 1002 can be utilized that represents each of the aforementioned hierarchical representations. The hierarchy 1002 can include representations of an enterprise, a site, an area, a work center, a work unit, an equipment module, and a control module. Thus, a common representation can be generated that adequately represents the hierarchy 1000. For purposes of consistent terminology, data objects can be associated with metadata indicating which type of process they are associated with. Therefore, data objects can be provided to an operator in a form that is consistent with normal usage within such process. For example, batch operators can utilize different terminology than a continuous process operator (as shown by the hierarchy 1000). Metadata can be employed to enable display of such data in accordance with known, conventional usage of such data. Thus, implementation of a schema in accordance with the hierarchy 1002 will be seamless to operators. Furthermore, in another example, only a portion of such representation can be utilized in a schema that is utilized by a controller. For instance, it may be desirable to house equipment modules and control modules within a controller. In another example, it may be desirable to include data objects representative of work centers and work units within a controller (but not equipment modules or control modules). The claimed subject matter is intended to encompass all such deviations of utilizing the hierarchy 1002 (or similar hierarchy) within a controller.
Now referring to
Now turning to
What has been described above includes various exemplary aspects. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing these aspects, but one of ordinary skill in the art may recognize that many further combinations and permutations are possible. Accordingly, the aspects described herein are intended to embrace all such alterations, modifications and variations that fall within the spirit and scope of the appended claims. Furthermore, to the extent that the term “includes” is used in either the detailed description or the claims, such term is intended to be inclusive in a manner similar to the term “comprising” as “comprising” is interpreted when employed as a transitional word in a claim.
Number | Name | Date | Kind |
---|---|---|---|
4268901 | Subrizi et al. | May 1981 | A |
4347564 | Sugano et al. | Aug 1982 | A |
4623964 | Getz et al. | Nov 1986 | A |
4990838 | Kawato et al. | Feb 1991 | A |
5072374 | Sexton et al. | Dec 1991 | A |
5185708 | Hall et al. | Feb 1993 | A |
5253184 | Kleinschnitz | Oct 1993 | A |
5301320 | McAtee et al. | Apr 1994 | A |
5367624 | Cooper | Nov 1994 | A |
5446868 | Gardea et al. | Aug 1995 | A |
5455775 | Huber et al. | Oct 1995 | A |
5485620 | Sadre et al. | Jan 1996 | A |
5504891 | Motoyama et al. | Apr 1996 | A |
5537585 | Blickenstaff et al. | Jul 1996 | A |
5572731 | Morel et al. | Nov 1996 | A |
5611059 | Benton et al. | Mar 1997 | A |
5619724 | Moore | Apr 1997 | A |
5634048 | Ryu et al. | May 1997 | A |
5644740 | Kiuchi | Jul 1997 | A |
5675748 | Ross | Oct 1997 | A |
5715413 | Ishai et al. | Feb 1998 | A |
5721905 | Elixmann et al. | Feb 1998 | A |
5761499 | Sonderegger | Jun 1998 | A |
5784620 | Isham | Jul 1998 | A |
5797137 | Golshani et al. | Aug 1998 | A |
5812773 | Norin | Sep 1998 | A |
5828851 | Nixon et al. | Oct 1998 | A |
5832486 | Itoh et al. | Nov 1998 | A |
5838563 | Dove et al. | Nov 1998 | A |
5848273 | Fontana et al. | Dec 1998 | A |
5862052 | Nixon et al. | Jan 1999 | A |
5884025 | Baehr et al. | Mar 1999 | A |
5884033 | Duvall et al. | Mar 1999 | A |
5913029 | Shostak | Jun 1999 | A |
5924094 | Sutter | Jul 1999 | A |
5936539 | Fuchs | Aug 1999 | A |
5940294 | Dove | Aug 1999 | A |
5940854 | Green, Jr. et al. | Aug 1999 | A |
5951440 | Reichlinger | Sep 1999 | A |
5960420 | Leymann et al. | Sep 1999 | A |
5966705 | Koneru | Oct 1999 | A |
5978577 | Rierden et al. | Nov 1999 | A |
5980078 | Krivoshein et al. | Nov 1999 | A |
5983016 | Brodsky et al. | Nov 1999 | A |
6011899 | Ohishi et al. | Jan 2000 | A |
6032208 | Nixon et al. | Feb 2000 | A |
6044217 | Brealey et al. | Mar 2000 | A |
6063129 | Dadd et al. | May 2000 | A |
6081899 | Byrd | Jun 2000 | A |
6098116 | Nixon et al. | Aug 2000 | A |
6101531 | Eggleston et al. | Aug 2000 | A |
6110214 | Klimasauskas | Aug 2000 | A |
6157864 | Schwenke et al. | Dec 2000 | A |
6161051 | Hafemann et al. | Dec 2000 | A |
6195591 | Nixon et al. | Feb 2001 | B1 |
6208987 | Nihei | Mar 2001 | B1 |
6234899 | Nulph | May 2001 | B1 |
6246972 | Klimasauskas | Jun 2001 | B1 |
6266726 | Nixon et al. | Jul 2001 | B1 |
6268853 | Hoskins et al. | Jul 2001 | B1 |
6275977 | Nagai et al. | Aug 2001 | B1 |
6308168 | Dovich et al. | Oct 2001 | B1 |
6308224 | Leymann et al. | Oct 2001 | B1 |
6311187 | Jeyaraman | Oct 2001 | B1 |
6327511 | Naismith et al. | Dec 2001 | B1 |
6336152 | Richman et al. | Jan 2002 | B1 |
6356920 | Vandersluis | Mar 2002 | B1 |
6377957 | Jeyaraman | Apr 2002 | B1 |
6393566 | Levine | May 2002 | B1 |
6398106 | Ulvr et al. | Jun 2002 | B1 |
6409082 | Davis et al. | Jun 2002 | B1 |
6411987 | Steger et al. | Jun 2002 | B1 |
6415983 | Ulvr et al. | Jul 2002 | B1 |
6425051 | Burton et al. | Jul 2002 | B1 |
6438744 | Toutonghi et al. | Aug 2002 | B2 |
6445963 | Blevins et al. | Sep 2002 | B1 |
6446202 | Krivoshein et al. | Sep 2002 | B1 |
6457053 | Satagopan et al. | Sep 2002 | B1 |
6469986 | Lecheler et al. | Oct 2002 | B1 |
6473656 | Langels et al. | Oct 2002 | B1 |
6484061 | Papadopoulos et al. | Nov 2002 | B2 |
6501996 | Bieber | Dec 2002 | B1 |
6505247 | Steger et al. | Jan 2003 | B1 |
6510352 | Badavas et al. | Jan 2003 | B1 |
6539271 | Lech et al. | Mar 2003 | B2 |
6539430 | Humes | Mar 2003 | B1 |
6539458 | Holmberg | Mar 2003 | B2 |
6556950 | Schwenke et al. | Apr 2003 | B1 |
6618856 | Coburn et al. | Sep 2003 | B2 |
6631519 | Nicholson et al. | Oct 2003 | B1 |
6643555 | Eller et al. | Nov 2003 | B1 |
6661426 | Jetha et al. | Dec 2003 | B1 |
6664981 | Ashe et al. | Dec 2003 | B2 |
6681227 | Kojima et al. | Jan 2004 | B1 |
6687817 | Paul | Feb 2004 | B1 |
6697797 | Hoggatt et al. | Feb 2004 | B1 |
6704746 | Sokolov et al. | Mar 2004 | B2 |
6714949 | Frey, Jr. | Mar 2004 | B1 |
6714981 | Skaggs | Mar 2004 | B1 |
6738821 | Wilson et al. | May 2004 | B1 |
6745089 | Rasmussen et al. | Jun 2004 | B2 |
6748486 | Burton et al. | Jun 2004 | B2 |
6751634 | Judd | Jun 2004 | B1 |
6758403 | Keys et al. | Jul 2004 | B1 |
6760721 | Chasen et al. | Jul 2004 | B1 |
6760732 | Busshart et al. | Jul 2004 | B2 |
6763395 | Austin | Jul 2004 | B1 |
6766312 | Landt | Jul 2004 | B2 |
6769095 | Brassard et al. | Jul 2004 | B1 |
6778537 | Ishibashi | Aug 2004 | B1 |
6801822 | Fujiwara et al. | Oct 2004 | B1 |
6807632 | Carpentier et al. | Oct 2004 | B1 |
6809732 | Zatz et al. | Oct 2004 | B2 |
6836892 | Ikoma et al. | Dec 2004 | B2 |
6839790 | Barros De Almeida et al. | Jan 2005 | B2 |
6842769 | Kim et al. | Jan 2005 | B1 |
6853920 | Hsiung et al. | Feb 2005 | B2 |
6865509 | Hsiung et al. | Mar 2005 | B1 |
6868413 | Grindrod et al. | Mar 2005 | B1 |
6874145 | Ye et al. | Mar 2005 | B1 |
6874146 | Iyengar | Mar 2005 | B1 |
6880060 | Talagala et al. | Apr 2005 | B2 |
6889282 | Schollenberger | May 2005 | B2 |
6901578 | Beaven et al. | May 2005 | B1 |
6904473 | Bloxham et al. | Jun 2005 | B1 |
6920474 | Walsh et al. | Jul 2005 | B2 |
6928521 | Burton et al. | Aug 2005 | B1 |
6930985 | Rathi et al. | Aug 2005 | B1 |
6934749 | Black et al. | Aug 2005 | B1 |
6938079 | Anderson et al. | Aug 2005 | B1 |
6944626 | Cameron et al. | Sep 2005 | B2 |
6947947 | Block et al. | Sep 2005 | B2 |
6950900 | McKean et al. | Sep 2005 | B1 |
6952705 | Knoblock et al. | Oct 2005 | B2 |
6954770 | Carlson et al. | Oct 2005 | B1 |
6961728 | Wynblatt et al. | Nov 2005 | B2 |
6973556 | Milligan et al. | Dec 2005 | B2 |
6975913 | Kreidler et al. | Dec 2005 | B2 |
20020012401 | Karolys et al. | Jan 2002 | A1 |
20020013748 | Edmison et al. | Jan 2002 | A1 |
20020069167 | Conlow | Jun 2002 | A1 |
20020073236 | Helgeson et al. | Jun 2002 | A1 |
20020087786 | Burton et al. | Jul 2002 | A1 |
20020091838 | Rupp et al. | Jul 2002 | A1 |
20020103785 | Harvey | Aug 2002 | A1 |
20020194577 | Connor et al. | Dec 2002 | A1 |
20030014387 | Kreidler et al. | Jan 2003 | A1 |
20030014500 | Schleiss et al. | Jan 2003 | A1 |
20030065673 | Grobler et al. | Apr 2003 | A1 |
20030090514 | Cole et al. | May 2003 | A1 |
20030120710 | Pulsipher et al. | Jun 2003 | A1 |
20030123467 | Du et al. | Jul 2003 | A1 |
20030126308 | Kim | Jul 2003 | A1 |
20030177114 | Lin et al. | Sep 2003 | A1 |
20030212828 | Miyazaki et al. | Nov 2003 | A1 |
20030218641 | Longobardi | Nov 2003 | A1 |
20040004629 | Hamilton et al. | Jan 2004 | A1 |
20040006401 | Yamada et al. | Jan 2004 | A1 |
20040024995 | Swaine | Feb 2004 | A1 |
20040044421 | Brune et al. | Mar 2004 | A1 |
20040073565 | Kaufman et al. | Apr 2004 | A1 |
20040098153 | Neudeck | May 2004 | A1 |
20040139079 | Eryurek et al. | Jul 2004 | A1 |
20040167790 | Grasse | Aug 2004 | A1 |
20040196855 | Davies et al. | Oct 2004 | A1 |
20040199655 | Davies et al. | Oct 2004 | A1 |
20040203620 | Thome et al. | Oct 2004 | A1 |
20040210629 | Klindt et al. | Oct 2004 | A1 |
20040249771 | Berg et al. | Dec 2004 | A1 |
20040260591 | King | Dec 2004 | A1 |
20050005289 | Adolph et al. | Jan 2005 | A1 |
20050044112 | Yamamoto et al. | Feb 2005 | A1 |
20050065829 | Birkhoelzer | Mar 2005 | A1 |
20050065971 | Honda | Mar 2005 | A1 |
20050069853 | Tyson et al. | Mar 2005 | A1 |
20050071347 | Chau et al. | Mar 2005 | A1 |
20050091227 | McCollum et al. | Apr 2005 | A1 |
20050091349 | Scheibli | Apr 2005 | A1 |
20050102672 | Brothers | May 2005 | A1 |
20050107897 | Callaghan | May 2005 | A1 |
20050108247 | Heinla et al. | May 2005 | A1 |
20050120021 | Tang et al. | Jun 2005 | A1 |
20050129247 | Gammel et al. | Jun 2005 | A1 |
20050135782 | Ando et al. | Jun 2005 | A1 |
20050154741 | Hebert et al. | Jul 2005 | A1 |
20050166215 | Holloway et al. | Jul 2005 | A1 |
20050177687 | Rao | Aug 2005 | A1 |
20050187925 | Schechinger et al. | Aug 2005 | A1 |
20050198248 | Morimoto et al. | Sep 2005 | A1 |
20050216460 | Yoon et al. | Sep 2005 | A1 |
20050223010 | Murray | Oct 2005 | A1 |
20050251527 | Phillips et al. | Nov 2005 | A1 |
20050256788 | Mukai | Nov 2005 | A1 |
20050268253 | Johnson et al. | Dec 2005 | A1 |
20050278373 | Corbett et al. | Dec 2005 | A1 |
20060004475 | Brackett et al. | Jan 2006 | A1 |
20060004847 | Claudatos et al. | Jan 2006 | A1 |
Number | Date | Country |
---|---|---|
1553471 | Jul 2005 | EP |
Entry |
---|
Pitzek et al., Configuration and Management of a Real-Time Smart Transducer Network, 2003 IEEE, 2003, 4 pages. |
European Search Report dated Jun. 12, 2005 for European Patent Application Serial No. EP05016793, 3 pages. |
John Kubiatowicz, et al. “OceanStore: An Architecture for Global-Scale Persistent Storage” ASPLOS 2000, Cambridge, Massachusetts (2000). |
Roy Goldman, et al. “From Semistructured Data to XML: Migrating the Lore Data Model and Query Language” (1999). |
Chinese OA dated Jun. 6, 2008 for CN Application Serial No. 200610131757.X, 15 pages. |
European Search Report for European Patent Application No. EP06020456 dated Aug. 26, 2011, 5 pages. |
Number | Date | Country | |
---|---|---|---|
20070078862 A1 | Apr 2007 | US |