-
TECHNISCHES
GEBIET
-
Die
Erfindung bezieht sich allgemein auf die Simulation komplexer Systeme
zum Zwecke des System- und integrierten Verfahrenstrainings mit praktischen Übungen und
insbesondere auf ein Verfahren und eine Vorrichtung für die Bereitstellung
der Simulation komplexer Systeme, bei dem interaktive Grafiken mit
der Darstellung von Bedienpulten eines simulierten komplexen Systems
mit in Echtzeit simulierten dreidimensionalen Abbildungen einer
Umgebung verschmolzen werden, in der das simulierte komplexe System
betrieben wird.
-
HINTERGRUND
DER ERFINDUNG
-
Die
Komplexität
von in vielen Tätigkeitsbereichen
verwendeten Systemen nahm in einem solchen Maß zu, dass für sicheren
Betrieb und Wartung umfangreiches Training erforderlich ist. Das
Trainieren an realen Systemen ist in den Branchen, die teure und/oder
potentiell gefährliche
Gerätschaften
verwenden, besonders problematisch. Beispiele dieser Gerätschaften
umfassen Luftfahrzeuge, Schiffe, Unterseeboote, militärische Gerätschaften,
Kernkraftwerke und eine Vielzahl von weiteren komplexen Systemen.
Es wurde demzufolge übliche
Praxis, für das
Training Simulationen der komplexen Systeme heranzuziehen. Um das
Verhalten der realen komplexen Systeme getreulich zu reproduzieren,
ist eine "Vollbild"-Simulation erforderlich.
Eine Vollbildsimulation ist eine Simulation, bei der sämtliche
erforderlichen Subsysteme in einem solchen Umfang simuliert werden,
dass die Vollbildsimulation in sämtlichen
relevanten sowohl normalen als auch abnormalen Bedingungen im Wesentlichen
in einer zum realen System identischen Weise reagiert.
-
Bei
vielen Anwendungen, bei denen ein Vollbildsimulator involviert ist,
ist ein hochauflösendes optisches
System erforderlich. Diese optischen Systeme umfassen typischerweise
eine dreidimensionale immersive Umgebung für den (die) Bediener. Dreidimensionale
immersive Umgebungen sind dafür
bekannt, dass sie die Effektivität
des Simulators signifikant verbessern. Der Grad an Realismus, der
durch ein hochauflösendes
optisches System bereitgestellt wird, ist nunmehr ziemlich weit
fortgeschritten. Das Niveau der Detaillierung, die solche optischen
Systeme bereitstellen, erfordert große visuelle Datenbanken, die
mit dem Vollbildsimulator synchronisiert werden müssen, um
die dreidimensionalen visuellen Szenen in Echtzeit wiederzugeben.
Wegen ihrer Größe und Komplexität sind Vollbildsimulatoren,
die hochauflösende
optische Systeme umfassen, typischerweise in einer besonderen Einrichtung
untergebracht, und die Benutzer sind gezwungen, für Training
und Übung
zu der Einrichtung zu reisen. Eine solche dreidimensionale Trainingsstation
wird in der unter der Nummer 2 256 568 veröffentlichten UK-Patentanmeldung
gelehrt, die ein Simulatorsystem für Fahrzeuge lehrt, die ein
Fahrzeugcockpit 12 umfassen, das durch den Benutzer zu
betätigende
Fahrzeugsteuermittel und mindestens eine Fensteröffnung 16, 17, 18,
einen Sichtschirm 165, 175, 185, der durch
die bzw. jede Öffnung
eingesehen werden kann, ein Gerät
für digitale
Videoeffekte zur Manipulation mindestens eines Satzes von Hintergrundvideodaten
für die
Bildung mindestens einer Steuersequenz von bewegten Videobildern
für die
Anzeige an einem entsprechenden Sichtschirm aufweist. Sich bewegende
Videohintergrundbilder werden dadurch generiert, dass verschiedene
Manipulationen an sukzessiven Bildtimings an den Hintergrundvideodaten vorgenommen
werden.
-
Die
Anmeldung beschreibt des Weiteren ein Bildgenerierungssystem, das
einen Computergrafik-Modeler für
die Herstellung eines Computergrafikbildes einer Vordergrundszene,
d.h. also den Innenraum eines Kraftfahrzeuges mit transparentem
Teil bzw. transparenten Teilen, beispielsweise die Fahrzeugfenster,
umfasst. Ein Gerät
für digitale
Videoeffekte manipuliert Hintergrundvideodaten zur Bildung einer
gesteuerten Sequenz von bewegten Videohintergrundbildern und einen
Compositor, der ein Computergrafik-Vordergrundbild in die gesteuerte
Sequenz der bewegten Videohintergrundbilder einschleust, um eine
Ausgangsbildsequenz zusammen mit dem durch transparente Teile des
Vordergrundes sichtbaren Hintergrunds zu bilden.
-
Eine
vom Anmelder hergestellte zweidimensionale Vektorbasierte grafische
Benutzeroberfläche ermöglicht es
einem Benutzer, mit einer Vollbildsimulation zu interagieren, auf
die über
ein Netzwerk, wie z.B. das Internet, zugegriffen wird. Die Benutzeroberfläche besteht
aus "intelligenten" grafischen Objekten,
mit denen der Benutzer interagiert. Um einen Kontext für eine spezifische
Anwendung bereitzustellen, werden die intelligenten grafischen Objekte
auf einem für
die Anwendung geeigneten Bitmapped-Image überlagert.
-
Es
wurde im Laufe der Zeit erkannt, dass es bei vielen Simulationsanwendungen
vorteilhaft ist, dreidimensionale visuelle Echtzeit-Effekte in eine
interaktive Benutzeroberfläche
zu integrieren. Diese Art von Umfeld ist bei Anwendungen von wesentlicher
Bedeutung, bei denen ein Bediener sich mit einer Szene außerhalb
des Fensters vertraut machen und visuelle (außerhalb des Fensters liegende)
Informationen interpretieren muss, um zu entscheiden, wie er in
angemessener Weise auf eine Situation reagiert. Simulatoren, die
unterschiedliche Grade von visueller und Simulationstreue liefern,
sind im Handel verfügbar.
Solche Simulatoren ermöglichen
es Benutzern, mit einer dreidimensionalen visuellen Umgebung unter
Verwendung einer Schnittstelle, wie z.B. eines Joysticks oder einer
Tastatur, zu interagieren. Beispiele sind Microsoft Flight Simulator
2000® und AirBookTM von Simigon. Ein Nachteil solcher Systeme
ist, dass die Benutzeroberflächen
nicht sehr intuitiv und nicht direkt mit sämtlichen simulierten Systemen
verbunden sind.
-
Die
oben erwähnte
zweidimensionale Vektor-basierte grafische Benutzeroberfläche des
Anmelders ermöglicht
es einem Benutzer, integrierte Verfahren zu lernen bzw. zu üben und
Systemkenntnis zu erwerben, indem er mit den intelligenten Grafiken
in der zweidimensionalen Benutzeroberfläche Benutzeroberfläche interagiert.
Die Benutzereingaben an die Benutzeroberfläche werden einem Vollbildsimulationsserver
zugeführt,
der auf die Eingaben in realistischer Weise reagiert und Simulationszustandsdaten
zurückübermittelt,
die wiederum dazu verwendet werden, das Erscheinungsbild der zweidimensionalen
Benutzeroberfläche
zu aktualisieren. Während
dies dem Benutzer ermöglicht,
integrierte Prozeduren zu erlernen oder zu üben und Systemkenntnisse zu
erwerben, liefert es jedoch nicht die dreidimensionale visuelle
Umgebung, die für
bestimmte Trainings- und Übungsanwendungen
erforderlich sind. Beispielsweise erfordern in der Luftfahrtindustrie
das Sichvertrautmachen mit Flugplätzen, das Sichvertrautmachen
mit Wetterzuständen
mit geringer Sicht beim Fliegen, Anflüge an Flugplätze, Manöver auf
Rollbahnen und Ähnliches
eine dreidimensionale visuelle Umgebung.
-
Es
besteht demzufolge Bedarf an einem System, das eine dreidimensionale
Umgebungsvisualisierung in eine voll funktionsfähige grafische Benutzeroberfläche integriert,
um kostengünstiges
Erlernen und Üben
integrierter Prozeduren und den Betrieb eines komplexen Systems
zu ermöglichen.
-
INHALT DER
ERFINDUNG
-
Es
ist daher eine Aufgabe der Erfindung, ein System bereitzustellen,
das dreidimensionale Visualisierung in eine voll funktionsfähige grafische
Benutzeroberfläche
integriert, um kostengünstiges
Erlernen und Üben
integrierter Prozeduren und den Betrieb eines komplexen Systems
zu ermöglichen.
-
Es
ist eine weitere Aufgabe der Erfindung, ein Verfahren und eine Vorrichtung
zum Generieren einer interaktiven grafischen Benutzeroberfläche bereitzustellen,
in dem dreidimensionale visuelle Echtzeit-Informationen nahtlos
mit interaktiven grafischen Darstellungen von Bedienpulten eines
simulierten komplexen Systems verschmolzen werden.
-
Es
ist noch eine weitere Aufgabe der Erfindung, eine dreidimensionale
Darstellung von Ansichten aus dem Fenster für einen Bediener eines komplexen
Systems bereitzustellen, die durch eine Rückmeldung aus einer Vollbildsimulation
des komplexen Systems dynamisch aktualisiert wird.
-
Eine
weitere Aufgabe der Erfindung ist es, ein Visualisierungssystem
bereitzustellen, in dem eine zweidimensionale Texturmaske erzeugt
wird, die in visuelle Texturdaten übersetzt wird, die für den Benutzer
an ein Vollbildpolygon mit null Tiefe auf einem dreidimensionalen,
unter Verwendung der visuellen Umgebungsdaten generierten Bild übertragen werden.
-
Noch
eine weitere Aufgabe der Erfindung ist es, ein Visualisierungssystem
bereitzustellen, bei dem ein inaktives Anzeigenfenster ein Oberflächenfenster überlagert,
das Benutzereingaben in Verbindung mit Bedienpulten akzeptiert,
die visuell durch Grafiken in dem interaktiven Fenster dargestellt
werden.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Die
Erfindung liefert daher ein System zum Generieren einer hochauflösenden optischen
Anzeige, die eine visuelle immersive 3D-Umgebung für einen
Benutzer des mit der Vollbildsimulation eines komplexen Systems
koordinierten, unter allen rele vanten sowohl normalen wie auch anormalen
Bedingungen im Wesentlichen in identischer Weise wie das reale System
reagierenden Systems bereitstellt, wobei das System eine Verarbeitung
von intelligenten Grafiken umfasst, die geeignet ist, ein zweidimensionales
Bild von angezeigten Bedienpulten des simulierten komplexen Systems
zu erzeugen, wobei das Bild eingebettete intelligente Grafiken aufweist, um
es dem Benutzer zu ermöglichen,
in Verbindung mit den angezeigten Bedienpulten virtuelle Steuerhebel
zu bedienen, und ferner eine Verarbeitung von dreidimensionalen
Visualisierungen zum Generieren der hochauflösenden optischen Anzeige unter
Verwendung von visuellen Umweltdaten umfasst, GEKENNZEICHNET durch
die Verarbeitung von dreidimensionalen Visualisierungen, die geeignet
ist, die hochauflösende
optische Anzeige durch Überlagerung
einer zweidimensionalen Texturmaske zu erzeugen, die in optische
Texturdaten übersetzt
wird, die für
den Benutzer auf ein Vollbildpolygon mit null Tiefe auf einem dreidimensionalen,
unter Verwendung der visuellen Umgebungsdaten generierten Bild übertragen
werden.
-
Die
Erfindung stellt des Weiteren ein Verfahren zur Generierung von
Training und Übung
an einem simulierten komplexen System für Personal bereit, das das
komplexe System zu betreiben oder zu warten hat, welches Verfahren
folgende Schritte umfasst: Erzeugen eines zweidimensionalen Bildes
von angezeigten Bedienpulten des simulierten komplexen Systems,
wobei das zweidimensionale Bild eingebettete intelligente Grafiken
aufweist, um es dem Personal zu ermöglichen, mit den angezeigten
Bedienpulten verbundene virtuelle Steuerhebel zu bedienen, Erzeugen
einer hochauflösendenden
optischen Anzeige, welche einem Benutzer des Systems unter Verwendung
von visuellen Umgebungsdaten und einer aus dem zweidimensionalen
Bild abgeleiteten Texturmaske eine immersive dreidimensionale visuelle
Umgebung bereitstellt, GEKENNZEICHNET durch das Erzeugen der hochauflösenden optischen Anzeige
durch Überlagerung
einer zweidimensionalen Texturmaske, die in optische Texturdaten übersetzt
wird, welche für
den Benutzer auf ein Vollbildpolygon mit null Tiefe auf einem dreidimensionalen,
unter Verwendung der visuellen Umgebungsdaten generierten Bild übertragen
werden.
-
Die
Erfindung stellt daher ein kostengünstiges Trainingssystem bereit,
das realistische visuelle Simulationen für Verfahrens- und Bedienertraining
an einem simulierten komplexen System generiert. Die Verarbeitung
von intelligenten Grafiken übersetzt
Benutzereingaben in Datenwerte, die an eine Vollbildsimulation weitergegeben
werden. Die Vollbildsimulation liefert Rückmeldung an Prozesse für visuelle
Simulation, die die Anzeige von Bedienpulten des komplexen Systems
und des Weiteren Ansichten aus dem Fenster einer simulierten Umgebung
aktualisieren.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Weitere
Merkmale und Vorteile der vorliegenden Erfindung gehen aus der nachfolgenden
Beschreibung hervor, in der mit Bezug auf die beigefügten Zeichnungen
Ausführungsbeispiele
erläutert
werden. In den Zeichnungen zeigen:
-
1 eine
schematische Darstellung einer Übersicht über eine
Ausführungsform
eines Systems gemäß der Erfindung;
-
2 eine
schematische Darstellung einer Ausführungsform einer Client-/Server-Architektur
zur Umsetzung des in 1 gezeigten Systems;
-
3 eine
schematische Darstellung einer Übersicht über eine
Umsetzung einer Benutzeroberfläche
gemäß einer
Ausführungsform
der Erfindung;
-
4 eine
schematische Darstellung, die eine detailliertere Ansicht der in 3 gezeigten
Benutzeroberfläche
zeigt;
-
5 ein
Flussdiagramm mit der Darstellung der für das Antreiben des in 3 gezeigten zweidimensionalen
Grafiksystems verwendeten prinzipiellen Logik;
-
6 ein
Flussdiagramm mit der Darstellung der für das Antreiben des in 3 gezeigten dreidimensionalen
visuellen Systems verwendeten prinzipiellen Logik;
-
7 ein
Flussdiagramm mit der Darstellung der prinzipiellen Logik, die für das Schaffen
oder Aktualisieren einer Texturmaske verwendet wird, welche dafür verwendet
wird, die in 3 und 4 gezeigte
Benutzeroberfläche
anzuzeigen;
-
8 eine
schematische Darstellung einer weiteren Ausführungsform einer Client-/Server-Architektur,
die für
die Implementierung des erfindungsgemäßen Systems verwendet werden
kann.
-
Es
sei angemerkt, dass in den gesamten beigefügten Zeichnungen analoge Merkmale
durch jeweils gleiche Bezugszeichen gekennzeichnet sind.
-
AUSFÜHRLICHE
BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
-
Die
vorliegende Erfindung ermöglicht
es, eine dreidimensionale visuelle Umgebung in eine interaktive
grafische Benutzeroberfläche
zu integrieren, um eine Vielzahl von Anwendungen der Simulation
komplexer Systeme zu unterstützen.
Die genannten Anwendungen verwenden Vollbildsimulation mit hochauflösenden visuellen
Systemen, um selbstorganisiertes Lernen und Üben an simulierten komplexen
Systemen zu ermöglichen.
Die Integration von dem persönlichen
Arbeitstempo angepasstem Lernmaterial für direkten oder Fernunterricht
wird ebenfalls ermöglicht.
-
Der
Einbau einer dreidimensionalen visuellen Umgebung in eine interaktive
Benutzeroberfläche wirft
signifikante Schwierigkeiten auf. Zunächst ist es wegen der Größe von Datenbanken
für hochauflösende visuelle
Systeme derzeit erforderlich, die visuelle Datenbank vor Ort in
einem Kundencomputer vorzuhalten, der die grafische Benutzeroberfläche anzeigt.
Informationen für
hochauflösende
visuelle Systeme können
unter Verwendung aktuell verfügbarer
kommerzieller Technologie vernünftigerweise nicht über ein
Netzwerk in Echtzeit weitergeleitet werden. Darüber hinaus ist extensive Hochgeschwindigkeitsverarbeitung
erforderlich, um solche Datenbanken in Echtzeit zu rendern. Dies
bedeutet eine signifikante Verarbeitungslast für den Kundencomputer und erfordert
eine Grafikbeschleunigungskarte. Demzufolge sollte die Vollbildsimulation,
die ebenfalls extensive Hochgeschwindigkeitsverarbeitung erfordert,
idealerweise auf einen anderen Prozessor vor Ort oder an anderer
Stelle, beispielsweise auf einem Simulationsserver, gefahren werden.
Dies führt zu
einem dritten Problem: Wie ist das dreidimensionale Rendering mit
der Simulation zu synchronisieren, während die Simulation entfernt
abläuft.
-
Wie
nachstehend detailliert erörtert
werden wird, können
diese Probleme dadurch überwunden werden,
dass eine lokale Kopie der Simulation, der visuellen Datenbank und
ein lokales System für
dreidimensionale Visualisierungen vorgehalten werden. Optional kann
die Verarbeitungslast des Kundencomputers dadurch gemindert werden,
dass veranlasst wird, dass der Simulator auf einem Remote-Server
arbeitet. Um die Verarbeitungslast des Kundencomputers weiter zu
steuern, wird die Auffrischungsrate der dreidimensionalen Umgebung
angepasst. Einige der anspruchsvollen visuellen Effekte können auch
ausgeschaltet werden, falls dies erforderlich ist, und einige nicht
kritische Details in der visuellen Datenbank können entfernt werden. Es sollte
jedoch verstanden werden, dass diese Optimierungstechniken lediglich
in den Fällen
erforderlich sind, bei denen der Kundencomputer keine adäquate Verarbeitungsgeschwindigkeit
bietet, um die vollen dreidimensionalen Bilder wiederzugeben zu
können.
-
1 ist
ein schematisches Diagramm einer Übersicht über ein System 20 nach
der Erfindung. Das System 20 umfasst einen oder mehrere
Kundencomputer 22, die mit einem Netzwerk 24,
wie z.B. einem Local Area Network (LAN), einem Metropolitan Area
Network (MAN), einem Wide Area Network (WAN) oder einem offenen
Netzwerk, wie z.B. einem Intranet, oder dem Internet, verbunden
sind. Jeder der Kundencomputer 22 unterstützt eine
lokale Datenbank 26 mit Daten, die für die Wiedergabe hochauflösender dreidimensionaler
visueller Effekte in einer dem Fachmann bekannten Weise genutzt
werden. Die Datenbank mit hochauflösenden dreidimensionalen visuellen
Effekten kann dem Kundencomputer in einer Vielzahl von Formen zugeführt werden. Beispielsweise
kann der Inhalt der Datenbank aus einer Remote-Datenbank 30 von
einem Serviceprovider unter Verwendung des elektronischen Handels oder
aufgrund einer anderen vertraglichen Vereinbarung heruntergeladen
werden, sie kann auf einer CD oder einem Flash-Memory gekauft werden,
oder sie kann über
einen beliebigen anderen Kanal auf einem computerlesbaren Medium
geliefert werden. Um die Erfindung umzusetzen, wird der Kundencomputer über das
Netzwerk 24 mit einem Simulationsserver 28 verbunden,
der ein beliebiges mehrerer komplexer Systeme, wie beispielsweise
ein Fluggerät,
simulieren kann.
-
Das
System 20 ist besonders für das Fernstudium oder für das Einüben von
Fähigkeiten
geeignet. Fernstudium wird durch die Verwendung von dem persönlichen
Arbeitstempo angepasstem Lernmaterial erleichtert. Demzufolge wird
der Kundencomputer analog optional mit Lerninformationen 32 versehen,
wie dies nachstehend detaillierter unter Bezugnahme auf 8 erläu tert wird.
Die Lerninformationen 32 können zusammen mit entsprechenden intelligenten
Grafikobjekten 23 und für
die Lerninformationen relevanten dreidimensionalen Datenbanken von
Serviceprovider-Datenbanken 30, 33, 34 heruntergeladen
oder aber über
einen beliebigen anderen Kanal erhalten werden, wie dies vorstehend
unter Bezugnahme auf die Datenbank 26 erläutert wurde. Fernstudium
kann weiter durch die Verwendung eines Lernmanagementsystems (LMS) 38 verbessert werden.
Das Lernmanagementsystem 38 verzeichnet, verfolgt, validiert
und evaluiert Lernende unter Verwendung der Validierung von Lernenden
und Kursaufzeichnungen 40.
-
2 ist
ein schematisches Diagramm einer Ausführungsform einer Client-/Server-Architektur
zur Umsetzung des in 1 gezeigten Systems. Wie vorstehend
erläutert,
ist der Kundencomputer 22 über das Netzwerk 24 unter
Verwendung eines beliebigen geeigneten Kommunikationsprotokolls
mit dem Simulationsserver 28 verbunden. Der Kundencomputer
bearbeitet die Verarbeitung der Grafiken unter Verwendung von Programmen
für die
Verarbeitung von intelligenten Grafiken (Smart Graphics Processing – SGP) 42,
die auf zweidimensionale Grafikinformationen aus einer Datenbank 52 zurückgreifen,
und von Programmen für
die Verarbeitung von dreidimensionalen Visualisierungen (three-dimensional
visuals – 3DV) 44,
die auf visuelle Informationen aus der Datenbank 26 Zugriff
nehmen. Die SGP 42 generiert ein zweidimensionales Bild,
das intelligente Grafiken enthält,
die virtuelle Steuerelemente darstellen, die durch einen Benutzer
des Systems 20 in an sich bekannter Weise manipuliert werden
können.
Die 3DV-Verarbeitungsprogramme erzeugen dreidimensionale Visualisierungen
eines das simulierte komplexe System umgebenden Umfelds, was ebenfalls an
sich gut bekannt ist. Die SGP 42 und die 3DV 44 sind
durch eine visuelle Verschmelzungsmanagement-Funktion (VMM) (46)
vernetzt, wie dies nachstehend detaillierter erläutert wird.
-
Der
Simulationsserver 28 unterstützt eine Simulationsinstanz 48 einer
Vollbildsimulation eines komplexen Systems, die Datenelemente mit
dem Kundencomputer 22 über
eine Datensteuer- und
Datenbereitstellungsfunktion 50 austauscht. Obwohl die Verarbeitungslast
zwischen dem Kundencomputer 22 und dem Servercomputer 28 aufgeteilt
wird, besteht nach wie vor ein signifikantes Hindernis, das zu überwinden
ist. Um die hochauflösende
optische Anzeige zu integrieren, muss dem Benutzer ein einheitliches
Bild, das sowohl die interaktiven intelligenten Grafiken als auch
die dreidimensionalen Visualisierungen enthält, präsentiert werden.
-
Wie
in 2 gezeigt, interagieren sowohl die SGP 42 als
auch die 3DV 44 mit der Simulationsinstanz 48,
um sicherzustellen, dass Eingaben des Benutzers in die intelligenten
Grafiken an den Simulator weitergeleitet werden und dass die Simulatorzustände optische
Anzeigen aktualisieren, die sowohl von den Programmen der SGP 42 als
auch der 3DV 44 generiert werden. Der Benutzer betrachtet
beide, interagiert jedoch nur mit den intelligenten Grafiken, die in
den gezeigten Darstellungen von Bedienpulten und Anzeigen Schalter,
Instrumente, Hebel und sonstige Steuerschnittstellen darstellen.
Bei der zweidimensionalen grafischen Benutzeroberfläche wird
eine Bitmap verwendet, um den Kontext für Vektor-basierte intelligente
Grafiken bereitzustellen. Um eine Ansicht zu schaffen, werden beide
grafischen Umgebungen in einer solchen Weise überlagert, die es ermöglicht,
dass ein entsprechender Teil jeder Umgebung dem Benutzer präsentiert
wird (d.h., die simulierte Umgebung erscheint durch die Fenster des
simulierten komplexen Systems, und intelligente Grafiken erscheinen
auf der Bitmap der simulierten Bedienpulte und Anzeigen). Dies wird
durch die Vielzahl von Benutzersteuerelementen verkompliziert, die
von der SGP 42 angezeigt werden müssen. Darüber hinaus kann der Benutzer
ein Fenster in der Größe verändern, schwenken,
scrollen, zoomen oder Änderungen
am Darstellungsfeld vornehmen. Wenn der Benutzer dies tut, wird
lediglich der entsprechende Teil der intelligenten Grafiken von
der grafischen Benutzeroberfläche
angezeigt. Dies erfordert Veränderungen
in Echtzeit der Speicherstelle und der Anzahl der dreidimensionalen
Visualisierungen, die angezeigt werden. Um dies zu erreichen, wurde
die VMM-Funktion 46 geschaffen. Die Rolle der VMM-Funktion 46 ist
es, die Darstellung sowohl der zweidimensionalen als auch der dreidimensionalen Informationen
lokal so zu synchronisieren bzw. zu koordinieren, dass dem Benutzer
eine einheitliche koordinierte Ansicht präsentiert wird.
-
Um
einen Zustand der Vollbildsimulationsinstanz 48 richtig
wiederzugeben, muss der Kundencomputer 22 ständig Daten
senden, die durch Interaktion des Benutzers mit der SGP 42 generiert
wurden, sowie Informationen, auf die durch die 3DV 44 in
der Datenbank 26 Zugriff genommen wurde. Der Kundencomputer 22 muss
analog Daten von der Simulationsinstanz 48 erhalten und
diese Informationen dazu verwenden, die durch die SGP 42 und
die 3DV 44 jeweils generierten Anzeigen zu aktualisieren.
Auf der Seite des Kundencomputers 22 wird der Informationsaustausch
mit dem Simulationsserver 28 durch eine Datensteuerung
und Datenbereitstellung 60 bearbeitet, die Datenkommunikationen
mit einer entsprechenden Datensteuerungs- und Datenbereitstellungsfunktion 50 im
Server 28 koordiniert. Die Datensteuerung wählt eine
Datenbereitstellungsfunktion aus, um Datenelementsubskriptionen
zu verfolgen, wie dies nachstehend unter Bezugnahme auf 5 erläutert wird,
die von der SGP 42 verwendet wird, um in einem von den
3DV 44 verwendeten Speicher 56 Daten aufzuzeichnen
und daraus Daten herauszulesen.
-
3 stellt
einen Überblick über die
erfindungsgemäße hochauflösende optische
Anzeige bereit. Ein System für
zweidimensionale Grafiken 70 umfasst eine Anwendungsprogrammschnittstelle (Application
Program Interface – API) 72, über die
die Datensteuerungs- und Datenbereitstellungsfunktion 60 (2) wie
oben erläutert
Simulations-Eingabe-/Ausgabe-Daten bewegt. Das VMM 46 verwendet die
API 72 auch zum Zugriff auf Bitmap-Daten und Fenstergrößeninformationen, die dazu
verwendet werden, das verschmolzene optische Bild 90 zu
steuern, wie dies nachstehend detaillierter erläutert wird. Analog ist ein
System für
dreidimensionale Visualisierung 80 vorhanden, das eine
API 82 aufweist, die von der Datensteuerung und Datenbereitstellung 60 und
dem VMM 46 verwendet wird. Wie nachstehend detaillierter
zu erläutern
sein wird, erzeugt das System für
zweidimensionale Grafiken 70 ein zweidimensionales Benutzeroberflächenfenster 92,
das entsprechend ausgeblendet wird, da es immer hinter dem Anzeigefenster
positioniert ist. Das System 70 für zweidimensionale Grafiken
generiert auch ein Bitmap-Bild, das in zweckmäßiger Weise in einem Offscreenbuffer 110 (siehe 4)
abgespeichert ist. Die Funktion des Bitmap-Bildes und seine damit
verbundenen Veränderungen
sind wichtig. Die Bitmap wird als eine Maske verwendet, um lediglich
die zweckdienlichen Teile der dreidimensionalen Visualisierungen
zu zeigen, die von den Systemen für dreidimensionale Visualisierung 80 generiert
werden. Der Benutzer sieht lediglich die dreidimensionalen Visualisierungen,
die nicht durch die in dem Offscreenbuffer 110 abgespeicherte
Bitmap kaschiert werden. Wie nachstehend unter Bezugnahme auf 7 detaillierter
erklärt
wird, kann eine Bitmap als eine undurchsichtige, aus Farbattributen
(rot, grün
und blau) bestehende Maske gedacht werden. Durch das Definieren
eines einheitlichen Chromakey (einer einzigen Farbe) kann die Bitmapmaske
in an sich bekannter Weise so modifiziert werden, dass Flächen, die
transparent sein müssen,
das Chromakey-Farbattribut
zugeteilt erhalten. Diese modifizierte Bitmap wird dann in eine
Textur konvertiert, die von dem Texturmaskenassembler 116 in
dem dreidimensionalen optischen System 80 verwendet wird,
um eine Texturmaske zu schaffen, wie nachstehend unter Bezugnahme
auf 4 erklärt
wird.
-
Die
Texturmaske wird in visuelle Texturdaten übersetzt, die für den Benutzer über ein
Vollbildpolygon mit null Tiefe übertragen
werden. Entsprechend sieht der Benutzer die dreidimensionalen Visualisierungen
durch den(die) transparenten Teil(e) der Maske. Da der Rest des
Bildes 90 die zweidimensionale Grafik ist, die von der
Bitmap abgeleitet wurde, ist die Wirkung eine Integration der vorher
getrennten zweidimensionalen und dreidimensionalen Bilder, die beide
jeweils entsprechend mit der Simulationsinstanz 48 synchronisiert
werden.
-
4 ist
eine detailliertere Darstellung der in 3 gezeigten
Bildverarbeitungsfunktionen des Kundencomputers 22. Die
SGP 42 generiert ein Bitmap-Bild, das in dem Offscreenbuffer 110 abgespeichert
wird. Wie nachstehend unter Bezugnahme auf 5 erläutert wird,
muss der Offscreenbuffer 110 jedes Mal aktualisiert werden,
wenn eines von drei Ereignissen eintritt. Und zwar, wenn der Benutzer
mit den intelligenten Grafiken interagiert, um einen Zustand einer
virtuellen Steuerung zu verändern, die
von dem Anzeigefenster 100 gezeigt wird, der Benutzer eine
Zoom-, Schwenk-, Scroll- oder Größenveränderungsoperation
am Anzeigefenster 100 ausführt oder von der Simulationsinstanz 48 eine
Eingabe erhalten wird, die erfordert, dass ein angezeigtes Bedienpult
geändert
wird. Wenn ein beliebiges dieser Ereignisse eintritt, muss die für das Generieren
der Texturmaske verwendete Bitmap geändert werden.
-
Jedes
Mal, wenn die SGP 42 den Offscreenbuffer 110 ändert, der
die Bitmap speichert, benachrichtigt die SGP 42 demzufolge
das VMM 46 über Veränderungen
des Darstellungsfeldes und Aktualisierungen des Offscreenbuffers.
Demzufolge sendet das VMM 46 den Befehl an die SGP, den
Offscreenbuffer auf die gemeinsame im Speicher enthaltene Grafikdatenstruktur
(Memory Device Context) zu kopieren. Die VMM-Funktion 46 nimmt
dann die erforderliche Koordinierung mit dem System für dreidimen sionale
Visualisierungen 80 vor, um entsprechende Änderungen
im hochauflösenden
optischen Anzeigefenster 90 zu bewirken. Bei dieser Ausführungsform übermittelt
die VMM-Funktion 46 die neue Bitmap an den Texturmaskenassembler 116,
der die Bitmap in visuelle Texturdaten umwandelt. Der Texturmaskenassembler
leitet anschließend
die visuellen Texturdaten an einen dreidimensionalen Wiedergabeprozess 114 weiter,
der sie dazu verwendet, das hochauflösende optische Anzeigefenster 90 zu
generieren. Des Weiteren werden die Fensterabmessungen und das Sichtfeld
von dem VMM 46 über
das optische 3D-System API (3) an das
optische System weitergeleitet.
-
Der
dreidimensionale Wiedergabeprozess erhält ständig Eingaben aus der Simulationsinstanz 48 und
liest optische Systeminformationen aus der Datenbank 26 unter
Verwendung einer Datenbankschnittstelle 118 aus (2).
Der dreidimensionale Wiedergabeprozess 114 konvertiert
die optischen Informationen in ein dreidimensionales optisches Bild, das
mit der Texturmaske überlappt
wird, die durch den Texturmaskenassembler 116 geschaffen
wird, um das Anzeigefenster 90 zu generieren. Interpolations-
und Extrapolationsalgorithmen (Koppelnavigation) sagen voraus und
glätten
einige der Daten (wie z.B. Positions- und Lageinformationen), die
von der Simulation in einer an sich bekannten Weise erhalten werden.
Das Anzeigefenster 90 zeigt die Texturmaske 94 (in
diesem Fall ein Cockpit eines Fluggeräts). Transparente Bereiche 96 der
Texturmaske 94 zeigen die dreidimensionalen Visualisierungen.
Das Anzeigefenster 90 wird in an sich bekannter Weise generiert,
wobei die Benutzereingabefunktionen deaktiviert sind. Das Anzeigefenster 90 wird
dann über
ein Fenster 92 angezeigt, dessen Benutzereingabefunktionen
aktiviert sind. Das Fenster 92 wird optional, wie oben
erklärt,
ausgeblendet. Das funktionale Fenster 92 wird durch die
SGP 42 gesteuert, die die an das Anzeigefenster 100 gerichteten
Benutzereingabevorgänge
akzeptiert. Die SGP koordiniert die von dem Fenster 92 aufgezeichneten
Benutzereingabevorgänge,
wobei im Offscreenbuffer 110 abgespeicherte intelligente
Grafikobjekte in dem Bitmap-Bild eingebettet sind.
-
Wenn
demzufolge der Benutzer eine Zielvorrichtung bedient, die einen
Cursor 102 steuert, um eine Steuereinstellung auf einem
angezeigten Bedienpult zu verändern,
detektiert die SGP 42 den Vorgang und bestimmt eine Position
des Cursors 102 auf dem aktivierten Fenster 92.
Die SGP 42 ermittelt, welche Änderungen an der in dem Offscreenbuffer 110 abgespeicherten
Bitmap erforderlich sind, und des Weiteren, welche Daten gegebenenfalls
an die Simulationsinstanz 48 zu senden sind. Es sollte
angemerkt werden, dass anstelle eines Zeigegerätes eine berührungsempfindliche
Anzeigeoberfläche
verwendet werden kann, wobei in diesem Fall ein Berührungsvorgang
anstelle des Zeigegerätvorganges,
wie oben beschrieben wurde, detektiert wird.
-
5 ist
ein Flussdiagramm, das die wesentlichen Schritte zeigt, die während der
Ausführung
der erfindungsgemäßen Verfahren
von der SGP 42 ausgeführt
werden. In einer Initialisierungsphase führt die SGP 42 Datenelementsubskription
(Schritt 150) aus. Um eine effiziente Nutzung der Ressourcen
des Netzwerkes 24 sicherzustellen, werden nur für einen
angezeigten Teil der Bedienpulte des simulierten komplexen Systems
relevante Daten an die Simulationsinstanz 48 gesandt oder
von dieser empfangen. Entsprechend wird ein Datenelementsubskriptionsprozess
ausgeführt.
Während
des Datenelementsubskriptionsprozesses registriert die SGP 42 mit
der Datensteuerungs- und Datenbereitstellungsfunktion 60 sämtliche
Datenelemente, die mit den intelligenten Grafiken verbunden sind,
welche durch eine Default-Start-up-Ansicht des(der) Bedienpulte(s)
angezeigt werden. Nach Abschluss des Datenelementsubskriptionsprozesses
initialisiert die SGP 42 ein zweidimensionales grafisches
Fenster 92 und generiert eine Bitmap, die in dem Offscreenbuffer 110 abgespeichert
wird (Schritt 152). Auf Anforderungen des VMM 46 kopiert
die SGP 42 die Bitmap auf die von dem VMM 46 gesteuerte
gemeinsame im Speicher enthaltene Grafikdatenstruktur (Memory Device Context)
(Schritt 154). Anschließend koordiniert das VMM das
Verarbeiten der Bitmap mit den 3DV 80, wie dies oben beschrieben
wurde. Im Schritt 156 ermittelt die SGP 42, ob
die aktuelle Sitzung beendet wurde. Ist dies der Fall, schließt die SGP 42 ab,
und darauf folgt in an sich bekannter Weise die Neuorganisation
des Arbeitsspeichers (garbage collection). Ansonsten überprüft die SGP 42 ein
Benutzereingaberegister (Schritt 158), um festzustellen,
ob seitens des Benutzers eine Eingabe erfolgte. Wenn eine Benutzereingabe
detektiert wurde, ermittelt die SGP 42 (Schritt 160),
ob die Eingabe zu einer Veränderung der
Ansicht führte
(Größenveränderungs-,
Schwenk- oder Zoomvorgang). Wenn nicht, änderte die Benutzereingabe
einen Zustand einer der angezeigten intelligenten Grafiken, so dass
die SGP 42 feststellt, welches) Datenelement(e) aktualisiert
werden muss(müssen)
(Schritt 162), um die Simulatorinstanz 48 über die
Zustandsveränderung
zu benachrichtigen. Wenn im Schritt 158 ermittelt wurde,
dass es keine Benutzereingabe gab, überprüft bzw. ermittelt die SGP 42 (Schritt 164),
ob eines der subskribierten Datenelemente durch Rückmeldung
aus der Simulationsinstanz 48 verändert wurde. Wenn keines der Datenelemente
von der Simulationsinstanz 48 aktualisiert wurde, fällt der
Prozess zurück
auf Schritt 156.
-
Die
in dem Offscreenbuffer 110 gespeicherte Bitmap muss unabhängig davon
aktualisiert werden, ob Datenelemente durch Benutzereingaben (Schritt 162)
oder durch Rückmeldung
aus der Simulationsinstanz 48 (Schritt 164) aktualisiert
wurden. Entsprechend wird die Bitmap im Schritt 166 aktualisiert,
und das neue Bitmap-Bild wird an das VMM 46 übermittelt
(Schritt 168).
-
Wenn
im Schritt 160 ermittelt wurde, dass die Benutzereingabe
zu einer Veränderung
der Ansicht führte
(Größenveränderungs-, Schwenk-
oder Zoomvorgang), berechnet die Verarbeitung von intelligenten
Grafiken 42 einen neuen Fenstergrößen-, Standort- und Zoomfaktor
(Schritt 170) und aktualisiert das Fenster 92 (Schritt 172).
Die neuen Fensterdaten werden anschließend an das VMM 46 weitergeleitet, wenn
dies von letzterem angefordert wurde (Schritt 174). Es
wird dann (Schritt 176) ermittelt, ob die Veränderung
der Ansicht eine Veränderung
an der Subskription eines beliebigen der Datenelemente erfordert.
Ist dies der Fall, werden sämtliche
Datenelemente, die durch die Ansichtsveränderung ausgeschlossen wurden,
entsubskribiert, und beliebige neue erforderliche Datenelemente
werden subskribiert (Schritt 180). In beiden Fällen wird
die Bitmap aktualisiert (Schritt 166) und wie oben beschrieben an
das VMM 46 weitergeleitet (Schritt 168).
-
6 ist
ein Flussdiagramm, welches eine Übersicht über die
in den 3DV 44 verwendete Logik darstellt, um die erfindungsgemäßen Verfahren
auszuführen.
Der Prozess beginnt mit einer Initialisierung des Fensters 90.
Die 3DV 44 stützt
sich auf Simulatoreingaben hinsichtlich Standort, Lage und vieler
weiterer simulierter systemabhängiger
Variablen, um die in dem Fenster 90 angezeigten dreidimensionalen
Visualisierungen zu generieren. Analog und wie nachstehend detaillierter
erläutert,
kann die Datenbank 26 Datenelemente enthalten, die an die
Simulationsinstanz 48 zu übermitteln sind. Demzufolge beginnt
die Systeminitialisierung mit einem Datenelementsubskriptionsprozess
(Schritt 200), wie dies vorstehend unter Bezugnahme auf 5 erläutert wurde.
Anschließend
initialisiert die 3DV 44 das Fenster 90, um eine
Default-Ansicht anzuzeigen (Schritt 204), und überprüft bzw.
ermittelt, ob neue Fensterdaten von dem VMM 46 erhalten
wurden (Schritt 204). Wenn keine neuen Fensterdaten erhalten
wurden, ermittelt die 3DV 44, ob das VMM 46 eine Bitmap-Aktualisierung
anfordert (Schritt 206). Wenn eine Bitmap-Aktualisierung
angefordert wird, wird die Bitmap von dem VMM akzeptiert (Schritt 210)
und an den Texturmaskenassembler 116 weitergeleitet, der die Bitmap
in eine Texturmaske verwandelt, wie dies nachstehend unter Bezugnahme
auf 7 erläutert wird.
Wenn analog im Schritt 204 ermittelt wird, dass neue Fensterdaten
(Fenstergrößen-, Lage-,
Scroll- oder Zoomfaktor) von dem VMM 46 aus zur Verfügung stehen,
werden die Fensterdaten von dem VMM 46 im Schritt 208 akzeptiert,
und die aktualisierte Bitmap wird akzeptiert (Schritt 210)
und an den Texturmaskenassembler 116 weitergeleitet. In
beiden Fällen
wird die neue Texturmaske durch den Texturmaskenassembler 116 generiert
(Schritt 212), so dass das Anzeigefenster 90 die
korrekte Texturmaske über
den dreidimensionalen Visualisierungen zeigt.
-
Im
Schritt 214 werden die subskribierten Datenelemente aus
dem gemeinsamen dreidimensionalen Speicher 56 ausgelesen
(2), da diese Datenelemente möglicherweise erforderlich sind,
um einen Zugriff auf Informationen aus der Datenbank 26 festzulegen,
die für
die nächste
Wiederholung der dreidimensionalen Visualisierungskomponente des Fensters 90 erforderlich
sind. Es werden dann in an sich bekannter Weise Informationen aus
der Datenbank 26 ausgelesen (Schritt 216). Nach
dem Zugriff auf die Daten wird im Schritt 218 ermittelt,
ob der Datenzugriff etwaige Datenelemente zurückleitete, die an die Simulatorinstanz 48 zurückzuleiten
sind. Beispielsweise enthält
die dreidimensionale Datenbank möglicherweise
Informationen über
sich annähernde Objekte, Änderungen
bei der Höhe,
Hindernisse oder sonstige für
die Simulationsinstanz 48 für die Aktualisierung von Instrumenten,
Auslösen
von Alarmen usw. erforderliche Informationen. Wenn in der dreidimensionalen
Datenbank 26 auf Datenelementwerte zugegriffen wurde, werden
diese Datenelementwerte im Schritt 220 in den gemeinsamen
dreidimensionalen Speicher 56 geschrieben. Ansonsten gibt
die 3DV 44 die Visualisierung für das Fenster 90 durch Überlagern
der dreidimensionalen Visualisierungen mit der Texturmaske wieder,
wie dies detaillierter unter Bezugnahme auf 7 beschrieben
wird. Im Schritt 224 wird ermittelt, ob die Sitzung beendet
wurde. Ist dies nicht der Fall, be ginnt der Prozess ab Schritt 204 erneut.
Die Qualität
der 3DV wird durch Betrieb mit ungefähr 60 Hz optimiert. Um jedoch
die Verarbeitungslast in dem Kundencomputer zu reduzieren, kann
die 3DV mit geringeren Auffrischungsraten laufen. Zusätzlich läuft die
vorstehend unter Bezugnahme auf 4 beschriebene
SGP 42 vorzugsweise bei ca. 5 Hz, was eine hochauflösende Simulation
liefert, um die Bearbeitungslast in dem Kundencomputer 22 zu
reduzieren.
-
7 ist
ein Flussdiagramm mit der Darstellung der wesentlichen Schritte
in der Verarbeitung von Bitmap-Daten, um die Visualisierungen für das Fenster 90 zu
generieren, die in der 3DV 44 angezeigt werden. Im Schritt 300 erhält die 3DV 44 eine neue
Bitmap, die möglicherweise
durch neue Fensterdaten aus dem VMM 46 ergänzt wird,
wie dies vorstehend detailliert erläutert wurde. Die neue Bitmap wird
an den Texturmaskenassembler 116 weitergeleitet, der die
Chromakeywerte ausfiltert (Schritt 302), wie dies oben
beschrieben wurde, und übersetzt
den Rest des Bitmap-Bildes in visuelle Texturdaten (Schritt 304).
Die visuellen Texturdaten können
transparente Bereiche umfassen, vollständig transparent sein, wie
dies an sich bekannt ist, oder aber je nach dem Gesichtspunkt vollständig undurchsichtig
sein. Der Texturmaskenassembler 116 gibt dann die Texturmaskendaten
an den dreidimensionalen Wiedergabeprozess 114 weiter (4),
der die Textur als Vollbildpolygon mit null Tiefe für den Betrachter über einem
hochauflösenden
Bild der Umgebung überlagert,
die unter Verwendung der Daten, auf die wie oben beschrieben in
der Datenbank 26 Zugriff genommen wurde, geschaffen wurde.
-
8 ist
eine schematische Darstellung einer weiteren Ausführungsform
eines erfindungsgemäßen Systems 20,
bei dem ein Kundencomputer 22 als Trainingsvorrichtung
verwendet wird, die dem persönlichen
Arbeitstempo angepasste Lerninformationen als Trainingshilfe einsetzt.
Das System 20 umfasst den über das Netzwerk 24 mit
dem Kundencomputer 22 verbundenen Simulationsserver 28.
Wie vorstehend erklärt,
ist der Kundencomputer 22 mit einer Simulationsinstanz 48 des
Simulationsservers 28 über
Datensteuerungs- und Bereitstellungsfunktionen 50 verbunden.
-
Der
Kundencomputer 22 umfasst die oben beschriebenen Datensteuerungs-
und Bereitstellungsfunktionen 60. Er umfasst auch eine
Run-Time Engine (RTE) 130, die dazu verwendet wird, die Lerninformationen 32 zu
treiben. Die Lerninformationen 32 sind integriert und funktionieren
in Abstimmung sowohl mit dem System für zweidimensionale Grafiken 70 als
auch mit dem System für
dreidimensionale Visualisierung 80. Beispielsweise können die Lerninformationen 32 Textboxes
generieren, die in das Bitmap-Bild integriert sind, das durch das
VMM 46 aus dem System für
zweidimensionale Grafiken 70 an das System für dreidimensionale
Visualisierungen 80 weitergeleitet wird. Die Lerninformationen können auch
dazu benutzt werden, visuelle Effekte oder visuelle Highlights in
den Anzeigeoutput des Systems für
dreidimensionale Visualisierung 80 einzuführen. Wenn
beispielsweise das komplexe System ein Fluggerät ist, können die Lerninformationen einen
empfohlenen Anflugweg zu einer Landebahn illustrieren, wobei ein
in dem Fenster 90 gezeigter visueller Indikator verwendet
wird. Analog können
Hindernisse oder Gefahren hervorgehoben oder mit einem visuellen
Marker oder ähnlichem
angezeigt werden. Demzufolge können
die integrierten Lerninformationen für eine Anzahl von wichtigen
Trainings- und Übungsanwendungen
verwendet werden.
-
Die
Erfindung stellt demzufolge ein wichtiges Werkzeug bereit, das in
Kombination mit Lerninformationen einen raschen Fortschritt beim
Trainieren integrierter Verfahren und den Erwerb von Systemkenntnis
und Bedienerfähigkeiten
im Zusammenhang mit dem Betrieb oder der Wartung beliebiger simulierter
komplexer Systeme erlaubt. Das erfindungsgemäße System erlaubt Fernstudium
und Übung
von Fähigkeiten
an einem entfernt liegenden Ort mit allen verbundenen Vorteilen
einer Vollbildsimulation mit hochauflösenden Visualisierungen unter Einschluss
einer voll funktionalen Steuerschnittstelle, die in getreulicher
Weise das Aussehen und die Funktionalität eines Bedienpulte des realen
Systems dupliziert. Das erfindungsgemäße System ist in einer unbegrenzten
Anzahl von Anwendungen nützlich, denn
es liefert sämtliche
Vorteile eines Vollbildsimulators, mit Ausnahme der Bewegungs- und
immersiven physischen Umgebung.
-
Die
Ausführungsform(en)
der Erfindung, die vorstehend beschrieben wurde(n), soll(en) lediglich beispielhaften
Charakter haben. Der Rahmen der Erfindung soll demzufolge ausschließlich durch
den Rahmen der beigefügten
Patentansprüche
eingeschränkt
werden.