DEVICE AND METHOD FOR PLANNING ROBOT PATHS
Patent Information
- Application Number
- DE602022019634
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-06-07
- Filing Date
- 2022-03-01
- Publication Date
- 2025-08-20
- Estimated Expiration
- 2042-03-01
AI Technical Summary
Mopping cleaning robots struggle to clean effectively as they rotate in place to change cleaning lines, failing to suck up all sprayed water, and existing path planning methods do not adequately consider turning radius and obstacle avoidance.
A moving path planning apparatus and method that determines an actual moving path using predetermined robot parameters, considering turning radius and obstacle distance, by acquiring sub regions and evaluating preliminary paths based on forward gaze distance and minimum turning radius, using geometric path tracking and evaluation scores.
Enables efficient cleaning by allowing robots to change positions along oval paths, ensuring complete water pickup and optimal obstacle avoidance, enhancing cleaning efficiency and path planning accuracy.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is based on and claims priority under 35 U.S.C. 119 to Korean Patent Application No. 10-2021-0027648 filed in the Korean Intellectual Property Office on March 2, 2021, and Korean Patent Application No. 10-2021-0073685 filed in the Korean Intellectual Property Office on June 7, 2021.BACKGROUND Field
[0002] The present disclosure relates to cleaning robot with a moving path planning apparatus and method for a cleaning robot, and more particularly, to an apparatus and a method for planning a moving path of a cleaning robot.Description of the Related Art
[0003] The most important issue of a mopping cleaning robot is to clean with a brush while spraying water and suck up all the water sprayed on the floor through a water intake at the rear. The mopping cleaning robot of the related art changes the position to a next cleaning line by rotating in place. Therefore, when the cleaning line of the mopping cleaning robot is changed, the mopping cleaning robot cannot suck up all the water sprayed on the floor.
[0004] US 2014 / 0100736 A1 discloses a moving pattern planning apparatus and method which plans a moving pattern for every sub region of a map based on the size of the moving pattern and the space of the sub region.
[0005] US 2020 / 262083 A1 discloses a steering control algorithm for a cleaning robot which constantly computes an arc between a current location of the cleaning robot and a look-ahead point on the predetermined path.
[0006] LI XIAOHUI ET AL: "A unified approach to local trajectory planning and control for autonomous driving along a reference path", 2014 IEEE INTERNATIONAL CONFERENCE ON MECHATRONICS AND AUTOMATION, IEEE, 3 August 2014 (2014-08-03), pages 1716-1721, XP032633774, 001: 10.11 09 / ICMA.2014.6885959, ISBN: 978-1-4799-3978-7 deals with the task of autonomously guiding a vehicle along a known reference path, for example a road.
[0007] Demaitre Eugene: "Trombia Free autonomous street sweeper launched by Trombia Technologies", 29 September 2020 (2020-09-29), XP093182589, Retrieved from the Internet: URL:https: / / www.therobotreport.com / trombia-free-autonomousstreet-sweeper-launched / discloses a robotic cleaner operating outdoors.
[0008] WO 03 / 062936 A1 discloses a cleaning robotSUMMARY
[0009] An object to be achieved by the present disclosure is to provide cleaning robot with a moving path planning apparatus and method for a cleaning robot which determine an actual moving path using a predetermined robot parameter on the basis of a moving path pattern acquired for every sub region of a map.
[0010] Other and further objects of the present invention which are not specifically described can be further considered within the scope easily deduced from the following detailed description and the effect.
[0011] In order to achieve the above-described objects, according to an aspect of the present disclosure, a moving path planning apparatus for a robot includes: a moving path pattern acquiring unit which acquires one or more sub regions from a map and acquires a robot moving path pattern for each of one or more sub regions; and a moving path planning unit which plans an actual moving path of the robot for each of one or more sub regions on the basis of a predetermined robot parameter and the moving path pattern for the sub region.
[0012] Here, the moving path planning unit acquires a plurality of preliminary paths using a forward gaze distance and a minimum turning radius according to the predetermined robot parameter, on the basis of a current position of the robot and determines one preliminary path among the plurality of preliminary paths as the actual moving path of the robot on the basis of a distance from the moving path pattern and a distance from an obstacle.
[0013] Here, the moving path planning unit acquires a plurality of front points which is separated from a center point of the robot by the forward gaze distance at a predetermined angle unit, acquires a preliminary path candidate group by generating an arc connecting the robot and each of the plurality of front points, and acquires preliminary paths having a turning radius which is larger than the minimum turning radium, among the preliminary path candidate group, as the plurality of preliminary paths.
[0014] Here, the moving path planning unit acquires the plurality of front points with respect to a centroid of two steering wheels of the robot and acquires the preliminary path candidate group by generating an arc for each of the plurality of front points using a geometric path tracking method (pure pursuit algorithm).
[0015] Here, the moving path planning unit acquires an evaluation score for each of the plurality of preliminary paths on the basis of the distance from the moving path pattern and the distance from the obstacle and determines a preliminary path having the highest evaluation score, among the plurality of preliminary path, as the actual moving path of the robot.
[0016] Here, the moving path planning unit acquires the evaluation score on the basis of a first distance score acquired on the basis of a distance between the preliminary path and the moving path pattern, a predetermined first weight for the first distance score, a second distance score acquired on the basis of the distance between the preliminary path and the obstacle, and a predetermined second weight for the second distance score, as the distance between the preliminary path and the moving path pattern becomes shorter, a higher score is assigned as the first distance score, and as the distance between the preliminary path and the obstacle becomes longer, a higher score is assigned as the second distance score.
[0017] Here, the moving path pattern acquiring unit acquires a centroid for a target region of the map, acquires a polygon having the maximum size corresponding to the target region while increasing a size of the polygon to a predetermined unit size with reference to the centroid for the target region, acquires the acquired polygon having the maximum size as the sub region, and acquires one or more sub regions from the map by repeatedly performing a process of excluding the polygon having the maximum size acquired as the sub region from the target region, on the target region, until the size of the target region becomes smaller than a robot size according to the predetermined robot parameter.
[0018] Here, the moving path pattern acquiring unit determines a type of the polygon on the basis of a shape of the target region.
[0019] Here, the moving path pattern acquiring unit acquires a centroid for each of one or more sub regions, acquires a plurality of path patterns which is formed of points having the same distance value with respect to the centroid for the sub region in the unit of the predetermined distance interval, and acquires the plurality of acquired path patterns as the moving path pattern for the sub region.
[0020] In order to achieve the above-described objects, according to an aspect of the present disclosure, a moving path planning method for a robot includes: acquiring one or more sub regions from a map and acquiring a robot moving path pattern for each of one or more sub regions; and determining an actual moving path of the robot for each of one or more sub regions on the basis of a predetermined robot parameter and the moving path pattern for the sub region.
[0021] Here, the planning of an actual moving path includes: a first step of acquiring a plurality of preliminary paths using a forward gaze distance and a minimum turning radius according to the predetermined robot parameter, on the basis of a current position of the robot; and a second step of determining one preliminary path among the plurality of preliminary paths as the actual moving path on the basis of a distance from the moving path pattern and a distance from an obstacle.
[0022] Here, in the first step, a plurality of front points which is separated from a centroid of the robot by the forward gaze distance is acquired in the unit of a predetermined angle, a preliminary path candidate group is generated by generating an arc connecting the robot and each of the plurality of front points, and preliminary paths having a turning radius which is larger than the minimum turning radius, among the preliminary path candidate group, are acquired as the plurality of preliminary paths.
[0023] Here, in the second step, an evaluation score for each of the plurality of preliminary paths is acquired on the basis of the distance from the moving path pattern and the distance from the obstacle and a preliminary path having the highest evaluation score, among the plurality of preliminary path, is determined as the actual moving path of the robot.
[0024] Here, in the second step, the evaluation score is acquired on the basis of a first distance score acquired on the basis of a distance between the preliminary path and the moving path pattern, a predetermined first weight for the first distance score, a second distance score acquired on the basis of the distance between a preliminary path and the obstacle, and a predetermined second weight for the second distance score, as the distance between the preliminary path and the moving path pattern becomes shorter, a higher score is assigned as the first distance score, and as the distance between the preliminary path and the obstacle becomes longer, a higher score is assigned as the second distance score.
[0025] In order to achieve the aforementioned technical object, a computer program according to the exemplary embodiment of the present disclosure is stored in a computer-readable recording medium to execute any one of the aforementioned moving path planning methods for a robot on a computer.
[0026] According to the moving path planning apparatus and method for a robot according to the exemplary embodiment of the present disclosure, an actual moving path is determined using a predetermined robot parameter on the basis of a moving path pattern acquired for every sub region of the map to determine an actual moving path of the robot in consideration of the turning radius of the robot.
[0027] The effects of the present invention are not limited to the technical effects mentioned above, and other effects which are not mentioned can be clearly understood by those skilled in the art from the following descriptionBRIEF DESCRIPTION OF THE DRAWINGS
[0028] FIG. 1 is a block diagram illustrating a moving path planning apparatus for a robot according to an exemplary embodiment of the present disclosure; FIG. 2 is a view for explaining a sub region acquiring process according to an exemplary embodiment of the present disclosure; FIG. 3 is a view for explaining a moving path pattern acquiring process according to an exemplary embodiment of the present disclosure in which FIG. 3A illustrates an example of a sub region corresponding to a map and FIG. 3B illustrates an example of a moving path pattern for every sub region illustrated in FIG. 3A; FIG. 4 is a view for explaining a preliminary path acquiring process according to an exemplary embodiment of the present disclosure in which FIG. 4A illustrates an example of a front point and FIG. 4B illustrates an example of an arc corresponding to the front point illustrated in FIG. 4A; FIG. 5 is a view for explaining a change of a length of an arc according to a forward gaze distance according to an exemplary embodiment of the present disclosure; FIG. 6 is a view illustrating an actual moving path determining process according to an exemplary embodiment of the present disclosure; FIG. 7 is a view illustrating an example that a robot moves along an actual moving path according to an exemplary embodiment of the present disclosure; FIG. 8 is a flowchart illustrating a moving path planning method for a robot according to an exemplary embodiment of the present disclosure; and FIG. 9 is a flowchart for explaining sub steps of an actual moving path determining step illustrated in FIG. 8. DETAILED DESCRIPTION OF THE EMBODIMENT
[0029] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. Advantages and characteristics of the present invention and a method of achieving the advantages and characteristics will be clear by referring to exemplary embodiments described below in detail together with the accompanying drawings. However, the present invention is not limited to exemplary embodiments disclosed herein but will be implemented in various different forms. The exemplary embodiments are provided by way of example only so that a person of ordinary skilled in the art can fully understand the disclosures of the present invention and the scope of the present invention. Like reference numerals indicate like elements throughout the specification.
[0030] Hereinafter, an exemplary embodiment of a moving path planning apparatus and method for a robot according to the present disclosure will be described in detail with reference to the accompanying drawings.
[0031] First, a moving path planning apparatus for a robot according to an exemplary embodiment of the present disclosure will be described with reference to FIGS. 1 to 7.
[0032] FIG. 1 is a block diagram illustrating a moving path planning apparatus for a robot according to an exemplary embodiment of the present disclosure; FIG. 2 is a view for explaining a sub region acquiring process according to an exemplary embodiment of the present disclosure; FIG. 3 is a view for explaining a moving path pattern acquiring process according to an exemplary embodiment of the present disclosure in which FIG. 3A illustrates an example of a sub region corresponding to a map and FIG. 3B illustrates an example of a moving path pattern for every sub region illustrated in FIG. 3A; FIG. 4 is a view for explaining a preliminary path acquiring process according to an exemplary embodiment of the present disclosure in which FIG. 4A illustrates an example of a front point and FIG. 4B illustrates an example of an arc corresponding to the front point illustrated in FIG. 4A; FIG. 5 is a view for explaining a change of a length of an arc according to a forward gaze distance according to an exemplary embodiment of the present disclosure; FIG. 6 is a view illustrating an actual moving path determining process according to an exemplary embodiment of the present disclosure; and FIG. 7 is a view illustrating an example that a robot moves along an actual moving path according to an exemplary embodiment of the present disclosure.
[0033] Referring to FIG. 1, a moving path planning apparatus 100 for a robot (hereinafter, referred to as a moving path planning apparatus) according to an exemplary embodiment of the present disclosure determines an actual moving path using a predetermined robot parameter on the basis of a moving path pattern acquired for every sub region of a map.
[0034] Here, the predetermined robot parameter may include a robot size, a robot shape (a rectangle or a circle), a forward gaze distance, a minimum turning radius, or speed information (maximum speed or acceleration).
[0035] In the meantime, the moving path planning apparatus 100 according to the present disclosure is implemented as hardware or software to be loaded in a robot (not illustrated) such as a cleaning robot or a mobile robot. In this case, the moving path planning apparatus 100 loaded in the robot may acquire a moving path pattern for every sub region of a grid map built while the robot moves and determine an actual moving path using the moving path pattern acquired for every sub region and the predetermined robot parameter. By doing this, the robot may move along the actual moving path.
[0036] In other words, the moving path planning apparatus 100 determines an actual moving path of a robot using a predetermined robot parameter to allow a robot to move along a moving path pattern corresponding to a sub region and change the moving pattern to another moving pattern while moving along an oval path, rather than rotating in place. For example, the most important issue of the mopping cleaning robot is to clean with a brush while spraying water and suck up all the water sprayed on the floor through a water intake at the rear. When the mopping cleaning robot changes the position to the next cleaning line by rotation in place, the mopping cleaning robot cannot suck up all the water sprayed on the floor. In contrast, according to the present disclosure, when the position is changed to the next moving path pattern while moving through an oval path such as a bulb shape, the robot may change the position to the next moving path pattern while sucking up all the water sprayed on the floor. That is, the moving path planning apparatus 100 according to the present disclosure may determine an actual moving path of a robot in consideration of a turning radius of a robot.
[0037] To this end, the moving path planning apparatus 100 includes a moving path pattern acquiring unit 110, a moving path determining unit 130, and a moving control unit 150.
[0038] The moving path pattern acquiring unit 110 acquires one or more sub regions in a map.
[0039] To be more specific, the moving path pattern acquiring unit 110 may acquire a centroid for a target region of the map.
[0040] The moving path pattern acquiring unit 110 may acquire a polygon having the maximum size corresponding to the target region while increasing a size of the polygon by a predetermined unit size with reference to the centroid for the target region.
[0041] At this time, the moving path pattern acquiring unit 110 may determine the type of the polygon on the basis of a shape of the target region. For example, the moving path pattern acquiring unit 110 evaluates a similarity between a shape of the target region and polygonal shapes (a triangle, a rectangle, and a pentagon) and determines a polygonal shape having the highest similarity as a shape of the polygon corresponding to the target region.
[0042] The moving path pattern acquiring unit 110 acquires a polygon having the maximum size as a sub region.
[0043] The moving path pattern acquiring unit 110 excludes the polygon having the maximum size which has been acquired as a sub region from the target region.
[0044] The moving path pattern acquiring unit 110 repeats "the process of acquiring a centroid of the target region" -> "the process of acquiring a polygon having the maximum size corresponding to the target region" -> "the process of acquiring the polygon having the maximum size as a sub region" -> "the process of excluding the polygon having the maximum size from the target region" on the target region until the size of the target region becomes smaller than a robot size according to the predetermined robot parameter to acquire one or more sub regions from the map.
[0045] For example, as illustrated in FIG. 2, a centroid for an initial target region (that is, the entire region of the map) of the map may be acquired. When the map is a grid map, a distance value to an obstacle (a black region) such as a wall in the grid map may be acquired in the unit of pixels of the grid map. By doing this, as illustrated in the left of FIG. 2, a center region becomes a centroid of the given grid map. A polygon (that is, a sub region) having the maximum size corresponding to the target region may be acquired while increasing the size of the rectangle with respect to the centroid for the target region. Next, "the process of acquiring a centroid of the target region" -> "the process of acquiring the polygon having the maximum size corresponding to the target region" -> "the process of acquiring the polygon having the maximum size as a sub region" -> "the process of excluding the polygon having the maximum size from the target region" are repeated on the remaining target regions excluding the polygon (that is, the sub region) having the maximum size from the initial target region of the map until the size of the remaining target region becomes smaller than the robot size to acquire one or more sub regions corresponding to the map.
[0046] Further, the moving path pattern acquiring unit 110 may acquire a moving path pattern of the robot for each of one or more sub regions.
[0047] To be more specific, the moving path pattern acquiring unit 110 may acquire a centroid for each of one or more sub regions.
[0048] The moving path pattern acquiring unit 110 may acquire a plurality of path patterns configured by points having the same distance value with respect to the centroid for the sub region in the unit of the predetermined distance interval.
[0049] The moving path pattern acquiring unit 110 may acquire the plurality of acquired path patterns as moving path patterns for the sub regions.
[0050] For example, as illustrated in FIG. 3A, when three sub regions (a first sub region, a second sub region, and a third sub region) are acquired from the map, the moving path pattern acquiring unit 110 may acquire a moving path pattern for each of three sub regions (the first sub region, the second sub region, and the third sub region) as illustrated in FIG. 3B.
[0051] The moving path determining unit 130 may determine an actual moving path of the robot for each of one or more sub regions on the basis of a predetermined robot parameter and the moving path patterns for the sub regions.
[0052] That is, the moving path determining unit 130 may acquire a plurality of preliminary paths using the forward gaze distance and the minimum turning radius according to the predetermined robot parameter on the basis of a current position of the robot. Here, as the forward gaze distance is higher, it is possible to ensure a sufficient distance to avoid the collision.
[0053] To be more specific, the moving path determining unit 130 may acquire a plurality of front points which is separated from the centroid of the robot by the forward gaze distance in the unit of a predetermined angle. At this time, the moving path determining unit 130 may acquire a plurality of front points with respect to a centroid of two steering wheels of the robot. The steering wheel refers to a wheel which adjusts an angle to turn the direction of the robot, among wheels mounted in the robot.
[0054] For example, as illustrated in FIG. 4A, a plurality of front points located to be separated from the centroid of two steering wheels by the forward gaze distance at a predetermined angle in a horizontal direction of an axis perpendicular to a wheel shaft.
[0055] The moving path determining unit 130 generates an arc connecting the robot and the plurality of front points to acquire a preliminary path candidate group. At this time, the moving path determining unit 130 may generate an arc for each of the plurality of front points using a geometric path tracking method (pure pursuit algorithm) which is a method of geometrically determining a curvature which moves from the robot to the front point to acquire a preliminary path candidate group.
[0056] For example, as illustrated in FIG. 4B, the arc connecting the robot and the front point may be generated using the pure pursuit algorithm.
[0057] The moving path determining unit 130 may acquire preliminary paths whose turning radius is larger than a minimum turning radius according to the predetermined robot parameter, among the preliminary path candidate group, as a plurality of preliminary paths.
[0058] For example, as illustrated in FIG. 5, as the forward gaze distance becomes longer, the length of the arc connecting the robot and the front point is changed. At this time, the moving path determining unit 130 may remove preliminary paths whose turning radius is smaller than the minimum turning radius according to the predetermined robot parameter, among the preliminary path candidate group.
[0059] Further, the moving path determining unit 130 determines one of the plurality of preliminary paths as an actual moving path of the robot, on the basis of a distance from the moving path pattern and a distance from the obstacle.
[0060] To be more specific, the moving path determining unit 130 may acquire an evaluation score for each of the plurality of preliminary paths on the basis of the distance from the moving path pattern and the distance from the obstacle.
[0061] At this time, the moving path determining unit 130 may acquire the evaluation score on the basis of a first distance score, a first weight, a second distance score, and a second weight. Here, the first distance score is acquired on the basis of a distance between the preliminary path and the moving path pattern and as the distance between the preliminary path and the moving path pattern becomes shorter, a higher score is assigned as the first distance score. The first weight may be set in advance as a weight for the first distance score. The second distance score is acquired on the basis of the distance between the preliminary path and the obstacle and as the distance between the preliminary path and the obstacle becomes longer, a higher score is assigned as the second distance score. The second weight may be set in advance as a weight for the second distance score.
[0062] For example, the moving path determining unit 130 acquires the evaluation score for the preliminary path by means of an evaluation function expressed by the following Equation 1. f P = α * Ref P + β * Obs P
[0063] Here, f(P) indicates an evaluation function, that is, an evaluation score for the preliminary path P. Ref(P) indicates a first distance score for the preliminary path P. Obs(P) indicates a second distance score for the preliminary path P. α indicates a weight for the first distance score. β indicates a weight for the second distance score. At this time, α and β which are constant gains are changed to adjust a ratio of the first distance score and the second distance score in the evaluation function.
[0064] The moving path determining unit 130 may determine a preliminary path having the highest evaluation score, among the plurality of preliminary paths, as an actual moving path of the robot. For example, as illustrated in FIG. 6, the moving path determining unit 130 acquires a plurality of preliminary paths using the predetermined robot parameter on the basis of the current position of the robot and acquires one preliminary path selected from the plurality of preliminary paths, on the basis of the distance from the moving path pattern and the distance from the obstacle, as an actual moving path.
[0065] The moving control unit 150 controls the robot to move along the actual moving path determined by the moving path determining unit 130.
[0066] That is, the moving control unit 150 may control the robot to move along the actual moving path at an optimal speed which is possible in the current position, on the basis of the speed information according to the predetermined robot parameter.
[0067] For example, as illustrated in FIG. 7, when the mopping cleaning robot completes the cleaning on the basis of the actual moving path according to the present disclosure, along one path pattern among the moving path patterns of the sub region, the mopping cleaning robot cleans along a next path pattern. Next, when the robot moves along all path patterns, among the moving path pattern of the sub region, that is, completes the cleaning of the entire sub region, the robot moves to another sub region which is closest to the current position, but is not cleaned.
[0068] Now, a moving path planning method for a robot according to an exemplary embodiment of the present disclosure will be described with reference to FIGS. 8 and 9.
[0069] FIG. 8 is a flowchart illustrating a moving path planning method for a robot according to an exemplary embodiment of the present disclosure.
[0070] Referring to FIG. 8, the moving path planning apparatus 100 acquires one or more sub regions from a map and acquires a robot moving path pattern for each of one or more sub regions in step S110.
[0071] To be more specific, the moving path planning apparatus 100 acquires a centroid for a target region of the map, acquires a polygon having the maximum size corresponding to the target region while increasing a size of the polygon to a predetermined unit size with reference to the centroid for the target region, acquires the acquired polygon having the maximum size as the sub region, and acquires one or more sub regions from the map by repeatedly performing a process of excluding the polygon having the maximum size acquired as the sub region from the target region, on the target region, until the size of the target region becomes smaller than a robot size according to the predetermined robot parameter. At this time, the moving path planning apparatus 100 may determine the type of the polygon on the basis of a shape of the target region.
[0072] Further, the moving path planning apparatus 100 acquires a centroid for each of one or more sub regions, acquires a plurality of path patterns which is formed of points having the same distance value with respect to the centroid for the sub region in the unit of the predetermined distance interval, and acquires the plurality of acquired path patterns as the moving path pattern for the sub region.
[0073] Next, the moving path planning apparatus 100 may determine an actual moving path of the robot for each of one or more sub regions on the basis of a predetermined robot parameter and the moving path patterns for the sub regions in step S130.
[0074] Next, the moving path planning apparatus 100 may control the robot to move along the determined actual moving path in step S150.
[0075] That is, the moving path planning apparatus 100 may control the robot to move along the actual moving path at an optimal speed which is possible in the current position, on the basis of the speed information according to the predetermined robot parameter.
[0076] FIG. 9 is a flowchart for explaining sub steps of an actual moving path determining step illustrated in FIG. 8.
[0077] Referring to FIG. 9, the moving path planning apparatus 100 may acquire a plurality of preliminary paths using the forward gaze distance and the minimum turning radius according to the predetermined robot parameter on the basis of a current position of the robot in step S131.
[0078] That is, the moving path planning apparatus 100 may acquire a plurality of front points which is separated from a centroid of the robot by the forward gaze distance in the unit of a predetermined angle. At this time, the moving path planning apparatus 100 may acquire a plurality of front points with respect to a centroid of two steering wheels of the robot.
[0079] The moving path planning apparatus 100 generates an arc connecting the robot and the plurality of front points to acquire a preliminary path candidate group. At this time, the moving path planning apparatus 100 may generate an arc for each of the plurality of front points using a geometric path tracking method (pure pursuit algorithm) which is a method of geometrically determining a curvature which moves from the robot to the front point.
[0080] The moving path planning apparatus 100 may acquire preliminary paths whose turning radius is larger than a minimum turning radius according to the predetermined robot parameter, among the preliminary path candidate group, as a plurality of preliminary paths.
[0081] Next, the moving path planning apparatus 100 determines one of the plurality of preliminary paths as an actual moving path of the robot, on the basis of a distance from the moving path pattern and a distance from the obstacle, in step S132.
[0082] That is, the moving path planning apparatus 100 may acquire an evaluation score for each of the plurality of preliminary paths on the basis of the distance from the moving path pattern and the distance from the obstacle. At this time, the moving path planning apparatus 100 may acquire the evaluation score on the basis of a first distance score, a first weight, a second distance score, and a second weight. For example, the moving path planning apparatus 100 acquires the evaluation score for the preliminary path by means of an evaluation function expressed by the above Equation 1.
[0083] The moving path planning apparatus 100 may determine a preliminary path having the highest evaluation score, among the plurality of preliminary paths, as an actual moving path of the robot. Even though it has been described above that all components of the exemplary embodiment of the present invention are combined as one component or operate to be combined, the present invention is not limited to the exemplary embodiment. In other words, one or more components may be selectively combined to be operated within a scope of the present invention. Further, all components may be implemented as one independent hardware but a part or all of the components are selectively combined to be implemented as a computer program which includes a program module which performs a part or all functions combined in one or plural hardware. Further, such a computer program may be stored in a computer readable media such as a USB memory, a CD disk, or a flash memory to be read and executed by a computer to implement the exemplary embodiment of the present invention. The recording media of the computer program may include a magnetic recording medium or an optical recording medium.
Claims
1. A mopping cleaning robot with a moving path planning apparatus (100), comprising: a moving path pattern acquiring unit (110) configured to acquire one or more sub regions to be cleaned entirely from a map and to acquire a robot moving path pattern for each of the one or more sub regions, wherein the cleaning robot is configured clean with a brush while spraying water on the floor of the one or more sub regions and suck up all the water sprayed on the floor, wherein the moving path pattern acquiring unit (110) is configured to acquire a centroid for each of the one or more sub regions, to acquire a plurality of closed path patterns leading around the centroid and to acquire the plurality of acquired path patterns as the moving path pattern for the sub region; a moving path determining unit (130) configured to determine an actual moving path of the robot for each of the one or more sub regions on the basis of a predetermined robot parameter and the moving path pattern for the sub region, wherein the moving path determining unit (130) is configured to acquire a plurality of preliminary paths using a forward gaze distance and a minimum turning radius according to the predetermined robot parameter, on the basis of a current position of the robot and to determine one preliminary path among the plurality of preliminary paths as the actual moving path of the robot on the basis of a distance from the moving path pattern and a distance from an obstacle, wherein the moving path determining unit (130) is configured to acquire a plurality of front points which is separated from a centroid of the robot by the forward gaze distance in a unit of a predetermined angle, to acquire a preliminary path candidate group by generating an arc connecting the robot and each of the plurality of front points, and to acquire preliminary paths having a turning radius which is larger than the minimum turning radius, among the preliminary path candidate group, as the plurality of preliminary paths.
2. A cleaning robot according to claim 1, wherein the moving path determining unit (130) is configured to acquire the plurality of front points with respect to a centroid of two steering wheels of the robot and to acquire the preliminary path candidate group by generating an arc for each of the plurality of front points using a geometric path tracking method.
3. A cleaning robot according to claim 1, wherein the moving path planning unit is configured to acquire an evaluation score for each of the plurality of preliminary paths on the basis of the distance from the moving path pattern and the distance from the obstacle and to determine a preliminary path having the highest evaluation score, among the plurality of preliminary path, as the actual moving path of the robot.
4. A cleaning robot according to claim 3, wherein the moving path planning unit is configured to acquire the evaluation score on the basis of a first distance score acquired on the basis of a distance between the preliminary path and the moving path pattern, a predetermined first weight for the first distance score, a second distance score acquired on the basis of the distance between the preliminary path and the obstacle, and a predetermined second weight for the second distance score, as the distance between the preliminary path and the moving path pattern becomes shorter, a higher score is assigned as the first distance score, and as the distance between the preliminary path and the obstacle becomes longer, a higher score is assigned as the second distance score.
5. A cleaning robot according to claim 1, wherein the moving path pattern acquiring unit (110) is configured to acquire a centroid for a target region of the map, to acquire a polygon having the maximum size corresponding to the target region while increasing a size of the polygon to a predetermined unit size with reference to the centroid for the target region, to acquire the acquired polygon having the maximum size as the sub region, and to acquire one or more sub regions from the map by repeatedly performing a process of excluding the polygon having the maximum size acquired as the sub region from the target region, on the target region, until the size of the target region becomes smaller than a robot size according to the predetermined robot parameter.
6. A cleaning robot according to claim 5, wherein the moving path pattern acquiring unit (110) is configured to determine a type of the polygon on the basis of a shape of the target region.
7. A cleaning robot according to claim 1, wherein the moving path pattern acquiring unit (110) is configured to acquire the plurality of path patterns which is formed of points having the same distance value with respect to the centroid for the sub region in a unit of a predetermined distance interval.
8. A moving path planning method for a mopping cleaning robot, comprising: acquiring one or more sub regions to be cleaned entirely from a map and acquiring a robot moving path pattern for each of the one or more sub regions, cleaning a floor with a brush while spraying water on the floor of the one or more sub regions and suck up all the water sprayed on the floor, wherein the step of acquiring includes: acquiring a centroid for each of the one or more sub regions; acquiring a plurality of closed path patterns leading around the centroid; and acquiring the plurality of acquired path patterns as the moving path pattern for the sub region; determining an actual moving path of the robot for each of the one or more sub regions on the basis of a predetermined robot parameter and the moving path pattern for the sub region, wherein the determining of an actual moving path includes: a first step of acquiring a plurality of preliminary paths using a forward gaze distance and a minimum turning radius according to the predetermined robot parameter, on the basis of a current position of the robot; and a second step of determining one preliminary path among the plurality of preliminary paths as the actual moving path on the basis of a distance from the moving path pattern and a distance from an obstacle, wherein in the first step, a plurality of front points which is separated from a centroid of the robot by the forward gaze distance is acquired in the unit of a predetermined angle, a preliminary path candidate group is generated by generating an arc connecting the robot and each of the plurality of front points, and preliminary paths having a turning radius which is larger than the minimum turning radius, among the preliminary path candidate group, are acquired as the plurality of preliminary paths.
9. The moving path planning method according to claim 8, wherein in the second step, an evaluation score for each of the plurality of preliminary paths is acquired on the basis of the distance from the moving path pattern and the distance from the obstacle and a preliminary path having the highest evaluation score, among the plurality of preliminary path, is determined as the actual moving path of the robot.
10. The moving path planning method according to claim 9, wherein in the second step, the evaluation score is acquired on the basis of a first distance score acquired on the basis of a distance between the preliminary path and the moving path pattern, a predetermined first weight for the first distance score, a second distance score acquired on the basis of the distance between a preliminary path and the obstacle, and a predetermined second weight for the second distance score, as the distance between the preliminary path and the moving path pattern becomes shorter, a higher score is assigned as the first distance score, and as the distance between the preliminary path and the obstacle becomes longer, a higher score is assigned to the second distance score.