WO2013189475A1 - Simulieren eines komplexen systems - Google Patents

Simulieren eines komplexen systems Download PDF

Info

Publication number
WO2013189475A1
WO2013189475A1 PCT/DE2013/000311 DE2013000311W WO2013189475A1 WO 2013189475 A1 WO2013189475 A1 WO 2013189475A1 DE 2013000311 W DE2013000311 W DE 2013000311W WO 2013189475 A1 WO2013189475 A1 WO 2013189475A1
Authority
WO
WIPO (PCT)
Prior art keywords
simulation
subsystem
client
server
complex system
Prior art date
Application number
PCT/DE2013/000311
Other languages
English (en)
French (fr)
Inventor
Ralf Oswald
Robert Huber
Martin Förster
Original Assignee
Eads Deutschland 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 Eads Deutschland Gmbh filed Critical Eads Deutschland Gmbh
Priority to AU2013279856A priority Critical patent/AU2013279856B2/en
Priority to US14/409,095 priority patent/US10839704B2/en
Priority to CA2876727A priority patent/CA2876727A1/en
Priority to EP13745333.8A priority patent/EP2862075B1/de
Publication of WO2013189475A1 publication Critical patent/WO2013189475A1/de

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B5/00Electrically-operated educational appliances
    • G09B5/02Electrically-operated educational appliances with visual presentation of the material to be studied, e.g. using film strip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B19/00Teaching not covered by other main groups of this subclass
    • G09B19/0053Computers, e.g. programming
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B25/00Models for purposes not provided for in G09B23/00, e.g. full-sized devices for demonstration purposes
    • G09B25/02Models for purposes not provided for in G09B23/00, e.g. full-sized devices for demonstration purposes of industrial processes; of machinery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Definitions

  • the invention relates to a method for simulating a complex system and relates to a simulation system.
  • BACKGROUND OF THE INVENTION Simulations are used in the maintenance area to prepare technicians for their tasks. These tasks include, for example, the maintenance of a technical system, such as an aircraft system.
  • the technical system is simulated in a computer, for example a mainframe, and a service technician can be trained on a terminal that is connected to the mainframe.
  • a service technician can be trained on a terminal that is connected to the mainframe.
  • the complexity of the technical system increases, so does the complexity of the simulation. If the simulation is to be changed in order to adapt it to changes in the technical system, for example, this often requires great effort. Also, creating a new simulation for a new technical system is complicated and expensive.
  • the complex system may be, for example, a technical system such as an aircraft system, a vehicle system or an industrial facility.
  • the complex system may include a plurality of subsystems that interact with each other. Examples of such subsystems include switches, controls, motors, valves, etc.
  • the method may be executed by a computer program that can run distributed on multiple computers forming a simulation system.
  • the computer program maps the complex system into a plurality of simulation blocks, each simulation block being assigned to one or more subsystems of the complex system.
  • Each simulation module comprises at least one client-side simulation component and a server-side simulation component.
  • the method comprises the steps of: detecting user interaction with at least one client-side simulation component; Simulation of the complex system in server-side simulation components based on the user interaction, whereby simulation data for the subsystems is generated by the server-side simulation components; Represent the subsystem based on the simulation data through the appropriate client-side components.
  • the client-side component of a simulation block is used to display the respective subsystem.
  • the server-side component is used to simulate the respective subsystem.
  • Some of the simulation building blocks can be used to simulate subsystems that a user can interact with, such as a switch.
  • the client-side component is designed to handle user interactions, such as pressing a switch; Tilting a switch; Turning a switch; Opening a door, opening a door to capture and display.
  • one component of the simulation system may be a self-contained software module that may, for example, be exchanged separately from other software modules.
  • the simulation and in particular the simulation program or the simulation software is thus divided into modular units by means of the simulation modules, which can be reused, easily changed and supplemented.
  • a simulation component of a simulation can be reused in another simulation.
  • a user of the simulation system can assemble a new simulation based on already existing simulation modules. It is also possible to create a new simulation based on a number of existing building blocks and a few newly implemented building blocks. In the development of a new simulation costs can be saved. It also reduces the complexity of the simulation system, since individual simulation blocks can be changed without the other simulation blocks being affected by the changes. Since the simulation of the complex system emerges in an emergent manner from the individual simulations of the subsystems by the simulation modules, even highly complex systems can be simulated by means of a large number of individual simulation modules.
  • the method optionally further comprises the step of: driving a hardware subsystem and / or driving a software subsystem (such as interaction with original software) of the complex system through a simulation device.
  • output data of the hardware subsystem can be detected by the simulation module and / or simulation data can be generated by the simulation module.
  • the simulation module can represent an interface to a real component of the complex system.
  • a real electronic control of the complex system can be included in the simulation. In this way, the behavior of the controller in interaction with other subsystems of the complex system can be studied.
  • the method further comprises the step of: communicating the user interaction and / or simulation data between a client-side component and a server-side component via a communication network.
  • a client or carrier of the client-side component for example, a workstation, a notebook, a SmartPad or an iPhone can be used.
  • Simulation data may be data describing states of the subsystem concerned, such as the rotational speed of a motor, the switch position of a switch, or the electrical power consumed by the motor.
  • the simulation data can be used by other simulation modules to simulate the respectively assigned subsystem based on this simulation data.
  • a building block that simulates a fan might measure the speed of rotation of a simulati- on-body module that simulates a motor.
  • the simulation data can be used to represent the respective subsystem.
  • a client machine could represent a spinning fan when the associated rotational speed is not equal to zero.
  • the subsystem is represented by a web browser.
  • the client-side component is implemented using a browser-based language.
  • a browser-based language could be for example JavaScripts.
  • DART or C / C ++ are possible, if this is processed by the respective Web browser.
  • the method further comprises the steps of: transmitting simulation data from a first simulation building block to a second simulation building block; Simulating a subsystem associated with the second simulation block based on the simulation data.
  • the simulation blocks are modular and can be so separated from each other that only one data exchange, but no mutual function calls take place.
  • the method further comprises the step of: transmitting the simulation data by means of message packets between the simulation blocks.
  • the simulation modules can be easily installed on different server computers and / or executed in parallel.
  • the simulation blocks are also delimited from each other and can only influence each other by means of messages. This can also facilitate replacement or modification of simulation building blocks.
  • the server-side components are implemented by means of a JVM-based language. An example of such a language is SCALA.
  • the simulation modules can be Java modules.
  • the client-side components are executed in a client and the server-side components are executed in a server which is connected to the client via a communication network.
  • Client and server can use software components in a single
  • the client can be a client computer and the server can be a server computer.
  • the program elements may include Java modules, Java-based programming language modules, JavaScript modules, browser-based language modules, and templates such as XML templates.
  • the program elements may together form a computer program designed to carry out the simulation method as described above and below.
  • a computer-readable medium may be a floppy disk, a hard disk, a USB storage device, a RAM, a ROM or an EPROM.
  • a computer-readable medium may also be a data communication network, such as the Internet, which allows the download of a program code.
  • Another aspect of the invention relates to using the simulation method to train a technician to maintain and / or repair the complex system.
  • the correspondingly assembled simulation modules can be used to provide training and behavioral methods that respond to the behavior or interaction of a user (ie the technician) and thus enable non-linear training.
  • Another aspect of the invention relates to a simulation system designed to simulate a complex system.
  • the simulation system comprises at least one computer in which simulation modules are stored, each comprising a client-side component and a server-side component.
  • the simulation system comprises at least one client computer and a server computer in which the respective components are stored.
  • a simulation block is assigned to a subsystem of the complex system.
  • a client-side component of a subsystem is designed to capture user interaction with the simulated subsystem and display the simulated subsystem on the client (or its screen).
  • a server-side component is designed to simulate the subsystem based on user interaction.
  • the simulation system further comprises an optional hardware subsystem of the complex system.
  • At least one of the simulation modules is designed to control the hardware subsystem and / or to capture output data of the hardware subsystem.
  • the simulation system can be used as a training system in the maintenance area for aircraft maintenance.
  • the simulation system can also be used as a universal training system in the industrial and non-industrial sector. be used, for example in the supply industry or in the general technical industry. Examples include medium-sized companies in the automotive industry, which can not regularly send their employees to training, and obtained with the simulation system instructions for installation and removal of vehicle components or maintenance.
  • the purchase of furniture could be accompanied by an interactive, three-dimensional guide (for example, via an Internet link), which describes the structure of the furniture.
  • the simulation system can also be used in the state education and school system.
  • Fig. 1 shows a schematic view of a simulation system according to an embodiment of the invention.
  • 2 shows a sequence diagram for a method for simulating a complex system according to an embodiment of the invention.
  • FIG. 1 shows a simulation system 10 comprising one or more clients 12 and multiple servers 14a, 14b connected to the client 12 via a communication network 16, such as an IP network or the Internet. they are. It should be understood that the system 10 may include additional clients 12 at which multiple users 18 may interact with the system 10 simultaneously. If in the following the client 12 is mentioned, several clients 12 may also be meant.
  • a communication network 16 such as an IP network or the Internet.
  • the client 12 and the servers 14a, 14b may be stand-alone computers, i. H. a client computer 12 and two server computers 14a, 14b.
  • the client 12 or the servers 14a, 14b may be components in a computer that includes the client 12 and the servers 14a, 14b.
  • the client 12 may be a PC, laptop, tablet, smartphone, or similar device that is capable of communicating over the communications network 16, such as the Internet, and on which standard software is installed, with the HTML pages can be viewed and JavaScript executed, such as a web browser.
  • the client 12 serves to capture the inputs or operations of a user 18 and forward them to the servers 14a, 14b.
  • simulation results generated by the servers 14a, 14b are displayed graphically or textually on a screen by the client 12.
  • the complex system can be, for example, an electrical, mechanical, electromechanical, hydraulic and / or electronic device or system, such as those contained in aircraft, vehicles, power plants, or in general in any technical installations.
  • a subsystem of a complex system may be an operating element, an electrical or electronic controller, a sensor, an actuator or the like.
  • a user 18 can simultaneously interact with all simulations via a client 12.
  • multiple users 18 with multiple clients 12 are connected to the system 10, multiple users 18 may interact simultaneously with multiple simulations.
  • the complex system may include a toggle switch, a motor controller, a motor, and a fan.
  • the blocks 20a, 20b, 20c, 20d then serve to simulate one of these subsystems.
  • the software modules 20a, 20b, 20c, 20d comprise at least one server-side component 22a, 22b, 22c, 22d and at least one client-side component 24a, 24b, 24c, 24d, they are shown in FIG. 1 as dashed lines .
  • a subsystem may be simulated by one or more server-side components 22a, 22b, 22c, 22d and / or by one or more client-side components 24a, 24b, 24c, 24d.
  • An m: n relationship may exist between the server-side components 22a, 22b, 22c, 22d and the ellen-side components 24a, 24b, 24c, 24d of a subsystem.
  • the client-side component 24a, 24b, 24c, 24d serves to represent (graphical and / or textual simulation) of the subsystem and to detect an interaction with the user 18.
  • the client-side component 24a may represent a toggle switch and, after being pressed by the user - User 18 represent the toggle switch in another tilted state.
  • the client side Components 24a, 24b, 24c, 24d can be implemented with JavaScript, for example.
  • three-dimensional representations of the subsystem can be stored in the client 12, or, if required, sent from the servers 14a, 14b to the client.
  • templates for example XML templates
  • templates can be stored in the client 12 and / or in a server 14a, 14b, with which the possible actuatable states and interactions with the user 18 are defined.
  • the server side component 22a, 22b, 22c, 22d of a device 20a, 20b, 20c, 20d is for simulating the corresponding subsystem of the complex system.
  • a server-side component 22a, 22b, 22c, 22d may receive user operations from the corresponding client-side component 24a, 24b, 24c, 24d, which transmits this information via the communication network 16 to the server-side component 22a, 22b, 22c, 22d has sent.
  • a server-side component 22a, 22b, 22c, 22d can send a simulation result 26 to the corresponding client-side component 24a, 24b, 24c, 24d via the communication network 16.
  • a simulation result 26 comprises data which contain information about a state of the subsystem to be simulated, such as "toggle switch was successfully tilted” or "motor rotates at a speed of 30 RPM”.
  • the server side components 22a, 22b, 22c, 22d are in a JVM (Java Virtual Machine) based language, e.g. Java, Scala, Groovy, Clojure, etc., and may be stored in a virtual machine (JVM) in the servers 14a, 14b be executed.
  • JVM Java Virtual Machine
  • the server-side components 22a, 22b, 22c, 22d may be Java modules.
  • server-side components 22a, 22b, 22c, 22d it is possible for the server-side components 22a, 22b, 22c, 22d to be distributed over a plurality of servers 14a, 14b. But it is also possible that they are installed in just one server.
  • the server-side components 22a, 22b, 22c, 22d communicate with each other with a messaging (messaging) system installed in the servers 14a, 14b, such as Akka (an actor message system).
  • a messaging system installed in the servers 14a, 14b, such as Akka (an actor message system).
  • the simulation system 10 may include a (real) hardware component 28 of the complex system whose other subsystems are simulated by the simulation system 10.
  • the hardware component 28 may be a motor controller that may be addressed by the server-side component 22 c via a communication link 30.
  • FIG. 2 shows a sequence diagram for an exemplary sequence of a simulation.
  • step 100 the user actuates a client-side component 24a by, for example, clicking with the mouse pointer on a representation of the corresponding subsystem.
  • This representation can represent, for example, a toggle switch.
  • the client-side component 24a sends this interaction to the corresponding server-side component 22a in the first computer 14a.
  • the server side component 22a simulates the corresponding subsystem (eg, the toggle switch). For example, in the server side component 22a be shown that the toggle switch may have a defect and in this case the switch is indeed overturned, what the server-side component 22a of the ellen solutionen component 24a as the first simulation result 26a tells the toggle switch but no circuit closes.
  • the corresponding subsystem eg, the toggle switch
  • step 118 the representation of the toggle switch by the client-side component 24a in the client 12 is then adjusted accordingly.
  • the server-side component 22a generates a message 32 which is sent to the server-side component 22c (which simulates the control) and the server-side component 22d (which simulates the engine).
  • the server side component 22c starts its part of the simulation, but includes the (real) hardware component 28.
  • the server-side component 22c may send control data 34 to the hardware component 28 (such as a desired rotational speed).
  • the control data 34 are then processed in step 106 by the hardware component 28, which then generates further output data 36, which are then further processed by the server-side component 22c.
  • the hardware component 28 is a motor controller
  • the output data 36 may include information for commutating the motor.
  • the output data 36 may be further processed by the server-side component 22c and sent in a message 38 to the server-side component 22d (to simulate the engine).
  • the server-side component 22d receives the output data 36 in the message 38 and also the message 32 that the circuit has been closed by the toggle switch. With this data, the server-side component 22d then simulates a motor. For example, it can be determined from the output data 36 how fast the motor rotates or whether it rotates at all.
  • the rotational speed of the motor may be communicated as a second simulation result 26b to the client-side component 24c, which in step 112 represents the rotating motor in the web browser on the client 12.
  • the rotational speed of the motor is determined in a message 40 to the client-side component 22b, which simulates the fan in step 114 and transmits a corresponding rotational speed of the fan as a third simulation result 26c to the client-side component 24b, which then in step 116 the representation in the client 12 adapts accordingly.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Ein komplexes System wird mit einem Simulationssystem simuliert. Das komplexe System ist in eine Mehrzahl von Simulationsbausteinen (20a, 20b, 20c, 20d) abgebildet, wobei jeder Simulationsbaustein einem Subsystem des komplexen Systems zugeordnet ist. Jeder Simulationsbaustein umfasst wenigstens eine clientseitige Simulationskomponente (24a, 24b, 24c, 24d) und eine serverseitige Simulationskomponente (22a, 22b, 22c, 22d). Bei der Simulation werden eine Anwenderinteraktion mittels wenigstens einer clientseitigen Simulationskomponente erfasst, das komplexe System in serverseitigen Simulationskomponenten basierend auf der Anwenderinteraktion simuliert, wobei durch die serverseitigen Simulationskomponenten Simulationsdaten für das Subsystem erzeugt werden, und das Subsystem basierend auf den Simulationsdaten durch die entsprechenden clientseitigen Komponenten (24a, 24b, 24c, 24d) dargestellt.

Description

Simulieren eines komplexen Systems
GEBIET DER ERFINDUNG Die Erfindung betrifft ein Verfahren zum Simulieren eines komplexen Systems und betrifft ein Simulationssystem.
HINTERGRUND DER ERFINDUNG Im Wartungsbereich werden Simulationen eingesetzt, um Techniker auf ihre Aufgaben vorzubereiten. Diese Aufgaben umfassen zum Beispiel die Wartung eines technischen Systems, wie etwa einem Flugzeugsystem.
Bei der Simulation wird das technische System in einem Rechner, beispielsweise einem Großrechner simuliert und ein Wartungstechniker kann an einem Terminal geschult werden, das mit dem Großrechner verbunden ist. Mit steigender Komplexität des technischen Systems steigt auch die Komplexität der Simulation. Soll die Simulation geändert werden, um sie etwa an Veränderungen des technischen Systems anzupassen, erfordert dies häufig großen Aufwand. Auch das Erstellen einer neuen Simulation für ein neues technisches System ist aufwendig und teuer.
ZUSAMMENFASSUNG DER ERFINDUNG
Es ist Aufgabe der Erfindung, den Betrieb von Trainingssimulationen zu vereinfa- chen und zu beschleunigen.
Diese Aufgabe wird durch den Gegenstand der unabhängigen Ansprüche gelöst. Weitere Ausführungsformen der Erfindung ergeben sich aus den abhängigen Ansprüchen und aus der folgenden Beschreibung. Ein Aspekt der Erfindung betrifft ein Verfahren zum Simulieren eines komplexen Systems. Das komplexe System kann beispielsweise ein technisches System, wie etwa ein Flugzeugsystem, ein Fahrzeugsystem oder eine industrielle Anlage sein. Insbesondere kann das komplexe System eine Mehrzahl von Subsystemen um- fassen, die miteinander interagieren. Beispiele für solche Subsysteme umfassen Schalter, Steuerungen, Motoren, Ventile, usw.
Das Verfahren kann von einem Computerprogramm ausgeführt werden, das verteilt auf mehreren Rechnern laufen kann, die ein Simulationssystem bilden. Mit dem Computerprogramm wird das komplexe System in eine Mehrzahl von Simulationsbausteinen abgebildet, wobei jeder Simulationsbaustein einem oder mehreren Subsystemen des komplexen Systems zugeordnet ist. Jeder Simulationsbaustein umfasst wenigstens eine clientseitige Simulationskomponente und eine ser- verseitige Simulationskomponente.
Gemäß einer Ausführungsform der Erfindung umfasst das Verfahren die Schritte von: Erfassen einer Anwenderinteraktion mit wenigstens einer clientseitigen Simulationskomponente; Simulieren des komplexen Systems in serverseitigen Simulationskomponenten basierend auf der Anwenderinteraktion, wobei durch die ser- verseitigen Simulationskomponenten Simulationsdaten für die Subsysteme erzeugt werden; Darstellen des Subsystems basierend auf den Simulationsdaten durch die entsprechenden clientseitigen Komponenten.
Die clientseitige Komponente eines Simulationsbausteins dient zum Darstellen des jeweiligen Subsystems. Die serverseitige Komponente dient zum Simulieren des jeweiligen Subsystems. Manche der Simulationsbausteine können zum Simulieren von Subsystemen dienen, mit denen ein Anwender interagieren kann, wie beispielsweise ein Schalter. Bei diesen Simulationsbausteinen ist die clientseitige Komponente dazu ausgeführt, Anwenderinteraktionen, wie etwa Drücken eines Schalters; Kippen eines Schalters; Drehen eines Schalters; Öffnen einer Klappe, Öffnen einer Türe zu erfassen und auch darzustellen.
Es ist zu verstehen, dass es sich bei einer Komponente des Simulationssystems um ein in sich abgeschlossenes Software-Modul handeln kann, das beispielsweise getrennt von anderen Software-Modulen ausgetauscht werden kann.
Die Simulation und insbesondere das Simulationsprogramm bzw. die Simulationssoftware ist somit mittels der Simulationsbausteine in modulare Einheiten geglie- dert, die wiederverwendet, leicht geändert und ergänzt werden können.
Eine Simulationskomponente einer Simulation kann in einer anderen Simulation wiederverwendet werden. Beispielsweise kann ein Nutzer des Simulationssystems eine neue Simulation basierend auf bereits vorhandenen Simulationsbausteinen zusammenstellen. Auch ist es möglich, eine neue Simulation zu erstellen, die auf einer Mehrzahl von bereits vorhandenen Bausteinen und wenigen neu implementierten Bausteinen basiert. Bei der Entwicklung einer neuen Simulation können somit Kosten gespart werden. Auch wird damit die Komplexität des Simulationssystem reduziert, da einzelne Simulationsbausteine geändert werden können, ohne dass die anderen Simulationsbausteine durch die Änderungen betroffen sind. Da sich die Simulation des komplexen Systems in emergenter Weise aus den Einzelsimulationen der Subsysteme durch die Simulationsbausteine ergibt, können auch hochkomplexe Systeme mittels einer großen Zahl einzelner Simulationsbausteine simuliert werden.
Durch das Aufteilen der Simulation in Simulationsbausteine ist es möglich, die Simulation verteilt ablaufen zu lassen, so dass sie auf mehreren Rechnern bzw. Rechnerkernen ausgeführt werden kann. Insbesondere können die einzelnen ser- ver- und/oder ellenseitigen Komponenten parallel auf mehreren Rechnerkernen ausgeführt werden. Komplexe Systeme können damit in einer Server-Cloud simuliert werden.
Gemäß einer Ausführungsform der Erfindung umfasst das Verfahren optional wei- ter den Schritt von: Ansteuern eines Hardware-Subsystems und/oder Ansteue- rung eines Software Subsystems (wie z.B. Interaktion mit Originalsoftware) des komplexen Systems durch einen Simulationsbaustein. Dabei können Ausgabedaten des Hardware-Subsystems durch den Simulationsbaustein erfasst und/oder Simulationsdaten durch den Simulationsbaustein erzeugt werden. Mit anderen Worten kann der Simulationsbaustein eine Schnittstelle zu einer realen Komponente des komplexen Systems darstellen. Beispielsweise kann eine reale elektronische Steuerung des komplexen Systems in die Simulation eingebunden werden. Auf diese Weise kann das Verhalten der Steuerung im Zusammenspiel mit anderen Subsystemen des komplexen Systems untersucht werden.
Gemäß einer Ausführungsform der Erfindung umfasst das Verfahren weiter den Schritt von: Übermitteln der Anwenderinteraktion und/oder Simulationsdaten zwischen einer clientseitigen Komponente und einer serverseitigen Komponente über ein Kommunikationsnetzwerk. Auf diese Weise ist eine geräteunabhängige Nut- zung des Simulationssystems im Netzbetrieb möglich. Als Client bzw. Träger der clientseitigen Komponente können beispielsweise eine Workstation, ein Notebook, ein SmartPad oder ein iPhone verwendet werden.
Simulationsdaten können dabei Daten sein, die Zustände des betreffenden Sub- Systems beschreiben, wie etwa die Drehgeschwindigkeit eines Motors, die Schalterstellung eines Schalters, oder die elektrische Leistung, die von dem Motor aufgenommen wird. Die Simulationsdaten können einerseits von anderen Simulationsbausteinen dazu verwendet werden, das jeweils zugeordnete Subsystem basierend auf diesen Simulationsdaten zu simulieren. Beispielsweise könnte ein Baustein, der einen Ventilator simuliert, die Drehgeschwindigkeit eines Simulati- onsbausteins übernehmen, der einen Motor simuliert. Anderseits können die Simulationsdaten zum Darstellen des jeweiligen Subsystems verwendet werden. Ein Client-Rechner könnte beispielsweise einen sich drehenden Ventilator darstellen, wenn die zugehörige Drehgeschwindigkeit ungleich Null ist.
Gemäß einer Ausführungsform der Erfindung wird das Subsystem durch einen Web-Browser dargestellt. Beispielsweise ist die clientseitige Komponente mittels einer browserbasierten Sprache implementiert. Eine derartige Sprache könnte beispielsweise JavaScripts sein. Aber auch DART oder C/C++ sind möglich, falls dies vom jeweiligen Web-Browser verarbeitet wird. Auf diese Weise wird es möglich, dass jedes Standard-Device als Client-Rechner verwendbar ist, das einen HTML 5 fähigen und WebGL fähigen Browser umfasst, der dann die benötigten clientseitigen Komponenten des Simulationssystems herunterlädt. Gemäß einer Ausführungsform der Erfindung umfasst das Verfahren weiter die Schritte von: Übermitteln von Simulationsdaten von einem ersten Simulationsbaustein zu einem zweiten Simulationsbaustein; Simulieren eines dem zweiten Simulationsbaustein zugeordneten Subsystems basierend auf den Simulationsdaten. Wie bereits gesagt sind die Simulationsbausteine modular aufgebaut und können so stark voneinander getrennt sein, dass nur ein Datenaustausch, aber keine gegenseitigen Funktionsaufrufe stattfinden.
Gemäß einer Ausführungsform der Erfindung umfasst das Verfahren weiter den Schritt von: Übermitteln der Simulationsdaten mittels Nachrichtenpaketen zwi- sehen den Simulationsbausteinen. Somit können die Simulationsbausteine auf einfache Art und Weise auf verschiedenen Server-Rechnern installiert werden und/oder parallel ausgeführt werden. Auch sind die Simulationsbausteine voneinander abgegrenzt und können sich gegenseitig nur mittels Nachrichten beeinflussen. Dies kann auch einen Austausch bzw. ein Ändern von Simulationsbau- steinen erleichtern. Gemäß einer Ausführungsform der Erfindung sind die serverseitigen Komponenten mittels einer JVM-basierten Sprache implementiert. Ein Beispiel einer derartigen Sprache stellt SCALA dar. Insbesondere können die Simulationsbausteine Java-Module sein.
Gemäß einer Ausführungsform der Erfindung werden die clientseitigen Komponenten in einem Client ausgeführt und die serverseitigen Komponenten in einem Server ausgeführt, der über ein Kommunikationsnetzwerk mit dem Client verbun- den ist. Client und Server können Software-Komponenten in einem einzigen
Rechner sein. Der Client kann ein Client-Rechner und der Server kann ein Server- Rechner sein.
Ein weiterer Aspekt der Erfindung betrifft Programmelemente, die, wenn sie auf wenigstens einem Prozessor ausgeführt werden, den wenigstens einen Prozessor dazu anleiten, die Schritte des Verfahrens durchzuführen, so wie es obenstehend und untenstehend beschrieben ist. Die Programmelemente können Java-Module, Module von auf Java basierenden Programmiersprachen, JavaScript-Module, Module von browserbasierten Sprachen und Templates wie etwa XML-Templates umfassen. Die Programmelemente können zusammen ein Computerprogramm bilden, das dazu ausgeführt ist, das Simulationsverfahren, so wie obenstehend und untenstehend beschrieben, durchzuführen.
Ein weiterer Aspekt der Erfindung betrifft ein computerlesbares Medium, auf dem derartige Programmelemente gespeichert sind. Ein computerlesbares Medium kann dabei eine Diskette, eine Harddisk, ein USB-Speichergerät, ein RAM, ein ROM oder ein EPROM sein. Ein computerlesbares Medium kann auch ein Datenkommunikationsnetzwerk sein, wie beispielsweise das Internet, das den Download eines Programmcodes ermöglicht. Ein weiterer Aspekt der Erfindung betrifft das Verwenden des Simulationsverfahrens zum Trainieren eines Technikers für das Warten und/oder Reparieren des komplexen Systems. Durch die entsprechend zusammengefügten Simulationsbausteine können Trainings- und Verhaltensmethoden bereitgestellt werden, die auf das Verhalten bzw. die Interaktion eines Anwenders (d.h. des Technikers), eingehen und somit ein nicht-lineares Training ermöglichen.
Ein weiterer Aspekt der Erfindung betrifft ein Simulationssystem, das dazu ausgeführt ist, ein komplexes System zu simulieren.
Gemäß einer Ausführungsform der Erfindung umfasst das Simulationssystem wenigstens einen Rechner, in dem Simulationsbausteine gespeichert sind, die jeweils eine clientseitige Komponente und eine serverseitige Komponente umfassen. Beispielsweise umfasst das Simulationssystem wenigstens einen Client-Rechner und einen Server-Rechner, in denen die jeweiligen Komponenten gespeichert sind. Ein Simulationsbaustein ist einem Subsystem des komplexen Systems zugeordnet . Eine clientseitige Komponente eines Subsystems ist dazu ausgeführt, eine Anwenderinteraktion mit dem simulierten Subsystem zu erfassen und das simulierte Subsystem auf dem Client (bzw. dessen Bildschirm) darzustellen. Eine serversei- tige Komponente ist dazu ausgeführt, das Subsystem basierend auf der Anwenderinteraktion zu simulieren.
Gemäß einer Ausführungsform der Erfindung umfasst das Simulationssystem weiter ein optionales Hardware-Subsystem des komplexen Systems. Wenigstens ei- ner der Simulationsbausteine ist dazu ausgeführt, das Hardware-Subsystem anzusteuern und/oder Ausgabedaten des Hardware-Subsystems zu erfassen.
Das Simulationssystem kann als Trainingssystem im Wartungsbereich für die Luft- fahrzeugwartung eingesetzt werden. Auch kann das Simulationssystem als uni- verselles Trainingssystem im industriellen und nicht-industriellen Bereich einge- setzt werden, beispielsweise in der Zulieferindustrie oder in der allgemeinen technischen Industrie. Als Beispiel seien mittelständische Betriebe in der Kfz-Industrie genannt, die ihre Mitarbeiter nicht regelmäßig zu Schulungen schicken können, und die mit dem Simulationssystem geführte Anleitungen zum Ein- und Ausbau von Fahrzeugkomponenten oder zur Wartung erhalten. Auch könnte beim Kauf von Möbeln diesen eine interaktive, dreidimensionale Anleitung beigefügt werden (beispielsweise über einen Internet-Link), die den Aufbau der Möbel beschreibt.
Auch kann das Simulationssystem im staatlichen Bildungs- und Schulsystem ein- gesetzt werden.
Im Folgenden werden Ausführungsbeispiele der Erfindung mit Bezug auf die beiliegenden Figuren detailliert beschrieben. KURZE BESCHREIBUNG DER FIGUREN
Fig. 1 zeigt eine schematische Ansicht eines Simulationssystems gemäß einer Ausführungsform der Erfindung. Fig. 2 zeigt ein Sequenzdiagramm für ein Verfahren zum Simulieren eines komplexen Systems gemäß einer Ausführungsform der Erfindung.
Grundsätzlich sind identische oder ähnliche Teile mit den gleichen Bezugszeichen versehen.
DETAILLIERTE BESCHREIBUNG VON AUSFÜHRUNGSBEISPIELEN
Fig. 1 zeigt ein Simulationssystem 10, das einen oder mehrere Clients 12 und mehrere Server 14a, 14b umfasst, die mit dem Client 12 mittels eines Kommunika- tionsnetzwerks 16, beispielsweise eines IP-Netzwerks oder dem Internet, verbun- den sind. Es ist zu verstehen, dass das System 10 weitere Clients 12 umfassen kann, an denen mehrere Anwender 18 gleichzeitig mit dem System 10 interagie- ren können. Wenn im Folgenden von dem Client 12 die Rede ist, können auch mehrere Clients 12 gemeint sein.
Der Client 12 und die Server 14a, 14b können eigenständige Rechner, d. h. ein Client-Rechner 12 und zwei Server-Rechner 14a, 14b sein. Es ist aber auch möglich, dass der Client 12 oder die Server 14a, 14b Komponenten in einem Rechner sind, der den Client 12 und die Server 14a, 14b umfasst.
Der Client 12 kann ein PC, Laptop, Tablet, Smartphone oder ähnliches Gerät sein, dass dazu in der Lage ist, über das Kommunikationsnetzwerks 16, beispielsweise das Internet, zu kommunizieren, und auf dem Standard-Software installiert ist, mit der HTML-Seiten angezeigt und JavaScript ausgeführt werden kann, wie etwa einem Web-Browser. Der Client 12 dient dazu, die Eingaben bzw. Bedienungen eines Anwenders 18 zu erfassen und an die Server 14a, 14b weiterzuleiten. Außerdem werden Simulationsergebnisse, die von den Servern 14a, 14b erzeugt werden, durch den Client 12 grafisch oder textuell auf einem Bildschirm dargestellt.
In den Rechnern 12, 14a, 14b des Simulationssystems sind Software-Bausteine 20a, 20b, 20c, 20d gespeichert, die Subsystemen eines komplexen Systems zugeordnet sind. Das komplexe System kann beispielsweise ein elektrisches, mechanisches, elektromechanisches, hydraulisches und/oder elektronisches Gerät oder System sein, wie sie etwa in Flugzeugen, Fahrzeugen, Kraftwerken, oder im allgemeinen in beliebigen technischen Anlagen enthalten sind. Ein Subsystem eines komplexen Systems kann ein Bedienelement, eine elektrische oder elektronische Steuerung, ein Sensor, ein Aktuator oder ähnliches sein. Durch die Software-Bausteine 20a, 20b, 20c, 20d ist das System 10 dazu in der Lage, das komplexe System zu simulieren. Es ist möglich, dass das System 10 nicht nur ein komplexes System simuliert, sondern eine Mehrzahl von komplexen Systemen. Die Simulationen der komplexen Systeme können miteinander verbun- den sein und sich gegenseitig beeinflussen.
Ein Anwender 18 kann über einen Client 12 gleichzeitig mit allen Simulationen interagieren. Wenn mehrere Anwender 18 mit mehreren Clients 12 mit dem System 10 verbunden sind, können auch mehrere Anwender 18 gleichzeitig mit meh- reren Simulationen interagieren. Zwischen den Simulationen und den Clients 12 kann eine m:n-Beziehung bestehen.
Als vereinfachendes Beispiel kann das komplexe System einen Kippschalter, eine Motorsteuerung, einen Motor und einen Ventilator umfassen. Die Bausteine 20a, 20b, 20c, 20d dienen dann zum Simulieren eines dieser Subsysteme.
Da die Software-Bausteine 20a, 20b, 20c, 20d wenigstens eine serverseitige Komponente 22a, 22b, 22c, 22d und wenigstens eine clientseitige Komponente 24a, 24b, 24c, 24d umfassen, sind sie in der Fig. 1 als gestrichelte Linien darge- stellt. Im Allgemeinen kann ein Subsystem durch ein oder mehrere serverseitige Komponenten 22a, 22b, 22c, 22d und/oder durch ein oder mehrere clientseitige Komponenten 24a, 24b, 24c, 24d simuliert werden. Zwischen den serverseitigen Komponenten 22a, 22b, 22c, 22d und den ellenseitigen Komponenten 24a, 24b, 24c, 24d eines Subsystems kann eine m:n-Beziehung bestehen.
Die clientseitige Komponente 24a, 24b, 24c, 24d dient dabei zum Darstellen (grafischen und/oder textuellen Simulieren) des Subsystems und zum Erfassen einer Interaktion mit dem Anwender 18. Beispielsweise kann die clientseitige Komponente 24a einen Kippschalter darstellen und nach dem Betätigen durch den Be- nutzer 18 den Kippschalter in einem anderen Kippzustand darstellen. Die clientsei- tigen Komponenten 24a, 24b, 24c, 24d können beispielsweise mit JavaScript implementiert sein.
Zur Darstellung eines Subsystems können im Client 12 dreidimensionale Darstel- lungen des Subsystems gespeichert sein, oder im Bedarfsfall von den Servern 14a, 14b an den Client gesendet werden. Weiter können im Client 12 und/oder in einem Server 14a, 14b Templates (beispielsweise XML-Templates) gespeichert sein, mit denen die möglichen betätigbaren Zustände und Interaktionen mit dem Anwender 18 definiert sind.
Die serverseitige Komponente 22a, 22b, 22c, 22d eines Bausteins 20a, 20b, 20c, 20d dient zum Simulieren des entsprechenden Subsystems des komplexen Systems. Zur Kommunikation kann eine serverseitige Komponente 22a, 22b, 22c, 22d Anwenderbetätigungen bzw. Interaktionen des Anwenders von der entsprechen- den clientseitigen Komponente 24a, 24b, 24c, 24d empfangen, die diese Informationen über das Kommunikationsnetzwerk 16 an die serverseitige Komponente 22a, 22b, 22c, 22d gesendet hat. Umgekehrt kann eine serverseitige Komponente 22a, 22b, 22c, 22d ein Simulationsergebnis 26 an die entsprechende clientseitige Komponente 24a, 24b, 24c, 24d über das Kommunikationsnetzwerk 16 versen- den.
Ein Simulationsergebnis 26 umfasst dabei Daten, die Informationen über einen Zustand des zu simulierenden Subsystems enthalten, wie beispielsweise„Kippschalter wurde erfolgreich gekippt" oder„Motor dreht sich mit einer Geschwindig- keit von 30 RPM".
Die serverseitigen Komponenten 22a, 22b, 22c, 22d sind in einer JVM-(Java Virtual Machine)-basierten Sprache, z. B. Java, Scala, Groovy, Clojure, usw. implementiert und können in einer virtuellen Maschine (JVM) in den Servern 14a, 14b ausgeführt werden. Die serverseitigen Komponenten 22a, 22b, 22c, 22d können Java-Module sein.
Wie in der Fig. 1 dargestellt, ist es möglich, dass die serverseitigen Komponenten 22a, 22b, 22c, 22d über mehrere Server 14a, 14b verteilt sind. Es ist aber auch möglich, dass sie in lediglich einem Server installiert sind.
Untereinander kommunizieren die serverseitigen Komponenten 22a, 22b, 22c, 22d mit einem in den Server 14a, 14b installierten Messaging-(Nachrichten)-System, wie etwa Akka (ein Actor-Message-System).
Weiter kann das Simulationssystem 10 eine (reale) Hardware-Komponente 28 des komplexen Systems umfassen, dessen andere Subsysteme von dem Simulationssystem 10 simuliert werden. Beispielsweise kann die Hardware-Komponente 28 eine Motorsteuerung sein, die von der serverseitigen Komponente 22c über eine Kommunikationsverbindung 30 angesprochen werden kann.
Die Fig. 2 zeigt ein Sequenzdiagramm für einen beispielhaften Ablauf einer Simulation.
Im Schritt 100 betätigt der Benutzer eine clientseitige Komponente 24a, indem er beispielsweise mit dem Mauszeiger auf eine Darstellung des entsprechenden Subsystems klickt. Diese Darstellung kann beispielsweise einen Kippschalter darstellen.
Anschließend versendet die clientseitige Komponente 24a diese Interaktion an die entsprechende serverseitige Komponente 22a im ersten Rechner 14a.
Im Schritt 102 simuliert die serverseitige Komponente 22a das entsprechende Subsystem (beispielsweise den Kippschalter). Beispielsweise kann in die Server- seitige Komponente 22a abgebildet sein, dass der Kippschalter unter Umständen einen Defekt hat und in diesem Fall der Schalter zwar optisch umgekippt wird, was die serverseitige Komponente 22a der ellenseitigen Komponente 24a als Erstes Simulationsergebnis 26a mitteilt, der Kippschalter aber keinen Stromkreis schließt.
Im Schritt 118 wird dann die Darstellung des Kippschalters durch die clientseitige Komponente 24a im Client 12 entsprechend angepasst.
Im Beispiel der Fig. 2 wird jedoch simuliert, dass der Kippschalter einen Strom- kreis schließt und damit der Motor und die Steuerung des komplexen Systems bestromt werden. Dazu erzeugt die serverseitige Komponente 22a eine Nachricht 32, die an die serverseitige Komponente 22c (die die Steuerung simuliert) und die serverseitige Komponente 22d (die den Motor simuliert) versendet werden. Im Schritt 104 beginnt die serverseitige Komponente 22c ihren Teil der Simulation, wobei jedoch die (reale) Hardware-Komponente 28 einbezogen wird. Die serverseitige Komponente 22c kann beispielsweise Steuerdaten 34 an die Hardware- Komponente 28 versenden (wie etwa eine gewünschte Drehgeschwindigkeit). Die Steuerdaten 34 werden dann im Schritt 106 von der Hardware-Komponente 28 verarbeitet, die dann weitere Ausgabedaten 36 erzeugt, die dann von der ser- verseitigen Komponente 22c weiterverarbeitet werden. Ist die Hardware- Komponente 28 beispielsweise eine Motorsteuerung, können die Ausgabedaten 36 Informationen zum Kommutieren des Motors umfassen.
Die Ausgabedaten 36 können von der serverseitigen Komponente 22c weiterverarbeitet werden und in einer Nachricht 38 an die serverseitige Komponente 22d (zur Simulation des Motors) versendet werden. Im Schritt 110 empfängt die serverseitige Komponente 22d die Ausgabedaten 36 in der Nachricht 38 und auch die Nachricht 32, dass der Stromkreis vom Kippschalter geschlossen wurde. Mit diesen Daten simuliert die serverseitige Komponente 22d dann einen Motor. Beispielsweise kann aus den Ausgabedaten 36 er- mittelt werden, wie schnell sich der Motor dreht oder ob er sich überhaupt dreht.
Die Drehgeschwindigkeit des Motors kann als zweites Simulationsergebnis 26b an die clientseitige Komponente 24c übermittelt werden, die im Schritt 112 den sich drehenden Motor im Web-Browser auf dem Client 12 darstellt.
Weiter wird die Drehgeschwindigkeit des Motors in einer Nachricht 40 an die clientseitige Komponente 22b ermittelt, die im Schritt 114 den Ventilator simuliert und eine entsprechende Drehgeschwindigkeit des Ventilators als drittes Simulationsergebnis 26c an die clientseitige Komponente 24b übermittelt, die dann im Schritt 116 die Darstellung im Client 12 entsprechend anpasst.
Ergänzend ist darauf hinzuweisen, dass„umfassend" keine anderen Elemente oder Schritte ausschließt und„eine" oder„ein" keine Vielzahl ausschließt. Ferner sei darauf hingewiesen, dass Merkmale oder Schritte, die mit Verweis auf eines der obigen Ausführungsbeispiele beschrieben worden sind, auch in Kombination mit anderen Merkmalen oder Schritten anderer oben beschriebener Ausführungsbeispiele verwendet werden können. Bezugszeichen in den Ansprüchen sind nicht als Einschränkung anzusehen.

Claims

Patentansprüche
1. Verfahren zum Simulieren eines komplexen Systems,
wobei das komplexe System in eine Mehrzahl von Simulationsbausteinen (20a, 20b, 20c, 20d) abgebildet ist, wobei jeder Simulationsbaustein einem Subsystem des komplexen Systems zugeordnet ist, wobei jeder Simulationsbaustein wenigstens eine clientseitige Simulationskomponente (24a, 24b, 24c, 24d) und eine serverseitige Simulationskomponente (22a, 22b, 22c, 22d) umfasst;
wobei das Verfahren die Schritte umfasst:
Erfassen einer Anwenderinteraktion mit wenigstens einer clientseitigen Simulationskomponente (24a, 24b, 24c, 24d);
Simulieren des komplexen Systems in serverseitigen Simulationskomponenten basierend auf der Anwenderinteraktion, wobei durch die serverseitigen Simulationskomponenten Simulationsdaten für die Subsysteme erzeugt werden;
Darstellen des Subsystems basierend auf den Simulationsdaten durch die entsprechenden clientseitigen Komponenten (24a, 24b, 24c, 24d).
2. Verfahren nach Anspruch 1 , weiter umfassend die Schritte:
Ansteuern eines Hardware-Subsystems (28) des komplexen Systems durch einen Simulationsbaustein (20c);
Erfassen von Ausgabedaten des Hardware-Subsystems durch den Simulationsbaustein (20c);
Erzeugen von Simulationsdaten durch den Simulationsbaustein (20c).
3. Verfahren nach einem der vorhergehenden Ansprüche, weiter umfassend den Schritt:
Übermitteln der Anwenderinteraktion und/oder Simulationsdaten zwischen einer clientseitigen Komponente (24a, 24b, 24c, 24d) und einer serverseitigen Komponente über ein Kommunikationsnetzwerk (16).
4. Verfahren nach einem der vorhergehenden Ansprüche,
wobei das Subsystem durch einen Web-Browser dargestellt wird; und/oder wobei die clientseitige Komponente (24a, 24b, 24c, 24d) mittels einer browserbasierten Sprache implementiert ist.
5. Verfahren nach einem der vorhergehenden Ansprüche, weiter umfassend die Schritte:
Übermitteln von Simulationsdaten von einem ersten Simulationsbaustein (22a, 22b, 22c, 22d) zu einem zweiten Simulationsbaustein (22a, 22b, 22c, 22d);
Simulieren eines dem zweiten Simulationsbaustein zugeordneten Subsystems basierend auf den Simulationsdaten.
6. Verfahren nach einem der vorhergehenden Ansprüche, weiter umfassend den Schritt:
Übermitteln der Simulationsdaten mittels Nächrichtenpaketen zwischen den
Simulationsbausteinen (22a, 22b, 22c, 22d).
7. Verfahren nach einem der vorhergehenden Ansprüche,
wobei die serverseitigen Komponenten (22a, 22b, 22c, 22d) mittels
JVM basierten Sprache implementiert sind.
8. Verfahren nach einem der vorhergehenden Ansprüche,
wobei die ellenseitigen Komponenten (24a, 24b, 24c, 24d) in einem Client ausgeführt werden;
wobei die serverseitigen Komponenten (22a, 22b, 22c, 22d) in einem Server ausgeführt werden, der über ein Kommunikationsnetzwerk (16) mit dem Client verbunden ist.
9. Programmelemente, die, wenn sie auf wenigstens einem Prozessor ausgeführt werden, den wenigstens einen Prozessor dazu anleiten, die Schritte des Verfahrens nach einem der Ansprüche 1 bis 8 durchzuführen
10. Computerlesbares Medium, auf dem Programmelemente nach Anspruch 9 gespeichert sind.
11. Verwenden eines Verfahrens nach einem der Ansprüche 1 bis 8 zum Trainieren eines Technikers für die Wartung eines komplexen Systems.
12. Simulationssystem (10) für ein komplexes System, das Simulationssystem (10) umfassend:
wenigstens einen Rechner (12, 14a, 14b), in dem Simulationsbausteine (20a, 20b, 20c, 20d) gespeichert sind, die jeweils eine clientseitige Komponente (24a, 24b, 24c, 24d) und eine serverseitige Komponente (22a, 22b, 22c, 22d) umfassen; wobei ein Simulationsbaustein einem Subsystem des komplexen Systems zugeordnet ist;
wobei eine clientseitige Komponente (24a, 24b, 24c, 24d), die einem Subsystem zugeordnet ist, dazu ausgeführt ist, ein Anwenderinteraktion mit dem simulier- ten Subsystem zu erfassen und das simulierte Subsystem darzustellen;
wobei eine serverseitige Komponente (22a, 22b, 22c, 22d) dazu ausgeführt ist, das Subsystem basierend auf der Anwenderinteraktion zu simulieren.
13. Simulationssystem (10) nach Anspruch 12, weiter umfassend:
ein Hardware-Subsystem (28) des komplexen Systems;
wobei wenigstens einer der Simulationsbausteine (20a, 20b, 20c, 20d) dazu ausgeführt ist, das Hardware-Subsystem (28) anzusteuern und Ausgabedaten des Hardware-Subsystems zu erfassen.
PCT/DE2013/000311 2012-06-19 2013-06-10 Simulieren eines komplexen systems WO2013189475A1 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
AU2013279856A AU2013279856B2 (en) 2012-06-19 2013-06-10 Simulation of a complex system
US14/409,095 US10839704B2 (en) 2012-06-19 2013-06-10 Simulation of a complex system
CA2876727A CA2876727A1 (en) 2012-06-19 2013-06-10 Simulation of a complex system
EP13745333.8A EP2862075B1 (de) 2012-06-19 2013-06-10 Simulieren eines komplexen systems

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102012012044A DE102012012044A1 (de) 2012-06-19 2012-06-19 Simulieren eines komplexen Systems
DE102012012044.3 2012-06-19

Publications (1)

Publication Number Publication Date
WO2013189475A1 true WO2013189475A1 (de) 2013-12-27

Family

ID=48917292

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2013/000311 WO2013189475A1 (de) 2012-06-19 2013-06-10 Simulieren eines komplexen systems

Country Status (6)

Country Link
US (1) US10839704B2 (de)
EP (1) EP2862075B1 (de)
AU (1) AU2013279856B2 (de)
CA (1) CA2876727A1 (de)
DE (1) DE102012012044A1 (de)
WO (1) WO2013189475A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9619611B2 (en) * 2014-09-25 2017-04-11 Cae Inc Modeling tool, method and computer program product for dynamically generating a maintenance simulation of a vehicle
GB2582082B (en) 2017-12-26 2022-08-17 Landmark Graphics Corp Effective representation of complex three-dimensional simulation results for real-time operations

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007109507A2 (en) * 2006-03-17 2007-09-27 Commercial Level Simulations, Ltd. Pc-based simulator training system and methods
US20070286089A1 (en) * 2006-03-10 2007-12-13 Edsa Micro Corporation Systems and methods for predictive monitoring including real-time strength and security analysis in an electrical power distribution system
US20080104609A1 (en) * 2006-10-26 2008-05-01 D Amora Bruce D System and method for load balancing distributed simulations in virtual environments
DE102011114225B3 (de) * 2011-09-23 2012-06-14 Lfk-Lenkflugkörpersysteme Gmbh Flugkörper-Trainingseinheit

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3919720A (en) * 1973-02-23 1975-11-11 Westinghouse Electric Corp Nuclear power plant training simulator modeling organization and method
US6983227B1 (en) * 1995-01-17 2006-01-03 Intertech Ventures, Ltd. Virtual models of complex systems
JP2005532575A (ja) * 2000-09-08 2005-10-27 ハネウェル・インターナショナル・インコーポレーテッド パイロット向けインターネット実習システムおよび方法
CA2631412A1 (en) * 2005-11-28 2007-05-31 L-3 Communications Corporation Distributed physics based training system and methods
US20080168092A1 (en) * 2007-01-10 2008-07-10 General Electric Company Systems and methods for turbine control simulation
US8209158B1 (en) * 2008-07-03 2012-06-26 The Mathworks, Inc. Processor-in-the-loop co-simulation of a model

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070286089A1 (en) * 2006-03-10 2007-12-13 Edsa Micro Corporation Systems and methods for predictive monitoring including real-time strength and security analysis in an electrical power distribution system
WO2007109507A2 (en) * 2006-03-17 2007-09-27 Commercial Level Simulations, Ltd. Pc-based simulator training system and methods
US20080104609A1 (en) * 2006-10-26 2008-05-01 D Amora Bruce D System and method for load balancing distributed simulations in virtual environments
DE102011114225B3 (de) * 2011-09-23 2012-06-14 Lfk-Lenkflugkörpersysteme Gmbh Flugkörper-Trainingseinheit

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
BLUEMEL E ET AL: "Virtual environments for tbe training of maintenance and service tasks", MACHINE LEARNING AND CYBERNETICS, 2003 INTERNATIONAL CONFERENCE ON; [WINTER SIMULATION CONFERENCE], IEEE, PISCATAWAY, NJ, USA, vol. 2, 7 December 2003 (2003-12-07), pages 2001 - 2007, XP010679968, ISBN: 978-0-7803-8131-5, DOI: 10.1109/WSC.2003.1261664 *
K. ENGEL, P. HASTREITER, B. TOMANDL, K. EBERHARDT, T. ERTL: "Combining Local and Remote Visualization Techniques for Interactive Volume Rendering in Medical Applications", PROCEEDINGS OF THE CONFERENCE ON VISUALIZATION '00, 2000, IEEE Computer Society Press Los Alamitos, CA, USA, XP002715698, ISBN: 1-58113-309-X, Retrieved from the Internet <URL:http://dl.acm.org/citation.cfm?id=375294> [retrieved on 20131010] *
MISRA JAYADEV: "Distributed discrete-event simulation", ACM COMPUTING SURVEYS, vol. Volume 18, no. Issue 1, March 1986 (1986-03-01), ACM New York, NY, USA, pages 39 - 65, XP002715699, Retrieved from the Internet <URL:http://dl.acm.org/citation.cfm?id=6485> [retrieved on 20131030], DOI: 10.1145/6462.6485 *
ZHI CHAOYOU ET AL: "A distributed system for aircraft hydraulic system simulation test based on LXI", AUTOTESTCON, 2008 IEEE, IEEE, PISCATAWAY, NJ, USA, 8 September 2008 (2008-09-08), pages 185 - 188, XP031355027, ISBN: 978-1-4244-2225-8 *

Also Published As

Publication number Publication date
US10839704B2 (en) 2020-11-17
CA2876727A1 (en) 2013-12-27
EP2862075A1 (de) 2015-04-22
EP2862075B1 (de) 2022-05-18
US20150194062A1 (en) 2015-07-09
AU2013279856B2 (en) 2018-07-05
DE102012012044A1 (de) 2013-12-19
AU2013279856A1 (en) 2015-02-05

Similar Documents

Publication Publication Date Title
EP2685382B1 (de) Verfahren und Vorrichtung zum Erstellen und Testen eines Steuergeräteprogramms
DE102015004127A1 (de) Verfahren und System zum Vergleichen von verschienenen Versionen einer cloud-basierten Anwendung in einer Produktionsumgebung unter Verwendung von getrennten Back-End-Systemen
DE102017211433B4 (de) Verfahren zum Durchführen eines Funktionstests eines Steuergeräts in einem Hardware-in-the-Loop-Test, HIL-Test, sowie HIL-Prüfstand und Steuergerät
DE102011077319B4 (de) Simulationssystem, Verfahren zur Durchführung einer Simulation, Leitsystem und Computerprogrammprodukt
EP1906377A1 (de) System und Verfahren zur Integration eines Prozessleitsystems in einen Trainingssimulator
EP1763710B1 (de) Verfahren zur simulation einer technischen anlage
EP2595016A1 (de) Verfahren, Computerprogramm, computerlesbares Medium und Recheneinheit zur Bedienung von Feldgeräten
DE102017120016A1 (de) Verfahren zur Konfiguration eines zum Testen eines elektronischen Steuergeräts eingerichteten Testgeräts sowie Konfigurationssystem
WO2019223970A1 (de) Erstellung eines interdisziplinären simulationsmodells
EP3832517A1 (de) Computerimplementiertes verfahren zur einbindung mindestens eines signalwerts in einem virtuellen steuergerät
EP3956750A1 (de) System und verfahren zur simulation von industrieprozessen
DE102010025954A1 (de) Verfahren und Anordnung zur vollständigen oder teilweisen Nachbildung und/oder Simulation eines Automatisierungssystems
DE112013007637T5 (de) Systementwicklungs-Unterstützungsvorrichtung
EP2862075B1 (de) Simulieren eines komplexen systems
DE102017109132A1 (de) Verfahren und IT-Infrastruktur zum modellbasierten Testen von Software für ein Fahrzeug-Anwendungssystem und zum Bereitstellen entsprechender Testergebnisse
EP3151217A1 (de) Operator-training-system
EP2620868A1 (de) Arbeitsfluss-Management-System für Computernetze
DE102017130842A1 (de) Konfigurationssystem zur Konfiguration eines zum Testen eines elektronischen Steuergeräts geeigneten Testsystems
DE102020204866B4 (de) Verfahren und Anordnung zum Bereitstellen eines Prüfstands zum Prüfen eines Verbundes aus Komponenten eines Kraftfahrzeugs
DE102021119116A1 (de) Technik zur Realisierung einer Visualisierung für eine automatisierungstechnische Anlage mit einer speicherprogrammierbaren Steuerung
WO2021052955A1 (de) System und verfahren zum bereitstellen einer digitalen nachbildung einer anlage und entsprechendes computerprogrammprodukt
DE102007045563A1 (de) Rechnerbasiertes Werkzeug und Verfahren zum Extrahieren des Funktionscodes von Steuergeräten
DE112018002344T5 (de) Entwicklungsunterstützungsvorrichtung
DE102013113969B4 (de) Dokumentation von Transaktionen zwischen Endgeräten und einem Server
EP4109194B1 (de) Sensordatengenerierung zum steuern eines autonomen fahrzeugs

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13745333

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2013745333

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2876727

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 14409095

Country of ref document: US

ENP Entry into the national phase

Ref document number: 2013279856

Country of ref document: AU

Date of ref document: 20130610

Kind code of ref document: A