CA2554766A1 - Computer presentation and command integration apparatus and method - Google Patents
Computer presentation and command integration apparatus and method Download PDFInfo
- Publication number
- CA2554766A1 CA2554766A1 CA002554766A CA2554766A CA2554766A1 CA 2554766 A1 CA2554766 A1 CA 2554766A1 CA 002554766 A CA002554766 A CA 002554766A CA 2554766 A CA2554766 A CA 2554766A CA 2554766 A1 CA2554766 A1 CA 2554766A1
- Authority
- CA
- Canada
- Prior art keywords
- display
- commands
- windows
- window
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000010354 integration Effects 0.000 title description 2
- 239000002131 composite material Substances 0.000 claims abstract description 44
- 239000000470 constituent Substances 0.000 claims 7
- 239000000872 buffer Substances 0.000 description 15
- 230000006870 function Effects 0.000 description 11
- 238000013519 translation Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000004513 sizing Methods 0.000 description 10
- 230000004913 activation Effects 0.000 description 7
- 238000012544 monitoring process Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000010438 heat treatment Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 230000008929 regeneration Effects 0.000 description 1
- 238000011069 regeneration method Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/14—Display of multiple viewports
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
- G06F3/1431—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display using a single graphics controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/04—Changes in size, position or resolution of an image
- G09G2340/0407—Resolution change, inclusive of the use of different resolutions for different screen areas
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/04—Changes in size, position or resolution of an image
- G09G2340/0407—Resolution change, inclusive of the use of different resolutions for different screen areas
- G09G2340/0435—Change or adaptation of the frame rate of the video stream
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2340/00—Aspects of display data processing
- G09G2340/10—Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Digital Computer Display Output (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
An apparatus (10) comprising a display (28), input device (30), display processor (38), and command processor (40) and a method for using same. The display (28) may receive a composite display signal (26) and render a composite image corresponding thereto viewable by a user. The input device (30) may receive commands (32, 34, 36) from a user. The display processor (38) may receive display signals (18) of disparate forms from each of various electronic devices (12), generate the composite display signal (26) to define multiple windows (80) wherein each of the display signals (18) corresponds to at least one window (80), and transmit the composite display signal (26) to the display (28). The command processor (40) may be programmed to route at least one of the commands (32, 34, 36) to at least one device of the various electronic devices (12), and configured to selectively control and save for reuse by a user, according to the commands (32, 34, 36) received from a user through the input device (30), the relative size, position, or the like of each window (80) presented on the display (28).
Description
COMPUTER PRESENTATION AND COMMAND
INTEGRATION APPARATUS AND METHOD
BACKGROUND
1. The Field of the Invention This invention relates to control systems and, more particularly, to novel systems and methods for integrated monitoring and control of multiple subsystems.
INTEGRATION APPARATUS AND METHOD
BACKGROUND
1. The Field of the Invention This invention relates to control systems and, more particularly, to novel systems and methods for integrated monitoring and control of multiple subsystems.
2. The Background Art l0 The proliferation of computers, control systems, and other electronic devices has created an increasingly difficult problem for the human operators and users that must monitor and control them. In many operations and control centers, a user must monitor and control three, four, or more separate systems in order to perform designated responsibilities. Operator work areas having multiple visual display terminals, keyboards, pointing devices, etc. are l5 common.
In many situations, this problem is exacerbated when the various systems being monitored and controlled employ different operating systems and use different visual display devices. Often the most important systems in an operations center or control room are older systems that cannot easily be modified or integrated with newer systems.
Accordingly, the ~0 information of greatest importance to a user is often distributed across a variety of display devices.
Currently, there are devices such as keyboard, video, and mouse switches (KVMs) that allow a user to switch between multiple computer systems, while using a single workstation.
These devices have significant limitations. For example, they typically allow the user to view ZS and control only one system at a time.
Display integrators have also been developed. Typically, display integrators combine multiple images, thereby allowing a user to monitor the output of multiple systems from a single display device. However, display integrators neither reduce the number of control input devices nor permit redirection of command inputs. They merely aggregate display images.
30 Currently, personal computers and televisions may monitor and control one or more systems by displaying images from the connected systems and redirecting control from a keyboard and pointer. These devices, however, also have significant limitations. For example, they are limited in their ability to work in real time with multiple diverse systems.
Furthermore, they do not allow the user to customize the display image by sizing and positioning the various display elements at will. Moreover, they do not support the creation of arbitrarily selected subwindows or the saving and reuse of information layout.
What is needed is a system that gives a user the power to integrate the monitoring and control of various disparate systems (subsystems). Additionally, what is needed is a system that gives a user the power to customize the display image produced on the display of a workstation to meet individual needs, facilitate one's work, and accommodate one's own preferences.
BRIEF SUMMARY OF THE INVENTION
In view of the foregoing, in accordance with the invention as embodied and broadly described herein, a method and apparatus are disclosed in one embodiment of the present invention as including a system providing integrated monitoring and control of one or more subsystems. A system providing integrated control may be any arrangement where a user issues commands to, and receives monitoring display information from, multiple subsystems.
In selected embodiments, such a system may include an integrator interfacing between a workstation and multiple subsystems.
In certain applications, a subsystem may output a display signal in a particular form (e.g. interface standard). Similarly, that subsystem may receive commands in a particular form.
The display signals and commands of another subsystem may be incompatible with those of the first subsystem. In such applications, an integrator in accordance with the present invention may function as a translator between a workstation and the otherwise incompatible subsystems.
In selected embodiments, an integrator may translate the display signals, received from the subsystems in various, physically disparate forms, into a common form.
Once in a common form, the display signals may be integrated into a composite display signal. The composite display signal may be passed from the integrator to the display of a workstation.
Similarly, an integrator may translate the commands received from the various input devices of a workstation into commands that may be understood by the various subsystems to which the commands are directed.
In certain embodiments, an integrator may include a display processor and a command processor. The display processor may receive the various display signals from the connected subsystems, generate a composite display signal defining various windows, and transmit the composite display signal to the display of the workstation. In some embodiments, each incoming display signal may be assigned to at least one window defined by the composite display signal. In other embodiments, only selected incoming display signals or portions of incoming display signals may each be assigned a window.
The command processor may direct commands received from one or more input devices of the workstation to their appropriate destinations. Appropriate destinations may include the integrator itself, a neighboring integrator, one or more of the connected subsystems, or the like. If necessary, a command processor may translate commands before directing them to their destination.
In selected embodiments, a command processor may communicate selected commands, received from a workstation, to the display processor. For example, a command processor may pass a command to the display processor for implementing commands directed to opening, closing, sizing, positioning, or the like. Accordingly, a command processor may provide the mechanism through which a user selects, sizes, positions, or otherwise manipulates the windows presenting real-time visual feedback from multiple subsystems. In certain embodiments, a command processor may support the saving and recalling of various display layouts comprising arrangements of windows that the user has created and found to be useful.
In certain embodiments, a command processor may be configured to receive, store, and enforce access limitations corresponding to a user. An access limitation may be any restriction on what commands are forwarded by the command processor to the intended destination. For example, in selected situations, it may be desirable to limit which users are able to control selected critical functions of a subsystem. Accordingly, an access limitation may indicate that if a particular user issues a command affecting a critical function of a subsystem 12, that command is to be ignored and not forwarded.
BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing features of the present invention will become more fully apparent from the following description and appended claims, taken in conjunction with the accompanying drawings. Understanding that these drawings depict only typical embodiments of the invention and are, therefore, not to be considered limiting of its scope, the invention will be described with additional specificity and detail through use of the accompanying drawings in which:
Figure 1 is a schematic block diagram of a system in accordance with the present invention comprising an integrator interfacing between a workstation and multiple subsystems;
Figure 2 is a schematic block diagram of an embodiment of an integrator in accordance with the present invention;
In many situations, this problem is exacerbated when the various systems being monitored and controlled employ different operating systems and use different visual display devices. Often the most important systems in an operations center or control room are older systems that cannot easily be modified or integrated with newer systems.
Accordingly, the ~0 information of greatest importance to a user is often distributed across a variety of display devices.
Currently, there are devices such as keyboard, video, and mouse switches (KVMs) that allow a user to switch between multiple computer systems, while using a single workstation.
These devices have significant limitations. For example, they typically allow the user to view ZS and control only one system at a time.
Display integrators have also been developed. Typically, display integrators combine multiple images, thereby allowing a user to monitor the output of multiple systems from a single display device. However, display integrators neither reduce the number of control input devices nor permit redirection of command inputs. They merely aggregate display images.
30 Currently, personal computers and televisions may monitor and control one or more systems by displaying images from the connected systems and redirecting control from a keyboard and pointer. These devices, however, also have significant limitations. For example, they are limited in their ability to work in real time with multiple diverse systems.
Furthermore, they do not allow the user to customize the display image by sizing and positioning the various display elements at will. Moreover, they do not support the creation of arbitrarily selected subwindows or the saving and reuse of information layout.
What is needed is a system that gives a user the power to integrate the monitoring and control of various disparate systems (subsystems). Additionally, what is needed is a system that gives a user the power to customize the display image produced on the display of a workstation to meet individual needs, facilitate one's work, and accommodate one's own preferences.
BRIEF SUMMARY OF THE INVENTION
In view of the foregoing, in accordance with the invention as embodied and broadly described herein, a method and apparatus are disclosed in one embodiment of the present invention as including a system providing integrated monitoring and control of one or more subsystems. A system providing integrated control may be any arrangement where a user issues commands to, and receives monitoring display information from, multiple subsystems.
In selected embodiments, such a system may include an integrator interfacing between a workstation and multiple subsystems.
In certain applications, a subsystem may output a display signal in a particular form (e.g. interface standard). Similarly, that subsystem may receive commands in a particular form.
The display signals and commands of another subsystem may be incompatible with those of the first subsystem. In such applications, an integrator in accordance with the present invention may function as a translator between a workstation and the otherwise incompatible subsystems.
In selected embodiments, an integrator may translate the display signals, received from the subsystems in various, physically disparate forms, into a common form.
Once in a common form, the display signals may be integrated into a composite display signal. The composite display signal may be passed from the integrator to the display of a workstation.
Similarly, an integrator may translate the commands received from the various input devices of a workstation into commands that may be understood by the various subsystems to which the commands are directed.
In certain embodiments, an integrator may include a display processor and a command processor. The display processor may receive the various display signals from the connected subsystems, generate a composite display signal defining various windows, and transmit the composite display signal to the display of the workstation. In some embodiments, each incoming display signal may be assigned to at least one window defined by the composite display signal. In other embodiments, only selected incoming display signals or portions of incoming display signals may each be assigned a window.
The command processor may direct commands received from one or more input devices of the workstation to their appropriate destinations. Appropriate destinations may include the integrator itself, a neighboring integrator, one or more of the connected subsystems, or the like. If necessary, a command processor may translate commands before directing them to their destination.
In selected embodiments, a command processor may communicate selected commands, received from a workstation, to the display processor. For example, a command processor may pass a command to the display processor for implementing commands directed to opening, closing, sizing, positioning, or the like. Accordingly, a command processor may provide the mechanism through which a user selects, sizes, positions, or otherwise manipulates the windows presenting real-time visual feedback from multiple subsystems. In certain embodiments, a command processor may support the saving and recalling of various display layouts comprising arrangements of windows that the user has created and found to be useful.
In certain embodiments, a command processor may be configured to receive, store, and enforce access limitations corresponding to a user. An access limitation may be any restriction on what commands are forwarded by the command processor to the intended destination. For example, in selected situations, it may be desirable to limit which users are able to control selected critical functions of a subsystem. Accordingly, an access limitation may indicate that if a particular user issues a command affecting a critical function of a subsystem 12, that command is to be ignored and not forwarded.
BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing features of the present invention will become more fully apparent from the following description and appended claims, taken in conjunction with the accompanying drawings. Understanding that these drawings depict only typical embodiments of the invention and are, therefore, not to be considered limiting of its scope, the invention will be described with additional specificity and detail through use of the accompanying drawings in which:
Figure 1 is a schematic block diagram of a system in accordance with the present invention comprising an integrator interfacing between a workstation and multiple subsystems;
Figure 2 is a schematic block diagram of an embodiment of an integrator in accordance with the present invention;
Figure 3 is a schematic block diagram of an embodiment of a display processor from an integrator in accordance with the present invention;
Figure 4 is a partial schematic block diagram of an embodiment of a display processor equipped with an addressed buffer in accordance with the present invention;
Figure 5 is a partial schematic block diagram of an embodiment of a display processor in accordance with the present invention providing a composite display signal to multiple workstation displays;
Figure 6 is a schematic block diagram of an embodiment of a command processor from an integrator in accordance with the present invention;
Figure 7 is a schematic block diagram of a system in accordance with the present invention comprising a first integrator interfacing between a first workstation and first multiple subsystems, a second integrator interfacing between a second workstation and second multiple subsystems, and a data link connecting the first integrator to the second integrator;
Figure 8 is a schematic block diagram of one embodiment of a method for operating a command processor in accordance with the present invention;
Figure 9 is a schematic block diagram of one embodiment of a method for creating display layouts in accordance with the present invention;
Figure 10 is a schematic block diagram of an embodiment of a display layout in accordance with the present invention;
Figure 11 is a schematic illustration of a screen shot showing one embodiment of a display layout produced in accordance with the present invention to include a tool bar and various "thumbnail" windows;
Figure 12 is a schematic illustration of a screen shot showing an alternative embodiment of a display layout produced in accordance with the present invention to include a tool bar, various thumbnail windows, and a subwindow corresponding to one of the thumbnail windows; and Figure 13 is a schematic illustration of a screen shot showing another alternative embodiment of a display layout produced in accordance with the present invention to include a tool bar, various thumbnail windows, a full window corresponding to one of the thumbnail windows, and a virtual control panel.
DETAILED DESCRIPTION OF SELECTED EMBODIMENTS
It will be readily understood that the components of the present invention, as generally described and illustrated in the drawings herein, could be arranged and designed in a wide variety of different configurations. Thus, the following more detailed description of the embodiments of the system and method of the present invention, as represented in the drawings, is not intended to limit the scope of the invention, as claimed, but is merely representative of the various embodiments of the invention. The invention will be best understood by reference to the drawings, wherein like parts are designated by like numerals throughout.
Referring to Figure 1, selected embodiments in accordance with the present invention may include a system 10 providing integrated control over one or more subsystems 12.
Control may be defined in terms of a control loop. A control loop may include two flows of information. Information flowing out may be referred to as a command.
Information flowing in may be referred to as feedback. Feedback allows the user or system issuing a command to verify that the command was properly received, understood, and implemented by the system or subsystem being controlled. Accordingly, control may be defined as a process where in commands are issued and verification feedback is received.
A system 10 providing integrated control may be any arrangement where a user, workstation, or the like is empowered with hardware, software, or some combination thereof permitting the issuance of commands to, and the reception of feedback from, multiple subsystems 12 through a convenient and compact interface. In selected embodiments in accordance with the present invention, a system 10 providing integrated control (i. e. an Integrated Control System or ICS) may include an integrator 14 interfacing between a workstation 16 and multiple subsystems 12.
In certain applications, one or more subsystems 12 may be designed with a particular control system in mind. In such applications, a subsystem 12a may output feedback (e.g.
display signal 18a) in a particular form that may be analogized to a.
particular language.
Similarly, that subsystem 12a may receive commands (e.g. key commands 20a) in a particular form that may also be analogized to a particular language. Depending on the application, the display signals 18b and key commands 20b of a second subsystem 12b may be in different languages or otherwise incompatible with those of the first subsystem 12a. In such applications, the subsystems 12a, 12b may be considered physically disparate or may be said to communicate through display signals 18a, 18b and key commands 20a, 20b that are physically disparate in form.
Physically disparate subsystems 12 are often the result of advances in technology. For example, a first subsystem 12a may have been designed and built when displays of a particular kind where considered standard. Accordingly, the first subsystem 12a may have been designed to output display signals 18a in a form understood by such displays. However, as technology advanced, new display technology may have been developed. A second subsystem 12b, developed in more recent times, may be designed to output display signals 18b in a form understood by the new displays. Thus, the display signals 18a of the first subsystem 12a may be incompatible with the display signals 18b of the second subsystem 12b.
In the illustrated embodiment of Figure 1, an integrator 14 in accordance with the present invention is connected to three representative subsystems 12a, 12b, 12c. In other embodiments, a greater or lesser number of subsystems 12 of various input and output forms or languages may be connected to an integrator 14. Accordingly, the following more detailed description of Figure 1 is not intended to limit the scope of the invention, but is merely representative of selected subsystems 12 to which integrated control in accordance with the present invention may be applied.
A first subsystem 12a provides an example of an older computer system using DOS
(i.e. an operating system used on IBM personal computers and compatible machines) to run applications. The first subsystem 12a may be designed to output a display signal 18a compatible with a monochrome display. However, rather than sending the display signal 18a to a monochrome display, the first subsystem 12a may send the display signal 18a to an integrator 14. Similarly, rather than receiving key commands 20a directly from a keyboard, the first subsystem 12a may receive key commands 20a from the integrator 14.
A second subsystem 12b provides an example of a more advanced computer system designed to interface with a keyboard, pointing device (e.g. a "mouse"), and a color, higher resolution display. Rather than sending the display signal 18b in RGB form to a color, higher-resolution display, the second subsystem 12b may send the display signal 18b to the integrator 14. Similarly, rather than receiving key commands 20b and pointer commands 22 directly from a keyboard or mouse, the second subsystem 12b may receive key commands 20b and pointer commands 22 from the integrator 14.
A third subsystem 12c provides an example of a customized subsystem. Such a subsystem 12c may include a first serial communication port for outputting a display signal 18c in the form of ASCII characters to a character terminal. Rather than sending the display signal 18c to a character terminal, the third subsystem 12c may send the display signal 18c to the integrator 14. The first serial port, or a second serial port or other type of interface, may be connected to the integrator 14 to facilitate communication of control commands 24.
In addition to the monochrome, RGB, and ASCII display signals 18 discussed hereinabove, other suitable display signals 18 that may be received and processed by an integrator in accordance with the present invention may include any variety of component, composite, or compressed signal, whether digital or analog (e.g. YCbCr, YPbPr, NTSC, PAL, S-Video, MPEG, JPEG, or the like). In selected embodiments, display signals 18 may encompass more than just images. For example, any voltage, current, contact condition, encoded digital signal, value corresponding to a state of a component, and the like may be used to control any type of display device or indicator device and may be considered a display signal.
In selected embodiments, an integrator 14 may function as a translator between a workstation 16 and the subsystems 12. An integrator 14 may translate the display signals 18, received from the subsystems 12 in various, physically disparate forms, into a common form.
Once in a common form, the display signals 18 may be integrated into a composite display signal 26 that may be passed from the integrator 14 to a display 28 of a workstation 16. A
workstation 16 in accordance with the present invention may include any combination of displays 28. If desired, one or more of the displays 28 utilized in a workstation 16 may be a high-resolution display.
A workstation 16 in accordance with the present invention may also include any combination of input devices 30. Suitable input devices 30 may include control panels, keyboards, pointers or cursor-control devices, or the like. In the illustrated embodiment, a workstation 16 includes three input devices 30 (i.e. a keyboard 30a, pointer 30b, and custom control panel 30c). The keyboard 30a may communicate key commands 32 to an integrator 14. The pointer 30b may communicate pointer commands 34 to an integrator 14.
The custom control panel 30c may communicate serial, parallel, or other types of commands 36 to an integrator 14. An integrator 14 may translate the commands 32, 34, 36 received from the various input devices 30 into commands 20, 22, 24 that may be understood by the various subsystems 12 to which the commands 32, 34, 36 are directed.
Referring to Figure 2, an integrator 14 in accordance with the present invention may include a display processor 38 and a command processor 40. A display processor 38 may receive display signals 18 from the connected subsystems 12, translate (if necessary) the display signals 18 to a common or compatible form, and generate a composite display signal 26. A command processor 40 may receive commands 32, 34, 36 from a workstation, translate (if necessary) the commands 32, 34, 36 into commands 20, 22, 24 understood by the various subsystems 12 to which the commands 32, 34, 36 are directed, and forward the commands 20, 22, 24 to the appropriate subsystems 12.
_g_ In selected embodiments, a command processor 40 may communicate selected commands, received from a workstation 16, to the display processor 38. For example, a command processor 40 may pass commands directed to image opening, closing, sizing, positioning, or the like to the display processor 38 for implementation.
Accordingly, an integrator 14 in accordance with the present invention may provide the mechanism through which a user may select, size, position, and otherwise manipulate real-time visual feedback from multiple subsystems 12.
If desired, an integrator 14 in accordance with the present invention may include a data link 41. In certain embodiments, a data link 41 may connect a command processor 40 of one integrator 14 to the command processor 40 of another integrator 14.
Accordingly one integrator 14 may exert control over another integrator 14. Additionally, a data link 41 may allow an integrator 14 to be controlled by an external data processing system.
In one embodiment, such a data link 41 may comprise an IEEE 802.3 network interface.
Referring to Figure 3, a display processor 38 in accordance with the present invention may include various interface modules 42. One interface module 42 may service each incoming display signal 18. In selected embodiments, an interface module 42 may function as an emulator, providing the mechanical and electrical requirements normally presented by the display to which the display signal 18 is sent. For example, an interface module 42 may provide the mechanical attachment, voltage, impedance, or the like that would normally be provided by the display device.
After passing through an interface module 42, a display signal 18 may enter an image structure converter 44. An image structure converter 44 may convert the display signal 18 to a common image structure. In embodiments where an incoming display signal l8 is already in the common image structure, it may be passed through without alteration:
Any suitable structure may suffice for a common image structure. In one embodiment, an image structure converter may convert all incoming display signals 18 to an RGB structure of some predetermined resolution, for example.
In general, an image structure converter 44 may apply any process necessary to effectuate a conversion. For example, in certain embodiments, an image structure converter 44 may apply an eight-bit, linear-RGB, progressive scan. In embodiments where the display signal 18 is interlaced, monochrome analog, the image structure converter 44 may de-interlace the display signal 18 and convert the luminance information into the common image structure.
In embodiments where the display signal 18 comprises serial ASCII characters, the image structure converter may create a virtual image of a character terminal based on the incoming display signal 18, then transform the virtual image into the common image structure.
Display signals 18 of common image structure may be passed to frame rate converters 46. A frame rate converter 46 may convert each incoming display signal 18 to a common frame rate. A common frame rate may be any suitable value. In one embodiment, a frame rate converter may convert all incoming display signals 18 to seventy progressive frames per second. If desired or necessary, a display processor 38 may include a clock 48 operably connected to support the operation of the frame rate converter 46.
Display signals 18 of common image structure and frame rate may be passed to image resizers 50. An image resizer 50 may manipulate incoming display signals 18 to permit multiple display signals 18 to be included within the composite display signal 26. For example, a display 28 of a workstation 16 may have a limited number of pixels.
For illustrative purposes, it may be assumed that a display 28 is limited to 1600 x 1200 pixels. A user may desire a window of 640 x 480 pixels on the display 28 to present a display signal originally sized for a display of 800 x 600 pixels. In such a situation, an image resizer 50 may "down-convert" the display signal 18 by one and one quarter times its original, linear pixelation.
Again for illustrative purposes, one may assume that a user desires to create another window of 480 x 360 pixels on the display to present a display signal 18 originally sized for a display of 320 x 240 pixels. In such a situation, an image resizer 50 may "up-convert" the display signal 18 by one and one half. In certain embodiments, a display signal 18 may be up-converted or down-converted by a factor of up to eight.
In selected embodiments, an image resizer 50 may up-convert or down-convert display signals 18 according to commands received from an image controller 52. In certain embodiments, an image controller 52 may determine whether to resize a display signal 18 by comparing the size of the display signal 18 to the size of the window in which the display signal 18 is to be presented.
In certain embodiments, a display processor 3 8 in accordance with the present invention may include a graphics generator 54. A graphics generator 54 may add various graphic features to the composite display signal 26. For example, in selected embodiments a graphics generator 54 may add borders around windows, buttons, and other control icons as well as macros that facilitate control over the functions of an integrator 14 or any subsystem 12 connected to the integrator 14. In certain embodiments, a graphics generator 54 may be synchronized by a clock 48 with the processed display signals 18.
In selected embodiments, an image controller 52 may control the various operations and processes of a display processor 3 8. In some embodiments, an image controller 52 may receive commands from a command processor 40. Such commands may reflect how a user desires to modify the composite display signal 26 to produce a desired visual output on a display 28 of a workstation 16. For example, an image controller 52 may receive, from a command processor 40, commands with respect to the opening, closing, sizing, positioning, and layering of various windows defined by the composite display signal 16. An image controller 52 may also receive commands with respect to which image area of a particular display signal 18 is to be displayed within any particular window.
Under the control of an image controller 52, a multiplexes 56 may receive and combine the processed display signals 18 of the connected subsystems 12, graphic features generated by the graphics generator 54, and input, as needed, from a clock 48 to form a composite display signal 26. The composite display signal 26 may be forwarded by a display driver 58 to a display 28 of a workstation 16.
Referring to Figure 4, a display processor 38 in accordance with the present invention may include one or more buffers 60 as needed. For example, a buffer 60a, 60b, 60c may be assigned to each display signal 18a, 18b, 18c as it transitions from the image resizer 50 to the multiplexes 56. Physically, such buffers 60a, 60b, 60c may be independent components or subcomponents contained within either or both of the image resizer 50 and the multiplexes 56.
In selected embodiments, a buffer 60d may be positioned logically between the image controller 52 and multiplexes 56 while being positioned physically as an independent component or a subcomponent contained within either or both of the two.
In one embodiment, a buffer 60d between an image controller 52 and a multiplexes 56 may be an addressed buffer 60d. A conventional buffer may provide an array or matrix of the same size or dimension as the display to which the display signal will be sent. For example, a conventional buffer for an RGB display of 1600 x 1200 pixels may comprise a 1600 x 1200 matrix with each element containing an RGB value for the corresponding pixel.
In contrast, an addressed buffer 60d in accordance with the present invention may comprise an array or matrix with each element containing either pixel color information (e.g. an RGB value) or an address providing one element of indirection wherein pixel color information may be found for the corresponding pixel.
For example, an address contained within an addressed buffer 60d may direct the multiplexes 56 to look for the actual pixel color information in some other buffer 60. In selected embodiments, to facilitate the determination of whether an element contains pixel color information or an address, various bits of data corresponding to each element may identify that element as corresponding to pixel color information or an address. An addressed buffer 60d in accordance with the present invention may simplify the hardware and software required by the display processor 38. For example, control code for the multiplexes 56 may be contained within the addressed buffer 60d.
Refernng to Figure 5, in selected embodiments, a workstation 16 in accordance with the present invention may include two or more displays 28. Multiple displays 28 may be desirable when numerous subsystems 12 are included within the system 10 or when some of the subsystems 12 provide display signals 18 of comparatively higher resolution.
In certain embodiments, multiple displays 28 may be treated as a single logical display.
That is, a multiplexes 56 may partition the composite display image 26 into as many portions as there are displays 28. Each portion of the composite display signal 26 may then be forwarded to a corresponding display 28. For example, in one embodiment, a multiplexes 56 may partition the composite display signal 26 into first and second portions.
The first portion may be forwarded by a first display driver 58a to a first display 28a of a workstation 16. The second portion may be forwarded by a second display driver 58b to a second display 28b of the workstation 16.
Referring to Figure 6, in general, a command processor 40 in accordance with the present invention may process commands 32, 34, 36 of two varieties or types. A
first type may include commands 32, 34, 36 intended by a user for one or more subsystems 12.
A command 32, 34, 36 to adjust the heat generated in a particular temperature zone control by a first subsystem 12a may be an example of a command 32, 34, 36 of the first type. A
second type may include commands 32, 34, 36 intended by a user for the integrator 14 itself. A command 32, 34, 36 to open, close, size, position, or activate a window presented on the display 28 of a workstation 16 may be an example of a command 32, 34, 36 of the second type.
Commands 32, 34, 36 of either type may be entered in any .suitable manner. For example, commands 32, 34, 36 may be entered by clicking with a pointer 30b, dragging with a pointer 30b, clicking and dragging with a pointer 30b, typing on a keyboard 30a, or manipulating special function keys, knobs, switches, etc. on a keyboard 30a or control panel 30c or virtual buttons, knobs, dials, etc. on a screen image console.
In certain embodiments, a command processor 40 may include various interface modules 62. One interface module 62 may service each incoming command 32, 34, 36 and outgoing command 20, 22, 24. Similar to the interface modules 42 of a display processor 38, in selected embodiments, the interface modules 62 of a command processor 40 may function as emulators, providing the mechanical and electrical requirements normally presented by the corresponding systems or input devices. That is, for example, interface modules 62 for incoming commands 32, 34, 36 may provide the mechanical attachment, voltage, impedance, or the like that a system would normally provide to the input devices 30.
Similarly, interface modules 62 for outgoing commands 20, 22, 24 may provide the mechanical attachment, voltage, impedance, or the like that a system would normally receive from an input device.
In selected embodiments, a command processor 40 may include a command controller 64. A command controller 64 may receive incoming commands 32, 34, 36 from selected interface modules 62 and issue commands 20, 22, 24 to others 62. In certain embodiments, a command controller 64 may include a CPU 66 operably connected to a memory device 68.
The memory device 68 may include data structures in the form of executables and operational data. The data structures may comprise various modules. For example, in one embodiment, the data structures form a translation module 70, access control module 72, topology tracking module 74, and layout module 76.
A translation module 70 in accordance with the present invention may be configured to receive incoming commands 32, 34, 36 and determine the destination thereof.
If the commands 32, 34, 36 are directed to a destination (e.g. subsystem 12, image controller 52, etc.) receiving inputs in a different form or language than that of the commands 32, 34, 36, the commands 32, 34, 36 may be translated by the translation module 70 into commands 20, 22, 24 of proper form. In selected embodiments, translation of commands 34 from a pointer 30b may include appropriate scaling of cursor movements. Commands 20, 22, 24 of proper form may be forwarded by the translation module 70 to the destination.
An access control module 72 in accordance with the present invention may be configured to receive, store, and enforce access limitations corresponding to any user. For example, in selected embodiments, each user of a system 10 in accordance with the present invention may be required to log in with a username and password. An access module 72 may receive the username and apply a corresponding set of access limitations. An access limitation may be any restriction on what commands 32, 34, 36 are forwarded by the integrator 14 to the intended destination (e.g. subsystem 1~2, image controller 52, etc.).
For example, in selected situations, it may be desirable to limit which users are able to restart a subsystem 12. Accordingly, an access limitation may indicate that if a particular user directs a restart command (e.g. Control-Alt-Delete) to a subsystem 12, that command is to be ignored and not forwarded. In other situations, an access limitation may prevent a particular user from opening or closing a particular window presenting the display signal 18 of a particular subsystem 12. In certain embodiments, an access control module 72 may receive access limitations for the various users from an administrator whose username is associated with substantially no access limitations.
In selected embodiments, an access control module 72 may control access on a user-by-user, or command-by-command basis. For example, each username may be coupled or associated with a list of prohibited (or, if more convenient, permitted) commands.
Alternatively, an access control module 72 may control access according to a series of access levels. In such embodiments, each access level may be associated with selected access privileges. The access granted a user may be controlled by selecting the access level assigned to the user. For example, users assigned an access level of five may have fewer access limitations than users assigned an access level of three.
A topology tracking module 74 in accordance with the present invention may be configured to maintain a current record of all subsystems 12 connected to an integrator 14. In selected embodiments, a topology tracking module 74 may also maintain a current record of the various input forms or languages used by the various subsystems 12.
Accordingly, a topology tracking module 74 may work in cooperation with a translation module 70 to identify how (i.e. into what forms or languages) the various commands 32, 34, 36 are to be translated.
In certain embodiments, a topology tracking module 74 may be configured to maintain a current record of all subsystems 12 associated with any neighboring integrator 14 connected via a data link 41. Such a topology tracking module 74 may also maintain a current record of the various input forms or languages used by the subsystems 12 so connected.
Accordingly, a topology tracking module 74 may facilitate translation and forwarding of commands 32, 34, 36 and display signals 18 from one integrator 14 to another 14.
A layout module.76 in accordance with the present invention may be configured to support the creation, storage, and recall of various display layouts. A
display layout may be any arrangement of windows, virtual control panels, or the like defined or generated by the composite display signal 26 on the display 28 of a workstation 16. In selected embodiments, a user may issue commands 32, 34, 36 until a desired display layout is achieved. When commanded, the desired display layout may be saved by the layout module 76.
Later, when a user desires to view a saved display layout, he may issue commands 32, 34, 36 causing the layout module 76 to retrieve or recall that particular display layout.
Referring to Figure 7, in selected embodiments, two or more integrators 14 in accordance with the present invention may be interconnected. In the illustrated embodiment, a first integrator 14a is connected to a second integrator 14b via data link 41. The first integrator 14a provides the interface between a first workstation 16a and first and second subsystems 12a, 12b. The second integrator 14b provides the interface between a second workstation 16b and third and fourth subsystems 12c, 12d. In other embodiments, a greater or lesser number of subsystems 12 of various input and output forms or languages may be connected to a greater or lesser number of integrators 14. Accordingly, the following more detailed description of Figure 7 is not intended to limit the scope of the invention, but is merely representative of how multiple integrators 14 in accordance with the present invention may be interconnected.
In certain embodiments, a display signal 18 from one subsystem 12 may be directed to more than one integrator 14. For example, the display signal 18b of the second subsystem 12b and the display signal 18c of the third subsystem 12c may be directed to both integrators 14a, 14b. If desired or necessary, one or more devices or modules (e.g.
distribution amplifiers 78) may assist in the division, regeneration, or amplification the signals 18b, 18c.
By receiving display signals 18a,18b,18c from the first, second, and third subsystems 12a, 12b, 12c, a first integrator 14a may generate a composite display signal 26a dedicating a window 80 to each display signal 18a, 18b, 18c or a portion thereof. For example, a first window 80a may display the entire content corresponding to a display signal 18a of the first subsystem 12a, a second window 80b may display the entire content of a display signal 18c of the third subsystem 12c, and a third window 80c may display a portion of the display content corresponding to a signal 18b of the second subsystem 12b. Similarly, by receiving display signals 18b, 18c, 18d from the second, third, and forth subsystems 12b, 12c, 12d, a second integrator 14b may generate a composite display signal 26b dedicating a window 80d, 80e, 80f to each corresponding display signal 18b, 18c, 18d or a portion thereof.
In such an arrangement, a user of each workstation 16a, 6b may have shared control of two subsystems 12 and exclusive control of one subsystem 12. However, each user may have exclusive (absent any access limitation to the contrary) control over that user's own display layout. That is, each user, independent of the other, may configure the positioning, sizing, or the like of the various windows 80 in a manner that best suits that individual. Accordingly, a user of the second workstation 16a may prefer a window 80e presenting the entire content of a display signal 18b of the second subsystem 12b, while the user of the first workstation 16a may prefer a window 80c presenting only a selected portion of the content of a display signal 18b of the second subsystem 12b.
In selected embodiments, each user may control any connected subsystem 12 having one or more windows 80 on his or her display 28. Any suitable method may be used to arbitrate control between users. In certain embodiments, only one user may actively control (as opposed to simply monitor) a subsystem 12 at any given time. For example, if desired, the last user to select and activate a window 80 may have control of the corresponding subsystem 12.
If desired, other methods may be used to arbitrate control between users. For example, in some embodiments, a fixed arrangement may be used. In a fixed arrangement, each user may be mapped to specific subsystems 12. Accordingly, only that user may control those specific subsystems 12.
In other embodiments, a dynamic arrangement may be used. For example, in a "round robin" arrangement, any operator may take control of a subsystem 12.
Accordingly, activation of control by one user may automatically release control from all other users.
Such an arrangement may require verbal communication between users. However, it may facilitate rapid changes of control.
In still other embodiments, a priority arrangement may be used. In such an arrangement, higher priority users may take control from lower priority users.
Lower priority users may take control of a subsystem 12 only if a higher priority user has not activated (taken the focus of control for) that subsystem 12. This may require higher priority users to explicitly release control of subsystems 12 when finished.
In certain situations, a user may desire to send one or more commands 32, 34, 36 to a subsystem 12 that is not directly connected to the integrator 14 employed by the user. For example, refernng to the illustrated embodiment, the user of the first workstation 16a may desire to send a command 32, 34, 36 to the third subsystem 12c. While the third subsystem 12c may provide a display signal 18c directly to the first integrator 14a, it may not receive commands 20, 22, 24 directly from the first integrator 14a.
In such situations, the first integrator 14a may recognize that the third subsystem 12c receives commands 20, 22, 24 directly from the second integrator 14b.
Accordingly, the first integrator 14a may pass any commands 32, 34, 36 that it receives for the third subsystem 12c to the second integrator 14b for delivery. In some embodiments, raw, unprocessed, or untranslated commands 32, 34, 36 may be sent from the first integrator 14a to the second integrator 14b. In other embodiments, a first integrator 14a may generate and send processed or translated commands 20, 22, 24 to the second integrator 14b. In selected embodiments, the transfer of commands 32, 34, 36 (translated or otherwise) between integrators 14a, 14b may be carried out by a data link 41.
Referring to Figure 8, in operation, a command processor 40 in accordance with the present invention may receive 82 a command 32, 34, 36 and determine 84 the context thereof.
By determining 84 the context of the command 32, 34, 36 the command processor 40 may determine what should be done with the command 32, 34, 36. In selected embodiments, determining 84 the context of the command 32, 34, 36 may include identifying 86 the user who issued the command 32, 34, 36, which may be done by refernng to the username under which the user is logged in. Determining 84 the context of the command 32, 34, 36 may also include identifying 88 the intended destination of the command 32, 34, 36.
With the user and destination known, a command processor 40 may determine 90 whether the user has access, that is, whether the user has previously been given permission to send such a command 32, 34, 36 to such a destination. If the user does not have access, the command 32, 34, 36 may be ignored 92 and the user may be informed 94 that the command will not be executed due to a lack of proper access. If the user does have access, the command 32, 34, 36 may, if needed, be translated 96.
A command 32, 34, 36 may be translated 96 in accordance with the present invention in a variety of ways. In selected situations, a command 32, 34, 36 may be translated directly 98. For example, a command 32, 34, 36 to restart in one form or language may be translated into a command 20, 22, 24 to restart in a different form or language that may be understood by the destination subsystem 12. Direct translation 98 may be analogized to translating "hello"
in English to "hola" in Spanish.
In other situations, a command 32, 34, 36 may be translated 96 through expansion 100.
In such situations, the command 32, 34, 36 may, in effect, comprise a virtual, shorthand notation for a particular list of actual commands 20, 22, 24. For example, within a command processor 40, a list of commands 20, 22, 24 may be assigned to a specific function key. The list of commands 20, 22, 24 may include commands to more than one destination.
For example, one command 20, 22, 24 on the list may be directed to a first subsysteml2a while another command 20, 22, 24 on the list may be directed to a second subsystem 12b.
Accordingly, when the specific function key is pressed, the various commands 20, 22, 24 contained in the list may be identified. Expansion translation 100 may be analogized to translating "tasks identified in storage location one" to "subsystem one perform tasks one and two, subsystem two perform task five," or the like.
Once translation 96 is complete, the resulting commands 20, 22, 24 may be forwarded 102 to the appropriate destination or destinations. Appropriate destinations may include subsystems 12, selected components or modules within the same integrator 14, selected components or modules within a neighboring integrator 14, or the like. In situations where an expansion translation 100 has resulted in a list of commands directed to various destinations, the commands 20, 22, 24 may be forwarded to the various destinations substantially simultaneously.
S Referring to Figures 9 and 10, to create a display layout 104, a user may first log in 106 at the workstation 16 of a system 10 in accordance with the present invention.
In selected embodiments, at a new user start up, a default setting may display 108 a thumbnail window 110a,1 l Ob, l l Oc for each of the connected subsystems 12a,12b, 12c.
Alternatively, a selected command 32, 34, 36 may trigger a default setting to display 108 a "thumbnail"
or subsized 11 Oa, 1 l Ob, 1 l Oc for each of the connected subsystems 12a, 12b, 12c.
In selected embodiments, a thumbnail 110 may be a complete view of the image defined by a display signal 18. The thumbnail 110 may comprise a real time image 112 of the display signal 18 output by a particular subsystem 12. In generating a thumbnail 110, the image 112 may be reduced in resolution. Accordingly, several thumbnails 110 may fit within a display layout 104.
By reviewing a thumbnail 110a,11 Ob, l l Oc of each connected subsystem 12a,12b,12c, a user may identify the subsystems 12 desired to be included within the display layout 104.
Accordingly, the user may close 114 the thumbnails 110 corresponding to unwanted subsystems 12. In selected situations, an administrator may require selected subsystems 12 to be displayed in at least thumbnail 110 form at all times. In such situations, access limitations may prevent a user from closing 114 thumbnails 110 corresponding to the selected subsystems 12. Thumbnails 110 that are not closed may be sized 116 and positioned 118 according to the preferences of the user.
In selected embodiments in accordance with the present invention, a user may choose 120 to include additional features within a display layout 104. For example, a user may choose 120 to generate 122 one or more full windows 124. In certain embodiments, a full window may be a complete, full-resolution, real-time image 112 defined by the display signal 18 of a selected subsystem 12. Full resolution may reduce the likelihood that artifacts produced by sub-sampling will conceal information, distort grids, or the like. Once generated 122, a full window 124 may be sized 126 and positioned 128 according to the desires or preferences of the user. In some embodiments, sizing of a full window 124 may be limited to "up-converting"
to ensure that possibly significant details are not lost. In other embodiments, sizing 126 of a full window 124 may be prohibited and the full window 124 may simply represent the full resolution image 112 defined by the display signal 18.
If desired, a user may choose 120 to generate 130 one or more subwindows 132.
In certain embodiments, a subwindow 132 may provide a method to highlight and emphasize information that may be critical to the user. For example, in many situations, only a portion of the information displayed in an image 112 is needed by a user. Subwindows 132 may give a user the ability to select and magnify a selected area 134 of the image 112 defined by the display signal 18 of a selected subsystem 12. In selected embodiments, by adjusting the coverage of the selected area 134, the portion of the image 112 displayed within a subwindow 132 may be adjusted.
Once generated 130, a subwindow 132 may be sized 136 and positioned 138 according to the desires or preferences of the user. By sizing 136 a subwindow 132, the effective magnification of the selected area 134 may be controlled. The portion of the image 112 displayed within a subwindow 132 may be updated in real time.
In selected embodiments, a user may choose 120 to generate 140 (e.g. create and display) one or more virtual control panels 142 or graphical control elements 142. In some embodiments, a virtual control panel 142 may comprise a bitmap image of one or more buttons 144, switches 144, knobs 144, or the like that may be activated by the system cursor (e.g.
pointer 30b), a "hot" or special function key, or some other command 32, 34, 36 or data input.
If desired, activation of a button 144, etc. on a virtual control panel 142 may issue one or more commands 32, 34, 36 directed to the operation of a corresponding integrator 14, subsystem 12, or the like.
In certain embodiments, incoming data (e.g. display signal 18) may be used by an integrator 14 to determine whether to activate or change a graphical representation of a lamp, LED, alpha-numeric display, or the like within a virtual control panel 142. In one embodiment, access limitations may ensure that a virtual control panel 142 is always on the top layer and not obscured by any windows 80 or the like. Once generated 140, a virtual control panel 142 may be sized 143 and positioned 145 according to the desires or preferences of the user.
If desired, a user may choose 120 to further customize 146 a display layout 104. In general, any customization that assists a user in differentiating between, or more logically organizing, various windows 80, virtual control panels 142, or the like may be supported within a system 10 in accordance with the present invention. For example, a ,user may select a particular color for the border 148 of a window 80 or virtual control panel 142. A user may also enter a customized name in the title bar 150 portion of the border 148. A
user may further select a default layering scheme for any windows 80, virtual control panels 142, or the like that overlap.
Once a user has created a display layout 104 that reflects preferences, needs, etc. to the extent permitted under application access restrictions, the user may save 152 the display layout 104 so that it may be rapidly regenerated at a future time. If desired, a saved display layout 104 may be assigned 154 to a particular key. Such a key may be an actual or virtual button, switch, S knob, or the like that may be selected or activated by a user with commands 32, 34, 36 entered into an input device 30. In certain embodiments, a key may be renamed 156 to reflect the nature of the display layout assigned 154 thereto. For example, a virtual key on a display 28 may be renamed 156 to "Heating Systems" to indicate that the assigned display layout 104 is a convenient and logical arrangement of the subsystems 12 that control heating.
When activated 158, a key corresponding to a display layout 104 may issue the necessary commands to bring that display layout 104 to the display 28. If desired, a user may create several display layouts 104 to meet needs, facilitate work, and accommodate preferences. In selected embodiments, display layouts 104 may be designed and arranged to permit a user to efficiently perform selected monitoring, tasks, or the like.
For example, all the feedback and commands needed to effectively control heating may be contained within a "Heating Systems" display layout 104, while all the feedback and commands needed to effectively control ingredient allocation may be contained with an "Allocation Systems"
display layout 104.
Having created display layouts 104 that meet one's own needs, facilitate work, and accommodate preferences, a user need not "reinvent the wheel" every time he or she logs in 106 to a system 10 in accordance with the present invention. Once logged in 106, a user may simply activate 158 a key corresponding to the display layout 104 to view. In selected embodiments, display layouts 104 and associated keys may be stored according to username within a system 10 in accordance with the present invention. Thus, when one user is logged on 106 to a workstation 16, he or she may access his or her own display layouts 104. When another user is logged on 106 to the same workstation 16, she may access her own display layouts 104. If desired, integrators 14 interconnected in accordance with the present invention may be configured to share display layouts 104. Accordingly, a user may access his or her display layouts 104 from any one of various workstations 16.
In selected embodiments, an integrator 14 in accordance with the present invention may record current state information for every window 80. State information may include position, size, coverage, whether active or closed, or the like. Accordingly, if an integrator 14 is ever unintentionally powered down, the integrator 14 may return, when power is returned, to the last known state. This may include automatically logging in 106 the last user as well displaying each window 80 in its last known state. Additionally, in certain embodiments, when a window 80 is closed, an integrator 14 may record the last state of that window.
Accordingly, if that window 80 is ever relaunched, it may be presented in its last known state.
Referring to Figure 1 l, in selected embodiments, at startup, the image 160 defined by a composite display signal 26 may include a thumbnail 110 for each connected subsystem 12 and one or more toolbars 162 presenting an array of macros 164 or virtual buttons 164. The title bar 150 of each thumbnail 110 may be "grayed" indicating no thumbnail 110 is activated or has the focus of control. However, each thumbnail 110 may continue to present real time images 112 from the corresponding subsystems 12.
A tool bar 162 in accordance with the present invention may have any macros desired or necessary to facilitate operation of the system 10. In one embodiment, a tool bar 162 may include log in 164a, save 164b, recall 164c, layout 164d, shift 164e, and help 164f macros.
A log in macro 164a may allow a user to be identified by the system 10. In selected embodiments, when a user logs in 106, the display layout 104 may continue with the current layout 104 or change to the layout 104 last employed by the user. In some embodiments, the macros 164 displayed on a tool bar 162 may vary according to the preferences of each user.
Accordingly, when a user logs in 106, the tool bar 162 may change to an arrangement last employed or defined by the user.
A save macro 164b may immediately save 152 the current display layout 104. In selected embodiments, the layout buttons 164d or macros 164d may "gray" for a selected period of time. During this period of time, any of the layout macros 164d may be assigned 154 (or reassigned) to store the newly saved 152 display layout 104. If desired, the period of time wherein a layout macro 164d may be assigned 154 a new display layout 104 may be controlled as a setup option.
A recall macro 164c may recall the last display layout 104 saved by the particular user.
The last display layout 104 may be recalled even if that layout 104 was also assigned to a specific layout macro 164d. In selected embodiments, as a setup option, a recall macro 164c may be set as a single register, a stack, or a circular buffer with a selected depth (e.g. up to 16 saves).
In selected embodiments, one or more layout macros 164d may be included as part of a tool bar 162. Activating 158 a layout macro 164d may bring to the display 28 the last display layout 104 that was assigned 154 to that layout macro 164d. In some embodiments, the name applied to a layout macro 164d may be customized by a user.
A shift macro 164e may be configured to control which layout macros 164d are displayed on the tool bar 162. For example, in one embodiment, a tool bar 162 may only display five layout macros 164d of a total of ten. Accordingly, by selecting the shift macro 164e, a user may toggle between layout macros 164d one through five and layout macros 164d six through ten. In embodiments employing more than two sets of layout macros 164d, a shift macro 164e may cycle rather than toggle. If desired, the shift macro 164e may be visible only if there are multiple sets of layout macros 164d to display. In selected embodiments, the number of sets and the number of layout macros 164d within a set may be controlled as a setup option.
Activation of a help macro 164f may invoke a help system. In selected embodiments, a help system may be stored locally. In other embodiments, a help system may be stored remotely. For example, in one embodiment, activation of the help macro 164f launches an Internet browser addressed to a website containing the help system.
In selected embodiments, macros 164 other than those illustrated in Figure 11 may be included. For example, some embodiments in accordance with the present invention may include a setup macro 164. Activation of a setup macro 164 may permit a user to enter a system setup mode. The available setup options may depend upon access limitations put in place by an administrator. However, in one embodiment, various options to further customize 146 a display layout 104 may be presented.
Referring to Figure 12, in certain embodiments, when a window 80 is activated or selected for the focus of control, the title bar 150 may be highlighted, colored, or otherwise changed from an inactive "gray." For example, in the illustrated embodiment, the "Automation" subsystem 12 has been selected for the focus of control.
Accordingly, the windows 80 (e.g. thumbnail window 110 and subwindow 132) corresponding to the "Automation" subsystem 12 have title bars 150 that are colored.
The title bar 150 of a window 80 in accordance with the present invention may include one or more macros 166 or virtual buttons 166. Suitable buttons 166 may include subwindow buttons 166a, sizing buttons 166b, closing buttons 166c, or the like.
In certain embodiments, selecting a subwindow button 166a on a thumbnail 110 may allow a user to create (i.e. define the coverage of) a subwindow 132. If, at some point, a subwindow 132 for that subsystem 12 had been created, selecting a subwindow button 166a may recall the last defined subwindow 132. That is, the new subwindow 132 may have the same size, coverage, and position as the previous subwindow 132. Selecting a subwindow button 166a on a subwindow 132 may enable a user to adjust the coverage of the selected area 134, and consequently, the coverage of the subwindow 132.
In selected embodiments, as a setup option, a sub-window button 166a on a thumbnail 110 or full window 124 may either toggle the border delineating the selected area 134 between "on" and "off' or permit modification of the coverage of the subwindow 132. If the border illustrating the selected area 134 is off and the operator activates the subwindow button 166a on the sub-window 132, the border may appear and its position or extent may be manipulated to change the coverage of the selected area 134, and consequently, the coverage of the subwindow 132.
In certain embodiments, a sizing button 166b, when selected, may allow a user to determine the size (e.g. in pixels) that the corresponding window 80 will occupy within the image 160 present on the display 28. Changing the size of a window 80 need not change the percentage of the image 112 generated by the subsystem 12 that is shown. In selected embodiments, only thumbnails 110 and subwindows 132 may be sized.
When activated or selected, a close button 166c in accordance with the present invention may "close" the corresponding window 80. That is, the window 80 may be removed from the image 160 produced on the display 28. In selected embodiments, only full windows 124 and subwindows 132 may have close buttons 166c. In such embodiments, thumbnails 110 may not be "closed." Accordingly, a thumbnail 110 for each connected subsystem 12 may be included as a navigation, monitoring, or selection aid in every display layout 104.
Referring to Figure 13, a full window 124 in accordance with the present invention may be generated or launched in any suitable manner. For example, in one embodiment, a full window 124 may be launched by double clicking over the thumbnail 110 of the subsystem 12 for which the user desires a full window 124. When a user is done with a full window 124, it may be "closed" by selecting an appropriate close button 166c. In selected embodiments, if a full window 124 is subsequently relaunched, it may take the size and positioning of the most recent full window 124 for that subsystem 12.
A virtual control panel 142 may take any shape, configuration, or complexity desired by a user. Selection or activation of a button 144 on a virtual control panel 142 may cause one or more commands to be issued to one or more destinations. In some embodiments, status information from a controlled system may be communicated through changes in the appearance of the virtual control panel 142. For example, if a particular sensor of a selected subsystems 12 registers a reading above or below at critical value, one or more "lights", markers, or colors may be activated to uniquely illuminate the virtual control panel 142 and draw attention onto its status.
In selected embodiments, ari integrator 14 in accordance with the present invention may host software to assist a user in graphically designing and generating a virtual control panel 142. Additionally, such software may also permit a user to articulate the various commands 32, 34, 36 to be issued upon selection, activation, adjustment, or the like of a button 144, switch 144, knob 144, dial, graduated control, etc. of the virtual control panel 142.
The present invention may be embodied in other specific forms without departing from its basic functionality or essential characteristics. The described embodiments are to be considered in all respects only as illustrative, and not restrictive. The scope of the invention is, therefore, indicated by the appended claims, rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.
,What is claimed and desired to be secured by Patent is:
Figure 4 is a partial schematic block diagram of an embodiment of a display processor equipped with an addressed buffer in accordance with the present invention;
Figure 5 is a partial schematic block diagram of an embodiment of a display processor in accordance with the present invention providing a composite display signal to multiple workstation displays;
Figure 6 is a schematic block diagram of an embodiment of a command processor from an integrator in accordance with the present invention;
Figure 7 is a schematic block diagram of a system in accordance with the present invention comprising a first integrator interfacing between a first workstation and first multiple subsystems, a second integrator interfacing between a second workstation and second multiple subsystems, and a data link connecting the first integrator to the second integrator;
Figure 8 is a schematic block diagram of one embodiment of a method for operating a command processor in accordance with the present invention;
Figure 9 is a schematic block diagram of one embodiment of a method for creating display layouts in accordance with the present invention;
Figure 10 is a schematic block diagram of an embodiment of a display layout in accordance with the present invention;
Figure 11 is a schematic illustration of a screen shot showing one embodiment of a display layout produced in accordance with the present invention to include a tool bar and various "thumbnail" windows;
Figure 12 is a schematic illustration of a screen shot showing an alternative embodiment of a display layout produced in accordance with the present invention to include a tool bar, various thumbnail windows, and a subwindow corresponding to one of the thumbnail windows; and Figure 13 is a schematic illustration of a screen shot showing another alternative embodiment of a display layout produced in accordance with the present invention to include a tool bar, various thumbnail windows, a full window corresponding to one of the thumbnail windows, and a virtual control panel.
DETAILED DESCRIPTION OF SELECTED EMBODIMENTS
It will be readily understood that the components of the present invention, as generally described and illustrated in the drawings herein, could be arranged and designed in a wide variety of different configurations. Thus, the following more detailed description of the embodiments of the system and method of the present invention, as represented in the drawings, is not intended to limit the scope of the invention, as claimed, but is merely representative of the various embodiments of the invention. The invention will be best understood by reference to the drawings, wherein like parts are designated by like numerals throughout.
Referring to Figure 1, selected embodiments in accordance with the present invention may include a system 10 providing integrated control over one or more subsystems 12.
Control may be defined in terms of a control loop. A control loop may include two flows of information. Information flowing out may be referred to as a command.
Information flowing in may be referred to as feedback. Feedback allows the user or system issuing a command to verify that the command was properly received, understood, and implemented by the system or subsystem being controlled. Accordingly, control may be defined as a process where in commands are issued and verification feedback is received.
A system 10 providing integrated control may be any arrangement where a user, workstation, or the like is empowered with hardware, software, or some combination thereof permitting the issuance of commands to, and the reception of feedback from, multiple subsystems 12 through a convenient and compact interface. In selected embodiments in accordance with the present invention, a system 10 providing integrated control (i. e. an Integrated Control System or ICS) may include an integrator 14 interfacing between a workstation 16 and multiple subsystems 12.
In certain applications, one or more subsystems 12 may be designed with a particular control system in mind. In such applications, a subsystem 12a may output feedback (e.g.
display signal 18a) in a particular form that may be analogized to a.
particular language.
Similarly, that subsystem 12a may receive commands (e.g. key commands 20a) in a particular form that may also be analogized to a particular language. Depending on the application, the display signals 18b and key commands 20b of a second subsystem 12b may be in different languages or otherwise incompatible with those of the first subsystem 12a. In such applications, the subsystems 12a, 12b may be considered physically disparate or may be said to communicate through display signals 18a, 18b and key commands 20a, 20b that are physically disparate in form.
Physically disparate subsystems 12 are often the result of advances in technology. For example, a first subsystem 12a may have been designed and built when displays of a particular kind where considered standard. Accordingly, the first subsystem 12a may have been designed to output display signals 18a in a form understood by such displays. However, as technology advanced, new display technology may have been developed. A second subsystem 12b, developed in more recent times, may be designed to output display signals 18b in a form understood by the new displays. Thus, the display signals 18a of the first subsystem 12a may be incompatible with the display signals 18b of the second subsystem 12b.
In the illustrated embodiment of Figure 1, an integrator 14 in accordance with the present invention is connected to three representative subsystems 12a, 12b, 12c. In other embodiments, a greater or lesser number of subsystems 12 of various input and output forms or languages may be connected to an integrator 14. Accordingly, the following more detailed description of Figure 1 is not intended to limit the scope of the invention, but is merely representative of selected subsystems 12 to which integrated control in accordance with the present invention may be applied.
A first subsystem 12a provides an example of an older computer system using DOS
(i.e. an operating system used on IBM personal computers and compatible machines) to run applications. The first subsystem 12a may be designed to output a display signal 18a compatible with a monochrome display. However, rather than sending the display signal 18a to a monochrome display, the first subsystem 12a may send the display signal 18a to an integrator 14. Similarly, rather than receiving key commands 20a directly from a keyboard, the first subsystem 12a may receive key commands 20a from the integrator 14.
A second subsystem 12b provides an example of a more advanced computer system designed to interface with a keyboard, pointing device (e.g. a "mouse"), and a color, higher resolution display. Rather than sending the display signal 18b in RGB form to a color, higher-resolution display, the second subsystem 12b may send the display signal 18b to the integrator 14. Similarly, rather than receiving key commands 20b and pointer commands 22 directly from a keyboard or mouse, the second subsystem 12b may receive key commands 20b and pointer commands 22 from the integrator 14.
A third subsystem 12c provides an example of a customized subsystem. Such a subsystem 12c may include a first serial communication port for outputting a display signal 18c in the form of ASCII characters to a character terminal. Rather than sending the display signal 18c to a character terminal, the third subsystem 12c may send the display signal 18c to the integrator 14. The first serial port, or a second serial port or other type of interface, may be connected to the integrator 14 to facilitate communication of control commands 24.
In addition to the monochrome, RGB, and ASCII display signals 18 discussed hereinabove, other suitable display signals 18 that may be received and processed by an integrator in accordance with the present invention may include any variety of component, composite, or compressed signal, whether digital or analog (e.g. YCbCr, YPbPr, NTSC, PAL, S-Video, MPEG, JPEG, or the like). In selected embodiments, display signals 18 may encompass more than just images. For example, any voltage, current, contact condition, encoded digital signal, value corresponding to a state of a component, and the like may be used to control any type of display device or indicator device and may be considered a display signal.
In selected embodiments, an integrator 14 may function as a translator between a workstation 16 and the subsystems 12. An integrator 14 may translate the display signals 18, received from the subsystems 12 in various, physically disparate forms, into a common form.
Once in a common form, the display signals 18 may be integrated into a composite display signal 26 that may be passed from the integrator 14 to a display 28 of a workstation 16. A
workstation 16 in accordance with the present invention may include any combination of displays 28. If desired, one or more of the displays 28 utilized in a workstation 16 may be a high-resolution display.
A workstation 16 in accordance with the present invention may also include any combination of input devices 30. Suitable input devices 30 may include control panels, keyboards, pointers or cursor-control devices, or the like. In the illustrated embodiment, a workstation 16 includes three input devices 30 (i.e. a keyboard 30a, pointer 30b, and custom control panel 30c). The keyboard 30a may communicate key commands 32 to an integrator 14. The pointer 30b may communicate pointer commands 34 to an integrator 14.
The custom control panel 30c may communicate serial, parallel, or other types of commands 36 to an integrator 14. An integrator 14 may translate the commands 32, 34, 36 received from the various input devices 30 into commands 20, 22, 24 that may be understood by the various subsystems 12 to which the commands 32, 34, 36 are directed.
Referring to Figure 2, an integrator 14 in accordance with the present invention may include a display processor 38 and a command processor 40. A display processor 38 may receive display signals 18 from the connected subsystems 12, translate (if necessary) the display signals 18 to a common or compatible form, and generate a composite display signal 26. A command processor 40 may receive commands 32, 34, 36 from a workstation, translate (if necessary) the commands 32, 34, 36 into commands 20, 22, 24 understood by the various subsystems 12 to which the commands 32, 34, 36 are directed, and forward the commands 20, 22, 24 to the appropriate subsystems 12.
_g_ In selected embodiments, a command processor 40 may communicate selected commands, received from a workstation 16, to the display processor 38. For example, a command processor 40 may pass commands directed to image opening, closing, sizing, positioning, or the like to the display processor 38 for implementation.
Accordingly, an integrator 14 in accordance with the present invention may provide the mechanism through which a user may select, size, position, and otherwise manipulate real-time visual feedback from multiple subsystems 12.
If desired, an integrator 14 in accordance with the present invention may include a data link 41. In certain embodiments, a data link 41 may connect a command processor 40 of one integrator 14 to the command processor 40 of another integrator 14.
Accordingly one integrator 14 may exert control over another integrator 14. Additionally, a data link 41 may allow an integrator 14 to be controlled by an external data processing system.
In one embodiment, such a data link 41 may comprise an IEEE 802.3 network interface.
Referring to Figure 3, a display processor 38 in accordance with the present invention may include various interface modules 42. One interface module 42 may service each incoming display signal 18. In selected embodiments, an interface module 42 may function as an emulator, providing the mechanical and electrical requirements normally presented by the display to which the display signal 18 is sent. For example, an interface module 42 may provide the mechanical attachment, voltage, impedance, or the like that would normally be provided by the display device.
After passing through an interface module 42, a display signal 18 may enter an image structure converter 44. An image structure converter 44 may convert the display signal 18 to a common image structure. In embodiments where an incoming display signal l8 is already in the common image structure, it may be passed through without alteration:
Any suitable structure may suffice for a common image structure. In one embodiment, an image structure converter may convert all incoming display signals 18 to an RGB structure of some predetermined resolution, for example.
In general, an image structure converter 44 may apply any process necessary to effectuate a conversion. For example, in certain embodiments, an image structure converter 44 may apply an eight-bit, linear-RGB, progressive scan. In embodiments where the display signal 18 is interlaced, monochrome analog, the image structure converter 44 may de-interlace the display signal 18 and convert the luminance information into the common image structure.
In embodiments where the display signal 18 comprises serial ASCII characters, the image structure converter may create a virtual image of a character terminal based on the incoming display signal 18, then transform the virtual image into the common image structure.
Display signals 18 of common image structure may be passed to frame rate converters 46. A frame rate converter 46 may convert each incoming display signal 18 to a common frame rate. A common frame rate may be any suitable value. In one embodiment, a frame rate converter may convert all incoming display signals 18 to seventy progressive frames per second. If desired or necessary, a display processor 38 may include a clock 48 operably connected to support the operation of the frame rate converter 46.
Display signals 18 of common image structure and frame rate may be passed to image resizers 50. An image resizer 50 may manipulate incoming display signals 18 to permit multiple display signals 18 to be included within the composite display signal 26. For example, a display 28 of a workstation 16 may have a limited number of pixels.
For illustrative purposes, it may be assumed that a display 28 is limited to 1600 x 1200 pixels. A user may desire a window of 640 x 480 pixels on the display 28 to present a display signal originally sized for a display of 800 x 600 pixels. In such a situation, an image resizer 50 may "down-convert" the display signal 18 by one and one quarter times its original, linear pixelation.
Again for illustrative purposes, one may assume that a user desires to create another window of 480 x 360 pixels on the display to present a display signal 18 originally sized for a display of 320 x 240 pixels. In such a situation, an image resizer 50 may "up-convert" the display signal 18 by one and one half. In certain embodiments, a display signal 18 may be up-converted or down-converted by a factor of up to eight.
In selected embodiments, an image resizer 50 may up-convert or down-convert display signals 18 according to commands received from an image controller 52. In certain embodiments, an image controller 52 may determine whether to resize a display signal 18 by comparing the size of the display signal 18 to the size of the window in which the display signal 18 is to be presented.
In certain embodiments, a display processor 3 8 in accordance with the present invention may include a graphics generator 54. A graphics generator 54 may add various graphic features to the composite display signal 26. For example, in selected embodiments a graphics generator 54 may add borders around windows, buttons, and other control icons as well as macros that facilitate control over the functions of an integrator 14 or any subsystem 12 connected to the integrator 14. In certain embodiments, a graphics generator 54 may be synchronized by a clock 48 with the processed display signals 18.
In selected embodiments, an image controller 52 may control the various operations and processes of a display processor 3 8. In some embodiments, an image controller 52 may receive commands from a command processor 40. Such commands may reflect how a user desires to modify the composite display signal 26 to produce a desired visual output on a display 28 of a workstation 16. For example, an image controller 52 may receive, from a command processor 40, commands with respect to the opening, closing, sizing, positioning, and layering of various windows defined by the composite display signal 16. An image controller 52 may also receive commands with respect to which image area of a particular display signal 18 is to be displayed within any particular window.
Under the control of an image controller 52, a multiplexes 56 may receive and combine the processed display signals 18 of the connected subsystems 12, graphic features generated by the graphics generator 54, and input, as needed, from a clock 48 to form a composite display signal 26. The composite display signal 26 may be forwarded by a display driver 58 to a display 28 of a workstation 16.
Referring to Figure 4, a display processor 38 in accordance with the present invention may include one or more buffers 60 as needed. For example, a buffer 60a, 60b, 60c may be assigned to each display signal 18a, 18b, 18c as it transitions from the image resizer 50 to the multiplexes 56. Physically, such buffers 60a, 60b, 60c may be independent components or subcomponents contained within either or both of the image resizer 50 and the multiplexes 56.
In selected embodiments, a buffer 60d may be positioned logically between the image controller 52 and multiplexes 56 while being positioned physically as an independent component or a subcomponent contained within either or both of the two.
In one embodiment, a buffer 60d between an image controller 52 and a multiplexes 56 may be an addressed buffer 60d. A conventional buffer may provide an array or matrix of the same size or dimension as the display to which the display signal will be sent. For example, a conventional buffer for an RGB display of 1600 x 1200 pixels may comprise a 1600 x 1200 matrix with each element containing an RGB value for the corresponding pixel.
In contrast, an addressed buffer 60d in accordance with the present invention may comprise an array or matrix with each element containing either pixel color information (e.g. an RGB value) or an address providing one element of indirection wherein pixel color information may be found for the corresponding pixel.
For example, an address contained within an addressed buffer 60d may direct the multiplexes 56 to look for the actual pixel color information in some other buffer 60. In selected embodiments, to facilitate the determination of whether an element contains pixel color information or an address, various bits of data corresponding to each element may identify that element as corresponding to pixel color information or an address. An addressed buffer 60d in accordance with the present invention may simplify the hardware and software required by the display processor 38. For example, control code for the multiplexes 56 may be contained within the addressed buffer 60d.
Refernng to Figure 5, in selected embodiments, a workstation 16 in accordance with the present invention may include two or more displays 28. Multiple displays 28 may be desirable when numerous subsystems 12 are included within the system 10 or when some of the subsystems 12 provide display signals 18 of comparatively higher resolution.
In certain embodiments, multiple displays 28 may be treated as a single logical display.
That is, a multiplexes 56 may partition the composite display image 26 into as many portions as there are displays 28. Each portion of the composite display signal 26 may then be forwarded to a corresponding display 28. For example, in one embodiment, a multiplexes 56 may partition the composite display signal 26 into first and second portions.
The first portion may be forwarded by a first display driver 58a to a first display 28a of a workstation 16. The second portion may be forwarded by a second display driver 58b to a second display 28b of the workstation 16.
Referring to Figure 6, in general, a command processor 40 in accordance with the present invention may process commands 32, 34, 36 of two varieties or types. A
first type may include commands 32, 34, 36 intended by a user for one or more subsystems 12.
A command 32, 34, 36 to adjust the heat generated in a particular temperature zone control by a first subsystem 12a may be an example of a command 32, 34, 36 of the first type. A
second type may include commands 32, 34, 36 intended by a user for the integrator 14 itself. A command 32, 34, 36 to open, close, size, position, or activate a window presented on the display 28 of a workstation 16 may be an example of a command 32, 34, 36 of the second type.
Commands 32, 34, 36 of either type may be entered in any .suitable manner. For example, commands 32, 34, 36 may be entered by clicking with a pointer 30b, dragging with a pointer 30b, clicking and dragging with a pointer 30b, typing on a keyboard 30a, or manipulating special function keys, knobs, switches, etc. on a keyboard 30a or control panel 30c or virtual buttons, knobs, dials, etc. on a screen image console.
In certain embodiments, a command processor 40 may include various interface modules 62. One interface module 62 may service each incoming command 32, 34, 36 and outgoing command 20, 22, 24. Similar to the interface modules 42 of a display processor 38, in selected embodiments, the interface modules 62 of a command processor 40 may function as emulators, providing the mechanical and electrical requirements normally presented by the corresponding systems or input devices. That is, for example, interface modules 62 for incoming commands 32, 34, 36 may provide the mechanical attachment, voltage, impedance, or the like that a system would normally provide to the input devices 30.
Similarly, interface modules 62 for outgoing commands 20, 22, 24 may provide the mechanical attachment, voltage, impedance, or the like that a system would normally receive from an input device.
In selected embodiments, a command processor 40 may include a command controller 64. A command controller 64 may receive incoming commands 32, 34, 36 from selected interface modules 62 and issue commands 20, 22, 24 to others 62. In certain embodiments, a command controller 64 may include a CPU 66 operably connected to a memory device 68.
The memory device 68 may include data structures in the form of executables and operational data. The data structures may comprise various modules. For example, in one embodiment, the data structures form a translation module 70, access control module 72, topology tracking module 74, and layout module 76.
A translation module 70 in accordance with the present invention may be configured to receive incoming commands 32, 34, 36 and determine the destination thereof.
If the commands 32, 34, 36 are directed to a destination (e.g. subsystem 12, image controller 52, etc.) receiving inputs in a different form or language than that of the commands 32, 34, 36, the commands 32, 34, 36 may be translated by the translation module 70 into commands 20, 22, 24 of proper form. In selected embodiments, translation of commands 34 from a pointer 30b may include appropriate scaling of cursor movements. Commands 20, 22, 24 of proper form may be forwarded by the translation module 70 to the destination.
An access control module 72 in accordance with the present invention may be configured to receive, store, and enforce access limitations corresponding to any user. For example, in selected embodiments, each user of a system 10 in accordance with the present invention may be required to log in with a username and password. An access module 72 may receive the username and apply a corresponding set of access limitations. An access limitation may be any restriction on what commands 32, 34, 36 are forwarded by the integrator 14 to the intended destination (e.g. subsystem 1~2, image controller 52, etc.).
For example, in selected situations, it may be desirable to limit which users are able to restart a subsystem 12. Accordingly, an access limitation may indicate that if a particular user directs a restart command (e.g. Control-Alt-Delete) to a subsystem 12, that command is to be ignored and not forwarded. In other situations, an access limitation may prevent a particular user from opening or closing a particular window presenting the display signal 18 of a particular subsystem 12. In certain embodiments, an access control module 72 may receive access limitations for the various users from an administrator whose username is associated with substantially no access limitations.
In selected embodiments, an access control module 72 may control access on a user-by-user, or command-by-command basis. For example, each username may be coupled or associated with a list of prohibited (or, if more convenient, permitted) commands.
Alternatively, an access control module 72 may control access according to a series of access levels. In such embodiments, each access level may be associated with selected access privileges. The access granted a user may be controlled by selecting the access level assigned to the user. For example, users assigned an access level of five may have fewer access limitations than users assigned an access level of three.
A topology tracking module 74 in accordance with the present invention may be configured to maintain a current record of all subsystems 12 connected to an integrator 14. In selected embodiments, a topology tracking module 74 may also maintain a current record of the various input forms or languages used by the various subsystems 12.
Accordingly, a topology tracking module 74 may work in cooperation with a translation module 70 to identify how (i.e. into what forms or languages) the various commands 32, 34, 36 are to be translated.
In certain embodiments, a topology tracking module 74 may be configured to maintain a current record of all subsystems 12 associated with any neighboring integrator 14 connected via a data link 41. Such a topology tracking module 74 may also maintain a current record of the various input forms or languages used by the subsystems 12 so connected.
Accordingly, a topology tracking module 74 may facilitate translation and forwarding of commands 32, 34, 36 and display signals 18 from one integrator 14 to another 14.
A layout module.76 in accordance with the present invention may be configured to support the creation, storage, and recall of various display layouts. A
display layout may be any arrangement of windows, virtual control panels, or the like defined or generated by the composite display signal 26 on the display 28 of a workstation 16. In selected embodiments, a user may issue commands 32, 34, 36 until a desired display layout is achieved. When commanded, the desired display layout may be saved by the layout module 76.
Later, when a user desires to view a saved display layout, he may issue commands 32, 34, 36 causing the layout module 76 to retrieve or recall that particular display layout.
Referring to Figure 7, in selected embodiments, two or more integrators 14 in accordance with the present invention may be interconnected. In the illustrated embodiment, a first integrator 14a is connected to a second integrator 14b via data link 41. The first integrator 14a provides the interface between a first workstation 16a and first and second subsystems 12a, 12b. The second integrator 14b provides the interface between a second workstation 16b and third and fourth subsystems 12c, 12d. In other embodiments, a greater or lesser number of subsystems 12 of various input and output forms or languages may be connected to a greater or lesser number of integrators 14. Accordingly, the following more detailed description of Figure 7 is not intended to limit the scope of the invention, but is merely representative of how multiple integrators 14 in accordance with the present invention may be interconnected.
In certain embodiments, a display signal 18 from one subsystem 12 may be directed to more than one integrator 14. For example, the display signal 18b of the second subsystem 12b and the display signal 18c of the third subsystem 12c may be directed to both integrators 14a, 14b. If desired or necessary, one or more devices or modules (e.g.
distribution amplifiers 78) may assist in the division, regeneration, or amplification the signals 18b, 18c.
By receiving display signals 18a,18b,18c from the first, second, and third subsystems 12a, 12b, 12c, a first integrator 14a may generate a composite display signal 26a dedicating a window 80 to each display signal 18a, 18b, 18c or a portion thereof. For example, a first window 80a may display the entire content corresponding to a display signal 18a of the first subsystem 12a, a second window 80b may display the entire content of a display signal 18c of the third subsystem 12c, and a third window 80c may display a portion of the display content corresponding to a signal 18b of the second subsystem 12b. Similarly, by receiving display signals 18b, 18c, 18d from the second, third, and forth subsystems 12b, 12c, 12d, a second integrator 14b may generate a composite display signal 26b dedicating a window 80d, 80e, 80f to each corresponding display signal 18b, 18c, 18d or a portion thereof.
In such an arrangement, a user of each workstation 16a, 6b may have shared control of two subsystems 12 and exclusive control of one subsystem 12. However, each user may have exclusive (absent any access limitation to the contrary) control over that user's own display layout. That is, each user, independent of the other, may configure the positioning, sizing, or the like of the various windows 80 in a manner that best suits that individual. Accordingly, a user of the second workstation 16a may prefer a window 80e presenting the entire content of a display signal 18b of the second subsystem 12b, while the user of the first workstation 16a may prefer a window 80c presenting only a selected portion of the content of a display signal 18b of the second subsystem 12b.
In selected embodiments, each user may control any connected subsystem 12 having one or more windows 80 on his or her display 28. Any suitable method may be used to arbitrate control between users. In certain embodiments, only one user may actively control (as opposed to simply monitor) a subsystem 12 at any given time. For example, if desired, the last user to select and activate a window 80 may have control of the corresponding subsystem 12.
If desired, other methods may be used to arbitrate control between users. For example, in some embodiments, a fixed arrangement may be used. In a fixed arrangement, each user may be mapped to specific subsystems 12. Accordingly, only that user may control those specific subsystems 12.
In other embodiments, a dynamic arrangement may be used. For example, in a "round robin" arrangement, any operator may take control of a subsystem 12.
Accordingly, activation of control by one user may automatically release control from all other users.
Such an arrangement may require verbal communication between users. However, it may facilitate rapid changes of control.
In still other embodiments, a priority arrangement may be used. In such an arrangement, higher priority users may take control from lower priority users.
Lower priority users may take control of a subsystem 12 only if a higher priority user has not activated (taken the focus of control for) that subsystem 12. This may require higher priority users to explicitly release control of subsystems 12 when finished.
In certain situations, a user may desire to send one or more commands 32, 34, 36 to a subsystem 12 that is not directly connected to the integrator 14 employed by the user. For example, refernng to the illustrated embodiment, the user of the first workstation 16a may desire to send a command 32, 34, 36 to the third subsystem 12c. While the third subsystem 12c may provide a display signal 18c directly to the first integrator 14a, it may not receive commands 20, 22, 24 directly from the first integrator 14a.
In such situations, the first integrator 14a may recognize that the third subsystem 12c receives commands 20, 22, 24 directly from the second integrator 14b.
Accordingly, the first integrator 14a may pass any commands 32, 34, 36 that it receives for the third subsystem 12c to the second integrator 14b for delivery. In some embodiments, raw, unprocessed, or untranslated commands 32, 34, 36 may be sent from the first integrator 14a to the second integrator 14b. In other embodiments, a first integrator 14a may generate and send processed or translated commands 20, 22, 24 to the second integrator 14b. In selected embodiments, the transfer of commands 32, 34, 36 (translated or otherwise) between integrators 14a, 14b may be carried out by a data link 41.
Referring to Figure 8, in operation, a command processor 40 in accordance with the present invention may receive 82 a command 32, 34, 36 and determine 84 the context thereof.
By determining 84 the context of the command 32, 34, 36 the command processor 40 may determine what should be done with the command 32, 34, 36. In selected embodiments, determining 84 the context of the command 32, 34, 36 may include identifying 86 the user who issued the command 32, 34, 36, which may be done by refernng to the username under which the user is logged in. Determining 84 the context of the command 32, 34, 36 may also include identifying 88 the intended destination of the command 32, 34, 36.
With the user and destination known, a command processor 40 may determine 90 whether the user has access, that is, whether the user has previously been given permission to send such a command 32, 34, 36 to such a destination. If the user does not have access, the command 32, 34, 36 may be ignored 92 and the user may be informed 94 that the command will not be executed due to a lack of proper access. If the user does have access, the command 32, 34, 36 may, if needed, be translated 96.
A command 32, 34, 36 may be translated 96 in accordance with the present invention in a variety of ways. In selected situations, a command 32, 34, 36 may be translated directly 98. For example, a command 32, 34, 36 to restart in one form or language may be translated into a command 20, 22, 24 to restart in a different form or language that may be understood by the destination subsystem 12. Direct translation 98 may be analogized to translating "hello"
in English to "hola" in Spanish.
In other situations, a command 32, 34, 36 may be translated 96 through expansion 100.
In such situations, the command 32, 34, 36 may, in effect, comprise a virtual, shorthand notation for a particular list of actual commands 20, 22, 24. For example, within a command processor 40, a list of commands 20, 22, 24 may be assigned to a specific function key. The list of commands 20, 22, 24 may include commands to more than one destination.
For example, one command 20, 22, 24 on the list may be directed to a first subsysteml2a while another command 20, 22, 24 on the list may be directed to a second subsystem 12b.
Accordingly, when the specific function key is pressed, the various commands 20, 22, 24 contained in the list may be identified. Expansion translation 100 may be analogized to translating "tasks identified in storage location one" to "subsystem one perform tasks one and two, subsystem two perform task five," or the like.
Once translation 96 is complete, the resulting commands 20, 22, 24 may be forwarded 102 to the appropriate destination or destinations. Appropriate destinations may include subsystems 12, selected components or modules within the same integrator 14, selected components or modules within a neighboring integrator 14, or the like. In situations where an expansion translation 100 has resulted in a list of commands directed to various destinations, the commands 20, 22, 24 may be forwarded to the various destinations substantially simultaneously.
S Referring to Figures 9 and 10, to create a display layout 104, a user may first log in 106 at the workstation 16 of a system 10 in accordance with the present invention.
In selected embodiments, at a new user start up, a default setting may display 108 a thumbnail window 110a,1 l Ob, l l Oc for each of the connected subsystems 12a,12b, 12c.
Alternatively, a selected command 32, 34, 36 may trigger a default setting to display 108 a "thumbnail"
or subsized 11 Oa, 1 l Ob, 1 l Oc for each of the connected subsystems 12a, 12b, 12c.
In selected embodiments, a thumbnail 110 may be a complete view of the image defined by a display signal 18. The thumbnail 110 may comprise a real time image 112 of the display signal 18 output by a particular subsystem 12. In generating a thumbnail 110, the image 112 may be reduced in resolution. Accordingly, several thumbnails 110 may fit within a display layout 104.
By reviewing a thumbnail 110a,11 Ob, l l Oc of each connected subsystem 12a,12b,12c, a user may identify the subsystems 12 desired to be included within the display layout 104.
Accordingly, the user may close 114 the thumbnails 110 corresponding to unwanted subsystems 12. In selected situations, an administrator may require selected subsystems 12 to be displayed in at least thumbnail 110 form at all times. In such situations, access limitations may prevent a user from closing 114 thumbnails 110 corresponding to the selected subsystems 12. Thumbnails 110 that are not closed may be sized 116 and positioned 118 according to the preferences of the user.
In selected embodiments in accordance with the present invention, a user may choose 120 to include additional features within a display layout 104. For example, a user may choose 120 to generate 122 one or more full windows 124. In certain embodiments, a full window may be a complete, full-resolution, real-time image 112 defined by the display signal 18 of a selected subsystem 12. Full resolution may reduce the likelihood that artifacts produced by sub-sampling will conceal information, distort grids, or the like. Once generated 122, a full window 124 may be sized 126 and positioned 128 according to the desires or preferences of the user. In some embodiments, sizing of a full window 124 may be limited to "up-converting"
to ensure that possibly significant details are not lost. In other embodiments, sizing 126 of a full window 124 may be prohibited and the full window 124 may simply represent the full resolution image 112 defined by the display signal 18.
If desired, a user may choose 120 to generate 130 one or more subwindows 132.
In certain embodiments, a subwindow 132 may provide a method to highlight and emphasize information that may be critical to the user. For example, in many situations, only a portion of the information displayed in an image 112 is needed by a user. Subwindows 132 may give a user the ability to select and magnify a selected area 134 of the image 112 defined by the display signal 18 of a selected subsystem 12. In selected embodiments, by adjusting the coverage of the selected area 134, the portion of the image 112 displayed within a subwindow 132 may be adjusted.
Once generated 130, a subwindow 132 may be sized 136 and positioned 138 according to the desires or preferences of the user. By sizing 136 a subwindow 132, the effective magnification of the selected area 134 may be controlled. The portion of the image 112 displayed within a subwindow 132 may be updated in real time.
In selected embodiments, a user may choose 120 to generate 140 (e.g. create and display) one or more virtual control panels 142 or graphical control elements 142. In some embodiments, a virtual control panel 142 may comprise a bitmap image of one or more buttons 144, switches 144, knobs 144, or the like that may be activated by the system cursor (e.g.
pointer 30b), a "hot" or special function key, or some other command 32, 34, 36 or data input.
If desired, activation of a button 144, etc. on a virtual control panel 142 may issue one or more commands 32, 34, 36 directed to the operation of a corresponding integrator 14, subsystem 12, or the like.
In certain embodiments, incoming data (e.g. display signal 18) may be used by an integrator 14 to determine whether to activate or change a graphical representation of a lamp, LED, alpha-numeric display, or the like within a virtual control panel 142. In one embodiment, access limitations may ensure that a virtual control panel 142 is always on the top layer and not obscured by any windows 80 or the like. Once generated 140, a virtual control panel 142 may be sized 143 and positioned 145 according to the desires or preferences of the user.
If desired, a user may choose 120 to further customize 146 a display layout 104. In general, any customization that assists a user in differentiating between, or more logically organizing, various windows 80, virtual control panels 142, or the like may be supported within a system 10 in accordance with the present invention. For example, a ,user may select a particular color for the border 148 of a window 80 or virtual control panel 142. A user may also enter a customized name in the title bar 150 portion of the border 148. A
user may further select a default layering scheme for any windows 80, virtual control panels 142, or the like that overlap.
Once a user has created a display layout 104 that reflects preferences, needs, etc. to the extent permitted under application access restrictions, the user may save 152 the display layout 104 so that it may be rapidly regenerated at a future time. If desired, a saved display layout 104 may be assigned 154 to a particular key. Such a key may be an actual or virtual button, switch, S knob, or the like that may be selected or activated by a user with commands 32, 34, 36 entered into an input device 30. In certain embodiments, a key may be renamed 156 to reflect the nature of the display layout assigned 154 thereto. For example, a virtual key on a display 28 may be renamed 156 to "Heating Systems" to indicate that the assigned display layout 104 is a convenient and logical arrangement of the subsystems 12 that control heating.
When activated 158, a key corresponding to a display layout 104 may issue the necessary commands to bring that display layout 104 to the display 28. If desired, a user may create several display layouts 104 to meet needs, facilitate work, and accommodate preferences. In selected embodiments, display layouts 104 may be designed and arranged to permit a user to efficiently perform selected monitoring, tasks, or the like.
For example, all the feedback and commands needed to effectively control heating may be contained within a "Heating Systems" display layout 104, while all the feedback and commands needed to effectively control ingredient allocation may be contained with an "Allocation Systems"
display layout 104.
Having created display layouts 104 that meet one's own needs, facilitate work, and accommodate preferences, a user need not "reinvent the wheel" every time he or she logs in 106 to a system 10 in accordance with the present invention. Once logged in 106, a user may simply activate 158 a key corresponding to the display layout 104 to view. In selected embodiments, display layouts 104 and associated keys may be stored according to username within a system 10 in accordance with the present invention. Thus, when one user is logged on 106 to a workstation 16, he or she may access his or her own display layouts 104. When another user is logged on 106 to the same workstation 16, she may access her own display layouts 104. If desired, integrators 14 interconnected in accordance with the present invention may be configured to share display layouts 104. Accordingly, a user may access his or her display layouts 104 from any one of various workstations 16.
In selected embodiments, an integrator 14 in accordance with the present invention may record current state information for every window 80. State information may include position, size, coverage, whether active or closed, or the like. Accordingly, if an integrator 14 is ever unintentionally powered down, the integrator 14 may return, when power is returned, to the last known state. This may include automatically logging in 106 the last user as well displaying each window 80 in its last known state. Additionally, in certain embodiments, when a window 80 is closed, an integrator 14 may record the last state of that window.
Accordingly, if that window 80 is ever relaunched, it may be presented in its last known state.
Referring to Figure 1 l, in selected embodiments, at startup, the image 160 defined by a composite display signal 26 may include a thumbnail 110 for each connected subsystem 12 and one or more toolbars 162 presenting an array of macros 164 or virtual buttons 164. The title bar 150 of each thumbnail 110 may be "grayed" indicating no thumbnail 110 is activated or has the focus of control. However, each thumbnail 110 may continue to present real time images 112 from the corresponding subsystems 12.
A tool bar 162 in accordance with the present invention may have any macros desired or necessary to facilitate operation of the system 10. In one embodiment, a tool bar 162 may include log in 164a, save 164b, recall 164c, layout 164d, shift 164e, and help 164f macros.
A log in macro 164a may allow a user to be identified by the system 10. In selected embodiments, when a user logs in 106, the display layout 104 may continue with the current layout 104 or change to the layout 104 last employed by the user. In some embodiments, the macros 164 displayed on a tool bar 162 may vary according to the preferences of each user.
Accordingly, when a user logs in 106, the tool bar 162 may change to an arrangement last employed or defined by the user.
A save macro 164b may immediately save 152 the current display layout 104. In selected embodiments, the layout buttons 164d or macros 164d may "gray" for a selected period of time. During this period of time, any of the layout macros 164d may be assigned 154 (or reassigned) to store the newly saved 152 display layout 104. If desired, the period of time wherein a layout macro 164d may be assigned 154 a new display layout 104 may be controlled as a setup option.
A recall macro 164c may recall the last display layout 104 saved by the particular user.
The last display layout 104 may be recalled even if that layout 104 was also assigned to a specific layout macro 164d. In selected embodiments, as a setup option, a recall macro 164c may be set as a single register, a stack, or a circular buffer with a selected depth (e.g. up to 16 saves).
In selected embodiments, one or more layout macros 164d may be included as part of a tool bar 162. Activating 158 a layout macro 164d may bring to the display 28 the last display layout 104 that was assigned 154 to that layout macro 164d. In some embodiments, the name applied to a layout macro 164d may be customized by a user.
A shift macro 164e may be configured to control which layout macros 164d are displayed on the tool bar 162. For example, in one embodiment, a tool bar 162 may only display five layout macros 164d of a total of ten. Accordingly, by selecting the shift macro 164e, a user may toggle between layout macros 164d one through five and layout macros 164d six through ten. In embodiments employing more than two sets of layout macros 164d, a shift macro 164e may cycle rather than toggle. If desired, the shift macro 164e may be visible only if there are multiple sets of layout macros 164d to display. In selected embodiments, the number of sets and the number of layout macros 164d within a set may be controlled as a setup option.
Activation of a help macro 164f may invoke a help system. In selected embodiments, a help system may be stored locally. In other embodiments, a help system may be stored remotely. For example, in one embodiment, activation of the help macro 164f launches an Internet browser addressed to a website containing the help system.
In selected embodiments, macros 164 other than those illustrated in Figure 11 may be included. For example, some embodiments in accordance with the present invention may include a setup macro 164. Activation of a setup macro 164 may permit a user to enter a system setup mode. The available setup options may depend upon access limitations put in place by an administrator. However, in one embodiment, various options to further customize 146 a display layout 104 may be presented.
Referring to Figure 12, in certain embodiments, when a window 80 is activated or selected for the focus of control, the title bar 150 may be highlighted, colored, or otherwise changed from an inactive "gray." For example, in the illustrated embodiment, the "Automation" subsystem 12 has been selected for the focus of control.
Accordingly, the windows 80 (e.g. thumbnail window 110 and subwindow 132) corresponding to the "Automation" subsystem 12 have title bars 150 that are colored.
The title bar 150 of a window 80 in accordance with the present invention may include one or more macros 166 or virtual buttons 166. Suitable buttons 166 may include subwindow buttons 166a, sizing buttons 166b, closing buttons 166c, or the like.
In certain embodiments, selecting a subwindow button 166a on a thumbnail 110 may allow a user to create (i.e. define the coverage of) a subwindow 132. If, at some point, a subwindow 132 for that subsystem 12 had been created, selecting a subwindow button 166a may recall the last defined subwindow 132. That is, the new subwindow 132 may have the same size, coverage, and position as the previous subwindow 132. Selecting a subwindow button 166a on a subwindow 132 may enable a user to adjust the coverage of the selected area 134, and consequently, the coverage of the subwindow 132.
In selected embodiments, as a setup option, a sub-window button 166a on a thumbnail 110 or full window 124 may either toggle the border delineating the selected area 134 between "on" and "off' or permit modification of the coverage of the subwindow 132. If the border illustrating the selected area 134 is off and the operator activates the subwindow button 166a on the sub-window 132, the border may appear and its position or extent may be manipulated to change the coverage of the selected area 134, and consequently, the coverage of the subwindow 132.
In certain embodiments, a sizing button 166b, when selected, may allow a user to determine the size (e.g. in pixels) that the corresponding window 80 will occupy within the image 160 present on the display 28. Changing the size of a window 80 need not change the percentage of the image 112 generated by the subsystem 12 that is shown. In selected embodiments, only thumbnails 110 and subwindows 132 may be sized.
When activated or selected, a close button 166c in accordance with the present invention may "close" the corresponding window 80. That is, the window 80 may be removed from the image 160 produced on the display 28. In selected embodiments, only full windows 124 and subwindows 132 may have close buttons 166c. In such embodiments, thumbnails 110 may not be "closed." Accordingly, a thumbnail 110 for each connected subsystem 12 may be included as a navigation, monitoring, or selection aid in every display layout 104.
Referring to Figure 13, a full window 124 in accordance with the present invention may be generated or launched in any suitable manner. For example, in one embodiment, a full window 124 may be launched by double clicking over the thumbnail 110 of the subsystem 12 for which the user desires a full window 124. When a user is done with a full window 124, it may be "closed" by selecting an appropriate close button 166c. In selected embodiments, if a full window 124 is subsequently relaunched, it may take the size and positioning of the most recent full window 124 for that subsystem 12.
A virtual control panel 142 may take any shape, configuration, or complexity desired by a user. Selection or activation of a button 144 on a virtual control panel 142 may cause one or more commands to be issued to one or more destinations. In some embodiments, status information from a controlled system may be communicated through changes in the appearance of the virtual control panel 142. For example, if a particular sensor of a selected subsystems 12 registers a reading above or below at critical value, one or more "lights", markers, or colors may be activated to uniquely illuminate the virtual control panel 142 and draw attention onto its status.
In selected embodiments, ari integrator 14 in accordance with the present invention may host software to assist a user in graphically designing and generating a virtual control panel 142. Additionally, such software may also permit a user to articulate the various commands 32, 34, 36 to be issued upon selection, activation, adjustment, or the like of a button 144, switch 144, knob 144, dial, graduated control, etc. of the virtual control panel 142.
The present invention may be embodied in other specific forms without departing from its basic functionality or essential characteristics. The described embodiments are to be considered in all respects only as illustrative, and not restrictive. The scope of the invention is, therefore, indicated by the appended claims, rather than by the foregoing description. All changes which come within the meaning and range of equivalency of the claims are to be embraced within their scope.
,What is claimed and desired to be secured by Patent is:
Claims (39)
1. An apparatus comprising:
at least one display configured to receive a composite display signal and render a composite image corresponding thereto viewable by a user;
at least one input device to receive commands from a user;
a display processor configured to receive a plurality of display signals comprising a display signal from each device of a plurality of electronic devices, generate the composite display signal to define a plurality of windows wherein each signal of the plurality of display signals corresponds to at least one window of the plurality of windows, and transmit the composite display signal to the at least one display; and a command processor programmed to route at least one of the commands to at least one device of the plurality of electronic devices, and configured to selectively control and save for reuse by a user, according to the commands, the relative size of each window of the plurality of windows.
at least one display configured to receive a composite display signal and render a composite image corresponding thereto viewable by a user;
at least one input device to receive commands from a user;
a display processor configured to receive a plurality of display signals comprising a display signal from each device of a plurality of electronic devices, generate the composite display signal to define a plurality of windows wherein each signal of the plurality of display signals corresponds to at least one window of the plurality of windows, and transmit the composite display signal to the at least one display; and a command processor programmed to route at least one of the commands to at least one device of the plurality of electronic devices, and configured to selectively control and save for reuse by a user, according to the commands, the relative size of each window of the plurality of windows.
2. The apparatus of claim 1, wherein the relative size is selected to be an arbitrary size selected by a user in accordance with personal preference.
3. The apparatus of claim 2, wherein the command processor is further configured to selectively control and save for reuse by a user, according to the commands, the relative positioning of each window of the plurality of windows.
4. The apparatus of claim 3, wherein:
at least one of the plurality of display signals corresponds to a constituent image; and the command processor is further configured to selectively control, according to the commands, the portion of the constituent image displayed within a window of the plurality of windows.
at least one of the plurality of display signals corresponds to a constituent image; and the command processor is further configured to selectively control, according to the commands, the portion of the constituent image displayed within a window of the plurality of windows.
5. The apparatus of claim 4, wherein at least two of the plurality of display signals are physically disparate in form.
6. The apparatus of claim 5, wherein the display processor further operates on the plurality of display signals to form a plurality of processed display signals of common physical form.
7. The apparatus of claim 6, wherein the display processor further integrates the plurality of processed display signals to generate the composite display signal.
8. The apparatus of claim 7, wherein the at least one input device is selected from the group consisting of a pointing device, custom input device, a touchscreen, and a keyboard.
9. The apparatus of claim 1, wherein the command processor is further configured to selectively control and save for reuse by a user, according to the commands, the relative positioning of each window of the plurality of windows.
10. The apparatus of claim 1, wherein:
at least one of the plurality of display signals corresponds to a constituent image; and the command processor is further configured to selectively control, according to the commands, the portion of the constituent image displayed within a window of the plurality of windows.
at least one of the plurality of display signals corresponds to a constituent image; and the command processor is further configured to selectively control, according to the commands, the portion of the constituent image displayed within a window of the plurality of windows.
11. The apparatus of claim 10, wherein the plurality of windows comprises at least one thumbnail, subwindow, and full window.
12. The apparatus of claim 10, wherein the plurality of windows comprises at least one thumbnail presenting the constituent image and at least one subwindow presenting the portion of the constituent image, the thumbnail further presenting a border delineating the portion of the constituent image.
13. The apparatus of claim 10, wherein the command processor is further configured to scale cursor movements throughout the composite image.
14. The apparatus of claim 1, wherein the at least one input device is selected from a group consisting of a pointing device, keyboard, custom input device, and touchscreen.
15. The apparatus of claim 1, wherein the command processor is further configured to share control of a device of the plurality of electronic devices with another apparatus.
16. The apparatus of claim 1, wherein the command processor is further configured to control the relative size of each window of the plurality of windows through magnification and reduction without changing the position of, or altering the display content within, each window of the plurality of windows.
17. The apparatus of claim 1, wherein the a plurality of display signals are of a form selected from the group consisting of digital component image signal, analog component image signal, digital composite image signal, analog composite image signal, digital compressed image signal, a voltage, a current, a contact condition, an encoded digital signal, and a value corresponding to a state of a component.
18. An apparatus comprising:
at least one display;
at least one input device to receive commands from a user;
a display processor configured to receive a plurality of display signals comprising a display signal from each device of a plurality of electronic devices, at least two of the plurality of display signals being physically disparate in form;
the display processor further configured to generate a composite display signal defining a plurality of windows, wherein each signal of the plurality of display signals corresponds to at least one window of the plurality of windows, and transmit the composite display signal to the at least one display; and a command processor programmed to route at least one of the commands to at least one device of the plurality of electronic devices, and configured to selectively control and save for reuse by a user, according to the commands, relative positioning of each window of the plurality of windows.
at least one display;
at least one input device to receive commands from a user;
a display processor configured to receive a plurality of display signals comprising a display signal from each device of a plurality of electronic devices, at least two of the plurality of display signals being physically disparate in form;
the display processor further configured to generate a composite display signal defining a plurality of windows, wherein each signal of the plurality of display signals corresponds to at least one window of the plurality of windows, and transmit the composite display signal to the at least one display; and a command processor programmed to route at least one of the commands to at least one device of the plurality of electronic devices, and configured to selectively control and save for reuse by a user, according to the commands, relative positioning of each window of the plurality of windows.
19. An apparatus comprising:
at least one display;
at least one input device to receive commands from a user;
a display processor configured to receive a plurality of display signals comprising a display signal from each device of a plurality of electronic devices, at least two of the plurality of display signals being physically disparate in form, and at least one of the plurality of display signals corresponding to an image;
the display processor further configured to generate a composite display signal defining a plurality of windows, wherein each signal of the plurality of display signals corresponds to at least one window of the plurality of windows, and transmit the composite display signal to the at least one display; and a command processor programmed to route at least one of the commands to at least one device of the plurality of electronic devices, and configured to selectively control and save for reuse by a user, according to the commands, the portion of the image displayed within a window of the plurality of windows.
at least one display;
at least one input device to receive commands from a user;
a display processor configured to receive a plurality of display signals comprising a display signal from each device of a plurality of electronic devices, at least two of the plurality of display signals being physically disparate in form, and at least one of the plurality of display signals corresponding to an image;
the display processor further configured to generate a composite display signal defining a plurality of windows, wherein each signal of the plurality of display signals corresponds to at least one window of the plurality of windows, and transmit the composite display signal to the at least one display; and a command processor programmed to route at least one of the commands to at least one device of the plurality of electronic devices, and configured to selectively control and save for reuse by a user, according to the commands, the portion of the image displayed within a window of the plurality of windows.
20. A method comprising:
receiving a plurality of display signals from a plurality of electrical devices;
generating a composite display signal defining a plurality of windows, wherein each display signal of the plurality of display signals corresponds to at least one window of the plurality of windows;
transmitting the composite display signal to at least one display;
receiving first commands from a first user;
routing at least one of the first commands to at least one device of the plurality of electronic devices;
forming a first layout by controlling, according to the first commands, the relative size .
of each window of the plurality of windows; and saving the first layout for recall.
receiving a plurality of display signals from a plurality of electrical devices;
generating a composite display signal defining a plurality of windows, wherein each display signal of the plurality of display signals corresponds to at least one window of the plurality of windows;
transmitting the composite display signal to at least one display;
receiving first commands from a first user;
routing at least one of the first commands to at least one device of the plurality of electronic devices;
forming a first layout by controlling, according to the first commands, the relative size .
of each window of the plurality of windows; and saving the first layout for recall.
21. The method of claim 20, wherein forming a first layout further comprises controlling, according to the first commands, the relative positioning of each window of the plurality of windows.
22. The method of claim 21, wherein at least one display signal of the plurality of display signals corresponds to an image.
23. The method of claim 22, wherein forming a first layout further comprises controlling, according to the first commands, the portion of the image displayed within a window of the plurality of windows.
24. The method of claim 23, wherein the plurality of windows comprises at least one thumbnail and at least one subwindow.
25. The method of claim 24, wherein the plurality of windows comprises at least one thumbnail presenting the image and at least one subwindow presenting the portion of the image.
26. The method of claim 25, wherein the thumbnail further presents a border delineating the portion of the image.
27. The method of claim 26, wherein receiving first commands from a first user comprises receiving commands corresponding to cursor movements.
28. The method of claim 27, further comprising scaling the cursor movements.
29. The method of claim 28, further comprising receiving second commands from a second user.
30. The method of claim 29, further comprising forming a second layout by controlling, according to the second commands, the relative size of each window of the plurality of windows;
31. The method of claim 30, further comprising saving the second layout for recall.
32. The method of claim 31, wherein controlling the relative size of each window of the plurality of windows further comprises controlling magnification and reduction without changing the position of, or altering the display content within, each window of the plurality of windows.
33. The method of claim 32, wherein the a plurality of display signals are of a. form selected from the group consisting of digital component image signal, analog component image signal, digital composite image signal, analog composite image signal, digital compressed image signal, a voltage, a current, a contact condition, an encoded digital signal, and a value corresponding to a state of a component.
34. The method of claim 20, wherein the plurality of windows comprises at least one thumbnail and at least one subwindow, the at least one thumbnail presenting an image, the at least one subwindow presenting a portion of the image, the at least one thumbnail further presenting a border delineating the portion of the image.
35. The method of claim 20, further comprising:
receiving second commands from a second user;
routing at least one of the second commands to at least one device of the plurality of electronic devices;
forming a second layout by controlling, according to the second commands, the relative size of each window of the plurality of windows; and saving the second layout for recall.
receiving second commands from a second user;
routing at least one of the second commands to at least one device of the plurality of electronic devices;
forming a second layout by controlling, according to the second commands, the relative size of each window of the plurality of windows; and saving the second layout for recall.
36. The method of claim 20, wherein controlling the relative size of each window of the plurality of windows further comprises controlling magnification and reduction without changing the position of, or altering the display content within, each window of the plurality of windows.
37. A method comprising:
receiving a plurality of display signals from a plurality of electronic devices;
generating a composite display signal defining a plurality of windows, wherein each display signal of the plurality of display signals corresponds to at least one window of the plurality of windows;
transmitting the composite display signal to at least one display;
receiving commands from a user;
routing at least one of the commands to at least one device of the plurality of electronic devices;
forming a layout by controlling, according to the commands, the relative positioning of each window of the plurality of windows; and saving the layout for recall.
receiving a plurality of display signals from a plurality of electronic devices;
generating a composite display signal defining a plurality of windows, wherein each display signal of the plurality of display signals corresponds to at least one window of the plurality of windows;
transmitting the composite display signal to at least one display;
receiving commands from a user;
routing at least one of the commands to at least one device of the plurality of electronic devices;
forming a layout by controlling, according to the commands, the relative positioning of each window of the plurality of windows; and saving the layout for recall.
38. A method comprising:
selecting a system comprising:
a processor operably connected to at least one input device to receive commands from a user, at least one display, a first electrical device communicating a first display signal to the processor in a first form, and a second electrical device communicating a second display signal to the processor in a second form, disparate from the first form, the at least one display presenting simultaneously a first image in a first window and a second image in a second window, the first image derived by the processor from the first display signal, the second image derived by the processor from the second display signal;
routing at least one of the commands to at least one of the first and second electronic devices;
forming a custom layout by changing, according to the commands, the areal percentage of the at least one display occupied by the first window; and saving the custom layout for recall.
selecting a system comprising:
a processor operably connected to at least one input device to receive commands from a user, at least one display, a first electrical device communicating a first display signal to the processor in a first form, and a second electrical device communicating a second display signal to the processor in a second form, disparate from the first form, the at least one display presenting simultaneously a first image in a first window and a second image in a second window, the first image derived by the processor from the first display signal, the second image derived by the processor from the second display signal;
routing at least one of the commands to at least one of the first and second electronic devices;
forming a custom layout by changing, according to the commands, the areal percentage of the at least one display occupied by the first window; and saving the custom layout for recall.
39. The method of claim 38, wherein forming a custom layout further comprises changing, according to the commands, the position of one of the first and second windows on the at least one display.
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US54309204P | 2004-02-09 | 2004-02-09 | |
US60/543,092 | 2004-02-09 | ||
US11/044,526 US7353458B2 (en) | 2004-02-09 | 2005-01-27 | Computer presentation and command integration method |
US11/044,389 US7496846B2 (en) | 2004-02-09 | 2005-01-27 | Computer presentation and command integration apparatus |
US11/044,526 | 2005-01-27 | ||
US11/044,389 | 2005-01-27 | ||
PCT/US2005/003838 WO2005076993A2 (en) | 2004-02-09 | 2005-02-08 | Computer presentation and command integration apparatus and method |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2554766A1 true CA2554766A1 (en) | 2005-08-25 |
Family
ID=34865027
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002554766A Abandoned CA2554766A1 (en) | 2004-02-09 | 2005-02-08 | Computer presentation and command integration apparatus and method |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP1743270A4 (en) |
JP (1) | JP4891782B2 (en) |
CA (1) | CA2554766A1 (en) |
WO (1) | WO2005076993A2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9501858B2 (en) | 2012-05-28 | 2016-11-22 | Mitsubishi Electric Corporation | Display device and computer |
GB2512626B (en) * | 2013-04-04 | 2015-05-20 | Nds Ltd | Interface mechanism for massive resolution displays |
WO2014209271A1 (en) * | 2013-06-25 | 2014-12-31 | Thomson Licensing | Multidisciplinary nomad sub-screen system |
JP2016119007A (en) * | 2014-12-22 | 2016-06-30 | 富士通コンポーネント株式会社 | KVM switch |
US9705936B2 (en) * | 2015-04-24 | 2017-07-11 | Mersive Technologies, Inc. | System and method for interactive and real-time visualization of distributed media |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2030823B (en) * | 1978-10-02 | 1982-11-03 | Ibm | Image data manipulation apparatus |
US5260697A (en) * | 1990-11-13 | 1993-11-09 | Wang Laboratories, Inc. | Computer with separate display plane and user interface processor |
FR2669752B1 (en) * | 1990-11-24 | 1994-04-01 | Hitachi Ltd | PROCESS CONTROL SYSTEM AND WINDOW DISPLAY METHOD FOR SUCH A SYSTEM. |
AU664055B2 (en) * | 1991-11-25 | 1995-11-02 | Sony (Australia) Pty Limited | Operator initiated display window recall |
US5499334A (en) * | 1993-03-01 | 1996-03-12 | Microsoft Corporation | Method and system for displaying window configuration of inactive programs |
JPH0775014A (en) * | 1993-07-06 | 1995-03-17 | Hitachi Ltd | Video display device, multi-screen display system and magnification processing circuit |
US5745161A (en) * | 1993-08-30 | 1998-04-28 | Canon Kabushiki Kaisha | Video conference system |
US5587742A (en) * | 1995-08-25 | 1996-12-24 | Panasonic Technologies, Inc. | Flexible parallel processing architecture for video resizing |
JPH0981079A (en) * | 1995-09-07 | 1997-03-28 | Casio Comput Co Ltd | Projection device |
EP0781049B1 (en) * | 1995-12-19 | 2004-05-06 | Canon Kabushiki Kaisha | Apparatus and method for controlling a plurality of remote cameras |
US5909548A (en) * | 1996-10-31 | 1999-06-01 | Sensormatic Electronics Corporation | Apparatus for alerting human operator to status conditions of intelligent video information management system |
JPH10229517A (en) * | 1997-02-13 | 1998-08-25 | Meidensha Corp | Remote image pickup control system |
JP3322616B2 (en) * | 1997-10-20 | 2002-09-09 | 三洋電機株式会社 | Information display device |
JP3548679B2 (en) * | 1997-12-02 | 2004-07-28 | 株式会社日立製作所 | Multi-input monitor device |
JP4541476B2 (en) * | 1999-02-19 | 2010-09-08 | キヤノン株式会社 | Multi-image display system and multi-image display method |
JP2001092432A (en) * | 1999-09-17 | 2001-04-06 | Sanyo Electric Co Ltd | Display device |
US7028264B2 (en) * | 1999-10-29 | 2006-04-11 | Surfcast, Inc. | System and method for simultaneous display of multiple information sources |
JP4577933B2 (en) * | 2000-02-04 | 2010-11-10 | 富士通コンポーネント株式会社 | Computer switch |
JP4859154B2 (en) * | 2000-06-09 | 2012-01-25 | キヤノン株式会社 | Display control device, display control system, display control method, and storage medium |
US20030097640A1 (en) * | 2001-07-25 | 2003-05-22 | International Business Machines Corporation | System and method for creating and editing documents |
US20030149884A1 (en) * | 2002-02-01 | 2003-08-07 | Randolph Hernandez | Electronic information content control |
US20030189581A1 (en) * | 2002-04-08 | 2003-10-09 | Nasoff David G. | Content based window filtering for simultaneous display of multiple high-quality video and graphics windows |
US20030223733A1 (en) * | 2002-05-14 | 2003-12-04 | Intelligent Digital Systems Llc | System and method of processing audio/video data in a remote monitoring system |
US7561116B2 (en) * | 2003-01-31 | 2009-07-14 | Microsoft Corporation | Multiple display monitor |
US20050022135A1 (en) * | 2003-07-23 | 2005-01-27 | De Waal Abraham B. | Systems and methods for window alignment grids |
-
2005
- 2005-02-08 WO PCT/US2005/003838 patent/WO2005076993A2/en active Application Filing
- 2005-02-08 JP JP2006552330A patent/JP4891782B2/en active Active
- 2005-02-08 EP EP05713032A patent/EP1743270A4/en not_active Ceased
- 2005-02-08 CA CA002554766A patent/CA2554766A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP4891782B2 (en) | 2012-03-07 |
EP1743270A2 (en) | 2007-01-17 |
WO2005076993A2 (en) | 2005-08-25 |
JP2007522565A (en) | 2007-08-09 |
EP1743270A4 (en) | 2012-04-18 |
WO2005076993A3 (en) | 2005-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7770131B2 (en) | Subsystem, shared-control apparatus and method | |
US7496846B2 (en) | Computer presentation and command integration apparatus | |
CA2703704C (en) | Apparatus and system for managing multiple computers | |
US7779361B2 (en) | Change-alarmed, integrated console apparatus and method | |
JPH07210357A (en) | Remote emphasis display of object in conference system | |
US20150215570A1 (en) | Apparatus and system for managing multiple computers | |
CN101228515A (en) | Apparatus and system for managing multiple computers | |
JPH03217894A (en) | Method of controlling cursor movement and display | |
KR100381422B1 (en) | Computer system and osd controlling methode therof | |
JP5025230B2 (en) | Multi-monitor monitoring control apparatus and process monitoring control system using the same | |
JP4870034B2 (en) | Plant monitoring and control device | |
CA2554766A1 (en) | Computer presentation and command integration apparatus and method | |
JP2008027196A (en) | Picture-displaying system and display-setting method for picture-displaying system | |
CN101751197A (en) | Multi-level input system, computer program product and method thereof | |
CN102473042B (en) | System, method and computer program for operating a plurality of computing devices | |
JPH052382A (en) | Multi-screen display controller | |
JP2017016299A (en) | Console system | |
JPH06102851A (en) | Plural screens display device | |
KR930008937B1 (en) | Video color printer operating situation | |
CN117707392A (en) | Display control method and system of BIOS graphical interface | |
JPH08147126A (en) | Operation display device | |
JPH0883163A (en) | Graphic display device | |
JP2019082906A (en) | KVM switch and program | |
JPH1115627A (en) | Distributed control systems | |
JP2008097505A (en) | Display control apparatus, display control program, and printing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
FZDE | Discontinued |
Effective date: 20160425 |