OMNeT + +-based giant satellite base simulation system and method
Through the dynamic weight algorithm and label adjustment mechanism, the problems of single path planning and module rigidity in the giant star constellation simulation are solved, the accuracy of path planning and the flexibility of the system are achieved, the stability of protocol interaction is ensured, and the needs of the giant star constellation simulation are met.
Patent Information
- Application Number
- CN202510794672.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-14
- Publication Date
- 2025-09-19
- Estimated Expiration
- 2045-06-14
AI Technical Summary
The existing OMNeT++-based simulation software cannot adapt to the complex and changing network environment in the giant star constellation simulation. It has a single path planning, rigid module functions, lacks dynamic adjustment capabilities, simple protocol simulation, and does not fully consider the complex interactions and exception handling during the protocol execution process.
A dynamic weight algorithm is used to build a path dynamic weight model, monitor the system operation status in real time, adjust the working mode based on label information, process various protocol messages, and realize satellite orbit operation simulation.
Improve path planning accuracy and task execution efficiency, enhance system flexibility, ensure the stability and reliability of protocol interaction, and meet the needs of giant star constellation simulation.
Smart Images

Figure CN120671397A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of spacecraft simulation, and in particular to a giant star constellation simulation system and method based on OMNeT++. Background Art
[0002] With the rapid development of satellite communication technology, Giant Star constellation simulation software plays a key role in verifying satellite network performance and optimizing protocols. Currently, applications such as satellite collision warning and the construction of integrated space-ground networks place higher demands on the real-time, accuracy, and scalability of simulation software.
[0003] Existing simulation solutions based on OMNeT++ can simulate and implement the basic functions of modules such as satellites and ground stations. For example, the planning center module uses the Dijkstra algorithm for shortest path planning. By calculating the shortest paths between nodes, it provides a basis for data transmission and task scheduling within the system. Each module identifies and processes specific functions based on pre-defined fixed message labels.
[0004] However, existing technologies have obvious limitations: the shortest path algorithm is single and does not consider dynamic factors such as satellite energy, load, link delay, and cannot adapt to complex and changing network environments; the module functions are rigid, the working mode is determined by fixed labels, and there is a lack of dynamic adjustment capabilities, making it difficult to cope with diverse mission requirements; the protocol simulation is simple, and the simulation of authentication protocols, switching protocols, etc. is relatively basic, and does not fully consider the complex interactions and exception handling during the protocol execution process. Summary of the Invention
[0005] The embodiments of the present application provide a giant constellation simulation system and method based on OMNeT++, which can solve the problems of insufficient efficiency and accuracy in the development of giant constellation simulation software in related technologies.
[0006] To achieve the above objectives, this application adopts the following technical solutions:
[0007] In a first aspect, a giant star constellation simulation system based on OMNeT++ is provided, comprising:
[0008] A path planning module is used to adopt a dynamic weight algorithm to construct a dynamic weight model to obtain a path dynamic weight, and generate an optimal planned path for the satellite based on the path dynamic weight;
[0009] The working mode adjustment module is used to monitor the system operation status in real time, determine the target working mode based on the label information of each module in the system, and send the adjustment signal for adjusting to the target working mode to each module in the corresponding system;
[0010] The protocol simulation module is used to process various protocol messages in the handleMessage function and then transmit the simulation result data to the simulation function implementation module;
[0011] The simulation function implementation module is used to complete the satellite orbit operation simulation based on the optimal planning path, adjustment signal and simulation result data.
[0012] In a second aspect, a giant star constellation simulation method based on OMNeT++ is provided, comprising:
[0013] A dynamic weight algorithm is used to construct a dynamic weight model to obtain a path dynamic weight, and an optimal planning path for the satellite is generated according to the path dynamic weight;
[0014] Monitor the system's operating status in real time, determine the target operating mode based on the label information of each module in the system, and send adjustment signals for adjusting to the target operating mode to each module in the corresponding system;
[0015] After processing various protocol messages in the handleMessage function, the simulation result data is transmitted to the simulation function implementation module;
[0016] The satellite's orbital operation simulation is completed based on the optimal planned path, adjustment signals and simulation result data.
[0017] According to a third aspect, an electronic device is provided, comprising:
[0018] one or more processors;
[0019] a storage device for storing one or more programs;
[0020] When the one or more programs are executed by the one or more processors, the one or more processors implement the method as described in the second aspect.
[0021] According to a fourth aspect, a computer program product is provided, comprising a computer program or instructions, which, when executed on a computer, causes the computer to execute the method according to the second aspect.
[0022] The beneficial effects of the present invention are:
[0023] 1) Through dynamic weighting and multi-objective optimization mechanisms, path planning is made more suitable for the actual network environment, improving path planning accuracy and task execution efficiency.
[0024] 2) The label-based working mode switching and expansion mechanism facilitates the rapid adjustment and addition of system functions, enhancing system flexibility:
[0025] 3) Protocol status management and exception handling mechanism to ensure the stability and reliability of protocol interaction.
[0026] 4) The distributed integration module realizes the smooth simulation of tens of thousands of satellites, meeting the needs of giant star constellation simulation. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] Figure 1 The block diagram of a giant star constellation simulation system based on OMNeT++ is schematically shown.
[0028] Figure 2 The following diagram schematically shows the implementation flow chart of the TR-AKA protocol.
[0029] Figure 3 A flow chart of the MRSA handover protocol is schematically shown.
[0030] Figure 4 The figure schematically shows a step diagram of a giant star constellation simulation method based on OMNeT++.
[0031] Figure 5 A block diagram of an electronic device is schematically shown.
[0032] Figure 6 A block diagram of a computer-readable medium is schematically shown. DETAILED DESCRIPTION
[0033] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be embodied in many forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete and will fully convey the concepts of the example embodiments to those skilled in the art. Like reference numerals in the drawings represent like or similar parts, and thus repetitive description thereof will be omitted.
[0034] In addition, described feature, structure or characteristic can be combined in one or more embodiments in any suitable manner.In the following description, many specific details are provided so as to provide a full understanding of the embodiments of the present application. However, it will be appreciated by those skilled in the art that the technical scheme of the present application can be put into practice without one or more of the specific details, or other methods, components, devices, steps etc. can be adopted. In other cases, known methods, devices, implementations or operations are not shown or described in detail to avoid blurring the various aspects of the application.
[0035] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically separate entities. That is, these functional entities may be implemented in software, in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.
[0036] The flowcharts shown in the accompanying drawings are for illustrative purposes only and do not necessarily include all contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps may be decomposed, while others may be combined or partially combined. Therefore, the actual execution order may vary depending on the actual situation.
[0037] It should be understood that although the terms first, second, third, etc. may be used herein to describe various components, these components should not be limited by these terms. These terms are used to distinguish one component from another. Thus, the first component discussed below could be referred to as the second component without departing from the teachings of the present invention. As used herein, the term "and / or" includes any one and all combinations of one or more of the associated listed items.
[0038] Those skilled in the art will understand that the drawings are merely schematic diagrams of example embodiments, and the modules or processes in the drawings are not necessarily necessary for implementing the present application, and therefore cannot be used to limit the scope of protection of the present application.
[0039] The following introduces the technical terms involved in the embodiments of this application.
[0040] 1. OMNeT++: A discrete event-based network simulation tool widely used for simulation of communication networks and distributed systems.
[0041] 2. Dijkstra algorithm: a classic shortest path algorithm used to find the shortest path from one node to all other nodes in a graph.
[0042] 3. Dynamic Weight (A-Star) algorithm: A heuristic search algorithm that combines the security of the Dijkstra algorithm and the efficiency of the greedy algorithm to quickly find the optimal path.
[0043] 4. TR-AKA protocol: an authentication and key agreement protocol used between terminal devices and networks.
[0044] 5. MRSA protocol: a mobility management and switching protocol used in satellite networks.
[0045] 6. Integrated space-ground network: Combine ground network and satellite network to realize global coverage communication network.
[0046] 7. Distributed simulation: Through the collaborative work of multiple computers, large-scale system simulation can be achieved, improving simulation efficiency and scalability.
[0047] According to the first embodiment of the present invention, Figure 1As shown, the present invention provides a giant star constellation simulation system 100 based on OMNeT++, comprising:
[0048] The path planning module 110 is configured to adopt a dynamic weight algorithm to construct a dynamic weight model to obtain a path dynamic weight, and generate an optimal planned path for the satellite based on the path dynamic weight;
[0049] The operating mode adjustment module 120 is used to monitor the system operating status in real time, determine the target operating mode based on the label information of each module in the system, and send an adjustment signal for adjusting to the target operating mode to each module in the corresponding system;
[0050] The protocol simulation module 130 is used to process various protocol messages in the handleMessage function and transmit the simulation result data to the simulation function implementation module;
[0051] The simulation function realization module 140 is used to complete the orbital operation simulation of the satellite according to the optimal planning path, adjustment signal and simulation result data.
[0052] The path planning module 110 generates path data based on real-time environmental factors and transmits it to the simulation function implementation module 140 to provide path guidance for satellite simulation operation; the working mode adjustment module 120 dynamically adjusts the working mode of itself and other modules through labels according to the system operation status and task requirements, and its adjustment instructions will be synchronized to the protocol simulation module 130 and the simulation function implementation module 140; after processing various protocol messages, the protocol simulation module 130 transmits the simulation result data to the simulation function implementation module 140 to support the authenticity of the simulation scene; the simulation function implementation module 140 integrates the path data of the path planning module, the mode instructions of the working mode adjustment module 120 and the simulation result data of the protocol simulation module 130 to complete the efficient simulation of tens of thousands of satellites, and transmits the simulation process data to the data display module for visual presentation to form a complete data closed loop.
[0053] Furthermore, the path planning module 110 may include a data collection submodule, a dynamic weight model submodule, a calculation submodule, and a confirmation submodule.
[0054] The data acquisition submodule is used to collect the energy consumption rate E of the satellite in real time. rate , current task load L task , link delay time T delay , and the position coordinates of the satellite in the space coordinate system (x sat ,y sat ), target point position coordinates (x target ,y target ).
[0055] The dynamic weight model submodule is used to calculate the energy consumption weight, task load weight, and link delay weight based on the data collected by the data acquisition module. The calculation process of the dynamic weight model submodule for each weight is as follows:
[0056] 1) Energy consumption weight calculation: According to the satellite's energy consumption rate E rate , set the energy consumption weight coefficient ω E , through the formula (where E max The energy consumption weight is calculated based on the maximum value of the satellite energy consumption rate, which reflects the influence of the energy consumption factor in path planning.
[0057] 2) Task load weight calculation: Based on the current task load L task , determine the task load weight coefficient ω L , using the formula (L max The task load weight is calculated based on the maximum value of the task load, which reflects the effect of the task load on the path selection.
[0058] 3) Link delay weight calculation: Based on the link delay time T delay , get the link delay weight coefficient ω T ,pass (T max The link delay weight is calculated based on the maximum value of the link delay time, which is used to measure the importance of link delay in path planning.
[0059] Among them, the calculation submodule is used to calculate the actual cost, heuristic estimated cost and the total estimated cost using Manhattan distance combined with dynamic weights based on the calculation results of the dynamic weight model module and the data collected by the data acquisition module.
[0060] Specifically, the calculation submodule calculates the actual cost g(n) in the following process: assuming that node n is a certain position state of the satellite in the path planning; starting from the starting point (the node corresponding to the satellite's position at the starting moment), in the process of moving to node n, the actual cost g(n) is calculated based on the actual path and the weight of each path segment. For example, if there are k paths from the starting point to node n, the weight of the i-th path segment is ω i , the path length is d i ,but ω i =αω E +βω L +γω T , where ω E is the energy consumption weight, ω L is the task load weight, ωT is the link delay weight, α, β, γ are weight coefficients, and α+β+γ=11.
[0061] The calculation submodule calculates the heuristic estimated cost h(n) in the following process: using Manhattan distance combined with dynamic weight to calculate the heuristic estimated cost h(n), given that the coordinates of node n are (x n ,y n ), the target point coordinates are (x target ,y target ), while taking into account dynamic weights. First calculate the Manhattan distance d manhattan =|x n -x target |+|y n -y target |, then combined with dynamic weights get
[0062] The calculation submodule calculates the total estimated cost f(n) in the following process: the total estimated cost from the starting point to the end point through the node n is f(n) = g(n) + h(n). Each time, the node with the smallest f(n) is selected as the current optimal node for expansion, and the g(n) and h(n) of the adjacent nodes are updated until the end point end is expanded. At this time, the path g(end) is the optimal solution. Since the entire process selects nodes for expansion according to the principle of minimum f(n), this path is the optimal satellite path determined by the confirmation submodule under the current algorithm rules.
[0063] Furthermore, the working mode adjustment module 120 may include a path weight real-time adjustment submodule, a label monitoring submodule, a working mode confirmation submodule, and an adjustment signal sending submodule.
[0064] Among them, the path weight real-time adjustment submodule is used to dynamically adjust the path weight by monitoring the status change events of the satellite and the ground station, and the adjustment signal sending submodule feeds back the dynamically adjusted path weight to the path planning module 120 so that the path planning module 120 updates the path weight.
[0065] Specifically, the path weight real-time adjustment submodule updates the path weight in real time and dynamically adjusts the path planning by monitoring the status change events of satellites and ground stations. i (t) changes with time t and is updated by real-time events. The calculation formula of the dynamic weight model is ω i (t) = α i BaseWeight(i)+β i ·Adjustment(i,Events). Among them, α i and β iis the basic weight and adjustment coefficient, and α i +β i = 1, Adjustment(i,Events) is the weight offset calculated based on real-time events, and BaseWeight(i) represents the base weight. This model dynamically adjusts the weights of various objectives in path planning based on the real-time status of the satellite and ground station, such as energy consumption and link latency. When satellite link latency increases, the model reduces the "delay target weight" to make path planning more realistic. When ground station load is too high, the "energy consumption weight" in that area is increased, prompting the satellite to choose a low-energy path to reduce the burden on the ground station. When severe weather poses a risk to the path, the "path reliability weight" is increased to prioritize the stability of the communication path.
[0066] The label monitoring submodule is used to continuously monitor the label information of each module in the system. The label information includes at least the function identification information, task priority information and operation status information of each module. Specifically, the label monitoring submodule continuously monitors the label information of each module in the system. The label includes the function identification of the module, such as the communication and remote sensing functions of the satellite module; the label also includes the task priority of the module, which is divided into normal, important, urgent, etc.; the label also includes the operation status of the module, such as normal, fault warning, maintenance and other key information.
[0067] The working mode confirmation submodule is used to confirm the target working mode required by the current system based on the label information. The working modes include at least a high-efficiency energy-saving mode and a high-precision processing mode. Specifically, when the system load is high, such as when the priority of multiple module tasks is urgent and the resource occupancy rate exceeds the threshold, the working mode confirmation submodule confirms and judges that it should switch to a high-efficiency energy-saving mode; when performing high-precision tasks, such as when the satellite performs a high-precision remote sensing task and the relevant modules are in good operating condition, the working mode confirmation submodule determines to switch to a high-precision processing mode. The working mode confirmation submodule accurately determines the working mode required by the current system through in-depth analysis of the label information.
[0068] The adjustment signal sending submodule is used to send an adjustment signal for adjusting to the target operating mode to each corresponding module in the system, based on the target operating mode confirmed by the operating mode confirmation submodule. Specifically, after the operating mode confirmation submodule determines the operating mode, the adjustment signal sending submodule sends the adjustment signal to itself and other related modules. Each module adjusts parameters and switches functions based on the adjustment signal. In energy-efficient mode, the satellite module reduces transmit power and minimizes non-critical operations; the ground station module optimizes data processing to reduce resource consumption; and the data center module adjusts storage strategies to reduce energy consumption. Through the coordinated response of each module, dynamic adjustment of the system's operating mode is achieved, improving the overall system performance and adaptability.
[0069] Furthermore, the protocol simulation module 130 may include a message classification submodule and a protocol processing submodule. The message classification submodule is used in the handleMessage function to classify and process messages based on their labels, including initialization messages, task request messages, data transfer messages, and protocol interaction messages. The protocol processing submodule is used in the handleMessage function to implement state machine management for the TR-AKA and MRSA protocols, tracking each stage of protocol execution to ensure correct protocol interaction.
[0070] For details on the TR-AKA protocol, please refer to Figure 2 , Figure 2 The following schematically shows the implementation flow chart of the TR-AKA protocol. Figure 2 As shown in Figure 1, the TR-AKA protocol is divided into two modules: the UE and the SN. The UE is distributed in the ground station module, and the SN is distributed in the satellite module. Data exchange between the modules is carried out using the SHA256 algorithm.
[0071] During the UE module's transmission phase, the module uses a random number r and parameters such as a, b, k, and SUPI to perform an XOR operation to obtain y. The SHA256 algorithm is then applied to y to obtain z and h. The calculated a, b, y, z, and h are stored in an array M, which is then sent to the SN. The module then checks whether use is equal to true. If so, it assigns SQN+1 to SQN and false to use, waiting to receive messages from the SN.
[0072] The UE module receives data M1 from the SN and performs a SHA256 calculation on the data in M1 to obtain a1, b1, SQN1, K1, and INS. It then checks whether the first data in M1 is equal to INS. If so, the value of use is set to true.
[0073] The SN module receives data M from the UE and performs a SHA256 calculation on the data in M to obtain r and SUPI. Combining SUPI, r, and k, the module performs another SHA256 calculation to obtain r1, SQN1, and h. The module checks whether h is equal to the fifth data in M and whether SQN1 is equal to SQN. If both are true, SQN1+1 is assigned to SQN.
[0074] The SN module sends the following data: Set the random number r1, use r1 and skn to perform the sha256 algorithm operation and XOR SUPI to obtain a1, XOR a1, skn and r1 to obtain b1, and perform the sha256 algorithm operation on the above data to obtain c, d, e, k1 and INS. These data are stored in M1 and sent to the UE.
[0075] For details on the MRSA protocol, please refer to Figure 3 , Figure 3 Schematically shows a flow chart of the MRSA switching protocol. Figure 3 As shown in the figure, the MRSA protocol is divided into four modules: UE, S-gNB, T-gNB, and AMF. The UE is distributed in the ground station module, the S-gNB and T-gNB are distributed in the satellite module, and the AMF is distributed in the amf module. The modules exchange data using the AES algorithm. Please continue to refer to Figure 3 ,The MRSA switching protocol process includes the following steps:
[0076] (1) Workflow of UE module:
[0077] 1) Sending process:
[0078] Based on the newly generated random masks mask1 and mask2, combined with parameters such as KAMF (AMF key), KgNB, and NCC, the UE performs the following steps: Using the AES encryption algorithm, mask1 and mask2 are encrypted with KAMF to generate a temporary key, K_temp. KgNB and NCC are used as inputs, and AES encryption is performed on K_temp to generate new security parameters, Auth_token and Seq_num (sequence number), which are used to identify security during the handover process. The generated mask1, mask2, Auth_token, Seq_num, and the UE identifier (such as SUPI or temporary identifier GUTI) are encapsulated into the message M_UE. M_UE is sent to the current serving satellite (S-gNB) via the ground station module to initiate a handover request or notify the handover requirement. The UE determines whether the NCC or other security parameters need to be updated. If so, NCC+1 is assigned to the NCC and the status is marked as pending AMF confirmation, awaiting a response from the S-gNB or AMF.
[0079] 2) Receiving process:
[0080] When the UE receives the Handover Confirmation message M_SgNB or M_TgNB from the S-gNB or T-gNB, it parses the Auth_token and Seq_num in the message and verifies the integrity and legitimacy of the message using the locally stored KAMF and KgNB through AES decryption. If verification succeeds, the UE updates the local security context (e.g., KgNB or NCC) and completes the connection establishment with the target satellite (T-gNB). If verification fails, the UE re-initiates a Handover Request or notifies the AMF for re-authentication.
[0081] (2) Workflow of the S-gNB module:
[0082] 1) Sending process:
[0083] After receiving the handover confirmation from the AMF, the S-gNB encrypts the KgNB and NCC using the AES algorithm to generate new security parameters K_TgNB (target satellite key) and NCC_new to ensure handover security. K_TgNB, NCC_new, and the UE's identifier are encapsulated in the M_Forward message and sent to the target satellite T-gNB via inter-satellite communication. The UE is notified of the handover target and sent an M_SgNB message containing the target T-gNB's identifier and new security parameters.
[0084] 2) Receiving process:
[0085] When the S-gNB (source satellite) receives the M_UE message from the UE, it parses the mask1, mask2, Auth_token, and Seq_num in the message to extract the UE's identity and security parameters. It then performs AES decryption using the locally stored KgNB and KAMF (provided by the AMF) to verify the validity of the Auth_token and Seq_num. If verification succeeds, the S-gNB determines whether a handover is necessary (e.g., if UE signal strength decreases or the target satellite T-gNB has a better signal). If a handover is necessary, the S-gNB generates a handover request message, M_Switch, containing the UE's identity, the current KgNB, the NCC, and the identity of the target T-gNB, and sends it to the AMF. If verification fails, the S-gNB sends an error response to the UE, prompting it to re-initiate the request.
[0086] (3) Workflow of the T-gNB module:
[0087] 1) Sending process:
[0088] When the handover is complete, the T-gNB uses the AES encryption algorithm to ensure the secure transmission of K_TgNB and NCC_new, generating the final authentication parameter, Final_Auth. The Final_Auth, resource allocation information, and T-gNB identifier are encapsulated in the M_TgNB and sent to the UE, completing the handover process. The local database is also updated to record the UE's connection status and security context.
[0089] 2) Receiving process:
[0090] When the T-gNB (target satellite) receives the M_Forward message from the S-gNB, it parses the K_TgNB, NCC_new, and UE identifier in the message and performs AES decryption verification using the locally stored KAMF. If verification succeeds, the T-gNB allocates radio resources to the UE and generates a handover confirmation message, M_TgNB, containing K_TgNB, NCC_new, and resource allocation information. The M_TgNB is sent to the UE (forwarded via the ground station) and notifies the AMF of the handover completion. If verification fails, the T-gNB sends an error response to the S-gNB, requesting the handover be reinitiated.
[0091] (IV) Workflow of the AMF module:
[0092] 1) Sending process:
[0093] Sending a message to the T-gNB: The AMF processes the message received from the T-gNB, performs calculations, and then sends the processed message to the T-gNB, i.e., P2 = [m2], to assist the T-gNB in completing the handover process. Session establishment and subsequent steps: After the session is established, the AMF sends the processed message P6 = [p] to the UE, prompting the UE to perform subsequent handover success operations and update relevant parameters. Simultaneously, the AMF also updates the NCC and other information.
[0094] 2) Receiving process:
[0095] When the AMF receives a handover request from an S-gNB or T-gNB, it parses the UE identity, KgNB, and NCC in the message and verifies the request's legitimacy using AES decryption using the locally stored KAMF. If verification succeeds, the AMF generates new security parameters (e.g., by updating the KAMF or KgNB) and calculates a new NCC and Auth_token. The new security parameters and handover confirmation are encapsulated in the M_AMF and sent to the S-gNB and T-gNB, respectively, to ensure the security of the handover process. If verification fails, the AMF sends an error response, instructing the S-gNB or T-gNB to re-initiate the request.
[0096] It should be noted that for exception handling generated during protocol processing: the protocol processing submodule can add an exception detection and recovery mechanism during message processing to handle exceptions such as message loss and verification failure, thereby improving system reliability.
[0097] Furthermore, the simulation function implementation module 140 includes a computation simulation submodule, a data display submodule and a distributed integration submodule.
[0098] The computational simulation submodule is used to simulate the orbital operation of satellite constellations based on OMNeT++. Specifically, it simulates the orbital operation of tens of thousands of satellites using OMNeT++, supporting dynamic adjustment of constellation parameters and constellation library management. It also provides real-time statistics on the location, orbit, and mission payload of satellites, ground stations, and users, supporting the simulation of communication, navigation, and remote sensing payloads. It also simulates authentication protocols, handover protocols, data transmission protocols, and routing protocols, supporting dynamic configuration and expansion of protocols. It also provides simulation support for user mission cases such as communication, navigation, and remote sensing.
[0099] The data display submodule uses OsgEarth to visualize the simulation results of the computational simulation submodule. Specifically, the data display submodule uses OsgEarth to visualize the orbital motion of the giant star constellations, supporting the display and hiding of nodes and links; displays node information and user task information in the form of drawers, taskbars, status lists, etc.; and implements management functions for constellation libraries, payloads, nodes, and other content.
[0100] The distributed integration submodule leverages OMNeT++'s distributed simulation capabilities, combined with multi-machine clustering technology, to assist the computational simulation submodule in simulating the orbital motion of the constellation's satellites. Specifically, this submodule leverages OMNeT++'s distributed simulation capabilities, combined with multi-machine clustering technology, to achieve smooth simulation of constellations with tens of thousands of satellites. It also improves the efficiency and performance of distributed simulations through task partitioning and load balancing.
[0101] In general, the path planning module generates path data based on real-time environmental factors and transmits it to the simulation function implementation module to provide path guidance for satellite simulation operation; the working mode adjustment module dynamically adjusts the working mode of itself and other modules through labels according to the system operation status and task requirements, and its adjustment instructions will be synchronized to the protocol simulation module and the simulation function implementation module; after processing various protocol messages, the protocol simulation module transmits the simulation result data to the simulation function implementation module to support the authenticity of the simulation scene; the simulation function implementation module integrates the path data of the path planning module, the mode instructions of the working mode adjustment module and the simulation result data of the protocol simulation module to complete the efficient simulation of tens of thousands of satellites, and transmits the simulation process data to the data display module for visual presentation, forming a complete data closed loop.
[0102] When the system is started, the path planning module first collects multi-factor data in the environment and calculates the optimal path using the shortest path algorithm; the working mode adjustment module monitors the system operation status in real time, determines whether the working mode needs to be adjusted based on the label, and sends the adjustment signal to other modules; after receiving the message, the protocol simulation module performs accurate simulation and reliable execution through the optimized handleMessage function; the simulation function implementation module combines the data of path planning, working mode and protocol simulation to complete computational simulation, data display and distributed integration. The modules work together to achieve efficient simulation of tens of thousands of satellites.
[0103] According to a second embodiment of the present invention, the present invention provides a giant star constellation simulation method based on OMNeT++. The giant star constellation simulation system 100 based on OMNeT++ of the first embodiment can implement the method of the second embodiment, such as Figure 4 As shown, the giant star constellation simulation method based on OMNeT++ includes the following steps:
[0104] Step S11, using a dynamic weight algorithm to construct a dynamic weight model to obtain a path dynamic weight, and generating an optimal planned path for the satellite based on the path dynamic weight;
[0105] Step S12: monitor the system operating status in real time, determine the target operating mode based on the label information of each module in the system, and send an adjustment signal for adjusting to the target operating mode to each module in the corresponding system;
[0106] Step S13, after processing various protocol messages in the handleMessage function, the simulation result data is transmitted to the simulation function implementation module;
[0107] Step S14, completing the satellite orbit simulation based on the optimal planned path, adjustment signal and simulation result data.
[0108] This method is based on the OMNeT++ simulation framework. To address the problems of complex path planning, flexible working mode switching, efficient protocol simulation and large-scale simulation implementation in the Giant Star constellation simulation, it innovatively combines a multi-factor dynamic path planning algorithm with a modular management mechanism. By building multiple functional modules to work together, it achieves efficient and accurate simulation of tens of thousands of satellites, meeting the needs of Giant Star constellation simulation software development.
[0109] According to a third embodiment of the present invention, the present invention provides an electronic device, such as Figure 5 As shown, Figure 5 It is a block diagram of an electronic device according to an exemplary embodiment.
[0110] Refer to the following Figure 5 hereinafter, an electronic device 200 according to this embodiment of the present application is described. Figure 5 The electronic device 200 shown is merely an example and should not limit the functions and scope of use of the embodiments of the present application.
[0111] like Figure 5 As shown, electronic device 200 is implemented as a general-purpose computing device. Components of electronic device 200 may include, but are not limited to, at least one processing unit 210, at least one storage unit 220, a bus 230 connecting various system components (including storage unit 220 and processing unit 210), a display unit 240, and the like.
[0112] The storage unit stores program codes, which can be executed by the processing unit 210, so that the processing unit 210 performs the steps described in this specification according to various exemplary embodiments of the present application. For example, the processing unit 210 can perform the following steps: Figure 4 Follow the steps shown in .
[0113] The storage unit 220 may include a readable medium in the form of a volatile storage unit, such as a random access memory unit (RAM) 2201 and / or a cache memory unit 2202 , and may further include a read-only memory unit (ROM) 2203 .
[0114] The storage unit 220 may also include a program / utility 2204 having a set (at least one) of program modules 2205, such program modules 2205 including but not limited to: an operating system, one or more application programs, other program modules and program data, each of which or some combination may include an implementation of a network environment.
[0115] Bus 230 may represent one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
[0116] The electronic device 200 can also communicate with one or more external devices 200' (e.g., a keyboard, a pointing device, a Bluetooth device, etc.), devices that allow a user to interact with the electronic device 200, and / or any device that allows the electronic device 200 to communicate with one or more other computing devices (e.g., a router, a modem, etc.). This communication can occur via an input / output (I / O) interface 250. Furthermore, the electronic device 200 can communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network such as the Internet) via a network adapter 260. The network adapter 260 can communicate with other modules of the electronic device 200 via the bus 230. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with the electronic device 200, including but not limited to microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0117] Through the description of the above embodiments, those skilled in the art can easily understand that the example embodiments described herein can be implemented by software, or by combining software with necessary hardware.
[0118] Therefore, according to a fourth embodiment of the present invention, the present invention provides a computer readable medium. Figure 6 As shown, the technical solution according to the embodiment of the present invention can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes a number of instructions to enable a computing device (which can be a personal computer, a server, or a network device, etc.) to execute the above method according to the embodiment of the present invention.
[0119] The software product can be any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can be, for example, but not limited to, a system, device or component of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination thereof. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.
[0120] The computer-readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, wherein the readable program code is carried. The data signal propagated may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. The readable storage medium may also be any readable medium other than a readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, device, or component. The program code contained on the readable storage medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination thereof.
[0121] The program code for performing the operations of the present invention may be written in any combination of one or more programming languages, including object-oriented programming languages such as Java, C++, and the like, as well as conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a stand-alone software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving a remote computing device, the remote computing device may be connected to the user computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0122] The computer-readable medium carries one or more programs. When the one or more programs are executed by the device, the computer-readable medium implements the functions of the first embodiment.
[0123] Those skilled in the art will appreciate that the modules described above can be distributed in the device according to the description of the embodiment, or can be modified accordingly to be used in one or more devices that are different from the embodiment. The modules of the above embodiment can be combined into one module or further divided into multiple submodules.
[0124] Through the description of the above embodiments, it is easy for those skilled in the art to understand that the example embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of the present invention can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes a number of instructions to enable a computing device (such as a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the method according to the embodiments of the present invention.
[0125] The above are merely preferred embodiments of the present invention and are not intended to limit the present invention. Those skilled in the art will readily appreciate that various modifications and variations of the present invention are possible. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present invention shall be included within the scope of protection of the present invention.
Claims
1. A giant star constellation simulation system based on OMNeT++, characterized in that: include: A path planning module is used to adopt a dynamic weight algorithm to construct a dynamic weight model to obtain a path dynamic weight, and generate an optimal planned path for the satellite based on the path dynamic weight; The working mode adjustment module is used to monitor the system operation status in real time, determine the target working mode based on the label information of each module in the system, and send the adjustment signal for adjusting to the target working mode to each module in the corresponding system; The protocol simulation module is used to process various protocol messages in the handleMessage function and then transmit the simulation result data to the simulation function implementation module; The simulation function implementation module is used to complete the satellite orbit operation simulation based on the optimal planning path, adjustment signal and simulation result data.
2. The giant star constellation simulation system according to claim 1, characterized in that: The path planning module includes: The data acquisition submodule is used to collect the satellite's energy consumption rate, current mission load, link delay time, and the satellite's position coordinates in the spatial coordinate system and the target point's position coordinates in real time; The dynamic weight model submodule is used to calculate the energy consumption weight, task load weight and link delay weight based on the data collected by the data acquisition module; The calculation submodule is used to calculate the actual cost, the heuristic estimated cost, and the total estimated cost using Manhattan distance combined with dynamic weights based on the calculation results of the dynamic weight model module and the data collected by the data collection module; The confirmation submodule is used to determine the optimal path of the satellite based on the total estimated cost.
3. The giant star constellation simulation system according to claim 2, characterized in that: The dynamic weight model submodule is specifically used to calculate the energy consumption weight, task load weight and link delay weight based on the following formula: Among them, ω E is the fixed energy consumption weight, E rate is the energy consumption rate of the satellite; ω L is the task load weight, E max is the maximum value of satellite energy consumption rate, L task is the current task load, L max is the maximum value of the task load; ω T is the link delay weight, T delay is the link delay time, T max is the maximum value of the link delay time; The calculation submodule calculates the actual cost, the heuristic estimated cost and the total estimated cost based on the following formula; f(n)=g(n)+h(n); (6) Among them, node n is a certain position state of the satellite in the path planning, g(n) is the actual cost of the satellite passing through k segments of the path from the starting point to node n, and the path weight of the i-th path is ω i , the path length is d i ,ω i =αω E +βω L +γω T , α, β, γ are weight coefficients, and α+β+γ=1; d manhattan =|x n -x target |+|y n -y target |, The coordinates of node n are (x n ,y n ), the target point coordinates are (x target ,y target ).
4. The giant star constellation simulation system according to claim 3, characterized in that: The working mode adjustment module includes: The label monitoring submodule is used to continuously monitor the label information of each module in the system; wherein the label information at least includes the function identification information, task priority information and operation status information of each module; A working mode confirmation submodule is used to confirm the target working mode required by the current system according to the label information; wherein the working mode includes at least a high-efficiency energy-saving mode and a high-precision processing mode; The adjustment signal sending submodule is used to send an adjustment signal for adjusting to the target working mode to each module in the corresponding system according to the target working mode confirmed by the working mode confirmation submodule.
5. The giant star constellation simulation system according to claim 4, characterized in that: The working mode adjustment module also includes: The path weight real-time adjustment submodule is used to dynamically adjust the path weight by monitoring the status change events of satellites and ground stations; The adjustment signal sending submodule is further configured to feed back the dynamically adjusted path weight to the path planning module.
6. The giant star constellation simulation system according to claim 5, characterized in that: The path weight real-time adjustment submodule dynamically adjusts the path weight using the following formula: ω i (t)=α i ·BaseWeight(i)+β i ·Adjustment(i,Events);(7) Among them, the path weight ω i (t) changes with time t, α i and β i is the basic weight and adjustment coefficient, and α i +β i =1, Adjustment(i,Events) is the weight offset calculated based on real-time events, and BaseWeight(i) represents the base weight.
7. The giant star constellation simulation system according to claim 6, characterized in that: The protocol simulation module includes: The message classification submodule is used to classify messages according to their labels in the handleMessage function; The protocol processing submodule is used to implement the state machine management of the TR-AKA protocol and the MRSA protocol in the handleMessage function, and track each stage of the protocol execution to ensure the correct interaction of the protocol.
8. The giant star constellation simulation system according to claim 7, characterized in that: The simulation function implementation module includes: The computational simulation submodule is used to simulate the satellite orbit operation of the constellation based on OMNeT++; The data display submodule is used to use OsgEarth to visually display the simulation results of the computational simulation submodule.
9. The giant star constellation simulation system according to claim 8, characterized in that: The simulation function implementation module includes: The distributed integration submodule is used to utilize the distributed simulation function of OMNeT++ and combine it with multi-machine cluster technology to assist the computing simulation submodule in realizing the satellite orbit operation simulation of the constellation.
10. A giant star constellation simulation method based on OMNeT++, characterized in that: include: A dynamic weight algorithm is used to construct a dynamic weight model to obtain a path dynamic weight, and an optimal planning path for the satellite is generated according to the path dynamic weight; Monitor the system's operating status in real time, determine the target operating mode based on the label information of each module in the system, and send adjustment signals for adjusting to the target operating mode to each module in the corresponding system; After processing various protocol messages in the handleMessage function, the simulation result data is transmitted to the simulation function implementation module; The satellite's orbital operation simulation is completed based on the optimal planned path, adjustment signals and simulation result data.
Citation Information
Patent Citations
Multi-aircraft joint simulation system
CN110674584A
Satellite modeling simulation calculation analysis system
CN117421901A
Satellite autonomous task planning method based on dynamic planning algorithm
CN118228958A
Improved ant colony unmanned aerial vehicle inspection method for satellite integrated smart power grid
CN119536300A
Multi-path routing dynamic scheduling method and device of satellite communication system and medium
CN119921843A