Resource scheduling method and equipment for UAV training room
By obtaining and comprehensively analyzing the environmental data, teaching tasks and drone status information of the drone training room in real time, and optimizing the path combination, the efficiency and security problems of the existing resource scheduling methods when dealing with multitasking are solved, and efficient and secure resource scheduling is achieved.
Patent Information
- Application Number
- CN202510174059.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-18
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2045-02-18
AI Technical Summary
The resource scheduling methods of the existing UAV training room are difficult to effectively handle the priority and correlation between multiple tasks, resulting in uneven resource allocation, inefficient task execution, and even security risks.
By obtaining real-time environmental data of the training room, multiple real-time teaching tasks and real-time status information of multiple drones, multiple first path combinations and multiple timing path combinations are generated and optimized, and an optimal timing path combination that is efficient, safe and meets task requirements is finally determined.
It improves the flexibility and accuracy of resource scheduling in the drone training room, improves the efficiency and safety of task execution, reduces the risks of uneven resource allocation and inefficient task execution, and provides strong technical support for the teaching and training of the drone training room.
Smart Images

Figure CN119647913B_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of unmanned aerial vehicle technology, and in particular, relates to a method and device for scheduling resources in an unmanned aerial vehicle training room. Background Art
[0002] The UAV training room is a training place equipped with various types of UAV equipment and related supporting facilities. It mainly undertakes the experimental training teaching tasks of the UAV application technology major, aiming to improve students' UAV operation, assembly, maintenance and other skills through practical operations.
[0003] In the prior art, existing resource scheduling solutions are often limited to processing single tasks or relatively simple multi-task scenarios, lacking effective algorithms and mechanisms to process and optimize the priority and correlation between multiple tasks. When multiple drones need to perform diverse tasks at the same time, the existing resource scheduling methods are unable to cope with the situation. In addition, existing scheduling solutions often ignore the differences in drone performance parameters and the complexity of the task execution environment, which may lead to uneven resource allocation, inefficient task execution, and even safety risks. Therefore, there is currently a lack of effective path planning in the resource scheduling of drone training rooms. Summary of the invention
[0004] The embodiments of the present application provide a method and device for scheduling resources in a drone training room, which can solve the problem of lack of effective path planning.
[0005] In a first aspect, an embodiment of the present application provides a method for scheduling resources in a drone training room, including:
[0006] Acquire real-time environmental data of the training room, multiple real-time teaching tasks, and real-time status information of multiple drones; wherein the real-time environmental data is used to reflect the spatial layout of the training room, the real-time teaching tasks include time requirements, location requirements, and computing power requirements, and the real-time status information is used to reflect the current operating status of each drone;
[0007] A plurality of first path combinations are obtained according to the real-time environmental data, each of the real-time teaching tasks and each of the real-time status information; wherein the first path combination is a path for each drone to perform the corresponding real-time teaching task, and the path is composed of a series of nodes that the drone needs to pass through during the flight process;
[0008] A plurality of time sequence path combinations are obtained according to each of the first path combinations and each of the real-time teaching tasks; wherein the time sequence path combination includes a path and a timestamp for each drone to execute the corresponding real-time teaching task;
[0009] Determine an optimal timing path combination according to each of the timing path combinations; wherein the optimal timing path combination includes a path and a timestamp for each drone to perform the corresponding real-time teaching task;
[0010] Corresponding real-time prompt information is sent according to the optimal timing path combination and each of the real-time status information; wherein the real-time prompt information includes the optimal timing path of the drone and the real-time status information.
[0011] The above technical solutions in the embodiments of the present application have at least the following technical effects:
[0012] The method for scheduling resources in the drone training room provided in the embodiment of the present application obtains the real-time environmental data of the training room, multiple real-time teaching tasks and real-time status information of multiple drones; obtains multiple first path combinations according to the real-time environmental data, each real-time teaching task and each real-time status information; obtains multiple timing path combinations according to each first path combination and each real-time teaching task; determines the optimal timing path combination according to each timing path combination; sends corresponding real-time prompt information according to the optimal timing path combination and each real-time status information. Therefore, the method for scheduling resources in the drone training room provided in the embodiment of the present application obtains and comprehensively analyzes the real-time environmental data, real-time teaching tasks and real-time status information of the training room in real time, generates and optimizes multiple first path combinations and multiple timing path combinations, and finally determines an optimal timing path combination that is efficient, safe and meets the task requirements. This method not only improves the flexibility and accuracy of resource scheduling in the drone training room, but also helps to improve the efficiency and safety of task execution, reduces the risk of uneven resource allocation and low efficiency of task execution, and provides strong technical support for teaching and training in the drone training room.
[0013] In a possible implementation manner of the first aspect, the real-time status information includes a real-time location and real-time resource information, and the real-time resource information includes remaining power and idle computing power; and obtaining a plurality of first path combinations according to the real-time environment data, each of the real-time teaching tasks, and each of the real-time status information includes:
[0014] A grid model is established according to the real-time environment data; wherein the grid model is a model that divides the space of the training room into a series of sub-areas of equal size;
[0015] A plurality of target position groups are obtained according to each of the real-time status information and each of the real-time teaching tasks; wherein the target position group is a combination of target positions corresponding to the real-time teaching tasks that can be completed by each drone;
[0016] A plurality of first path combinations are obtained according to the grid model, each of the real-time positions and each of the target position groups.
[0017] In a possible implementation manner of the first aspect, obtaining a plurality of target position groups according to each of the real-time status information and each of the real-time teaching tasks includes:
[0018] Obtaining corresponding resource demand information according to the real-time position of each drone and each real-time teaching task; wherein the resource demand information includes power demand and computing power demand;
[0019] Determine a first real-time teaching task for each drone according to the resource demand information and the real-time resource information; wherein the first real-time teaching task refers to the real-time teaching task that can be completed by the drone;
[0020] Obtaining a target position set according to the real-time position of each drone and the corresponding first real-time teaching task; wherein the target position set is the corresponding target position of the drone when completing the first real-time teaching task;
[0021] The target position group is determined according to each of the real-time teaching tasks and the target position set of each drone.
[0022] In a possible implementation manner of the first aspect, obtaining a plurality of first path combinations according to the grid model, each of the real-time positions, and each of the target position groups includes:
[0023] A plurality of initial path combinations are obtained according to the grid model, the target position of each UAV in each target position group and the real-time position of the corresponding UAV; wherein the initial path combination is a path of the shortest distance between the target position of each UAV in the target position group and the real-time position of the corresponding UAV;
[0024] Determine a corresponding collision area based on the grid model and each of the initial path combinations; wherein the collision area is the sub-area where each drone in the initial path combination enters an obstacle;
[0025] Obtaining a corresponding collision position and collision direction according to each of the initial path combinations and the corresponding collision area; wherein the collision position is a coordinate point where each UAV is expected to collide with an obstacle in the initial path combination, and the collision direction is a flight direction when each UAV is expected to collide with an obstacle in the initial path combination;
[0026] Obtaining a corresponding adjustment direction according to each of the collision positions and the corresponding collision direction; wherein the adjustment direction is used to instruct the drone to avoid obstacles;
[0027] The corresponding first path combination is obtained according to each of the initial path combinations and the corresponding adjustment direction.
[0028] In a possible implementation manner of the first aspect, obtaining a plurality of initial path combinations according to the grid model, the target position of each drone in each target position group, and the real-time position of the corresponding drone includes:
[0029] Determine an adjacent subdomain based on the grid model and the real-time position of each drone; wherein the adjacent subdomain is the subregion adjacent to the drone in the grid model;
[0030] Obtaining an estimated distance group corresponding to the target position group according to the target position in each of the target position groups and the corresponding adjacent subdomain of the drone; wherein the estimated distance group includes the distance from each of the adjacent subdomains of the drone to the corresponding target position;
[0031] The corresponding initial path combination is obtained according to each target position group and the corresponding estimated distance group.
[0032] In a possible implementation manner of the first aspect, obtaining a plurality of timing path combinations according to each of the first path combinations and each of the real-time teaching tasks includes:
[0033] Obtaining a first speed of each drone according to each of the first path combinations and the corresponding real-time teaching tasks; wherein the first speed is the minimum speed that the drone needs to reach to complete the corresponding real-time teaching tasks;
[0034] Obtaining a first distance between every two UAVs in each of the first path combinations according to each of the first path combinations and each of the first speeds; wherein the first distance is a spatial distance between the two UAVs;
[0035] According to each of the real-time teaching tasks, the priority of each drone in each of the first path combinations for executing the corresponding real-time teaching task is obtained;
[0036] Determine whether the first distance is less than a distance threshold;
[0037] If there is a first distance that is less than the distance threshold, obtaining a relative speed according to the first speeds of the two UAVs in the corresponding first path combination;
[0038] If there are two UAVs in the first path combination whose first speeds are in similar directions and whose corresponding relative speeds exceed a speed threshold, then adjusting the first speed corresponding to the UAV with a lower priority according to the first speed and the first distance to obtain a second speed;
[0039] Obtaining the corresponding timing path combination according to the first path combination and the second speed;
[0040] If the directions of the first speeds of two UAVs in the first path combination are not similar or the corresponding relative speeds do not exceed the speed threshold, the corresponding timing path combination is determined according to the first path combination and the first speed.
[0041] In a possible implementation manner of the first aspect, the method further includes:
[0042] If there is no first distance less than the distance threshold, the corresponding timing path combination is determined according to each of the first path combinations and each of the first speeds.
[0043] In a possible implementation manner of the first aspect, determining an optimal timing path combination according to each of the timing path combinations includes:
[0044] Determine the corresponding second distance and second duration according to each of the timing path combinations; wherein the second distance is the sum of the path lengths of each UAV in the timing path combination, and the second duration is the sum of the shortest time of each UAV in the timing path combination;
[0045] The optimal timing path combination is obtained according to the second distance and the second duration of each of the timing path combinations.
[0046] In a possible implementation manner of the first aspect, the sending corresponding real-time prompt information according to the optimal timing path combination and each of the real-time status information includes:
[0047] Determine whether any drone deviates from the optimal timing path according to the optimal timing path combination and each of the real-time status information; wherein the optimal timing path includes the path and timestamp of the drone executing the corresponding real-time teaching task;
[0048] If there is a drone that deviates from the optimal timing path, real-time deviation information is obtained according to the optimal timing path combination and the real-time status information of the drone; wherein the real-time deviation information includes path deviation information and / or time deviation information, the path deviation information is the position deviation information of a series of nodes that the drone needs to pass during the flight, and the time deviation information is the difference between the actual time when the drone arrives at each node and the timestamp of the optimal timing path combination;
[0049] Sending the corresponding real-time prompt information according to the real-time deviation information and the corresponding real-time status information;
[0050] If there is a drone that has not deviated from the optimal timing path, the corresponding real-time prompt information is sent according to the optimal timing path combination and each real-time status information.
[0051] In a second aspect, an embodiment of the present application provides a resource scheduling device for a drone training room, comprising:
[0052] An acquisition module, used to acquire real-time environmental data of a training room, multiple real-time teaching tasks, and real-time status information of multiple drones; wherein the real-time environmental data is used to reflect the spatial layout of the training room, the real-time teaching tasks include time requirements, location requirements, and computing power requirements, and the real-time status information is used to reflect the current operating status of each drone;
[0053] A first path module, used to obtain a plurality of first path combinations according to the real-time environmental data, each of the real-time teaching tasks and each of the real-time status information; wherein the first path combination is a path for each drone to perform the corresponding real-time teaching task, and the path is composed of a series of nodes that the drone needs to pass through during the flight process;
[0054] A timing path module, used to obtain a plurality of timing path combinations according to each of the first path combinations and each of the real-time teaching tasks; wherein the timing path combination includes a path and a timestamp for each drone to execute the corresponding real-time teaching task;
[0055] An optimal timing path module, used to determine an optimal timing path combination according to each of the timing path combinations; wherein the optimal timing path combination includes a path and a timestamp for each drone to perform the corresponding real-time teaching task;
[0056] A real-time prompt module is used to send corresponding real-time prompt information according to the optimal timing path combination and each real-time status information; wherein the real-time prompt information includes the optimal timing path of the drone and the real-time status information.
[0057] In a third aspect, an embodiment of the present application provides a resource scheduling device for a drone training room, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements a method as described in any one of the first aspects above when executing the computer program.
[0058] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method described in any one of the first aspects above is implemented.
[0059] In a fifth aspect, an embodiment of the present application provides a computer program product. When the computer program product is run on a drone training room resource scheduling device, the drone training room resource scheduling device executes any of the methods described in the first aspect above.
[0060] It can be understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant description of the first aspect mentioned above, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0061] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0062] Figure 1 It is a flowchart of a method for scheduling resources in a drone training room provided in one embodiment of the present application;
[0063] Figure 2 It is a schematic diagram of the implementation process of steps S200, S220, S230 and S231 in the resource scheduling method for a drone training room provided in an embodiment of the present application;
[0064] Figure 3 It is a schematic diagram of the implementation process of step S300 in the resource scheduling method for a drone training room provided in an embodiment of the present application;
[0065] Figure 4 It is a schematic diagram of the implementation process of steps S400 and S500 in the resource scheduling method for a drone training room provided in an embodiment of the present application;
[0066] Figure 5 It is a structural schematic diagram of a resource scheduling device for a drone training room provided in an embodiment of the present application;
[0067] Figure 6 It is a structural schematic diagram of the resource scheduling device for the drone training room provided in the embodiment of the present application. DETAILED DESCRIPTION
[0068] In the following description, specific details such as specific system structures, technologies, etc. are provided for the purpose of illustration rather than limitation, so as to provide a thorough understanding of the embodiments of the present application. However, it should be clear to those skilled in the art that the present application may also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to prevent unnecessary details from obstructing the description of the present application.
[0069] It should be understood that when used in the present specification and the appended claims, the term "comprising" indicates the presence of described features, wholes, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or combinations thereof.
[0070] It should also be understood that the term “and / or” used in the specification and appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes these combinations.
[0071] As used in the specification and appended claims of this application, the term "if" can be interpreted as "when" or "uponce" or "in response to determining" or "in response to detecting", depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "uponce it is determined" or "in response to determining" or "uponce [described condition or event] is detected" or "in response to detecting [described condition or event]", depending on the context.
[0072] In addition, in the description of the present application specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance.
[0073] References to "one embodiment" or "some embodiments" etc. described in the specification of this application mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.
[0074] In the related technologies, existing resource scheduling solutions are often limited to processing single tasks or relatively simple multi-task scenarios, lacking effective algorithms and mechanisms to process and optimize the priority and correlation between multiple tasks. When multiple drones need to perform diverse tasks at the same time, the existing resource scheduling methods are unable to cope with the situation. In addition, existing scheduling solutions often ignore the differences in drone performance parameters and the complexity of the task execution environment, which may lead to uneven resource allocation, inefficient task execution, and even safety risks. Therefore, there is currently a lack of effective path planning in the resource scheduling of drone training rooms.
[0075] To solve the above problems, the embodiment of the present application provides a method and device for scheduling resources in a drone training room. In the method, by acquiring the real-time environmental data of the training room, multiple real-time teaching tasks and real-time status information of multiple drones; obtaining multiple first path combinations according to the real-time environmental data, each real-time teaching task and each real-time status information; obtaining multiple timing path combinations according to each first path combination and each real-time teaching task; determining the optimal timing path combination according to each timing path combination; sending corresponding real-time prompt information according to the optimal timing path combination and each real-time status information. Therefore, the method for scheduling resources in a drone training room provided by the embodiment of the present application acquires and comprehensively analyzes the real-time environmental data, real-time teaching tasks and real-time status information of the training room in real time, generates and optimizes multiple first path combinations and multiple timing path combinations, and finally determines an optimal timing path combination that is efficient, safe and meets the task requirements. This method not only improves the flexibility and accuracy of resource scheduling in the drone training room, but also helps to improve the efficiency and safety of task execution, reduces the risk of uneven resource allocation and low task execution efficiency, and provides strong technical support for teaching and training in drone training rooms.
[0076] The drone training room resource scheduling method provided in the embodiment of the present application can be applied to the drone training room resource scheduling equipment. At this time, the drone training room resource scheduling equipment is the execution entity of the drone training room resource scheduling method provided in the embodiment of the present application. The embodiment of the present application does not impose any restrictions on the specific type of the drone training room resource scheduling equipment.
[0077] For example, the resource scheduling device of the drone training room can be a station (STAION, ST) in the WLAN, which can be a cellular phone, a mobile phone, a tablet computer, an augmented reality (AR) / virtual reality (VR) device, a laptop computer, an ultra-mobile personal computer (UMPC), a netbook, a personal digital assistant (PDA), a desktop computer, a smart screen, a smart TV, a computing device or other processing device connected to a wireless modem, a computer, a laptop computer, a handheld computing device, etc., but not limited to these.
[0078] In order to better understand the drone training room resource scheduling method provided in the embodiment of the present application, the specific implementation process of the drone training room resource scheduling method provided in the embodiment of the present application is exemplarily introduced below.
[0079] Figure 1A schematic flow chart of a method for scheduling resources in a drone training room provided in an embodiment of the present application is shown. The method for scheduling resources in a drone training room includes:
[0080] S100, obtaining real-time environment data of the training room, multiple real-time teaching tasks and real-time status information of multiple drones. The real-time environment data is used to reflect the spatial layout of the training room, the real-time teaching tasks include time requirements, location requirements and computing power requirements, and the real-time status information is used to reflect the current operating status of each drone.
[0081] It can be understood that the real-time environmental data includes the spatial structure of the training room and the location and size of obstacles, and the real-time status information includes the real-time location of the drone, the remaining power, and the idle computing power.
[0082] For example, real-time environmental data can be obtained through spatial layout sensors (such as infrared sensors, cameras, etc.); the resource scheduling equipment in the drone training room can receive multiple real-time teaching tasks from terminals (such as mobile phones, tablets, etc.), and receive real-time status information from the drone's built-in GPS module, power sensor and computing power monitoring module.
[0083] S200, obtaining a plurality of first path combinations according to the real-time environment data, each real-time teaching task and each real-time status information, wherein the first path combination is a path for each drone to perform the corresponding real-time teaching task, and the path is composed of a series of nodes that the drone needs to pass through during the flight process.
[0084] For example, a grid model can be established based on real-time environmental data, and the training room can be divided into multiple equal-sized sub-areas, each of which is regarded as a node. According to the real-time status and task requirements of the drone, the real-time teaching task (i.e., the target position) that each drone can complete is determined. Based on the grid model, the shortest path from the real-time position of each drone to the corresponding target position is determined by a fast random tree algorithm or an algorithm such as Dijkstra, and obstacles are avoided to obtain the first path combination. For example, a 10×10×10 grid model will contain 1000 cubes, and each cube can be represented by its (i, j, k) index, where i is the row index, j is the column index, and k is the layer index. In the grid model, the current position of drone A is node (3, 4, 5), and the real-time teaching task of drone A can be to reach node (8, 10, 10) to perform the shooting task. The current position of UAV B is node (1, 2, 3). The real-time teaching task of UAV B can be to reach node (5, 6, 7) for data collection. The corresponding first path combination is UAV A: (3, 4, 5) -> (4, 4, 6) -> (5, 4, 7) -> (6, 4, 7) -> (7, 4, 8) -> (8, 4, 9) -> (8, 5, 9) -> (8, 6, 9) -> (8, 7, 10) -> (8, 8, 10) -> (8, 9, 10) -> (8, 10, 10), UAV B: (1, 2, 3) -> (2, 2, 3) -> (3, 2, 4) -> (4, 2, 4) -> (4, 3, 5) -> (4, 4, 5) -> (4, 5, 5) -> (5, 5, 6) -> (5, 6, 7).
[0085] In one possible implementation, see Figure 2 S200, the real-time status information includes the real-time location and the real-time resource information, and the real-time resource information includes the remaining power and the idle computing power. According to the real-time environment data, each real-time teaching task and each real-time status information, a plurality of first path combinations are obtained, including:
[0086] S210, establishing a grid model according to the real-time environment data, wherein the grid model is a model that divides the space of the training room into a series of sub-areas of equal size.
[0087] It can be understood that the grid model includes the position and shape information of all obstacles in the training room.
[0088] Exemplarily, establishing a grid model can be to divide the space of the training room into a series of sub-areas of equal size. For example, the training room can be divided into 10×10×10 grids (sub-areas). A three-dimensional array can be initialized to represent the sub-areas (each element of the array corresponds to a sub-area). In the array, according to the position and shape information of the obstacle, the corresponding sub-area is marked as an obstacle area (this can be achieved by setting the grid unit occupied by the obstacle to a specific value or state).
[0089] S220, obtaining a plurality of target position groups according to each real-time state information and each real-time teaching task, wherein the target position group is a combination of target positions of the corresponding real-time teaching tasks that can be completed by each drone.
[0090] It can be understood that the required resources (power and computing power) are determined according to each real-time teaching task, and drones with sufficient resources (power and computing power) are matched according to each real-time status information. A target location set is formed according to the real-time position of the drone and the location requirements of the real-time teaching task, and then these sets are combined into a target location group.
[0091] Optionally, see Figure 2 , S220, obtaining multiple target position groups according to each real-time state information and each real-time teaching task, including:
[0092] S221, obtaining corresponding resource demand information according to the real-time position of each drone and each real-time teaching task, wherein the resource demand information includes power demand and computing power demand.
[0093] For example, the power requirement can be determined based on the real-time position in the real-time status information of each drone and the time requirement and position requirement of each real-time teaching task, and the computing power requirement can be determined based on the computing power requirement of each real-time teaching task.
[0094] S222: Determine the first real-time teaching task of each drone according to each resource demand information and each real-time resource information, wherein the first real-time teaching task refers to a real-time teaching task that can be completed by the drone.
[0095] Exemplarily, the real-time resource information of the drone (such as remaining power and idle computing power) can be matched with the resource requirement information of each real-time teaching task. If the current resource status of the drone meets or exceeds the power requirement and computing power requirement in the resource requirement information of the real-time teaching task, then the real-time teaching task is determined as the first real-time teaching task of the drone.
[0096] S223, obtaining a target position set according to the real-time position of each drone and the corresponding first real-time teaching task, wherein the target position set is the corresponding target position of the drone after completing the first real-time teaching task.
[0097] It can be understood that the first real-time teaching task includes one or more real-time teaching tasks that can be completed by the drone.
[0098] Exemplarily, the target position corresponding to the first real-time teaching task can be extracted according to the first real-time teaching task corresponding to each drone to obtain a target position set.
[0099] S224, determining a target position group according to each real-time teaching task and the target position set of each UAV.
[0100] Exemplarily, the target position of each drone when all drones can complete all real-time teaching tasks can be determined according to each real-time teaching task and the target position set of each drone to obtain a target position group.
[0101] Through the above steps S221 to S224, it is possible to efficiently and accurately assign appropriate tasks to the drone and plan the flight path according to the real-time teaching tasks and resource conditions, which is not only conducive to improving the flexibility and response speed of the drone, but also conducive to maximizing the utilization of resources and the efficiency of task execution.
[0102] S230, obtaining a plurality of first path combinations according to the grid model, each real-time position and each target position group.
[0103] Exemplarily, the shortest distance between the real-time position of each UAV and the corresponding target position in the target position group can be calculated based on the grid model to obtain an initial path combination, and the initial path combination can be adjusted to avoid obstacles to obtain a corresponding first path combination.
[0104] Through the above steps S210 to S230, the complete process from data input to path output is realized, and a grid model is established to provide a basic framework for path planning; the target position is determined according to the task requirements and the status of the drone, which points out the direction for path planning; a specific path combination is generated based on the grid model, while avoiding obstacles is considered, which is conducive to achieving efficient conversion from data to path.
[0105] Optionally, see Figure 2 , S230, obtaining a plurality of first path combinations according to the grid model, each real-time position and each target position group, including:
[0106] S231, obtaining a plurality of initial path combinations according to the grid model, the target position of each UAV in each target position group, and the real-time position of the corresponding UAV, wherein the initial path combination is a path of the shortest distance between the target position of each UAV in the target position group and the real-time position of the corresponding UAV.
[0107] Exemplarily, based on the target position of the drone in each target position group and the real-time position of the corresponding drone, the shortest path from the real-time position to the target position can be searched in the grid model by using algorithms such as Dijkstra and fast random tree, and multiple initial path combinations can be obtained according to each target position group.
[0108] For example, see Figure 2 , S231, obtaining multiple initial path combinations according to the grid model, the target position of each UAV in each target position group and the real-time position of the corresponding UAV, including:
[0109] S2311, determining an adjacent subdomain based on the grid model and the real-time position of each drone, wherein the adjacent subdomain is a subregion adjacent to the drone in the grid model.
[0110] It can be understood that in the grid model, the adjacent sub-domains include the upper, lower, front, rear, left, and right sub-domains adjacent to the sub-domain where the drone is located.
[0111] For example, the sub-area where each drone is currently located can be determined based on its real-time position, and other sub-areas directly adjacent to the sub-area can be further identified based on the topological structure of the grid.
[0112] S2312: Obtain an estimated distance group corresponding to the target position group according to the target position in each target position group and the adjacent subdomain of the corresponding drone, wherein the estimated distance group includes the distance from each adjacent subdomain of each drone to the corresponding target position.
[0113] Exemplarily, an empty estimated distance set can be created for each target position in each target position group. For each drone, the system traverses all its adjacent subdomains and uses Manhattan distance, Euclidean distance and other methods to calculate the distance from the center position of each adjacent subdomain to the target position, and adds it to the estimated distance set of the corresponding drone to obtain an estimated distance group.
[0114] S2313: Obtain a corresponding initial path combination according to each target position group and the corresponding estimated distance group.
[0115] Exemplarily, the estimated distance group corresponding to each drone can be traversed, and the adjacent subdomain corresponding to the smallest distance is taken as the next moving position, which is added to the initial path of the drone and regarded as the new real-time position. The above process is repeated until the target position is reached.
[0116] Through the above steps S2311 to S2313, the adjacent subdomains of the drone can be efficiently determined, and the initial path combination can be constructed based on the distance from the adjacent subdomain to the target location. Since the adjacent subdomains are determined based on the topological structure of the grid model, the constructed initial path is more likely to conform to the actual flight capability of the drone, enhancing the feasibility of the path. Each drone can independently determine its adjacent subdomains and construct an initial path, thereby realizing parallel path planning for multiple drones.
[0117] S232, determining a corresponding collision area based on the grid model and each initial path combination, wherein the collision area is a sub-area where each drone in the initial path combination enters an obstacle.
[0118] For example, each initial path combination can be traversed, and each sub-area on the path can be checked based on the grid model to see if there is an obstacle. If there is an obstacle, the sub-area is considered to be a collision area. For example, the grid model: the space of the training room is divided into a 10×10×10 grid (sub-area), in which there are 3 obstacles, which are located in the sub-areas (3, 5, 6), (6, 7, 8) and (8, 2, 3), respectively. In the initial path combination 1, UAV A goes from (0, 0, 3) to (10, 10, 6), and traverses and checks: it is found that the UAV will pass through (3, 5, 6) (collision area).
[0119] S233, obtaining a corresponding collision position and collision direction according to each initial path combination and the corresponding collision area, wherein the collision position is the coordinate point where each UAV is expected to collide with the obstacle in the initial path combination, and the collision direction is the flight direction when each UAV is expected to collide with the obstacle in the initial path combination.
[0120] Exemplarily, for each initial path combination, a simple straight line interpolation or trajectory planning algorithm (such as Bezier curve, B-spline, etc.) can be used to simulate flight. During the simulation, when the drone enters the collision area, the collision position is recorded. The collision position can be the center point of the collision area or the actual position of the drone when it enters the collision area. At the same time, the speed direction of the drone when entering the collision area can be obtained by the vector between the collision position of the drone and the position of the previous node of the drone in the initial path combination. For example, the collision position: recorded as the center point coordinates of the sub-area (3, 5, 6), the collision direction: recorded as the speed direction of the drone when entering the collision area, such as (cos(30°), sin(30°), 0)).
[0121] S234, obtaining a corresponding adjustment direction according to each collision position and the corresponding collision direction, wherein the adjustment direction is used to instruct the drone to avoid obstacles.
[0122] It can be understood that the adjustment direction is a vector opposite to the collision direction or at a certain angle.
[0123] For example, according to each collision position and collision direction, a heuristic search algorithm (such as a genetic algorithm, a particle swarm algorithm, etc.) can be used to evaluate the length of the path under different adjustment directions, and select the optimal (i.e., the path with the shortest length) adjustment direction. For example, initial path combination 1: the drone moves from the sub-area (0, 0, 3) -> (10, 10, 6), and the adjustment direction is: (-cos(45°), -sin(45°), 0).
[0124] S235 , obtaining a corresponding first path combination according to each initial path combination and the corresponding adjustment direction.
[0125] Exemplarily, the adjustment direction can be applied to the initial path combination to partially modify or replan the path. The collision position can be used as the starting point, and the position of the new path point (i.e., node) can be calculated based on the adjustment direction vector and a certain step length (or distance). In the initial path combination, the previous node of the collision position is changed to the newly calculated path point (i.e., node) to obtain the adjusted first path combination. For example, in the initial path combination 1, UAV A flies from the sub-area (0, 0, 3) -> (10, 10, 6), and the adjustment direction is: (-cos(45°), -sin(45°), 0)). After modification, UAV A flies from the sub-area (0, 0, 3) -> (2, 4, 3) -> (10, 10, 6).
[0126] Through the above steps S231 to S235, the flight path of the UAV can be efficiently planned and adjusted to avoid obstacles and safely reach the target location, which is beneficial to improving the flight safety and operation efficiency of the UAV. At the same time, based on the grid model, efficient search and optimization can be performed in complex three-dimensional space, further improving the accuracy and robustness of path planning.
[0127] S300: Obtain multiple sequential path combinations according to each first path combination and each real-time teaching task, wherein the sequential path combination includes the path and time stamp of each drone executing the corresponding real-time teaching task.
[0128] For example, the minimum speed (i.e., the first speed) required for each drone to complete its respective real-time teaching task can be calculated based on the time requirements of each real-time teaching task and the paths of each drone in the first path combination, and the distance between each two drones can be calculated to determine whether there will be a conflict between the drones. The speed of the drone is adjusted based on the priority of the task and the real-time status information of the drone, and the time sequence path combination is generated by combining the adjusted speed and path.
[0129] In one possible implementation, see Figure 3 , S300, obtaining a plurality of timing path combinations according to each first path combination and each real-time teaching task, including:
[0130] S310, obtaining a first speed of each drone according to each first path combination and each corresponding real-time teaching task, wherein the first speed is a minimum speed that the drone needs to reach to complete each corresponding real-time teaching task.
[0131] For example, the total time required for each drone to move along its path can be calculated based on the time requirements of each real-time teaching task, such as the start time, end time, or task duration, combined with the first path combination, and the minimum speed required for the drone, i.e., the first speed, can be inferred based on the total time and path length. For example, the path of drone A in the first path combination is a straight line from point A to point B with a length of 100 meters. The time requirement of its real-time teaching task is to reach point B within 1 minute, then the first speed V = 100m / 60s≈1.67m / s.
[0132] S320: Obtain a first distance between every two UAVs in each first path combination according to each first path combination and each first speed, wherein the first distance is a spatial distance between the two UAVs.
[0133] Exemplarily, the coordinates of the nodes on the path of each drone can be obtained according to the first path combination. Each drone starts from its own real-time position (i.e., the first node in the path) at the same time point. For any two drones, according to the corresponding path and the first speed, their positions at the same time point are obtained every preset time period, and the distance between the two positions, i.e., the first distance, is calculated using a spatial distance calculation formula (such as the Manhattan distance formula and the Euclidean distance formula). For example, the first path combinations of drone A and drone B are path AB and path CD, respectively. At a time point t, drone A is located at point A' (x1, y1), and drone B is located at point C' (x2, y2). The first distance is: d=|x2-x1|+|y2-y1|.
[0134] S330, obtaining, according to each real-time teaching task, a priority of each drone in each first path combination for executing the corresponding real-time teaching task.
[0135] For example, the priority of each drone can be determined according to the time requirement of each real-time teaching task. For example, the shorter the time requirement of the real-time teaching task is, the higher the corresponding priority is.
[0136] S340: Determine whether there is a first distance that is smaller than a distance threshold.
[0137] It can be understood that the distance threshold is that the first distance does not exceed a preset specified value. The preset specified value can be set by ordinary technicians in this field according to actual needs and is not limited here.
[0138] For example, a reasonable distance threshold may be determined based on historical data and industry standards, for example, the distance threshold is 0.2 m.
[0139] S350: If there is a first distance that is less than the distance threshold, a relative speed is obtained according to the first speeds of the two UAVs in the corresponding first path combination.
[0140] It can be understood that the relative speed is used to reflect the relative speed between two drones.
[0141] Exemplarily, vector subtraction may be used to calculate the difference between the first speeds of every two drones in the corresponding first path combination to obtain the relative speed.
[0142] S360: If there are two UAVs in the first path combination whose first speeds are in similar directions and whose corresponding relative speeds exceed the speed threshold, the first speed corresponding to the UAV with a lower priority is adjusted according to the first speed and the first distance to obtain a second speed.
[0143] It can be understood that the speed threshold is a relative speed that does not exceed a preset specified value. The preset specified value can be set by ordinary technicians in the field according to actual needs and is not limited here.
[0144] For example, if there are two UAVs in the first path combination whose first speeds have similar directions (the similarity of the vectors can be determined by comparing the direction angles of the relative speed vectors or using the dot product) and the corresponding relative speeds exceed a speed threshold (such as 1 m / s), the speeds can be adjusted according to the priority of the UAVs: for UAVs with lower priorities, their speeds are reduced (i.e., their speed vectors are scaled) or their speed directions are changed (i.e., the speed vectors are reallocated) to obtain a new speed, i.e., the second speed.
[0145] S370: Obtain a corresponding timing path combination according to the first path combination and the second speed.
[0146] It can be understood that the timing path combination reflects the time planning and position changes of the UAV in the process of completing the task.
[0147] Exemplarily, the time required for the drone to move along the corresponding path can be calculated based on the second speed of the drone and the length of the corresponding path in the first path combination, and a timestamp can be assigned to each node of the path corresponding to each drone to obtain the corresponding timing path combination.
[0148] S380: If the directions of the first speeds of the two UAVs in the first path combination are not similar or the magnitudes of the corresponding relative speeds do not exceed the speed threshold, determine the corresponding timing path combination according to the first path combination and the first speeds.
[0149] Exemplarily, if there are two UAVs in the first path combination whose directions of the first speeds are not similar (whether the directions of the first speeds of the two UAVs in the first path combination are similar can be determined by comparing whether the magnitude of the difference in the direction angles of the relative speeds exceeds a preset threshold or by using whether the magnitude of the cosine similarity exceeds another preset threshold) and the magnitude of the corresponding relative speed does not exceed the speed threshold, then timestamps can be assigned to each node of the path corresponding to each UAV based on the path and the corresponding first speed of each UAV in the first path combination to obtain the corresponding timing path combination.
[0150] Through the above steps S310 to S380, the path planning optimization of the drone when performing the real-time teaching task can be achieved. By calculating the first distance between each two drones, it can be preliminarily determined whether there is a potential path conflict between the drones, and the conflicting paths can be adjusted in combination with the priority of each drone to perform the task. In particular, when the first speed directions of the two drones are similar and the relative speed is too large, the path conflict can be effectively avoided by adjusting the speed of the drone with a lower priority (the first speed is adjusted to the second speed). According to the adjusted speed (second speed) and the first path combination, the corresponding timing path combination is obtained, which realizes the path optimization and safe flight of the drone when performing the teaching task, which is conducive to improving the efficiency and safety of the drone when performing the real-time teaching task. By calculating the speed and adjusting the path of the drone, it is beneficial for the drone to complete the teaching task on time and safely, and it is also beneficial to avoid path conflicts and potential safety risks.
[0151] In one possible implementation, see Figure 3 , S300, characterized in that the method further comprises:
[0152] S301: If there is no first distance less than the distance threshold, determine a corresponding timing path combination according to each first path combination and each first speed.
[0153] Exemplarily, when each first distance is not less than a preset distance threshold, it means that the paths of each UAV will not conflict, and a timestamp can be assigned to each node on the path corresponding to each UAV according to each first path combination and each first speed to obtain a corresponding timing path combination.
[0154] Through the above step S301, a timestamp can be directly assigned to each drone according to each first path combination and each first speed to obtain a corresponding timing path combination, which simplifies the path planning process and is conducive to improving planning efficiency and enhancing the stability and reliability of the drone when performing teaching tasks.
[0155] S400, determining an optimal timing path combination according to each timing path combination, wherein the optimal timing path combination includes an optimal timing path for each drone to perform a corresponding real-time teaching task, and the optimal timing path includes a path and a timestamp.
[0156] Exemplarily, the optimal timing path combination can be obtained based on a comparison of the second distance of each timing path combination (i.e., the sum of the path lengths of each drone) and the second duration required to complete all real-time teaching tasks (i.e., the sum of the shortest time for each drone).
[0157] In one possible implementation, see Figure 4 , S400, determining an optimal timing path combination according to each timing path combination, including:
[0158] S410, determining a corresponding second distance and second duration according to each time sequence path combination, wherein the second distance is the sum of the path lengths of each UAV in the time sequence path combination, and the second duration is the sum of the shortest time of each UAV in the time sequence path combination.
[0159] For example, each time-series path combination can be traversed, and for each drone in the combination, the distances between adjacent nodes are calculated in sequence using a spatial distance calculation formula (such as the Manhattan distance formula and the Euclidean distance formula) based on the coordinates of each node on its path, and these distances are accumulated to obtain the flight path length of the drone, and the flight path lengths of all drones are added together to obtain the second distance of the time-series path combination. At the same time, the flight path length of the drone is divided by the corresponding speed (i.e., the first speed or the second speed obtained after the first speed is adjusted) to obtain the shortest flight time of each drone, and the shortest times of all drones are added together to obtain the second duration of the time-series path combination.
[0160] S420: Obtain an optimal timing path combination according to the second distance and the second duration of each timing path combination.
[0161] Exemplarily, all timing path combinations can be sorted according to the second distance, and several timing path combinations with the shortest second distance are selected as candidate combinations. Among the candidate combinations, they are sorted according to the second duration, and the combination with the shortest second duration is selected as the optimal timing path combination. The second distance and the second duration can also be normalized (such as minimum-maximum normalization, Z-score normalization, etc.), and the weighted sum of the second distance and the second duration of each timing path combination is calculated (the weight can be set according to actual needs, such as the weights of the second distance and the second duration are 0.6 and 0.4 respectively), and the combination with the smallest weighted sum is selected as the optimal timing path combination.
[0162] Through the above steps S410 to S420, multiple factors such as the flight path length, flight speed, and time constraints of the task of the drone can be comprehensively considered, and the optimal timing path combination can be selected from multiple timing path combinations, which is conducive to improving the efficiency of the drone cluster in performing tasks, reducing unnecessary flight distance and time waste, and ensuring that all drones can complete the task within the specified time. In addition, by comparing the second distance and the second duration of different timing path combinations, it can also provide useful reference and reference for subsequent drone path planning.
[0163] S500: Send corresponding real-time prompt information according to the optimal time sequence path combination and each real-time status information, wherein the real-time prompt information includes the optimal time sequence path and real-time status information corresponding to the UAV.
[0164] Exemplarily, based on the real-time status information of the drone and the optimal timing path combination, the drone training room resource scheduling device can send real-time prompt information to mobile devices (such as mobile phones, tablet computers, etc.) through wireless communication.
[0165] In one possible implementation, see Figure 4 S500, sending corresponding real-time prompt information according to the optimal timing path combination and each real-time status information, including:
[0166] S510, judging whether any drone deviates from the optimal time sequence path according to the optimal time sequence path combination and each real-time status information. The optimal time sequence path includes the path and timestamp of the drone executing the corresponding real-time teaching task.
[0167] Exemplarily, each real-time status information can be compared with the corresponding information in the optimal time sequence path combination. For location information, the distance (such as Euclidean distance or Manhattan distance) between the real-time location of the drone and the location of the corresponding timestamp on the optimal time sequence path can be calculated. If the distance exceeds the preset threshold, it is determined as a path deviation; for time information, the actual time when the drone arrives at each node can be compared with the timestamp of the corresponding node in the optimal time sequence path combination. If the difference exceeds the preset time threshold, it is determined as a time deviation. For example, in the optimal time sequence path combination, drone A should arrive at node N1 at time T1, and the preset position of the node is (X1, Y1, Z1), and the position of drone A at time T2 is (X2, Y2, Z2). Calculate the distance D between the actual position of drone A and the preset position. If D is greater than the preset path deviation threshold (such as 5m), it is determined as a path deviation. At the same time, compare the difference ΔT between T2 and T1. If ΔT is greater than the preset time deviation threshold (such as 10s), it is determined as a time deviation.
[0168] S520, if there is a UAV that deviates from the optimal timing path, obtain real-time deviation information according to the optimal timing path combination and the real-time status information of the UAV. The real-time deviation information includes path deviation information and / or time deviation information. The path deviation information is the position deviation information of a series of nodes that the UAV needs to pass through during the flight process. The time deviation information is the difference between the actual time when the UAV arrives at each node and the timestamp of the optimal timing path combination.
[0169] Exemplarily, all deviated nodes can be marked, and for each deviated node, the distance and direction between the actual position of the drone and the corresponding position on the optimal path are calculated (such as obtained through vector operation). At the same time, the actual time when the drone arrives at each deviated node is recorded and compared with the timestamp in the optimal timing path combination to obtain the time difference. For example, drone A deviates at node N1, and the distance D and direction θ between the actual position (X2, Y2, Z2) of drone A at time T2 and the preset position (X1, Y1, Z1) are calculated, and the time difference ΔT is recorded. The corresponding real-time teaching task (including time requirements, position requirements and computing power requirements) is determined according to the optimal timing path of the drone. Then the real-time deviation information is: "The task requirements of drone A are (including time requirements, position requirements and computing power requirements), but it deviates from node N1 at time T2, deviates from the distance D, deviates from the direction θ, and the time difference ΔT".
[0170] S530: Send corresponding real-time prompt information according to the real-time deviation information and the corresponding real-time status information.
[0171] For example, corresponding real-time prompt information can be obtained based on the real-time deviation information and the real-time status information, and the real-time prompt information can be displayed to students through a display screen or sent through a sound alarm or the like. For example, UAV A deviates at node N1, and the real-time deviation information is: "The mission requirements of UAV A are (including time requirements, position requirements, and computing power requirements), but it deviates from node N1 at time T2, deviates by a distance of D, deviates in a direction of θ, and has a time difference of ΔT". Then the real-time prompt information is: "Warning! The mission requirements of UAV A are (including time requirements, position requirements, and computing power requirements), but it deviates from node N1 at time T2, deviates by a distance of D meters, deviates in a direction of θ degrees, and has a time delay of ΔT seconds. Please check the status of the UAV immediately and take corrective measures to avoid affecting the execution of the mission."
[0172] S540: If there is a UAV that has not deviated from the optimal timing path, corresponding real-time prompt information is sent according to the optimal timing path combination and the corresponding real-time status information.
[0173] For example, the corresponding real-time prompt information can be obtained according to the optimal timing path combination and each real-time status information, and displayed to students through a display screen or sent through sound prompts. For example, real-time prompt information: "The mission requirements of drone A are (including time requirements, location requirements and computing power requirements), currently located at node N2, the flight distance is XX meters, the remaining distance is YY meters, the estimated time to reach the next node N3 is TT seconds, the remaining power is ZZ%, and the idle computing power is WW FLOPS."
[0174] Through the above steps S510 to S540, the flight status of the drone is monitored, and correction information is calculated when deviations are found, and the correction information is sent to the drone. This is conducive to the drone being able to perform tasks stably and safely along the optimal path. At the same time, it is also conducive to improving the flexibility and adaptability of the system, and being able to cope with various emergencies and environmental changes.
[0175] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0176] Corresponding to the drone training room resource scheduling method described in the above embodiment, the embodiment of the present application also provides a drone training room resource scheduling device, and each module of the device can implement each step of the drone training room resource scheduling method. Figure 5 A structural block diagram of a resource scheduling device for a drone training room provided in an embodiment of the present application is shown. For ease of explanation, only the parts related to the embodiment of the present application are shown.
[0177] Reference Figure 5 , the device comprises:
[0178] An acquisition module, used to acquire real-time environmental data of a training room, multiple real-time teaching tasks, and real-time status information of multiple drones; wherein the real-time environmental data is used to reflect the spatial layout of the training room, the real-time teaching tasks include time requirements, location requirements, and computing power requirements, and the real-time status information is used to reflect the current operating status of each drone;
[0179] A first path module, used to obtain a plurality of first path combinations according to the real-time environmental data, each of the real-time teaching tasks and each of the real-time status information; wherein the first path combination is a path for each drone to perform the corresponding real-time teaching task, and the path is composed of a series of nodes that the drone needs to pass through during the flight process;
[0180] A timing path module, used to obtain a plurality of timing path combinations according to each of the first path combinations and each of the real-time teaching tasks; wherein the timing path combination includes a path and a timestamp for each drone to execute the corresponding real-time teaching task;
[0181] An optimal timing path module, used to determine an optimal timing path combination according to each of the timing path combinations; wherein the optimal timing path combination includes a path and a timestamp for each drone to perform the corresponding real-time teaching task;
[0182] A real-time prompt module is used to send corresponding real-time prompt information according to the optimal timing path combination and each real-time status information; wherein the real-time prompt information includes the optimal timing path of the drone and the real-time status information.
[0183] It should be noted that the information interaction, execution process, etc. between the above-mentioned devices / modules are based on the same concept as the method embodiment of the present application. Their specific functions and technical effects can be found in the method embodiment part and will not be repeated here.
[0184] The technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned device can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.
[0185] The embodiment of the present application also provides a resource scheduling device for a drone training room, Figure 6 This is a schematic diagram of the structure of a drone training room resource scheduling device / drone training room resource scheduling equipment provided in one embodiment of the present application. Figure 6 As shown, the drone training room resource scheduling device / drone training room resource scheduling equipment 6 of this embodiment includes: at least one processor 60 ( Figure 6 Only one is shown), at least one memory 61 ( Figure 6 Only one is shown) and a computer program 62 stored in the at least one memory 61 and executable on the at least one processor 60. When the processor 60 executes the computer program 62, the UAV training room resource scheduling device / UAV training room resource scheduling equipment 6 implements the steps in any of the above-mentioned UAV training room resource scheduling method embodiments, or the UAV training room resource scheduling device / UAV training room resource scheduling equipment 6 implements the functions of each module / unit in the above-mentioned device embodiments.
[0186] Exemplarily, the computer program 62 may be divided into one or more modules / units, which are stored in the memory 61 and executed by the processor 60 to complete the present application. The one or more modules / units may be a series of computer program instruction segments capable of completing specific functions, which are used to describe the execution process of the computer program 62 in the resource scheduling device 6 of the drone training room.
[0187] The UAV training room resource scheduling device / UAV training room resource scheduling equipment 6 can be a computing device such as a desktop computer, a notebook, a PDA, and a cloud server. The UAV training room resource scheduling device / UAV training room resource scheduling equipment may include, but is not limited to, a processor 60 and a memory 61. Those skilled in the art will understand that Figure 6 It is merely an example of the UAV training room resource scheduling device / UAV training room resource scheduling equipment 6 and does not constitute a limitation of the UAV training room resource scheduling device / UAV training room resource scheduling equipment 6. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components, for example, it may also include input and output devices, network access equipment, buses, etc.
[0188] The processor 60 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.
[0189] In some embodiments, the memory 61 may be an internal storage unit of the drone training room resource scheduling device / drone training room resource scheduling device 6, such as a hard disk or memory of the drone training room resource scheduling device / drone training room resource scheduling device 6. In other embodiments, the memory 61 may also be an external storage device of the drone training room resource scheduling device / drone training room resource scheduling device 6, such as a plug-in hard disk, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, a flash card (Flash Card), etc. equipped on the drone training room resource scheduling device / drone training room resource scheduling device 6. Further, the memory 61 may also include both the internal storage unit of the drone training room resource scheduling device / drone training room resource scheduling device 6 and an external storage device. The memory 61 is used to store an operating system, an application program, a boot loader (BootLoader), data, and other programs, such as the program code of the computer program, etc. The memory 61 may also be used to temporarily store data that has been output or is to be output.
[0190] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in any of the above method embodiments are implemented.
[0191] An embodiment of the present application provides a computer program product. When the computer program product runs on a drone training room resource scheduling device, the drone training room resource scheduling device implements the steps in any of the above-mentioned method embodiments.
[0192] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, which can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a computer-readable storage medium. When the computer program is executed by the processor, the steps of the above-mentioned various method embodiments can be implemented. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may at least include: any entity or device that can carry the computer program code to the resource scheduling device / resource scheduling device of the drone training room, recording medium, computer memory, read-only memory (ROM, Read-OnlyMemory), random access memory (RAM, Random Access Memory), electric carrier signal, telecommunication signal and software distribution medium. For example, a USB flash drive, a mobile hard disk, a disk or an optical disk. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electric carrier signals and telecommunication signals.
[0193] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0194] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0195] In the embodiments provided in the present application, it should be understood that the disclosed UAV training room resource scheduling device / UAV training room resource scheduling equipment and method can be implemented in other ways. For example, the UAV training room resource scheduling device / UAV training room resource scheduling equipment embodiment described above is only schematic. For example, the division of the modules or units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0196] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0197] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.
Claims
1. A method for scheduling resources in a drone training room, characterized in that: include: Acquire real-time environmental data of the training room, multiple real-time teaching tasks, and real-time status information of multiple drones; wherein the real-time environmental data is used to reflect the spatial layout of the training room, the real-time teaching tasks include time requirements, location requirements, and computing power requirements, and the real-time status information is used to reflect the current operating status of each drone; A plurality of first path combinations are obtained according to the real-time environmental data, each of the real-time teaching tasks and each of the real-time status information; wherein the first path combination is a path for each drone to perform the corresponding real-time teaching task, and the path is composed of a series of nodes that the drone needs to pass through during the flight process; A plurality of time sequence path combinations are obtained according to each of the first path combinations and each of the real-time teaching tasks; wherein the time sequence path combination includes a path and a timestamp for each drone to execute the corresponding real-time teaching task; Determine an optimal timing path combination according to each of the timing path combinations; wherein the optimal timing path combination includes an optimal timing path for each drone to perform the corresponding real-time teaching task, and the optimal timing path includes a path and a timestamp; Corresponding real-time prompt information is sent according to the optimal timing path combination and each of the real-time status information; wherein the real-time prompt information includes the optimal timing path and the real-time status information corresponding to the drone.
2. The method for scheduling resources in a drone training room according to claim 1, characterized in that: The real-time status information includes real-time location and real-time resource information, and the real-time resource information includes remaining power and idle computing power; the multiple first path combinations are obtained according to the real-time environment data, each of the real-time teaching tasks and each of the real-time status information, including: A grid model is established according to the real-time environment data; wherein the grid model is a model that divides the space of the training room into a series of sub-areas of equal size; A plurality of target position groups are obtained according to each of the real-time status information and each of the real-time teaching tasks; wherein the target position group is a combination of target positions corresponding to the real-time teaching tasks that can be completed by each drone; A plurality of first path combinations are obtained according to the grid model, each of the real-time positions and each of the target position groups.
3. The method for scheduling resources in a drone training room according to claim 2, characterized in that: The method of obtaining a plurality of target position groups according to each of the real-time status information and each of the real-time teaching tasks comprises: Obtaining corresponding resource demand information according to the real-time position of each drone and each real-time teaching task; wherein the resource demand information includes power demand and computing power demand; Determine a first real-time teaching task for each drone according to the resource demand information and the real-time resource information; wherein the first real-time teaching task refers to the real-time teaching task that can be completed by the drone; Obtaining a target position set according to the real-time position of each drone and the corresponding first real-time teaching task; wherein the target position set is the corresponding target position of the drone when completing the first real-time teaching task; The target position group is determined according to each of the real-time teaching tasks and the target position set of each drone.
4. The method for scheduling resources in a drone training room according to claim 2, characterized in that: The obtaining of a plurality of first path combinations according to the grid model, each of the real-time positions and each of the target position groups comprises: A plurality of initial path combinations are obtained according to the grid model, the target position of each UAV in each target position group and the real-time position of the corresponding UAV; wherein the initial path combination is a path of the shortest distance between the target position of each UAV in the target position group and the real-time position of the corresponding UAV; Determine a corresponding collision area based on the grid model and each of the initial path combinations; wherein the collision area is the sub-area where each drone in the initial path combination enters an obstacle; Obtaining a corresponding collision position and collision direction according to each of the initial path combinations and the corresponding collision area; wherein the collision position is a coordinate point where each UAV is expected to collide with an obstacle in the initial path combination, and the collision direction is a flight direction when each UAV is expected to collide with an obstacle in the initial path combination; Obtaining a corresponding adjustment direction according to each of the collision positions and the corresponding collision direction; wherein the adjustment direction is used to instruct the drone to avoid obstacles; The corresponding first path combination is obtained according to each of the initial path combinations and the corresponding adjustment direction.
5. The method for scheduling resources in a drone training room according to claim 4, characterized in that: The method of obtaining a plurality of initial path combinations according to the grid model, the target position of each UAV in each target position group and the real-time position of the corresponding UAV comprises: Determine an adjacent subdomain based on the grid model and the real-time position of each drone; wherein the adjacent subdomain is the subregion adjacent to the drone in the grid model; Obtaining an estimated distance group corresponding to the target position group according to the target position in each of the target position groups and the corresponding adjacent subdomain of the drone; wherein the estimated distance group includes the distance from each of the adjacent subdomains of the drone to the corresponding target position; The corresponding initial path combination is obtained according to each target position group and the corresponding estimated distance group.
6. The method for scheduling resources in a drone training room according to claim 1, characterized in that: The obtaining of a plurality of timing path combinations according to each of the first path combinations and each of the real-time teaching tasks comprises: Obtaining a first speed of each drone according to each of the first path combinations and the corresponding real-time teaching tasks; wherein the first speed is the minimum speed that the drone needs to reach to complete the corresponding real-time teaching tasks; Obtaining a first distance between every two UAVs in each of the first path combinations according to each of the first path combinations and each of the first speeds; wherein the first distance is a spatial distance between the two UAVs; According to each of the real-time teaching tasks, the priority of each drone in each of the first path combinations for executing the corresponding real-time teaching task is obtained; Determine whether the first distance is less than a distance threshold; If there is a first distance that is less than the distance threshold, obtaining a relative speed according to the first speeds of the two UAVs in the corresponding first path combination; If there are two UAVs in the first path combination whose first speeds are in similar directions and whose corresponding relative speeds exceed a speed threshold, then adjusting the first speed corresponding to the UAV with a lower priority according to the first speed and the first distance to obtain a second speed; Obtaining the corresponding timing path combination according to the first path combination and the second speed; If the directions of the first speeds of two UAVs in the first path combination are not similar or the corresponding relative speeds do not exceed the speed threshold, the corresponding timing path combination is determined according to the first path combination and the first speed.
7. The method for scheduling resources in a drone training room according to claim 6, characterized in that: The method further comprises: If there is no first distance less than the distance threshold, the corresponding timing path combination is determined according to each of the first path combinations and each of the first speeds.
8. The method for scheduling resources in a drone training room according to claim 1, characterized in that: The determining the optimal timing path combination according to each of the timing path combinations includes: Determine the corresponding second distance and second duration according to each of the timing path combinations; wherein the second distance is the sum of the path lengths of each UAV in the timing path combination, and the second duration is the sum of the shortest time of each UAV in the timing path combination; The optimal timing path combination is obtained according to the second distance and the second duration of each of the timing path combinations.
9. The method for scheduling resources in a drone training room according to claim 1, characterized in that: The sending corresponding real-time prompt information according to the optimal timing path combination and each of the real-time status information includes: Determine whether any drone deviates from the optimal timing path according to the optimal timing path combination and each of the real-time status information; wherein the optimal timing path includes the path and timestamp of the drone executing the corresponding real-time teaching task; If there is a drone that deviates from the optimal timing path, real-time deviation information is obtained according to the optimal timing path combination and the real-time status information of the drone; wherein the real-time deviation information includes path deviation information and / or time deviation information, the path deviation information is the position deviation information of a series of nodes that the drone needs to pass during the flight, and the time deviation information is the difference between the actual time when the drone arrives at each node and the timestamp of the optimal timing path combination; Sending the corresponding real-time prompt information according to the real-time deviation information and the corresponding real-time status information; If there is a drone that has not deviated from the optimal timing path, the corresponding real-time prompt information is sent according to the optimal timing path combination and each real-time status information.
10. A resource scheduling device for a drone training room, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the method according to any one of claims 1 to 9 is implemented.
Citation Information
Patent Citations
Unmanned aerial vehicle training simulation scene
CN114677875A
Optimal flight path generation method and system based on flight environment of unmanned aerial vehicle
CN115420286A