Robot, path planning method and apparatus therefor and storage medium
By analyzing the robot's motion trajectory and closed path type, the robot's exit path is determined, which solves the problem of robot spinning in narrow channels and improves task execution efficiency.
Patent Information
- Application Number
- PCT/CN2023/141829
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-11-16
- Filing Date
- 2023-12-26
- Publication Date
- 2025-05-22
AI Technical Summary
In some special scenarios, the robot may enter a narrower channel and be in an abnormally closed rotation state, resulting in the inability to complete the task efficiently.
By obtaining the motion trajectory of the robot, estimating whether its moving path meets the preset closed path conditions, and determining the exit path of the robot according to the type of the closed path, thereby controlling the robot to exit the closed path.
It effectively reduces the chance of the robot being in a repeated circle state and improves the robot's task execution efficiency.
Smart Images

Figure CN2023141829_22052025_PF_FP_ABST
Abstract
Description
Robot, path planning method, device and storage medium thereof
[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on November 16, 2023, with application number 202311551977.8 and invention name “Robot and its path planning method, device and storage medium”, the entire contents of which are incorporated by reference into this application. Technical Field
[0002] The present application relates to the field of path planning, and in particular to a robot and its path planning method, device and storage medium. Background Art
[0003] When performing a task, intelligent robots like robot vacuums plan their paths based on obstacle information in the scene. For example, when a robot vacuum is cleaning a room, it can flexibly plan its cleaning path based on the obstacles in the scene, adapting to the cleaning requirements of different scenarios.
[0004] However, in some special scenarios, such as when there are narrow passages in the scene, when the robot enters the narrow passage, it may cause the sweeping robot to be in an abnormally closed circle state, which is not conducive to the robot completing the set task intelligently and efficiently. Technical issues
[0005] In view of this, the embodiments of the present application provide a robot and its path planning method, device and storage medium to solve the problem in the prior art that the robot may be in an abnormally closed circle state for a long time, which is not conducive to the efficient completion of the set task. Technical Solutions
[0006] A first aspect of an embodiment of the present application provides a path planning method for a robot, the method comprising:
[0007] Get the robot's motion trajectory;
[0008] estimating, based on the motion trajectory, that the movement path of the robot satisfies a preset closed path condition, and determining the type of the closed path;
[0009] An exit path of the robot is determined according to the type of the closed path, and the robot is controlled to exit the closed path according to the exit path.
[0010] In conjunction with the first aspect, in a first possible implementation of the first aspect, estimating, based on the motion trajectory, whether the movement path of the robot satisfies a preset closed path condition and determining the type of the closed path includes:
[0011] Get the motion path corresponding to the motion trajectory along the edge;
[0012] determining an expansion profile of the robot along the side according to the motion path;
[0013] When the movement path of the robot intersects the expansion contour along the side, the movement path of the robot is determined to be a clockwise closed path.
[0014] In combination with the first possible implementation manner of the first aspect, in a second possible implementation manner of the first aspect, determining the expansion profile of the robot along the side according to the motion path includes:
[0015] performing expansion processing on the motion path to obtain an expansion area corresponding to the motion path;
[0016] determining a contour of the dilated region;
[0017] The contour along the side of the expansion area is intercepted to obtain the expansion contour along the side.
[0018] In combination with the first possible implementation manner of the first aspect, in a third possible implementation manner of the first aspect, determining an exit path of the robot according to the type of the closed path, and controlling the robot to exit the closed path according to the exit path includes:
[0019] According to the clockwise closed path, the robot is controlled to rotate a predetermined angle so that the robot exits the closed path in the reverse direction.
[0020] In combination with the first aspect, in a fourth possible implementation of the first aspect, estimating, based on the motion trajectory, whether the movement path of the robot satisfies a preset closed path condition and determining the type of the closed path includes:
[0021] Comparing the current posture of the robot with the posture in the motion trajectory;
[0022] When the posture of the robot matches the posture in the motion trajectory, the movement path of the person is determined to be a counterclockwise closed path.
[0023] In combination with the fourth possible implementation manner of the first aspect, in a fifth possible implementation manner of the first aspect, determining an exit path of the robot according to the type of the closed path, and controlling the robot to exit the closed path according to the exit path includes:
[0024] performing expansion processing on the closed path to obtain an expansion area corresponding to the closed path;
[0025] determining an intersection of the robot's edgewise path and an outer contour of the expansion region;
[0026] The exit path is determined according to the intersection point, and the robot is controlled to exit the closed path according to the exit path.
[0027] In combination with the fifth possible implementation manner of the first aspect, in a sixth possible implementation manner of the first aspect, determining the exit path according to the intersection, and controlling the robot to exit the closed path according to the exit path includes:
[0028] When the robot moves to a closing point of the closed path, determining an exit path for the robot to move from the closing point to the intersection point;
[0029] When the robot moves to the intersection according to the exit path, the robot is controlled to move along the outer contour of the expansion area.
[0030] A second aspect of an embodiment of the present application provides a path planning device for a robot, the device comprising:
[0031] A motion trajectory acquisition unit, used to acquire the motion trajectory of the robot;
[0032] a closure estimation unit, configured to estimate, based on the motion trajectory, whether the movement path of the robot satisfies a preset closed path condition and determine the type of the closed path;
[0033] An exit unit is used to determine an exit path of the robot according to the type of the closed path, and control the robot to exit the closed path according to the exit path.
[0034] A third aspect of an embodiment of the present application provides a robot, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the steps of the method described in any one of the first aspects are implemented.
[0035] A fourth aspect of an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method described in any one of the first aspects are implemented. Beneficial effects
[0036] The beneficial effects of the embodiments of the present application compared with the prior art are as follows: the embodiments of the present application obtain the motion trajectory of the robot, and estimate whether the robot's moving path meets the conditions of a predetermined closed path based on the motion trajectory. If the closed path conditions are met, the type of the closed path is determined, and the robot's exit path is determined according to the type of the closed path. The robot is controlled to exit the closed path based on the determined exit path, thereby effectively reducing the probability of the robot being in a state of repeated circles and improving the robot's task execution efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the embodiments or descriptions of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0038] FIG1 is a schematic diagram of generating a clockwise closed path provided by an embodiment of the present application;
[0039] FIG2 is a schematic diagram of generating a counterclockwise closed path provided by an embodiment of the present application;
[0040] FIG3 is a schematic diagram of an expected path of a clockwise closed path provided in an embodiment of the present application;
[0041] FIG4 is a schematic diagram of an expected path of a counterclockwise closed path provided in an embodiment of the present application;
[0042] FIG5 is a schematic diagram of an implementation flow of a robot path planning method provided in an embodiment of the present application;
[0043] FIG6 is a schematic diagram of a curve of a motion path provided in an embodiment of the present application;
[0044] FIG7 is a schematic diagram of a motion path after expansion processing provided by an embodiment of the present application;
[0045] FIG8 is a schematic diagram of an outline of an expansion area provided in an embodiment of the present application;
[0046] FIG9 is a schematic diagram of a cut-off edge profile provided in an embodiment of the present application;
[0047] FIG10 is a schematic diagram of a route that deviates from a clockwise closed path provided in an embodiment of the present application;
[0048] FIG11 is a schematic diagram of an expansion area of a counterclockwise closed path provided by an embodiment of the present application;
[0049] FIG12 is a schematic diagram of the outer contour of an expansion region provided in an embodiment of the present application;
[0050] FIG13 is a schematic diagram of the intersection of an outer contour and a motion path provided in an embodiment of the present application;
[0051] FIG14 is a schematic diagram of a route that deviates from a counterclockwise closed path provided in an embodiment of the present application;
[0052] FIG15 is a schematic diagram of a path planning device for a robot provided in an embodiment of the present application;
[0053] FIG16 is a schematic diagram of a robot provided in an embodiment of the present application. Modes for Carrying Out the Invention
[0054] In the following description, specific details such as specific system structures and techniques are provided for purposes of illustration rather than limitation to facilitate a thorough understanding of the embodiments of the present application. However, it will be apparent to those skilled in the art that the present application may be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to avoid obscuring the description of the present application with unnecessary detail.
[0055] In order to illustrate the technical solution described in this application, specific embodiments are provided below.
[0056] When the robot is performing a task, there may be obstacles in the task scene that form narrow passages. The robot has a certain probability of passing through the passage, but also a certain probability of not passing through the passage, which may cause the robot to continue to circle.
[0057] As shown in Figure 1, there is a narrow passage at position ②. The width of this passage is slightly larger than the width of the robot (which can be a sweeping robot, for example). When the robot moves from position ① to position ②, there is a certain probability that the robot will pass through this passage, but there is also a certain probability that it will not pass through this passage. If the robot fails to pass through this passage, it will move to position ③, move along the obstacle to position ⑤, and then move from another direction to position ② in the narrow passage, and then move back to positions ③, ④, and ⑤. If the robot can pass through this passage normally at this time, it will cause the sweeping robot to circle clockwise around the obstacle, preventing the robot from moving to other positions.
[0058] In a possible implementation scenario, the obstacle might be a dynamic obstacle. For example, position ② is not a narrow passage, but a dynamic obstacle. When the robot moves to position ⑤, the dynamic obstacle widens the passage at position ②, causing the robot to circle around the obstacle in a clockwise direction.
[0059] For the abnormally closed situation shown in Figure 1, the expected path of the robot is: the robot does not need to pass through the narrow channel, and moves from position ⑤ to position ⑥, position ⑦ and position ⑧ in sequence according to the path shown in Figure 2, thereby jumping out of the closed path of the robot circling around the obstacle.
[0060] As shown in Figure 3, when the robot moves from position ① to position ②, it has a certain probability of passing through the channel to reach position ③, then to positions ④ and ⑤, and finally to position ⑥. If the robot fails to pass through the narrow channel area, it will cause the robot to repeat the counterclockwise movement, resulting in the robot failing to complete the scheduled task effectively and falling into an inefficient cycle.
[0061] For the abnormal closure situation shown in FIG3 , under ideal circumstances, as shown in FIG4 , the expected path of the robot is: When the robot moves to position ⑥, the robot passes through the channel and moves to position ⑦ and position ⑧ successively.
[0062] Based on the existing abnormal closure situation and the desired motion path, the embodiment of the present application proposes a robot path planning method, as shown in Figure 5, which includes:
[0063] In S501 , the motion trajectory of the robot is obtained.
[0064] The robots in the embodiments of the present application include robots that need to move along the edge, such as sweeping robots.
[0065] During the robot's movement, the robot's motion trajectory can be collected in real time to facilitate comparison of the robot's current position with the previous motion trajectory to determine whether the robot has entered a closed path or is about to enter a closed path.
[0066] In S502 , it is estimated that the movement path of the robot meets a preset closed path condition based on the motion trajectory, and the type of the closed path is determined.
[0067] When determining whether the robot's moving path meets the closed path conditions, different detection methods can be used according to different closed path types.
[0068] For example, for the clockwise closed path shown in Figure 2, i.e., the robot's closed path along a clockwise motion, the robot's current pose can be compared with the poses in the motion trajectory to determine whether they match the poses in the historical motion trajectory. If the current pose matches the poses in the historical motion trajectory, then the robot's current motion path can be determined to be a closed path.
[0069] According to the expected path shown in Figure 2, ideally, the robot's expected path does not require passing through the channel. However, using pose matching requires the robot to enter the channel and then exit the channel after detecting a closed path. This detection method is not conducive to improving the robot's path planning efficiency.
[0070] In order to improve the path planning efficiency of the robot, in the embodiment of the present application, the detection method for the closed path in the clockwise direction adopts an estimation method to determine whether the robot is about to enter the closed path.
[0071] The system can detect whether the robot's path is along an edge, that is, whether it is moving along an edge (along a wall or obstacle). If the robot is moving along an edge, the robot's trajectory is obtained. The path corresponding to the trajectory is expanded, and the expanded contour is intercepted to obtain the expanded contour located along the edge, that is, the expanded contour close to the obstacle. When the robot's current position coincides with the expanded contour along the edge, it indicates that the robot is about to enter a closed path, and a route for the robot to exit the closed path can be planned in a timely manner.
[0072] Edge detection is performed on the robot's motion trajectory to determine its edge-to-edge trajectory during movement. Specifically, if the robot is detected moving along an obstacle, the robot's motion trajectory is an edge-to-edge trajectory. Based on the edge-to-edge trajectory, the edge-to-edge motion path can be obtained. Figure 6 shows the curve of the motion path obtained through edge detection.
[0073] To promptly estimate when the robot is about to enter a closed path, the motion path along the edge can be expanded to obtain the corresponding expanded area. As shown in Figure 7, the expansion area corresponding to the motion path is obtained by expanding the motion path. The expansion radius can be determined based on the size of the obstacle and the robot's radius. For example, the expansion radius can be smaller than the sum of the robot's radius and the width of the obstacle. By adjusting the expansion radius, the probability of false detection is reduced when the robot moves along an obstacle.
[0074] For example, during the robot's motion, the width of the obstacle can be detected to obtain the sum of the obstacle width and the robot's radius. The difference between the sum and the expansion radius is set to be greater than 0 and less than a first threshold. This allows the robot to detect that it is about to enter a closed path by simply moving toward the channel when passing through channel position ⑤ as shown in Figure 1.
[0075] After the expansion process, we obtain the expanded contour shown in Figure 8. To accurately detect whether the robot is about to enter a closed path, we need to intercept the expanded contour to obtain the expanded contour along the edge, that is, the contour close to the obstacle. Figure 9 shows a schematic diagram of the intercepted expanded contour along the edge. By intercepting the contour along the edge for estimation, the probability of false detection can be effectively reduced.
[0076] When estimating a closed path based on the expanded contour along the intercepted edge, as shown in Figure 10, when the robot moves from position ⑤ to position ⑥ within the channel, position ⑥ coincides with the expanded contour along the edge, or in other words, the robot's motion path coincides with the expanded contour along the edge, confirming that the robot is about to enter a closed path. By detecting the expanded contour along the edge, an estimation result can be generated before a closed path is fully formed, and the closed path can be determined to be a clockwise closed path. This effectively reduces the number of path planning attempts by the robot to exit the channel, thereby improving the effectiveness of the robot's path planning.
[0077] The expanded contours along the edges can effectively estimate that the robot is about to enter a closed path in the clockwise direction. At the same time, the robot can also detect closed paths in the counterclockwise direction. If the robot does not detect a closed path in the clockwise direction and the robot's current posture matches the posture in the motion trajectory, it can be determined that the robot is in a closed path in the counterclockwise direction.
[0078] In S503 , an exit path of the robot is determined according to the type of the closed path, and the robot is controlled to exit the closed path according to the exit path.
[0079] When the robot is detected as being in a closed clockwise path, it can be controlled to rotate by a predetermined angle, so that the robot's orientation is different from the orientation it had when it moved to the overlap point, thereby generating an exit path. This exit path can be in the opposite direction of the previous orientation, allowing the robot to escape the passage and obstacles. As shown in Figure 10, the robot can be controlled to rotate counterclockwise to an angle greater than 90 degrees and less than 180 degrees. After moving at this angle, the robot collides with the wall and then moves along the wall to positions 7 and 8.
[0080] When it is detected that the robot is in a closed path in a counterclockwise direction, that is, when the robot moves in a counterclockwise direction in the closed path, the movement direction and movement path of the robot can be determined by the expansion profile.
[0081] As shown in Figure 11, when the robot is detected on a closed path in a counterclockwise direction, the closed path can be expanded to obtain the expanded region shown in Figure 11. The expanded region after the expansion process can generally include both the inner and outer contours, as shown in Figure 12, or, if possible, only the outer contour. For a closed path in a counterclockwise direction, the expansion radius can be greater than the sum of the robot radius and the width of the obstacle, that is, the expanded outer contour is outside the obstacle, and the robot can move along this outer contour along the obstacle.
[0082] The intersection of the motion path corresponding to the robot's motion trajectory and the outer contour of the expansion area can be detected. When it is detected that the robot is at the closing point of the closed path, the robot can be controlled to move from the closing point to the intersection, thereby making the robot break away from the path of repeated circles of the closed path and leave the closed path from the channel.
[0083] As shown in Figure 13, when the robot is at closed point A and detects the intersection of the motion path and the outer contour at point B, it can generate an exit path from A to B, allowing the robot to exit the closed path. When the robot moves to position B, it can further control its motion based on the predetermined outer contour of the expansion area. For example, it can move along the outer contour of the expansion area, moving to the right of the obstacle.
[0084] As shown in Figure 14, according to the exit path planning method for a counterclockwise closed area, when the robot is at position ⑦, it is detected that the robot is on a counterclockwise closed path. Based on the intersection of the robot's motion path and the outer contour of the expansion area, i.e., position ⑧, an exit path can be generated from position ⑦ to position ⑧. After the robot reaches position ⑧, it can be controlled to move to position 9 along the outer contour of the expansion area using the right-movement control strategy. The robot can then continue to move along the outer contour of the expansion area or continue to move around the obstacle.
[0085] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0086] FIG15 is a schematic diagram of a robot path planning device provided in an embodiment of the present application. As shown in FIG15 , the device includes:
[0087] A motion trajectory acquisition unit 1501 is used to acquire the motion trajectory of the robot;
[0088] a closure estimation unit 1502 for estimating, based on the motion trajectory, whether the movement path of the robot satisfies a preset closed path condition and determining the type of the closed path;
[0089] The exit unit 1503 is configured to determine an exit path for the robot according to the type of the closed path, and control the robot to exit the closed path according to the exit path.
[0090] In a possible implementation, the closure estimation unit includes:
[0091] A motion path acquisition subunit, used to acquire the motion path corresponding to the motion trajectory along the edge;
[0092] an expansion profile determining subunit, configured to determine an expansion profile of the robot along the side according to the motion path;
[0093] The clockwise closed path determining subunit is configured to determine that the moving path of the robot is a clockwise closed path when the moving path of the robot intersects the expansion contour along the side.
[0094] In a possible implementation, the expansion profile determination subunit includes:
[0095] an expansion module, configured to perform expansion processing on the motion path to obtain an expansion area corresponding to the motion path;
[0096] A contour determination module, configured to determine the contour of the expansion area;
[0097] The contour interception module is used to intercept the contour along the side of the expansion area to obtain the expansion contour along the side.
[0098] In a possible implementation, the exit unit is configured to control the robot to rotate by a predetermined angle according to the clockwise closed path, so that the robot exits the closed path in the reverse direction.
[0099] In a possible implementation, the closure estimation unit includes:
[0100] a posture comparison subunit, configured to compare the current posture of the robot with the posture in the motion trajectory;
[0101] The counterclockwise closed path determination subunit is used to determine that the moving path of the person is a counterclockwise closed path when the posture of the robot matches the posture in the motion trajectory.
[0102] In a possible implementation, the exit unit includes:
[0103] an expansion subunit, configured to perform expansion processing on the closed path to obtain an expansion area corresponding to the closed path;
[0104] an intersection determination subunit, configured to determine an intersection point between the edge path of the robot and the outer contour of the expansion area;
[0105] An exit subunit is used to determine the exit path according to the intersection point, and control the robot to exit the closed path according to the exit path.
[0106] In a possible implementation, the exit subunit includes:
[0107] an exit path determination module, configured to determine an exit path for the robot to move from the closed point to the intersection when the robot moves to the closed point of the closed path;
[0108] A contour movement module is configured to control the robot to move along the outer contour of the expansion area when the robot moves to the intersection according to the exit path.
[0109] The robot path planning device shown in FIG15 corresponds to the robot path planning method shown in FIG5 .
[0110] Figure 16 is a schematic diagram of a robot provided in an embodiment of the present application. As shown in Figure 16 , the robot 16 in this embodiment includes a processor 160, a memory 161, and a computer program 162 stored in the memory 161 and executable on the processor 160, such as a robot path planning program. When the processor 160 executes the computer program 162, it implements the steps of each of the aforementioned robot path planning method embodiments. Alternatively, when the processor 160 executes the computer program 162, it implements the functions of each module / unit in each of the aforementioned device embodiments.
[0111] For example, the computer program 162 may be divided into one or more modules / units, which are stored in the memory 161 and executed by the processor 160 to implement the present application. The one or more modules / units may be a series of computer program instruction segments capable of performing specific functions, and the instruction segments are used to describe the execution process of the computer program 162 in the robot 16.
[0112] The robot may include, but is not limited to, a processor 160 and a memory 161. Those skilled in the art will appreciate that FIG16 is merely an example of the robot 16 and does not limit the robot 16. The robot 16 may include more or fewer components than shown, or may combine certain components or different components. For example, the robot may also include input and output devices, network access devices, buses, and the like.
[0113] The processor 160 may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor.
[0114] The memory 161 may be an internal storage unit of the robot 16, such as a hard drive or memory of the robot 16. The memory 161 may also be an external storage device of the robot 16, such as a plug-in hard drive, a Smart Media Card (SMC), a Secure Digital (SD) card, a flash memory card, etc. equipped on the robot 16. Furthermore, the memory 161 may include both an internal storage unit of the robot 16 and an external storage device. The memory 161 is used to store the computer program and other programs and data required by the robot. The memory 161 may also be used to temporarily store data that has been output or is about to be output.
[0115] Those skilled in the art can clearly understand that, for the convenience and brevity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In actual applications, the above-mentioned functions can be distributed and completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated into one processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.
[0116] In the above embodiments, the description of each embodiment has its own focus. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant description of other embodiments.
[0117] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0118] In the embodiments provided in this application, it should be understood that the disclosed devices / terminal equipment and methods can be implemented in other ways. For example, the device / terminal equipment embodiments described above are merely illustrative. For example, the division of the modules or units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0119] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0120] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0121] If the integrated module / unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the process in the above-mentioned embodiment method, which can also be completed by hardware related to computer program instructions. The computer program can be stored in a computer-readable storage medium, and when the computer program is executed by the processor, it can implement the steps of the above-mentioned various method embodiments. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electric carrier signal, telecommunication signal and software distribution medium. It should be noted that the content contained in the computer-readable medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media do not include electric carrier signals and telecommunication signals.
[0122] The above-described embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. These modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the various embodiments of the present application, and should all be included in the scope of protection of the present application.
Claims
1. A robot path planning method, It is characterized in that The method comprises: Get the robot's motion trajectory; Estimate, based on the motion trajectory, that the movement path of the robot satisfies a preset closed path condition, and determine the type of the closed path; An exit path of the robot is determined according to the type of the closed path, and the robot is controlled to exit the closed path according to the exit path.
2. The method according to claim 1, It is characterized in that Estimating that the movement path of the robot satisfies a preset closed path condition according to the motion trajectory, and determining the type of the closed path, including: Get the motion path corresponding to the motion trajectory along the edge; Determining an expansion profile of the robot along the side according to the motion path; When the movement path of the robot intersects the expansion profile along the side, the movement path of the robot is determined to be a clockwise closed path.
3. The method according to claim 2, It is characterized in that Determining an expansion profile of the robot along the side according to the motion path includes: Performing expansion processing on the motion path to obtain an expansion area corresponding to the motion path; determining a contour of the dilated region; The contour along the side in the expansion region is intercepted to obtain the expansion contour along the side.
4. The method according to claim 2, It is characterized in that Determining an exit path of the robot according to the type of the closed path, and controlling the robot to exit the closed path according to the exit path, comprises: According to the clockwise closed path, the robot is controlled to rotate by a predetermined angle so that the robot exits the closed path in the reverse direction.
5. The method according to claim 1, It is characterized in that Estimating that the movement path of the robot satisfies a preset closed path condition according to the motion trajectory, and determining the type of the closed path, including: Comparing the current posture of the robot with the posture in the motion trajectory; When the posture of the robot matches the posture in the motion trajectory, the moving path of the person is determined to be a counterclockwise closed path.
6. The method according to claim 5, It is characterized in that Determining an exit path of the robot according to the type of the closed path, and controlling the robot to exit the closed path according to the exit path, comprises: Performing expansion processing on the closed path to obtain an expansion area corresponding to the closed path; Determining the intersection of the robot's edge path and the outer contour of the expansion area; The exit path is determined according to the intersection point, and the robot is controlled to exit the closed path according to the exit path.
7. The method according to claim 6, It is characterized in that Determining the exit path according to the intersection, and controlling the robot to exit the closed path according to the exit path, comprises: When the robot moves to the closing point of the closed path, determining an exit path for the robot to move from the closing point to the intersection; When the robot moves to the intersection according to the exit path, the robot is controlled to move along the outer contour of the expansion area.
8. A robot path planning device, It is characterized in that The device comprises: A motion trajectory acquisition unit, used to acquire the motion trajectory of the robot; A closure estimation unit, used to estimate that the movement path of the robot meets a preset closed path condition according to the motion trajectory, and determine the type of the closed path; An exit unit is used to determine an exit path of the robot according to the type of the closed path, and control the robot to exit the closed path according to the exit path.
9. A robot comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, It is characterized in that When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium storing a computer program. It is characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Method of robot sweeping room and robot
CN109343521A
Mobile robot and control method therefor
CN109562519A
Block edge closing processing method, electronic equipment and readable storage medium
CN111436861A
Robot edge control method and device, robot and storage medium
CN114625135A
Robot edge path planning method and device, robot and storage medium
CN116069005A