-
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 ..,
, 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,
, 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.