Path Planning Method, Apparatus, Device, and Storage Medium

Through the robot and the server, the problem of inefficiency in robot path planning in dynamic scenarios is solved, and the dynamic optimization and accuracy of robot paths are improved.

CN114777783BActive Publication Date: 2025-07-18KEENON ROBOTICS CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210355023.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-06
Publication Date
2025-07-18
Estimated Expiration
2042-04-06

AI Technical Summary

Technical Problem

In the prior art, robot path planning cannot be adaptively adjusted according to dynamically changing operating scenarios, resulting in low work efficiency.

Method used

The robot obtains the path point information of the current location and sends it to the server. The server updates the target map file based on the current map file. The robot determines the target driving path based on the target map file to achieve dynamic update and optimization.

Benefits of technology

It improves the accuracy and work efficiency of robot path planning, ensuring that the robot selects the optimal driving path in dynamic scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114777783B_ABST
    Figure CN114777783B_ABST
Patent Text Reader

Abstract

The present invention discloses a path planning method, apparatus, device, and storage medium. The method includes: obtaining path point information of the current position and sending the path point information to a server for the server to determine a target map file based on the path point information and the current map file; obtaining the target map file sent by the server and determining a target driving path according to the target map file. The embodiments of the present invention improve the accuracy of robot path planning, thereby improving the working efficiency of the robot.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of robots, and in particular to a path planning method, device, equipment and storage medium. Background Art

[0002] With the continuous development of the field of robot technology, various robots have been widely used in all walks of life and even in our daily lives.

[0003] When the prior art performs path planning for a robot, it usually considers more the distance factor of the driving path. However, the actual operation scenarios during the operation of the robot are variable, and the robot cannot adaptively adjust the driving path according to the continuously changing operation scenarios, resulting in low work efficiency of the robot. Summary of the Invention

[0004] The present invention provides a path planning method, device, equipment and storage medium to improve the work efficiency of the robot.

[0005] According to one aspect of the present invention, there is provided a path planning method, which is executed by a robot, and the method includes:

[0006] Obtain path point information of the current position, and send the path point information to the server for the server to determine a target map file based on the current map file according to the path point information;

[0007] Obtain the target map file sent by the server, and determine a target driving path according to the target map file.

[0008] According to another aspect of the present invention, there is provided a path planning method applied to a server, and the method includes:

[0009] Obtain path point information sent by at least one robot, and determine a target map file based on the current map file according to the path point information;

[0010] Send the target map file to the robot.

[0011] According to another aspect of the present invention, there is provided a path planning device, which is executed by a robot, and the device includes:

[0012] A path point information acquisition module, configured to obtain path point information of the current position, and send the path point information to the server for the server to determine a target map file based on the current map file according to the path point information;

[0013] A target driving path determination module, configured to obtain the target map file sent by the server, and determine a target driving path according to the target map file.

[0014] According to another aspect of the present invention, there is provided a path planning device, which is applied to a server. The device includes:

[0015] A target map file determination module, configured to obtain path point information sent by at least one robot, and determine a target map file based on the current map file according to the path point information;

[0016] A target map file sending module, configured to send the target map file to the robot.

[0017] According to another aspect of the present invention, there is provided an electronic device, which includes:

[0018] At least one processor; and

[0019] A memory communicatively connected to the at least one processor; wherein,

[0020] The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the path planning method according to any embodiment of the present invention.

[0021] According to another aspect of the present invention, there is provided a computer-readable storage medium, which stores computer instructions for causing a processor to implement the path planning method according to any embodiment of the present invention when executed.

[0022] In the solution of the embodiment of the present invention, by obtaining the path point information of the current position and sending the path point information to the server for the server to determine a target map file based on the current map file according to the path point information; obtaining the target map file sent by the server and determining a target driving path according to the target map file. The above solution obtains path point information through at least one robot and reports the path point information to the server, and the server updates the target map file in real time. The target map file is continuously updated based on the path point information provided by all robots in the scenario, improving the accuracy of the target map file. Moreover, with the dynamic changes of the scenario, such as the dynamic increase and decrease of obstacles and dynamic change factors such as network strength stability, the target map file can be continuously updated, so as to ensure that the target driving path determined by the robot each time according to the target map file is the optimal driving path, thereby improving the working efficiency of the robot.

[0023] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the present invention, nor is it used to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0024] To more clearly illustrate the technical solutions in the embodiments of the present invention, the following will briefly introduce the drawings required for the description of the embodiments. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.

[0025] Figure 1 is a flowchart of a path planning method provided according to Embodiment 1 of the present invention;

[0026] Figure 2 is a flowchart of a path planning method provided according to Embodiment 2 of the present invention;

[0027] Figure 3 is a flowchart of a path planning method provided according to Embodiment 3 of the present invention;

[0028] Figure 4 is a schematic structural diagram of a path planning device provided according to Embodiment 4 of the present invention;

[0029] Figure 5 is a schematic structural diagram of a path planning device provided according to Embodiment 5 of the present invention;

[0030] Figure 6 is a scenario diagram for implementing the path planning method of the embodiments of the present invention. Detailed implementation manners

[0031] In order to enable those skilled in the art to better understand the solutions of the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present invention.

[0032] It should be noted that the terms "candidate", "target", etc. in the description, claims and the above-mentioned drawings of the present invention are used to distinguish similar objects, and do not necessarily describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so that the embodiments of the present invention described here can be implemented in an order other than those illustrated or described here. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device comprising a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products or devices.

[0033] Embodiment 1

[0034] Figure 1 The flowchart of a path planning method provided for Embodiment 1 of the present invention is applicable to the situation of path planning for a robot. The technical solution of the embodiment of the present invention is executed by the robot, and can be specifically applied to an application scenario where at least two robots exist, such as a robot food delivery scenario with multiple robots. Each robot can communicate with a local server or a cloud server to achieve data sending and data receiving.

[0035] The method of the present invention can be executed by a path planning device, which can be implemented in the form of hardware and / or software, and the path planning device can be configured in the robot. As Figure 1 shown, the method includes:

[0036] S110. Obtain the path point information of the current position, and send the path point information to the server for the server to determine the target map file based on the path point information and the current map file.

[0037] Among them, the path point information may include the current position coordinates, obstacle data, and the current network strength, etc. The current position coordinates may be the longitude and latitude coordinates of the current position.

[0038] The obstacle data may be the path data from the starting point to the ending point of the section where the obstacle is located. Among them, the path data includes data for describing the edge of the obstacle. For example, the starting point of the section where the robot is located is point A, and the ending point is point B. When the robot detects an obstacle a during the driving process on section AB, the obstacle data is the path data of section AB, and the path data of section AB includes data for describing the edge of obstacle a.

[0039] The current network strength may include the network type and signal strength at the current location. Among them, the network type may include 2G network, 3G network, 4G network, 5G network, and WiFi (Wireless Fidelity) network. The signal strength may be the number of signal bars corresponding to different network types. Among them, the signal strength may include no signal, 1 signal bar, 2 signal bars, 3 signal bars, and full signal bars, etc.

[0040] Exemplarily, the location for obtaining waypoint information can be preset by relevant technicians. For example, the time period for the robot to obtain the position coordinates and network strength can be preset. For example, the time period can be 5 seconds, that is, the robot can obtain the position coordinates and network strength every 5 seconds. The position in the path where the robot is located every 5 seconds is the current position of the robot.

[0041] Optionally, the preset point coordinates for the robot to obtain waypoint information can also be preset. The preset point coordinates are the current position coordinates; when the robot travels to the position of the preset point coordinates, the robot records the current position coordinates and obtains the current network strength at the current position coordinates.

[0042] Exemplarily, the robot can obtain obstacle data when it detects an obstacle during the process of traveling along the path. That is, the position where the robot detects the existence of an obstacle is the current position. Optionally, the robot can obtain the current position coordinates and the current network strength while detecting an obstacle and obtaining the obstacle data.

[0043] Among them, the current map file can be the map file currently stored in the server; the target map file can be the map file obtained by the server based on the existing current map file in the server and merging the obtained waypoint information to the current map file according to the waypoint information sent by each robot. The current map file and / or the target map file can be a map file including data such as obstacle data, network strength, and position coordinates. It can also be multiple map files including obstacle data, network strength, and position coordinates; among them, the multiple map files can be respectively a map file including obstacle data, a map file including network strength, and a map file including position coordinates, etc.

[0044] Exemplarily, each robot can report the obtained waypoint information to the server at any time. After the server obtains the waypoint information reported by the robot, it updates the current map file according to the waypoint information. For example, it merges, modifies, etc. the current map file, and uses the updated map file as the target map file. At the same time, it sends the target map file to each robot.

[0045] It should be noted that if the server obtains the path point information sent by at least two robots at the same time, the server will update the current map file sequentially according to the order in which the path point information is received. Optionally, the processing priority of the robots can also be set in advance, that is, when the server obtains the path point information sent by at least two robots at the same time, it will give priority to processing the path point information sent by the robot with a higher priority.

[0046] Exemplarily, if the server obtains at least two pieces of path point information at the same time, the server can update the current map file sequentially according to the at least two pieces of path point information obtained, until after all the at least two pieces of path point information are merged into the current map file, a target map file is obtained, and the target map file is sent to the robots. For example, if the server obtains path point information A and path point information B at the same time, the server first obtains a candidate map file based on the current map file according to path point information A; then the server obtains a target map file based on the candidate map file according to path point information B, and then sends the target map file to each robot. Optionally, the server can also send the first target map file obtained based on the current map file according to path point information A to each robot; then obtain a second target map file based on the first target map file according to path point information B and send it to each robot. That is, every time the server updates the map file, the updated map file is used as the target map file and sent to each robot.

[0047] It should be noted that if the obtained path point information is obstacle data, the method of merging the current map file according to the obstacle data to determine the target map file can be: extract the path data from the starting point to the ending point in the obtained obstacle data, and compare it with the path data in the current map file corresponding to the starting point and the ending point of the obstacle data, and update the inconsistent part to the current map file, so as to obtain the target map file.

[0048] Optionally, the server can transmit the target map file to each robot through the MQTT (Message Queuing Telemetry Transport) protocol.

[0049] S120. Obtain the target map file sent by the server, and determine the target driving path according to the target map file.

[0050] Among them, the target driving path can be the optimal driving path determined from at least one candidate driving path. The candidate driving path can be at least one driving path that can reach the end position from the starting position where the robot travels in the robot operation scenario.

[0051] Exemplarily, the robot can determine the presence of each obstacle in the candidate driving path according to the target map file, so as to determine the target driving path. For example, a candidate driving path with no obstacles or fewer obstacles can be selected from the candidate driving paths as the target driving path. Optionally, the presence of obstacles, the path length of the candidate driving path, and the network strength of the candidate driving path can also be determined according to the target map file, and the target driving path can be jointly determined. Specifically, different weight values can be preset for factors such as the presence of obstacles, and the target driving path can be determined according to the weight values corresponding to the factors of each candidate driving path.

[0052] It should be noted that to reduce the load on the server and improve the working efficiency of the server, the robot can determine the target map file according to the acquired path point information.

[0053] In an optional embodiment, after acquiring the path point information of the current position, it further includes: acquiring the current state of the current map file in the server; the current state includes a modification state and a waiting state; if the current state is the waiting state, then set the current state of the current map file to the modification state, and acquire the current map file; determine the target map file based on the current map file according to the path point information; upload the target map file to the server, set the current state of the current map file to the waiting state, and determine the target driving path according to the target map file.

[0054] Among them, the current state of the current map file in the server can be the state of whether the current map file in the server is being modified by the robot. If the current map file of the server is being modified, then the current state of the current map file in the server is the modification state; if there is currently no robot modifying the current map file of the server, then the current state of the current map file in the server is the waiting state. Among them, the current map file can be the latest version of the map file stored in the server.

[0055] Every time the current robot acquires the path point information, it needs to obtain the current map file stored in the server, so as to ensure that the robot merges and updates the target map file based on the latest version of the map file according to the path point information. Moreover, the current robot sends the obtained target map file to the server, and the server stores the obtained target map file and sends the obtained target map file to other robots, thus ensuring the synchronous update of the map files between the robot and the server.

[0056] Exemplarily, a keyword identifier that can characterize the current state of the current map file in the server can be preset by a person skilled in the relevant art. For example, when the keyword identifier is set to 0, it indicates that the current state of the current map file is the waiting state; when the keyword identifier is set to 1, it indicates that the current state of the current map file is the modified state. After the current robot obtains the path point information, it obtains the keyword identifier of the server. If the keyword identifier is 0, it can be determined that the current modification state of the current map file is the waiting state, then the current robot sets the keyword identifier to 1 and simultaneously obtains the current map file. The current robot determines the target map file according to the obtained current map file and path point information, and uploads the target map file to the server. At the same time, the keyword identifier of the current map file is set to 0, indicating that the current robot has finished uploading, and the current state of the current map file in the server becomes the waiting state.

[0057] If the keyword identifier is 1, it can be determined that the current state of the current map file is the modified state, that is, the current map file is being modified by other robots, then the current robot can wait continuously for a preset time. If the current robot obtains the current map file within the preset time, it determines the target map file according to the obtained current map file and path point information. If the current robot does not obtain the current map file within the preset time, the current robot can periodically query the current state of the current map file in the server. Among them, the preset time can be preset by a person skilled in the relevant art. For example, the preset time can be 5 seconds.

[0058] Optionally, when the current robot detects that the current state is the waiting state, sets the current state of the current map file to the modified state, and obtains the current map file, the current robot and the server simultaneously start a timing function. After reaching the preset timing duration, the current server automatically changes the current state of the current map file to the waiting state, avoiding the situation where the current robot that is modifying the current map file fails, resulting in other robots being unable to obtain the current map file. Among them, the timing duration can be preset by a person skilled in the relevant art according to the average duration consumed by the current robot to determine the target map file within the historical time period. For example, the preset timing time can be 5 minutes. When the current robot reaches the preset timing duration, it re-obtains the current state of the current map file in the server and re-obtains the current map file.

[0059] In this alternative embodiment, the server determines the target driving path. During the determination process, the current state of the server's current map file is judged, and whether to obtain the server's current map file is determined according to the current state. This avoids the situation where other robots are modifying the current map file during the process of obtaining the current map file on the current machine, resulting in the current map file obtained by the current robot not being the latest version. Moreover, it prevents the current robot from overwriting the current map file that other robots are modifying during the process of reporting the target map file. In addition, the method of determining the target driving path by the server reduces the load burden on the server and improves the working efficiency of the server.

[0060] In the embodiment of the present invention, the path point information of the current position is obtained and sent to the server. The server determines the target map file based on the path point information and the current map file. The target map file is obtained from the server, and the target driving path is determined according to the target map file. In the above solution, at least one robot obtains the path point information and reports it to the server. The server updates the target map file in real time. The target map file is continuously updated based on the path point information provided by all robots in the scenario, improving the accuracy of the target map file. Moreover, with the dynamic changes in the scenario, such as the dynamic increase and decrease of obstacles and the dynamic change factors such as network strength stability, the target map file can be continuously updated, ensuring that the target driving path determined by the robot each time according to the target map file is the optimal driving path, thereby improving the working efficiency of the robot.

[0061] Embodiment 2

[0062] Figure 2 It is a flowchart of a path planning method provided by the second embodiment of the present invention. This embodiment is optimized and improved based on the above technical solutions.

[0063] Further, the path point information includes the effort coefficient. Correspondingly, the step of "determining the target driving path according to the target map file" is refined to "determining at least one candidate driving path based on the obstacle information in the target map file and a preset path planning algorithm; determining the effort coefficient information and network strength information of at least one path point in the candidate driving path according to the effort coefficient and network strength at any position in the target map file; determining the weight result of the candidate driving path based on the path length of the candidate driving path and the effort coefficient information and network strength information of at least one path point in the candidate driving path and a preset weight value; and determining the target driving path from the candidate driving paths according to the weight result of the candidate driving path." to improve the determination method of the target driving path.

[0064] Such as Figure 2As shown, the method includes the following specific steps:

[0065] S210. Obtain the path point information of the current location and send the path point information to the server for the server to determine the target map file based on the path point information and the current map file.

[0066] Among them, the path point information may include the current location coordinates, obstacle data, and the current network strength. Exemplarily, the acquisition period of the network strength can be preset. For example, the acquisition period of the network strength can be 2 seconds, and the current network strength at the current location is obtained according to the acquisition period of the network strength. That is, the current network strength at the current location is obtained every 2 seconds, and the acquisition result is reported to the server as the path point information.

[0067] Optionally, the acquisition distance of the network strength can also be preset. For example, the acquisition distance of the network strength can be 0.5 meters, that is, the robot obtains the current network strength at the current location every 0.5 meters of travel, and the acquisition result is reported to the server as the path point information.

[0068] In various application scenarios of the robot, for example, in the robot food delivery scenario, carpets are usually arranged on the driving ground, resulting in frictional resistance during the robot's travel; or there are ground surfaces with arcs or unevenness, which will also bring frictional resistance to the robot when it passes by. Therefore, in order to improve the working efficiency of the robot, during the process of specifying the path for the robot, the frictional resistance during the robot's travel can be used as one of the important factors for determining the target travel path.

[0069] Exemplarily, the friction situation suffered by the robot during operation can be determined by obtaining the motor current value or pressure value of the robot's wheels.

[0070] In an alternative embodiment, obtaining the path point information of the current location includes: obtaining the current value of the previous path point position at the current location as the candidate current value according to the preset current value acquisition period, and obtaining the current current value at the current location; determining the average current value at the current location according to the current current value and the candidate current value; determining the effort coefficient at the current location according to the current current value and the average current value.

[0071] Among them, the current acquisition period may be the period for collecting the motor current of the robot's wheels. The current acquisition period can be preset by those skilled in the relevant art. For example, the current acquisition period can be 2 seconds, that is, the motor current of the robot's wheels is collected every 2 seconds and the current value is determined.

[0072] Among them, the position of the previous path point at the current position can be the position of the robot when it last collected the current. For example, if the current collection period is 2 seconds, the robot obtains a current value at point A on the driving section. After 2 seconds, it obtains a current value at point B on the driving section. If the current position is point B, then the position of the previous path point at the current position is point A.

[0073] Among them, the current current value is the current value obtained by collecting the motor current of the robot's wheels at the current position; the candidate current value is the current value obtained by collecting the motor current of the robot's wheels at the position of the previous path point at the current position. The average current value can be the average of the current current value and the candidate current value. For example, if the current current value is 1A and the candidate current value is 2A, then the average current value is 1.5A.

[0074] Among them, the effort coefficient at the current position can be used to represent the degree of friction between the ground and the robot's wheels or the degree of driving resistance at the current position of the robot. The larger the effort coefficient, the greater the driving resistance of the robot and the more difficult it is to drive; the smaller the effort coefficient, the smaller the driving resistance of the robot and the smoother it is to drive.

[0075] The effort coefficient at the current position can be determined by the current current value and the average current value. The specific determination method can be preset by relevant technical personnel. For example, corresponding weight values can be preset for the current current value and the average current value, and the weighted result obtained by weighted addition according to the preset weight value of the current current and the weight value of the average current is used as the effort coefficient at the current position.

[0076] It should be noted that the operating states of different robots are different. For example, the service life of each robot is different, which will lead to different sensitivities of the robots, and thus the current consumed by the wheel motors of the robots for the same resistance is different. Therefore, to ensure that all robots are compared at the same level and to ensure that the obtained data can be referenced by other robots, the effort coefficient at the current position can be determined by the ratio of the current current value to the average current value at the current position.

[0077] In an alternative embodiment, determining the effort coefficient at the current position according to the current current value and the average current value includes: determining the ratio of the current current value at the current position to the average current as the effort coefficient at the current position.

[0078] Obtain the current current value and the average current value at the current position, and use the ratio between the current current value and the average current value as the effort coefficient at the current position. Exemplarily, if the current current value at the current position is 1.5A and the average current value at the current position is 1A, then the effort coefficient at the current position is 1.5.

[0079] In this alternative embodiment, by determining the ratio of the current current value at the current position to the average current as the effort coefficient at the current position, it is achieved that each robot can be compared at the same level. For example, robots with an older service life and those with a shorter service life have different self-states, and the average current value and the current current value obtained at the same point are also different. The current current value and the average current value obtained by the robot with an older service life are both larger, while the current current value and the average current value obtained by the robot with a shorter service life are both smaller. Since the ratio method is adopted, the resulting effort coefficient results are roughly the same, thus ensuring that the effort coefficients obtained by each robot at each position can be referenced by other robots.

[0080] In a specific embodiment, if the current position is point B, the previous path point position of the current position is point A, the current current value at the current position is 3A, and the current value at the previous path point A is 1A, then the average current value at the current position point B is 2A. If the effort coefficient at the current position is the ratio of the current current value at the current position to the average current, then the effort coefficient at the current position point B is 1.5.

[0081] This alternative embodiment determines the effort coefficient at the current position by obtaining the current value at the current position and the current value at the previous path point position of the current position, achieving the accurate determination of the effort coefficient; using the effort coefficient to characterize the friction or resistance of the robot at each point position, the friction information of each point position on each section during the operation of each robot is obtained, so that when performing path planning subsequently, the friction factor can be comprehensively considered, and thus the accuracy of path planning can be ensured.

[0082] The server can continuously merge and update the current map file according to the path point information reported by each robot, so as to obtain the target map file. Among them, the path point information reported by each robot can include obstacle data, current position coordinates, current network strength, and effort coefficient. Among them, the server can respectively store the map file corresponding to the obstacle data, the map file corresponding to the network strength, and the map file corresponding to the effort coefficient. After obtaining the path point information, the current map file to be updated can be determined respectively to obtain the target map file corresponding to each path point information.

[0083] Optionally, the current map file stored in the server can also be a map file including obstacle data, current position coordinates, current network strength, and effort coefficient. When receiving the path point information reported by each robot, update the obstacle data, current position coordinates, current network strength, or effort coefficient in the current map file according to the current map file to determine the updated target map file.

[0084] S220. Obtain the target map file sent by the server.

[0085] S230. Based on the obstacle information in the target map file and a preset path planning algorithm, determine at least one candidate driving path.

[0086] Among them, the obstacle information may be the presence of obstacles on each driving path in the target map file, such as the location where the obstacles exist. The path planning algorithm may be an algorithm for path planning of the robot, and specifically can determine at least one passable driving path for the robot to drive from the starting position to the ending position. The path planning algorithm can be preset by relevant technical personnel.

[0087] Exemplarily, based on the obstacle information in the target map file and a preset path planning algorithm, at least one candidate driving path can be determined. Among them, the candidate driving path may be a passable driving path for the robot to drive from the starting position to the ending position.

[0088] S240. Based on the effort coefficient and network strength at any position in the target map file, determine the effort coefficient information and network strength information of at least one path point in the candidate driving path.

[0089] Among them, the effort coefficient information may be the effort coefficient corresponding to at least one path point in the candidate driving; the network strength information may be the network type and signal strength corresponding to at least one path point in the candidate driving path.

[0090] It should be noted that among the candidate driving paths, the path points with effort coefficient information and the path points with network strength information may be the same path point or different path points.

[0091] Exemplarily, the candidate driving path A may include the effort coefficient of path point A, the effort coefficient of path point B, the network type and signal strength of path point C, the network type and signal strength of path point D, and the effort coefficient, network type and signal strength of path point E.

[0092] S250. Based on the path length of the candidate driving path, and the effort coefficient information and network strength information of at least one path point in the candidate driving path, and based on a preset weight value, determine the weight result of the candidate driving path.

[0093] Among them, the weight value of the path length of the candidate driving path, the weight value of the effort coefficient, and the weight value of the network strength can be preset by relevant technical personnel according to actual needs. The weight result may be the calculation result obtained by weighting each candidate path based on the preset weight value.

[0094] Among them, the total effort value of the candidate driving path can be determined according to the effort coefficient information of the candidate driving path. The larger the total effort value of the candidate driving path, the more laborious it is for the robot to drive on this candidate driving path, and the longer the time taken; the smaller the total effort value, the easier it is for the robot to drive on this candidate driving path, and the shorter the time taken. The determination method of the total effort value of the candidate driving path can be:

[0095] F = L1 * f a + L2 * f b +…+ L n * f n + f0;

[0096] Among them, L n represents the distance between two adjacent path points on the candidate driving path; f n represents the effort coefficient of the previous path point among two adjacent path points; f0 represents the effort coefficient corresponding to the last path point in the candidate driving path.

[0097] Exemplarily, if the effort coefficient corresponding to path point a in candidate driving path A is 1, the effort coefficient corresponding to path point b is 1.5, and the effort coefficient corresponding to path point c is 1.2. Among them, the distance between path point a and path point b is 0.5 meters, the distance between path point b and path point c is 1 meter, and the position order of path point a, path point b, and path point c in candidate driving path A is the starting position, path point a, path point b, path point c, and the ending position. Then the total effort value F A of candidate driving path A is calculated as follows:

[0098] F A = 0.5 * 1 + 1 * 1.5 + 1.2;

[0099] After calculating through the above formula, the total effort value F A of candidate driving path A is 3.2.

[0100] Among them, the total network strength value of the candidate driving path can be determined according to the network strength information of the candidate driving path. Exemplarily, the network strength is numerically valued, that is, the network type and signal strength are numerically valued. For example, the numerical value rule of the network strength can be preset by relevant technical personnel. Specifically, it is set that the network strength value of network type 3G with 1 grid of signal strength is 200, the network strength value of network type 3G with 2 grids of signal strength is 150, the network strength value of network type 3G with full signal strength is 100, the network strength value of network type 4G with 2 grids of signal strength is 100, and the network strength value of full WiFi signal is 0. The network strength values corresponding to the signal strengths of all network types are preset, and this embodiment will not elaborate on this.

[0101] Optionally, the number of signal bars corresponding to different Android systems may not be exactly the same. Therefore, the network strength value can be determined in the form of a percentage of the number of signal bars.

[0102] The total network strength value of the candidate driving path can be determined by adding up the network strength values corresponding to each path point of the candidate driving path, and taking the result of the addition as the total network strength value of the candidate driving path. The larger the total network strength value of the candidate driving path, the weaker the network strength of the candidate driving path; the smaller the total network strength value of the candidate driving path, the stronger the network strength of the candidate driving path.

[0103] Exemplarily, if the network strength value of path point a in candidate driving path A is 100, the network strength value of path point b is 150, and the network strength value of path point c is 0, then the total network strength value of candidate driving path A is 250.

[0104] Exemplarily, the weight result of the candidate driving path can be the weighted sum of the path length, the total effort coefficient, and the total network strength value; and this weight result is used as the total score of each candidate driving path. The smaller the score of the total score of the candidate driving path, the better the route of the candidate driving path. Among them, the calculation method of the total score of the candidate driving path is:

[0105] P = T * O + F * G + W * N;

[0106] Wherein, P is the total score of the candidate driving path, that is, the weight result; T is the path length of the candidate driving path; O is the weight value of the preset path length; F is the total effort value of the candidate driving path; G is the weight value corresponding to the preset total effort value; W is the total network strength value of the candidate driving path; N is the weight value corresponding to the preset total network strength value.

[0107] S260. Determine the target driving path from the candidate driving paths according to the weight result of the candidate driving path.

[0108] Among them, the target driving path can be the optimal driving path determined from at least one candidate driving path. Exemplarily, according to the weight result, the one with the smallest score can be selected from the total scores of each candidate driving path as the target driving path.

[0109] In a specific example, according to the obstacle information in the target map file and based on the path planning algorithm, candidate driving paths A, B, and C are obtained respectively. Among them, the preset weight value for the path length is 0.3, the weight value corresponding to the total effort value is 0.3, and the weight value corresponding to the total network strength value is 0.4. The path length of candidate driving path A is 20 meters, the total effort value is 40, and the total network strength value is 300; the path length of candidate driving path B is 30 meters, the total effort value is 45, and the total network strength value is 200; the path length of candidate driving path C is 25 meters, the total effort value is 50, and the total network strength value is 100. According to the determination method of the total score value of the candidate driving path, the total score value of candidate driving path A can be obtained, that is, the weight result is 138; the total score value of candidate driving path B is 102.5; the total score value of candidate driving path C is 62.5. Therefore, candidate driving path C with the smallest total score value can be used as the target driving path.

[0110] The solution of this embodiment determines at least one candidate driving path through the obstacle information in the target map file, realizing the dynamic determination of the candidate driving path. Due to the dynamic update of the target map file, the robot can dynamically determine the candidate driving path according to the change or existence of obstacles in the scene. By the path length of the candidate driving path, as well as the effort coefficient information and network strength information of at least one path point in the candidate driving path, based on the preset weight value, the weight result of the candidate driving path is determined, realizing the accurate determination of the target candidate driving path. By comprehensively considering factors such as the path length, effort coefficient, and network strength of the candidate driving path to comprehensively determine the target candidate driving path, the accuracy of the path planning for the robot is improved, thereby improving the working efficiency of the robot.

[0111] Embodiment Three

[0112] Figure 3 The flow chart of a path planning method provided by Embodiment 1 of the present invention is shown. This embodiment is applicable to the situation of path planning for a robot. This method can be executed by a path planning device, which can be implemented in the form of hardware and / or software, and the path planning device can be configured in an electronic device. As Figure 3 shown, this method is applied to a server, and the method specifically includes the following:

[0113] S310. Obtain path point information sent by at least one robot, and based on the path point information and the current map file, determine the target map file.

[0114] Among them, the path point information may include the current position coordinates, obstacle data, current network strength, effort coefficient, etc. The current position coordinates may be the longitude and latitude coordinates of the current position.

[0115] Among them, the current map file can be the map file currently stored in the server; the target map file can be the map file obtained by the server based on the current map file existing internally, and merging the obtained path point information into the current map file according to the path point information sent by each robot. Among them, the server can be a cloud server or a local server.

[0116] It should be noted that the current map file and / or the target map file can be a map file including data such as obstacle data, network strength, position coordinates, and effort coefficient. It can also be multiple map files including obstacle data, network strength, position coordinates, and effort coefficient; among them, the multiple map files can be respectively a map file including obstacle data, a map file including network strength, a map file including position coordinates, and a map file including effort coefficient, etc.

[0117] In an alternative embodiment, the path point information includes obstacle data; correspondingly, determining the target map file based on the current map file according to the path point information includes: updating the obstacles in the current map file according to the obstacle data in the path point information sent by the robot to obtain the target map file.

[0118] Exemplarily, the server can obtain the obstacle data sent by each robot in real time, extract the path data from the starting point to the ending point in the obstacle data, compare the information with the path data corresponding to the starting point and the ending point in the current map file, and update the inconsistent parts to the current map file to realize the update of the obstacles in the current map file, so as to obtain the target map file.

[0119] In this alternative embodiment, by updating the obstacles in the current map file according to the obstacle data in the obtained path point information, the target map file is obtained. By obtaining the obstacle data sent by each robot in real time, the dynamic update of the obstacle data in the target map file is realized, so that the target map file can change dynamically according to the presence of obstacles in the scene, so that the robot can continuously adjust and determine the optimal driving path through the dynamically changing target map file.

[0120] In an alternative embodiment, the path point information includes the current network strength; correspondingly, determining the target map file based on the current map file according to the path point information includes: updating the network strength at the current position of the target map file according to the current network strength at the current position of the robot.

[0121] After obtaining the current network strength at the current position sent by the robot, the server can determine whether the current network strength information at the current position exists in the current map file. Specifically, after obtaining the current network strength information at the current position, the server can, according to the longitude and latitude coordinate information of the current position, determine whether there is a network strength at the same longitude and latitude coordinate position in the current map file. If it exists, the server will overwrite the network strength at the same longitude and latitude position in the current map file with the currently obtained current network strength information at the current position to obtain the target map file. If it does not exist, the server will add the obtained current network strength information at the current position to the current map file to obtain the target map file.

[0122] Exemplarily, the server obtains the current network strength at the current position of the robot. The longitude and latitude coordinates of the current position are longitude: 35.76 and latitude: 113.75. The current network strength at the current position is three bars of 3G signal. If there is a network strength with the same longitude and latitude in the current map file and it is three bars of 2G signal, the server will update the three bars of 2G signal in the current map file to three bars of 3G signal. Therefore, in the obtained target map file, the network strength at the position with longitude: 35.76 and latitude: 113.75 is three bars of 3G signal. If there is no network strength with the same longitude and latitude in the current map file, the server will add the three bars of 3G signal at the position with longitude: 35.76 and latitude: 113.75 to the current map file to obtain the target map file.

[0123] In this optional embodiment, by updating the network strength at the current position of the target map file according to the current network strength at the current position of the robot, the target map file is obtained. By obtaining the current network strength at the current position sent by each robot in real time, the dynamic update of the network strength in the target map file is realized, so as to respond to the continuously changing network conditions on each driving path. Furthermore, the robot can determine the optimal driving path through the continuously updated target map file.

[0124] It should be noted that since a large number of robots frequently report data to the server, resulting in a large amount of data stored in the server and a large memory space occupied, in order to reduce the memory space occupied by the server or the robot and improve the data transmission efficiency, the data stored in the server that meets the deletion conditions can also be deleted.

[0125] In an optional embodiment, the method further includes: judging whether the network strength at any position meets the preset deletion conditions according to the timestamp associated with the network strength at any position in the target map file; if so, deleting the data of the network strength at any position.

[0126] When the server obtains the current network strength of the current position sent by the robot, it determines the current timestamp and establishes an association relationship between the timestamp and the obtained current network strength of the current position, so as to obtain the timestamp associated with the network strength at any position in the target map file.

[0127] Among them, the preset deletion condition can be preset by relevant technical personnel according to actual needs. For example, the preset deletion condition can be to monitor the timestamp of any position in the target map file, and when the preset timing time period is reached, delete the network strength of the point position that meets the preset timing time period. For example, the timing time period can be 1 hour.

[0128] Exemplarily, if the timestamp associated with the network strength of point a in the target map file is 2022 / 03 / 04 16:00 and the preset timing time period is 1 hour, then when the current time is 2022 / 03 / 04 17:00, the server automatically deletes the point position and the network strength corresponding to this position.

[0129] In this optional embodiment, by judging whether the network strength at any position meets the preset deletion condition according to the timestamp associated with the network strength at any position in the target map file, the deletion of the network strength data within the historical time period in the server is realized, reducing the occupation of the memory space of the server or the robot and improving the data transmission efficiency.

[0130] In an optional embodiment, the path point information includes a laborious coefficient; correspondingly, according to the path point information and based on the current map file, determining the target map file includes: judging whether there is a candidate position in the current map file whose distance from the current position meets the preset distance difference threshold according to the laborious coefficient of the current position; if so, determining the target position according to the current position and the candidate position, and determining the laborious coefficient of the target position according to the laborious coefficient of the current position and the laborious coefficient of the candidate position; updating the laborious coefficient of the target position in the target map file according to the laborious coefficient of the target position.

[0131] Among them, the preset distance difference threshold can be preset by relevant technical personnel. For example, the distance difference threshold can be 1 meter. The candidate position can be a position in the current map file whose distance from the current position meets the preset distance difference threshold.

[0132] Exemplarily, the server determines whether there is a candidate location in the current map file whose distance from the current location meets a preset distance difference threshold according to the laborious coefficient of the current location obtained. If so, the target location is determined based on the current location and the candidate location. Specifically, the midpoint location between the current location and the candidate location can be determined as the target location. The laborious coefficient of the target location is determined according to the laborious coefficient of the current location and the laborious coefficient of the candidate location. Specifically, the average value of the laborious coefficient of the current location and the laborious coefficient of the candidate location can be determined as the laborious coefficient of the target location. The candidate locations in the current map file and the corresponding laborious coefficients of the candidate locations are deleted, and the target location and the corresponding laborious coefficient of the target location are added to the current map file, thereby obtaining the target map file.

[0133] If there is no candidate location in the current map file whose distance from the current location meets the preset distance difference threshold, the obtained current location and the laborious coefficient of the current location are added to the current map file, thereby obtaining the target map file.

[0134] In a specific embodiment, the laborious coefficient of the current location obtained by the server is 1, and the preset distance difference threshold is 0.5 meters. The server searches in the current map file to see if there is a candidate location whose distance from the current location meets 0.5 meters; if so, the midpoint location between the current location and the candidate location is used as the target location. If the laborious coefficient of the obtained candidate location is 2, the laborious coefficient of the target location is obtained as 1.5 according to the average value of the laborious coefficient of the current location and the laborious coefficient of the candidate location. The server deletes the laborious coefficient corresponding to the candidate location from the current map file and adds the laborious coefficient corresponding to the target location to the current map file to obtain the target map file.

[0135] If no candidate location whose distance from the current location meets 0.5 meters is found in the current map file, the laborious coefficient 1 of the current location is added to the current map file to obtain the target map file.

[0136] It should be noted that the laborious coefficient of the target location obtained from the laborious coefficient of the current location and the laborious coefficient of the candidate location is marked, and when subsequently determining whether there is a candidate location in the current map file whose distance from the current location meets the preset distance difference threshold, the marked location is no longer used as a candidate location for judgment.

[0137] In this alternative embodiment, the difficulty coefficient of the current position in the target map file is updated according to the difficulty coefficient of the current position of the robot, so as to obtain the target map file. By obtaining the difficulty coefficients of the current positions sent by each robot in real time, the dynamic update of the difficulty coefficients in the target map file is realized, so as to respond to the continuously changing friction conditions on each driving path. Furthermore, the robot can determine the optimal driving path through the continuously updated target map file.

[0138] S320. Send the target map file to the robot.

[0139] Optionally, due to the dynamic changes in the presence of obstacles in each scenario, the machine can detect the updated obstacles in the venue within a preset time when there is no task or during the return journey, and report the detection situation to the server, which updates the current map file. The preset time can be 1 hour.

[0140] For a preset time, such as within 1 month, if the network strength of the driving path is always no signal or low signal, such as one bar of 2G, etc., the network strength is sent to the relevant person in charge or manager of the application scenario to optimize the area where the points with poor network strength are located. In addition, the target map file including the difficulty coefficient can be sent to the relevant person in charge or manager regularly, and the relevant responsible personnel optimize the positions that cause friction or resistance in the venue, such as uphill and downhill, carpet and other areas. The obstacles that have not been cancelled in the map file within the preset time can also be sent to the relevant person in charge regularly. The preset time can be 1 month.

[0141] The solution of this embodiment determines the target map file based on the current map file according to the path point information obtained from at least one robot and sends the target map file to the robot. The above solution obtains the path point information through at least one robot and reports the path point information to the server, and the server updates the target map file in real time. The target map file is continuously updated based on the path point information provided by all robots in the scenario, improving the accuracy of the target map file. Moreover, with the dynamic changes in the scenario, such as the dynamic increase and decrease of obstacles and the dynamic change factors such as network strength stability, the target map file can be continuously updated, ensuring that the target driving path determined by the robot each time according to the target map file is the optimal driving path, thus improving the working efficiency of the robot.

[0142] Embodiment 4

[0143] Figure 4Schematic structural diagram of a path planning device provided in Embodiment 4 of the present invention. A path planning device provided in an embodiment of the present invention is applicable to the situation of path planning for a robot, and the device can be implemented in a software and / or hardware manner. The path planning device can be configured in the robot. As Figure 4 shown, the device specifically includes: a path point information acquisition module 401 and a target driving path determination module 402. Among them,

[0144] The path point information acquisition module 401 is used to acquire path point information of the current position and send the path point information to the server for the server to determine a target map file based on the current map file according to the path point information;

[0145] The target driving path determination module 402 is used to acquire the target map file sent by the server and determine the target driving path according to the target map file.

[0146] The solution of the embodiment of the present invention acquires path point information of the current position and sends the path point information to the server for the server to determine a target map file based on the current map file according to the path point information; acquires the target map file sent by the server and determines the target driving path according to the target map file. The above solution acquires path point information through at least one robot and reports the path point information to the server, and the server updates the target map file in real time. The target map file is continuously updated based on the path point information provided by all robots in the scenario, improving the accuracy of the target map file. Moreover, with the dynamic changes in the scenario, such as the dynamic increase and decrease of obstacles and dynamic change factors such as network strength stability, the target map file can be continuously updated, so as to ensure that the target driving path determined by the robot each time according to the target map file is the optimal driving path, thereby improving the working efficiency of the robot.

[0147] Optionally, the path point information includes the current position coordinates, obstacle data, and the current network strength;

[0148] Optionally, the path point information includes the effort coefficient;

[0149] Correspondingly, the path point information acquisition module includes:

[0150] The current current value acquisition unit is used to acquire the current value of the previous path point position of the current position as a candidate current value according to a preset current value acquisition period, and acquire the current current value of the current position;

[0151] The average current value determination unit is used to determine the average current value of the current position according to the current current value and the candidate current value;

[0152] A laborious coefficient determination unit for determining the laborious coefficient of the current position according to the current current value and the average current value.

[0153] Optionally, the laborious coefficient determination unit includes:

[0154] A laborious coefficient determination subunit for determining the ratio of the current current value of the current position to the average current as the laborious coefficient of the current position.

[0155] Optionally, the target travel path determination module 402 includes:

[0156] A candidate travel path determination unit for determining at least one candidate travel path based on the obstacle information in the target map file and a preset path planning algorithm;

[0157] An information determination unit for determining the laborious coefficient information and network strength information of at least one path point in the candidate travel path according to the laborious coefficient and network strength of any position in the target map file;

[0158] A weight result determination unit for determining the weight result of the candidate travel path based on the path length of the candidate travel path, and the laborious coefficient information and network strength information of at least one path point in the candidate travel path, based on a preset weight value;

[0159] A target travel path determination unit for determining the target travel path from the candidate travel paths according to the weight result of the candidate travel path.

[0160] Optionally, the device further includes:

[0161] A current state acquisition module for acquiring the current state of the current map file in the server after acquiring the path point information of the current position; the current state includes a modification state and a waiting state;

[0162] A current map file acquisition module for, if the current state is the waiting state, setting the current state of the current map file to the modification state and acquiring the current map file;

[0163] A target map file determination module for determining a target map file based on the current map file according to the path point information;

[0164] A target map file upload module for uploading the target map file to the server, setting the current state of the current map file to the waiting state, and determining the target travel path according to the target map file.

[0165] The path planning device provided by the embodiment of the present invention can execute the path planning method provided by any embodiment of the present invention, and has corresponding functional modules and beneficial effects for executing the method.

[0166] Embodiment 5

[0167] Figure 5 FIG. is a schematic structural diagram of a path planning device provided by Embodiment 5 of the present invention. A path planning device provided by an embodiment of the present invention is applicable to the situation of path planning for a robot, and the device can be implemented in a software and / or hardware manner. The path planning device can be applied to a server. As Figure 5 shown, the device specifically includes: a target map file determination module 501 and a target map file sending module 502. Among them,

[0168] The target map file determination module 501 is configured to obtain path point information sent by at least one robot, and determine a target map file based on the current map file according to the path point information;

[0169] The target map file sending module 502 is configured to send the target map file to the robot.

[0170] The solution of this embodiment determines a target map file by obtaining path point information sent by at least one robot, and based on the path point information and the current map file; and sends the target map file to the robot. The above solution obtains path point information through at least one robot, and reports the path point information to the server, and the server updates the target map file in real time. The target map file is continuously updated based on the path point information provided by all robots in the scenario, improving the accuracy of the target map file. Moreover, with the dynamic changes in the scenario, such as the dynamic increase and decrease of obstacles and the dynamic change factors such as network strength stability, the target map file can be continuously updated, so as to ensure that the target driving path determined by the robot according to the target map file each time is the optimal driving path, thereby improving the working efficiency of the robot.

[0171] Optionally, the path point information includes obstacle data;

[0172] Correspondingly, the target map file determination module 501 includes:

[0173] The target map file determination unit is configured to update the obstacles in the current map file according to the obstacle data in the path point information sent by the robot to obtain the target map file.

[0174] Optionally, the path point information includes the current network strength;

[0175] Correspondingly, the target map file determination module 501 includes:

[0176] A network strength update unit, configured to update the network strength at the current position in the target map file according to the current network strength at the current position of the robot.

[0177] Optionally, the device further includes:

[0178] A deletion condition judgment module, configured to judge whether the network strength at any position satisfies a preset deletion condition according to the timestamp associated with the network strength at any position in the target map file;

[0179] A data deletion module, configured to delete the data of the network strength at any position if the network strength at any position satisfies the preset deletion condition.

[0180] Optionally, the path point information includes a laborious coefficient;

[0181] Correspondingly, the target map file determination module 501 includes:

[0182] A candidate position judgment unit, configured to judge whether there is a candidate position in the current map file whose distance from the current position satisfies a preset distance difference threshold according to the laborious coefficient of the current position;

[0183] A laborious coefficient determination unit, configured to determine a target position according to the current position and the candidate position if there is a candidate position in the current map file whose distance from the current position satisfies the preset distance difference threshold, and determine the laborious coefficient of the target position according to the laborious coefficient of the current position and the laborious coefficient of the candidate position;

[0184] A laborious coefficient update unit, configured to update the laborious coefficient of the target position in the target map file according to the laborious coefficient of the target position.

[0185] The path planning device provided by the embodiments of the present invention can execute the path planning method provided by any embodiment of the present invention, and has corresponding functional modules and beneficial effects for executing the method.

[0186] Embodiment Six

[0187] Figure 6FIG. 0 shows a schematic structural diagram of an electronic device 60 that can be used to implement an embodiment of the present invention. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described herein and / or claimed.

[0188] As Figure 6 shown, the electronic device 60 includes at least one processor 61, and a memory communicatively connected to the at least one processor 61, such as a read-only memory (ROM) 62, a random access memory (RAM) 63, etc. The memory stores a computer program executable by the at least one processor. The processor 61 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 62 or the computer program loaded from the storage unit 68 into the random access memory (RAM) 63. In the RAM 63, various programs and data required for the operation of the electronic device 60 can also be stored. The processor 61, the ROM 62, and the RAM 63 are connected to each other via a bus 64. An input / output (I / O) interface 65 is also connected to the bus 64.

[0189] A plurality of components in the electronic device 60 are connected to the I / O interface 65, including: an input unit 66, such as a keyboard, a mouse, etc.; an output unit 67, such as various types of displays, speakers, etc.; a storage unit 68, such as a magnetic disk, an optical disk, etc.; and a communication unit 69, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 69 allows the electronic device 60 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0190] The processor 61 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the processor 61 include but are not limited to a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The processor 61 executes the various methods and processes described above, such as the path planning method.

[0191] In some embodiments, the path planning method may be implemented as a computer program tangibly embodied in a computer-readable storage medium, such as storage unit 68. In some embodiments, part or all of the computer program may be loaded and / or installed onto the electronic device 60 via the ROM 62 and / or the communication unit 69. When the computer program is loaded into the RAM 63 and executed by the processor 61, one or more steps of the path planning method described above may be performed. Alternatively, in other embodiments, the processor 61 may be configured to execute the path planning method by any other suitable means (e.g., by means of firmware).

[0192] The various embodiments of the systems and techniques described above in this document may be implemented in digital electronic circuitry, integrated circuit systems, field programmable gate arrays (FPGA), application specific integrated circuits (ASIC), application specific standard products (ASSP), systems on a chip (SOC), complex programmable logic devices (CPLD), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include: implemented in one or more computer programs that may be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a special-purpose or general-purpose programmable processor that receives data and instructions from a storage system, at least one input device, and at least one output device, and transmits the data and instructions to the storage system, the at least one input device, and the at least one output device.

[0193] The computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus, such that the computer programs, when executed by the processor, cause the functions / operations specified in the flowchart and / or block diagram to be implemented. The computer programs may be executed entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine, or entirely on the remote machine or server.

[0194] In the context of the present invention, a computer-readable storage medium can be a tangible medium that can contain or store a computer program for use by or in connection with an instruction execution system, apparatus, or device. The computer-readable storage medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any suitable combination of the foregoing. Alternatively, the computer-readable storage medium can be a machine-readable signal medium. More specific examples of the machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0195] For providing interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the electronic device. Other kinds of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0196] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer having a graphical user interface or a web browser through which the user can interact with an implementation of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of the communication network include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.

[0197] A computing system may include a client and a server. The client and the server are generally far from each other and usually interact via a communication network. The relationship between the client and the server is created by computer programs that run on respective computers and have a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or a cloud host, which is a host product in the cloud computing service system, and solves the defects of difficult management and weak business scalability existing in traditional physical hosts and VPS services.

[0198] It should be understood that various forms of the processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in the present invention can be executed in parallel, sequentially, or in a different order, as long as the desired results of the technical solution of the present invention can be achieved, and no limitation is made herein.

[0199] The above specific embodiments do not constitute a limitation to the protection scope of the present invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principle of the present invention shall be included within the protection scope of the present invention.

Claims

1. A path planning method, characterized in that, The method is executed by a robot and includes: Obtaining path point information of the current location and sending the path point information to a server for the server to determine a target map file based on the current map file according to the path point information; Obtaining the target map file sent by the server and determining a target driving path according to the target map file; Wherein, the path point information includes a laborious coefficient; wherein, the laborious coefficient is used to represent the friction degree between the ground at the location where the robot is located and the wheels of the robot or the driving resistance degree; the laborious coefficient is determined by obtaining the motor current value of the robot wheels.

2. The method according to claim 1, wherein The path point information includes the current location coordinates, obstacle data, and the current network strength.

3. The method according to claim 1, characterized in that, The obtaining of the path point information of the current location includes: Obtaining the current value of the previous path point location at the current location as a candidate current value according to a preset current value acquisition period, and obtaining the current current value of the current location; Determining the average current value of the current location according to the current current value and the candidate current value; Determining the laborious coefficient of the current location according to the current current value and the average current value.

4. The method according to claim 3, characterized in that, Determining the laborious coefficient of the current location according to the current current value and the average current value includes: Determining the ratio of the current current value of the current location to the average current value as the laborious coefficient of the current location.

5. The method according to claim 2, wherein Determining the target driving path according to the target map file includes: Determining at least one candidate driving path based on a preset path planning algorithm according to the obstacle information in the target map file; Determining the laborious coefficient information and network strength information of at least one path point in the candidate driving path according to the laborious coefficient and network strength of any location in the target map file; Determining the weight result of the candidate driving path based on a preset weight value according to the path length of the candidate driving path and the laborious coefficient information and network strength information of at least one path point in the candidate driving path; Determining the target driving path from the candidate driving paths according to the weight result of the candidate driving path.

6. The method according to claim 1, wherein After obtaining the path point information of the current location, it further includes: Obtaining the current state of the current map file in the server; the current state includes a modification state and a waiting state; If the current state is the waiting state, setting the current state of the current map file to the modification state and obtaining the current map file; Determining the target map file based on the current map file according to the path point information; Uploading the target map file to the server, setting the current state of the current map file to the waiting state, and determining the target driving path according to the target map file.

7. A path planning method, characterized in that, Applied to the server, it includes: Obtaining path point information sent by at least one robot and determining a target map file based on the current map file according to the path point information; Sending the target map file to the robot; Among them, the path point information includes a laborious coefficient; where the laborious coefficient is used to represent the friction degree between the ground at the position where the robot is located and the robot wheels, or the driving resistance degree; the laborious coefficient is determined by obtaining the motor current value of the robot wheels.

8. The method according to claim 7, characterized in that The path point information includes obstacle data. Correspondingly, according to the path point information and based on the current map file, determining the target map file includes: Updating the obstacles in the current map file according to the obstacle data in the path point information sent by the robot to obtain the target map file.

9. The method according to claim 7, characterized in that, The path point information includes the current network strength. Correspondingly, according to the path point information and based on the current map file, determining the target map file includes: Updating the network strength at the current position of the target map file according to the current network strength at the current position of the robot.

10. The method according to claim 9, wherein The method further includes: Judging whether the network strength at any position meets a preset deletion condition according to the timestamp associated with the network strength at any position in the target map file; If so, deleting the data of the network strength at any position.

11. The method according to claim 7, wherein According to the path point information and based on the current map file, determining the target map file includes: Judging whether there is a candidate position in the current map file whose distance from the current position meets a preset distance difference threshold according to the laborious coefficient at the current position; If so, determining the target position according to the current position and the candidate position, and determining the laborious coefficient of the target position according to the laborious coefficient at the current position and the laborious coefficient of the candidate position; Updating the laborious coefficient of the target position in the target map file according to the laborious coefficient of the target position.

12. A path planning device, characterized in that The device is executed by a robot and includes: A path point information acquisition module, configured to acquire the path point information of the current position and send the path point information to the server for the server to determine the target map file according to the path point information and based on the current map file; A target driving path determination module, configured to acquire the target map file sent by the server and determine the target driving path according to the target map file; Among them, the path point information includes a laborious coefficient; where the laborious coefficient is used to represent the friction degree between the ground at the position where the robot is located and the robot wheels, or the driving resistance degree; the laborious coefficient is determined by obtaining the motor current value of the robot wheels.

13. A path planning device, characterized in that, Applied to the server, it includes: A target map file determination module, configured to acquire the path point information sent by at least one robot and determine the target map file according to the path point information and based on the current map file; A target map file sending module, configured to send the target map file to the robot; Among them, the path point information includes a laborious coefficient; where the laborious coefficient is used to represent the friction degree between the ground at the position where the robot is located and the robot wheels, or the driving resistance degree; the laborious coefficient is determined by obtaining the motor current value of the robot wheels.

14. An electronic device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the path planning method as described in any one of claims 1-6 or 7-11.

15. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the path planning method as described in any one of claims 1-6 or 7-11.

Citation Information

Patent Citations

  • Operating path planning method and device, and storage medium

    CN110296708A

  • Path planning method and device, electronic equipment and storage medium

    CN112540607A

  • Real-time optimal ship navigation route planning method based on improved genetic algorithm

    CN113610312A