way 24. The network A 16 and the network B 20 can be similar or different types of networks. Additional devices (e.g., device 12-3, . . . 12-n) are connected to the network B 20.
For example in a first exemplary system, the network A 16 is an Ethernet network and the network B 20 is a Honeywell proprietary network. Still other network types are contemplated and may be employed without departing from the present invention. The master control computer 10 and/or 10′ is a computer running Microsoft® Windows®. The I/O devices 12 include but are not limited to: RF (radio frequency) barcode readers; sensors (e.g., temperature sensors); actuators (e.g., relays); motor starters; and other industrial I/O devices.
One existing problem (that the present invention overcomes) is the difficulty in configuring multiple I/O devices 12 that exist on multiple networks. For example, a factory may have 168 motor starters on one or more interconnected networks. Each motor starter may have over 100 attributes and/or properties. Examples of motor starter attributes include a current and voltage limits. Prior approaches have used time-consuming ways to configure the characteristics of the networked devices 12.
As is shown in FIG. 2, the present invention uses an object oriented model 50 to clone the I/O devices 12, including the I/O devices 12 that are on different I/O networks 52. Industrial devices are expressed in the control software on the master control computer 10 and/or 10′ using an object oriented model 50 according to the present invention. The object oriented model 50 creates a class structure that includes a device class 64.
As a non-limiting example, the device class includes an analog class 66, a digital class 70, and other related device classes 72. Through a property of inheritance 76, the I/O devices 12 that are instantiated from the analog class 66 automatically inherit the attributes, properties and/or operations of the analog class 66. Thus, the user does not have to retype attributes and perform initialization operations as each I/O device object is created (or cloned).
Furthermore, classes inherit from other classes. For example, a motor starter class 80 may be created as a subclass of the analog class 66. Objects that are instantiated from the motor starter class 80 have all of the attributes and operations of the motor starter class 80 as well as those from the analog class 66. Thus, a motor starter object has automatically (without need for additional user data entry) the current and voltage limit attributes as well as many other attributes of the motor starter class 80 and the analog class 66.
The object oriented model 50 of the present invention presents the same type of graphical user interface (GUI) 84 to the user irrespective of what device objects are being created and on what network. Thus, the same GUI 84 is used to create device objects for a motor starter device object as for a temperature sensor device object.
Referring now to FIG. 3, a flowchart 86 shows the operational steps for the present invention. In step 87, control starts. In step 88, the user configures a first I/O device in order to set the attributes of the first I/O device. In step 90, the user makes a copy of the second I/O device from the first I/O device. In the preferred embodiment, an object copy operation is performed by right mouse clicking on the first I/O device object in order to make a copy of the second I/O device object from the first I/O device object. In step 92, the attribute values of the second I/O device object are modified if desired. In step 94, if other I/O device objects need to created, control continues with step 88.
The user can perform steps 1-3 either at the site of the local master control computer 10 or at a computer that is remote from the industrial site (this is shown respectively in FIG. 1 as the local master control computer 10 or the optional remote master control computer 10′). Preferably, the configuration is performed off-line. In other words, the master computer 10 and/or 10′ is not connected to the network s