-
HINTERGRUND DER ERFINDUNG
-
Die vorliegende Erfindung bezieht sich allgemein auf Schnittstellenvorrichtungen, die es dem Menschen ermöglichen, mit Computersystemen in Verbindung zu treten, und insbesondere auf Computer-Schnittstellenvorrichtungen, die eine Eingabe vom Benutzer an Computersysteme liefern und eine Kraftrückkopplung an den Benutzer realisieren.
-
Durch Verwenden einer Schnittstellenvorrichtung kann ein Benutzer mit einer von einem Computersystem angezeigten Umgebung in Dialog treten, um Funktionen und Aufgaben auf dem Computer durchzuführen, beispielsweise das Spielen eines Spiels, Erleben einer Simulation oder virtuellen Wirklichkeitsumgebung, Benutzen eines computergestützten Gestaltungssystems, Bedienen einer graphischen Benutzeroberfläche (GUI) oder andersartiges Beeinflussen von auf dem Bildschirm veranschaulichten Geschehnissen oder Abbildungen. Übliche Mensch/Computer-Schnittstellenvorrichtungen, die für einen derartigen Dialog verwendet werden, sind u. a. ein Joystick, eine Maus, eine Rollkugel, eine Art Stift (Stylus), ein Tablett, eine druckempfindliche Kugel oder dergleichen, die an das Computersystem angeschlossen sind, das die angezeigte Umgebung steuert. Typischerweise aktualisiert der Computer die Umgebung unter Ansprechen auf die Betätigung des Benutzers eines durch den Benutzer bedienbaren körperlichen Gegenstands, wie ein Joystick-Griff oder eine Maus, und liefert dem Benutzer unter Verwendung des Bildschirms und der Lautsprecher eine sichtbare und hörbare Rückkopplung (Feedback). Der Computer fühlt die Betätigung des Benutzers des Benutzergegenstands durch Meßfühler ab, die auf der Schnittstellenvorrichtung vorgesehen sind und Lokativsignale an den Computer senden.
-
Bei einigen Schnittstellenvorrichtungen wird dem Benutzer auch eine haptische Rückkopplung zur Verfügung gestellt, die auch als ”Force Feedback” bekannt ist. Diese Arten von Schnittstellenvorrichtungen können körperliche Empfindungen liefern, die von dem Benutzer, der einen benutzerbedienbaren Gegenstand der Schnittstellenvorrichtung betätigt, gefühlt werden können. Beispielsweise kann der Force-FX Joystick Controller von der Firma CH Products, Inc. oder der Wingman Force Joystick von der Firma Logitech an einen Computer angeschlossen werden und gibt Kräfte an einen Benutzer der Steuerung ab. Andere Systeme könnten eine Maussteuerung für das Force Feedback verwenden. In der Vorrichtung werden ein oder mehr Motoren oder andere Aktuatoren verwendet, die an das Steuerungscomputersystem angeschlossen sind. Das Computersystem steuert die Kräfte auf dem Joystick in Verbindung und koordiniert mit angezeigten Geschehnissen und Dialogen, indem es Steuersignale oder Steuerbefehle an die Aktuatoren sendet. Auf diese Weise kann das Computersystem physikalische Kraftempfindungen in Verbindung mit einer anderen zugeführten Rückkopplung zu dem Benutzer transportieren, wenn der Benutzer den Joystick oder anderen Gegenstand der Schnittstellenvorrichtung ergreift oder berührt. Wenn der Benutzer z. B. den betätigbaren Gegenstand bewegt und veranlaßt, daß ein dargestellter Positionsanzeiger (Cursor) mit einem anderen dargestellten graphischen Objekt in Wechselbeziehung tritt, kann der Computer einen Steuerbefehl ausgeben, der den Aktuator zur Ausgabe einer Kraft auf den Benutzergegenstand veranlaßt und so eine fühlbare Empfindung zu dem Benutzer transportiert.
-
Ein Problem bei der Entwicklung von Force-Feedback-Empfindungen in Software des Standes der Technik ist, daß der Programmierer von Force-Feedback-Anwendungen kein intuitives Gespür dafür hat, wie Kräfte sich anfühlen werden, wenn sie auf bestimmte Weise eingestellt sind, und er muß sich daher viel Mühe geben, Kräftemerkmale zu entwickeln, die für eine bestimmte Anwendung erwünscht sind. Ein Programmierer kann z. B. eine spezielle Feder- und Dämpfungskraft-Empfindung zwischen zwei graphischen Objekten schaffen wollen, wobei die Kraftempfindung eine eine bestimmte Steifigkeit, ein bestimmtes Spiel, einen bestimmten Versatz etc. aufweist. Bei gegenwärtigen Force-Feedback-Systemen muss der Programmierer die Parameter und Merkmale der gewünschten Kraft mit einer rohen Kraftmethode bestimmen, indem er einfach Parameter setzt, die Kraft prüft und die Parameter auf iterative Weise einstellt. Diese Methode kann mühselig sein, weil es oft nicht intuitiv ist, wie ein Parameter das Fühlen einer Kraft beeinflussen wird, wenn sie tatsächlich auf den Benutzergegenstand ausgegeben wird; oft kommt der Programmierer mit den Erst-Parametereinstellungen der gewünschten Kraftempfindung vielleicht nicht einmal nahe. Andere Arten von Kräften sind vielleicht überhaupt nicht intuitiv, wie z. B. eine Feder mit negativer Konstante, und so können die Designer von Kraftempfindungen Schwierigkeiten damit haben, diese Arten von Empfindungen in Software-Anwendungen zu integrieren.
-
Des weiteren können die Designer Schwierigkeiten damit haben, Kraftempfindungen mit Tönen zu synchronisieren, die der Designer in Verbindung mit der Kraftempfindung abspielen lassen möchte. Beispielsweise wird eine bestimmte Kraftempfindung wie ein Zusammenstoss oft von einem entsprechenden Geräusch begleitet, um einem Endbenutzer das Erlebnis eindrucksvoller zu präsentieren. Es kann jedoch schwierig sein, eine Kraftempfindung zu entwerfen, die gut mit einem Geräusch synchronisiert ist. Demzufolge wird ein Instrument benötigt, um dem Programmierer oder Entwickler dabei zu helfen, Force-Feedback-Merkmale intuitiv und leicht festzulegen, um gewünschte Kraftempfindungen bereitzustellen und Geräusche mit diesen Kraftempfindungen zu synchronisieren.
-
Aus der
DE 196 49 082 C1 ist ein Verfahren zur Realisierung einer Schnittstelle an einem medizinischen Operationsroboter zu entnehmen, wobei eine Eingabeeinrichtung mit einer skalierten (wählbaren) Rückkopplungskraft beaufschlagt wird. Dabei können zusätzlich zu den taktilen Kräften auch Audio-Signale und Video-Signale vom Operationsraum übermittelt werden.
-
Die
EP 0 677 933 A2 beschreibt für die Verarbeitung eines Audiosignals an Mischpulten eine Kraftrückkopplungseinheit, wobei die Kräfte bzw. taktilen Rückmeldungen an die Eingabeelemente eingestellt werden können.
-
Die
EP 0 655 264 A1 zeigt ein Kraft- bzw. Muskeltrainingsgerät, wobei zur Änderung der Belastungscharakteristik die Einstellung mehrerer Kraftmuster möglich ist. Dabei ist auch die Koppelung der Kraftrückmeldung mit einem von einem Tongenerator erzeugten Geräusch angegeben.
-
WESEN DER ERFINDUNG
-
Die vorliegende Erfindung ist darauf gerichtet, Kraftempfindungen zu gestalten, die von einer Force-Feedback-Schnittstellenvorrichtung ausgegeben werden. Ein Steuer-Host-Computer stellt ein Design-Schnittstellenwerkzeug bereit, das eine intuitive und einfache Gestaltung einer Vielfalt von Kraftempfindungen ermöglicht und es auch ermöglicht, die Kraftempfindungen so einzustellen, daß sie mit gewünschten Geräuscheffekten synchronisiert werden.
-
Insbesondere wird eine Design-Schnittstelle zur Gestaltung von Kraftempfindungen zur Verwendung mit einer Force-Feedback-Schnittstellenvorrichtung beschrieben. Die Schnittstelle zur Gestaltung einer Kraftempfindung wird auf einer Anzeigevorrichtung eines Host-Computers angezeigt. Mit der Eingabe von einem Benutzer wird eine Kraftempfindungsart ausgewählt, die von einem Host-Computer befehlsgesteuert und durch eine Force-Feedback-Schnittstellenvorrichtung ausgegeben werden soll. Dann wird die Eingabe, wie z. B. Parameter, von einem Benutzer erhalten, der physikalische Merkmale der ausgewählten Kraftempfindung gestaltet und definiert. Eine graphische Darstellung der gekennzeichneten Kraftempfindung wird auf einer Anzeigeeinheit des Host-Computers ausgegeben. Die graphische Darstellung stellt dem Benutzer eine visuelle Demonstration eines Fühlens der gekennzeichneten Kraftempfindung zur Verfügung, so daß der Benutzer eine Wirkung von Parametern auf die Kraftempfindung betrachten kann. Die ausgewählte Kraftempfindung ist auch mit einem Geräusch verbunden. Die gekennzeichnete Kraftempfindung wird an einen vom Benutzer bedienbaren Gegenstand der Force-Feedback-Schnittstellenvorrichtung ausgegeben, um dem Benutzer das Fühlen der gestalteten Kraftempfindung zu ermöglichen. Die graphische Darstellung wird in Verbindung mit der gerade auf den Benutzergegenstand ausgegebenen Kraftempfindung aktualisiert. Zum Schluß wird das zugeordnete Geräusch in Verbindung mit der Ausgabe der Kraftempfindung ausgegeben. Nachdem der Benutzer das Gefühl der Empfindung erlebt hat, kann er vorzugsweise zusätzliche Veränderungen an der gekennzeichneten Kräfteempfindung eingeben und die geänderte Kraftempfindung fühlen. Auf diese Weise kann der Benutzer in einem iterativen Verfahren wirkungsvolle Kraftempfindungen durch tatsächliches Erleben dieser Empfindungen gestalten. Durch Hören eines gewünschten Geräusches mit der Kraftempfindung kann der Benutzer die Kraftempfindung auch wiederholt einstellen, so daß sie besser mit dem Ton synchronisiert wird. Der Benutzer kann die Charakterisierung oder Parameter der entworfenen Kraftempfindung vorzugsweise auf ein Speichermedium speichern, auf das andere Programme auf dem Host-Computer oder anderen Computern zugreifen können. So können andere Programme, die das Force Feedback steuern, die entworfene Kraftempfindung in Anwendungen wie Spielen, Simulationen oder Graphikschnittstellen verwenden.
-
Vorzugsweise wird ein Beginn des Tons mit einem Beginn der Kraftempfindung synchronisiert, wenn das Geräusch und die Kraftempfindung ausgegeben werden. In einer Ausführungsform ist die ausgewählte Kraftempfindung mit einer Steuerung auf der Force-Feedback-Vorrichtung verbunden, beispielsweise einem Knopf. Wenn der Benutzer die Steuerung aktiviert, werden die Kraftempfindung, die visuelle Demonstration und der Ton ausgegeben. Die Kraftempfindung und das Geräusch können einem graphischen Symbol (Icon) in der Design-Schnittstelle zugeordnet sein, das den Knopf darstellt. Vorzugsweise kann der Benutzer das Geräusch aus einer Liste mit vielerlei verfügbaren Geräuschen auswählen, die jeweils in einem Standard-Dateiformat bereitgestellt sein können. In dem Schnittstellenwerkzeug der vorliegenden Erfindung kann eine breite Vielfalt von Kraftempfindungsarten entworfen und mit Geräuschen synchronisiert werden, wie z. B. Zustände, wiederkehrende Phasen (Effekte) und Dynamik.
-
Die vorliegende Erfindung stellt auf vorteilhafte Weise ein einfaches, benutzerfreundliches Design-Schnittstellenwerkzeug zum Entwerfen von Force-Feedback-Empfindungen bereit. Bei der gegebenen großen Vielfalt von möglichen Kraftempfindungen und den oft unerwarteten Ergebnissen beim Modifizieren der verschiedenen Kraftempfindungsparameter erfüllt das Design-Schnittstellenwerkzeug der vorliegenden Erfindung die Bedürfnisse der Kraftempfindungsdesigner, die Kraftempfindungen schaffen möchten, die ihren Bedürfnissen möglichst nahe kommen. Die Graphikdesign-Schnittstelle der vorliegenden Erfindung ermöglicht es einem Kraftempfindungsdesigner, mit Geräuschen zu synchronisierende Kraftempfindungen leicht und intuitiv zu gestalten und zu modifizieren, was ein effektiveres Force Feedback zur Implementierung in Spielen, Simulationen und anderen Anwendungen ermöglicht.
-
Diese und andere Vorteile der vorliegenden Erfindung werden Fachleuten auf diesem Gebiet beim Durchlesen der folgenden Beschreibung der Erfindung und beim Studium der einzelnen Figuren der Zeichnung klar werden.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Blockdiagramm eines Systems zur Steuerung einer Force-Feedback-Schnittstellenvorrichtung der vorliegenden Erfindung;
-
2 ist eine Perspektivansicht einer Ausführungsform eines Mechanismus zum Anschließen eines durch einen Benutzer bedienbaren Gegenstands an die Force-Feedback-Vorrichtung gemäß 1;
-
3 ist eine schematische Darstellung einer angezeigten Schnittstelle der vorliegenden Erfindung zur Gestaltung von Kraftempfindungen;
-
4 ist eine schematische Darstellung der Schnittstelle gemäß 3, in der ein Entwurfsfenster für einen Federungszustand angezeigt ist;
-
5a–c sind Schaubilder angezeigter graphischer Darstellungen eines Federzustands;
-
6 ist eine schematische Darstellung der Schnittstelle gemäß 3, in der ein Einfachmodus-Entwurfsfenster für einen Federungszustand angezeigt ist;
-
7 ist eine schematische Darstellung der Schnittstelle gemäß 3, in der ein Entwurfsfenster für eine periodische Welle angezeigt ist; und
-
8 ist eine schematische Darstellung einer Ausführungsform einer Schnittstelle der vorliegenden Erfindung, die es ermöglicht, Geräusche und Kräfte miteinander zu verbinden.
-
DETAILLIERTE BESCHREIBUNG BEVORZUGTER AUSFÜHRUNGSFORMEN
-
1 ist ein Blockdiagramm, das ein Force-Feedback-Schnittstellensystem 10 zur Verwendung mit der vorliegenden Erfindung darstellt und durch ein Host-Computersystem gesteuert wird. Das Schnittstellensystem 10 schließt ein Host-Computersystem 12 und eine Schnittstellenvorrichtung 14 ein.
-
Das Host-Computersystem 12 ist vorzugsweise ein Personalcomputer, wie z. B. ein IBM-kompatibler Personalcomputer bzw. ein Macintosh, oder ein Arbeitsplatzrechner (Workstation) wie eine Workstation von SUN oder Silicon Graphics. Alternativ kann das Host-Computersystem 12 eines aus einer Vielfalt von Heimvideo-Spielsystemen sein, wie z. B. Systeme, die von Nintendo, Sega oder Sony erhältlich sind, ein Fernseh-”Aufsetzkasten” oder ein ”Netzrechner”, etc.. Das Host-Computersystem 12 implementiert vorzugsweise ein Host-Anwendungsprogramm, mit dem ein Benutzer 22 über Peripheriegeräte und die Schnittstellenvorrichtung 14 einen Dialog führt. Das Host-Anwendungsprogramm kann beispielsweise ein Videospiel, eine medizinische Simulation, ein wissenschaftliches Analyseprogramm, ein Betriebssystem, eine Graphik-Benutzerschnittstelle oder ein anderes Anwendungsprogramm sein, das Force Feedback verwendet. Typischerweise liefert die Host-Anwendung Bilder zur Anzeige auf einer Anzeige-Ausgabevorrichtung, wie unten beschrieben, und/oder anderes Feedback wie akustische Signale.
-
Das Host-Computersystem 12 weist vorzugsweise einen Host-Mikroprozessor 16, einen Direktzugriffsspeicher (RAM) 17, einen Festspeicher (ROM) 19, eine Eingabe/Ausgabe-(I/O)-Elektronik 21, einen Taktgeber 18, einen Bildschirm 20, und eine Akustikausgabevorrichtung 21 auf. Der Bildschirm 20 kann zur Anzeige von Bildern verwendet werden, die von dem Host-Computersystem 12 oder anderen Computersystemen erzeugt werden, und kann ein Standardbildschirm, eine Kathodenstrahlröhre (CRT), ein Flachbildschirm, eine 3D-Brille oder irgendeine andere Bildschirm-Benutzeroberfläche sein. Die Akustikausgabevorrichtung 21, wie z. B. Lautsprecher, ist vorzugsweise über Verstärker, Filter und andere dem Fachmann auf diesem Gebiet bekannte Schaltungen an den Host-Mikroprozessor 16 angeschlossen (z. B. in einer Soundkarte) und liefert die Tonausgabe von dem Host-Computer 18 an den Benutzer 22. Andere Arten von Peripheriegeräten können ebenfalls an den Host-Prozessor 16 angeschlossen sein, beispielsweise Speichervorrichtungen (Magnetplattenlaufwerk, CD-ROM/DVD-ROM-Laufwerk, Magnetdiskettenlaufwerk, etc.), Drucker und andere Eingabe- und Ausgabegeräte. Die Daten zur Implementierung der Schnittstellen der vorliegenden Erfindung können auf computerlesbaren Medien wie einem Speicher (RAM oder ROM), einer Festplatte, einer CD-ROM oder DVD-ROM etc. gespeichert sein.
-
Eine Schnittstellenvorrichtung 14 ist durch einen bidirektionalen Bus 24 mit dem Host-Computersystem 12 verbunden. Der bidirektionale Bus sendet Signale in beide Richtungen zwischen dem Host-Computersystem 12 und der Schnittstellenvorrichtung. Ein Schnittstellenanschluß des Host-Computersystems 12, wie z. B. ein RS232- oder serieller USB-(universeller serieller Bus)-Schnittstellenanschluß, paralleler Anschluß, Spiele-Anschluß (Gameport) etc., verbindet den Bus 24 mit dem Host-Computersystem 12.
-
Die Schnittstellenvorrichtung 14 weist einen örtlichen Mikroprozessor 26, Meßfühler 28, Aktuatoren 30, einen Benutzergegenstand 34, eine wahlweise Sensorschnittstelle 36, eine wahlweise Aktuatorschnittstelle 38 und andere wahlweise Eingabevorrichtungen 39 auf. Der örtliche Mikroprozessor 26 ist an den Bus 24 angeschlossen und wird als örtlich zur Schnittstellenvorrichtung 14 angesehen und dient der Kraftrückkopplung und Sensor-Ein/Ausgabe der Schnittstellenvorrichtung 14. Der Mikroprozessor 26 kann mit Softwarebefehlen beliefert werden, auf Steuerbefehle oder Anforderungen von dem Computer-Hauptrechner 16 warten, den Steuerbefehl oder die Anforderung entschlüsseln und Eingangs- und Ausgangssignale entsprechend dem Steuerbefehl oder der Anforderung verarbeiten/steuern. Darüber hinaus arbeitet der Prozessor 26 vorzugsweise unabhängig vom Host-Computer 16, indem er Meßfühlersignale liest und die entsprechenden Kräfte aus diesen Meßfühlersignalen, Zeitsignalen und gespeicherten oder übertragenen Befehlen berechnet, die in Übereinstimmung mit einem Host-Steuerbefehl ausgewählt wurden. Geeignete Mikroprozessoren zur Verwendung als örtlicher Mikroprozessor 26 sind u. a. beispielsweise der MC68HC711E9 von Motorola, der PIC16C74 von Microchip, und der 82930AX von der Intel Corporation. Der Mikroprozessor 26 kann einen Mikroprozessorchip oder Mehrfach-Prozessoren und/oder Co-Prozessorchips und/oder Digitalsignalprozessor-(DSP)-Fähigkeit aufweisen.
-
In Übereinstimmung mit Befehlen, die der Host-Computer 12 über den Bus 24 liefert, kann der Mikroprozessor 26 Signale von den Meßfühlern 28 empfangen und Signale an die Aktuatoren 30 der Schnittstellenvorrichtung 14 liefern. In einer bevorzugten Ausführungsform einer örtlichen Steuerung liefert beispielsweise das Host-Computersystem 12 über den Bus 24 höhere Kontrollsteuerbefehle an den Mikroprozessor 26, und der Mikroprozessor 26 leitet die niedrigen Kraftsteuerschleifen an die Meßfühler und Aktuatoren in Übereinstimmung mit den höheren Steuerbefehlen und unabhängig vom Host-Computer 18. Das Force-Feedback-System stellt demzufolge eine Informationsschleife der Host-Steuerung und eine Informationsschleife der örtlichen Steuerung in einem verteilten Steuersystem bereit. Der Mikroprozessor 26 kann Steuerbefehle auch von beliebigen anderen auf der Schnittstellenvorrichtung 14 enthaltenen Eingabevorrichtungen 39 erhalten, beispielsweise Knöpfe, und liefert entsprechende Signale an den Host-Computer 12, um anzuzeigen, daß die Eingabeinformation und alle in der Eingabeinformation enthaltenen Informationen erhalten wurden. An den Mikroprozessor 26 in der Schnittstellenvorrichtung 14 ist vorzugsweise ein örtlicher Speicher 27 angeschlossen, z. B. ein RAM und/oder ROM, um Befehle für den Mikroprozessor 26 zu speichern und temporäre und andere Daten zu speichern. Darüber hinaus kann ein örtlicher Taktgeber 29 zur Lieferung von Taktdaten an den Mikroprozessor 26 angeschlossen sein.
-
Meßfühler 28 fühlen die Position, Bewegung und/oder andere Merkmale eines Benutzergegenstands 34 der Schnittstellenvorrichtung 14 längs einem oder mehr Freiheitsgraden ab und liefern Signale an den Mikroprozessor 26, die diese Merkmale darstellende Informationen enthalten. Es können rotierende oder lineare optische Codeumsetzer, Potentiometer, optische Meßfühler, Geschwindigkeitssensoren, Beschleunigungssensoren, Dehnungsmeßfühler oder andere Arten von Meßfühlern verwendet werden. Die Meßfühler 28 liefern ein elektrisches Signal an eine wahlweise Sensorschnittstelle 36, die dazu benutzt werden kann, Meßfühlersignale in Signale umzusetzen, die von dem Mikroprozessor 26 und/oder Host-Computersystem 12 gedeutet werden können.
-
Unter Ansprechen auf die vom Mikroprozessor 26 erhaltenen Signale übertragen die Aktuatoren 30 Kräfte in einer oder mehr Richtungen entlang einem oder mehr Freiheitsgraden an den Benutzergegenstand 34 der Schnittstellenvorrichtung 14. Die Aktuatoren 30 können zweierlei Typen umfassen: aktive Aktuatoren und passive Aktuatoren.
-
Zu den aktiven Aktuatoren gehören lineare Stromregelmotoren, Schrittmotoren, pneumatische/hydraulische aktive Aktuatoren, ein Drehmomenterzeuger (Motor mit begrenzter Winkelreichweite), ein Schwingspulenaktuator und andere Arten von Aktuatoren, die eine Kraft übertragen, um ein Objekt zu bewegen. Als Aktuatoren 30 können auch passive Aktuatoren verwendet werden, wie z. B. Magnetpulverbremsen, Reibungsbremsen oder pneumatische/hydraulische passive Aktuatoren. Die Aktuatorschnittstelle 38 kann wahlweise zwischen den Aktuatoren 30 und dem Mikroprozessor 26 angeschlossen sein, um Signale vom Mikroprozessor 26 in entsprechende Signale zum Antrieb der Aktuatoren 30 umzusetzen.
-
In der Schnittstellenvorrichtung 14 können wahlweise auch andere Eingabevorrichtungen 39 enthalten sein und Eingabesignale zum Mikroprozessor 26 oder zum Host-Prozessor 16 senden. Solche Eingabevorrichtungen können u. a. Knöpfe, Wählscheiben, Schalter, Hebel oder andere Mechanismen sein. In Ausführungsformen, wo der Benutzergegenstand 34 z. B. ein Joystick ist, können andere Eingabevorrichtungen einen oder mehr Knöpfe aufweisen, die z. B. auf dem Joystick-Griff oder Unterteil vorgesehen sind. An die Aktuatorschnittstelle 38 und/oder Aktuatoren 30 kann wahlweise eine Stromversorgung 40 zur Bereitstellung elektrischer Leistung angeschlossen sein. In der Schnittstellenvorrichtung 14 ist wahlweise ein Sicherheitsschalter 41 zur Bereitstellung eines Mechanismus zur Deaktivierung der Aktuatoren 30 aus Sicherheitsgründen enthalten.
-
Der durch einen Benutzer betätigbare Gegenstand 34 (”Benutzergegenstand”) ist ein körperliches Objekt, Gerät oder Artikel, den ein Benutzer greifen oder andersartig berühren oder steuern kann, und der an die Schnittstellenvorrichtung 14 angeschlossen ist. Mit ”greifen” ist gemeint, daß Benutzer ein Griffteil des Gegenstands in irgendeiner Form lösbar fassen können, z. B. mit der Hand, den Fingerspitzen oder, im Falle von Behinderten, sogar mit dem Mund. Der Benutzer 22 kann den Gegenstand entlang vorgesehener Freiheitsgrade betätigen und bewegen, um eine Verbindung mit dem Host-Anwendungsprogramm herzustellen, das der Benutzer gerade auf dem Bildschirm 20 betrachtet. Der Gegenstand 34 kann ein Joystick, eine Maus, eine Rollkugel, ein Stylus (z. B. am Ende einer Verbindung), ein Steuerrad, eine Kugel, ein medizinisches Instrument (Laparoskop, Katheter etc.), Billard-Queue (z. B. Bewegen des Queue über aktivierte Rollen), Handgriff, Griffknopf, Knopf oder anderes Objekt sein.
-
2 ist eine Perspektivansicht einer Ausführungsform einer mechanischen Vorrichtung 100, die zur Bereitstellung der mechanischen Eingabe und Ausgabe an das Host-Computersystem 12 geeignet ist. Die Vorrichtung 100 ist für einen Joystick oder ähnlichen Benutzergegenstand 34 geeignet. Die Vorrichtung 100 beinhaltet einen Tragrahmenmechanismus 140, Meßfühler 28 und Aktuatoren 30. Der Benutzergegenstand 34 ist in dieser Ausführungsform als Joystick mit einem Griffteil 162 gezeigt.
-
Der Tragrahmenmechanismus 140 stellt dem Gegenstand 34 zwei Rotationsfreiheitsgrade zur Verfügung. Der Tragrahmenmechanismus 140 sorgt für die Lagerung der Vorrichtung 160 auf einer Stützfläche 142, beispielsweise einer Tischoberseite oder ähnlichen Fläche. Der Tragrahmenmechanismus 140 ist eine fünfteilige Verbindung, die ein Grundelement 144, Ansatzelemente 146a und 146b sowie Zentralelemente 148a und 148b umfaßt. Der Tragrahmenmechanismus 140 schließt auch Capstan- bzw. Winden-Antriebsmechanismen 164 ein.
-
Das Grundelement 144 weist ein Unterteil 166 und vertikale Tragelemente 168 auf. Das Unterteil 166 ist an die Stützfläche 142 angekuppelt. Die Elemente des Tragrahmenmechanismus 140 sind durch Verwendung von Lagern oder Schwenkachsen drehbar miteinander verbunden. Das Ansatzelement 146a ist fest an einen Windenbogen 170 angekuppelt und wird bei Rotieren des Windenbogens 170 um eine Achse A gedreht. In ähnlicher Weise ist das Ansatzelement 146b fest an den anderen Windenbogen 170 angekuppelt und kann um eine Achse B gedreht werden. Das zentrale Antriebselement 148a ist drehbar mit dem Ansatzelement 146a verbunden und kann um eine Momentanachse D rotieren, und das zentrale Verbindungselement 148b ist an einem Mittelpunkt P drehbar mit einem Ende des Ansatzelementes 146b verbunden und kann um eine Momentanachse E rotieren. Das zentrale Antriebselement 148a und das zentrale Verbindungselement 148b sind am Drehpol des Tragrahmenmechanismus drehbar miteinander verbunden, welches der Schnittpunkt P der Achsen A und B ist. Ein Lager 172 verbindet die beiden Zentralelemente 148a und 148b am Schnittpunkt P miteinander. Die Meßfühler 28 und Aktuatoren 30 sind durch den Windenbogen 170 an das Grundelement 144 und die Elemente 146 angekuppelt.
-
Der Tragrahmenmechanismus 140 stellt einem am oder nahe am Rotationsmittelpunkt P positionierten Gegenstand 34 zwei Freiheitsgrade zur Verfügung, wobei der Gegenstand 34 um die Achse A und/oder B gedreht werden kann. In alternativen Ausführungsformen kann der Gegenstand 34 auch in anderen Freiheitsgraden gedreht oder übersetzt werden, z. B. einem linearen Freiheitsgrad entlang der Achse C oder einem Freiheitsgrad mit Rotations-”Drall” um die Achse C, und diese zusätzlichen Freiheitsgrade können abgefühlt und/oder aktiviert werden. Darüber hinaus kann an jedes vertikale Element 168 ein Antriebsmechanismus 164 angekuppelt sein, um einen mechanischen Vorteil bereitzustellen, ohne Reibung und Spiel in das System einzubringen.
-
In anderen Ausführungsformen können andere Arten von Mechanismen verwendet werden, wie z. B. geschlitzte Bügel, planare Verbindungen, Ausführungsformen mit tastbarer Schwingung und andere Mechanismen, wie sie dem Fachmann wohl bekannt sind.
-
Force-Feedback-Empfindungen
-
Da Force-Feedback-Vorrichtungen so eine breite Vielfalt von Gefühlsempfindungen jeweils mit eigenen, einzigartigen Parametern, Randbedingungen und Implementierungsausgaben erzeugen können, ist das Gesamtspektrum der Kraftempfindungen hierin in Unteranordnungen unterteilt. Es werden hier drei Klassen von Gefühlsempfindungen erörtert: räumliche Zustände (”Zustände”), zeitliche Wirkungen (”Effekte” oder ”Wellen”) und dynamische Empfindungen (”Dynamik”). Zustände sind Kraftempfindungen, die eine Funktion der Benutzerbewegung des betätigbaren Gegenstands 34 sind, Effekte sind Kraftempfindungen, die unabhängig von der Position oder Bewegung des Benutzergegenstands mit der Zeit wiedergegeben werden, und Dynamik ist eine Kraftempfindung, die auf einem interaktiven Bewegungsmuster von Bewegung und Zeit basiert. Bevorzugte Standardzustandsarten beinhalten Federung, Dämpfung, Trägheit, Reibung, Struktur und Wandungen. Drei Grundwirkungsarten sind die periodische Kraft, die konstante Kraft (Vektorkraft) und die schiefe Ebene. Zu den dynamischen Empfindungen gehören die physikalischen Echtzeit-Wechselwirkungen, die erstens auf der Benutzerbewegung sowie zweitens auf einem physikalischen System beruhen, wobei die Benutzerbewegung während der gegenseitigen Beeinflussung auf das Verhalten des physikalischen Systems einwirkt. Jede dynamische Empfindung basiert auf einem simulierten physikalischen Grundsystem mit einer dynamischen Masse, die durch eine simulierte Feder und einen simulierten Dämpfer mit dem Benutzergegenstand 34 verbunden ist.
-
3 zeigt eine Anzeigevorrichtung 20, die eine Schnittstelle 300 mit einer Graphikdialogwerkzeug-Anordnung der vorliegenden Erfindung darstellt, die Entwicklern und Programmierern des Force Feedback (”Benutzern” der Schnittstelle) eine rasche und effiziente Gestaltung und Realisierung von Kraftempfindungen ermöglicht. Die Graphikumgebung ermöglicht die Definition von Zuständen, Effekten (”Wellen”) und Dynamik durch intuitive graphische Metaphern, die die physikalische Bedeutung jedes betroffenen Parameters transportieren. Während des Manipulierens der Parameter können Empfindungen in Echtzeit gespürt werden, was einen iterativen Gestaltungsprozeß zur Feinabstimmung des Fühlens exakt auf die Bedürfnisse des Designers ermöglicht. Wenn die passende Empfindung erreicht ist, kann die Schnittstelle die Parameter als Betriebsmittel speichern und automatisch einen optimierten Code in einem gewünschten Format generieren, der direkt in einem Anwendungsprogramm verwendet werden kann. Auf diese Weise handhabt die Schnittstelle 300 fast das ganze Force-Feedback-Entwicklungsverfahren von der Kraftempfindungsgestaltung bis zur Codierung. Mit diesen Werkzeugen wird die Programmierung des Force Feedback zu einem schnellen und einfachen Verfahren.
-
Die Herausforderung, das Force Feedback zu programmieren, ist nicht der Codierungsvorgang. Kraftmuster zur Bereitstellung von Kraftempfindungen sind verfügbar und sobald die gewünschte Kraftempfindung bekannt und gekennzeichnet ist, kann die Kraftempfindung unter Verwendung von Softwarebefehlen geradewegs realisiert werden. Der Akt des Gestaltens von Kraftempfindungen zur Bereitstellung eines gewünschten Gefühls, das richtig zu Spiel- oder anderen Anwendungsabläufen paßt, geht allerdings nicht so direkt vor sich. Das Gestalten von Kraftempfindungen und einem speziellen Geühl erfordert ein kreatives und interaktives Verfahren, bei dem Parameter definiert, ihre Wirkung ausprobiert und die Parameter abgeändert werden, bis die Empfindungen die gewünschte Charakterisierung haben. Wenn beispielsweise Zustände entworfen werden, könnte dieses Dialogverfahren das Einstellen der Konstanten von Federn, das Abstecken der toten Zone, das Beeinflussen des Versatzes und das Abstimmen der Sättigungswerte bedingen. Wenn Effekte gestaltet werden, könnte dies das Auswählen einer Wellenquelle (Sinus-, Rechteck-, Dreieckwellenform etc.), das Einstellen der Größe, Frequenz und Dauer des Signals und dann Abstimmen der Gruppenparameter bedingen. Für eine dynamische Empfindung könnte dies das Einstellen der dynamischen Masse und dann Abstimmen der Resonanz- und Abklingparameter bedingen. Beider Wahl unter so vielen Parametern, die jeweils auf eine andere Kraftempfindungsart anwendbar sind, braucht man ein schnelles, einfaches und interaktives Mittel zur Empfindungsgestaltung. Um diese Notwendigkeit zu erfüllen, ermöglicht die Graphikschnittstelle 300 der vorliegenden Erfindung einem Benutzer ein rasches Einstellen der physikalischen Parameter und Fühlen der Empfindungen, wonach die Schnittstelle automatisch den entsprechenden Code zur Verwendung in einem Host-Computer-Anwendungsprogramm generiert.
-
Die Schnittstelle 300 ermöglicht eine Dialoggestaltung des Empfindens von Zuständen, Effekten und Dynamik in Echtzeit, wobei die Parameter durch ein schnelles iteratives Verfahren definiert und ausprobiert werden können. Daher wird die Computer-Implementierungsschnittstelle 300 bevorzugt mit einer Force-Feedback-Schnittstellenvorrichtung 14 verbunden, deren Funktion die Ausgabe befehlsgesteuerter Kraftempfindungen ist. In der Schnittstelle 300 sind intuitive graphische Metaphern bereitgestellt, die das Verständnis eines Programmierers für die auf jede Empfindungsart bezogenen physikalischen Parameter verbessern und dadurch den iterativen Gestaltungsprozeß beschleunigen. Vorzugsweise sind in der Schnittstelle 300 auch Dateiverwaltungswerkzeuge vorgesehen, so daß entworfene Kraftempfindungen gespeichert, kopiert, verändert und kombiniert werden können und es einem Benutzer dadurch ermöglichen, eine Bibliothek mit Kraftempfindungen anzulegen. Wenn Empfindungen einmal definiert sind, speichert die Schnittstelle 300 die Parameter vorzugsweise als ”Betriebsmittel”, die von einem Anwendungsprogramm benutzt werden können. Durch Einbinden eines Kraftempfindungsbetriebsmittels in ein Anwendungsprogramm können die Betriebsmittel z. B. in den optimierten Direct-X Code zur Verwendung in einer Anwendung in der Windows-Umgebung umgesetzt werden. In anderen Ausführungsformen können andere Codeformate oder Sprachen vorgesehen sein. Die Schnittstelle 300 kann durch Programmbefehle oder einen auf einem computerlesbaren Medium gespeicherten Code implementiert werden, wobei das computerlesbare Medium entweder ein mobiles oder immobiles Gerät und ein Halbleiter oder anderer Speicher des ausführenden Computers (wie z. B. der Computer 12), ein Magnetplattenlaufwerk oder -band, eine mobile Festplatte, optische Medien wie eine CD-ROM, eine PCMCIA-Karte oder ein anderes Medium sein kann.
-
Wie in 3 gezeigt, weist die Schnittstelle 300 drei Hauptarbeitsbereiche auf: die Empfindungspalette 302, die Knopfauslöserpalette 304 und den Gestaltungsraum 306. In dem Gestaltungsraum 306 werden Kraftempfindungen erzeugt und können unter Verwendung von Standard-Dateihandhabungsmerkmalen in diesem Raum gespeichert und hineingeladen werden.
-
Zur Erzeugung einer neuen Kraftempfindung wird eine Empfindungsart aus der Empfindungspalette 302 gewählt. Die Palette 302 ist in einem erweiterungsfähigen Baumformat gezeigt. Die Wurzel des Baums enthält die drei Klassen 310 der hierin beschriebenen Force-Feedback-Empfindungen, Zustände, Wellen (Effekte) und Dynamik. Vorzugsweise können Benutzer auch ihre eigenen Überschriften definieren; beispielsweise kann eine ”Lieblings-”Gruppe hinzugefügt werden, wo Kraftempfindungen mit erwünschten, früher entworfenen Parametern gespeichert werden.
-
In der Schnittstelle 300 sind die Klassen Zustände, Wellen und Dynamik in erweiterter Ansicht gezeigt. Auf Wunsch können diese Klassen auch ”komprimiert” werden, so daß sie nur die Klassenüberschrift anzeigen. Wenn eine Klasse in erweiterter Ansicht angezeigt wird, zeigt die Schnittstelle 300 eine Auflistung aller Empfindungsarten an, die für diese Klasse von der mit dem Host-Computer 12 verbundenen Hardware unterstützt werden. Beim Programmieren neuerer oder teurerer Hardware, die eine große Anzahl von Kraftempfindungsarten unterstützt, wird z. B. eine Liste mit vielen oder allen verfügbaren Empfindungsarten angezeigt. Beim Programmieren älterer oder preiswerterer Schnittstellenvorrichtungs-Hardware, die nicht alle Empfindungen implementieren kann, können einige Empfindungsarten in der erweiterten Ansicht weggelassen oder nicht zur Auswahl verfügbar sein. Vorzugsweise kann die Schnittstelle 300 unter Verwendung eines Leistungsaufzählprozesses genau bestimmen, welche Kraftempfindungen durch eine mit dem Host-Computer verbundene gegebene Schnittstellenvorrichtung 14 unterstützt werden, d. h. der Host-Computer kann Informationen von der Schnittstellenvorrichtung anfordern, beispielsweise die Nummer einer Version, das Herstelldatum, eine Liste der implementierten Merkmale etc.
-
Sobald eine Empfindungsart aus der Empfindungspalette 302 ausgesucht ist, wird die Empfindungsart dem Gestaltungsraum 306 hinzugefügt. In 3 ist z. B. ein Icon 308 für die gewählte Kraftempfindung ”Dämpfung” im Fenster des Gestaltungsraums 306 angezeigt. Das Icon 308 kann nun vom Benutzer ausgewählt/geöffnet werden, um die Parameter für die gegebene Empfindungsart unter Verwendung von graphischen Entwicklungswerkzeugen festzulegen (weiter unten beschrieben). In ähnlicher Weise können vielerlei Icons in den Gestaltungsraum gezogen werden, um eine komplexere Kraftempfindung zu erzeugen. Sobald die Parameter für die gegebene Empfindung genau angegeben sind, kann die Empfindung als Betriebsmitteldatei gespeichert werden. Unter Verwendung dieses Verfahrens kann ein Benutzer eine vielseitige Bibliothek von Fühlempfindungen als Betriebsmitteldateien erzeugen. Es könnten auch vordefinierte Bibliotheken von Muster-Betriebsmitteln aus Drittquellen verfügbar sein.
-
In der Auslöserknopfpalette 304 angezeigte Optionen kann der Benutzer ebenfalls auswählen. Die Auslöserpalette 304 wird zum Testen von Kraftempfindungen verwendet, die nun als Knopfreflexe definiert werden. Zum Beispiel könnte eine Kraftempfindung als Kombination aus einer Rechteckwelle und einer Sinuswelle gestaltet werden, die ausgelöst wird, wenn der Knopf #2 der Schnittstellenvorrichtung gedrückt wird. Die Rechteckwelle würde erzeugt, indem aus der Empfindungspalette 302 der periodische Typ 312 ausgesucht wird und passende Parameter für die Rechteckwelle definiert werden. Dann würde eine Sinuswelle erzeugt, indem ein anderer periodischer Typ 312 aus der Empfindungspalette 302 ausgesucht wird und die passenden Parameter für die Sinuswelle definiert werden. Zu diesem Zeitpunkt würden zwei periodische Icons 308 in dem Gestaltungsraumfenster 306 angezeigt. Zum Testen des Auslösers kann der Benutzer diese Icons 308 einfach in das Icon 314 des Knopfes 2 ziehen und loslassen. Auf diese Weise ist der Knopf 2 auf der Schnittstellenvorrichtung 14 so gestaltet worden, daß er die Reflexempfindung auslöst, wenn er gedrückt wird. Dieses Verfahren ist schnell, einfach und vielseitig. Wenn der Benutzer eine Empfindung genau nach Wunsch erreicht, kann die Empfindung als Betriebsmitteldatei gespeichert werden, und es wird ein optimierter Softwarecode zur Verwendung im Anwendungsprogramm erzeugt. Die Auswahl des Knopfes 2 könnte in anderen Ausführungsformen auf andere Art vorgesehen sein. Der Benutzer könnte beispielsweise die gestalteten Kraft-Icons im Gestaltungsraum 306 auswählen oder markieren und dann das Icon des Knopfes 2 in der Palette 304 auswählen, um anzugeben, daß die markierten Kräfte durch den Knopf 2 ausgelöst werden.
-
4 stellt die Schnittstelle 300 dar, wobei im Gestaltungsraum 306 eine Kraftempfindung gekennzeichnet wird. Wenn vom Benutzer ein Icon 308 im Gestaltungsraum 306 ausgewählt wird, erweitert sich das Icon 308 zu einem Kraftempfindungsfenster mit Graphikumgebung zum Festlegen und Testen der physikalischen Parameter, die der gewählten Empfindung zugeordnet sind. In 4 ist z. B. die Empfindungsart einer Federung 320 aus der Zustandsliste 322 gewählt und im Gestaltungsraum 306 als Icon 324 bereitgestellt. Wenn das Icon 324 ausgewählt wird, wird im Gestaltungsraum 306 ein Federungsfenster 326 angezeigt. Innerhalb des Federungsfensters 326 befinden sich Felder 328 zur Charakterisierung der Kraft, einschließlich der Achse 330 (und/oder Richtung, Freiheitsgrad etc.), in der die Kraft angelegt werden soll, des Zuwachses 332 (oder der Größe) der Kraft, und der Parameter 334, die der Kraftempfindung zugeordnet sind. Für die Federempfindung werden z. B. die positive Konstante (”Koeffizient”), die negative Konstante (”Koeffizient”), die positive Sättigung, die negative Sättigung, die Abweichung und die tote Zone der Federempfindung als Parameter angezeigt. Der Benutzer kann die gewünschten Daten in die Felder 328 eingeben, um die Kraft zu kennzeichnen. Der Benutzer hat beispielsweise genau angegeben, daß die Kraft entlang der x-Achse angelegt werden soll (in beide Richtungen, da keine einzelne Richtung spezifiziert ist), hat einen Zuwachs von 100 angegeben und hat Sättigungswerte von 10.000 in positiver und in negativer Richtung festgesetzt. Der Benutzer kann vorzugsweise auch alle oder einige der Parameter in graphischer Form angeben, indem er die Größe oder den Verlauf der Umhüllungskurve, die Höhe oder Frequenz der Wellenform, die Breite der toten Zone oder der Federn, den Platz einer Scheidewand auf einer Achse etc. unter Verwendung eines Cursors oder anderen gesteuerten graphischen Gegenstands einstellt.
-
Wenn der Benutzer Werte in die Felder 328 einsetzt, werden die resultierenden Zusätze und Änderungen an der Kraftempfindung in einem intuitiven Graphikformat in dem Kraftempfindungsfenster angezeigt. Beispielsweise ist in dem Federungsempfindungsfenster 326 eine graphische Darstellung 336 angezeigt. Die Darstellung 336 beinhaltet eine Abbildung 338 des Benutzergegenstands 34 (als Joystick gezeigt, kann aber auch als eine andere Art von Benutzergegenstand gezeigt sein), eine Abbildung 340 des Bodens, eine Abbildung 342 einer Feder auf der rechten Seite des Joysticks 34 und eine Abbildung 344 einer Feder auf der linken Seite des Joysticks 34. Die Darstellung 336 führt eine einzelne Achse bzw. einen einzigen Freiheitsgrad der Schnittstellenvorrichtung vor.
-
Die Darstellung 336 stellt ein physikalisches, graphisches Modell dar, mit dem der Benutzer die Funktionsweise der Kraftempfindung visuell verstehen kann. Die Benutzergegenstandsabbildung 338 wird vorzugsweise in ähnlicher Gestalt wie der tatsächliche Benutzergegenstand der gewünschten Schnittstellenvorrichtung angezeigt (in diesem Beispiel ein Joystick). Entlang der angezeigten Achse sind in beiden Richtungen Federabbildungen 342 und 344 vorhanden, die durch einen positiven Steifheitsparameter (k) und einen negativen Steifheitsparameter (k) definiert sind. Graphisch ist die große Konstante der Feder nach rechts (Koeffizient 80) als größere Federabbildung 342 dargestellt. Der Nullpunkt des Federzustands ist an einer Mittenposition 346 gezeigt, da der Versatzparameter 348 null ist. Falls der Versatz eine positive oder negative Größe hat, würde der Nullpunkt entsprechend weiter links oder rechts angezeigt. Die Totzonenregion ist graphisch als Lücke zwischen der Benutzergegenstandsabbildung 338 und den Federabbildungen 342 und 344 gezeigt.
-
In der bevorzugten Ausführungsform hilft die graphische Darstellung dem Benutzer ferner bei der Sichtbarmachung der geplanten Kraftempfindung dadurch, daß sie in Übereinstimmung mit der Bewegung des Benutzergegenstands 34 der angeschlossenen Schnittstellenvorrichtung 14 in Echtzeit aktualisiert wird. Die Benutzergegenstandsabbildung 338 verschiebt sich dann in einer Richtung, die der Bewegung des Benutzergegenstands 34 auf Veranlassung des Benutzers entspricht. Der Benutzergegenstand kann entlang der gegebenen Achse sowohl in positiver als auch in negativer Richtung frei bewegt werden und entweder auf eine positive oder negative Konstante von der Federempfindung treffen. Falls demnach der Benutzergegenstand vom Nullpunkt 346 aus frei nach links bewegt wird, wird die Joystick-Abbildung 338 in der Totzonenregion nach links verschoben, und wenn der Benutzergegenstand 34 auf den Federwiderstand trifft, wird die Joystick-Abbildung 338 in Kontakt mit der Federabbildung 344 angezeigt. Falls keine tote Zone definiert ist, werden die Federabbildungen 342 und 344 als in Kontakt mit der Joystick-Abbildung 338 an der Mittenposition dargestellt. Die Randanschlagabbildungen 350 definieren die Begrenzungen des Freiheitsgrads; wenn der Benutzergegenstand 34 z. B. entlang einer Achse zu einer physikalischen Grenze der Schnittstellenvorrichtung bewegt wird, wird die Joystick-Abbildung 338 als in Kontakt mit einer entsprechenden Randanschlagabbildung 350 dargestellt.
-
5a bis 5c veranschaulichen die graphische Darstellung 336, wenn der Benutzergegenstand 34 vom Benutzer bewegt wird. In 5a bewegt der Benutzer den Benutzergegenstand 34 und die Abbildung 338 in positiver Richtung längs einer Achse, wie durch den Pfeil 354 gezeigt. Der Benutzer spürt keinen Kraftwiderstand, weil sich der Benutzergegenstand in der Totzonenregion befindet. Dies ist dadurch dargestellt, daß die Joystick-Abbildung 338 nicht in Kontakt mit anderen Gegenständen angezeigt ist. In 5b trifft der Benutzergegenstand 34 in der positiven Richtung auf die Federkonstante und beginnt, die Feder zusammenzudrücken. Wie durch die graphische Darstellung 336 gezeigt, hat die Joystick-Abbildung 338 die rechte Federabbildung 342 berührt, und die Federabbildung 342 ist leicht komprimiert gezeigt. In 5c bewegt sich der Benutzergegenstand weiter gegen die Federkraft, wie in der Darstellung 336 entsprechend als Kompression der Feder 342 angezeigt. Sobald auf die positive Federkonstante getroffen wird, steigt die Widerstandskraft linear zur Kompression der Feder an (wie dies auch bei einer echten Feder ist). Der Kompressionsumfang, den der Benutzer fühlt, ist mit dem Kompressionsumfang korreliert, der durch die Federabbildung 342 gezeigt ist. Falls der Programmierer einen Sättigungswert für die Kraftgegenbewegung in positiver Richtung definiert hat, würde die Kraftausgabe nicht mehr weiter mit der Kompression steigen, sobald die Sättigungsgrenze in positiver Richtung überschritten würde. Die Sättigung kann auch graphisch dargestellt werden, beispielsweise durch Hervorheben der zutreffenden Federabbildung in einer anderen Farbe (wie z. B. Rot), oder durch Hervorheben einer Nachricht oder Anzeige auf dem Bildschirm.
-
Bezugnehmend auf 4 kann der Benutzer/die Benutzerin sofort nach Überprüfen der Eingabeparameter und Einstellungen jede der vorhandenen Informationen ändern oder neue Informationen hinzufügen, indem er oder sie Daten in die Felder 328 eingibt. Alle diese Änderungen werden sofort im Fenster 326 angezeigt. Wenn der Benutzer z. B. den Koeffizienten (Konstante) der Feder auf der rechten Seite ändert, wird die Federabbildung 342 größenmäßig sofort geändert, um mit dem neuen Wert zu korrelieren. Durch einfaches Betrachten der Darstellung 336 gewinnt der Benutzer so ein intuitives Gefühl dafür, wie sich die Empfindung anfühlen wird. Durch Bewegen des Benutzergegenstands und Spüren der Empfindung kann der Benutzer dann mit mehr Genauigkeit bestimmen, wie die Empfindung sich anfühlen wird (Feinabstimmung). Demzufolge zeigt die graphische Darstellung 336, wie angezeigt, dem Benutzer deutlich die verschiedenen Wirkungen von Parametern auf die Kraftempfindung auf und ermöglicht es dem Benutzer außerdem, die mit der graphischen Darstellung koordinierten Kräfte zu erleben.
-
Andere graphische Darstellungen können in der Schnittstelle 300 für Raumstrukturzustände, Wandzustände, Dämpfungszustände, Trägheitszustände, Reibungszustände etc. angezeigt werden. In anderen Ausführungsformen kann durch Zeigen einer Gesamtdarstellung des Benutzergegenstands eine zweidimensionale Kraftempfindung (d. h. zwei Freiheitsgrade) im Fenster 326 angezeigt werden. Beispielsweise kann in der Mitte von zwei Anordnungen von Federabbildungen in Querformation eine kreisförmige Benutzergegenstandsabbildung angezeigt werden, wobei jede Federanordnung für einen anderen Freiheitsgrad steht.
-
6 veranschaulicht die Schnittstelle 300 und zeigt eine alternative graphische Darstellung eines Federzustands. 6 zeigt auch die Vielfalt von Bedingungen 400, die zum Aussuchen aus der Zustandsliste zur Verfügung stehen. Die in 4 verwendete Darstellung kann ebenso für einen Federzustand verwendet werden. In 6 hat der Benutzer das Feder-Icon 401 im Gestaltungsraum 306 ausgesucht. Wenn das Icon 401 ausgewählt ist, wird ein Federzustandsfenster 402 im Gestaltungsraum 306 angezeigt. Das Federungsfenster 402 beinhaltet Parameter 404 zur Kennzeichnung der Federkraft sowie des Zuwachses 406 und der Achsensteuerung 408. Für jede Achse, in der die Kraft angelegt werden soll, wird ein Fenster angezeigt. Ein grau ausgefülltes Fenster für den zweiten Achsenzustand zeigt an, daß dieser Achse gegenwärtig keine Kraft zugeordnet ist.
-
Im ersten Achsenfenster 410 steht ein einfacher Modus und ein höherer Modus zur Verfügung, ähnlich wie beim Dämpfungszustand. In 6 hat der Benutzer den einfachen Modus ausgesucht. Von jedem Rand des Fensters 410 aus sind Federabbildungen 412 dargestellt, wobei die Federabbildung 412a für die negative Richtung steht und die Federabbildung 412b für die positive Richtung steht. Wenn der Benutzer den Benutzergegenstand längs der angezeigten Achse bewegt (die x-Achse), verschiebt sich die Linie 414 in die entsprechende Richtung. Wenn sich die Linie 414 in eine Federabbildung 412 hineinbewegt, gibt der Mikroprozessor die angegebene Federkraft auf den Benutzergegenstand aus, so daß der Benutzer die gekennzeichnete Kraftempfindung spüren kann. Wenn der Benutzergegenstand weiter in die Feder hineinbewegt wird, wird die Federabbildung so komprimiert, wie es bei einer echten Feder wäre. Der leere Raum zwischen den Federabbildungen 412 zeigt die Totzonenregion an, wo keine Kräfte ausgegeben werden. Es sei darauf hingewiesen, daß der Benutzer eine Federkraft spürt, wenn irgendein Bestandteil der Bewegung des Benutzergegenstands längs der x-Achse liegt; falls der Benutzer den Benutzergegenstand in einem 45°-Winkel bewegt (wo die x-Achse bei 0° ist), dann ist ein Teil der Federkraft in der x-Achse zu spüren. Dieser Bestandteil ist aber eine schwächere Federkraft als wenn der Benutzergegenstand direkt auf der x-Achse bewegt würde. Dies ist auch für die anderen Bedingungen der Schnittstelle 300 vorzugsweise der Fall. Bei gewissen alternativen Ausführungsformen könnte die Federkraft in alle Richtungen ausgeschaltet sein, außer für die Bewegung exakt (oder innerhalb einer Toleranz) auf der angezeigten Achse.
-
In der bevorzugten Ausführungsform kann der Benutzer die Steifheit (k) der Federkraft durch die Auswahl von Steuerpunkten 422 an den Rändern der Stirnseite der Federabbildungen 412 mit einem Cursor einstellen. Der Benutzer kann die Steuerpunkte verziehen, um die Breite der Federabbildungen einzustellen, was wiederum den Steifheitsparameter einstellt (wobei in der Gleichung F = kx die Steifheit k eine Konstante ist, x die Verschiebung des Benutzergegenstands ist und F die resultierende Kraft ist). Eine dickere Federabbildung deutet einen größeren Steifheitsparameter und eine stärkere Federkraft an. So ist die Abbildung 412a breit und deutet eine große Federkraft in negativer Richtung und das Gegenstück in positiver Richtung an. Der Benutzer kann auch die Vorderenden der Federabbildungen näher zusammen- oder weiter auseinanderschieben und so die Totzonen- und Versatzparameter einstellen. Die Parameter werden beim Einstellen an den örtlichen Mikroprozessor gesendet, der dann die neu gekennzeichnete Kraft auf dem Benutzergegenstand implementiert (falls zweckmäßig).
-
Es sind auch vorzugsweise Icons vorgesehen, um dem Benutzer bei der Gestaltung von Kraftempfindungen aus vorher gespeicherten Kraftempfindungen zu helfen. Wenn z. B. das Icon 424 ”Clip-Objekte” ausgewählt wird, stellt es dem Benutzer eine Liste oder Bibliothek vordefinierter, allgemeiner Kraftempfindungen zur Verfügung, die der Benutzer als Basis oder Ausgangspunkt verwenden kann, d. h. der Benutzer kann eine allgemeine Federzustandskonfiguration so verändern, daß er schnell eine gewünschte Kraft erreicht. Diese Bibliothek kann beispielsweise von kommerziellen Kraftanbietern oder anderen Quellen zur Verfügung gestellt werden oder eine vom Kunden erstellte Bibliothek sein.
-
7 veranschaulicht die Schnittstelle 300 mit einer graphischen Darstellung für eine periodische Wellen-(Effekt)-Kraftempfindung. Ein Periodenformfenster 440 ist unter Ansprechen darauf dargestellt, daß der Benutzer (z. B. durch Doppelklick) das Icon 442 für periodische Wirkung auswählt, das in den Gestaltungsraum 306 gezogen wurde. Im Fenster 440 ermöglicht das Wellenform-Quellenfeld 444 einem Benutzer die Auswahl aus vielerlei verfügbaren Arten von Signalwellenquellen für den Effekt. Der Benutzer hat die Möglichkeit, die Dauer der periodischen Welle durch Verwenden von Schiebereitern 446 auszuwählen und kann mit dem Kästchen 448 auch eine unbegrenzte Dauer wählen. Zuwachs und Versatz können unter Verwendung von Schiebereitern 450 ausgewählt werden, und andere Parameter sind in Feldern 452 vorgesehen. In einem Fenster 454 ist eine graphische Darstellung der periodischen Wellenform angezeigt, die eine Gestalt aufweist, die auf der gewählten Wellenquelle basiert und auf den anderen ausgewählten Parametern (oder Ausgangsparametern, falls keine Parameter ausgesucht sind) basiert. Durch Verziehen von Steuerpunkten 456 der Wellenform kann der Benutzer in Feldern 452 Umhüllungsparameter graphisch einstellen. Eine Frequenz der Wellenform kann durch Verziehen einer angezeigten Welle zum Verbreitern oder Verschmälern der dargestellten Schwingungen der Welle oder durch Festlegen der Periode in einem Feld 458 eingestellt werden. In Feldern 460 können Auslöserknöpfe für die periodische Welle bestimmt werden, um der entworfenen Wirkung einen physikalischen Knopf (Knöpfe) oder Steuerungen zuzuordnen, und die Richtung der periodischen Welle im Benutzergegenstand-Arbeitsraum wird unter Verwendung einer Wählscheibe 462 und eines Feldes 464 bestimmt. Das Wiederholungsintervallfeld 460 ermöglicht es einem Benutzer, die Zeitgröße vor Wiederholung des Effektes festzulegen, wenn der bezeichnete Knopf gedrückt ist. Diese Parameter und Merkmale können als Zahlen in die dargestellten Eingabefelder oder Bereitschaftsfelder eingegeben werden oder können durch Verziehen der graphischen Darstellung der Wellenform im Fenster 454 mit einem Cursor bis zu dem gewünschten Aussehen oder Maß eingegeben werden.
-
Beim Spezifizieren verursachen die Parameter eine Änderung der graphischen Darstellung gemäß den Parametern. Wenn also der Benutzer eine bestimmte Umhüllungskurve spezifiziert, wird diese Umhüllungskurve sofort im Fenster 454 angezeigt. Der Benutzer kann auf diese Weise schnell visuell bestimmen, wie die angegebenen Parameter sich genau auf die periodische Wellenform auswirken.
-
Zum Testen der spezifizierten periodischen Welle wählt der Benutzer vorzugsweise den Startknopf 456 aus, der den Mikroprozessor anweist, die angegebene Kraftempfindung über die Zeit an den Benutzergegenstand auszugeben, so daß der Benutzer die Kraftempfindung fühlen kann, wenn er den Benutzergegenstand ergreift. In der bevorzugten Ausführungsform rollt eine Graphikmarke, wie z. B. eine vertikale Linie oder ein Zeiger, von links nach rechts über das Bildschirmfenster 454 und zeigt den aktuellen Abschnitt oder Punkt auf der Wellenform an, der gerade ausgegeben wird. Oder die Wellenform kann belebt sein; wenn beispielsweise ein Impuls und Nachlassen festgelegt ist, wird die Welle so belebt, daß der Impulsabschnitt der Wellenform angezeigt wird, wenn die Impulskraft auf den Benutzergegenstand ausgegeben wird, und das Nachlassen wird angezeigt, wenn die Ausgangskraft auf ein konstantes Level herunterfährt. Da die graphische Anzeige von dem Host-Computer übertragen wird und die Kraftwellenerzeugung (in einer Ausführungsform) von einem örtlichen Mikroprozessor verarbeitet wird, muß die Host-Anzeige der Marke zu Beginn der Kraftausgabe mit der Krafterzeugung des Mikroprozessors synchronisiert werden. Der Benutzer kann die Ausgabe der periodischen Empfindung stoppen, indem er den Stop-Knopf 458 auswählt.
-
Wie oben beschrieben, besteht die normale Vorgehensweise eines Kraftdesigners bei der Verwendung der Schnittstelle 300 darin, Parameter für eine ausgewählte Kraftempfindungsart einzugeben, durch Betätigen des Benutzergegenstands die Art und Weise zu testen, wie sich die Kraftempfindung anfühlt, die Parameter auf der Basis dessen einzustellen, wie sich die Kraft anfühlt, und die Schritte Testen der Art und Weise, wie sich die Kraft anfühlt und Einstellen der Parameter iterativ zu wiederholen, bis die gewünschte Kraftempfindung charakterisiert ist. Normalerweise würde der Benutzer dann die resultierende Parameteranordnung zur Beschreibung dieser Kraftempfindung auf einem Speichermedium sichern, wie z. B. einer Magnetplatte, einer CD-ROM, einem nichtflüchtigen Speicher, einer PCMCIA-Karte, einem Band oder anderen Speicherraum, auf den ein Computer zugreifen kann, der zur Steuerung des Force Feedback gewünscht wird. Der Benutzer ordnet der gespeicherten Parameteranordnung vorzugsweise auch einen Feldnamen zu, wie z. B. einen Dateinamen, so daß später auf diese Kraftempfindung zugegriffen werden kann. Demzufolge können andere auf einem Host-Computer laufende Anwendungsprogramme mit diesem Feldnamen auf die Parameteranordnung zugreifen und die gestaltete Kraftempfindung in einer Anwendung verwenden, wie z. B. in einem Spiel, einer Graphik-Benutzerschnittstelle, einer Simulation etc.
-
Sobald eine Kraftempfindung unter Verwendung der Graphikwerkzeuge gestaltet ist, wie oben beschrieben, kann die Definition als Parameter-Betriebsmittel gespeichert werden. Durch Zugreifen auf das Schnittstellen-Betriebsmittel von einem Anwendungsprogramm aus wird das Betriebsmittel automatisch von einer Parameteranordnung in den Code in der gewünschten Sprache oder dem gewünschten Format konvertiert, z. B. Direct-X von der Firma Microsoft® Corporation zur Verwendung im Betriebssystem WindowsTM. Das Force-Feedback-Betriebsmittel kann als oder in einer DLL (Dynamische Link-Bibliothek) vorgesehen sein, die mit einem Anwendungsprogramm verknüpft ist. In einer Ausführungsform kann die DLL das Anwendungsprogramm mit Effekten bereitstellen, die als komplettierte Direct_X Structs (DI_Struct) definiert sind, wobei der Anwendungsprogrammierer dann unter Verwendung des Aufrufs ”CreateEffect” im Direct-X (oder entsprechenden Aufrufen in anderen Sprachen/Formaten) Effekte erzeugen kann. Oder die DLL kann das gesamte Verfahren durchführen und den Effekt für das Anwendungsprogramm erzeugen, wobei sie für den Programmierer einen Zeiger auf die Empfindung bereitstellt. Ein Vorteil bei der Verwendung der ersten Option, bei der der Programmierer ”CreateEffect” aufruft, ist dabei, daß sie dem Programmierer vor der Erzeugung des Effekts die Gelegenheit gibt, auf die Parameter zuzugreifen, so daß die Parameter auf Wunsch verändert werden können.
-
Kräfteempfindungen und Geräusche
-
8 veranschaulicht eine andere Ausführungsform 500 der Kraftdesign-Schnittstelle der vorliegenden Erfindung, die die Möglichkeit zur Synchronisierung von Geräuschen und Kraftempfindungen (”Krafteffekte”) einschließt. Geräusche sind für das Erleben von Gefühlsempfindungen ziemlich wichtig. Ein Fühlen einer Maschine, einer Explosion oder einer Kollision hat ohne Ton beispielsweise nicht annähernd dieselbe Wirkung auf den Benutzer wie wenn es von synchronisierten Geräuscheffekten begleitet ist. Es ist daher wichtig für den Designer von Kraftempfindungen, während des Gestaltungsverfahrens die Geräusche zu berücksichtigen, die die Kraftempfindungen begleiten werden. Die Schnittstelle 500 ermöglicht es einem Benutzer der Design-Schnittstelle, Kräfte mit gewünschten Geräuscheffekten einfach zu synchronisieren und, was noch wichtiger ist, ermöglicht es dem Benutzer, Kraftempfindungen wiederholt zu modifizieren, so daß sie effizienter mit den Geräuscheffekten präsentiert werden.
-
Die Schnittstelle 500 enthält vorzugsweise eine Empfindungspalette 502, eine Knopf-Auslöserpalette 504 und einen Gestaltungsraum 506 mit ähnlichen Merkmalen wie in der oben beschriebenen Schnittstelle 300. Der Gestaltungsraum kann eine Reihe von Kraftempfindungen 508 enthalten, die dann in einer speziellen ”Kraft-Betriebsmittel”-Datei gespeichert werden, die von der Schnittstelle 500 herausgegeben wird. Jede Kraftempfindung in dem Gestaltungsraum 506 kann durch Aufrufen eines Kraft-Entwurfsfensters 508 verändert werden, das eine graphische Darstellung der Kraft und mehrere Steuerungen enthält, um eine Modifikation der Kraftempfindung zu ermöglichen, wie oben detailliert beschrieben. In 8 ist beispielsweise ein Entwurfsfenster für eine periodische ”Pfeil und Bogen”-Kraftempfindung gezeigt.
-
Die Knopf-Auslöserpalette 504 weist vorzugsweise eine zusätzliche Funktionsvielfalt der vorliegenden Erfindung bezüglich der Zuordnung von Geräuschen zu Kraftempfindungen auf. Die Auslöserpalette 504 wird zum Testen von Kraftempfindungen und Geräuschen verwendet, die den Kraftempfindungen jeweils in der Schnittstelle 500 zugeordnet wurden (und unterscheidet sich auf diese Weise vom Zuordnen einer Auslöserbedingung zu einer Kraftempfindung selbst, was im Feld 509 des Entwurfsfensters 508 geschieht). Jedes Knopf-Icon 510 kann einem bestimmten Knopf oder einer anderen Steuerung auf der Force-Feedback-Vorrichtung zugeordnet werden, die mit dem Computer verbunden ist, der die Schnittstelle 500 betreibt. Zur Anzeige der Möglichkeit der Zuordnung von Geräuschen weisen die Knopf-Icons 510 vorzugsweise ein Hinweis-Icon oder eine andere graphische Indikation der Möglichkeit zum Hinzufügen von Geräuschen auf. Der Benutzer kann einem Knopf-Icon 510 eine Kraftempfindung zuordnen, um es dem Benutzer zu ermöglichen, die Kraftempfindung auszugeben, wie oben beschrieben; beispielsweise kann ein Kraftempfindungs-Icon 508 im Gestaltungsraum 506 auf das Knopf-Icon 510a gezogen werden. Alternativ können ein Menü und eine Liste mit Kraftempfindungen zum Hinzufügen zu dem Knopf-Icon angezeigt werden. Einem Knopf-Icon 510 können mehrfache Kraftempfindungen zugeordnet sein, wie durch unter dem Knopf-Icon 510a dargestellte Kraft-Icons 511 gezeigt.
-
Dem Knopf-Icon 510a kann vom Benutzer auch ein Geräusch zugeordnet werden. Wenn der Benutzer beispielsweise die Anzeige eines Geräuschmenüs auswählt (z. B. Wahl eines graphischen Knopfes etc. durch Rechtsklick auf der Maus), wird ein Menü 512 angezeigt, das es einem Benutzer ermöglicht, ein Geräusch an das Knopf-Icon ”anzuhängen”. In dem gezeigten Beispielsmenü hat die Benutzerauswahl die Optionen, ein Geräusch an das ausgewählte Knopf-Icon anzuhängen, ein zuvor angehängtes Geräusch von dem ausgewählten Knopf-Icon ”abzutrennen”, oder ein Geräusch zu testen, das für das Knopf-Icon ausgewählt wurde. Beim Anhängen eines Geräusches wird vorzugsweise eine Liste mit Geräuschdateien angezeigt, aus denen der Benutzer eine Datei auswählen kann. Die Geräuschdateien können in einem Standardformat vorliegen, wie z. B. ”wav” oder RealAudio, und können sich auf dem Computer befinden, der die Design-Schnittstelle 500 betreibt oder auf einem anderen Computer, der beispielsweise durch ein Computer-Netzwerk mit dem Computer verbunden ist, der die Schnittstelle betreibt. In wechselnden Ausführungsformen kann der Benutzer mehrfache Geräuschdateien zum Anhängen an ein einzelnes Knopf-Icon 510 auswählen.
-
Wenn eine oder mehr Geräuschdateien an ein Knopf-Icon wie das Knopf-Icon 510a angehängt wurden, werden die Geräuschdateien auf an den Computer angehängten Lautsprechern abgespielt, wenn der zugehörige Knopf auf der Force-Feedback-Schnittstellenvorrichtung vom Benutzer gedrückt wird. Darüber hinaus werden alle dem Knopf-Icon 510a zugeordneten Kraftempfindungen 511 zur selben Zeit abgespielt wie das Geräusch, wenn der Knopf gedrückt wird. Vorzugsweise ist der Beginn der Kraftempfindung mit dem Beginn des abgespielten Geräuscheffektes synchronisiert. Die Kraftempfindung und das Geräusch können auch abgespielt werden, wenn der Benutzer eine Steuerung in der Schnittstelle 500 aktiviert, wie z. B. einen graphischen Knopf oder Icon in der Schnittstelle 500.
-
Die Möglichkeit, Toneffekte mit einem Knopf zu verbinden und eine oder mehr Geräuschdateien mit einer Kraftempfindung abzuspielen, ermöglicht dem Benutzer eine direkte Kenntnis der Art und Weise, wie eine Kraftempfindung in Verbindung mit einem gewünschten Toneffekt von dem Benutzer erlebt werden wird. Dies ermöglicht dem Benutzer die Feinabstimmung einer Kraftempfindung, die mit Geräuschen synchronisiert werden soll. Wenn beispielsweise eine Vibration mit einem pulsierenden Geräuscheffekt synchronisiert werden soll, können die vom Benutzer verspürten Vibrations-”Stöße” mit jedem Tonimpuls synchronisiert werden, indem ein Knopf gedrückt wird, der mit einem Knopf-Icon 510 verbunden ist, dem die Kraft und das Geräusch zugeordnet sind. Wenn die Vibrationsstöße teilweise nicht mit den Tonimpulsen synchron sind, kann der Benutzer die Frequenz (oder andere relevante Parameter) der Vibration schnell einstellen und die Kraft und das Geräusch erneut testen. Falls die Kraft eine weitere Abstimmung benötigt, kann der Benutzer dies schnell tun. Dieses iterative Gestaltungsverfahren ermöglicht es, einzelne Merkmale in einem Geräuscheffekt an die Merkmale in einem abgespielten Krafteffekt anzupassen. Wenn beispielsweise ein Geräusch nicht periodisch ist und bestimmte Merkmale aufweist, wie z. B. ein leises Kollisionsgeräusch gefolgt von einem lauten Kollisionsgeräusch, ist eine Kraftempfindung mit der Ausgabe von Rüttelstößen mit den Kollisionsgeräuschen in der Schnittstelle 500 (oder Schnittstelle 300) der vorliegenden Erfindung leicht zu synchronisieren. Natürlich kann der Benutzer den Ton auch so einstellen, daß er mit einer bestimmten Kraftempfindung synchronisiert wird. In einigen Ausführungsformen kann die Schnittstelle 500 einen Geräuschdateiaufbereiter (Sound Editor) enthalten; oder der Benutzer kann ein externes, separates Programm zum Editieren von Geräuschdateien verwenden, wie es Fachleuten auf diesem Gebiet gut bekannt ist.
-
In alternativen Ausführungsformen können unterschiedliche Methoden zum Zuordnen von Geräuschen verwendet werden. Zum Beispiel könnte ein Geräusch direkt einer Kraftempfindung zugeordnet sein (oder umgekehrt), und die Kraftempfindung kann ganz normal unter Verwendung eines Auslösers, graphischen Knopfes, Knopf-Icons 510 etc. getestet werden. Immer wenn die Kraftempfindung ausgegeben wird, wird auch das zugeordnete Geräusch ausgegeben.
-
In einer Ausführungsform enthalten die von der Schnittstelle 500 geschriebenen Kraftempfindungsdateien keinerlei Toninformationen darüber, welche Geräusche welchen Knopf-Icons oder Kraftempfindungen zugeordnet wurden. In anderen Ausführungsformen kann eine Kraftempfindungsdatei Informationen darüber enthalten, welche Geräusche und Kraftempfindungen mit bestimmten Knopf-Icons verbunden wurden. Dies entbindet einen Benutzer davon, jedesmal dieselben Kräfte und Geräusche zuzuordnen, wenn die Schnittstelle 500 geladen wird, da die Zuordnungsinformationen gespeichert sind und bei Laden der Schnittstelle 500 automatisch angewendet werden. Des weiteren könnte beim Laden der Schnittstelle 500 oder während des Gebrauchs der Schnittstelle ein Geräusch automatisch einer Kraft mit demselben Namen wie das Geräusch zugeordnet werden, z. B. kann eine Kraftdatei ”explosion.ifr” benannt werden und eine Geräuschdatei kann ”explosion.wav” benannt werden, so daß die beiden Dateien einander zugeordnet und gleichzeitig abgespielt werden.
-
In anderen Ausführungsformen können zusätzliche Merkmale bereitgestellt sein, um einem Benutzer ein leichtes Synchronisieren einer Kraftempfindung mit einem Ton zu ermöglichen. Zum Beispiel kann ein Fenster zur Darstellung des Tons als eine Größe/Zeit-Kurve angezeigt sein, ähnlich wie die für eine periodische Kraftempfindung gezeigte Kurve 514. Der Benutzer kann die Ton- und Kraft-Wellenformen nebeneinander anzeigen und alle gewünschten Merkmale der Kraft und Merkmale im Ton aneinander anpassen. Des weiteren ist ein Benutzer vorzugsweise in der Lage, einen Teil eines Geräusches zum Abspielen auszuwählen, und der entsprechende Teil der zugeordneten Kraftempfindung spielt dann automatisch. Ebenso ist ein Benutzer vorzugsweise in der Lage, einen Teil einer Kraftempfindung zum Abspielen auszuwählen, und der entsprechende Teil des zugeordneten Geräusches spielt dann automatisch.
-
Zwar ist diese Erfindung bezogen auf mehrere bevorzugte Ausführungsformen beschrieben worden, es wird jedoch erwartet, daß diesbezügliche Veränderungen, Vertauschungen und Äquivalente für Fachleute auf diesem Gebiet beim Lesen der Beschreibung und Studieren der Zeichnungen offensichtlich werden. Beispielsweise können viele unterschiedliche Parameter mit dynamischen Empfindungen, Zuständen und Effekten verbunden sein, um einen Spielraum beim Spezifizieren einer bestimmten Kraftempfindung zu ermöglichen. Diese Parameter können in der Graphikschnittstelle der vorliegenden Erfindung präsentiert sein. Im Schnittstellenwerkzeug der vorliegenden Erfindung können viele Arten von unterschiedlichen visuellen Metaphern angezeigt werden, um es einem Programmierer zu ermöglichen, sich leicht ein Bild von Veränderungen an einer Kraftempfindung zu machen und die Charakterisierung der Kraftempfindung zu verbessern. Des weiteren ist die bestimmte Terminologie zum Zwecke der darstellerischen Klarheit verwendet worden und nicht zur Einschränkung der vorliegenden Erfindung. Daher sollen die folgenden beiliegenden Ansprüche alle solchen Veränderungen, Vertauschungen und Äquivalente einschließen, die unter den eigentlichen Erfindungsgedanken und Schutzbereich der vorliegenden Erfindung fallen.