-
Die
vorliegende Erfindung betrifft eine Vorrichtung, welche eingesetzt
werden kann, um mehrere Computer zu steuern, und insbesondere eine
Vorrichtung, welche eingesetzt werden kann, um einer Zeiger-Eingabe-Vorrichtung
zu ermöglichen, zur Steuerung mehrerer verschiedener Computer
abhängig von der Position eines Zeigers auf der Anzeige-Vorrichtung
oder den Anzeige-Vorrichtungen der Computer eingesetzt zu werden.
-
Es
gibt zahlreiche Szenarien, in welchen Benutzer mehrere Computer-Bildschirme
oder Anzeige-Vorrichtungen haben, welche eine Information von mehreren
unterschiedlichen Computern anzeigen. Beispielsweise beim Wertpapierhandel
und in Kommandoräumen ist es üblich, Informationen
auf mehreren Bildschirmen zu beobachten, welche um einen Arbeitsplatz
herum angeordnet sind. Sehr oft werden diese Bildschirme von verschiedenen
Computersystemen gespeist und der Benutzer muss typischerweise mit
diesen verschiedenen Computern von Zeit zu Zeit interagieren. In
diesen Fällen ist es meist aus der Sicht des Benutzers
unerwünscht oder nicht praktikabel, eine bestimmte Tastatur
und eine bestimmte Maus für jedes Computersystem zu benutzen
und daher wird im Allgemeinen ein KM-Umschalter (”Keyboard
Mouse”-Umschalter) eingesetzt, damit eine einzige Tastatur
und eine einzige Maus zwischen den Computern umgeschaltet werden kann,
wie es in 1 dargestellt ist.
-
Geeignete
KM-Umschalter, wie beispielsweise der Adder TS4 von Adder Technology
Limited, können meist umgeschaltet werden, indem eine speziell
zugewiesene Hotkey-Tastenkombination betätigt wird. Bisweilen
können sie auch umgeschaltet werden, indem eine Kombination
von Tasten auf der Maus betätigt wird. Einige Benutzer
bevorzugen einen bestimmten Tastaturabschnitt, um den Computer auszuwählen,
wie es beispielsweise bei dem Adder RC4 von Adder Technology Limited
der Fall ist. Beim Einsatz einer solchen Einrichtung kann der Benutzer den
Computer auswählen, welchen er mit der Tastatur und der
Maus steuern möchte. Eine Anzeige auf dem KM-Umschalter
bestätigt den ausgewählten Computer, obwohl dies
oft überflüssig ist, da der Benutzer das ausgewählte
System einfach identifizieren kann, indem er beobachtet, auf welchem
Bildschirm sich der Mauszeiger bewegt.
-
Obwohl
solche KM-Umschalter eine nützliche Lösung für
das Problem des gemeinsamen Benutzens einer Tastatur und einer Maus
zwischen bzw. mit mehreren Computern bereitstellen, muss das Umschalten
noch von dem Benutzer gesteuert werden und dies ist für
Benutzer unvorteilhaft, welche häufig zwischen Computern
umschalten wollen. Zur Vereinfachung wäre es bezüglich
des Umschaltens vorteilhaft, wenn dies automatisch in einer Weise
geschehen würde, welche den Betrieb eines einzigen Computers
mit mehreren verbundenen Bildschirmen imitiert.
-
Bei
einem einzigen Computer mit einer aus mehreren Bildschirmen bestehenden
Benutzeroberfläche definiert der Benutzer die Aufteilung
auf die Bildschirme und das System bewegt den Mauszeiger automatisch
zum nächsten Bildschirm, wenn er sich über den
Rand des vorherigen benachbarten Bildschirms bewegt. Solche Systeme,
welche aus einem einzelnen Computer mit einer auf mehrere Bildschirme
ausgedehnten Benutzeroberfläche bestehen, sind nach dem
Stand der Technik allgemein bekannt.
-
Es
wurde jedoch von dem Anmelder herausgefunden, dass eine Implementierung
derselben intuitiven Operation über mehrere Computer hinweg eine
Herausforderung darstellt, da Computer-Maus-Schnittstellen gewöhnlicherweise
keine Information über die Bildschirmposition des Mauszeigers
bereitstellen. Darüber hinaus stellen standardisierte Mäuse
gewöhnlicherweise nur relative Bewegungsdaten bereit. Des
Weiteren setzen Computer oft verschiedene unterschiedliche Beschleunigungsschemata
ein, um die Bewegung einer Maus zu verfeinern. Diese Punkte führen
dazu, dass es für existierende KM-Umschalter nicht praktikabel
ist, die Position des Mauszeigers auf dem Bildschirm dadurch zu
bestimmen, indem (nur) die Bewegungsdaten der Maus, welche dem Computer
gesendet werden, analysiert werden. Folglich sind existierende KM-Umschalter
nicht in der Lage, ein automatisches Umschalten abhängig
von dem Mauszeiger, welcher sich über den Rand des Bildschirms
bewegt, zu implementieren, da sie nicht in der Lage sind, die Position
des Mauszeigers zuverlässig zu bestimmen.
-
Es
existieren Software-Systeme, welche in der Lage sind, HDI-Vorrichtungen
abhängig von der Position des Mauszeigers automatisch umzuschalten.
Ein Beispiel für ein solches System ist das Open-Source-Software-Produkt,
welches Synergy genannt wird und aus dem Internet heruntergeladen werden
kann. Synergy arbeitet, indem die Tastatur und die Maus mit einem
Computer verbunden wird und die Master-Software auf diesem Computer
und die Slave-Software auf jeden der anderen Computer, welche gesteuert
werden sollen, geladen wird. Die Programme der Master- und der Slave-Software kommunizieren
zusammen über ein gemeinsames Netz, welches die Computer
verbindet. Die Software ist in der Lage, die Position des Mauszeigers
von jedem Computer-Betriebssystem aufzufinden und verwendet diese
Information, um die Daten der Tastatur und der Maus zwischen den
Computern derart zu routen bzw. zu führen, wie es erforderlich
ist, wobei die gemeinsame Netzverbindung eingesetzt wird. Wenn der
Fokus der Tastatur und der Maus von dem Master-Computer auf einen
Slave-Computer umgeschaltet werden soll, unterbricht die Master-Software die
Tastatur- und Maus-Daten und routet diese über das Netz
erneut zu einem ausgewählten Slave-Softwareprogramm, wo
sie verwendet werden, um den Slave-Computer zu steuern. Der grundsätzliche
Umschaltvorgang der Tastatur und der Maus imitiert daher die Operation
eines KM-Umschalters.
-
Obwohl
sie einsetzbar sind, weisen solche Software-Systeme den Nachteil
auf, dass sie spezielle Software benötigen, welche auf
jedem Computer geladen werden muss. Diese Software ist gewissermaßen
eine Software zur abgesetzten Steuerung, und ein Laden einer solchen
Software auf Computer widerspricht im Allgemeinen Sicherheitsregeln,
welche in verschiedenen Umgebungen, beispielsweise beim Wertpapierhandel
und in Kommandoräumen, oft strikt sind. Es wird daher vorgezogen,
eine solche Software nicht einzusetzen, um das automatische Umschalten
von HDI-Vorrichtungen abhängig von der Position des Mauszeigers
zu implementieren.
-
Die
GB-2427530 beschreibt eine
Umschalt-Vorrichtung, welche eine Umschalt-Steuerung umfasst, die
eingesetzt wird, um die Bewegung eines Zeigers auf einer Anzeige,
welche mit einem Host-Computer-System, welches aktuell den Fokus besitzt,
verbunden ist, zu steuern. Jedes Host-Computer-System umfasst einen
spezifischen Software-Service, welcher auf dem Host-Computer-System zu
installieren ist und welcher die Position des Zeigers über
die System-Steuerung der Maus verfolgt, wenn der Host den Fokus
besitzt und dann der Umschalt-Vorrichtung signalisiert, den Fokus
auf ein anderes der Host-Computer-Systeme zu wechseln, wenn der
Zeiger in einer vorbestimmten Weise bewegt wird.
-
Es
gibt einige Nachteile bezüglich des Ansatzes, eine Software
auf jedem Computer-System zu installieren, so dass die Host-Computer-Systeme
zu der Umschalt- Vorrichtung zurück kommunizieren können.
Es müssen Software-Treiber auf jedes Host-Computer-System
geladen werden, aber es ist bisweilen schwierig oder nicht möglich,
eine Software auf Computer-Systeme zu installieren (zum Beispiel wenn
die Computer physikalisch getrennt sind oder wenn der Benutzer keine
Systemadministrator-Rechte besitzt, um dieses zu tun). Darüber
hinaus müssen verschiedene Versionen der Software-Treiber
hergestellt werden, um jeweils verschiedene Betriebssysteme zu unterstützen
und auch um neue Betriebssysteme, zu unterstützen, wenn
diese eingeführt werden. Daher ist es vorteilhaft, wenn
ein Ansatz bereitgestellt werden könnte, welcher einen
schwächeren Eingriff erfordert und von dem entsprechenden
Betriebssystem unabhängiger wäre.
-
Die
vorliegende Erfindung stellt eine Vorrichtung bereit, welche eingesetzt
werden kann, um eine Zeiger-Eingabe-Vorrichtung automatisch zwischen mehreren
Computern abhängig von der Position des Zeigers oder des
Cursors umzuschalten. Um dies zu bewerkstelligen, kann die Vorrichtung
die Position des Zeigers auf verbundenen Computern unter Verwendung
der Mauszeiger-Daten, welche zu den Computern gesendet werden, berechnen.
-
Im
Rahmen der vorliegenden Erfindung wird eine Vorrichtung bereitgestellt,
um eine Zeiger-Eingabe-Vorrichtung gemeinsam zwischen bzw. von mehreren
Computern zu benutzen. Die Vorrichtung kann einen Eingang, um Daten
einer relativen Position eines Zeigers von der Zeiger-Eingabe-Vorrichtung zu
empfangen, mehrere Ausgänge, welche jeweils mit einem entsprechenden
von mehreren Computern verbindbar sind, um die von der Zeiger-Eingabe-Vorrichtung
zugeführten Eingangsdaten einem der mehreren Computer bereitzustellen,
und eine Steuerung umfassen. Die Steuerung kann derart ausgestaltet und
programmiert sein, um die eingegebenen Daten der relativen Position
von der Zeiger-Eingabe-Vorrichtung zu empfangen und die Daten der
relativen Position des Zeigers in Daten einer absoluten Position
des Zeigers umzusetzen; um abhängig von den Daten der absoluten
Position des Zeigers zu bestimmen, zu welchem der mehreren Computer
die Eingangsdaten zu routen sind; und um die Eingangsdaten zu dem
bestimmten der mehreren Computer zu routen, so dass eine Cursor-Position
auf der Anzeige-Vorrichtung des bestimmten der mehreren Computer
durch die Zeiger-Eingabe-Vorrichtung gesteuert werden kann.
-
Indem
die Daten des Zeigers verarbeitet werden und den Computern als absolute
Information des Zeigers dargestellt werden, ist die Erfindung in
der Lage, die Posi tion des Mauszeigers auf dem Bildschirm des Zielcomputers
zuverlässig zu bestimmen. Dies wiederum ermöglicht
der Erfindung, HDI-Vorrichtungen zwischen Computern automatisch
umzuschalten, wenn sich der Zeiger oder Cursor über den Rand
des Bildschirms des Computers hinaus bewegt. Das Gesamtergebnis
ist eine intuitive Erfahrung durch den Benutzer, wobei eine Zeiger-Eingabe-Vorrichtung,
beispielsweise eine Maus, eingesetzt werden kann, um einen Zeiger
oder Cursor anmutig über die Bildschirme von verschiedenen
Computern zu bewegen. Eine Tastatur kann auch dem Fokus der Zeiger-Eingabe-Vorrichtung
folgen, wenn erwünscht ist, dass sowohl eine Tastatur als
auch eine Zeiger-Eingabe-Vorrichtung bereitgestellt werden soll.
-
Im
Gegensatz zu anderen Systemen erfordert die Erfindung nicht, dass
eine Spezial-Software auf die Computer geladen werden muss. Die
Erfindung ist insbesondere für den Einsatz bei Anwendungen
in einem Kommandoraum und beim Wertpapierhandel geeignet, wobei
ein Benutzer vor einem Feld von Bildschirmen sitzt, welche von verschiedenen Computern
gespeist werden.
-
Die
absolute Position des Zeigers kann dabei einen Bezug relativ zu
einem festgelegten Ursprung aufweisen.
-
Jeder
der mehreren Ausgänge kann ein serieller Ausgang oder eine
serielle Schnittstelle, wie beispielsweise ein USB (”Universal
Serial Bus”), sein. Der Eingang kann ein serieller Eingang
oder eine serielle Schnittstelle, wie beispielsweise ein USB, sein.
-
Die
Zeiger-Eingabe-Vorrichtung kann irgendeine Zeiger-Eingabe-Vorrichtung
sein, welche eingesetzt wird, um die Position eines Zeigers oder eines
Cursors auf einem Bildschirm zu steuern, wie beispielsweise ein
Trackball, ein Trackpad, ein Joystick oder insbesondere eine Maus.
-
Die
Steuerung kann darüber hinaus derart ausgestaltet sein,
dass sie Skalierungsdaten des Zeigers und/oder Beschleunigungsdaten
des Zeigers verwendet, um die Daten der relativen Position des Zeigers
in die Daten der absoluten Position des Zeigers zu wandeln. Dies
kann hilfreich sein, um das Verhalten des Zeigers auf einer Anzeige-Vorrichtung zu
imitieren, welches ein Benutzer bevorzugt und welches auftreten
würde, wenn die Eingangsdaten als Daten einer relativen
Bewegung bezüglich des Computers angewendet würden.
-
Der
Eingang kann auch Eingangsdaten einer Tastatur empfangen. Die Steuerung
kann darüber hinaus automatisch derart ausgestaltet sein,
dass sie Eingangsdaten einer Tastatur als Eingangsdaten zu dem bestimmten
der Computer gleichzeitig mit den Eingangsdaten von der Zeiger-Eingabe-Vorrichtung routet.
-
Die
Steuerung kann darüber hinaus derart ausgestaltet sein,
dass sie abhängig davon, ob die absoluten Positionsdaten
des Zeigers einer Zeigerposition auf einer Anzeige-Vorrichtung eines
Computers entsprechen, welcher sich von dem aktuell gesteuerten
Computer unterscheidet, bestimmt, zu welchem der mehreren Computer
die Eingangsdaten geroutet werden.
-
Die
Steuerung kann darüber hinaus derart ausgestaltet sein,
dass sie abhängig davon, ob die absoluten Positionsdaten
des Zeigers einer Zeigerposition auf einer Anzeige-Vorrichtung eines
Computers entsprechen, welcher sich von dem aktuell gesteuerten
Computer unterscheidet, und ob dabei eine Schwellenwertposition überschritten
ist, bestimmt, zu welchem der mehreren Computer die Eingangsdaten geroutet
werden. Dadurch kann verhindert werden, dass ein anderer Computer
aus Versehen ausgewählt wird, wenn ein Benutzer unabsichtlich
nur im geringen Umfang auf die Anzeige eines anderen Computers kommt.
-
Im
Rahmen der vorliegenden Erfindung wird auch ein Computer-System
bereitgestellt, welches umfasst: eine erfindungsgemäße
Vorrichtung; mehrere Computer, welche jeweils eine entsprechende Anzeige-Vorrichtung
aufweisen, wobei sich jeder Computer in Kommunikation mit einem
entsprechenden Ausgang der Vorrichtung befindet; und eine Zeiger-Eingabe-Vorrichtung
in Kommunikation mit dem Eingang der Vorrichtung.
-
Das
Computer-System kann darüber hinaus eine Tastatur in Kommunikation
mit dem Eingang der Vorrichtung umfassen.
-
Im
Rahmen der vorliegenden Erfindung wird auch ein Verfahren zur gemeinsamen
Nutzung einer Zeiger-Eingabe-Vorrichtung zwischen bzw. von mehreren
Computern, welche jeweils eine entsprechende Anzeige-Vorrichtung
aufweisen, bereitgestellt, wobei das Verfahren umfasst: Empfangen
von Daten einer relativen Position eines Zeigers von der Zeiger-Eingabe-Vorrichtung
und Umwandeln der Daten der relativen Position des Zeigers in Daten
einer absoluten Position des Zeigers; Bestimmen abhängig
von den Daten der absoluten Position des Zeigers, zu welchem der
mehreren Computer die (zugeführten) Daten geroutet werden;
und Routen der (zugeführten) Daten zu dem bestimmten der
Computer, so dass eine Cursor-Position auf einer Anzeige-Vorrichtung des
bestimmten der Computer durch die Zeiger-Eingabe-Vorrichtung gesteuert
werden kann.
-
Im
Rahmen der vorliegenden Erfindung wird auch eine Speicher-Vorrichtung
oder ein Speicher zum Speichern von Anweisungen, welche von einer Daten
verarbeitenden Vorrichtung ausführbar sind, zur Durchführung
jeder Ausführungsform des erfindungsgemäßen
Verfahrens bereitgestellt.
-
Darüber
hinaus wird im Rahmen der vorliegenden Erfindung eine weitere Umschalt-Vorrichtung zur
automatischen gemeinsamen Nutzung einer Zeiger-Eingabe-Vorrichtung
von mehreren Computern bereitgestellt. Die weitere Umschalt-Vorrichtung
kann umfassen einen Eingang, um Daten einer relativen Position eines
Zeigers von der Zeiger-Eingabe-Vorrichtung zu empfangen; mehrere
Ausgänge, welche jeweils mit einem entsprechenden von mehreren Computern
verbindbar sind, um die ((von der Zeiger-Eingabe-Vorrichtung) zugeführten
bzw. eingegebenen) Daten einem der mehreren Computer bereitzustellen;
mehrere Video-Eingänge, welche jeweils mit einem der mehreren
Computer verbindbar sind, um eine Video-Eingabe bzw. Video-Eingangsdaten von
einem entsprechenden der Computer zu empfangen; eine Video-Kombinationshardware,
welche ausgestaltet ist, um eine Video-Eingabe, welche von den mehreren
Computern empfangen wird, in ein einziges Videosignal zur Ausgabe
auf einer Anzeige-Vorrichtung zu kombinieren; einen Video-Ausgang,
um das einzige Videosignal an die Anzeige-Vorrichtung auszugeben;
und eine Steuerung, wobei die Steuerung derart ausgestaltet ist,
dass sie relative Positionsdaten an dem Eingang von der Zeiger-Eingabe-Vorrichtung
empfängt und die Daten der relativen Position des Zeigers
in Daten einer absoluten Position des Zeigers wandelt; um abhängig
von den Daten der absoluten Position des Zeigers zu bestimmen, zu
welchem der mehreren Computer die (eingegebenen) Daten zu routen
sind; und um die (eingegebenen) Daten zu dem bestimmten der mehreren
Computer zu routen, so dass eine Cursor-Position auf einem Abschnitt
eines Bildschirms der Anzeige-Vorrichtung, welche dem bestimmten
der mehreren Computer entspricht, durch die Zeiger-Eingabe-Vorrichtung
gesteuert werden kann.
-
Bevorzugte
Merkmale der Umschalt-Vorrichtung, welche vorab ausgeführt
sind, können auch bevorzugte Merkmale der weiteren Umschalt-Vorrichtung
sein.
-
Die
weitere Umschalt-Vorrichtung kann als einzelne Umschalt-Vorrichtung
bereitgestellt werden.
-
Die
weitere Umschalt-Vorrichtung kann als eine Umschalt-Einrichtung
und als eine separate Video-Kombinationsvorrichtung bereitgestellt
werden.
-
Im
Rahmen der vorliegenden Erfindung wird auch ein weiteres Computer-System
bereitgestellt, welches umfasst: die vorab erwähnte erfindungsgemäße
weitere Umschalt-Vorrichtung; mehrere Computer, welche sich jeweils
in Kommunikation mit einem entsprechenden Ausgang der weiteren Umschalt-Vorrichtung
befinden; mindestens eine Anzeige-Vorrichtung in Kommunikation mit
dem Video-Ausgang der weiteren Umschalt-Vorrichtung; und eine Zeiger-Eingabe-Vorrichtung
in Kommunikation mit dem Eingang der weiteren Umschalt-Vorrichtung.
-
Das
weitere Computer-System kann darüber hinaus eine Tastatur
in Kommunikation mit dem Eingang der weiteren Umschalt-Vorrichtung
umfassen.
-
Das
weitere Computer-System kann darüber hinaus eine weitere
Anzeige-Vorrichtung umfassen. Die weitere Umschalt-Vorrichtung kann
einen weiteren Video-Ausgang umfassen. Die Video-Kombinationshardware
kann darüber hinaus derart ausgestaltet sein, dass sie
eine Video-Eingabe, welche von weiteren der mehreren Computer empfangen
wird, in ein weiteres einzelnes Videosignal zur Ausgabe auf der
weiteren Anzeige-Vorrichtung, welche sich in Kommunikation mit dem
weiteren Video-Ausgang befindet, kombiniert.
-
Im
Rahmen der vorliegenden Erfindung wird auch ein weiteres Verfahren
zur gemeinsamen Nutzung einer Zeiger-Eingabe-Vorrichtung von mehreren
Computern mit einer Anzeige-Vorrichtung bereitgestellt, welche eine
Video-Ausgabe von mindestens zwei der mehreren Computer gleichzeitig
darstellt, wobei das weitere Verfahren umfasst: Empfangen einer
Video-Eingabe (Video-Eingangsdaten) von mindestens zwei der mehreren
Computer, Kombinieren der Video-Eingabe in ein einziges Video-Ausgangssignal
und Ausgeben des einzigen Video-Ausgangssignals auf der Anzeige-Vorrichtung,
um eine Video-Ausgabe von den mindestens zwei Computern in verschiedenen
Abschnitten eines Bildschirms der Anzeige-Vorrichtung gleichzeitig
darzustellen; Empfangen von Daten einer relativen Position eines
Zeigers von der Zeiger-Eingabe-Vorrichtung und Wandeln der Daten
der relativen Position des Zeigers in Daten einer absoluten Position
des Zeigers; Bestimmen abhängig von den Daten der absoluten
Position des Zeigers, zu welchem der mehreren Computer die (zugeführten
bzw. eingegebenen) Daten zu routen sind; und Routen der Daten zu
dem bestimmten der mehreren Computer, so dass eine Cursor-Position auf
einem Abschnitt des Bildschirms der Anzeige-Vorrichtung, welche
dem bestimmten der mehreren Computer entspricht, durch die Zeiger-Eingabe-Vorrichtung
gesteuert werden kann.
-
Im
Rahmen der vorliegenden Erfindung wird auch eine weitere Speicher-Vorrichtung
bereitgestellt, welche Anweisungen speichert, die auf einer Daten
verarbeitenden Vorrichtung ausführbar sind, und welche
zur Ausführung jeder Ausführungsform des vorab
ausgeführten erfindungsgemäßen weiteren
Verfahrens ausgestaltet ist.
-
Im
Folgenden werden erfindungsgemäße Ausführungsformen
im Detail mit Bezug zu den Figuren beschrieben.
-
1 stellt
ein schematisches Blockdiagramm eines Computer-Systems dar, welches
einen bekannten Tastatur- und Maus-Umschalter umfasst.
-
2 stellt
ein schematisches Blockdiagramm eines Computer-Systems gemäß einer
ersten erfindungsgemäßen Ausführungsform
dar, wobei eine Vorrichtung gemäß einer ersten
erfindungsgemäßen Ausführungsform dargestellt
ist.
-
3 stellt
schematisch vier Anzeige-Vorrichtungen dar, womit die vorliegende
Erfindung im Betrieb dargestellt wird.
-
4 stellt
ein Flussablaufdiagramm dar, welches ein Daten verarbeitendes Verfahren
gemäß der vorliegenden Erfindung verdeutlicht.
-
5 stellt
ein schematisches Blockdiagramm eines Computer-Systems gemäß einer
zweiten erfindungsgemäßen Ausführungsform
dar, wobei ebenfalls eine Umschalt-Vorrichtung gemäß einer zweiten
erfindungsgemäßen Ausführungsform dargestellt
ist.
-
In
den Figuren bezeichnen die gleichen Bezugszeichen ähnliche
Elemente, wenn es nicht anders beschrieben ist. Es sei darauf hingewiesen, dass
die beschriebenen Ausführungsformen beispielhafter Natur
sind und dass eine Anzahl von Merkmalen der Erfindung, wie z. B.
die Anzahl von Computern und die Anzahl und die Arten von Eingabevorrichtungen,
variieren können, ohne den Umfang der vorliegenden Erfindung
zu verlassen. Bevor die Ausführungsformen im Detail beschrieben
werden, werden grundlegende Betrachtungen bezüglich der
Erfindung und allgemeine Eigenschaften der Erfindung beschrieben
und erläutert.
-
Viele
Zeiger-Eingabe-Vorrichtungen oder zeigende Eingabevorrichtungen
(d. h. mit einem Zeiger arbeitende Eingabevorrichtungen), wie beispielsweise
die Maus eines PCs, geben gewöhnlicherweise nur eine Information
relativ zu ihrer letzten Position bezüglich ihrer Bewegungen
aus. Obwohl diese relativen Bewegungen theoretisch aufsummiert werden
könnten, um eine absolute Position der Maus zu bestimmen,
ist es in der Praxis nicht möglich, die absolute Position
des Zeigers (der Maus) nur ausgehend von den relativen Daten der
Maus, welche an einen Computer gesendet werden, zu bestimmen. Der
Grund dafür liegt darin, dass die Computer unterschiedliche
Geschwindigkeits-/Skalierungs- und Beschleunigungs-Schemata für
die Maus implementieren, was dazu führt, dass es keine
direkte Beziehung zwischen den relativen Daten einer Maus, welche
an den Computer gesendet werden, und der absoluten Position des
Zeigers auf dem Bildschirm gibt. Die Situation wird dadurch weiter
erschwert, dass die Position des Mauszeigers von dem Computer unabhängig
von der Maus bewegt werden kann. Daher gibt es in der Praxis keine
Möglichkeit, wenn Daten über eine relative Bewegung
der Maus zu dem Computer gesendet werden, ausgehend von diesen Daten
allein die Position des Mauszeigers zu berechnen.
-
Um
dieses Problem zu überwinden, sendet die erfindungsgemäße
Vorrichtung Positionsdaten eines Zeigers als absolute Daten des
Zeigers. Dies ist möglich, da viele Computer, beispielsweise
solche mit USB-Schnittstellen, auch eine Zeigerinformation von grafischen
Tablett(-PC)s und Touch-Screen-Vorrichtungen akzeptiert. Vorrichtungen,
wie beispielsweise grafische Tablett(-PC)s, präsentieren
ihre Zeigerinformation als absolute Zeigerdaten mit Bezug zu einem
festgelegten Ursprung. Wenn absolute Daten eines Zeigers zu dem
Computer gesendet werden, dann kann die Position des Mauszeigers
zuverlässig bestimmt werden. Dies ermöglicht,
dass eine Umschalt-Strategie abhängig von der Zeiger-Position praktisch
implementiert wird, da die Vorrichtung in der Lage ist, zuverlässig
die Positi on des Mauszeigers einfach dadurch zu bestimmen, indem
sie die Daten, welche zu dem Computer gesendet worden sind, nachverfolgt.
-
Eine
standardisierte PC-Maus sendet jedoch gewöhnlicherweise
relative Bewegungsdaten der Maus, welche eine Information über
die horizontale und die vertikale Positionsänderung seit
der vorhergehenden Bewegungsnachricht enthält. Um dieses Problem
zu überwinden führt die vorliegende Erfindung
eine Umwandlung der relativen Daten des Zeigers in absolute Daten
des Zeigers durch. Dies ist möglich, indem die aktuellen
absoluten Koordinaten im Speicher gespeichert werden und die relative
Bewegungsinformation der Maus dazu addiert wird, um eine neue absolute
Position der Maus zu erzeugen. Diese neue absolute Position wird
dann an den Computer gemeldet.
-
Indem
die Bewegungsinformation der Maus dem Computer als absolute Daten
des Zeigers (und nicht als relative Daten des Zeigers) zugeführt
werden, weisen Einstellungen bezüglich irgendwelcher Beschleunigungen
und Skalierungen der Maus, welche auf dem Computer ausgewählt
worden sind, keinen Effekt auf die Aktion (Bewegung) der Maus aus. Verschiedene
Benutzer bevorzugen unterschiedliche Maus-Beschleunigungs- und Skalierungs-Schemata und
daher ist es vorteilhaft, diese Funktion für den Benutzer
nicht zu eliminieren. Um dieses Problem zu lösen, ermöglicht
es die Erfindung dem Benutzer, verschiedene Maus-Skalierungs-(Geschwindigkeits-)
und Beschleunigungs-Schemata auszuwählen. Die Wahl des
Benutzers beeinflusst die Art und Weise der Umwandlung von den relativen
Daten zu den absoluten Daten innerhalb der Vorrichtung. Es werden
Maus-Beschleunigungs- und Skalierungs-Schemata in ausreichender
Form bereitgestellt, um es dem Benutzer zu ermöglichen,
eine ähnliche Maus-Aktion (-Bewegung) zu erzielen, wie
diejenige, welche aufgetreten wäre, wenn die relativen Daten
des Zeigers an den Computer gesendet worden wären.
-
2 stellt
ein schematisches Blockdiagramm eines Computer-Systems gemäß der
vorliegenden Erfindung dar, welches eine Vorrichtung 100 gemäß einer
ersten erfindungsgemäßen Ausführungsform
umfasst, welche im Folgenden als Vier-Wege-HDI-Umschalter bezeichnet
wird und welche zur gemeinsamen Nutzung einer Tastatur 101 und
einer Maus 102 von vier Computern 103–106 ausgestaltet
ist, welche jeweils ihre eigenen entsprechenden Anzeigen 108-111 ansteuern.
Die Tastatur, die Maus und die Computer sind über entsprechende USB-Kabel 107 mit
der Umschalt-Vorrichtung 100 verbunden. Die Umschalt-Vorrichtung
umfasst eine Steuerung, welche ihren Betrieb steuert und welche in
der Praxis unter Verwendung zahlreicher elektronischer Daten verarbeitender
Vorrichtungen und Schaltungen implementiert werden kann. Die HDI-Umschalt-Vorrichtung 100 weist
vier USB-Computer-Schnittstellen 121–124 auf,
welche einen Ausgang von der Vorrichtung bereitstellen und welche
jeweils mit einem entsprechenden seriellen Schnittstellen-Treiber 131–134 verbunden
sind, die in einem FPGA 108 realisiert sind. Diese seriellen
Schnittstellen-Treiber arbeiten mit der USB-Kommunikation niedrigen
Niveaus (”low level”) zwischen dem HDI-Umschalter
und den Computern. Ein Mikroprozessor 109 befindet sich
in Kommunikation mit dem FPGA und ist in der Lage, Daten von den
seriellen Schnittstellen-Treibern zu lesen und über diese
zu schreiben. Der Mikroprozessor ist ausreichend schnell, so dass
er in der Lage ist, das Vorhandensein einer Tastatur, einer Maus
und eines grafischen Tabletts bezüglich jedes der Computer
zu imitieren, wobei er gleichzeitig geeignete Daten sendet und empfängt.
-
Der
Mikroprozessor 109 befindet sich in Kommunikation mit den
peripheren USB-Schnittstellen 140, 141, welche
einen Eingang zu der Vorrichtung bereitstellen und welche mit der
Tastatur bzw. Maus verbunden sind. Der Mikroprozessor enthält eine
integrierte USB-Host-Steuerschaltung 142, welche es ihm
ermöglicht, mit der Tastatur und der Maus zu kommunizieren.
Der Mikroprozessor befindet sich ebenfalls in Kommunikation mit
zwei Tastschaltern 143, 146, einer Anzeige 144 und
einem seriellen Anschluss 145.
-
Ein
Betriebsart-Auswahlschalter 146 ist vorhanden, welcher
eingesetzt werden kann, um die Betriebsart des HDI-Umschalters auszuwählen.
Der Benutzer kann entweder eine manuelle Betriebsart oder eine Span-Betriebsart
(überspannende oder automatisierte Betriebsart) auswählen.
In der manuellen Betriebsart arbeitet der Umschalter in einer ähnlichen Weise
wie die existierenden KM-Umschalter. Eine Kanalauswahltaste 143 oder
Hotkey-Kombinationen auf der Tastatur können eingesetzt
werden, um einen Computer A-D auszuwählen, und die Tastatur-
und Maus-Signale, welche von der Tastatur 101 und der Maus 102 empfangen
werden, werden von dem Mikroprozessor 109 zu einem ausgewählten
der seriellen Schnittstellen-Treiber 131–134 geroutet.
Auf diese Weise kann der Benutzer einen ausgewählten der Computer
steuern. In der manuellen Betriebsart können die Daten
der Maus abhängig davon, wie der Benutzer ausgewählt
hat, den Betrieb des HDI-Umschalters zu konfigurieren, entweder
als relative Daten oder als absolute Daten des Zeigers an den Computer
gesendet werden. Diese Wahl ist ver fügbar, da sich der
Umschalter selbst in solch einer Weise an den Computer anmeldet,
dass der Computer glaubt, dass er mit drei Vorrichtungen, nämlich
einer Tastatur, einer Maus und einem grafischen Tablett oder irgendeiner
anderen Eingabevorrichtung, welche Daten einer absoluten Position
eines Zeiger ausgeben kann, verbunden ist. Die Daten des Mauszeigers werden
durch die Vorrichtung immer entweder im Maus-(relativen) oder Tablett-(absoluten)Format,
niemals beides gleichzeitig, übertragen. Bei der manuellen
Betriebsart tritt ein automatisches Umschalten abhängig
von der Position des Mauszeigers nicht auf.
-
Die
Span-Betriebsart wird unter Verwendung des Betriebsart-Auswahlschalters 146 oder
einer Hotkey-Kombination auf der Tastatur ausgewählt. Bei der
Span-Betriebsart wird das Routen der Daten der Tastatur oder der
Maus über die Position der Maus auf dem Bildschirm des
gesteuerten Computers bestimmt. Um die Span-Betriebsart einzusetzen,
konfiguriert der Benutzer anfänglich den HDI-Umschalter 100,
indem ein Computer 150 an den seriellen Anschluss 145 angeschlossen
wird und indem ein Konfigurations-Software-Programm 151 ausgeführt
wird, welches für diesen Zweck geliefert wird. Mit dem Konfigurations-Software-Programm
kann der Benutzer definieren, wie das Umschalten ausgeführt
werden soll, wenn er den Mauszeiger zu dem Rand des Bildschirms
bewegt.
-
3 stellt
eine mögliche Umschalt-Anordnung für die vier
Bildschirme 108, 109, 110, 111 dar, welche
zusammen in einem Quadrat angeordnet sind. In diesem Beispiel ist
jeder Bildschirm mit einem separaten entsprechenden Computer 102, 104, 105, 106 verbunden.
Das Konfigurations-Programm 151 ermöglicht es
dem Benutzer, zu spezifizieren, dass die Tastatur und die Maus zu
dem Computer D 106 umgeschaltet werden, wenn der Mauszeiger über den
unteren Rand des Bildschirms A 108 gezogen wird (wie es
durch den Pfeil 201 dargestellt ist). Der Benutzer kann
auch Beispiele definieren, in welchen er es nicht wünscht,
dass irgendein Umschalten auftritt. In dem in 3 dargestellten
Beispiel tritt kein Umschalten auf, wenn der Mauszeiger zu dem unteren
Rand des Bildschirms C gezogen wird (wie es durch den Pfeil 202 dargestellt
ist). Die Pfeile zwischen den vier Bildschirmen, welche in 3 dargestellt
sind, zeigen eine mögliche Umschalt-Anordnung an, welche
der Benutzer auswählen könnte.
-
Um
zu vermeiden, dass ein unerwünschtes Umschalten an den
Rändern eines Bildschirms ausgelöst wird, kann
der HDI-Umschalter derart konfiguriert werden, dass er nur umschaltet,
wenn er einen definierten Wert der Bewegungsdaten der Maus empfangen
hat, welcher bewirken würde, dass sich der Mauszeiger um
eine definierte Entfernung über den Rand des Bildschirms
hinaus bewegen würde, wenn er nicht eingeschränkt
wäre, innerhalb des Bildschirms zu verbleiben. Die Größe
dieses ”Pufferbereichs” oder Schwellenwerts der
Bewegung kann auch durch den Benutzer unter Verwendung des Software-Programms 151 konfiguriert
werden.
-
Das
Konfigurations-Programm ermöglicht es auch dem Benutzer,
das Beschleunigungs- und Skalierungs-Schema der Maus auszuwählen,
welches implementiert werden soll. Verschiedene Beschleunigungs-
und Skalierungs-Einstellungen können für jeden
Computer ausgewählt werden, obwohl angenommen wird, dass
die meisten Benutzer dasselbe Schema für alle Computer
auswählen werden. Die Konfiguration, welche von dem Benutzer
ausgewählt worden ist, wird in dem Speicher innerhalb des
Mikroprozessors 152 gespeichert.
-
Bei
der Span-Betriebsart empfängt der Mikroprozessor 109 relative
Daten des Zeigers von der Maus 102 und wandelt diese in
absolute Daten des Zeigers um, indem die aktuelle Zeigerposition
im Speicher 152 nachgeführt wird. Um die Umwandlung durchzuführen,
speichert der Mikroprozessor eine Reihe von vorherigen relativen
Mausbewegungen und verarbeitet diese zusammen mit einer neuen Information über
die Mausbewegung, um zu erkennen, wie die neue Information über
die relative Mausbewegung beschaffen sein sollte, um die absolute
Position des Zeigers zu verändern. Die Veränderung
in der absoluten Position des Zeigers wird durch die Beschleunigungs-
und Skalierungs-Einstellungen, welche der Benutzer ausgewählt
hat, beeinflusst. Indem eine Reihe von relativen Mausbewegungen
analysiert wird, kann ein Beschleunigungs-Schema der Maus implementiert
werden. Der Mikroprozessor speichert die aktuelle absolute Position
des Zeigers für jeden Computer 103–106,
welcher verbunden ist.
-
Wenn
der Mikroprozessor 109 einmal die Wandlung von den relativen
Daten des Zeigers zu den absoluten Daten des Zeigers bewerkstelligt
hat, wird die neue absolute Position des Zeigers an den ausgewählten
Computer über den entsprechenden seriellen Schnittstellen-Treiber 131–134 kommuniziert.
Der ausgewählte Computer sieht dann eine Anweisung von
einer Tablett-Vorrichtung, welche ihn anweist, seinen Zeiger zu
einer definierten Position X/Y relativ zu einem festgelegten Ursprungspunkt
zu bewegen.
-
Wenn
der Mikroprozessor erkennt, dass der Mauszeiger den Rand des Bildschirms
erreicht hat, überprüft er seinen Konfigurations-Speicher
(gespeichert in 152), um zu überprüfen, ob die
Bedingungen für ein Umschalt-Ereignis vorliegen. Wenn dies
der Fall ist, dann sendet der Mikroprozessor eine Anweisung an den
alten Computer, seinen Zeiger an die rechte untere Seite des Bildschirms
zu bewegen, wodurch der Mauszeiger von diesem Bildschirm effektiv verschwindet.
Der Mikroprozessor sendet dann eine Anweisung an den neuen Computer,
um seinen Zeiger auf eine Position auf dem Bildschirm zu bewegen,
welche der erforderlichen Bildschirmeintrittsposition entspricht. 3 verdeutlicht
diesen Prozess grafisch.
-
Beginnend
bei Punkt 203 bewegt der Benutzer den Mauszeiger entlang
dem gestrichelten Weg in der Richtung, welche durch den Pfeil angezeigt wird.
Wenn der Mauszeiger den Punkt 204 erreicht, überprüft
der Mikroprozessor seine Konfiguration und erkennt, dass er ein
Umschalten auf den Computer C vorzunehmen hat, wenn zusätzliche
nach unten gerichtete Mausdaten in einem geringen Umfang erfasst
werden. Wenn dies der Fall ist, sendet der Mikroprozessor eine Anweisung
an den Computer B, seinen Zeiger auf dem Bildschirm 205 nach
rechts unten zu bewegen. Er sendet dann eine Anweisung an den Computer
C, seinen Zeiger von dem unteren rechten Rand, wo er vorher geparkt
worden ist (206), zu dem geforderten Eintrittspunkt auf
dem Bildschirm C zu bewegen (207). In diesem Fall stimmt
der erforderliche Eintrittspunkt 207 mit derselben horizontalen Position
des Austrittspunkts von dem Bildschirm B überein (204).
Der Mikroprozessor routet dann alle folgenden Eingangsdaten der
Tastatur und der Maus an den Computer C, welcher den Bildschirm
C ansteuert.
-
Die
Eingangsdaten der Tastatur und der Maus werden weiter an den Computer
C geroutet, bis der Mauszeiger den Punkt 208 erreicht.
Wiederum überprüft der Mikroprozessor seine Konfiguration und
erkennt, dass es erforderlich ist, eine Umschaltung auf den Computer
D vorzunehmen, wenn zusätzliche nach links gerichtete Mausdaten
in einem geringen Umfang, welche einen Schwellenwert überschreiten,
erfasst werden. Wenn dies der Fall ist, sendet der Mikroprozessor
eine Anweisung an den Computer C, seinen Zeiger nach unten rechts
auf dem Bildschirm zu bewegen (206). Er sendet dann eine
Anweisung an den Computer D, um seinen Zeiger von rechts unten,
wo er vorübergehend geparkt worden ist, zu dem geforderten
Eintrittspunkt auf dem Bildschirm D zu bewegen (209). In
diesem Fall stimmt der geforderte Eintrittspunkt 209 mit
derselben vertikalen Position, welche der Austrittspunkt von dem
Bildschirm C aufweist (208), überein. Der Mikroprozessor
routet dann alle nachfolgenden Daten der Tastatur und der Maus an
den Computer D, welcher den Bildschirm D ansteuert.
-
Es
ist erkennbar, dass es dieses Verfahren dem Benutzer ermöglicht,
die Maus über alle vier Bildschirme zu bewegen, als wären
sie ein großer Bildschirm, welcher von einem einzigen Computer angesteuert
wird. Die Umschalt-Zeit des HDI-Umschalters 100 ist ausreichend
schnell, um einen gleichmäßigen und anmutigen Übergang
von einem Bildschirm auf den anderen zu erzielen.
-
Wie
vorab ausgeführt ist, empfängt der Mikroprozessor 109 bei
der Span-Betriebsart relative Daten des Zeigers von der Maus 102 und
wandelt diese in absolute Daten des Zeigers um, indem die aktuelle
Position des Zeigers im Speicher 152 nachgeführt
wird. Um diese Umwandlung durchzuführen, verarbeitet der
Mikroprozessor die relativen Daten X und Y gemäß jeglichen
Beschleunigungs- und Skalierungs-Optionen, welche von dem Benutzer
ausgewählt worden sind, und verwendet dann diese bearbeiteten
Daten X und Y, um die absolute Position des Mauszeigers zu verändern.
Verschiedene unterschiedliche Beschleunigungs-Schemata sind möglich,
wobei einige von diesen eine Analyse von einer Reihe von relativen
Bewegungen der Maus umfassen. Ein bevorzugtes Beschleunigungs-Schema
umfasst die getrennte Verarbeitung jeder relativen Mausbewegung,
wobei eine Nachschlagetabelle eingesetzt wird, um die relativen
Daten X und Y in die beschleunigten Daten X und Y umzusetzen. Eine Veränderung
der Werte in der Nachschlagetabelle verändert das Beschleunigungs-Schema.
Jede erforderliche Skalierung kann dann auf diese Daten angewendet
werden, indem diese Daten mit einem Skalierungsfaktor multipliziert
werden.
-
In 4 ist
ein Flussplan dargestellt, welcher das Daten verarbeitende erfindungsgemäße
Verfahren 400 zur Wandlung von relativen Positionsdaten eines
Zeigers, beispielsweise einer Maus, in absolute Positionsdaten des
Zeigers für einen der Computer 103, 104, 105, 106 weiter
verdeutlicht. Der Mikroprozessor speichert die oder hat Zugriff
zu der aktuellen absoluten Position des Zeigers für jeden
der Computer 103–106, welcher mit der
Umschalt-Vorrichtung 100 verbunden ist.
-
Mit
Bezug auf 4 werden relative X-, Y-Positionsdaten
(RX, RY) durch den Mikroprozessor von der Maus in Schritt 402 empfangen.
In Schritt 404 wird bestimmt, ob eine Beschleunigung von
dem Benutzer ausgewählt worden ist und ob sie für
die Zeiger-Eingabe-Vorrichtung aktiviert ist. Wenn dies nicht der
Fall ist, kommt das Verfahren zu Schritt 406, in dem eine
geforderte Skalierung durchgeführt wird, indem die relativen
X-Daten (RX) und die relativen Y-Daten (RY) mit einem Skalierungsfaktor
S multipliziert werden, um skalierte relative Positionsdaten X und
Y (SRX, SRY) zu erzeugen. Wenn bei Schritt 404 alternativ
entschieden wird, dass die Beschleunigung aktiviert ist, dann werden
die relativen X- und Y-Daten (RX, RY) in den Schritten 410 und 412 bearbeitet,
um beschleunigte relative X- und Y-Positionsdaten (ARX, ARY) des
Zeigers zu erzeugen.
-
Das
Beschleunigungs-Schema, welches in 4 dargestellt
ist, setzt Nachschlagetabellen ein, um die beschleunigten relativen
Daten zu bestimmen. In Schritt 410 werden die relativen
X-Daten (RX) eingesetzt, um einen Wert in einer Nachschlagetabelle
zu indizieren, um die beschleunigten relativen X-Daten (ARX) zu
bestimmen. In Schritt 412 werden die relativen Y-Daten
(RY) eingesetzt, um einen Wert in einer Nachschlagetabelle zu indizieren,
um die beschleunigten relativen Y-Daten (ARY) zu bestimmen. Die
Nachschlagetabelle, welche eingesetzt wird, hängt von dem
Beschleunigungs-Schema, welches von dem Benutzer ausgewählt
worden ist, ab.
-
Es
gibt zahlreiche Möglichkeiten, in welchen eine Nachschlagetabelle
eingesetzt werden kann, um unterschiedliche Beschleunigungs-Schemata
zu implementieren. Gemäß einer Ausführungsform
sind Werte in der Nachschlagetabelle gespeichert, welche ein Vielfaches
des relativen Wertes sind, welcher eingesetzt wird, um die Tabelle
zu indizieren. Beispielsweise kann ein relativer Wert von 1 einem
Wert von 15 zugeordnet werden, ein relativer Wert von 10 kann einem
Wert von 150 zugeordnet werden und ein relativer Wert von 100 kann
einem Wert von 1500 zugeordnet werden. Indem der Multiplikationsfaktor
der größeren Werte schwerer gewichtet wird, kann
eine beschleunigte Mausbewegung erzielt werden, wobei kleine Mausbewegungen
sehr kontrollierbar und genau sind, aber große Mausbewegungen
es ermöglichen, dass die Maus rasch über den Bildschirm
bewegt wird. Bei einer anderen Ausführungsform kann beispielsweise
ein relativer Wert von 1 einem Wert von 15,10 einem Wert von 200
und 100 einem Wert von 3000 zugeordnet werden. Andere Beschleunigungs-Schemata
können in ähnlicher Weise implementiert werden,
indem die relativen Werte, welche eingesetzt werden, um die Tabelle
zu indizieren, anderen Beschleunigungs-Multiplikatoren oder Faktoren
zugeordnet werden.
-
Jede
geforderte Skalierung kann dann auf die X- und Y-Daten in Schritt 406 angewendet
werden, indem ein Skalierungsfaktor S multipliziert wird, um skalierte
beschleunigte relative X- und Y-Daten (SARX, SARY) zu erhalten.
Abhängig davon, ob eine Beschleunigung ausgewählt
worden ist oder nicht, werden dann die skalierten relativen X- und
Y-Daten (SRX, SRY) oder die skalierten beschleunigten relativen
X- und Y-Daten (SARX, SARY) bei Schritt 408 zu der aktuellen
absoluten Position des Zeigers hinzu addiert, um eine neue absolute
Position des Zeigers zu erzeugen.
-
Die
Umschalt-Vorrichtung 100 meldet eine Zeiger-Eingabe-Vorrichtung
an jedem Computer an und stellt jedem Computer einen maximalen X-
und Y-Auslenkungswert (Xmax, Ymax) in einem Deskriptor der Umschalt-Vorrichtung
bereit, welcher die Eigenschaften der absoluten Zeiger-Eingabe-Vorrichtung
beschreibt. Diese maximalen Auslenkungswerte werden dann von dem
Betriebssystem des Computers eingesetzt, um zu bestimmen, wo der
Zeiger relativ zu den Rändern des Bildschirms des Computers platziert
wird. Beispielsweise würde eine absolute Position des Zeigers,
welche durch die Koordinaten X = Xmax/2, Y = Ymax/2 definiert ist,
den Zeiger in der Mitte des Bildschirms anordnen. In einem gewissen Umfang
sind die Werte Xmax und Ymax daher beliebig, obwohl sie ausreichend
groß sein sollten, um eine angemessene Genauigkeit bei
der Positionierung des Zeigers sicherzustellen. Für typische
Computer kann eine geeignete Genauigkeit erzielt werden, indem 16-Bit-Werte
für Xmax und Ymax eingesetzt werden.
-
In
Schritt 414 wird entschieden, ob die neue absolute Position
des Zeigers außerhalb der Grenzen des Bildschirms liegt
(d. h. kleiner als 0 oder größer als Xmax oder
Ymax ist) oder nicht. Wenn die neue absolute Position des Zeigers
nicht innerhalb der Grenzen des Bildschirms bezüglich des
aktuellen Computers und Bildschirms liegt, kann dieses ein Auslöser
sein, um die Mausbewegung auf den nächsten Computer umzuschalten.
Wenn bei Schritt 414 entschieden wird, dass die neue absolute
Position des Zeigers innerhalb der Grenzen des aktuellen Bildschirms
liegt, dann fährt das Verfahren bei Schritt 416 fort,
in welchem die aktuelle absolute Position des Zeigers, welche darzustellen
ist, gleich der neu bestimmten absoluten Position gesetzt wird,
und dann wird die aktuelle absolute Position in Schritt 418 dem
aktuellen Computer gemeldet. Der Mikroprozessor sendet eine Nachricht über
die absolute Position des Zeigers an den aktuell ausgewählten Computer A,
B, C oder D, um den Zeiger zu der aktuellen absoluten X-, Y-Position
zu bewegen, wie sie durch die aktuelle absolute Position des Zeigers
für diesen Computer, welche in seinem Speicher gespeichert
ist, bestimmt ist. Weitere relative Positionsdaten können dann
von der Maus in Schritt 402 empfangen werden, und das Verfahren
wiederholt sich.
-
Wenn
bei Schritt 414 entschieden wird, dass die neue absolute
Position nicht innerhalb der Grenzen des aktuellen Bildschirms liegt,
dann kommt das Verfahren zu Schritt 422, in welchem eine
Entscheidung getroffen wird, ob die absolute Position des Zeigers
anzeigt, dass zu einem neuen Bildschirm und Computer geschaltet
werden sollte. In Schritt 422 führt der Mikroprozessor
anhand der Konfiguration, welche durch den Benutzer ausgewählt
worden ist, eine Überprüfung durch. Wenn kein
Umschalt-Vorgang auszulösen ist (zum Beispiel da die absolute Position
des Zeigers mit dem oberen Rand des Bildschirms A 108 übereinstimmt),
dann begrenzt der Mikroprozessor die neue absolute Position des
Zeigers, so dass sie innerhalb der Grenze des aktuellen Bildschirms
liegt. Genauer wird die neue absolute X-Position der Maus derart
begrenzt, dass sie innerhalb des Bereiches 0 bis Xmax liegt, und
die neue absolute Y-Position der Maus wird begrenzt, dass sie innerhalb
des Bereichs 0 bis Ymax liegt. Das Verfahren setzt dann mit den
Schritten 416 und 418 fort, wie es vorab beschrieben
ist.
-
Wenn
alternativ der Prozessor in Schritt 422 anhand der Konfiguration
entscheidet, dass ein Umschalten zu einem nächsten oder
neuen der Computer und Bildschirme gefordert ist, dann wird die
entsprechende horizontale oder vertikale Austrittsposition für
den aktuellen Bildschirm bestimmt und bei Schritt 426 gespeichert.
Wenn zum Beispiel der aktuell ausgewählte Computer der
Computer A ist und die Konfiguration anzeigt, dass ein Umschalten
auf den Computer B vorgenommen werden sollte, wenn der Zeiger über
den rechten Rand des Bildschirms des Computers A gezogen wird (wie
es in 3 dargestellt ist), dann wird die Y-Koordinate
der Austrittsposition (Yexit) gespeichert. Wenn sich der Zeiger
am Austrittspunkt auf der halben Höhe des Bildschirms befindet,
dann wäre der Wert von Yexit gleich Ymax/2.
-
Bevor
auf den nächsten Computer umgeschaltet wird, sendet der
Mikroprozessor bei Schritt 428 eine Anweisung an den aktuell
ausgewählten Computer, um den Zeiger auf eine Position
unten rechts auf dem Bildschirm zu bewegen. Dies kann beispielsweise
erzielt werden, indem die absolute Position des Zeigers auf X = Xmax,
Y = 0 eingestellt wird und indem diese Werte im Schritt 428 an
den aktuellen Computer gesendet werden. Dann schaltet die Vorrichtung 100 in
Schritt 430 zu dem nächsten Computer (in diesem
Beispiel zu dem Computer B 104 und dem Bildschirm B 109)
um und jede Aktion der Tastatur und der Maus wird dann an den nächsten
Computer gemeldet und mit demselben Verfahren 400, wie
es in 4 dargestellt ist, verarbeitet. Obwohl dies dem
Benutzer den Eindruck vermittelt, dass seine Tastatur und seine
Maus zu dem nächsten Computer ”geschaltet” worden
sind, adressiert der Mikroprozessor 109 einen Anschlag
der Tastatur und eine Mausposition einfach an einen anderen der Computer 103–106 über
die FPGA 108. Daher wird im Allgemeinen dasselbe Verfahren 400 für
jeden Computer ausgeführt, wenn der jeweilige Computer abhängig
von der absoluten Mausposition ausgewählt ist.
-
Wenn
USB-Eingabevorrichtungen, wie beispielsweise USB-Tastaturen und
USB-Mäuse, verwendet werden, dann kann die Vorrichtung 100 derart
konfiguriert sein, so dass die Computer kein Unterbrechungs-Ereignis
bezüglich einer USB-Vorrichtung bekommen. Der Umschalter 100 ist
derart konfiguriert, dass er konstant das Vorhandensein der Tastatur
und der Maus für alle Computer emuliert. Wie eine konstante
Emulation erzielt wird, ist dem Fachmann allgemein bekannt. Dieses
Vorgehen ist vorteilhaft, da eine Neu-Registrierung von USB-Vorrichtungen
bei jedem Umschalten den Vorgang der Umschalt-Vorrichtung 100 bei
der Span-Betriebsart für den praktischen Gebrauch zu langsam
machen würde.
-
Nach
dem Schritt 430 wird keine weitere Meldung über
einen Tastenanschlag der Tastatur oder eine Mausbewegung an den
aktuellen Computer gesendet, bis der aktuelle Computer (in diesem
Beispiel Computer A) durch den Prozessor bei Schritt 432 als nächstes
ausgewählt wird. Der Mikroprozessor berechnet die geforderte
Zeigerposition mit Hilfe des entsprechenden Wertes, welcher in einem
Schritt, welcher dem Schritt 426 entspricht, für
den vorher ausgewählten Computer gespeichert worden ist,
kurz bevor das Umschalten stattfindet. Wenn beispielsweise der Bildschirm
des Computers B rechts neben dem Bildschirm des Computers A angeordnet
ist (wie es in 3 dargestellt ist) und wenn
der Umschalter 100 derart konfiguriert ist, dass er eine
Umschaltung zu dem Computer A auslöst, wenn der Zeiger über den
linken Rand des Bildschirms des Computers B bewegt wird, dann speichert
der Mikroprozessor den vertikalen Austrittspunkt (Yexit) in dem
Schritt 426 des Verfahrens 400, welcher für
den Computer B ausge führt wird, wenn der Zeiger über
den linken Rand des Bildschirms des Computers B bewegt wird. Bei
dem Umschalten 432 zu dem Computer A stellt der Mikroprozessor
die aktuelle absolute Zeigerposition X, Y für den Computer
A mit den Koordinaten X = Xmax, Y = Yexit in Schritt 434 ein.
Auf diese Weise erscheint es, als wenn sich der Zeiger fließend über die
Bildschirme von dem Bildschirm des Computers B zu dem Bildschirm
des Computers A bewegt. Das Verfahren setzt dann, wie es vorab beschrieben
ist, bei Schritt 402 fort, indem es über den Pfad 420 zurückkehrt,
um relative Positionsdaten bei Schritt 402 zu empfangen.
-
In
dem vorab beschriebenen Beispiel tritt das Umschalten zwischen den
Computern A und B an dem linken Rand des Bildschirms des Computers
B auf und ein vertikaler Austrittspunkt Yexit wurde gespeichert.
Wenn die Bildschirme übereinander angeordnet sind (wie
beispielsweise die Bildschirme B und C in 3) und wenn
das Umschalten derart konfiguriert ist, dass es nicht an der Seite
des Bildschirms sondern unten am Bildschirm auftritt, dann wird
vorzugsweise ein horizontaler Austrittspunkt Xexit verwendet, so
dass der horizontale Austrittspunkt des vorherigen Bildschirms mit
dem horizontalen Eintrittspunkt des neuen Bildschirms übereinstimmt.
-
Zur
Vereinfachung der Erläuterung ist in dem Flussplan, welcher
in 4 dargestellt ist, angenommen, dass kein Pufferbereich
eingestellt worden ist. Das Merkmal Pufferbereich kann implementiert
werden, indem der Umschalter 100 derart konfiguriert wird,
so dass der Umschalter ein Umschalten nur vornimmt, wenn ein vordefinierter
Umfang einer Zeigerbewegung erfasst worden ist, welcher bewirken
würde, dass sich der Mauszeiger um eine definierte Entfernung über
den Rand des Bildschirms bewegen würde, wenn er nicht anderweitig
daran gehindert würde, innerhalb des Bildschirms zu verbleiben.
Diese optionale Erweiterung kann in die Funktionalität des
Umschalters aufgenommen werden, indem die Position des Mauszeigers
in einem imaginären Pufferbereich um die reale Begrenzung
des Bildschirms herum gespeichert wird während die Meldungen über die
Position des Mauszeigers, welche an den Computer gesendet werden,
derart begrenzt werden, dass sie innerhalb der realen Grenzen (d.
h. zwischen 0 und Xmax und zwischen 0 und Ymax) des Bildschirms
liegen.
-
Dem
Fachmann ist bekannt, dass der Mikroprozessor 109 und das
FPGA 108 mehrere unterschiedliche logische Funktionen implementieren, welche
unterstützt werden, um erfolgreich die Span-Betriebsart
zu unterstützen und die Umschalt- Vorrichtung 100 zu
steuern. Wie vorab beschrieben ist, wandelt eine Verarbeitungsfunktion
die relativen Zeigerdaten in absolute Zeigerdaten um und eine Routing-Steuerfunktion
verwendet die absolute Zeigerposition und die anderen Daten der
Bewegung der Maus, um zu bestimmen, ob die Eingangsdaten der Tastatur
und der Maus zu einem anderen Computer geroutet werden sollen. Eine
Routing-Funktion routet dann die Daten der Tastatur und der Maus
zu dem aktuell ausgewählten Computer.
-
Gemäß einer
Ausführungsform kann der Mikroprozessor mit Hilfe eines
LPC2468, welcher von NXP bereitgestellt wird, implementiert werden,
und der FPGA kann mit Hilfe eines XC3S250E, welcher von Xilinx bereitgestellt
wird, implementiert werden.
-
Außer
zur Steuerung von mehreren Computern, welche ein Video auf mehreren
Anzeige-Vorrichtungen darstellen, kann die vorliegende Erfindung
auch eingesetzt werden, um mehrere Computer zu steuern, welche ein
Video auf einer einzigen Anzeige-Vorrichtung darstellen oder welche
ein Video auf einer kleineren Anzahl von Anzeige-Vorrichtungen darstellen,
als es der Anzahl der Computer entspricht.
-
5 stellt
ein schematisches Blockdiagramm eines Computer-Systems 500 gemäß einer weiteren
erfindungsgemäßen Ausführungsform dar, welches
eine Umschalter-Vorrichtung 510 gemäß einer
zweiten erfindungsgemäßen Ausführungsform umfasst.
Wie in 5 dargestellt ist, umfasst das Computer-System 500 vier
Computer 501, 502, 503, 504,
eine Umschalt-Vorrichtung 510 in der Ausführung
einer einzigen Umschalt-Vorrichtung, eine einzige Anzeige-Vorrichtung 520,
eine Tastatur 522 und eine Maus 524. Die Umschalt-Vorrichtung 510 ist
der Umschalt-Vorrichtung 100 ähnlich, aber umfasst auch
eine Video-Kombinationshardware, welche Video-Eingangsdaten von
den separaten Computern 501, 502, 503, 504 kombiniert
und die separaten Video-Eingangsdaten in ein einziges Video-Ausgangssignal
kombiniert, welches der Anzeige-Vorrichtung 520 zugeführt
wird. Eine Hardware, um die Video-Kombinationsfunktion selbst durchzuführen,
ist nach dem Stand der Technik bekannt. Eine Video-Kombinationshardware
wird beispielsweise in dem Vierer-V-Umschalter, welcher von HETEC
Datensysteme GmbH aus Deutschland verfügbar ist, bereitgestellt.
-
Wie
in 5 dargestellt ist, wird die Umschalt-Vorrichtung 510 als
einzelne Vorrichtung bereitgestellt, welche sowohl die Video-Kombinationshardware
als auch die Umschalt-Hardware, welche dem Umschalter 100 der
ersten erfindungsgemäßen Ausführungsform ähnlich
ist, umfasst. Gemäß anderen erfindungsgemäßen
Ausführungsformen kann das Computer-System eine separate
Video-Kombinationsvorrichtung und eine separate Umschalt-Vorrichtung
umfassen. Erfindungsgemäß können auch eine
größere oder eine kleinere Anzahl von Computern
vorhanden sein. Darüber hinaus kann auch eine größere
Anzahl von Anzeige-Vorrichtungen vorhanden sein, wobei die Video-Kombinationshardware entsprechend
ausgestaltet ist, wobei aber die Anzahl der Anzeige-Vorrichtungen
geringer als die Anzahl der Computer in dem System ist, so dass
zumindest eine der Anzeige-Vorrichtungen Videodaten von mehr als
einem Computer gleichzeitig wiedergibt.
-
Wie
in 5 dargestellt ist, ist jeder Computer 501, 502, 503, 504 durch
ein entsprechendes Video-Kabel 506, 507, 508, 509 mit
der Umschalt-Vorrichtung 510 verbunden, so dass der Video-Ausgang von
jedem Computer einem Video-Eingang der Umschalt-Vorrichtung 510 zugeführt
wird. Ein oder mehrere Kabel, über welche Datensignale
der Tastatur und der Maus geführt werden können
(dargestellt durch einzelne Kabel 512, 514, 516, 518),
sind zwischen jedem Computer und der Umschalt-Vorrichtung verbunden.
Jedes Kabel 512, 514, 516, 518 kann
ein einzelnes USB-Kabel sein, welches zwischen der Umschalt-Vorrichtung
und einem entsprechenden der Computer verbunden ist.
-
Die
Anzeige-Vorrichtung 520, beispielsweise ein Computer-Monitor,
ist mit einem Video-Ausgang der Umschalt-Vorrichtung 510 über
ein Video-Kabel 526 verbunden, welches der Anzeige-Vorrichtung
ein kombiniertes Video-Signal zuführt, um zu ermöglichen,
dass die Video-Ausgaben von mehreren Computern gleichzeitig dargestellt
werden. Beispielsweise stellt der Bildschirm 530 der Anzeige-Vorrichtung 520 die
Video-Ausgabe von jedem der vier Computer in einem getrennten entsprechenden
Bereich 532, 534, 536, 538 oder
Quadranten des Bildschirms zur gleichen Zeit dar. Bei anderen Ausführungsformen kann
die Video-Ausgabe von weniger als allen Computern auf dem Monitor
zur gleichen Zeit dargestellt werden. Beispielsweise kann die Video-Ausgabe
von zwei ausgewählten der Computer auf der Anzeige-Vorrichtung
zur gleichen Zeit dargestellt werden.
-
Die
Tastatur 522 ist mit einem Tastatur-Eingang der Umschalt-Vorrichtung 510 mit
Hilfe eines Tastatur-Kabels, beispielsweise einem USB-Kabel, verbunden,
und die Maus 524, oder andere Zeige-Vorrichtungen, ist
mit einem Zeigevorrichtungs-Eingang durch ein Kabel 529 verbunden,
welches auch ein USB-Kabel sein kann.
-
Das
Verfahren zum Betreiben der Umschalt-Vorrichtung 510 und
des Computer-Systems 500 ist im Allgemeinen demjenigen,
welches vorab mit Bezug zu 2, 3 und 4 beschrieben worden
ist, ähnlich. Die Umschalt-Hardware, welche im Zusammenhang
mit der ersten erfindungsgemäßen Ausführungsform
beschrieben worden ist, ist auch für das in 5 dargestellte
System geeignet. Mit anderen Worten verändert die Tatsache,
dass die vier Video-Signale zur Anzeige auf einem einzigen Bildschirm
kombiniert werden, den Betrieb der Umschalt-Hardware, wie er vorab
beschrieben ist, nicht fundamental. Die Video-Umschalt-Hardware
und die Video-Kombinationshardware können in getrennten Einheiten
vorhanden sein und unabhängig eingesetzt werden. Ein Vorteil
des Vorhandenseins der Umschalt-Hardware und der Video-Kombinationshardware
in derselben Einheit 510 ist jedoch, dass dieselbe Layoutkonfigurationsinformation
des Bildschirms verwendet werden kann, um sowohl zu definieren, wo
die Video-Ausgabe von jedem Computer auf dem kombinierten Bildschirm
vorhanden ist, als auch um den Umschalt-Vorgang der Umschalt-Hardware
zu steuern. Beispielsweise kann bei der in 5 dargestellten
Ausführungsform die Umschalt-Hardware derart konfiguriert
sein, dass sich der Maus-Cursor auf dem Bildschirm-Bereich 534 fließend
bewegt, nachdem er den rechten Rand des Bildschirm-Bereichs 532 nach
rechts verlassen hat. Wenn der Benutzer wünscht, dass das
Layout des kombinierten Bildschirms neu konfiguriert wird, so dass
die Anzeigebereiche 532 und 534 nun getauscht
werden, dann kann die Umschalt-Vorrichtung 510 dieselben
Konfigurationsdaten verwenden, um die Umschalt-Grenzen neu anzuordnen,
so dass sich der Maus-Cursor auf dem Bildschirmbereich 532 fließend
bewegt, nachdem er den rechten Rand des Bildschirmbereichs 534 nach
rechts verlassen hat.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste
der vom Anmelder aufgeführten Dokumente wurde automatisiert
erzeugt und ist ausschließlich zur besseren Information
des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen
Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt
keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-