WO2024199675A1 - A method for navigating an autonomous mower - Google Patents
A method for navigating an autonomous mower Download PDFInfo
- Publication number
- WO2024199675A1 WO2024199675A1 PCT/EP2023/058540 EP2023058540W WO2024199675A1 WO 2024199675 A1 WO2024199675 A1 WO 2024199675A1 EP 2023058540 W EP2023058540 W EP 2023058540W WO 2024199675 A1 WO2024199675 A1 WO 2024199675A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- obstacle
- autonomous mower
- point
- point cloud
- mower
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 230000004807 localization Effects 0.000 claims description 13
- 238000010801 machine learning Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 230000011218 segmentation Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 4
- 244000025254 Cannabis sativa Species 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/24—Arrangements for determining position or orientation
- G05D1/242—Means based on the reflection of waves generated by the vehicle
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/24—Arrangements for determining position or orientation
- G05D1/246—Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM]
- G05D1/2464—Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM] using an occupancy grid
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/20—Control system inputs
- G05D1/24—Arrangements for determining position or orientation
- G05D1/246—Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM]
- G05D1/2465—Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM] using a 3D model of the environment
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/60—Intended control result
- G05D1/617—Safety or protection, e.g. defining protection zones around obstacles or avoiding hazards
- G05D1/622—Obstacle avoidance
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2105/00—Specific applications of the controlled vehicles
- G05D2105/15—Specific applications of the controlled vehicles for harvesting, sowing or mowing in agriculture or forestry
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2107/00—Specific environments of the controlled vehicles
- G05D2107/20—Land use
- G05D2107/23—Gardens or lawns
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2109/00—Types of controlled vehicles
- G05D2109/10—Land vehicles
Definitions
- the present invention relates to a method for navigating an autonomous mower.
- An autonomous mower is a type of lawn mower that is designed to operate without human interference. It uses sensors and software to navigate around obstacles, follow a pre-determined cutting path, and adjust its speed and cutting height according to the condition of the lawn.
- the primary application of autonomous mowers is to simplify lawn maintenance for example for homeowners and commercial landscapers. These mowers can operate continuously, cutting the grass at regular intervals, without any manual input. This can save time and effort for homeowners, who would otherwise need to mow their lawn regularly to keep it neat and tidy.
- Autonomous mowers can be used not only for private lawn maintenance but also in larger-scale commercial applications such as golf courses, sports fields, public parks and other. In these environments, they can help reduce labor costs and increase efficiency, while also improving the quality and consistency of the lawn.
- the autonomous mower should avoid obstacles safely. It means moving around these obstacles at a safe distance from them. At the same time, to cover the mowed area as much as possible, the distance of the mower from the obstacle should be as small as possible.
- the object of the invention is a method for navigating an autonomous mower comprising the steps of obtaining a 3D point cloud of a surrounding area; determining a 3D position of the 3D point cloud in a global frame; detecting at least one obstacle on the 3D point cloud; assigning a 3D obstacle label to each point in the 3D point cloud that belongs to the obstacle; generating a 2D map of the surrounding area based on the generated 3D point cloud; representing the autonomous mower in the global frame as a single point located in the geometrical center of the autonomous mower; assigning a 2D obstacle label to each point on the 2D map that belongs to the obstacle; virtually inflating the obstacle by determining an obstacle area surrounding the points of the obstacle on the 2D map, wherein the surrounding area is defined within a radius from points of the obstacle wherein the radius is equal to the distance between the single point and a most distanced point located on the perimeter of the autonomous mower; applying a navigation algorithm to navigate the single point representing autonomous mower so that it does not enter the obstacle area.
- the method may comprise a step of acquiring a 3D image of the surrounding area by means of a sensor system installed on the autonomous mower, wherein the 3D point cloud is generated from the acquired 3D image of the surrounding area.
- the method may comprise a step of obtaining the 3D point cloud from a LIDAR installed on the autonomous mower.
- the step of representing the autonomous mower in the global frame may be performed by means of a localization system installed on the autonomous mower comprising a global navigation satellite system (GNSS, GNSS-RTK) or simultaneous localization and mapping (SLAM) system.
- GNSS global navigation satellite system
- GNSS-RTK global navigation satellite system
- SLAM simultaneous localization and mapping
- the step of detecting at least one obstacle on the 3D point cloud can be performed by means of a machine learning module that utilizes segmentation or object detection techniques.
- the invention also relates to an autonomous mower comprising a control unit configured to receive information from a sensor system and a localization system and configured to control a drive unit based on the information received from the sensor system and the localization system characterized in that the autonomous mower is configured to perform the method as described herein.
- Fig. 1 is a model of an autonomous mower
- Fig. 2A is a model of an autonomous mower with a base link located on the drive wheel axle;
- Fig. 2B is a model of an autonomous mower with a base link located on the geometrical center of the autonomous mower;
- Fig. 3 is a flow diagram of a method for driving around an obstacle
- Fig. 4 is a flow diagram of a navigation algorithm according to the present invention.
- Fig. 5 is a schematical view of the autonomous mower and an obstacle in a side view
- Fig. 6 is an exemplary 3D point cloud generated from a 3D image (point cloud is in front of the mower);
- Fig. 7A is a 2D map generated from the 3D point cloud
- Figs. 7B, 7C are the locations of the points 01 , 02 with respect to the inflated areas S1 , S2 of the obstacle S;
- Figs. 8A, 8B are a conceptual views of an autonomous mower omitting the obstacle with a first inflation radius (state of the art);
- Figs. 8C, 8D are a conceptual view of an autonomous mower omitting the obstacle with a second inflation radius
- Fig. 9 is a functional diagram of the autonomous mower.
- the autonomous mower 1 is considered by a 2D shape.
- the 2D shape may represent a detailed projection of the 3D shape of the autonomous mower on the ground. Alternatively, it may be represented by a simple rectangular shape that encompasses the projection of the autonomous mower 1 on the ground. Typically, the 2D representation will have a substantially rectangular shape with a longer side being in parallel to the front direction (i.e. the direction the autonomous mower 1 moves when driving straight) and a shorter side perpendicular to the front direction.
- the autonomous mower 1 when determining the position of the autonomous mower 1 within the coordinate system, the autonomous mower 1 is represented in the 2D space as a point having a specific orientation (with respect to global coordinate system).
- the autonomous mower 1 is supposed to autonomously travel a predefined path in a 2D space, wherein the path is defined as a sequence of 2D locations (called points or sub-goals) in an inertial frame (i.e. the global coordinate system).
- points or sub-goals inertial frame
- This obstacle S can be marked on a 2D map as a set of points and is represented as a 2D shape that closely surrounds the points.
- the autonomous mower 1 When the autonomous mower 1 encounters the obstacle S that has to be avoided, the autonomous mower 1 shall drive around the obstacle S such as to arrive at a next sub-goal of the predefined path that is not occupied by the obstacle. In order to minimize the area of uncut grass, the autonomous mower 1 shall drive as close to the obstacle S as possible. Therefore, when avoiding the obstacle S, the autonomous mower 1 shall follow accurately the obstacle shape in a distance as small as possible from the obstacle.
- tactile sensors such as touch sensors or mechanical sensors, e.g. bumpers
- the autonomous mower 1 could hit the obstacle S which may cause damage to the obstacle S and/or to the autonomous mower 1 . Consequently, the autonomous mower 1 has to drive around the obstacle S at a safe distance.
- the shape representing the obstacle S can be virtually inflated (enlarged, as shown in Fig. 7A), by mowing the points on the edge of the obstacle S shape along the direction defined by the point and the center of the shape - the points are moved away from the center of the obstacle S by the predefined inflation range.
- the inflation range defines the safe distance and depends on the 2D shape of the autonomous mower 1 and the location of the 2D point that represents the autonomous mower 1 . To ensure safe distance, the inflation range shall be larger than the longest distance from the 2D point representing the autonomous mower 1 to the farthest point on the contour of the shape representing the autonomous mower 1 .
- the inventors of the present invention found that the inflation range depends on the location of the 2D point representing the autonomous mower 1 , and the area of the unprocessed surface can be decreased while moving around the obstacle S by careful selection of the position of the 2D point representing the autonomous mower 1. Therefore, the present invention is related to solving the problem of how to minimize the uncut area around the obstacle S. The problem is solved by defining a specific location of the 2D point representing the autonomous mower 1 .
- the choice of the 2D point that represents the autonomous mower 1 is usually determined based on the robotic configuration of the autonomous mower 1 .
- the 2D point that represents the autonomous mower 1 is usually in the center of rotation of the autonomous mower 1 and is a point 01 located in the middle of the drive axle.
- the navigating techniques for the situation when the base link is located in the middle of the drive axle are well known in the state of the art and therefore will not be discussed in detail in this description.
- the inventors found that for most commercial autonomous mower shapes which are not point symmetrical, e.g. rectangles), the selection of the point 01 located in the middle of the drive axle leads to unnecessary large inflation range and consequently large uncut areas.
- the navigation is performed on the basis of a specific position of the 2D point 02 representing the differential drive autonomous mower 1 , wherein the 2D point 02 is at a geometric center of the 2D shape that represents the autonomous mower 1.
- the inflation range i.e. the enlarged area of the obstacle S
- the uncut area of the grass around the obstacle S are minimized - the autonomous mower 1 moves closer to the obstacle S as compared to the prior art situation when the 2D point 02 is located on an axle of the autonomous mower 1 .
- FIGs. 2A, 8A, 8B and 2B, 8C, 8D - Figs. 2A, 8A, 8B show a standard case (wherein the 2D point 01 is positioned in the middle of the drive axle) and Figs. 2B, 8C, 8D show a case according to the present invention (wherein the point 02 is located at the geometric center of the 2D shape that represents the autonomous mower 1 ).
- the point 02 is located at the geometric center of the 2D shape that represents the autonomous mower 1 .
- the point 02 is located in the geometrical center of the autonomous mower 1 .
- the geometrical center may be a point located at the intersection of the diagonals of the rectangle circumscribing the contour of the autonomous mower 1 in a 2D plane or it may be calculated as an arithmetic mean position of all the points in the surface of the figure, which is the shape of the autonomous mower 1 in the 2D plane.
- the autonomous mower-specific parameters are:
- d which is the distance between a center of rotation of the autonomous mower (point 01 ) and the current position (point 02) of the autonomous mower;
- a next sub-goal D’ belongs to the obstacle S (i.e. it is within the inflated area S2 of the obstacle S, see Figs. 7A, 8A, 8B, 8C, 8D)
- the autonomous mower 1 is navigated to drive around the inflated area S2 of the obstacle S to arrive at such further sub-goal D that is not located within the inflated area S2 of the obstacle S, by a method that comprises the following steps.
- the intermediate point T is located on a shortest path from the current position of the autonomous mower 1 to the sub-goal D and may be determined using a global planner algorithm.
- Step 102 comprises calculating a heading and distance from point 02 to point T as a distance I between point 02 and point T, and an angular difference A between the forward direction and the heading from point 02 to point T;
- Step 104 comprises calculating a second angular difference A2 as: iff Ai 0 otherwise
- Step 105 comprises calculating a third angular difference A3 as: (Formula 3)
- Step 106 comprises calculating a rotation 0 and the travel distance s of the autonomous mower as:
- Step 107 comprises calculating a linear velocity V and an angular velocity co of the autonomous mower using TEB (time elastic band) algorithm, such as to arrive to the destination point at the shortest time;
- TEB time elastic band
- Step 108 comprises calculating steering velocities for left (velocity Vi) and right (velocity V r ) wheels as: (Formula 5)
- the point 02’ is being calculated cyclically over periods t (for example every second) as a new current position of the autonomous mower 1 , because each new current position 02’ may deviate from the planned path due to external factors such as wind, wheel slip etc.
- the autonomous mower 1 is navigated on the path omitting the inflated area S2 of the obstacle S along a series of intermediate points T (to which the autonomous mower moves via points 02’).
- the method for navigating the autonomous mower 1 according to the invention is shown in Fig. 4.
- the method uses a 3D point cloud of the area surrounding the mover 1 . That 3D cloud of points may be obtained in step 201 by acquiring a 3D image of the surrounding area (as shown in in Fig. 5) by means of a sensor system installed on the autonomous mower 1 and next generating the 3D point cloud in step 202 from the acquired 3D image of the surrounding area.
- the LIDAR may directly generate the 3D point cloud in step 202.
- the 3D position of the 3D point cloud is determined in a global frame.
- At least one obstacle S is detected in step 204 on the 3D point cloud, for example by means of a machine learning module - various known machine learning modules can be used for that purpose, in particular such that utilize segmentation or object detection techniques.
- a 3D obstacle label is applied to each point in the 3D point cloud that belongs to the obstacle S (as shown for example in Fig. 6). Based on that 3D point could, a 2D map is generated in step 206, wherein the 2D map represents the surrounding area of the autonomous mower 1 .
- step 207 the autonomous mower 1 is represented in the global frame on the 2D map as a single point 02 located in the geometrical center of the autonomous mower 1 , as explained above.
- the step of representing 207 the autonomous mower 1 in the global frame is performed by means of a localization system installed on the autonomous mower 1 , wherein the localization system comprises a global navigation satellite system (GNSS, GNSS- RTK) or simultaneous localization and mapping (SLAM) system.
- GNSS global navigation satellite system
- SLAM simultaneous localization and mapping
- step 208 a 2D obstacle label is assigned to each point on the 2D map that belongs to the obstacle S.
- the obstacle S is virtually inflated by determining an obstacle area S2 surrounding the points of the obstacle S on the 2D map (as shown in Fig. 7A).
- the surrounding area S2 is defined within a radius P2 from points of obstacle S wherein the radius P2 is equal to the distance between the single point 02 and a most distanced point M1 located on the perimeter of the autonomous mower 1 , as shown in Fig. 2B.
- a suitable navigation algorithm preferably one that uses a cost function that increases the penalty as the point representing the autonomous mower 1 enters the obstacle area S2, therefore using an optimization function that searches for moves with minimal cost.
- the algorithm as explained with reference to Fig. 3 is used.
- Fig. 9 is a functional diagram of the autonomous mower 1 .
- the autonomous mower 1 comprises a control unit 310 configured to receive information from a sensor system 311 according to steps 201 , 202 and a localization system 312 according to step 207 and is configured to control a drive unit 313 based on the information received from the sensor system 311 and the localization system 312, wherein the autonomous mower 1 is configured to perform the navigation method as explained above.
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
A method for navigating an autonomous mower, including: obtaining a 3D point cloud of a surrounding area; determining a 3D position of the 3D point cloud in a global frame; detecting at least one obstacle on the 3D point cloud; assigning a 3D obstacle label to each point in the 3D point cloud that belongs to the obstacle; generating a 2D map of the surrounding area; representing the autonomous mower in the global frame as a single point located in the geometrical center of the autonomous mower; assigning a 2D obstacle label to each point on the 2D map that belongs to the obstacle; virtually inflating the obstacle; applying a navigation algorithm to navigate the single point representing autonomous mower so that it does not enter the obstacle area.
Description
A METHOD FOR NAVIGATING AN AUTONOMOUS MOWER
TECHNICAL FIELD
The present invention relates to a method for navigating an autonomous mower.
BACKGROUND ART
An autonomous mower is a type of lawn mower that is designed to operate without human interference. It uses sensors and software to navigate around obstacles, follow a pre-determined cutting path, and adjust its speed and cutting height according to the condition of the lawn.
The primary application of autonomous mowers is to simplify lawn maintenance for example for homeowners and commercial landscapers. These mowers can operate continuously, cutting the grass at regular intervals, without any manual input. This can save time and effort for homeowners, who would otherwise need to mow their lawn regularly to keep it neat and tidy.
Autonomous mowers can be used not only for private lawn maintenance but also in larger-scale commercial applications such as golf courses, sports fields, public parks and other. In these environments, they can help reduce labor costs and increase efficiency, while also improving the quality and consistency of the lawn.
SUMMARY
The autonomous mower should avoid obstacles safely. It means moving around these obstacles at a safe distance from them. At the same time, to cover the mowed area as much as possible, the distance of the mower from the obstacle should be as small as possible.
Therefore, there is a need to improve the known methods for navigating autonomous mowers in order to minimize the distance between the mower and the obstacle in a computationally efficient manner and to navigate the mower safely.
The object of the invention is a method for navigating an autonomous mower comprising the steps of obtaining a 3D point cloud of a surrounding area; determining a 3D position of the 3D point cloud in a global frame; detecting at least one obstacle on the 3D point cloud; assigning a 3D obstacle label to each point in the 3D point cloud that belongs to the obstacle; generating a 2D map of the surrounding area based on
the generated 3D point cloud; representing the autonomous mower in the global frame as a single point located in the geometrical center of the autonomous mower; assigning a 2D obstacle label to each point on the 2D map that belongs to the obstacle; virtually inflating the obstacle by determining an obstacle area surrounding the points of the obstacle on the 2D map, wherein the surrounding area is defined within a radius from points of the obstacle wherein the radius is equal to the distance between the single point and a most distanced point located on the perimeter of the autonomous mower; applying a navigation algorithm to navigate the single point representing autonomous mower so that it does not enter the obstacle area.
The method may comprise a step of acquiring a 3D image of the surrounding area by means of a sensor system installed on the autonomous mower, wherein the 3D point cloud is generated from the acquired 3D image of the surrounding area.
The method may comprise a step of obtaining the 3D point cloud from a LIDAR installed on the autonomous mower.
The step of representing the autonomous mower in the global frame may be performed by means of a localization system installed on the autonomous mower comprising a global navigation satellite system (GNSS, GNSS-RTK) or simultaneous localization and mapping (SLAM) system.
The step of detecting at least one obstacle on the 3D point cloud can be performed by means of a machine learning module that utilizes segmentation or object detection techniques.
The invention also relates to an autonomous mower comprising a control unit configured to receive information from a sensor system and a localization system and configured to control a drive unit based on the information received from the sensor system and the localization system characterized in that the autonomous mower is configured to perform the method as described herein.
BRIEF DESCRIPTION OF DRAWINGS
An exemplary embodiment of the present invention is illustrated by way of example in the accompanying drawings, in which:
Fig. 1 is a model of an autonomous mower;
Fig. 2A is a model of an autonomous mower with a base link located on the drive wheel axle;
Fig. 2B is a model of an autonomous mower with a base link located on the geometrical center of the autonomous mower;
Fig. 3 is a flow diagram of a method for driving around an obstacle;
Fig. 4 is a flow diagram of a navigation algorithm according to the present invention;
Fig. 5 is a schematical view of the autonomous mower and an obstacle in a side view;
Fig. 6 is an exemplary 3D point cloud generated from a 3D image (point cloud is in front of the mower);
Fig. 7A is a 2D map generated from the 3D point cloud;
Figs. 7B, 7C are the locations of the points 01 , 02 with respect to the inflated areas S1 , S2 of the obstacle S;
Figs. 8A, 8B are a conceptual views of an autonomous mower omitting the obstacle with a first inflation radius (state of the art);
Figs. 8C, 8D are a conceptual view of an autonomous mower omitting the obstacle with a second inflation radius;
Fig. 9 is a functional diagram of the autonomous mower.
DETAILED DESCRIPTION
In the navigation method as described herein, the autonomous mower 1 is considered by a 2D shape. The 2D shape may represent a detailed projection of the 3D shape of the autonomous mower on the ground. Alternatively, it may be represented by a simple rectangular shape that encompasses the projection of the autonomous mower 1 on the ground. Typically, the 2D representation will have a substantially rectangular shape with a longer side being in parallel to the front direction (i.e. the direction the autonomous mower 1 moves when driving straight) and a shorter side perpendicular to the front direction.
However, when determining the position of the autonomous mower 1 within the coordinate system, the autonomous mower 1 is represented in the 2D space as a point having a specific orientation (with respect to global coordinate system).
The autonomous mower 1 is supposed to autonomously travel a predefined path in a 2D space, wherein the path is defined as a sequence of 2D locations (called points or sub-goals) in an inertial frame (i.e. the global coordinate system). The way of determining an optimal path for the autonomous mower to process the surface to be mowed is out of scope of the present invention and can be performed using various known methods.
It may happen that during movement along the predefined path, an obstacle S may appear in the operating area. This obstacle S can be marked on a 2D map as a set of points and is represented as a 2D shape that closely surrounds the points.
When the autonomous mower 1 encounters the obstacle S that has to be avoided, the autonomous mower 1 shall drive around the obstacle S such as to arrive at a next sub-goal of the predefined path that is not occupied by the obstacle. In order to minimize the area of uncut grass, the autonomous mower 1 shall drive as close to the obstacle S as possible. Therefore, when avoiding the obstacle S, the autonomous mower 1 shall follow accurately the obstacle shape in a distance as small as possible from the obstacle.
Due to the large size and mass of the autonomous mower 1 , tactile sensors (such as touch sensors or mechanical sensors, e.g. bumpers) cannot be used to detect and follow the obstacle S (as e.g. in case of autonomous home vacuum cleaners), because the autonomous mower 1 could hit the obstacle S which may cause damage to the obstacle S and/or to the autonomous mower 1 . Consequently, the autonomous mower 1 has to drive around the obstacle S at a safe distance.
In order to ensure safe distance from the obstacle S, the shape representing the obstacle S can be virtually inflated (enlarged, as shown in Fig. 7A), by mowing the points on the edge of the obstacle S shape along the direction defined by the point and the center of the shape - the points are moved away from the center of the obstacle S by the predefined inflation range. The inflation range defines the safe distance and depends on the 2D shape of the autonomous mower 1 and the location of the 2D point that represents the autonomous mower 1 . To ensure safe distance, the inflation range shall be larger than the longest distance from the 2D point representing the autonomous mower 1 to the farthest point on the contour of the shape representing the autonomous mower 1 . The inventors of the present invention found that the inflation range depends on the location of the 2D point representing the autonomous mower 1 ,
and the area of the unprocessed surface can be decreased while moving around the obstacle S by careful selection of the position of the 2D point representing the autonomous mower 1. Therefore, the present invention is related to solving the problem of how to minimize the uncut area around the obstacle S. The problem is solved by defining a specific location of the 2D point representing the autonomous mower 1 .
Typically, the choice of the 2D point that represents the autonomous mower 1 is usually determined based on the robotic configuration of the autonomous mower 1 . For differential drive mowers, the 2D point that represents the autonomous mower 1 is usually in the center of rotation of the autonomous mower 1 and is a point 01 located in the middle of the drive axle. The navigating techniques for the situation when the base link is located in the middle of the drive axle are well known in the state of the art and therefore will not be discussed in detail in this description. However, the inventors found that for most commercial autonomous mower shapes (which are not point symmetrical, e.g. rectangles), the selection of the point 01 located in the middle of the drive axle leads to unnecessary large inflation range and consequently large uncut areas.
According to the present invention, the navigation is performed on the basis of a specific position of the 2D point 02 representing the differential drive autonomous mower 1 , wherein the 2D point 02 is at a geometric center of the 2D shape that represents the autonomous mower 1. As a result, the inflation range (i.e. the enlarged area of the obstacle S) and the uncut area of the grass around the obstacle S are minimized - the autonomous mower 1 moves closer to the obstacle S as compared to the prior art situation when the 2D point 02 is located on an axle of the autonomous mower 1 .
A comparative scenario of the area mowed by the autonomous mower 1 is shown in Figs. 2A, 8A, 8B and 2B, 8C, 8D - Figs. 2A, 8A, 8B show a standard case (wherein the 2D point 01 is positioned in the middle of the drive axle) and Figs. 2B, 8C, 8D show a case according to the present invention (wherein the point 02 is located at the geometric center of the 2D shape that represents the autonomous mower 1 ). By moving the control point from the point 01 at the axis of rotation of the autonomous mower 1 to the point 02 at the geometrical center, it is possible to navigate the autonomous mower 1 closer to the obstacle S (Fig. 8C, 8D), than compared to the
situation when the control point is located on the point 01 of drive wheel axle of the autonomous mower 1 (Fig. 8A, 8B).
An example of performing a method for navigating an autonomous mower 1 according to the present invention will be explained below with reference to Fig. 1 and summarized in Fig. 3.
Assume that a current position of the autonomous mower 1 is at point 02 = (xO2, yO2), and its orientation is Q. According to the present invention, the point 02 is located in the geometrical center of the autonomous mower 1 . The geometrical center (centroid) may be a point located at the intersection of the diagonals of the rectangle circumscribing the contour of the autonomous mower 1 in a 2D plane or it may be calculated as an arithmetic mean position of all the points in the surface of the figure, which is the shape of the autonomous mower 1 in the 2D plane. The autonomous mower-specific parameters are:
- a distance d, which is the distance between a center of rotation of the autonomous mower (point 01 ) and the current position (point 02) of the autonomous mower;
- an angle <t>, which is the angle between the forward direction and the direction from point 01 to point 02 in the autonomous mower coordinate system;
- a wheel base b, which is the distance between centers of the left and right wheel on the drive axle.
If a next sub-goal D’ belongs to the obstacle S (i.e. it is within the inflated area S2 of the obstacle S, see Figs. 7A, 8A, 8B, 8C, 8D), then the autonomous mower 1 is navigated to drive around the inflated area S2 of the obstacle S to arrive at such further sub-goal D that is not located within the inflated area S2 of the obstacle S, by a method that comprises the following steps.
Step 101 comprises finding a new intermediate point T = (xT, yT) outside the inflated area S2 of the obstacle S. The intermediate point T is located on a shortest path from the current position of the autonomous mower 1 to the sub-goal D and may be determined using a global planner algorithm.
Step 102 comprises calculating a heading and distance from point 02 to point T as a distance I between point 02 and point T, and an angular difference A between the forward direction and the heading from point 02 to point T;
Step 103 comprises calculating a first angular difference A1 = A - <t>;
(Formula 1 )
(Formula 4)
Step 107 comprises calculating a linear velocity V and an angular velocity co of the autonomous mower using TEB (time elastic band) algorithm, such as to arrive to the destination point at the shortest time;
Step 108 comprises calculating steering velocities for left (velocity Vi) and right (velocity Vr) wheels as:
(Formula 5)
Step 109 comprises activating the drive so that the autonomous mower 1 starts to move with calculated linear velocity V and angular velocity co, and upon expiry of
time t, calculating a new position of the autonomous mower 1 as position 02' = (x'p, y'p) and a new orientation Q' of the autonomous mower 1 as:
(Formula 6) wherein the coordinates xo, yo, x’o, x’o relate to the initial location of point 01 and the location of point 01 after time t (this location is denoted as 01’), similarly XP, yp, X’P, X’P relate to the initial location of 02 and the location of point 02 after time t (denoted as 02’).
The point 02’ is being calculated cyclically over periods t (for example every second) as a new current position of the autonomous mower 1 , because each new current position 02’ may deviate from the planned path due to external factors such as wind, wheel slip etc.
Step 110 comprises returning to step 102 and repeating steps 102-109 until O2’=T. Consequently, the autonomous mower 1 is moved from an original position to point T by periodically updating the parameters of calculated linear velocity V and angular velocity co.
In step 111 , once the autonomous mover 1 arrives at the intermediate point T (O2’=T), the procedure determines a new intermediate point T on the way to the subgoal D by returning to step 101 .
As a result, the autonomous mower 1 is navigated on the path omitting the inflated area S2 of the obstacle S along a series of intermediate points T (to which the autonomous mower moves via points 02’).
The method for navigating the autonomous mower 1 according to the invention is shown in Fig. 4. The method uses a 3D point cloud of the area surrounding the mover 1 . That 3D cloud of points may be obtained in step 201 by acquiring a 3D image of the surrounding area (as shown in in Fig. 5) by means of a sensor system installed on the autonomous mower 1 and next generating the 3D point cloud in step 202 from the acquired 3D image of the surrounding area. Alternatively, if the autonomous mower 1 comprises a LIDAR, then the LIDAR may directly generate the 3D point cloud in step 202. In step 203, the 3D position of the 3D point cloud is determined in a global frame. At least one obstacle S is detected in step 204 on the 3D point cloud, for example by means of a machine learning module - various known machine learning modules can be used for that purpose, in particular such that utilize segmentation or object detection techniques. Next, in step 205, a 3D obstacle label is applied to each point in the 3D point cloud that belongs to the obstacle S (as shown for example in Fig. 6). Based on that 3D point could, a 2D map is generated in step 206, wherein the 2D map represents the surrounding area of the autonomous mower 1 . In step 207 the autonomous mower 1 is represented in the global frame on the 2D map as a single point 02 located in the geometrical center of the autonomous mower 1 , as explained above. Preferably, the step of representing 207 the autonomous mower 1 in the global frame is performed by means of a localization system installed on the autonomous mower 1 , wherein the localization system comprises a global navigation satellite system (GNSS, GNSS- RTK) or simultaneous localization and mapping (SLAM) system. Next, in step 208 a 2D obstacle label is assigned to each point on the 2D map that belongs to the obstacle S. Then, in step 209 the obstacle S is virtually inflated by determining an obstacle area S2 surrounding the points of the obstacle S on the 2D map (as shown in Fig. 7A). The surrounding area S2 is defined within a radius P2 from points of obstacle S wherein the radius P2 is equal to the distance between the single point 02 and a most distanced point M1 located on the perimeter of the autonomous mower 1 , as shown in Fig. 2B. This results in a map as shown in Fig. 8B, on which the autonomous mower 1 can be navigated in step 210 in accordance with a suitable navigation algorithm, preferably one that uses a cost function that increases the penalty as the point representing the autonomous mower 1 enters the obstacle area S2, therefore using an optimization
function that searches for moves with minimal cost. Preferably, the algorithm as explained with reference to Fig. 3 is used.
Fig. 9 is a functional diagram of the autonomous mower 1 . The autonomous mower 1 comprises a control unit 310 configured to receive information from a sensor system 311 according to steps 201 , 202 and a localization system 312 according to step 207 and is configured to control a drive unit 313 based on the information received from the sensor system 311 and the localization system 312, wherein the autonomous mower 1 is configured to perform the navigation method as explained above.
Claims
1 . A method for navigating an autonomous mower (1 ) comprising the steps of:
- obtaining a 3D point cloud (202) of a surrounding area;
- determining a 3D position (203) of the 3D point cloud in a global frame;
- detecting (204) at least one obstacle (S) on the 3D point cloud;
- assigning a 3D obstacle label (205) to each point in the 3D point cloud that belongs to the obstacle (S);
- generating a 2D map (206) of the surrounding area based on the generated 3D point cloud;
- representing (207) the autonomous mower (1 ) in the global frame as a single point (02) located in the geometrical center of the autonomous mower (1 );
- assigning a 2D obstacle label (208) to each point on the 2D map that belongs to the obstacle (S);
- virtually inflating (209) the obstacle (S) by determining an obstacle area (S2) surrounding the points of the obstacle (S) on the 2D map, wherein the surrounding area (S2) is defined within a radius (P2) from points of the obstacle (S) wherein the radius (P2) is equal to the distance between the single point (02) and a most distanced point (M1 ) located on the perimeter of the autonomous mower (1 );
- applying a navigation algorithm (210) to navigate the single point (02) representing autonomous mower (1 ) so that it does not enter the obstacle area (S2).
2. The method according to claim 1 , comprising:
- acquiring a 3D image (201 ) of the surrounding area by means of a sensor system (311 ) installed on the autonomous mower (1 );
- generating the 3D point cloud (202) from the acquired 3D image of the surrounding area.
3. The method according to claim 1 or 2, comprising obtaining the 3D point cloud (202) from a LIDAR installed on the autonomous mower (1 ).
4. The method according to any of the previous claims, wherein representing (207) the autonomous mower (1 ) in the global frame is performed by means of a localization
system (312) installed on the autonomous mower (1 ) comprising a global navigation satellite system (GNSS, GNSS-RTK) or simultaneous localization and mapping (SLAM) system.
5. The method according to any of the previous claims, wherein detecting (204) at least one obstacle (S) on the 3D point cloud is performed by means of a machine learning module that utilizes segmentation or object detection techniques.
6. An autonomous mower (1) comprising a control unit (310) configured to receive information from a sensor system (311 ) and a localization system (312) and configured to control a drive unit (313) based on the information received from the sensor system (311 ) and the localization system (312) characterized in that the autonomous mower (1 ) is configured to perform the method according to any of claims from 1 to 5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2023/058540 WO2024199675A1 (en) | 2023-03-31 | 2023-03-31 | A method for navigating an autonomous mower |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2023/058540 WO2024199675A1 (en) | 2023-03-31 | 2023-03-31 | A method for navigating an autonomous mower |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024199675A1 true WO2024199675A1 (en) | 2024-10-03 |
Family
ID=85984953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2023/058540 WO2024199675A1 (en) | 2023-03-31 | 2023-03-31 | A method for navigating an autonomous mower |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2024199675A1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110166737A1 (en) * | 2008-09-03 | 2011-07-07 | Murata Machinery, Ltd. | Route planning method, route planning device and autonomous mobile device |
US20140018996A1 (en) * | 2012-07-13 | 2014-01-16 | International Electronic Machines Corporation | Straight Line Path Planning |
US20190004524A1 (en) * | 2016-08-31 | 2019-01-03 | Faraday&Future Inc. | System and method for planning a vehicle path |
US11429110B1 (en) * | 2019-05-24 | 2022-08-30 | Amazon Technologies, Inc. | System for obstacle avoidance by autonomous mobile device |
-
2023
- 2023-03-31 WO PCT/EP2023/058540 patent/WO2024199675A1/en unknown
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110166737A1 (en) * | 2008-09-03 | 2011-07-07 | Murata Machinery, Ltd. | Route planning method, route planning device and autonomous mobile device |
US20140018996A1 (en) * | 2012-07-13 | 2014-01-16 | International Electronic Machines Corporation | Straight Line Path Planning |
US20190004524A1 (en) * | 2016-08-31 | 2019-01-03 | Faraday&Future Inc. | System and method for planning a vehicle path |
US11429110B1 (en) * | 2019-05-24 | 2022-08-30 | Amazon Technologies, Inc. | System for obstacle avoidance by autonomous mobile device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3833176B1 (en) | Autonomous machine navigation and training using vision system | |
JP7212074B2 (en) | A method for controlling edge-along running of an autonomous mobile robot | |
EP2438401B1 (en) | Method and apparatus for combining three-dimensional position and two-dimensional intensity mapping for localization | |
Kummerle et al. | Autonomous driving in a multi-level parking structure | |
KR101372482B1 (en) | Method and apparatus of path planning for a mobile robot | |
US9046893B2 (en) | Deep lane navigation system for automatic guided vehicles | |
EP3770711A1 (en) | Method for repositioning robot | |
CN112004645A (en) | Intelligent cleaning robot | |
US20110046784A1 (en) | Asymmetric stereo vision system | |
EP2296072A2 (en) | Asymmetric stereo vision system | |
US20210341928A1 (en) | Path planning | |
EP4179400B1 (en) | Autonomous machine navigation using reflections from subsurface objects | |
KR20210071383A (en) | Mapping method of Lawn Mower Robot. | |
CN108363395A (en) | A kind of method of AGV automatic obstacle avoidings | |
CN115008465A (en) | Robot control method, robot, and computer-readable storage medium | |
JP7161602B2 (en) | Mobile robot and method for controlling said mobile robot | |
WO2024199675A1 (en) | A method for navigating an autonomous mower | |
Nourani-Vatani et al. | Practical path planning and obstacle avoidance for autonomous mowing | |
EP4104029A1 (en) | Autonomous machine navigation with object detection and 3d point cloud | |
Eda et al. | Development of autonomous mobile robot “MML-05” based on i-Cart mini for Tsukuba challenge 2015 | |
Date et al. | Real world experiments of an autonomous mobile robot in the pedestrian environment | |
KR20210146140A (en) | Moving robot system and method for generating boundary information of the same | |
WO2024159849A1 (en) | Operation method for autonomous operation device, and autonomous operation device | |
WO2014074026A1 (en) | A method for navigation and joint coordination of automated devices | |
US20230333563A1 (en) | Path planning for automatic mowers |