WO2021256973A1 - Methods of navigating a self-propelled robotic tool, and robotic tools and computer programs implementing such methods - Google Patents

Methods of navigating a self-propelled robotic tool, and robotic tools and computer programs implementing such methods Download PDF

Info

Publication number
WO2021256973A1
WO2021256973A1 PCT/SE2021/050549 SE2021050549W WO2021256973A1 WO 2021256973 A1 WO2021256973 A1 WO 2021256973A1 SE 2021050549 W SE2021050549 W SE 2021050549W WO 2021256973 A1 WO2021256973 A1 WO 2021256973A1
Authority
WO
WIPO (PCT)
Prior art keywords
route
deviation
present
work area
estimated
Prior art date
Application number
PCT/SE2021/050549
Other languages
French (fr)
Inventor
Dan LILJEDAHL
Daniel WIKESTAD
Original Assignee
Husqvarna Ab
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Husqvarna Ab filed Critical Husqvarna Ab
Publication of WO2021256973A1 publication Critical patent/WO2021256973A1/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • G01C21/30Map- or contour-matching
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01DHARVESTING; MOWING
    • A01D34/00Mowers; Mowing apparatus of harvesters
    • A01D34/006Control or measuring arrangements
    • A01D34/008Control or measuring arrangements for automated or remotely controlled operation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/20Control system inputs
    • G05D1/24Arrangements for determining position or orientation
    • G05D1/246Arrangements for determining position or orientation using environment maps, e.g. simultaneous localisation and mapping [SLAM]
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/20Control system inputs
    • G05D1/24Arrangements for determining position or orientation
    • G05D1/247Arrangements for determining position or orientation using signals provided by artificial sources external to the vehicle, e.g. navigation beacons
    • G05D1/248Arrangements for determining position or orientation using signals provided by artificial sources external to the vehicle, e.g. navigation beacons generated by satellites, e.g. GPS
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01DHARVESTING; MOWING
    • A01D2101/00Lawn-mowers

Definitions

  • the present invention relates to methods of navigating a robotic tool, for example a robotic lawnmower, within a work area.
  • Self-propelled robotic tools are widely used to perform maintenance operations within a predetermined work area.
  • robotic lawnmowers are used for autonomously cutting lawns within a predetermined work area to be mowed.
  • the size of the area that can be serviced by a robotic lawnmower may be limited by various considerations, such as battery capacity (for electrically powered lawnmowers), work area complexity, and the ability to navigate the work area in a systematic manner. There is a strive for increasing the area capacity of robotic lawnmowers.
  • Other exemplary considerations in lawnmower design are cost, complexity, reliability, visual cutting result, and ease of use.
  • US 2015/0234385 A1 discloses a systematic navigation method according to which a lawnmower navigates within boundaries defining an area to be mowed, and uses grass length sensors to follow an edge between cut grass and un-cut grass.
  • a method of navigating a self-propelled robotic tool to perform a task within a work area comprising a positioning device and a work implement having an operating width
  • the method comprising planning a route to cover the work area with the work implement, with an operating width overlap between adjacent paths, to obtain a present planned route; navigating the work area according to the present planned route while performing the task; determining an estimated actual route based on positioning information from the positioning device; estimating a deviation of the estimated actual route from the present planned route; and setting an updated operating width overlap based on the estimated deviation of the estimated actual route from the present planned route.
  • the operating width overlap may be precisely adapted to the actual navigation or traction conditions of the work area, such that excess overlap may be avoided.
  • This allows shortening the time required to perform the task, and/or expanding the work area that can be processed by the robotic tool. It may also reduce energy consumption of the robotic tool, and the wear on the robotic tool as well as on the work area. For example, slopes, rough work area surface, obstacles, and/or other difficult terrain may move the robotic tool out of its planned route. Such deviations may be compensated for by adjusting the operating width overlap.
  • the task may be of such a character that the entire work area should be covered or processed by the route of the robotic tool.
  • the present planned route for covering the work area may be determined prior to navigating the work area.
  • the work area may be defined on a map stored in a memory of the robotic tool.
  • a route plan may extend across the work area in such a manner that substantially the entire work area will be covered by the robotic tool, i.e. overrun within the operating width of the working implement of the robotic tool.
  • setting an operating width overlap based on the estimated deviation of the estimated actual route from the present planned route may comprise setting the operating width overlap for a next planned route.
  • setting an operating width overlap based on the estimated deviation of the estimated actual route from the present planned route may comprise setting the operating width overlap for the present planned route; and re planning the present planned route.
  • estimating a deviation of the estimated actual route from the present planned route may comprise estimating a local deviation of an actual position, determined based on positioning information from the positioning device, from a planned position according to the present planned route; and setting a local operating width overlap for a next planned route based on the estimated local deviation of the actual position from the planned position.
  • estimating a deviation of the estimated actual route from the present planned route may comprise estimating an average deviation of the estimated actual route from the present planned route.
  • estimating a deviation of the estimated actual route from the present planned route may comprise estimating a maximum deviation of the estimated actual route from the present planned route.
  • planning a route to cover the work area with the work implement, with an operating width overlap between adjacent paths, to obtain a present planned route may comprise setting the operating width overlap based on terrain information in a stored map.
  • the operating width overlap may be set to the same value for the entire route.
  • different positions or route segments along the route may be given different local operating width overlap settings based on the local terrain indicated on the map.
  • Terrain information used for setting the operating width overlap may comprise e.g. slope inclination, GNSS shadowing, and/or drive wheel grip/traction conditions.
  • the present planned route may comprise said at least a portion of the work area being covered by a set of parallel paths oriented in a first direction.
  • the method may further comprise comparing the deviation of the estimated actual route from the present planned route to a previously stored deviation of a previous estimated actual route from a previous route plan, the previous route plan being different from the present route plan; and setting a next route based on said comparison.
  • the previous route plan may comprise said at least a portion of the work area being covered by a set of parallel paths oriented in a second direction different from said first direction.
  • planning a route may comprise defining a route in a GNSS (Global Navigation Satellite System) reference system, and navigating the work area may comprise receiving GNSS signals.
  • the GNSS signals may be received exclusively from satellites, or may be supplemented by signals from one or several local positioning beacons.
  • the robotic tool may be configured to determine its position using RTK- (Real-Time Kinematic) enhanced GNSS to obtain high positioning accuracy.
  • the updated operating width overlap may further be based on an estimated accuracy of positioning information from the positioning device.
  • the work implement may have a fixed operating width, and setting an operating width overlap may comprise setting a centre-to-centre distance between adjacent paths.
  • the work implement may have an adjustable operating width, and the robotic tool may be configured to automatically adjust the operating width based on the estimated deviation.
  • the robotic tool may be a robotic garden tool.
  • the robotic garden tool may be a robotic lawnmower, the work implement may be a grass cutter, the operating width may be a cutting width, and the task may be cutting grass.
  • a method of navigating a self-propelled robotic tool to perform a task within a work area comprising navigating the work area according to a present route plan while performing the task; recording an estimated actual route based on positioning information from a positioning device; estimating a deviation of the estimated actual route from the route plan; comparing the estimated deviation to a previously stored estimated deviation from a previous route plan, the previous route plan being different from the present route plan; and setting a next route plan based on said comparison.
  • previous routes which cause less deviation between the actual and planned routes may be automatically preferred.
  • the route plan resulting in the lowest deviations may be preferred.
  • An operating width overlap for the next route plan may be set based on an expected deviation of the estimated actual route from the selected next route plan.
  • the expected deviation may be based on deviations estimated during one or several previous runs of a route plan corresponding to the selected route plan.
  • the robotic tool may be a robotic garden tool such as a robotic lawnmower.
  • the method and the robotic tool may be configured in accordance with any of the embodiments defined above.
  • a method of navigating a self-propelled robotic tool to perform a task within a work area comprising a positioning device and a work implement having an operating width
  • the method comprising planning a route to cover the work area with the work implement, with an operating width overlap between adjacent paths, to obtain a present planned route; navigating the work area according to the present planned route while performing the task; determining an estimated actual route based on positioning information from the positioning device; estimating, for a path, a deviation of the estimated actual route from the present planned route; based on the deviation, determining that the path is a failed path; and updating the present planned route with at least one supplementary path adjacent to the failed path.
  • the robotic tool may ascertain that a sufficient area coverage is obtained.
  • a supplementary path may be added adjacent to the failed path on each side of the failed path.
  • a self-propelled robotic tool comprising a positioning device, a work implement configured to carry out a task in a work area, and processing equipment configured to carry out any of the methods defined above.
  • a computer program product comprising instructions which, when the program is executed on a processor, carries out any of the methods defined above.
  • a computer-readable medium comprising executable code representing instructions to a self-propelled robotic tool to perform any of the methods defined above.
  • Fig. 1 is a perspective view of a robotic lawnmower system comprising a charging station and a robotic lawnmower servicing a work area;
  • Fig. 2 is a block diagram of the robotic lawnmower of Fig. 1 , and illustrates various functional blocks of the robotic lawnmower;
  • Fig. 3 is a perspective view of a cutting device of the robotic lawnmower of Fig.
  • Fig. 4 is a schematic illustration of path segments of an exemplary navigation route, as seen from above, of the robotic lawnmower of Fig. 1 ;
  • Fig. 5 is a schematic illustration of a path segment of a planned navigation route, along with a corresponding segment of an actual navigation route, as seen from above;
  • Fig. 6 is a schematic illustration of a planned navigation route, as seen from above, of the robotic lawnmower of Fig. 1 , for covering a work area during a work session;
  • Fig. 7 is a schematic illustration of another planned navigation route, as seen from above, of the robotic lawnmower of Fig. 1 , for covering the work area during another work session;
  • Fig. 8 is a flow chart illustrating a first method of planning a route of the robotic lawnmower of Fig. 1 ;
  • Fig. 9 is a flow chart illustrating a second method of planning a route of the robotic lawnmower of Fig. 1 ;
  • Fig. 10 is a flow chart illustrating a third method of planning a route of the robotic lawnmower of Fig. 1;
  • Fig. 11 is a perspective view of a storage medium carrying a computer program implementing any of the methods of Figs 8-10.
  • Fig. 1 schematically illustrates an overview of a robotic tool system 10 configured to perform a task within a work area 12 such as a garden, a parcel, a crop field, or a floor area.
  • the robotic tool system 10 comprises a battery-powered, self- propelled, and autonomously navigating robotic tool 14, along with a charging station 16 for charging a battery of the robotic tool 14.
  • the robotic tool 14 may be a robotic lawnmower, and for the sake of simplicity, it will be referred to as such in the following.
  • the present disclosure may also be useful in connection with self-propelled robotic tools configured as golf ball collecting tools, vacuum cleaners, floor cleaners, street sweepers, snow removal tools, agricultural machinery, mine clearance robots, or any other type of robotic tool that is required to operate over a work area in a methodical and systematic or position oriented manner.
  • the teachings herein may be of particular use in robotic tools configured to execute a task over an area to be treated, wherein a full or at least predetermined coverage of the area to be treated is desired.
  • the work area 12 may be delimited by a boundary 13 which may be physical, i.e. defined by physical obstacles or a boundary cable carrying a boundary signal, or virtual, i.e. based on positions of boundary segments in a map used by the robotic lawnmower 14 for navigating.
  • the robotic lawnmower 14 is provided with wheels 18, 20 for moving within the work area 12.
  • the robotic lawnmower 14 has two front wheels 18, which are of caster type, and two rear wheels 20, even though only one of each wheel type 18, 20 is visible in the view of Fig. 1.
  • at least one of the wheels 18, 20 is connected to a motor, such an electric motor, either directly or via a transmission (not illustrated), for propelling the robotic lawnmower 14.
  • a robotic tool also typically comprises at least one work implement configured to perform the task on the area to be treated.
  • the work implement is a grass cutter (not illustrated), which may be rotatable about a vertical axis.
  • Fig. 2 illustrates functional blocks of the robotic lawnmower 14.
  • each of the rear wheels 20 is connected to a respective electric propulsion motor 24. This allows for driving the rear wheels 20 independently of one another, enabling e.g. steep turning of the robotic lawnmower 14.
  • the robotic lawnmower 14 further comprises a controller 26.
  • the controller 26 may be connected to sensors, actuators, and communication interfaces of various kinds, and may be implemented using central processing unit executing instructions stored on a memory 28.
  • controller 26 different combinations of general and application-specific integrated circuits may be used for the controller 26.
  • the memory 28 may be implemented using many different memory technologies.
  • the controller 26 is configured to read instructions from the memory 28 and execute these instructions possibly in view of different sensor signals to control the operation of the robotic lawnmower 14.
  • the controller 26 is configured to, based on the instructions, control the robotic lawnmower in an autonomous or semi-autonomous manner, i,e. with no, or only occasional, instructions from a human operator.
  • the controller 26 also controls the operation of a cutter motor 30, which is configured to drive the grass cutter.
  • a wireless transceiver 32 is connected to the controller 26, and allows the controller 26 to communicate with the charging station 16 or any other device, such as a remote control or a smart phone (not shown).
  • the robotic lawnmower 14 further comprises a positioning device 34.
  • the positioning device 34 comprises an inertial navigation device 36, such as an accelerometer or a gyroscope, which allows the robotic lawnmower 14 to keep track of its movement within the area 12 to be treated.
  • the inertial navigation device 36 may be supplemented by a compass 38, to provide basic orientation information that may compensate for any drift of the inertial navigation device 36.
  • the positioning device 34 further comprises a GNSS (Global Navigation Satellite System) receiver 40, which may receive navigation signal from navigation satellite systems such as GPS (Global Positioning System) satellites, GLONASS satellites, Beidou satellites, Galileo satellites, or any combination of those.
  • the GNSS satellite signals may be supplemented by correction signals from one or several local beacons, or over a network, which may enable RTK (real-time kinematic) enhanced GNSS navigation.
  • a local RTK beacon may e.g. be arranged in the charging station 16 (Fig. 1).
  • the controller 26 also controls the propulsion motors 24, thereby controlling the propulsion of the robotic lawnmower 14 within the area 12 to be treated.
  • the propulsion motors 24 may be stepper motors, allowing the controller 26 to keep track of the respective number of turns of the motors 24, and thereby also the distance travelled by the robotic lawnmower 14, as well as any turning angle of the robotic lawnmower 14 when the motors 24 are operated at different speeds or in reverse directions.
  • the propulsion motors 24 operate as odometers.
  • the wheels 20 may be provided with odometer indexers configured to provide feedback to the controller 26 about the number of turns of each motor 24.
  • Navigation information from the positioning device 34 and the motors 24 is fused in the controller 26 to provide an accurate position indication, in order to enable an accurate and systematic movement pattern of the robotic lawnmower 14 for covering the work area 12 (Fig. 1).
  • high-precision positioning using e.g. RTK GNSS also allows obtaining an estimate of the current accuracy of the obtained position.
  • the controller 26, positioning device 34, transceiver 32, and electric motors 24, 30 are powered by a battery 42.
  • the robotic lawnmower 14 is configured to navigate to the charging station 16 (Fig. 1) on a regular basis, for example between work sessions and/or whenever the battery charge is running low, in order to dock with the charging station 16 for recharging the battery 42.
  • the charging station 16 may be connected so as to receive power from the electric power grid.
  • Fig. 3 illustrates an exemplary grass cutter 44 as seen obliquely from below.
  • the grass cutter 44 comprises a plurality of grass cutting blades 46, which are pivotally connected to the radial periphery of a knife carrier disc 48.
  • the knife carrier disc 48 is configured to be rotated about a substantially vertical cutter axis C by the cutter motor 30.
  • a skid plate 50 is positioned below the knife carrier disc 48; the skid plate 50 is rotatable in relation to the knife carrier disc 48 about the cutter axis C, such that the skid plate 50 may remain non-rotary in relation to the grass to be cut, while the knife carrier disc 48 rotates.
  • the robotic lawnmower 14 stores in its memory 28 (Fig. 2) a map of the work area 12, and is configured to navigate the work area 12 in a systematic manner. For optimum coverage, the robotic lawnmower 14 plans its route within the work area 12 to follow parallel, adjacent paths. As the robotic lawnmower 14 propels itself forward while cutting grass, the grass cutter 44 (Fig. 3) cuts within a cutting width, which is determined by the diameter of the trajectory of the cutting blades’ 46 radially outermost tips about the cutting axis C. This brings us to Fig.
  • the route plan RP comprises adjacent, straight, parallel path segments P1, P2. which are separated by a centre- to-centre separation distance S.
  • the cutting width W of the grass cutter 44 results in a cutting overlap OL of the adjacent parallel path segments P1 , P2.
  • the controller 26 plans the route RP to obtain an overlap OL which is sufficient for covering a typical lawn.
  • the route plan RP may account for known terrain conditions and positioning accuracies at different positions of the stored map, and the overlap OL may be set differently at different positions.
  • the controller 26 may plan the route RP to have more closely spaced paths P1 , P2 in areas where the terrain is sloping sideways, relative to the robotic lawnmower’s 14 heading, to increase the overlap OL where the robotic lawnmower 14 may be expected to slip sideways.
  • the robotic lawnmower 14 will navigate according to the planned route RP, based on positioning information from the positioning device 34 (Fig. 2), while cutting grass. While doing so, the robotic lawnmower 14 may face varying conditions that make the robotic lawnmower 14 deviate from the planned route RP.
  • Fig. 5 illustrates a segment of the planned route RP along with an exemplary estimated actual route RA.
  • the estimated actual route RA may be estimated by the controller 26 based on position information from the positioning device 34 (Fig. 2).
  • the robotic lawnmower 14 when the centre of the robotic lawnmower 14 according to the present route plan RP should be at a planned position PP along the planned route RP, it may actually be at an actual position PA, which may be displaced from the planned route RP by a deviation D.
  • the robotic lawnmower 14 When navigating the work area 12 (Fig. 1), the robotic lawnmower 14 continuously or regularly estimates the deviation D based on estimated positions received from the positioning device 34.
  • the estimated deviation D represents the shortest distance from an estimated actual position PA to the planned route RP. Flence, the deviation D may vary along the actual route RA of the robotic lawnmower 14.
  • the estimated deviation D may also incorporate an estimated positioning error determined by the positioning device 34, by adding the uncertainty of the estimated position to the estimated distance between the estimated actual position PA and the planned route RP.
  • the robotic lawnmower 14 may further determine, for a route segment or for the entire planned route RP, an average estimated deviation DA, as well as a maximum estimated deviation DM. All those values D, DA, DM represent different measures of a deviation between the actual route RA and the planned route RP.
  • the robotic lawnmower 14 may increase the operating width overlap OL (Fig. 4) for the next work session to avoid leaving strips of uncut grass between adjacent path segments P1 , P2 (Fig. 4). This may be done by generating an updated route plan with more closely spaced adjacent path segments P1 , P2. Similarly, if the deviation is smaller than what may be typical, the robotic lawnmower 14 may generate an updated route plan with an increased separation distance S (Fig. 4), i.e. smaller overlap OL (Fig. 4), to enable covering the work area with fewer parallel paths P 1 , P2.
  • the separation distance S should typically not be allowed to exceed the cutting width W (Fig. 4).
  • the robotic lawnmower 14 may iterate the procedure, i.e. for each time a route plan RP is pursued, deviations from the respective route plan RP are estimated, and an updated overlap is generated for the next route plan. It may also be beneficial to limit the magnitude of the overlap change for each iteration, in order to trigger slow overlap changes over time, thereby accommodating for temporary variations of traction conditions.
  • Fig. 6 illustrates an exemplary work area 12 within a boundary 13, along with an exemplary route plan RP.
  • the route plan RP may comprise a route segment B following the contour of the boundary 13, for cutting the outer edge of the work area 12, and a plurality of parallel path segments P1 , P2 etc., which are mutually spaced to generate an overlap OL in the manner illustrated in Fig. 4.
  • the work area may be located on a slope, indicated by a direction of downhill inclination i.
  • the plurality of parallel path segments P1 , P2 are oriented in a first direction, which in the illustrated example coincides with the direction of the slope’s inclination i.
  • the controller 26 (Fig. 2) may evaluate the estimated deviation between actual and planned routes RA (Fig. 5), RP, and set an updated overlap OL (Fig.
  • next route plan for the next route plan to position some or all of the parallel paths P1 , P2 closer or further away from each other.
  • controller 26 may also set an updated overlap OL for remaining parts of the present route plan RP prior to finishing the present work session, and re-plan the remainder of the present route plan RP.
  • the parallel paths of the next route plan may be directed in the same direction as the paths P1 , P2 of the present route plan RP.
  • Fig. 7 illustrates an exemplary alternative next route plan RP2 for the same work area 12, according to which the parallel paths are oriented differently.
  • different overlaps OL (Fig. 4) may be set for different positions or sub-areas of the work area 12, or for different path segments along the next planned route RP2.
  • the next route plan RP2 may comprise a route segment B following the contour of the boundary 13, and a plurality of parallel path segments P3, P4.
  • the separation distances between the path segments P3, P4 of the next route plan RP2 may, based on any changes to the overlap OL (Fig.
  • the robotic lawnmower 14 may also try a different orientation of the parallel path segments; in the example illustrated in Fig. 7, the parallel path segments P3, P4 are oriented perpendicular to the direction of the slope inclination i.
  • different local, average, and/or maximum deviations D, DA, DM may be obtained, for example due to the robotic lawnmower 14 propelling itself along differently oriented parallel path segments in relation to the direction of the slope inclination i.
  • the controller 26 may also select, for a next planned route RP2, a previously pursued route plan RPO that optimizes any selected measure of the deviation D, DA, DM.
  • the robotic lawnmower 14 may test several different route plans during a running-in period, and for each new route plan it tries, the robotic lawnmower may compare the average deviation DA with average deviations of previously tried routes, and keep track of which route gives the least average deviation.
  • next planned route RP2 may e.g. be a copy of a previously pursued route plan RPO, the pursuing of which has been tested to result in a minimum of average deviation DA of the actual route from the respective planned route RPO.
  • a previously pursued route plan RPO which has yielded good deviation results, may be slightly modified before setting as the next route plan RP2 in a manner similar to a genetic algorithm.
  • the controller 26 may compare the estimated deviation D, DA, DM to the overlap OL according to the planned route RP, and based on the comparison, determine that that a path, for example the path P1 , was failed in the sense that the overlap was insufficient to accommodate for the deviation from the planned route RP. It can therefore be expected that strips of uncut grass remain on one or both sides of the failed path P1.
  • the controller may update the present planned route RP with a pair of supplementary paths P 1 ’ , P1” straddling the failed path P1.
  • the flow chart of Fig. 8 illustrates a method according to which the robotic lawnmower 14 of Fig. 1 dynamically adapts its cutting width overlap OL.
  • step 801 the robotic lawnmower 14 plans a route to cover the work area 12 with the cutter 44, with an operating width overlap OL between adjacent paths (P1 ,
  • step 802 the robotic lawnmower 14 navigates the work area 12 according to the present planned route RP while cutting grass, and while determining an estimated actual route RA (Fig. 5) based on positioning information from the positioning device 34 (Fig. 2).
  • step 803 the robotic lawnmower 14 estimates a deviation DA (Fig. 5) of the estimated actual route RA from the present planned route RP.
  • step 804 the robotic lawnmower 14 sets an updated operating width overlap OL based on the estimated deviation DA of the estimated actual route RA from the present planned route RP.
  • the flow chart of Fig. 9 illustrates a method according to which the robotic lawnmower 14 of Fig. 1 evaluates previous route plans, and plans future routes based on the evaluations.
  • step 901 the robotic lawnmower 14 navigates the work area 12 according to a present route plan RP (Fig. 6) while cutting grass, and while recording an estimated actual route RA (Fig. 5) based on positioning information from a positioning device 34 (Fig. 2).
  • step 902 the robotic lawnmower 14 estimates a deviation DA (Fig. 5) of the estimated actual route RAfrom the route plan RP.
  • step 903 the robotic lawnmower 14 compares the deviation DA to a previously stored deviation from a previous route plan, the previous route plan being different from the present route plan RP.
  • step 904 the robotic lawnmower 14 sets a next route plan RP2 (Fig. 7) based on the comparison in step 903.
  • the flow chart of Fig. 10 illustrates a method according to which the robotic lawnmower 14 of Fig. 1 detects failed paths and inserts supplementary paths.
  • step 1001 the robotic lawnmower 14 plans a route to cover the work area 12 with the grass cutter 44, with an operating width overlap OL (Fig. 4) between adjacent paths P1, P2 (Fig. 4), to obtain a present planned route RP.
  • OL operating width overlap
  • step 1002 the robotic lawnmower 14 navigates the work area 12 according to the present planned route RP while cutting grass and while determining an estimated actual route RA (Fig. 5) based on positioning information from the positioning device 34 (Fig. 2).
  • the robotic lawnmower 14 estimates, for a path P1 (Fig. 6), a deviation D (Fig. 5) of the estimated actual route RA from the present planned route RP, and determines, based on the deviation D, that the path P1 is a failed path.
  • step 1004 the robotic lawnmower 14 updates the present planned route RP with a pair of supplementary paths PT, P1” (Fig. 6) adjacent to the failed path P1.
  • the methods described herein may be implemented in a computer program, which may be loaded or loadable into the controller 26 for execution.
  • the computer program may be carried by a computer readable medium, such as compact disc, flash memory, or similar device in any manner apparent to those skilled in the art.
  • Fig. 12 illustrates an exemplary portable memory, in the embodiment of a compact disc 98, carrying such a computer program.
  • the compact disc 98 is loadable into a computer (not illustrated) connectable to the robotic lawnmower 14, for transfer of the program to the robotic lawnmower 14.

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Environmental Sciences (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Guiding Agricultural Machines (AREA)

Abstract

A method of navigating a self-propelled robotic tool (14) to perform a task within a work area comprises planning a route to cover the work area with a work implement (44), with an operating width overlap (OL) between adjacent paths (P1, P2), to obtain a present planned route (RP); navigating the work area according to the present planned route (RP) while performing the task; determining an estimated actual route based on positioning information from a positioning device (34); estimating a deviation of the estimated actual route from the present planned route (RP); and setting an updated operating width overlap (OL) based on the estimated deviation of the estimated actual route from the present planned route (RP).

Description

METHODS OF NAVIGATING A SELF-PROPELLED ROBOTIC TOOL AND ROBOTIC TOOLS AND COMPUTER PROGRAMS IMPLEMENTING SUCH
METHODS
Field of the invention
The present invention relates to methods of navigating a robotic tool, for example a robotic lawnmower, within a work area.
Background
Self-propelled robotic tools are widely used to perform maintenance operations within a predetermined work area. By way of example, robotic lawnmowers are used for autonomously cutting lawns within a predetermined work area to be mowed. The size of the area that can be serviced by a robotic lawnmower may be limited by various considerations, such as battery capacity (for electrically powered lawnmowers), work area complexity, and the ability to navigate the work area in a systematic manner. There is a strive for increasing the area capacity of robotic lawnmowers. Other exemplary considerations in lawnmower design are cost, complexity, reliability, visual cutting result, and ease of use.
US 2015/0234385 A1 discloses a systematic navigation method according to which a lawnmower navigates within boundaries defining an area to be mowed, and uses grass length sensors to follow an edge between cut grass and un-cut grass.
Summary
It is an object of the present invention to solve, or at least mitigate, parts or all of the above mentioned problems. To this end, according to a first aspect, there is provided a method of navigating a self-propelled robotic tool to perform a task within a work area, the robotic tool comprising a positioning device and a work implement having an operating width, the method comprising planning a route to cover the work area with the work implement, with an operating width overlap between adjacent paths, to obtain a present planned route; navigating the work area according to the present planned route while performing the task; determining an estimated actual route based on positioning information from the positioning device; estimating a deviation of the estimated actual route from the present planned route; and setting an updated operating width overlap based on the estimated deviation of the estimated actual route from the present planned route. Thereby, the operating width overlap may be precisely adapted to the actual navigation or traction conditions of the work area, such that excess overlap may be avoided. This allows shortening the time required to perform the task, and/or expanding the work area that can be processed by the robotic tool. It may also reduce energy consumption of the robotic tool, and the wear on the robotic tool as well as on the work area. For example, slopes, rough work area surface, obstacles, and/or other difficult terrain may move the robotic tool out of its planned route. Such deviations may be compensated for by adjusting the operating width overlap. Typically, the task may be of such a character that the entire work area should be covered or processed by the route of the robotic tool. The present planned route for covering the work area may be determined prior to navigating the work area. The work area may be defined on a map stored in a memory of the robotic tool. A route plan may extend across the work area in such a manner that substantially the entire work area will be covered by the robotic tool, i.e. overrun within the operating width of the working implement of the robotic tool.
According to embodiments, setting an operating width overlap based on the estimated deviation of the estimated actual route from the present planned route may comprise setting the operating width overlap for a next planned route.
According to embodiments, setting an operating width overlap based on the estimated deviation of the estimated actual route from the present planned route may comprise setting the operating width overlap for the present planned route; and re planning the present planned route.
According to embodiments, estimating a deviation of the estimated actual route from the present planned route may comprise estimating a local deviation of an actual position, determined based on positioning information from the positioning device, from a planned position according to the present planned route; and setting a local operating width overlap for a next planned route based on the estimated local deviation of the actual position from the planned position.
According to embodiments, estimating a deviation of the estimated actual route from the present planned route may comprise estimating an average deviation of the estimated actual route from the present planned route.
According to embodiments, estimating a deviation of the estimated actual route from the present planned route may comprise estimating a maximum deviation of the estimated actual route from the present planned route.
According to embodiments, planning a route to cover the work area with the work implement, with an operating width overlap between adjacent paths, to obtain a present planned route, may comprise setting the operating width overlap based on terrain information in a stored map. The operating width overlap may be set to the same value for the entire route. Alternatively, different positions or route segments along the route may be given different local operating width overlap settings based on the local terrain indicated on the map. Terrain information used for setting the operating width overlap may comprise e.g. slope inclination, GNSS shadowing, and/or drive wheel grip/traction conditions.
According to embodiments, the present planned route may comprise said at least a portion of the work area being covered by a set of parallel paths oriented in a first direction.
According to embodiments, the method may further comprise comparing the deviation of the estimated actual route from the present planned route to a previously stored deviation of a previous estimated actual route from a previous route plan, the previous route plan being different from the present route plan; and setting a next route based on said comparison.
According to embodiments, the previous route plan may comprise said at least a portion of the work area being covered by a set of parallel paths oriented in a second direction different from said first direction. By trying different orientations of a systematic pattern in the same work area, the orientation requiring the least overlap may be found. For example, the deviations between actual and planned routes may differ quite a lot depending on whether a slope is navigated straight uphill/downhill or leaning sideways.
According to embodiments, planning a route may comprise defining a route in a GNSS (Global Navigation Satellite System) reference system, and navigating the work area may comprise receiving GNSS signals. The GNSS signals may be received exclusively from satellites, or may be supplemented by signals from one or several local positioning beacons. By way of example, the robotic tool may be configured to determine its position using RTK- (Real-Time Kinematic) enhanced GNSS to obtain high positioning accuracy.
According to embodiments, the updated operating width overlap may further be based on an estimated accuracy of positioning information from the positioning device.
According to embodiments, the work implement may have a fixed operating width, and setting an operating width overlap may comprise setting a centre-to-centre distance between adjacent paths. Alternatively, the work implement may have an adjustable operating width, and the robotic tool may be configured to automatically adjust the operating width based on the estimated deviation.
According to embodiments, the robotic tool may be a robotic garden tool. The robotic garden tool may be a robotic lawnmower, the work implement may be a grass cutter, the operating width may be a cutting width, and the task may be cutting grass.
According to a second aspect, parts or all of the above mentioned problems are solved, or at least mitigated, by a method of navigating a self-propelled robotic tool to perform a task within a work area, the method comprising navigating the work area according to a present route plan while performing the task; recording an estimated actual route based on positioning information from a positioning device; estimating a deviation of the estimated actual route from the route plan; comparing the estimated deviation to a previously stored estimated deviation from a previous route plan, the previous route plan being different from the present route plan; and setting a next route plan based on said comparison. Thereby, previous routes which cause less deviation between the actual and planned routes may be automatically preferred. Typically, the route plan resulting in the lowest deviations may be preferred. An operating width overlap for the next route plan may be set based on an expected deviation of the estimated actual route from the selected next route plan. The expected deviation may be based on deviations estimated during one or several previous runs of a route plan corresponding to the selected route plan. Again, the robotic tool may be a robotic garden tool such as a robotic lawnmower. The method and the robotic tool may be configured in accordance with any of the embodiments defined above.
According to a third aspect, parts or all of the above mentioned problems are solved, or at least mitigated, by a method of navigating a self-propelled robotic tool to perform a task within a work area, the robotic tool comprising a positioning device and a work implement having an operating width, the method comprising planning a route to cover the work area with the work implement, with an operating width overlap between adjacent paths, to obtain a present planned route; navigating the work area according to the present planned route while performing the task; determining an estimated actual route based on positioning information from the positioning device; estimating, for a path, a deviation of the estimated actual route from the present planned route; based on the deviation, determining that the path is a failed path; and updating the present planned route with at least one supplementary path adjacent to the failed path. Thereby, the robotic tool may ascertain that a sufficient area coverage is obtained. According to embodiments, a supplementary path may be added adjacent to the failed path on each side of the failed path.
According to a fourth aspect, parts or all of the above mentioned problems are solved, or at least mitigated, by a self-propelled robotic tool comprising a positioning device, a work implement configured to carry out a task in a work area, and processing equipment configured to carry out any of the methods defined above.
According to a fifth aspect, parts or all of the above mentioned problems are solved, or at least mitigated, by a computer program product comprising instructions which, when the program is executed on a processor, carries out any of the methods defined above.
According to a sixth aspect, parts or all of the above mentioned problems are solved, or at least mitigated, by a computer-readable medium comprising executable code representing instructions to a self-propelled robotic tool to perform any of the methods defined above.
It is noted that embodiments of the invention may be embodied by all possible combinations of features recited in the claims. Further, it will be appreciated that the various embodiments described for the method according to the first aspect are combinable with the methods according to the second and third aspects, as well as with the device according to the fourth aspect and the computer programs of the fifth and sixth aspects, and vice versa.
Brief description of the drawings
The above, as well as additional objects, features and advantages of the present invention will be better understood through the following illustrative and non limiting detailed description of preferred embodiments of the present invention, with reference to the appended drawings, where the same reference numerals and letters will be used for similar elements, wherein:
Fig. 1 is a perspective view of a robotic lawnmower system comprising a charging station and a robotic lawnmower servicing a work area;
Fig. 2 is a block diagram of the robotic lawnmower of Fig. 1 , and illustrates various functional blocks of the robotic lawnmower;
Fig. 3 is a perspective view of a cutting device of the robotic lawnmower of Fig.
1 ;
Fig. 4 is a schematic illustration of path segments of an exemplary navigation route, as seen from above, of the robotic lawnmower of Fig. 1 ; Fig. 5 is a schematic illustration of a path segment of a planned navigation route, along with a corresponding segment of an actual navigation route, as seen from above;
Fig. 6 is a schematic illustration of a planned navigation route, as seen from above, of the robotic lawnmower of Fig. 1 , for covering a work area during a work session;
Fig. 7 is a schematic illustration of another planned navigation route, as seen from above, of the robotic lawnmower of Fig. 1 , for covering the work area during another work session;
Fig. 8 is a flow chart illustrating a first method of planning a route of the robotic lawnmower of Fig. 1 ;
Fig. 9 is a flow chart illustrating a second method of planning a route of the robotic lawnmower of Fig. 1 ;
Fig. 10 is a flow chart illustrating a third method of planning a route of the robotic lawnmower of Fig. 1; and
Fig. 11 is a perspective view of a storage medium carrying a computer program implementing any of the methods of Figs 8-10.
All the figures are schematic, not necessarily to scale, and generally only show parts which are necessary in order to elucidate the embodiments, wherein other parts may be omitted.
Detailed description of the exemplary embodiments
Fig. 1 schematically illustrates an overview of a robotic tool system 10 configured to perform a task within a work area 12 such as a garden, a parcel, a crop field, or a floor area. The robotic tool system 10 comprises a battery-powered, self- propelled, and autonomously navigating robotic tool 14, along with a charging station 16 for charging a battery of the robotic tool 14. As primarily described herein, the robotic tool 14 may be a robotic lawnmower, and for the sake of simplicity, it will be referred to as such in the following. Flowever, the present disclosure may also be useful in connection with self-propelled robotic tools configured as golf ball collecting tools, vacuum cleaners, floor cleaners, street sweepers, snow removal tools, agricultural machinery, mine clearance robots, or any other type of robotic tool that is required to operate over a work area in a methodical and systematic or position oriented manner. In particular, the teachings herein may be of particular use in robotic tools configured to execute a task over an area to be treated, wherein a full or at least predetermined coverage of the area to be treated is desired. The work area 12 may be delimited by a boundary 13 which may be physical, i.e. defined by physical obstacles or a boundary cable carrying a boundary signal, or virtual, i.e. based on positions of boundary segments in a map used by the robotic lawnmower 14 for navigating.
The robotic lawnmower 14 is provided with wheels 18, 20 for moving within the work area 12. In the illustrated example, the robotic lawnmower 14 has two front wheels 18, which are of caster type, and two rear wheels 20, even though only one of each wheel type 18, 20 is visible in the view of Fig. 1. Typically, at least one of the wheels 18, 20 is connected to a motor, such an electric motor, either directly or via a transmission (not illustrated), for propelling the robotic lawnmower 14. A robotic tool also typically comprises at least one work implement configured to perform the task on the area to be treated. In the example of the robotic lawnmower 14, the work implement is a grass cutter (not illustrated), which may be rotatable about a vertical axis.
Fig. 2 illustrates functional blocks of the robotic lawnmower 14. In the example of Fig. 2, each of the rear wheels 20 is connected to a respective electric propulsion motor 24. This allows for driving the rear wheels 20 independently of one another, enabling e.g. steep turning of the robotic lawnmower 14. The robotic lawnmower 14 further comprises a controller 26. The controller 26 may be connected to sensors, actuators, and communication interfaces of various kinds, and may be implemented using central processing unit executing instructions stored on a memory 28.
Needless to say, different combinations of general and application-specific integrated circuits may be used for the controller 26. Similarly, the memory 28 may be implemented using many different memory technologies. In general, the controller 26 is configured to read instructions from the memory 28 and execute these instructions possibly in view of different sensor signals to control the operation of the robotic lawnmower 14. Typically, the controller 26 is configured to, based on the instructions, control the robotic lawnmower in an autonomous or semi-autonomous manner, i,e. with no, or only occasional, instructions from a human operator. The controller 26 also controls the operation of a cutter motor 30, which is configured to drive the grass cutter.
A wireless transceiver 32 is connected to the controller 26, and allows the controller 26 to communicate with the charging station 16 or any other device, such as a remote control or a smart phone (not shown). The robotic lawnmower 14 further comprises a positioning device 34. In the illustrated example, the positioning device 34 comprises an inertial navigation device 36, such as an accelerometer or a gyroscope, which allows the robotic lawnmower 14 to keep track of its movement within the area 12 to be treated. The inertial navigation device 36 may be supplemented by a compass 38, to provide basic orientation information that may compensate for any drift of the inertial navigation device 36. The positioning device 34 further comprises a GNSS (Global Navigation Satellite System) receiver 40, which may receive navigation signal from navigation satellite systems such as GPS (Global Positioning System) satellites, GLONASS satellites, Beidou satellites, Galileo satellites, or any combination of those. The GNSS satellite signals may be supplemented by correction signals from one or several local beacons, or over a network, which may enable RTK (real-time kinematic) enhanced GNSS navigation. A local RTK beacon may e.g. be arranged in the charging station 16 (Fig. 1).
The controller 26 also controls the propulsion motors 24, thereby controlling the propulsion of the robotic lawnmower 14 within the area 12 to be treated. The propulsion motors 24 may be stepper motors, allowing the controller 26 to keep track of the respective number of turns of the motors 24, and thereby also the distance travelled by the robotic lawnmower 14, as well as any turning angle of the robotic lawnmower 14 when the motors 24 are operated at different speeds or in reverse directions. In this respect, the propulsion motors 24 operate as odometers. Alternatively, the wheels 20 may be provided with odometer indexers configured to provide feedback to the controller 26 about the number of turns of each motor 24.
Navigation information from the positioning device 34 and the motors 24 is fused in the controller 26 to provide an accurate position indication, in order to enable an accurate and systematic movement pattern of the robotic lawnmower 14 for covering the work area 12 (Fig. 1). Typically, high-precision positioning using e.g. RTK GNSS also allows obtaining an estimate of the current accuracy of the obtained position. The controller 26, positioning device 34, transceiver 32, and electric motors 24, 30 are powered by a battery 42. The robotic lawnmower 14 is configured to navigate to the charging station 16 (Fig. 1) on a regular basis, for example between work sessions and/or whenever the battery charge is running low, in order to dock with the charging station 16 for recharging the battery 42. The charging station 16 may be connected so as to receive power from the electric power grid. Fig. 3 illustrates an exemplary grass cutter 44 as seen obliquely from below. The grass cutter 44 comprises a plurality of grass cutting blades 46, which are pivotally connected to the radial periphery of a knife carrier disc 48. The knife carrier disc 48 is configured to be rotated about a substantially vertical cutter axis C by the cutter motor 30. A skid plate 50 is positioned below the knife carrier disc 48; the skid plate 50 is rotatable in relation to the knife carrier disc 48 about the cutter axis C, such that the skid plate 50 may remain non-rotary in relation to the grass to be cut, while the knife carrier disc 48 rotates.
Referring back to Fig. 1 , the robotic lawnmower 14 stores in its memory 28 (Fig. 2) a map of the work area 12, and is configured to navigate the work area 12 in a systematic manner. For optimum coverage, the robotic lawnmower 14 plans its route within the work area 12 to follow parallel, adjacent paths. As the robotic lawnmower 14 propels itself forward while cutting grass, the grass cutter 44 (Fig. 3) cuts within a cutting width, which is determined by the diameter of the trajectory of the cutting blades’ 46 radially outermost tips about the cutting axis C. This brings us to Fig. 4, which illustrates a segment of a route plan RP to be followed by the robotic lawnmower 14, along with two positions of the robotic lawnmower 14 along the route plan RP, at two different times during a work session. The route plan RP comprises adjacent, straight, parallel path segments P1, P2. which are separated by a centre- to-centre separation distance S. The cutting width W of the grass cutter 44 (Fig. 4) results in a cutting overlap OL of the adjacent parallel path segments P1 , P2. The controller 26 (Fig. 2) plans the route RP to obtain an overlap OL which is sufficient for covering a typical lawn. The route plan RP may account for known terrain conditions and positioning accuracies at different positions of the stored map, and the overlap OL may be set differently at different positions. For example, the controller 26 may plan the route RP to have more closely spaced paths P1 , P2 in areas where the terrain is sloping sideways, relative to the robotic lawnmower’s 14 heading, to increase the overlap OL where the robotic lawnmower 14 may be expected to slip sideways.
Once having a route plan RP for at least a portion of the work area 12, the robotic lawnmower 14 will navigate according to the planned route RP, based on positioning information from the positioning device 34 (Fig. 2), while cutting grass. While doing so, the robotic lawnmower 14 may face varying conditions that make the robotic lawnmower 14 deviate from the planned route RP. Fig. 5 illustrates a segment of the planned route RP along with an exemplary estimated actual route RA. The estimated actual route RA may be estimated by the controller 26 based on position information from the positioning device 34 (Fig. 2).
For example, when the centre of the robotic lawnmower 14 according to the present route plan RP should be at a planned position PP along the planned route RP, it may actually be at an actual position PA, which may be displaced from the planned route RP by a deviation D. When navigating the work area 12 (Fig. 1), the robotic lawnmower 14 continuously or regularly estimates the deviation D based on estimated positions received from the positioning device 34. The estimated deviation D represents the shortest distance from an estimated actual position PA to the planned route RP. Flence, the deviation D may vary along the actual route RA of the robotic lawnmower 14. The estimated deviation D may also incorporate an estimated positioning error determined by the positioning device 34, by adding the uncertainty of the estimated position to the estimated distance between the estimated actual position PA and the planned route RP. The robotic lawnmower 14 may further determine, for a route segment or for the entire planned route RP, an average estimated deviation DA, as well as a maximum estimated deviation DM. All those values D, DA, DM represent different measures of a deviation between the actual route RA and the planned route RP.
If the deviation, as represented e.g. by any of the values D, DA, DM, is greater than what may be typical, the robotic lawnmower 14 may increase the operating width overlap OL (Fig. 4) for the next work session to avoid leaving strips of uncut grass between adjacent path segments P1 , P2 (Fig. 4). This may be done by generating an updated route plan with more closely spaced adjacent path segments P1 , P2. Similarly, if the deviation is smaller than what may be typical, the robotic lawnmower 14 may generate an updated route plan with an increased separation distance S (Fig. 4), i.e. smaller overlap OL (Fig. 4), to enable covering the work area with fewer parallel paths P 1 , P2. The separation distance S should typically not be allowed to exceed the cutting width W (Fig. 4). The robotic lawnmower 14 may iterate the procedure, i.e. for each time a route plan RP is pursued, deviations from the respective route plan RP are estimated, and an updated overlap is generated for the next route plan. It may also be beneficial to limit the magnitude of the overlap change for each iteration, in order to trigger slow overlap changes over time, thereby accommodating for temporary variations of traction conditions. Fig. 6 illustrates an exemplary work area 12 within a boundary 13, along with an exemplary route plan RP. The route plan RP may comprise a route segment B following the contour of the boundary 13, for cutting the outer edge of the work area 12, and a plurality of parallel path segments P1 , P2 etc., which are mutually spaced to generate an overlap OL in the manner illustrated in Fig. 4. The work area may be located on a slope, indicated by a direction of downhill inclination i. The plurality of parallel path segments P1 , P2 are oriented in a first direction, which in the illustrated example coincides with the direction of the slope’s inclination i. After having pursued the route plan RP, the controller 26 (Fig. 2) may evaluate the estimated deviation between actual and planned routes RA (Fig. 5), RP, and set an updated overlap OL (Fig. 4) for the next route plan to position some or all of the parallel paths P1 , P2 closer or further away from each other. Alternatively or additionally, the controller 26 may also set an updated overlap OL for remaining parts of the present route plan RP prior to finishing the present work session, and re-plan the remainder of the present route plan RP. The parallel paths of the next route plan may be directed in the same direction as the paths P1 , P2 of the present route plan RP.
Fig. 7 illustrates an exemplary alternative next route plan RP2 for the same work area 12, according to which the parallel paths are oriented differently. Based on local differences of the estimated deviation D from the route plan RP of Fig. 6, different overlaps OL (Fig. 4) may be set for different positions or sub-areas of the work area 12, or for different path segments along the next planned route RP2. Similar to the route plan of Fig. 6, also the next route plan RP2 may comprise a route segment B following the contour of the boundary 13, and a plurality of parallel path segments P3, P4. The separation distances between the path segments P3, P4 of the next route plan RP2 may, based on any changes to the overlap OL (Fig. 4), be different from the separation distances between the path segments P 1 , P2 of Fig. 6. The robotic lawnmower 14 may also try a different orientation of the parallel path segments; in the example illustrated in Fig. 7, the parallel path segments P3, P4 are oriented perpendicular to the direction of the slope inclination i. Once the robotic lawnmower 14 has planned the next route RP2, the next route plan RP2 becomes the present planned route RP to be pursued, and the procedure may be iterated. For each orientation that the robotic lawnmower 14 tries, different local, average, and/or maximum deviations D, DA, DM may be obtained, for example due to the robotic lawnmower 14 propelling itself along differently oriented parallel path segments in relation to the direction of the slope inclination i. The controller 26 (Fig. 2) may also select, for a next planned route RP2, a previously pursued route plan RPO that optimizes any selected measure of the deviation D, DA, DM. For example, the robotic lawnmower 14 may test several different route plans during a running-in period, and for each new route plan it tries, the robotic lawnmower may compare the average deviation DA with average deviations of previously tried routes, and keep track of which route gives the least average deviation. In the illustrated example of Fig. 7, the next planned route RP2 may e.g. be a copy of a previously pursued route plan RPO, the pursuing of which has been tested to result in a minimum of average deviation DA of the actual route from the respective planned route RPO. Alternatively, a previously pursued route plan RPO, which has yielded good deviation results, may be slightly modified before setting as the next route plan RP2 in a manner similar to a genetic algorithm.
Now returning to the situation of Fig. 6, the controller 26 may compare the estimated deviation D, DA, DM to the overlap OL according to the planned route RP, and based on the comparison, determine that that a path, for example the path P1 , was failed in the sense that the overlap was insufficient to accommodate for the deviation from the planned route RP. It can therefore be expected that strips of uncut grass remain on one or both sides of the failed path P1. In response thereto, the controller may update the present planned route RP with a pair of supplementary paths P 1 ’ , P1” straddling the failed path P1.
Referring back to Fig. 5, it may also happen that an actual route RA deviates substantially from the planned route RP only at a specific location, but otherwise remains close to the planned route RP. In such a situation, it may be assumed that the large deviation may result from e.g. obstacles along the route, and the local, large deviation may therefore be disregarded when setting the overlap OL for the next planned route.
The flow chart of Fig. 8 illustrates a method according to which the robotic lawnmower 14 of Fig. 1 dynamically adapts its cutting width overlap OL.
In step 801 , the robotic lawnmower 14 plans a route to cover the work area 12 with the cutter 44, with an operating width overlap OL between adjacent paths (P1 ,
P2 (Fig. 6), to obtain a present planned route RP.
In step 802, the robotic lawnmower 14 navigates the work area 12 according to the present planned route RP while cutting grass, and while determining an estimated actual route RA (Fig. 5) based on positioning information from the positioning device 34 (Fig. 2). In step 803, the robotic lawnmower 14 estimates a deviation DA (Fig. 5) of the estimated actual route RA from the present planned route RP.
In step 804, the robotic lawnmower 14 sets an updated operating width overlap OL based on the estimated deviation DA of the estimated actual route RA from the present planned route RP.
The flow chart of Fig. 9 illustrates a method according to which the robotic lawnmower 14 of Fig. 1 evaluates previous route plans, and plans future routes based on the evaluations.
In step 901 , the robotic lawnmower 14 navigates the work area 12 according to a present route plan RP (Fig. 6) while cutting grass, and while recording an estimated actual route RA (Fig. 5) based on positioning information from a positioning device 34 (Fig. 2).
In step 902, the robotic lawnmower 14 estimates a deviation DA (Fig. 5) of the estimated actual route RAfrom the route plan RP.
In step 903, the robotic lawnmower 14 compares the deviation DA to a previously stored deviation from a previous route plan, the previous route plan being different from the present route plan RP.
In step 904, the robotic lawnmower 14 sets a next route plan RP2 (Fig. 7) based on the comparison in step 903.
The flow chart of Fig. 10 illustrates a method according to which the robotic lawnmower 14 of Fig. 1 detects failed paths and inserts supplementary paths.
In step 1001 , the robotic lawnmower 14 plans a route to cover the work area 12 with the grass cutter 44, with an operating width overlap OL (Fig. 4) between adjacent paths P1, P2 (Fig. 4), to obtain a present planned route RP.
In step 1002, the robotic lawnmower 14 navigates the work area 12 according to the present planned route RP while cutting grass and while determining an estimated actual route RA (Fig. 5) based on positioning information from the positioning device 34 (Fig. 2).
In step 1003, the robotic lawnmower 14 estimates, for a path P1 (Fig. 6), a deviation D (Fig. 5) of the estimated actual route RA from the present planned route RP, and determines, based on the deviation D, that the path P1 is a failed path.
In step 1004, the robotic lawnmower 14 updates the present planned route RP with a pair of supplementary paths PT, P1” (Fig. 6) adjacent to the failed path P1.
The methods described herein may be implemented in a computer program, which may be loaded or loadable into the controller 26 for execution. The computer program may be carried by a computer readable medium, such as compact disc, flash memory, or similar device in any manner apparent to those skilled in the art.
Fig. 12 illustrates an exemplary portable memory, in the embodiment of a compact disc 98, carrying such a computer program. The compact disc 98 is loadable into a computer (not illustrated) connectable to the robotic lawnmower 14, for transfer of the program to the robotic lawnmower 14.
The invention has mainly been described above with reference to a few embodiments. However, as is readily appreciated by a person skilled in the art, other embodiments than the ones disclosed above are equally possible within the scope of the invention, as defined by the appended patent claims. For example, deviations may be represented not only by its local, average, and maximum values; also other deviation measures indicating how well a robotic tool follows a planned route may be used.
In the claims, the word "comprising" does not exclude other elements or steps, and the indefinite article "a" or "an" does not exclude a plurality.

Claims

Claims
1. A method of navigating a self-propelled robotic tool (14) to perform a task within a work area (12), the robotic tool (14) comprising a positioning device (34) and a work implement (44) having an operating width (W), the method comprising planning a route to cover the work area (12) with the work implement (44), with an operating width overlap (OL) between adjacent paths (P1, P2), to obtain a present planned route (RP); navigating the work area (12) according to the present planned route (RP) while performing the task; determining an estimated actual route (RA) based on positioning information from the positioning device (34); estimating a deviation (D; DA; DM) of the estimated actual route (RA) from the present planned route (RP); and setting an updated operating width overlap (OL) based on the estimated deviation (D; DA; DM) of the estimated actual route (RA) from the present planned route (RP).
2. The method according to claim 1 , wherein setting an operating width overlap (OL) based on the estimated deviation (D; DA; DM) of the estimated actual route (RA) from the present planned route (RP) comprising setting the operating width overlap (OL) for a next planned route (RP2).
3. The method according to any of the preceding claims, wherein setting an operating width overlap (OL) based on the estimated deviation (D; DA; DM) of the estimated actual route (RA) from the present planned route (RP) comprises setting the operating width overlap (OL) for the present planned route (RP); and re-planning the present planned route (RP).
4. The method according to any of the preceding claims, wherein estimating a deviation (D; DA; DM) of the estimated actual route (RA) from the present planned route (RP) comprises estimating a local deviation (D) of an actual position (PA), determined based on positioning information from the positioning device (34), from a planned position (PP) according to the present planned route (RP); and setting a local operating width overlap (OL) for a next planned route (RP) based on the estimated local deviation (D; DA; DM) of the actual position (PA) from the planned position (PP).
5. The method according to any of the preceding claims, wherein estimating a deviation (D; DA; DM) of the estimated actual route (RA) from the present planned route (RP) comprises estimating an average deviation (DA) of the estimated actual route (RA) from the present planned route (RP).
6. The method according to any of the preceding claims, wherein estimating a deviation (D; DA; DM) of the estimated actual route (RA) from the present planned route (RP) comprises estimating a maximum deviation (DM) of the estimated actual route (RA) from the present planned route (RP).
7. The method according to any of the preceding claims, wherein planning a route to cover the work area (12) with the work implement (44), with an operating width overlap (OL) between adjacent paths (P1, P2), to obtain a present planned route (RP) comprises setting the operating width overlap (OL) based on terrain information in a stored map.
8. The method according to any of the preceding claims, wherein the present planned route (RP) comprises said at least a portion of the work area (12) being covered by a set of parallel paths (P1 , P2) oriented in a first direction.
9. The method according to any of the preceding claims, further comprising comparing the deviation (D; DA; DM) of the estimated actual route (RA) from the present planned route (RP) to a previously stored deviation of a previous estimated actual route from a previous route plan (RPO), the previous route plan being different from the present route plan (RP); and setting a next route (RP2) based on said comparison.
10. The method according to claims 8 and 9, wherein the previous route plan (RPO) comprises said at least a portion of the work area (12) being covered by a set of parallel paths (P3, P4) oriented in a second direction different from said first direction.
11. The method according to any of the preceding claims, wherein planning a route comprises defining a route in a GNSS reference system; and navigating the work area (12) comprises receiving GNSS signals.
12. The method according to any of the preceding claims, wherein the updated operating width overlap (OL) is further based on an estimated accuracy of positioning information from the positioning device (34).
13. The method according to any of the preceding claims, wherein the work implement (44) has a fixed operating width (W), and setting an operating width overlap (OL) comprises setting a centre-to-centre distance S between adjacent paths (P1, P2).
14. The method according to any of the preceding claims, wherein the robotic tool (14) is a robotic garden tool.
15. The method according to claim 14, wherein the robotic garden tool (14) is a robotic lawnmower, the work implement (44) is a grass cutter, the operating width (W) is a cutting width, and the task is cutting grass.
16. A method of navigating a self-propelled robotic tool (14) to perform a task within a work area (12), the method comprising navigating the work area (12) according to a present route plan (RP) while performing the task; recording an estimated actual route (RA) based on positioning information from a positioning device (34); estimating a deviation (D; DA; DM) of the estimated actual route (RA) from the route plan (RP); comparing the deviation (D; DA; DM) to a previously stored deviation from a previous route plan (RPO), the previous route plan (RPO) being different from the present route plan (RP); and setting a next route plan (RP2) based on said comparison.
17. A method of navigating a self-propelled robotic tool (14) to perform a task within a work area (12), the robotic tool (14) comprising a positioning device (34) and a work implement (44) having an operating width (W), the method comprising planning a route to cover the work area (12) with the work implement (44), with an operating width overlap (OL) between adjacent paths (P1, P2), to obtain a present planned route (RP); navigating the work area (12) according to the present planned route (RP) while performing the task; determining an estimated actual route (RA) based on positioning information from the positioning device (34); estimating, for a path (P1), a deviation (D; DA; DM) of the estimated actual route (RA) from the present planned route (RP); based on the deviation (D; DA; DM), determining that the path (P1) is a failed path; and updating the present planned route with at least one supplementary path (P1’, P1”) adjacent to the failed path (P1).
18. A self-propelled robotic tool (14) comprising a positioning device (34), a work implement (44) configured to carry out a task in a work area (12), and processing equipment configured to carry out the method according to any of the preceding claims.
19. A computer program product comprising instructions which, when the program is executed on a processor (26), carries out the method according to any of the claims 1-17.
20. A computer-readable medium (98) comprising executable code representing instructions to a self-propelled robotic tool (14) to perform the method according to any of the claims 1 -17.
PCT/SE2021/050549 2020-06-17 2021-06-09 Methods of navigating a self-propelled robotic tool, and robotic tools and computer programs implementing such methods WO2021256973A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
SE2050727-3 2020-06-17
SE2050727A SE2050727A1 (en) 2020-06-17 2020-06-17 Methods of navigating a self-propelled robotic tool, and robotic tools, and computer pograms implementing such methods

Publications (1)

Publication Number Publication Date
WO2021256973A1 true WO2021256973A1 (en) 2021-12-23

Family

ID=79268147

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/SE2021/050549 WO2021256973A1 (en) 2020-06-17 2021-06-09 Methods of navigating a self-propelled robotic tool, and robotic tools and computer programs implementing such methods

Country Status (2)

Country Link
SE (1) SE2050727A1 (en)
WO (1) WO2021256973A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4368004A1 (en) * 2022-11-14 2024-05-15 Husqvarna AB Improved operation and installation for a robotic work tool
CN117268401B (en) * 2023-11-16 2024-02-20 广东碧然美景观艺术有限公司 Gardening path generation method of dynamic fence

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09128045A (en) * 1995-11-02 1997-05-16 Hitachi Ltd Route generating system for automatic traveling machine
JPH10243708A (en) * 1997-03-03 1998-09-14 Kubota Corp Traveling pathway-preparing apparatus for working vehicle and traveling controller
US8060299B2 (en) * 2007-02-28 2011-11-15 Caterpillar Inc. Machine with automated steering system
US20170112045A1 (en) * 2015-10-27 2017-04-27 Cnh Industrial America Llc Device and method for guiding agricultural vehicles
US20190343035A1 (en) * 2018-05-09 2019-11-14 Deere & Company Method of planning a path for a vehicle having a work tool and a vehicle path planning system
KR102079890B1 (en) * 2016-05-10 2020-02-20 얀마 가부시키가이샤 Autonomous driving route generation system
WO2021050561A2 (en) * 2019-09-09 2021-03-18 Mtd Products Inc Real time kinematics power equipment device with auto-steering
US20210084812A1 (en) * 2019-09-23 2021-03-25 Renu Robotics Corporation Autonomous vehicle systems and methods

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09128045A (en) * 1995-11-02 1997-05-16 Hitachi Ltd Route generating system for automatic traveling machine
JPH10243708A (en) * 1997-03-03 1998-09-14 Kubota Corp Traveling pathway-preparing apparatus for working vehicle and traveling controller
US8060299B2 (en) * 2007-02-28 2011-11-15 Caterpillar Inc. Machine with automated steering system
US20170112045A1 (en) * 2015-10-27 2017-04-27 Cnh Industrial America Llc Device and method for guiding agricultural vehicles
KR102079890B1 (en) * 2016-05-10 2020-02-20 얀마 가부시키가이샤 Autonomous driving route generation system
US20190343035A1 (en) * 2018-05-09 2019-11-14 Deere & Company Method of planning a path for a vehicle having a work tool and a vehicle path planning system
WO2021050561A2 (en) * 2019-09-09 2021-03-18 Mtd Products Inc Real time kinematics power equipment device with auto-steering
US20210084812A1 (en) * 2019-09-23 2021-03-25 Renu Robotics Corporation Autonomous vehicle systems and methods

Also Published As

Publication number Publication date
SE2050727A1 (en) 2021-12-18

Similar Documents

Publication Publication Date Title
US20220124973A1 (en) A Robotic Tool, and Methods of Navigating and Defining a Work Area for the Same
CN112731945B (en) Automatic working system, self-moving equipment and control method thereof
US11716926B2 (en) System and method for operating an autonomous robotic working machine within a travelling containment zone
EP1406140B1 (en) System for determining an energy-efficient path of a machine
US10136576B2 (en) Navigation for a robotic working tool
WO2021256973A1 (en) Methods of navigating a self-propelled robotic tool, and robotic tools and computer programs implementing such methods
WO2017123137A1 (en) A method and a system for navigating a self-propellered robotic tool
US20190025847A1 (en) Self-propellered robotic tool navigation
US10078336B2 (en) System and method for navigating a robotic working tool
CN112703881B (en) Intelligent mower, control method and system thereof and storage medium
US8447454B2 (en) Control method for a robot vehicle, and robot vehicle
EP4020112B1 (en) Robotic mower and control method thereof
EP3695694A1 (en) Robotic vehicle for movable operation in a work area
WO2021244883A1 (en) Method of providing a position estimate of a robotic tool, a robotic tool, and a robotic tool system
EP3753387A1 (en) Robotic vehicle for movable operation in a work area
JPH09149706A (en) Traveling control device for autonomous running vehicle
EP3696640A1 (en) Robotic vehicle for movable operation in a work area
JPH07104847A (en) Traveling controller for autonomously traveling vehicle
EP3696639A1 (en) Robotic vehicle for movable operation in a work area
CN113899376A (en) Map generation method and system for self-moving equipment and automatic working system
EP4268565B1 (en) Improved navigation for a robotic work tool system
EP4371390A1 (en) System and method for controlling at least one robotic mower
JPH07104846A (en) Traveling controller for autonomously traveling vehicle
US20230195121A1 (en) Path generating method, program, path generating device, and autonomous mobile body
EP4372511A1 (en) System and method for controlling multiple robotic mowers

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21826190

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21826190

Country of ref document: EP

Kind code of ref document: A1