DE10337914A1 - Manipulation von realen oder virtuellen rechnergestützten Objekten durch zweihändige Bedienung von Eingabegeräten - Google Patents

Manipulation von realen oder virtuellen rechnergestützten Objekten durch zweihändige Bedienung von Eingabegeräten Download PDF

Info

Publication number
DE10337914A1
DE10337914A1 DE2003137914 DE10337914A DE10337914A1 DE 10337914 A1 DE10337914 A1 DE 10337914A1 DE 2003137914 DE2003137914 DE 2003137914 DE 10337914 A DE10337914 A DE 10337914A DE 10337914 A1 DE10337914 A1 DE 10337914A1
Authority
DE
Germany
Prior art keywords
freedom
objects
control
mouse
manipulation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE2003137914
Other languages
English (en)
Inventor
Bernd Gombert
Axel Hildebrandt
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
3DConnexion GmbH
Original Assignee
3DConnexion GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 3DConnexion GmbH filed Critical 3DConnexion GmbH
Priority to DE2003137914 priority Critical patent/DE10337914A1/de
Publication of DE10337914A1 publication Critical patent/DE10337914A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

Die Erfindung bezieht sich auf ein Verfahren zur zweihändigen Selektion, Steuerung und Bearbeitung reeller bzw. virtueller Objekte (110, 110', 110'') mithilfe zweier Eingabe-, Steuer- und/oder Manipulationsgeräte (101, 102). Weiterhin beinhaltet die vorliegende Erfindung die Verwendung eines in drei Dimensionen auslenkbaren, manuell zu betätigenden Eingabe-, Steuer- und Manipulationsgeräts (102) mit drei translatorischen (x, y, z) und drei rotatorischen Raumfreiheitsgraden (phi¶x¶, phi¶y¶, phi¶z¶) für die Erzeugung von Ansteuersignalen zur räumlichen Ausrichtung und Bewegungssteuerung reeller und/oder virtueller Objekte (110, 110', 110''), die über eine Anzeigeeinrichtung (116) einer Recheneinheit (114) dargestellt werden, z. B. im Rahmen einer Computer Aided Design (CAD)-, einer Computer Integrated Manufacturing (CIM)- bzw. einer Virtual Reality (VR)-Applikation. Ein konventionelles, in zwei Dimensionen auslenkbares manuelles Eingabegerät (101) mit zwei translatorischen Raumfreiheitsgraden (x, y) dient erfindungsgemäß zur Erzeugung von Ansteuersignalen, die zur Selektion, Positionssteuerung und Manipulation dieser Objekte (110, 110', 110'') benötigt werden. Die Vorteile dieser zweihändigen Arbeitsweise liegen in einer Erhöhung des Bedienkomforts, einer Vereinfachung der Entwicklungsabläufe und Kosteneinsparungen bei der Entwicklung von 3-D-CAD-Modellen (110'). DOLLAR A Mithilfe des 3-D-Geräts (102) können die zu steuernden bzw. zu bearbeitenden Objekte (110, 110', 110'') durch ...

Description

  • Die Erfindung bezieht sich auf ein Verfahren zur zweihändigen Manipulation realer bzw. virtueller Objekte mittels Eingabegeräten, die funktionell mit einer rechnergestützen Einrichtung verbunden sind.
  • Ein Beispiel für einen Kraft-/Momenten-Sensor, der die Translations- und Rotationsbewegungen, wie sie von den durch die menschliche Hand aufgebrachten Kräften und Momenten erzeugt werden, mit Hilfe von Dehnungsmessstreifen (DMS) direkt in translatorische und/oder rotatorische Bewegungsgeschwindigkeiten eines zu steuernden Objekts umsetzt, ist in der europäischen Patentschrift EP 0 108 348 offenbart.
  • Ein vergleichbarer optischer Sensor ist in der Offenlegungsschrift DE 36 11 337 A1 , der europäischen Patentschrift EP 0 240 023 sowie der US-Patentschrift 4,785,180 offenbart.
  • Aus der Patentschrift US-A-5,757,360 ein eiförmiges 3D-Steuergerät für Computer bekannt, das durch eine Hand des Benutzers frei im Raum bewegt werden kann, seine momentanen Positionen, Bewegungsrichtungen, Geschwindigkeiten und Beschleunigungen ermittelt und diese kinematischen Daten drahtlos zu einem Computer überträgt. Dabei wird ein analoger Bewegungsablauf in Form eines Bewegungsmusters identifiziert, woraus Bewegungsbefehle abgeleitet und anschließend in eine animierte Grafikdarstellung umgesetzt werden.
  • Aus der europäischen Patentschrift EP 0 979 990 A2 ist bekannt, einen Kraft-/Momenten-Sensor zum Steuern von Bedienelementen eines reellen oder virtuellen Misch- bzw. Steuerpults zu verwenden, z.B. um neuartige Farb-, Licht- und/oder Tonkompositionen zu kreieren und zu gestalten. Hierbei kann in vorteilhafter Weise die intuitive räumliche Steue rung in drei translatorischen sowie drei rotatorischen Freiheitsgraden auf ein stufenloses räumliches Mischen oder Steuern einer großen Anzahl von optischen und/oder akustischen Parametern übertragen werden.
  • PROBLEME HERKÖMMLICHER LÖSUNGEN
  • Untersuchungen haben gezeigt, dass menschliche Benutzer daran gewöhnt sind, beidhändig zu arbeiten, wobei typischerweise die eine, nicht dominante Hand (die sogenannte „Führungshand") ein Objekt festhält und in eine zur Bearbeitung geeignete Position bringt, während die andere, dominante Hand (die „Arbeitshand") die zur Bearbeitung erforderlichen Bewegungen ausführt. Wird die intuitive Zuordnung der vorstehend genannten Aufgaben zu den einzelnen Händen aufgehoben, weil die Arbeitshand Aufgaben übernehmen muss, welche der Mensch normalerweise mit der Führungshand erledigen würde, sind bewusste Entscheidungen erforderlich.
  • Obwohl immer mehr Unternehmen in der Konstruktion 3D-CAD-Systeme einsetzen, steuern die meisten Konstrukteure ihre 3D-Modelle immer noch ausschließlich mit Hilfe klassischer Eingabewerkzeuge aus dem „2D-Zeitalter", nämlich mit Tastatur und Grafiktablett und/oder 2D-Maus. Bei dieser ergonomisch ungünstigen Arbeitsweise bleibt eine Hand untätig, weil der Anwender das 3D-Modell am Bildschirm mit derselben Hand positionieren muss, mit der er auch die Bearbeitungsfunktionen aufruft. Folglich muss stets zwischen
    • – einem „Betrachtungsmodus" (in dem z.B. ein Mauszeiger zum Verschieben oder Drehen eines virtuellen Werkstücks durch eine dargestellte Szene navigiert wird oder eine Zoomoperation ausgeführt wird) und
    • – einem „Bearbeitungsmodus" (in dem z.B. einzelne Eckpunkte oder Kanten zum Vergrößern einer rechteckförmigen Fläche des virtuellen Werkstücks selektiert werden)
    hin und her gewechselt werden muss.
  • Ausgehend von dem oben genannten Stand der Technik, liegt der vorliegenden Erfindung die Aufgabe zugrunde, eine Technik zur Manipulation realer und/oder virtueller Objekte bereitzustellen, mit dessen Hilfe eine ergonomisch günstigere Arbeitsweise ermöglicht wird, so dass der Bewegungsablauf der Steuerbewegungen vereinfacht und die Koordination von Hand und Augen und damit die Effizienz des Arbeitsablaufs verbessert werden.
  • Diese Aufgabe wird erfindungsgemäß durch die Merkmale der unabhängigen Ansprüche gelöst. Ausführungsbeispiele, welche den zentralen Gedanken der vorliegenden Erfindung in vorteilhafter Weise weiterbilden, sind in den abhängigen Unteransprüchen definiert.
  • ZUSAMMENFASSENDE DARSTELLUNG DER VORLIEGENDEN ERFINDUNG
  • Die Erfindung bezieht sich auf ein Verfahren zur zweihändigen Manipulation (bspw. Selektion, Steuerung und Bearbeitung) realer oder virtueller Objekte mittels Eingabegeräten, die funktionell mit einer rechnergestützten Einrichtung verbunden sind. Weiterhin beinhaltet die vorliegende Erfindung die Verwendung eines in drei Dimensionen auslenkbaren, manuell zu betätigenden Eingabe-, Steuer- und Manipulationsgeräts mit drei translatorischen und drei rotatorischen Raumfreiheitsgraden für die Erzeugung von Ansteuersignalen zur räumlichen Ausrichtung und Bewegungssteuerung reeller bzw. virtueller Objekte, die über eine Anzeigevorrichtung einer Recheneinheit dargestellt werden, z.B. im Rahmen einer Computer Aided Design (CAD)-, einer Computer Integrated Manufacturing (CIM)- bzw. einer Virtual Reality (VR)-Applikation. Das erfindungsgemäße 3D-Gerät verfügt dabei über ein manuell zu betätigendes Bedienteil, welches in mindestens zwei unterschiedlichen translatorischen (x, y, z) und/oder rotatorischen Freiheitsgraden (φx, φy, φz) auslenkbar ist. Ein konventionelles, in zwei Dimensionen auslenkbares manuelles Eingabegerät mit zwei translatorischen Raumfreiheitsgraden (x, y) dient erfindungsgemäß zur Erzeugung von Ansteuersignalen, die zur Selektion, Positionssteuerung und Manipulation dieser Objekte benötigt werden.
  • Bei der Durchführung von Steueroperationen zur Navigation reeller bzw. virtueller Objekte in den sechs Raumfreiheitsgraden ruhen die Finger der das Gerät bedienenden Führungshand des Anwenders (bei Rechtshändern die linke Hand) stets auf dem Bedienteil des 3D- Geräts, während mit der Arbeitshand (bei Rechtshändern mit der rechten Hand) eine herkömmliche 2D-Maus oder ein Grafiktablett zur Selektion und Manipulation der Objekte betätigt wird. Auf diese Weise entstehen fließende Übergänge zwischen Objektsteuerung und Befehlseingabe, ohne dass der Anwender dabei den Arbeitsfluss unterbrechen oder seine Hand von dem einen oder anderen Gerät entfernen muss. Abgesehen von dem besseren Bedienkomfort bringt der beidhändige Arbeitsansatz darüber hinaus noch einen weiteren, entscheidenden Vorteil im Hinblick auf die Ergonomie des Arbeitsablaufs: Indem den Anwendern ermöglicht wird, gleichzeitig Objekte mit der einen Hand zu steuern und mit der anderen Hand Befehle einzugeben, fallen störende Unterbrechungen des Arbeitsablaufs weg, welche bei der einhändigen Arbeitsweise – z.B. bei der Eingabe von Befehlen über die Tastatur mit derselben Hand, die vorher das 3D-Eingabe-, Steuer- und Manipulationsgerät bedient hat – auftreten.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Weitere Eigenschaften, Merkmale, Vorteile und Zweckmäßigkeiten der zugrunde liegenden Erfindung ergeben sich aus den untergeordneten abhängigen Ansprüchen sowie aus der folgenden Beschreibung einiger Ausführungsbeispiele der Erfindung, welche in den folgenden Zeichnungen abgebildet sind. Hierbei zeigt
  • 1a ein erfindungsgemäßes Ausführungsbeispiel eines ersten Systems zur Erzeugung von Steuersignalen für die Echtzeit-Bewegungssteuerung eines in sechs verschiedenen translatorischen und/oder rotatorischen Freiheitsgraden auslenkbaren reellen Objekts, z.B. eines Roboter-Greiferarms,
  • 1b ein erfindungsgemäßes Ausführungsbeispiel eines zweiten Systems zur Erzeugung von Steuersignalen für die Echtzeit-Bewegungssteuerung eines in sechs verschiedenen translatorischen und/oder rotatorischen Freiheitsgraden auslenkbaren virtuellen Objekts, z.B. eines dreidimensionalen Werkstücks im Rahmen einer 3D-CAD-Applikation,
  • 1c ein erfindungsgemäßes Ausführungsbeispiel eines Systems zur Erzeugung von Steuersignalen für die beidhändige Modellierung eines virtuellen Objekts durch 3D-Extrusion eines 2D-Profils entlang eines vorgegebenen Extrusionspfads, z.B. zur Erzeugung einer virtuellen Wendeltreppe mit Treppengeländer im Rahmen einer 3D-CAD-Applikation,
  • 1d ein erfindungsgemäßes Ausführungsbeispiel eines Systems zur Erzeugung von Steuersignalen für die beidhändige Navigation durch einen Spezifikationsgraph mit baumförmiger Topologie (Montagebaum), Selektion einzelner Knoten, Ausführung der zugehörigen Rechenoperation gemäß Montageliste und grafische Visualisierung der ausgeführten Aktion im Rahmen einer 3D-CAD-Applikation,
  • 1e ein erfindungsgemäßes Ausführungsbeispiel eines Systems zur Erzeugung von Steuersignalen zum Erzeugen, räumlichen Ausrichten und Festlegen der Position einer virtuellen Schnittebene zur Darstellung einer 3D-Schnittansicht reeller und/oder virtueller Objekte im Rahmen einer 3D-CAD-Applikation,
  • 2a ein Flussdiagramm zur Festlegung eines Bildausschnitts der dargestellten reellen bzw. virtuellen Szene zur Selektion reeller bzw. virtueller Objekte, Durchführung einer Maßstabsskalierung des definierten Bildausschnitts, Positionierung einer virtuellen Schnittebene, Manipulation selektierter Objekte und Verschiebung des Bildausschnitts mit Hilfe von Auslenkungen des Kraft-/Momenten-Sensors des 3D-Geräts in verschiedenen translatorischen und/oder rotatorischen Freiheitsgraden sowie Betätigungen der Funktionstasten des 2D-Geräts,
  • 2b ein Flussdiagramm zur Veranschaulichung der Vorgänge, die im Rahmen einer ersten Unterprogramm-Routine zur Festlegung eines rechteckförmigen Bildausschnitts zur Selektion eines reellen bzw. virtuellen Objekts bzw. einer Gruppe solcher Objekte ablaufen,
  • 2c ein Flussdiagramm zur Veranschaulichung der im Rahmen einer zweiten Unterprogramm-Routine ablaufenden Vorgänge zur Navigation der Positionsmarke (eines Mauszeigers) durch eine Liste vorgegebener Zoomfaktoren mit Hilfe des 2D-Geräts und Selektion einer bestimmten Detailtiefenstufe mit dem 2D-Gerät gemäß einem herkömmlichen Verfahren,
  • 2c' ein Flussdiagramm zur Veranschaulichung der im Rahmen der zweiten Unterprogramm-Routine ablaufenden Vorgänge zur Navigation der Positionsmarke (des Mauszeigers) durch eine Liste vorgegebener Zoomfaktoren mit Hilfe des 3D-Geräts und Selektion einer bestimmten Detailtiefenstufe mit dem 2D-Gerät gemäß dem erfindungsgemäßen Verfahren,
  • 2d ein Flussdiagramm zur Veranschaulichung der im Rahmen des ersten Teils einer dritten Unterprogramm-Routine ablaufenden Vorgänge zum Erzeugen, Ausrichten und Festlegen der Raumposition einer virtuellen Schnittebene zur Darstellung einer 3D-Schnittansicht reeller und/oder virtueller Objekte,
  • 2e ein Flussdiagramm zur Veranschaulichung der im Rahmen des zweiten Teils der dritten Unterprogramm-Routine ablaufenden Vorgänge bei der Auswahl eines zu extrudierenden 2D-Profils sowie eines als Freihandlinie definierten Extrusionspfads als Beispiel für die Erzeugung eines virtuellen Objekts durch Bearbeitung (Manipulation) geometrischer Standardformen,
  • 2f ein Flussdiagramm zur Veranschaulichung der im Rahmen des zweiten Teils der dritten Unterprogramm-Routine ablaufenden Vorgänge bei der Auswahl und Positionierung eines als Standardform vorgegebenen Extrusionspfads sowie der Berechnung und Darstellung des entlang dieses Pfads extrudierten 2D-Profils als Beispiel für die Erzeugung eines virtuellen Objekts durch Bearbeitung (Manipulation) geometrischer Standardformen,
  • 2g ein Flussdiagramm zur Veranschaulichung der im Rahmen einer vierten Unterprogramm-Routine ablaufenden Vorgänge zur Verschiebung eines rechteckförmigen Bildausschnitts der dargestellten reellen bzw. virtuellen Szene sowie der darin enthaltenen reellen bzw. virtuellen Objekte,
  • 3a ein Flussdiagramm zur Veranschaulichung der Vorgänge, die beim Navigieren einer Positionsmarke (eines Mauszeigers) durch einen baumförmig strukturierten Spezifikationsgraph einer 3D-CAD-Applikation sowie beim Ansteuern und Selektion der hierin enthaltener Knoten mit Hilfe von Auslenkungen des Bedienteils des 3D-Geräts in verschiedenen Freiheitsgraden ablaufen,
  • 3b ein Flussdiagramm zur Veranschaulichung der Vorgänge, die im Rahmen einer ersten Unterprogramm-Routine zur Navigation der Positionsmarke zu einem Knoten, welcher im Spezifikationsgraph die gleiche Hierarchiestufe wie der zuletzt selektierte Knoten hat, und zur Selektion dieses Knotens ablaufen,
  • 3c ein Flussdiagramm zur Veranschaulichung der Vorgänge, die im Rahmen einer zweiten Unterprogramm-Routine zur Navigation der Positionsmarke zu einem Knoten, welcher im Spezifikationsgraph eine höhere bzw. niedrigere Hierarchiestufe als der zuletzt selektierte Knoten hat, und zur Selektion dieses Knotens ablaufen,
  • 3d ein Flussdiagramm zur Veranschaulichung der Vorgänge, die im Rahmen der ersten Unterprogramm-Routine zur Navigation der Positionsmarke zu einem Knoten, welcher im Spezifikationsgraph die gleiche Hierarchiestufe wie der zuletzt selektierte Knoten hat, und zur Deselektion dieses Knotens ablaufen,
  • 3e ein Flussdiagramm zur Veranschaulichung der Vorgänge, die im Rahmen der zweiten Unterprogramm-Routine zur Navigation der Positionsmarke zu einem Knoten, welcher im Spezifikationsgraph eine höhere bzw. niedrigere Hierarchiestufe als der zuletzt selektierte Knoten hat, und zur Deselektion dieses Knotens ablaufen, und
  • 4 eine Bedienoberfläche zur Ausblendung einzelner Objekt-Freiheitsgrade und Einstellung der Toleranzgrenzen für Auslenkungen der 3D-Maus in diesen Freiheitsgraden.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Im Folgenden werden die Funktionen der in einzelnen Ausführungsbeispielen der vorliegenden Erfindung verwendeten Baugruppen und Verfahrensschritte, wie in den 1a bis 4 dargestellt, näher beschrieben. Dabei sollen zunächst der Aufbau und die mechanischen Bestandteile des erfindungsgemäßen 3D-Eingabegeräts 102 kurz erläutert werden.
  • Erfindungsgemäss wird einerseits eine Geschwindigkeitssteuerung durch ein 3D-Eingabegerät ausgeführt, bei der also eine die Geschwindigkeit der Bewegung eines realen oder virtuellen Objekts eine Funktion der Auslenkung bspw. eines Bedienteil des Eingabegeräts ist.
  • Andererseits wird ein 2D-Eingabegerät zur Ausführung einer Positionssteuerung verwendet, bei der also die Position des Objekts eine Funktion der Auslenkung des Eingabegeräts ist.
  • Die Bedeutung der mit Bezugszeichen versehenen Symbole in den 1a bis 4 kann der beigefügten Bezugszeichenliste entnommen werden.
  • Das erfindungsgemäße 3D-Eingabegerät 102 ist bei entsprechender Ansteuerung durch den Nutzer dazu in der Lage, Ansteuersignale 108 für bspw. sechs voneinander unabhängige Raumfreiheitsgrade zu erzeugen. Diese umfassen drei translatorische Freiheitsgrade, die im Folgenden als x, y und z bezeichnet werden, sowie drei rotatorische Freiheitsgrade, im Folgenden φx, φy und φz genannt, welche Drehbewegungen von virtuellen Objekten 110' um die x-, y- und/oder z-Achse eines dreidimensionalen kartesischen Koordinatensystems mit paarweise orthogonalen Achsen bezeichnen. Auslenkungen des Bedienteils 104 in den oben genannten sechs Raumfreiheitsgraden werden als Ansteuersignale zur Navigation virtueller Objekte 110' bzw. Positionsmarken 110'' durch eine auf einem Computer-Bildschirm 116 visualisierte virtuelle Szene 112' bzw. 112'' interpretiert. Da nicht nur die räumliche Bewegungsrichtung, sondern über kleine Druck-/Zug-Änderungen am Bedienteil 104 auch der Betrag der Geschwindigkeiten (x ., y ., z .), Winkelgeschwindigkeiten (φ .x, φ .y, φ .z), Beschleunigungen (x ..,
    Figure 00080001
    , z ..) und/oder Winkelbeschleunigungen (φ ..x, φ ..y, φ ..z) der zu steuernden virtuellen Objekte 110' in den vorstehend genannten sechs Raumfreiheitsgraden vorgebbar ist, entspricht dieses Gerät nach heutigem Stand der Technik am besten der natürlichen sensomotorischen Verhaltens- und Reaktionsweise des Menschen.
  • 1a zeigt dabei ein erfindungsgemäßes Ausführungsbeispiel 100a eines ersten Systems zur Erzeugung von Steuersignalen für die Echtzeit-Bewegungssteuerung von reellen Objekten 110. Abgebildet ist ein in bis zu sechs translatorischen (x, y, z) und/oder rotatorischen Freiheitsgraden (φx, φy, φz) auslenkbarer Roboterarm. Ein Ausführungsbeispiel 100b eines zweiten Systems zur Erzeugung von Steuersignalen, welche für die Echtzeit-Bewegungssteuerung von virtuellen Objekten 110' verwendet werden, ist in 1b dargestellt. Als Beispiel für ein in sechs verschiedenen translatorischen (x, y, z) und/oder rotatorischen Freiheitsgraden (φx, φy, φz) auslenkbares 3D-CAD-Objekt ist hierbei ein dreidimensionales Werkstück mit Durchgangsbohrung dargestellt.
  • In 1c ist ein erfindungsgemäßes Anwendungsbeispiel eines Systems zur Erzeugung von Steuersignalen abgebildet, die zur zweihändigen Manipulation eines virtuellen Objekts 110' im Rahmen einer 3D-CAD-Applikation benötigt werden. Dies wird am Beispiel der 3D-Extrusion – einer 3D-CAD-Funktion, bei der ein Volumenkörper aus zweidimensionalen geometrischen Objekten (2D-Profilen) entlang eines als Freihandlinie oder Standardform definierten Extrusionspfads erstellt wird – zur Erzeugung einer virtuellen Wendeltreppe mit Treppengeländer verdeutlicht. Erfindungsgemäß erfolgen hierbei alle Navigationsoperationen zur Ansteuerung der vom Anwender aus Symbolleisten ausgewählten geometrischen Standardformen für das 2D-Profil und den Extrusionspfad bzw. zur Freihandzeichnung, Verschiebung und/oder Drehung eines Extrusionspfads mit Hilfe des Bedienteils 104 der 3D-Maus 102, während die Selektion dieser Objekte 110' und die Festlegung ihrer Endpositionen durch Betätigen der linken Maustaste einer herkömmlichen 2D-Maus 101 erfolgt.
  • Das in 1d dargestellte erfindungsgemäße Anwendungsbeispiel der zweihändigen Arbeitsweise bezieht sich auf ein System zur Erzeugung von Steuersignalen, die zur Navigation einer Positionsmarke 110'' durch einen zweidimensionalen, baumförmigen Spezifikationsgraph 112'' (Montagebaum) einer 3D-CAD-Applikation mit mehreren Hierarchieebenen, zur Selektion einzelner Knoten, Durchführung der den einzelnen Knoten zugeordneten Aktionen bzw. Rechenoperationen gemäß einer zugehörigen Montageliste sowie zur grafischen Visualisierung der ausgeführten Aktionen benötigt werden. Der Spezifikationsgraph verfügt dabei über ein Wurzelknoten 112a und eine Anzahl von diesem Wurzelknoten 112a oder einem seiner Blattknoten 112b abzweigenden weiteren Blattknoten 112c niedrigerer Hierarchiestufen. Die Navigation der Positionsmarke 110'' durch den Spezifikationsgraph 112'' erfolgt erfindungsgemäß über das von der Führungshand betätigte Bedienteil 104 der 3D-Maus 102, während die Selektion der Knoten durch eine von der Arbeitshand betätigte herkömmliche 2D-Maus 101 vorgenommen wird.
  • Ein weiteres erfindungsgemäßes Anwendungsbeispiel der zweihändigen Arbeitsweise ist in 1e dargestellt. Abgebildet ist ein System zur Erzeugung von Steuersignalen zum Erzeugen, räumlichen Ausrichten und Festlegen der Position einer virtuellen Schnittebene 120 zur Darstellung einer 3D-Schnittansicht virtueller Werkstücke 110' im Rahmen einer 3D-CAD-Applikation. Dabei erfolgt die Bewegung und Ausrichtung der Schnittebene 120 in ±x-, ±y-, ±z-, ±φx-, ±φy- und/oder ±φx-Richtung erfindungsgemäß über das von der Führungshand betätigte Bedienteil 104 der 3D-Maus 102, während die Festlegung ihrer Endposition durch die von der Arbeitshand betätigte 2D-Maus 101 vorgenommen wird.
  • Gemäß einem Ausführungsbeispiel der vorliegenden Erfindung wird die Geschwindigkeit der Objektbewegung über die Stärke des vom Anwender auf das Bedienteil 104 des 3D-Geräts 102 ausgeübten Drucks geregelt. Bei leichtem Druck auf das Bedienteil 104 können die zu steuernden 3D-Objekte langsam und präzise bewegt werden; bei einer Verstärkung des Drucks erhöht sich ihre Geschwindigkeit. Als Erweiterung kann erfindungsgemäß vorgesehen sein, dass neben der aktuellen Position und Orientierung auch Betrag und Richtung der Geschwindigkeit, Winkelgeschwindigkeit, Beschleunigung und/oder der Winkelbeschleunigung der zu steuernden Objektbewegung durch translatorische (Δx, Δy, Δz) und/oder rotatorische Auslenkungen (Δφx, Δφy, Δφz) des Bedienteils 104 vorgebbar ist.
  • Bei dem 3D-Eingabegerät 102 kann es sich vorzugsweise um eine drahtlose 3D-Maus handeln, welche eine Schnittstelle 103 zur drahtlosen Übertragung der Ansteuerdaten zu einem zu steuernden elektrischen oder elektronischen Gerät aufweist. In die Basisplatte 106 des 3D-Eingabegeräts 102 ist erfindungsgemäß ein Mikroprozessor 106b integriert, der zur Umsetzung von translatorischen (Δx, Δy, Δz) und/oder rotatorischen Auslenkungen (Δφx, Δφy, Δφz) des Bedienteils 104 und auf das Bedienteil 104 einwirkenden, vom Benutzer aufgewandten Kräften (F →x,
    Figure 00110001
    , F →z) und/oder Drehmomenten (M →x, M →y, M →z) in geeignete Ansteuersignale gemäß einem der vorstehend beschriebenen Verfahren dient.
  • Ein solches 3D-Eingabegerät 102 kann besonders vorteilhaft in Kombination mit einer Computer Aided Design (CAD)-, einer Computer Integrated Manufacturing (CIM)- bzw. einer Virtual Reality (VR)-Applikation eingesetzt werden.
  • Gegenstand der Erfindung ist außerdem ein Softwaretreiber-Programmpaket, das die in der Recheneinheit 114 von einem 3D-Eingabe-, Steuer- und Manipulationsgerät 102 empfangenen Ansteuersignale in grafisch darstellbare Bewegungsabläufe selektierter Objekte 110, 110' und/oder ausführbare Steuerbefehle bei Betrieb auf der Recheneinheit 114 umsetzt.
  • Eine weitere Ausführungsform der Erfindung bezieht sich auf ein komplettes System zur Umsetzung von Ansteuersignalen eines in mindestens einem translatorischen bzw. rotatorischen Raumfreiheitsgrad (x, y, φx) auslenkbaren, manuell bedienbaren 2D-Eingabe-, Steuer- und/oder Manipulationsgeräts 101 sowie eines in mindestens drei translatorischen (x, y, z) und/oder rotatorischen Raumfreiheitsgraden (φx, φy, φz) auslenkbaren, manuell bedienbaren 3D-Eingabe-, Steuer- und/oder Manipulationsgeräts 102 in grafisch darstellbare Objektbewegungen und/oder von einem Computer 114 ausführbare Steuerbefehle. Sowohl das 2D-Gerät 101 als auch das 3D-Gerät 102 sind dabei mit einer Recheneinheit 114 mit einem darauf installierten Softwaretreiber-Programmpaket und einer an die Recheneinheit 114 angeschlossenen Anzeigevorrichtung 116 zur Visualisierung gesteuerter Objektbewegungen verbunden. Das System kann besonders vorteilhaft zur Selektion, Positions- und/oder Bewegungssteuerung bei der Echtzeit-Navigation reeller bzw. virtueller 2D- bzw. 3D-Objekte 110, 110', 110'' nach einem der vorstehend beschriebenen Verfahren eingesetzt werden.
  • In 2a ist ein Flussdiagramm 200a zur Festlegung eines Bildausschnitts der dargestellten reellen bzw. virtuellen Szene 112, 112' abgebildet, der zur Selektion reeller bzw. virtueller Objekte 110, 110' dient. Das Flussdiagramm zeigt darüber hinaus die zur Durchführung einer Maßstabsskalierung dieses Bildausschnitts notwendigen Prozeduren, die bei der Navigation einer Positionsmarke 110'' (z.B. eines Mauszeigers) durch eine Zoomfaktoren liste mit verschiedenen diskreten Detailtiefenstufen (D1, ..., Dn) benötigt werden. Es enthält ferner Prozeduren zur Positionierung einer virtuellen Schnittebene 120, zur Manipulation selektierter Objekte 110, 110' sowie zur Verschiebung des Bildausschnitts mit den darin enthaltenen Objekten durch Auslenken des Kraft-/Momenten-Sensors 104 der erfindungsgemäßen 3D-Maus 102 in verschiedenen translatorischen (x, y, z) und/oder rotatorischen Freiheitsgraden (φx, φy, φz) und Betätigen von Funktionstasten der 2D-Maus 101.
  • Die in 2b bis 2g abgebildeten Flussdiagramme 200b, 200c, 200c', 200d, 200e, 200f und 200g dienen zur Veranschaulichung der Vorgänge, welche im Rahmen der Unterprogramm-Routinen 202, 206, 207 und 208 für die vorstehend genannten Prozesse ablaufen.
  • Flussdiagramm 200b zeigt die im Rahmen der Unterprogramm-Routine 202 ablaufenden Vorgänge zur Festlegung von Position und Größe eines rechteckförmigen Bildausschnitts der auf dem Bildschirm 116 dargestellten reellen bzw. virtuellen Szene 112, 112', die zur Selektion eines reellen bzw. virtuellen Objekts 110, 110' bzw. einer Gruppe derartiger Objekte benötigt werden. Hierzu wird eine Positionsmarke 110'' (hier: ein Mauszeiger) in ±x- und/oder ±z-Richtung zum Ansteuern zweier diagonal entgegengesetzt liegender Eckpunkte des rechteckförmigen Bildausschnitts navigiert. Die Positionen dieser Eckpunkte werden durch Betätigung (Drücken und Gedrückthalten bzw. Loslassen) der linken Maustaste der 2D-Maus 101 bestätigt.
  • Wird über die Abfrage 202a eine translatorische Auslenkung Δx ≠ 0 und/oder Δy ≠ 0 der 2D-Maus 101 bzw. (falls die 2D-Maus 101 mit einem Navigationsrad ausgestattet ist) eine rotatorische Auslenkung Δφx ≠ 0 detektiert, wird die Positionsmarke 110'' gemäß Schritt 202b in ±x- und/oder ±z-Richtung durch die auf dem Bildschirm 116 dargestellte reelle bzw. virtuelle Szene 112, 112' navigiert, wobei Größe und Richtung der Versetzung aus Betrag und Vorzeichen der Auslenkung Δx und/oder Δy der 2D-Maus 101 berechnet werden. Nach Erfassung einer Betätigung (Drücken und Gedrückthalten) der linken Maustaste der 2D-Maus 101 über die Abfrage 202c erfolgt gemäß Schritt 202d die Festlegung eines Eckpunkts eines zur Selektion eines reellen bzw. virtuellen Objekts 110, 110' oder einer Gruppe derartiger Objekte benötigten rechteckförmigen Bildausschnitts der dargestellten reellen bzw. virtuellen Szene 112, 112'. Wird über die Abfrage 202e eine weitere translatorische Auslenkung Δx ≠ 0 und/oder Δy ≠ 0 der 2D-Maus 101 bzw. eine weitere rotatorische Auslenkung Δφx ≠ 0 detektiert, wird die Positionsmarke 110'' gemäß Schritt 202f in ±x- und/oder ±z-Richtung durch die dargestellte Szene 112, 112' navigiert, wobei Größe und Richtung der Versetzung wieder aus Betrag und Vorzeichen der Auslenkung Δx und/oder Δy der 2D-Maus 101 berechnet werden. Nach dem Loslassen der linken Maustaste der 2D-Maus 101, welches über die Abfrage 202g erfasst wird, erfolgt gemäß Schritt 202h die Festlegung eines weiteren, diagonal entgegengesetzt liegenden Eckpunkts des rechteckförmigen Bildausschnitts.
  • Flussdiagramm 200c dient zur Veranschaulichung der im Rahmen der Unterprogramm-Routine 206 ablaufenden Vorgänge zur Navigation der Positionsmarke 110'' (des Mauszeigers) durch eine Zoomfaktorenliste mit Hilfe der 2D-Maus 101 und Selektion einer bestimmten Detailtiefenstufe (D1, ..., Dn) mit der 2D-Maus 101 nach einem herkömmlichen einhändigen Verfahren. Diese Prozedur tritt in Kraft, wenn über die Abfrage 204 eine Betätigung (Drücken und Gedrückthalten) der rechten Maustaste der 2D-Maus 101 erfasst wird. Wird dann über die Abfrage 206a eine translatorische Auslenkung Δy ≠ 0 der 2D-Maus 101 bzw. (falls die 2D-Maus 101 mit einem Navigationsrad ausgestattet ist) eine rotatorische Auslenkung Δφx ≠ 0 detektiert, wird die Positionsmarke 110'' gemäß Schritt 206b in ±z-Richtung durch eine Zoomfaktorenliste navigiert, die zur Maßstabsskalierung des selektierten Bildausschnitts der dargestellten reellen bzw. virtuellen Szene 112, 112' sowie der darin abgebildeten reellen bzw. virtuellen Objekte 110, 110' herangezogen werden kann. Größe und Richtung der Versetzung werden dabei aus Betrag und Vorzeichen der Auslenkung Δy (bzw. Δφx) der 2D-Maus 101 berechnet. Nach dem Loslassen der rechten Maustaste der 2D-Maus 101, welches über die Abfrage 206c erfasst wird, erfolgt gemäß Schritt 206d die Selektion derjenigen diskreten Detailtiefenstufe (D1, ..., Dn), welche durch die aktuelle Position der Positionsmarke 110'' in der Zoomfaktorenliste markiert wird.
  • Als Alternative zu Flussdiagramm 200c kann erfindungsgemäß Flussdiagramm 200c' verwendet werden, das anstelle des oben beschriebenen einhändigen Verfahrens ein zweihändiges Navigations- und Selektionsverfahren zur Größenskalierung der Darstellung selektierter Objekte 110 bzw. 110' realisiert. Die Navigation der Positionsmarke 110'' durch die Zoomfaktorenliste erfolgt dabei mit Hilfe der 3D-Maus 102 und die Selektion einer be stimmten Detailtiefenstufe (D1, ..., Dn) mit Hilfe der 2D-Maus 101. Die Prozedur tritt dabei in Kraft, wenn über die Abfrage 204 eine Betätigung (Drücken und Gedrückthalten) der rechten Maustaste der 2D-Maus 101 erfasst wird. Wird dann über die Abfrage 206a' eine Auslenkung Δy ≠ 0, Δz ≠ 0, Δφx ≠ 0 und/oder Δφy ≠ 0 der 3D-Maus 102 detektiert, wird die Positionsmarke 110'' gemäß Schritt 206b' in ±z-Richtung durch die Zoomfaktorenliste navigiert. Größe und Richtung der Versetzung werden diesmal jedoch aus Betrag und Vorzeichen der Auslenkung Δy, Δz, Δφx und/oder Δφy der 3D-Maus 101 berechnet. Nach dem Loslassen der rechten Maustaste der 2D-Maus 101, welches über die Abfrage 206c erfasst wird, erfolgt gemäß Schritt 206d – analog zu Flussdiagramm 200c – die Selektion derjenigen diskreten Detailtiefenstufe (D1, ..., Dn), welche durch die aktuelle Position der Positionsmarke 110'' in der Zoomfaktorenliste markiert wird.
  • Flussdiagramm 200d dient zur Veranschaulichung der im Rahmen des ersten Teils der Unterprogramm-Routine 207 ablaufenden Vorgänge zum Erzeugen, Ausrichten und Festlegen der Raumposition einer virtuellen Schnittebene 120 zwecks Darstellung einer 3D-Schnittansicht reeller und/oder virtueller Objekte 110, 110'. Wird über die Abfrage 207a die Betätigung (Drücken und Gedrückthalten) der mittleren (oder, falls nicht vorhanden, der linken und rechten) Maustaste der 2D-Maus 101 erfasst, erfolgt gemäß Schritt 207b die Generierung und Darstellung einer virtuellen Schnittebene 120 in einer Default-Position parallel zur x-y-, y-z- bzw. z-x-Ebene. Bei Detektierung einer Auslenkung Δx ≠ 0, Δy ≠ 0, Δz ≠ 0, Δφx ≠ 0, Δφy ≠ 0 und/oder Δφz ≠ 0 des Kraft-/Momenten-Sensors 104 der 3D-Maus 102 wird die virtuelle Schnittebene 120 dann gemäß Schritt 207d in ±x-, ±y-, ±z-, ±φx-, ±φy- und/oder ±φz-Richtung navigiert. Nach dem Loslassen der mittleren bzw. der linken und rechten Maustaste der 2D-Maus 101, welches über die Abfrage 207e erfasst wird, erfolgt gemäß Schritt 207f die Festlegung der neuen Raumposition der virtuellen Schnittebene 120 sowie die Berechnung und Darstellung der gewünschten 3D-Schnittansicht einzelner Objekte 110, 110'.
  • Die im Rahmen des zweiten Teils der Unterprogramm-Routine 207 ablaufenden Vorgänge zur Manipulation selektierter Objekte 110, 110' werden in Flussdiagramm 200e am Beispiel der 3D-Extrusion – einer konventionellen 3D-CAD-Funktion, bei der Volumenkörper aus zweidimensionalen geometrischen Objekten (Profilen) entlang eines als Freihandlinie definierten Extrusionspfads erstellt werden – gezeigt.
  • Wird über die Abfrage 207g eine translatorische Auslenkung Δx ≠ 0 und/oder Δy ≠ 0 der 2D-Maus 101 bzw. (falls die 2D-Maus 101 mit einem Navigationsrad ausgestattet ist) eine rotatorische Auslenkung Δφx ≠ 0 detektiert, wird gemäß Schritt 207h die Positionsmarke 110'' in ±x- und/oder ±z-Richtung durch eine erste Symbolleiste mit einer Anzahl von 2D-Profilen navigiert. Nach Erfassung einer Betätigung (einmaliges kurzes „Anklicken") der linken Maustaste der 2D-Maus 101 über die Abfrage 207i erfolgt gemäß Schritt 207j die Auswahl eines zu extrudierenden 2D-Profils aus der ersten Symbolleiste. Als 2D-Profil kommen z.B. geometrische Standardformen, z.B. geschlossene Polylinien, Polygone, Kreise, Ellipsen, geschlossene Splines, Ringe und Regionen, in Frage. Wird nun in Schritt 207k keine weitere translatorische Auslenkung Δx ≠ 0 und/oder Δy ≠ 0 bzw. keine weitere rotatorische Auslenkung Δφx ≠ 0 der 2D-Maus 101 erfasst, kann nach Erfassung einer Betätigung (Drücken und Gedrückthalten) der rechten Maustaste der 2D-Maus 101 gemäß Abfrage 2071 die Freihandzeichnung eines Extrusionspfades erfolgen. Wird dann über Abfrage 207m eine Auslenkung Δx ≠ 0, Δy ≠ 0, Δz ≠ 0, Δφx ≠ 0, Δφy ≠ 0 und/oder Δφz ≠ 0 des Bedienteils 104 der 3D-Maus 102 detektiert, erfolgt gemäß Schritt 207n die Navigation der Positionsmarke 110'' in ±x-, ±y-, ±z-, ±φx-, ±φy- und/oder ±φz-Richtung zwecks Freihandzeichnung eines geeigneten Extrusionspfades. Nach dem Loslassen der rechten Maustaste ist der Extrusionspfad vollständig vorgegeben; werden über Abfrage 207s weitere Auslenkungen Δx ≠ 0, Δy ≠ 0, Δz ≠ 0, Δφx ≠ 0, Δφy ≠ 0 und/oder Δφz ≠ 0 des Bedienteils 104 erfasst, führen diese dann nicht mehr zu einer Verlängerung des Extrusionspfades, sondern gemäß Schritt 207t zur Ausrichtung des selektierten Extrusionspfads in ±x-, ±y-, ±z-, ±φx-, ±φy- und/oder ±φz-Richtung. Durch Betätigung der rechten Maustaste der 2D-Maus 101 kann ein Kontextmenü geöffnet werden, über das ein optionaler Verjüngungswinkel eingegeben werden kann. Nach der Erfassung einer weiteren Betätigung (einmaliges kurzes „Anklicken") der linken Maustaste der 2D-Maus 101 über die Abfrage 207u wird in Schritt 207v die neue Position des selektierten Extrusionspfads festgelegt. Danach erfolgt die Berechnung und Darstellung des entlang dieses Pfads extrudierten 2D-Profils. Als Standard-Extrusionspfade können insbesondere Linien, Kreise, elliptische Bögen, Polylinien oder Splines verwendet werden.
  • Flussdiagramm 200f dient zur Veranschaulichung der im Rahmen des zweiten Teils der Unterprogramm-Routine 207 ablaufenden Vorgänge bei der Auswahl und Positionierung eines als Standardform vorgegebenen Extrusionspfads sowie der Berechnung und Darstellung des entlang dieses Pfads extrudierten 2D-Profils als Beispiel für die Erzeugung eines virtuellen Objekts 110' durch Bearbeitung (Manipulation) geometrischer Standardformen. Wurde in Schritt 207k eine weitere translatorische Auslenkung Δx ≠ 0 und/oder Δy ≠ 0 bzw. eine weitere rotatorische Auslenkung Δφx ≠ 0 der 2D-Maus 101 erfasst, wird die Positionsmarke 110'' gemäß Schritt 207p in ±x- und/oder ±z-Richtung durch eine zweite Symbolleiste navigiert, die eine Anzahl geometrischer Standard-Extrusionspfade (Gerade, Polylinie, Kreis-, Ellipsen-, Parabel- oder Hyperbelbogen, archimedische Spirale, Schraubenlinie, Bézierkurve, Splines etc.) enthält. Wird eine Betätigung (einmaliges kurzes „Anklicken") der linken Maustaste der 2D-Maus 101 über die Abfrage 207q erfasst, kommt es gemäß Schritt 207r zur Auswahl eines geeigneten Extrusionpfades aus der zweiten Symbolleiste. Nach Detektierung einer Auslenkung Δx ≠ 0, Δy ≠ 0, Δz ≠ 0, Δφx ≠ 0, Δφy ≠ 0 und/oder Δφz ≠ 0 des Bedienteils 104 der 3D-Maus 102 über Abfrage 207s erfolgt wiederum die Ausrichtung des selektierten Extrusionspfads in ±x-, ±y-, ±z-, ±φx-, ±φy- und/oder ±φz-Richtung. Durch Betätigung der rechten Maustaste der 2D-Maus 101 kann ein Kontextmenü geöffnet werden, über das ein optionaler Verjüngungswinkel eingegeben werden kann. Nach Erfassung einer weiteren Betätigung (einmaliges kurzes „Anklicken") der linken Maustaste der 2D-Maus 101 über die Abfrage 207u wird in Schritt 207v die neue Position des selektierten Extrusionspfads festgelegt. Danach erfolgt wieder die Berechnung und Darstellung des entlang des Pfads extrudierten 2D-Profils.
  • Flussdiagramm 200g dient zur Veranschaulichung der im Rahmen der Unterprogramm-Routine 208 ablaufenden Vorgänge zur Verschiebung des festgelegten rechteckförmigen Bildausschnitts der dargestellten Szene 112, 112' sowie der darin enthaltenen reellen bzw. virtuellen Objekte 110, 110'. Wird über die Abfrage 208a eine Auslenkung Δx ≠ 0, Δy ≠ 0, Δz ≠ 0, Δφx ≠ 0, Δφy ≠ 0 und/oder Δφz ≠ 0 des Bedienteils 104 der 3D-Maus 102 detektiert, wird gemäß Schritt 208b die Positionsmarke 110'' durch die dargestellte Szene 112, 112' navigiert, um den rechteckförmigen (und ggf. gezoomten) Bildausschnitt sowie die darin enthaltenen reellen bzw. virtuellen Objekte 110, 110' in ±x-, ±y-, ±z-, ±φx-, ±φy- und/oder ±φz-Richtung zu verschieben. Nach Erfassung einer Betätigung (einmaliges kurzes „Anklicken") der linken Maustaste der 2D-Maus 101 über Abfrage 208c erfolgt in Schritt 208d die Festlegung der neuen Position für den markierten Bildausschnitt und die darin enthaltenen reellen bzw. virtuellen Objekte 110, 110'.
  • In 3a ist ein Flussdiagramm 300a dargestellt, in dem die Vorgänge, die beim Navigieren einer Positionsmarke 110'' (eines Mauszeigers) durch einen baumförmig strukturierten Spezifikationsgraph 112'' einer 3D-CAD-Applikation sowie beim Ansteuern und Selektieren der darin enthaltener Knoten 112a, b, c mit Hilfe von Auslenkungen des Bedienteils 104 der 3D-Maus 102 in verschiedenen translatorischen (x, z) und/oder rotatorischen Freiheitsgraden (φy, φz) ablaufen, veranschaulicht werden.
  • Die in 3b bis 3e abgebildeten Flussdiagramme 300b, 300c, 300d und 300e dienen zur Veranschaulichung der Vorgänge, welche im Rahmen der Unterprogramm-Routinen 304 und 308 für die vorstehend genannten Prozesse ablaufen.
  • Flussdiagramm 300b zeigt die Prozesse, die im Rahmen der Unterprogramm-Routine 304 zur Navigation der Positionsmarke 110'' zu einem Knoten 112a, b, c, welcher im Spezifikationsgraph 112'' die gleiche Hierarchiestufe wie der zuletzt selektierte bzw. deselektierte Knoten 112a, b, c hat, und zur Selektion dieses Knotens 112a, b, c ablaufen, nachdem über Abfrage 302 eine Auslenkung Δx ≠ 0 bzw. Δφz ≠ 0 des Bedienteils 104 der 3D-Maus 102 detektiert wurde. Daraufhin wird die Positionsmarke 110'' gemäß Schritt 304a zu diesem Knoten 112a, b, c navigiert, wobei Größe und Richtung der Versetzung aus Betrag und Vorzeichen der Auslenkung Δx bzw. Δφz berechnet werden. Nach der Erfassung einer Betätigung (einmaliges kurzes „Anklicken") der linken Maustaste der 2D-Maus 101 über Abfrage 304b erfolgt in Schritt 304c die Selektion des durch die Positionsmarke 110'' markierten Knotens 112a, b, c im Spezifikationsgraph 112''. Anschließend wird eine gemäß einer zugehörigen Montageliste diesem Knoten zugeordnete Aktion bzw. Rechenoperation ausgeführt und das Ergebnis dieses Schritts über die Anzeigevorrichtung 116 grafisch visualisiert.
  • Flussdiagramm 300c dient dagegen zur Veranschaulichung der Vorgänge, die im Rahmen der Unterprogramm-Routine 308 zur Navigation der Positionsmarke 110'' zu einem Kno ten 112a, b, c ablaufen, welcher im Spezifikationsgraph 112'' eine höhere bzw. niedrigere Hierarchiestufe als der zuletzt selektierte bzw. deselektierte Knoten 112a, b, c hat, sowie zur Selektion dieses Knotens 112a, b, c, nachdem über Abfrage 306 eine Auslenkung Δz ≠ 0 bzw. Δφy ≠ 0 des Bedienteils 104 der 3D-Maus 102 detektiert wurde. Daraufhin wird die Positionsmarke 110'' in Schritt 308a zu diesem Knoten 112a, b, c navigiert, wobei Größe und Richtung der Versetzung aus Betrag und Vorzeichen der Auslenkung Δz bzw. Δφy berechnet werden. Nach der Erfassung einer Betätigung (einmaliges kurzes „Anklicken") der linken Maustaste der 2D-Maus 101 über Abfrage 308b erfolgt in Schritt 308c die Selektion des durch die Positionsmarke 110'' markierten Knotens 112a, b, c im Spezifikationsgraph 112''. Danach wird wiederum eine gemäß Montageliste diesem Knoten zugeordnete Aktion bzw. Rechenoperation ausgeführt und das Ergebnis dieser Operation über die Anzeigevorrichtung 116 grafisch visualisiert.
  • Flussdiagramm 300d zeigt die Prozesse, die im Rahmen der Unterprogramm-Routine 304 zur Navigation der Positionsmarke 110'' zu einem Knoten 112a, b, c, welcher im Spezifikationsgraph 112'' die gleiche Hierarchiestufe wie der zuletzt selektierte bzw. deselektierte Knoten 112a, b, c hat, und zur Deselektion dieses Knotens 112a, b, c ablaufen, nachdem über Abfrage 302 eine Auslenkung Δx ≠ 0 bzw. Δφz ≠ 0 des Bedienteils 104 der 3D-Maus 102 erfasst wurde. Daraufhin wird die Positionsmarke 110'' gemäß Schritt 304a' zu diesem Knoten 112a, b, c navigiert, wobei Größe und Richtung der Versetzung aus Betrag und Vorzeichen der Auslenkung Δx bzw. Δφz berechnet werden. Nach der Erfassung einer Betätigung (einmaliges kurzes „Anklicken") der rechten Maustaste der 2D-Maus 101 über Abfrage 304b' erfolgt in Schritt 304c' die Deselektion des durch die Positionsmarke 110'' markierten Knotens 112a, b, c im Spezifikationsgraph 112''. Anschließend wird die gemäß Montageliste diesem Knoten zugeordnete Aktion bzw. Rechenoperation wieder rückgängig gemacht und das Ergebnis dieses Schritts über die Anzeigevorrichtung 116 grafisch visualisiert.
  • Flussdiagramm 300e dient dagegen zur Veranschaulichung der Vorgänge, die im Rahmen der Unterprogramm-Routine 308 zur Navigation der Positionsmarke 110'' zu einem Knoten 112a, b, c, ablaufen, welcher im Spezifikationsgraph 112'' eine höhere bzw. niedrigere Hierarchiestufe als der zuletzt selektierte bzw. deselektierte Knoten 112a, b, c hat, sowie zur Deselektion dieses Knotens 112a, b, c, nachdem über Abfrage 306 eine Auslenkung Δz ≠ 0 bzw. Δφy ≠ 0 des Bedienteils 104 der 3D-Maus 102 detektiert wurde. Daraufhin wird die Positionsmarke 110'' in Schritt 308a' zu diesem Knoten 112a, b, c navigiert, wobei Größe und Richtung der Versetzung aus Betrag und Vorzeichen der Auslenkung Δz bzw. Δφy berechnet werden. Nach der Erfassung einer Betätigung (einmaliges kurzes „Anklicken") der rechten Maustaste der 2D-Maus 101 über Abfrage 308b' erfolgt dann in Schritt 308c' die Deselektion des durch die Positionsmarke 110'' markierten Knotens 112a, b, c im Spezifikationsgraph 112''. Danach wird wiederum eine gemäß Montageliste diesem Knoten zugeordnete Aktion bzw. Rechenoperation wieder rückgängig gemacht und das Ergebnis dieser Operation über die Anzeigevorrichtung 116 grafisch visualisiert.
  • 4 zeigt ein Kontrollfenster 400 einer Bedienoberfläche zur Unterdrückung bzw. Einschränkung der zu steuernden Objektbewegung in vorgebbaren Raumfreiheitsgraden (x, y, z, φz, φy, bzw. φz). Nach Aktivieren der Ausblendeigenschaft für einen oder mehrere Raumfreiheitsgrade (angezeigt durch ein Häkchen in dem/den entsprechenden Kontrollkästchen) in einem ersten scrollbaren Menü im oberen Teil des Kontrollfensters 400d können die zu steuernden Objekte 110, 110' bzw. 110'' nicht mehr in Richtung der selektierten Raumfreiheitsgrade y, φx und φy bewegt werden (Funktion „Räumliches Lineal"). Objektbewegungen können dann entlang einer geraden oder kreisförmigen Bahnkurve präzise gesteuert werden, ohne dass infolge eines Steuerungsfehlers unerwünschte „Schlenker" in der dargestellten Objektbewegung auftreten. Als Alternative dazu kann auch eine Funktion aktiviert werden, bei der das 3D-Eingabe-, Steuer- und Manipulationsgerät 102 nur denjenigen Freiheitsgrad auswählt, der innerhalb einer vorgebbaren Zeitdauer Δt am stärksten kommandiert wurde; alle anderen fünf Freiheitsgrade bleiben unberührt. Im unteren Teil des Kontrollfensters 400d befinden sich ein zweites und ein drittes scrollbares Menü, mit deren Hilfe Toleranzgrenzen für die Auslenkungen der 3D-Maus 102 in ±x-, ±y-, ±z-, ±φx-, ±φy- und/oder ±φz-Richtung eingestellt werden können. Nachdem für einen bestimmten Raumfreiheitsgrad, der über das zweite scrollbare Menü ausgewählt wird, eine Toleranzgrenze über die dritte Scollliste festgelegt wurde, werden die zu steuernden Objekte 110, 110' bzw. 110'' erst dann in Richtung dieses Raumfreiheitsgrades bewegt, wenn das Bedienteil 104 um einen Längen- bzw. Winkelbetrag ausgelenkt wird, der größer ist als die eingestellte Toleranzgrenze. Folglich werden Steuerungsfehler bis zu einem vorgebbaren Grad ignoriert. Bei dem in 4d skizzierten Beispiel kann eine Objektbewegung in ±y-Richtung erst dann stattfinden, wenn das Bedienteil in ±y-Richtung um einen Längenbetrag von mehr als 10,0 mm ausgelenkt wird, wodurch Abweichungen von der zu steuernden Objektbewegung in ±y-Richtung durch fehlerhafte Auslenkungen des Bedienteils 104 von (dem Betrage nach) bis zu 10,0 mm unterdrückt werden.

Claims (11)

  1. Verfahren zur Manipulation von realen oder virtuellen Objekten (110, 110') mit Hilfe eines in mindestens einem Raumfreiheitsgrad (x, y, φx) auslenkbaren, manuell bedienbaren 2D-Eingabegeräts (101) mit mindestens zwei integrierten Funktionstasten sowie eines in mindestens drei Raumfreiheitsgraden (x, y, z, φx, φy, φz) auslenkbaren, manuell bedienbaren 3D-Eingabegeräts (102), aufweisend die folgenden Schritte: – Erzeugung von 2D-Ansteuersignalen durch manuelle Auslenkung (Δx, Δy, Δφx) des 2D-Geräts (101) in mindestens einem Raumfreiheitsgrad (x, y, φx) und/oder Betätigung der Funktionstasten des 2D-Geräts (101), – Auswertung der 2D-Ansteuersignale zur positionsgesteuerten Manipulation von Objekten (110, 110'), – Erzeugung von 3D-Ansteuersignalen durch manuelle Auslenkung (Δx, Δy, Δz, Δφx, Δφy, Δφz) eines Bedienteils (104) des 3D-Geräts (102) in mindestens einem Raumfreiheitsgrad (x, y, z, φx, φy, φz), – Auswertung der 3D-Ansteuersignale zur geschwindigkeitsgesteuerten Manipulation von Objekten (110, 110').
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das durch Auslenkung eines der beiden Geräte (101, 102) und Betätigung der Funktionstasten des 2D-Eingabe-, Steuer- und/oder Manipulationsgeräts (101) Ansteuersignale erzeugt werden, die zur Navigation einer Positionsmarke (110'') durch eine Zoomfaktorenliste und Auswahl einer von mehreren diskreten Detailtiefenstufen (D1, ..., Dn) aus dieser Liste ausgewertet werden.
  3. Verfahren nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, dass es sich bei den über die Anzeigevorrichtung (116) dargestellten Objekten um CAD-Objekte (110') handelt.
  4. Verfahren nach einem der Ansprüche 1 oder 2, dadurch gekennzeichnet, dass es sich bei den über die Anzeigevorrichtung (116) dargestellten Objekten um reelle Objekte (110) handelt.
  5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass durch Betätigung mindestens einer Funktionstaste des 3D-Geräts (102) ein Kontrollfenster einer mit Hilfe der Anzeigevorrichtung (116) dargestellten grafischen Benutzeroberfläche (113) mit virtuellen Schaltflächen und/oder Menüs geöffnet wird, das zur Einschränkung bzw. Unterdrückung von Objektbewegungen in vorgebbaren Raumfreiheitsgraden (x, y, z, φx, φy, φz) bei Auslenkungen (Δx, Δy, Δz, Δφx, Δφy, Δφz) des 3D-Geräts (102) dient.
  6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass die mit Hilfe der virtuellen Schaltfläche ausführbaren Funktionen frei programmierbar sind.
  7. Verfahren zur Navigation einer Positionsmarke (110'') durch einen baumförmig strukturierten Spezifikationsgraph (112'') einer CAD-Applikation, der in einem Kontrollfenster einer grafischen Bedienoberfläche über die Anzeigevorrichtung (116) einer Recheneinheit (114) dargestellt wird, und Selektion bzw. Deselektion eines seiner Knoten mit Hilfe der Positionsmarke (110'') durch Verwendung eines in mindestens einem Raumfreiheitsgrad (x, y, φx) auslenkbaren, manuell bedienbaren 2D-Eingabegeräts (101) mit mindestens zwei integrierten Funktionstasten sowie mit Hilfe eines in mindestens drei Raumfreiheitsgraden (x, y, z, φx, φy, φz) auslenkbaren, manuell bedienbaren 3D-Eingabegeräts (102), aufweisend die folgenden Schritte: – Erzeugung von 2D-Ansteuersignalen durch manuelle Auslenkung (Δx, Δy, Δφx) des 2D-Geräts (101) in mindestens einem Raumfreiheitsgrad (x, y, φx) und/oder Betätigung der Funktionstasten des 2D-Geräts (101), – Auswertung der 2D-Ansteuersignale zur Selektion bzw. Deselektion markierter Knoten (112a, b, c) und/oder Aktivierung bzw. Deaktivierung programmierter Funktionen, – Erzeugung von 3D-Ansteuersignalen durch manuelle Auslenkung (Δx, Δy, Δz, Δφx, Δφy, Δφz) des Bedienteils (104) des 3D-Geräts (102) in mindestens einem Raumfreiheitsgrad (x, y, z, φx, φy, φz), und – Auswertung der 3D-Ansteuersignale zur Steuerung der Bewegung selektierter Knoten (112a, b, c) und/oder Aktivierung bzw. Deaktivierung programmierter Funktionen.
  8. 3D-Eingabegerät, welches in mindestens drei verschiedenen translatorischen und/oder rotatorischen Freiheitsgraden (Δx, Δy, Δz, Δφx, Δφy, Δφz) auslenkbar ist, dadurch gekennzeichnet, dass es funktionell mit einer Recheneinrichtung verbunden ist, die zur Ausführung eines Verfahrens nach einem der Ansprüche 1 bis 7 programmiert ist.
  9. 3D-Eingabegerät nach Anspruch 8, gekennzeichnet durch eine Schnittstelle (103) zur drahtlosen Übertragung von Ansteuerdaten zu einem zu steuernden elektrischen oder elektronischen Gerät (114).
  10. Computersoftware-Programmprodukt, dadurch gekennzeichnet, dass es ein Verfahren nach einem der vorhergehenden Ansprüche implementiert, wenn es auf einer Recheneinheit (114) mit Anzeigevorrichtung (116) läuft.
  11. System, aufweisend – eine Recheneinheit (114) mit einem darauf installierten Computersoftware-Programmprodukt gemäß Anspruch 10, – eine an die Recheneinheit (114) angeschlossene Anzeigevorrichtung (116), – ein in mindestens einem translatorischen bzw. rotatorischen Raumfreiheitsgrad (x, y, φx) auslenkbares, manuell bedienbares 2D-Eingabe-, Steuer- und/oder Manipulationsgerät (101), welches mit der Recheneinheit (114) verbunden ist, sowie – ein in mindestens drei translatorischen (x, y, z) und/oder rotatorischen Raumfreiheitsgraden (φx, φy, φz) auslenkbares, manuell bedienbares 3D-Eingabe-, Steuer- und/oder Manipulationsgerät (102), welches ebenfalls mit der Recheneinheit (114) verbunden ist, dadurch gekennzeichnet, dass die Recheneinheit (114) zur Ausführung eines Verfahrens nach einem der Ansprüche 1 bis 7 programmiert ist.
DE2003137914 2003-08-18 2003-08-18 Manipulation von realen oder virtuellen rechnergestützten Objekten durch zweihändige Bedienung von Eingabegeräten Ceased DE10337914A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE2003137914 DE10337914A1 (de) 2003-08-18 2003-08-18 Manipulation von realen oder virtuellen rechnergestützten Objekten durch zweihändige Bedienung von Eingabegeräten

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2003137914 DE10337914A1 (de) 2003-08-18 2003-08-18 Manipulation von realen oder virtuellen rechnergestützten Objekten durch zweihändige Bedienung von Eingabegeräten

Publications (1)

Publication Number Publication Date
DE10337914A1 true DE10337914A1 (de) 2005-03-31

Family

ID=34223089

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2003137914 Ceased DE10337914A1 (de) 2003-08-18 2003-08-18 Manipulation von realen oder virtuellen rechnergestützten Objekten durch zweihändige Bedienung von Eingabegeräten

Country Status (1)

Country Link
DE (1) DE10337914A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008064690A2 (en) * 2006-11-30 2008-06-05 Cherif Atia Al Greatly 3-d computer input device and method
WO2013174714A3 (de) * 2012-05-21 2014-07-17 Siemens Aktiengesellschaft Anzeige- und bedienvorrichtung für eine leitwarte

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572238A (en) * 1995-01-27 1996-11-05 Xerox Corporation Computer user interface for non-dominant hand assisted control
WO1998043194A2 (en) * 1997-03-26 1998-10-01 Yigal Brandman Apparatus and methods for moving a cursor on a computer display and specifying parameters
DE19722636A1 (de) * 1997-06-01 1998-12-03 Kilian Fremmer Eingabegerät, "Multimaus"
DE19752612A1 (de) * 1997-11-27 1999-06-02 Helge Zwosta Verfahren zur Manipulation von Geräten und Programmen durch Steuer- und Manualfunktionen des Hand-Arm-Komplexes
EP1233330A2 (de) * 2001-02-15 2002-08-21 Wacom Co., Ltd Eingabesystem, Programm und Speichermedium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572238A (en) * 1995-01-27 1996-11-05 Xerox Corporation Computer user interface for non-dominant hand assisted control
WO1998043194A2 (en) * 1997-03-26 1998-10-01 Yigal Brandman Apparatus and methods for moving a cursor on a computer display and specifying parameters
DE19722636A1 (de) * 1997-06-01 1998-12-03 Kilian Fremmer Eingabegerät, "Multimaus"
DE19752612A1 (de) * 1997-11-27 1999-06-02 Helge Zwosta Verfahren zur Manipulation von Geräten und Programmen durch Steuer- und Manualfunktionen des Hand-Arm-Komplexes
EP1233330A2 (de) * 2001-02-15 2002-08-21 Wacom Co., Ltd Eingabesystem, Programm und Speichermedium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008064690A2 (en) * 2006-11-30 2008-06-05 Cherif Atia Al Greatly 3-d computer input device and method
WO2008064690A3 (en) * 2006-11-30 2009-06-04 Greatly Cherif Atia Al 3-d computer input device and method
WO2013174714A3 (de) * 2012-05-21 2014-07-17 Siemens Aktiengesellschaft Anzeige- und bedienvorrichtung für eine leitwarte

Similar Documents

Publication Publication Date Title
EP1447770B1 (de) Verfahren und Vorrichtung zur Visualisierung rechnergestützter Informationen
DE102019009313B4 (de) Robotersteuerung, Verfahren und Computerprogramm unter Verwendung von erweiterter Realität und gemischter Realität
DE69735269T2 (de) Steuerverfahren zum schrittbetrieb eines roboters
EP2285537B1 (de) Vorrichtung und verfahren zur rechnergestützten generierung einer manipulatorbahn
EP1018677B1 (de) Virtuelles Teach-In-System
DE69525325T2 (de) Virtueller arbeitsraum mit anwenderprogrammierbarer taktiler rückkopplung
DE602006000648T2 (de) Offline-Lehrgerät für einen Roboter
EP1428110B1 (de) 3d-eingabegerät mit integriertem touchscreen
DE102019002898A1 (de) Robotorsimulationsvorrichtung
EP3709133B1 (de) System zur haptischen interaktion mit virtuellen objekten für anwendungen in der virtuellen realität
DE202008014481U1 (de) Tragbares Roboterkontrollgerät zum Kontrollieren einer Bewegung eines Roboters
DE102017108492B4 (de) Steuervorrichtung eines Roboters, die ein Betriebsprogramm, in dem der Zustand einer zusätzlichen Achse enthalten ist, anzeigt
DE1059581T1 (de) Wissensbasierter polymorpher entfernbarer Toolbar
WO2003023592A2 (de) Desktopmanager
DE4105291C2 (de) Vorrichtung zum Überwachen und Planen von Funktionen einer Funkenerosionsmaschine
DE102004021379B4 (de) Bedien- und Beobachtungssystem für industrielle Anlagen und Verfahren
EP1484666A2 (de) Multidimensionales Eingabegerät zur Navigation und Selektion von virtuellen Objekten
DE10337914A1 (de) Manipulation von realen oder virtuellen rechnergestützten Objekten durch zweihändige Bedienung von Eingabegeräten
DE112008003870T5 (de) Verfahren und System zum Steuern eines Industrieroboters in Übereinstimmung mit einem Bewegungssteuerungs-Parametersatz
DE69314745T2 (de) Selbsteinstellende Vorrichtung zur Ausführung virtueller Befehlen
EP0524934B1 (de) Vorrichtung zum überwachen und planen von funktionen einer funkenerosionsmaschine
DE69314587T2 (de) Verfahren für multimodalen Gebärdendialog in einer virtuellen Umwelt
DE60103454T2 (de) Prozesssteuerungssystem und -verfahren
DE102023125994A1 (de) Informationsverarbeitungsgerät, Informationsverarbeitungsverfahren, Robotersystem, Herstellungsverfahren für einen Artikel unter Verwendung des Robotersystems, Programm und Aufzeichnungsmedium
DE102004022318B4 (de) Elektronische Konstruktionsvorrichtung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection