Abstract:
A robotic device is manually driven along a perimeter of a Region Of Interest (ROI) or along a Path Of Interest (POI) for future autonomous operation. An Initial Point (IP) is established by identifying a unique machine recognizable feature, for example, a Radio Frequency Identification (RFID) tag located at the IP. The robotic device is then manually driven along the perimeter or along the path and sensors carried by the robotic device collects data to characterize the ROI or POI. The sensors may include sonar, vision systems, laser, or radar devices for measuring relative positions of a wall, stairs, or obstacles. Wheel odometry may be used to track distances traveled and data fusion exercised to combine the odometry data with the sonar and/or laser measurements to model the ROI or POI. Characterization is performed by collecting points along a wall, fitting a line to the points, and finding the intersections of consecutive lines.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    The present invention relates to robotic device navigation and in particular to a system and method for establishing a map of a Region Of Interest (ROI) or a Path Of Interest (POI) for operation of a robotic device. 
         [0002]    Various mobile robotic devices are coming into common use and the use of robotic devices has been suggested for many applications. One such suggested application is the operation of floor cleaning machines for large areas. Another suggested application would be for the operation of a courier robot. Such areas require definition before the robotic device may perform an autonomous operation. 
       BRIEF SUMMARY OF THE INVENTION 
       [0003]    The present invention addresses the above and other needs by providing a method and robotic device which is manually driven along a perimeter of a Region Of Interest (ROI) or along a Path Of Interest (POI) for future autonomous operation. Manually driven is herein intended to mean controlled by an operator maneuvering the machine physically using onboard the machine controls or remotely controlling the machine. An Initial Point (IP) is established by identifying a unique machine recognizable feature, for example, a Radio Frequency Identification (RFID) tag located at the IP, or by identifying a room geometry. The robotic device is then manually driven along the perimeter or along the path and sensors carried by the robotic device collect data to characterize the ROI or POI. The sensors may include sonar, radar, vision systems, flash lidar, laser, or other distance measuring devices for measuring relative positions of walls, stairs, openings, or obstacles. Wheel odometry may be used to track distances traveled and data fusion exercised to combine the odometry data with the measurements from the distance sensors to model the ROI or POI. Characterization is performed by collecting points along a wall or along a path, fitting a line to the points, and finding the intersections of consecutive lines. 
         [0004]    In accordance with one aspect of the invention, there is provided a method for characterizing a Region Of Interest (ROI) for future autonomous operation of a robotic device. The ROI includes a number N boundaries. The method includes positioning the robotic device at an Initial Point (IP) proximal to a location identifying tag or machine recognizable feature residing along a first boundary of the ROI and then manually driving the robotic device along the perimeter of the ROI. The robotic device is manually turned to a first heading approximately parallel to the first boundary and manually driven along the first heading approximately parallel to the first boundary. The robotic device automatically collects a set of first data points corresponding to points along the first boundary using a position and a heading of the robotic device and at least one distance measuring sensor carried by the robotic device. The robotic device is manually turned at a first boundary end towards a second heading approximately parallel to a second boundary of the ROI and the robotic device automatically fits a first line to the set of first data points. The robotic device is then manually driven along the second heading approximately parallel to the secondary boundary and automatically collects a set of second data points corresponding to points along the second boundary using the position and the heading of the robotic device and the at least one distance measuring sensor carried by the robotic device. The robotic device is then manually turned at a second boundary end towards a third heading approximately parallel to a third boundary and the robotic device automatically fits a second line to the set of second data points and automatically sets a first corner position to the intersection of the first line and the second line. The robotic device is then manually driven along the third heading approximately parallel to the third boundary. The robotic device is then manually driven along remaining boundaries of the ROI, collecting data points, fitting lines, and setting corners. The characterization of the ROI is saved for later autonomous operation of the robotic device. 
     
    
     
       BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING 
         [0005]    The above and other aspects, features and advantages of the present invention will be more apparent from the following more particular description thereof, presented in conjunction with the following drawings wherein: 
           [0006]      FIG. 1  is a Region Of Interest (ROI) for operation of a robotic device and a path for manually driving the robotic device along boundaries of the ROI to characterize the ROI according to the present invention for later autonomous operation. 
           [0007]      FIG. 2  shows the robotic device next to a boundary of the ROI. 
           [0008]      FIG. 3A  shows the robotic device next to a location identifying tag on a first boundary of a ROI with the robotic device on a first heading approximately parallel to the first boundary. 
           [0009]      FIG. 3B  shows the robotic device after manually driving to a first boundary end and turning to a second heading approximately parallel to a second boundary and a first line fit to first data points collected along the first boundary. 
           [0010]      FIG. 3C  shows the robotic device after manually driving to a second boundary end and turning to a third heading approximately parallel to a third boundary and a second line fit to second data points collected along the second boundary and a first corner position at an intersection of the first line and the second line. 
           [0011]      FIG. 3D  shows the robotic device after manually driving to a third boundary end and turning to a fourth heading approximately parallel to a fourth boundary and a third line fit to third data points collected along the third boundary and a second corner position at an intersection of the second line and the third line. 
           [0012]      FIG. 3E  shows the robotic device after manually driving to a fourth boundary end and turning towards the first heading approximately parallel to the first boundary and a fourth line fit to fourth data points collected along the fourth boundary and a third corner position at an intersection of the third line and the fourth line and a fourth corner position at an intersection of the fourth line and the first line. 
           [0013]      FIG. 4  is a method according to the present invention for characterizing the ROI for future autonomous operation of the robotic device. 
           [0014]      FIG. 5  shows a path around an ROI including free run segments. 
           [0015]      FIG. 6  shows a path along a POI including free run segments. 
           [0016]      FIG. 7  shows an avoided area comprising an island. 
       
    
    
       [0017]    Corresponding reference characters indicate corresponding components throughout the several views of the drawings. 
       DETAILED DESCRIPTION OF THE INVENTION 
       [0018]    The following description is of the best mode presently contemplated for carrying out the invention. This description is not to be taken in a limiting sense, but is made merely for the purpose of describing one or more preferred embodiments of the invention. The scope of the invention should be determined with reference to the claims. 
         [0019]    A Region Of Interest (ROI)  10  for operation of a robotic device  14  and a path  16  for manually driving the robotic device  14  along boundaries  20  of the ROI  10  to characterize the ROI  10  according to the present invention for later autonomous operation is shown in  FIG. 1 . The ROI  10  includes a first room  10   a,  a hall  12   a,  and a second room  10   b.  A second hall  12   b  is present but is not part of the ROI  10 . A location identifying tag  18  resides along the boundary  20  at an Initial Point (IP) for both identifying the location of the IP and for identifying the particular ROI  10  for future identification. The characterization is manually performed by an operator manually driving the robotic device  14  around a perimeter of the ROI  10  along the path  16 . 
         [0020]    A detailed view of a suitable robotic device  14  and a boundary  20  is shown in  FIG. 2 . The robotic device  14  has at least two wheels, and preferably has three wheels. A preferred robotic device has two rear wheels  34  and one front wheel  36  and more preferably has a steerable driven front wheel  36  and two non-driven rear wheels  34 . One example is the Nilfisk-Advance, Inc. Advenger floor cleaning machine. Each wheel  36  and  34  preferably includes a rotation counter and more preferably an encoder for accurately measuring the rotation of the wheels  36  and  34 . Such measurements may be used both to determine a distance traveled by the robotic device  14  (i.e., wheel odometry) and/or to determine a heading of the robotic device, for example, by comparing the relative rotation of the two rear wheels  34 . 
         [0021]    The robotic device  14  further includes distance measuring sensors  28   a,    28   b,    30   a,    30   b,  and  32  for characterizing the ROI  10  and for object avoidance during autonomous operation. During ROI  10  characterization, side looking sensors  30   a  and  30   b  transmit a wave packet  25  on a beam  26  to measure a distance to the boundary  20 . The distance is computed as the propagation speed of the wave packet  25  divided by half a measured round trip propagation time. The reflecting surface is assumed to be in the center of the beam. The distance is combined with the robotic device  14  position and heading to determine data points  38  along the boundary. Additionally, data points  39  made by the forward looking sensor  32  may be saved and in some instances used as data points in the line fit for the boundary they fall on. Forward looking sensors  28   a  and  28   b  may provide additional data points for subsequent line fits, and may be used for obstacle avoidance during later autonomous operation of the robotic device  14 . 
         [0022]    The robotic device  14  is shown next to the location identifying tag  18  on a first boundary  40   a  of a rectangular ROI with the robotic device  14  on a first heading  41   a  approximately parallel to the first boundary  40   a  in  FIG. 3A . The location identifying tag  18  is preferably an RFID tag and both identifies a start point and a unique ROI, but the robotic device  14  may also use it&#39;s sensors to identify a unique feature in the ROI. Approximately parallel is meant to be parallel within the context of a typical driver. The robotic device does not rely on being driven on a perfectly parallel path to accurately detect points along a wall. 
         [0023]    The robotic device  14  is manually driven along a heading  41   a  approximately parallel to the first boundary  40   a  to a first boundary end  43   a  and turned to a second heading  41   b  approximately parallel to a second boundary  40   b  shown in  FIG. 3B . After turning a sufficient amount at the first boundary end  43   a  to detect that the robotic device  14  is being turned to a new heading, preferably turning approximately twenty degrees, a first line fit  42   a  is performed using first data points  38  (see  FIG. 2 ) collected along the first boundary  40   a.  The line fit  42   a  may be a linear regression, a least squares line fit, a recursive least squares fit, or any method for fitting a line to data points. The line fit  42   a  may be computed before completing the turn to the second heading  41   b.    
         [0024]    The robotic device  14  is then manually driven along the second heading  41   b  to a second boundary end  43   b  and turned to a third heading  41   c  approximately parallel to a third boundary  40   c  shown in  FIG. 3C . After turning a sufficient amount, a second line fit  42   b  is performed using second data points  38  (see  FIG. 2 ) collected along the second boundary  40   b.  After computing the second line fit  42   b,  a first detected corner  44   a  is computed as the intersection of the first line fit  42   a  and the second line fit  42   b.  The detected corner  44   a  theoretically is co-located with the first boundary end  43   a,  but may include some error due to inexact line fits. Such errors are generally small. 
         [0025]    The robotic device  14  is manually driven on the third heading  41   c  to a third boundary end  43   c  and turned to a fourth heading  41   d  approximately parallel to a fourth boundary  40   d  shown in  FIG. 3D . After turning a sufficient amount, a third line fit  42   c  is performed using third data points  38  (see  FIG. 2 ) collected along the third boundary  40   c.  After computing the third line fit  42   c,  a second detected corner  44   b  is computed as the intersection of the second line fit  42   b  and the third line fit  42   c.    
         [0026]    The robotic device  14  is manually driven to a fourth boundary end  43   d  and turned towards the first heading  41   a  approximately parallel to the first boundary  40   a  shown in  FIG. 3E . After turning a sufficient amount, a fourth line fit  42   d  is performed using fourth data points  38  (see  FIG. 2 ) collected along the fourth boundary  40   d.  After computing the fourth line fit  42   d,  a third detected corner  44   c  is computed as the intersection of the third line fit  42   c  and the fourth line fit  42   d,  and a fourth detected corner  44   d  is computed as the intersection of the fourth line fit  42   d  and the first line fit  42   a.  While the example of the present invention is described above in terms of a rectangular room, the ROI may be an area of a room having less than four walls or more than four walls as in the case of  FIG.1   
         [0027]      FIGS. 3A-3E  describe the present invention exercised on a rectangular ROI  40 . The application of the present invention to ROIs such as the ROI  10  shown in  FIG. 1  follows the same steps as shown in  FIGS. 3A-3E . The process of computing line fits and finding corners is entirely automatic and performed without operator inputs, however, in ROIs with boundaries having less than twenty degrees difference, an operator input may be provided to define when a turn is initiated and completed. In ROIs with rounded boundaries, a circle fit may be used to model the rounded boundary(s). 
         [0028]    A method according to the present invention for characterizing the ROI for future autonomous operation of the robotic device  14  is described in  FIG. 4 . The method includes positioning a robotic device next to a first wall and proximal to an identifiable position at an Initial Point (IP) at step  100 , manually driving the robotic device along the first wall (or boundary) at step  102 , automatically collecting first points along the first wall at step  104 , at the end of the first wall, manually turning the robotic device to manually drive along a second wall at step  106 , automatically fitting a first line to the first points at step  108 , manually driving the robotic device along the second wall at step  110 , automatically collecting second points along the second wall at step  112 , at the end of the second wall, manually turning the robotic device to manually drive along a third wall at step  114 , automatically fitting a second line to the second points at step  116 , and automatically finding a first corner at the intersection of the first line and the second line at step  118 . In the case of an ROI, the steps  110  to  118  are repeated until the robot device turns toward the IP. When the robotic device is manually turned towards the IP, in addition to automatically fitting the last line to the last wall and automatically finding the previous corner, the final corner is also automatically found. The identifiable position may be identified by detection a position identifying tag, using sensors on the robotic device to identify features in the ROI, or my any other means to identify a particular location. 
         [0029]    The ROI may also include free run segments  62   a,    62   b,  shown in  FIG. 5 . The free run segments  62   a  and  62   b  are not necessarily associated with detectable features of the room(s) and specifically do not rely on detection of a wall by the sensors  30   a  and  30   b  (see  FIG. 2 ) as described in  FIGS. 3A-3E . The free run segments  62   a  and  62   b  in  FIG. 5  create an avoided area  64  set apart by virtual walls  66   a  and  66   b  which corresponds to the free run segments  62   a  and  62   b  respectively. Such free run segments may be necessary when only part of a corridor or room is intended to come within an ROI. Creation of a free run segment may be selected by the operator or automatically selected by the robotic device  14  when the robotic device recognizes that a wall is not being detected. In this instance, the robotic device  14  uses an alternate method to record a trajectory for the free run segment. Examples of such methods are wheel odometry or tracking the position of the robotic device using the at least one measuring device. The free run segments  62   a  and  62   b  may be described as creating a virtual wall offset from the center of the robotic device  14 . One advantage of creating a virtual wall is that existing wall following algorithms may directly use the virtual wall for future autonomous operation of the robotic device  14   
         [0030]    The present invention has further application to characterizing a Path of Interest (POI) for later autonomous operation. The robotic device  14  is manually driven along the POI from an Initial Point (IP) to a Final Point (FP) and data is collected as when characterizing an ROI. However, in the instance of a POI, the robotic device  14  is not turned back towards the IP, and the operator manually instructs the robotic device that the FP has been reached. One purpose of establishing a POI is to allow separate mapped areas to be linked together whereby the robotic device can autonomously navigate from the first area to be cleaned to the next area. 
         [0031]    In the instance of a POI, the free run segments  72   a  and  72   b  (see  FIG. 6 ) allow the robotic device to navigate to a different ROI or destination. 
         [0032]    An avoided area  80  comprising an island is shown in  FIG. 7 . This is one example of a Virtual Walled Area (VWA). The robotic device  14  is driven to a point along the perimeter  82  of the avoided area  80 , the operator selects a define avoided area mode, and drives the robotic device  14  around the avoided area  80  to add the avoided area to the ROI. 
         [0033]    While the invention herein disclosed has been described by means of specific embodiments and applications thereof, numerous modifications and variations could be made thereto by those skilled in the art without departing from the scope of the invention set forth in the claims.