Patent ID: 12197203

DETAILED DESCRIPTION

The disclosed embodiments will now be described more fully hereinafter with reference to the accompanying drawings, in which certain embodiments of the invention are shown. This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Like reference numbers refer to like elements throughout.

It should be noted that even though the description given herein will be focused on robotic lawnmowers, the teachings herein may also be applied to, robotic ball collectors, robotic mine sweepers, robotic farming equipment, or other robotic work tools where lift detection is used and where the robotic work tool is susceptible to dust, dirt or other debris.

FIG.1Ashows a perspective view of a robotic work tool100, here exemplified by a robotic lawnmower100, having a body140and a plurality of wheels130(only two wheels are shown). The robotic work tool100may be a multi-chassis type, as inFIG.1A, or a mono-chassis type (as inFIG.1B). A multi-chassis type comprises more than one body parts that are movable with respect to one another. A mono-chassis type comprises only one main body part.

The robotic lawnmower100may comprise charging skids for contacting contact plates (not shown inFIG.1) when docking into a charging station (not shown inFIG.1, but referenced210inFIG.2) for receiving a charging current through, and possibly also for transferring information by means of electrical communication between the charging station and the robotic lawnmower100.

FIG.1Bshows a schematic overview of the robotic work tool100, also exemplified here by a robotic lawnmower100. In this example embodiment the robotic lawnmower100is of a mono-chassis type, having a main body part140. The main body part140substantially houses all components of the robotic lawnmower100. The robotic lawnmower100has a plurality of wheels130. In the exemplary embodiment ofFIG.1Bthe robotic lawnmower100has four wheels130, two front wheels and two rear wheels. At least some of the wheels130are drivably connected to at least one electric motor150. It should be noted that even if the description herein is focused on electric motors, combustion engines may alternatively be used, possibly in combination with an electric motor. In the example ofFIG.1B, each of the wheels130is connected to a respective electric motor. This allows for driving the wheels130independently of one another which, for example, enables steep turning and rotating around a geometrical center for the robotic lawnmower100. It should be noted though that not all wheels need be connected to each a motor, but the robotic lawnmower100may be arranged to be navigated in different manners, for example by sharing one or several motors150. In an embodiment where motors are shared, a gearing system may be used for providing the power to the respective wheels and for rotating the wheels in different directions. In some embodiments, one or several wheels may be uncontrolled and thus simply react to the movement of the robotic lawnmower100.

The robotic lawnmower100also comprises a grass cutting device160, such as a rotating blade160driven by a cutter motor165. The grass cutting device being an example of a work tool160for a robotic work tool100. The robotic lawnmower100also has (at least) one battery155for providing power to the motor(s)150and/or the cutter motor165.

The robotic lawnmower100also comprises a controller110and a computer readable storage medium or memory120. The controller110may be implemented using instructions that enable hardware functionality, for example, by using executable computer program instructions in a general-purpose or special-purpose processor that may be stored on the memory120to be executed by such a processor. The controller110is configured to read instructions from the memory120and execute these instructions to control the operation of the robotic lawnmower100including, but not being limited to, the propulsion of the robotic lawnmower. The controller110may be implemented using any suitable, available processor or Programmable Logic Circuit (PLC). The memory120may be implemented using any commonly known technology for computer-readable memories such as ROM, RAM, SRAM, DRAM, FLASH, DDR, SDRAM or some other memory technology.

The robotic lawnmower100may further be arranged with a wireless communication interface115for communicating with other devices, such as a server, a personal computer or smartphone, the charging station, and/or other robotic work tools. Examples of such wireless communication devices are Bluetooth®, WiFi® (IEEE802.11b), Global System Mobile (GSM) and LTE (Long Term Evolution), to name a few.

For enabling the robotic lawnmower100to navigate with reference to a boundary wire emitting a magnetic field caused by a control signal transmitted through the boundary wire, the robotic lawnmower100is further configured to have at least one magnetic field sensor170arranged to detect the magnetic field (not shown) and for detecting the boundary wire and/or for receiving (and possibly also sending) information to/from a signal generator (will be discussed with reference toFIG.2). In some embodiments, the sensors170may be connected to the controller110, possibly via filters and an amplifier, and the controller110may be configured to process and evaluate any signals received from the sensors170. The sensor signals are caused by the magnetic field being generated by the control signal being transmitted through the boundary wire. This enables the controller110to determine whether the robotic lawnmower100is close to or crossing the boundary wire, or inside or outside an area enclosed by the boundary wire.

The robotic lawnmower100also comprises one or more collision detectors175. In the example ofFIG.1B, the robotic lawnmower100comprises a front collision detector175-1, enabling the robotic lawnmower100to detect a collision while moving in a forwards direction, i.e. a forwards collision, and a rear collision detector175-2, enabling the robotic lawnmower100to detect a collision while moving in a reverse direction, i.e. a reverse collision.

The robotic lawnmower100further comprises one or more sensors for deduced navigation180. Examples of sensors for deduced reckoning are odometers, accelerometers, gyroscopes, and compasses to mention a few examples. In the example ofFIG.1B, the robotic lawnmower100comprises two odometers180-1, being wheel turn counters, enabling the robotic lawnmower100to count the number of wheel turns executed by two opposite wheels and thereby both determine a distance travelled (equaling number of wheel turns multiplied with the diameter of the wheel), and also any directional changes (by noting differences in wheel turns between the two wheels). In the example ofFIG.1B, the robotic lawnmower100further comprises an accelerometer180-2enabling the robotic lawnmower100to not only determine directional changes, but also changes in altitude and current inclination. The accelerometer180-2also enables the robotic lawnmower100to determine movements in a sideways direction, for example caused by the robotic lawnmower100slipping or sliding. The accelerometer180-2can thus be employed by the robotic lawnmower100to determine if the path taken determined by the odometers is reliable or not. If the accelerometer senses a significant number or a significant severity of movements (i.e. movements exceeding a threshold with regards to direction and amplitude) not corresponding to the wheel turns, the path is not reliable. The accelerometer180-2may also be used to detect collisions.

In one embodiment, the robotic lawnmower100may further comprise at least one navigation sensor, such as a beacon navigation sensor and/or a satellite navigation sensor190. The beacon navigation sensor may be a Radio Frequency receiver, such as an Ultra Wide Band (UWB) receiver or sensor, configured to receive signals from a Radio Frequency beacon, such as a UWB beacon. Alternatively or additionally, the beacon navigation sensor may be an optical receiver configured to receive signals from an optical beacon. The satellite navigation sensor may be a GPS (Global Positioning System) device or other Global Navigation Satellite System (GNSS) device.

In embodiments, where the robotic lawnmower100is arranged with a navigation sensor, the magnetic sensors170are optional.

In one embodiment, the robotic lawnmower100may further comprise a camera195or other optical recorder, arranged to perform path analysis, object detection or other vision based operations.

FIG.2shows a schematic view of a robotic work tool system200in one embodiment. The schematic view is not to scale. The robotic work tool system200comprises a robotic work tool100. As withFIGS.1A and1B, the robotic work tool is exemplified by a robotic lawnmower, whereby the robotic work tool system may be a robotic lawnmower system or a system comprising a combinations of robotic work tools, one being a robotic lawnmower, but the teachings herein may also be applied to other robotic work tools adapted to operate within a work area.

The robotic work tool system200may also comprises charging station210which in some embodiments is arranged with a signal generator215and a boundary wire220.

The signal generator is arranged to generate a control signal225to be transmitted through the boundary wire220. To perform this, the signal generator is arranged with a controller and memory module216. The controller and memory module216operates and functions in the same manner as the controller110and memory120of the robotic work tool100. The controller and memory module216may also be the controller and memory module of the charging station, hereafter simply referred to as the controller216.

In addition or as an alternative embodiment the controller and memory module216may also comprise or be connected to a communication interface (not shown explicitly but considered to be part of the controller and memory module). The communication interface is enabled for communicating with other devices, such as a server, a personal computer or smartphone, a robotic work tool100, another signal generator215and/or another charging station210using a wireless communication standard. Examples of such wireless communication standards are Bluetooth®, WiFi® (IEEE802.11b), Global System Mobile (GSM) and LTE (Long Term Evolution), to name a few.

The boundary wire220is arranged to enclose a work area205, in which the robotic lawnmower100is supposed to serve. The control signal225transmitted through the boundary wire220causes a magnetic field (not shown) to be emitted.

In one embodiment the control signal225is a sinusoid periodic current signal. In one embodiment the control signal225is a pulsed current signal comprising a periodic train of pulses. In one embodiment the control signal225is a coded signal, such as a CDMA signal.

As an electrical signal is transmitted through a wire, such as the control signal225being transmitted through the boundary wire220, a magnetic field is generated. The magnetic field may be detected using field sensors, such as Hall sensors. A sensor—in its simplest form—is a coil surrounding a conductive core, such as a ferrite core. The amplitude of the sensed magnetic field is proportional to the derivate of the control signal. A large variation (fast and/or of great magnitude) results in a high amplitude for the sensed magnetic field. The variations are sensed and compared to a reference signal or pattern of variations in order to identify and thereby reliably sense the control signal. The robotic work tool is thus configured to recognize the control signal225and based on the polarity of the sensed control signal225, the robotic work tool is able to determine whether it is inside or outside the work area205

The robotic work tool system200may also optionally comprise at least one beacon (not shown) to enable the robotic lawnmower to navigate the work area using the beacon navigation sensor(s)175.

The work area205is in this application exemplified as a garden, but can also be other work areas as would be understood. The garden contains a number of obstacles (O), exemplified herein by a number (3) of trees (T) and a house structure (H). The trees are marked both with respect to their trunks (filled lines) and the extension of their foliage (dashed lines).

As can be seen inFIG.2, the boundary wire220has been laid so that so-called islands are formed around the trees' trunks and the house (H). This requires that more boundary wire is used, than if the work area was without such obstacles. It should be noted that any distances between wires are greatly exaggerated in this application in order to make the distances visible in the drawings. In a real-life installations the boundary wire is usually laid so that there is not distance between the wire going out and the wire coming back (distance=0). This allows the robotic work tool100to cross any such sections (indicated by the dashed arrow inFIG.2) as the magnetic field emitted by the wire going out cancels out the magnetic field emitted by the wire coming back.

Optionally there may be one or more additional wires acting as guide wires220G (possibly provided as loops of the boundary wire220). These may be used to guide the robotic work tool100, such as for finding the way to the charging station more quickly.

As discussed in the background section, the inventors have realized that a robotic work tool100may be restricted or limited in its movements by possibly being confined or trapped in a smaller sub-area of the work area. The robotic work tool100may be trapped by physically being trapped between two objects, such as being unable to navigate pass objects, or by being unable to find its way out of a sub-area of the work area205.

FIG.3illustrates some examples of how a robotic work tool100can become limited in its movement in a schematic view of a robotic work tool system200according to one embodiment of the teachings herein. The schematic view is not to scale. One robotic work tool100-1has become limited in its movements by not being able to find its way out of a confined area (indicated by the dotted circle labelled CA inFIG.3). Another robotic work tool100-2has become limited in its movements by not being able to navigate passed objects, in this example the house (H) and a tree (T). A third robotic work tool100-3has become limited in its movements by being unable to navigate out of a hollow that the robotic work tool100-3possibly has slid down into.

The teachings herein will now be discussed in detail giving simultaneous reference toFIGS.3,4and5.FIG.4shows a flowchart of a general method according to the teachings herein andFIG.5illustrates some examples of how a robotic work tool100can exit a state where it is limited in its movement in a schematic view of a robotic work tool system200according to one embodiment of the teachings herein.

The robotic work tool100is configured to determine410that the robotic work tool has entered a state of limited movement.

The robotic work tool100may be configured to determine that the robotic work tool has entered a state of limited movement in a number of different manners that in part depend on the manner that the robotic work tool100entered the state of limited movement. It should be noted that all manners discussed herein may be performed in combination supplementing each other.

In one embodiment the robotic work tool100is configured to determine that the robotic work tool has entered a state of limited movement by determining that the robotic work tool100has been travelling within an area smaller than a threshold size, i.e. a confined area (CA), for a threshold period of time.

In one embodiment, the robotic work tool100may be configured to determine the size of the area travelled by determining an envelope of the path travelled during the period of time, for example based on the input from the sensors for deduced reckoning180. Alternatively or additionally, the robotic work tool100may be configured to determine the size of the area travelled by determining a first distance travelled in a first direction, determining a second distance travelled in a second direction and multiplying the first distance with the second distance, taking into account the angle between the first direction and the second direction.

The threshold size of the confined area, is in one embodiment based on the size of the work area, such as within 10% of the work area. The threshold size of the confined area, is in addition or as an alternative embodiment based on a specified area, such as within 10, 15 or 20 square meters. The period of time may be set to 5, 10 or 15 minutes.

In addition or as an alternative embodiment the robotic work tool100is configured to determine that the robotic work tool has entered a state of limited movement by determining that the robotic work tool100has been travelling a maximum distance falling short of a threshold distance for a threshold period of time. If the robotic work tool is unable to travel significant distances before having to turn again, it is an indication that the robotic work tool may be limited in its movements.

In one embodiment, the robotic work tool100is configured to determine the distance travelled as an accumulated distance travelled in a direction, taking into account the robotic work tool having to execute turns, possibly due to a collision or encountering a boundary wire, counting distances in opposing directions against one another, i.e. reducing the distance travelled in a direction by distances travelled in an opposite direction.

The accumulated distance (D) in a specific direction may be determined by summarizing each distance travelled (Di) multiplied by the cosine of the angle of the direction travelled (di) relative the specific direction (d);
D=ΣDi*cos(di−d)where the directions are expressed as angles.

In one example the specific direction may be along a side of the work area. The accumulated distance may in one embodiment be determined for more than one directions, for example for a first specific direction and a second specific direction. In one example the first specific direction may be along a side of the work area. In one example the second specific direction may be a direction orthogonal to the first direction.

The accumulated distance (D) in any (out of all) directions, i.e. the distance that all movements of the robotic work tool has resulted in (the resulting movement), the direction of such resulting movement being the resulting direction and the distance the resulting distance, may be determined by treating each segment that the robotic work tool100has travelled as a vector Si comprising the distance travelled Di and the direction travelled in di; Si={Di, di}, and then summarising the all vectors Si and taking the length of the sum vector S;
D=|S|=|ΣSi|=|Σ{Di,di}|

The direction of the sum vector S, i.e. the direction of the accumulated distance, may be determined as argument of the sum vector S; d=arg(S).

The threshold distance, is in one embodiment based on the size of the work area, such as within 10% of a side of the work area. The threshold distance, is in addition or as an alternative embodiment based on a specified area, such as 2, 5, or 10 meters. The period of time may be set to 5, 10 or 15 minutes.

In one embodiment, the robotic work tool100is configured to determine the distance travelled as a distance travelled without the robotic work tool100being forced to execute a turn, such as due to a collision or encountering a boundary wire, i.e. the longest continuous distance travelled in a direction.

In one embodiment a forced turn is a turn resulting from detecting a collision. In one embodiment a forced turn is a turn resulting from detecting a collision or encountering a boundary wire.

In addition or as an alternative embodiment the robotic work tool100is configured to determine that the robotic work tool has entered a state of limited movement by determining that the robotic work tool100has detected a number of forced turns FTN exceeding a forced turn threshold number FTTN.

In one such embodiment the robotic work tool100is configured to determine that the robotic work tool has entered a state of limited movement by determining that the robotic work tool100has detected a number of forced turns FTN exceeding a forced turn threshold number FTTN during a threshold period of time. In one embodiment, the period of time is 2, 5, 10 minutes and the TCN is 10, 20 or 50 collisions respectively. In one such embodiment the robotic work tool100is configured to determine that a forced turn frequency FTF exceeds a forced turn frequency threshold FTFT. In one embodiment, the FTFT is 1 forced turn per 5, 10 or 20 seconds.

In an alternative or additional such embodiment where the robotic work tool100is configured to determine that the robotic work tool100has detected a number of forced turn FTN exceeding a threshold forced turn threshold number FTTN, the robotic work tool100is configured to determine that the robotic work tool has entered a state of limited movement by determining that the robotic work tool100has detected a number of forced turns FTN exceeding a forced turns threshold number FTTN during a threshold distance of travel. In one embodiment, the distance travelled is 2, 5, or 10 meters and the CNT is 5, 10 or 20 collisions respectively.

In addition or as an alternative embodiment the robotic work tool100is configured to determine that the robotic work tool has entered a state of limited movement by determining that the robotic work tool100has detected a number FRCN of forwards forced turns (FFT) in series with reverse forced turn (RFT) (i.e. a repeated series of forwards and reverse collisions (or encounterings of a boundary wire), indicating that the robotic work tool100is trapped between two or more objects, possibly boundary wires) exceeding a threshold front/reverse forced turns number TFRFTN. In one embodiment the TFRFTN is 5, 10 or 20 forced turns. In one such embodiment, the robotic work tool100is configured to determine the FRFTN during a threshold time period, for example 1, 2 or 5 minutes. In an alternative or additional such embodiment, the robotic work tool100is configured to determine the FRFTN during a threshold distance travelled, for example 1, 2 or 5 meters.

As discussed above, the robotic work tool100may be arranged to detect a collision by utilizing the collision detectors175. Alternatively or additionally, and as discussed above, the robotic work tool100may be arranged to detect a collision by utilizing the accelerometer180-2. The robotic work tool100may alternatively or additionally be arranged to detect a collision by monitoring the currents provided to the wheel motors150.

In addition or as an alternative embodiment the robotic work tool100is configured to determine that the robotic work tool has entered a state of limited movement by determining that the maximum distance between two forced turns (due to a collision or encountering a boundary wire, as discussed above) falls short of a threshold minimum distance. In one embodiment, the minimum distance is 0.2, 0.5 or 1 meter. In one such embodiment, the robotic work tool100is configured to determine the maximum distance between two turns during a threshold time period, for example 1, 2 or 5 minutes. In an alternative or additional such embodiment, the robotic work tool100is configured to determine the maximum distance between two turns during a threshold distance travelled, for example 1, 2 or 5 meters.

In addition or as an alternative embodiment the robotic work tool100is configured to determine that the robotic work tool has entered a state of limited movement by determining a position of the robotic work tool and to determine that the position of the robotic work tool has not been changed by a distance exceeding a threshold distance for a threshold period of time and/or for a threshold distance travelled. In one embodiment, the threshold distance is 2, 5 or 10 meters, the threshold period of time is 1, 2, or 5 minutes and the threshold distance travelled is 10, 20, or 50 meters.

The different time periods discussed above used to determine whether the robotic work tool has entered a state of limited movement may be absolute or depend on external factors. The same is also applicable to any frequencies discussed above.

In one embodiment, where the robotic work tool100is configured to determine the slope of an area, the period of time is based on the slope of an area, where an area with a steeper slope would utilize a shorter time period, indicating that there is a higher risk of the robotic work tool100entering a state of limited movement when traversing an area with a high slope.

The robotic work tool may be configured to determine the slope (S) of an area, by utilizing the accelerometer180-2or other sensor such as a gyroscope. Alternatively or additionally, the robotic work tool may be configured to determine the slope of an area, by determining a current area occupied by the robotic work tool and receive an indication of the slope of that area from a map application, possibly stored in the memory120of the robotic work tool100. The current area occupied by the robotic work tool100may be determined utilizing the sensors for deduced reckoning180.

A robotic work tool100continuously traversing already serviced areas is also indicative of the robotic work tool having entered a state of limited movement. In one embodiment the period of time is based on the operating intensity of the robotic work tool100, where an area with a lower operating intensity would utilize a shorter time period, indicating that the robotic work tool100is continuously traversing an area already serviced, assuming that the operating intensity goes down after servicing an area. Such is the case for robotic lawnmowers as an example, as the load on the cutting blades160goes down after the grass has been cut (which may be detected by noting a reduction in power provided from the cutting motor, or an increase in speed of the cutter160). However, a robotic rototill (or rotary cultivator) may experience a higher operating intensity when operating in an already serviced area, where an increase in operating intensity would utilize a shorter time period. The change in operating intensity may thus affect the time periods differently depending on the type of robotic work tool. How the operating intensity is determined also depends on the type of robotic work tool, but is generally determined based on the power provided to the work tool or the speed of the work tool. For a robotic lawnmower, the operating intensity may be determined indirectly through determining the height of the grass.

In addition or as an alternative embodiment the robotic work tool100is configured to determine that the robotic work tool has entered a state of limited movement by determining that the robotic work tool100has slipped or skidded. In one embodiment, the determination that the robotic work tool100has slipped or skidded is performed in combination with another determination that the robotic work tool has entered a state of limited movement, wherein the determination that the robotic work tool100has slipped or skidded serves to reduce a threshold time period, reduce a minimum distance o, area or size or to reduce a number of collisions.

For the context of this application there will be made no difference between skidding or slipping, skidding usually meaning a sliding movement in a travelled direction, and slipping usually meaning sliding in an unwanted or not travelled direction, and they will both be referred to as sliding, if not explicitly detailed otherwise.

In one embodiment the robotic work tool100is configured to determine that the100has slid by detecting a movement not corresponding to a calculated movement (or expected movement), having been calculated based on input from sensors for controlling the robotic work tool and/or from sensors for deduced reckoning for example based on the odometers180-1. In such an embodiment, the robotic work tool100is configured to detect the movement, for example by receiving input thereof from the accelerometer180-2(or other sensor for deduced reckoning such as a gyroscope) and to compare the detected movement to a calculated movement that is determined based on the odometers (for example wheel counters)180-1, possibly in combination with other sensors for deduced reckoning. If for example, the detected movement indicates a sideways movement while the calculated movement indicates a forwards movement, the robotic work tool100may determine that the robotic work tool has slid sideways. In one embodiment, the robotic work tool100is configured to also take the current slope (see above for details on how the slope may be determined) in to account. If, in the example presently discussed, the detected movement is a movement in the direction of the slope (downwards), the robotic work tool100may determine that the robotic work tool100has slid down the slope. In response to this, the time period, threshold distances or such may be adapted to more readily detect (i.e. reducing the distances etc. to enable a faster detection) that the robotic work tool has entered a state of limited movement. If, on the other hand, the detected movement is a movement in the direction opposite the slope (upwards), the robotic work tool100may determine that the robotic work tool100has experienced a sideways collision, possibly with a user or a pet.

The detected movement may also not match the calculated movement by simply the robotic work tool having travelled at a speed different than indicated by the wheel turns, which indicates that the robotic work tool is sliding in the direction of travel. A faster travel indicates that the robotic work tool is sliding in the direction of travel (such as down a slope). A slower travel indicates that the robotic work tool is unable to find grip, such as trying to get up a hill, but slipping.

In addition or as an alternative embodiment the robotic work tool100is configured to determine that the robotic work tool100has slid by simply detecting a sideways movement, sideways taken to be in a direction not aligned with the directions of the wheels130.

In addition or as an alternative embodiment the robotic work tool100is configured to determine that the robotic work tool100has slid by detecting wheel slip, which may be detected by a wheel rotating at a speed not corresponding to the power delivered to it.

In addition or as an alternative embodiment the robotic work tool100is configured to determine that the robotic work tool100has slid based on the sensors for deduced reckoning180, possibly through one of the manners discussed herein or through other manners of detecting a slid based on deduced sensor input.

In one embodiment the robotic work tool100is also configured to determine420a path that the robotic work tool100has travelled, which path lead to the state of limited movement (the travelled path).

Especially in embodiments where the exit path (to be discussed below) is not dependent on the path travelled, the path travelled need not be determined and this step is thus optional. The dotted line indicates the path travelled for the second robotic work tool100-2inFIG.3. The robotic work tool100may be configured to determine the path that the robotic work tool100had travelled in a number of different manners.

In one embodiment the robotic work tool100is configured to determine the travelled path by storing navigational operations for a travelling time period. The robotic work tool100is thus configured to buffer the most recent path travelled. A navigational operation may correspond to or comprise a command causing a wheel to turn in a direction at a threshold speed for a specific time (or until a next navigational operation). A navigational operation may alternatively or additionally comprise a count of wheel turns (in a direction at a threshold speed). A navigational operation may alternatively or additionally comprise noting a distance travelled. A navigational operation may alternatively or additionally comprise noting a speed travelled at for an associated time. A navigational operation may alternatively or additionally comprise noting a directional change, such as by noting input from an accelerometer180-2) or by counting wheel turns in different directions and/or at different speeds (also depending on the size of the wheels, if different). Such navigational operations allows for recreating the travelled path by repeating the navigational operations. A navigational operation may alternatively or additionally comprise noting a collision for a threshold collision detector175. Such a navigational operation allows for recreating the travelled path by repeating the preceding navigational operations until a collision with the specified collision detector is detected.

In addition or as an alternative embodiment the robotic work tool100is configured to determine the travelled path by utilizing a camera195or other optical recorder. The camera195may be utilized to store the path travelled, by continuously or repeatedly noting objects (landmarks) in the environment, the order of those landmarks indicating or providing a path. The travelled path may then be recreated by searching for and navigating towards the objects (landmarks) detected.

Alternatively or additionally, the travelled path may be stored as a video sequence. The travelled path may then be recreated by capturing a new video sequence and navigating so that the new video sequence corresponds to the old or previously recorded video sequence.

Alternatively or additionally, the travelled path may be determined based on sensor input from the GNSS sensor190if such is comprised in the robotic work tool100.

In one embodiment the travelling time period corresponds to the threshold time period(s) for determining that the robotic work tool has entered the state of limited movement. In one embodiment the travelling time period is longer the threshold time period(s) for determining that the robotic work tool has entered the state of limited movement. This increases the likelihood that a path is stored that corresponds to the path that led the robotic work tool into the state of limited movement. In one embodiment the travelling time period corresponds to double the threshold time period(s) for determining that the robotic work tool has entered the state of limited movement. In one embodiment the travelling time period does not correlate to or relate to the threshold time period(s) for determining that the robotic work tool has entered the state of limited movement. In one such an embodiment, the travelling time is 10, 20, 30, 45 or 60 minutes. In one such alternative or additional embodiment, the travelling time is in the range 10 to 60, 20 to 120, or 30 to 300 minutes. In addition or as an alternative embodiment, the travelling time is the time since last leaving the charging station210.

The robotic work tool100is further configured to exit430the state of limited movement by navigating an exit path based on the path that the robotic work tool100had travelled. In one embodiment the robotic work tool100is further configured to determine the exit path based on the determination that the robotic work tool had entered a state of limited movement.

In one embodiment, the robotic work tool is configured to determine that the exit path is the reverse of the path travelled. In such an embodiment, the robotic work tool is thus arranged to exit the state of limited movement by reversing out of the state, the same way it entered the state. In one such embodiment, the robotic work tool100is configured to determine that the exit path is the reverse of the path travelled if the determination that the robotic work tool had entered a state of limited movement was based on a travelling distance falling short, the size of a travelled area falling short, or similar in combination with a detection of a slid.

In one embodiment, the robotic work tool is configured to determine that the exit path is the reverse of the path travelled, but preceded with a 180 degree rotation of the robotic work tool100. In such an embodiment, the robotic work tool is thus arranged to exit the state of limited movement by travelling out of the state the same way it entered the state, but the robotic work tool facing the opposite direction as when entering, ensuring (or at least increasing the likelihood) that all navigational operations are executed in a same manner as when entering the state. This may provide a different degree of grip or climbing ability. It may also provide a different degree of turning compared to simply reversing. In one such embodiment, the robotic work tool100is configured to determine that the exit path is the reverse of the path travelled if the determination that the robotic work tool had entered a state of limited movement was based on a travelling distance falling short, the size of a travelled area falling short, or similar. InFIG.5, the first robotic work tool100-1shows an example of such a travelled path P1and exit path EP1(basically being the same, but in opposite directions).

In one embodiment, the robotic work tool is configured to determine that the exit path is a path repeatedly crossing the path travelled, which increases the likelihood of not repeating actions or operations that caused the robotic work tool to enter the limited state, such as getting trapped.

In one embodiment, the robotic work tool is configured to determine that the exit path is the path travelled, but leaving and re-entering the path travelled at a later stage for example with an added start of turning 90 degrees, travelling for a distance of 0.5, 1, 2 or 5 meters, turning 270 degrees, travelling for a distance of 0.5, 1, 2 or 5 meters, turning 270 degrees again, travelling for a distance of 0.5, 1, 2 or 5 meters, and turning 90 degrees. This increases the likelihood of not repeating actions or operations that caused the robotic work tool to enter the limited state, such as getting trapped.

In one embodiment, the robotic work tool is configured to determine that the exit path is an extension or projection of the path travelled. This may be helpful in situations where a slid has been detected whereby a robotic work tool may exit such a situation or area, by moving in the direction that the slid takes it.

In one embodiment, the robotic work tool is configured to determine a start position of the robotic work tool100in the current path travelled and to determine that the exit path is a path to the start position followed by a turn in a direction opposite the direction travelled at that position in the path travelled. This enables the robotic work tool to exit the current area without having to repeat the whole pattern of navigational operations.

In one embodiment, the robotic work tool is configured to determine that the exit path is to rotate for example 180 degrees and thereafter move away from the path travelled. This increases the likelihood of the robotic work tool escaping a situation where it is trapped between one or more objects and may be selected if the number of collisions was decisive when determining that the robotic work tool had entered the state of limited movement. InFIG.5, the second robotic work tool100-2shows an example of such a travelled path P2and exit path EP2.

In one embodiment, the robotic work tool is configured to determine that the exit path is a path in a direction where there are no or few detected collisions in the path travelled. This increases the likelihood of the robotic work tool escaping a situation where it is trapped between one or more objects and may be selected if the number of collisions was decisive when determining that the robotic work tool had entered the state of limited movement. InFIG.5, the second robotic work tool100-2shows an example of such a travelled path P2and exit path EP2.

In such an embodiment, the robotic work tool100may for each direction compare segments where a collision was detected and by backtracking the path travelled, determine if that segment is in a specified direction. Alternatively, the robotic work tool100may determine for each segment where a collision was detected determine the direction of the collision, possibly by backtracking the path travelled, summarize the determine directions and determine a direction having the fewest (or none) collisions as the direction to travel.

In one embodiment, the robotic work tool is configured to determine that the exit path is a path in a direction orthogonal to or at least not aligned with the path travelled. This may enable a robotic work tool to exit a situation where it has slipped into a state of limited movement and may be selected if a detection of slid was decisive when determining that the robotic work tool had entered the state of limited movement. InFIG.5, the third robotic work tool100-3shows an example of such a travelled path P3and exit path EP3.

In one embodiment, the robotic work tool is configured to determine that the exit path is a path leading to a boundary wire220(or a guide wire220G) and follow such a wire out of the state of limited movement. In such an embodiment the robotic work tool100may thus be configured to search for a wire, such as a boundary wire220and/or a guide wire220G, and as a wire is found, follow the wire to escape the state of limited movement. In one embodiment the robotic work tool is configured to follow the wire at least for an escape distance. The escape distance may be random or predetermined. The escape distance may be 5, 10, 15, 20, 25 or more meters. The exit path is then comprised of the navigational operations to search for a wire and to follow the wire, In one embodiment the robotic work tool100is configured to resume or take up an operating pattern as the state of limited movement has been exited (such as when the wire has been followed for a distance and/or time). In one embodiment, the operating pattern indicates a random operation. In one embodiment, the operating pattern indicates a structured movement (i.e. operation) pattern across—at least partially—the work area. One example of a structured pattern is to operate in parallel strokes.

In one embodiment, the robotic work tool is configured to determine that the exit path is a rotation followed by a movement. In such an embodiment the robotic work tool100is thus configured to rotate and then try to find its way out of the state of limited movement.

The following movement may be a straight movement in a direction. In such an embodiment the robotic work tool100is thus configured to rotate and then try to find its way out of the state of limited movement by travelling in a direction at least for a minimum escape distance attempting to distance the robotic work tool from the area where the state of limited movement occurred. The escape distance may be random or predetermined. The escape distance may be 5, 10, 15, 20 or more meters.

The following movement may alternatively or additionally be a series of movements in distances changing directions. In such an embodiment the robotic work tool100is thus configured to rotate and then try to find its way out of the state of limited movement by travelling in a varying direction attempting to distance the robotic work tool at least a minimum distance from the area where the state of limited movement occurred while reducing the risk of running into obstacles.

The following movement may alternatively or additionally be a random movement. In such an embodiment the robotic work tool100is thus configured to rotate and then try to find its way out of the state of limited movement by travelling in a random direction attempting to distance the robotic work tool from the area where the state of limited movement occurred while reducing the risk of running into obstacles or having such collisions substantially influence the exit path, being random anyhow.

Alternatively or additionally, the path may be based on sensing the signal level and steering towards an increased signal level. In such an embodiment, the robotic work tool is configured to determine that the exit path by rotating and/or circulating the robotic work tool100and sensing a signal level being picked up from a wire (boundary and/or guide wire), determining a maximum signal level, and then steering the robotic work tool in the direction giving the maximum signal level, presumably steering towards the wire. As noted the robotic work tool may rotate, assumingly around a rotational axis internal to the robotic work tool, to find the maximum signal level. Additionally or alternatively, the robotic work tool100may circulate, i.e. travel in a circular (or pseudo-circular) pattern, assumingly around a rotational axis external to the robotic work tool to find the maximum signal level,

In one embodiment, the robotic work tool is configured to determine that the exit path based on a map application, possibly stored in the memory120of the robotic work tool100. In one such an embodiment, the robotic work tool is configured to determine a location where the robotic work tool will not be in a state of limited movement. One example of such a position is the starting position of the determined path travelled. The exit path is then determined to be a path to such a location.

In one an embodiment, the robotic work tool is configured to determine the exit path and execute the navigation along the exit path based on sensors for deduced reckoning180.

The inventors have realized that the general idea behind the present invention of discovering that a robotic work tool is in a state of limited movement based on the current movement pattern as discussed above, may also be sued in cooperation with satellite navigation. In one such embodiment, the robotic work tool is configured to determine that it is in a state of limited movement based on the current movement pattern in any of the manners as discussed herein and then determine the exit path based on the current position retrieved from or based on satellite navigation sensors, such as the GNSS sensor190. In one embodiment, the robotic work tool is thus configured to determine the exit path and execute the navigation along the exit path based on GNSS sensors190.