WO1998036353A1 - System for configuring a process control environment with graphical elements - Google Patents

System for configuring a process control environment with graphical elements Download PDF

Info

Publication number
WO1998036353A1
WO1998036353A1 PCT/US1998/001570 US9801570W WO9836353A1 WO 1998036353 A1 WO1998036353 A1 WO 1998036353A1 US 9801570 W US9801570 W US 9801570W WO 9836353 A1 WO9836353 A1 WO 9836353A1
Authority
WO
WIPO (PCT)
Prior art keywords
control
class
stencil
process control
user
Prior art date
Application number
PCT/US1998/001570
Other languages
French (fr)
Inventor
Andrew P. Dove
Larry O. Jundt
Stephen G. Hammack
J. Clint Fletcher
Original Assignee
Fisher-Rosemount Systems, Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fisher-Rosemount Systems, Inc. filed Critical Fisher-Rosemount Systems, Inc.
Priority to JP53576298A priority Critical patent/JP2001512598A/en
Priority to AU60454/98A priority patent/AU6045498A/en
Priority to GB9918410A priority patent/GB2336446B/en
Priority to DE1998182116 priority patent/DE19882116T5/en
Publication of WO1998036353A1 publication Critical patent/WO1998036353A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31474Icon display for quick access of detailed information
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32162Tasks or control icons are linked to form a job
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36025Link, connect icons together to form program
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36076Select icon and display corresponding instructions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36143Use of icon to represent a function, part of program
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/80Management or planning

Definitions

  • This invention relates to process monitoring and control systems. More specifically, the present invention relates to a system for creating a control template of a plurality of control templates, an individual control template having associated attributes, methods, and graphical views that are selected by a user to generate design process control solutions.
  • Present-day process control systems use instruments, control devices and communication systems to monitor and manipulate control elements, such as valves and switches, to maintain at selected target values one or more process variables, including temperature, pressure, flow and the like.
  • the process variables are selected and controlled to achieve a desired process objective, such as attaining the safe and efficient operation of machines and equipment utilized in the process.
  • Process control systems have widespread application in the automation of industrial processes such as the processes used in chemical, petroleum, and manufacturing industries, for example.
  • Control of the process is often implemented using microprocessor-based controllers, computers or workstations which monitor the process by sending and receiving commands and data to hardware devices to control either a particular aspect of the process or the entire process as a whole.
  • the specific process control functions that are implemented by software programs in these microprocessors, computers or workstations may be individually designed, modified or changed through programming while requiring no modifications to the hardware. For example, an engineer might cause a program to be written to have the controller read a fluid level from a level sensor in a tank, compare the tank level with a predetermined desired level, and then open or close a feed valve based on whether the read level was lower or higher than the predetermined, desired level.
  • the parameters are easily changed by displaying a selected view of the process and then by modifying the program using the selected view.
  • the engineer typically would change parameters by displaying and modifying an engineer's view of the process.
  • software programs also monitor and display a view of the processes, providing feedback in the form of an operator's display or view regarding the status of particular processes.
  • the monitoring software programs also signal an alarm when a problem occurs.
  • Some programs display instructions or suggestions to an operator when a problem occurs.
  • the operator who is responsible for the control process needs to view the process from his point of view.
  • a display or console is typically provided as the interface between the microprocessor based controller or computer performing the process control function and the operator and also between the programmer or engineer and the microprocessor based controller or computer performing the process control function.
  • Systems that perform, monitor, control, and feed back functions in process control environments are typically implemented by software written in high-level computer programming languages such as Basic, Fortran or C and executed on a computer or controller.
  • high-level languages although effective for process control programming, are not usually used or understood by process engineers, maintenance engineers, control engineers, operators and supervisors.
  • Higher level graphical display languages have been developed for such personnel, such as continuous function block and ladder logic.
  • each of the engineers, maintenance personnel, operators, lab personnel and the like require a graphical view of the elements of the process control system that enables them to view the system in terms relevant to their responsibilities.
  • a process control program might be written in Fortran and require two inputs, calculate the average of the inputs and produce an output value equal to the average of the two inputs.
  • This program could be termed the AVERAGE function and may be invoked and referenced through a graphical display for the control engineers.
  • a typical graphical display may consist of a rectangular block having two inputs, one output, and a label designating the block as AVERAGE.
  • a different program may be used to create a graphical representation of this same function for an operator to view the average value.
  • these software programs are placed into a library of predefined user selectable features. The programs are identified by function blocks.
  • a user may then invoke a function and select the predefined graphical representations to create different views for the operator, engineer, etc. by selecting one of a plurality of function blocks from the library for use in defining a process control solution rather than having to develop a completely new program in Fortran, for example.
  • a group of standardized functions, each designated by an associated function block, may be stored in a control library.
  • a designer equipped with such a library can design process control solutions by interconnecting, on a computer display screen, various functions or elements selected with the function blocks to perform particular tasks.
  • the microprocessor or computer associates each of the functions or elements defined by the function blocks with predefined templates stored in the library and relates each of the program functions or elements to each other according to the interconnections desired by the designer.
  • a designer could design an entire process control program using graphical views of predefined functions without ever writing one line of code in Fortran or other high-level programming language.
  • New process control functions are designed primarily by companies who sell design systems and not by the end users who may have a particular need for a function that is not a part of the standard set of functions supplied by the company.
  • the standardized functions are contained within a control library furnished with the system to the end user.
  • the end user must either utilize existing functions supplied with the design environment or rely on the company supplying the design environment to develop any desired particular customized function for them. If the designer is asked to modify the parameters of the engineer's view, then all other views using those parameters have to be rewritten and modified accordingly because the function program and view programs are often developed independently and are not part of an integrated development environment. Clearly, such procedure is very cumbersome, expensive, and time-consuming. What is needed is a uniform or universal design environment that can easily be used, not only by a designer or manufacturer but also a user, to customize an existing solution to meet his specific needs for developing process control functions.
  • a process control environment may be easily and quickly configured or modified by providing a control studio object system which includes a stencil portion (which is also referred to as a palette portion) having stencil items conforming to algorithms and a diagram portion to which the stencil items may be copied via a drag and drop operation.
  • the stencil items are objects which contain all of the information required by a diagram portion to create an object that contains all of the information necessary to program the process control environment, the completed diagram portion reflects the actual configuration of the process control environment. It has also been discovered that providing the stencil items as objects allows the diagrammed environment to be installed directly to nodes without requiring the diagram to be compiled or rewritten in a language conforming to the node.
  • the invention relates to a method for configuring a process control environment, the process control environment including a computer system having a processor coupled to a display device.
  • the method includes the steps of: presenting, on the display device, a stencil view including a module object, the module object representing a process control module; presenting, on the display device, a process control environment view, the process control environment view representing the process control environment configuration; dragging the module object from the stencil view to the process control environment view; dropping the module object on the process control environment view in a position indicative of a location of the process control module in the process control environment, and, configuring the process control environment in accordance with the process control environment view.
  • the described design environment enables a process control designer or user to modify a standard process control function or create a unique customized process control function and create the graphical views to be associated with the modified or newly created process control function, all within a common environment.
  • the design environment includes a common interface for both the creation of the function and for its associated engineers, operators, lab and maintenance personnel or other desired users such that when the engineer's function is modified or created, the modification or creation manifests itself in all other graphical views of the function.
  • the design environment has a common database structure of attributes and methods and the graphics associated with the process control function to allow modified or created process control functions to be represented in whatever graphical methodology that is desired or required by the designer, whether by ladder logic, continuous function block or other design languages required by the various engineer, operator, lab, and maintenance personnel as other desired graphical views.
  • Figure 1 is a schematic block diagram showing a workstation in accordance with a generalized embodiment of the present invention which furnishes a capability to create a new control template and a capability to modify an existing control.
  • Figure 2 is a schematic block diagram showing the process control environment in a configuration implementation and a run-time implementation.
  • Figure 3 is a schematic block diagram which depicts a hierarchical relationship among system objects of a configuration model in accordance with an embodiment of the present invention.
  • Figure 4 is a screen presentation of a Control Studio Object system in accordance with an embodiment of the present invention.
  • Figures 5a - 5f are screen presentations of installing a completed process control diagram to a node of a process control environment in accordance with an embodiment of the present invention.
  • Figure 6 is a block diagram showing the class hierarchy of control studio object system diagram view class hierarchy.
  • Figure 7 is a block diagram showing the class hierarchy of control studio object system stencil classes.
  • Figure 8 is a block diagram showing the class hierarchy of control studio object lightweight classes that descend from class CObject.
  • Figure 9 is a block diagram showing the class hierarchy of control studio object system connection classes that descend from class CObject.
  • Figure 10 is a block diagram showing the class hierarchy of a diagram portion of the control studio object system drag and drop classes.
  • Figure 11 is a block diagram showing the class hierarchy of control studio object system native drag and drop object classes.
  • Figure 12A - 12E are flow charts showing a stencil drag and drop operation of a control studio object system in accordance with the present invention.
  • Figure 13 A - 13D are flow charts showing a native drag and drop to a diagram portion of a control studio object system in accordance with the present invention.
  • Figure 14A - 14D are flow charts showing native cut, copy and paste operations in a diagram portion of a control studio object system in accordance with the present invention.
  • Figure 15 is a flow chart showing the operation of installing a diagram to a node in accordance with the present invention.
  • a process control environment 100 is shown in Figure 1 and illustrates a control environment for implementing a digital control system, process controller or the like.
  • the process control environment 100 includes an operator workstation 102 and an engineering workstation 106 electrically interconnected by a local area network (“LAN") 108, or other known communication link, for transferring and receiving data and control signals among the various workstations and a plurality of controller/multiplexers 110.
  • LAN local area network
  • Workstations 102 and 106 are, for example, computers which conform to the IBM compatible architecture.
  • the workstations 102 and 106 are shown connected by the LAN 108 to a plurality of the controller/multiplexers 110 that electrically interface between the workstations and a plurality of processes 112.
  • the LAN 108 includes a single workstation connected directly to a controller/multiplexer 110 or alternatively includes a plurality of workstations, for example two workstations 102 and 106, and many controller/multiplexers 110 depending upon the purposes and requirements of the process control environment 100.
  • a single process controller/multiplexer 110 controls several different processes 112 or alternatively controls a portion of a single process.
  • a process control strategy is developed by creating a software control solution on the engineering workstation 106, for example, and transferring the solution via the LAN 108 to the operator workstation 102, lab workstation 104, and to controller/multiplexer 110 for execution.
  • the operator workstation 102 supplies interface displays to the control/monitor strategy implemented in the controller/multiplexer 1 10 and communicates to one or more of the controller/multiplexers 110 to view the processes 112 and change control attribute values according to the requirements of the designed solution.
  • the processes 1 12 are formed from one or more field devices, which may be smart field devices or conventional (non-smart) field devices.
  • the operator workstation 102 communicates visual and audio feedback to the operator regarding the status and conditions of the controlled processes 112.
  • the engineering workstation 106 includes a processor 116, and a display 1 15 and one or more input/output or user-interface device 118 such as a keyboard, light pen and the like.
  • the workstation also includes a memory 117, which includes both volatile and non-volatile memory.
  • the memory 1 17 includes a control program that executes on the processor 116 to implement control operations and functions of the process control environment 100.
  • the memory 1 17 also includes a control template system 120 and a Control Studio Object system 130.
  • the operator workstation 102, and other workstations (not shown) within the process control environment 100 include at least one central processing unit (not shown) which is electrically connected to a display (not shown) and a user-interface device (not shown) to allow interaction between a user and the processor.
  • the process control environment 100 also includes a template generator 124 and a control template library 123 which, in combination, form the control template system 120.
  • a control template is defined as the grouping of attribute functions that are used to control a process and the methodology used for a particular process control function, the control attributes, variables, inputs, and outputs for the particular function and the graphical views of the function as needed such as an engineer view and an operator view.
  • the control template system 120 includes the control template library 123 that communicates with the template generator 124.
  • the control template library 123 contains data representing sets of predefined or existing control template functions for use in process control programs.
  • the control template functions are the templates that generally come with the system from the system designer to the user.
  • the template generator 124 is an interface that advantageously allows a user to create new control template functions or modify existing control template functions. The created and modified template functions are selectively stored in the control template library 123.
  • the template generator 124 includes an attributes and methods language generator 126 and a graphics generator 128.
  • the attributes and methods language generator 126 supplies display screens that allow the user to define a plurality of attribute functions associated with the creation of a new control template function or modification of a particular existing control template function, such as inputs, outputs, and other attributes, as well as providing display screens for enabling the user to select methods or programs that perform the new or modified function for the particular control template.
  • the graphics generator 128 furnishes a user capability to design graphical views to be associated with particular control templates. A user utilizes the data stored by the attributes and methods language generator 126 and the graphics generator 128 to completely define the attributes, methods, and graphical views for a control template.
  • Control Studio Object system 130 provides a user friendly interface which allows a user to create, modify, use, and delete basic building blocks of a diagram, called stencil items, palette items or templates. Control Studio Object system 130 is understandable by a user who has no previous experience in manipulating the basic building blocks of template generator. Control Studio Object system 130, and specifically the stencil portion of the control studio object system 130, interacts with template generator 120.
  • the process control environment 100 exists in a configuration model or configuration implementation 210 and a run-time model or run-time implementation 220 shown in Figure 2.
  • the configuration implementation 210 the component devices, objects, interconnections and interrelationships within the process control environment 100 are defined.
  • the run-time implementation 220 operations of the various component devices, objects, interconnections and interrelationships are performed.
  • the configuration implementation 210 and the run-time implementation 220 are interconnected through a ASCII based download language
  • the download language creates system objects according to definitions supplied by a user and creates instances from the supplied definitions. In addition to downloading definitions, the download language also uploads instances and instance values.
  • the configuration implementation 210 is activated to execute in the run-time implementation 220 using an installation procedure.
  • the process control environment 100 includes multiple subsystems with several of the subsystems having both a configuration and a run-time implementation.
  • a process graphic subsystem 230 supplies user-defined views and operator interfacing to the architecture of the process control environment 100.
  • the process graphic subsystem 230 has a process graphic editor 232, a part of the configuration implementation 210, and a process graphic viewer 234, a portion of the run-time implementation 220.
  • the process graphic editor 232 is connected to the process graphic viewer 234 by an intersubsystem interface 236 in the download language.
  • the process control environment 100 also includes a control subsystem 240 which configures and installs control modules and equipment modules in a definition and module editor 242 and which executes the control modules and the equipment modules in a run-time controller 244.
  • the definition and module editor 242 operates within the configuration implementation 210 and the run-time controller 244 operates within the runtime implementation 220 to supply continuous and sequencing control functions.
  • the definition and module editor 242 is connected to the run-time controller 244 by an intersubsystem interface 246 in the download language.
  • the multiple subsystems are interconnected by a subsystem interface 250.
  • the configuration implementation 210 and the run-time implementation 220 interface to a master database 260 to support access to common data structures.
  • Various local (non-master) databases 262 interface to the master database 260, for example, to transfer configuration data from the master database 260 to the local databases 262 as directed by a user.
  • Part of the master database 260 is a persistent database 270.
  • the persistent database 270 is an object which transcends time so that the database continues to exist after the creator of the database no longer exists and transcends space so that the database is removable to an address space that is different from the address space at which the database was created.
  • the entire configuration implementation 210 is stored in the persistent database 270.
  • the run-time implementation 220 interfaces to the persistent database 270 and to local databases 262 to access data structures formed by the configuration implementation 210.
  • the run-time implementation 220 fetches selected equipment modules, displays and the like from the local databases 262 and the persistent database 270.
  • the run-time implementation 220 interfaces to other subsystems to install definitions, thereby installing objects that are used to create instances, when the definitions do not yet exist, instantiating run-time instances, and transferring information from various source to destination objects.
  • a schematic block diagram illustrates a hierarchical relationship among system objects of a configuration model 300.
  • the configuration model 300 includes many configuration aspects including control, I/O, process graphics, process equipment, alarms, history and events.
  • the configuration model 300 also includes a device description and network topology layout.
  • the configuration model hierarchy 300 is defined for usage by a particular set of users for visualizing system object relationships and locations and for communicating or navigating maintenance information among various system objects.
  • one configuration model hierarchy 300 specifically a physical plant hierarchy, is defined for usage by maintenance engineers and technicians for visualizing physical plant relationships and locations and for communicating or navigating maintenance information among various instruments and equipment in a physical plant.
  • An embodiment of a configuration model hierarchy 300 that forms a physical plant hierarchy supports a subset of the SP88 physical equipment standard hierarchy and includes a configuration model site 310, one or more physical plant areas 320, equipment modules 330 and control modules 340.
  • the configuration model hierarchy 300 is defined for a single process site 310 which is divided into one or more named physical plant areas 320 that are defined within the configuration model hierarchy 300.
  • the physical plant areas 320 optionally contain tagged modules, each of which is uniquely instantiated within the configuration model hierarchy 300.
  • a physical plant area 320 optionally contains one or more equipment modules 330.
  • An equipment module 330 optionally contains other equipment modules 330, control modules 340 and function blocks.
  • An equipment module 330 includes and is controlled by a control template that is created according to one of a number of different graphical process control programming languages including continuous function block, ladder logic, or sequential function charting ("SFC").
  • the configuration model hierarchy 300 optionally contains one or more control modules 340.
  • a control module 340 is contained in an object such as a physical plant area 320, an equipment module 330 or another control module 340.
  • a control module 340 optionally contains objects such as other control modules 340 or function blocks.
  • the Control Studio object system 130 enables a user to add objects to diagrams, drag and drop objects between diagrams and third party applications, cut and paste objects between diagrams and other applications and install process control environments depicted by the diagrams having the objects to the process control environment.
  • the main control window of the control studio object system 130 includes textual pull down menus 402, pictographic menu 404. a stencil portion presentation 406 and a diagram portion screen presentation 408. Stencil items 420 are displayed within the stencil portion presentation 406.
  • the user's diagram of the process control environment design is presented in the diagram portion screen presentation. This diagram of the process control design environment is referred to as the process control environment view.
  • Each of the presentations in the main window is re-sizable and relocatable by the user in accordance with known windowing techniques.
  • the Control Studio system 130 tracks the location and size of the panes of the main window by maintaining persistent object data including coordinates within the two-dimensional display, as well as style and other information.
  • Control studio object system 130 When designing a process control environment, a user simply actuates a stencil item from the stencil portion presentation 408, drags the actuated stencil item to a desired location within the diagram portion screen presentation 408 and drops the actuated stencil item in a desired location.
  • Control studio object system 130 then creates a diagram item that allows the diagram to create an object with all of the information necessary for configuring a process control environment. Because the stencil items are objects which include all of the necessary information for the diagram to configure a process control environment, when the process control environment design is completed within the diagram portion, this design may be directly downloaded to the appropriate portions of the process control environment.
  • FIG. 5a the process of installing a completed process control diagram to a node is shown. More specifically, as shown in Figure 5a, when a user wishes to install a process control diagram to a node, the user selects the Install to Node item from the File menu. The choices presented to the user are whether to install the entire module or just the changes since the last install operation was performed. When the user selects install entire module, a window is presented that informs the user that the module has not been assigned to a node and asking whether the user wishes to install the module to a node. (See Figure 5b.)
  • the process control environment 100 and specifically, the control studio object system 130, is implemented using an object-oriented framework.
  • An object-oriented framework uses object-oriented concepts such as class hierarchies, object states and object behavior. These concepts, which are briefly discussed below, are well known in the art.
  • the present object-oriented framework is written using the object-oriented C++ programming language, which is well-known in the art.
  • the building block of an object-oriented framework is an object.
  • An object is defined by a state and a behavior.
  • the state of an object is set forth by fields of the object.
  • the behavior of an object is set forth by methods of the object.
  • Each object is an instance of a class, which provides a template for the object.
  • a class defines zero or more fields and zero or more methods.
  • Fields are data structures which contain information defining object data or a portion of the state of an object. Objects which are instances of the same class have the same fields. However, the particular information contained within the fields of the objects can vary from object to object. Each field can contain information that is direct, such as an integer value, or indirect, such as a reference to another object.
  • a method is a collection of computer instructions which can be executed in processor 116 by computer system software.
  • the instructions of a method are executed, i.e., the method is performed, when software requests that the object for which the method is defined perform the method.
  • a method can be performed by any object that is a member of the class that includes the method.
  • the particular object performing the method is the responder or the responding object.
  • the responder consumes one or more arguments, i.e., input data, and produces zero or one result, i.e., an object returned as output data.
  • the methods for a particular object define the behavior of that object.
  • Classes of an object-oriented framework are organized in a class hierarchy.
  • a class inherits the fields and methods which are defined by the superclasses of that class.
  • the fields and methods defined by a class are inherited by any subclasses of the class. I.e., an instance of a subclass includes the fields defined by the superclass and can perform the methods defined by the superclass. Accordingly, when a method of an object is called, the method that is accessed may be defined in the class of which the object is a member or in any one of the superclasses of the class of which the object is a member.
  • process control environment 100 selects the method to run by examining the class of the object and, if necessary, any superclasses of the object.
  • a subclass may override or supersede a method definition which is inherited from a superclass to enhance or change the behavior of the subclass.
  • a subclass may not supersede the signature of the method.
  • the signature of a method includes the method's identifier, the number and type of arguments, whether a result is returned, and, if so, the type of the result.
  • the subclass supersedes an inherited method definition by redefining the computer instructions which are carried out in performance of the method.
  • Classes which are capable of having instances are concrete classes. Classes which cannot have instances are abstract classes. Abstract classes may define fields and methods which are inherited by subclasses of the abstract classes. The subclasses of an abstract class may be other abstract classes; however, ultimately, within the class hierarchy, the subclasses are concrete classes.
  • control studio object system 130 is implemented using the Foundation classes version 4.0 of the Microsoft developers kit for Visual C++ for Windows NT version 3.51.
  • control studio object system 130 includes a plurality of classes which descend from and are related to the foundation class CMDIChildWnd 602.
  • Class CMdeMDIChildWnd 604 descends from class CMDIChildWnd 602.
  • Class CSplitChildWnd 606 descends from class CMDIChildWnd 604.
  • Classes CStencilView 608, CSplitterWnd 610 and CDiagramOcxView 612 are aggregated with class CSplitChildWnd 606.
  • Classes CStencil View 608 and CDiargramOCXView descend from foundation class CFormView 614.
  • Class CMDIChildWnd 602 is a frame window for a child window of a multiple document interface application.
  • Class CMdeMDIChildWnd 604 removes the title text from the screen presentation.
  • Class CSplitChildWnd 606 provides management of its children in a split window fashion as is known in the art.
  • Class CStencilView 608 maintains a CList stencil control and manages the stencil user interface of the stencil portion.
  • Class CDiagramOcxView 612 manages the diagram user interface of the diagram portion and contains an instance of a diagram old custom control (OCX).
  • Class CSplitterWnd 610 is a foundation class which controls splitting panes as is well known in the art.
  • Class CFormView 614 is a foundation class for containing control classes.
  • control studio object system 130 includes a plurality of classes which descend from and are related to the foundation classes class CListCtrl 702 and CImageList 704. More specifically, classes CStencilListCtrl 706 descends from class CListCtrl 702. Classes CFbStencilView 708 and CSfcStencilView 710 are aggregated with CStencilListCtrl 706. Classes CFbStencilView 708 and CSfcStencilView 710 descend from class CStencilView 712. Foundation class CImageList 704, class CStencilltem 714 and class CStencilDropTarget 716 are associated with Class CStencilListCtrl 706. Class CStencilDropTarget 716 descends from class COleDropTarget 718. Class CStencilltem 714 descends from foundation class CObject 720.
  • Class CListCtrl 702 is a foundation class that encapsulates the functionality of a list view control.
  • Class CImageLst 704 is a foundation class that encapsulates the functionality of an image list.
  • Class CStencilListCtrl 706 manages stencil items, provides a view of the stencil items and provides the drag source capability.
  • Class CFBStencil View 708 controls the stencil or stencils used for creating function block diagrams.
  • Class CSfcStencilView 710 controls the stencil or stencils used for creating SFC diagrams.
  • CStencilltem 714 contains the drag/drop information for a single item in the stencil list control.
  • control studio object system 130 includes a plurality of classes which descend from the foundation class CObject 802. More specifically, classes CltwtBase 804 descends from class CObject 802. Classes Cltwt Attribute 806, CltwtUsage 808, CLtwtSfcStepData 810 CLtwtSFCTransistionData 812 and CLtwtGraphic 814 descend from class CltwtBase 804.
  • Class GLtwtUsageAll 822 descend from class CLtwtUsage 808.
  • Classes CLtwtUsageConnectorAttrs 820 and GLtwtUsageAll 822 are also aggregated with class CLtwtAttribute 806.
  • Class CLtwtConnNameAttrName 826 is aggregated with class CLtwtUsageAll 822.
  • Class CLtwtSfcStepsAll 830 descends from class CLtwtSfcStepData 810.
  • Class CLtwtSfcStepActionData 832 is aggregated with class
  • Classes CLtwtComment 840 and CLtwtBox 842 descend from class CLtwtGraphic 814.
  • Class CLtwtAttribute 806 stores data from the database or written into the database about attributes
  • Class CLtwtUsage 808 is a light weight data holder for usage information which is used to transfer data between the database and applications; this class is primarily used by function block diagrams, but sequential function chart algorithms use this class in a limited manner.
  • Class CLtwtUsageAll 822 is a subclass of CLtwtUsage class and contains additional information, including a list of input and output CLtwtConnNameAttrName objects and a list of CLtwtAttributes objects; this class is used in drag and drop to set any attribute or connection overrides that a user may have made to a specific usage.
  • Class CLtwtSfcStepData 810 is a light weight data holder which represents a step in a sequential function chart algorithm.
  • Class CLtwtGraphic 814 implements behavior common to all graphic objects, such as boxes and comments.
  • Class CLtwtSfcStepActionData 832 is a representation of a single sequential function chart action.
  • Class CLtwtStepsAll 830 is a specific representation of a step that contains actions used for drag and drop.
  • Class CLtwtBox 842 is a subclass of CLtwtGraphic which represents a database object, which in turn represents a box or a rectangle on an algorithm.
  • Class CLtwtComment 840 is a subclass of CLtwtGraphic which represents a database object, which in turn represents text a user has entered on an algorithm.
  • Class CLtwtBase 804 is an abstract base class which provides a way to manage a representation of those database objects which can appear on a diagram.
  • CLtwtSFCTransistionData 812 is a representation of a transition object in an SFC algorithm.
  • Class CLtwtConnNameAddrName 826 is a representation of an attribute and the name of the connector associated with the attribute; only certain attributes have connectors associated with them.
  • control studio object system includes a plurality of classes which also descend from the foundation class CObject 802 and which relate to connecting other items. More specifically, class CLtwtConnectionBase 904 descends from class CObject 802. Classes CLtwtSFCConnection 906 and CLtwtFBCConnection 908 descend from class CLtwtConnectionBase 904.
  • Class CLtwtConnectionBase 904 is a representation of a connection object.
  • the two types of connection objects are function block or sequential function chart connections.
  • CLtwtSfcConnection 906 provides a representation of a connection on a sequence function chart algorithm in the database.
  • Class CLtwtFbConnection 908 provides a representation of a connection on a function block algorithm in the database.
  • control studio object system 130 includes a class which descends from the foundation class COleDropTarget 1002. More specifically, class
  • CDiagramDropTarget 1004 descends from foundation class COleDropTarget 1002.
  • Classes CDiagramCtrl 1006 and CClipboardFormats 1008 are aggregated with class CDiagramDropTarget 1004.
  • Class CDiagramCtrl 1006 descends from class COleControl 1010.
  • CDiargramCtrl 1006 is aggregated with class CDiagramOcxView 1012.
  • Class CDiagramCtrl 1006 provides a graphical representation and a means of manipulation of objects for the function block and sequential function chart algorithm; this class is an OLE control class.
  • Class CDiagramDropTarget 1004 represents the target window of a diagram drag and drop operation; this class determines whether to accept any data dropped onto it and invokes the OnDrop method of the CDiagramCtrl object (which in turn fires the OnDrop event to the container which actually creates the dropped object in the database).
  • Class CClipboardFormats 1008 holds an array of registered formats supported for a drop by OCX.
  • Class COleControl 1010 is a foundation class for developing OLE controls.
  • Class CDiagrmOcxView 1012 is discussed with respect to figure 6.
  • control studio object system 130 also includes a class which descends from class CObject 802 and which relates to the function of dragging and dropping items or cutting and pasting items that already exist in the diagram.
  • Class CNativeDragDrop 1104 descends from class CObject 1102.
  • Classes CLtwtConnectionBase 904 and CltwtBase 1108 are aggregated with class CNativeDragDrop 1104.
  • Class CNativeDragDrop 1104 is a collection class that holds a list of CLtwtBase and CLtwtConnectionBase objects that currently exist on the diagram and that are to be dragged and dropped, or cut/copied and pasted; this object also stores a position offset which aids in setting the appropriate location during the paste/drop operation.
  • a class CNativeDragDrop 1104 object provides methods to serialize itself to and from a shared file and to set and get data from the COleDataSource and COleDataObject objects.
  • Class CLtwtBase 1108 is an abstract base class for objects that represent data objects in the database. Class CLtwtConnectionBase 904 is discussed above with reference to figure 9.
  • the control studio object system 130 includes a plurality of modes of operation for adding objects to the diagram portion of object system 130. These modes of operation include adding an object to the diagram portion and adding an object to a stencil portion.
  • the user positions a cursor (not shown) over a stencil object in the source stencil window, i.e., the stencil portion, and actuates a pointing device such as a mouse.
  • the stencil object in the stencil window is highlighted to indicate selection.
  • the user holds down the left mouse button and begins dragging the cursor by moving the mouse.
  • the workstation responds by displaying a drag image of the stencil that moves with the cursor.
  • the user next positions the cursor over the diagram portion.
  • the object system 130 causes the cursor to be updated to show that it is above a drop target by representing a cursor arrow with a rectangle coupled thereto.
  • the system represents the cursor with a circle with a diagonal line through it to indicate that it is not above a drop target.
  • the user releases the left mouse button.
  • the system removes the displayed drag image, redisplays the cursor as normal, and creates and displays a corresponding diagram object in the diagram window.
  • the user presses the escape key on the keyboard, the system cancels the drag and drop. If the user releases the mouse button while still in the stencil portion window, the system responds by moving the selected stencil object to the new location in the stencil portion window, and resetting the cursor to normal.
  • the classes used to implement this functionality are CStencilListCtrl, CImageList, CDiagramDropTarget, CStencilDropTarget, CStencilltem and CDiagramCtrl, CDiagramOcxView, CNativeDragDrop.
  • a drag/drop operation starts at step 1202 when the user selects a stencil object with the left mouse button and begins to drag the stencil object.
  • Control then transitions to processing step 1204 during which the OnBeginDrag method of class CStencilListCtrl f06 is invoked.
  • Method OnBeginDrag creates a drag image of the stencil object 1205.
  • control transitions to processing step 1206 during which the method CStencilListCtrl creates COleDataSource and COleDropSource objects.
  • Step 1206 then caches the data from the selected stencil object into a CSharedFile 1207.
  • control transitions to step 1208 during which the DoDragDrop method of the ColeDataSource object is invoked. Control then transitions to decision step 1210
  • control studio object system 130 determines whether the left mouse button is still actuated by the user. If the mouse button is actuated, the control transitions to decision step 1212 (see Figure 12C).
  • control studio object system 130 transitions to decision step 1214.
  • decision step 1214 control studio object system 130 determines whether the cursor is positioned over the stencil portion which functions as a Stencil List Control . If the cursor is positioned over the stencil portion , then control transitions to processing step 1216 during which the Stencils OnDrop event is activated. After the Stencils OnDrop event is activated, control transitions to decision step 1220 (see Figure 12e). If the cursor is not positioned over Stencil List Control, then control transitions to decision step 1222. During decision step 1222, control studio object system 130 determines whether the cursor is over a diagram portion.
  • control studio object system 130 determines whether the cursor is positioned over the Stencil List Control. If the cursor it is not positioned over the Stencil List Control, then control transitions to decision step 1230.
  • control studio object system 130 determines whether the cursor is was positioned over the Stencil List Control the last time the cursor position was checked. If the cursor was not positioned over Stencil Control List, then control transitions to decision step 1210. If the cursor was positioned over Stencil Control List the last time that the cursor position was checked then control transitions to step 1232. During step 1232, control studio object system 130 activates the OnDragLeave event to indicate that the cursor has left the stencil list control view. After the OnDragLeave event is activated, control transitions to decision step 1210.
  • control studio object system 130 determines whether the cursor was positioned over Stencil Control List the last time that object system 130 checked cursor position. If the cursor was not over Stencil Control List the last time that the cursor position was checked, then control transitions to processing step 1236.
  • the OnDragEnter stencil event is activated; OnDragEnter indicates to the system that the cursor has entered the stencil list control window. If the cursor was positioned over Stencil Control List the last time that the cursor position was checked, then control transitions to processing step 1238.
  • object system 130 activates the OnDragOver event; OnDragOver is used by object system 130 to determine the drop effect.
  • the OnDrop event for CDiagramDropTarget 104 is activated.
  • processing step 1242 Upon activation of the OnDrop event, control transitions to processing step 1242.
  • the method CDiagramOcxView is invoked with
  • COleDataObject as a parameter.
  • Control studio object system then obtains a handle to CSharedFile 1207 and transitions to processing step 1244.
  • the method CdiagramOcxView creates a new CStencilltem object and fills it with the data from CSharedFile 1207.
  • control transitions to processing step 1246.
  • CDiagramOcxView creates a diagram item 1248 located at the cursor position. After the diagram item is created, the drag and drop operation of the stencil object is complete.
  • control studio object system 130 determines whether the Stencil object is from this Stencil List Control; which indicates whether the stencil item originated from the CStencilListCtrl over which the cursor is position. If the stencil object is from this Stencil List Control, then control transitions to processing step 1250. During processing step 1250, object system 130 moves the stencil object from its current position in the Stencil List Control to the cursor position. After the move of the stencil object is complete, control transitions to completion step 1252 and the drag and drop operation is complete. If the stencil object is not from this Stencil List Control, then control transitions to processing step 1254.
  • the method CStencilListCtrl is invoked with the COleDataObject, which is used to obtain a handle to CSharedFile 1207.
  • control transitions to processing step 1256.
  • the method CStencilListCtrl creates a new CStencilltem object and fills the object with the stencil object data form CSharedFile 1207.
  • Control then transitions to processing step 1258.
  • the stencil object is added to the Stencil List Control 1260 at the cursor position. Control then transitions to completion step 1252.
  • a dragging and dropping operation is initiated at step 1302 by the user actuating and holding the mouse on a selected item. Control then transitions to processing step 1304.
  • the OnBeginDrag.event of the CDiagramCtrl class is activated. Activation of this event creates COleDataSource and COleDropSource objects and activates the OnBeginDrag event.
  • control transitions to processing step 1306.
  • control studio object system 130 creates a CNativeDragDrop object, and invokes the OnBeginDrag method of the CNativeDragDrop object. Control then transitions to processing step 1308.
  • the invoked OnBeginDrag method saves the data of all the selected objects into the shared memory file CSharedFile 1310.
  • Control then transitions to processing step 1312, during which the CDiagramCtrl event invokes the DoDragDrop method of the COleDataSource object. Control then transitions to decision step 1320 (see Figure 13B).
  • control studio object system 130 determines whether the mouse button is still actuated. If the mouse button is still actuated, then control transitions to decision step 1322. During decision step 1322 object system 130 determines whether the cursor is positioned over a valid drop location. If the cursor is not positioned over a valid drop location then control transfers to processing step 1324. During processing step 1324, CDiagramCtrl i06 updates the cursor to show that a drag and drop operation is occurring and also displays an enclosing outlined rectangle. Control then transitions back to decision step 1320.
  • object system 130 determines that the cursor is positioned over a valid drop location, then control transitions to processing step 1326.
  • object system 130 updates the cursor to indicate that it is not over a valid drop location. Control then transitions back to decision step 1320.
  • class CDiagramCtrl i06 determines that the mouse button has been released, control transitions to decision step 1328.
  • object system 130 determines whether the cursor is positioned over a valid drop location. If the cursor is not positioned over a valid drop location, then control transitions to termination symbol 1330 and the drag and drop operation is terminated. If the cursor is positioned over a valid drop location, then control transitions to processing step 1332.
  • the OnDrop method of CDiagramDropTarget is invoked.
  • the CDiagramDropTarget OnDrop method calls the CDiagramCtrl OnDrop method at step 1342 which fires the OnDrop event, (see Figure 13C).
  • object system 130 invokes the OnDrop method of the CDiagramCtrl class,. After the OnDrop method is invoked, control transitions to processing step 1342. During processing step 1342, object system 130 fires the OnDrop event. After the OnDrop event is activated, control transitions to processing step 1344. During processing step 1344, object system 130 creates a CNativeDragDrop object and transitions to processing step 1346. During processing step 1346 object system 130 invokes the OnDrop method of the CNativeDragDrop object. Control then transitions to processing step 1348. During processing step 1348 the OnDrop method reads the data previously serialized to a shared file 1310.
  • Control then transitions to processing step 1350.
  • the method CNativeDragDrop offsets the positions of the dropped objects.
  • Control then transitions to processing step 1352.
  • object system 130 creates the new object in the database.
  • Control then transitions to decision step 1360 (see Figure 13D)
  • the object system determines whether there is another dropped object. If there is another dropped object, then control transitions to processing step 1362. During processing step 1362, object system 130 creates the dropped object in the diagram portion. Control then transitions to processing step 1364 During processing step 1364, object system 130 selects the newly created diagram object and transitions to decision step 1360 to determine whether there is another dropped object. If there are no more dropped objects, then control transitions to processing step 1366. During processing step 1366, object system 130 updates all visible windows to reflect the changes made in the diagram. Control then transitions to termination symbol 1368 and the drag and drop operation is completed.
  • FIG. 14A - 14D the operation of the cut, copy and paste of one or more objects from the diagram is shown. More specifically, during a cut operation, a user selects the cut command as shown at step 1402. After the cut command is selected, control transitions to decision step 1404. During decision step 1404, object system 130 determines whether all selected types are supported by the cut operation. If all of the selected types are not supported by the cut operation then control transitions to processing step 1406. During processing step 1406, object system 130 warns the user and asks whether the user wishes to continue. Control then transitions to decision step 1408. During decision step 1408, object system 130 determines whether the user wishes to continue. If the user chooses not to continue, then control transitions to termination step 1409 and the cut operation is abandoned. If the user chooses to continue, or if all of the selected object types were supported by the cut operation as determined by decision step 1404 then control transitions to processing step 1410 (see Figure 14B).
  • object system 130 creates CNativeDragDrop and COleDataSource objects and invokes the OnBeginDrag method of the CNativeDragDrop object. Control then transitions to processing step 1412 During processing step 1412, the OnBeginDrag method serializes the data of the selected objects to a shared file 1414. Control then transitions to processing step 1416. During processing step 1416, the OnBeginDrag method caches the data to the COleDataSource. Control then transitions to processing step 1418. During processing step 1418, the CopyObject method of CDiagramCtrl object is invoked. Control then transitions to processing step 1420.
  • the method CopyObject copies the objects in various formats to the clipboard.
  • object system 130 transitions to the calling function and the copy is complete.
  • Control studio object system 130 then transitions to processing step 1333 which deletes all selected objects and transitions to completion step 1435 whereupon the cut is complete.
  • a user selects the copy command as shown at step 1432. After the copy command is selected, control transitions to processing step 1410 which is described above (see Figure 14B).
  • a user selects the paste command as shown at step 1440. After the paste command is selected, control transitions to processing step 1442.
  • object system 130 creates CNativeDragDrop and COleDataObject objects. Control then transitions to processing step 1446 (see Figure 13C).
  • control studio object system 130 the operation of control studio object system 130 is shown. More specifically, when a user wishes to install a process control diagram to a node, the user selects the Install to Node item from the File menu. Based upon user input, object system 130 then determines whether to install the entire module or just the changes since the last install operation was performed. When the user selects install entire module and the module has not yet been assigned to a node, object system 130 informs the user that the module has not been assigned to a node and asks whether the user wishes to install the module to a node. Object system 130 the presents the user with a list of nodes from which the user may select the appropriate node for configuring.
  • object system 130 After the user selects the node for configuring, object system 130 presents the user with a window confirming whether the user wishes to update the module. Object system 130 then requests the user to name the module. After the user selects or generates a name, object system 130 asks the user whether the user is sure that the user wishes to perform the install procedure. By answering yes, the control studio object system 130 automatically performs the install operation by downloading the information stored within the database to the selected module.

Abstract

A control studio object system is disclosed which allows a process control environment to be easily and quickly configured or modified. The control studio object system includes a stencil portion having stencil items conforming to algorithms and a diagram portion to which the stencil items may be copied via a drag and drop operation. Because the stencil items are objects which contain all of the information required by a diagram portion to create an object that contains all of the information necessary to program the process control environment, the completed diagram portion reflects the actual configuration of the process control environment. Additionally, providing the stencil items as objects allows the diagrammed environment to be installed directly to nodes without requiring the diagram to be compiled or rewritten in a language conforming to the node.

Description

SYSTEM FOR CONFIGURING A PROCESS CONTROL ENVIRONMENT WITH GRAPHICAL ELEMENTS
TECHNICAL FIELD
This invention relates to process monitoring and control systems. More specifically, the present invention relates to a system for creating a control template of a plurality of control templates, an individual control template having associated attributes, methods, and graphical views that are selected by a user to generate design process control solutions.
BACKGROUND ART
Present-day process control systems use instruments, control devices and communication systems to monitor and manipulate control elements, such as valves and switches, to maintain at selected target values one or more process variables, including temperature, pressure, flow and the like. The process variables are selected and controlled to achieve a desired process objective, such as attaining the safe and efficient operation of machines and equipment utilized in the process. Process control systems have widespread application in the automation of industrial processes such as the processes used in chemical, petroleum, and manufacturing industries, for example.
Control of the process is often implemented using microprocessor-based controllers, computers or workstations which monitor the process by sending and receiving commands and data to hardware devices to control either a particular aspect of the process or the entire process as a whole. The specific process control functions that are implemented by software programs in these microprocessors, computers or workstations may be individually designed, modified or changed through programming while requiring no modifications to the hardware. For example, an engineer might cause a program to be written to have the controller read a fluid level from a level sensor in a tank, compare the tank level with a predetermined desired level, and then open or close a feed valve based on whether the read level was lower or higher than the predetermined, desired level. The parameters are easily changed by displaying a selected view of the process and then by modifying the program using the selected view. The engineer typically would change parameters by displaying and modifying an engineer's view of the process. In addition to executing control processes, software programs also monitor and display a view of the processes, providing feedback in the form of an operator's display or view regarding the status of particular processes. The monitoring software programs also signal an alarm when a problem occurs. Some programs display instructions or suggestions to an operator when a problem occurs. The operator who is responsible for the control process needs to view the process from his point of view. A display or console is typically provided as the interface between the microprocessor based controller or computer performing the process control function and the operator and also between the programmer or engineer and the microprocessor based controller or computer performing the process control function.
Systems that perform, monitor, control, and feed back functions in process control environments are typically implemented by software written in high-level computer programming languages such as Basic, Fortran or C and executed on a computer or controller. These high-level languages, although effective for process control programming, are not usually used or understood by process engineers, maintenance engineers, control engineers, operators and supervisors. Higher level graphical display languages have been developed for such personnel, such as continuous function block and ladder logic. Thus each of the engineers, maintenance personnel, operators, lab personnel and the like, require a graphical view of the elements of the process control system that enables them to view the system in terms relevant to their responsibilities.
For example, a process control program might be written in Fortran and require two inputs, calculate the average of the inputs and produce an output value equal to the average of the two inputs. This program could be termed the AVERAGE function and may be invoked and referenced through a graphical display for the control engineers. A typical graphical display may consist of a rectangular block having two inputs, one output, and a label designating the block as AVERAGE. A different program may be used to create a graphical representation of this same function for an operator to view the average value. Before the system is delivered to the customer, these software programs are placed into a library of predefined user selectable features. The programs are identified by function blocks. A user may then invoke a function and select the predefined graphical representations to create different views for the operator, engineer, etc. by selecting one of a plurality of function blocks from the library for use in defining a process control solution rather than having to develop a completely new program in Fortran, for example.
A group of standardized functions, each designated by an associated function block, may be stored in a control library. A designer equipped with such a library can design process control solutions by interconnecting, on a computer display screen, various functions or elements selected with the function blocks to perform particular tasks. The microprocessor or computer associates each of the functions or elements defined by the function blocks with predefined templates stored in the library and relates each of the program functions or elements to each other according to the interconnections desired by the designer. Ideally, a designer could design an entire process control program using graphical views of predefined functions without ever writing one line of code in Fortran or other high-level programming language.
One problem associated with the use of graphical views for process control programming is that existing systems allow only the equipment manufacturer, not a user of this equipment, to create his own control functions, along with associated graphical views, or modify the predefined functions within the provided library.
New process control functions are designed primarily by companies who sell design systems and not by the end users who may have a particular need for a function that is not a part of the standard set of functions supplied by the company. The standardized functions are contained within a control library furnished with the system to the end user. The end user must either utilize existing functions supplied with the design environment or rely on the company supplying the design environment to develop any desired particular customized function for them. If the designer is asked to modify the parameters of the engineer's view, then all other views using those parameters have to be rewritten and modified accordingly because the function program and view programs are often developed independently and are not part of an integrated development environment. Clearly, such procedure is very cumbersome, expensive, and time-consuming. What is needed is a uniform or universal design environment that can easily be used, not only by a designer or manufacturer but also a user, to customize an existing solution to meet his specific needs for developing process control functions.
DISCLOSURE OF INVENTION
It has been discovered that a process control environment may be easily and quickly configured or modified by providing a control studio object system which includes a stencil portion (which is also referred to as a palette portion) having stencil items conforming to algorithms and a diagram portion to which the stencil items may be copied via a drag and drop operation. Because the stencil items are objects which contain all of the information required by a diagram portion to create an object that contains all of the information necessary to program the process control environment, the completed diagram portion reflects the actual configuration of the process control environment. It has also been discovered that providing the stencil items as objects allows the diagrammed environment to be installed directly to nodes without requiring the diagram to be compiled or rewritten in a language conforming to the node.
In one aspect, the invention relates to a method for configuring a process control environment, the process control environment including a computer system having a processor coupled to a display device. The method includes the steps of: presenting, on the display device, a stencil view including a module object, the module object representing a process control module; presenting, on the display device, a process control environment view, the process control environment view representing the process control environment configuration; dragging the module object from the stencil view to the process control environment view; dropping the module object on the process control environment view in a position indicative of a location of the process control module in the process control environment, and, configuring the process control environment in accordance with the process control environment view.
The described design environment enables a process control designer or user to modify a standard process control function or create a unique customized process control function and create the graphical views to be associated with the modified or newly created process control function, all within a common environment. The design environment includes a common interface for both the creation of the function and for its associated engineers, operators, lab and maintenance personnel or other desired users such that when the engineer's function is modified or created, the modification or creation manifests itself in all other graphical views of the function. In addition, the design environment has a common database structure of attributes and methods and the graphics associated with the process control function to allow modified or created process control functions to be represented in whatever graphical methodology that is desired or required by the designer, whether by ladder logic, continuous function block or other design languages required by the various engineer, operator, lab, and maintenance personnel as other desired graphical views.
BRIEF DESCRIPTION OF DRAWINGS
The features of the invention believed to be novel are specifically set forth in the appended claims. However, the invention itself, both as to its structure and method of operation, may best be understood by referring to the following description and accompanying drawings.
Figure 1 is a schematic block diagram showing a workstation in accordance with a generalized embodiment of the present invention which furnishes a capability to create a new control template and a capability to modify an existing control.
Figure 2 is a schematic block diagram showing the process control environment in a configuration implementation and a run-time implementation.
Figure 3 is a schematic block diagram which depicts a hierarchical relationship among system objects of a configuration model in accordance with an embodiment of the present invention.
Figure 4 is a screen presentation of a Control Studio Object system in accordance with an embodiment of the present invention.
Figures 5a - 5f are screen presentations of installing a completed process control diagram to a node of a process control environment in accordance with an embodiment of the present invention. Figure 6 is a block diagram showing the class hierarchy of control studio object system diagram view class hierarchy.
Figure 7 is a block diagram showing the class hierarchy of control studio object system stencil classes.
Figure 8 is a block diagram showing the class hierarchy of control studio object lightweight classes that descend from class CObject.
Figure 9 is a block diagram showing the class hierarchy of control studio object system connection classes that descend from class CObject.
Figure 10 is a block diagram showing the class hierarchy of a diagram portion of the control studio object system drag and drop classes.
Figure 11 is a block diagram showing the class hierarchy of control studio object system native drag and drop object classes.
Figure 12A - 12E are flow charts showing a stencil drag and drop operation of a control studio object system in accordance with the present invention.
Figure 13 A - 13D are flow charts showing a native drag and drop to a diagram portion of a control studio object system in accordance with the present invention.
Figure 14A - 14D are flow charts showing native cut, copy and paste operations in a diagram portion of a control studio object system in accordance with the present invention.
Figure 15 is a flow chart showing the operation of installing a diagram to a node in accordance with the present invention.
MODES FOR CARRYING OUT THE INVENTION
A process control environment 100 is shown in Figure 1 and illustrates a control environment for implementing a digital control system, process controller or the like. The process control environment 100 includes an operator workstation 102 and an engineering workstation 106 electrically interconnected by a local area network ("LAN") 108, or other known communication link, for transferring and receiving data and control signals among the various workstations and a plurality of controller/multiplexers 110. Workstations 102 and 106 are, for example, computers which conform to the IBM compatible architecture. The workstations 102 and 106 are shown connected by the LAN 108 to a plurality of the controller/multiplexers 110 that electrically interface between the workstations and a plurality of processes 112. In multiple various embodiments, the LAN 108 includes a single workstation connected directly to a controller/multiplexer 110 or alternatively includes a plurality of workstations, for example two workstations 102 and 106, and many controller/multiplexers 110 depending upon the purposes and requirements of the process control environment 100. In some embodiments, a single process controller/multiplexer 110 controls several different processes 112 or alternatively controls a portion of a single process.
In the process control environment 100, a process control strategy is developed by creating a software control solution on the engineering workstation 106, for example, and transferring the solution via the LAN 108 to the operator workstation 102, lab workstation 104, and to controller/multiplexer 110 for execution. The operator workstation 102 supplies interface displays to the control/monitor strategy implemented in the controller/multiplexer 1 10 and communicates to one or more of the controller/multiplexers 110 to view the processes 112 and change control attribute values according to the requirements of the designed solution. The processes 1 12 are formed from one or more field devices, which may be smart field devices or conventional (non-smart) field devices.
In addition, the operator workstation 102 communicates visual and audio feedback to the operator regarding the status and conditions of the controlled processes 112. The engineering workstation 106 includes a processor 116, and a display 1 15 and one or more input/output or user-interface device 118 such as a keyboard, light pen and the like. The workstation also includes a memory 117, which includes both volatile and non-volatile memory. The memory 1 17 includes a control program that executes on the processor 116 to implement control operations and functions of the process control environment 100. The memory 1 17 also includes a control template system 120 and a Control Studio Object system 130. The operator workstation 102, and other workstations (not shown) within the process control environment 100 include at least one central processing unit (not shown) which is electrically connected to a display (not shown) and a user-interface device (not shown) to allow interaction between a user and the processor.
The process control environment 100 also includes a template generator 124 and a control template library 123 which, in combination, form the control template system 120. A control template is defined as the grouping of attribute functions that are used to control a process and the methodology used for a particular process control function, the control attributes, variables, inputs, and outputs for the particular function and the graphical views of the function as needed such as an engineer view and an operator view.
The control template system 120 includes the control template library 123 that communicates with the template generator 124. The control template library 123 contains data representing sets of predefined or existing control template functions for use in process control programs. The control template functions are the templates that generally come with the system from the system designer to the user. The template generator 124 is an interface that advantageously allows a user to create new control template functions or modify existing control template functions. The created and modified template functions are selectively stored in the control template library 123.
The template generator 124 includes an attributes and methods language generator 126 and a graphics generator 128. The attributes and methods language generator 126 supplies display screens that allow the user to define a plurality of attribute functions associated with the creation of a new control template function or modification of a particular existing control template function, such as inputs, outputs, and other attributes, as well as providing display screens for enabling the user to select methods or programs that perform the new or modified function for the particular control template. The graphics generator 128 furnishes a user capability to design graphical views to be associated with particular control templates. A user utilizes the data stored by the attributes and methods language generator 126 and the graphics generator 128 to completely define the attributes, methods, and graphical views for a control template. The data representing the created control template function is generally stored in the control template library 123 and is subsequently available for selection and usage by an engineer for the design of process control solutions. Control Studio Object system 130 provides a user friendly interface which allows a user to create, modify, use, and delete basic building blocks of a diagram, called stencil items, palette items or templates. Control Studio Object system 130 is understandable by a user who has no previous experience in manipulating the basic building blocks of template generator. Control Studio Object system 130, and specifically the stencil portion of the control studio object system 130, interacts with template generator 120.
The process control environment 100 exists in a configuration model or configuration implementation 210 and a run-time model or run-time implementation 220 shown in Figure 2. In the configuration implementation 210, the component devices, objects, interconnections and interrelationships within the process control environment 100 are defined. In the run-time implementation 220, operations of the various component devices, objects, interconnections and interrelationships are performed. The configuration implementation 210 and the run-time implementation 220 are interconnected through a ASCII based download language The download language creates system objects according to definitions supplied by a user and creates instances from the supplied definitions. In addition to downloading definitions, the download language also uploads instances and instance values. The configuration implementation 210 is activated to execute in the run-time implementation 220 using an installation procedure.
The process control environment 100 includes multiple subsystems with several of the subsystems having both a configuration and a run-time implementation. For example, a process graphic subsystem 230 supplies user-defined views and operator interfacing to the architecture of the process control environment 100. The process graphic subsystem 230 has a process graphic editor 232, a part of the configuration implementation 210, and a process graphic viewer 234, a portion of the run-time implementation 220. The process graphic editor 232 is connected to the process graphic viewer 234 by an intersubsystem interface 236 in the download language. The process control environment 100 also includes a control subsystem 240 which configures and installs control modules and equipment modules in a definition and module editor 242 and which executes the control modules and the equipment modules in a run-time controller 244. The definition and module editor 242 operates within the configuration implementation 210 and the run-time controller 244 operates within the runtime implementation 220 to supply continuous and sequencing control functions. The definition and module editor 242 is connected to the run-time controller 244 by an intersubsystem interface 246 in the download language. The multiple subsystems are interconnected by a subsystem interface 250.
The configuration implementation 210 and the run-time implementation 220 interface to a master database 260 to support access to common data structures. Various local (non- master) databases 262 interface to the master database 260, for example, to transfer configuration data from the master database 260 to the local databases 262 as directed by a user. Part of the master database 260 is a persistent database 270. The persistent database 270 is an object which transcends time so that the database continues to exist after the creator of the database no longer exists and transcends space so that the database is removable to an address space that is different from the address space at which the database was created. The entire configuration implementation 210 is stored in the persistent database 270.
The run-time implementation 220 interfaces to the persistent database 270 and to local databases 262 to access data structures formed by the configuration implementation 210. In particular, the run-time implementation 220 fetches selected equipment modules, displays and the like from the local databases 262 and the persistent database 270. The run-time implementation 220 interfaces to other subsystems to install definitions, thereby installing objects that are used to create instances, when the definitions do not yet exist, instantiating run-time instances, and transferring information from various source to destination objects.
Referring to Figure 3, a schematic block diagram illustrates a hierarchical relationship among system objects of a configuration model 300. The configuration model 300 includes many configuration aspects including control, I/O, process graphics, process equipment, alarms, history and events. The configuration model 300 also includes a device description and network topology layout.
The configuration model hierarchy 300 is defined for usage by a particular set of users for visualizing system object relationships and locations and for communicating or navigating maintenance information among various system objects. For example, one configuration model hierarchy 300, specifically a physical plant hierarchy, is defined for usage by maintenance engineers and technicians for visualizing physical plant relationships and locations and for communicating or navigating maintenance information among various instruments and equipment in a physical plant. An embodiment of a configuration model hierarchy 300 that forms a physical plant hierarchy supports a subset of the SP88 physical equipment standard hierarchy and includes a configuration model site 310, one or more physical plant areas 320, equipment modules 330 and control modules 340.
The configuration model hierarchy 300 is defined for a single process site 310 which is divided into one or more named physical plant areas 320 that are defined within the configuration model hierarchy 300. The physical plant areas 320 optionally contain tagged modules, each of which is uniquely instantiated within the configuration model hierarchy 300. A physical plant area 320 optionally contains one or more equipment modules 330. An equipment module 330 optionally contains other equipment modules 330, control modules 340 and function blocks. An equipment module 330 includes and is controlled by a control template that is created according to one of a number of different graphical process control programming languages including continuous function block, ladder logic, or sequential function charting ("SFC"). The configuration model hierarchy 300 optionally contains one or more control modules 340. A control module 340 is contained in an object such as a physical plant area 320, an equipment module 330 or another control module 340. A control module 340 optionally contains objects such as other control modules 340 or function blocks.
The Control Studio object system 130 enables a user to add objects to diagrams, drag and drop objects between diagrams and third party applications, cut and paste objects between diagrams and other applications and install process control environments depicted by the diagrams having the objects to the process control environment.
User Interface Aspects of Control Studio Object System
Referring to Fig. 4, the main control window of the control studio object system 130 includes textual pull down menus 402, pictographic menu 404. a stencil portion presentation 406 and a diagram portion screen presentation 408. Stencil items 420 are displayed within the stencil portion presentation 406. The user's diagram of the process control environment design is presented in the diagram portion screen presentation. This diagram of the process control design environment is referred to as the process control environment view. Each of the presentations in the main window is re-sizable and relocatable by the user in accordance with known windowing techniques. The Control Studio system 130 tracks the location and size of the panes of the main window by maintaining persistent object data including coordinates within the two-dimensional display, as well as style and other information.
When designing a process control environment, a user simply actuates a stencil item from the stencil portion presentation 408, drags the actuated stencil item to a desired location within the diagram portion screen presentation 408 and drops the actuated stencil item in a desired location. Control studio object system 130 then creates a diagram item that allows the diagram to create an object with all of the information necessary for configuring a process control environment. Because the stencil items are objects which include all of the necessary information for the diagram to configure a process control environment, when the process control environment design is completed within the diagram portion, this design may be directly downloaded to the appropriate portions of the process control environment.
Referring to Figures 5a -5f, the process of installing a completed process control diagram to a node is shown. More specifically, as shown in Figure 5a, when a user wishes to install a process control diagram to a node, the user selects the Install to Node item from the File menu. The choices presented to the user are whether to install the entire module or just the changes since the last install operation was performed. When the user selects install entire module, a window is presented that informs the user that the module has not been assigned to a node and asking whether the user wishes to install the module to a node. (See Figure 5b.)
Next the user is presented with a list of nodes from which the user selects the appropriate node for configuring (see Figure 5c). After the user selects the node for configuring, the user is presented with a window asking whether the user wishes to update the module (see Figure 5d). The user is then requested to name the module (see Figure 5e). After the user selects or generates a name, the user is asked whether the user is sure that the user wishes to perform the install procedure (see figure 5f). By answering yes, the control studio object system 130 automatically performs the install to the selected module. Implementation of Control Studio Object System
The process control environment 100, and specifically, the control studio object system 130, is implemented using an object-oriented framework. An object-oriented framework uses object-oriented concepts such as class hierarchies, object states and object behavior. These concepts, which are briefly discussed below, are well known in the art. The present object-oriented framework is written using the object-oriented C++ programming language, which is well-known in the art.
The building block of an object-oriented framework is an object. An object is defined by a state and a behavior. The state of an object is set forth by fields of the object. The behavior of an object is set forth by methods of the object. Each object is an instance of a class, which provides a template for the object. A class defines zero or more fields and zero or more methods.
Fields are data structures which contain information defining object data or a portion of the state of an object. Objects which are instances of the same class have the same fields. However, the particular information contained within the fields of the objects can vary from object to object. Each field can contain information that is direct, such as an integer value, or indirect, such as a reference to another object.
A method is a collection of computer instructions which can be executed in processor 116 by computer system software. The instructions of a method are executed, i.e., the method is performed, when software requests that the object for which the method is defined perform the method. A method can be performed by any object that is a member of the class that includes the method. The particular object performing the method is the responder or the responding object. When performing the method, the responder consumes one or more arguments, i.e., input data, and produces zero or one result, i.e., an object returned as output data. The methods for a particular object define the behavior of that object.
Classes of an object-oriented framework are organized in a class hierarchy. In a class hierarchy, a class inherits the fields and methods which are defined by the superclasses of that class. Additionally, the fields and methods defined by a class are inherited by any subclasses of the class. I.e., an instance of a subclass includes the fields defined by the superclass and can perform the methods defined by the superclass. Accordingly, when a method of an object is called, the method that is accessed may be defined in the class of which the object is a member or in any one of the superclasses of the class of which the object is a member. When a method of an object is called, process control environment 100 selects the method to run by examining the class of the object and, if necessary, any superclasses of the object.
A subclass may override or supersede a method definition which is inherited from a superclass to enhance or change the behavior of the subclass. However, a subclass may not supersede the signature of the method. The signature of a method includes the method's identifier, the number and type of arguments, whether a result is returned, and, if so, the type of the result. The subclass supersedes an inherited method definition by redefining the computer instructions which are carried out in performance of the method.
Classes which are capable of having instances are concrete classes. Classes which cannot have instances are abstract classes. Abstract classes may define fields and methods which are inherited by subclasses of the abstract classes. The subclasses of an abstract class may be other abstract classes; however, ultimately, within the class hierarchy, the subclasses are concrete classes.
All classes defined in the disclosed preferred embodiment, except for mix-in classes which are described below, are subclasses of a class, CObject. Thus, each class that is described herein and which is not a mix-in class inherits the methods and fields of class Cobject, which is a base class within the Microsoft Foundation class framework.
More specifically, control studio object system 130 is implemented using the Foundation classes version 4.0 of the Microsoft developers kit for Visual C++ for Windows NT version 3.51.
Referring to Figure 6, control studio object system 130 includes a plurality of classes which descend from and are related to the foundation class CMDIChildWnd 602. Class CMdeMDIChildWnd 604 descends from class CMDIChildWnd 602. Class CSplitChildWnd 606 descends from class CMDIChildWnd 604. Classes CStencilView 608, CSplitterWnd 610 and CDiagramOcxView 612 are aggregated with class CSplitChildWnd 606. Classes CStencil View 608 and CDiargramOCXView descend from foundation class CFormView 614.
Class CMDIChildWnd 602 is a frame window for a child window of a multiple document interface application. Class CMdeMDIChildWnd 604 removes the title text from the screen presentation. Class CSplitChildWnd 606 provides management of its children in a split window fashion as is known in the art. Class CStencilView 608 maintains a CList stencil control and manages the stencil user interface of the stencil portion. Class CDiagramOcxView 612 manages the diagram user interface of the diagram portion and contains an instance of a diagram old custom control (OCX). Class CSplitterWnd 610 is a foundation class which controls splitting panes as is well known in the art. Class CFormView 614 is a foundation class for containing control classes.
Referring to Figure 7, control studio object system 130 includes a plurality of classes which descend from and are related to the foundation classes class CListCtrl 702 and CImageList 704. More specifically, classes CStencilListCtrl 706 descends from class CListCtrl 702. Classes CFbStencilView 708 and CSfcStencilView 710 are aggregated with CStencilListCtrl 706. Classes CFbStencilView 708 and CSfcStencilView 710 descend from class CStencilView 712. Foundation class CImageList 704, class CStencilltem 714 and class CStencilDropTarget 716 are associated with Class CStencilListCtrl 706. Class CStencilDropTarget 716 descends from class COleDropTarget 718. Class CStencilltem 714 descends from foundation class CObject 720.
Class CListCtrl 702 is a foundation class that encapsulates the functionality of a list view control. Class CImageLst 704 is a foundation class that encapsulates the functionality of an image list. Class CStencilListCtrl 706 manages stencil items, provides a view of the stencil items and provides the drag source capability. Class CFBStencil View 708 controls the stencil or stencils used for creating function block diagrams. Class CSfcStencilView 710 controls the stencil or stencils used for creating SFC diagrams. CStencilltem 714 contains the drag/drop information for a single item in the stencil list control. CStencilDropTarget 716 controls drag and drop notification messages for class CStencilListCtrl f06. COleDropTarget 718 is a foundation class which encapsulates the functionality of dropping in a drag/drop operation. Referring to Figure 8, control studio object system 130 includes a plurality of classes which descend from the foundation class CObject 802. More specifically, classes CltwtBase 804 descends from class CObject 802. Classes Cltwt Attribute 806, CltwtUsage 808, CLtwtSfcStepData 810 CLtwtSFCTransistionData 812 and CLtwtGraphic 814 descend from class CltwtBase 804. Each of these classes represent different types of diagram items that may be used in a drag and drop operation. Class GLtwtUsageAll 822 descend from class CLtwtUsage 808. Classes CLtwtUsageConnectorAttrs 820 and GLtwtUsageAll 822 are also aggregated with class CLtwtAttribute 806. Class CLtwtConnNameAttrName 826 is aggregated with class CLtwtUsageAll 822. Class CLtwtSfcStepsAll 830 descends from class CLtwtSfcStepData 810. Class CLtwtSfcStepActionData 832 is aggregated with class
CLtwtSfcStepsAnd Actions 830. Classes CLtwtComment 840 and CLtwtBox 842 descend from class CLtwtGraphic 814.
Class CLtwtAttribute 806 stores data from the database or written into the database about attributes Class CLtwtUsage 808 is a light weight data holder for usage information which is used to transfer data between the database and applications; this class is primarily used by function block diagrams, but sequential function chart algorithms use this class in a limited manner. Class CLtwtUsageAll 822 is a subclass of CLtwtUsage class and contains additional information, including a list of input and output CLtwtConnNameAttrName objects and a list of CLtwtAttributes objects; this class is used in drag and drop to set any attribute or connection overrides that a user may have made to a specific usage. Class CLtwtSfcStepData 810 is a light weight data holder which represents a step in a sequential function chart algorithm. Class CLtwtGraphic 814 implements behavior common to all graphic objects, such as boxes and comments. Class CLtwtSfcStepActionData 832 is a representation of a single sequential function chart action. Class CLtwtStepsAll 830 is a specific representation of a step that contains actions used for drag and drop. Class CLtwtBox 842 is a subclass of CLtwtGraphic which represents a database object, which in turn represents a box or a rectangle on an algorithm. Class CLtwtComment 840 is a subclass of CLtwtGraphic which represents a database object, which in turn represents text a user has entered on an algorithm. Class CLtwtBase 804 is an abstract base class which provides a way to manage a representation of those database objects which can appear on a diagram. Class
CLtwtSFCTransistionData 812 is a representation of a transition object in an SFC algorithm. Class CLtwtConnNameAddrName 826 is a representation of an attribute and the name of the connector associated with the attribute; only certain attributes have connectors associated with them.
Referring to Figure 9, control studio object system includes a plurality of classes which also descend from the foundation class CObject 802 and which relate to connecting other items. More specifically, class CLtwtConnectionBase 904 descends from class CObject 802. Classes CLtwtSFCConnection 906 and CLtwtFBCConnection 908 descend from class CLtwtConnectionBase 904.
Class CLtwtConnectionBase 904 is a representation of a connection object. In the preferred embodiment, the two types of connection objects are function block or sequential function chart connections. CLtwtSfcConnection 906 provides a representation of a connection on a sequence function chart algorithm in the database. Class CLtwtFbConnection 908 provides a representation of a connection on a function block algorithm in the database.
Referring to Figure 10, control studio object system 130 includes a class which descends from the foundation class COleDropTarget 1002. More specifically, class
CDiagramDropTarget 1004 descends from foundation class COleDropTarget 1002. Classes CDiagramCtrl 1006 and CClipboardFormats 1008 are aggregated with class CDiagramDropTarget 1004. Class CDiagramCtrl 1006 descends from class COleControl 1010. CDiargramCtrl 1006 is aggregated with class CDiagramOcxView 1012.
Class CDiagramCtrl 1006 provides a graphical representation and a means of manipulation of objects for the function block and sequential function chart algorithm; this class is an OLE control class. Class CDiagramDropTarget 1004 represents the target window of a diagram drag and drop operation; this class determines whether to accept any data dropped onto it and invokes the OnDrop method of the CDiagramCtrl object (which in turn fires the OnDrop event to the container which actually creates the dropped object in the database). Class CClipboardFormats 1008 holds an array of registered formats supported for a drop by OCX. Class COleControl 1010 is a foundation class for developing OLE controls. Class CDiagrmOcxView 1012 is discussed with respect to figure 6. Referring to Figure 11. control studio object system 130 also includes a class which descends from class CObject 802 and which relates to the function of dragging and dropping items or cutting and pasting items that already exist in the diagram. Class CNativeDragDrop 1104 descends from class CObject 1102. Classes CLtwtConnectionBase 904 and CltwtBase 1108 are aggregated with class CNativeDragDrop 1104.
Class CNativeDragDrop 1104 is a collection class that holds a list of CLtwtBase and CLtwtConnectionBase objects that currently exist on the diagram and that are to be dragged and dropped, or cut/copied and pasted; this object also stores a position offset which aids in setting the appropriate location during the paste/drop operation. A class CNativeDragDrop 1104 object provides methods to serialize itself to and from a shared file and to set and get data from the COleDataSource and COleDataObject objects. Class CLtwtBase 1108 is an abstract base class for objects that represent data objects in the database. Class CLtwtConnectionBase 904 is discussed above with reference to figure 9.
Operation of Control Studio Object System
The control studio object system 130 includes a plurality of modes of operation for adding objects to the diagram portion of object system 130. These modes of operation include adding an object to the diagram portion and adding an object to a stencil portion.
When adding a stencil object from the stencil portion to the diagram portion, the user positions a cursor (not shown) over a stencil object in the source stencil window, i.e., the stencil portion, and actuates a pointing device such as a mouse. The stencil object in the stencil window is highlighted to indicate selection. With the cursor over the selected stencil object, the user holds down the left mouse button and begins dragging the cursor by moving the mouse. The workstation responds by displaying a drag image of the stencil that moves with the cursor. The user next positions the cursor over the diagram portion. As the user continues to drag the cursor across the diagram window, the object system 130 causes the cursor to be updated to show that it is above a drop target by representing a cursor arrow with a rectangle coupled thereto. If the user moves the cursor outside the edge of the diagram portion window, the system represents the cursor with a circle with a diagonal line through it to indicate that it is not above a drop target. When the user has moved the cursor to the position at which the new object is to be added to the diagram, the user releases the left mouse button. In response, the system removes the displayed drag image, redisplays the cursor as normal, and creates and displays a corresponding diagram object in the diagram window. If instead of releasing the mouse button, the user presses the escape key on the keyboard, the system cancels the drag and drop. If the user releases the mouse button while still in the stencil portion window, the system responds by moving the selected stencil object to the new location in the stencil portion window, and resetting the cursor to normal. The classes used to implement this functionality are CStencilListCtrl, CImageList, CDiagramDropTarget, CStencilDropTarget, CStencilltem and CDiagramCtrl, CDiagramOcxView, CNativeDragDrop.
Referring to Figure 12A, the operation of control studio object system 130 during a stencil drag/drop operation is shown. A drag/drop operation starts at step 1202 when the user selects a stencil object with the left mouse button and begins to drag the stencil object. Control then transitions to processing step 1204 during which the OnBeginDrag method of class CStencilListCtrl f06 is invoked. Method OnBeginDrag creates a drag image of the stencil object 1205. On completion of step 1204, control transitions to processing step 1206 during which the method CStencilListCtrl creates COleDataSource and COleDropSource objects. Step 1206 then caches the data from the selected stencil object into a CSharedFile 1207. From step 1206, control transitions to step 1208 during which the DoDragDrop method of the ColeDataSource object is invoked. Control then transitions to decision step 1210
Referring to Figure 12B, during decision step 1210, control studio object system 130 determines whether the left mouse button is still actuated by the user. If the mouse button is actuated, the control transitions to decision step 1212 (see Figure 12C).
If the mouse button is not actuated, then control studio object system 130 transitions to decision step 1214. During decision step 1214, control studio object system 130 determines whether the cursor is positioned over the stencil portion which functions as a Stencil List Control . If the cursor is positioned over the stencil portion , then control transitions to processing step 1216 during which the Stencils OnDrop event is activated. After the Stencils OnDrop event is activated, control transitions to decision step 1220 (see Figure 12e). If the cursor is not positioned over Stencil List Control, then control transitions to decision step 1222. During decision step 1222, control studio object system 130 determines whether the cursor is over a diagram portion. If the cursor is over a diagram portion, the control transitions to processing step 1224 and the Diagram OnDrop event is activated. After the Diagram OnDrop event is activated, control transitions to step 1226 (see Figure 12d). If the cursor is not over a diagram at decision step 1222, then control transitions to termination step 1228 and the drag and drop operation is ended.
Referring to Figure 12C, during decision step 1212, control studio object system 130 determines whether the cursor is positioned over the Stencil List Control. If the cursor it is not positioned over the Stencil List Control, then control transitions to decision step 1230.
During decision step 1230, control studio object system 130 determines whether the cursor is was positioned over the Stencil List Control the last time the cursor position was checked. If the cursor was not positioned over Stencil Control List, then control transitions to decision step 1210. If the cursor was positioned over Stencil Control List the last time that the cursor position was checked then control transitions to step 1232. During step 1232, control studio object system 130 activates the OnDragLeave event to indicate that the cursor has left the stencil list control view. After the OnDragLeave event is activated, control transitions to decision step 1210.
If during decision step 1212, the cursor is positioned over Stencil List Control, control transitions to decision step 1234. During decision step 1234, control studio object system 130 determines whether the cursor was positioned over Stencil Control List the last time that object system 130 checked cursor position. If the cursor was not over Stencil Control List the last time that the cursor position was checked, then control transitions to processing step 1236. During processing step 1236, the OnDragEnter stencil event is activated; OnDragEnter indicates to the system that the cursor has entered the stencil list control window. If the cursor was positioned over Stencil Control List the last time that the cursor position was checked, then control transitions to processing step 1238. During processing step 1238, object system 130 activates the OnDragOver event; OnDragOver is used by object system 130 to determine the drop effect. Control transitions to decision step 1210 from both processing step 1236 and processing step 1238 after their respective events are activated. Referring to Figure 12D, during processing step 1226, the OnDrop event for CDiagramDropTarget 104 is activated. After the OnDrop event is activated, control transitions to processing step 1240, during which step the OnDrop event for CDiagramCtrl is activated. Upon activation of the OnDrop event, control transitions to processing step 1242. During processing step 1242, the method CDiagramOcxView is invoked with
COleDataObject as a parameter. Control studio object system then obtains a handle to CSharedFile 1207 and transitions to processing step 1244. During processing step 1244, the method CdiagramOcxView creates a new CStencilltem object and fills it with the data from CSharedFile 1207. On completion of step 1244, control transitions to processing step 1246. During processing step 1246, CDiagramOcxView creates a diagram item 1248 located at the cursor position. After the diagram item is created, the drag and drop operation of the stencil object is complete.
Referring to Figure 12E, during decision step 1220, control studio object system 130 determines whether the Stencil object is from this Stencil List Control; which indicates whether the stencil item originated from the CStencilListCtrl over which the cursor is position. If the stencil object is from this Stencil List Control, then control transitions to processing step 1250. During processing step 1250, object system 130 moves the stencil object from its current position in the Stencil List Control to the cursor position. After the move of the stencil object is complete, control transitions to completion step 1252 and the drag and drop operation is complete. If the stencil object is not from this Stencil List Control, then control transitions to processing step 1254. During processing step 1254, the method CStencilListCtrl is invoked with the COleDataObject, which is used to obtain a handle to CSharedFile 1207. After the handle is obtained, control transitions to processing step 1256. During processing step 1256, the method CStencilListCtrl creates a new CStencilltem object and fills the object with the stencil object data form CSharedFile 1207. Control then transitions to processing step 1258. During processing step 1258, the stencil object is added to the Stencil List Control 1260 at the cursor position. Control then transitions to completion step 1252.
Referring now to Figure 13 A, the operation of dragging and dropping one or more selected items within or between diagrams is shown. More specifically, a dragging and dropping operation is initiated at step 1302 by the user actuating and holding the mouse on a selected item. Control then transitions to processing step 1304. During processing step 1304, the OnBeginDrag.event of the CDiagramCtrl class is activated. Activation of this event creates COleDataSource and COleDropSource objects and activates the OnBeginDrag event. Upon activation of the OnBeginDrag event, control transitions to processing step 1306. During processing step 1306, control studio object system 130 creates a CNativeDragDrop object, and invokes the OnBeginDrag method of the CNativeDragDrop object. Control then transitions to processing step 1308. During processing step 1308, the invoked OnBeginDrag method saves the data of all the selected objects into the shared memory file CSharedFile 1310. Control then transitions to processing step 1312, during which the CDiagramCtrl event invokes the DoDragDrop method of the COleDataSource object. Control then transitions to decision step 1320 (see Figure 13B).
Referring to Figure 13B, during decision step 1320 control studio object system 130 determines whether the mouse button is still actuated. If the mouse button is still actuated, then control transitions to decision step 1322. During decision step 1322 object system 130 determines whether the cursor is positioned over a valid drop location. If the cursor is not positioned over a valid drop location then control transfers to processing step 1324. During processing step 1324, CDiagramCtrl i06 updates the cursor to show that a drag and drop operation is occurring and also displays an enclosing outlined rectangle. Control then transitions back to decision step 1320.
If during decision step 1322, object system 130 determines that the cursor is positioned over a valid drop location, then control transitions to processing step 1326. During processing step 1326, object system 130 updates the cursor to indicate that it is not over a valid drop location. Control then transitions back to decision step 1320.
If during decision step 1320, class CDiagramCtrl i06 determines that the mouse button has been released, control transitions to decision step 1328. During decision step 1328, object system 130 determines whether the cursor is positioned over a valid drop location. If the cursor is not positioned over a valid drop location, then control transitions to termination symbol 1330 and the drag and drop operation is terminated. If the cursor is positioned over a valid drop location, then control transitions to processing step 1332. During processing step 1332, the OnDrop method of CDiagramDropTarget is invoked. The CDiagramDropTarget OnDrop method calls the CDiagramCtrl OnDrop method at step 1342 which fires the OnDrop event, (see Figure 13C).
Referring to Figure 13C, during processing step 1340, object system 130 invokes the OnDrop method of the CDiagramCtrl class,. After the OnDrop method is invoked, control transitions to processing step 1342. During processing step 1342, object system 130 fires the OnDrop event. After the OnDrop event is activated, control transitions to processing step 1344. During processing step 1344, object system 130 creates a CNativeDragDrop object and transitions to processing step 1346. During processing step 1346 object system 130 invokes the OnDrop method of the CNativeDragDrop object. Control then transitions to processing step 1348. During processing step 1348 the OnDrop method reads the data previously serialized to a shared file 1310. Control then transitions to processing step 1350. During processing step 1350, the method CNativeDragDrop offsets the positions of the dropped objects. Control then transitions to processing step 1352. During processing step 1352, object system 130 creates the new object in the database. Control then transitions to decision step 1360 (see Figure 13D)
Referring to Figure 13D, during decision step 1360 the object system determines whether there is another dropped object. If there is another dropped object, then control transitions to processing step 1362. During processing step 1362, object system 130 creates the dropped object in the diagram portion. Control then transitions to processing step 1364 During processing step 1364, object system 130 selects the newly created diagram object and transitions to decision step 1360 to determine whether there is another dropped object. If there are no more dropped objects, then control transitions to processing step 1366. During processing step 1366, object system 130 updates all visible windows to reflect the changes made in the diagram. Control then transitions to termination symbol 1368 and the drag and drop operation is completed.
Referring now to Figures 14A - 14D, the operation of the cut, copy and paste of one or more objects from the diagram is shown. More specifically, during a cut operation, a user selects the cut command as shown at step 1402. After the cut command is selected, control transitions to decision step 1404. During decision step 1404, object system 130 determines whether all selected types are supported by the cut operation. If all of the selected types are not supported by the cut operation then control transitions to processing step 1406. During processing step 1406, object system 130 warns the user and asks whether the user wishes to continue. Control then transitions to decision step 1408. During decision step 1408, object system 130 determines whether the user wishes to continue. If the user chooses not to continue, then control transitions to termination step 1409 and the cut operation is abandoned. If the user chooses to continue, or if all of the selected object types were supported by the cut operation as determined by decision step 1404 then control transitions to processing step 1410 (see Figure 14B).
Referring to Figure 14B, during processing step 1410 object system 130 creates CNativeDragDrop and COleDataSource objects and invokes the OnBeginDrag method of the CNativeDragDrop object. Control then transitions to processing step 1412 During processing step 1412, the OnBeginDrag method serializes the data of the selected objects to a shared file 1414. Control then transitions to processing step 1416. During processing step 1416, the OnBeginDrag method caches the data to the COleDataSource. Control then transitions to processing step 1418. During processing step 1418, the CopyObject method of CDiagramCtrl object is invoked. Control then transitions to processing step 1420. During processing step 1420, the method CopyObject copies the objects in various formats to the clipboard. On completion, object system 130 transitions to the calling function and the copy is complete. Control studio object system 130 then transitions to processing step 1333 which deletes all selected objects and transitions to completion step 1435 whereupon the cut is complete.
Referring to Figure 14C, during a copy operation, a user selects the copy command as shown at step 1432. After the copy command is selected, control transitions to processing step 1410 which is described above (see Figure 14B).
Referring to Figure 14D, during a paste operation, a user selects the paste command as shown at step 1440. After the paste command is selected, control transitions to processing step 1442. During processing step 1442 object system 130 creates CNativeDragDrop and COleDataObject objects. Control then transitions to processing step 1446 (see Figure 13C).
Referring to Figure 15, the operation of control studio object system 130 is shown. More specifically, when a user wishes to install a process control diagram to a node, the user selects the Install to Node item from the File menu. Based upon user input, object system 130 then determines whether to install the entire module or just the changes since the last install operation was performed. When the user selects install entire module and the module has not yet been assigned to a node, object system 130 informs the user that the module has not been assigned to a node and asks whether the user wishes to install the module to a node. Object system 130 the presents the user with a list of nodes from which the user may select the appropriate node for configuring. After the user selects the node for configuring, object system 130 presents the user with a window confirming whether the user wishes to update the module. Object system 130 then requests the user to name the module. After the user selects or generates a name, object system 130 asks the user whether the user is sure that the user wishes to perform the install procedure. By answering yes, the control studio object system 130 automatically performs the install operation by downloading the information stored within the database to the selected module.
Other Embodiments
Other embodiments are within the following claims.
More specifically, while particular embodiments of the present invention have been shown and described, it will be obvious to those skilled in the art that changes and modifications may be made without departing from this invention in its broader aspects and, therefore, the appended claims are to encompass within their scope all such changes and modifications as fall within the true spirit and scope of this invention, including but not limited to implementations in other programming languages. Additionally, while the preferred embodiment is disclosed as a software implementation, it will be appreciated that hardware implementations such as application specific integrated circuit implementations are also within the scope of the following claims.

Claims

WE CLAIM:
1. A method for configuring a process control environment, the process control environment including a computer system having a processor coupled to a display device, the method comprising: presenting, on the display device, a stencil view including a stencil object, the stencil object representing a process control module; presenting, on the display device, a diagram view, the diagram view representing the process control environment configuration; dragging the stencil object from the stencil view to the diagram view; dropping the stencil object on the diagram view in a position indicative of a location of the process control module in the process control environment; and configuring the process control environment in accordance with the diagram view.
PCT/US1998/001570 1997-02-14 1998-02-06 System for configuring a process control environment with graphical elements WO1998036353A1 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP53576298A JP2001512598A (en) 1997-02-14 1998-02-06 A system for configuring a process control environment using graphic elements.
AU60454/98A AU6045498A (en) 1997-02-14 1998-02-06 System for configuring a process control environment with graphical elements
GB9918410A GB2336446B (en) 1997-02-14 1998-02-06 Configuring a process control network
DE1998182116 DE19882116T5 (en) 1997-02-14 1998-02-06 System for configuring a process control environment with graphic elements

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/799,966 1997-02-14
US08/799,966 US5980078A (en) 1997-02-14 1997-02-14 Process control system including automatic sensing and automatic configuration of devices

Publications (1)

Publication Number Publication Date
WO1998036353A1 true WO1998036353A1 (en) 1998-08-20

Family

ID=25177183

Family Applications (3)

Application Number Title Priority Date Filing Date
PCT/US1998/001573 WO1998036335A2 (en) 1997-02-14 1998-02-06 Process control system using a layered-hierarchy control strategy distributed into multiple control devices
PCT/US1998/001571 WO1998036336A1 (en) 1997-02-14 1998-02-06 System for assisting configuring a process control environment
PCT/US1998/001570 WO1998036353A1 (en) 1997-02-14 1998-02-06 System for configuring a process control environment with graphical elements

Family Applications Before (2)

Application Number Title Priority Date Filing Date
PCT/US1998/001573 WO1998036335A2 (en) 1997-02-14 1998-02-06 Process control system using a layered-hierarchy control strategy distributed into multiple control devices
PCT/US1998/001571 WO1998036336A1 (en) 1997-02-14 1998-02-06 System for assisting configuring a process control environment

Country Status (6)

Country Link
US (2) US5980078A (en)
JP (8) JP2001512593A (en)
AU (3) AU6045598A (en)
DE (3) DE19882116T5 (en)
GB (3) GB2336923B (en)
WO (3) WO1998036335A2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001029632A2 (en) * 1999-10-18 2001-04-26 Rosemount Inc. Improved interface for managing test definitions
EP1096349A1 (en) * 1999-11-01 2001-05-02 Abb Research Ltd. Configuration of a plant guidance sytem
JP2002152994A (en) * 2000-09-21 2002-05-24 Abb Power Automation Ag Method of forming control system for electrical switch assembly
EP1096348B1 (en) * 1999-11-01 2005-01-12 Abb Research Ltd. Integration of a field guidance device in a plant guidance system
CN114167825A (en) * 2021-11-22 2022-03-11 成都飞机工业(集团)有限责任公司 Control chart obtaining method and device of product, terminal equipment and storage medium

Families Citing this family (366)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6205497B1 (en) * 1994-09-07 2001-03-20 Hewlett-Packard Company System for configuring and input/output board in a computer
EP0825506B1 (en) 1996-08-20 2013-03-06 Invensys Systems, Inc. Methods and apparatus for remote process control
US7146230B2 (en) * 1996-08-23 2006-12-05 Fieldbus Foundation Integrated fieldbus data server architecture
US6424872B1 (en) 1996-08-23 2002-07-23 Fieldbus Foundation Block oriented control system
US20040194101A1 (en) * 1997-08-21 2004-09-30 Glanzer David A. Flexible function blocks
JP2950262B2 (en) * 1996-11-29 1999-09-20 日本電気株式会社 How to set up a multi-integrated agent system
CA2285351A1 (en) 1997-02-07 1998-08-27 Peter G. Brown System and method for simulation and modeling of biopharmaceutical batch process manufacturing facilities
US6662061B1 (en) 1997-02-07 2003-12-09 Peter G. Brown System and method for simulation and modeling of batch process manufacturing facilities using process time lines
TW360829B (en) * 1997-02-10 1999-06-11 Siemens Ag Auditory active communication-subscriber, communication-method and communication system with auditory active communication-subscriber
US5980078A (en) * 1997-02-14 1999-11-09 Fisher-Rosemount Systems, Inc. Process control system including automatic sensing and automatic configuration of devices
US7043414B2 (en) * 1997-06-20 2006-05-09 Brown Peter G System and method for simulating, modeling and scheduling of solution preparation in batch process manufacturing facilities
US6983229B2 (en) * 1997-06-20 2006-01-03 Brown Peter G Method for scheduling solution preparation in biopharmaceutical batch process manufacturing
US6311093B1 (en) 1997-06-20 2001-10-30 Peter G. Brown System and method for simulation, modeling and scheduling of equipment maintenance and calibration in biopharmaceutical batch process manufacturing facilities
US6999824B2 (en) 1997-08-21 2006-02-14 Fieldbus Foundation System and method for implementing safety instrumented systems in a fieldbus architecture
JP2002508643A (en) * 1997-12-15 2002-03-19 イナリ、インコーポレイテッド Power line exchange protocol method and equipment
US6175770B1 (en) * 1997-12-31 2001-01-16 Dana Corporation Electronic controller having automatic self-configuration capabilities
GB2334596B (en) * 1998-02-23 2002-02-20 Denno Co Ltd Control system
SE520101C2 (en) * 1998-05-13 2003-05-27 Axis Ab Integrated circuit and method to induce an integrated circuit to execute instructions
US6542928B1 (en) * 1998-06-02 2003-04-01 Micron Technology, Inc. Automatic configuration of testers and hosts on a computer network
US6219700B1 (en) * 1998-07-28 2001-04-17 Sun Microsystems, Inc. Method and apparatus for managing services in a computer network from a central console
JP3293779B2 (en) * 1998-08-25 2002-06-17 キヤノン株式会社 Signal processing device and control method thereof
US6430610B1 (en) * 1998-09-02 2002-08-06 Steeleye Technology, Inc. TCP/IP address protection mechanism in a clustered server environment
US6738388B1 (en) * 1998-09-10 2004-05-18 Fisher-Rosemount Systems, Inc. Shadow function block interface for use in a process control network
US6198480B1 (en) * 1998-10-07 2001-03-06 Wonderware Corporation Object-oriented tag browser
US7039688B2 (en) * 1998-11-12 2006-05-02 Ricoh Co., Ltd. Method and apparatus for automatic network configuration
EP1022697B1 (en) * 1999-01-22 2004-05-19 Fuji Electric Co., Ltd. Control apparatus for vending machine
EP1031898A3 (en) * 1999-02-26 2007-11-07 Matsushita Electric Industrial Co., Ltd. Communication system with initialization apparatus and program storage medium
US6438433B1 (en) * 1999-04-16 2002-08-20 Ncr Corporation Financial document processing system and method of operating a financial document processing system
DE29908319U1 (en) * 1999-05-10 2000-08-31 Siemens Ag Network with several participants as well as participants for such a network
US6754885B1 (en) 1999-05-17 2004-06-22 Invensys Systems, Inc. Methods and apparatus for controlling object appearance in a process control configuration system
US7089530B1 (en) 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
WO2000070417A1 (en) 1999-05-17 2000-11-23 The Foxboro Company Process control configuration system with parameterized objects
WO2000073885A1 (en) * 1999-06-01 2000-12-07 The Foxboro Company Systems and methods for linking parameters for the configuration of control systems
US6615088B1 (en) * 1999-06-09 2003-09-02 Amx Corporation System and method of device interface configuration for a control system
US6788980B1 (en) 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US6515683B1 (en) * 1999-06-22 2003-02-04 Siemens Energy And Automation Autoconfiguring graphic interface for controllers having dynamic database structures
US6728590B1 (en) 1999-07-14 2004-04-27 Nec Electronics, Inc. Identifying wafer fabrication system impacts resulting from specified actions
US6766212B1 (en) * 1999-07-14 2004-07-20 Nec Electronics, Inc. Identifying relationships among constituent parts of a wafer fabrication system
AU6615600A (en) 1999-07-29 2001-02-19 Foxboro Company, The Methods and apparatus for object-based process control
EP1206868B1 (en) * 1999-08-23 2005-03-16 PILZ GmbH & CO. Method of configuring a safe station and a safe control system using the same
US6618745B2 (en) * 1999-09-10 2003-09-09 Fisher Rosemount Systems, Inc. Linking device in a process control system that allows the formation of a control loop having function blocks in a controller and in field devices
US6449715B1 (en) * 1999-10-04 2002-09-10 Fisher-Rosemount Systems, Inc. Process control configuration system for use with a profibus device network
GB2394630B (en) * 1999-10-04 2004-06-09 Fisher Rosemount Systems Inc Process control configuration system for use with a Profibus device network
US6446202B1 (en) * 1999-10-04 2002-09-03 Fisher-Rosemount Systems, Inc. Process control configuration system for use with an AS-Interface device network
US6711629B1 (en) * 1999-10-18 2004-03-23 Fisher-Rosemount Systems, Inc. Transparent support of remote I/O in a process control system
US6704737B1 (en) * 1999-10-18 2004-03-09 Fisher-Rosemount Systems, Inc. Accessing and updating a configuration database from distributed physical locations within a process control system
US6473660B1 (en) 1999-12-03 2002-10-29 The Foxboro Company Process control system and method with automatic fault avoidance
US6445678B1 (en) * 1999-12-07 2002-09-03 Intel Corporation Method and apparatus for implementing leaf node proxy in a network
US6772017B1 (en) * 2000-01-20 2004-08-03 Fisher-Rosemount Systems, Inc. Tool for configuring and managing a process control network including the use of spatial information
US7474929B2 (en) 2000-01-20 2009-01-06 Fisher-Rosemount Systems, Inc. Enhanced tool for managing a process control network
US6779179B1 (en) 2000-03-20 2004-08-17 Exent Technologies, Inc. Registry emulation
WO2001067379A2 (en) * 2000-03-09 2001-09-13 Exent Technologies, Inc. Registry emulation
US20010049562A1 (en) * 2000-03-10 2001-12-06 Takuo Takano Control system and control method
WO2001080410A1 (en) * 2000-04-13 2001-10-25 Infineon Technologies Ag Voltage transformer
US6701357B1 (en) * 2000-04-19 2004-03-02 Toshiba America Information Systems, Inc. Server appliance
JP2001319267A (en) * 2000-05-09 2001-11-16 Sanden Corp Control system for automatic vending machine
US7844365B2 (en) * 2000-05-12 2010-11-30 Rosemount Inc. Field-mounted process device
US6574515B1 (en) * 2000-05-12 2003-06-03 Rosemount Inc. Two-wire field-mounted process device
US7228186B2 (en) 2000-05-12 2007-06-05 Rosemount Inc. Field-mounted process device with programmable digital/analog interface
US6611863B1 (en) * 2000-06-05 2003-08-26 Intel Corporation Automatic device assignment through programmable device discovery for policy based network management
US20050240286A1 (en) * 2000-06-21 2005-10-27 Glanzer David A Block-oriented control system on high speed ethernet
US6947389B1 (en) * 2000-06-30 2005-09-20 Fisher-Rosemount Systems, Inc. Two-mode foundation fieldbus device configurator
GB2395803B (en) * 2000-06-30 2004-10-27 Fisher Rosemount Systems Inc Two-mode foundation fieldbus device configurator
DE60032645T2 (en) * 2000-07-05 2007-05-16 Telefonaktiebolaget Lm Ericsson (Publ) DEVICE FOR SAVING OPERATING EQUIPMENT AND COUPLING A CONNECTION IN A TELECOMMUNICATIONS SYSTEM
US6473706B1 (en) 2000-07-06 2002-10-29 International Business Machines Corporation Self-configuring and self-calibrating automated system
US6982953B1 (en) * 2000-07-11 2006-01-03 Scorpion Controls, Inc. Automatic determination of correct IP address for network-connected devices
DE10040438A1 (en) 2000-08-18 2002-03-07 Siemens Ag Address assignment procedure for at least one new bus device connected to a bus system
US6944681B1 (en) * 2000-09-08 2005-09-13 Fisher-Rosemount Systems, Inc. Probing algorithm for foundation fieldbus protocol
US20020184348A1 (en) * 2000-09-20 2002-12-05 Lockheed Martin Corporation Object oriented framework architecture for sensing and/or control environments
EP1319203A2 (en) * 2000-09-20 2003-06-18 Lockheed Martin Corporation Object oriented framework architecture for sensing and/or control environments
US6434682B1 (en) 2000-09-28 2002-08-13 International Business Machines Corporation Data management system with shortcut migration via efficient automatic reconnection to previously migrated copy
US6604160B1 (en) 2000-09-28 2003-08-05 International Business Machines Corporation Computing system arbitrating and selectively providing resource-seeking tasks with takeaway of non-shareable resources
US6446160B1 (en) 2000-09-28 2002-09-03 International Business Machines Corporation Multi-drive data storage system with analysis and selected demounting of idle data storage media
WO2002041917A1 (en) * 2000-11-22 2002-05-30 Mitsubishi Pharma Corporation Ophthalmological preparations
EP1211582B1 (en) * 2000-11-30 2003-05-21 Siemens Building Technologies AG Arrangement for the surveillance, control and regulation of a technical installation of a building automation system
US7054946B2 (en) * 2000-12-06 2006-05-30 Intelliden Dynamic configuration of network devices to enable data transfers
US8219662B2 (en) 2000-12-06 2012-07-10 International Business Machines Corporation Redirecting data generated by network devices
US20020069271A1 (en) * 2000-12-06 2002-06-06 Glen Tindal Event manager for network operating system
US6978301B2 (en) 2000-12-06 2005-12-20 Intelliden System and method for configuring a network device
US7249170B2 (en) 2000-12-06 2007-07-24 Intelliden System and method for configuration, management and monitoring of network resources
WO2002049273A2 (en) * 2000-12-14 2002-06-20 Hirschmann Electronics Gmbh & Co. Kg Automatic configuration of a network
US6917857B2 (en) * 2000-12-15 2005-07-12 American Standard International Inc. Magnetically overridden flow control device
US6674533B2 (en) * 2000-12-21 2004-01-06 Joseph K. Price Anodizing system with a coating thickness monitor and an anodized product
US7365860B2 (en) * 2000-12-21 2008-04-29 Sensory Analytics System capable of determining applied and anodized coating thickness of a coated-anodized product
US7274463B2 (en) * 2003-12-30 2007-09-25 Sensory Analytics Anodizing system with a coating thickness monitor and an anodized product
IT1319716B1 (en) * 2000-12-28 2003-11-03 Abb Ricerca Spa COMPUTERIZED SYSTEM TO PERFORM REMOTE EDIAGNOSTIC CONFIGURATION OPERATIONS ON A FIELD DEVICE
DE10101746A1 (en) * 2001-01-16 2002-08-14 Siemens Ag Method for operating an automation system
US7185083B2 (en) * 2001-01-17 2007-02-27 Fisher-Rosemount Systems, Inc. Method and apparatus for identifying an I/O network in a process control system
FR2820222B1 (en) * 2001-01-26 2003-03-21 Schneider Automation METHOD FOR PROGRAMMING AN AUTOMATION APPLICATION
EP1233318A1 (en) * 2001-02-16 2002-08-21 Abb Research Ltd. Software coumpounds for a distributed control system
DE10108962A1 (en) 2001-02-20 2002-09-12 Pilz Gmbh & Co Method and device for programming a safety controller
US7150037B2 (en) * 2001-03-21 2006-12-12 Intelliden, Inc. Network configuration manager
JP4717240B2 (en) * 2001-03-30 2011-07-06 キヤノン株式会社 Information processing apparatus, information processing apparatus control method, and storage medium
US6760630B2 (en) * 2001-04-03 2004-07-06 Siemens Aktiengesellschaft Method and implementation of process control
US6687733B2 (en) * 2001-06-01 2004-02-03 Intergenix Method and system for automatically configuring a client-server network
WO2003001365A1 (en) 2001-06-22 2003-01-03 Wonderware Corporation A process control script development and execution facility supporting multiple user-side programming languages
US6813587B2 (en) 2001-06-22 2004-11-02 Invensys Systems, Inc. Remotely monitoring/diagnosing distributed components of a supervisory process control and manufacturing information application from a central location
WO2003001343A2 (en) 2001-06-22 2003-01-03 Wonderware Corporation Supervisory process control and manufacturing information system application having an extensible component model
US7650607B2 (en) * 2001-06-22 2010-01-19 Invensys Systems, Inc. Supervisory process control and manufacturing information system application having a layered architecture
US8001594B2 (en) * 2001-07-30 2011-08-16 Ipass, Inc. Monitoring computer network security enforcement
US6819960B1 (en) 2001-08-13 2004-11-16 Rockwell Software Inc. Industrial controller automation interface
DE10140763A1 (en) * 2001-08-20 2003-03-06 Siemens Ag Method and arrangement for the configuration of assemblies in a data processing system
US7200548B2 (en) * 2001-08-29 2007-04-03 Intelliden System and method for modeling a network device's configuration
US8296400B2 (en) 2001-08-29 2012-10-23 International Business Machines Corporation System and method for generating a configuration schema
WO2003023938A1 (en) * 2001-09-10 2003-03-20 Densei Lambda K.K. System for forming power system wiring diagram and power supply apparatus and program for use therein
CA2357444A1 (en) * 2001-09-13 2003-03-13 Armadillo Networks Inc. System and methods for automatic negotiation in distributed computing
FR2830152B1 (en) * 2001-09-27 2004-08-20 Airbus France DETERMINIST FIELD BUS AND METHOD FOR MANAGING SUCH A BUS
DE10149147A1 (en) * 2001-10-04 2003-04-17 Heidenhain Gmbh Dr Johannes Method and device for creating or changing NC programs
US20030079053A1 (en) * 2001-10-23 2003-04-24 Kevin Burns System and method for evaluating effectiveness of network configuration management tools
US6567272B1 (en) * 2001-11-09 2003-05-20 Dell Products L.P. System and method for utilizing system configurations in a modular computer system
KR100423969B1 (en) * 2001-11-16 2004-03-22 삼성전자주식회사 Field bus interface board and control method thereof
US7139839B2 (en) * 2001-11-26 2006-11-21 Schneider Automation Inc. Method and apparatus for assigning a network node address
US7065562B2 (en) * 2001-11-26 2006-06-20 Intelliden, Inc. System and method for generating a representation of a configuration schema
EP1489476B1 (en) * 2001-12-06 2019-12-04 Fisher-Rosemount Systems, Inc. Intrinsically safe field maintenance tool
US20030229472A1 (en) * 2001-12-06 2003-12-11 Kantzes Christopher P. Field maintenance tool with improved device description communication and storage
US20030204373A1 (en) * 2001-12-06 2003-10-30 Fisher-Rosemount Systems, Inc. Wireless communication method between handheld field maintenance tools
US7426452B2 (en) 2001-12-06 2008-09-16 Fisher-Rosemount Systems. Inc. Dual protocol handheld field maintenance tool with radio-frequency communication
BRPI0214729B1 (en) * 2001-12-06 2015-09-22 Fisher Rosemount Systems Inc intrinsically safe field maintenance tool
JP4234342B2 (en) * 2001-12-26 2009-03-04 パナソニック株式会社 Component mounting operation support system and method for component mounting apparatus
US7080093B2 (en) * 2002-01-14 2006-07-18 Sun Microsystems, Inc. System and method for database design
US6973508B2 (en) * 2002-02-12 2005-12-06 Fisher-Rosemount Systems, Inc. Highly versatile process control system controller
JP4150524B2 (en) 2002-02-13 2008-09-17 株式会社リコー Production management method and production management program
DE10207831A1 (en) * 2002-02-25 2003-09-04 Siemens Ag Procedure for configuring and / or configuring a project
US7519729B2 (en) * 2002-02-27 2009-04-14 Ricoh Co. Ltd. Method and apparatus for monitoring remote devices through a local monitoring station and communicating with a central station supporting multiple manufacturers
US7039744B2 (en) * 2002-03-12 2006-05-02 Fisher-Rosemount Systems, Inc. Movable lead access member for handheld field maintenance tool
US7027952B2 (en) * 2002-03-12 2006-04-11 Fisher-Rosemount Systems, Inc. Data transmission method for a multi-protocol handheld field maintenance tool
US20030174068A1 (en) * 2002-03-15 2003-09-18 Dobos Jeffrey A. Apparatus for calibrating a digital field sensor
DE10212131A1 (en) * 2002-03-19 2003-10-02 Siemens Ag Process for monitoring an automation system
KR20030075728A (en) * 2002-03-20 2003-09-26 엘지전자 주식회사 Method for confirming a home appliance connect state of home network system
US7565456B2 (en) * 2002-04-12 2009-07-21 Siemens Aktiengesellschaft Method for reconfiguring an automation device
US20030195952A1 (en) * 2002-04-15 2003-10-16 Henry Steven G. Digital transmitter device configuration
US20030217054A1 (en) 2002-04-15 2003-11-20 Bachman George E. Methods and apparatus for process, factory-floor, environmental, computer aided manufacturing-based or other control system with real-time data distribution
US6907305B2 (en) * 2002-04-30 2005-06-14 Advanced Micro Devices, Inc. Agent reactive scheduling in an automated manufacturing environment
US6959329B2 (en) * 2002-05-15 2005-10-25 Intelliden System and method for transforming configuration commands
US7890348B2 (en) * 2002-05-20 2011-02-15 Ge Medical Systems Global Technology Company, Llc Text-based generic script processing for dynamic configuration of distributed systems
JP2003339729A (en) 2002-05-22 2003-12-02 Olympus Optical Co Ltd Ultrasonic operation apparatus
US20030222903A1 (en) * 2002-05-31 2003-12-04 Wolfgang Herzog Distributing customized computer settings to affected systems
US20040003067A1 (en) * 2002-06-27 2004-01-01 Daniel Ferrin System and method for enabling a user interface with GUI meta data
AU2003251542A1 (en) * 2002-07-03 2004-01-23 Tokyo Electron Limited Method for dynamic sensor configuration and runtime execution
US7464145B2 (en) 2002-07-11 2008-12-09 Intelliden, Inc. Repository-independent system and method for asset management and reconciliation
US7461158B2 (en) 2002-08-07 2008-12-02 Intelliden, Inc. System and method for controlling access rights to network resources
US7366893B2 (en) * 2002-08-07 2008-04-29 Intelliden, Inc. Method and apparatus for protecting a network from attack
US7558847B2 (en) * 2002-09-13 2009-07-07 Intelliden, Inc. System and method for mapping between and controlling different device abstractions
DE10245658A1 (en) 2002-09-30 2004-04-15 Koenig & Bauer Ag Method and device for the automatic material supply of a processing machine as well as a control system and printing plant with a control system
DE10246895B3 (en) * 2002-10-08 2004-06-09 Siemens Ag Procedure for changing a parameter for the operation of a network and participants for performing the procedure
US9983559B2 (en) 2002-10-22 2018-05-29 Fisher-Rosemount Systems, Inc. Updating and utilizing dynamic process simulation in an operating process environment
US7146231B2 (en) 2002-10-22 2006-12-05 Fisher-Rosemount Systems, Inc.. Smart process modules and objects in process plants
DE10348563B4 (en) * 2002-10-22 2014-01-09 Fisher-Rosemount Systems, Inc. Integration of graphic display elements, process modules and control modules in process plants
US10261506B2 (en) 2002-12-05 2019-04-16 Fisher-Rosemount Systems, Inc. Method of adding software to a field maintenance tool
US7346551B2 (en) 2002-12-23 2008-03-18 Cybersource Corporation Method and apparatus for custom strategy specification in a hosted electronic transaction service system
JP4739183B2 (en) 2003-03-06 2011-08-03 フィッシャー−ローズマウント システムズ, インコーポレイテッド Battery
US7970006B1 (en) * 2003-03-10 2011-06-28 Ciena Corporation Dynamic configuration for a modular interconnect
US7366651B1 (en) * 2003-03-14 2008-04-29 Xilinx, Inc. Co-simulation interface
JP3963174B2 (en) * 2003-03-14 2007-08-22 オムロン株式会社 Display / editing apparatus, display method, and program
US7857761B2 (en) 2003-04-16 2010-12-28 Drexel University Acoustic blood analyzer for assessing blood properties
US7512521B2 (en) 2003-04-30 2009-03-31 Fisher-Rosemount Systems, Inc. Intrinsically safe field maintenance tool with power islands
US7054695B2 (en) 2003-05-15 2006-05-30 Fisher-Rosemount Systems, Inc. Field maintenance tool with enhanced scripts
US7036386B2 (en) * 2003-05-16 2006-05-02 Fisher-Rosemount Systems, Inc. Multipurpose utility mounting assembly for handheld field maintenance tool
US7199784B2 (en) * 2003-05-16 2007-04-03 Fisher Rosemount Systems, Inc. One-handed operation of a handheld field maintenance tool
US8874402B2 (en) 2003-05-16 2014-10-28 Fisher-Rosemount Systems, Inc. Physical memory handling for handheld field maintenance tools
US7526802B2 (en) 2003-05-16 2009-04-28 Fisher-Rosemount Systems, Inc. Memory authentication for intrinsically safe field maintenance tools
US6925419B2 (en) 2003-05-16 2005-08-02 Fisher-Rosemount Systems, Inc. Intrinsically safe field maintenance tool with removable battery pack
US7197580B2 (en) * 2003-05-29 2007-03-27 Microsoft Corporation Computer system and method for supporting network-enabled devices
US20060155392A1 (en) * 2003-06-02 2006-07-13 Abb Research Ltd. Method and a tool for allocating computational resources in a distributed control system
US7460865B2 (en) 2003-06-18 2008-12-02 Fisher-Rosemount Systems, Inc. Self-configuring communication networks for use with process control systems
JP2005025652A (en) * 2003-07-01 2005-01-27 System V:Kk Information conversion device for device management
DE10343670A1 (en) * 2003-09-18 2005-05-25 Endress + Hauser Conducta Gesellschaft für Mess- und Regeltechnik mbH + Co. KG Device driver for field devices of process automation technology
US7865907B2 (en) * 2003-09-25 2011-01-04 Fisher-Rosemount Systems, Inc. Method and apparatus for providing automatic software updates
US7016741B2 (en) * 2003-10-14 2006-03-21 Rosemount Inc. Process control loop signal converter
US20050092253A1 (en) * 2003-11-04 2005-05-05 Venkat Selvamanickam Tape-manufacturing system having extended operational capabilites
CN100445905C (en) * 2003-12-04 2008-12-24 霍尼韦尔国际公司 System and method for the safe automatic detection of a field device communicating with current modulated signal
EP1692577B1 (en) * 2003-12-04 2008-08-27 Honeywell International Inc. System and method for the safe automatic detection of a field device communicating with current modulated signal
US7257498B2 (en) * 2003-12-04 2007-08-14 Honeywell International Inc. System and method for the safe automatic detection of a field device communicating with current modulated signal
DE10357276B4 (en) * 2003-12-05 2012-02-23 Abb Research Ltd. System and method for the directed provision and installation of device-specific functionalities and / or information for the field devices of a distributed system
US7146034B2 (en) 2003-12-09 2006-12-05 Superpower, Inc. Tape manufacturing system
US7359317B1 (en) * 2004-02-20 2008-04-15 Excel Switching Corporation Redundancy arrangement for telecommunications switch
US7761923B2 (en) 2004-03-01 2010-07-20 Invensys Systems, Inc. Process control methods and apparatus for intrusion detection, protection and network hardening
US20050223984A1 (en) * 2004-04-08 2005-10-13 Hee-Gyoun Lee Chemical vapor deposition (CVD) apparatus usable in the manufacture of superconducting conductors
US20050223983A1 (en) * 2004-04-08 2005-10-13 Venkat Selvamanickam Chemical vapor deposition (CVD) apparatus usable in the manufacture of superconducting conductors
JP4381872B2 (en) * 2004-04-09 2009-12-09 矢崎総業株式会社 Wire crimping method
JP2005327263A (en) * 2004-04-13 2005-11-24 Omron Corp Control system setting device
US8463879B2 (en) * 2004-04-19 2013-06-11 Hewlett-Packard Development Company, L.P. Method and apparatus for automatic verification of a machine-readable map of networked devices
US20050267964A1 (en) * 2004-04-28 2005-12-01 Guenter Kech Method for providing apparatus specific information and corresponding system
DE102004021089A1 (en) * 2004-04-29 2005-11-24 Bosch Rexroth Ag Device for address assignment in a standardized fieldbus system
US7729789B2 (en) 2004-05-04 2010-06-01 Fisher-Rosemount Systems, Inc. Process plant monitoring based on multivariate statistical analysis and on-line process simulation
JP2007536634A (en) 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド Service-oriented architecture for process control systems
US20050268012A1 (en) * 2004-05-05 2005-12-01 Ralf Schaetzle Method for automatic configuration of a process control system and corresponding process control system
GB0415144D0 (en) * 2004-07-06 2004-08-11 Attar Software Ltd Method and system for detecting events in process operating data and identifying associations between related events
US7735063B2 (en) * 2004-07-07 2010-06-08 Sap Aktiengesellschaft Providing customizable configuration data in computer systems
US7774369B2 (en) * 2004-07-07 2010-08-10 Sap Aktiengesellschaft Configuring computer systems with business configuration information
US7904488B2 (en) 2004-07-21 2011-03-08 Rockwell Automation Technologies, Inc. Time stamp methods for unified plant model
DE102004037064A1 (en) * 2004-07-30 2006-02-16 Abb Patent Gmbh Method and device for functional testing of a field device before its initial commissioning
DE102004040282A1 (en) 2004-08-19 2006-03-09 Siemens Ag Parameter identification for field devices in automation technology
US7387811B2 (en) * 2004-09-21 2008-06-17 Superpower, Inc. Method for manufacturing high temperature superconducting conductors using chemical vapor deposition (CVD)
US7937549B2 (en) * 2004-09-21 2011-05-03 International Business Machines Corporation Storage system and subsystem to automatically detect hardware configuration changes
US8756521B1 (en) 2004-09-30 2014-06-17 Rockwell Automation Technologies, Inc. Systems and methods for automatic visualization configuration
WO2006099540A2 (en) 2005-03-15 2006-09-21 Trapeze Networks, Inc. System and method for distributing keys in a wireless network
DE102005019970B4 (en) * 2005-04-27 2007-04-26 Phoenix Contact Gmbh & Co. Kg Address assignment for secure bus users
US7809683B2 (en) 2005-05-13 2010-10-05 Rockwell Automation Technologies, Inc. Library that includes modifiable industrial automation objects
US8799800B2 (en) 2005-05-13 2014-08-05 Rockwell Automation Technologies, Inc. Automatic user interface generation
US7676281B2 (en) 2005-05-13 2010-03-09 Rockwell Automation Technologies, Inc. Distributed database in an industrial automation environment
US7650405B2 (en) 2005-05-13 2010-01-19 Rockwell Automation Technologies, Inc. Tracking and tracing across process boundaries in an industrial automation environment
US7672737B2 (en) 2005-05-13 2010-03-02 Rockwell Automation Technologies, Inc. Hierarchically structured data model for utilization in industrial automation environments
US8160574B1 (en) 2005-06-17 2012-04-17 Fisher-Rosemount Systems, Inc. Wireless architecture utilizing geo-referencing
US8332560B2 (en) * 2005-07-11 2012-12-11 Dell Products L.P. System and method for identifying inoperable connection points in a storage enclosure
US7835295B2 (en) * 2005-07-19 2010-11-16 Rosemount Inc. Interface module with power over Ethernet function
WO2007012074A1 (en) * 2005-07-20 2007-01-25 Rosemount Inc. Field device with power over ethernet
DE102005034944B3 (en) * 2005-07-22 2006-11-09 Siemens Ag Field bus system e.g. LIN bus system, configuration method for use in e.g. motor vehicle, involves checking whether bus subscriber still has standard address, and identifying subscriber and assigning clear subscriber address to subscriber
US7421526B2 (en) * 2005-08-24 2008-09-02 Honeywell International Inc. Reconfigurable virtual backplane architecture
AU2006287639C1 (en) * 2005-09-07 2012-06-28 Open Invention Network, Llc Method and computer program for device configuration
US7609713B2 (en) * 2005-09-29 2009-10-27 Fisher-Rosemount Systems, Inc. Associating a signal measurement with a communication device on a network
US7881812B2 (en) 2005-09-29 2011-02-01 Rockwell Automation Technologies, Inc. Editing and configuring device
CN101297247A (en) * 2005-09-29 2008-10-29 西门子公司 Method for implementing protected function of on-site electrical equipment and on-site electrical equipment
US7548789B2 (en) 2005-09-29 2009-06-16 Rockwell Automation Technologies, Inc. Editing lifecycle and deployment of objects in an industrial automation environment
US7526794B2 (en) 2005-09-30 2009-04-28 Rockwell Automation Technologies, Inc. Data perspectives in controller system and production management systems
US7734590B2 (en) 2005-09-30 2010-06-08 Rockwell Automation Technologies, Inc. Incremental association of metadata to production data
US8275680B2 (en) 2005-09-30 2012-09-25 Rockwell Automation Technologies, Inc. Enabling transactional mechanisms in an automated controller system
US8484250B2 (en) 2005-09-30 2013-07-09 Rockwell Automation Technologies, Inc. Data federation with industrial control systems
US7801628B2 (en) 2005-09-30 2010-09-21 Rockwell Automation Technologies, Inc. Industrial operator interfaces interacting with higher-level business workflow
US7660638B2 (en) 2005-09-30 2010-02-09 Rockwell Automation Technologies, Inc. Business process execution engine
US8527888B2 (en) * 2006-04-11 2013-09-03 Invensys Systems, Inc. Method and supporting configuration user interfaces for streamlining installing replacement field devices
US8638762B2 (en) 2005-10-13 2014-01-28 Trapeze Networks, Inc. System and method for network integrity
WO2007044986A2 (en) 2005-10-13 2007-04-19 Trapeze Networks, Inc. System and method for remote monitoring in a wireless network
US7724703B2 (en) 2005-10-13 2010-05-25 Belden, Inc. System and method for wireless network monitoring
US7573859B2 (en) 2005-10-13 2009-08-11 Trapeze Networks, Inc. System and method for remote monitoring in a wireless network
US8250587B2 (en) 2005-10-27 2012-08-21 Trapeze Networks, Inc. Non-persistent and persistent information setting method and system for inter-process communication
US20070106778A1 (en) * 2005-10-27 2007-05-10 Zeldin Paul E Information and status and statistics messaging method and system for inter-process communication
GB2446343B (en) 2005-12-05 2011-06-08 Fisher Rosemount Systems Inc Multi-objective predictive process optimization with concurrent process simulation
US7489977B2 (en) * 2005-12-20 2009-02-10 Fieldbus Foundation System and method for implementing time synchronization monitoring and detection in a safety instrumented system
US8676357B2 (en) 2005-12-20 2014-03-18 Fieldbus Foundation System and method for implementing an extended safety instrumented system
DE102007003196A1 (en) * 2006-01-23 2007-07-26 Abb Patent Gmbh communication system
ES2665428T3 (en) * 2006-03-07 2018-04-25 Sensory Analytics Mobile device capable of surface measurements of the thickness of a coating
US7860857B2 (en) 2006-03-30 2010-12-28 Invensys Systems, Inc. Digital data processing apparatus and methods for improving plant performance
US7558266B2 (en) 2006-05-03 2009-07-07 Trapeze Networks, Inc. System and method for restricting network access using forwarding databases
US7813817B2 (en) * 2006-05-19 2010-10-12 Westinghouse Electric Co Llc Computerized procedures system
US20070268515A1 (en) * 2006-05-19 2007-11-22 Yun Freund System and method for automatic configuration of remote network switch and connected access point devices
US8966018B2 (en) 2006-05-19 2015-02-24 Trapeze Networks, Inc. Automated network device configuration and network deployment
US8818322B2 (en) 2006-06-09 2014-08-26 Trapeze Networks, Inc. Untethered access point mesh system and method
US9191799B2 (en) 2006-06-09 2015-11-17 Juniper Networks, Inc. Sharing data between wireless switches system and method
US9258702B2 (en) 2006-06-09 2016-02-09 Trapeze Networks, Inc. AP-local dynamic switching
US20080005344A1 (en) * 2006-06-29 2008-01-03 Ford Daniel E Method and system for configuring a network device using a template
EP2042954B1 (en) * 2006-07-13 2019-05-08 Mitsubishi Electric Corporation Facility management system, programmable controller, and concentration controller
US7668608B2 (en) * 2006-09-01 2010-02-23 Fisher-Rosemount Systems, Inc. Graphical programming language object editing and reporting tool
US7953713B2 (en) * 2006-09-14 2011-05-31 International Business Machines Corporation System and method for representing and using tagged data in a management system
US8340110B2 (en) 2006-09-15 2012-12-25 Trapeze Networks, Inc. Quality of service provisioning for wireless networks
US7612661B1 (en) 2006-09-29 2009-11-03 Rockwell Automation Technologies, Inc. Dynamic messages
US7835805B2 (en) 2006-09-29 2010-11-16 Rockwell Automation Technologies, Inc. HMI views of modules for industrial control systems
US7873061B2 (en) 2006-12-28 2011-01-18 Trapeze Networks, Inc. System and method for aggregation and queuing in a wireless network
US7684875B2 (en) * 2007-02-02 2010-03-23 Fisher-Rosemount Systems, Inc. Methods and apparatus to configure process control system inputs and outputs
US7634322B2 (en) * 2007-03-23 2009-12-15 Honeywell International Inc. Configuration of wireless field devices for process control plants
DE102007032810B3 (en) * 2007-07-13 2008-11-27 Siemens Ag Method for allocation of physical position to slave module or for allocation of physical position to channel of slave module in decentralized, event-controlled bus system with serial data communication, involves selecting start-up mode
US8902904B2 (en) 2007-09-07 2014-12-02 Trapeze Networks, Inc. Network assignment based on priority
DE102007043795A1 (en) * 2007-09-13 2009-04-02 Siemens Ag Control system for a technical system and method for operating a process control system
KR20090034495A (en) * 2007-10-04 2009-04-08 삼성전자주식회사 Production management system and control method thereof
US8412922B2 (en) * 2007-10-24 2013-04-02 Sercomm Corporation On-site configuration of a hardware device module of a security system
US9154379B2 (en) * 2007-10-25 2015-10-06 Sercomm Corporation Remote configuration of a hardware device module of a security system
CN101150460A (en) * 2007-11-14 2008-03-26 华为技术有限公司 Method and system for automatic debugging and testing of network devices
US8238942B2 (en) 2007-11-21 2012-08-07 Trapeze Networks, Inc. Wireless station location detection
DE102008010864A1 (en) * 2008-02-25 2009-08-27 Endress + Hauser Process Solutions Ag Method for operating a field device
JP5092800B2 (en) * 2008-03-03 2012-12-05 横河電機株式会社 Field device management device
US8150357B2 (en) 2008-03-28 2012-04-03 Trapeze Networks, Inc. Smoothing filter for irregular update intervals
EP2110725B1 (en) * 2008-04-18 2012-10-31 Siemens Aktiengesellschaft System and method for allocating a device name
JP5030852B2 (en) * 2008-04-26 2012-09-19 三菱電機株式会社 Device management apparatus, device management method, and program
US8635313B2 (en) * 2008-06-19 2014-01-21 Microsoft Corporation Network device installation
RU2495476C2 (en) 2008-06-20 2013-10-10 Инвенсис Системз, Инк. Systems and methods for immersive interaction with actual and/or simulated facilities for process, environmental and industrial control
US8978105B2 (en) 2008-07-25 2015-03-10 Trapeze Networks, Inc. Affirming network relationships and resource access via related networks
US8238298B2 (en) 2008-08-29 2012-08-07 Trapeze Networks, Inc. Picking an optimal channel for an access point in a wireless network
US8825462B2 (en) * 2008-09-17 2014-09-02 Accenture Global Services Limited Method and system for simulating a plurality of devices
US8229575B2 (en) * 2008-09-19 2012-07-24 Rockwell Automation Technologies, Inc. Automatically adjustable industrial control configuration
US8255497B2 (en) * 2008-11-03 2012-08-28 Lincoln Global, Inc. Method of discovery and communication with industrial equipment
ATE513388T1 (en) * 2008-11-12 2011-07-15 Grieshaber Vega Kg GENERATE A DEVICE DESCRIPTION FOR A MEASURING DEVICE
CN102246600B (en) * 2008-12-09 2015-01-14 皇家飞利浦电子股份有限公司 A system and method for automatically integrating a device in a networked system
US20100175012A1 (en) * 2009-01-06 2010-07-08 Allstrom Peter E System and Method for Remote Monitoring and Control of Field Device
US8881039B2 (en) 2009-03-13 2014-11-04 Fisher-Rosemount Systems, Inc. Scaling composite shapes for a graphical human-machine interface
EP2249217B1 (en) * 2009-05-08 2013-04-24 Siemens Aktiengesellschaft Automation device and automation system
US8127060B2 (en) 2009-05-29 2012-02-28 Invensys Systems, Inc Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware
US8463964B2 (en) 2009-05-29 2013-06-11 Invensys Systems, Inc. Methods and apparatus for control configuration with enhanced change-tracking
US20110004589A1 (en) * 2009-07-06 2011-01-06 Rockwell Automation Technologies, Inc. Diagnostics in a distributed directory system
US8311778B2 (en) * 2009-09-22 2012-11-13 Rosemount Inc. Industrial process control transmitter with multiple sensors
US9134720B2 (en) 2010-02-12 2015-09-15 Rockwell Automation Technologies, Inc. Macro function block for encapsulating device-level embedded logic
CN102193536A (en) * 2010-02-12 2011-09-21 洛克威尔自动控制技术股份有限公司 Marco functional block for packaging device-level embedded logic
DE102010009775B4 (en) 2010-03-01 2012-06-21 Rittal Gmbh & Co. Kg Cabinet monitoring device
US8825183B2 (en) 2010-03-22 2014-09-02 Fisher-Rosemount Systems, Inc. Methods for a data driven interface based on relationships between process control tags
US8484401B2 (en) 2010-04-15 2013-07-09 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US9392072B2 (en) 2010-04-15 2016-07-12 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US8984533B2 (en) 2010-04-15 2015-03-17 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US8352641B2 (en) 2010-04-21 2013-01-08 General Electric Company Systems and methods for identifying fieldbus devices in a control system
US20110265072A1 (en) * 2010-04-27 2011-10-27 Jack Matthew Dynamic Installation of Files for Running Programs
GB201015756D0 (en) 2010-09-21 2010-10-27 Airbus Operations Gmbh Remote data concentrator
US8745278B2 (en) 2010-10-13 2014-06-03 Rosemount Inc. Field device with self description
JP5044007B2 (en) * 2010-12-02 2012-10-10 キヤノン株式会社 Information processing apparatus, control method for information processing apparatus, and program
JP5639909B2 (en) * 2011-01-27 2014-12-10 アズビル株式会社 Drawing editor and drawing method
DE102011004802A1 (en) 2011-02-25 2012-08-30 Interroll-Holding Ag Method for setting up a conveying device
KR20120109665A (en) * 2011-03-23 2012-10-08 삼성전자주식회사 Method, apparatus and system for information push service based on wirless lan access point
EP2681631A1 (en) * 2011-05-19 2014-01-08 Siemens Aktiengesellschaft Process visualisation in an automation system
US9772617B2 (en) * 2011-06-30 2017-09-26 General Electric Company Systems and methods for function block instantiation
US8543748B2 (en) * 2011-09-09 2013-09-24 General Electric Company Fieldbus device control system
US8983636B1 (en) * 2011-10-28 2015-03-17 Englobal Corporation Client configuration tool
US8856415B2 (en) * 2012-02-01 2014-10-07 National Instruments Corporation Bus arbitration for a real-time computer system
DE102012102187C5 (en) * 2012-03-15 2016-11-03 Phoenix Contact Gmbh & Co. Kg Control device for controlling safety-critical processes in an automated system and method for parameterizing the control device
US8745281B2 (en) * 2012-04-23 2014-06-03 General Electric Company Automatic foundation fieldbus device commissioning
CN103558809B (en) * 2012-05-09 2019-06-18 布里斯托尔D/B/A远程自动化解决方案公司 The method and apparatus of configuration process control equipment
US20140025186A1 (en) * 2012-07-19 2014-01-23 General Electric Company Systems and methods for device commissioning and decommissioning
US9052708B2 (en) 2012-09-05 2015-06-09 General Electric Company Systems and methods for improved device commissioning and decommissioning
JP6121706B2 (en) * 2012-12-13 2017-04-26 アズビル株式会社 Programming method and apparatus
CN103092107A (en) * 2012-12-26 2013-05-08 华东师范大学 Portable digital experimental monitor terminal system
CN103064751B (en) * 2012-12-27 2015-11-04 中航(苏州)雷达与电子技术有限公司 A kind of method eliminating the interference of avionic device RS232 serial ports
JP6263836B2 (en) * 2013-01-15 2018-01-24 オムロン株式会社 Control apparatus and control method
JP6167532B2 (en) * 2013-01-25 2017-07-26 オムロン株式会社 Control device and operation method of control device
KR102160250B1 (en) * 2013-02-06 2020-09-25 삼성전자주식회사 System and method for providing object for using service
US9558220B2 (en) 2013-03-04 2017-01-31 Fisher-Rosemount Systems, Inc. Big data in process control systems
US9804588B2 (en) 2014-03-14 2017-10-31 Fisher-Rosemount Systems, Inc. Determining associations and alignments of process elements and measurements in a process
US10678225B2 (en) 2013-03-04 2020-06-09 Fisher-Rosemount Systems, Inc. Data analytic services for distributed industrial performance monitoring
US9397836B2 (en) 2014-08-11 2016-07-19 Fisher-Rosemount Systems, Inc. Securing devices to process control systems
US10223327B2 (en) 2013-03-14 2019-03-05 Fisher-Rosemount Systems, Inc. Collecting and delivering data to a big data machine in a process control system
US10866952B2 (en) 2013-03-04 2020-12-15 Fisher-Rosemount Systems, Inc. Source-independent queries in distributed industrial system
US10282676B2 (en) 2014-10-06 2019-05-07 Fisher-Rosemount Systems, Inc. Automatic signal processing-based learning in a process plant
US10386827B2 (en) 2013-03-04 2019-08-20 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics platform
US9665088B2 (en) 2014-01-31 2017-05-30 Fisher-Rosemount Systems, Inc. Managing big data in process control systems
US10909137B2 (en) 2014-10-06 2021-02-02 Fisher-Rosemount Systems, Inc. Streaming data for analytics in process control systems
US10649449B2 (en) 2013-03-04 2020-05-12 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US9823626B2 (en) 2014-10-06 2017-11-21 Fisher-Rosemount Systems, Inc. Regional big data in process control systems
US10649424B2 (en) 2013-03-04 2020-05-12 Fisher-Rosemount Systems, Inc. Distributed industrial performance monitoring and analytics
US9860135B2 (en) 2013-03-14 2018-01-02 Invensys Systems, Inc. Bulk device preparation
US10152031B2 (en) 2013-03-15 2018-12-11 Fisher-Rosemount Systems, Inc. Generating checklists in a process control environment
US10296668B2 (en) 2013-03-15 2019-05-21 Fisher-Rosemount Systems, Inc. Data modeling studio
ES2574512T3 (en) 2013-03-15 2016-06-20 Kaeser Kompressoren Se Piping diagram and instrumentation input for a procedure for the control and / or supervision of a compressor installation
US9244453B2 (en) * 2013-06-05 2016-01-26 General Electric Company Dynamic wizard execution
US9563188B2 (en) * 2013-08-01 2017-02-07 General Electric Company Systems and methods for batch device commissioning and decommissioning
US9734470B2 (en) * 2013-11-14 2017-08-15 Honeywell International Inc. Apparatus and method for providing customized viewing and control of field devices through custom groups and actions in a process control system
JP6394013B2 (en) 2014-03-14 2018-09-26 オムロン株式会社 Work process management system, individual controller used therefor, and access restriction method
US20160098463A1 (en) 2014-10-05 2016-04-07 Splunk Inc. Event Segment Search Drill Down
US11231840B1 (en) * 2014-10-05 2022-01-25 Splunk Inc. Statistics chart row mode drill down
US10168691B2 (en) 2014-10-06 2019-01-01 Fisher-Rosemount Systems, Inc. Data pipeline for process control system analytics
CN104614997B (en) * 2014-12-12 2017-12-29 联想(北京)有限公司 Control method, control device and electronic equipment
WO2016129116A1 (en) * 2015-02-13 2016-08-18 富士機械製造株式会社 Management system and management method for component mounting line
CN105004922A (en) * 2015-07-08 2015-10-28 中国电子科技集团公司第四十一研究所 Application system of frequency spectrum analyzer
EP3320406B1 (en) * 2015-09-21 2019-08-14 Siemens Aktiengesellschaft Enabling a processing step for an object to be processed
US10250437B2 (en) * 2015-10-29 2019-04-02 Arista Networks, Inc. Method and system for configuring network devices
CN105511434B (en) * 2015-12-16 2017-12-29 浙江中烟工业有限责任公司 A kind of production platform monitoring system with warning function
US10503483B2 (en) 2016-02-12 2019-12-10 Fisher-Rosemount Systems, Inc. Rule builder in a process control network
US10401836B2 (en) * 2016-03-21 2019-09-03 Fisher-Rosemount Systems, Inc. Methods and apparatus to setup single-use equipment/processes
US10387392B2 (en) * 2016-05-17 2019-08-20 Rockwell Automation Technologies, Inc. Method to automate historian configuration using controller based tag meta attribute
US10878140B2 (en) 2016-07-27 2020-12-29 Emerson Process Management Power & Water Solutions, Inc. Plant builder system with integrated simulation and control system configuration
JP6623996B2 (en) * 2016-09-26 2019-12-25 横河電機株式会社 Processing device, network device, control method for processing device, control method for network device, control program for processing device, control program for network device, and recording medium
CN106528082A (en) * 2016-09-27 2017-03-22 北京广利核系统工程有限公司 FPGA (Field Programmable Gate Array)-based graphical configuration method and device
GB2601081B (en) 2016-10-24 2022-09-28 Fisher Rosemount Systems Inc Systems and methods for merging modular control systems into a process plant
US11385613B2 (en) 2017-05-03 2022-07-12 Siemens Aktiengesellschaft Process image within controllers enabling visibility and accessibility of real world objects
WO2019021339A1 (en) 2017-07-24 2019-01-31 三菱電機株式会社 Display and display method
DE102018122445A1 (en) * 2017-09-13 2019-03-14 Fisher-Rosemount Systems, Inc. ASSISTANT APPLICATION FOR A MODULAR CONTROL SYSTEM
GB2568379B (en) * 2017-10-02 2023-04-19 Fisher Rosemount Systems Inc Technology for assessing and presenting field device commissioning information associated with a process plant
RU193222U1 (en) * 2017-11-24 2019-10-17 Акционерное Общество "Приборный Завод "Тензор" (Ао "Тензор") MODULE OF CONTROL AND MANAGEMENT OF TECHNOLOGICAL PROCESSES
RU180923U1 (en) * 2017-11-24 2018-06-29 Акционерное Общество "Приборный Завод "Тензор" (Ао "Тензор") DISCRETE SIGNAL INPUT MODULE
RU180915U1 (en) * 2017-12-14 2018-06-29 Акционерное Общество "Приборный Завод "Тензор" (Ао "Тензор") CPU MODULE
US11704257B1 (en) 2022-04-15 2023-07-18 Graco Minnesota Inc. System provisioning using virtual peripherals
EP3767922B1 (en) * 2019-07-17 2023-11-08 ABB Schweiz AG Method of channel mapping in an industrial process control system
WO2021048921A1 (en) * 2019-09-10 2021-03-18 株式会社Fuji Line production facility
US11159203B2 (en) 2019-09-13 2021-10-26 Micro Motion, Inc. Process control loop bridge
CN113031526A (en) * 2019-12-24 2021-06-25 沈阳智能机器人创新中心有限公司 Method for realizing distributed multi-axis motion control system based on 4diac
WO2021202145A1 (en) * 2020-04-01 2021-10-07 Honeywell International Inc. Optimal method of processing batch manufacturing events with linear computational complexity
US11875236B2 (en) 2020-10-22 2024-01-16 Fisher-Rosemount Systems, Inc. Industrial process control system as a data center of an industrial process plant
CN112505246B (en) * 2020-11-11 2023-05-02 山西科致成科技有限公司 Digital mining gas sensor calibration and verification device and method
US11418969B2 (en) 2021-01-15 2022-08-16 Fisher-Rosemount Systems, Inc. Suggestive device connectivity planning
EP4312418A1 (en) * 2022-07-29 2024-01-31 Abb Schweiz Ag Method for automatic selection of servers
US11899410B1 (en) 2022-12-15 2024-02-13 Halliburton Energy Services, Inc. Monitoring a wellbore operation using distributed artificial intelligence
US11899438B1 (en) 2022-12-15 2024-02-13 Halliburton Energy Services, Inc. Distributed control system with failover capabilities for physical well equipment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5371895A (en) * 1985-10-08 1994-12-06 The Foxboro Company Local equipment controller for computerized process control applications utilizing language structure templates in a hierarchical organization and method of operating the same
WO1995004314A1 (en) * 1993-07-29 1995-02-09 Fisher-Rosemount Systems, Inc. Uniform control template generating system and method for process control programming

Family Cites Families (110)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE522590C (en) * 1931-04-18 Arthur Korn Dr Device for generating high-frequency currents for medical purposes
US4302820A (en) * 1979-08-20 1981-11-24 Allen-Bradley Company Dual language programmable controller
US4663704A (en) * 1984-12-03 1987-05-05 Westinghouse Electric Corp. Universal process control device and method for developing a process control loop program
US4672530A (en) * 1984-12-17 1987-06-09 Combustion Engineering, Inc. Distributed control with universal program
JPH0618002B2 (en) * 1985-01-28 1994-03-09 株式会社東芝 Distributed hierarchical computer system
US4689786A (en) * 1985-03-21 1987-08-25 Apple Computer, Inc. Local area network with self assigned address method
US4679137A (en) * 1985-04-30 1987-07-07 Prometrix Corporation Process control interface system for designer and operator
US5481741A (en) * 1986-04-14 1996-01-02 National Instruments Corporation Method and apparatus for providing attribute nodes in a graphical data flow environment
US5021997A (en) * 1986-09-29 1991-06-04 At&T Bell Laboratories Test automation system
JP2544927B2 (en) * 1987-05-29 1996-10-16 三菱電機株式会社 Plant operation support system
JPH0727056B2 (en) * 1987-07-21 1995-03-29 株式会社日立製作所 Instrumentation control system maintenance support system for nuclear power plants
US4901218A (en) * 1987-08-12 1990-02-13 Renishaw Controls Limited Communications adaptor for automated factory system
JPS6464011A (en) * 1987-09-03 1989-03-09 Mitsubishi Electric Corp Programmable controller
US5006992A (en) * 1987-09-30 1991-04-09 Du Pont De Nemours And Company Process control system with reconfigurable expert rules and control modules
US5129087A (en) * 1988-02-03 1992-07-07 International Business Machines, Corp. Computer system and a method of monitoring transient data structures in a computer system
JPH01211103A (en) * 1988-02-19 1989-08-24 Okuma Mach Works Ltd Numerical controller for grinder
JPH07113845B2 (en) * 1988-06-09 1995-12-06 富士電機株式会社 System construction method for programmable controller
US4916610A (en) * 1988-10-05 1990-04-10 Racal Data Communications Inc. Multilanguage software integration through preprocessing
JP2607663B2 (en) * 1989-01-31 1997-05-07 株式会社東芝 Dialogue equipment for plant monitoring
JP2651245B2 (en) * 1989-06-30 1997-09-10 株式会社日立製作所 Production progress control device and semiconductor device manufacturing method
US5471190A (en) * 1989-07-20 1995-11-28 Timothy D. Schoechle Method and apparatus for resource allocation in a communication network system
JPH0373257A (en) * 1989-08-11 1991-03-28 Nec Corp Production scheduling device
US5155842A (en) * 1989-08-14 1992-10-13 Microsoft Corporation Logical event notification method and apparatus
US5513095A (en) * 1989-08-16 1996-04-30 Siemens Aktiengesellschaft Flexible automation system for variable industrial processes
US5063523A (en) * 1989-11-16 1991-11-05 Racal Data Communications Inc. Network management system with event rule handling
JP2566024B2 (en) * 1990-01-11 1996-12-25 株式会社東芝 Equipment information management device
JP2810231B2 (en) * 1990-01-30 1998-10-15 ジヨンソン・サービス・カンパニー Method of locating data in distributed network system having nodes
US5134574A (en) * 1990-02-27 1992-07-28 The Foxboro Company Performance control apparatus and method in a processing plant
GB9006661D0 (en) * 1990-03-24 1990-05-23 Reflex Manufacturing Systems L Network-field interface for manufacturing systems
US5251125A (en) * 1990-04-30 1993-10-05 Eaton Corporation User interface for a process control device
US5168441A (en) * 1990-05-30 1992-12-01 Allen-Bradley Company, Inc. Methods for set up and programming of machine and process controllers
US5293466A (en) * 1990-08-03 1994-03-08 Qms, Inc. Method and apparatus for selecting interpreter for printer command language based upon sample of print job transmitted to printer
JPH04137164A (en) * 1990-09-28 1992-05-12 Yokogawa Electric Corp Engineering device
JPH04223849A (en) * 1990-12-21 1992-08-13 Yamatake Honeywell Co Ltd Multikind and small quantity production system
JPH04222026A (en) * 1990-12-21 1992-08-12 Nec Corp Program controller
JP2631423B2 (en) * 1991-03-18 1997-07-16 三菱電機株式会社 Operation monitoring device
US5367640A (en) * 1991-04-30 1994-11-22 Hewlett-Packard Company System for configuring an input/output board in a computer
JP2658633B2 (en) * 1991-07-10 1997-09-30 三菱電機株式会社 Communication device
JP3174863B2 (en) * 1991-07-15 2001-06-11 株式会社ニコン Exposure method and lithography system
JPH0575465A (en) * 1991-09-12 1993-03-26 Hitachi Ltd A/d converter for field equipment
CA2073516A1 (en) * 1991-11-27 1993-05-28 Peter Michael Kogge Dynamic multi-mode parallel processor array architecture computer system
JPH05165858A (en) * 1991-12-12 1993-07-02 Matsushita Electric Ind Co Ltd Hospital communication equipment
JPH05216511A (en) * 1992-02-04 1993-08-27 Yaskawa Electric Corp Data processor
US5519878A (en) * 1992-03-18 1996-05-21 Echelon Corporation System for installing and configuring (grouping and node address assignment) household devices in an automated environment
JPH05313774A (en) * 1992-05-12 1993-11-26 Ricoh Co Ltd Guidance display device
JPH0612250A (en) * 1992-06-25 1994-01-21 Mitsubishi Electric Corp Visual programming method
DE4222043C1 (en) * 1992-07-04 1993-07-22 Kloeckner Moeller Gmbh
US5432711A (en) * 1992-10-16 1995-07-11 Elcon Instruments, Inc. Interface for use with a process instrumentation system
US5647056A (en) * 1992-11-18 1997-07-08 Canon Information Systems, Inc. Method and apparatus for managing access to a networked peripheral
US5311562A (en) * 1992-12-01 1994-05-10 Westinghouse Electric Corp. Plant maintenance with predictive diagnostics
JPH076939A (en) * 1992-12-02 1995-01-10 Hitachi Ltd Production control system
JPH06249678A (en) * 1993-02-26 1994-09-09 Bridgestone Corp Method and device for monitoring production process
US5526489A (en) * 1993-03-19 1996-06-11 3Com Corporation System for reverse address resolution for remote network device independent of its physical address
JPH06295236A (en) * 1993-04-07 1994-10-21 Yokogawa Electric Corp Engineering device
US5471461A (en) * 1993-04-28 1995-11-28 Allen-Bradley Company, Inc. Digital communication network with a moderator station election process
JPH0713766A (en) * 1993-06-14 1995-01-17 Internatl Business Mach Corp <Ibm> Object-oriented computer system and object class management method
JP3309932B2 (en) * 1993-07-08 2002-07-29 理化工業株式会社 Control device
JPH08503328A (en) * 1993-07-29 1996-04-09 アトメル・コーポレイション Remote reprogrammable program memory for microcontrollers
JPH0756606A (en) * 1993-08-19 1995-03-03 Fujitsu Ltd Construction support device for measurement monitoring controller
US5530643A (en) * 1993-08-24 1996-06-25 Allen-Bradley Company, Inc. Method of programming industrial controllers with highly distributed processing
US5549137A (en) * 1993-08-25 1996-08-27 Rosemount Inc. Valve positioner with pressure feedback, dynamic correction and diagnostics
JPH0792900A (en) * 1993-09-20 1995-04-07 Omron Corp Programmable controller
US5576946A (en) * 1993-09-30 1996-11-19 Fluid Air, Inc. Icon based process design and control system
US5442639A (en) * 1993-10-12 1995-08-15 Ship Star Associates, Inc. Method and apparatus for monitoring a communications network
US5504902A (en) * 1993-12-01 1996-04-02 Patriot Sensors And Controls Corporation Multi-language generation of control program for an industrial controller
EP0656708A1 (en) * 1993-12-03 1995-06-07 International Business Machines Corporation System and method for the transmission and validation of an updated encryption key between two users
DE69431306T2 (en) * 1993-12-16 2003-05-15 Open Market Inc NETWORK-BASED PAYMENT SYSTEM AND METHOD FOR USING SUCH A SYSTEM
WO1995017714A1 (en) * 1993-12-21 1995-06-29 Taligent, Inc. Automatic hardware configuration
US5566346A (en) * 1993-12-21 1996-10-15 Taligent, Inc. System for constructing hardware device interface software systems independent of operating systems including capability of installing and removing interrupt handlers
JPH07210394A (en) * 1994-01-20 1995-08-11 Hitachi Ltd Program management method for distributed system
US5485620A (en) * 1994-02-25 1996-01-16 Automation System And Products, Inc. Integrated control system for industrial automation applications
JPH07281713A (en) * 1994-04-06 1995-10-27 Hitachi Eng Co Ltd Process control system
US5596723A (en) * 1994-06-23 1997-01-21 Dell Usa, Lp Method and apparatus for automatically detecting the available network services in a network system
JPH0816213A (en) * 1994-06-28 1996-01-19 Mitsubishi Electric Corp Plant controller
WO1996002882A1 (en) * 1994-07-13 1996-02-01 Unisys Corporation A generalized concurrent configurator for constructing a cooperating complex system
US5546301A (en) * 1994-07-19 1996-08-13 Honeywell Inc. Advanced equipment control system
JP3503291B2 (en) * 1994-09-06 2004-03-02 富士ゼロックス株式会社 Output device, network system and terminal name changing method
JPH0887460A (en) * 1994-09-19 1996-04-02 Seiko Epson Corp Installation system
US5718767A (en) * 1994-10-05 1998-02-17 Nordson Corporation Distributed control system for powder coating system
US5623592A (en) * 1994-10-18 1997-04-22 Molecular Dynamics Method and apparatus for constructing an iconic sequence to operate external devices
JP3859015B2 (en) * 1994-10-24 2006-12-20 フィッシャー−ローズマウント システムズ, インコーポレイテッド Apparatus for providing access to field devices in a distributed control system
EP0800680A4 (en) * 1994-10-28 1998-08-12 Advanced Health Med E Systems Prescription management system
US5701411A (en) * 1994-11-04 1997-12-23 Canon Information Systems, Inc. Automatic detection of network hardware connection
US5706007A (en) * 1995-01-03 1998-01-06 Smar Research Corporation Analog current / digital bus protocol converter circuit
US5572438A (en) * 1995-01-05 1996-11-05 Teco Energy Management Services Engery management and building automation system
EP0803152A4 (en) * 1995-01-11 2001-03-07 Momentum Microsystems Wireless desktop area network system
US5491791A (en) * 1995-01-13 1996-02-13 International Business Machines Corporation System and method for remote workstation monitoring within a distributed computing environment
JPH08220278A (en) * 1995-02-10 1996-08-30 Toshiba Eng Co Ltd Plant monitor device and monitor method
GB9502819D0 (en) * 1995-02-14 1995-04-05 At & T Global Inf Solution Control systems
JPH08249026A (en) * 1995-03-10 1996-09-27 Fanuc Ltd Programming method for system including robot
US5617522A (en) * 1995-04-03 1997-04-01 Honeywell Inc. Methods and apparatus for providing and/or customizing display screens and operator interfaces for process control and measurement instruments
JPH08278881A (en) * 1995-04-06 1996-10-22 Toshiba Syst Technol Kk Supporting device for building interactive processing system
JPH08286730A (en) * 1995-04-07 1996-11-01 Toshiba Corp Distributed plant monitor and control device
JP3299860B2 (en) * 1995-05-30 2002-07-08 三菱電機株式会社 Rolling mill thickness control method
JPH08331150A (en) * 1995-06-05 1996-12-13 Fujitsu Ltd Communication system and method therefor
US5745886A (en) * 1995-06-07 1998-04-28 Citibank, N.A. Trusted agents for open distribution of electronic money
US5781710A (en) * 1995-06-07 1998-07-14 Xerox Corporation Generic method for scheduling print engines using print engine capabilities
JP3971465B2 (en) * 1995-06-08 2007-09-05 ソニー株式会社 Camera setup method and system
JPH0934508A (en) * 1995-07-24 1997-02-07 Hitachi Ltd Work information input method and means therefor, and work plan preparation means
US5694335A (en) * 1996-03-12 1997-12-02 Hollenberg; Dennis D. Secure personal applications network
US5862052A (en) * 1996-04-12 1999-01-19 Fisher-Rosemount Systems, Inc. Process control system using a control strategy implemented in a layered hierarchy of control modules
US5768119A (en) * 1996-04-12 1998-06-16 Fisher-Rosemount Systems, Inc. Process control system including alarm priority adjustment
US5801942A (en) * 1996-04-12 1998-09-01 Fisher-Rosemount Systems, Inc. Process control system user interface including selection of multiple control languages
US5828851A (en) * 1996-04-12 1998-10-27 Fisher-Rosemount Systems, Inc. Process control system using standard protocol control of standard devices and nonstandard devices
US5909368A (en) * 1996-04-12 1999-06-01 Fisher-Rosemount Systems, Inc. Process control system using a process control strategy distributed among multiple control elements
JPH1063312A (en) * 1996-08-23 1998-03-06 Toshiba Corp Program managing device for controlling plant
US5980078A (en) * 1997-02-14 1999-11-09 Fisher-Rosemount Systems, Inc. Process control system including automatic sensing and automatic configuration of devices
US6285932B1 (en) * 1997-05-16 2001-09-04 Snap-On Technologies, Inc. Computerized automotive service system
US6006171A (en) * 1997-07-28 1999-12-21 Vines; Caroline J. Dynamic maintenance management system
FR2770017B1 (en) * 1997-10-17 1999-12-03 Thomson Multimedia Sa DOMESTIC EQUIPMENT CONTROL SYSTEM BY GRAPHIC DISPLAY ON SCREEN

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5371895A (en) * 1985-10-08 1994-12-06 The Foxboro Company Local equipment controller for computerized process control applications utilizing language structure templates in a hierarchical organization and method of operating the same
WO1995004314A1 (en) * 1993-07-29 1995-02-09 Fisher-Rosemount Systems, Inc. Uniform control template generating system and method for process control programming

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001029632A2 (en) * 1999-10-18 2001-04-26 Rosemount Inc. Improved interface for managing test definitions
WO2001029632A3 (en) * 1999-10-18 2001-11-01 Rosemount Inc Improved interface for managing test definitions
US6434500B1 (en) 1999-10-18 2002-08-13 Rosemount Inc. Interface for managing test definitions
EP1096349A1 (en) * 1999-11-01 2001-05-02 Abb Research Ltd. Configuration of a plant guidance sytem
EP1096348B1 (en) * 1999-11-01 2005-01-12 Abb Research Ltd. Integration of a field guidance device in a plant guidance system
JP2002152994A (en) * 2000-09-21 2002-05-24 Abb Power Automation Ag Method of forming control system for electrical switch assembly
CN114167825A (en) * 2021-11-22 2022-03-11 成都飞机工业(集团)有限责任公司 Control chart obtaining method and device of product, terminal equipment and storage medium

Also Published As

Publication number Publication date
GB2336923B (en) 2002-06-19
GB2336923A (en) 1999-11-03
JP2014116027A (en) 2014-06-26
JP2001512599A (en) 2001-08-21
US5980078A (en) 1999-11-09
USRE40817E1 (en) 2009-06-30
JP5936180B2 (en) 2016-06-15
JP2012084162A (en) 2012-04-26
AU6252198A (en) 1998-09-08
WO1998036335A3 (en) 1999-01-14
GB2336977A (en) 1999-11-03
GB2336446B (en) 2001-01-17
JP2001512598A (en) 2001-08-21
DE19882113T1 (en) 2000-01-27
GB2336446A (en) 1999-10-20
GB2336977B (en) 2002-06-19
AU6045498A (en) 1998-09-08
JP2001512593A (en) 2001-08-21
GB9918410D0 (en) 1999-10-06
JP2007226825A (en) 2007-09-06
DE19882117T1 (en) 2000-01-27
WO1998036336A1 (en) 1998-08-20
GB9918413D0 (en) 1999-10-06
JP6194252B2 (en) 2017-09-06
JP4934482B2 (en) 2012-05-16
JP2009009560A (en) 2009-01-15
JP2015092400A (en) 2015-05-14
AU6045598A (en) 1998-09-08
DE19882116T5 (en) 2004-11-18
GB9918414D0 (en) 1999-10-06
WO1998036335A2 (en) 1998-08-20

Similar Documents

Publication Publication Date Title
US5838563A (en) System for configuring a process control environment
WO1998036353A1 (en) System for configuring a process control environment with graphical elements
US6868538B1 (en) Object-oriented programmable controller
US5812394A (en) Object-oriented computer program, system, and method for developing control schemes for facilities
US9158508B2 (en) Strategy editor for process control supporting drag and drop connections to declarations
US7468731B2 (en) Automatic resizing of moved attribute elements on a graphical representation of a control object
CN102269989B (en) The method and device for data-driven interface of relation between Kernel-based methods abstract factory
CN101995860B (en) Use the system configuration of template
JP5762716B2 (en) How to select a shape in a graphic display
EP2084593B1 (en) Data quality and status behavior for human machine interface graphics in industrial control and automation systems
US6477435B1 (en) Automated programming system for industrial control using area-model
US20140196006A1 (en) Appearance objects for configuring and graphically displaying programmed/configured process control
US8850335B2 (en) Strategy editor supporting automatic designation of displayed line style based upon a connection data type
US9292309B2 (en) Abstracted display building method and system
US20020161777A1 (en) Universal data editor
US20070240070A1 (en) Strategy editor supporting designating execution order via control object graphical representations
US20140222181A1 (en) Automatically updating graphical symbols in a control loop strategy diagram
JP2019091410A (en) Configuration element for graphic element
US8752010B1 (en) Dynamic interface synthesizer
JPH11134085A (en) Method and apparatus for monitoring and controlling real-time information in a building automation system
EP2397940A1 (en) Strategy editor human-machine interface
JP2005353092A (en) Process control system
Barmsnes et al. PICASSO: A User Interface Management System for Real-Time Applications
Jokstad et al. Picasso-3 User Interface Management System
GB2354415A (en) Active graphics toolkit

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM GW HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
ENP Entry into the national phase

Ref document number: 9918410

Country of ref document: GB

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 1998 535762

Country of ref document: JP

Kind code of ref document: A

122 Ep: pct application non-entry in european phase
RET De translation (de og part 6b)

Ref document number: 19882116

Country of ref document: DE

Date of ref document: 20041118

Kind code of ref document: P

WWE Wipo information: entry into national phase

Ref document number: 19882116

Country of ref document: DE

REG Reference to national code

Ref country code: DE

Ref legal event code: 8607

REG Reference to national code

Ref country code: DE

Ref legal event code: 8607