CN110412888B - Method, apparatus, medium, and electronic device for adjusting speed of simulation process - Google Patents

Method, apparatus, medium, and electronic device for adjusting speed of simulation process Download PDF

Info

Publication number
CN110412888B
CN110412888B CN201910356690.7A CN201910356690A CN110412888B CN 110412888 B CN110412888 B CN 110412888B CN 201910356690 A CN201910356690 A CN 201910356690A CN 110412888 B CN110412888 B CN 110412888B
Authority
CN
China
Prior art keywords
simulation
module
simulation module
frequency
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910356690.7A
Other languages
Chinese (zh)
Other versions
CN110412888A (en
Inventor
门慧勇
陈寅杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Everything Mirror Beijing Computer System Co ltd
Original Assignee
Dangjia Mobile Green Internet Technology Group Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dangjia Mobile Green Internet Technology Group Co ltd filed Critical Dangjia Mobile Green Internet Technology Group Co ltd
Priority to CN201910356690.7A priority Critical patent/CN110412888B/en
Publication of CN110412888A publication Critical patent/CN110412888A/en
Application granted granted Critical
Publication of CN110412888B publication Critical patent/CN110412888B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B17/00Systems involving the use of models or simulators of said systems
    • G05B17/02Systems involving the use of models or simulators of said systems electric

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The present disclosure relates to a method, apparatus, medium, and electronic device for adjusting a speed of a simulation process. The method comprises the following steps: responding to a received control instruction for representing acceleration or deceleration of a control simulation process, respectively determining second frequency for sending messages to each simulation module according to first frequency for sending messages to each simulation module in the simulation process, wherein if the control instruction represents acceleration, the second frequency of any simulation module is greater than the first frequency of the simulation module, and if the control instruction represents deceleration, the second frequency of any simulation module is less than the first frequency of the simulation module; and sending a trigger instruction carrying a time stamp to the simulation module corresponding to the second frequency according to each second frequency, wherein the time stamp is used for indicating the virtual time of the time server when the trigger instruction carrying the time stamp is sent. Therefore, the acceleration or deceleration of the simulation process can be realized, the time spent by the simulation process is freely controlled, and the development of research personnel is facilitated.

Description

Method, apparatus, medium, and electronic device for adjusting speed of simulation process
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a method, an apparatus, a medium, and an electronic device for adjusting a speed of a simulation process.
Background
At present, automatic driving becomes a hot topic in the vehicle field, a large number of test tasks need to be completed for realizing automatic driving, and in order to avoid unnecessary loss in the actual test process, a traffic simulation technology is generally utilized to complete testing in a simulation environment, so that the overhead is saved, and the risk of equipment damage is reduced. An important parameter in the simulation technology is simulation time, in the existing simulation process, the simulation time generally refers to actual time, and the timing standard is also the same as the actual time, that is, in the actual situation, a process occupying the time length of a is needed, and the simulation process needs to take the same time length of a to perform simulation. Taking a simulation test for the automatic driving system as an example, the content of the simulation test is that the automatic driving system completes a specific test task in a specific environment, and the accumulated mileage reaches a certain mileage. For a single test task, if task content which occurs very quickly in a short time exists in the test task, the simulation time length is the same as the actual time length, detailed analysis cannot be performed on the task content, and research and development of researchers are not facilitated; for the mileage requirement, it takes time for the actual mileage of the vehicle to reach the mileage required by the test, and it takes time for the simulation test, which also results in low simulation efficiency.
Disclosure of Invention
The invention aims to provide a method, a device, a medium and an electronic device for adjusting the speed of a simulation process, so as to adjust the speed of the simulation process.
In order to achieve the above object, according to a first aspect of the present disclosure, there is provided a method for adjusting a speed of a simulation process, applied to a time server, the method including:
responding to a received control instruction, respectively determining second frequencies for sending messages to each simulation module according to first frequencies for sending messages to each simulation module in a simulation process, wherein the control instruction represents and controls acceleration or deceleration of the simulation process, if the control instruction represents and controls acceleration of the simulation process, the second frequency corresponding to any simulation module is greater than the first frequency corresponding to the simulation module, and if the control instruction represents and controls deceleration of the simulation process, the second frequency corresponding to any simulation module is less than the first frequency corresponding to the simulation module;
and sending a trigger instruction carrying a timestamp to the simulation module corresponding to the second frequency according to each second frequency so as to trigger each simulation module to complete a simulation task corresponding to the corresponding timestamp, wherein the timestamp is used for indicating a virtual time of the time server when the trigger instruction carrying the timestamp is sent.
Optionally, the control instruction includes adjustment information characterizing a degree of speed adjustment to the simulation process;
the responding to the received control instruction, and respectively determining the second frequency of the message sent to each simulation module according to the first frequency of the message sent to each simulation module in the simulation process, includes:
and respectively determining second frequencies for sending messages to the simulation modules according to the adjusting information and the first frequencies.
Optionally, the adjustment information is a ratio of actual time occupied before and after adjustment for the same simulation process;
the determining, according to the adjustment information and the first frequency, a second frequency for sending messages to each of the simulation modules respectively includes:
acquiring a first frequency corresponding to a first target simulation module, wherein the first target simulation module is any simulation module;
calculating a second frequency f corresponding to the first target simulation module according to the following formula2
f2=f1*k
Wherein f is1And k is the ratio of the actual time length occupied by the same simulation process before and after adjustment to the first frequency corresponding to the first target simulation module.
Optionally, the sending, according to each second frequency, a trigger instruction carrying a timestamp to the simulation module corresponding to the second frequency to trigger each simulation module to complete a simulation task corresponding to the corresponding timestamp includes:
sending a trigger instruction carrying a timestamp for indicating a target virtual moment to a second target simulation module, wherein the second target simulation module is any one simulation module;
if a task completion message for indicating completion of the simulation task sent by the second target simulation module for the target virtual time is received and a task completion message of other simulation modules is received, determining an updated target virtual time and taking the updated target virtual time as a new target virtual time, and returning to the step of sending a trigger instruction carrying a time stamp for indicating the target virtual time to the second target simulation module, wherein the other simulation modules include a simulation module which needs to complete a simulation task before the updated target virtual time comes, except for the second target simulation module, the updated target virtual time is obtained by increasing a target time length on the basis of the non-updated virtual time, the value of the target duration is equal to the reciprocal of a second frequency corresponding to the second target simulation module.
Optionally, the sending, according to each second frequency, a trigger instruction carrying a timestamp to the simulation module corresponding to the second frequency further includes:
starting timing when a trigger instruction carrying a timestamp for indicating a target virtual time is sent to the second target simulation module, wherein the timing standard takes actual time as reference;
and if the timing time length is greater than or equal to the preset time length and the task completion message sent by the second target simulation module is not received, outputting prompt information for prompting the abnormality of the second target simulation module.
According to a second aspect of the present disclosure, there is provided an apparatus for adjusting a speed of a simulation process, applied to a time server, the apparatus comprising:
the determining module is used for responding to a received control instruction, and respectively determining second frequencies for sending messages to the simulation modules according to first frequencies for sending messages to the simulation modules in a simulation process, wherein the control instruction represents and controls the simulation process to accelerate or decelerate, if the control instruction represents and controls the simulation process to accelerate, the second frequency corresponding to any simulation module is greater than the first frequency corresponding to the simulation module, and if the control instruction represents and controls the simulation process to decelerate, the second frequency corresponding to any simulation module is less than the first frequency corresponding to the simulation module;
and a sending module, configured to send a trigger instruction carrying a timestamp to the simulation module corresponding to the second frequency according to each second frequency, so as to trigger each simulation module to complete a simulation task corresponding to the corresponding timestamp, where the timestamp is used to indicate a virtual time at which the time server is located when the trigger instruction carrying the timestamp is sent.
Optionally, the control instruction includes adjustment information characterizing a degree of speed adjustment to the simulation process;
the determining module comprises a determining submodule, and the determining submodule is used for respectively determining second frequencies for sending messages to the simulation modules according to the adjusting information and the first frequencies.
Optionally, the adjustment information is a ratio of actual time occupied before and after adjustment for the same simulation process;
the determination submodule is configured to:
acquiring a first frequency corresponding to a first target simulation module, wherein the first target simulation module is any simulation module;
calculating a second frequency f corresponding to the first target simulation module according to the following formula2
f2=f1*k
Wherein f is1And k is the ratio of the actual time length occupied by the same simulation process before and after adjustment to the first frequency corresponding to the first target simulation module.
Optionally, the sending module includes:
the sending submodule is used for sending a trigger instruction carrying a timestamp for indicating a target virtual moment to a second target simulation module, and the second target simulation module is any one simulation module;
an updating submodule, configured to, if a task completion message indicating completion of a simulation task and sent by the second target simulation module for the target virtual time is received and a task completion message of another simulation module is received, determining an updated target virtual time and taking the updated target virtual time as a new target virtual time, and returning to the step of sending a trigger instruction carrying a time stamp for indicating the target virtual time to the second target simulation module, wherein the other simulation modules include a simulation module which needs to complete a simulation task before the updated target virtual time comes, except for the second target simulation module, the updated target virtual time is obtained by increasing a target time length on the basis of the non-updated virtual time, the value of the target duration is equal to the reciprocal of a second frequency corresponding to the second target simulation module.
Optionally, the sending module further includes:
the timing submodule is used for starting timing when a trigger instruction carrying a timestamp for indicating a target virtual time is sent to the second target simulation module, wherein the timing standard takes actual time as reference;
and the output sub-module is used for outputting prompt information for prompting the abnormality of the second target simulation module if the timing duration is greater than or equal to the preset duration and the task completion message sent by the second target simulation module is not received.
According to a third aspect of the present disclosure, there is provided a computer readable storage medium having stored thereon a computer program which, when executed by a processor, performs the steps of the method of the first aspect of the present disclosure.
According to a fourth aspect of the present disclosure, there is provided an electronic device comprising:
a memory having a computer program stored thereon;
a processor for executing the computer program in the memory to implement the steps of the method of the first aspect of the disclosure.
According to the technical scheme, in response to receiving a control instruction for representing acceleration or deceleration of a control simulation process, according to the first frequency of the message sent to each simulation module in the simulation process, the second frequency of the message sent to each simulation module is respectively determined, and according to each second frequency, a trigger instruction with a time stamp is sent to the party corresponding to the second frequency in real time so as to trigger each simulation module to complete a simulation task corresponding to the corresponding time stamp. In this way, it is possible to realize acceleration or deceleration of the simulation process, to freely control the time taken by the simulation process, and by acceleration of the simulation process, problems can be found and solved in a short time, and by deceleration of the simulation process, more detailed studies can be made on the parts where problems occur, for example, for accident investigation. Therefore, research and development of research and development personnel are facilitated, and simulation with higher quality can be realized.
Additional features and advantages of the disclosure will be set forth in the detailed description which follows.
Drawings
The accompanying drawings, which are included to provide a further understanding of the disclosure and are incorporated in and constitute a part of this specification, illustrate embodiments of the disclosure and together with the description serve to explain the disclosure without limiting the disclosure. In the drawings:
FIG. 1 is a flow diagram of a method of adjusting a speed of a simulation process provided in accordance with one embodiment of the present disclosure;
fig. 2 is a schematic diagram of an exemplary scenario in which, in the method for adjusting the speed of the simulation process according to the present disclosure, a trigger instruction with a time stamp is sent to the simulation modules corresponding to the second frequencies according to the second frequencies, so as to trigger the simulation modules to complete the simulation tasks corresponding to the response time stamps;
fig. 3 is a schematic diagram of an exemplary scenario in which, in the method for adjusting the speed of the simulation process according to the present disclosure, a trigger instruction with a time stamp is sent to the simulation modules corresponding to the second frequencies according to the second frequencies, so as to trigger the simulation modules to complete the simulation tasks corresponding to the response time stamps;
FIG. 4 is a block diagram of an apparatus for adjusting a speed of a simulation process provided in accordance with one embodiment of the present disclosure;
FIG. 5 is a block diagram illustrating an electronic device in accordance with an example embodiment.
Detailed Description
The following detailed description of specific embodiments of the present disclosure is provided in connection with the accompanying drawings. It should be understood that the detailed description and specific examples, while indicating the present disclosure, are given by way of illustration and explanation only, not limitation.
FIG. 1 is a method of adjusting the speed of a simulation process, which may be applied to a timeserver (i.e., a timeserver in a simulation system), provided according to one embodiment of the present disclosure. The method may include the following steps.
In step 11, in response to receiving the control instruction, according to the first frequency of sending messages to each simulation module in the simulation process, respectively determining a second frequency of sending messages to each simulation module.
First, the time server, the simulation module, and the communication between the two will be briefly described. In the method provided by the disclosure, the time server is added in the simulation system, and the virtual time can be implemented in the whole simulation system. Illustratively, the virtual time may be the same as the actual time, or the virtual time may be different from the actual time. The simulation system comprises at least one simulation module, wherein the simulation module is configured to complete a simulation task corresponding to the simulation module, and the simulation module can complete the simulation task corresponding to a certain timestamp after receiving the timestamp. During the simulation process, the time server may communicate with the simulation modules to determine the simulation modules that join the time period, determine the completion of the simulation tasks of the simulation modules, and determine the simulation modules that leave the time period. The time server stores a period synchronization list used for recording the simulation modules added with the time periods. After receiving the join time period request sent by the simulation module, the time server adds information (for example, an ID of the simulation module) indicating the simulation module to the period synchronization list, and sends a join period response message to the simulation module, so that the simulation module successfully joins the time period. After receiving the leaving time period request sent by the simulation module, the time server deletes the information (for example, the ID of the simulation module) indicating the simulation module from the period synchronization list, and sends a leaving period response message to the simulation module, so that the simulation module leaves the time period successfully. In the simulation process, the time server may send a message (e.g., an instruction) to the simulation modules recorded in the periodic synchronization list, where the message may carry a timestamp, so that the corresponding simulation module completes a simulation task corresponding to the timestamp, and if the simulation module completes a certain simulation task, the time server may send a task completion message to the time server, so that the time server may know that the simulation task of the simulation module is completed. It should be noted that, in the method provided by the present disclosure, the simulation modules all refer to the simulation modules existing in the period synchronization list, and a description thereof will not be repeated hereinafter.
In the simulation process, the time server sends a message to the simulation module with the frequency set as a reference, and in an initial condition, that is, under the condition that the speed of the simulation process is not adjusted, the first frequency corresponding to the simulation module in step 11 may be the same as the frequency setting required by the simulation module. It should be noted that, because the frequency setting of each simulation module is different, the frequency of the message sent by the time server to each simulation module is also different, that is, each simulation module corresponds to its own first frequency, and the first frequency of the message sent to each simulation module in step 11 is actually the first frequency corresponding to each simulation module to send the message to the corresponding simulation module. Illustratively, if three simulation modules (module 1, module 2, and module 3) are added to the time period, and the first frequency corresponding to module 1 is 6Hz, the first frequency corresponding to module 2 is 3Hz, and the first frequency corresponding to module 3 is 1Hz, the time server sends a message to module 1 at a frequency of 6Hz, sends a message to module 2 at a frequency of 3Hz, and sends a message to module 3 at a frequency of 1 Hz.
For example, the time server may set its own frequency according to the frequency setting required by each simulation module in the periodic synchronization list. Preferably, the frequency of the timeserver itself may be the least common multiple of the frequency setting required by all simulation modules. For example, if there are three simulation (module 4, module 5, and module 6) modules added to the time period, and the frequency required by module 4 is set to 6Hz, the frequency required by module 5 is set to 3Hz, and the frequency required by module 6 is set to 4Hz, the timeserver can set its own frequency to 12Hz (12 being the least common multiple of 6, 3, and 4). The frequency of the timeserver itself can be used to update the virtual time of the timeserver. For example, if the time server itself has a frequency of 12Hz, then without the influence of other factors, the time server will update the virtual time of the time server at a frequency of 12Hz, and each update is increased by 1/12(s).
The control instructions may characterize controlling the simulation process to accelerate or decelerate. If the control instruction represents that the control simulation process is accelerated, the second frequency corresponding to any simulation module is greater than the first frequency corresponding to the simulation module; and if the control instruction represents that the simulation process is controlled to decelerate, the second frequency corresponding to any simulation module is smaller than the first frequency corresponding to the simulation module. For example, if three simulation modules (module 1, module 2, and module 3) are added to the time period, and the first frequency corresponding to module 1 is 6Hz, the first frequency corresponding to module 2 is 3Hz, and the first frequency corresponding to module 3 is 1Hz, then if the control instruction indicates that the control simulation process is accelerated, the second frequency corresponding to module 1 may be 12Hz, the second frequency corresponding to module 2 may be 6Hz, and the second frequency corresponding to module 3 may be 2 Hz.
In step 12, according to each second frequency, a trigger instruction with a time stamp is sent to the simulation module corresponding to the second frequency.
The timestamp may be used to indicate a virtual time at which the time server is located when the trigger instruction carrying the timestamp is sent. And the time server sends a trigger instruction with a time stamp to the simulation modules corresponding to the second frequencies according to the second frequencies so as to trigger the simulation modules to complete the simulation tasks corresponding to the corresponding time stamps. Taking the three simulation modules (module 1, module 2, and module 3) shown above as an example, the first frequency corresponding to module 1 is 6Hz, the first frequency corresponding to module 2 is 3Hz, the first frequency corresponding to module 3 is 1Hz, and the control instruction characterization controls the acceleration of the simulation process, so that the second frequency corresponding to module 1 is 12Hz, the second frequency corresponding to module 2 is 6Hz, and the second frequency corresponding to module 3 is 2 Hz. Then, for the module 1, the time server changes from sending a trigger command 6 times per second (before change) to sending a trigger command 12 times per second (after change), wherein, of the 12 trigger commands sent by the time server to the module after change, the first 6 trigger commands are the same as the 6 times sent before change (i.e. the carried timestamp is not changed), taking the example of applying the second frequency from the nth second, before change, the time server should send 6 trigger commands corresponding to the nth second, and after change, of the 12 trigger commands sent by the time server, the trigger command sent 6 times before change is the same as the 6 trigger commands sent n seconds before change, and the trigger command sent 6 times after change is the same as the 6 trigger commands sent n +1 seconds before change, so that after change, the simulation task that should take 2s (actual time) originally is completed within 1s (actual time), thereby realizing the acceleration of the control simulation process required by the control instruction. The same applies to module 2 and module 3, and the description is not repeated here. Correspondingly, if the control instruction represents to control the simulation process to decelerate, the time server reduces the frequency of sending messages to each simulation module, so that the simulation task which originally takes m1 (time length) takes m2 (time length, and m1< m2) to complete, and the effect of controlling the simulation process to decelerate is achieved.
By the scheme, in response to receiving a control instruction for representing acceleration or deceleration of a control simulation process, according to the first frequency of the message sent to each simulation module in the simulation process, the second frequency of the message sent to each simulation module is respectively determined, and according to each second frequency, a trigger instruction with a time stamp is sent to the simulation module corresponding to the second frequency so as to trigger each simulation module to complete a simulation task corresponding to the corresponding time stamp. In this way, it is possible to realize acceleration or deceleration of the simulation process, to freely control the time taken by the simulation process, and by acceleration of the simulation process, problems can be found and solved in a short time, and by deceleration of the simulation process, more detailed studies can be made on the parts where problems occur, for example, for accident investigation. Therefore, research and development of research and development personnel are facilitated, and simulation with higher quality can be realized.
In order to make those skilled in the art understand the technical solutions provided by the embodiments of the present invention, the following detailed descriptions are provided for the corresponding steps in the above.
First, in step 11, in response to receiving the control instruction, according to the first frequency of sending messages to each simulation module in the simulation process, the second frequency of sending messages to each simulation module is determined, and detailed description is given.
In one possible embodiment, the control commands may include adjustment information characterizing the degree of speed adjustment to the simulation process. Thus, in such an embodiment, step 11 may comprise the steps of:
and respectively determining second frequencies for sending messages to the simulation modules according to the adjusting information and the first frequencies.
The control instructions may include adjustment information that may be used to characterize the degree of speed adjustment to the simulation process. For the same simulation module, if the adjustment information represents that the speed adjustment degree of the simulation process is large, the difference between the first frequency and the second frequency of the simulation module can be larger, and if the adjustment information represents that the speed adjustment degree of the simulation process is small, the difference between the first frequency and the second frequency of the simulation module can be smaller.
In one possible embodiment, different adjustment gradients may be set for acceleration/deceleration of the simulation process, each adjustment gradient may correspond to a different frequency variation. For example, if two adjustment gradients B1 and B2 are set for acceleration/deceleration of the simulation process (the adjustment degree corresponding to B2 is greater than that corresponding to B1), the two adjustment gradients correspond to frequency change values C1 and C2(C2 is greater than C1), respectively. Then, if the control command indicates that the simulation process is accelerated and the tuning information included in the control command corresponds to the tuning gradient B2, if the first frequency of a certain simulation module is D1, the second frequency corresponding to the simulation module is D1+ C2. If the control command represents deceleration of the simulation process and the adjustment information included in the control command corresponds to the adjustment gradient B1, if the first frequency of a simulation module is D2, the second frequency corresponding to the simulation module is D2-C1. It should be noted that the adjustment gradients for acceleration and deceleration and the frequency change values corresponding to the adjustment gradients may be the same or different, and the adjustment gradients for acceleration and deceleration and the frequency change values corresponding to the adjustment gradients may be the same or different for different simulation modules, which is not limited in this disclosure.
In another possible implementation, the adjustment information may be a ratio of actual time taken before and after adjustment for the same simulation process. Illustratively, the adjustment information may be used to indicate a specific setting for the degree of adjustment. Taking the ratio of the actual time length occupied before and after the adjustment in the adjustment information as 2 examples, that is, the time length spent before the adjustment is 2 times of the time length used after the adjustment, that is, the simulation process is accelerated by 2 times; taking 1/2 as an example of the ratio of the actual time taken before and after the adjustment in the adjustment information, it is assumed that the time taken before the adjustment is half of the time taken after the adjustment, i.e. the simulation process is slowed down by 0.5 times.
Correspondingly, respectively determining a second frequency for sending messages to each simulation module according to the adjustment information and the first frequency, may include the following steps:
acquiring a first frequency corresponding to a first target simulation module;
a second frequency corresponding to the first target simulation module is calculated.
The first target simulation module may be any simulation module. It should be noted that, when the steps in the method are actually executed, each simulation module becomes the first target simulation module once, that is, the time server adjusts the frequency for each simulation module once. The frequency adjustment operation for each simulation module follows this step and the explanation for this step.
For example, the second frequency f corresponding to the first target simulation module pair may be calculated as follows2
f2=f1*k
Wherein f is1K is the ratio of the actual time length occupied before and after adjustment for the same simulation process, for the first frequency corresponding to the first target simulation module.
For example, if k is 2,i.e. the time taken before the adjustment is 2 times longer than the time taken after the adjustment, i.e. the simulation process is accelerated by 2 times, and the first frequency f of the first target simulation module13Hz, the second frequency f corresponding to the first target simulation module2=6Hz。
By adopting the mode, the adjustment degree of acceleration or deceleration in the simulation process can be accurately controlled, so that the controllability of the simulation process is stronger and the research is easy.
Next, the details of sending the trigger instruction with the time stamp to the simulation module corresponding to the second frequency according to each second frequency in step 12 will be described.
In one possible embodiment, step 12 may include the steps of:
and sending a trigger instruction with a time stamp to the simulation module corresponding to the second frequency according to each second frequency.
After determining the second frequency for each simulation module, the time server may send a trigger instruction to the corresponding simulation module according to the second frequency corresponding to each simulation module. For example, if there are two simulation modules (module 7 and module 8), where the second frequency of module 7 is 4Hz and the second frequency of module 8 is 6Hz, the time server may send a trigger instruction to module 7 at 4Hz and send a trigger instruction to module 8 at 6 Hz.
In another possible embodiment, considering that delay may occur when each simulation module executes a task, step 12 may include the following steps:
in the first step, a trigger instruction carrying a timestamp for indicating the target virtual time is sent to a second target simulation module;
in the second step, if a task completion message which is sent by the second target simulation module for the target virtual time and used for indicating completion of the simulation task is received and task completion messages of other simulation modules are received, the updated target virtual time is determined and is used as a new target virtual time, and the first step is returned.
The second target simulation module may be any simulation module. It should be noted that, when the steps in the method are actually executed, each simulation module becomes a second target simulation module, that is, the time server continuously sends a trigger instruction to each simulation module, but the operations of the time server on each second target simulation module are isolated from each other, that is, the second target simulation module is not changed in the process that the time server executes the two steps at the same time, and the situation that the second target simulation module is changed in the same process does not occur. The operation of the timeserver for each simulation module follows the steps described above and the explanation of the steps described above.
And sending a trigger instruction carrying a time stamp for indicating the target virtual time to a second target simulation module. And the second target simulation module can complete the simulation task corresponding to the timestamp after receiving the trigger instruction with the timestamp, and sends a task completion message for indicating the completion of the simulation task to the time server after the task is completed.
After receiving the task completion message sent by the second target simulation module for the target virtual time, the time server determines the updated target virtual time if the time server has received the task completion messages of other simulation modules. The other simulation modules comprise a simulation module which is except for the second target simulation module and needs to complete the simulation task before the updated target virtual time comes, the updated target virtual time is obtained by adding a target time length on the basis of the non-updated virtual time, and the value of the target time length is equal to the reciprocal of the second frequency corresponding to the second target simulation module.
The time server receives the task completion message sent by the second target simulation module for the target virtual time and the task completion messages of other simulation modules, and can show that all tasks needing to be completed before the updated target virtual time arrives are completed, so that the virtual time can be promoted, the virtual time of the time server is continued, and the updated target virtual time is updated. For the second target simulation module, the time difference between the updated target virtual time and the target virtual time before updating should be the period corresponding to the second target simulation module, that is, the reciprocal of the second frequency corresponding to the second target simulation module. If the task completion message sent by the second target simulation module for the target virtual time is not received, it indicates that the second target simulation module is delayed, so the updated target virtual time cannot be determined, and the target simulation module waits until the task completion message sent by the second target simulation module for the target virtual time is received and the task completion messages of other simulation modules are received, and the updated target virtual time cannot be determined. That is, if it is detected that there is a simulation module that does not complete a simulation task on time (no corresponding task completion message is received), in the method provided by the present disclosure, the time server will wait until all simulation modules that should complete a task return a task completion message, and in the waiting process, the time of the time server will not continue, that is, if the time server waits when the virtual time is P, before the time server waits for completion, no matter how much time actually elapses, the time server will remain at time P until all simulation modules that should complete a task return task completion messages. A detailed description will be given later in connection with a practical example.
After the updated target virtual time is determined, the updated target virtual time can be used as a new target virtual time, and the first step is returned, so that the simulation tasks of the simulation modules are continuously triggered according to the second frequency.
Fig. 2 and 3 are schematic diagrams of an exemplary scenario in which, according to each second frequency, a triggering instruction with a time stamp is sent to a simulation module corresponding to the second frequency to trigger each simulation module to complete a simulation task corresponding to a response time stamp in the method for adjusting the speed of a simulation process provided according to the present disclosure. As shown in fig. 2 and 3, the time server and three simulation modules (simulation module 31, simulation module 32, and simulation module 33) are shown, wherein the second frequency of the simulation module 31 is 6Hz, the second frequency of the simulation module 32 is 3Hz, the second frequency of the simulation module 33 is 1Hz, and in the figure, when the module 31 completes the task, the rectangle filled with white indicates that the module 32 completes the task, and the rectangle filled with black indicates that the module 33 completes the task. Fig. 2 is a schematic diagram of a scenario in which tasks of three modules are normally completed within 1s (no module is delayed) without task delay, and is used as a reference, wherein for convenience of description later, 1s is divided into six parts by using dashed lines of 0 to 6, which are marked in the figure and represent 7 time instants, a difference between two adjacent time instants is 1/6(s), and hereinafter, each time instant will be directly described with 0 to 6, and an actual time difference 1/6(s) is not described. The following explains a case where the module 31 delays between the time 1 and the time 2 (the module 32 and the module 33 normally complete the task within the time 1 s) with reference to fig. 3 and the above steps.
First, the module 31 will be described as a second target simulation module. At time 0, a trigger instruction needs to be sent to the module 31, so the first step is executed first, and the trigger instruction is sent to the module 31. Then, a task completion message of the module 31 is received, at this time, the updated target virtual time is 1 time, and only the module 31 is a simulation module that needs to complete the simulation task before the time comes, so that the updated target virtual time (1 time) can be used as a new target virtual time of the time server (correspondingly, the virtual time of the time server is 1 time at this time), and the first step is returned, that is, the trigger instruction is sent to the module 31 at 1 time. Then, a task completion message of the module 31 is received (as shown in fig. 3, it takes a lot of time to receive the task completion message of the module 31), at this time, the updated target virtual time is 2 times, and the simulation module that needs to complete the simulation task before this time comes has the module 32 in addition to the module 31, so that, if the task completion message of the module 32 has been received, the updated target virtual time (2 times) can be used as a new target virtual time of the time server (correspondingly, the virtual time of the time server at this time is 2 times), and the first step is returned, that is, the trigger instruction is sent to the module 31 at time 2. The subsequent steps are similar to those described above and are not repeated. The above description is from the perspective of the delay block (block 31) itself.
The description will be repeated from the perspective of the normal module, and the module 32 will be used as the second target simulation module. At time 0, a trigger instruction needs to be sent to the module 32, so the first step is executed first, and the trigger instruction is sent to the module 32. Then, a task completion message of the module 32 is received, at this time, the updated target virtual time is 2 times, and the simulation module that needs to complete the simulation task before the time comes has the module 31 in addition to the module 32, because the module 31 delays and does not receive the task completion message of the module 32 when receiving the task completion message of the module 32, the virtual time of the time server will be maintained at 1 time, and wait for the task completion message of the module 31, until receiving the task message from the module 31, the time server will not take the updated target virtual time (2 times) as a new target virtual time (correspondingly, the virtual time of the time server is 2 times), and return to the first step, that is, send a trigger instruction to the module 32 at 2 times. The subsequent processes are similar to those described above, and are not repeated here.
That is, the time server and the simulation module that normally completes the task wait for the simulation module that has delayed, and delay the current time until the simulation module that has delayed completes the task, so as to implement time synchronization.
By adopting the mode, through the time server and the time synchronization mechanism provided by the disclosure, the time synchronization of each simulation module can be realized, the mutual waiting among the simulation modules can be realized, and the time synchronization mechanism can be used as the basis of the acceleration or deceleration of the simulation process, so that the conditions of time dislocation, data disorder and the like in the acceleration or deceleration process of the simulation process are prevented, and the simulation quality is ensured.
In addition, on the basis of the above steps, in the method provided by the present disclosure, step 12 may further include the following steps:
starting timing when a trigger instruction carrying a timestamp for indicating the target virtual time is sent to a second target simulation module;
and if the timing time is longer than or equal to the preset time and the task completion message sent by the second target simulation module is not received, outputting prompt information.
For the condition that the task completion of the simulation module is delayed, if the simulation module cannot return the task completion message for a long time or the simulation module fails to return the task completion message, a timeout processing mechanism can be introduced to avoid the infinite waiting of the time server and other simulation modules. That is, the timing is started when the trigger instruction carrying the timestamp indicating the target virtual time is sent to the second target simulation module, where the timing standard should use the actual time as a reference, that is, the actual time elapsed after the trigger instruction is sent. If the timing time is longer than or equal to the preset time and the task completion message sent by the second target simulation module is not received yet, prompt information can be output to prompt that the second target simulation module is abnormal, so that a worker can conveniently process the task completion message. For example, the time server may output prompt information to a terminal where the staff member is located.
In addition, if the timing duration is greater than or equal to the preset duration and the task completion message sent by the second target simulation module is not received yet, the simulation module is abnormal, and at this time, the current simulation process can be stopped to wait for the processing of related personnel.
By adopting the mode, timing is started when the trigger instruction is sent to the second target simulation module, if the timing time reaches the preset time and the task completion message sent by the second target simulation module is still not received, the prompt message can be output to wait for the processing of related personnel, and the infinite waiting of the time server and the simulation module without abnormity is prevented.
Fig. 4 is a block diagram of an apparatus for adjusting a speed of a simulation process, which may be applied to a time server, as shown in fig. 4, according to an embodiment of the present disclosure, wherein the apparatus 40 includes:
a determining module 41, configured to respond to a received control instruction, and respectively determine, according to a first frequency of a message sent to each simulation module in a simulation process, a second frequency of the message sent to each simulation module, where the control instruction indicates to control acceleration or deceleration of the simulation process, if the control instruction indicates to control acceleration of the simulation process, the second frequency corresponding to any one simulation module is greater than the first frequency corresponding to the simulation module, and if the control instruction indicates to control deceleration of the simulation process, the second frequency corresponding to any one simulation module is less than the first frequency corresponding to the simulation module;
a sending module 42, configured to send a trigger instruction carrying a timestamp to the simulation module corresponding to the second frequency according to each second frequency, so as to trigger each simulation module to complete a simulation task corresponding to the corresponding timestamp, where the timestamp is used to indicate a virtual time at which the time server is located when the trigger instruction carrying the timestamp is sent.
Optionally, the control instruction includes adjustment information characterizing a degree of speed adjustment to the simulation process;
the determining module 41 includes a determining submodule, configured to determine, according to the adjustment information and the first frequency, a second frequency for sending a message to each of the simulation modules, respectively.
Optionally, the adjustment information is a ratio of actual time occupied before and after adjustment for the same simulation process;
the determination submodule is configured to:
acquiring a first frequency corresponding to a first target simulation module, wherein the first target simulation module is any simulation module;
calculating a second frequency f corresponding to the first target simulation module according to the following formula2
f2=f1*k
Wherein f is1And k is the ratio of the actual time length occupied by the same simulation process before and after adjustment to the first frequency corresponding to the first target simulation module.
Optionally, the sending module 42 includes:
the sending submodule is used for sending a trigger instruction carrying a timestamp for indicating a target virtual moment to a second target simulation module, and the second target simulation module is any one simulation module;
an updating submodule, configured to, if a task completion message indicating completion of a simulation task and sent by the second target simulation module for the target virtual time is received and a task completion message of another simulation module is received, determining an updated target virtual time and taking the updated target virtual time as a new target virtual time, and returning to the step of sending a trigger instruction carrying a time stamp for indicating the target virtual time to the second target simulation module, wherein the other simulation modules include a simulation module which needs to complete a simulation task before the updated target virtual time comes, except for the second target simulation module, the updated target virtual time is obtained by increasing a target time length on the basis of the non-updated virtual time, the value of the target duration is equal to the reciprocal of a second frequency corresponding to the second target simulation module.
Optionally, the sending module 42 further includes:
the timing submodule is used for starting timing when a trigger instruction carrying a timestamp for indicating a target virtual time is sent to the second target simulation module, wherein the timing standard takes actual time as reference;
and the output sub-module is used for outputting prompt information for prompting the abnormality of the second target simulation module if the timing duration is greater than or equal to the preset duration and the task completion message sent by the second target simulation module is not received.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
FIG. 5 is a block diagram illustrating an electronic device in accordance with an example embodiment. For example, electronic device 1900 may be provided as a server, e.g., a timeserver. Referring to fig. 5, an electronic device 1900 includes a processor 1922, which may be one or more in number, and a memory 1932 for storing computer programs executable by the processor 1922. The computer program stored in memory 1932 may include one or more modules that each correspond to a set of instructions. Further, the processor 1922 may be configured to execute the computer program to perform the above-described method of adjusting the speed of the simulation process.
Additionally, electronic device 1900 may also include a power component 1926 and a communication component 1950, the power component 1926 may be configured to perform power management of the electronic device 1900, and the communication component 1950 may be configured to enable communication, e.g., wired or wireless communication, of the electronic device 1900. In addition, the electronic device 1900 may also include input/output (I/O) interfaces 1958. The electronic device 1900 may operate based on an operating system, such as Windows Server, Mac OS XTM, UnixTM, Linux, etc., stored in memory 1932.
In another exemplary embodiment, a computer readable storage medium comprising program instructions which, when executed by a processor, implement the steps of the above-described method of adjusting the speed of a simulation process is also provided. For example, the computer readable storage medium may be the memory 1932 described above that includes program instructions executable by the processor 1922 of the electronic device 1900 to perform the method of adjusting the speed of a simulation process described above.
The preferred embodiments of the present disclosure are described in detail with reference to the accompanying drawings, however, the present disclosure is not limited to the specific details of the above embodiments, and various simple modifications may be made to the technical solution of the present disclosure within the technical idea of the present disclosure, and these simple modifications all belong to the protection scope of the present disclosure.
It should be noted that the various features described in the above embodiments may be combined in any suitable manner without departing from the scope of the invention. In order to avoid unnecessary repetition, various possible combinations will not be separately described in this disclosure.
In addition, any combination of various embodiments of the present disclosure may be made, and the same should be considered as the disclosure of the present disclosure, as long as it does not depart from the spirit of the present disclosure.

Claims (6)

1. A method of regulating the speed of a simulation process, applied to a time server, the method comprising:
in response to receiving a control instruction, respectively determining second frequencies for sending messages to each simulation module according to adjustment information included in the control instruction and first frequencies for sending messages to each simulation module in a simulation process, wherein the control instruction represents and controls acceleration or deceleration of the simulation process, if the control instruction represents and controls acceleration of the simulation process, the second frequency corresponding to any simulation module is greater than the first frequency corresponding to the simulation module, and if the control instruction represents and controls deceleration of the simulation process, the second frequency corresponding to any simulation module is less than the first frequency corresponding to the simulation module, and the adjustment information represents a speed adjustment degree of the simulation process;
according to each second frequency, sending a trigger instruction carrying a timestamp to the simulation module corresponding to the second frequency to trigger each simulation module to complete a simulation task corresponding to the corresponding timestamp, wherein the timestamp is used for indicating a virtual time of the time server when the trigger instruction carrying the timestamp is sent;
wherein, the determining, according to the adjustment information included in the control instruction and the first frequency of sending messages to each simulation module in the simulation process, the second frequency of sending messages to each simulation module respectively includes:
acquiring a first frequency corresponding to a first target simulation module, wherein the first target simulation module is any simulation module;
calculating correspondence to the first target simulation module according to the following formulaOf second frequency f2
f2=f1*k
Wherein f is1And k is the ratio of the actual time length occupied by the first frequency corresponding to the first target simulation module before and after adjustment in the same simulation process.
2. The method according to claim 1, wherein the sending, according to each of the second frequencies, a trigger instruction carrying a time stamp to the simulation module corresponding to the second frequency to trigger each of the simulation modules to complete a simulation task corresponding to the corresponding time stamp includes:
sending a trigger instruction carrying a timestamp for indicating a target virtual moment to a second target simulation module, wherein the second target simulation module is any one simulation module;
if a task completion message for indicating completion of the simulation task sent by the second target simulation module for the target virtual time is received and a task completion message of other simulation modules is received, determining an updated target virtual time and taking the updated target virtual time as a new target virtual time, and returning to the step of sending a trigger instruction carrying a time stamp for indicating the target virtual time to the second target simulation module, wherein the other simulation modules include a simulation module which needs to complete a simulation task before the updated target virtual time comes, except for the second target simulation module, the updated target virtual time is obtained by increasing a target time length on the basis of the non-updated virtual time, the value of the target duration is equal to the reciprocal of a second frequency corresponding to the second target simulation module.
3. The method according to claim 2, wherein the sending, according to each of the second frequencies, a trigger instruction carrying a time stamp to the simulation module corresponding to the second frequency further comprises:
starting timing when a trigger instruction carrying a timestamp for indicating a target virtual time is sent to the second target simulation module, wherein the timing standard takes actual time as reference;
and if the timing time length is greater than or equal to the preset time length and the task completion message sent by the second target simulation module is not received, outputting prompt information for prompting the abnormality of the second target simulation module.
4. An apparatus for adjusting the speed of a simulation process, for application to a time server, the apparatus comprising:
a determining module, including a determining submodule, configured to respond to a received control instruction, and determine, according to adjustment information included in the control instruction and a first frequency of sending a message to each simulation module in a simulation process, a second frequency of sending a message to each simulation module, respectively, where the control instruction represents to control acceleration or deceleration of the simulation process, if the control instruction represents to control acceleration of the simulation process, the second frequency corresponding to any one of the simulation modules is greater than the first frequency corresponding to the simulation module, and if the control instruction represents to control deceleration of the simulation process, the second frequency corresponding to any one of the simulation modules is less than the first frequency corresponding to the simulation module, and the adjustment information represents a speed adjustment degree to the simulation process;
a sending module, configured to send a trigger instruction carrying a timestamp to the simulation module corresponding to the second frequency according to each second frequency, so as to trigger each simulation module to complete a simulation task corresponding to the corresponding timestamp, where the timestamp is used to indicate a virtual time at which the time server is located when the trigger instruction carrying the timestamp is sent;
wherein the determination submodule is configured to:
acquiring a first frequency corresponding to a first target simulation module, wherein the first target simulation module is any simulation module;
calculating the first order according to the following formulaSecond frequency f corresponding to standard simulation module2
f2=f1*k
Wherein f is1And k is the ratio of the actual time length occupied by the first frequency corresponding to the first target simulation module before and after adjustment in the same simulation process.
5. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 3.
6. An electronic device, comprising:
a memory having a computer program stored thereon;
a processor for executing the computer program in the memory to carry out the steps of the method of any one of claims 1 to 3.
CN201910356690.7A 2019-04-29 2019-04-29 Method, apparatus, medium, and electronic device for adjusting speed of simulation process Active CN110412888B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910356690.7A CN110412888B (en) 2019-04-29 2019-04-29 Method, apparatus, medium, and electronic device for adjusting speed of simulation process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910356690.7A CN110412888B (en) 2019-04-29 2019-04-29 Method, apparatus, medium, and electronic device for adjusting speed of simulation process

Publications (2)

Publication Number Publication Date
CN110412888A CN110412888A (en) 2019-11-05
CN110412888B true CN110412888B (en) 2020-05-29

Family

ID=68357754

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910356690.7A Active CN110412888B (en) 2019-04-29 2019-04-29 Method, apparatus, medium, and electronic device for adjusting speed of simulation process

Country Status (1)

Country Link
CN (1) CN110412888B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111381516A (en) * 2020-02-26 2020-07-07 上海航天控制技术研究所 Automatic statistical method and system for testing time of complex system
CN114036645B (en) * 2021-11-16 2022-04-22 中智行科技有限公司 ROS-based simulation method and device and electronic equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105911986A (en) * 2016-04-25 2016-08-31 百度在线网络技术(北京)有限公司 Unmanned vehicle perception test system and test method
CN106873397A (en) * 2017-01-23 2017-06-20 同济大学 Intelligent network joins automobile " hardware in loop " accelerated loading emulation test system
CN106951627A (en) * 2017-03-15 2017-07-14 北京百度网讯科技有限公司 Emulation test method, device, equipment and the computer-readable recording medium of Vehicular automatic driving
CN107991898A (en) * 2016-10-26 2018-05-04 法乐第(北京)网络科技有限公司 A kind of automatic driving vehicle simulating test device and electronic equipment
CN108241354A (en) * 2016-12-26 2018-07-03 乐视汽车(北京)有限公司 For the test method of automatic Pilot analogue system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7706938B2 (en) * 2007-04-30 2010-04-27 International Truck Intellectual Property Company, Llc Automated synchronized service intervals for vehicles

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105911986A (en) * 2016-04-25 2016-08-31 百度在线网络技术(北京)有限公司 Unmanned vehicle perception test system and test method
CN107991898A (en) * 2016-10-26 2018-05-04 法乐第(北京)网络科技有限公司 A kind of automatic driving vehicle simulating test device and electronic equipment
CN108241354A (en) * 2016-12-26 2018-07-03 乐视汽车(北京)有限公司 For the test method of automatic Pilot analogue system
CN106873397A (en) * 2017-01-23 2017-06-20 同济大学 Intelligent network joins automobile " hardware in loop " accelerated loading emulation test system
CN106951627A (en) * 2017-03-15 2017-07-14 北京百度网讯科技有限公司 Emulation test method, device, equipment and the computer-readable recording medium of Vehicular automatic driving

Also Published As

Publication number Publication date
CN110412888A (en) 2019-11-05

Similar Documents

Publication Publication Date Title
CN106681924B (en) A kind of method for testing software and system
CN110412888B (en) Method, apparatus, medium, and electronic device for adjusting speed of simulation process
US20040210665A1 (en) Protocol testing system and protocol testing method
EP3107306A1 (en) Wavelength adjustment method and device for optical line terminal/optical network unit
CN109639534B (en) Method, device and computer storage medium for testing network transmission performance
US10877803B2 (en) Control apparatus, control method and non-transitory storage medium
WO2019205669A1 (en) Method, device, system and electronic device for controlling elevator
CN110457176A (en) For the monitoring method of distributed system, device, storage medium and electronic equipment
CN106796642B (en) Device detection method and system, electronic device, cloud robot system and computer program product
Pocovi et al. Measurement framework for assessing reliable real-time capabilities of wireless networks
WO2017113848A1 (en) Testing method, testing platform and simulated testing device for test case
CN111682993A (en) Automobile CAN bus signal simulation method and device
CN114545848A (en) Servo motor endurance test process monitoring method and device and computer equipment
WO2022063014A1 (en) Light source control method and apparatus for multi-light-source camera device, and medium and terminal
KR20200048633A (en) System and method for automatically testing software
CN110968119B (en) Control method and device for double-shaft synchronization
US20120155496A1 (en) Testing device, testing method, and computer readable storage medium
CN115658218B (en) Method, device, equipment and storage medium for accessing edge equipment to cloud
CN116074228A (en) Network card testing method and device, storage medium and electronic equipment
US20090083747A1 (en) Method for managing application programs by utilizing redundancy and load balance
CN111198758B (en) Windows software starting method and device based on SSH and computer equipment
CN110365538B (en) Port state control method, device, equipment and computer readable storage medium
US20100180279A1 (en) Field control device and field control method
CN109724467B (en) Joint debugging joint test system and method for space launching
CN109691019B (en) Apparatus and method for performing traffic simulation of a communication network

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Room 307, 3 / F, supporting public building, Mantingfangyuan community, qingyanli, Haidian District, Beijing 100086

Patentee after: Beijing Wuyi Vision digital twin Technology Co.,Ltd.

Address before: Room 307, 3 / F, supporting public building, Mantingfangyuan community, qingyanli, Haidian District, Beijing 100086

Patentee before: DANGJIA MOBILE GREEN INTERNET TECHNOLOGY GROUP Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220915

Address after: Room 315, 3rd Floor, Supporting Public Building, Mantingfangyuan Community, Qingyunli, Haidian District, Beijing 100000

Patentee after: Everything mirror (Beijing) computer system Co.,Ltd.

Address before: Room 307, 3 / F, supporting public building, Mantingfangyuan community, qingyanli, Haidian District, Beijing 100086

Patentee before: Beijing Wuyi Vision digital twin Technology Co.,Ltd.