Abstract:
A method for automatically operating a robot, attached to a lawnmower or other unmanned machine, within an enclosed area is disclosed. The method includes the steps of: 1) providing the following elements: a proximity sensor positioned on the robot, a boundary along the perimeter of the working area and along the perimeter of each area enclosed in the working area in which the robot should not operate, the boundaries being detectable by the proximity sensor, a processing unit connected to the proximity sensor and receiving an input therefrom, a navigation unit on the robot to determine the coordinates of the robot relative to an arbitrary origin, a direction finder, and a memory to store values generated by the processing unit; and 2) causing the robot to move along each of the boundaries provided around or within the working area, to detect the boundaries and to memorize their shape, and to store in the memory values representative of the coordinates of the boundaries, thereby to generate a basic map of the working area. When the robot is to operate within the area, the method includes the steps of: (a) causing the robot to start from a starting point having known coordinates within the basic map of the working area; (b) continuously determining the coordinates of the robot by analyzing data obtained from the navigation unit and by detecting the vicinity of a boundary; and (c) correcting the actual position of the robot on the basic map by comparing the calculated and the actual coordinates of each detected boundary.

Description:
FIELD OF THE INVENTION  
         [0001]    The present invention relates to a method and related systems for navigation in an enclosed area. More particularly, the invention relates to method and apparatus which can be used to cause an automated device to move and to perform predetermined tasks within an enclosed area.  
         BACKGROUND OF THE INVENTION  
         [0002]    The use of automated devices is widespread nowadays, and finds countless applications. For instance, robots perform very precise and delicate tasks in the construction of electronic devices, or in medicine and aviation. Robots are also used in uses which require motion, notably, for automatic warehouses, where goods are retrieved and stored by means of computer-actuated robots. Other applications include, e.g., fetching raw materials in the course of industrial manufacturing, and removing and packaging finished pieces. In everyday&#39;s life, attempts have also been made to exploit robots for lawn mowing and for vacuum cleaning.  
           [0003]    The major drawback of mobile robots, which the art has so far been unable to overcome, is the fact that their movements are limited to well predefined paths, normally requiring that they move along rails, or that they be provided with expensive navigation signs, positioned within the area in which they move, which operate as “stations” which redefine the exact position of the robot, and from which the program may direct the robot to the next station. These intermediate signs are expensive, take up space, and are inconvenient to use, since they must be very precisely positioned and cannot be easily moved.  
           [0004]    Another approach involves providing an area delimited by boundaries recognizable by the robot, and permitting the robot to effect a random walk therein, during which random walk it carries out its tasks. This approach entails severe drawbacks: first of all, when the robot moves within a predefined area by random walk, there is no way to ensure that the whole area will be covered by the tool which must operate thereon. As a result, even though the robot may operate for a long period of time, unworked areas may be left at the end of the operation. Secondly, if the area to be worked is irregular, or if it presents “islands”, viz. areas which must not be worked, the random walk may lead to imperfect operation around such islands, as well as at those locations where the perimeter is of irregular shape. Thirdly, because the operation of the robot is not programmed to obtain a predetermined coverage, it is necessary to allow the random walk to go on for a long period of time, so as to increase the chances of covering a major portion of the area to be worked. This is not only energy consuming, but also leads to an increased wear of the equipment, and may also be environmentally undesirable due, e.g., to noise or other pollution caused by the operation of the robot. Even if the robot is operated by sun energy, most of the aforesaid problems are not overcome, and additional problems exists, connected with such a mode of operation. For instance, the robot may not work properly in areas of the world where sun radiation is scarce or low, and may be inoperative for substantial parts of the day, e.g., on cloudy weather.  
           [0005]    A further approach involves preprogramming the robot with a blueprint of its designated area of operation, such as a floor map of a building in which a robot is to operate. This approach has two major drawbacks:  
           [0006]    a) it requires preprogramming by the user, which makes in unpractical for extensive consumer use; and  
           [0007]    b) it requires that such preprogramming is repeated each time something changes in the work area.  
           [0008]    It is therefore clear that it would be highly desirable to be able to provide means by which automated mechanisms may move and perform their task within a predetermined area, without being hindered by the need for predefined paths and rails, or by intermediate navigation signs or preprogramming, and which may carry out their task in a predetermined manner, without relying on random occurrences and/or on unstable energy sources.  
         SUMMARY OF THE PRESENT INVENTION  
         [0009]    It has now been found, and this is an object of the present invention, that it is possible to free automated mechanisms operating within an enclosed zone from the need for preprogramming or predefined paths and rails, and from the need for intermediate navigation aids, and this to overcome the drawbacks of the prior art and to provide means by which a robot may perform its tasks within an enclosed area in a manner free from such limitations, with high precision and in a minimal period of time.  
           [0010]    It is an object of the present invention to provide a navigation method which fulfills the aforementioned goals.  
           [0011]    It is another object of the invention to provide means which can be used in systems utilizing the method of the invention.  
           [0012]    Other objects of the invention will become apparent as the description proceeds.  
           [0013]    The method for automatically operating a robot within an enclosed area, according to the invention, comprises the steps of:  
           [0014]    providing a boundary along the perimeter of the working area, the said boundary being detectable by a proximity sensor;  
           [0015]    providing boundaries along the perimeter of each area enclosed in the working area, in which it is desired that the robot should not operate, the said boundaries also being detectable by a proximity sensor;  
           [0016]    providing a proximity sensor positioned on the robot;  
           [0017]    providing processing means connected to the said proximity sensor and receiving an input therefrom;  
           [0018]    providing location means on the said robot, to determine the coordinates of the robot relative to an arbitrary origin, at any specific time;  
           [0019]    providing direction finding means;  
           [0020]    providing memory means to store values generated by the said processing means and, optionally, by the said location means;  
           [0021]    causing the robot to move along each of the boundaries provided around or within the said working area, to detect the said boundaries and to memorize their shape, and to store in the memory means values representative of the coordinates of the said boundaries, relative to an arbitrary origin, thereby to generate a basic map of the working area;  
           [0022]    when the robot is to operate within the said area:  
           [0023]    (a) causing the robot to start from a starting point having known coordinates within the basic map of the working area;  
           [0024]    (b) continuously determining the coordinates of the robot by analyzing data obtained from the location means and by detecting the vicinity of a boundary; and  
           [0025]    (c) correcting the actual position of the robot on the basic map by comparing the calculated and the actual coordinates of each detected boundary.  
           [0026]    By “robot” it is meant to indicate any autonomously operating device, which may carry out pre-programmed tasks with one or more tools, while moving in the process from one location to another.  
           [0027]    According to a preferred embodiment of the invention, the location means comprise movement measuring means, such as an odometer or the like device, to measure the distance traveled by the robot, e.g., by measuring the number of revolutions of a wheel. As stated, direction finding means are also provided, so as to provide information on the direction in which the robot travels at any given time, which is needed in order to determine the coordinates of the robot on the map. The direction finding means can be of any suitable type, e.g., may comprise a compass.  
           [0028]    While, as stated, it is an object of the invention to utilize relatively inexpensive devices for the operation of the robot, it is of course possible to employ more expensive and sophisticated equipment, without exceeding the scope of the invention. Thus, for instance, it is possible to employ range-finding means, such as a laser range-finder or RF range finders, to determine the distance of the robot from one or more given locations, at any given time, instead of, or in addition to, using an odometer or the like device to measure the distance traveled. However, any such modifications will be apparent to the skilled person, and therefore are not discussed herein in detail.  
           [0029]    According to a preferred embodiment of the invention, the boundary which is detectable by a proximity sensor comprises a metallic wire through which electric current flows, and the proximity sensor comprises a magnetic field detector. According to another preferred embodiment of the invention, the boundary which is detectable by a proximity sensor comprises passive metallic means which is excitable by a magnetic field, and the proximity sensor comprises an electric field detector. In still another preferred embodiment of the invention the boundary which is detectable by a proximity sensor comprises passive magnetic means, and the proximity sensor comprises a magnetic field detector. Of course, the boundary may be marked by continuous or by discontinuous marking means, or by combinations thereof.  
           [0030]    In still another alternative embodiment of the invention, the boundary which is detectable by a proximity sensor comprises a guide wire through which an acoustic signal passes, and the proximity sensor comprises an acoustic detector.  
           [0031]    A further improvement in the precision of the determination of the actual coordinates of the robot on the map, at any given time, can be obtained by further providing on the boundaries a plurality of individually recognizable markers. Thus, when the robot reaches the boundaries, it not only identifies them by the proximity sensor, but may also receive the exact coordinates on the boundaries assigned to the specific marker it has detected. According to a preferred embodiment of the invention, when provided, the markers are substantially located at even distances from one another. Suitable markers will be easily recognized by the skilled person, and may comprise, e.g., an RF tag or magnetic tag.  
           [0032]    As stated, according to another preferred embodiment of the invention, the distance-measuring means comprise an odometer or the like device, coupled to the wheels of the robot.  
           [0033]    As stated, the robot, when initialized, moves along the boundaries and memorizes their shape. Such memorization may be carried out in a number of ways. For instance, the shape can be memorized by taking continuous or discontinuous readings of the compass and the odometer, and any such readings are then continuously integrated, to give the full coordinates of the boundaries.  
           [0034]    The method of the invention can be exploited in a variety of uses, and is not limited to any particular field of application. One particularly interesting use, however, to which reference will be made also hereinafter for the purpose of exemplification, is when the robot is coupled to a lawn mower. Such robot permits to mow the lawn in the absence of the owner, and at any suitable time, or to vacuum clean any predetermined premises.  
           [0035]    Of course, safety means should preferably be provided to ensure safe operation of the robot. for instance, automatic shut-off of the robot should be provided, coupled to logic circuitry, to ensure that the operation of the robot is discontinued if one of a number of contemplated possibilities takes place. for instance, if the measured distance traveled without encountering a boundary exceeds by a threshold value the maximal linear distance within the bounded area, as calculated from the map of the boundaries, this may mean that the robot has exited the boundaries due, for instance, to a malfunctioning of the system due to which the proximity sensor has failed to identify the boundary. Other required safety means will be easily recognized by the skilled person, according to the type of robot and the intended use thereof.  
           [0036]    The invention is further directed to an automated robot for operation within an enclosed area, comprising:  
           [0037]    a proximity sensor positioned on the robot;  
           [0038]    processing means connected to the said proximity sensor and receiving an input therefrom;  
           [0039]    location means, to determine the coordinates of the robot relative to an arbitrary origin, at any specific time;  
           [0040]    direction finding means; and  
           [0041]    memory means to store values generated by the said processing means and, optionally, by the said location means.  
           [0042]    The term “proximity sensor”, as used herein, indicates any device which is capable of detecting that the boundary of the working area is near. This may include, e.g., magnetic field detectors, acoustic signal detectors, bar code readers, resonance tag meters, transceivers, etc.  
           [0043]    The invention also encompasses a system for automatically operating a robot within an enclosed area, comprising:  
           [0044]    boundary means suitable for positioning along the perimeter of the working area, and of each area enclosed in the working area, in which it is desired the robot not to operate, the said boundary means being detectable by a proximity sensor;  
           [0045]    a robot provided with a proximity sensor;  
           [0046]    processing means on said robot, connected to the said proximity sensor and receiving an input therefrom;  
           [0047]    distance-measuring means on the said robot, to measure the distance of the robot from a given starting point, at any specific time;  
           [0048]    direction finding means;  
           [0049]    memory means to store values generated by the said processing means and, optionally, by the said distance measuring means and/or direction finding means; and  
           [0050]    motion means, to cause the robot to move.  
           [0051]    In accordance with a further embodiment of the invention, a method for automatically cutting a lawn is provided. The method includes the steps of:  
           [0052]    providing a lawnmower with a robot and at least a plurality of lawn height sensors;  
           [0053]    cutting a first swath of lawn in a first direction;  
           [0054]    performing a maneuver, under control of the robot and in response to output of the lawn height sensors, in a second direction generally opposite of the first direction to bring said lawnmower to a location parallel to but overlapping the first swath by a predetermined percentage as indicated by the different output of the lawn height sensors;  
           [0055]    cutting a second swath of lawn parallel to the first swath while continually monitoring the lawn height output of said lawn height sensors thereby to ensure that the percentage of overlap is generally maintained;  
           [0056]    repeating the steps of performing a maneuver and cutting a second swath for further swaths of lawn, wherein the previously cut lawn is denoted by said first swath of lawn and the swath to be cut is denoted by the second swath of lawn.  
           [0057]    The maneuver can be an S-shaped maneuver and the grass height sensor can include the following elements:  
           [0058]    a housing;  
           [0059]    a rotatable wing against which grass can push, the wing having a pin attached thereto;  
           [0060]    a fixed second pin, connected to the housing;  
           [0061]    a spring attached around said pin, wherein the ends of the spring press against opposite sides of the wing and opposite sides of the fixed pin; and  
           [0062]    means for measuring the angle of rotation of the rotatable wing.  
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0063]    The present invention will be understood and appreciated more fully from the following detailed description taken in conjunction with the drawings in which:  
         [0064]    [0064]FIG. 1 schematically shows an enclosed area within which a robot must operate, the shaded areas representing “islands” in which the robot must not enter;  
         [0065]    [0065]FIG. 2 shows, in cross-section, a boundary of FIG. 1, according to a particular embodiment of the invention;  
         [0066]    FIGS.  3 (A and B) illustrates the method of the invention, using polar coordinates;  
         [0067]    [0067]FIG. 4 illustrates the method of the invention, using Cartesian coordinates;  
         [0068]    FIGS.  5 (A and B) is a flow-sheet of an example of a location correction process, according to one preferred embodiment of the invention;  
         [0069]    [0069]FIG. 6 is a flow chart of the operation of a system, according to one preferred embodiment of the invention;  
         [0070]    [0070]FIG. 7 is a pictorial illustration of a lawnmower following the line of cut grass, constructed and operative in accordance with a further preferred embodiment of the present invention;  
         [0071]    [0071]FIG. 8 is a flow chart illustration of a method of operating the lawnmower of FIG. 7;  
         [0072]    [0072]FIG. 9 is a pictorial illustration useful in understanding the method of FIG. 8;  
         [0073]    [0073]FIG. 10 is a schematic illustration of a lawn height sensor, useful in the method of FIG. 8;  
         [0074]    [0074]FIGS. 11A and 11B are schematic illustrations of a lawnmower, a sensor and two types of boundary markings, forming further embodiments of the present invention; and  
         [0075]    [0075]FIGS. 12A, 12B,  13 A,  13 B,  14 A,  14 B,  15  and  16  are schematic illustrations of various types of boundary markings useful in the embodiments of FIGS. 11A and 11B.  
     
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS  
       [0076]    The present invention will be better understood through the following illustrative and non-limitative description of preferred embodiments.  
         [0077]    Looking now at FIG. 1, the working area in which the robot must operate, indicated at “A”, is enclosed by a boundary  1 . Within the working area there are “islands” in which the robot must not penetrate, which are shadowed and enclosed by boundaries  2  and  3 . According to one embodiment of the invention, the robot is an automated lawn mower, and the area A is a lawn. Islands  2  and  3  may be, e.g., trees and their vicinities or flower beds. Thus, we wish the mower to operate only in areas in which grass grows, and to avoid other areas. Alternatively, the robot can be coupled to a floor sweeper or a floor polisher or any other device which has to scan a flat surface.  
         [0078]    As stated, according to one particular embodiment of the invention, the boundaries  1 ,  2  and  3  may comprise a conducting wire. This type of boundary is shown in cross-section in FIG. 2, which shows a wire  4 , comprising a metallic core  5  and a plastic outer layer  6 . A current “i” is caused to flow through the wire, thus generating a magnetic field along the wire. The intensity of the current may be very low, since it is not necessary that the magnetic field be sensed at a great distance from the boundary, and it is sufficient that it be felt in the close vicinity of the wire. The magnetic field is sensed, according to this particular embodiment of the invention, by a magnetic field sensor provided on the lawn mower. The magnetic field and the sensor to sense it are conventional and well known in the art, and therefore are not described here in detail, for the sake of brevity.  
         [0079]    Taking the lawn mower as an example, but it being understood that the invention is in no way limited to its use with a lawn mower, or with any other particular device, the invention operates as follows. A coordinates system is defined, as well as a starting point. FIG. 3A shows a lawn mower L relative to the starting point “S” within the lawn, the lawn mower L being at a point (Θ,r) viz. at a distance r, which is measured by measuring the movement of the mower, and at an angle Θ from starting point S, which is measured by means of a compass. Thus, as shown in FIG. 2B, any point within the enclosed area S will have a unique polar coordinate.  
         [0080]    When it is desired to teach the robot the boundaries of its task, the lawn mower is caused first to move around the boundary  1  of FIG. 1. The memory means of the robot memorize the coordinates of the boundary  1 , relative to starting point S. Throughout this teaching movement, the boundary sensor positioned on the robot (not shown) senses the boundary  1 . Similarly, the boundaries  2  and  3  are sensed for the first time by the robot, and memorized for future use. The robot now has an initial map of the area, similar to what is shown in FIG. 3B, each point having been assigned a coordinate. The set of coordinates so created will be termed “the map” of the working area.  
         [0081]    When it is desired to mow the lawn, the robot is brought to starting point S, and it is started according to a set of instructions which has been preprogrammed, and which may be different for each different task. For instance, a circular lawn may be better looking if mowed in circles, while a soccer field requires back-and-forth mowing. An automated lawn mower according to the invention may further be provided with a number of pre-set programs, from which the user can choose.  
         [0082]    The robot, as said, is further provided with distance-measuring means, such as an odometer or the like device. However, these devices are not fully accurate, and may provide only approximate distance values for any given position. The error in the measurement of the distance may derive from a variety of reasons, e.g., the slipping of wheels on a moist lawn, uneven ground, etc., and the error may build up to quite a substantial extent, impairing the ability of the robot to complete its task with a high degree of precision. While, of course, precise measuring means exist, such as laser distance measurements, these are expensive and/or require calibration targets located in or around the working area. It is a purpose of the invention to avoid the use of such expensive and complicated distance-measuring means.  
         [0083]    According to the invention, therefore, the robot starting a task continuously compares the distance measured by the odometer or other distance measuring device, with the distance from an earlier position to the boundaries in the angular coordinate it is following. If the boundary is detected earlier than anticipated according to this comparison (or, in other words, if the difference between the distance according to the map and the measured distance is negative), the robot continues to move until the boundary is detected. If the difference between the distance according to the map and the measured distance is positive, or in other words, if the boundaries are encountered earlier than expected, actual value of the coordinate is corrected to be that of the map.  
         [0084]    The starting point will initially be the point “S”, and correction of distance errors will be effected relative to this point. As work proceeds, of course, the starting point may be updated to be another point within the area, e.g., a meeting point with the boundaries, for comparison purposes with the map of the area.  
         [0085]    Similarly, the robot has been pre-programmed to avoid “islands”, but will detect an island according to the actual position of the boundary detected, and will correct its present working map based on the detection of the boundary and the original map. As will be understood by the skilled person, the larger the number of bounded areas, the higher the precision of the correction of the actual working map., Therefore, the islands actually help in keeping precision and correcting the actual working map. therefore, if the working area is particularly large, it may be desirable to provide artificial islands for the purposes of map correction.  
         [0086]    As will be appreciated by the skilled person, operating according to the preferred embodiment of the invention described above is very convenient also in respect of the boundaries, since the wire or coil may be embedded in the soil, thus avoiding any actual or even aesthetic disturbance to the working area, and the power requirements to generate a localized magnetic field are very small.  
         [0087]    [0087]FIG. 4 shows an alternative embodiment of the invention, in which the location of each point is measured in Cartesian coordinates. As will be appreciated by the skilled person, it is not essential to the invention that any specific coordinates system be chosen, but it may be more convenient to select a particular set of coordinates, depending on the map correction process employed.  
         [0088]    One particular process, employing Cartesian coordinates, will be described hereinafter by way of example, with reference to the flow-sheet of FIG. 5.  
         [0089]    In FIG. 5A the correction of an error on one axis (Y in the example shown in the flow-sheet of FIG. 5A) is shown, according to one possible embodiment of the invention, while the error in the other axis is not dealt with. FIG. 5B, on the other hand, shows a method according to another possible embodiment of the invention, in which both the X and the Y errors are corrected in one step. It should be noted that, although only the error on one axis can be corrected at a time in the embodiment of FIG. 5A, the error on the other axis can be corrected by moving in a direction perpendicular to the axis being corrected. The movement of the robot can be programmed such that both the X and Y location coordinates are updated at a suitable rate of correction.  
         [0090]    In FIG. 5B another preferred embodiment of the invention is shown, in which the boundaries are marked with markers ( 4  in FIG. 5B), which have a unique identity. The markers will typically be conveniently evenly spaced, although any spacing scheme is possible. The markers can be of any suitable type, e.g., and RF tag, magnetic tag or the like marker, which emits a signal identifiable by a sensor. In such a case, of course, a suitable sensor, capable of identifying unique identity signals must also be provided on the robot.  
         [0091]    During the initiation process the robot performs a complete loop around the edge and memorizes the shape of the boundary as well as the position of each marker (X,Y coordinates of each individual marker). This procedure allows for the correction of both the X and the Y coordinates error, each time an edge is detected, according to the method shown in the flow-sheet of FIG. 5B.  
         [0092]    Schematically speaking, the robot will operate according to the flow-sheet of FIG. 6.  
         [0093]    Reference is now made to FIGS. 7, 8 and  9  which illustrate a further embodiment of the robotic lawnmower of the present invention. In this embodiment, the robot sweeps the space with overlapping straight lines by determining the location of the edge between uncut and cut grass.  
         [0094]    In the present embodiment, the lawnmower, labeled  20  in FIG. 7, additionally includes a plurality of sensors  22 , each one measuring the height of the grass in its general vicinity. FIG. 7 shows two areas, one  24  of cut grass and one  26  of uncut grass. Thus, sensors  22   a  and  22   b  will provide a high height output and sensors  22   c  and  22   d  will provide a low height output.  
         [0095]    By comparing the height output of the sensors  22 , the control system of the lawnmower can determine generally where the edge between cut and uncut grass is. One embodiment of a sensor  22  is illustrated in FIG. 10 and described in detail hereinbelow.  
         [0096]    [0096]FIG. 8 details the operations performed by the control system of lawnmower  20  and FIG. 9 illustrates the movements of the lawnmower  20  at the edge of the lawn. While the lawnmower  20  is cutting a swath  25  indicated by dotted arrows in FIG. 9, the sensors  22  continually measure the height of the lawn nearby (step  30 ). The control system, with the navigation system (compass and odometer), steers the lawnmower  20  in the desired direction, as described hereinabove, while additionally ensuring that the edge of the lawn is maintained in a desired location vis-a-vis the sensors  22 . For example, it may be desired to cut a swath which is only three-quarters the width of the lawnmower. For this situation, the edge between cut and uncut grass should be maintained between sensors  22   a  and  22   b  or between sensors  22   c  and  22   d.    
         [0097]    The control system maintains the desired direction until the edge of the lawn is detected, as described hereinabove. At this point, the lawnmower  20  must change direction of movement while keeping the proper percentage of uncut grass under the lawnmower  20 . It is noted that the lawnmower can move both forward and backward.  
         [0098]    [0098]FIG. 9 illustrates the change in direction. Initially, the lawnmower  20  moves in the forward direction along swath  25  (step  30 ). Upon reaching the edge, the lawnmower  20  performs an ‘S’ shaped backwards maneuver, labeled  40 , using the navigation system, until the edge between cut and uncut lawn is sensed between the desired two sensors  22 . This step is indicated in step  32  of FIG. 8 and produces an ‘S’ shaped cut in the lawn. As shown by line A in FIG. 9, the edge of the cut grass is maintained between the desired two sensors  22 .  
         [0099]    In step  34 , the lawnmower  20  moves forward along the edge of the cut grass until the edge of the lawn is sensed once again. This movement is indicated by the short arrows  42  of FIG. 9. Finally, the lawnmower  20  backtracks along the new swath  44 . Initially and until reaching the location of the line A, the lawnmower  20  utilizes only the compass information. Once the edge of cut grass is found again (at the location of line A), the control system utilizes both the compass and the sensor output to create the new swath  44 . This is indicated at step  36  of FIG. 8.  
         [0100]    As discussed with respect to the previous embodiments, the lawnmower  20  has to return to locations of unfinished scanning, such as locations on the opposite side of a flower bed or tree. To do so, the lawnmower  20  utilizes the navigation system to head towards the desired location and, when it is close to the desired location, it additionally senses for the edge between cut and uncut grass.  
         [0101]    Reference is now made to FIG. 10 which illustrates an exemplary lawn height sensor. The lawn sensor comprises a rotatable wing  50  connected to a potentiometer  52  via a pin  54  and a flexible joint  56 . A weak spring  58  is attached around pin  54  and extensions  60  of spring  58  extend on either side of wing  50  and of a fixed pin  62 . A cam  64  is connected also to pin  54  and a microswitch  66  measures the movement of cam  64 .  
         [0102]    The grass presses against the wing  50 , which, since it is not heavy, will rotate. In turn, the wing  50  pushes against the relevant one of extensions  60 . Since the other extension  60  is maintained in place by fixed pin  62 , the spring  58  is tightened, thereby providing a returning force against the force of the grass.  
         [0103]    The rotation of the wing causes the cam  64  and flexible joint  56  to rotate, which rotation is measured by the potentiometer  52 . Furthermore, if the wing  50  rotates too far, protrusions  68  of cam  64  will press against a rod  70  connected to microswitch  66  which will indicate maximum travel of wing  50 .  
         [0104]    Reference is now made to FIGS. 11A and 11B which illustrate two alternative embodiments of boundary markers and a sensor for detecting the boundary markers located on the lawnmower. Reference is also made to FIGS. 12A, 12B,  13 A,  13 B,  14 A,  14 B,  15  and  16  which illustrate additional types of boundary markers.  
         [0105]    [0105]FIGS. 11A and 11B illustrate the lawnmower  10  with a boundary sensor  80  attached thereto. In FIG. 11A, the boundary is marked by a series of markers  82  placed into the ground on the edge of the lawn. Typically, the markers are placed at set distances one from the next. Alternatively, they can be placed close together along portions of the edge which are very curvy and further apart along straighter portions of the edge. In FIG. 11B, the boundary is marked by a wire  84  which is marked in some suitable and detectable manner. The type of marking matches the type of sensor attached to the lawnmower  10 .  
         [0106]    In one embodiment, shown in FIGS. 12A and 12B, the boundary markers  82  have a magnet therein. In the embodiment of FIG. 12A, the boundary marker  82  is formed of a plastic pin  90 , a magnet  92  placed within pin  90  and a plastic cover  94  covering the magnet-pin unit. In the embodiment of FIG. 12B, the boundary marker  82  is a metallic pin which is magnetized, as shown.  
         [0107]    The corresponding sensor  80 , for both embodiments, is a gauss meter, such as the model  4048  manufactured by F.W. Bell Inc. of the USA, or any other magnetometer which senses the magnetism in the combined unit. The distances between the boundary markers  82  are defined by the strength of the magnet  92  in such a way that at any point along the marked perimeter, at least two markers are detectable by the sensor on the robot.  
         [0108]    In a further embodiment, shown in FIGS. 13A and 13B, the sensor  82  is a bar code reader, such as the model 1516 from Intermek Inc. of Seattle, Wash., USA. The corresponding boundary markers are, in FIG. 13A, a white cable  96  with black bar code markings  98  thereon. The bar code markings  98  are located at fixed distances from each other. In FIG. 13B, the boundary markers are pins (typically of white plastic) with black markings  100  thereon.  
         [0109]    [0109]FIGS. 14A and 14B illustrate a further embodiment which utilizes a Geiger counter, or other suitable radiometer, to detect the boundary markers. FIG. 14A illustrates a cable  102  having a piece of a radioactive mineral  104 , such as Americium, located thereon and FIG. 14B illustrates an individual pin  106  (typically of plastic) having a radioactive mineral  104  thereon. A suitable Geiger counter for use with lawnmower  10  is the SURVIVOR 200, manufactured by Bicron Inc. of the USA.  
         [0110]    [0110]FIG. 15 illustrates a coil-capacitor circuit  110  incorporated into a plastic or ceramic substance  112 . Such a circuit  110  is then placed into a pin unit such as pin  90  and cover  94  of FIG. 12A. The corresponding sensor  80  is a resonance tag reader such as the ones manufactured by Checkpoint Inc. of Thorofare, N.J., USA, for anti-theft protection in stores, such as clothing stores. The coil-capacitor unit  110  can be similar to those manufactured by Checkpoint or any other suitable coil-capacitor unit.  
         [0111]    [0111]FIG. 16 illustrates a further embodiment utilizing transceiver units  120 . The transceiver unit  120  can be any suitable narrow band transmitting and receiving unit and is typically placed into a pin unit such as pin  90  and cover  94  of FIG. 12A. The corresponding sensor is a similar transceiver. Each transceiver, within each pin, operates at the same frequency and the sensor transceiver continually determines how close it is to the nearest transceiver unit  120 . When the sensor transceiver comes to within a predetermined distance, the sensor transceiver determines that it has reached the boundary.  
         [0112]    For all of the above embodiments, the sensor  80  determines that the lawnmower  10  has reached the boundary when the signal sensor  80  receives is at or above a threshold level which is calculated as the expected reading five to ten inches from the marker or cable.  
         [0113]    It will be appreciated that other types of markers and their corresponding detectors are incorporated within the present invention.  
         [0114]    All the above description and examples have been provided for the purpose of illustration, and are not intended to limit the invention in any way. Many modifications can be effected in the method and devices of the invention, without departing from its spirit.