Rail transit distributed simulation method and system based on FastDDS
By using a distributed architecture and time synchronization mechanism based on FastDDS, real-time parameter interaction and collaborative simulation between rail transit systems were achieved, solving the problems of insufficient simulation accuracy and real-time performance in existing technologies, and improving the reliability and scalability of the simulation system.
Patent Information
- Application Number
- CN202510993580.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-18
- Publication Date
- 2025-10-24
AI Technical Summary
Existing rail transit simulation methods cannot accurately reflect the real-time interaction of parameters in real systems. Traditional distributed simulations lack real-time performance and synchronization, making it difficult to meet the simulation requirements for high precision and high reliability.
A distributed architecture based on FastDDS and a strict time synchronization mechanism are adopted. The FastDDS framework enables real-time interaction and collaborative simulation of parameters among multiple rail transit systems. Each simulation node runs independently and interacts with data and synchronizes time through the FastDDS framework.
It enables real-time interaction of parameters between rail transit systems, improves simulation accuracy and real-time performance, reduces system coupling, supports millisecond-level synchronization, and adapts to future system expansion and fault tracing.
Smart Images

Figure CN120832774A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the field of rail transit simulation technology, and particularly relates to a rail transit distributed simulation method and system based on FastDDS. BACKGROUND
[0002] Simulation technology is a core tool for modern rail transit system planning, design and optimization. With digital modeling, engineers can simulate complex scenarios such as train operation state, power grid load fluctuation, traction force output characteristics, etc., to verify the effectiveness of the scheme and reduce the risk of trial and error before actual engineering implementation.
[0003] Rail transit system is a complex multi-physical coupling system involving traction power supply, train dynamics, signal control, track topology and other subsystems. In order to accurately simulate its running state, multiple simulation models are usually needed, such as power grid model (simulating voltage and current dynamic changes), traction force model (calculating train acceleration and braking force), signal system model (generating train control instructions), etc. These models interact with each other in the real system, such as train acceleration causing power grid voltage fluctuation, and voltage change affecting the traction performance of other trains.
[0004] Currently, rail transit simulation mainly uses step-by-step simulation or fixed parameter assumption methods. For example, when simulating traction force, the power grid voltage is assumed to be constant; or when analyzing the signal system, the dynamic response of train dynamics is ignored. This approach cannot reflect the real-time interaction of parameters in the real system, resulting in significant deviations between simulation results and actual operation. In addition, although traditional distributed simulation (such as HLA-based architecture) supports multi-model collaboration, it is difficult to meet the millisecond-level real-time requirements due to high communication delay and complex time synchronization, limiting its application in large-scale or high-dynamic scenarios.
[0005] Therefore, the existing rail transit simulation method cannot well meet the needs of modern rail transit for high-precision and high-fidelity simulation. SUMMARY
[0006] In view of the deficiencies in the related art, the present application provides a rail transit distributed simulation method and system based on FastDDS, which realizes real-time interaction and collaborative simulation of parameters among multiple systems of rail transit through a distributed architecture based on FastDDS and a strict time synchronization mechanism, solving the problems of "unable to reflect real-time interaction of real system" and "insufficient real-time and synchronization of distributed simulation" in traditional methods.
[0007] In a first aspect, the present application provides a rail transit distributed simulation method based on FastDDS, comprising the following steps: Establishing required simulation nodes including power supply system node, traction system node, brake system node and train control system node, and building corresponding simulation models in each simulation node; The user control node sends a simulation start instruction to the simulation control node, and the simulation control node sends a simulation advancing instruction to each simulation node; After each simulation node receives the simulation advancing instruction, the simulation models in each simulation node perform one-step simulation calculation synchronously, and each simulation node sends a simulation advancing request and simulation interaction data to the FastDDS framework after current step calculation; The FastDDS framework sends the simulation advancing request to the simulation control node and sends the simulation interaction data to the simulation nodes and data collection nodes that subscribe to the data; After the simulation control node receives the simulation advancing request from all simulation nodes, the simulation control node sends a simulation advancing instruction to all simulation nodes, and all simulation nodes perform new step calculation using the interaction data received in the last simulation step.
[0008] In some embodiments, the method further comprises the following steps: the data collection node receives the interaction data of the subscribed simulation nodes, and performs centralized processing and secondary distribution.
[0009] In some embodiments, the method for implementing time-synchronized simulation of multiple simulation nodes comprises the following steps: After each simulation node completes current step simulation calculation, the simulation node publishes a simulation request advancing topic to request the simulation control node to perform next time step simulation; The simulation control node subscribes to the simulation request advancing topic to receive the ready state of each simulation node, and publishes a simulation advancing topic to publish a advancing instruction for next time step simulation after all simulation nodes are ready; Each simulation node subscribes to the simulation advancing topic to receive the advancing instruction for next time step simulation and perform next time step simulation.
[0010] In some embodiments, the simulation request advancing topic contains the ID of the current simulation node, the current simulation timestamp, and the state (ready / busy / error) of the current simulation node; The simulation advancing topic contains target timestamp and step information.
[0011] In some embodiments, the FastDDS framework defines a simulation data topic and a simulation control topic, the simulation data topic contains the simulation data information of the publisher, and the simulation control topic contains the instructions or requests issued by the publisher; Each simulation node publishes the simulation data topic to publish its own data information; Each node subscribes to a simulation data topic published by a corresponding simulation node to obtain data information of the corresponding simulation node; Each node publishes a simulation control topic to issue an instruction or request; Each node subscribes to a simulation control topic to receive an instruction or request issued by another node.
[0012] In some embodiments, the simulation data topics include a power supply system topic, a traction system topic, a braking system topic, and a train control system topic; The power supply system node publishes the power supply system topic to publish voltage data; the traction system node and the data collection node subscribe to the power supply system topic to obtain the voltage data; The traction system node publishes the traction system topic to publish current, torque output, and electric braking force data; the power supply system node, the braking system node, and the data collection node subscribe to the traction system topic to obtain the published current, torque output, and electric braking force data; The braking system node publishes the braking system topic to publish electric braking force demand data; the traction system node and the data collection node subscribe to the braking system topic to obtain the electric braking force demand data; The train control system node publishes the train control system topic to publish ATP / ATO instructions and train positioning; the traction system node, the braking system node, and the data collection node subscribe to the train control system topic to obtain the ATP / ATO instructions and train positioning.
[0013] In some embodiments, the simulation control topics include a simulation request advance topic, a simulation advance topic, and a user control topic; Each simulation node publishes the simulation request advance topic to send the current simulation node ID, the current simulation timestamp, and the current node state; the simulation control node subscribes to the simulation request advance topic to obtain relevant information of each simulation node; The simulation control node publishes the simulation advance topic to send the target timestamp and the step (t=Δt) to each simulation node; each simulation node subscribes to the simulation advance topic to obtain relevant information; The user control node publishes the user control topic to send an instruction to publish relevant instructions; the simulation control node subscribes to the user control topic to obtain relevant instructions.
[0014] In a second aspect, the present application also provides a rail transit distributed simulation system based on FastDDS, comprising: A user control node that converts user operations into DDS protocol instructions; A simulation control node that receives instructions from the user control node, publishes simulation advance instructions, receives advance requests from simulation nodes, and manages global simulation time synchronization; Simulation nodes, performing simulation model calculation and interacting data; the simulation nodes include power supply system nodes, traction system nodes, braking system nodes and train control system nodes; Data collection nodes, subscribing and storing all the interaction data.
[0015] In some embodiments, the user control node functions as follows: Converting the user's operation into control instructions of the DDS protocol built in the simulation framework; Creating and returning a user control node instance through the Create() method; Starting the simulation through the Start() method; Setting the simulation step and simulation duration through the Set Param() method; Pausing the simulation of a specified ID through the Pause() method; Resuming the simulation of a specified ID through the Resume() method.
[0016] In some embodiments, the simulation advancing process includes the following steps: Initialization stage: the user control node sends a Start instruction, and the simulation control node sets the initial time t=0; Looping stage: a) the simulation control node publishes a simulation request advancing topic; b) each simulation node completes the calculation at time t, publishes business data and sends the simulation request advancing topic; c) after verifying all the simulation request advancing topics, the simulation control node publishes a simulation advancing topic; Termination stage: the user control node sends a Stop instruction, and the simulation control node broadcasts a termination signal.
[0017] Based on the above technical solution, the rail transit distributed simulation method based on FastDDS in the embodiments of the present application can realize locking, take the power supply, traction, braking and train control systems as independent nodes, realize real-time data interaction (such as dynamic transmission of parameters such as voltage fluctuation, traction force and braking instruction) between nodes based on the FastDDS framework, truly reflect the coupling relationship between systems, and increase the accuracy of simulation. BRIEF DESCRIPTION OF DRAWINGS
[0018] The accompanying drawings, which are included to provide a further understanding of the present application and constitute a part of this application, illustrate certain illustrative embodiments of the present application and are used to explain the present application, but do not limit the present application. In the drawings: Figure 1 An interaction timing diagram of an embodiment of the rail transit distributed simulation method based on FastDDS of the present application Figure 2A flow chart of an embodiment of the track traffic distributed simulation method based on FastDDS of the present application; Figure 3 A flow chart of the simulation of each simulation center in an embodiment of the track traffic distributed simulation method based on FastDDS of the present application; Figure 4 A relationship diagram between nodes in an embodiment of the track traffic distributed simulation system based on FastDDS of the present application. DETAILED DESCRIPTION
[0019] The technical solutions in the embodiments will be clearly and completely described in conjunction with the drawings of the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by those skilled in the art without creative work fall within the scope of protection of the present application.
[0020] In the description of the present application, it should be understood that the terms "center", "transverse", "longitudinal", "upper", "lower", "front", "rear", "left", "right", "vertical", "horizontal", "top", "bottom", "inner", "outer" and the like indicate the orientation or positional relationship based on the orientation or positional relationship shown in the drawings, and are only for the purpose of facilitating the description of the present application and simplifying the description, and therefore cannot be understood as indicating or implying that the device or element referred to must have a particular orientation, be constructed and operated in a particular orientation, and therefore cannot be understood as a limitation on the present application.
[0021] The terms "first", "second", "third" are only for descriptive purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the technical features indicated. Therefore, the features defined with "first", "second", "third" can explicitly or implicitly include one or more of the features.
[0022] In the description of the present application, it should be noted that, unless otherwise explicitly specified and limited, the terms "mounting", "connection", "connection" should be understood broadly, for example, it can be fixed connection, or detachable connection, or integrally connected; it can be directly connected, or indirectly connected through an intermediate medium, or the communication inside two elements. For those skilled in the art, the specific meaning of the above terms in the present application can be understood according to the specific circumstances.
[0023] The power supply system, the traction system, the braking system and the train control system are the main systems in the field of track traffic. When simulating track traffic, it is usually necessary to build simulation models for simulating power supply system, traction system, braking system and train control system to ensure the accuracy of simulation results. This is a common technical knowledge in the art.
[0024] As shown in the accompanying drawings, Figure 1 In one illustrative embodiment of the FastDDS-based distributed simulation method for rail transit according to the present application, the FastDDS-based distributed simulation method for rail transit comprises the following steps: S1. Establishing the required simulation nodes, including the power supply system node, the traction system node, the braking system node, and the train control system node, and building the corresponding simulation models in each simulation node.
[0025] It should be noted that the power grid dynamic model is built in the power supply system node, which is used to simulate the power grid state, the overhead line voltage fluctuation, and energy feedback; the motor dynamics model is built in the traction system node, which is used to simulate the motor control, the traction force calculation, and the acceleration response; the brake pressure and deceleration relationship model is built in the braking system node, which is used to simulate the air / electric brake logic, the deceleration control, and the anti-skid protection; and the train control simulation model is built in the train control system node, which is configured with the train operation curve and the signal system logic, and is used to simulate the signal transmission, the ATP / ATO instruction, and the train positioning and scheduling. These are conventional technical means in the field and will not be described in detail.
[0026] S2. The user control node sends a simulation start instruction to the simulation control node, and the simulation control node sends a simulation advance instruction to each simulation node. S3. After each simulation node receives the simulation advance instruction, the simulation models in each simulation node perform one step of simulation calculation synchronously, and each simulation node sends a simulation advance request and simulation interaction data to the FastDDS framework after the current step calculation. S4. The FastDDS framework sends the simulation advance request to the simulation control node and sends the simulation interaction data to the simulation nodes and data collection nodes that subscribe to the data. S5. After the simulation control node receives the simulation advance request from all simulation nodes, it sends a simulation advance instruction to all simulation nodes, and all simulation nodes perform new step calculation using the interaction data received in the last simulation step.
[0027] The above-mentioned FastDDS-based distributed simulation method for rail transit further comprises the following steps: the data collection node receives the interaction data of the subscribed simulation nodes, and performs centralized processing and secondary distribution.
[0028] Multiple simulation nodes achieve synchronous simulation through the simulation control node, as shown in Figure 3 The method for achieving time-synchronized simulation of multiple simulation nodes comprises the following steps: S31. After completing the current simulation step, each simulation node publishes a simulation request to advance the topic to request the simulation control node to perform the next time step simulation; S32 simulation control node subscribes to the simulation request to promote the theme to receive the readiness of each simulation node; after all simulation nodes are ready, publish the simulation to promote the theme to publish the next time step simulation promotion instructions; S33. Each simulation node subscribes to the simulation advancement topic to receive the advancement instruction for the next time step simulation and performs the simulation for the next time step.
[0029] It should be noted that the simulation request advancement topic contains information about the ID of the current simulation node, the current simulation timestamp, and the status of the current simulation node (ready / busy / error); The simulation advancement topic contains the target timestamp and step size information.
[0030] The FastDDS framework defines simulation data topics, which contain the publisher's simulation data information; each simulation node publishes a simulation data topic to publish its own data information; each node subscribes to the simulation data topic published by the corresponding simulation node to obtain the data information of the corresponding simulation node; each node publishes a simulation control topic to issue instructions or requests; each node subscribes to the simulation control topic to receive instructions or requests issued by other nodes.
[0031] In some embodiments, the simulation data topics include power supply system topics, traction system topics, braking system topics and train control system topics; wherein, the power supply system node publishes the power supply system topic to publish voltage data; the traction system node and the data collection node subscribe to the power supply system topic to obtain voltage data; the traction system node publishes the traction system topic to publish current, torque output and electric braking force data; the power supply system node, the braking system node and the data collection node subscribe to the traction system topic to obtain published current, torque output and electric braking force data; the braking system node publishes the braking system topic to publish electric braking force demand data; the traction system node and the data collection node subscribe to the braking system topic to obtain electric braking force demand data; the train control system node publishes the train control system topic to publish ATP / ATO instructions and train positioning; the traction system node, the braking system node and the data collection node subscribe to the train control system topic to obtain ATP / ATO instructions and train positioning.
[0032] The FastDDS framework defines a simulation control topic, which contains instructions or requests issued by the publisher.
[0033] In some embodiments, the simulation control topic includes a simulation request promotion topic, a simulation promotion topic and a user control topic; each simulation node publishes the simulation request promotion topic to send the current simulation node ID, the current simulation timestamp, the current node state, the simulation control node subscribes to the simulation request promotion topic to obtain the relevant information of each simulation node; the simulation control node publishes the simulation promotion topic to send the target timestamp, the step (t = Δt) to each simulation node, each simulation node subscribes to the simulation promotion topic to obtain the relevant information; the user control node publishes the user control topic to send instructions to publish relevant instructions, and the simulation control node subscribes to the user control topic to obtain the relevant instructions.
[0034] As shown in Figure 4 The application also provides a rail transit distributed simulation system based on FastDDS, which comprises a user control node, a simulation control node, a simulation node and a data collection node; the user control node converts user operations into DDS protocol instructions; the simulation control node receives instructions from the user control node, publishes simulation promotion instructions, receives promotion requests from the simulation node and manages global simulation time synchronization; the simulation node performs simulation model calculation and interacts with data; the simulation node comprises a power supply system node, a traction system node, a braking system node and a train control system node; and the data collection node subscribes to and stores all interaction data.
[0035] In some embodiments, the user control node has the following functions: Converting user operations into control instructions of the DDS protocol built in the simulation framework; Creating and returning a user control node instance through the Create() method; Starting the simulation through the Start() method; Setting the simulation step and the simulation duration through the Set Param() method; Pausing the simulation of a specified ID through the Pause() method; Resuming the simulation of a specified ID through the Resume() method.
[0036] In some embodiments, the simulation control node has the following functions: Distributed simulation time management to ensure synchronization of the simulation time of all simulation nodes; Receiving and processing user control topic instructions and publishing simulation progress state topic messages; Creating and returning a control node instance through the Create() method; Starting the simulation through the Start() method.
[0037] It should be noted that the simulation control node can master the running state of each node in real time, and if an error occurs in a node, it can be discovered and handled in time, thereby enhancing the reliability of the entire simulation system.
[0038] In some embodiments, the simulation node has the following functions: The minimum communication unit participating in the distributed simulation is responsible for distributed communication, message serialization and deserialization; The intermediate bridge for communication between the simulation model and the FastDDS framework; Create a simulation node instance and return it through the Create() method; Start the simulation task of the simulation node through the Start() method; Get the subscribed data through the Callback() method.
[0039] In some embodiments, the data collection node has the following functions: Subscribe to the interaction data of the distributed simulation model for centralized processing and secondary distribution; Create a factory method for the data collection node through the Create() method, and return a smart pointer pointing to the Data object; Get the subscribed data through the Callback() method.
[0040] In some of these embodiments, the simulation advancement process includes the following steps: Initialization stage: the user control node sends a Start instruction, and the simulation control node sets the initial time t=0; Loop stage: a) the simulation control node publishes the simulation request advancement topic; b) each simulation node completes the t time calculation, publishes the business data, and sends the simulation request advancement topic; c) the simulation control node verifies all simulation request advancement topics and publishes the simulation advancement topic; Termination stage: the user control node sends a Stop instruction, and the simulation control node broadcasts a termination signal.
[0041] The operation steps of the rail transit distributed simulation system based on FastDDS are as follows: The user control node publishes a user control topic to publish a start simulation instruction, and the simulation control node subscribes to the user control topic to receive the start simulation instruction published by the user control node; The simulation control node publishes a simulation advancement topic to publish simulation advancement instructions and target timestamps, step sizes, etc. of the simulation; All simulation nodes subscribe to the simulation advancement topic to obtain instructions and target timestamps, step sizes, etc. of the simulation sent by the simulation control node; After all the simulation nodes complete the simulation calculation of the current step, each simulation node respectively publishes a corresponding simulation data topic, wherein the power supply system node publishes a power supply system topic to publish data information such as voltage; the traction system node publishes a traction system topic to publish data information such as current, torque output and electric braking force; the braking system node publishes a braking system topic to publish data information such as electric braking force demand; and the train control system node publishes a train control system topic to publish information such as ATP / ATO instruction and train positioning.
[0042] The traction system node and the data collection node subscribe to the power supply system topic to obtain voltage data; the power supply system node, the braking system node and the data collection node subscribe to the traction system topic to obtain current, torque output and electric braking force data; the traction system node and the data collection node subscribe to the braking system topic to obtain electric braking force demand data; and the traction system node, the braking system node and the data collection node subscribe to the train control system topic to obtain ATP / ATO instruction and train positioning.
[0043] Each simulation node publishes a simulation request promotion topic to publish a simulation request promotion, the simulation control node subscribes to the simulation request promotion topic, and after all the simulation nodes publish the simulation request promotion topic, the simulation control node publishes a simulation promotion topic to issue a simulation instruction to proceed to the next time step and information such as the step length and target timestamp of the next time step; each simulation node subscribes to the simulation promotion topic to obtain the instruction and simulation information issued by the simulation control node, and each simulation node synchronously performs the next simulation step.
[0044] The following describes the operation steps of the above-mentioned FastDDS-based distributed simulation system of rail transit by means of specific examples.
[0045] (1) User starts simulation The user control node sends a Start instruction to the user control topic: {"command":"Start","params":{"step_length":100,"max_steps":1000}} The simulation control node receives the instruction, initializes the timestamp (t=0), and publishes the first simulation promotion topic (t=0).
[0046] (2) Time synchronization and subsystem calculation Step 1: Broadcast time promotion instruction The simulation control node publishes the simulation promotion topic (t=0), and all the simulation nodes subscribe to the simulation promotion topic (t=0).
[0047] Step 2: Each simulation node performs simulation calculation and sends data to the business topic or receives data from the business topic.
[0048] (3) Propulsion request and global synchronization Step 3: Node sends a propulsion request After each simulation node completes the calculation, it sends a simulation request to the propulsion topic The ready state is sent: {"node_id": "traction_01", "timestamp": 0, "status": "Ready"}; Step 4: Simulation control node waits for all nodes' simulation request propulsion topics, confirms that all are Ready, and then publishes the next simulation propulsion topic (t = 100ms): {"timestamp": 100, "delta_t": 100, "sync_id": "sync_001"}; Repeat steps 2-4 until the preset number of steps is reached or the user Stop instruction is received.
[0049] 4. Simulation termination The user sends a stop instruction: {"command": "Stop", "params": {"reason": "Manual"}}, the simulation control node broadcasts a termination signal, publishes a simulation propulsion topic (status = Terminated), and all simulation nodes stop calculation.
[0050] Through the description of the multiple embodiments of the track transportation distributed simulation method and system based on FastDDS of the present application, it can be seen that the embodiments of the track transportation distributed simulation method and system based on FastDDS have at least one or more of the following advantages: 1. The key systems such as power supply, traction, braking, and train control are respectively built into corresponding simulation models and used as independent simulation nodes, each node transmits and interacts data in real time (such as voltage data of the power supply system is subscribed by the traction system, ATP / ATO instructions of the train control system are subscribed by the traction and braking systems, etc.) through the FastDDS framework, breaking the limitations of traditional step-by-step simulation or fixed parameter assumptions, reflecting the real-time interaction of parameters in the real system, and making the simulation results closer to the actual operation.
[0051] 2. The four-layer architecture based on "user control node, simulation control node, simulation node, data collection node" realizes clear division of responsibilities, independent functions of each layer and communication through standardized DDS topics, fundamentally reducing system coupling. The user control node focuses on receiving user operations and converting them into control instructions, without participating in specific simulation calculations; the simulation control node is only responsible for global time synchronization and instruction distribution, decoupled from business logic; the simulation node (power supply, traction, etc.) focuses on simulation calculations of its own system, without needing to concern the control logic of other nodes; the data collection node is dedicated to data subscription, storage and secondary distribution, without interfering with the simulation process. This decoupled design allows independent development, testing and upgrading of each module, such as optimizing the user control interface without modifying the simulation control logic, fixing the traction system simulation model vulnerabilities without affecting the data collection function, greatly improving the maintenance efficiency and stability of the system.
[0052] 3. Global strong synchronization is achieved through the interaction mechanism of "simulation request advance topic" and "simulation advance topic", strictly ensuring the accuracy of simulation time with a synchronization time difference ≤1ms. Specifically, after completing the current step calculation, each simulation node sends a ready state (including timestamp and node state) to the simulation control node through the simulation request advance topic; the simulation control node waits for all nodes to be ready before publishing the target timestamp and step length of the next time step through the simulation advance topic. This "advance only after all nodes are ready" mechanism avoids the time misalignment problem caused by differences in node calculation speed in traditional distributed simulation. For example, when the traction system node takes a long time to calculate, the simulation control node will wait for it to be ready, rather than advancing other nodes in advance, ensuring that all nodes simulate at the same timestamp, accurately reflecting the dynamic interaction of each system in real time, meeting the core demand of millisecond-level real-time for rail transit simulation.
[0053] 4. Based on the standardized topic design of the FastDDS framework, new subsystems can be integrated into the existing architecture by simply binding the corresponding topics, without modifying the core logic, significantly improving the system's expansion capability. All data interactions in the system are based on pre-defined simulation data topics (such as power supply system topic, traction system topic) and simulation control topics, and new nodes only need to specify their published and subscribed topics to achieve collaboration. For example, when adding an air conditioning system simulation node, it only needs to define its published "air conditioning system topic" (such as temperature, energy consumption data), and set it to subscribe to the train positioning system topic (to adjust the air conditioning strategy) and the power supply system topic (to calculate energy consumption), without modifying the logic of core nodes such as user control and simulation control. This "plug and play" expansion mode allows the system to easily adapt to the continuous addition of subsystems in the rail transit field (such as vehicle diagnostic system, trackside equipment system, etc.), meeting future technological development needs.
[0054] 5. Through the subscription and storage of all topic data by the data collection node, combined with the time stamp mark, the precise playback and traceability of the fault scenario is realized. The data collection node records the interaction data (such as power supply voltage fluctuation, traction current anomaly, brake instruction delay, etc.) published by each simulation node throughout the process, and all data carries the corresponding time stamp. When an abnormality occurs in the simulation process (such as the simulation result of train brake failure), the specific time when the fault occurs can be located through the time stamp, and the interaction data of all related nodes in this period (for example, whether the ATP instruction of the train control system is delayed, whether the brake system receives the instruction, whether the voltage of the power supply system is abnormal, etc.) is called to restore the complete link of the fault occurrence. This full-quantity data recording and time stamp association mechanism provides an objective basis for simulation model optimization and fault cause analysis, and solves the problem that the fault is difficult to trace in the traditional simulation due to scattered or missing data.
[0055] Finally, it should be noted that: the embodiments in the specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts of each embodiment can be referred to each other.
[0056] The above embodiments are only used to illustrate the technical solutions of the present application but not limit it; although the present application has been described in detail with reference to the preferred embodiments, it should be understood by those skilled in the art that the specific embodiments of the present application can be modified or some technical features can be replaced by equivalent; without departing from the spirit of the technical scheme of the present application, it should be covered in the technical scheme range of the present application.
Claims
1. A FastDDS-based distributed simulation method for rail transit, characterized in that, The method comprises the following steps: establishing required simulation nodes including power supply system nodes, traction system nodes, braking system nodes and train control system nodes, and building corresponding simulation models in the simulation nodes; the user control node sends a simulation start instruction to the simulation control node, and the simulation control node sends a simulation advancing instruction to the simulation nodes; after receiving the simulation advancing instruction, the simulation models in the simulation nodes perform one-step simulation calculation synchronously, and the simulation nodes send a simulation advancing request and simulation interaction data to the FastDDS framework after current step calculation; the FastDDS framework sends the simulation advancing request to the simulation control node and sends the simulation interaction data to the simulation nodes and the data collection node that subscribe to the data; after receiving the simulation advancing request of all simulation nodes, the simulation control node sends a simulation advancing instruction to all simulation nodes, and all simulation nodes perform new step calculation using the interaction data received in the last step simulation.
2. The FastDDS-based distributed simulation method for rail transit according to claim 1, characterized in that, The method further comprises the following steps: the data collection node receives the interaction data of the subscribed simulation nodes, and performs centralized processing and secondary distribution.
3. The FastDDS-based distributed simulation method for rail transit according to claim 1, wherein, The method for realizing time-synchronized simulation of multiple simulation nodes comprises the following steps: after completing current step simulation calculation, each simulation node publishes a simulation request advancing topic to request the simulation control node to perform next time step simulation; the simulation control node subscribes to the simulation request advancing topic to receive the ready state of each simulation node, and publishes a simulation advancing topic to publish a advancing instruction for next time step simulation after all simulation nodes are ready; each simulation node subscribes to the simulation advancing topic to receive the advancing instruction for next time step simulation and perform next time step simulation.
4. The FastDDS-based distributed simulation method for rail transit according to claim 3, characterized in that, The simulation request advancing topic contains the ID of the current simulation node, the current simulation timestamp and the state (ready / busy / error) of the current simulation node; The simulation advancing topic contains the target timestamp and step information.
5. The FastDDS-based distributed simulation method for rail transit according to claim 1, wherein, The FastDDS framework defines simulation data topics and simulation control topics, the simulation data topics contain the simulation data information of the publisher, and the simulation control topics contain the instructions or requests issued by the publisher; each simulation node publishes a simulation data topic to publish its own data information; each node subscribes to the simulation data topic published by the corresponding simulation node to obtain the data information of the corresponding simulation node; each node publishes a simulation control topic to issue an instruction or a request; each node subscribes to the simulation control topic to receive the instruction or the request issued by other nodes.
6. The FastDDS-based distributed simulation method for rail transit according to claim 5, characterized in that, The simulation data topics include power supply system topics, traction system topics, braking system topics and train control system topics; the power supply system node publishes a power supply system topic to publish voltage data, and the traction system node and the data collection node subscribe to the power supply system topic to obtain the voltage data; the traction system node publishes a traction system topic to publish current, torque output and electric braking force data, and the power supply system node, the braking system node and the data collection node subscribe to the traction system topic to obtain the published current, torque output and electric braking force data; the traction system node publishes a traction system topic to publish current, torque output and electric braking force data, and the power supply system node, the braking system node and the data collection node subscribe to the traction system topic to obtain the published current, torque output and electric braking force data; The brake system node publishes a brake system topic to publish electric braking force demand data; the traction system node and the data collection node subscribe to the brake system topic to obtain the electric braking force demand data; The train control system node publishes a train control system topic to publish ATP / ATO instructions and train positioning; the traction system node, the brake system node and the data collection node subscribe to the train control system topic to obtain the ATP / ATO instructions and the train positioning.
7. The FastDDS-based distributed simulation method for rail transit according to claim 5, characterized in that, The simulation control topic includes a simulation request promotion topic, a simulation promotion topic and a user control topic; Each simulation node publishes the simulation request promotion topic to send the current simulation node ID, the current simulation time stamp and the current node state, and the simulation control node subscribes to the simulation request promotion topic to obtain the relevant information of each simulation node; The simulation control node publishes the simulation promotion topic to send the target time stamp and the step (t=Δt) to each simulation node, and each simulation node subscribes to the simulation promotion topic to obtain the relevant information; The user control node publishes the user control topic to send instructions to publish relevant instructions, and the simulation control node subscribes to the user control topic to obtain the relevant instructions.
8. A FastDDS-based distributed simulation system for rail transit, characterized in that, It includes: The user control node converts user operations into DDS protocol instructions; The simulation control node receives instructions from the user control node, publishes simulation promotion instructions and receives promotion requests from simulation nodes, and manages global simulation time synchronization; The simulation node performs simulation model calculation and interacts with data; the simulation node includes a power supply system node, a traction system node, a brake system node and a train control system node; The data collection node subscribes to and stores all interaction data.
9. The FastDDS-based distributed simulation system for rail transit according to claim 8, wherein, The functions of the user control node include: Converting user operations into control instructions of the DDS protocol built in the simulation framework; Creating and returning a user control node instance through the Create() method; Starting the simulation through the Start() method; Setting the simulation step and the simulation duration through the Set Param() method; Pausing the simulation of a specified ID through the Pause() method; Resuming the simulation of a specified ID through the Resume() method.
10. The FastDDS-based distributed simulation system for rail transit according to claim 8, wherein, The simulation promotion process includes the following steps: Initialization stage: the user control node sends a Start instruction, and the simulation control node sets the initial time t=0; Loop stage: a) the simulation control node publishes the simulation request promotion topic; b) each simulation node completes t time calculation, publishes business data and sends the simulation request promotion topic; c) the simulation control node verifies all simulation request promotion topics and publishes the simulation promotion topic; Termination stage: the user control node sends a Stop instruction, and the simulation control node broadcasts a termination signal.