Obstacle point determination method and device, intelligent device, and storage medium
By assigning a value to reachable grids and calculating target points in the grid map, the problem of unreasonable path planning for mobile robots is solved, and efficient cleaning is achieved.
Patent Information
- Application Number
- CN202111561808.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-20
- Publication Date
- 2026-02-27
- Estimated Expiration
- 2041-12-20
AI Technical Summary
During the cleaning process, mobile robots may miss or over-clean certain areas due to multiple target points in the area to be cleaned and unreasonable path planning, resulting in poor cleaning effect.
By acquiring a grid map, occupied and vacant grids are identified, each grid is assigned a value, reachable grids and target candidate points are filtered out, and the final target point is calculated based on security, task, and business parameters.
It achieves reasonable target point determination, can bypass obstacles and plan appropriate task paths, and improves cleaning efficiency and effectiveness.
Smart Images

Figure CN116300843B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present disclosure relates to the technical field of artificial intelligence, and in particular, to a method and device for determining an obstacle-avoiding target point, an intelligent device, and a storage medium. BACKGROUND
[0002] With the development of science and technology, mobile robots for assisting people in handling housework are becoming more and more popular and have entered ordinary households. The most common mobile robots include sweeping robots and mopping robots. In the process of performing a cleaning task, the mobile robot needs to avoid all obstacles in the cleaning area and plan a task path to clean the cleaning area. In general, the current position of the mobile robot is taken as the starting point and a plurality of target points are taken as the end points for obstacle-avoiding path planning. However, because there are many target points in the cleaning area, if the mobile robot goes to the next target point without a purpose, the path planning will be unreasonable, some cleaning areas will be missed, or some areas will be cleaned excessively, resulting in poor cleaning effect. SUMMARY
[0003] To overcome the problems in the related art, embodiments of the present disclosure provide a method and device for determining an obstacle-avoiding target point, an intelligent device, and a storage medium. The method for determining an obstacle-avoiding target point can avoid obstacles in a cleaning area and determine a more reasonable target point, so as to guide the mobile robot to each target point to perform a cleaning task, and the cleaning effect is better.
[0004] According to a first aspect of an embodiment of the present disclosure, a method for determining an obstacle-avoiding target point is provided, including the following steps:
[0005] Obtaining a grid map of a moving area, determining occupied grids and idle grids in the grid map, and determining a grid generation value of each idle grid according to a preset generation value of the occupied grid and a distance between the idle grid and the occupied grid;
[0006] Determining reachable grids of the mobile robot according to the grid generation value of the idle grid. The reachable grid is a grid in the grid map that is not occupied by an obstacle and can be reached.
[0007] Determining all reachable grids on a preset task path as target candidate points based on the preset task path. The preset task path is a plurality of task paths obtained by the mobile robot automatically planning a path based on a current position and a target position.
[0008] The target parameter values include a safety parameter value, a task parameter value and a business parameter value; the safety parameter value is an index of a safe obstacle avoidance; the task parameter value is an index set according to a length of the task path; and the business parameter value is an index determined according to a distance to be moved between the target candidate points and a center grid of a region where the mobile robot is located.
[0009] According to a second aspect of the embodiments of the present disclosure, a device for determining an obstacle-avoiding target point is provided, which comprises:
[0010] a grid cost determination module configured to acquire a grid map of a moving region, determine occupied grids and idle grids in the grid map, and determine a grid cost value of each idle grid according to a preset cost value of the occupied grids and a distance between the idle grids and the occupied grids;
[0011] a reachable grid determination module configured to determine reachable grids of the mobile robot according to the grid cost values of the idle grids; the reachable grids are grids in the grid map that are not occupied by obstacles and can be reached;
[0012] a target candidate point determination module configured to determine all the reachable grids on a preset task path as target candidate points based on the preset task path; the preset task path is a plurality of task paths obtained by the mobile robot automatically planning paths based on a current position and a target position;
[0013] a target point determination module configured to perform target parameter calculation on the target candidate points to obtain target parameter values, and determine a final target point according to the target parameter values; the target parameter values include a safety parameter value, a task parameter value and a business parameter value; the safety parameter value is an index of a safe obstacle avoidance; the task parameter value is an index set according to a length of the task path; and the business parameter value is an index determined according to a distance to be moved between the target candidate points and a center grid of a region where the mobile robot is located.
[0014] According to a third aspect of the embodiments of the present disclosure, an intelligent device is provided, which comprises a processor and a memory; the memory is electrically connected to the processor; the memory stores a computer program, and the computer program is adapted to be loaded and executed by the processor to implement the obstacle-avoiding target point determination method according to any one of the above embodiments.
[0015] According to a fourth aspect of the embodiments of the present disclosure, a computer readable storage medium is provided, which stores a computer program; when the computer program is executed by a processor, the obstacle-avoiding target point determination method according to any one of the above embodiments is implemented.
[0016] According to the above technical solution of the present application, the occupied grid occupied by the obstacle and the grid not occupied by the obstacle are given a value, so as to screen all the grids in the grid map that can be reached by the mobile robot, and based on the preset task path, a plurality of target candidate points are screened out, and target parameters of each target candidate point are calculated based on the safety parameter, the task parameter and the business parameter, so as to determine the final target point. The obtained final target point is a more reasonable target point, which can not only bypass the obstacle on the grid map, but also facilitate to determine a more appropriate task path, and then facilitate to guide the robot to the final target point for efficient cleaning, and the use is more convenient.
[0017] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and cannot limit the present disclosure.
[0018] In order to better understand and implement, the present disclosure is described in detail below with reference to the accompanying drawings. BRIEF DESCRIPTION OF DRAWINGS
[0019] Figure 1 Flowchart of the obstacle-avoiding target point determination method shown in the embodiment of the present disclosure;
[0020] Figure 2 Flowchart of step S2 of the obstacle-avoiding target point determination method shown in the embodiment of the present disclosure;
[0021] Figure 3 Flowchart of step S4 of the obstacle-avoiding target point determination method shown in the embodiment of the present disclosure;
[0022] Figure 4 Flowchart of step S41 of the obstacle-avoiding target point determination method shown in the embodiment of the present disclosure;
[0023] Figure 5 Flowchart of the safety parameter value determination method of the target candidate point shown in the embodiment of the present disclosure;
[0024] Figure 6 Flowchart of the task parameter value determination method of the target candidate point shown in the embodiment of the present disclosure;
[0025] Figure 7 Flowchart of the business parameter value determination method of the target candidate point shown in the embodiment of the present disclosure;
[0026] Figure 8 Structure diagram of the obstacle-avoiding target point determination device shown in the embodiment of the present disclosure;
[0027] Figure 9 Structure diagram of the intelligent device shown in the embodiment of the present disclosure. DETAILED DESCRIPTION
[0028] The exemplary embodiments will be described in detail herein with reference to the attached drawings. The description herein relates to the drawings, in which the same numbers represent the same or similar elements, throughout the several views. The following exemplary embodiments are described in order to provide a thorough understanding into the present disclosure. It will be apparent, however, to one skilled in the art that these specific embodiments are not the only ways, in which the present disclosure can be practiced. Rather, they are provided as examples of the present disclosure as set forth in the claims.
[0029] The terminology used in the present disclosure is for the purpose of describing particular embodiments only and is not intended to be limiting of the present disclosure. As used in the present disclosure and the appended claims, the singular forms "a," "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term "and / or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items.
[0030] It will be understood that, although the terms first, second, third, etc. can be used herein to describe various information, these terms are not intended to denote a temporal or chronological order. Rather, these terms are used only as a shorthand notation to distinguish one piece of information from another. For example, a first piece of information can be termed a second piece of information, and similarly, a second piece of information can be termed a first piece of information without departing from the scope of the present disclosure. Depending on the context, the word "if' can be interpreted to mean "when" or "in response to determining" as used herein.
[0031] A mobile robot includes a sweeping robot, or a mopping robot, etc. In the process of performing a cleaning task, due to the presence of various obstacles in the to-be-cleaned area, such as fixed obstacles, or movable obstacles, etc., the mobile robot needs to bypass all obstacles and plan a task path to achieve cleaning of the to-be-cleaned area. In the process of task path planning, the current position of the mobile robot is generally taken as the starting point, and a number of target points are taken as the end points for obstacle bypass path planning. However, due to the presence of a large number of target points in the to-be-cleaned area, if the mobile robot goes to the next target point without a purpose, the path planning will be unreasonable, resulting in the omission of some to-be-cleaned areas, or the waste of a certain amount of time for over-cleaning of some areas, leading to poor cleaning effect.
[0032] To address the aforementioned technical problems, this disclosure proposes an embodiment that defines the area to be cleaned as a grid map. Based on the distance between other grid cells and those occupied by obstacles, all grid cells on the grid map are assigned a value. Several candidate target points on a preset task path are then selected based on these value values. Finally, the final target point is selected based on the target parameter values of these candidate points. This ultimately determined target point is a relatively reasonable target point, which can both bypass obstacles on the grid map and facilitate the determination of a suitable task path, thereby guiding the robot to the final target point for efficient cleaning, making it convenient to use.
[0033] The following is an illustration through specific examples.
[0034] According to a first aspect of the present disclosure, a method for determining obstacle avoidance target points is disclosed, which is applied to a smart device, including a mobile robot or a robotic vacuum cleaner, etc. The smart device can implement the obstacle avoidance target point determination method of this application purely in software, or it can be implemented using a combination of software and hardware.
[0035] In the embodiments of this application, the intelligent device is a mobile robot used to clean and maintain the environment of a designated area. The mobile robot can automatically plan a task path and automatically go to the area to be cleaned based on the task path to perform cleaning operations such as sweeping and mopping, which has a positive effect on the cleaning and maintenance of people's home environment, office environment, or other environments to be cleaned. In other embodiments, the mobile robot can also be used to perform other tasks that require moving around obstacles, such as transporting goods.
[0036] Please see Figure 1 , Figure 1 This is a flowchart illustrating the obstacle avoidance target point determination method according to an embodiment of this disclosure.
[0037] The method for determining the obstacle avoidance target point includes the following steps:
[0038] S1: Obtain the grid map of the moving area, determine the occupied and idle grids in the grid map, and determine the grid value of each idle grid based on the preset value of the occupied grid and the distance between the idle grid and the occupied grid.
[0039] In this embodiment, the mobile area is the area where the mobile robot can move, such as the user's house, office, or other environments where the mobile robot is needed to perform related tasks.
[0040] In the field of mobile robots, in order to guide the mobile robot to the destination, the task path needs to be planned, and a map is usually used for path planning. There are various methods for representing a map in robotics, one of which is a grid map. A grid map divides the environment into a series of grids, each of which is given a possible value representing the probability of the grid being occupied, such as the preset heuristic value and the grid heuristic value described below in this application. A grid map is a grid image, also known as a raster image, which is an image that has been discretized in both space and brightness. A grid image can be considered as a matrix, where each element in the matrix corresponds to a point in the image, and the corresponding value corresponds to the gray level of the point. The elements in the digital matrix are called pixels.
[0041] The size of the grid in the grid map has an impact on path planning. If the grid contains a small area, the environment resolution is large, the environment information storage is large, and the decision speed is slow. If the grid contains a large area, the environment resolution is small, the environment information storage is small, and the decision speed is fast, but the ability to find a path in a dense obstacle environment is weak. Therefore, the setting of the grid area needs to be set by the inventor based on business experience.
[0042] The environment in which the mobile robot is located may have various dynamic or static obstacles, and there may be several grids occupied by obstacles in the grid map. The mobile robot is provided with a data acquisition device for acquiring the state of the environment. The data acquisition device can be a laser sensor, an image acquisition sensor, or other environment data acquisition device. When the mobile robot acquires the state of the environment through the data acquisition device, it can usually identify obstacles and determine the grids occupied by obstacles in the grid map, as well as the grids not occupied by obstacles.
[0043] In this disclosure, the environment data acquisition device can be a laser sensor, which emits a laser beam in a fixed direction. The emitted laser is reflected when it encounters an obstacle, so that the time difference between the emission and reception of the laser is obtained. Multiplying the speed by two gives the distance from the sensor to the nearest obstacle in that direction, and the position of the obstacle is determined.
[0044] In this disclosure, the grid occupied by the obstacle is defined as an occupied grid, which is a grid that the mobile robot cannot reach. The grid not occupied by the obstacle is defined as an idle grid, which is a grid that the mobile robot can theoretically reach. Since there may be movable dynamic obstacles in the environment, such as people, toy cars, or other movable devices, the occupied grid is a dynamic grid that changes when the obstacle moves, and the idle grid also changes. That is, the determination of the occupied grid and the idle grid needs to be monitored and updated in real time.
[0045] In this embodiment, in order to plan the task path, the grid occupied by the obstacle is given a certain preset cost value, there is a certain distance between each idle grid and each occupied grid, and the grid cost value of each idle grid can be determined according to the distance between the idle grid and the occupied grid, so as to facilitate the task path planning.
[0046] Optionally, the preset cost value of the occupied grid occupied by the obstacle can be set as a gray value 254, or can be set as other numerical values. The calculation method of the grid cost value of each idle grid is as follows: the grid cost value of each idle grid is determined according to the preset cost value of the occupied grid and the distance between the idle grid and the occupied grid.
[0047] In this embodiment, after the occupied grid is determined, a certain area is radiated with the occupied grid as the center, and the inflation radius R with the occupied grid as the center is determined; within the inflation radius R, the grid cost value of the idle grid is calculated according to the following formula:
[0048] Grid cost value = exp(-1.0 * inflation coefficient * (distance between idle grid and occupied grid - fatal radius)) * (preset cost value of occupied grid - 1), exp is an exponential function with natural constant e as the base.
[0049] In the formula, the preset cost value of the occupied grid can be 254; the fatal radius can be the geometric shortest side of the projection area where the mobile robot is located; the inflation coefficient is a coefficient that affects the attenuation degree of the inflation cost, and the greater the coefficient, the faster the attenuation.
[0050] In this embodiment, the grid cost value of each idle grid determined based on the grid map facilitates the screening of all reachable grids that the mobile robot can reach, and is beneficial to the path planning and the determination of the final target point.
[0051] S2: determining the reachable grid that the mobile robot can reach according to the grid cost value of the idle grid.
[0052] The reachable grid is a grid in the grid map that is not occupied by the obstacle and can be reached, if the moving area is a whole house room, and the door of a certain room is closed, all the grids in the room are unreachable grids, and the reachable grid can be obtained after removing the unreachable grids in the moving area. After the reachable grid is determined, the corresponding target candidate point can be found based on the preset task path.
[0053] In an optional embodiment, refer to Figure 2 , Figure 2 The flowchart of step S2 of the obstacle-avoiding target point determination method shown in the embodiment of the present disclosure.
[0054] Step S2 can include the following steps:
[0055] S21: Determine the idle grid with a grid cost value less than the second preset cost threshold as a predicted reachable grid.
[0056] Each grid in the grid map has a corresponding grid cost value, the cost value of an occupied grid is 254, if there are several occupied grids around a certain grid, such as a first occupied grid, a second occupied grid and a third occupied grid, then the grid will have a first grid cost value relative to the first occupied grid, a second grid cost value relative to the second occupied grid, and a third grid cost value relative to the third occupied grid, and so on, so that the grid cost values relative to several occupied grids can be determined, and the total grid cost value of the grid can be determined by summing the several grid cost values, thereby facilitating the determination of whether the grid is a reachable grid.
[0057] If the grid cost value of the grid exceeds the second preset cost threshold, it indicates that the grid is too close to each occupied grid, i.e., too close to the obstacle, and then the idle grid is determined as an unreachable grid.
[0058] In the grid map, there are 8 grids around each grid, if a selected idle grid is assumed to have all occupied grids around it, then the grid cost value of the idle grid is 254*8=2032, and thus it can be known that the second preset cost threshold should be a value less than 2032, and the specific value can be set by the inventor according to business experience, which is not limited again.
[0059] S22: Based on the task path that must be passed between the current grid where the mobile robot is located and the predicted reachable grid, if the predicted reachable grid on the task path is blocked by the occupied grid, then the blocked predicted reachable grid is revised as an unreachable grid, and other predicted reachable grids that are not blocked by the occupied grid are determined as reachable grids.
[0060] In an optional embodiment, several reachable grids in the grid map can be screened out according to the Dijkstra algorithm, and several reachable grids in the grid map can also be screened out by other methods.
[0061] S3: Determine the reachable grids on the preset task path as target candidate points based on the preset task path.
[0062] The mobile robot automatically plans a path based on the current position and the target position, and a plurality of preset task paths can be obtained after path planning. For example, the current position of the mobile robot is point A, and the destination to be reached is point B. A plurality of preset task paths are planned between point A and point B, and each preset task path includes a plurality of reachable grids. The reachable grids on each preset task path are determined as target candidate points, so as to further reduce the search range and facilitate finding the final target point.
[0063] S4: target parameter calculation is performed on the plurality of target candidate points to obtain target parameter values, and a final target point is determined according to the target parameter values; wherein the target parameter values include safety parameter values, task parameter values, and business parameter values.
[0064] The target parameter values are judgment parameters for judging whether a target point is reasonable and whether it is an optimal target point, such as successful obstacle avoidance, appropriate obstacle avoidance path, and good cleaning ability.
[0065] In an optional embodiment, please refer to Figure 3 , Figure 3 The flowchart of step S4 of the obstacle avoidance target point determination method shown in the embodiment of the present disclosure is shown.
[0066] Step S4 includes the following steps:
[0067] S41: safety parameter values, task parameter values, and business parameter values of the target candidate points are respectively obtained.
[0068] In this embodiment, the safety parameter value is an index of safe obstacle avoidance, that is, to avoid the occupied grid more safely, so that the mobile robot will not collide with the obstacle. The task parameter value is an index set based on the length of the task path. The appropriate task path length can make the mobile robot reach each target point without going back and forth through the same area. The business parameter value is an index set based on the work demand. The appropriate work demand can guide the mobile robot to reach each place in the moving area to perform the cleaning task.
[0069] In this embodiment, please refer to Figure 4 , Figure 4 The flowchart of step S41 of the obstacle avoidance target point determination method shown in the embodiment of the present disclosure is shown.
[0070] Step S41 includes:
[0071] S411: safety parameter values of the target candidate points are obtained.
[0072] S412: task parameter values of the target candidate points are obtained.
[0073] S413: Obtain the service parameter value of the target candidate point.
[0074] In an optional embodiment, referring to Figure 5 , Figure 5 A flowchart of a method for determining a safety parameter value of a target candidate point is shown in the embodiments of the present disclosure.
[0075] The safety parameter value of the target candidate point can be obtained by the following method steps:
[0076] S4111: Determine a plurality of grids in the area where the mobile robot is located as first grids.
[0077] The mobile robot has a certain volume, which occupies a certain polygonal area, which is the vertical projection of the mobile robot. Optionally, in order to prevent the mobile robot from colliding with other obstacles, the polygonal shadow area also needs to be inflated by a certain radius to determine a more appropriate polygonal area, and then determine a plurality of first grids in the polygonal area.
[0078] In this embodiment, the mobile robot is moving in real time, so the area where the mobile robot is located is also updated in real time, and the plurality of first grids occupied by the mobile robot are also updated in real time.
[0079] S4112: Determine the first cost sum of the plurality of first grids according to the preset generation value of the occupied grid and the distance between each first grid and the occupied grid.
[0080] There are a plurality of occupied grids occupied by obstacles around the first grid, and there is a corresponding grid generation value of the first grid relative to each occupied grid. Therefore, each first grid has a plurality of grid generation values. The sum of the plurality of grid generation values is calculated to obtain the generation value of the first grid. The sum of the generation values of the plurality of first grids in the polygonal area occupied by the mobile robot is calculated to determine the first cost sum, thereby facilitating the determination of the safety parameter value of the target candidate point.
[0081] The calculation method of the grid generation value of each first grid is the same as that of the grid generation value of the idle grid in step S1.
[0082] In this embodiment, after the occupied grid is determined, a certain area is radiated with the occupied grid as the center to determine the inflation radius R with the occupied grid as the center. Within the inflation radius R, the grid generation value of the first grid is calculated according to the following formula:
[0083] Grid generation value = exp(-1.0 * inflation coefficient * distance between first grid and occupied grid - lethal radius) * (preset generation value of occupied grid - 1),
[0084] In the formula, the preset generation value of the occupied grid can be 254; the fatal radius can be the geometric shortest side of the projection area where the mobile robot is located; and the inflation coefficient is a coefficient that affects the attenuation degree of the inflation cost, and the greater the coefficient, the faster the attenuation.
[0085] S4113: Determine the safety parameter value of the target candidate point according to the first cost sum of the first grid and the first preset cost threshold.
[0086] The first preset cost threshold is a cost threshold related to the safety parameter value set by the inventors according to business experience or requirements, and the specific value is not limited. If the first cost sum is greater than the first preset cost threshold, it indicates that the target candidate point is closer to the obstacle, and the mobile robot will collide with the obstacle when passing through the target candidate point, and the safety parameter value of the target candidate point is lower.
[0087] In this embodiment, if the first cost sum is less than the first preset cost threshold, it indicates that the target candidate point is farther away from the obstacle, and the safety parameter value of the target candidate point is determined according to the first cost sum and the second cost sum when the first grid is occupied by the obstacle. The calculation formula of the safety parameter value of the target candidate point is:
[0088] factor_safe(p) = (1 - c_sum / c_all),
[0089] Wherein, factor_safe(p) is the safety parameter value of the target candidate point p, c_sum is the first cost sum of the first grid, and c_all is the second cost sum when the first grid is occupied by the obstacle.
[0090] In this embodiment, after determining the safety parameter value of the target candidate point according to the first cost sum of the first grid and the first preset cost threshold, it is convenient to screen out a candidate point with a more appropriate safety distance from the target candidate points as the final target point.
[0091] In an optional embodiment, please refer to Figure 6 , Figure 6 The flowchart of the method for determining the task parameter value of the target candidate point shown in the embodiment of the present disclosure.
[0092] The task parameter value of the target candidate point can be obtained by the following method steps:
[0093] S4121: Obtain the path length of the preset task path, so as to compare the preset task path with the first preset path threshold, and thus determine a more appropriate task parameter value.
[0094] S4122: If the path length of the preset task path is less than or equal to the first preset path threshold, it indicates that the target candidate point is very close to the mobile robot, the preset task path is the best path, and the task parameter value is 1. If the path length of the preset task path is greater than the first preset path threshold and less than the second preset path threshold, the task parameter value is determined according to the path length of the preset task path, the first preset path threshold, and the second preset path threshold. If the path length of the preset task path is greater than or equal to the second preset path threshold, it indicates that the target candidate point is relatively far from the mobile robot, which is not the best task path, and the task parameter value is 0.
[0095] In this embodiment, the mobile robot automatically plans a path based on the current position and the target candidate point, and a plurality of preset task paths can be obtained after path planning. In the process of path planning, there are some short paths or long paths. Based on the movement of the mobile robot, the short path is the most easily reached, so the task parameter value of the short path is set to 1. If the path is long, the mobile robot will waste a certain amount of time when going to the target point, and cannot clean efficiently. Therefore, in this embodiment, the first preset path threshold and the second preset path threshold related to the task path are set. The specific values of the first preset path threshold and the second preset path threshold can be set by the inventor according to business experience or operation requirements, and the specific values of the first preset path threshold and the second preset path threshold are not limited in this application.
[0096] In this embodiment, if the path length of the preset task path is greater than the first preset path threshold and less than the second preset path threshold, the task parameter value of the target candidate point p is determined according to the path length of the preset task path, the first preset path threshold, and the second preset path threshold. The calculation formula of the task parameter value of the target candidate point p is:
[0097] factor_mission(p) = 1-(L-L1) / (L2-L1);
[0098] Wherein, factor_mission(p) is the task parameter value of the target candidate point p, L is the actual path length between the current position of the mobile robot and the target candidate point; L1 is the first preset path threshold set; L2 is the second preset path threshold set.
[0099] In this embodiment, after determining the task parameter value according to the path length of the preset task path, the first preset path threshold, and the second preset path threshold, it is convenient to screen out the candidate point with a relatively suitable path from a plurality of target candidate points as the final target point.
[0100] In an optional embodiment, please refer to Figure 7 , Figure 7A flowchart of a method for determining a service parameter value of a target candidate point is shown in the embodiments of the present disclosure.
[0101] The service parameter value of the target candidate point can be obtained by the following method steps.
[0102] S4131: Determine the center grid of the area where the mobile robot is located, and obtain the distance value to be moved between the center grid and the target candidate point.
[0103] Since the area where the mobile robot is located occupies several grids, it is more reasonable to calculate the distance value to be moved based on the center grid of the area where the mobile robot is located.
[0104] S4132: If the distance value to be moved is 0, the service parameter value is 0; if the distance value to be moved is less than a first preset distance threshold, the service parameter value is determined according to the distance value to be moved and the first preset distance threshold,
[0105] If the distance value to be moved is equal to the first preset distance threshold, the service parameter value is 1; if the distance value to be moved is greater than the first preset distance threshold and less than a second preset distance threshold, the service parameter value is determined according to the distance value to be moved, the first preset distance threshold, and the second preset distance threshold.
[0106] Based on the current position of the mobile robot and the distance value between the target candidate point and the current position of the mobile robot, there is a more appropriate obstacle-avoiding distance value, so that the mobile robot can perform a cleaning task. Therefore, the first preset distance threshold and the second preset distance threshold are set between the target candidate point and the current position of the mobile robot.
[0107] In an optional embodiment, if the distance value to be moved is less than the first preset distance threshold S1, the service parameter value is determined according to the distance value to be moved and the first preset distance threshold S1, and the calculation formula of the service parameter value is:
[0108] factor_bussiness(p) = S / S1;
[0109] Wherein, factor_bussiness(p) is the service parameter value of the target candidate point p, S is the distance value to be moved between the current position of the mobile robot and the target candidate point, and S1 is the first preset distance threshold.
[0110] In an optional embodiment, if the distance value to be moved is greater than the first preset distance threshold and less than the second preset distance threshold, the service parameter value of the target candidate point is determined according to the distance value to be moved, the first preset distance threshold, and the second preset distance threshold.
[0111] Specifically, the calculation formula of the business parameter value of the target candidate point is:
[0112] factor_bussiness(p) = 1 - (S - S1) / S1,
[0113] wherein, factor_bussiness(p) is the business parameter value of the target candidate point p, S is the distance value to be moved between the current position of the mobile robot and the target candidate point, and S1 is the first preset distance threshold.
[0114] In the embodiment, after the business parameter value of the target candidate point is determined according to the distance value to be moved, the first preset distance threshold, and the second preset distance threshold, the candidate point with a more suitable path is selected as the final target point from the target candidate points.
[0115] S42: determining the target parameter value according to the safety parameter value, the business parameter value, the task parameter value, a preset safety coefficient, a preset business coefficient, and a preset task coefficient.
[0116] Since the target parameter value is determined based on the safety parameter value, the business parameter value, and the task parameter value, and the weight of each part affects the calculation of the target parameter value, in order to reasonably plan or adjust each parameter value, a coefficient of each parameter value is set to determine a more ideal target parameter value, so as to select a suitable final target point.
[0117] In the embodiment, the target parameter value can be calculated according to the following formula,
[0118] f(p) = k1 * factor_safe(p) + k2 * factor_mission(p) + k3 * factor_bussiness(p);
[0119] wherein, p is the target candidate point whose target parameter value is to be calculated, f(p) is the target parameter value of p, factor_safe(p) is the safety parameter value of p, k1 is the preset safety coefficient, factor_mission(p) is the task parameter value of p, k2 is the preset task coefficient, factor_bussiness(p) is the business parameter value of p, and k3 is the preset business coefficient.
[0120] The values of k1, k2, and k3 in the above target parameter value calculation formula are weight coefficients set by the inventor according to business experience or requirements. Different target parameter values can be calculated based on different weight coefficients, and the specific weight coefficients are not limited in the disclosure.
[0121] S43: comparing the target parameter values of the target candidate points, and determining the target candidate point with the largest target parameter value as the final target point.
[0122] After the target parameter values of the target candidate points are calculated, the target parameter values can be compared to determine the final target point. The final target point is a target point that can bypass the obstacle and facilitate planning of a suitable path.
[0123] In an optional embodiment, the obstacle bypassing target point determination method further includes the following steps:
[0124] The final target point is updated in real time based on the current grid of the mobile robot.
[0125] The final target point is updated in real time, so that the mobile robot can update the task path in real time and guide the mobile robot to the reachable position of the mobile area for timely and effective cleaning.
[0126] By applying the above technical solutions of the present application, the occupied grids occupied by the obstacles and the grids not occupied by the obstacles are assigned with a cost value, so as to filter all the grids in the grid map that can be reached by the mobile robot, and based on the preset task path, a plurality of target candidate points are filtered out, and the target parameters of each target candidate point are calculated based on the safety parameter, the task parameter and the business parameter, so as to determine the final target point. The obtained final target point is a relatively reasonable target point, which can bypass the obstacles on the grid map and facilitate determination of a relatively suitable task path, thereby facilitating guiding of the robot to the final target point for efficient cleaning, and use is convenient.
[0127] According to a second aspect of the embodiments of the present disclosure, an obstacle bypassing target point determination device is disclosed, which can be used to execute the contents of the obstacle bypassing target point determination method of the corresponding embodiments of the present application and has the corresponding functions and beneficial effects. For details not disclosed in the obstacle bypassing target point determination device embodiments of the present application, please refer to the contents of the obstacle bypassing target point determination method of the present application.
[0128] Please refer to Figure 8 , Figure 8 The structure diagram of the obstacle bypassing target point determination device shown in the embodiments of the present disclosure.
[0129] The obstacle bypassing target point determination device 800 includes:
[0130] The grid cost determination module 801 is configured to obtain the grid map of the mobile area, determine the occupied grids and the idle grids in the grid map, and determine the grid cost value of each idle grid according to the preset cost value of the occupied grid and the distance between the idle grid and the occupied grid.
[0131] The reachable grid determination module 802 is configured to determine a reachable grid of the mobile robot according to the grid value of the idle grid.
[0132] The target candidate point determination module 803 is configured to determine all reachable grids on the preset task path as target candidate points based on the preset task path.
[0133] The target point determination module 804 is configured to perform target parameter calculation on the target candidate points to obtain target parameter values, and determine a final target point according to the target parameter values. The target parameter values include a safety parameter value, a task parameter value and a business parameter value.
[0134] The embodiment filters all grids reachable by the mobile robot in the grid map by assigning a value to the occupied grid occupied by the obstacle and the grid not occupied by the obstacle, filters a plurality of target candidate points based on the preset task path, and performs target parameter calculation on each target candidate point based on the safety parameter, the task parameter and the business parameter, so as to determine the final target point. The final target point obtained is a more reasonable target point, which can bypass the obstacle on the grid map and facilitate determination of a more appropriate task path, thereby facilitating guiding the robot to the final target point for efficient cleaning, and use is more convenient.
[0135] It should be noted that the obstacle-avoiding target point determination apparatus provided in the above embodiment is only used as an example for dividing the above functional modules when the obstacle-avoiding target point determination method is performed. In actual application, the above functions can be completed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the above described functions. In addition, the obstacle-avoiding target point determination apparatus and the obstacle-avoiding target point determination method provided in the above embodiment belong to the same concept, and the implementation process is described in detail in the embodiments, which will not be repeated here.
[0136] According to a third aspect of the embodiments of the present disclosure, an intelligent device is provided. Referring to Figure 9 , Figure 9 is a structural schematic diagram of the intelligent device according to the embodiments of the present disclosure.
[0137] The intelligent device includes a processor 110 and a memory 120; the memory 120 is electrically connected with the processor 110; wherein the memory 120 stores a computer program, and the computer program is adapted to be loaded and executed by the processor 110 to perform the obstacle-avoiding target point determination method as described in the above embodiments.
[0138] The intelligent device 100 further includes a moving device 130, the moving device 130 is connected with the processor 110 through a communication bus 140, the moving device 130 receives a driving signal of the processor 110 to drive the mobile robot to the final target point to perform a cleaning task.
[0139] The intelligent device 100 can further include a user interface, a network interface, a cleaning device, and the like.
[0140] The user interface can include an interface for connecting a display screen and an interface for connecting an environment information acquisition device. Optionally, the user interface can further include a standard wired interface and a wireless interface.
[0141] The network interface can optionally include a standard wired interface and a wireless interface (e.g., a WIFI interface).
[0142] The processor 110 can include one or more processing cores. The processor 110 connects various parts in the entire intelligent device 100 through various interfaces and lines, executes various functions of the intelligent device 100 and processes data by running or executing instructions, programs, code sets or instruction sets stored in the processor 110, and calling data stored in the memory 120. Optionally, the processor 110 can be implemented in at least one of a hardware form of a digital signal processing (DSP), a field-programmable gate array (FPGA), and a programmable logic array (PLA). The processor 110 can be integrated with a combination of one or more of a central processing unit (CPU), a graphics processing unit (GPU), and a modem. Among them, the CPU mainly processes operating systems, user interfaces, and application programs; the GPU is responsible for rendering and drawing the content to be displayed by the display screen; and the modem is used for processing wireless communication. It can be understood that the above-mentioned modem can also not be integrated into the processor 110, but can be implemented by a separate chip.
[0143] The memory 120 can include a random access memory (RAM) and a read-only memory (ROM). Optionally, the memory 120 includes a non-transitory computer-readable storage medium. The memory 120 can be configured to store instructions, programs, codes, code sets, or instruction sets. The memory 120 can include a program storage area and a data storage area. The program storage area can be configured to store instructions for implementing an operating system, instructions for at least one function (such as a touch function, a sound playing function, an image playing function, etc.), instructions for implementing the above-mentioned various method embodiments, etc. The data storage area can be configured to store data related to the above-mentioned various method embodiments, etc. The memory 120 can optionally be at least one storage device located away from the processor 110. As shown in Figure 9 The memory 120 as a computer storage medium can include an operating system, a network communication module, a user interface module, and an operating application program of the smart device.
[0144] In the smart device 100 as shown in Figure 9 In the smart device 100 as shown in, the user interface is mainly configured to provide an input interface for a user to input data. The processor 110 can be configured to call the operating application program of the smart device stored in the memory 120 and perform the related operations in the above-mentioned method for determining a target point for obstacle avoidance.
[0145] The above-mentioned smart device can be configured to perform the method for determining a target point for obstacle avoidance according to the embodiments of the present application and has the corresponding functions and beneficial effects.
[0146] According to a fourth aspect of the embodiments of the present disclosure, a computer readable storage medium is provided, and the computer readable storage medium has stored thereon a computer program. The computer program is executed by a processor to implement the related operations in the obstacle point determination method according to any one of the above embodiments, and has the corresponding functions and advantages. The computer readable medium includes permanent and non-permanent, removable and non-removable media, and can be implemented by any method or technology to store information. The information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information accessible to a computing device. According to the definition herein, the computer readable medium does not include transitory computer readable media such as modulated data signals and carriers.
[0147] It should also be noted that the terms "comprising", "containing", or any other variant thereof are intended to cover a non-exclusive inclusion, such that a process, method, article or apparatus that comprises a list of elements does not only include those elements, but can also include other elements not expressly listed or inherent to such process, method, article or apparatus. Without more limitations, the element defined by the phrase "comprising a" does not exclude the presence of additional identical elements in the process, method, article or apparatus that includes the element.
[0148] It should be noted that the above is only the preferred embodiment of the present application and the technical principle applied. Those skilled in the art will understand that the present application is not limited to the specific embodiments described herein, and those skilled in the art can make various obvious changes, readjustments and substitutions without departing from the scope of the present application. Therefore, although the present application has been described in detail through the above embodiments, the present application is not limited to the above embodiments, and can include more other equivalent embodiments without departing from the concept of the present application, and the scope of the present application is determined by the scope of the appended claims.
Claims
1. A method for determining a point around an obstacle, characterized in that, The method comprises the following steps: acquiring a grid map of a moving area, determining occupied grids and idle grids in the grid map, and determining a grid generation value of each idle grid according to a preset generation value of the occupied grids and a distance between the idle grids and the occupied grids; determining reachable grids of a mobile robot according to the grid generation value of the idle grids; the reachable grids are grids in the grid map that are not occupied by obstacles and can be reached; determining target candidate points on the reachable grids on a preset task path based on the preset task path; the preset task path is a plurality of task paths obtained by the mobile robot automatically planning a path based on a current position and a target position; calculating target parameter values of a plurality of target candidate points to obtain a final target point according to the target parameter values; the target parameter values comprise a safety parameter value, a task parameter value and a business parameter value; the safety parameter value is an index of safe obstacle avoidance; the task parameter value is an index set according to a length of the task path; and the business parameter value is an index determined according to a distance to be moved between the plurality of target candidate points and a center grid of an area where the mobile robot is located.
2. The around-obstacle target point determination method according to claim 1, characterized by, The method of calculating target parameter values of a plurality of target candidate points to obtain a final target point according to the target parameter values comprises: respectively acquiring a safety parameter value, a task parameter value and a business parameter value of the target candidate points; determining the target parameter values according to the safety parameter values, the business parameter values, the task parameter values, a preset safety coefficient, a preset business coefficient and a preset task coefficient; comparing the target parameter values of the plurality of target candidate points, and determining the target candidate point with the largest target parameter value as the final target point.
3. The method according to claim 2, wherein The method of acquiring the safety parameter value of the target candidate point comprises: determining a plurality of grids of an area where the mobile robot is located as first grids; determining a first total cost of a plurality of first grids according to a preset generation value of the occupied grids and a distance between the first grids and the occupied grids; determining the safety parameter value of the target candidate point according to the first total cost of the first grids and a first preset cost threshold.
4. The method according to claim 3, wherein The method of determining the safety parameter value according to the first total cost of the first grids and a first preset cost threshold comprises: if the first total cost is less than the first preset cost threshold, determining the safety parameter value according to the first total cost and a second total cost when the first grid is occupied by an obstacle, if the first total cost is greater than or equal to the first preset cost threshold, the safety parameter value is 0.
5. The method of claim 2, wherein, The method of acquiring the task parameter value of the target candidate point comprises: acquiring a path length of a preset task path; if the path length of the preset task path is less than or equal to a first preset path threshold, the task parameter value is 1, if the path length of the preset task path is greater than the first preset path threshold and less than the second preset path threshold, determining the task parameter value according to the path length of the preset task path, the first preset path threshold, and the second preset path threshold, if the path length of the preset task path is greater than or equal to the second preset path threshold, the task parameter value is 0.
6. The method of claim 2, wherein, The method further comprises the following steps: determining a center grid of the area where the mobile robot is located, and obtaining a distance to be moved value between each of the target candidate points and the center grid; if the distance to be moved value is 0, the service parameter value is 0, if the distance to be moved value is less than the first preset distance threshold, determining the service parameter value according to the distance to be moved value and the first preset distance threshold, if the distance to be moved value is equal to the first preset distance threshold, the service parameter value is 1, if the distance to be moved value is greater than the first preset distance threshold and less than the second preset distance threshold, determining the service parameter value according to the distance to be moved value, the first preset distance threshold, and the second preset distance threshold.
7. The method of claim 1, wherein, The method further comprises the following steps: determining the idle grids with a grid cost value less than a second preset cost threshold as predicted reachable grids; based on a task path that must be passed between the current grid where the mobile robot is located and the predicted reachable grids, if the predicted reachable grids on the task path are blocked by the occupied grids, revising the predicted reachable grids that are blocked as unreachable grids, and determining the predicted reachable grids that are not blocked by the occupied grids as reachable grids.
8. The method of claim 1, wherein, The method further comprises the following steps: updating the final target point in real time based on the current grid of the mobile robot.
9. An around barrier target point determination apparatus characterized by comprising: The method further comprises the following steps: a grid cost determination module, configured to obtain a grid map of a moving area, determine occupied grids and idle grids in the grid map, and determine a grid cost value of each of the idle grids according to a preset cost value of the occupied grids and a distance between the idle grids and the occupied grids; a reachable grid determination module, configured to determine reachable grids that can be reached by a mobile robot according to the grid cost value of the idle grids; the reachable grids are grids in the grid map that are not occupied by obstacles and can be reached; a target candidate point determination module, configured to determine all reachable grids on a preset task path as target candidate points based on the preset task path; the preset task path is a plurality of task paths obtained after the mobile robot automatically plans a path based on a current position and a target position; The target point determination module is configured to perform target parameter calculation on the target candidate points to obtain target parameter values, and determine a final target point according to the target parameter values. The target parameter values include a safety parameter value, a task parameter value, and a service parameter value. The safety parameter value is an index of a safe obstacle avoidance. The task parameter value is an index set according to the length of a task path. The service parameter value is an index determined according to a distance to be moved between the target candidate points and a center grid of a region where the mobile robot is located.
10. A smart device, comprising: Comprise: a processor and a memory; the memory is electrically connected with the processor; wherein the memory stores a computer program, and the computer program is suitable for being loaded and executed by the processor to implement the obstacle avoidance target point determination method in any one of claims 1 to 8.
11. A computer readable storage medium, characterized in that, A computer program is stored thereon, and the computer program is executed by a processor to implement the obstacle avoidance target point determination method in any one of claims 1 to 8.
Citation Information
Patent Citations
Robot control method and device and electronic equipment
CN108983776A
Mobile robot path planning method in dynamic environment
CN109782763A
Robot path planning method and device and robot
CN111399516A