CA2332009C - System and methods for object-oriented control of diverse electromechanical systems using a computer network - Google Patents
System and methods for object-oriented control of diverse electromechanical systems using a computer network Download PDFInfo
- Publication number
- CA2332009C CA2332009C CA002332009A CA2332009A CA2332009C CA 2332009 C CA2332009 C CA 2332009C CA 002332009 A CA002332009 A CA 002332009A CA 2332009 A CA2332009 A CA 2332009A CA 2332009 C CA2332009 C CA 2332009C
- Authority
- CA
- Canada
- Prior art keywords
- control system
- objects
- oriented control
- java
- oriented
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4488—Object-oriented
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Stored Programmes (AREA)
Abstract
A control system methodology uses object-oriented software to integrate multiple control systems into a common object model.
Object-oriented techniques are used to construct distributed Java-based applications in a multi-vendor open system environment for use in controlling and monitoring systems of varying size and configuration. The system provides both a browser client (101) (running on a Java-enabled browser) and a server client (121). The present invention has multiple stations: a Web BAS Server (110), a Network Processor (NP) (111), and a Field Controller (FC) (112). The NP and FC are preferably Java Virtual Machines implemented in a plug-in Java Modular Environment. Information is brought into a common object model and made available throughout the system. A custom programming language based on Java is provided for object creation, with access to objects controlled through a multi-level security protocol. Data flow is governed by a real-time information synchronization manager.
Object-oriented techniques are used to construct distributed Java-based applications in a multi-vendor open system environment for use in controlling and monitoring systems of varying size and configuration. The system provides both a browser client (101) (running on a Java-enabled browser) and a server client (121). The present invention has multiple stations: a Web BAS Server (110), a Network Processor (NP) (111), and a Field Controller (FC) (112). The NP and FC are preferably Java Virtual Machines implemented in a plug-in Java Modular Environment. Information is brought into a common object model and made available throughout the system. A custom programming language based on Java is provided for object creation, with access to objects controlled through a multi-level security protocol. Data flow is governed by a real-time information synchronization manager.
Description
SYSTEM AND METHODS FOR OBJECT-ORIENTED CONTROL
OF DIVERSE ELECTROMECHANICAL SYSTEMS
USING A COMPUTER NETWORK
A portion of this disclosure contains material in which copyright is claimed by the applicant. The applicant has no objection to the copying of this material in the course of making copies of the application file or any patents that may issue on the application, but all other rights whatsoever in the copyrighted material are reserved.
Field of the Invention The present invention relates generally to systems and methods for controlling and monitoring a variety of systems, using modular object-oriented control software which is operated in a local controller associated with the controlled system, and centrally controlled, monitored, and updated using a communications network such as the Internet.
These systems and methods are particularly useful in Building Automation Systems (BAS) applications.
Background of the Invention In the past, control systems such as building automation systems have typically been proprietary single manufacturer solutions, or complex integrations of independent systems. There have been efforts in the industry to define standards so that such systems can be integrated more effectively, but no truly uniform approach has been made available.
The release of the BACnet / LonMark' fieldbus communication standards for building automation systems have initiated a rethinking of building automation system architectures that is likely to revolutionize the control solution landscape. Traditional proprietary building automation architectures perform well, but they are - la -expensive to design and install, cumbersome to reconfigure, and often require reams of software to integrate the stand-alone facility services. By contrast, in a distributed BACnet / LonMark fieldbus architecture, logic processing is encapsulated into autonomous multi-vendor modules that communicate among themselves through standard software to cooperatively solve a building control problem. However, in known building automation architectures, the external interface characteristics of devices that are added to the control system must be entered into the database representation of the device's external interface characteristics before the BAS can effectively control the new device.
Distributing control in this way is expected to minimize installation wiring, optimize control software, lower operating / maintenance costs, and simplify system expansion. In today's competitive global marketplace, users need the fieldbus's flexible, reusable and cost-effective building control solutions to respond quickly to changes in facility management services.
There have been advances in other areas of computing which have, however, not been applied in a satisfactory manner to the field of building automation systems.
For example, computer systems standards have developed to simplify the cost and development requirements to program systems. Primary technologies include object-oriented software, the Java' Virtual Machine (JVM), and JavaBeans'.
Object-oriented programming provides a new vray to model real-world entities more directly as software building blocks that match the real world better than conventional programming mechanisms. This new software paradigm has an increasing impact on the software realm, in the same way the microprocessor has impacted hardware design and functionality.
In object-oriented programming, application pirograms are created from self-contained building block modules (objects). Rather than reinventing the wheel every time they create a new program, application engineers can borrow pre-written application modules from a library and simply plug them in. By using object libraries, developers can concentrate on linking appropriate objects together and writing any custom objects that their applications require. Custom objects, in turn, can be added to the library for future reuse.
Networking standards have also developed in ain effort to simplify the cost and development requirements to integrate systems. Primary technologies developed in the building automation industry include American Society of Heating Refrigeration and Air Conditioning Engineers (ASHRAE) Building and Control Network (BACnet''"), and the ECHELON LONTALK" protocol (developed by Echelon Corporation of Palo Alto, CA).
Meanwhile, in the computer industry, there have been efforts to develop 1o communications standards, although again, these standards have not been applied in any truly effective way to the specific problems of building automation. For example, the goal of the Internet I WWW / Java / CORBA standards is to provide the information the user wants, without taking into account what kind of program to use, what computer it runs on, or the format of the information.
Through a system of hypertext, users of the Web have been able to select and view information from all over the world. However, the basic Web lacks true interactivity - real-time, dynamic, and visual interaction between the user and application. Java brings this missing interactivity to the Web. With a Java-enabled Web browser, the user can encounter animation and interactive applications.
Efforts to implement real time control systems over the Internet have generally been unsuccessful, because of variability in packet transit times and the lack of guaranteed delivery over the Internet.
In conclusion, control systems have historically been based primarily on proprietary technologies of a single manufacturer. Although there have been efforts to standardize these architectures, they have achieved only limited success.
The inventors believe that there is a need for a highly integrated standard in the field of control systems which integrates a Java-based cc-mmon object model, specially adapted for use in building automation applications, and provides central control and monitoring using communications network standards, such as the internet.
OF DIVERSE ELECTROMECHANICAL SYSTEMS
USING A COMPUTER NETWORK
A portion of this disclosure contains material in which copyright is claimed by the applicant. The applicant has no objection to the copying of this material in the course of making copies of the application file or any patents that may issue on the application, but all other rights whatsoever in the copyrighted material are reserved.
Field of the Invention The present invention relates generally to systems and methods for controlling and monitoring a variety of systems, using modular object-oriented control software which is operated in a local controller associated with the controlled system, and centrally controlled, monitored, and updated using a communications network such as the Internet.
These systems and methods are particularly useful in Building Automation Systems (BAS) applications.
Background of the Invention In the past, control systems such as building automation systems have typically been proprietary single manufacturer solutions, or complex integrations of independent systems. There have been efforts in the industry to define standards so that such systems can be integrated more effectively, but no truly uniform approach has been made available.
The release of the BACnet / LonMark' fieldbus communication standards for building automation systems have initiated a rethinking of building automation system architectures that is likely to revolutionize the control solution landscape. Traditional proprietary building automation architectures perform well, but they are - la -expensive to design and install, cumbersome to reconfigure, and often require reams of software to integrate the stand-alone facility services. By contrast, in a distributed BACnet / LonMark fieldbus architecture, logic processing is encapsulated into autonomous multi-vendor modules that communicate among themselves through standard software to cooperatively solve a building control problem. However, in known building automation architectures, the external interface characteristics of devices that are added to the control system must be entered into the database representation of the device's external interface characteristics before the BAS can effectively control the new device.
Distributing control in this way is expected to minimize installation wiring, optimize control software, lower operating / maintenance costs, and simplify system expansion. In today's competitive global marketplace, users need the fieldbus's flexible, reusable and cost-effective building control solutions to respond quickly to changes in facility management services.
There have been advances in other areas of computing which have, however, not been applied in a satisfactory manner to the field of building automation systems.
For example, computer systems standards have developed to simplify the cost and development requirements to program systems. Primary technologies include object-oriented software, the Java' Virtual Machine (JVM), and JavaBeans'.
Object-oriented programming provides a new vray to model real-world entities more directly as software building blocks that match the real world better than conventional programming mechanisms. This new software paradigm has an increasing impact on the software realm, in the same way the microprocessor has impacted hardware design and functionality.
In object-oriented programming, application pirograms are created from self-contained building block modules (objects). Rather than reinventing the wheel every time they create a new program, application engineers can borrow pre-written application modules from a library and simply plug them in. By using object libraries, developers can concentrate on linking appropriate objects together and writing any custom objects that their applications require. Custom objects, in turn, can be added to the library for future reuse.
Networking standards have also developed in ain effort to simplify the cost and development requirements to integrate systems. Primary technologies developed in the building automation industry include American Society of Heating Refrigeration and Air Conditioning Engineers (ASHRAE) Building and Control Network (BACnet''"), and the ECHELON LONTALK" protocol (developed by Echelon Corporation of Palo Alto, CA).
Meanwhile, in the computer industry, there have been efforts to develop 1o communications standards, although again, these standards have not been applied in any truly effective way to the specific problems of building automation. For example, the goal of the Internet I WWW / Java / CORBA standards is to provide the information the user wants, without taking into account what kind of program to use, what computer it runs on, or the format of the information.
Through a system of hypertext, users of the Web have been able to select and view information from all over the world. However, the basic Web lacks true interactivity - real-time, dynamic, and visual interaction between the user and application. Java brings this missing interactivity to the Web. With a Java-enabled Web browser, the user can encounter animation and interactive applications.
Efforts to implement real time control systems over the Internet have generally been unsuccessful, because of variability in packet transit times and the lack of guaranteed delivery over the Internet.
In conclusion, control systems have historically been based primarily on proprietary technologies of a single manufacturer. Although there have been efforts to standardize these architectures, they have achieved only limited success.
The inventors believe that there is a need for a highly integrated standard in the field of control systems which integrates a Java-based cc-mmon object model, specially adapted for use in building automation applications, and provides central control and monitoring using communications network standards, such as the internet.
Summary of the Invention In one aspect of the present invention, there is provided an object-oriented control system comprising:
clients for providing access to and control and monitoring of the object-oriented control system via an electronic network; foreign devices each operable with one or more control systems distinct from the object-oriented control system; stations for integrating said foreign devices into the object-oriented control system using a common object model, supervising other stations, and serving as master of the local system wherein a master provides persistent backup of all configuration information; and a flexible and open architecture capable of supporting a plurality of diverse configurations of said clients, foreign devices, and stations; a real-time synchronization manager to regulate the orderly and timely execution of multiple tasks; a plurality of user-defined objects; a plurality of object properties; a plurality of object categories; an object creation facility to allow user creation and modification of said objects and said properties according to a plurality of said object categories; a multi-level security facility; a plurality of pre-defined objects coexisting with said user-defined objects; a persistent and real-time information synchronization manager that maintains the integrity of system data throughout the object-oriented control system through the use of archiving and synchronization; a control engine for providing predictable order of execution of said objects; and a programmable mail service for sending email notifications containing real-time data to remote sites.
clients for providing access to and control and monitoring of the object-oriented control system via an electronic network; foreign devices each operable with one or more control systems distinct from the object-oriented control system; stations for integrating said foreign devices into the object-oriented control system using a common object model, supervising other stations, and serving as master of the local system wherein a master provides persistent backup of all configuration information; and a flexible and open architecture capable of supporting a plurality of diverse configurations of said clients, foreign devices, and stations; a real-time synchronization manager to regulate the orderly and timely execution of multiple tasks; a plurality of user-defined objects; a plurality of object properties; a plurality of object categories; an object creation facility to allow user creation and modification of said objects and said properties according to a plurality of said object categories; a multi-level security facility; a plurality of pre-defined objects coexisting with said user-defined objects; a persistent and real-time information synchronization manager that maintains the integrity of system data throughout the object-oriented control system through the use of archiving and synchronization; a control engine for providing predictable order of execution of said objects; and a programmable mail service for sending email notifications containing real-time data to remote sites.
Therefore, it is a general object of embodiments of the present invention to provide a control system and methods using object-oriented software that integrates BACnet, LonMark, CORBA, Java and Internet systems into a common object model. The present invention in a preferred embodiment uses object technology as a key to constructing truly distributed applications in a multi-vendor open system environment supporting multiple industry standards. The BACnet / LonMark / Internet / CORBA architectures are combined in the invention and Java object-oriented software concepts are applied to effectuate distributed control and information management. Messages (events) are passed between the autonomous modules that use object-technology to encapsulate both data and functionality. These functional objects are replicated for reuse, and are grouped to form more complex functions that build on the work of other objects. The Web BAS Server's navigational tools provide a global view of the process that is being controlled by the autonomous fieldbus modules and provide unrestricted information flow.
It is a further general object of embodiments of the present invention to provide a control system and methods in which both pre-defined objects and user-defined and created objects exist in a single control system. A
customized programming language is provided for object modification, creation, and management. A set of pre-defined objects is also provided.
It is a still further general object of embodiments of the present invention to provide a control system and methods that maintains the integrity of system - 4a -data in a distributed system, and that distributes system data as required throughout the distributed system, through the use of archiving and synchronization techniques. A
master copy of each datum is preferably maintained at a single virtual machine, and a system of synchronized and non-synchronized caches is used to ensure that objects of the control system have access to current system data.
System data is archived in order to provide persistency.
It is a still further object of embodiments of the present invention to provide a control system and methods in which object properties associated with a device are updated dynamically - 4b -to reflect external interface characteristics of the: device. To accomplish this, devices of the control system are queried for their external interface characteristics and their associated object properties updated accordingly. This provides for management of devices without requiring a pre-programmed specific external interface representation.
These as well as other objects of the present invention are apparent upon inspection of this specification including the appendices and drawings.
Brief Description of the Drawings Figure 1 is a preferred general architecture of an object-oriented control system comprising Clients, Stations, Foreign Devices and F;emote Hosts;
Figure IA illustrates different types of stations of the object-oriented control system;
Figure 2 shows an alternative embodiment of a configuration of the object-oriented control system in the form of a Field Controller System in which clients access a single Field Controller supervising a LonMark' Fieldbus;
Figure 3 shows an alternative embodiment of a configuration of the object-oriented control system in the form of a Small Web BAS Server System where clients access a single Web BAS Server supervising a LonMark' Fieldbus;
Figure 4 shows a preferred embodiment of a cor.ifiguration of the object-oriented.
control system in the form of a Two Level System in which the Web BAS Server directly supervises a combination of Network Processors, Field Controllers and BACnet Devices;
Figure 5 shows an alternative embodiment of a configuration of the object-oriented control system in the form of a Three Level System may also be provided in which a Web BAS Server directly supervises Network Processors which in turn supervise Field Controllers;
Figure 6 shows an alternative embodiment of a configuration of the object-oriented control system in the form of a Distributed System in which a collection of large or small systems is connected and supervised via a Remote Host;
It is a further general object of embodiments of the present invention to provide a control system and methods in which both pre-defined objects and user-defined and created objects exist in a single control system. A
customized programming language is provided for object modification, creation, and management. A set of pre-defined objects is also provided.
It is a still further general object of embodiments of the present invention to provide a control system and methods that maintains the integrity of system - 4a -data in a distributed system, and that distributes system data as required throughout the distributed system, through the use of archiving and synchronization techniques. A
master copy of each datum is preferably maintained at a single virtual machine, and a system of synchronized and non-synchronized caches is used to ensure that objects of the control system have access to current system data.
System data is archived in order to provide persistency.
It is a still further object of embodiments of the present invention to provide a control system and methods in which object properties associated with a device are updated dynamically - 4b -to reflect external interface characteristics of the: device. To accomplish this, devices of the control system are queried for their external interface characteristics and their associated object properties updated accordingly. This provides for management of devices without requiring a pre-programmed specific external interface representation.
These as well as other objects of the present invention are apparent upon inspection of this specification including the appendices and drawings.
Brief Description of the Drawings Figure 1 is a preferred general architecture of an object-oriented control system comprising Clients, Stations, Foreign Devices and F;emote Hosts;
Figure IA illustrates different types of stations of the object-oriented control system;
Figure 2 shows an alternative embodiment of a configuration of the object-oriented control system in the form of a Field Controller System in which clients access a single Field Controller supervising a LonMark' Fieldbus;
Figure 3 shows an alternative embodiment of a configuration of the object-oriented control system in the form of a Small Web BAS Server System where clients access a single Web BAS Server supervising a LonMark' Fieldbus;
Figure 4 shows a preferred embodiment of a cor.ifiguration of the object-oriented.
control system in the form of a Two Level System in which the Web BAS Server directly supervises a combination of Network Processors, Field Controllers and BACnet Devices;
Figure 5 shows an alternative embodiment of a configuration of the object-oriented control system in the form of a Three Level System may also be provided in which a Web BAS Server directly supervises Network Processors which in turn supervise Field Controllers;
Figure 6 shows an alternative embodiment of a configuration of the object-oriented control system in the form of a Distributed System in which a collection of large or small systems is connected and supervised via a Remote Host;
Figure 7 is a description of a preferred embodinient of a persistent and real-time information synchronization manager for an object-oriented control system;
Figure 8 is an overview of an object class hierarchy of an object-oriented control system;
Figure 9 describes communication between stations and clients of a preferred embodiment of an object-oriented control system;
Figure 10 further describes communication between stations and clients of a preferred embodiment of an object-oriented control system;
and Figure 11 describes the architecture of a preferred embodiment of an object-oriented control system.
Detailed Description of the Preferred Embodimeiits A presently preferred embodiment of an object-oriented control system 100 provides solutions for distributed control of systems of various sizes and configurations. Preferably, a general architecture is provided comprising Clients 101, Stations 102 (reference Figure 1A), and Foreign Devices 105 as shown in Figure 1.
Clients 101 in the present system include a Browser Client 120 and a Full Client 121. Clients lOlprovide access to the systerri via an Intranet or the Internet.
Clients 101 rely on the server software in a station to provide this access.
Browser client 120 provides full user access to the system from any approved Java Enabled Browser. Full Client 121 provides all of the capability of Browser Client 120, plus an Application Enabler Tool.
Stations 102 are the heart of object-oriented control system 100. Stations 102 include a Web BAS Server (WBS) (110), Network Processor (NP) (111) and Field Controller (FC) (112). Stations 102 typically perform one or more of three roles.
1. Stations 102 integrate Foreign Devices 108 into the system. WBS 110, NP
111 and FC 112 can perform this role.
Figure 8 is an overview of an object class hierarchy of an object-oriented control system;
Figure 9 describes communication between stations and clients of a preferred embodiment of an object-oriented control system;
Figure 10 further describes communication between stations and clients of a preferred embodiment of an object-oriented control system;
and Figure 11 describes the architecture of a preferred embodiment of an object-oriented control system.
Detailed Description of the Preferred Embodimeiits A presently preferred embodiment of an object-oriented control system 100 provides solutions for distributed control of systems of various sizes and configurations. Preferably, a general architecture is provided comprising Clients 101, Stations 102 (reference Figure 1A), and Foreign Devices 105 as shown in Figure 1.
Clients 101 in the present system include a Browser Client 120 and a Full Client 121. Clients lOlprovide access to the systerri via an Intranet or the Internet.
Clients 101 rely on the server software in a station to provide this access.
Browser client 120 provides full user access to the system from any approved Java Enabled Browser. Full Client 121 provides all of the capability of Browser Client 120, plus an Application Enabler Tool.
Stations 102 are the heart of object-oriented control system 100. Stations 102 include a Web BAS Server (WBS) (110), Network Processor (NP) (111) and Field Controller (FC) (112). Stations 102 typically perform one or more of three roles.
1. Stations 102 integrate Foreign Devices 108 into the system. WBS 110, NP
111 and FC 112 can perform this role.
2. Stations 102 supervise other stations 102. Ir.- this role, stations 102 integrate the stations 102 they supervise into the system. Supervising also includes requirements such as monitoring and routing. WBS 110 and NP 111 can perform this role.
3. Stations 102 can be the master of the local system. In this role they provide persistent backup of all configuration information. WBS 110 and FC 112 can perform this role.
In the role of integrator, station 102 brings information into objects so that it is available to the rest of the system with predictable behavior. In its supervisory role, 1o station 102 monitors other stations 102, including checking system integrity between stations and routing data and event information.
When functioning as a master, station 102 is defined as the primary master of the system. The primary master provides backups of all configuration information.
Foreign Devices 105 include any devices compatible with the system, but which are not controlled directly using downloadable Java-based objects. Two specified types of foreign devices 105 are BACnetTM Devices 123 and LonMarkTM Devices 122 which adhere to the standards promulgated in the industry for those devices.
Remote Hosts 108 provide some functions of the system at a site other than the site of the control system. Remote Hosts 108 can be linked to the job by any communications link supporting TCP/IP, including serial modems.
Stations 102 communicate as described in Figui=es 9 and 10. Browser clients 120 and full clients 121 communicate with stations 102, including Web BAS
server 110, network processor 111, and field controller 112, via control network 106 using Hypertext Transport Protocol (HTTP) and Java Reimote Method Invocation (RMI).
Web BAS server 110 and field controller 112 further comprise an object database 150 for storage of and access to objects of object-oiriented control system 100.
A preferred architecture of object-oriented control system 100 is described in Figure 11 for a variety of users.
To permit distributed control system management of LonMark' Devices 122, it is necessary for the external interface for the particular device type to be represented in the object properties associated with each LonN[ark' Device 122. The external interface information may include, for example, network variables available for the particular device type. In the past, for each new LonMark' Device 122 added to the system or for changes to the external interface of a LonMark' Device 122, it has been required for the user of a distributed control system to first program or enter this external interface information into the object properties associated with LonMark' Device 122 in order for a distributed control system to manage LonMark' Device 122, resulting in delays in bringing a new or modified foreign device 105 online and able to be controlled by a distributed control system.
Object-oriented control system 100 overcomes this limitation by providing dynamic LonMark' device update of the object properties associated with a LonMarkT"
Devices 122 to reflect -external interface characteristics of the device. To accomplish this, object-oriented control system 100 queries LonMark''' Devices for their external interface characteristics. The effected object properties associated with the queried LonMark''' Devices 122 are then updated and configured according to the information received in response to the query. This dynamic device external interface update capability thus provides for management of LonMark1'' Devices without requiring prior pre-programmed specific external interface representation by the user, thereby saving time and reducing the like'lihood of error in configuring the LonMark' Device 122 object properties.
The Network Processor 111 and Field Controller 112 types of stations 102 preferably implement Java Virtual Machines (JVM) which can be programmed using Java objects for specific control of a system attached to NP 111 or FC 112.
The programming of these JVMs can be adjusted in real time by adding, deleting, or reconfiguring links between objects. Each object is preferably implemented using Java and corresponds to a specific control function, and may be linked to other objects using a set of predetermined links. For example, the available objects may include function generators, analog and digital inputs and outputs, multistate outputs, alarm objects, available station service objects, and custom user-programmed objects. Each of these objects may be combined in any desired manner to produce a virtual programmed controller for the clevice or devices connected to the relevant JVM.
In a presently preferred embodiment, pre-defined objects coexist with user-defined objects in a single object-oriented control system 100. To facilitate object creation, a customized programming language is preferably provided, based on the Java language, but both customized and simplified for control applications.
The customized programming language is used in specifying programming instructions for program nodes of object-oriented control system. 100. Further, a programming editor is provided as a development tool for user prograrnming of program nodes using the customized programming language.
Throughout this specification and the appendices attached hereto, the term "node" is used to refer to certain objects and their properties provided by object-oriented control system 100. It is to be understood that in the context of a presently preferred embodiment of object-oriented control system 100 a "node" is an object.
The processing and functional behavior of a node is determined by its associated properties, which are programmable. Most of the software applications comprising object-oriented control system 100 are provided in the form of nodes.
A set of object properties is provided by object-oriented control system 100.
A
set of pre-defined objects is provided by object-oriejnted control system 100.
Further, object-oriented control system 100 provides calendars, schedules, and logs by which a user may control commands and the timing and operation of software applications of the system. Calendars allow the specification of days that should be treated specially with respect to system operation. Schedules allow program commands to be performed at specific times. Logs are a set of nodes and services that collect system information into buffers for sharing of information throughout object-oriented control system 100.
Logs are stored persistently in a database that supports intelligent archiving of information. Specific types of logs include, but are not limited to:
3. Stations 102 can be the master of the local system. In this role they provide persistent backup of all configuration information. WBS 110 and FC 112 can perform this role.
In the role of integrator, station 102 brings information into objects so that it is available to the rest of the system with predictable behavior. In its supervisory role, 1o station 102 monitors other stations 102, including checking system integrity between stations and routing data and event information.
When functioning as a master, station 102 is defined as the primary master of the system. The primary master provides backups of all configuration information.
Foreign Devices 105 include any devices compatible with the system, but which are not controlled directly using downloadable Java-based objects. Two specified types of foreign devices 105 are BACnetTM Devices 123 and LonMarkTM Devices 122 which adhere to the standards promulgated in the industry for those devices.
Remote Hosts 108 provide some functions of the system at a site other than the site of the control system. Remote Hosts 108 can be linked to the job by any communications link supporting TCP/IP, including serial modems.
Stations 102 communicate as described in Figui=es 9 and 10. Browser clients 120 and full clients 121 communicate with stations 102, including Web BAS
server 110, network processor 111, and field controller 112, via control network 106 using Hypertext Transport Protocol (HTTP) and Java Reimote Method Invocation (RMI).
Web BAS server 110 and field controller 112 further comprise an object database 150 for storage of and access to objects of object-oiriented control system 100.
A preferred architecture of object-oriented control system 100 is described in Figure 11 for a variety of users.
To permit distributed control system management of LonMark' Devices 122, it is necessary for the external interface for the particular device type to be represented in the object properties associated with each LonN[ark' Device 122. The external interface information may include, for example, network variables available for the particular device type. In the past, for each new LonMark' Device 122 added to the system or for changes to the external interface of a LonMark' Device 122, it has been required for the user of a distributed control system to first program or enter this external interface information into the object properties associated with LonMark' Device 122 in order for a distributed control system to manage LonMark' Device 122, resulting in delays in bringing a new or modified foreign device 105 online and able to be controlled by a distributed control system.
Object-oriented control system 100 overcomes this limitation by providing dynamic LonMark' device update of the object properties associated with a LonMarkT"
Devices 122 to reflect -external interface characteristics of the device. To accomplish this, object-oriented control system 100 queries LonMark''' Devices for their external interface characteristics. The effected object properties associated with the queried LonMark''' Devices 122 are then updated and configured according to the information received in response to the query. This dynamic device external interface update capability thus provides for management of LonMark1'' Devices without requiring prior pre-programmed specific external interface representation by the user, thereby saving time and reducing the like'lihood of error in configuring the LonMark' Device 122 object properties.
The Network Processor 111 and Field Controller 112 types of stations 102 preferably implement Java Virtual Machines (JVM) which can be programmed using Java objects for specific control of a system attached to NP 111 or FC 112.
The programming of these JVMs can be adjusted in real time by adding, deleting, or reconfiguring links between objects. Each object is preferably implemented using Java and corresponds to a specific control function, and may be linked to other objects using a set of predetermined links. For example, the available objects may include function generators, analog and digital inputs and outputs, multistate outputs, alarm objects, available station service objects, and custom user-programmed objects. Each of these objects may be combined in any desired manner to produce a virtual programmed controller for the clevice or devices connected to the relevant JVM.
In a presently preferred embodiment, pre-defined objects coexist with user-defined objects in a single object-oriented control system 100. To facilitate object creation, a customized programming language is preferably provided, based on the Java language, but both customized and simplified for control applications.
The customized programming language is used in specifying programming instructions for program nodes of object-oriented control system. 100. Further, a programming editor is provided as a development tool for user prograrnming of program nodes using the customized programming language.
Throughout this specification and the appendices attached hereto, the term "node" is used to refer to certain objects and their properties provided by object-oriented control system 100. It is to be understood that in the context of a presently preferred embodiment of object-oriented control system 100 a "node" is an object.
The processing and functional behavior of a node is determined by its associated properties, which are programmable. Most of the software applications comprising object-oriented control system 100 are provided in the form of nodes.
A set of object properties is provided by object-oriented control system 100.
A
set of pre-defined objects is provided by object-oriejnted control system 100.
Further, object-oriented control system 100 provides calendars, schedules, and logs by which a user may control commands and the timing and operation of software applications of the system. Calendars allow the specification of days that should be treated specially with respect to system operation. Schedules allow program commands to be performed at specific times. Logs are a set of nodes and services that collect system information into buffers for sharing of information throughout object-oriented control system 100.
Logs are stored persistently in a database that supports intelligent archiving of information. Specific types of logs include, but are not limited to:
WO 99/604$7 PCT/US99/10711 1. Control logs for collecting and storing numeric status values and output string values. Control logs execute in the control erigine to collect information output from other nodes.
2. Service logs for logging errors and operator-made changes. Service logs occur once per station 102.
3. Foreign logs containing log information obtained from systems external to object-oriented control system 100.
In addition, the LogService software application, provides web-based access via HyperText Transport Protocol (HTTP) to all logs.
Access to objects, or nodes, is preferrably controlled through a multilevel security protocol (preferably an 8-level protocol), and the objects may be grouped in "containers" which facilitate display at various levels of detail. That is, a person monitoring, controlling, or programming the object operation may display the linked objects at various levels of detail depending on immediate requirements.
Several features are provided to control who has access to object-oriented control system 100 and who can access and modify individual objects including, but not limited to, an initial password required at logon and. programmable security groups per object.
More specifically, the security model requires any user to logon to the system with a valid password. Each user object can be assigned or denied permissions to any of 8 access levels (Security Permissions) of the 8 security groups. These security groups are independent from each other and their meaning is a local matter.
Each object can be assigned to any combination of these 8 security groups also. In this way many different access definitions can be defined simultaneously.
Each user object defined in the database has a user name and password that are required in order to logon to the system. Each of these user objects can be granted or denied permissions to any of the Security Permissions in each of the 8 Security Groups.
There are 8 Security Groups defined for the systeni. They are independent of each other and their meaning is a local matter. Each object can be assigned to any combination of these 8 security groups through the property security groups.
By default, each object is assigned to Security Group 0 (general). In this way many different Security Permissions can be defined simulttaneously. The default Security Groups are as follows:
0 = general 1 = hvac 2 = security 3 = life safety 4 = group4 5 = group5 6 = group6 7 = group7 Security permissions are basic rights granted to individual users. They include without limitation: Operator Read, Operator Write, Administrator Read, Administrator Write, Standard Commands, Acknowledge Alarm, Emergency Commands, and Administrator Commands.
A user's access rights to an object are determined by combining his rights for each group that is checked or indicated in the object's security groups property. In addition, if a user has rights to a container, some rights get applied to its children.
If a user has Operator Read permissions to a container, that user can see the children in the workspace view. If a user has Administrator Write permissions to a container, that user can perform numerous functions to the container including linking, cut, copy, duplicate, delete and rename.
Object security is determined by the combination of Security Groups that a user assigns to the object and the designation of each of' its properties as an Operator or Administrator property. The user may assign any object to any combination of the 8 Security Groups defined for the system. This is done through the property security groups. By default, each object is assigned to Security Group 0 (general).
Each property in the system has been designated as either an Operator or Administrator property. This determines which Security Permissions a user must have in order to view or edit the property of an object.
Operator Security Permissions are defined to be the functions required as a system operator who may need to view or edit only the lowest level features of objects.
Administrator Security Permissions are defined to be the functions required to configure a system. This person may need to view or edit all the features of the system. Administrator Edit includes creating objects and linking objects in addition to editing properties.
Object-oriented control system 100 provides a user service to define new users through user objects. The user service ensures that user security groups and permissions are enforced for each user. New user objects are created for new users containing a default username and password. The user may change his password.
Users or objects may be assigned to one or more security groups. An individual user's security permissions may be changed.
Objects may be linked together dynamically using one of the following links, without limitation: Normal, Trigger, LonTalkLocal, LonTalkNetwork, UI, Composite, or External.
Further, object-oriented control system 100 uses BACnetTM command prioritization to arbitrate actions performed by software application programs upon objects or nodes. BACnet' command prioritization is accomplished by assigning different priority levels to application programs capable of conunanding a particular object or node, and storing the particular prioritization for that node at that node as an object property of the node. Each node, or object, acts upon commands received from software application programs according to its command prioritization levels.
Clients 101, servers 110, and network processors 111 are preferably implemented using personal computers, such as Intel Pentium' based personal computers, running the Microsoft Windows 95 or VVindows NT operating systems.
Field Controllers 112 may be implemented using lirnited capability, low cost single board computers capable of operating as Java Virtual Machines. For example, so-called Network Computers may be used for this purpose.
2. Service logs for logging errors and operator-made changes. Service logs occur once per station 102.
3. Foreign logs containing log information obtained from systems external to object-oriented control system 100.
In addition, the LogService software application, provides web-based access via HyperText Transport Protocol (HTTP) to all logs.
Access to objects, or nodes, is preferrably controlled through a multilevel security protocol (preferably an 8-level protocol), and the objects may be grouped in "containers" which facilitate display at various levels of detail. That is, a person monitoring, controlling, or programming the object operation may display the linked objects at various levels of detail depending on immediate requirements.
Several features are provided to control who has access to object-oriented control system 100 and who can access and modify individual objects including, but not limited to, an initial password required at logon and. programmable security groups per object.
More specifically, the security model requires any user to logon to the system with a valid password. Each user object can be assigned or denied permissions to any of 8 access levels (Security Permissions) of the 8 security groups. These security groups are independent from each other and their meaning is a local matter.
Each object can be assigned to any combination of these 8 security groups also. In this way many different access definitions can be defined simultaneously.
Each user object defined in the database has a user name and password that are required in order to logon to the system. Each of these user objects can be granted or denied permissions to any of the Security Permissions in each of the 8 Security Groups.
There are 8 Security Groups defined for the systeni. They are independent of each other and their meaning is a local matter. Each object can be assigned to any combination of these 8 security groups through the property security groups.
By default, each object is assigned to Security Group 0 (general). In this way many different Security Permissions can be defined simulttaneously. The default Security Groups are as follows:
0 = general 1 = hvac 2 = security 3 = life safety 4 = group4 5 = group5 6 = group6 7 = group7 Security permissions are basic rights granted to individual users. They include without limitation: Operator Read, Operator Write, Administrator Read, Administrator Write, Standard Commands, Acknowledge Alarm, Emergency Commands, and Administrator Commands.
A user's access rights to an object are determined by combining his rights for each group that is checked or indicated in the object's security groups property. In addition, if a user has rights to a container, some rights get applied to its children.
If a user has Operator Read permissions to a container, that user can see the children in the workspace view. If a user has Administrator Write permissions to a container, that user can perform numerous functions to the container including linking, cut, copy, duplicate, delete and rename.
Object security is determined by the combination of Security Groups that a user assigns to the object and the designation of each of' its properties as an Operator or Administrator property. The user may assign any object to any combination of the 8 Security Groups defined for the system. This is done through the property security groups. By default, each object is assigned to Security Group 0 (general).
Each property in the system has been designated as either an Operator or Administrator property. This determines which Security Permissions a user must have in order to view or edit the property of an object.
Operator Security Permissions are defined to be the functions required as a system operator who may need to view or edit only the lowest level features of objects.
Administrator Security Permissions are defined to be the functions required to configure a system. This person may need to view or edit all the features of the system. Administrator Edit includes creating objects and linking objects in addition to editing properties.
Object-oriented control system 100 provides a user service to define new users through user objects. The user service ensures that user security groups and permissions are enforced for each user. New user objects are created for new users containing a default username and password. The user may change his password.
Users or objects may be assigned to one or more security groups. An individual user's security permissions may be changed.
Objects may be linked together dynamically using one of the following links, without limitation: Normal, Trigger, LonTalkLocal, LonTalkNetwork, UI, Composite, or External.
Further, object-oriented control system 100 uses BACnetTM command prioritization to arbitrate actions performed by software application programs upon objects or nodes. BACnet' command prioritization is accomplished by assigning different priority levels to application programs capable of conunanding a particular object or node, and storing the particular prioritization for that node at that node as an object property of the node. Each node, or object, acts upon commands received from software application programs according to its command prioritization levels.
Clients 101, servers 110, and network processors 111 are preferably implemented using personal computers, such as Intel Pentium' based personal computers, running the Microsoft Windows 95 or VVindows NT operating systems.
Field Controllers 112 may be implemented using lirnited capability, low cost single board computers capable of operating as Java Virtual Machines. For example, so-called Network Computers may be used for this purpose.
The architecture of the present invention supports many different system configurations. Some of the more common configu:rations include a Field Controller System (Figure 2), Small Web BAS Server System (Figure 3), Two Level System (Figure 4), Three Level System (Figure 5), and a Distributed System (Figure 6).
Referring to Figure 2, the Field Controller System is a configuration of the present invention in which clients access a single Field Controller 112 supervising a LonMark Fieldbus 107 connected to a plurality of LonMark Devices 122.
Figure 3 shows a Small Web BAS Server Syster.n where clients 101 (either i0 browser client 120 or full client 121, or both) access a single Web BAS
Server 110 supervising a LonMark Fieldbus 107 connected to a. plurality of LonMark Devices 122. The Two Level System, as shown in Figure 4, is a system configured with Web BAS Server 110 directly supervising any combination of Network Processors 111, Field Controllers 112 and BACnet Devices 12:3. As shown in Figure 5, a Three Level System may also be provided in which Web BAS Server 110 directly supervises Network Processors 111 which in turn supervise Field Controllers 112.
Finally, Figure 6 shows an alternative embodiment of an object-oriented control system 100 configured as a Distributed System furtlier comprising a Remote Host 108 and in which a collection of large or small systems is connected and supervised via Remote Host 108 using modems 109.
The system encompasses an architecture for constructing, deploying, and running a system which automates the many services required to successfully operate and manage office, commercial, healthcare, educational, and industrial facilities.
Data flow in the system is preferably governed by a persistent and real-time information synchronization manager (PRISM) 200 at each station 102 that is key to achieving the objectives of distributed object-oriented control system 100.
PRISM
200 maintains the integrity of system data throughout object-oriented control system 100 through the use of archiving and synchronization techniques as described in Figure 7. Data associated with object-oriented control system 100 is categorized into system data, Java Application and Control Engines (JACEs), nodes, and properties. Further, each datum in object-oriented control system 100 is also categorized according to its life-cycle. Transient data exists only during the lifetime of its host virtual machine (VM). Persistent data exists beyond the life of its host VM and persists through power failure or shutdovvn. Virtual machines present in object-oriented control system 100 include, but are not limited to, a full user interface 206 associated with full client 121, a browser user interface 208 associated with browser client 120, a Taz 210, and one or more JACEs 212. Persistent data is archived by saving it in non-volatile storage. In a presently preferred embodiment, 1o FLASH 204 and magnetic disk 202 non-volatile storage media (i.e., "Pstore") are used to store archived persistent data. JACEs 212 maintain a master copy of their associated transient and persistent data. Synchronized and non-synchronized caches are used under the control of PRISM 200 to ensure that objects have access to current system data. Each virtual machine has at le:ast one cache containing all data needed by that virtual machine. Caches are maintained current by a method of reconciliation in which the caches of virtual machines are reconciled with, or used to update, the caches of their supervising stations 1.02. Stations 102 then reconcile their caches with each other. In a presently prefei-red embodiment, a checksum is used to determine inconsistencies in current data. Each supervising stations obtains the current virtual machine cached data for the nodes stored at a supervising station, and then computes a checksum over its cache contents and the cache data received from the queried virtual machines. If the checksums do not match, then an inconsistency is detected, in which case the supervising station 102 takes steps to correct the problem, including, but not limited to, update its cache to reflect the newer data, perform timestamp comparison to select the newer data, or raise an alarm or error indication.
In a presently most preferred embodiment, instead of a single Web BAS server 110, object-oriented control system 100 comprises a plurality of Web BAS
servers 110, each of a plurality of Web BAS servers 110 having its own database of persistent data. In this presently most preferred embodiment, objects access persistent data without regard to the physical location of the particular Web BAS
server 110 where the data is archived. A station 102 can communicate with other stations 102 without regard to whether the other station 102 is also connected to its local Web BAS server 110.
As noted previously, to support a wide range of requirements for objects in all type of facilities, the preferred embodiment of the invention provides a Java Modular Environment which allows software modules to 'plug-in" anywhere in the control system. In this way the objects can be placed where they are needed and provide the best real-time performance.
The system is preferably composed of Java class files to implement the system in a platform independent way so that it can be delivered in any supported platform.
The Core Class Hierarchy according to the present invention provides a system with Nodes and Platforms that enable this flexibility. 'The hierarchy is supported by a flexible approach to configuring drivers for the different interfaces and protocols for the different platforms. In addition to the Core Class Hierarchy, user objects are organized in a hierarchy so that they inherit behavior hierarchically and perform predictably. The hierarchy established in a preferred embodiment is shown in Figure 8.
In a presently preferred embodiment, a user of object-oriented control system 100 can create and manipulate objects associated with a plurality of object categories including, but not limited to, the following object categories: Control, Applications, User Interface, Containers, LonWorksT', BACnet, Admin, and Services.
Further, the Control object category further coniprises the following sub-categories: Analog Input, Analog Output, Binary Input, Binary Output, Comparison, Logic, Loop, Math, Function Generator, and Totalizer.
Further, the Applications object category further comprises the following sub-categories: Schedule, Calendar, Program, Analog Log, Binary Log, and Integer Log.
Further, the User Interface object category further comprises the following sub-categories: Bar Graph, Boolean Image, Bound Image, Damper, Fan, Hot Spot, WO 99/604$7 PCT/US99/10711 Image Spectrum, Text, and Time Plot.
Further, the Containers object category further comprises the Composite and Generic sub-categories.
Further, the LonWorks' object category furthei- comprises the following sub-categories: Snvt Switch Mux, Snvt Switch Demux, DemoFcu, Leviton Switch, Leviton Sw 481, Action Instr AO, Action Instr Al, Action lnstr DO, and Local Lon Node.
Further, the BACnet object category further cornprises the following sub-categories: Device, Analoglnput, AnalogOutput, Bi.naryInput, and BinaryOutput.
Further, the Services object category further co;mprises the following sub-categories: Control Engine, Ul Engine, User Access, Interstation Link, HTTPD
Service, Web Text, Web View, Media, Program Debug, Dial Up, Lonworks, Lon Communications, Network Variable Poll Scheduler, Network Variable Manager, BACnet Server, BACnet Client, BACnet Poll, BACnet Transport, BACnet Network, BACnet Ethernet, Error Archive, Error Forward, and Mail.
Further, the Admin object category further comprises the User sub-category.
The purposes and uses of these objects provided by object-oriented control system 100 include, but are not limited to, those commonly understood to be associated with each of these object categories and ,sub-categories.
To perform acceptably in real-time environmer.its, the control engine for objects must perform predictably and yet provide the user with control over order of execution of objects. The present invention provides this capability. In a presently preferred embodiment, object properties are provided to specify execution frequency and order of execution. In a presently most preferred embodiment, five different execution frequencies may be specified. Each execution frequency may be adjusted by editing the associated object property in multiples of 100 milliseconds. In a presently most preferred embodiment, three different execution orders may be specified.
Referring to Figure 2, the Field Controller System is a configuration of the present invention in which clients access a single Field Controller 112 supervising a LonMark Fieldbus 107 connected to a plurality of LonMark Devices 122.
Figure 3 shows a Small Web BAS Server Syster.n where clients 101 (either i0 browser client 120 or full client 121, or both) access a single Web BAS
Server 110 supervising a LonMark Fieldbus 107 connected to a. plurality of LonMark Devices 122. The Two Level System, as shown in Figure 4, is a system configured with Web BAS Server 110 directly supervising any combination of Network Processors 111, Field Controllers 112 and BACnet Devices 12:3. As shown in Figure 5, a Three Level System may also be provided in which Web BAS Server 110 directly supervises Network Processors 111 which in turn supervise Field Controllers 112.
Finally, Figure 6 shows an alternative embodiment of an object-oriented control system 100 configured as a Distributed System furtlier comprising a Remote Host 108 and in which a collection of large or small systems is connected and supervised via Remote Host 108 using modems 109.
The system encompasses an architecture for constructing, deploying, and running a system which automates the many services required to successfully operate and manage office, commercial, healthcare, educational, and industrial facilities.
Data flow in the system is preferably governed by a persistent and real-time information synchronization manager (PRISM) 200 at each station 102 that is key to achieving the objectives of distributed object-oriented control system 100.
PRISM
200 maintains the integrity of system data throughout object-oriented control system 100 through the use of archiving and synchronization techniques as described in Figure 7. Data associated with object-oriented control system 100 is categorized into system data, Java Application and Control Engines (JACEs), nodes, and properties. Further, each datum in object-oriented control system 100 is also categorized according to its life-cycle. Transient data exists only during the lifetime of its host virtual machine (VM). Persistent data exists beyond the life of its host VM and persists through power failure or shutdovvn. Virtual machines present in object-oriented control system 100 include, but are not limited to, a full user interface 206 associated with full client 121, a browser user interface 208 associated with browser client 120, a Taz 210, and one or more JACEs 212. Persistent data is archived by saving it in non-volatile storage. In a presently preferred embodiment, 1o FLASH 204 and magnetic disk 202 non-volatile storage media (i.e., "Pstore") are used to store archived persistent data. JACEs 212 maintain a master copy of their associated transient and persistent data. Synchronized and non-synchronized caches are used under the control of PRISM 200 to ensure that objects have access to current system data. Each virtual machine has at le:ast one cache containing all data needed by that virtual machine. Caches are maintained current by a method of reconciliation in which the caches of virtual machines are reconciled with, or used to update, the caches of their supervising stations 1.02. Stations 102 then reconcile their caches with each other. In a presently prefei-red embodiment, a checksum is used to determine inconsistencies in current data. Each supervising stations obtains the current virtual machine cached data for the nodes stored at a supervising station, and then computes a checksum over its cache contents and the cache data received from the queried virtual machines. If the checksums do not match, then an inconsistency is detected, in which case the supervising station 102 takes steps to correct the problem, including, but not limited to, update its cache to reflect the newer data, perform timestamp comparison to select the newer data, or raise an alarm or error indication.
In a presently most preferred embodiment, instead of a single Web BAS server 110, object-oriented control system 100 comprises a plurality of Web BAS
servers 110, each of a plurality of Web BAS servers 110 having its own database of persistent data. In this presently most preferred embodiment, objects access persistent data without regard to the physical location of the particular Web BAS
server 110 where the data is archived. A station 102 can communicate with other stations 102 without regard to whether the other station 102 is also connected to its local Web BAS server 110.
As noted previously, to support a wide range of requirements for objects in all type of facilities, the preferred embodiment of the invention provides a Java Modular Environment which allows software modules to 'plug-in" anywhere in the control system. In this way the objects can be placed where they are needed and provide the best real-time performance.
The system is preferably composed of Java class files to implement the system in a platform independent way so that it can be delivered in any supported platform.
The Core Class Hierarchy according to the present invention provides a system with Nodes and Platforms that enable this flexibility. 'The hierarchy is supported by a flexible approach to configuring drivers for the different interfaces and protocols for the different platforms. In addition to the Core Class Hierarchy, user objects are organized in a hierarchy so that they inherit behavior hierarchically and perform predictably. The hierarchy established in a preferred embodiment is shown in Figure 8.
In a presently preferred embodiment, a user of object-oriented control system 100 can create and manipulate objects associated with a plurality of object categories including, but not limited to, the following object categories: Control, Applications, User Interface, Containers, LonWorksT', BACnet, Admin, and Services.
Further, the Control object category further coniprises the following sub-categories: Analog Input, Analog Output, Binary Input, Binary Output, Comparison, Logic, Loop, Math, Function Generator, and Totalizer.
Further, the Applications object category further comprises the following sub-categories: Schedule, Calendar, Program, Analog Log, Binary Log, and Integer Log.
Further, the User Interface object category further comprises the following sub-categories: Bar Graph, Boolean Image, Bound Image, Damper, Fan, Hot Spot, WO 99/604$7 PCT/US99/10711 Image Spectrum, Text, and Time Plot.
Further, the Containers object category further comprises the Composite and Generic sub-categories.
Further, the LonWorks' object category furthei- comprises the following sub-categories: Snvt Switch Mux, Snvt Switch Demux, DemoFcu, Leviton Switch, Leviton Sw 481, Action Instr AO, Action Instr Al, Action lnstr DO, and Local Lon Node.
Further, the BACnet object category further cornprises the following sub-categories: Device, Analoglnput, AnalogOutput, Bi.naryInput, and BinaryOutput.
Further, the Services object category further co;mprises the following sub-categories: Control Engine, Ul Engine, User Access, Interstation Link, HTTPD
Service, Web Text, Web View, Media, Program Debug, Dial Up, Lonworks, Lon Communications, Network Variable Poll Scheduler, Network Variable Manager, BACnet Server, BACnet Client, BACnet Poll, BACnet Transport, BACnet Network, BACnet Ethernet, Error Archive, Error Forward, and Mail.
Further, the Admin object category further comprises the User sub-category.
The purposes and uses of these objects provided by object-oriented control system 100 include, but are not limited to, those commonly understood to be associated with each of these object categories and ,sub-categories.
To perform acceptably in real-time environmer.its, the control engine for objects must perform predictably and yet provide the user with control over order of execution of objects. The present invention provides this capability. In a presently preferred embodiment, object properties are provided to specify execution frequency and order of execution. In a presently most preferred embodiment, five different execution frequencies may be specified. Each execution frequency may be adjusted by editing the associated object property in multiples of 100 milliseconds. In a presently most preferred embodiment, three different execution orders may be specified.
In order to provide information about a site's performance to a remote site, the system provides a programmable mail service to send email to remote sites with real-time information whenever programmed to do so.
The system provides all of its object properties as elements that are accessible as standard data types. This allows the user and program objects to effectively use any property. These properties are then exposed as eXtended Markup Language (XML) for manipulation by other tools.
The system requires a means to allow a user to create custom objects for some applications. In order to meet this need a Script Lar.iguage is defined that exposes the system in a program object for user access and control. This language is simple, uses standard object links, has access to the library and provides a full debugger.
The present invention also applies the compound document paradigm of the Internet to control systems in a novel manner. This provides universal visibility of resources through a common Universal Resource Locator (URL). These resources are linked together to allow navigation creating a hyperlinked web of resources.
Resources are managed by the system to ensure accessibility and validity.
Resources in the system include class files, executables and DLLs, media, documentation, applications, property files, databases and logs, and third party software.
The control system must be usable by a vvide audience including facility managers, application engineers and information specialists. In general, the system provides a novel and unique control interface including a customized browser interface for accessing objects and information. Thiis interface includes a workspace display, workspace editor, properties display, links display, and help feature. The user can issue commands to any object or system, and change operating characteristics and properties through this control interface.
By collapsing the information management and real-tirne expert control system into a common workstation, BAS architecture according to the present invention is simplified and the customer is provided with a. single point of access to both information and control. The Web BAS Serveir platform provides a common graphical user interface based on the Java-enabled Web browser technology for all facility management information and building control applications. In addition, this open unified software environment provides consistent configuration tools for the information / fieldbus networks and control systein applications over Internet with any industry standard browser.
The Web BAS Server platform as disclosed herein is the BAS industry's first software technology to integrate the different BACnet, LonMark, and Internet /
CORBA standards into a common object model application environment supported through the Java-enabled Web browser interface. This embodiment also has lo integrated network management tools to support t:he BAS field contractor channels in the planning, design, configuration, installation, and maintenance of the BACnet /
LonMark / Internet / CORBA system networks.
The very scalable Web BAS Server software can be used on small buildings as a single user front-end platform attached directly to the BACnet / LonMark fieldbus.
On large BAS facilities, the Web BAS Server can be configured to supervise many Network Processors connected over Ethernet and support unlimited remote Web browser operator interface users. For corporate customers, the Web BAS Server can be configured to integrate the BAS architecture into the IBM enterprise information infrastructure and / or the Groupe Schneider industrial / power system architecture.
One significant feature of the invention is the development of a BAS
controller module (Network Processor). Traditional proprietary BAS controller platforms have had too little memory, speed, and throughput to support multiple building service applications. Therefore, each application such as HVAC and Access Control has been provided using separate controllers that subdivide the user's real problem into solvable standalone products, but not with a comprehensive solution. This has resulted in increased installation costs and very little integration between the incompatible standalone building service solutions.
These limitations are overcome in the present invention by connecting BAS
controller processor technology and an interoperable BACnet / LonMark fieldbus.
To exploit this new high-performance technology, the invention employs application development capabilities that take advantage of the available processing power.
Integration and multiple building service applicationis can thus be performed by the same computing platform.
To overcome the limited application development capabilities of today's BAS
controllers, the Network Processor in the present invention employs a Java application environment based on object-oriented analysis, design, and programming. The NP uses a powerful Java object/rule engine based on Sun's JavaSoft technology to integrate multiple high level building service applications and support multi-vendor fieldbus solutions. Examples of Network Processor applications include global alarming, global schedu(ing, trending / data collection, diagnostic services, and demand limiting / power rrianagement to integrate popular building service products.
The Network Processor (NP) object software environment is preferably provided on an embedded controller hardware platform. The NP platform package supports the multi-vendor LonMark fieldbus and also provides Ethernet peer-to-peer networking to other NPs and the Web BAS Server (See Figure 1 - BACnet /
LonMark / Internet Architecture).
The present invention provides three embodinients of Field Controller (FC) platforms as shown in the Figures and Appendices. The FC platforms preferably use 32-bit processors and may optionally connect through an Echelon coprocessor to the interoperable BACnet / LonMark fieldbus. These platforms use a real-time operating system that supports the Java object/rule engine for applications.
The FCs are configured by the Web BAS Server over the fieldbus or through the FC's local RS 232 / modem port or the video modem interface.
The first FC package supports locally attached terminal block input/output modules made by Groupe Schneider. This integrated design approach is very flexible and cost effective for high end industrial and commercial controller applications. The BACnet / LonMark object / rule engine can use any local input/output data or any fieldbus device data in its powerful application environment.
The system provides all of its object properties as elements that are accessible as standard data types. This allows the user and program objects to effectively use any property. These properties are then exposed as eXtended Markup Language (XML) for manipulation by other tools.
The system requires a means to allow a user to create custom objects for some applications. In order to meet this need a Script Lar.iguage is defined that exposes the system in a program object for user access and control. This language is simple, uses standard object links, has access to the library and provides a full debugger.
The present invention also applies the compound document paradigm of the Internet to control systems in a novel manner. This provides universal visibility of resources through a common Universal Resource Locator (URL). These resources are linked together to allow navigation creating a hyperlinked web of resources.
Resources are managed by the system to ensure accessibility and validity.
Resources in the system include class files, executables and DLLs, media, documentation, applications, property files, databases and logs, and third party software.
The control system must be usable by a vvide audience including facility managers, application engineers and information specialists. In general, the system provides a novel and unique control interface including a customized browser interface for accessing objects and information. Thiis interface includes a workspace display, workspace editor, properties display, links display, and help feature. The user can issue commands to any object or system, and change operating characteristics and properties through this control interface.
By collapsing the information management and real-tirne expert control system into a common workstation, BAS architecture according to the present invention is simplified and the customer is provided with a. single point of access to both information and control. The Web BAS Serveir platform provides a common graphical user interface based on the Java-enabled Web browser technology for all facility management information and building control applications. In addition, this open unified software environment provides consistent configuration tools for the information / fieldbus networks and control systein applications over Internet with any industry standard browser.
The Web BAS Server platform as disclosed herein is the BAS industry's first software technology to integrate the different BACnet, LonMark, and Internet /
CORBA standards into a common object model application environment supported through the Java-enabled Web browser interface. This embodiment also has lo integrated network management tools to support t:he BAS field contractor channels in the planning, design, configuration, installation, and maintenance of the BACnet /
LonMark / Internet / CORBA system networks.
The very scalable Web BAS Server software can be used on small buildings as a single user front-end platform attached directly to the BACnet / LonMark fieldbus.
On large BAS facilities, the Web BAS Server can be configured to supervise many Network Processors connected over Ethernet and support unlimited remote Web browser operator interface users. For corporate customers, the Web BAS Server can be configured to integrate the BAS architecture into the IBM enterprise information infrastructure and / or the Groupe Schneider industrial / power system architecture.
One significant feature of the invention is the development of a BAS
controller module (Network Processor). Traditional proprietary BAS controller platforms have had too little memory, speed, and throughput to support multiple building service applications. Therefore, each application such as HVAC and Access Control has been provided using separate controllers that subdivide the user's real problem into solvable standalone products, but not with a comprehensive solution. This has resulted in increased installation costs and very little integration between the incompatible standalone building service solutions.
These limitations are overcome in the present invention by connecting BAS
controller processor technology and an interoperable BACnet / LonMark fieldbus.
To exploit this new high-performance technology, the invention employs application development capabilities that take advantage of the available processing power.
Integration and multiple building service applicationis can thus be performed by the same computing platform.
To overcome the limited application development capabilities of today's BAS
controllers, the Network Processor in the present invention employs a Java application environment based on object-oriented analysis, design, and programming. The NP uses a powerful Java object/rule engine based on Sun's JavaSoft technology to integrate multiple high level building service applications and support multi-vendor fieldbus solutions. Examples of Network Processor applications include global alarming, global schedu(ing, trending / data collection, diagnostic services, and demand limiting / power rrianagement to integrate popular building service products.
The Network Processor (NP) object software environment is preferably provided on an embedded controller hardware platform. The NP platform package supports the multi-vendor LonMark fieldbus and also provides Ethernet peer-to-peer networking to other NPs and the Web BAS Server (See Figure 1 - BACnet /
LonMark / Internet Architecture).
The present invention provides three embodinients of Field Controller (FC) platforms as shown in the Figures and Appendices. The FC platforms preferably use 32-bit processors and may optionally connect through an Echelon coprocessor to the interoperable BACnet / LonMark fieldbus. These platforms use a real-time operating system that supports the Java object/rule engine for applications.
The FCs are configured by the Web BAS Server over the fieldbus or through the FC's local RS 232 / modem port or the video modem interface.
The first FC package supports locally attached terminal block input/output modules made by Groupe Schneider. This integrated design approach is very flexible and cost effective for high end industrial and commercial controller applications. The BACnet / LonMark object / rule engine can use any local input/output data or any fieldbus device data in its powerful application environment.
The second 32-bit Field Controller platform attached to the fieldbus does not support local attached input/output, but includes an integrated inexpensive programmable operator interface and the BACnet / LonMark object engine. The Web BAS Server configuration tool can program the flexible operator interface that has control and data access to any node device on the fieldbus network.
The third embodiment of the Field Controller package is integrated with a video cable modem to provide a low cost Internet connection to small buildings for remote control and monitoring by the Web BAS Server.
Operating elements of the system are each modeled as an object to simplify lo integration and usage. This includes user presentation, network management, network control, real-time control and device objects.
As another feature of the invention, to avoid the relatively high cost of a full-time internet connection for a client or a long distance telephone call from the server to a client, the server uses a simple dial-up notification mechanism to cause the client to open a connection back to the server. In operation, the server dials a modem attached to the client and terminates the call before the client answers. The client recognizes this as a server requesting contact. In response to the call, the client dials a local ISP with which it has a low-cost monthly service account.
The client then establishes a connection to the server over the internet. This mechanism avoids per call or per minute charges by limiting access charges to the monthly fee charged by the ISP.
Thus, a control system and methods has been shown that uses object-oriented software to integrate BACnet, LonMark, CORBA, Java and Internet systems into a common object model of distributed applications in a multi-vendor open system environment supporting multiple industry standards. The control system and methods of the present invention provide both pre-defined objects and user-defined objects in a single control system. Integrity and persistence of system data is maintained 'and distributed through the use of archiving and synchronization techniques. Properties associated with a device are updated dynamically to reflect external interface characteristics of the device.
The third embodiment of the Field Controller package is integrated with a video cable modem to provide a low cost Internet connection to small buildings for remote control and monitoring by the Web BAS Server.
Operating elements of the system are each modeled as an object to simplify lo integration and usage. This includes user presentation, network management, network control, real-time control and device objects.
As another feature of the invention, to avoid the relatively high cost of a full-time internet connection for a client or a long distance telephone call from the server to a client, the server uses a simple dial-up notification mechanism to cause the client to open a connection back to the server. In operation, the server dials a modem attached to the client and terminates the call before the client answers. The client recognizes this as a server requesting contact. In response to the call, the client dials a local ISP with which it has a low-cost monthly service account.
The client then establishes a connection to the server over the internet. This mechanism avoids per call or per minute charges by limiting access charges to the monthly fee charged by the ISP.
Thus, a control system and methods has been shown that uses object-oriented software to integrate BACnet, LonMark, CORBA, Java and Internet systems into a common object model of distributed applications in a multi-vendor open system environment supporting multiple industry standards. The control system and methods of the present invention provide both pre-defined objects and user-defined objects in a single control system. Integrity and persistence of system data is maintained 'and distributed through the use of archiving and synchronization techniques. Properties associated with a device are updated dynamically to reflect external interface characteristics of the device.
This application incorporates by reference the U.S. Utility application entitled System and Methods for Object-Oriented Control of Diverse Electromechanical Systems Using a Computer Network, filed May 14, 1999, Gerald Frank et al., inventors.
Claims (3)
1. An object-oriented control system comprising:
clients for providing access to and control and monitoring of the object-oriented control system via an electronic network;
foreign devices each operable with one or more control systems distinct from the object-oriented control system;
stations for integrating said foreign devices into the object-oriented control system using a common object model, supervising other stations, and serving as master of the local system wherein a master provides persistent backup of all configuration information; and a flexible and open architecture capable of supporting a plurality of diverse configurations of said clients, foreign devices, and stations;
a real-time synchronization manager to regulate the orderly and timely execution of multiple tasks; a plurality of user-defined objects;
a plurality of object properties; a plurality of object categories; an object creation facility to allow user creation and modification of said objects and said properties according to a plurality of said object categories;
a multi-level security facility;
a plurality of pre-defined objects coexisting with said user-defined objects;
a persistent and real-time information synchronization manager that maintains the integrity of system data throughout the object-oriented control system through the use of archiving and synchronization;
a control engine for providing predictable order of execution of said objects; and a programmable mail service for sending email notifications containing real-time data to remote sites.
clients for providing access to and control and monitoring of the object-oriented control system via an electronic network;
foreign devices each operable with one or more control systems distinct from the object-oriented control system;
stations for integrating said foreign devices into the object-oriented control system using a common object model, supervising other stations, and serving as master of the local system wherein a master provides persistent backup of all configuration information; and a flexible and open architecture capable of supporting a plurality of diverse configurations of said clients, foreign devices, and stations;
a real-time synchronization manager to regulate the orderly and timely execution of multiple tasks; a plurality of user-defined objects;
a plurality of object properties; a plurality of object categories; an object creation facility to allow user creation and modification of said objects and said properties according to a plurality of said object categories;
a multi-level security facility;
a plurality of pre-defined objects coexisting with said user-defined objects;
a persistent and real-time information synchronization manager that maintains the integrity of system data throughout the object-oriented control system through the use of archiving and synchronization;
a control engine for providing predictable order of execution of said objects; and a programmable mail service for sending email notifications containing real-time data to remote sites.
2. The object-oriented control system recited in claim 1 wherein said object creation facility further comprises a dynamic device external interface update capability for dynamically updating or adding external interface object properties associated with said foreign devices.
3. The object-oriented control system recited in claim 1 further comprising a remote host to and control and monitoring of the object-oriented control system from a location not physically collocated with the other components of the object-oriented control system.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US8553998P | 1998-05-15 | 1998-05-15 | |
US60/085,539 | 1998-05-15 | ||
PCT/US1999/010711 WO1999060487A1 (en) | 1998-05-15 | 1999-05-14 | System and methods for object-oriented control of diverse electromechanical systems using a computer network |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2332009A1 CA2332009A1 (en) | 1999-11-25 |
CA2332009C true CA2332009C (en) | 2007-08-07 |
Family
ID=22192285
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002332009A Expired - Lifetime CA2332009C (en) | 1998-05-15 | 1999-05-14 | System and methods for object-oriented control of diverse electromechanical systems using a computer network |
Country Status (9)
Country | Link |
---|---|
EP (1) | EP1082669A4 (en) |
JP (1) | JP4330799B2 (en) |
KR (1) | KR100563291B1 (en) |
CN (1) | CN1305611B (en) |
AU (1) | AU758278B2 (en) |
BR (1) | BR9910512A (en) |
CA (1) | CA2332009C (en) |
HK (1) | HK1038970B (en) |
WO (1) | WO1999060487A1 (en) |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI109951B (en) * | 1999-12-29 | 2002-10-31 | Valtion Teknillinen | Control unit and method for controlling it |
EP1168752A1 (en) | 2000-06-23 | 2002-01-02 | Matra Nortel Communications | Access control in client-sever systems |
DE10058391C2 (en) * | 2000-11-24 | 2003-06-18 | Siemens Ag | Object processing device |
CA2432191C (en) * | 2001-05-09 | 2011-03-15 | Spraying Systems Co. | Object-oriented technique for creating a sprayer control program |
US6819960B1 (en) | 2001-08-13 | 2004-11-16 | Rockwell Software Inc. | Industrial controller automation interface |
US8417827B2 (en) * | 2001-12-12 | 2013-04-09 | Nokia Corporation | Synchronous media playback and messaging system |
DE10214185A1 (en) | 2002-03-28 | 2003-10-16 | Siemens Ag | PC arrangement for visualization, diagnostic and expert systems for monitoring and control or regulation of high-voltage supply units of electrostatic filters |
US20040093516A1 (en) * | 2002-11-12 | 2004-05-13 | Hornbeek Marc William Anthony | System for enabling secure remote switching, robotic operation and monitoring of multi-vendor equipment |
US7526347B2 (en) * | 2003-02-18 | 2009-04-28 | Fisher-Rosemount Systems, Inc. | Security for objects in a process plant configuration system |
US8880735B2 (en) * | 2003-09-05 | 2014-11-04 | Sierra Wireless, Inc. | Mail server based application record synchronization |
FR2865557B1 (en) * | 2004-01-27 | 2006-06-23 | Sinovia | OPEN SYSTEM FOR INTEGRATING AND MANAGING COMPUTER COMPONENTS REPRESENTING A SPECIFIC FUNCTIONALITY OF A DETERMINED APPLICATION |
DE102004036210B4 (en) * | 2004-07-26 | 2006-08-31 | Siemens Ag | Control device and control method for electrostatic precipitators with a configurable number of parallel and serial filter zones |
CN101553763A (en) * | 2005-05-13 | 2009-10-07 | 洛克威尔自动控制技术股份有限公司 | Hierarchically structured data model for utilization in industrial automation environments |
WO2007012707A1 (en) * | 2005-07-26 | 2007-02-01 | Sinovia | Open system for integrating and managing computer-based components representing a specific functionality of a specific application |
CN102759886A (en) * | 2005-08-22 | 2012-10-31 | 传恩国际股份有限公司 | Building automation system convenient for user customization |
CN100433649C (en) * | 2005-11-17 | 2008-11-12 | 中兴通讯股份有限公司 | Method for multi-objective configuration in telecommunication network system |
US7734572B2 (en) | 2006-04-04 | 2010-06-08 | Panduit Corp. | Building automation system controller |
CN100409128C (en) * | 2006-10-17 | 2008-08-06 | 南京科远自动化集团有限公司 | General industrial controller |
JP5514720B2 (en) * | 2007-06-27 | 2014-06-04 | コーニンクレッカ フィリップス エヌ ヴェ | System and method for providing device independent control and modification |
US8863122B2 (en) | 2009-07-31 | 2014-10-14 | Hewlett-Packard Development Company, L.P. | Remote control of a plurality of virtual machines using actions facilitated through a graphic user interface |
ES2869875T3 (en) | 2011-10-03 | 2021-10-26 | Siemens Schweiz Ag | Structure and behavior of a building automation system |
CN102393724B (en) * | 2011-11-30 | 2014-06-04 | 洛阳正扬冶金技术股份有限公司 | Framework of multilayer automation control system |
EP2831680B1 (en) | 2012-03-28 | 2018-07-04 | Siemens Schweiz AG | System and method for grouping building automation objects for group communication within a building automation system |
US9753750B2 (en) | 2012-08-30 | 2017-09-05 | Entit Software Llc | Global feature library useable with continuous delivery |
CN103870252A (en) * | 2012-12-11 | 2014-06-18 | 镇江金钛软件有限公司 | Resource managing method and device |
CN104133380A (en) * | 2013-05-03 | 2014-11-05 | 北京林业大学 | OPC (OLE for Process Control) XML DA-based LonMark and BACnet open control system solution scheme |
CN103677829B (en) * | 2013-12-13 | 2016-08-17 | 北京同有飞骥科技股份有限公司 | Object Operations accesses the method controlled |
CN104008000A (en) * | 2014-05-09 | 2014-08-27 | 启秀科技(北京)有限公司 | Practical operation question evaluation software simulation system |
CN104778410B (en) * | 2015-04-16 | 2017-07-11 | 电子科技大学 | A kind of application integrity verification method |
US11625018B2 (en) | 2020-06-06 | 2023-04-11 | Honeywell International Inc. | Method and system for configuring virtual controllers in a building management system |
EP3919992A1 (en) | 2020-06-06 | 2021-12-08 | Honeywell International Inc. | Method and system for managing virtual controllers in a building management system |
US11940786B2 (en) | 2020-06-06 | 2024-03-26 | Honeywell International Inc. | Building management system and method with virtual controller and failsafe mode |
US11782410B2 (en) | 2020-06-06 | 2023-10-10 | Honeywell International Inc. | Building management system with control logic distributed between a virtual controller and a smart edge controller |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5608720A (en) * | 1993-03-09 | 1997-03-04 | Hubbell Incorporated | Control system and operations system interface for a network element in an access system |
US5611059A (en) * | 1994-09-02 | 1997-03-11 | Square D Company | Prelinked parameter configuration, automatic graphical linking, and distributed database configuration for devices within an automated monitoring/control system |
US5650936A (en) * | 1994-12-30 | 1997-07-22 | Cd Power Measurement Limited | Power monitor apparatus and method with object oriented structure |
US5752249A (en) * | 1996-11-14 | 1998-05-12 | Macon, Jr.; Charles E. | System and method for instantiating a sharable, presistent parameterized collection class and real time process control system embodying the same |
-
1999
- 1999-05-14 BR BR9910512-8A patent/BR9910512A/en not_active IP Right Cessation
- 1999-05-14 EP EP99923081A patent/EP1082669A4/en not_active Ceased
- 1999-05-14 HK HK02100490.3A patent/HK1038970B/en not_active IP Right Cessation
- 1999-05-14 JP JP2000550033A patent/JP4330799B2/en not_active Expired - Lifetime
- 1999-05-14 WO PCT/US1999/010711 patent/WO1999060487A1/en active IP Right Grant
- 1999-05-14 CN CN998073865A patent/CN1305611B/en not_active Expired - Lifetime
- 1999-05-14 CA CA002332009A patent/CA2332009C/en not_active Expired - Lifetime
- 1999-05-14 KR KR1020007012770A patent/KR100563291B1/en not_active Expired - Fee Related
- 1999-05-14 AU AU39931/99A patent/AU758278B2/en not_active Ceased
Also Published As
Publication number | Publication date |
---|---|
KR20010043617A (en) | 2001-05-25 |
CN1305611A (en) | 2001-07-25 |
EP1082669A4 (en) | 2006-05-03 |
AU758278B2 (en) | 2003-03-20 |
JP2002516432A (en) | 2002-06-04 |
HK1038970A1 (en) | 2002-04-26 |
CN1305611B (en) | 2010-06-02 |
KR100563291B1 (en) | 2006-03-27 |
WO1999060487A9 (en) | 2001-03-01 |
AU3993199A (en) | 1999-12-06 |
BR9910512A (en) | 2001-01-02 |
EP1082669A1 (en) | 2001-03-14 |
WO1999060487A1 (en) | 1999-11-25 |
HK1038970B (en) | 2011-03-04 |
JP4330799B2 (en) | 2009-09-16 |
CA2332009A1 (en) | 1999-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2332009C (en) | System and methods for object-oriented control of diverse electromechanical systems using a computer network | |
US6832120B1 (en) | System and methods for object-oriented control of diverse electromechanical systems using a computer network | |
US6032208A (en) | Process control system for versatile control of multiple process devices of various device types | |
JP6194252B2 (en) | Process control system | |
US5862052A (en) | Process control system using a control strategy implemented in a layered hierarchy of control modules | |
US5909368A (en) | Process control system using a process control strategy distributed among multiple control elements | |
US5768119A (en) | Process control system including alarm priority adjustment | |
US6098116A (en) | Process control system including a method and apparatus for automatically sensing the connection of devices to a network | |
US5995916A (en) | Process control system for monitoring and displaying diagnostic information of multiple distributed devices | |
US8127060B2 (en) | Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware | |
US6266726B1 (en) | Process control system using standard protocol control-of standard devices and non-standard devices | |
US5801942A (en) | Process control system user interface including selection of multiple control languages | |
US6868538B1 (en) | Object-oriented programmable controller | |
US20100305721A1 (en) | Methods and apparatus for control configuration with control objects that self-define tracked parameters | |
US20030061274A1 (en) | Method and apparatus for programming programmable controllers and generating configuration data from a centralized server | |
WO1998036335A9 (en) | Process control system using a layered-hierarchy control strategy distributed into multiple control devices | |
JP2014116027A5 (en) | ||
JP2012084162A5 (en) | ||
WO2010138412A1 (en) | Control configuration with control objects that are fieldbus protocol-aware and that self-define tracked parameters | |
Lapalus et al. | Manufacturing integration | |
Pasek et al. | Web-enabled monitoring and control of manufacturing systems | |
Richmond | The Niagara Framework | |
Bormans | tlB | |
Nawrocki et al. | Monitoring commercial conventional facilities control with the APS control system: The Metasys-to-EPICS interface |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKEX | Expiry |
Effective date: 20190514 |