CN111651369B - Method, device and equipment for carrying out simulation test on intelligent equipment - Google Patents

Method, device and equipment for carrying out simulation test on intelligent equipment Download PDF

Info

Publication number
CN111651369B
CN111651369B CN202010774901.1A CN202010774901A CN111651369B CN 111651369 B CN111651369 B CN 111651369B CN 202010774901 A CN202010774901 A CN 202010774901A CN 111651369 B CN111651369 B CN 111651369B
Authority
CN
China
Prior art keywords
subspace
simulation
class
intelligent equipment
environment
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
CN202010774901.1A
Other languages
Chinese (zh)
Other versions
CN111651369A (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.)
Zhejiang Sineva Intelligent Technology Co ltd
Original Assignee
Zhejiang Sineva Intelligent Technology 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 Zhejiang Sineva Intelligent Technology Co ltd filed Critical Zhejiang Sineva Intelligent Technology Co ltd
Priority to CN202010774901.1A priority Critical patent/CN111651369B/en
Publication of CN111651369A publication Critical patent/CN111651369A/en
Application granted granted Critical
Publication of CN111651369B publication Critical patent/CN111651369B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention provides a method, a device and equipment for carrying out simulation test on intelligent equipment, wherein the method comprises the following steps: dividing an environment space to be simulated to obtain a plurality of subspaces and corresponding sub-environment data thereof; when the subspace loading is triggered, loading the sub-environment data corresponding to the subspace for simulation, and simulating and operating intelligent equipment in the simulated subspace to perform application program testing; and when the switching condition is determined to be met in the test process, the current running state of the intelligent equipment is kept, the subspace adjacent to the subspace where the intelligent equipment is located is determined to be loaded, and the subspace loading is triggered. By utilizing the method provided by the invention, the efficiency of the simulation test can be improved, and the simulation test time can be shortened.

Description

Method, device and equipment for carrying out simulation test on intelligent equipment
Technical Field
The invention belongs to the technical field of intelligent equipment, and particularly relates to a method, a device and equipment for carrying out simulation test on intelligent equipment.
Background
At present, intelligent equipment is more and more widely applied, and simulation test is required to be carried out before the intelligent equipment leaves a factory. The intelligent device simulation test can generate the geometric figure of the intelligent device in a computer through an interactive computer graphic technology, a robotics theory and the like, and three-dimensionally display the geometric figure to determine the dynamic change process of the body and the working environment of the intelligent device. The intelligent equipment simulation technology is an indispensable test method in the fields of robotics and industry, has the advantages of rapid deployment and low cost, and can execute algorithm tests under high-risk extreme working conditions or long-time working conditions. For example, large-area indoor and outdoor environments can be built in a simulation environment, and the intelligent equipment can be tested in a large scene through real-time positioning and mapping algorithms.
The current process of the intelligent device simulation test is to obtain environment modeling data, load an application program of the intelligent device after the environment modeling data is simulated, and test the application program of the intelligent device by testing the running condition of the application program in the simulation environment.
However, as the scale and area of the simulation environment increase, the computing resources required for simulating the environment modeling data also increase, so that the occupied memory is large, and the time consumption for executing the application test in a large-area scene under the condition of limited computing resources also increases, the effect of the application test in the simulation environment is affected, and the simulation becomes very time-consuming.
Disclosure of Invention
The invention provides a method, a device and equipment for carrying out simulation test on intelligent equipment, and solves the problem that the test of an application program in a large-area scene consumes a lot of time and can influence the test effect of the application program in the simulation environment at present.
In a first aspect, the present invention provides a method for performing simulation test on an intelligent device, which is applied to the intelligent device, and includes:
dividing an environment space to be simulated to obtain a plurality of subspaces and corresponding sub-environment data thereof;
when the subspace loading is triggered, loading the sub-environment data corresponding to the subspace for simulation, and simulating and operating intelligent equipment in the simulated subspace to perform application program testing;
and when the switching condition is determined to be met in the test process, the current running state of the intelligent equipment is kept, the subspace adjacent to the subspace where the intelligent equipment is located is determined to be loaded, and the subspace loading is triggered.
Optionally, the determining that the switching condition is satisfied includes:
and if the subspace where the intelligent equipment is currently located is the second-class subspace, determining to complete the test task corresponding to the currently located subspace, and determining to meet the switching condition.
Optionally, the sub-environment data includes an identifier of the first type of sub-space and sub-environment data corresponding to the identifier, an identifier of the second type of sub-space and sub-environment data corresponding to the identifier, and inclusion relationship information between the first type of sub-space and the second type of sub-space.
Optionally, determining that the subspace where the intelligent device is currently located is a second-class subspace, including:
determining the position ranges corresponding to the first type subspace and the second type subspace according to the environment state information of the simulated subspace;
and determining the current position of the intelligent equipment according to the running state of the simulated intelligent equipment, and determining that the subspace where the intelligent equipment is currently located is the second-class subspace when the current position is determined to belong to the position range corresponding to the second-class subspace.
Optionally, determining to load a subspace adjacent to the subspace where the smart device is currently located includes:
recording the identifier of a second type subspace where the intelligent equipment is currently located, and determining the identifier of another first type subspace, except the currently loaded first type subspace, which contains the second type subspace according to the information of the inclusion relationship between the first type subspace and the second type subspace in the sub-environment data;
and loading the sub-environment data corresponding to the other first-class subspace.
Optionally, determining to load a subspace adjacent to the subspace where the smart device is currently located includes:
determining a second type of subspace where the intelligent equipment is located currently and a first type of subspace where the intelligent equipment is located currently;
and determining a first-class subspace which contains the second-class subspace and is adjacent to the current first-class subspace, and loading the adjacent first-class subspace.
Optionally, the subspace initially loaded is determined to be the subspace located at any end of a through line penetrating through the respective subspaces after the environment space is divided.
Optionally, the running state information of the intelligent device is saved while the application program test is performed, when the subspace loading is triggered, the environment data is loaded for simulation, and the intelligent device is run in the simulated subspace simulation for performing the application program test, further comprising:
determining whether the running state information of the intelligent equipment is stored;
if so, in the simulated subspace, simulating and operating the intelligent equipment to perform application program test according to the operating state information of the intelligent equipment.
Optionally, when it is determined in the test process that any one of the following simulation end conditions is met, ending the simulation process:
the intelligent device detects a specified object in the simulated subspace;
the testing time reaches the preset duration;
the intelligent equipment reaches a specified position in the simulated subspace;
collision occurs with a specified object in the simulation environment;
and loading all sub-environment data corresponding to the subspaces.
In a second aspect, the present invention provides an apparatus for performing simulation testing on an intelligent device, comprising a memory and a processor, wherein:
the memory is used for storing a computer program;
the processor is used for reading the program in the memory and executing:
dividing an environment space to be simulated to obtain a plurality of subspaces and corresponding sub-environment data thereof;
when the subspace loading is triggered, loading the sub-environment data corresponding to the subspace for simulation, and simulating and operating intelligent equipment in the simulated subspace to perform application program testing;
and when the switching condition is determined to be met in the test process, the current running state of the intelligent equipment is kept, the subspace adjacent to the subspace where the intelligent equipment is located is determined to be loaded, and the subspace loading is triggered.
Optionally, the multiple subspaces include a first-class subspace and a second-class subspace, where the second-class subspace is included in the first-class subspace, and two adjacent first-class subspaces include the same second-class subspace, and the determining, by the processor, that a handover condition is satisfied includes:
and if the subspace where the intelligent equipment is currently located is the second-class subspace, determining to complete the test task corresponding to the currently located subspace, and determining to meet the switching condition.
Optionally, the sub-environment data includes an identifier of the first type of sub-space and sub-environment data corresponding to the identifier, an identifier of the second type of sub-space and sub-environment data corresponding to the identifier, and inclusion relationship information between the first type of sub-space and the second type of sub-space.
Optionally, the determining, by the processor, that the subspace where the smart device is currently located is a second-class subspace includes:
determining the position ranges corresponding to the first type subspace and the second type subspace according to the environment state information of the simulated subspace;
and determining the current position of the intelligent equipment according to the running state of the simulated intelligent equipment, and determining that the subspace where the intelligent equipment is currently located is the second-class subspace when the current position is determined to belong to the position range corresponding to the second-class subspace.
Optionally, the determining, by the processor, to load a subspace adjacent to the subspace where the smart device is currently located includes:
recording the identifier of a second type subspace where the intelligent equipment is currently located, and determining the identifier of another first type subspace, except the currently loaded first type subspace, which contains the second type subspace according to the information of the inclusion relationship between the first type subspace and the second type subspace in the sub-environment data;
and loading the sub-environment data corresponding to the other first-class subspace.
Optionally, the determining, by the processor, to load a subspace adjacent to the subspace where the smart device is currently located includes:
determining a second type of subspace where the intelligent equipment is located currently and a first type of subspace where the intelligent equipment is located currently;
and determining a first-class subspace which contains the second-class subspace and is adjacent to the current first-class subspace, and loading the adjacent first-class subspace.
Optionally, the processor is further configured to:
and determining the initially loaded subspace as the subspace at any end of a penetrating line penetrating through all the subspaces after the environment space is divided.
Optionally, the running state information of the smart device is saved while the application program test is performed, when the subspace loading is triggered, the environment data is loaded for simulation, and the smart device is simulated and run in the simulated subspace for performing the application program test, where the processor is further configured to:
determining whether the running state information of the intelligent equipment is stored;
if so, in the simulated subspace, simulating and operating the intelligent equipment to perform application program test according to the operating state information of the intelligent equipment.
The processor is further configured to end the simulation process when it is determined during the test that any one of the following simulation end conditions is satisfied:
the intelligent device detects a specified object in the simulated subspace;
the testing time reaches the preset duration;
the intelligent equipment reaches a specified position in the simulated subspace;
collision occurs with a specified object in the simulation environment;
and loading all sub-environment data corresponding to the subspaces.
In a third aspect, the present invention provides an apparatus for performing simulation test on an intelligent device, including:
the space dividing unit is used for dividing the environment space to be simulated to obtain a plurality of subspaces and corresponding sub-environment data thereof;
the loading test unit is used for loading the sub-environment data corresponding to the subspace for simulation when the subspace loading is triggered, and operating the intelligent equipment in the simulated subspace for testing the application program;
and the switching unit is used for keeping the current running state of the intelligent equipment when the switching condition is determined to be met in the test process, determining to load the subspace adjacent to the subspace where the intelligent equipment is currently located, and triggering subspace loading.
The plurality of subspaces include a first class subspace and a second class subspace, the second class subspace is included in the first class subspace, and two adjacent first class subspaces include the same second class subspace, and the switching unit determines that a switching condition is satisfied, including:
and if the subspace where the intelligent equipment is currently located is the second-class subspace, determining to complete the test task corresponding to the currently located subspace, and determining to meet the switching condition.
Optionally, the sub-environment data includes an identifier of the first type of sub-space and sub-environment data corresponding to the identifier, an identifier of the second type of sub-space and sub-environment data corresponding to the identifier, and inclusion relationship information between the first type of sub-space and the second type of sub-space.
Optionally, the determining, by the switching unit, that the subspace where the smart device is currently located is a second-class subspace includes:
determining the position ranges corresponding to the first type subspace and the second type subspace according to the environment state information of the simulated subspace;
and determining the current position of the intelligent equipment according to the running state of the simulated intelligent equipment, and determining that the subspace where the intelligent equipment is currently located is the second-class subspace when the current position is determined to belong to the position range corresponding to the second-class subspace.
Optionally, the determining, by the switching unit, to load a subspace adjacent to the subspace where the smart device is currently located includes:
recording the identifier of a second type subspace where the intelligent equipment is currently located, and determining the identifier of another first type subspace, except the currently loaded first type subspace, which contains the second type subspace according to the information of the inclusion relationship between the first type subspace and the second type subspace in the sub-environment data;
and loading the sub-environment data corresponding to the other first-class subspace.
Optionally, the determining, by the switching unit, to load a subspace adjacent to the subspace where the smart device is currently located includes:
determining a second type of subspace where the intelligent equipment is located currently and a first type of subspace where the intelligent equipment is located currently;
and determining a first-class subspace which contains the second-class subspace and is adjacent to the current first-class subspace, and loading the adjacent first-class subspace.
Optionally, the method further comprises:
and the initial subspace determining unit is used for determining the initially loaded subspace to be the subspace which is positioned at any end of a penetrating line penetrating through all the subspaces after the environment space is divided.
Optionally, the switching unit stores the running state information of the intelligent device while performing the application program test, loads the environment data for simulation when triggering the subspace loading, runs the intelligent device in the simulated subspace simulation for performing the application program test, and is further configured to:
determining whether the running state information of the intelligent equipment is stored;
if so, in the simulated subspace, simulating and operating the intelligent equipment to perform application program test according to the operating state information of the intelligent equipment.
Optionally, the apparatus further comprises:
and the test ending unit is used for ending the simulation process when any one of the following simulation ending conditions is determined to be met in the test process:
the intelligent device detects a specified object in the simulated subspace;
the testing time reaches the preset duration;
the intelligent equipment reaches a specified position in the simulated subspace;
collision occurs with a specified object in the simulation environment;
and loading all sub-environment data corresponding to the subspaces.
In a fourth aspect, the present invention provides a computer program medium having a computer program stored thereon, which when executed by a processor, performs the steps of the method for performing a simulation test on an intelligent device as described above.
The invention provides a method, a device and equipment for carrying out simulation test on intelligent equipment, which can greatly improve the efficiency of the simulation test and shorten the simulation test time if being applied to the simulation test of a large-area simulation scene.
Drawings
FIG. 1 is a schematic diagram of a conventional process for performing simulation testing on an intelligent device;
FIG. 2 is a flowchart of a process for performing a simulation test on a smart device;
FIG. 3 is a functional block diagram of an apparatus for simulation testing of smart devices;
FIG. 4 is a flowchart illustrating a simulation test method according to an embodiment of the present invention;
FIG. 5 is a schematic diagram of a partitioning of a simulation environment space;
FIG. 6 is a schematic diagram of a device for performing simulation testing on an intelligent device;
fig. 7 is a schematic diagram of elements of an apparatus for performing simulation testing on a smart device.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
At present, intelligent equipment simulation has the advantages of rapid deployment and low cost, and algorithm tests under high-risk extreme working conditions or long-time working conditions can be executed. At present, a process of performing a simulation test on an intelligent device is shown in fig. 1, and mainly includes the following steps:
s101, acquiring environment modeling data, and simulating the environment modeling data by using a simulation engine;
step S102, loading an application program of the intelligent device in a simulation environment;
and step S103, testing the application program of the intelligent equipment by testing the running condition of the application program in the simulation environment.
However, as the scale and area of the simulation environment increase, the computing resources required for simulating the environment modeling data also increase, so that the occupied memory is large, and the time consumption for executing the application test in a large-area scene under the condition of limited computing resources also increases, the effect of the application test in the simulation environment is affected, and the simulation becomes very time-consuming. For example: the laser real-time positioning mapping algorithm of a wheeled mobile robot in an indoor environment of 20 ten thousand square meters is tested by using an open-source robot simulation engine Gazebo, so that if a 32G memory desktop computer is used for running the simulation task and loading a simulation environment of 20 ten thousand square meters at one time, the ratio of the simulation time lapse speed/the real time lapse speed is possibly lower than 0.1, namely the simulation speed is very slow, and the requirement for the simulation test of intelligent equipment cannot be met.
Example 1
In view of the above problems, the present invention provides a method for performing simulation test on an intelligent device, which is applied to perform simulation test on an intelligent device, and if the method is applied to the simulation test in a large-area simulation scene, the efficiency of the simulation test can be greatly improved, and the simulation test time can be shortened. As shown in fig. 2, the method comprises the steps of:
step S201, dividing an environment space to be simulated to obtain a plurality of subspaces and corresponding sub-environment data thereof;
the simulation test of the intelligent device needs to simulate an environment space in which the intelligent device may operate, wherein the environment space can be understood as a three-dimensional space, environment data describing the environment space can be information such as an area, coordinates, an object identifier in the space and the like, and the environment data exists on the computer device in a file form.
The environmental space may be one continuous space or a plurality of continuous spaces distributed in a spatially dispersed manner. The division of the environment space to be simulated in this embodiment refers to the division of a continuous space. One continuous space may be divided, or all or part of a plurality of continuous spaces may be divided into sub-spaces. For example, the target environment space is a factory, all environment space information of the whole factory is needed, and a continuous space is divided at this time; or the target environment space is a workshop of a factory, the required information comprises a plurality of workshops, and all of the plurality of continuous spaces are divided at the moment; the required information includes specific workshops, at which time a number of successive spatial segments are divided.
The sub-environment data is data describing each partitioned sub-space, and may specifically describe the type (e.g., factory environment, office building environment, etc.), the location, the area, object information at different locations, and the like of the sub-space.
Step S202, when the subspace loading is triggered, loading the sub-environment data corresponding to the subspace for simulation, and performing application program test by simulating and operating the intelligent equipment in the simulated subspace;
during the implementation process, the sub-environment data corresponding to the sub-environment can be loaded by using the simulation engine technology for simulation, namely, the simulation intelligent device is placed in the simulation subspace, the application program is loaded on the simulation intelligent device in the simulation subspace, and the operation result of the application program is tested, so that the operation condition of the intelligent device in the simulation subspace is realized.
Specifically, existing simulation engine software may be utilized, including but not limited to a gazebo, unreal, unity, and the like, which meet the following requirements:
the simulation engine can set simulation parameters such as simulation starting time, states of all elements of the simulation environment and states of the virtual intelligent devices in the simulation environment.
In order to support the simulation test, a storage space needs to be reserved on the device for performing the simulation test, where the storage space includes a designated storage location for storing the sub-environment data and the environment model library data obtained after the simulation, and includes information for storing the running state of the intelligent device in the simulation process, such as simulation state data generated in the running simulation process and needing to be recorded, such as simulation time, pose state of the intelligent device, and the like.
In this embodiment, the sub-environment data refers to computer data or programs for simulating a real environment in which the mobile robot operates, such as a simulation factory, an office, a street, and the like, and may be created by using a simulation engine such as a gazebo, a unified, and a unity.
The embodiment can be applied to the test of the application programs of the intelligent equipment with different purposes, such as navigation purposes and the like, and the specific application program is a computer program for running a tested algorithm, such as a laser slam program, a visual slam program, a path planning program, a target detection program and the like.
Step S203, when the switching condition is determined to be met in the test process, the current running state of the intelligent device is kept, the subspace adjacent to the subspace where the intelligent device is located is determined to be loaded, and subspace loading is triggered.
In the embodiment of the invention, a program part for condition judgment is added in a simulation engine program, and the program part is used for determining that a switching condition is met according to the running condition of the intelligent equipment in a simulation environment.
The switching condition may be satisfied when the smart device runs to a specific location in the current subspace, where the specific location is a location simultaneously belonging to another subspace, and the another subspace is a subspace adjacent to the current subspace. Therefore, according to the stored running state information of the intelligent equipment, the running state of the intelligent equipment is not required to be changed, and the intelligent equipment is switched to another subspace to carry out simulation test.
The method for maintaining the running state of the intelligent device comprises the steps that in order to store the current running state of the intelligent device, the simulation engine jumps out of the current simulated subspace, the sub-environment data of the adjacent subspace is loaded from the environment data file, the simulation environment is switched from one subspace to the other subspace, when the simulation environment is switched to the other subspace, the running state information of the intelligent device which is stored recently is read locally, and the simulation running device continues to perform application program testing under the running state information.
By utilizing the method for carrying out simulation test on the intelligent equipment provided by the embodiment of the invention, after the simulation environment is switched, the simulation time is continuous, the virtual intelligent equipment still keeps the position and the posture before switching, and the simulation environment state of the intelligent equipment is consistent with that before switching, so that various pieces of virtual sensor information of the application program test program can be kept continuous, the continuous test of the test algorithm is not influenced, the simulation is carried out by splitting a large-area simulation environment into a plurality of small simulation environments, only one small simulation environment is loaded at a time, the simulation speed is greatly improved, and the efficiency of the simulation test is improved.
For the above example, with the simulation testing method provided by the embodiment of the present invention, an environment of 20 ten thousand square meters can be divided into 40 small environments of about 5000 square meters, and then the small environments are switched with each other by using the simulation scenario switching method in the embodiment, the simulation environment of a single load is only 5000 square meters, and the ratio of the "simulation time lapse speed/real time lapse speed" can be increased to about 0.7, so that the simulation efficiency is greatly increased under the condition of limited computing resources.
As shown in fig. 3, the simulation test method provided in the embodiment of the present invention can divide the following virtual function modules from the program function:
the environment model library 30 is used for storing sub-environment data obtained after the environment space to be simulated is divided, so that the simulation unit can call the required sub-environment data;
the environment space to be simulated refers to computer data or programs for simulating real environment running by the intelligent device, such as simulated factories, offices, streets and the like, and can be established by using simulation engines such as gazebo, unreal, unity and the like.
The algorithm unit to be tested 31 is used for testing application programs of the intelligent device with different purposes, such as navigation purposes, and the specific application program is a computer program for running the tested algorithm, such as a laser slam program, a visual slam program, a path planning program, a target detection program, and the like. The results of the algorithmic calculations, including but not limited to navigation targets, navigation routes, speed control commands, target detection results, etc., are provided to the simulation unit.
And the simulation unit 32 is used for operating a simulation program, specifically loading sub-environment data for simulation, simulating the operating condition of the intelligent device in the current subspace, and calling the environment data from the environment model library to provide the environment data for the algorithm unit to be tested.
The storage unit 33 is a storage space at a designated position in the computer, and is used for storing running state information of the intelligent device in the simulation process, such as simulation state data which is generated in the running simulation process and needs to be recorded, such as simulation time, pose state of the intelligent device, and the like.
The simulation unit 32 is internally divided into the following structures:
the simulation engine unit 321 is configured to set simulation parameters, such as a simulation start time, states of elements of the simulation environment, and states of the virtual smart devices in the simulation environment. The existing simulation engines which belong to the existing technology and meet the following requirements, including but not limited to gazebo, unreal, unity and the like. The simulation engine can set simulation parameters such as simulation starting time, states of all elements of the simulation environment and states of the virtual intelligent devices in the simulation environment. And realizing the simulation by loading the sub-environment data corresponding to the sub-environment, namely, arranging the simulation intelligent equipment in the simulation subspace, loading the application program on the simulation intelligent equipment in the simulation subspace, and testing the operation result of the application program.
The determining unit 322 is configured to determine whether to end the simulation, whether to satisfy the switching condition, and which subspace adjacent to the subspace where the intelligent device is currently loaded according to the output of the algorithm unit to be tested, the simulation environment data (including the simulation time), and the state of the virtual intelligent device in the simulation environment.
A switching unit 323, configured to control the simulation engine to end the simulation of the previous subspace (i.e., the subspace data being used by the simulation engine at this time) when the simulation end condition is fulfilled; when the switching condition is achieved, sequentially executing: a, recording necessary information when the condition is achieved and storing the information in a storage unit; b, controlling the simulation engine to finish the simulation of the last subspace (namely the subspace data used by the simulation engine at the moment); c extracting necessary information from the storage unit; d using the necessary information extracted in c as simulation parameters to control the simulation engine to start the simulation of the next subspace.
The information exchange among the units is described as follows:
interaction between the algorithm unit to be tested and the simulation unit: the simulation unit provides virtual sensor information for the algorithm unit to be tested, including but not limited to images, lasers, measurement values of an inertial measurement unit, collision detection results, odometer information, gps information and the like; the algorithm unit to be tested provides the simulation unit with algorithm calculation results including but not limited to navigation targets, navigation routes, speed control commands, target detection results and the like;
interaction of the environment model library and the simulation unit: the simulation unit calls the required sub-environment data from the environment model library;
interaction of the simulation unit and the storage unit: the simulation unit stores necessary information to the storage unit during the simulation process and also extracts necessary information from the storage unit.
The data processing inside the simulation unit mainly comprises the following contents:
a simulation engine: providing the virtual sensor information to an algorithm unit to be tested; receiving the algorithm calculation result of the algorithm unit to be tested; providing the simulation environment state and the virtual mobile robot state in the simulation environment to the judging unit and the switching unit; receiving a control command and simulation parameters of a switching unit; receiving the simulation environment information of the judging unit and calling the simulation environment from the environment model library according to the information;
a judging unit: receiving the algorithm calculation result of the algorithm unit to be tested; receiving a simulation environment state provided by a simulation engine and an intelligent device state in the simulation environment; sending an instruction for finishing simulation or switching simulation environments to the switching unit, and providing information of which simulation environment is switched to the simulation engine;
a switching unit: storing necessary information into a storage unit, and extracting the necessary information from the storage unit; receiving a simulation environment state provided by a simulation engine and a virtual mobile robot state in the simulation environment; receiving an instruction of ending simulation or switching simulation environment of the judging unit; and sending the control command and the simulation parameters to the simulation engine.
It should be noted that, the above units may be in the same simulation test device or different simulation test devices, and the above units are in different simulation test devices, and the above simulation devices transmit related information through a network connection.
As an optional implementation manner, in this embodiment, the dividing of the environment space to be simulated is performed according to the following rule, where the plurality of subspaces include a first-class subspace and a second-class subspace, the second-class subspace is included in the first-class subspace, and two adjacent first-class subspaces include the same second-class subspace. If the subspace where the intelligent device is currently located is the second-class subspace, and the testing task corresponding to the currently located subspace is determined to be completed, it is determined that the switching condition is met.
For each continuous space, the subspace may be divided according to the above rule, and the type of the divided subspace and the spatial data information of the subspace are placed in the sub-environment data, where the sub-environment data in this embodiment includes the identifier of the first class of subspace and its corresponding sub-environment data, the identifier of the second class of subspace and its corresponding sub-environment data, and the inclusion relationship information between the first class of subspace and the second class of subspace.
In the multiple subspaces obtained by dividing the continuous space, the adjacent subspaces are overlapped. For these overlapping locations, labeling needs to be done in the data in the sub-environment, identifying not only the overlapping locations, but also the specific spatial data of the overlapping locations.
In the simulation process, according to the environment state information of the simulated subspace, determining the position ranges corresponding to a first class subspace and a second class subspace, wherein the first class subspace is the first class subspace and the second class subspace corresponding to the current subspace;
and determining the current position of the intelligent equipment according to the running state of the simulated intelligent equipment, and determining that the subspace where the intelligent equipment is currently located is the second-class subspace when the current position is determined to belong to the position range corresponding to the second-class subspace.
Specifically, in the simulation process, an identifier of a second type subspace where the intelligent device is currently located may be recorded, and according to the inclusion relationship information between the first type subspace and the second type subspace in the sub-environment data, an identifier of another first type subspace, excluding the currently loaded first type subspace, that includes the second type subspace is determined; and loading the sub-environment data corresponding to the other first-class subspace.
It should be noted that, in the simulation process, when it is determined that any one of the following simulation end conditions is satisfied, the simulation process is ended:
the intelligent device detects a specified object in the simulated subspace;
the testing time reaches the preset duration;
the intelligent equipment reaches a specified position in the simulated subspace;
collision occurs with a specified object in the simulation environment;
and loading all sub-environment data corresponding to the subspaces.
It should be noted that, after one continuous partition is divided into a plurality of subspaces according to the rule provided in the embodiment of the present invention, the second type of subspace where the intelligent device is currently located and the first type of subspace where the intelligent device is currently located are determined; and determining a first-class subspace which contains the second-class subspace and is adjacent to the current first-class subspace, and loading the adjacent first-class subspace.
It should be noted that, after the continuous space division is performed, the sub-spaces are sequentially divided from beginning to end according to a penetration line, and the initial loaded sub-space is determined as the sub-space at any end of the penetration line penetrating through each sub-space after the environment space is divided, the sub-spaces may be loaded in the order from beginning to end, or the sub-spaces may be loaded in the order from end to end.
It should be noted that the initially loaded subspace may not be located at any end of the through line that penetrates through each subspace, and at this time, in the process of the simulation test, a process in which the same subspace is loaded multiple times may occur.
The following describes a specific process of the simulation test method in the embodiment of the present invention, with the above-mentioned intelligent device as a mobile robot, as shown in fig. 4, the method mainly includes the following steps:
step S401, dividing an environment space to be simulated to obtain a plurality of subspaces and corresponding sub-environment data thereof;
in this embodiment, a plurality of subspaces are obtained by dividing according to the following rules, and an environment model library is established:
generating a series of A-type subspaces according to the environmental space to be simulated, wherein each A-type subspace comprises a plurality of B-type subspaces (for example, a factory environment comprises a workshop environment, and an office building environment comprises an office environment); the class B subspaces of two spatially adjacent class a subspaces must be the same (subspace "same" means that the signals fed back to the mobile robot sensor by the simulation subspace are the same, and for this effect, including but not limited to building arrangement, article placement status, lighting conditions, etc., should be the same), as shown in fig. 5, a1 and a2 both contain B1, and B1 is a common part of a1 and a 2. B2 and B3 are the same, and B1, B2 and B3 are not necessarily the same, and B1, B2 and B3 cannot overlap with each other, that is, there cannot be any common portion. Thus, the environment to be simulated shown in fig. 5 is divided into four parts, a1, a2, A3 and a4, a1 includes B1 and B2, a2 includes B1, A3 includes B2 and B3, and a4 includes B3. That is, each class A simulation environment contains at least one class B simulation environment, and each class B simulation environment can only be contained by two class A simulation environments.
Storing the generated simulation environment model in an environment model library, and recording relevant information, including:
the identification name of each A-type subspace and the identification name of each B-type subspace are used as indexes to index corresponding sub-environment data; the corresponding relation between each A-type subspace and the contained B-type subspace; each class B subspace has a coordinate range in the overall simulation environment, e.g., B1{ x = (16, 20), y = (0, 3), z = (0, 2.5) }, B2{ x = (50, 53), y = (0, 9), z = (0, 2.5) } (unit meters).
Step S402, responding to a simulation starting instruction, triggering the loading of the designated subspace, and taking the designated subspace as the subspace needing to be loaded currently;
it should be noted that, after the environment space is divided, the subspaces at any end of the through line penetrating through the respective subspaces may be designated, that is, the subspaces may be loaded in an order from beginning to end, or the subspaces may be loaded in an order from end to end, for example, as shown in fig. 5, the entire space is divided into a1, a2, A3, a4, B1, B2, and B3, and at this time, the subspaces at any end of the through line penetrating through the respective subspaces are a2, a4, that is, the designated subspaces.
It should be noted that the designated subspace may not be located at any end of the through line that penetrates through each subspace, and at this time, in the process of the simulation test, a process in which the same subspace is loaded multiple times may occur. For example, as shown in fig. 5, any one of the subspaces a1, A3, B1, B2, and B3 may be designated as the designated subspace.
Step S403, loading the sub-environment data corresponding to the subspace needing to be loaded currently for simulation, and performing application program test by simulating and operating the mobile robot in the simulated subspace;
starting a simulation program, which comprises starting a simulation engine, a judging unit and a switching unit (without a sequence), so that the simulation engine calls a class A simulation environment which needs to be loaded currently from an environment model library, and loads a mobile robot virtual model in the simulation environment (note: the mobile robot virtual model can be stored in a storage space at a specified position in a computer without special requirements), and uses simulation parameters, wherein the simulation parameters comprise but are not limited to simulation time, the position posture of the mobile robot in the simulation environment, the position posture of an object in the simulation environment and the like; and starting the algorithm unit to be tested, wherein the simulation test is started completely.
Step S404, judging whether to finish the simulation or not in the process of carrying out application test on the intelligent equipment in the current subspace, if so, finishing the simulation, and if not, executing the step S405;
in the simulation, the judging unit continuously receives the output of the algorithm unit to be tested, the state of the simulation environment and the state of the virtual mobile robot in the simulation environment to judge whether to send an instruction for ending the simulation or switching the simulation environment (the following conditions are written in the program of the judging unit in advance).
The switching unit receives the instruction of the judging unit, and if the instruction is the instruction for ending the simulation, the simulation engine is controlled to end the current simulation (the ending of the algorithm unit to be tested can be manually or program controlled additionally, and is not in the discussion range of the method).
Conditions for ending the simulation test: the mobile robot detects a specified object in the simulated subspace, for example, the mobile robot can be set to detect that the object such as a stair, a door, a window and the like stops detecting; the testing time reaches a preset duration, for example, the testing time can be set to be one hour; the mobile robot reaches a specified position in the simulated subspace, such as a starting point or a target position; the mobile robot collides with a specified object in the simulation space, for example, the test is stopped when the mobile robot is set to collide with a wall; and the sub-environment data corresponding to all the subspaces are loaded, so that repeated tests are avoided.
Step S405, determining whether the switching condition is met, if so, executing step S406, otherwise, returning to step S403 to continue loading;
step S406, keeping the running state of the current mobile robot, determining to load the subspace adjacent to the subspace where the mobile robot is currently located, taking the adjacent subspace as the subspace needing to be loaded currently, and returning to the step S403 to start loading.
If the switching condition is met, an instruction for switching the simulation environment is sent, the type B environment in which the robot is located is judged according to the space position of the virtual mobile robot at the moment, another type A simulation environment except the type A simulation environment in operation at the moment is found according to the corresponding relation between the type A simulation environment and the type B simulation environment, and the name of the type A simulation environment is sent to the simulation engine to serve as the next simulation environment after switching.
Recording and storing necessary information in a storage unit, the necessary information including: current simulation time, current, virtual mobile robot position pose, number name, current position pose of an object in the simulation environment that has been collided by the robot and caused to move, etc. And controlling the simulation engine to end the current simulation.
Necessary information is extracted from the storage unit. Operations that may also be required here, depending on the implementation, are: receiving the name of the next simulation environment from the judging unit, extracting the simulation environment from the environment model library according to the name, modifying the simulation environment by using the necessary information extracted in the step, and then putting the modified simulation environment back to the environment model library. For example, when the simulation engine Gazebo is used, simulation time information needs to be written into the simulation environment in advance.
And controlling the simulation engine to start the simulation of the next simulation environment by using the necessary information extracted in the previous step as simulation parameters.
And the simulation engine calls the simulation environment from the environment model library to start simulation by using the simulation parameters provided by the switching unit and the simulation environment name provided by the judging unit under the control of the switching unit.
Specifically, in fig. 5, if the initially loaded subspace is a2, a2 includes B1, the subspace including B1 and adjacent to a2 is a1, and the adjacent subspace is loaded a 1;
adding sub-environment data corresponding to the subspace A1 for simulation, and performing application program test on the simulated subspace simulation operation intelligent device until the application program test is completed to B2, wherein the subspace including B2 and adjacent to A1 is A3, and the adjacent subspace A3 is loaded;
adding sub-environment data corresponding to the subspace A3 for simulation, and performing application program test on the simulated subspace simulation operation intelligent device until the application program test is completed to B3, wherein the subspace including B3 and adjacent to A3 is A4, and the adjacent subspace A4 is loaded;
and (4) simulating the sub-environment data corresponding to the subspace A4, and simulating and operating the intelligent equipment in the simulated subspace to perform application program test until all environment simulation tests are finished.
The subspace of the initial loading in fig. 5 may be a2 or a 4.
If A2 is selected as the initial loading subspace, the order of the subspaces loaded by the intelligent robot is as follows: a2, a1, A3, a 4; when the subspace is loaded to A4, all subspaces are loaded, and the simulation test process is finished;
if A4 is selected as the initial loading subspace, the order of the subspaces loaded by the intelligent robot is as follows: a4, A3, a1, a 2; when the subspace is loaded to A2, all subspaces are loaded, and the simulation test process is finished;
if the subspaces except A2 and A4 are selected as the initially loaded subspaces, repeated simulation tests are carried out on some subspaces; for example, if a1 is selected as the subspace of the initial load, the order of the subspaces loaded by the intelligent robot at this time may be: a1, a2, a1, A3, a4 or a1, A3, a4, A3, a1, a 2; when the test data is loaded to A4/A2, all subspaces are loaded, and the simulation test process is finished;
when the range to be tested is manually specified, for example, the range to be tested is specified to be a1, a2 and A3, the simulation test in the three subspaces is completed, and the simulation test is finished.
Example 2
The invention provides a device 600 for performing simulation testing on an intelligent device, comprising a memory and a processor, as shown in fig. 6, wherein:
the memory 602 is used for storing computer programs;
the processor 601 is used for reading the program in the memory and executing:
dividing an environment space to be simulated to obtain a plurality of subspaces and corresponding sub-environment data thereof;
when the subspace loading is triggered, loading the sub-environment data corresponding to the subspace for simulation, and carrying out application program test on the intelligent equipment subjected to simulation test in the simulated subspace simulation operation;
and when the switching condition is determined to be met in the test process, keeping the running state of the current equipment for carrying out simulation test on the intelligent equipment, determining to load the subspace adjacent to the subspace of the current equipment for carrying out simulation test on the intelligent equipment, and triggering subspace loading.
Optionally, the multiple subspaces include a first-class subspace and a second-class subspace, where the second-class subspace is included in the first-class subspace, and two adjacent first-class subspaces include the same second-class subspace, and the determining, by the processor, that a handover condition is satisfied includes:
and if the subspace where the intelligent equipment is currently located is the second-class subspace, determining to complete the test task corresponding to the currently located subspace, and determining to meet the switching condition.
Optionally, the sub-environment data includes an identifier of the first type of sub-space and sub-environment data corresponding to the identifier, an identifier of the second type of sub-space and sub-environment data corresponding to the identifier, and inclusion relationship information between the first type of sub-space and the second type of sub-space.
Optionally, the determining, by the processor, that the subspace where the device performing the simulation test on the intelligent device is currently located is a second-class subspace includes:
determining the position ranges corresponding to the first type subspace and the second type subspace according to the environment state information of the simulated subspace;
and determining the current position of the intelligent equipment for simulation test according to the running state of the simulated intelligent equipment for simulation test, and determining that the subspace where the intelligent equipment for simulation test is currently located is the second-class subspace when the current position is determined to belong to the position range corresponding to the second-class subspace.
Optionally, the determining, by the processor, to load a subspace adjacent to the subspace of the device for performing the simulation test on the smart device currently includes:
recording the identifier of the second type of subspace where the intelligent equipment subjected to simulation test is currently located, and determining the identifier of another first type of subspace, except the currently loaded first type of subspace, containing the second type of subspace according to the information of the inclusion relationship between the first type of subspace and the second type of subspace in the sub-environment data;
and loading the sub-environment data corresponding to the other first-class subspace.
Optionally, the determining, by the processor, to load a subspace adjacent to the subspace of the device for performing the simulation test on the smart device currently includes:
determining a second type of subspace where the intelligent equipment is located currently and a first type of subspace where the intelligent equipment is located currently;
and determining a first-class subspace which contains the second-class subspace and is adjacent to the current first-class subspace, and loading the adjacent first-class subspace.
Optionally, the processor is further configured to:
and determining the initially loaded subspace as the subspace at any end of a penetrating line penetrating through all the subspaces after the environment space is divided.
Optionally, the running state information of the device performing the simulation test on the intelligent device is saved while the application program test is performed, when the subspace loading is triggered, the environment data is loaded for simulation, and the device performing the simulation test on the intelligent device is performed in the simulated subspace simulation running, where the processor is further configured to:
determining whether running state information of equipment for carrying out simulation test on the intelligent equipment is stored;
if so, in the simulation subspace, carrying out simulation operation on the equipment for carrying out the simulation test on the intelligent equipment to carry out the application program test according to the operation state information of the equipment for carrying out the simulation test on the intelligent equipment.
The processor is further configured to end the simulation process when it is determined during the test that any one of the following simulation end conditions is satisfied:
detecting a specified object in a simulated subspace by equipment for carrying out simulation test on intelligent equipment;
the testing time reaches the preset duration;
the equipment for carrying out simulation test on the intelligent equipment reaches the designated position in the simulated subspace;
collision occurs with a specified object in the simulation environment;
and loading all sub-environment data corresponding to the subspaces.
In a third aspect, the present invention provides an apparatus for performing simulation test on an intelligent device, as shown in fig. 7, including:
the space dividing unit 701 is configured to divide an environment space to be simulated to obtain a plurality of subspaces and corresponding sub-environment data thereof;
a loading test unit 702, configured to load sub-environment data corresponding to a subspace for simulation when the subspace loading is triggered, and run an intelligent device in the simulated subspace for application program testing;
the switching unit 703 is configured to, when it is determined that a switching condition is satisfied in the test process, maintain the current operating state of the intelligent device, determine to load a subspace adjacent to the subspace where the intelligent device is currently located, and trigger subspace loading.
The plurality of subspaces include a first class subspace and a second class subspace, the second class subspace is included in the first class subspace, and two adjacent first class subspaces include the same second class subspace, and the switching unit determines that a switching condition is satisfied, including:
and if the subspace where the intelligent equipment is currently located is the second-class subspace, determining to complete the test task corresponding to the currently located subspace, and determining to meet the switching condition.
Optionally, the sub-environment data includes an identifier of the first type of sub-space and sub-environment data corresponding to the identifier, an identifier of the second type of sub-space and sub-environment data corresponding to the identifier, and inclusion relationship information between the first type of sub-space and the second type of sub-space.
Optionally, the determining, by the switching unit, that the subspace where the smart device is currently located is a second-class subspace includes:
determining the position ranges corresponding to the first type subspace and the second type subspace according to the environment state information of the simulated subspace;
and determining the current position of the intelligent equipment according to the running state of the simulated intelligent equipment, and determining that the subspace where the intelligent equipment is currently located is the second-class subspace when the current position is determined to belong to the position range corresponding to the second-class subspace.
Optionally, the determining, by the switching unit, to load a subspace adjacent to the subspace where the smart device is currently located includes:
recording the identifier of a second type subspace where the intelligent equipment is currently located, and determining the identifier of another first type subspace, except the currently loaded first type subspace, which contains the second type subspace according to the information of the inclusion relationship between the first type subspace and the second type subspace in the sub-environment data;
and loading the sub-environment data corresponding to the other first-class subspace.
Optionally, the determining, by the switching unit, to load a subspace adjacent to the subspace where the smart device is currently located includes:
determining a second type of subspace where the intelligent equipment is located currently and a first type of subspace where the intelligent equipment is located currently;
and determining a first-class subspace which contains the second-class subspace and is adjacent to the current first-class subspace, and loading the adjacent first-class subspace.
Optionally, the method further comprises:
and the initial subspace determining unit is used for determining the initially loaded subspace to be the subspace which is positioned at any end of a penetrating line penetrating through all the subspaces after the environment space is divided.
Optionally, the switching unit stores the running state information of the intelligent device while performing the application program test, loads the environment data for simulation when triggering the subspace loading, runs the intelligent device in the simulated subspace simulation for performing the application program test, and is further configured to:
determining whether the running state information of the intelligent equipment is stored;
if so, in the simulated subspace, simulating and operating the intelligent equipment to perform application program test according to the operating state information of the intelligent equipment.
Optionally, the apparatus further comprises:
and the test ending unit is used for ending the simulation process when any one of the following simulation ending conditions is determined to be met in the test process:
the intelligent device detects a specified object in the simulated subspace;
the testing time reaches the preset duration;
the intelligent equipment reaches a specified position in the simulated subspace;
collision occurs with a specified object in the simulation environment;
and loading all sub-environment data corresponding to the subspaces.
The intelligent device provided in the embodiment of the present invention is the same as the intelligent device for performing the simulation test in embodiment 1 of the present invention, and various implementation manners of performing the simulation test on the intelligent device provided in the embodiment of the present invention may be applied to the intelligent device in the embodiment, and are not described again here.
The simulation test device provided in the embodiment of the present invention is the same as the intelligent device for performing the simulation test in the embodiment 1 of the present invention, and may be applied to various implementation manners for performing the simulation test on the intelligent device provided in the embodiment, and will not be described again here.
The embodiment of the present invention further provides a computer program medium, on which a computer program is stored, and when the computer program is executed by a processor, the computer program implements any of the method steps of the simulation test of the intelligent device provided in the above embodiments.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other manners. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the modules is merely a logical division, and in actual implementation, there may be other divisions, for example, multiple modules or components may be combined or integrated into another system, or some features may be omitted, or not implemented. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or modules, and may be in an electrical, mechanical or other form.
The modules described as separate parts may or may not be physically separate, and parts displayed as modules may or may not be physical modules, may be located in one place, or may be distributed on a plurality of network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of the present embodiment.
In addition, functional modules in the embodiments of the present application may be integrated into one processing module, or each of the modules may exist alone physically, or two or more modules are integrated into one module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. The integrated module, if implemented in the form of a software functional module and sold or used as a stand-alone product, may be stored in a computer readable storage medium.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product.
The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website site, computer, server, or data center to another website site, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that a computer can store or a data storage device, such as a server, a data center, etc., that is integrated with one or more available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
The technical solutions provided by the present application are introduced in detail, and the present application applies specific examples to explain the principles and embodiments of the present application, and the descriptions of the above examples are only used to help understand the method and the core ideas of the present application; meanwhile, for a person skilled in the art, according to the idea of the present application, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present application.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present application without departing from the spirit and scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include such modifications and variations as well.

Claims (11)

1. A method for performing simulation test on intelligent equipment is characterized by comprising the following steps:
dividing an environment space to be simulated to obtain a plurality of subspaces and corresponding sub-environment data thereof;
when the subspace loading is triggered, loading the sub-environment data corresponding to the subspace for simulation, and simulating and operating intelligent equipment in the simulated subspace to perform application program testing;
when the switching condition is determined to be met in the test process, the current running state of the intelligent equipment is kept, the subspace adjacent to the subspace where the intelligent equipment is located is determined to be loaded, and the adjacent subspace is triggered to be loaded;
wherein, the plurality of subspaces includes a first class subspace and a second class subspace, the second class subspace is included in the first class subspace, and two adjacent first class subspaces include the same second class subspace, and determining that the switching condition is satisfied includes:
and if the subspace where the intelligent equipment is currently located is the second-class subspace, determining to complete the test task corresponding to the currently located subspace, and determining to meet the switching condition.
2. The method according to claim 1, wherein the sub-environment data includes an identifier of the first type of sub-space and its corresponding sub-environment data, an identifier of the second type of sub-space and its corresponding sub-environment data, and inclusion relation information of the first type of sub-space and the second type of sub-space.
3. The method according to claim 1 or 2, wherein determining the subspace where the smart device is currently located is the subspace of the second type comprises:
determining the position ranges corresponding to the first type subspace and the second type subspace according to the environment state information of the simulated subspace;
and determining the current position of the intelligent equipment according to the running state of the simulated intelligent equipment, and determining that the subspace where the intelligent equipment is currently located is the second-class subspace when the current position is determined to belong to the position range corresponding to the second-class subspace.
4. The method of claim 2, wherein determining to load a subspace adjacent to a subspace in which the smart device is currently located comprises:
recording the identifier of a second type subspace where the intelligent equipment is currently located, and determining the identifier of another first type subspace, except the currently loaded first type subspace, which contains the second type subspace according to the information of the inclusion relationship between the first type subspace and the second type subspace in the sub-environment data;
and loading the sub-environment data corresponding to the other first-class subspace.
5. The method of claim 1, wherein determining to load a subspace adjacent to a subspace in which the smart device is currently located comprises:
determining a second type of subspace where the intelligent equipment is located currently and a first type of subspace where the intelligent equipment is located currently;
and determining a first-class subspace which contains the second-class subspace and is adjacent to the current first-class subspace, and loading the adjacent first-class subspace.
6. The method of claim 1, further comprising:
and determining the initially loaded subspace as the subspace at any end of a penetrating line penetrating through all the subspaces after the environment space is divided.
7. The method of claim 1, wherein the running state information of the smart device is saved while the application test is performed, the environment data is loaded for simulation when the subspace loading is triggered, and the smart device is simulated to run for the application test in the simulated subspace, further comprising:
determining whether the running state information of the intelligent equipment is stored;
if so, in the simulated subspace, simulating and operating the intelligent equipment to perform application program test according to the operating state information of the intelligent equipment.
8. The method according to claim 1, wherein the simulation process is ended when any one of the following simulation end conditions is determined to be satisfied during the test process:
the intelligent device detects a specified object in the simulated subspace;
the testing time reaches the preset duration;
the intelligent equipment reaches a specified position in the simulated subspace;
collision occurs with a specified object in the simulation environment;
and loading all sub-environment data corresponding to the subspaces.
9. An apparatus for performing emulation testing of a smart device, comprising a memory and a processor, wherein:
the memory is used for storing a computer program;
the processor is used for reading the program in the memory and executing the method for carrying out the simulation test on the intelligent equipment according to any one of claims 1 to 8.
10. An apparatus for performing simulation testing on an intelligent device, comprising:
the space dividing unit is used for dividing the environment space to be simulated to obtain a plurality of subspaces and corresponding sub-environment data thereof;
the loading test unit is used for loading the sub-environment data corresponding to the subspace for simulation when the subspace loading is triggered, and operating the intelligent equipment in the simulated subspace for testing the application program;
the switching unit is used for keeping the current running state of the intelligent equipment when the switching condition is determined to be met in the test process, determining to load the subspace adjacent to the subspace where the intelligent equipment is located currently, and triggering the loading of the adjacent subspace;
wherein, the plurality of subspaces includes a first class subspace and a second class subspace, the second class subspace is included in the first class subspace, and two adjacent first class subspaces include the same second class subspace, and determining that the switching condition is satisfied includes:
and if the subspace where the intelligent equipment is currently located is the second-class subspace, determining to complete the test task corresponding to the currently located subspace, and determining to meet the switching condition.
11. A computer program 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 8.
CN202010774901.1A 2020-08-05 2020-08-05 Method, device and equipment for carrying out simulation test on intelligent equipment Active CN111651369B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010774901.1A CN111651369B (en) 2020-08-05 2020-08-05 Method, device and equipment for carrying out simulation test on intelligent equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010774901.1A CN111651369B (en) 2020-08-05 2020-08-05 Method, device and equipment for carrying out simulation test on intelligent equipment

Publications (2)

Publication Number Publication Date
CN111651369A CN111651369A (en) 2020-09-11
CN111651369B true CN111651369B (en) 2020-12-22

Family

ID=72345231

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010774901.1A Active CN111651369B (en) 2020-08-05 2020-08-05 Method, device and equipment for carrying out simulation test on intelligent equipment

Country Status (1)

Country Link
CN (1) CN111651369B (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102142155A (en) * 2010-02-02 2011-08-03 武汉大学 Three-dimensional (3D) terrain model data organization method oriented to network interactive visualization
EP2745892B1 (en) * 2012-12-21 2018-12-12 Dassault Systèmes Partition of a 3D scene into a plurality of zones processed by a computing resource
CN105741349A (en) * 2016-01-29 2016-07-06 北京京能高安屯燃气热电有限责任公司 Loading method and device of complex three-dimensional model in three-dimensional virtual simulation

Also Published As

Publication number Publication date
CN111651369A (en) 2020-09-11

Similar Documents

Publication Publication Date Title
CN112965466B (en) Reduction test method, device, equipment and program product of automatic driving system
CN106547678B (en) Method and apparatus for white-box testing
CN109979006A (en) Indoor road net model construction method and device
Lai et al. Collision detection strategies for virtual construction simulation
US20170087722A1 (en) Method and a Data Processing System for Simulating and Handling of Anti-Collision Management for an Area of a Production Plant
Merschformann et al. RAWSim-O: A simulation framework for robotic mobile fulfillment systems
US9176490B2 (en) Control program generation device, control program generation program, and control program generation method
KR102357429B1 (en) Spatial information setting and utilization method of 3D modeling data, apparatus and computer-readable recording medium
CN103544103A (en) Method and system for test, simulation and concurrence of software performance
US20200334056A1 (en) Virtual Environment for Simulating a Real-World Environment With a Large Number of Virtual and Real Connected Devices
KR102085271B1 (en) Vitual Construction Simulation Method
CN111095170B (en) Virtual reality scene, interaction method thereof and terminal equipment
CN110929422B (en) Robot cluster simulation method and device
US20220019939A1 (en) Method and system for predicting motion-outcome data of a robot moving between a given pair of robotic locations
CN107463357A (en) Task scheduling system, dispatching method, Simulation of Brake system and emulation mode
CN111651369B (en) Method, device and equipment for carrying out simulation test on intelligent equipment
CN113096251A (en) Model processing method, device and equipment based on CIM and storage medium
CN115294283B (en) Digital twin plant construction method, device, equipment and storage medium
CN104749966B (en) A kind of method and system of full digital trigger technique and HWIL simulation switching at runtime
Moon et al. Grid cell-based algorithm for workspace overlapping analysis considering multiple allocations of construction resources
CN114202126A (en) Intelligent safety control method and system for electric power operation
CN114418504A (en) Planning method and system for warehouse logistics scheme
US20230169227A1 (en) Transitioning simulation entities between smart entity status and discrete entity status
CN114419187B (en) Map construction method and device, electronic equipment and readable storage medium
CN117195599B (en) Cloud-edge cooperative satellite service migration verification method and device

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