Methods, apparatuses, and computing devices for data processing
Patent Information
- Application Number
- CN202510560000.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-29
- Publication Date
- 2026-10-30
AI Technical Summary
该方案中,对城市的无线信号的强度进行仿真的过程需要进行较长的运算时间,无法满足无人机飞行的实时需求
Smart Images

Figure CN123013734A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of cloud computing, and more specifically, to a data processing method, apparatus, and computing device. Background Technology
[0002] In modern cities, drones are increasingly widely used, especially in low-altitude flight. However, factors such as adverse weather conditions, urban turbulence, and insufficient wireless signal coverage can affect drone flight safety in low-altitude areas. Turbulence refers to the irregular airflow phenomena in urban environments caused by the combined effects of streets, buildings, terrain, and human activities—phenomena that cannot be predicted by weather forecasts. Furthermore, because drones rely on wireless signals, which have poor penetration and are easily affected by low-altitude buildings, trees, and other physical obstacles, insufficient wireless signal coverage can lead to a series of problems, including communication interruptions, navigation failures, and increased risk of loss of control, thus compromising drone flight safety in low-altitude areas.
[0003] In one related technology, when a drone needs to fly at low altitude in a city, CFD technology can be used to simulate the turbulence in that urban area, and the simulation results can guide the drone to fly safely in the low-altitude region of the city. However, this approach requires a long computation time (e.g., more than 3 days) to simulate urban turbulence using CFD technology, which cannot meet the real-time requirements of drone flight.
[0004] Another related technology involves using simulation technology to simulate the strength of wireless signals in a city when a drone needs to fly at low altitude. The simulation results then guide the drone's safe flight in the city's low-altitude region. However, this method requires a significant amount of computation time to simulate the city's wireless signal strength, which cannot meet the real-time requirements of drone flight.
[0005] Therefore, addressing the real-time requirements of simulation results for drones and ensuring their safe flight have become urgent technical challenges. Summary of the Invention
[0006] This application provides a data processing method, apparatus, and computing device that can quickly retrieve pre-stored target simulation files according to real-time needs, and guide UAVs to fly safely in low-altitude areas based on the acquired target simulation files, significantly improving simulation efficiency and thus meeting the real-time needs of UAV flight.
[0007] In a first aspect, a data processing method is provided, comprising: obtaining a target simulation map from multiple simulation maps corresponding to a stored target area, wherein the target simulation map includes a target turbulence simulation map and / or a target wireless signal strength simulation map; calculating simulation results corresponding to each grid in the target area based on the target simulation map, wherein the simulation results corresponding to each grid include at least one of the following: the turbulence velocity of each grid, the turbulence direction of each grid, and the wireless signal strength value of each grid; and sending the simulation results corresponding to each grid in the target area to a drone, wherein the simulation results are used to determine the flight path of the drone.
[0008] In the above technical solution, turbulence simulation maps and / or wireless signal strength simulation maps corresponding to the target area can be simulated and stored in advance before determining the UAV's flight path. When it is necessary to determine the UAV's flight path, the stored target turbulence simulation maps and / or target wireless signal strength simulation maps can be directly loaded according to the user's needs, and the UAV's flight path can be formulated based on the loaded target turbulence simulation maps and / or target wireless signal strength simulation maps. In this way, the requirement for real-time simulation results when formulating UAV flight paths can be met, thereby ensuring the safe flight of the UAV in the target area.
[0009] In conjunction with the first aspect, in some implementations of the first aspect, the plurality of simulation diagrams include a plurality of turbulence simulation diagrams, the plurality of turbulence simulation diagrams correspond to different wind conditions, the target simulation diagram includes the target turbulence simulation diagram, and the method further includes: obtaining the target wind condition, the target wind condition including the target wind speed and / or the target wind direction; and obtaining the target turbulence simulation diagram corresponding to the target wind condition from the plurality of turbulence simulation diagrams based on the target wind condition.
[0010] In the above technical solution, a target turbulence simulation map corresponding to the target wind condition can be obtained from multiple turbulence simulation maps based on the target wind condition. Compared with simulating the target turbulence simulation map corresponding to the target wind condition when it is necessary to determine the flight path of the UAV, the efficiency of obtaining simulation results can be improved.
[0011] In conjunction with the first aspect, in some implementations of the first aspect, the target wind condition selected by the user is received.
[0012] In conjunction with the first aspect, in some implementations of the first aspect, the target simulation map includes the target turbulence simulation map, the target region includes a first grid, and multiple turbulence velocities flowing through the first grid during the simulation time period are obtained from the target turbulence simulation map; the turbulence velocity and / or turbulence direction corresponding to the first grid are obtained based on the multiple turbulence velocities flowing through the first grid.
[0013] In the above technical solution, the dynamic turbulence vector within the simulation time period in the target simulation diagram can be transformed into a static expression, thereby simplifying the calculation process and improving calculation efficiency.
[0014] In conjunction with the first aspect, in some implementations of the first aspect, the turbulent velocity corresponding to the first grid is the maximum value among multiple turbulent velocities of the first grid.
[0015] In conjunction with the first aspect, in some implementations of the first aspect, the target simulation map includes a target wireless signal strength simulation map, the target region includes a first grid, the strength values of the wireless signals corresponding to multiple sampling points within the first grid are obtained from the target wireless signal strength simulation map, and the strength value of the wireless signal corresponding to the first grid is obtained based on the wireless signal strength corresponding to the multiple sampling points within the first grid.
[0016] In conjunction with the first aspect, in some implementations of the first aspect, the strength value of the wireless signal corresponding to the first grid is the average value of the strength values of the wireless signals corresponding to each of the plurality of sampling points, or the mode of the strength values of the wireless signals corresponding to each of the plurality of sampling points.
[0017] In conjunction with the first aspect, in some implementations of the first aspect, the simulation results corresponding to each grid in the target region are calculated in parallel by multiple threads based on the target simulation diagram.
[0018] In the above technical solution, the simulation results of multiple grids in the target area can also be calculated in parallel, thereby improving the computational efficiency of obtaining the simulation results of the multiple grids.
[0019] In conjunction with the first aspect, in some implementations of the first aspect, this method is applied to the in-store computing file processing system FPSISC.
[0020] The above technical solution can be applied to FPSIC. Once FPSIC obtains the target simulation image, it can directly calculate the simulation results corresponding to each grid in the target area based on the target simulation image. In this way, the data can be calculated locally without data transfer, thereby reducing the delay and energy consumption caused by data transfer and significantly improving the efficiency of data calculation.
[0021] Secondly, a data processing apparatus is provided, comprising: an acquisition module, a calculation module, and a transmission module. The acquisition module is used to acquire a target simulation map from multiple simulation maps corresponding to a stored target area, wherein the target simulation map includes a target turbulence simulation map and / or a target wireless signal strength simulation map; the calculation module is used to calculate the simulation result corresponding to each grid in the target area based on the target simulation map, wherein the simulation result corresponding to each grid includes at least one of the following: the turbulence velocity of each grid, the turbulence direction of each grid, and the wireless signal strength value of each grid; the transmission module is used to transmit the simulation result corresponding to each grid in the target area to a drone, wherein the simulation result is used to determine the flight path of the drone.
[0022] In conjunction with the second aspect, in some implementations of the second aspect, the plurality of simulation diagrams include a plurality of turbulence simulation diagrams, which correspond to different wind conditions, and the target simulation diagram includes the target turbulence simulation diagram. The acquisition module is specifically used to: acquire the target wind condition, which includes the target wind speed and / or the target wind direction; and, based on the target wind condition, acquire the target turbulence simulation diagram corresponding to the target wind condition from the plurality of turbulence simulation diagrams.
[0023] In conjunction with the second aspect, in some implementations of the second aspect, the acquisition module is specifically used to: receive the target wind condition selected by the user.
[0024] In conjunction with the second aspect, in some implementations of the second aspect, the target simulation map includes the target turbulence simulation map, the target region includes a first grid, and the calculation module is specifically used to: obtain multiple turbulence velocities flowing through the first grid during the simulation time period from the target turbulence simulation map; and obtain the turbulence velocity and / or turbulence direction corresponding to the first grid based on the multiple turbulence velocities flowing through the first grid.
[0025] In conjunction with the second aspect, in some implementations of the second aspect, the turbulent velocity corresponding to the first grid is the maximum value among multiple turbulent velocities of the first grid.
[0026] In conjunction with the second aspect, in some implementations of the second aspect, the target simulation map includes a target wireless signal strength simulation map, the target region includes a first grid, and the calculation module is specifically used to: obtain the strength values of the wireless signals corresponding to multiple sampling points in the first grid from the target wireless signal strength simulation map; and obtain the strength value of the wireless signal corresponding to the first grid based on the wireless signal strength corresponding to the multiple sampling points in the first grid.
[0027] In conjunction with the second aspect, in some implementations of the second aspect, the strength value of the wireless signal corresponding to the first grid is the average value of the strength values of the wireless signals corresponding to each of the plurality of sampling points, or the mode of the strength values of the wireless signals corresponding to each of the plurality of sampling points.
[0028] In conjunction with the second aspect, in some implementations of the second aspect, the computation module is specifically used to: compute the simulation results corresponding to each grid in the target region in parallel using multiple threads, based on the target simulation map.
[0029] In conjunction with the second aspect, in some implementations of the second aspect, the device is applied to a storage-and-computation integrated file processing system (FPSISC).
[0030] It should be understood that for the beneficial effects of the second aspect and its various implementations, please refer to the first aspect and its various implementations; they will not be repeated here.
[0031] Thirdly, a computing device is provided, including a processor and a memory, and optionally, an input / output interface. The processor controls the input / output interface to send and receive information, the memory stores a computer program, and the processor retrieves and runs the computer program from the memory, causing the computing device to execute the method of the first aspect or any possible implementation thereof.
[0032] Optionally, the processor can be a general-purpose processor, which can be implemented in hardware or software. When implemented in hardware, the processor can be a logic circuit, integrated circuit, etc.; when implemented in software, the processor can be a general-purpose processor that reads software code stored in memory. This memory can be integrated into the processor or located outside the processor and exist independently.
[0033] Fourthly, a computing device cluster is provided, including at least one computing device, each computing device including a processor and a memory; the processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device, such that the computing device cluster performs the method of the first aspect or any possible implementation thereof.
[0034] Fifthly, a chip is provided that acquires and executes instructions to implement the methods described in the first aspect and any implementation thereof.
[0035] Optionally, as one implementation, the chip includes a processor and a data interface, through which the processor reads instructions stored in the memory and executes the methods in the first aspect and any implementation thereof.
[0036] Optionally, as one implementation, the chip may further include a memory storing instructions, and the processor is used to execute the instructions stored in the memory. When the instructions are executed, the processor is used to perform the method in the first aspect and any implementation thereof.
[0037] In a sixth aspect, a computer program product containing instructions is provided, which, when executed by a computing device, cause the computing device to perform the methods described in the first aspect and any implementation thereof.
[0038] In a seventh aspect, a computer program product containing instructions is provided, which, when run by a cluster of computing devices, cause the cluster of computing devices to perform the methods described in the first aspect and any implementation thereof.
[0039] Eighthly, a computer-readable storage medium is provided, including computer program instructions that, when executed by a computing device, perform the method as described in the first aspect and any implementation thereof.
[0040] As examples, these computer-readable storage devices include, but are not limited to, one or more of the following: read-only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), flash memory, electrically EPROM (EEPROM), and hard drive.
[0041] Alternatively, as one implementation method, the aforementioned storage medium can specifically be a non-volatile storage medium.
[0042] A ninth aspect provides a computer-readable storage medium including computer program instructions that, when executed by a cluster of computing devices, perform the method as described in the first aspect and any implementation thereof.
[0043] As examples, these computer-readable storage devices include, but are not limited to, one or more of the following: read-only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), flash memory, electrically EPROM (EEPROM), and hard drive.
[0044] Alternatively, as one implementation method, the aforementioned storage medium can specifically be a non-volatile storage medium. Attached Figure Description
[0045] Figure 1 This is a schematic block diagram of a cloud scenario applicable to embodiments of this application.
[0046] Figure 2 This is an illustrative flowchart of a data processing method provided in an embodiment of this application.
[0047] Figure 3 This is another illustrative flowchart of the data processing method provided in the embodiments of this application.
[0048] Figure 4 This is a schematic block diagram of a user interface provided in an embodiment of this application.
[0049] Figure 5 This is a schematic block diagram of a data processing apparatus 500 provided in an embodiment of this application.
[0050] Figure 6 A schematic deployment diagram of a data processing apparatus 500 provided in this application.
[0051] Figure 7 This is a schematic diagram of the architecture of a computing device 1500 provided in an embodiment of this application.
[0052] Figure 8 This is a schematic diagram of the architecture of a computing device cluster provided in an embodiment of this application.
[0053] Figure 9 This is a schematic diagram showing the connection between computing devices 1500A and 1500B via a network, as provided in the embodiments of this application. Detailed Implementation
[0054] The technical solutions in this application will now be described with reference to the accompanying drawings.
[0055] This application will present various aspects, embodiments, or features relating to systems comprising multiple devices, components, modules, etc. It should be understood and appreciated that individual systems may include additional devices, components, modules, etc., and / or may not include all devices, components, modules, etc. discussed in conjunction with the accompanying drawings. Furthermore, combinations of these approaches are also possible.
[0056] Furthermore, in the embodiments of this application, the words "exemplary," "for example," etc., are used to indicate that they are examples, illustrations, or descriptions. Any embodiment or design scheme described as "exemplary" in this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of the term "exemplary" is intended to present the concept in a concrete manner.
[0057] In the embodiments of this application, "corresponding" and "corresponding" can sometimes be used interchangeably. It should be noted that when the distinction is not emphasized, their intended meanings are consistent.
[0058] The business scenarios described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.
[0059] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0060] In this application, "at least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A alone, A and B simultaneously, and B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple.
[0061] In modern cities, drones are increasingly widely used, especially in low-altitude flight. However, factors such as adverse weather conditions, urban turbulence, and insufficient wireless signal coverage can affect the flight safety of drones in low-altitude areas. Turbulence, in particular, refers to the irregular airflow phenomena in urban environments caused by the combined effects of complex factors such as streets, buildings, terrain, and human activities; these are phenomena that cannot be predicted by weather forecasts.
[0062] Specifically, the impact of turbulence on the flight safety of UAVs is mainly reflected in the following aspects.
[0063] 1. The drone's flight attitude is unstable.
[0064] Rapid changes in airflow direction and speed within turbulence can cause severe turbulence in drones, leading to irregular changes in their altitude, speed, and flight attitude. This severe turbulence can make it difficult for drones to maintain stability, resulting in loss of flight control and potentially even a crash.
[0065] 2. Structural damage to the drone
[0066] Because the changing airflow in turbulence can subject drones to fluctuating loads, prolonged exposure to this environment can damage the drone's structure, potentially causing deformation or even destruction. For example, strong turbulence can damage components such as the drone's wings and propellers, affecting its flight performance.
[0067] 3. Navigation and control of drones are difficult.
[0068] Because changes in airflow in turbulent conditions can interfere with the drone's sensors (such as gyroscopes and accelerometers), leading to inaccurate navigation data and affecting the drone's flight control. Furthermore, the changes in airflow in turbulent conditions increase the difficulty of drone control, requiring constant adjustments from the pilot or automatic control system to maintain stable flight.
[0069] 4. Increased energy consumption of drones
[0070] To cope with changes in airflow in turbulent conditions, drones need to increase their power output to maintain their flight attitude, which leads to increased energy consumption and thus shortens the drone's flight time.
[0071] 5. Risks associated with the safe landing of drones
[0072] Turbulent airflow variations can make it difficult for drones to maintain stability during landing, increasing the risk of landing failure. Furthermore, for drones relying on automatic landing systems, turbulent airflow variations can interfere with safe landing, leading to landing failure.
[0073] 6. Risk of communication interruption for drones
[0074] Changes in airflow during turbulence can cause unstable communication signals between the UAV and the ground control station, or even signal interruptions, thus affecting the flight safety of the UAV.
[0075] Furthermore, since drones rely on wireless signals for flight, and wireless signals have poor penetration and are easily affected by physical obstacles such as low-altitude buildings and trees, in areas with insufficient wireless signal coverage, drones may experience a series of problems such as communication interruption, navigation failure, and increased risk of loss of control, thus making it impossible to guarantee the flight safety of drones in low-altitude areas.
[0076] Specifically, the impact of insufficient wireless signal coverage on the flight safety of drones is mainly reflected in the following aspects.
[0077] 1. Risk of communication interruption and loss of control
[0078] Drones rely on wireless signals (such as remote controllers and data links) to communicate with ground stations. Insufficient signal coverage can lead to brief or prolonged communication interruptions, preventing pilots from controlling the drone in real time. The drone may become uncontrollable, unable to respond to commands, or even trigger automatic return-to-home or hovering functions (if available). However, if these automatic functions fail, the drone may crash. Furthermore, in emergencies (such as low battery or obstacle avoidance), pilots must send commands via signals. Weak or lost signals prevent timely intervention, increasing the probability of accidents.
[0079] 2. Navigation and positioning errors
[0080] Drones rely on the Global Positioning System (GPS) for positioning and navigation. If signal coverage is insufficient (e.g., in mountainous areas, urban canyons, or areas with electromagnetic interference), GPS may malfunction, causing positioning deviations or drift, potentially leading to the drone straying from its flight path, colliding with obstacles, or entering no-fly zones. If GPS fails, the drone may switch to an inertial measurement unit (IMU), but IMU errors accumulate over time, causing positional deviations, especially during long-duration flights where the risk is even greater.
[0081] 3. Data transmission and task failure
[0082] When drones perform tasks (such as surveying and monitoring), they need to transmit real-time data via wireless signals. Insufficient signal can lead to data loss or image lag, affecting task execution and even causing operational disruptions due to the inability to obtain critical information. Furthermore, modern drones rely on wireless signals to achieve automated functions (such as obstacle avoidance and automatic return-to-home). Insufficient signal can cause these functions to malfunction or even require human intervention.
[0083] In one technology, when a drone needs to fly at low altitude in a city, CFD technology can be used to simulate the turbulence in that urban area, and the simulation results can guide the drone to fly safely in the low-altitude region of the city. However, this approach requires a long computation time (e.g., more than 3 days) to simulate urban turbulence using CFD technology, which cannot meet the real-time requirements of drone flight.
[0084] Another technique involves using simulation technology to measure the strength of wireless signals in a city when a drone needs to fly at low altitude. The simulation results then guide the drone's safe flight within the city's low-altitude region. However, this method requires a significant amount of computation time to simulate the city's wireless signal strength, which cannot meet the real-time requirements of drone flight.
[0085] In view of this, the present application provides a data processing method that can simulate and store simulation files in advance, and when the UAV needs to fly, quickly retrieve the pre-stored target simulation file according to real-time requirements, and guide the UAV to fly safely in the low-altitude area based on the obtained target simulation file, which significantly improves simulation efficiency and thus meets the real-time requirements of UAV flight.
[0086] In one possible implementation, the method provided in this application embodiment can be applied to a cloud service scenario, where the method is executed by a cloud management platform within the cloud service scenario. For ease of description, the following will first refer to... Figure 1 It provides a detailed description of cloud service scenarios.
[0087] Figure 1 This is a schematic block diagram illustrating a cloud scenario applicable to embodiments of this application. For example... Figure 1 As shown, the cloud scenario may include: cloud management platform 110, Internet 120, and client 130.
[0088] like Figure 1 As shown, the cloud management platform 110 is used to manage the infrastructure that provides multiple cloud services. The infrastructure includes multiple cloud data centers, each cloud data center includes multiple servers, and each server includes cloud service resources to provide corresponding cloud services to tenants.
[0089] The cloud management platform 110 can be located in a cloud data center and provides access interfaces (such as user interfaces or application program interfaces, APIs). Tenants can use client 130 to remotely access the cloud management platform 110, register a cloud account and password, and log in. After successful authentication of the cloud account and password, the tenant can further select and purchase virtual machines of specific specifications (processor, memory, disk) on the cloud management platform 110. After successful purchase, the cloud management platform 110 provides the remote login account and password for the purchased virtual machine, allowing client 130 to remotely log in and install and run the tenant's applications. Therefore, tenants can create, manage, log in to, and operate virtual machines in the cloud data center through the cloud management platform 110. Virtual machines can also be referred to as Elastic Compute Service (ECS) or Elastic Instances (different cloud service providers may use different names).
[0090] It should be understood that cloud service tenants can be individuals, businesses, schools, hospitals, government agencies, etc.
[0091] The cloud management platform 110 includes, but is not limited to, a user console, compute management services, network management services, storage management services, authentication services, and image management services. The user console provides an interface or API for interaction with tenants. The compute management services manage servers running virtual machines and containers, as well as bare metal servers. The network management services manage network services (such as gateways and firewalls). The storage management services manage storage services (such as data bucket services). The authentication services manage tenant account passwords. The image management services manage virtual machine images. Tenants can log in to the cloud management platform 110 via client 130 and the internet 120 to manage their rented cloud services.
[0092] Let's combine the following... Figure 2 This application provides a detailed description of a data processing method based on an embodiment. It should be understood that... Figure 2 The examples are merely to help those skilled in the art understand the embodiments of this application, and are not intended to limit the embodiments of the application to... Figure 2 The specific numerical values or specific scenarios illustrated. Those skilled in the art will understand based on... Figure 2 The examples given below can obviously be modified or varied in various ways, and such modifications and variations also fall within the scope of the embodiments of this application.
[0093] Figure 2 This is a schematic flowchart illustrating a data processing method provided in an embodiment of this application. Figure 2As shown, the method includes steps 210-230, which will be described in detail below.
[0094] Step 210: Obtain the target simulation image corresponding to the stored target area.
[0095] In this embodiment of the application, a three-dimensional model of the target area can be performed to obtain the three-dimensional data of the target area, and the turbulent motion of the target area can be simulated according to different wind directions and wind speeds to obtain multiple turbulence simulation diagrams under different wind directions and wind speeds.
[0096] The target area mentioned above refers to the modeling area, which may be, for example, a city to be modeled or a street block to be modeled. This application embodiment does not specifically limit this.
[0097] The three-dimensional data of the target area may include, but is not limited to: building outlines, terrain, vegetation, roads, etc. within the target area.
[0098] The aforementioned turbulence simulation diagrams refer to the simulation of turbulent motion in a target region using numerical methods, used to visually demonstrate the flow characteristics of turbulence. For example, a common type of turbulence simulation diagram is the velocity vector diagram, which displays the magnitude and direction of fluid velocity. The arrows in this velocity vector diagram are used to reflect vortices and separation phenomena in the flow.
[0099] It should be understood that wind direction and wind speed are among the main factors affecting turbulent motion, and different wind directions and speeds correspond to different turbulence simulation diagrams. Wind direction refers to the direction of wind flow, usually expressed as an angle (e.g., 0° represents true north) or a vector; wind direction affects the direction of turbulence. Wind speed refers to the velocity of wind flow, usually expressed in m / s or km / h; wind speed affects the intensity of turbulence, generally, the higher the wind speed, the stronger the turbulence.
[0100] There are various ways to obtain the turbulence simulation diagrams described above, and this application does not specifically limit the specific implementation methods.
[0101] One possible implementation is to generate a turbulence simulation map of the target region based on computational fluid dynamics (CFD) technology.
[0102] It should be understood that CFD is used to simulate the motion and behavior of fluids and is widely applied in various engineering and scientific fields. Specifically, CFD replaces the fields of physical quantities that are originally continuous in the time and space domains, such as velocity and pressure fields, with a set of variable values at a finite number of discrete points. By establishing a system of algebraic equations about the relationships between the field variables at these discrete points through certain principles and methods, and then solving the system of algebraic equations, approximate values of the field variables are obtained.
[0103] For example, CFD simulation is a technique that uses computer technology to numerically simulate and analyze fluid flow, heat transfer, mass transfer, and related physical phenomena. Its core principle is to predict the behavior of fluids in complex geometric domains by solving the governing equations of fluid flow (such as the Navier-Stokes equations) and combining them with numerical calculation methods.
[0104] For example, the CFD calculation process typically includes the following main steps:
[0105] 1) Establish governing equations: Based on the basic principles of fluid mechanics, establish governing equations to describe the fluid flow and heat transfer process, such as the Navier-Stokes equations;
[0106] 2) Determine initial and boundary conditions: Provide initial states and boundary conditions for the governing equations in order to perform numerical solutions;
[0107] 3) Divide the computational domain into a series of small grid cells to discretize the fluid domain so that numerical methods can be applied to each grid cell for solution.
[0108] 4) Establish discrete equations: Use numerical methods (such as finite difference method, finite element method, finite volume method, etc.) to discretize the governing equations and obtain a set of algebraic equations about the physical quantities on the grid nodes;
[0109] 5) Solving discrete equations: Using computer technology to solve algebraic equations to obtain approximate values of physical quantities at grid nodes;
[0110] 6) Display calculation results: Display the calculation results in the form of graphs or data for analysis and evaluation.
[0111] In this embodiment, after obtaining multiple turbulence simulation diagrams under different wind directions and speeds, these diagrams can be stored. Thus, when it is necessary to guide the drone's flight, the corresponding turbulence simulation diagram can be retrieved from the stored diagrams. This avoids simulating the turbulence simulation diagram again when guidance is needed, thereby meeting the real-time requirement for turbulence simulation diagrams during drone flight.
[0112] For example, such as Figure 3 The aforementioned multiple turbulence simulation diagrams can be stored in a simulation file storage system.
[0113] For example, the simulated file storage system described above could be the Hadoop Distributed File System (HDFS), which supports fast file retrieval and access.
[0114] Optionally, in some embodiments, in order to achieve fast retrieval of multiple turbulence simulation diagrams stored in the simulation file storage system, indexes can be created for each of the multiple turbulence simulation diagrams, and the multiple turbulence simulation diagrams can be retrieved quickly through the indexes, thereby improving the access speed of the turbulence simulation diagrams.
[0115] For example, such as Figure 3 As shown, multiple indexes of turbulence simulation diagrams can be created in the index database. For example, the index could be wind direction and wind speed.
[0116] In this embodiment of the application, a simulation map of the wireless signal strength corresponding to the target area can also be obtained based on the three-dimensional modeling of the target area.
[0117] It should be understood that the above wireless signal strength simulation map can also be called a wireless signal strength distribution map or a wireless signal coverage map, which is used to characterize the wireless signal coverage of the target area.
[0118] It should also be understood that the wireless signal strength simulation map of a region is related to the number and location of base stations in that region. Generally, if the number and location of base stations in a region remain unchanged, one region corresponds to one wireless signal strength simulation map.
[0119] This application does not specifically limit the implementation method for obtaining the wireless signal strength simulation map. As an example, the propagation of electromagnetic waves in a target area can be simulated to generate a wireless signal strength distribution map of the target area.
[0120] In this embodiment, after obtaining the wireless signal strength simulation map corresponding to the target area, the simulation map can be stored. This allows the stored simulation map to be directly retrieved when guidance for the drone's flight is needed, avoiding the need to simulate the corresponding wireless signal strength map again when guidance is required. This satisfies the drone's real-time requirement for wireless signal strength simulation maps during flight.
[0121] For example, such as Figure 3 The simulation image of the wireless signal strength corresponding to the target area can be stored in the simulation file storage system.
[0122] For example, the simulated file storage system described above could be HDFS.
[0123] In this embodiment of the application, the target simulation map corresponding to the stored target area can be obtained from the simulation file storage system. For example, the target simulation map can be obtained from the simulation file storage system by a file processing system for integrated storage and computation (FPSISC).
[0124] It should be understood that an in-memory computing file processing system is a technical architecture that deeply integrates storage and computing functions, aiming to solve the "memory wall" and "power wall" problems caused by the separation of storage and computing in the traditional von Neumann architecture. Within the storage system, nodes can simultaneously possess both storage and computing functions; such a storage system can be called an in-memory computing storage system. For example, by embedding computing units within storage nodes, this storage system can perform calculations directly at the data storage location. Data can be processed locally without being moved, thereby reducing latency and energy consumption caused by data movement and significantly improving file processing efficiency. The in-memory computing architecture supports large-scale parallel computing, capable of handling multiple file operation tasks simultaneously, thus increasing system throughput.
[0125] For example, an in-store and compute-integrated file processing system mainly has the following advantages:
[0126] a) Low latency: Data does not need to be moved between storage and computing units, significantly reducing file processing latency;
[0127] b) High energy efficiency: Reduce energy consumption caused by data transfer and improve the overall energy efficiency ratio of the system;
[0128] c) High throughput: Supports large-scale parallel computing and improves the throughput of file processing systems;
[0129] d) Simplify system architecture: Integrate storage and computing to reduce system complexity and lower development and maintenance costs.
[0130] For example, the target simulation diagram mentioned above includes a target turbulence simulation diagram corresponding to the target area and / or a target wireless signal strength simulation diagram corresponding to the target area. That is, the target simulation diagram includes at least one of the target turbulence simulation diagram and the target wireless signal strength simulation diagram.
[0131] For example, the above target simulation diagram includes the target turbulence simulation diagram corresponding to the target region.
[0132] For example, the above target simulation diagram includes a simulation diagram of the target wireless signal strength corresponding to the target area.
[0133] For example, the above target simulation diagram includes the target turbulence simulation diagram and the target wireless signal strength simulation diagram corresponding to the target area.
[0134] It should be understood that since the target area corresponds to a wireless signal strength simulation map, the wireless signal strength simulation map corresponding to the target area stored in the simulation file storage system is also the aforementioned target wireless signal strength simulation map.
[0135] One possible implementation is, such as Figure 3 As shown, this simulation file storage system can send the target wireless signal strength simulation image to FPSISC.
[0136] It should also be understood that the aforementioned target turbulence simulation diagram is contained in multiple turbulence simulation diagrams corresponding to the target region. That is, in this embodiment of the application, the target turbulence simulation diagram needs to be obtained from multiple turbulence simulation diagrams stored in the simulation file storage system according to the user's needs.
[0137] The following example illustrates how to obtain a target turbulence simulation image from multiple turbulence simulation images according to the user's needs.
[0138] For example, based on the target wind condition selected by the user through the terminal device, a turbulence simulation diagram corresponding to the target wind condition can be selected from multiple turbulence simulation diagrams, and the turbulence simulation diagram corresponding to the target wind condition can be used as the aforementioned target turbulence simulation diagram.
[0139] The aforementioned target wind conditions include target wind speed and / or target wind direction, wherein the target wind direction may be, for example, the wind direction on the day the drone flies, and the target wind speed may be, for example, the wind speed on the day the drone flies.
[0140] The aforementioned terminal devices may be mobile phones, laptops, tablets, handheld computers, wireless terminals in smart cities, wireless devices in smart homes, etc., and this application does not specifically limit them.
[0141] For example, Figure 4 A diagram of a user interface is shown. For example... Figure 4 The user interface includes a wind speed selector and a wind direction selector. Users can select the target wind speed using the wind speed selector and the target wind direction using the wind direction selector.
[0142] For example, with Figure 1 Taking the cloud scenario shown as an example, the user interface mentioned above can be a user interface provided by the cloud management platform.
[0143] One possible implementation is, such as Figure 3As shown, after obtaining the target wind speed and direction input by the user through the user interface, the FPSISC can send these parameters to the index database. This index database can then use these parameters as an index to retrieve the target turbulence simulation map from multiple turbulence simulation maps stored in the simulation file storage system. This target turbulence simulation map is the turbulence simulation map corresponding to the target wind speed and direction. The simulation file storage system can also send the target turbulence simulation map to the FPSISC.
[0144] Optionally, in some embodiments, the above-mentioned multiple turbulence simulation maps and / or wireless signal strength simulation maps can be dynamically updated according to changes in the actual environment in the target area to ensure the real-time performance and accuracy of the target simulation maps obtained by FPSISC from the simulation file storage system.
[0145] For example, if the number and / or location of base stations in the target area change, the stored wireless signal strength simulation map can be dynamically updated according to the changes to obtain the updated wireless signal strength simulation map, and the updated wireless signal strength simulation map can be used as the target wireless signal strength simulation map.
[0146] Step 220: Calculate the simulation results for each grid in the target region based on the target simulation map.
[0147] In this embodiment of the application, after obtaining the target simulation image, the simulation results of each three-dimensional mesh in the target area can be calculated based on the target simulation image.
[0148] It should be understood that a three-dimensional mesh can accurately describe the spatial structure of a target region, with each mesh containing a set of spatial coordinates and corresponding physical quantity values at a given time point. This application does not specifically limit the size of each three-dimensional mesh within the target region.
[0149] For example, after obtaining the target simulation map, FPSISC can directly calculate the simulation results of each grid in the target area based on the target simulation map. In this way, the data can be calculated locally without being moved, thereby reducing the delay and energy consumption caused by data movement and significantly improving the efficiency of file processing.
[0150] Example 1, taking the target simulation map including the target turbulence simulation map as an example, the simulation results of each grid in the target region include, but are not limited to, at least one of the following: the turbulence velocity in each grid and the turbulence direction in each grid.
[0151] The following example illustrates the specific implementation process of calculating the turbulence velocity and direction within each grid of the target region.
[0152] In this embodiment of the application, since the turbulence in each grid in the target region is dynamic, the dynamic turbulence vector can be transformed into a static expression in each grid in the target region, thereby simplifying the calculation process and improving the calculation efficiency.
[0153] For example, based on the target turbulence simulation diagram, the maximum value of the turbulence velocity flowing through each grid over a period of time can be obtained, and the maximum value of the turbulence velocity in each grid can be used as the turbulence velocity within that grid.
[0154] For example, the velocity vector (or velocity components) of each grid point at different time points can be extracted from the target turbulence simulation graph. For each grid point, its velocity modulus (i.e., the magnitude of the velocity) at different time points is calculated. The velocity modulus can be calculated from the components of the velocity vector; for example, in three-dimensional space, the velocity modulus (i.e., the magnitude of the velocity) can be determined based on the components of the velocity vector in the x, y, and z directions. For each grid point, all velocity modulus data within the simulation time period are iterated through, the maximum velocity modulus is found, and this maximum value is taken as the turbulence velocity of that grid point within the simulation time period.
[0155] In this embodiment, the maximum turbulent velocity of each grid can be displayed graphically. For example, different visualization methods can be selected, such as contour plots, cloud maps, or vector maps, to more intuitively understand the spatial distribution of turbulent velocities.
[0156] For example, the direction of turbulence in each grid can be recorded based on the target turbulence simulation diagram. Here, the direction of turbulence refers to the average direction of fluid motion at a certain moment or over a certain period of time under turbulent conditions.
[0157] It should be noted that the embodiments of this application do not specifically limit the form of visualization of the turbulence direction. For example, a vector diagram can be used to display the turbulence direction of each grid, where the length of the vector represents the magnitude of the turbulence velocity. Another example is the use of streamline diagrams to display the overall flow trend of the turbulence, with the streamlines aligned with the turbulence direction.
[0158] Example 2, taking the target simulation map including the target wireless signal strength simulation map as an example, the simulation results of each grid in the target area include the coverage strength of the wireless signal in each grid.
[0159] The following example illustrates the specific implementation process for calculating the coverage strength of wireless signals within each grid in the target area.
[0160] For example, based on the target wireless signal strength simulation map, multiple strength values of the wireless signal covered in each grid can be obtained, and the average value of these multiple strength values can be taken as the strength of the wireless signal covered in that grid.
[0161] For example, based on the target wireless signal strength simulation map, the signal strength values of all sampling points in each grid can be obtained, the average value of the signal strength values of all sampling points in each grid can be calculated, and the average value of the signal strength values of all sampling points in each grid can be used as the representative value of the signal strength of each grid.
[0162] For example, based on the target wireless signal strength simulation map, multiple strength values of the wireless signal covered in each grid can be obtained. The mode (i.e. the value with the highest frequency) of these multiple strength values can be taken as the strength of the wireless signal covered in that grid.
[0163] For example, based on a simulation of the target wireless signal strength, the signal strength values of all sampling points within each grid can be obtained. The most frequently occurring value among all sampling points within each grid can then be selected as the representative signal strength value for that grid. This method may be more representative than the average value in certain scenarios, especially when the signal strength data contains significant outliers or is unevenly distributed.
[0164] In this embodiment, the signal strength of each grid can also be displayed graphically. For example, different visualization methods can be selected, such as heatmaps, contour maps, and 3D surface plots. Heatmaps are drawn using libraries such as Matplotlib and Seaborn to display the average signal strength of each grid. Contour maps draw contour lines on a two-dimensional plane to visually display the spatial distribution of signal strength. 3D surface plots draw surfaces in three-dimensional space to show how signal strength changes with location.
[0165] Example 3, taking the target simulation map including the target turbulence simulation map and the target wireless signal strength simulation map as an example, the simulation results of each grid in the target area include: the coverage strength of the wireless signal in each grid, the flow velocity of the turbulence in each grid, and the direction of the turbulence in each grid.
[0166] Optionally, in some embodiments, environmental data of the target area can also be acquired, and this environmental information, along with turbulence data and signal strength data, can be fused into each grid of the target area to obtain more comprehensive simulation results. That is, the simulation results of each grid in the target area can also include: environmental data.
[0167] This application does not specifically limit the above-mentioned environmental data, which may include, but is not limited to, the temperature, humidity, and air pressure of the target area.
[0168] Optionally, in some embodiments, simulation results of multiple grids in the target region can be computed in parallel to improve the computational efficiency of obtaining simulation results for these multiple grids. For example, multiple threads can be started, and the computational task of each grid can be assigned to different threads for parallel processing to ensure the real-time performance and accuracy of the simulation results for each grid.
[0169] Step 230: Send the simulation results of each grid in the target area to the UAV.
[0170] In this embodiment of the application, after calculating and obtaining the simulation results of each grid in the target area, the simulation results of each grid in the target area can also be sent to the UAV.
[0171] The simulation results for each grid are used to guide the safe flight of the UAV. For example, the simulation results for each grid can be used to determine the flight path planning of the UAV in conjunction with the UAV's flight mission, realize the automatic planning of the optimal path, and enable the UAV to fly safely and energy-efficiently in the target area.
[0172] For example, taking the simulation results as including the turbulence velocity and direction within each grid, when planning the drone's flight path, grids with high turbulence velocities in the target area can be avoided, allowing the drone to fly more safely. Furthermore, if the drone's flight direction aligns with the turbulence direction, energy consumption during drone flight can be saved.
[0173] For example, the flight path of a drone can be planned based on the following constraints.
[0174] 1. Avoid high-risk areas:
[0175] Grids with high turbulence intensity (e.g., turbulent kinetic energy (TKE) > 0.5m) 2 / s 2 (This area) must be marked as a no-fly zone or require detour.
[0176] It should be understood that, based on TKE or velocity standard deviation, the turbulence intensity within the grid can be classified into low, medium, and high risk levels. For example: TKE < 0.1m 2 / s 2 Low risk; 0.1 ≤ TKE < 0.5m 2 / s 2 Medium risk; TKE ≥ 0.5m 2 / s 2 It is considered high-risk.
[0177] 2. Energy consumption optimization:
[0178] Based on the turbulence velocity and turbulence direction within each grid, paths with lower flow velocities and flow directions aligned with the UAV's flight direction are prioritized to reduce the UAV's energy consumption during flight.
[0179] For example, if the simulation results include the strength value (dBm) of the wireless signal within each grid, when planning the flight path of the drone, areas in the target area that are not covered by wireless signals can be avoided, and areas with stronger wireless signals can be selected first to ensure that the drone is always within the signal coverage range during flight.
[0180] It should be understood that wireless signal strength can be divided into the following three levels: strong signal, medium signal, and weak signal. A strong signal refers to a wireless signal strength value ≥ -60dBm (stable connection, low bit error rate); a medium signal refers to a wireless signal strength value between -60dBm and -80dBm (connection is possible, but interference should be noted); and a weak signal refers to a wireless signal strength value < -80dBm (unstable connection, should be avoided).
[0181] In the above technical solution, turbulence simulation maps and / or wireless signal strength simulation maps corresponding to the target area can be simulated and stored in advance before determining the UAV's flight path. When it is necessary to determine the UAV's flight path, the stored target turbulence simulation maps and / or target wireless signal strength simulation maps can be directly loaded according to the user's needs, and the UAV's flight path can be formulated based on the loaded target turbulence simulation maps and / or target wireless signal strength simulation maps. In this way, the requirement for real-time simulation results when formulating UAV flight paths can be met, thereby ensuring the safe flight of the UAV in the target area.
[0182] The above text combined Figures 1 to 4 The method provided in the embodiments of this application is described in detail below. Figures 5-9 The embodiments of the apparatus of this application are described in detail below. It should be understood that the descriptions of the method embodiments correspond to the descriptions of the apparatus embodiments; therefore, any parts not described in detail can be referred to the foregoing method embodiments.
[0183] Figure 5 This is a schematic block diagram of a data processing apparatus 500 provided in an embodiment of this application. The apparatus 500 can be implemented by software, hardware, or a combination of both. The apparatus 500 provided in this embodiment can implement the embodiments of this application. Figure 2The method flow shown includes an apparatus 500 comprising: an acquisition module 510, a calculation module 520, and a transmission module 530. The acquisition module 510 acquires a target simulation map from multiple stored simulation maps corresponding to a target area, wherein the target simulation map includes a target turbulence simulation map and / or a target wireless signal strength simulation map; the calculation module 520 calculates the simulation result corresponding to each grid in the target area based on the target simulation map, wherein the simulation result corresponding to each grid includes at least one of the following: the turbulence velocity of each grid, the turbulence direction of each grid, and the wireless signal strength value of each grid; the transmission module 530 transmits the simulation result corresponding to each grid in the target area to the UAV, wherein the simulation result is used to determine the flight path of the UAV.
[0184] Optionally, the plurality of simulation diagrams include a plurality of turbulence simulation diagrams, which correspond to different wind conditions. The target simulation diagram includes the target turbulence simulation diagram. The acquisition module 510 is specifically used to: acquire the target wind condition, which includes the target wind speed and / or the target wind direction; and acquire the target turbulence simulation diagram corresponding to the target wind condition from the plurality of turbulence simulation diagrams based on the target wind condition.
[0185] Optionally, the acquisition module 510 is specifically used to: receive the target wind condition selected by the user.
[0186] Optionally, the target simulation map includes the target turbulence simulation map, and the target region includes a first grid. The calculation module 520 is specifically used to: obtain multiple turbulence velocities flowing through the first grid during the simulation time period from the target turbulence simulation map; and obtain the turbulence velocity and / or turbulence direction corresponding to the first grid based on the multiple turbulence velocities flowing through the first grid.
[0187] Optionally, the turbulence velocity corresponding to the first grid is the maximum value among multiple turbulence velocities of the first grid.
[0188] Optionally, the target simulation map includes a target wireless signal strength simulation map, and the target area includes a first grid. The calculation module 520 is specifically used to: obtain the strength values of the wireless signals corresponding to multiple sampling points in the first grid from the target wireless signal strength simulation map; and obtain the strength value of the wireless signal corresponding to the first grid based on the wireless signal strength corresponding to the multiple sampling points in the first grid.
[0189] Optionally, the strength value of the wireless signal corresponding to the first grid is the average value of the strength values of the wireless signals corresponding to each of the plurality of sampling points, or the mode of the strength values of the wireless signals corresponding to each of the plurality of sampling points.
[0190] Optionally, the calculation module 520 is specifically used to: calculate the simulation results corresponding to each grid in the target region in parallel using multiple threads, based on the target simulation map.
[0191] Optionally, the device 500 can be used in a file processing system that integrates storage and computing (FPSISC).
[0192] The device 500 here can be embodied in the form of a functional module. The term "module" here can be implemented in software and / or hardware, without specific limitations.
[0193] For example, a "module" can be a software program, a hardware circuit, or a combination of both that implements the above functions. For instance, the implementation of module 510 will be described below using module 510 as an example. Similarly, the implementation of other modules, such as calculation module 520 and transmission module 530, can refer to the implementation of module 510.
[0194] As an example of a software functional unit, the acquisition module 510 may include code running on a computing instance. The computing instance may include at least one of a physical host (computing device), a virtual machine, or a container. Further, the aforementioned computing instance may be one or more. For example, the acquisition module 510 may include code running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers used to run the code may be distributed in the same region or in different regions. Further, the multiple hosts / virtual machines / containers used to run the code may be distributed in the same availability zone (AZ) or in different AZs, each AZ including one or more geographically proximate data centers. Typically, a region may include multiple AZs.
[0195] Similarly, multiple hosts / virtual machines / containers used to run this code can be distributed within the same Virtual Private Cloud (VPC) or across multiple VPCs. Typically, a VPC is set up within a region. Communication between two VPCs within the same region, as well as between VPCs in different regions, requires a communication gateway to be set up within each VPC to enable interconnection between VPCs.
[0196] As an example of a hardware functional unit, the acquisition module 510 may include at least one computing device, such as a server. Alternatively, the acquisition module 510 may also be a device implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD may be implemented using a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), generic array logic (GAL), or any combination thereof.
[0197] The multiple computing devices included in the acquisition module 510 can be distributed in the same region or in different regions. Similarly, the multiple computing devices included in the acquisition module 510 can be distributed in the same Availability Zone (AZ) or in different AZs. Likewise, the multiple computing devices included in the acquisition module 510 can be distributed in the same Virtual Private Cloud (VPC) or in multiple VPCs. These multiple computing devices can be any combination of computing devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.
[0198] Therefore, the modules of the various examples described in the embodiments of this application can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0199] It should be noted that the above embodiments of the device, when executing the above methods, are only illustrative examples of the division of functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. For example, the acquisition module 510 can be used to execute any step in the above methods, the calculation module 520 can be used to execute any step in the above methods, and the sending module 530 can be used to execute any step in the above methods. The steps implemented by the acquisition module 510, the calculation module 520, and the sending module 530 can be specified as needed. By implementing different steps in the above methods through the acquisition module 510, the calculation module 520, and the sending module 530, all the functions of the above device can be realized.
[0200] Furthermore, the apparatus and method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments above, which will not be repeated here.
[0201] Figure 6 This is a schematic deployment diagram of a data processing apparatus 500 provided in this application. Figure 6 As shown, device 500 can be abstracted into a cloud service by a cloud service provider on a cloud management platform and provided to users. After users purchase the cloud service on the cloud management platform, the cloud environment uses the cloud service to provide users with cloud services for computing simulation results.
[0202] For example, a tenant logs into the cloud management platform via a pre-registered account and password on the public cloud access page. After successfully logging in, the tenant selects and purchases cloud services for computational simulation results on the cloud management platform. If the tenant purchases the cloud services for computational simulation results, the tenant can then utilize the computing capabilities provided by those cloud services.
[0203] For example, a cloud management platform primarily manages the infrastructure for running cloud services that deliver computational simulation results. This infrastructure may include multiple data centers located in different regions, each containing multiple servers. Data centers can provide basic resources for the cloud services delivering computational simulation results, such as computing resources and storage resources. Therefore, when tenants purchase and use the cloud services delivering computational simulation results, they primarily pay for the resources they use.
[0204] like Figure 6 As shown, taking the cloud service for purchasing simulation results as an example, users can upload at least one of the following information to the cloud environment via API or through the web interface provided by the cloud management platform: target wind speed and target wind direction. The simulation results for each grid in the target area are obtained by the cloud service call device 500.
[0205] In this embodiment of the application, when the device 500 is a software device, the device can be deployed on a computing device in any environment, or on a computing device cluster consisting of multiple computing devices in any environment.
[0206] The method provided in this application can be executed by a computing device, which can also be referred to as a computer system. It includes a hardware layer, an operating system layer running on top of the hardware layer, and an application layer running on the operating system layer. The hardware layer includes hardware such as processing units, memory, and memory control units; the functions and structure of this hardware will be described in detail later. The operating system can be any one or more computer operating systems that implement business processing through processes, such as Linux, Unix, Android, iOS, or Windows. The application layer includes applications such as browsers, address books, word processing software, and instant messaging software. Optionally, the computer system can be a handheld device such as a smartphone, or a terminal device such as a personal computer; this application does not particularly limit this, as long as the method provided in this application can be used. The executing entity of the method provided in this application can be a computing device, or a functional module within the computing device capable of calling and executing programs.
[0207] The following is combined Figure 7 This application provides a detailed description of a computing device provided in an embodiment.
[0208] Figure 7 This is a schematic diagram of the architecture of a computing device 1500 provided in an embodiment of this application. The computing device 1500 can be a server, a computer, or other device with computing capabilities. Figure 7 The computing device 1500 shown includes at least one processor 1510 and a memory 1520.
[0209] It should be understood that this application does not limit the number of processors and memories in the computing device 1500.
[0210] Processor 1510 executes instructions in memory 1520, causing computing device 1500 to implement the method provided in this application. Alternatively, processor 1510 executes instructions in memory 1520, causing computing device 1500 to implement the various functional modules provided in this application, thereby realizing the method provided in this application.
[0211] Optionally, the computing device 1500 also includes a communication interface 1530. The communication interface 1530 uses a transceiver module, such as, but not limited to, a network interface card or a transceiver, to enable communication between the computing device 1500 and other devices or communication networks.
[0212] Optionally, the computing device 1500 further includes a system bus 1540, wherein the processor 1510, memory 1520, and communication interface 1530 are respectively connected to the system bus 1540. The processor 1510 can access the memory 1520 through the system bus 1540; for example, the processor 1510 can perform data read / write or code execution in the memory 1520 through the system bus 1540. The system bus 1540 is a peripheral component interconnect express (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The system bus 1540 is divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 7 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.
[0213] In one possible implementation, the processor 1510 primarily functions to interpret the instructions (or code) of a computer program and process data within the computer software. The instructions of the computer program and the data within the computer software can be stored in memory 1520 or cache 1516.
[0214] Optionally, processor 1510 may be an integrated circuit chip with signal processing capabilities. By way of example and not limitation, processor 1510 may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. Among these, a general-purpose processor is a microprocessor, etc. For example, processor 1510 may be a central processing unit (CPU).
[0215] Optionally, each processor 1510 includes at least one processing unit 1512 and a memory control unit 1514.
[0216] Optionally, the processing unit 1512, also known as the core, is the most important component of the processor. The processing unit 1512 is manufactured from single-crystal silicon using a specific production process. All calculations, command reception, command storage, and data processing are performed by the core. Each processing unit independently executes program instructions, utilizing parallel computing capabilities to accelerate program execution. Various processing units have fixed logical structures; for example, a processing unit includes logical units such as a Level 1 cache, a Level 2 cache, an execution unit, an instruction-level unit, and a bus interface.
[0217] In one implementation example, the memory control unit 1514 controls the data interaction between the memory 1520 and the processing unit 1512. Specifically, the memory control unit 1514 receives memory access requests from the processing unit 1512 and controls access to memory based on the memory access requests. By way of example and not limitation, the memory control unit is a device such as a memory management unit (MMU).
[0218] In one implementation example, each memory control unit 1514 addresses the memory 1520 via the system bus. An arbitrator is configured in the system bus. Figure 7 (Not shown in the image), the arbitrator is responsible for handling and coordinating competing accesses of multiple processing units 1512.
[0219] In one implementation example, the processing unit 1512 and the memory control unit 1514 are connected via internal chip connection lines, such as address lines, thereby enabling communication between the processing unit 1512 and the memory control unit 1514.
[0220] Optionally, each processor 1510 also includes a cache 1516, which is a buffer for data exchange (called a cache). When the processing unit 1512 needs to read data, it first looks for the required data in the cache. If the data is found, it is executed directly; otherwise, it looks for the data in memory. Since the cache operates much faster than memory, its purpose is to help the processing unit 1512 run faster.
[0221] The memory 1520 provides runtime space for processes in the computing device 1500. For example, the memory 1520 stores the computer program (specifically, the program code) used to generate the process. After the computer program is run by the processor to generate a process, the processor allocates corresponding storage space for the process in the memory 1520. Furthermore, the aforementioned storage space further includes text segments, initialized data segments, bit initialized data segments, stack segments, heap segments, etc. The memory 1520 stores data generated during the process's execution, such as intermediate data or process data, in the aforementioned process-specific storage space.
[0222] Optionally, the memory, also known as RAM, is used to temporarily store the data processed by the processor 1510, as well as data exchanged with external storage devices such as hard disks. As long as the computer is running, the processor 1510 will load the data that needs to be processed into RAM for processing, and after the processing is completed, the processing unit 1512 will send the result out.
[0223] By way of example and not limitation, memory 1520 is volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. Non-volatile memory is read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory is random access memory (RAM) used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DRRAM). It should be noted that the memory 1520 of the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0224] The above-described structure of the computing device 1500 is merely illustrative and is not intended to limit the application. The computing device 1500 in this application includes various hardware components found in existing computer systems. For example, the computing device 1500 may also include other memories besides the memory 1520, such as disk storage. Those skilled in the art should understand that the computing device 1500 may also include other devices necessary for normal operation. Furthermore, depending on specific needs, those skilled in the art should understand that the computing device 1500 may also include hardware devices for implementing other additional functions. Moreover, those skilled in the art should understand that the computing device 1500 may only include the devices necessary for implementing the embodiments of this application, and may not necessarily include... Figure 7 All the devices shown.
[0225] This application also provides a computing device cluster. The computing device cluster includes at least one computing device. The computing device may be a server. In some embodiments, the computing device may also be a desktop computer, a laptop computer, or a smartphone, or other terminal device.
[0226] like Figure 8 As shown, the computing device cluster includes at least one computing device 1500. The memory 1520 of one or more computing devices 1500 in the computing device cluster may store the same instructions for performing the methods described above.
[0227] In some possible implementations, the memory 1520 of one or more computing devices 1500 in the computing device cluster may also each store a portion of the instructions for executing the above-described methods. In other words, a combination of one or more computing devices 1500 can jointly execute the instructions of the above-described methods.
[0228] It should be noted that the memory 1520 in different computing devices 1500 within the computing device cluster can store different instructions, each used to execute a portion of the functions of the aforementioned device. That is, the instructions stored in the memory 1520 of different computing devices 1500 can implement the functions of one or more modules within the aforementioned device.
[0229] In some possible implementations, one or more computing devices in a computing device cluster can be connected via a network. This network can be a wide area network (WAN) or a local area network (LAN), etc. Figure 9 One possible implementation is shown. For example... Figure 9 As shown, the two computing devices 1500A and 1500B are connected via a network. Specifically, they are connected to the network through the communication interfaces in each computing device.
[0230] It should be understood that Figure 9The functions of computing device 1500A shown can also be performed by multiple computing devices 1500. Similarly, the functions of computing device 1500B can also be performed by multiple computing devices 1500.
[0231] In this embodiment, a computer program product containing instructions is also provided. The computer program product may be a software or program product containing instructions capable of running on a computing device or stored on any usable medium. When run on a computing device, it causes the computing device to perform the methods provided above, or causes the computing device to perform the functions of the apparatus provided above.
[0232] In this embodiment, a computer-readable storage medium is also provided. This computer-readable storage medium can be any available medium that a computing device can store, or a data storage device such as a data center containing one or more available media. The available medium can 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 drive). The computer-readable storage medium includes instructions that, when executed on a computing device, cause the computing device to perform the method described above.
[0233] It should be understood that in the various embodiments of this application, the order of the above-mentioned processes does not imply 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 this application.
[0234] Those skilled in the art will recognize that the units and algorithm steps of the various examples 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 implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0235] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0236] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0237] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0238] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0239] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0240] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A data processing method, characterized in that, The method includes: Obtain the target simulation map from multiple simulation maps corresponding to the stored target area, wherein the target simulation map includes the target turbulence simulation map and / or the target wireless signal strength simulation map; The simulation results for each grid in the target region are calculated based on the target simulation map, wherein the simulation results for each grid include at least one of the following: the turbulence velocity of each grid, the turbulence direction of each grid, and the strength value of the wireless signal of each grid; The simulation results corresponding to each grid in the target area are sent to the UAV, wherein the simulation results are used to determine the flight path of the UAV.
2. The method according to claim 1, characterized in that, The multiple simulation diagrams include multiple turbulence simulation diagrams, each corresponding to different wind conditions. The target simulation diagram includes the target turbulence simulation diagram. The method further includes: Obtain the target wind conditions, which include the target wind speed and / or the target wind direction; The step of obtaining the target simulation image from multiple simulation images corresponding to the stored target region includes: Based on the target wind condition, obtain the target turbulence simulation diagram corresponding to the target wind condition from the plurality of turbulence simulation diagrams.
3. The method according to claim 2, characterized in that, The acquisition of target wind conditions includes: Receive the target wind conditions selected by the user.
4. The method according to any one of claims 1 to 3, characterized in that, The target simulation diagram includes the target turbulence simulation diagram, and the target region includes a first grid. The step of calculating the simulation result corresponding to each grid in the target region based on the target simulation map includes: Obtain multiple turbulent velocities flowing through the first grid during the simulation time period from the target turbulence simulation diagram; The turbulent velocity and / or turbulent direction corresponding to the first grid are obtained based on multiple turbulent velocities flowing through the first grid.
5. The method according to claim 4, characterized in that, The turbulent velocity corresponding to the first grid is the maximum value among the multiple turbulent velocities of the first grid.
6. The method according to any one of claims 1 to 5, characterized in that, The target simulation map includes a simulation map of the target wireless signal strength, and the target region includes a first grid. The step of calculating the simulation result corresponding to each grid in the target region based on the target simulation map includes: The strength values of the wireless signals corresponding to each of the multiple sampling points within the first grid are obtained from the target wireless signal strength simulation diagram; The strength value of the wireless signal corresponding to the first grid is obtained based on the wireless signal strength corresponding to multiple sampling points within the first grid.
7. The method according to claim 6, characterized in that, The strength value of the wireless signal corresponding to the first grid is the average value of the strength values of the wireless signals corresponding to each of the plurality of sampling points, or the mode of the strength values of the wireless signals corresponding to each of the plurality of sampling points.
8. The method according to any one of claims 1 to 7, characterized in that, The step of calculating the simulation result corresponding to each grid in the target region based on the target simulation map includes: Based on the target simulation diagram, the simulation results corresponding to each grid in the target region are calculated in parallel by multiple threads.
9. The method according to any one of claims 1 to 8, characterized in that, The method is applied to the in-store and compute integrated file processing system FPSISC.
10. A data processing apparatus, characterized in that, The device includes: The acquisition module is used to acquire a target simulation map from multiple simulation maps corresponding to the stored target area, wherein the target simulation map includes a target turbulence simulation map and / or a target wireless signal strength simulation map; The calculation module is used to calculate the simulation result corresponding to each grid in the target region based on the target simulation map, wherein the simulation result corresponding to each grid includes at least one of the following: the turbulence velocity of each grid, the turbulence direction of each grid, and the strength value of the wireless signal of each grid; The sending module is used to send the simulation results corresponding to each grid in the target area to the UAV, wherein the simulation results are used to determine the flight path of the UAV.
11. The apparatus according to claim 10, characterized in that, The plurality of simulation diagrams include a plurality of turbulence simulation diagrams, which correspond to different wind conditions. The target simulation diagram includes the target turbulence simulation diagram. The acquisition module is specifically used for: Obtain the target wind conditions, which include the target wind speed and / or the target wind direction; Based on the target wind condition, obtain the target turbulence simulation diagram corresponding to the target wind condition from the plurality of turbulence simulation diagrams.
12. The apparatus according to claim 11, characterized in that, The acquisition module is specifically used for: Receive the target wind conditions selected by the user.
13. The apparatus according to any one of claims 10 to 12, characterized in that, The target simulation diagram includes the target turbulence simulation diagram, and the target region includes a first grid. The calculation module is specifically used for: Obtain multiple turbulent velocities flowing through the first grid during the simulation time period from the target turbulence simulation diagram; The turbulent velocity and / or turbulent direction corresponding to the first grid are obtained based on multiple turbulent velocities flowing through the first grid.
14. The apparatus according to claim 13, characterized in that, The turbulent velocity corresponding to the first grid is the maximum value among the multiple turbulent velocities of the first grid.
15. The apparatus according to any one of claims 10 to 14, characterized in that, The target simulation map includes a simulation map of the target wireless signal strength, and the target region includes a first grid. The calculation module is specifically used for: The strength values of the wireless signals corresponding to each of the multiple sampling points within the first grid are obtained from the target wireless signal strength simulation diagram; The strength value of the wireless signal corresponding to the first grid is obtained based on the wireless signal strength corresponding to multiple sampling points within the first grid.
16. The apparatus according to claim 15, characterized in that, The strength value of the wireless signal corresponding to the first grid is the average value of the strength values of the wireless signals corresponding to each of the plurality of sampling points, or the mode of the strength values of the wireless signals corresponding to each of the plurality of sampling points.
17. The apparatus according to any one of claims 10 to 16, characterized in that, The calculation module is specifically used for: Based on the target simulation diagram, the simulation results corresponding to each grid in the target region are calculated in parallel by multiple threads.
18. The apparatus according to any one of claims 10 to 17, characterized in that, The device is used in the file processing system FPSISC that integrates storage and computing.
19. A computing device cluster, characterized in that, It includes at least one computing device, each computing device including a processor and memory; The processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device to cause the cluster of computing devices to perform the method as described in any one of claims 1 to 9.
20. A computer program product containing instructions, characterized in that, When the instruction is executed by the computing device cluster, the computing device cluster performs the method as described in any one of claims 1 to 9.
21. A computer-readable storage medium, characterized in that, It includes computer program instructions, which, when executed by a cluster of computing devices, perform the method as described in any one of claims 1 to 9.
