KR101670307B1 - Method for enabling interoperation between component-based integrative simulation environment and matlab/simulink legacy simulation program, and an interface design method for interoperation - Google Patents

Method for enabling interoperation between component-based integrative simulation environment and matlab/simulink legacy simulation program, and an interface design method for interoperation Download PDF

Info

Publication number
KR101670307B1
KR101670307B1 KR1020150133348A KR20150133348A KR101670307B1 KR 101670307 B1 KR101670307 B1 KR 101670307B1 KR 1020150133348 A KR1020150133348 A KR 1020150133348A KR 20150133348 A KR20150133348 A KR 20150133348A KR 101670307 B1 KR101670307 B1 KR 101670307B1
Authority
KR
South Korea
Prior art keywords
legacy
simulation
function
matlab
simulink
Prior art date
Application number
KR1020150133348A
Other languages
Korean (ko)
Inventor
김도형
이상진
이태호
박주혜
Original Assignee
국방과학연구소
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 국방과학연구소 filed Critical 국방과학연구소
Priority to KR1020150133348A priority Critical patent/KR101670307B1/en
Application granted granted Critical
Publication of KR101670307B1 publication Critical patent/KR101670307B1/en

Links

Images

Classifications

    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F41WEAPONS
    • F41HARMOUR; ARMOURED TURRETS; ARMOURED OR ARMED VEHICLES; MEANS OF ATTACK OR DEFENCE, e.g. CAMOUFLAGE, IN GENERAL
    • F41H13/00Means of attack or defence not otherwise provided for

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The present invention relates to a simulation system, capable of providing an interworking method between a component-based integrative simulation environment and an MATLAB/SIMULINK legacy simulation program, and an interworking interface designing method. The legacy simulation program according to the present invention includes a legacy model developed under an MATLAB/SIMULINK environment to retain a legacy simulation engine and to independently perform a simulation. In addition, the component-based integrative simulation environment includes an AddSIM player including a component that permits dynamic reconfiguration. The data exchange and the time synchronization for the interworking between the AddSim players and the legacy model are performed under the control of a simulation kernel of the component-based integrative simulation environment (AddSim).

Description

TECHNICAL FIELD [0001] The present invention relates to a method for interworking between a component-based integrated simulation environment and a MATLAB / SIMULINK legacy simulation program, and a method for designing an interfaced interface,

More particularly, the present invention relates to a method for interworking between a model developed in a component-based integrated simulation environment and a legacy model developed in a MATLAB / SIMULINK, Interworking interface design method.

A component-based integrated simulation environment (see AddSIM, Patent 10-1056682) that operates in a plug-ins and play manner (hereinafter referred to as AddSIM, see Patent 10-1056682), once developers have developed weapon system models, It is possible to modularize objects into components and maintainability and scalability.

However, many existing engineering / prototyping simulation models have been developed in a familiar development environment / language for each researcher and developer, and the complexity of the algorithm and the large amount of program code make it difficult to convert to the AddSIM model.

In this case, there is a need for a method of simulating a model (legacy model, legacy model) already created in another development environment (existing engineering class / engaging class simulation model development program) in conjunction with AddSIM.

There is MATLAB / SIMULINK, which is an environment (or program) to develop an engineering / combat class weapon system model. In the process of weapon system R & D, high-resolution engineering class weapon system model can be used variously in system design and testing by calculating system function and performance based on basic specification of system. The engineering / combat weapons system model is modeled as a continuous system model with a time scale of 1/1000 second, and includes basic engineering models such as dynamics and control systems of machines, aviation, vehicles, shipbuilding, etc. MATLAB / SIMULINK is widely used as a development environment (or program) for such engineering / combat weapon system model development.

One object of the present invention is to provide an interworking method and interworking interface capable of performing simulation by linking legacy models with AddSIM (or player) instead of converting legacy models made by MATLAB / SIMULINK legacy simulation program into AddSIM models .

The present invention includes a method of linking a legacy model developed in a MATLAB / SIMULINK environment with a model (player) of a component-based integrated simulation environment AddSIM, a whole interlocking structure, and a method of designing an interlocking interface structure according to the proposed method.

The legacy simulation program may be developed in a MATLAB / SIMULINK environment and may be used as a stand-alone simulation engine by using a unique simulation engine. In the simulated system, a legacy simulation program is interfaced with a component-based integrated simulation environment according to an embodiment of the present invention. A function related to communication, time control, and data exchange is generated through a legacy model and an S function automatic generator for performing simulation with the component-based integrated simulation environment using the generated function, And an S function unit for performing the S function.

Wherein the component based integrated simulation environment comprises: a player for performing a simulation by control of a simulation kernel in a component-based integrated simulation environment; a simulation kernel for controlling time synchronization and data exchange for interoperation between the player and the legacy simulation program; A legacy interworking agent running on the kernel and acting as an intermediary for exchanging time synchronization information and data information between the legacy simulation program and the simulation kernel; an interworking for communication between the legacy simulation program and the legacy interworking agent, And a ghost player for applying the model formed in the legacy simulation program to a component-based integrated simulation environment. It includes.

Wherein the simulation kernel reflects the model information formed in the legacy simulation program on the ghost player based on the data information received from the legacy simulation program and performs simulation on the basis of the information reflected on the ghost player, And controls the ghost player and the player to perform the ghost player and the player.

In an exemplary embodiment, the legacy simulation program requests time progress to the legacy interworking agent through the S function unit, and transmits data information corresponding to a model formed in the legacy simulation program.

In an embodiment, the legacy interworking agent may be configured to, when receiving data information corresponding to the time progress request and the model formed in the legacy simulation program, send the received time progress request to the simulation kernel to control the simulation time To the simulation kernel, and transmits data information corresponding to the model to the ghost player so that the model is reflected in the ghost player.

In an embodiment, the ghost player communicates with the player after reflecting the model, and the simulation kernel is adapted to send the time progress acknowledgment for the communication result and the time advance request to the legacy simulation program Thereby controlling the agent.

In an exemplary embodiment, the S function unit may include a time request S function module for time control, a data transmission S function module for data transmission, and a data reception S function module for data reception.

In an embodiment, the S function automatic generation unit may automatically generate a time request S function, a data transmission S function, and a data reception function based on the data input by the user request and the source code previously stored in the S function automatic generator S function.

Much of the engineering and prototyping simulation programs required in the weapon system research and development process have been developed as MATLAB / SIMULINK, which is a general engineering programming language such as C / C ++ and Fortran, as well as a traditional engineering / engaging simulation program development and execution environment . Simulation programs of each problem area are determined based on the complexity of the model and the number of entities participating in the simulation. Particularly, in the case of a simulation program in which the complexity of the algorithm is large and the amount of the program code is large, the process of converting to a player in the component-based integrated simulation environment becomes difficult in terms of time and economy.

In the legacy simulation program developed in the MATLAB / SIMULINK environment, when the legacy interworking agent is configured according to the AddSIM-legacy interworking method proposed in the present invention, the source code modification of the previously developed legacy simulation program is minimized, Since much of the necessary work is automated with the legacy interface, it can contribute to shortening the cost and development period required for interworking.

Also, according to the present invention, it is possible to solve the difficulty of converting the legacy models developed in the MATLAB / SIMULINK environment into the components of the AddSIM, and to reduce the cost of using the existing complex interworking middleware.

1 is a block diagram illustrating a simulation system in accordance with an embodiment of the present invention.
2 is a block diagram illustrating a legacy interface of a component-based integrated simulation environment in accordance with an embodiment of the present invention.
3 is a block diagram showing an S function part of a legacy simulation program according to an embodiment of the present invention.
4 is a block diagram illustrating a data item for automatically generating an S function of an S function automatic generator according to an exemplary embodiment of the present invention.
5 is a flowchart for explaining an interworking procedure of a component-based integrated simulation environment and a legacy simulation program according to an embodiment of the present invention.
6 is a conceptual diagram for explaining a method of applying a legacy model created by a legacy simulation program to a component-based integrated simulation environment in the present invention.
7 is a block diagram illustrating a structure of a ghost player according to an embodiment of the present invention.

Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, wherein like reference numerals are used to designate identical or similar elements, and redundant description thereof will be omitted. The suffix "module" and " part "for the components used in the following description are given or mixed in consideration of ease of specification, and do not have their own meaning or role. In the following description of the embodiments of the present invention, a detailed description of related arts will be omitted when it is determined that the gist of the embodiments disclosed herein may be blurred. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. , ≪ / RTI > equivalents, and alternatives.

Terms including ordinals, such as first, second, etc., may be used to describe various elements, but the elements are not limited to these terms. The terms are used only for the purpose of distinguishing one component from another.

It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

The singular expressions include plural expressions unless the context clearly dictates otherwise.

In the present application, the terms "comprises", "having", and the like are used to specify that a feature, a number, a step, an operation, an element, a component, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

Hereinafter, a method for interworking between a component-based integrated simulation environment and a MATLAB / SIMULINK legacy simulation program according to the present invention will be described in detail with reference to the accompanying drawings.

The present invention relates to a method and system for simulating a weapon system engineering class / engaging class simulation program (hereinafter referred to as a "MATLAB / SIMULINK legacy simulation program" or a "legacy simulation program") developed in a MATLAB / SIMULINK environment, AddSIM ') (a component representing the weapon system level object in AddSIM), a method for designing the interworking interface necessary to realize the actual interworking, and a user for time synchronization, data transmission and reception for enhancing user convenience This is a method for automatic generation of function blocks. In addition, the present invention includes a time synchronization method, a data exchange method, an AddSIM-MATLAB / SIMULINK interface design method, and a user function block automatic generation method between an AddSIM player and legacy simulation program objects.

1 is a block diagram illustrating a simulation system in accordance with an embodiment of the present invention.

Referring to FIG. 1, the simulation system 100 of the present invention may include a component-based integrated simulation environment (AddSIM) 200 and a MATLAB / SIMULINK legacy simulation program 300.

Here, the simulation system 100 may include at least one device. For example, if the simulation system 100 is a single device, the component-based integrated simulation environment 200 and the MATLAB / SIMULINK legacy simulation program can be provided (built, installed, and stored) in one device.

As another example, when the simulation system 100 is composed of at least two devices, for example, a server and a client, the component-based integrated simulation environment 200 is provided in the server, and the MATLAB / SIMULINK legacy The simulation program 200 may be provided to the client.

The simulation environment may be understood as meaning a simulation program, a simulation operating system, a simulation mode, or the like.

When the component-based integrated simulation environment (AddSIM) 200 and the MATLAB / SIMULINK legacy simulation program 300 are provided in one device, the AddSIM 200 and the MATLAB / Can be interworked within the device. When the AddSIM 200 is provided in the server and the MATLAB / SIMULINK legacy simulation program 300 is provided to the client, interworking between the AddSIM 200 and the MATLAB / SIMULINK legacy simulation program 300 is performed by the server Lt; RTI ID = 0.0 > client < / RTI >

The AddSIM 200 may include a simulation kernel 210, a player 220, a ghost player 230, a MATLAB / SIMULINK legacy interworking agent 240, and a MATLAB / SIMULINK legacy interface 250.

The MATLAB / SIMULINK legacy simulation program 300 includes a simulation engine 310, a legacy model 320, an S function automatic generator 330, an S function unit 340, a MATLAB / SIMULINK legacy interface 350, And the like.

First, the AddSIM 200 will be described in detail. The simulation kernel 210 (or the AddSIM kernel (engine)) can control components constituting the AddSIM 200 as a whole. Specifically, the simulation kernel 210 may control time synchronization and data exchange for interworking between the player 220, the ghost player 230, and the legacy model 320 of the MATLAB / SIMULINK legacy simulation program 300 .

The player 220 performs simulation by control of the simulation kernel in a component-based integrated simulation environment. The player 220 may be comprised of dynamically reconfigurable components under AddSIM. That is, the AddSIM players 220 configured with dynamically reconfigurable components perform simulations under the control of the AddSIM kernel (simulation kernel 210).

The MATLAB / SIMULINK legacy interworking agent 240 generates time synchronization information between the MATLAB / SIMULINK legacy simulation program 300 (or the legacy model 320) and the simulation kernel 210 under the control of the simulation kernel 210, It acts as an exchange medium for data information.

The MATLAB / SIMULINK legacy interface 250 (or the AddSIM-MATLAB / SIMULINK interworking interface) is interworking for communication, time control and data exchange between the legacy simulation program 300 and the MATLAB / SIMULINK legacy interworking agent 240 Provide procedures.

The MATLAB / SIMULINK legacy interfaces 250 and 350 may be included in the AddSIM 200 and the MATLAB / SIMULINK legacy simulation program 300.

The exchange of data between the AddSIM 200 and the MATLAB / SIMULINK legacy simulation program 300 (or between the legacy interworking agent 240 and the legacy model 320) is accomplished via TCP / IP socket communication, and the MATLAB / SIMULINK legacy Interface 250. < / RTI >

FIG. 2 is a block diagram illustrating a MATLAB / SIMULINK legacy interface 250 of AddSIM 200 according to one embodiment of the present invention.

Referring to FIG. 2, the MATLAB / SIMULINK legacy interface 250 may include an interface socket unit 252 and a socket data receiving unit 254.

The interface socket section 252 of the MATLAB / SIMULINK legacy interface 250 can be used to manage TCP / IP sockets, AddSIM and MATLAB / SIMULINK legacy simulation program connection management, server / client connection management, Management and so on. Specifically, the interface socket unit 252 includes socket creation management on the AddSIM 200 basis as a basis for communication between the MATLAB / SIMULINK legacy interworking agent 240 and the MATLAB / SIMULINK legacy model 320, MATLAB / SIMULINK legacy simulation It is possible to perform socket creation management on the program 300 side. In addition, the interface socket unit 252 can manage the connection and connection maintenance of the AddSIM 200 of the MATLAB / SIMULINK legacy simulation program 300.

In addition, the socket data receiver 254 of the MATLAB / SIMULINK legacy interface 250 manages interrupt messages such as data reception, time advance request reception, and the like. In the present invention, the entire interworking procedure can be simplified by implementing the MATLAB / SIMULINK legacy interface 250 as the interface socket unit 252 and the socket data receiving unit 254.

Also, the AddSIM 200 of the present invention includes a ghost player 230. The ghost player 230 may reflect (apply) the legacy model 320 of the MATLAB / SIMULINK legacy simulation program 300.

Specifically, in the present invention, the contents of the legacy model 320 are projected on the AddSIM 200 in order to simulate the legacy model 320 formed in the MATLAB / SIMULINK legacy simulation program 300 by the AddSIM 200 A ghost player 230 can be used.

Ghost player 230 may communicate with other players 220 in AddSIM 200 by reflecting the content of the legacy model 310 that is actually present in legacy simulation program 300 via the MATLAB / SIMULINK legacy interworking agent 240 Role. The method and the procedure will be described later in detail with reference to FIG. 6 and FIG.

Referring back to FIG. 1, the MATLAB / SIMULINK legacy simulation program 300 may include a legacy model 320 developed in a MATLAB / SIMULINK environment. The MATLAB / SIMULINK legacy simulation program 300 (or the legacy model 320) may have a legacy simulation engine 310 to perform simulation alone. The MATLAB / SIMULINK legacy simulation program 300 may generate a legacy model 320 used for simulation according to a user's request.

The MATLAB / SIMULINK legacy simulation program 300 (or a legacy simulation program developed in a MATLAB / SIMULINK environment) is a graphical programming tool in the form of a block diagram for modeling, simulating, and analyzing dynamic systems.

In the present invention, the functions of MATLAB / SIMULINK can be extended by inserting C, C ++, and Fortran codes into a MATLAB / SIMULINK block using the S-function of MATLAB / SIMULINK.

In the present invention, a legacy interfacing interface for MATLAB / SIMULINK for interworking (e.g., AddSIM-MATLAB / SIMULINK interworking) between AddSIM 200 and a MATLAB / SIMULINK legacy simulation program 300 and a user function for MATLAB / SIMULINK The block S-funtion generator (S-function automatic generator 330, Builder) is developed to improve user convenience and data communication reliability.

The S function auto generator 330 generates an S function related to communication, time control, and data exchange, and can implement the S function unit 320 using the generated S function. Specifically, the S-function automatic generator 330 may generate a time request S function for time control, a data transmission S function for data transmission, and a data reception S function for data reception. At this time, the S-function automatic generator 330 automatically generates a time request S function, a data transmission S (S) function, and a S-function automatic S-generator 330 based on the data input by a user request and the source code stored in the S- Function and a data reception S function can be generated.

The S function unit 340 may provide an interoperation procedure between the legacy simulation program 300 and the AddSIM 200 using the S function generated by the S function automatic generator 330. [ It can be understood that the S function unit 340 utilizes the functions of the legacy interfacing interface for MATLAB / SIMULINK and the user function block S-funtion generator for MATLAB / SIMULINK described above.

The MATLAB / SIMULINK legacy interface 350 included in the MATLAB / SIMULINK legacy simulation program 300 uses the time request S function, the data transmission S function, and the data reception S function stored in the S function unit 340 to perform the above- .

FIG. 3 is a block diagram illustrating an S function unit of a MATLAB / SIMULINK legacy simulation program according to an embodiment of the present invention. FIG. 4 is a block diagram illustrating a data structure for automatically generating an S function of an S function auto generator according to an exemplary embodiment of the present invention. And Fig.

Referring to FIG. 3, the S function unit 340 includes a time request S function module (or block) 322 that includes (or controls) a time request S function that is responsible for time control, (Or block) 326 including a data transfer S function module (or block) 324 including a data transfer S function that takes charge of data transfer, and a data reception S function module .

In the context of the MATLAB / SIMULINK legacy simulation program 300, the time request S function module (or block) 322 is responsible for the time advance request to the AddSIM 200 and the data transfer S function module (or block) 324 and a data receiving S function module (or block) 326 are responsible for transmitting and receiving data to and from the AddSIM 200. [

The time request S function module 322 may store the time request S function generated by the S function auto generator 330 and may use the time request S function to determine whether the AddSIM 200's MATLAB / ) To request a time advance.

The data transfer S function module 324 may store the data transfer S function generated by the S function auto generator 330 and use the data transfer function S to transfer the data to the MATLAB / SIMULINK interface 250 of the AddSIM 200 To transmit the data.

In addition, the data reception S function module 326 may store the data reception S function generated by the S function automatic generator 330 and use the data reception S function to transmit the MATLAB / SIMULINK interface (250) and receive data.

4, the S-function automatic generator 330 automatically generates the S-function automatic S-function 330 based on the data input by the user request and the source code stored in the S-function automatic generator 330, The data transmission S function and the data reception S function can be generated.

Specifically, the MATLAB / SIMULINK legacy simulation program 300 receives an input data port (input port), an output data port (output data port) from the user through an S function auto generator 330 designed to automatically generate a function block for MATLAB / SIMULINK Output Port, and Data Type Attribute.

Then, the S-function automatic generation unit 330 generates an S-function automatic generation unit 330 based on the source code stored in the S-function automatic generation unit 330, Automatically generates the source code for. The S function auto generator 330 can automatically generate the time request S function, the data transmission S function, and the data reception S function based on the source code.

In addition, the S function unit 340 may optionally add a user area to the automatically generated source code to generate a user function block 322, which may be executable in the MATLAB / SIMULINK legacy simulation program 300 (or legacy model 320) 324, and 326, respectively.

SIMULINK S-function block (S-function module 322, 324) for interlocking simulation in order to facilitate the user to easily perform interworking simulation with AddSIM in a MATLAB / SIMULINK legacy simulation program. , 326).

The S function unit 340 may be a separate structure different from the MATLAB / SIMULINK legacy simulation program 300 (or the legacy model 320), and may include a configuration (or a block included in the legacy simulation program 300) ).

Hereinafter, a procedure for interworking between the MATLAB / SIMULINK legacy simulation program of the present invention and AddSIM will be described in more detail with reference to the accompanying drawings.

FIG. 5 is a flowchart illustrating an interworking procedure between AddSIM and a MATLAB / SIMULINK legacy simulation program according to an embodiment of the present invention.

The interlocking process of the MATLAB / SIMULINK legacy simulation program 300 and the AddSIM 200 (or the interlocking process of the legacy model 320 and the player 220) is a simulation time synchronization process and a simulation data exchange process . The communication procedure for interworking is the same as that shown in Fig.

For convenience of description, the case where the AddSIM 200 and the MATLAB / SIMULINK legacy simulation program 300 are implemented in a remote device will be described as an example. In this case, AddSIM and legacy simulation program communicate with Server-Client structure, AddSIM becomes server, and MATLAB / SIMULINK legacy simulation program plays the role of client.

The legacy simulation program 300 uses the S function 340 (S-function blocks) described above for time synchronization with the AddSIM and data exchange and the MATLAB / SIMULINK legacy interworking agent 240 of AddSIM uses the MATLAB / SIMULINK legacy interface 250 is used.

In the time synchronization process, a MATLAB / SIMULINK legacy interworking agent 240 acting as a server generates a server socket, allocates an IP and a Port to the socket, and waits for the connection of the legacy simulation program 300 as a client (5- ①).

In the overall interworking simulation, the AddSIM's simulation kernel 210 acts as the main manager of the simulation time progress, and the legacy simulation program 300 requests the simulation time progress through the MATLAB / SIMULINK legacy interworking agent 240 Request: TAR) (5-②).

The MATLAB / SIMULINK legacy interworking agent 240 passes the time advance request (TAR) of the MATLAB / SIMULINK legacy simulation program 300 to the simulation kernel 210 (5 - 3) Time Advance Grant: TAG) is dropped (5-④), it is transferred to the MATLAB / SIMULINK legacy simulation program 310 (5-⑤) so that the entire simulation time progress proceeds without any time causality Respectively.

Next, the data transmission process will be described. In the course of the simulation, necessary data between the AddSIM players 220 is transmitted to the correct recipient by the message transmission manager and the event transmission manager of the simulation kernel 210. The data to be transmitted from the MATLAB / SIMULINK legacy simulation program 300 to the AddSIM player 220 is transferred to the MATLAB / SIMULINK legacy system using the S-function of the MATLAB / SIMULINK (the S function 340 of the legacy simulation program 300) Is received via the data receiver of the interworking agent 240 (5-⑥).

The MATLAB / SIMULINK legacy interworking agent 240 sends the data to the message / event transfer manager of the kernel 210 (5 - 7). The simulation kernel 210 passes the data to the appropriate recipient (player, ghost player, etc.) to receive.

Similarly, when the data to be transferred from the kernel 210 to the external interworking program 300 is received by the MATLAB / SIMULINK legacy interworking agent 240 (5 - 8), the MATLAB / SIMULINK legacy interworking agent 240 Transmits the data to the legacy simulation program 300 using the network through the data transmitter (5 - 9). Through this configuration, the present invention smoothly exchanges data among entities participating in the entire simulation.

Hereinafter, a method of performing simulation by reflecting the contents of a legacy model actually existing in the MATLAB / SIMULINK legacy simulation program 300 according to the present invention will be described in more detail with reference to the accompanying drawings.

6 is a conceptual diagram for explaining a method of applying a legacy model created by a legacy simulation program to a component-based integrated simulation environment in the present invention.

6, the MATLAB / SIMULINK legacy simulation program 300 sends a time advance request (TAR) to the MATLAB / SIMULINK legacy interworking agent 240 of the AddSIM 200 via the S function 340, (For example, spatial information of the ghost players A, B, and C) corresponding to the model (e.g., the legacy model 320) formed (or existing) in the legacy simulation program 300 Lt; / RTI >

5, the MATLAB / SIMULINK legacy interworking agent 240 receives the time advance request (TAR) information, and in step 5-step 6, the legacy model 320) of the mobile communication terminal.

When the MATLAB / SIMULINK legacy interworking agent 240 receives data information corresponding to the time advance request (TAR) and the model formed in the legacy simulation program, the MATLAB / SIMULINK legacy interworking agent 240 transmits the received time advance request to the simulation kernel 210, And may transmit the data information corresponding to the model to the ghost player 230 so that the ghost player 230 reflects the legacy model 320.

The simulation kernel 210 applies the legacy model formed in the legacy simulation program to the ghost player 230 based on the data information received from the legacy simulation program 300. [ Here, applying the legacy model to the ghost player means updating the ghost player's spatial information.

That is, the ghost player 230 communicates with the player 220 after the legacy model is reflected. More specifically, when the legacy model is applied to the ghost player 230, the space information of the model corresponding to the ghost player is updated in the legacy simulation program 300, the space of the ghost player 230 through the legacy interworking agent 240, The information is updated. The existing AddSIM player 200 can inquire the spatial information of the updated ghost player 230 through the simulation kernel 210. [ The interface information that the AddSIM player 220 transmits to the ghost player 230 and the journaling information of the AddSIM player 220 may be transmitted to the legacy simulation program 300 through the legacy interworking agent 240.

The simulation kernel 210 may control the MATLAB / SIMULINK legacy interworking agent 240 to send the communication results and the time advance approval for the time progress request to the legacy simulation program.

Here, the communication result may include at least one of reception interface information and player journaling information.

The simulation kernel 210 may control the ghost player 230 and the player 220 to perform a simulation in conjunction with the AddSIM player 220 based on the legacy model applied to the ghost player 230. [

Hereinafter, the control method of the simulation kernel 210 will be described in more detail.

The simulation kernel 210 may provide a time / event management service, a space management service, and a message delivery service.

First, the simulation kernel 210 of AddSIM takes charge of the simulation time and event management in the interworking between the AddSIM player 220 and the MATLAB / SIMULINK legacy simulation program 300. The simulation kernel may include an event register, an event manager, and an event launcher.

Simulation progress between each simulation object (player 220, ghost player 230) requests their event progress to the event manager via the event register of the simulation kernel 210 of AddSIM. The following events of each simulation object (AddSIM players, ghost player) requested through the event register are managed in chronological order in the event list existing in the event manager, and the event launcher takes out the event in the order of the earliest in the event list, Instructs the simulation entities that requested the event to execute the event. At this time, the global simulation time proceeds to the time recorded in the event.

The exchange of data between the AddSIM player (or ghost player) and the legacy simulation program is accomplished through the spatial service of AddSIM's simulation kernel 210. The simulation kernel 210 includes a space manager, and the space manager has a DB for recording spatial information according to time of the individuals participating in the simulation. The location information, the attitude information, and the extension information of the individuals requesting the spatial information registration to the space manager are periodically recorded in the DB between the simulation progress and the individuals receiving the information receive the data selectively using the object identifier.

For example, the ghost player 230 updates the spatial information of the space manager based on the data information received from the MATLAB / SIMULINK legacy simulation program 300.

Another data exchange method is AddSIM's simulation kernel message delivery service. The simulation kernel may include a message transmission / reception manager, an interface connection manager, and an execution object manager. Interface information transmitted from the AddSIM player 220 to the ghost player 230 using the message transmission service of the AddSIM's simulation kernel and journaling information of the AddSIM player 220 are transmitted through the legacy interworking agent 240 to the MATLAB / Program 300 (or legacy model 320).

7 is a block diagram showing the structure of a ghost player according to an embodiment of the present invention.

The ghost player 230 of the present invention includes a generator 232, an initialization unit 233, an input interface processing function unit 234, an output interface processing function unit 235, a damage evaluation inbox unit 236, (237), and the like.

The role of the ghost player 230 included in the AddSIM 200 is to reflect the entity-based legacy model 310 generated in the legacy simulation program 300 to the component-based integrated simulation environment (AddSIM).

When the simulation starts, the ghost player is generated by the generator portion 232 and then initialized by the initialization portion 233. [

When the information of the legacy model is transmitted to the ghost player 230 through the MATLAB / SIMULINK legacy interworking agent 240 as the simulation progresses, the input interface processing included in the input interface processing function part 234 of the ghost player 230 Function transmits the information to the AddSIM player 220 using the output interface processing function included in the output interface processing function unit 235. (solid line)

Through this process, information of the legacy model existing outside AddSIM can be transmitted to the AddSIM player 220. [ The information of the AddSIM player 220 is also input to the input interface processing function unit 234 and the output interface processing function unit 235 of the ghost player 230 through the input interface processing function and the output interface processing function, To the legacy interworking agent 240. The information of the AddSIM player 220 is transmitted to a legacy model existing outside AddSIM (dotted line).

Basically, the ghost player 230 and the AddSIM player 220 have the same structure by taking a structure inherited from the same parent class. The ghost player 230 may also include a damage evaluation reception box portion 236 capable of receiving damage evaluation from the AddSIM player 220 and a destructor portion 237 for destroying the ghost player 230. [

The present invention described above can be embodied as computer-readable codes on a medium on which a program is recorded. The computer readable medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of the computer readable medium include a hard disk drive (HDD), a solid state disk (SSD), a silicon disk drive (SDD), a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, , And may also be implemented in the form of a carrier wave (e.g., transmission over the Internet). Accordingly, the above description should not be construed in a limiting sense in all respects and should be considered illustrative. The scope of the present invention should be determined by rational interpretation of the appended claims, and all changes within the scope of equivalents of the present invention are included in the scope of the present invention.

Claims (6)

1. A simulation system for simulating a component-based integrated simulation environment and a legacy simulation program,
The legacy simulation program includes:
A legacy model developed in a MATLAB / SIMULINK environment and performing a simulation alone using a legacy simulation engine; And
And an S function unit for generating a function related to communication, time control and data exchange through the S function auto generator and providing an interoperation procedure between the legacy model and the component based integrated simulation environment using the generated function, ,
In the component-based integrated simulation environment,
A player performing simulations under the control of a simulation kernel in a component-based integrated simulation environment;
A simulation kernel for controlling time synchronization and data exchange for interworking between the player and the legacy simulation program;
A legacy interworking agent running on the simulation kernel and acting as an exchange medium of time synchronization information and data information between the legacy simulation program and the simulation kernel;
A legacy interface for providing an interworking procedure for communication, time control and data exchange between the legacy simulation program and the legacy interworking agent; And
And a ghost player for applying the legacy model formed in the legacy simulation program to a component-based integrated simulation environment,
The simulation kernel includes:
The legacy simulation program, reflecting the legacy model formed in the legacy simulation program on the ghost player based on the data information received from the legacy simulation program,
And controls the ghost player and the player to perform a simulation in cooperation with the player based on the information reflected in the ghost player,
The S-
A time request S function module responsible for time control;
A data transfer S function module responsible for data transfer; And
And a data reception S function module for receiving data.
The method according to claim 1,
The legacy simulation program includes:
A time advance request is made to the legacy interworking agent through the S function unit, and data information corresponding to a legacy model formed in the legacy simulation program is transmitted.
3. The method of claim 2,
The legacy interworking agent comprises:
When the time advance request and the data information corresponding to the model formed in the legacy simulation program are received,
Forwarding the received time progress request to the simulation kernel so that the simulation kernel can control the simulation time,
And transmits the data information corresponding to the model to the ghost player so that the model is reflected in the ghost player.
The method of claim 3,
The ghost player communicates with the player after the legacy model is reflected,
The simulation kernel
Wherein the legacy interworking agent controls the legacy interworking agent to transmit the communication result and the time progress approval for the time progress request to the legacy simulation program.
delete The method according to claim 1,
Wherein the S-function part automatic generator comprises:
A data transmission S function, and a data reception S function, based on the data input by the user request and the source code previously stored in the S function auto generator.
KR1020150133348A 2015-09-21 2015-09-21 Method for enabling interoperation between component-based integrative simulation environment and matlab/simulink legacy simulation program, and an interface design method for interoperation KR101670307B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150133348A KR101670307B1 (en) 2015-09-21 2015-09-21 Method for enabling interoperation between component-based integrative simulation environment and matlab/simulink legacy simulation program, and an interface design method for interoperation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150133348A KR101670307B1 (en) 2015-09-21 2015-09-21 Method for enabling interoperation between component-based integrative simulation environment and matlab/simulink legacy simulation program, and an interface design method for interoperation

Publications (1)

Publication Number Publication Date
KR101670307B1 true KR101670307B1 (en) 2016-10-31

Family

ID=57445792

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150133348A KR101670307B1 (en) 2015-09-21 2015-09-21 Method for enabling interoperation between component-based integrative simulation environment and matlab/simulink legacy simulation program, and an interface design method for interoperation

Country Status (1)

Country Link
KR (1) KR101670307B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106777842A (en) * 2017-03-16 2017-05-31 西北工业大学 For the method for the thermal machine such as aero-engine system modeling and simulation analysis
KR101902252B1 (en) 2018-04-20 2018-09-28 국방과학연구소 Method of managing and sharing object data based on spatial data for simulation of object-based engagements
KR101951430B1 (en) * 2018-09-21 2019-02-22 국방과학연구소 Device and Method for Hierarchical Distributed Simulation between Data Distribution Service-based High-Resolution Engineering-level Models
KR20200127483A (en) 2019-05-02 2020-11-11 울산과학기술원 Apparatus and method for auto-processing modeling using matlab
KR20210030311A (en) 2019-05-02 2021-03-17 울산과학기술원 Apparatus and method for auto-processing modeling using matlab
KR20210123247A (en) 2021-03-02 2021-10-13 울산과학기술원 Apparatus and method for auto-processing modeling using matlab
CN113904946A (en) * 2021-10-20 2022-01-07 中国人民解放军海军航空大学岸防兵学院 Communication simulation interrupt control method and system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222420A (en) * 2004-02-06 2005-08-18 Toyota Motor Corp Distribution processing support program
KR101194246B1 (en) * 2012-03-21 2012-10-29 국방과학연구소 Interoperation method between component-based integrated simulation environment and c/c++ simulation program, and interoperation agent/interface design method
KR101275172B1 (en) 2012-12-17 2013-06-18 국방과학연구소 Method of simulating discrete event

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005222420A (en) * 2004-02-06 2005-08-18 Toyota Motor Corp Distribution processing support program
KR101194246B1 (en) * 2012-03-21 2012-10-29 국방과학연구소 Interoperation method between component-based integrated simulation environment and c/c++ simulation program, and interoperation agent/interface design method
KR101275172B1 (en) 2012-12-17 2013-06-18 국방과학연구소 Method of simulating discrete event

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106777842A (en) * 2017-03-16 2017-05-31 西北工业大学 For the method for the thermal machine such as aero-engine system modeling and simulation analysis
KR101902252B1 (en) 2018-04-20 2018-09-28 국방과학연구소 Method of managing and sharing object data based on spatial data for simulation of object-based engagements
KR101951430B1 (en) * 2018-09-21 2019-02-22 국방과학연구소 Device and Method for Hierarchical Distributed Simulation between Data Distribution Service-based High-Resolution Engineering-level Models
KR20200127483A (en) 2019-05-02 2020-11-11 울산과학기술원 Apparatus and method for auto-processing modeling using matlab
KR20210030311A (en) 2019-05-02 2021-03-17 울산과학기술원 Apparatus and method for auto-processing modeling using matlab
KR20210123247A (en) 2021-03-02 2021-10-13 울산과학기술원 Apparatus and method for auto-processing modeling using matlab
CN113904946A (en) * 2021-10-20 2022-01-07 中国人民解放军海军航空大学岸防兵学院 Communication simulation interrupt control method and system

Similar Documents

Publication Publication Date Title
KR101670307B1 (en) Method for enabling interoperation between component-based integrative simulation environment and matlab/simulink legacy simulation program, and an interface design method for interoperation
Krammer et al. The distributed co-simulation protocol for the integration of real-time systems and simulation environments
CN103392170B (en) Data syn-chronization between system
KR20200081395A (en) Computer-implemented system and method for connecting blockchain to digital twin
KR101056682B1 (en) A weapon simulation system and the same method based on the component
CN103973741A (en) Method and device for performing remote debugging in cloud system
CN101842821A (en) Unmanned vehicle simulation system
KR101548160B1 (en) Interacting system and method for wargame model
US20120185564A1 (en) Methods and systems for exchanging data between a command and control information system and an enterprise resource planning system
CA2631412A1 (en) Distributed physics based training system and methods
US20200403935A1 (en) Software engine virtualization and dynamic resource and task distribution across edge and cloud
Mosser et al. Sensapp as a reference platform to support cloud experiments: From the internet of things to the internet of services
Powell et al. The test and training enabling architecture (TENA)
CN103970031A (en) Satellite simulator integration and simulation system and simulation method
CN103973641A (en) Method and device for managing conversations of different web sites
KR102196478B1 (en) Method and system for providing verification services of result of artificial intelligence robot automation software execution based on blockchain
CN113886055B (en) Intelligent model training resource scheduling method based on container cloud technology
CN103107898A (en) Method, device and system for sending or receiving multiple managed objects simultaneously
Petty et al. Combat modeling with the high level architecture and base object models
JP2009020801A (en) Information processing device and simulation cooperation method
KR101194246B1 (en) Interoperation method between component-based integrated simulation environment and c/c++ simulation program, and interoperation agent/interface design method
KR101951430B1 (en) Device and Method for Hierarchical Distributed Simulation between Data Distribution Service-based High-Resolution Engineering-level Models
Kim et al. Integrating legacy simulation models into component-based weapon system simulation environment
KR102180046B1 (en) Battlefield Modeling and Simulation System based on Multi-Resolution Model, and controlling method thereof
De Grande et al. A modular distributed simulation‐based architecture for intelligent transportation systems

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191002

Year of fee payment: 4