-
Diese Erfindung bezieht sich auf
Berührungseingabefeldsysteme.
-
Es wurde bereits früher vorgeschlagen, eine sich über
eine Schirm- bzw. Stirnplatte erstreckende Anordnung von
unterbrechbaren Lichtstrahlen zur Bezeichnung von
Anzeigepositionen bereitzustellen. Zu typischen, diesen Systemtyp
zeigenden Patenten zählen die US-PS 3 764 813 (erteilt am
9. Oktober 1973), die US-PS 3 775 560 (erteilt am 27.
November 1973) und die US-PS 4 198 623 (erteilt am 15. April
1980). Bei der Benutzung solcher Systeme ist es äußerst
zweckmäßig, den Finger oder einen Zeiger zur Bezeichnung
einer gewünschten Anzeigeposition mittels einer
Anzeigemarkierung wie etwa einer Videopositionsbezeichnungsmarkierung
oder eines Cursors, die beispielsweise ein in einem Kreis
enthaltenes X oder dergleichen sein kann, einzusetzen. Die
endliche Dicke eines Fingers und die vom Abstand der
Lichtstrahlen herrührende geringe Genauigkeit der
Berührungserfassungseinheit können jedoch dazu führen, daß die
Videopositions-Bezeichnungsmarkierung für manche Zwecke nicht
ausreichend genau positioniert wird.
-
In der EP-A-0 083 395 ist ein System beschrieben, bei
dem die Vorgeschichte der aktuellen Griffelpositionsdaten
herangezogen wird, um die angemessene genaue
Koordinatenposition eines Cursors zu bestimmen, wenn mehrere mögliche
Positionen erfaßt werden.
-
Ein Problem, das bei der korrekten Betätigung von
Berührungstafelanzeigen störend auftreten kann, besteht in
Anfangs- und End-Übergangszuständen. Beispielsweise können
dynamische Vorgänge bei der Einleitung der Berührung wie
etwa ein winkliger Eintritt oder eine Fliege oder ein
anderes Insekt oder ein Kleidungsstück teilweise einen der
Lichtstrahlen unterbrechen, was eine falsche Positionierung
des Cursors hervorrufen kann. In gleicher Weise kann der
Finger am Schluß des Vorgangs der Bezeichnung einer
gewünschten Videoposition auf der Anzeige mit Hilfe des
Fingers einer Person eventuell mit einem Winkel
zurückgezogen werden, wobei sich ein Fehler einstellen könnte, falls
sich dieser bei der Beendigung auftretende Übergangszustand
auf die Positionierung der Videobezeichnungsmarkierung oder
des Cursors niederschlägt.
-
Demgemäß ist es eine Aufgabe der vorliegenden
Erfindung, Positionsfehler zu vermeiden, die durch
Übergangszustände oftmals am Beginn oder am Ende der Markierung eines
Punkts auf der Anzeige, oder durch Eingangssignale von der
Berührungserfassungseinrichtung wie etwa durch eine
momentane zufällige Unterbrechung der Lichtstrahlen
hervorgerufen werden.
-
Es ist eine weitere Aufgabe der vorliegenden Erfindung,
eine Anzeigemarkierung wie etwa eine
Videopositions-Bezeichnungsmarkierung oder einen Cursor trotz der Benutzung
einer verhältnismäßig groben
Berührungsfeld-Erfassungseingabe genau zu positionieren.
Kurzfassung der Erfindung
-
Die vorliegende Erfindung ist in dem beigefügten
Ansprüchen definiert.
-
In Übereinstimmung mit einem Gesichtspunkt der
Erfindung wird die neue Position für die
Videopositions-Bezeichnungsmarkierung nicht lediglich durch die Position eines
einen Punkt auf dem Anzeigebildschirm bezeichnenden
Zeigers, sondern auch durch eine
Geschwindigkeitskorrekturfunktion (die einen Beschleunigungsfaktor enthalten kann),
die die Richtung und Größe der Positionsverschiebung des
Zeigers zwischen aufeinanderfolgenden Zeitintervallen
beinhaltet, bestimmt. Die zu beschreibende Erfindung kann auch
zusammen mit anderen Typen von Anzeigen wie etwa
Lichteranordnungen, Flüssigkristall, Plasmatafeln, Anordnung von
erleuchteten Schaltern eingesetzt werden.
-
In Übereinstimmung mit einem weiteren Gesichtspunkt der
Erfindung werden Eingabeübergangszustände oder momentane
Unterbrechungen der Lichtstrahlen durch eine elektronische
Schaltung beseitigt, die die Verschiebung der Position der
Videobezeichnungsmarkierung solange verzögert, bis eine
vorbestimmte Vielzahl von Abtastungen eine positive bzw.
eindeutige und beständige Unterbrechung der Strahlen
anzeigt. Des weiteren wählt das System dann, wenn der Zeiger
von dem Berührungsfeld entfernt wird, eine Anzeigeposition
für den Cursor auf der Grundlage einer Abtastung, die von
der letzten Abtastung, in der die
Berührungseingabevorrichtung aktiv war, zurückdatiert bzw. herrührt, anstatt der
zuletzt beobachteten Position des Zeigers, die ein
fehlerhafter, bei dem Abheben des Fingers von der
Berührungseingabeeinrichtung eingeschlagener Pfad sein könnte, zur
Positionierung des Cursors zu folgen.
-
Von einem anderen Gesichtspunkt aus gesehen,
bewerkstelligt die Erfindung eine präzise
Cursorpositionierung anhand von groben Eingabedaten mit
Hilfe von Positionsbestimmungen, die sich über mehrere
Abtastintervalle erstrecken, und aufgrund der Vermeidung
der Einführung von fehlerhaften Daten bei den Übergängen
zwischen den stationär unterbrochenen Strahlzuständen und
dem ununterbrochenen Strahlzustand.
-
Es ist ferner festzustellen, daß die vorliegende
Erfindung auch bei anderen Typen von feinen und relativ groben
Berührungsfeld-Eingabeeinrichtungen, bei denen gekreuzte
Drähte oder andere Schaltelemente oder kapazitive Kissen
bzw. Berührungsbereiche eingesetzt werden, in gleicher
Weise wie bei Berührungsfeld-Eingabeschaltungen mit
Lichtstrahlunterbrechung anwendbar ist. Ferner muß die
Schirmplatte bzw. Stirnplatte des Eingabe-Berührungsfelds nicht
über dem Anzeigebildschirm liegen, sondern könnte
beispielsweise auch separat angeordnet sein, solange der
Benutzer die aus der benutzerseitigen Positionierung eines
Zeigers wie etwa eines Fingers resultierende Bewegung eines
Cursors auf der Anzeige sehen kann.
-
Vorteile des neuen Systems beinhalten die Fähigkeit zur
genauen Bestimmung der Anzeigeposition trotz der
Verfügbarkeit von lediglich relativ groben Positionsdaten, wie sie
durch die Positionierung eines Fingers auf der Oberfläche
der Schirmplatte der Berührungseingabeeinrichtung angezeigt
werden. Zusätzlich werden fehlerhafte Anzeigen vermieden
und es ist eine genaue abschließende Positionierung der
Video-Bezeichnungsmarkierung möglich, selbst wenn der Finger
in einem spitzen Winkel relativ zur Schirmplatte eingeführt
oder wegbewegt wird. Ferner ist die Notwendigkeit zur
präzisen Ausrichtung des Berührungsfelds mit der Anzeige
beseitigt und Parallaxenprobleme oder -fehler sind
gleichfalls ausgeschaltet.
-
Ein weiteres nützliches Merkmal besteht in der
Fähigkeit zur "sprungartigen Bewegung" des Cursors zu einer
neuen Position auf der Anzeige bei einer anfänglichen
Berührungsaktivierung mit Hilfe des Zeigers, wodurch die
Notwendigkeit zur Lokalisierung des Cursors vor der Bezeichnung
einer neuen Position auf der Anzeige beseitigt und demgemäß
die Geschwindigkeit der Benutzereingabe erhöht wird.
-
Weitere Aufgaben, Merkmale und Vorteile der Erfindung
erschließen sich aus einer Betrachtung der nachstehenden
detaillierten Beschreibung und aus den beigefügten
Zeichnungen.
Kurzbeschreibung der Zeichnungen
-
Fig. 1 zeigt eine Anzeige- und elektronische
Berührungsfeldeinheit eines Typs, bei dem die vorliegende
Erfindung anwendbar ist;
-
Fig. 2 zeigt ein schematisches Blockschaltbild eines
Anzeige- und Berührungsfeldsystems;
-
Fig. 3 zeigt eine Querschnittsansicht durch eine
Kathodenstrahlröhre und ein Anzeigegehäuse, und damit den
physikalischen Aufbau eines Berührungsfeld-
Lichtstrahlsystems anzeigt;
-
Fig. 4 zeigt, wie Information in die
Berührungsfeldanordnung durch die Benutzung des die Schirmplatte
berührenden und eine Lichtstrahlenanordnung unterbrechenden
Zeigefingers einer Person eingegeben wird;
-
Fig. 5 zeigt eine schematische Darstellung eines
Schaltsystems zur Erregung oder Abtastung der
Lichtstrahlpfade, die sich über die Schirmplatte einer Anzeige
erstrecken;
-
Fig. 6 zeigt ein Blockschaltbild eines Typs einer
Mikroprozessoranordnung, die zur Realisierung der
vorliegenden Erfindung eingesetzt werden kann;
-
Fig. 7 zeigt ein Blockschaltbild einer hardwaremäßigen
Ausführungsform, die zur Realisierung der Erfindung
eingesetzt werden kann;
-
Fig. 8 zeigt ein Ablaufdiagramm, das Methoden zur
Unterdrückung von Übergangseffekten zeigt; und
-
Fig. 9 zeigt ein Ablaufdiagramm zur Erzielung von
Daten für eine präzise und sanfte Cursorpositionierung aus
relativ groben Eingabeinformationen vom Berührungsfeld.
Detaillierte Beschreibung der Erfindung
-
Es wird nun spezieller auf die Zeichnungen Bezug
genommen. Fig. 1 zeigt eine Anzeige 12 für das
elektronische System, die in einem Gehäuse 14 installiert
ist. Über die Vorderseite der Anzeige 12 erstreckt sich
eine Schirmplatte, wobei Lichtstrahlen über die bzw.
entlang der Oberfläche dieser Schirmplatte sowohl in
horizontaler als auch in vertikaler Richtung gerichtet
sind, so daß die koordinatenmäßige Position eines Fingers
in einfacher und genauer Weise auf der Grundlage der
Unterbrechung der Lichtstrahlen bestimmt werden kann.
-
Fig. 2 zeigt eine schematische Blockbilddarstellung,
das die Prinzipien der Erfindung auf einem allgemeineren
Niveau veranschaulicht. Genauer gesagt, ist eine Anzeige 22
mit einem zugeordneten Berührungsfeld (Berührungstafel) 24
versehen, das lediglich zur Bereitstellung relativ grober
Positionsinformation, verglichen mit der Größe eines
Bildelements der Videoanzeige 22, im Stande ist, wie unter
Bezugnahme auf die weiteren Fig. in größeren Einzelheiten
erläutert wird. Der Datenprozessor 26 für das
Berührungsfeld bestimmt die Position eines Zeigers wie etwa
des Fingers einer Person auf dem Berührungsfeld 24 als
Ergebnis der zyklischen Abtastung der Phototransistoren und
der Leuchtdioden, die das Berührungsfeld 24 bzw. einen Teil
desselben bilden, und einer Erfassung der zeitlich
gesteuerten bzw. abgefragten Ausgangssignale jedes der
Phototransistoren. Information hinsichtlich der Position
des Fingers einer Person auf dem Anzeigefeld wird von dem
Datenprozessor 26 für die Berührungstafel zum
Anzeigeprozessor 28 geleitet. Hintergrund-
Anzeigeinformation wird von einer Schaltung 30 an den
Anzeigeprozessor 28 angelegt, um die gewünschte
Hintergrundinformation wie etwa eine Karte, eine Tastatur
oder dergleichen bereitzustellen, die durch die
Videopositons-Bezeichnungsmarkierung überlagert wird. Ein
elektronisches System 32 ist schematisch in Fig. 2 zusammen
mit den Verbindungen zwischen diesem und dem
Anzeigeprozessor 28 und der Datenquelle 30 für die
Hintergrundanzeige dargestellt, da das Berührungsfeld und
das Anzeigesystem oftmals mit einem größeren elektronischen
System, das eines aus einer großen Anzahl von Systemtypen
sein kann, verbunden sind.
-
Fig. 3 zeigt eine teilweise Schnittansicht, die durch
die Schirmplatte 12 und das Gehäuse 14 hindurchgehend in
einer Ebene auf genommen ist, die senkrecht zu der
Schirmplatte 12 verläuft und sich entlang einer
horizontalen Linie durch die Schirmplatte 12 erstreckt. In
Fig. 3 ist die Anzeigeoberfläche einer Kathodenstrahlröhre
34 nahe bei der Schirmplatte 12 angeordnet. Wie in den Fig.
3 und 4 gezeigt ist, ist ein Satz von gedruckten
Schaltplattinen (Leiterplatten) 41 bis 44 in der Nähe der
Vorderseite der Kathodenstrahlröhre 34 und der Schirmplatte
12 angeordnet. Jede dieser gedruckten Schaltplatinen ist
entweder mit Photoemittern wie etwa Leuchtdioden 46 oder
Photodetektoren wie etwa Phototransistoren 48 versehen. Die
Leuchtdioden 46 erzeugen Lichtstrahlen, wie etwa
Infrarotstrahlen, die über die bzw. entlang der
Schirmplatte 12 in enger Nachbarschaft verlaufen. Einzelne
Lichtstrahlen verlaufen von einer Leuchtdiode 46 an einem
Rand der Schirmplatte zu einem mit der Diode ein Paar
bildenden Phototransistor 48 an dem anderen Rand der
Schirmplatte. Schaltschaltungen aktivieren
aufeinanderfolgende Paare von Leuchtdioden 46 und
Phototransistoren 48 sequentiell und das Ausgangssignal
jedes Phototransistors 48 wird sequentiell abgetastet. Wenn
während der Abtastperiode kein Ausgangssignal von einem
bestimmten Phototransistor 48 empfangen wird, bedeutet
dies, daß der Lichtstrahl unterbrochen worden ist. Das
bestimmte Paar aus Leuchtdiode 46 und Phototransistor 48
kann durch die Abtastzeitgabe der aktivierenden
Schaltschaltung bei dem sequentiellen Fortschreiten der
Abtastung über die Schirmplatte identifiziert werden. Dies
kann entweder gleichzeitig oder sequentiell sowohl relativ
zu den horizontal verlaufenden Infrarotlichtstrahlen als
auch hinsichtlich der vertikal verlaufenden Lichtstrahlen
durchgeführt werden. Durch Lokalisierung der
Koordinatenposition des die Schirmplatte berührenden Fingers sowohl in
horizontaler als auch in vertikaler Richtung mit Hilfe
einer in dem Datenprozessor 26 für das Berührungsfeld
enthaltenen Schaltung (Fig. 2) können geeignete Signale an
den Anzeigeprozessor 28 angelegt werden und eine
Positionsmarkierung oder ein Cursor für die
Anzeigebestimmung kann auf der Anzeige durch den
Anzeigeprozessor 28 positioniert werden. Diese könnte in
der Form eines Symbols wie etwa eines Kreises mit einem
daraufgesetzten X gestaltet sein, das in voller Darstellung
beispielsweise gerade oberhalb des Zeigers positioniert
sein, wie es in den Fig. 1 und 4 beim Bezugszeichen 50
gezeigt ist.
-
Fig. 5 zeigt schematisch die Methode zur Abtastung der
Lichtstrahlen oder der Paare aus Leuchtdioden 46 und
Phototransistoren 48, die bei den Lichtstrahl-
Abtastanordnungen eingesetzt werden. Genauer gesagt,
besitzt jede Leuchtdiode 46 einen mit ihr verknüpften
Aktivierungsschalter 52 und auch jeder Phototransistor 48
ist mit einem Aktivierungsschalter 54 verbunden. Eine
Addressammelleitung 56 erstreckt sich von einer
Signalverarbeitungsschaltung, die allgemein als ein
Mikroprozessor 58 gezeigt ist, zu den Schaltplatinen 41 bis
44. Hierbei versteht sich, daß ein Mikroprozessor 48 als
solcher nicht anstelle einer Zähllogik eingesetzt werden
kann und daß er zur Erleichterung des Verständnisses des
Betriebs der Schaltung gemäß Fig. 5 gezeigt ist. Die
Schalter 52 und 54 sind selbstverständlich
Halbleiterschalter und werden auf einanderfolgend
entsprechend den über die Sammelleitung 56 zugeführten
Adressen erregt bzw. aktiviert. Mit einem einzigen
Lichtstrahl verknüpfte Paare von Halbleiterschaltern 52 und
54 haben dieselbe Adresse, so daß sie gleichzeitig
aktiviert werden, wobei während dieses Intervalls des
sequentiellen Betriebs kein anderer der Leuchtdioden-
Schalter oder Phototransistor-Schalter eingeschaltet wird.
Die Abtastung der beiden Emitter-Detektor-Anordnungen bzw.
Sender/Empfänger-Anordnungen wird durch das Anlegen einer
Reihe von Adressen über die Sammelleitung 56 erreicht. In
der Praxis wird ein vollständiger Abtastzyklus ungefähr
dreißig mal je Sekunde durchgeführt. Die über die
Sammelleitung 56 zugeführte Adressinformation ist mit der
einen Impuls oder keinen Impuls anzeigenden
Ausgangssignalinformation der Detektoranordnung, mit der
Ausgangssignalinformation des Prozessors für den
gemeinsamen horizontalen Ausgangsimpuls und der
Verstärkerschaltung 60 und mit der
Ausgangssignalinformation des entsprechenden Prozessors für
den Vertikalausgangsimpuls und der Verstärkerschaltung 62
korreliert. Die Ausgangsimpulsschaltungen 60 und 62 können
für sequentiellen Betrieb zusammengefaßt werden und können
dieselben sein wie diejenigen, die in der US-
Patentanmeldung Serial No. 06/512 821 offenbart sind, die
am 11. Juli 1983 durch B. M. Komadina, V. D. Lazarevich und
A. H. Beining eingereicht wurde.
-
In Fig. 6 ist ein Blockschaltbild dargestellt, das eine
Anordnung zur Realisierung der hier beschriebenen
Funktionen des Prozessors 26 für die Berührungsfelddaten
zeigt (eine Realisierung mittels Mikroprozessor).
Alternativ könnte auch eine fest verdrahtete Logik
eingesetzt werden. Bei dem Ansatz gemäß Fig. 6 kann
Information, die von mehreren Eingabefeldern herrührt, über
die Pufferschaltungen 64 zu dem KTP-Bus 66 zugeführt
werden, der mit dem Mlkroprozessor 68 verknüpft ist.
Hierbei steht die Bezeichnung "KTP" für "Keyboard and Touch
Panel" (Tastatur und Berührungsfeld), da auch
Tastatureingaben (über eine Tastatur, die nicht dargestellt
ist) zusammen mit der Information von den Berührungsfeldern
zu der Sammelleitung (Bus) 66 geführt werden können. Die
Buchstaben "UART", die in den Puffern 64 angegeben sind,
stehen für "Universal Asynchronous Receiver Transmitters"
(universelle asynchrone Empfänger/Sender), die die
Handhabung von seriellen Bits digitaler Information
erleichtern. Die Sammelleitung 66 kann in Form von 8 oder
16 parallelen Drähten ausgeführt sein. Der Mikroprozessor
68, der eingesetzt wurde, ist ein H-MOS Mikroprozessor
Intel 8610 mit 16 Bit, wie er in dem "Microprocessor and
Peripheral Handbook" beschrieben ist, dessen Copyright aus
1983 datiert und bei Intel Corporation liegt. Ein Typ des
UART-Puffers 64, der benutzt wurde, ist der programmierbare
universelle synchrone/asynchrone Empfänger/Sender mit
programmierbarer Kommunikationsschnittstelle "Intel 8251A",
der in dem "Microprocessor and Peripheral Handbook"
beschrieben ist, dessen Copyright aus 1983 datiert und bei
Intel Corporation liegt.
-
Geeignete Speicher, die durch ein ROM
(Festwertspeicher) 70 bezeichnet sind, sind zur Steuerung
der Datenverarbeitungsfolgen vorgesehen und es ist auch ein
hierfür passender Direktzugriffsspeicher oder RAM 72
vorhanden. Ein Speicher ROM 70, der eingesetzt wurde, ist
der mittels UV-Strahlen löschbare PROM Intel 2716 mit 16 K
"2K mal 8", der in dem "Memory Component Handbook"
beschrieben ist, dessen Copyright aus 1983 datiert und bei
Intel Corporation liegt. Ein Speicher RAM 72, der
eingesetzt wurde, ist der "8192 by 8 Bit integrated RAM"
Intel 2186, der gleichfalls in dem "Memory Component
Handbook" von Intel beschrieben ist.
-
Die Darstellung in Fig. 7 ist etwas detaillierter als
diejenige in Fig. 6 und zeigt schematisch die Betriebsweise
von verschiedenen Schaltungskomponenten, die als
möglicherweise fest verdrahtet gezeigt sind und ein
Datenschieberegister 74, einen aktiven Zähler 76 und einen
"inaktiven" Zähler 78 enthalten. Ein Schieberegister 74,
das eingesetzt wurde, ist ein paralleles 8-Bit-
Schieberegister mit paralleler Einspeicherung und
komplementären Ausgängen von Texas Instruments TI 5ULS165,
das in dem "Memory Component Handbook" beschrieben ist,
dessen Urheberrecht aus 1981 datiert und bei Texas
Instruments Company liegt. Der aktive Zähler 76, der
eingesetzt wurde, ist ein asynchroner Zähler mit 4 Bit mit
der Bezeichnung Texas Instruments TI 5ULS163, der in dem
"Memory Component Handbook" von Texas Instruments
beschrieben ist. Der deaktive Zähler 76 kann ebenfalls ein
asynchroner Zähler mit 4-Bit TI 5ULS163 sein. Der
Mikroprozessor 68-1 und die Sammelleitung 66-1 sind
gleichfalls in Fig. 7 gezeigt. Fig. 7 wird in näheren
Einzelheiten in Verbindung mit den Ablaufdiagrammen gemäß
den Fig. 8 und 9 erläutert. Selbstverständlich können die
Ablaufdiagramme gemäß den Fig. 8 und 9 auch durch ein
Computerprogramm realisiert werden, das unter Benutzung der
Assembly-Sprache bzw. Assemblersprache Intel APM-86
geschrieben ist, die in dem 8086/8087/8088 "Macro Assembly
Language Reference Manual" beschrieben ist, dessen
Copyright aus 1980 datiert und bei Intel Corporation liegt.
-
Fig. 8 zeigt ein Ablaufdiagramm, das die Schritte
veranschaulicht, die durch den Mikroprozessor 68 unter der
Steuerung durch den Festwertspeicher 70 und weiterer
Befehle, die durch ein Host-System über den
Eingabe/Ausgabe-Anschluß 32 (siehe Fig. 6) bereitgestellt
werden, durchgeführt werden. Der Eingabe/Ausgabe-Anschluß
82 kann ein statischer HMOS-RAM mit 2048 Bit "Intel 8155 H"
sein, das in dem "Memory Component Handbook" von Intel
beschrieben ist. Die Abfolge von Betriebsvorgängen, die in
Fig. 8 gezeigt ist, ist als Ausführungsfolge für das
Berührungsfeld (Touch Panel Executive Sequence = TP-EXEC)
bekannt und sein Start ist durch den Block 84 dargestellt.
-
Der erste Schritt bei dem Ablauf besteht in der Wahl
von Berührungsfelddaten TP-DATA ADDR von irgendeiner der
Pufferschaltungen 64, die in Fig. 6 gezeigt sind. Dieser
Schritt ist durch den Block 86 repräsentiert, der anzeigt,
daß Daten vom Berührungsfeld "Φ" zu wählen sind, und daß
natürlich die Ausgabeinformation zu der mit dem
Berührungsfeld "Φ" verknüpften Anzeigeeinheit
zurückzuspeisen ist. Der nächste Schritt im Ablauf besteht
in der Einleitung einer Überprüfung des Berührungsfelds "Φ"
und in der Bestimmung des Zustands der Eingaben für das
Berührungsfeld, um zu ermitteln, ob irgendjemand einen
Finger oder einen Zeiger auf die Schirmplatte 12 der
Anzeige aufgebracht hat. Diese Einleitung der
bzw. Überprüfung "CALL TP-SEARCH" ist durch den Block 88
veranschaulicht.
-
Im Anschluß an den Schritt 88 besteht der nächste
Schritt bei dem Ablauf in der Überprüfung, ob irgendeiner
der Lichtstrahlen, die über die Schirmplatte verlaufen,
unterbrochen wurde. Dies ist in Fig. 8 durch die Raute 90
mit der Frage "Berührungsfeld aktiv" (TP ACTIVE)
veranschaulicht. Falls manche der Strahlen unterbrochen
sind, ist das Berührungsfeld aktiv und die Antwort lautet
"JA", so daß zu der durch die Raute 92 angezeigten Frage
übergegangen wird, bei der gefragt wird, ob das
Berührungsfeld "Φ" während mehrerer aufeinanderfolgender
Abtastungen aktiv war oder ob die Anzahl der Häufigkeit,
mit der es aktiv war, gleich oder größer als ein
vorbestimmter "aktiver anfänglicher Zählstand" ist - ACTIVE
Φ > = ACTIVE INIT. CNT. Der Grund für diesen Schritt besteht
in der Vermeidung von Übergangsbetriebszuständen des
Systems, falls beispielsweise ein Insekt oder ein anderes
Objekt zufällig die Strahlen unterbricht und eine
vorübergehende isolierte Unterbrechung eines der
Lichtstrahlen hervorruft. Somit kann der "aktive" Zähler 76
(Fig. 7) durch Pulse inkrementiert werden, die über eine
Leitung 94 angelegt werden, wodurch angezeigt wird, daß
zumindest einer der Strahlen während eines bestimmten
Abtastzyklus unterbrochen wurde. Das Ausgangssignal des
aktiven Zählers 76 kann in einem Ausgangspuffer innerhalb
des Zählers gehalten und über die Sammelleitung 96
ermittelt oder gelesen werden.
-
Falls daher das Berührungseingabefeld bzw.
Berührungsfeld nicht mindestens für die vorbestimmte Anzahl
von Abtastungen aktiv war, lautet die Antwort auf die im
Block 92 angegebene Frage "NEIN", woraufhin der aktive
Zähler 76 inkrementiert wird INCR (active Φ), wie dies
durch den Block 98 veranschaulicht ist. In der Praxis wird
dieselbe Funktion in dem normalen Mikroprozessor anstatt
durch einen separaten fest verdrahteten aktiven Zähler, wie
er durch den Block 76 repräsentiert ist, erreicht, und zwar
durch den Einsatz eines Direktzugriffsspeichers wie etwa
des Direktzugriffsspeichers 72, der in Fig. 6 gezeigt ist,
wobei während aufeinander folgender Abtastungen die in
einer bestimmten Adresse im Direktzugriffsspeicher 72
gespeicherte Zahl aus dem Speicher ausgelesen, auf die
nächst höhere Zahl inkrementiert und dann in eine
ausgewählte Stelle des Direktzugriffsspeichers
zurückgeschrieben wird. All dies wird normalerweise unter
der Steuerung gemäß den Programmabläufen in dem
Festwertspeicher 70 erreicht. Selbstverständlich könnte
auch ein anderer Speicher wie etwa der
Direktzugriffsspeicher 72 oder auch andere Speicher wie etwa
programmierbare Festwertspeicher (PROMs) und löschbare
PROMs EPROMs eingesetzt werden.
-
Falls aber das Berührungseingabefeld für zumindest die
vorbestimmte Anzahl von Abtastungen aktiv war, lautet die
Antwort auf die durch die Raute 72 angezeigte
Aktivitätsabfrage "JA", wonach sich die Ablaufschritte 102,
104 und 106 anschließen. Der Block 102 zeigt an, daß die
Reihe von Schritten der Betriebsablauf ist, der in Fig. 9
gezeigt ist und aufgerufen wird. Genauer gesagt, enthält
dieser die Glättungsroutine CALL (TP-SMOOTH), wodurch die
Videopositions-Bezeichnungsmarkierung oder der Cursor 50
mit einer Präzision positioniert werden kann, die sehr viel
höher ist als die Erfassungsgenauigkeit der detektierten
Position eines Fingers auf der Schirmplatte des
Berührungsfelds. Dies wird in Verbindung mit Fig. 9 in
größeren Einzelheiten beschrieben.
-
Der Programmschritt 104 bedeutet "Aufruf Erneuerung =
Ausgangsspuffer", was bedeutet, daß die in Übereinstimmung
mit dem Ablauf gemäß Fig. 9 erhaltenen neuen Positionsdaten
für den Cursor 50 von dem Prozessor 26 für die
Berührungsfelddaten abgegeben werden, um durch den
Anzeigeprozessor 28 für die Positionierung der
Videopositions-Bezeichnungsmarkierung oder des Cursors 50
auf dem Anzeigevideobildschirm herangezogen zu werden.
-
Der Schritt 106 in Fig. 8 bedeutet "Deaktivieren Φ",
wobei der Zähler 78 gemäß Fig. 7 auf 0 zurückgesetzt wird.
Der inaktive Zähler 78 wird zu dem Zeitpunkt eingesetzt, zu
dem der Benutzer seinen Finger von der Schirmplatte 12
abhebt, wobei dieser Zähler 78 zu dem Zeitpunkt, zu dem das
Berührungsfeld für mehrere aufeinander folgende Abtastungen
aktiv war, auf 0 zurückgesetzt wird.
-
Es wird nun erneut auf das Feld 90 "TP ACTIVE" Bezug
genommen. Falls das Berührungsfeld nicht aktiv ist und
keine Strahlen unterbrochen werden, wird entlang des
Verzweigungspfads weitergeschritten, der sich vom Feld 90
vertikal nach unten zum Block 108 erstreckt, der bedeutet,
daß der inaktive Zähler 78 zu inkrementieren ist INCR
(inaktiv Φ). Der nächste Schritt 110 bedeutet, daß der
aktive Zähler 76 auf 0 zurückgesetzt wird "aktiv
Φ = Φ". Im
Feld 112 wird die Frage gestellt, ob der inaktive Zähler 78
seinen abschließenden Zählstand erreicht hat "inaktiv Φ =
abschließender Zählstand von inaktiv". In dem vorliegenden
Fall, bei dem die Abtastungen ungefähr 30 mal je Sekunde
auftreten, kann der volle Zählstand für den inaktiven
Zähler 78 auf "3" festgelegt werden, so daß nach ungefähr
einer zehntel Sekunde ohne Unterbrechung eines Strahls
geschlossen werden kann, daß ein Finger einer Person
definitiv von der Schirmplatte zurückgezogen wurde. Falls
die Antwort auf die im Feld 112 gestellte Frage "NEIN"
lautet, wird zum Block 114 weitergeschritten, der bedeutet,
daß derselbe Ablauf sich für das Berührungsfeld 1
anschließt, so daß ein zweites Berührungsfeld in dem System
adressiert wird "Berührungsfeld-Datenadresse
Berührungsfeld-Daten 1".
-
Falls jedoch der inaktive Zähler 78 seinen
abschließenden Zählstand (beispielsweise 3) erreicht hat,
lautet die Antwort "JA" und es wird zu dem Programmschritt
116 weitergeschritten, der mit "Ruf abgegeben für
Aktivierung". Dies bedeutet, daß Positionsdaten, die
mehrere Schritte zurückliegen, auf der Basis dessen
ausgewählt werden, daß die Person, die ihren Finger von der
Schirmplatte entfernt hat, dies möglicherweise unter einem
Winkel getan hat und eventuell unerwünschte und fehlerhafte
Eingangspositionsdaten für die Videoanzeige erzeugt hat.
Durch das Zurückgehen um mehrere Schritte vor die erste
erste Abtastung, bei der die Strahlen nicht unterbrochen
waren, kann daher eine genaue Position vor dem
Übergangszustand bestimmt werden.
-
Es wird nun auf Fig. 9 Bezug genommen. Das
Ablaufdiagramm bezieht sich auf die Bildung von geglätteten
und präzisen Eingabedaten zur Positionierung der
Videopositions-Bezeichnungsmarkierung oder des Cursors aus
relativ grober Information, die durch das Berührungsfeld
bereitgestellt wird. Genauer gesagt können in dieser
Hinsicht die aufeinanderfolgenden Strahlen
charakteristischerweise um einen Abstand "D" voneinander
beabstandet sein, der ein zehntel eines Zolls oder 0,15
Zoll (3,8 mm) beträgt, während die Positionsmarkierung auf
dem Videobildschirm mit einer Genauigkeit von einem
Bildelement positioniert werden kann, die in der
Größenordnung von ungefähr 10 Millizoll (25,4 um) liegt.
Insgesamt gesehen führt, wie nachstehend im einzelnen
beschrieben wird, der Ablauf gemäß Fig. 6 zu einer erhöhten
Genauigkeit dadurch, daß Positionsdaten des Fingers und
Positionsdaten des Cursors aus aufeinanderfolgenden
Abtastungen mit Geschwindigkeits- und
Beschleunigungskorrekturen auf der Grundlage der Bewegung
und der Rate der Bewegung des Fingers von einer zur
nächsten Abtastung zusammengefaßt werden. Diese zusätzliche
Information erlaubt eine sehr genaue Positionierung des
Cursors 50.
-
Wenn sich beispielsweise ein Cursor 50 an einer
Position YPNEU auf der Anzeige befindet und es gewünscht
ist, den Cursor 50 zu einer neuen Position YPNEU zu
bewegen, wird der auf der Schirmplatte 12 des
Berührungsfelds angeordnete Finger so bewegt, daß er die
neue Position des Cursors 50 bezeichnet. Bei dem
dargestellten Ausführungsbeispiel (Fig. 4) ist die
vertikale Koordinate mit dem bzw. des Fingers YFNEU
unterhalb der gewünschten neuen vertikalen Koordinate YPNEU
des Cursors versetzt, so daß der Finger die Sichtbarkeit
des Cursors 50 nicht blockiert, während er zu der neuen
Position YPNEU positioniert wird.
-
Es wird nun erneut auf Fig. 9 Bezug genommen. Der
oberste Block 122 in dieser Fig. der Zeichnungen ist mit
"Glättung des Berührungsfelds" bezeichnet, was anzeigt, daß
der Ablauf gemäß Fig. 9 auf die Bereitstellung von
geglätteten bzw. verfeinerten Positionsdaten gerichtet ist,
die aus der relativ groben Positionseingabeinformation
bestimmt werden, die durch aufeinanderfolgende Abtastungen
der Lichtstrahlen entlang der Schirmplatte bereitgestellt
wird. Der zweite Block 124 bedeutet, daß die neue Position
"F" des Fingers sowohl in der Horizontalen oder "X"-
Richtung als auch in der Vertikalen oder "Y"-Richtung
gelesen und gespeichert wird "Lesen und Speichern von
XFNEU, XFNEU". Bei diesem Ablauf wird auch dann, wenn er
der der erste nach einem neuen aktiven ist, XPALT auf
XFNEU, YPALT auf YFNEU, XV (Geschwindigkeit X) auf 0 und YV
(Geschwindigkeit Y) auf 0 festgelegt, um zu bewirken, daß
der Cursor 50 die neue anfängliche Position einnimmt oder
zu dieser "springt". Der nächste Schritt, der durch den
Block 126 veranschaulicht ist, besteht in der Berechnung
der Differenz ΔXF zwischen der neuen Fingerposition XFNEU
und der vorhergehenden Position des Cursors XPALT oder
Videopositions-Bezeichnungsmarkierung 50. In
Übereinstimmung mit der Raute 126 besteht der nächste
Schritt in der Bestimmung, ob der Wechsel der Position des
Zeigers ΔXF größer ist als der zwischen den Dioden
vorhandene Abstand "D", der, wie vorstehend erwähnt, größer
als ein zehntel eines Zolls oder ungefähr 0,15 Zoll (3,8
mm) sein kann. Hierbei bezieht sich der Block 128 auf
positive Werte für die Veränderung ΔXF in der Position X.
In gleicher Weise bezeichnet der Block 130 eine Bestimmung
dahingehend, ob die Veränderung der Zeigerposition ΔXF in
der negativen Richtung kleiner ist als der Abstand -D. Es
werden nun die Ergebnisse der Überprüfung der Ausgaben bei
den Rauten 128 und 130 betrachtet. Falls die Veränderung
kleiner als + oder - D ist, ist das Ausgangssignal "NEIN"
und man erreicht Block 132, der anzeigt, daß die Variable
"A" für die Zwecke von nachfolgenden Berechnungen zu 0
gewählt wird. Falls andererseits das Ausgangssignal "JA"
lautet und man Blöcke 134 und 136 erreicht, bedeutet dies,
daß die Verschiebung der Position in der Richtung X einen
Absolutwert besaß, der größer als der Lichtstrahlabstand
war, so daß demzufolge der mit "TEMP" bezeichnete Faktor,
der in einem Zwischenspeicher vorhanden ist und bei der
Gleichung im Block 138 eingesetzt wird, als + oder - D
angenommen wird. Die in dem Block 138 angegebene Berechnung
wird dann durchgeführt und der Faktor A, der durch den
Block 132 bestimmt oder in dem Block 138 berechnet wurde,
wird bei der Berechnung der Geschwindigkeit XV für die
Bewegung des Cursors auf der Grundlage der Bewegung des
Fingers zwischen aufeinanderfolgenden Abtastungen und der
neuen Position XPNEU des Cursors 50 herangezogen.
-
Insbesondere aus den beiden Gleichungen in dem Block
140 ergibt sich, daß die neue Cursorposition PNEU durch
Einsatz der alten Cursorposition PALT und durch
anschließende Multiplizierung der Geschwindigkeit VNEU mit
dem Intervall zwischen den Abtastungen ΔT in
Übereinstimmung mit der nachstehenden verallgemeinerten
Beziehung bestimmt wird, die sowohl für die X- als auch für
die Y-Koordinaten zutrifft:
-
PNEU = PALT + (VNEU · ΔT),
-
wobei:
-
PNEU die genaue neue Position des Cursors,
-
PALT die genaue alte Position des Cursors, wie sie bei
der vorhergehenden Abtastung bestimmt wird,
-
VNEU die neue Geschwindigkeit, und
-
ΔT das Zeitintervall zwischen Abtastungen bezeichnet,
wobei
-
VNEU eine neue Geschwindigkeitsfunktion ist, die aus
den alten und den neuen Cursorpositionen, den alten und den
neuen Zeigerpositionen und deren Koordinaten und relativen
Positionen, Anordnungen, Geschwindigkeiten und
Beschleunigungen, moduliert durch geometrische Werte eines
Dämpfungsfaktors K und eines Verstärkungsfaktors G auf der
Grundlage der Größe und der Positionsgenauigkeit der
Anzeige und der Berührungsfeldeingabe, gewonnen wird.
-
Dies stellt selbstverständlich die bekannte Gleichung
dar, daß die Strecke gleich der Geschwindigkeit
multipliziert mit der Zeit ist. Jedoch wird die vorliegende
Entwicklung dahingehend als einzigartig angenommen, daß
erkannt wurde, daß eine sehr feine Positionierung eines
Cursors möglich ist, wobei eine positionsmäßige Korrelierung
mit dem Zeiger gemäß groben Eingabedaten unter Heranziehung
der Position und von Geschwindigkeits- und/oder
Beschleunigungskorrekturen zur Positionierung des Cursors
aufrechterhalten wird, wie beispielsweise in Fig. 9
dargelegt wurde.
-
Der nächste Abschnitt des Ablaufdiagramms gemäß der
Fig. 9, der sich vom Black 142 bis zum Block 144 erstreckt,
bezeichnet eine Berechnung für die Richtung Y, die im
wesentlichen dieselbe wie diejenige ist, die vorstehend in
Verbindung mit den Blöcken 126 bis 140 unter Bezugnahme auf
die Positions- und Geschwindigkeitsveränderungen in der
Richtung X diskutiert wurde. Der Block 146 in Richtung zum
unteren Ende der Fig. 7 bezeichnet die Speicherung der
neuen Werte für die Position und die Geschwindigkeit
(XPNEU, YPNEU), (XVNEU, YVNEU) sowohl in der horizontalen
Richtung oder der Richtung X als auch in der vertikalen
Richtung oder Richtung Y. Zusätzlich bedeutet der Block 146
die Heranziehung der neuen Positionsdaten zur
Repositionierung des Cursors 50. Der abschließende Block
148 in Fig. 9 bedeutet eine Rückkehr zu dem Hauptprogramm
gemäß Fig. 8, was durch den Block 104 in dem Ablaufdiagramm
gemäß Fig. 8 angezeigt ist.
-
Ausgehend von dem Betrachtungsstandpunkt einer das
Berührungsfeld benutzenden Person sind die Ergebnisse der
Durchführung der Abläufe gemäß Fig. 9, zusammengefaßt in
Beispielen, wie folgt: Zunächst wird die Glättungs- bzw.
Verfeinerungsgleichung ignoriert und der Cursor springt auf
die Videoposition, die durch ihren Finger bezeichnet wird,
wenn eine neue, von ihrer anfänglichen Aufbringung ihres
Fingers auf die Schirmplatte resultierende Aktivierung des
Berührungsfelds vorliegt. Dieser direkte Sprung des Cursors
resultiert daraus, daß die neue anfängliche Cursorposition
zwangsweise gleich den neuen anfänglichen Positionen mit
Geschwindigkeiten 0 festgelegt wird, was bei dem Ablauf
gemäß Fig. 9 zu Kompensationsberechnungen mit der
Geschwindigkeit 0 und der Verstärkung/Beschleunigung 0
führt. Zweitens folgt der Cursor ihren Fingerbewegungen
direkt und sanft bzw. feinfühlig, unabhängig davon, ob sie
ihren Finger langsam oder rasch über die Schirmplatte
bewegt. Diese direkte Verfolgung des Fingers durch den
Cursor resultiert aus der Wahl der Verstärkungskonstante G
und der Dämpfungskonstante K derart, daß die Berechnungen
zur Kompensation der Geschwindigkeit und der
Verstärkung/Beschleunigung den Daten für die Fingerposition
und Bewegung entsprechen. Falls beispielsweise der Benutzer
seinen Finger rasch bewegt, sind der Abstand zwischen der
alten Position und der neuen Position, die Geschwindigkeit
der Veränderung von der alten Position zu der neuen
Position und die Beschleunigung von der alten Position bis
zur neuen Position sämtlich größer als die Werte, die sie
bei langsamerer Bewegung hätten, mit dem Ergebnis, daß sich
der Cursor linearer bei dieser Art von Fingerposition und
Bewegung bewegt. Schließlich werden auch dieselben
Verstärkungs- und Dämpfungskonstanten gewählt, so daß für
den Bereich von sehr langsamen bis zu sehr schnellen
Fingerbewegungen wie etwa dann, wenn der Finger den Cursor
effektiv um eine sehr kleine Strecke verschiebt, die
Berechnungen für die Kompensation der Geschwindigkeit und
der Verstärkung/Beschleunigung stark nicht linear bezüglich
der bzw. in Abhängigkeit von der Fingerbewegung sind, wobei
sich der Cursor indirekt sehr, sehr langsam und um sehr,
sehr kleine Strecken bewegt, jedoch in derselben Richtung,
in der die Person eine genaue Anzeigeposition bezeichnet
bzw. vorgibt. Damit ist es möglich, den Cursor 50 um die
Strecke eines Bildelements zu verschieben, auch wenn der
Strahlabstand beispielsweise das 10- bis 15-fache der Größe
eines Bildelements beträgt.
-
Hierbei kann im Vorübergehen angemerkt werden, daß das
Schieberegister 74 in Fig. 7 schematisch veranschaulicht
ist, daß neue Geschwindigkeits- und Positionsdaten über die
Sammelleitung 75 in Richtung zur Oberseite des
Schieberegisters eingegeben werden und daß während
aufeinanderfolgender Abtastintervalle die Information nach
unten verschoben wird, so daß auf jeder Ebene ältere
Positions- und Geschwindigkeitsdaten erhältlich sind. Die
Sammelleitung 75 erlaubt auch das Zurückziehen bzw.
Herausgreifen von Information aus jeder gewünschten kurz
vorher liegenden Zeitperiode, beispielsweise aus der
unmittelbar vorhergehenden Abtastung oder aus einer
Abtastung, die drei oder vier Abtastungen vorher liegt.
Zugriff zu jeder gewünschten Stufe des Schieberegisters für
die Einführung oder das Herausnehmen von Information wird
herkömmlicherweise durch geeignet adressierte
Torschaltungen erreicht, die mit jeder Schieberegisterstufe
verknüpft sind. Daten aus der vorhergehenden Abtastung
können bei manchen der Berechnungen eingesetzt werden, um
Geschwindigkeitsdaten zu erhalten; und Positionsdaten aus
einer Abtastung, die drei oder vier Abtastungen
vorhergehend stattfand, werden bei der Realisierung des
Blocks "Abrufen ausgesandt Aktivierung" 116 (Fig. 8)
eingesetzt, was die Beseitigung von Übergangsfehlern bei
dem Zurückbewegen des Fingers einer Person von der
Schirmplatte beinhaltet.
-
Was einen anderen Punkt bezüglich des Blocks 124 gemäß
Fig. 9 anbetrifft, werden die Positionsdaten mit einer
Versatzinformation bereitgestellt, um der Tatsache Rechnung
zu tragen, daß die Person, die in Richtung auf eine
bestimmte Position auf der Schirmplatte zeigt,
normalerweise ihren Finger geringfügig unterhalb des Punkts
versetzt hält, auf den sie den Cursor zu positionieren
wünscht, um eine volle Ansicht der gewünschten
Videoposition und des Cursors bereitzustellen. Demgemäß
wird ein geringfügiger Versatz für die Position des Fingers
in X-Richtung, nicht aber für die Positionierung des
Fingers in der Richtung Y vorgesehen.
-
Es kann weiterhin angemerkt werden, daß in Fällen, in
denen das Berührungseingabefeld nicht der Anzeige
überlagert ist, kein Versatz benötigt wird. Falls daher,
wie vorstehend erwähnt, ein Berührungseingabefeld am Tisch
eines Benutzers zur Verfügung steht, wobei eine Anzeige
sich außerhalb der Reichweite, aber im Sichtbereich
befindet, kann der Benutzer die angezeigte Cursorposition
sehen, wenn sich ein Finger auf der vorbestimmten Position
auf dem Berührungseingabefeld befindet, wobei eine
Benutzerrückkopplung bei der Beobachtung der Bewegung des
Cursors zu dem gewünschten exakten Punkt bei Bewegung des
Fingers auf dem lokalen Eingabefeld stattfindet. Weiterhin
kann nebenbei angemerkt werden, daß die Anzeige in der Form
einer Plasmatafel, einer Flüssigkristallanzeige oder einer
Anordnung aus Leuchtdioden bestehen oder durch andere
Anzeigetechniken gebildet sein kann, anstatt als eine
Kathodenstrahlröhre ,ausgebildet zu sein.
-
Als weiterer Punkt ist anzumerken, daß der Cursor 50
als eine berechnete Funktion aus den eingegebenen
Positionsdaten, den Zeiger- oder Fingerbewegungsdaten und einem
Beschleunigungsfaktor bei der Bestimmung der neuen
Cursorposition positioniert wird. Als eine Alternative zur
Heranziehung von mathematischen Gleichungen und der Durchführung
der Berechnungen kann eine Nachschlagetabelle vorgesehen
werden, die Werte für die Veränderungen der Position des
Cursors in Abhängigkeit von den Veränderungen bei den
erfaßten Eingabepositionen während aufeinanderfolgender
Abtastintervalle bereitstellt. Abschließend versteht es sich,
daß die vorstehende Beschreibung und die in den Zeichnungen
gezeigten Ausführungsbeispiele lediglich eine Art der
Realisierung
des Berührungsfeld-Anzeigesystems gemäß der
vorliegenden Erfindung repräsentieren. Andere Abänderungen
können zur Erzielung derselben Funktion unter Heranziehung
anderer Ablaufschritte oder anders ausgestalteter logischer
Hardware entwickelt werden. Wie vorstehend erwähnt, können
anstelle einer Anordnung von Lichtstrahlen auch andere
Typen von Berührungsfeld-Eingaben wie etwa Schaltern oder
kapazitiven Elementen auf einer transparenten und/oder
flexiblen Platte auf der Anzeige oder entfernt von der Anzeige
eingesetzt werden. Auch wenn das vorliegende System in
Verbindung mit einer Kathodenstrahlröhre als die technische
Anzeigerealisierung beschrieben wurde, ist es ebenfalls bei
anderen Formen von Anzeigen anwendbar, die vorstehend bzw.
bislang vorgeschlagen wurden oder sich gegenwärtig in der
Entwicklung befinden.