# Patent

## Title
Methods for cleaning lines on a game playing surface

## Abstract

A method for clearing lines on a playing surface is provided. The method includes automatic direction of a cleaning device along the lines to clean the lines. The method also preferably includes calibrating the means of measuring the distances moved by the cleaning device along the surface. Associated software is provided as well.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is a continuation-in-part of prior nonprovisional patent application U.S. Ser. No. 10/977,786, filed Oct. 29, 2004 now U.S. Pat. No. 7,245,994, and titled “Apparatus For Cleaning Lines On A Playing Surface And Associated Methods, Enhancements”, which is a continuation-in-part of prior nonprovisional patent application U.S. Ser. No. 10/226,978, filed Aug. 23, 2002 now U.S. Pat. No. 6,847,868, and titled “Apparatus For Cleaning Lines On A Playing Surface And Associated Methods”, which claims the benefit of prior provisional patent application U.S. Ser. No. 60/314,933, filed Aug. 24, 2001, and titled “Automatic Propulsion, Navigation and Control of Cleaning Device for Tennis Court Lines”, which are incorporated herein by reference in their entirety.


BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to the surface maintenance and treatment industries in general and, in particular, and methods for cleaning lines on a playing surface.
2. Description of the Related Art
A tennis court is a flat surface defined by multiple boundary lines, namely, sidelines, baselines, service lines, and center lines. The double's sidelines, single's sidelines and baselines define the back courts. The single's sidelines and service lines define the service courts. The center lines divide the service courts. For a hard court, the above-mentioned boundary lines are typically drawn beforehand on a sheet of plastic pasted over a concrete base. For a clay or lawn court, the above-mentioned boundary lines are typically prepared by fixing white tape on a playing surface via tacks.
In general, a clay-surface tennis court or clay court requires daily maintenance in the form of smoothing and watering. The smoothing process is typically performed by dragging a broom or brush across the entire surface of the clay court for smoothing out the loose material on the surface of the clay court. After the smoothing process, the boundary lines on the clay court are usually covered with clay dust. As such, the boundary lines must be cleared of the clay dust before watering and/or before any serious play can be conducted on the clay court. Also, after several games have been played on the clay court, the boundary lines may again be covered by clay dust that necessitates cleaning. Commonly, the cleaning is performed by a person walking a roller brush over all the lines of the clay court, which is very laborious and time-consuming, not to mention tiresome. An example of such a roller brush can be seen in U.S. Pat. No. 4,958,400 by Sugita titled “Line Cleaning Apparatus.”
In nonprovisional patent application U.S. Ser. No. 10/226,978, an apparatus is disclosed which cleans boundary lines on a tennis court automatically, under computer program control. Among the requirements for such an apparatus is the ability for precise navigation and accurate measurement of distance traveled by the apparatus. It is therefore desirable to provide methods for increasing the reliability with which the apparatus measures distance traveled while cleaning boundary lines on a playing surface such as a tennis court.
SUMMARY OF THE INVENTION
The present invention advantageously provides methods for enhancing the cleaning of boundary lines on a playing surface which substantially reduces or eliminates the manual labor involved in caring for the playing surface. The present invention also advantageously provides methods that use familiarity or dimensions of a playing surface, such as a clay-surface tennis court, stored in memory, and directs the cleaning of the boundary lines of the tennis court by sensing the presence of or a location of the boundary lines. The present invention additionally advantageously provides methods that enhance the precision of the measurement of distances traveled along a line by calibrating the measurement on known surface dimensions.
More particularly, the present invention provides methods of cleaning boundary lines on a playing surface. A method for cleaning boundary lines on a playing surface preferably includes directing a cleaning device to move along boundary lines on a playing surface responsive to a set of programmed directions, cleaning the boundary lines when the cleaning device is moving along the boundary lines, and calculating the effective diameter of at least one wheel on the cleaning device.
The present invention further provides a computer program product residing on a computer usable medium for directing a cleaning device to clean at least one line on a surface. A computer program product preferably includes program code means for directing a cleaning device to move along at least one line of a surface, program code means for cleaning the at least one line on the surface when the cleaning device is moving along the at least one line, and a program code means for calculating the effective diameter of at least one wheel on the cleaning device.
Accordingly, the present invention advantageously provides methods which selectively operate a cleaning device when the location or presence of a boundary line is sensed or when the cleaning apparatus determines that a boundary line needs to be cleaned. The present invention further advantageously provides software to enhance the cleaning of a surface such as boundary lines on a tennis court or other selected surface. The present invention still further provides methods for calibrating the measurement of distances moved by a cleaning device.



BRIEF DESCRIPTION OF THE DRAWINGS
Some of the features and advantages of the present invention having been stated, others will become apparent as the description proceeds when taken in conjunction with the accompanying drawings, in which:
FIG. 1 is an environmental view of a cleaning apparatus being used for cleaning lines on the playing surface of a tennis court according to an embodiment of the present invention;
FIG. 2 is a perspective view of an embodiment of the playing surface cleaning apparatus of FIG. 1;
FIG. 3 is a perspective view of another embodiment of the playing surface cleaning apparatus of FIG. 1;
FIG. 4 is a perspective view of yet another embodiment of the playing surface cleaning apparatus of FIG. 1;
FIG. 5 is a bottom plan view of the embodiment of the playing surface cleaning apparatus FIG. 3;
FIG. 6 is a side elevational view of the embodiment of the playing surface cleaning cleaning apparatus of FIG. 3;
FIG. 7 is a block diagram of an embodiment of the cleaning apparatus of FIG. 1;
FIG. 8 is a schematic diagram of a line-sensing module within an embodiment of the playing surface cleaning apparatus of FIG. 1;
FIG. 9 is a schematic diagram of a propulsion module within an embodiment of the cleaning apparatus of FIG. 1;
FIG. 10 is a schematic diagram of a propulsion module within an embodiment of the cleaning apparatus of FIG. 1;
FIG. 11 is a flowchart illustrating operation of a cleaning apparatus and associated software and methods according to an embodiment of the present invention;
FIG. 12 is a top plan view of a cleaning route on a tennis court, in accordance with an embodiment of the present invention;
FIG. 13 is a schematic view of a route for a cleaning apparatus to travel around a net post of a tennis court according to the present invention;
FIG. 14 is a flow chart of operation of a cleaning apparatus for traveling around a net post of a tennis court according to the present invention; and
FIG. 15 is a flowchart illustrating operation of a cleaning apparatus and associated software and methods according to an embodiment of the present invention.



DETAILED DESCRIPTION
The present invention will now be described more fully with reference to the accompanying drawings. The present invention, however, may be embodied in many different forms and should not be construed as limited to the illustrated embodiments set forth herein. Rather, such embodiments are provided so that the present disclosure will be thorough and complete, and will fully convey the scope of the present invention to those skilled in the art. Like numbers refer to like elements throughout, incremental hundred numbers, if used, indicate similar elements in alternative embodiments.
FIG. 1 illustrates a cleaning apparatus 30 cleaning boundary lines on a surface such as a tennis court 20 in accordance with an embodiment of the present invention. As shown, a tennis court 20 is a flat surface defined by single's sidelines 21a-21b, double's sidelines 22a-23b, baselines 23a-23b, service lines 24a-24b, and center lines 25a-25b. The single's sidelines 21a-21b, the double's sidelines 22a-22b and the baselines 23a-23b define the back courts. The single's sidelines 21a-21b and the service lines 24a-24b define the service courts. The center lines 25a-25b divide the service courts. The baselines 23a and 23b include center marks 26a and 26b, respectively. The size of a standard single's court is defined as 27 feet by 78 feet, and the size of a standard double's court is defined as 36 feet by 78 feet. The size of a standard service court is defined as 27 feet by 42 feet. As depicted in FIG. 1, a cleaning apparatus 30 for cleaning boundary lines on the tennis court 20 is shown to be cleaning the double's sideline 22b. Preferably, the tennis court 20 has a clay or fast dry surface, or any of the other variety of clay-like surfaces sometimes referred to as “clay” or “soft,” including those that may be referred to by their trademarked or brand names such as Har-Tru or Fast-Dri, and require routine maintenance that generally involves smoothing and sweeping the surface and brushing the lines.
FIGS. 2-7 illustrate a cleaning apparatus 30, in accordance with three different embodiments. As shown, the cleaning apparatus 30, 130, 230 includes a main frame or chassis 35, 135, 235 sensing means, such as provided by a line-sensing module 31, 131, 231, connected to the chassis 35, 135, 235 for sensing a location or presence of a line associated with a surface or a game playing surface that needs to be cleaned, driving means, such as provided by a propulsion or drive module 33, connected to the chassis 35, 135, 235 for driving the chassis in a selected direction of travel, controlling means, such as provided by a navigation and control module 32, connected to the chassis 35, 135, 235, in communication with the driving means, and responsive to the sensing means for controlling the driving means to thereby direct the chassis to be driven along the line that needs to be cleaned in the selected direction of travel, and a cleaning device 34, 134, 234 connected to the chassis 35, 135, 235 to clean the line when the chassis 35, 135, 235 is being driven along the line. The line-sensing module 31 senses various landmarks (such as lines of specific lengths, net posts, line boundaries) on the tennis court 20 via a sensing device such as a sonar, a radio frequency sensor, a transducer, a camera, a charge coupled device, photo-optical sensors, radar, a laser or by contact. The design, position and orientation of the line-sensing module 31 preferably allow landmarks that are far away from or in close proximity with the cleaning apparatus 30, 130, 230 to be sensed. The sense data information obtained by the line-sensing module 31 is communicated to the navigation and control module 32 for the purpose of navigating the movement of the cleaning apparatus 30, 130, 230. After receiving the sense data information from the line-sensing module 31, the navigation and control module 32 determines the position of the cleaning apparatus 30 in relation to the detected landmark on the tennis court 20, and then controls the propulsion module or drive 33 to move to and along a specific boundary line on the tennis court 20. The sensing device is preferably positioned at an elevation higher than the game playing surface and is preferably oriented to capture an image or data in a direction transverse to the game playing surface. The propulsion or drive module 33 includes an energy supply such as a battery or a fuel cell and an appropriate motor (not shown) for driving wheels, treads, rollers, or other devices to assist travel along a surface. In the present embodiment, movements of the cleaning apparatus 30 are assisted by a pair of drive wheels 36 and a swivel wheel 37. The cleaning device 34 is also activated and deactivated as appropriate to clean a boundary line on the tennis court 20 when the cleaning apparatus 30 is moving along the boundary line. The cleaning device 34 can be a brush, a bristle, an air blower, or other cleaning or surface treatment tool as understood by those skilled in the art. The navigation and control module 32 can activate the cleaning device 34 for cleaning when the cleaning device 34 is positioned over a portion of the boundary line that needs to be cleaned, or can deactivate the cleaning device 34 otherwise. The exercise of such control over the cleaning device 34 can conserve energy and can minimize the disturbance to the court surface outside of boundary lines.
As shown in FIG. 7, the navigation and control module 32 can reference an optionally user settable operational configuration means, an input device 38 by which a user can specify various configuration parameters that affect the operation of the cleaning apparatus. The best setting for some operational parameters can be determined more effectively by human intelligence than by a machine, so the input device 38 supports that capability. For example a fast or slow propulsion speed could be specified based on the amount of material that the user observes is covering the lines to be cleaned. In the case of a tennis court 20, if there is an obstruction in the area surrounding a net post, the user settable input device 38 could be used to specify that the cleaning apparatus 30 is to stop after cleaning the lines on one side of the net and not try to move around the net post since the obstruction would be encountered. After stopping, the apparatus 30 would wait to be moved by the user to the other side of the net where operations would be repeated on that side of the net. Any number of other configuration parameters could be specified by the user as is well understood by those skilled in the art. The input device 38 by which the user sets the configuration can be a switch or switch panel, button or button panel, keyboard, keypad, touch screen, pointing device, or any number of other physical input devices as well understood by those skilled in the art.
FIG. 8 illustrates a line-sensing module 31, in accordance with an embodiment of the present invention. As shown, line-sensing module 31 includes a plurality of or an array of emitters such as infrared or IR emitters 41 and a sensing device 42, e.g., an optical sensing device or camera, having a sensor 43 and at least one lens 44 positioned to help focus light onto the sensor 43. Alternatively, for example, the infrared emitters 41, can be light emitting diodes (LEDs) as understood by those skilled in the art. The sensing device 42 is positioned for viewing or sensing in a direction transverse to the court surface with its field of view (FOV) centered at a point in the court area where a boundary line, such as a boundary line 45, is located when the cleaning apparatus 30 is being driven along (and optionally cleaning or treating) the boundary line. As shown, for example, the FOV of the sensing device 42 can be perpendicular to the direction of the boundary line 45 and the FOV of the sensing device 42 can be slightly greater than the maximum width of the boundary line 45. The array of emitters 41 illuminates the court area for the camera 42. The purpose of the array of emitters 41 is to always provide a sufficient illumination for the optical sensing device 42, independent of the ambient lighting conditions in which the cleaning apparatus 30 are being operated. The sensing device also preferably includes a sensor interface positioned to serially shift out the captured image defined as a plurality of pixels as understood by those skilled in the art. A brightness level of each pixel, for example, can be represented by or correspond to at least one voltage signal received over a controlled period of time as also understood by those skilled in the art.
As illustrated in FIGS. 2 and 8, preferably, the line-sensing module 31 is enclosed within a shroud 48. The shroud 48 can be an opaque cover, e.g., formed of a plastic material, for protecting the sensing device 42 and other vision aspects from ambient light and/or other light impact. FIG. 8 illustrates that the shroud 48 can advantageously extend downward nearly to the playing court surface, so that the FOV of the sensing device 42 is shielded from receiving energy from external energy sources, energy that could otherwise degrade the image received by the sensing device. The closer the shroud extends to the surface, the more complete the shielding effect. If the shroud extends too close to the surface, then incidental imperfections in the flatness of the court surface can result in inadvertent contact between the shroud and the surface. By advantageously constructing the bottom edge 49 of the shroud to be adequately flexible, it can contact the playing court surface without causing demarcations on the surface and without inhibiting movement across the surface while still effectively shielding the FOV from external energy. An embodiment of this flexible bottom edge of the shroud can be constructed of a strip-brush with flexible filament or flexible bristles. It is understood by those skilled in the art that other embodiments of a flexible bottom edge can be effectively used. Although an embodiment of the sensing device 42 is optical in nature, it is understood by those skilled in the art that the sensing device 42 can be implemented by acoustical sensing device, an electromagnetic or a magnetic sensing device, radio frequency sensing device, a contact sensor and any other through-the-air or contact sensors.
As perhaps best shown in FIG. 8, an image of the boundary line 45 is directed to the sensor 43 by the lens 44. The sensor 43 is an integrated circuit containing a set of sensor elements positioned in a single line. The linear array of sensor elements captures the image received through the lens 44. The sensor 43 then serially shifts out the captured image in analog form with the relative voltage of each pixel representing the relative illumination the pixel received over a controlled period of time, i.e., the image integration time. Thus, the sensor 43 captures and sources an analog pixel stream that is in the form of a one-dimensional (linear) image. The line-sensing module 31 can also include a microcontroller (or a microprocessor) 47 to control the integration time of the sensor 43 and to control the shifting of the analog image coming out of the sensor 43. The microcontroller 47 converts the analog image to a digital image for further processing.
The purpose of the line-sensing module 31 is to determine the lateral displacement of the cleaning apparatus 30 from a boundary line that is being followed. In order to perform such function, the cleaning apparatus 30 has to be able to process the image captured by the line-sensing module 31 and then determine if the boundary line is present, and the position or location of the boundary line in the FOV of the camera 42 if the boundary line is present. The characteristic of a boundary line that allows it to be distinguished from the court surface is the fact that the boundary line is more reflective of the irradiance received than the court surface. With the digital image, the microcontroller 47 can analyze the information in the digital image via a variety of image processing techniques, such as FOV attenuation adjustment as will be understood by those skilled in the art. Successive images are continuously captured and analyzed so that the present lateral position of the cleaning apparatus 30 with respect to a boundary line being followed can always be known.
If an area on the tennis court 20 that is being sensed is one over which the cleaning apparatus 30 has already passed, then the boundary lines in that area should be free from loose materials. This fact supports more fidelity in determining whether a sensed area is on the boundary line or not and in fact should allow the line-sensing module 31 to operate correctly even for boundary lines that are completely covered over when cleaning begins. For this reason, the line-sensing module 31 is preferably positioned downstream from the cleaning device 34 (along the direction of travel).
Given a known initial position and orientation on the tennis court 20, the cleaning apparatus 30 can determine its current position by factoring in its change in position. The change in position can be calculated by odometric techniques that involve the continuous measurement of dynamic parameters such as wheel rotations and incorporate static parameters such as wheel diameter (or track dimensions). The odometric technique of position determination, however, typically accumulates errors, and the errors need to be corrected when the cleaning apparatus 30 reaches various court landmarks (which can be sensed based on knowledge of the fixed court geometry and knowledge of the approximate position of the cleaning apparatus 30) such as line intersections at comers and tees (e.g., the intersection of the double's sideline 22b and the baseline 23a and the intersection of the service line 24a and the single's sideline 21b, respectively).
At the ends of boundary lines and when traveling between boundary lines, it is sometimes necessary to steer the cleaning device 34 off any boundary line. The navigation and control module 32 includes a line determiner (not shown) positioned to determine whether a boundary line is present based on the captured image from the line-sensing module 31. This is accomplished in software, for example. The processing of the images that are captured by the vision system results in a determination of the presence or absence of the line in the camera FOV. This information is communicated to the navigation and control module 32. When the cleaning device 34 is not over the boundary line, the navigation and control module 32 turns the cleaning device 34 off and retracts the cleaning device 34 to avoid disturbing the portions of the tennis court 20 that do not have a boundary line. The boundary lines of the portion of the tennis court 20 on one side of the net can be traversed and cleaned in a fixed order that is programmed into the navigation and control module 32. When those boundary lines are completed, that side of the tennis court 20 is known to be finished. The navigation and control module 32 knows its position when it finishes one side of the tennis court 20. By utilizing a position analyzer (not shown), the navigation and control module 32 knows the relative position of any point across the net on the other side of the tennis court 20 (based on the fixed standard court geometry). The position of the apparatus is known. The point at which cleaning is to begin on the other side of the net is also known. The fixed standard court geometry then defines the relative position of the two points. This information can define a preprogrammed maneuver for moving from the final position on the first half court to the desired starting position on the second half court. This maneuver can be preprogrammed based on the relative position of two points of interest, i.e., final point on the first half court and the starting point on the second half court, respectively. Such information can be used to navigate to any desired point on the other side of the tennis court 20 based on the above-mentioned odometric positioning techniques, and then by turning on the cleaning device 34 in the proximity (the exact position may not be known because of accumulated error) of a boundary line to allow visible detection of the boundary line and thereby its accumulated position error. Such known position can be the same relative position as the position at which the cleaning apparatus 30 started cleaning on the first side of the tennis court 20. In the present embodiment, the line-cleaning algorithm used on one side of the tennis court 20 is simply repeated on the other side of the tennis court 20.
FIGS. 9-10 illustrate a propulsion or drive module 33, in accordance with an embodiment of the cleaning apparatus. As shown, the propulsion module 33 includes two drive wheels 36a-36b and one or two pivoting, rotating or swivel wheels or rollers 37. Each of the two drive wheels 36a-36b is driven by one of two differential battery powered drive motors 51a-51b, respectively. The two-wheel differential steering design exhibits minimal skidding of wheels when turning. Skidding wheels can damage the type of soft surface being traveled over. So, a steering mechanism that minimizes skidding is desirable. The two-wheel differential steering supports turn in place. A feature that is extremely useful for the precise turns required for the purposes of the present invention. With two-wheel differential steering, the steering occurs via the same mechanism as propulsion, avoiding additional steering of specific components. With two-wheel differential steering, there is a separate motor for each drive wheel, obviating the need for the complex drive linkage required when a single engine has to power multiple wheels in an apparatus that requires the two drive wheels to simultaneously have differential rotational rates.
The propulsion or drive module 33 shown in FIG. 9 has one pivoting, rotating or swivel wheel or roller 37. With this configuration the single rear wheel rides on the line being cleaned on the game playing surface. This is an advantage in that when cleaning a line, the rear wheel 37 doesn't contact the game playing surface, so unwanted tracking of the surface is avoided.
On a tennis court, the court boundary lines can undulate up and down slightly above and below the plane of the surface of the court. In the alternative version of the propulsion or drive module 33 shown in FIG. 10 there are two pivoting, rotating or swivel wheels or rollers 37, and all four of the drive module wheels travel on the playing court surface. For all parts of the cleaning apparatus that are rigidly attached to the chassis 35, their height above the playing surface is kept constant. This is important for features such as the sensor device shroud 48 which can advantageously extend down very close to the playing court surface. Unless the distance between the bottom of the shroud and the surface is maintained in a tight range, undesirable contact between the shroud and the surface can result, inhibiting free movement of the cleaning apparatus across the surface, and making unwanted marks on the court surface.
The propulsion or drive module 33 uses differential steering to move the cleaning apparatus 30 precisely down a boundary line keeping the cleaning device 34 in position for cleaning the boundary line, or simply allowing the cleaning apparatus 30 to move to a specific point on the boundary line. The cleaning apparatus 30 is initially placed in the center over the boundary line and oriented down the boundary line. The propulsion module 33 then drives the cleaning apparatus 20 straight along the boundary line by turning both drive wheels 36a-36b at the same time. The rotational rate of each of the drive wheels 36a-36b is dynamically controlled by the amount of drive power delivered to each of the drive wheels 36a-36b. As the cleaning apparatus 30 is moving along the boundary line, the line-sensing module 31 continues to capture images that allow a determination of the displacement of the cleaning apparatus 30 from the center of the boundary line. If the cleaning apparatus 30 begins to veer to the left, for example, the propulsion or drive module 33 then applies slightly more differential power to the left drive wheel 36a than to the right drive wheel 36b, increasing the rotational rate of the left drive wheel 36a relative to the rotational rate of the right drive wheel 36b. Such action causes the path of the cleaning apparatus 30 to curve slightly to the right, thereby correcting its course and keeping the cleaning apparatus 30 precisely on the boundary line being followed. Similar corrective action can be performed on the right drive wheel 36b if the cleaning apparatus 30 begins to veer to the right.
As explained previously, the cleaning device 34 can be one of a number of mechanisms for removing debris from a boundary line. The deployment of the cleaning device 34 is under specific program control so that the cleaning device 34 cleans boundary lines as the cleaning apparatus 30 passes over the boundary lines while causing minimal damage of the court areas adjacent to the boundary lines. FIGS. 2-6 illustrate an embodiment of a cleaning device 34. As shown, the cleaning device 34 includes a cleaning brush 61, a brush height control wheel 62, an electric brush motor 63, a drive train 64, and a brush assembly hoist mechanism 65. The cleaning brush 61 is cylindrical in shape with its axis parallel to the court surface. The width (cylindrical length) of the cleaning brush 61 is slightly wider than a boundary line. During operation, the cleaning brush 61 rotates and is in physical contact with a boundary line being cleaned. The brush height control wheel 62 rolls on the boundary line and the rigidity of the brush assembly hoist mechanism 65 maintains the cleaning brush 61 to be in contact with the boundary line. This allows the cleaning brush 61 to clean the boundary line that is not perfectly flat, level and/or smooth. The brush height control wheel 62 is positioned behind the cleaning brush 61 so as to minimize its interference with the brush operation.
The brush motor 63 rotates the cleaning brush 61 via the drive train 64. When the cleaning brush 61 is performing a cleaning function, the brush motor 63 is turned on; otherwise the brush motor 63 is turned off. The drive train 64 is a chain or belt whose linkage transfers the rotation of the brush motor 63 to the rotation of the cleaning brush 61. The weight of the brush motor 63 is relatively significant; thus, its position can affect the maneuverability and stability of the cleaning apparatus 30. The arrangements as shown in FIGS. 2-6 allow the physical location of the brush motor 63 to be centered across the width of the cleaning apparatus 30. The arrangements also allow the brush motor 63 to be positioned behind the cleaning brush 61 and towards the center of the length of cleaning apparatus 30, enhancing the balance of the cleaning apparatus 30. In contrast to an arrangement in which the shaft of a brush motor in line with the brush cylindrical axis, the arrangement as shown allows the brush motor 63 to be positioned away from the court surface to any degree necessary to eliminate any ground clearance issues for the brush motor 63.
The brush assembly hoist mechanism 65 is an example of the means for lifting the cleaning brush 61 off the court surface. When the cleaning brush 61 is deployed in its cleaning position, the position of the brush assembly (i.e., the cleaning brush 61, the brush motor 63 and the brush height control wheel 62) can move up and down with respect to the drive wheels 36 so that the brush assembly can follow the undulations of the court line (or lack thereof) independently from undulations (or by the lack thereof) being encountered by the drive wheels 36.
In an embodiment of the cleaning apparatus, the microcontroller 47 (see FIG. 8) controls the operation of the line-sensing module 31, the navigation and control module 32, the propulsion module 33, and the cleaning device 34. A single unified point of control allows the performance of each of the above-mentioned modules to be affected by the state of the rest of the system. For example, the navigation and control module 32 “knows” when the cleaning apparatus 30 is about to reach the end of a boundary line (from knowing its starting point and knowing the distance traveled). When in the vicinity of the end of the boundary line, the navigation and control module 32 infers from a camera image containing no court line that the end of the boundary line has been reached. When the navigation and control module 32 knows the cleaning apparatus 30 to be only part of the way down a boundary line, as opposed to being at the end of a boundary line, and the line-sensing module 31 reports that the current camera image contains no boundary line, then what is inferred is that the cleaning apparatus 30 has failed to follow the boundary line or that the boundary line has become obscured from view, for example. Similarly, when the navigation and control module 32 “knows” that the cleaning apparatus 30 is approaching the end of the boundary line where it will have to stop and turn, then that information causes the control of the propulsion module 33 to decelerate the cleaning apparatus 30 appropriately such that a precise turn can be made. Also, when the navigation and control module 31 “knows” the cleaning apparatus 30 is at the end of a boundary line (because of positioning information and the interpretation of the image provided by the line-sensing module 31), then the drive motor 63 for the cleaning brush 61 is turned off and the cleaning device 34 is raised to a position at which the cleaning device 34 is not in contact with the court surface.
The tennis court 20 can be divided into two half courts, one on each side of the net. The algorithm for cleaning boundary lines involves working the first side of the tennis court 20 and then crosses the net to the second side of the tennis court 20 and essentially repeating the same work that was done in the first side of the tennis court 20 (see, e.g., FIGS. 12-14). Before starting the cleaning apparatus, user settable configuration may be set or altered. For the cleaning apparatus 30 to clean a first half of the tennis court 20, the cleaning apparatus 30 is manually positioned on the single's sideline 21a at the net heading towards the baseline 23a as shown in FIG. 1. The rest of the operations are performed automatically by the cleaning apparatus 30. The apparatus 30, for example, can clean along the single's sideline 21a from the net towards the baseline 23a and stop at the intersection of the sideline 21a and the baseline 23a. The apparatus rotates right 90 degrees to head towards the double's sideline 22a, cleans along the baseline 22a, and stops at the double's sideline 22a. The apparatus 30 then rotates right 90 degrees to head towards the net. It cleans the double's sideline 22a and stops at the net. The apparatus 30 then rotates 180 degrees towards the baseline 23a, follows the double's sideline 22a from the net, and stops at the baseline 23a. The apparatus again rotates left 90 degrees to head towards the single's sideline 21b, cleans the baseline 23a from the double's sideline 22a, and stops at the center mark of baseline 23a. The apparatus rotates left 90 degrees to head towards the net, cleans the center mark 26a from the baseline 23a to the end of the line, backs up to the intersection of the center mark and the baseline 23a, and rotates right 90 degrees to head towards the double's sideline 22b. The apparatus 30 cleans the baseline 23a from the center mark to the double's sideline 22b and stops at the sideline 22b. The apparatus rotates 180 degrees to head across the baseline 23a, follows the baseline 23a from the double's sideline 22b to the single's sideline 21b, and stops at the single's sideline 21b. The apparatus 30 once again rotates 90 degrees to the right to head along the single's sideline 21b, cleans the single's sideline 21b from the baseline 23a to the service line 24a, and stops at the service line 24a. The apparatus then rotates 90 degrees to the left to head along the service line 24a. 
The apparatus 30 cleans the service line 24a from the single's sideline 21b to the single's sideline 21a and stops at the singles sideline 21a. It rotates 90 degrees to the right to head along the single's sideline 21a toward the net, cleans the single's sideline 21a from the service line to the net and stops, rotates 180 degrees to head away from the net towards the baseline, and follows the single's sideline 21a to the service line and stops. The apparatus 30 then rotates 90 degrees to the left to head across the service line, follows the service line to the center line and stops, rotates 90 degrees to the left to head toward the net, and cleans the center line from the service line to the net and stops. It then rotates 180 degrees to head away from the net toward the service line, follows the center line to the service line and stops, rotates 90 degrees to the left to head along the service line to the single's sideline 21b, and follows the service line to the single's sideline 21b and stops. The apparatus 30 once again rotates 90 degrees to the left to head along the single's sideline 21b toward the net, cleans the single's sideline 21b from the service line to the net and stops, rotates 180 degrees to head away from the net toward the baseline 23a, and follows the single's sideline 21b from the net to the baseline 23a and stops.
The apparatus 30 rotates 90 degrees to the left to head across the baseline 23a towards the double's sideline 22b, follows the baseline to the double's sideline 22b and stops, rotates 90 degrees to the left to head along the double's sideline 22b toward the net, cleans the double's sideline 22b from the baseline 23a to the net and stops. The lines on the first half court are done.
In the portion of the algorithm that has just been described there are numerous times when a line is cleaned as the apparatus moves along a boundary line and stops at the net and turns around and then heads away from the net. In these cases care must be taken not to reach all the way to the net before stopping and rotating because if the apparatus is all the way at the net when rotating, there is the possibility of becoming entangled in the net. The disadvantage of stopping before reaching completely to the net is the failure to get the boundary lines clean right up to the net. Alternatively, the algorithm can be enhanced by cleaning the lines all the way right up to the net, stopping and then backing away from the net before rotating to head away from the net. In this manner the line can be cleaned all the way to the net and yet by backing away from the net before rotating the possibility of the apparatus getting entangled in the net is greatly reduced.
Continuing with the description of the algorithm for cleaning boundary lines on a tennis court, the lines on the first half court have been completed. If the apparatus is equipped with an optional user settable operational configuration means, the configuration is checked and if the configuration so indicates, the apparatus stops and waits to be moved to the other side of the net by the user, and on this second side of the court the cleaning operations that were done on the first side of the court are simply repeated. Otherwise, if the configuration indicates the alternative, the apparatus autonomously moves around the net post to the other side of the court as will now be described.
The apparatus rotates 90 degrees to the right to head parallel to the net outside the court boundaries, moves straight ahead a distance that is just past the net post and stops, rotates 90 degrees to the left to head in a direction parallel to the court sidelines, moves straight a distance that is just past the net post and stops. The apparatus position is now on the second half court. The apparatus 30 rotates 90 degrees to the left to head parallel to the net toward the center of the court, moves straight to the second half court left singles sideline and stops at the left singles sideline. The apparatus 30 rotates 90 degrees to the right to head along the single's sideline 21a towards the baseline.
For example, there are at least two methods for moving the cleaning apparatus 30 from one side of the net to the other. FIG. 12 depicts points P1, P2, P3 and P4 on the tennis court 20 at which the cleaning apparatus 30 makes a turn to move around a net post. The points P1-P4 are defined for illustration purpose only and have no physical manifestation on the tennis court 20. Point P1 is the end position of the cleaning apparatus 30 after cleaning a first side of the tennis court 20. The cleaning apparatus 30 then moves to the second side of the tennis court 20, as follows.
The apparatus 30 rotates to head towards point P2, moves from point P1 to point P2, rotates to head towards point P3, and moves from point P2 to point P3. The apparatus then rotates to head towards point P4, moves from P3 to point P4, and rotates to head away from the net and towards the baseline 23b. 
As the cleaning apparatus 30 approaches point P4, the cleaning apparatus 30 can enable the cleaning brush 34 to expose the single's sideline 21b at point P4 and therefore be able to visually identify when its path intersects the single's sideline 21b. For all of the other parts of the maneuver, the cleaning brush 34 can be turned off. Except for the visual determination of when point P4 is reached, all the movement and navigation for this maneuver around the net can be controlled by odometric techniques.
Another method requires a modification to the tennis court 20 by adding three tracking guidelines 91-93 around a net post outside the boundary lines of the tennis court 20 as shown in FIG. 13. The tracking guidelines 91-93 are made of the same material as the boundary lines and are held in place in the same manner as the boundary lines. The purpose of the tracking guidelines 91-93 is to serve as a guideline for the cleaning apparatus 30 to follow from one side of the net to the other. The tracking guidelines 91-93 are at defined positions and are of defined length. The steps for the cleaning apparatus 30 to go around the net in this other method are the same as in the first method described, except that tracking guidelines 91-93 are used to guide the cleaning apparatus 30 along. As the cleaning apparatus 30 is traveling from P3 and approaches the double's sideline 22b, the cleaning brush 61 is turned off and the guideline tracking mechanism is disabled, and odometric techniques are used to navigate the cleaning apparatus 30 through the rest of the way to point P4.
With the first method described, precision errors accumulate from point P1 all the way to point P4 so that the total precision error when point P4 is reached may be significant, which can limit the ability of the cleaning apparatus 30 to locate point P4. With the second method described, there is no accumulation of precision error so the position error at point P4 is only a precision error that is incurred in moving from just before the double's sideline 22b to point P4, which should be a relatively insignificant amount of error. The second method described requires some modification to the tennis court 20, albeit outside the boundaries of play, but the first method described works on any regulation tennis court without any modification at all.
FIG. 14 is a flowchart illustrating a method for cleaning boundary lines on a playing surface of a tennis court, in accordance with an embodiment of the present invention. Starting at block 100, a user places the cleaning apparatus 30 facing away from the net on the single's sideline 21a of the tennis court 20 to be cleaned, as shown in block 101. The cleaning apparatus 20 follows a preprogrammed path on the boundary lines on the first half of the tennis court 20, as depicted in block 102. The cleaning apparatus 30 completes preprogrammed path for one side of the court, as shown in block 103. Based on the user settable operational configuration, the process can exit after completing only one side of the court, as shown in block 107, otherwise the cleaning apparatus 30 follows a preprogrammed path from the double's sideline 22b around the net post to single's sideline on the opposite side of the net, as depicted in block 104. The cleaning apparatus 30 follows a preprogrammed path on the boundary lines on the second half of the tennis court 20, verifying the path with the on-board line-sensing module, as shown in block 105. When cleaning is complete, the cleaning apparatus stops as shown in block 106.
FIG. 15 is a flowchart illustrating the operations of the cleaning apparatus 30 for cleaning boundary lines on a playing surface of a tennis court, in accordance with an embodiment of the present invention. Starting with block 130, an array of emitters illuminates the court area on which an optical sensing device is trained, as shown in block 131. The lens focuses image on the sensor and the sensor sends information to a microcontroller, as show in block 132. A determination is made as to whether or not a line is visible, as shown in block 133. If the line is visible, the microcontroller compares information received from sensor with the desired line position, as depicted in block 134. Another determination is made as to whether or not the line is in a correct position, as shown in block 135. If the line is not in the correct position, the position of the cleaning apparatus is adjusted relative to the line, as depicted in block 136. Otherwise, if the line is in the correct position, the microcontroller compares the information received from the sensor with the preprogrammed information, as shown in block 137.
Next, a determination is made as to whether or not the cleaning apparatus is in the correct position, as shown in block 138. If the cleaning apparatus is not in the correct position, the position of the cleaning apparatus is adjusted relative to the preprogrammed information, as depicted in block 139. Another determination is made as to whether or not the preprogrammed cleaning circuit has been completed, as shown in block 140. If the preprogrammed cleaning circuit has not been completed, the process returns to block 131. Otherwise, the process exits at block 141.
FIG. 11 is a flowchart illustrating the operation of the cleaning apparatus 30 for cleaning boundary lines on a playing surface of a tennis court, in accordance with an embodiment of the present invention. Starting with block 110, a microcontroller can get a preprogrammed length of a line to be cleaned and type of terminating landmark, as shown in block 111. The cleaning device 34 can then be activated, as shown in block 112, When the cleaning device 34 is active, a dead reckoned position can be updated, as shown in block 113, and a next incremental translation can be calculated, as shown in block 114. The microcontroller can get a next image of the line, as shown in block 115, to evaluate a lateral position of the cleaning apparatus 30 based on the image, as shown in block 116. Power can be adjusted to the drive wheels 36, as shown in block 117. Next, a determination is made as to whether or not the cleaning apparatus 30 is close to the terminating landmark, as shown in block 118. If not, the process return to block 113, otherwise a determination is made whether the terminating landmark is visible, as shown in block 119. If not visible, the process returns to block 113, otherwise the cleaning device 34, is deactivated, as shown in block 120, and the cleaning apparatus 30 is rotated at the landmark, as shown in block 121. Next, a determination is made whether all lines of the tennis court are cleaned, as shown in block 108. If not complete, the process returns to block 111, otherwise, the process exits at block 109.
In the preceding description of cleaning lines, there is a requirement for the navigation and control module 32 to know the distance that the cleaning apparatus has traveled along a given line or during a maneuver in which the cleaning apparatus is traveling off the lines. The precision to which the distance traveled is known directly affects the quality of the line cleaning achieved. For example, according to the FIG. 12 top plan view of a cleaning route on a tennis court, the apparatus cleans singles sideline 21b from baseline 23a to service line 24a and turns onto service line 24a and cleans the service line. According to an embodiment of the present invention, determination of the exact point of intersection of service line 24a and sideline 21b may be made by measuring the distance traveled along sideline 21b from base line 23a, and knowledge of the fixed geometry of the playing surface being worked which dictates the distance at issue. The precision of the measurement of the distance traveled along singles sideline 21b from baseline 23a to service line 24a determines whether the apparatus turns right at the intersection of sideline 21b and service line 24a or whether it turns somewhat before or somewhat after the intersection. If the turn is not made precisely at the intersection then the cleaning that is intended for the beginning of service line 24a will occur off the line resulting undesirable disturbance of the court surface and leaving part of line 24a not cleaned. The measurement of this distance by the apparatus is made by knowing the effective diameter of the drive wheels 36 and the ability to sense the amount of rotation of the wheels during a maneuver. The effective diameter defines the circumference of the wheel through the basic geometry of a circle and thereby defines the distance the wheel moves per revolution, or fractional revolution of the wheel. Sensing the amount of rotation of a wheel can be done with high precision. The effective diameter of a wheel may not be known to the same precision and can result in varying amounts of error in distance traveled. A particularly onerous impediment to precise knowledge of the effective wheel diameter is the reality that factors the affect effective diameter can change over time. Among the factors are wear of the wheel, temperature changes which can cause thermal expansion or contraction, court surface conditions and the like which can affect traction of the wheel on the surface. To mitigate changes in effective wheel diameter, the present invention includes methods for measuring the effective diameter while cleaning the lines, allowing this cleaning apparatus parameter to be updated, resulting in more precision in moving intended distances.
According to an embodiment of the present invention, a method of effective wheel diameter measurement can be made on a game playing surface by measuring the wheel rotation that occurs while traveling along surface feature of known length. Effective wheel diameter is then calculated from the distance traveled and the wheel rotation measured. For example, when a cleaning device starts to travel along baseline 23a as shown in FIG. 12, the beginning of the baseline at the intersection of sideline 22a can be visually detected and its position precisely known. Similarly when the cleaning device reaches the end of base line 22a at the intersection with sideline 22b it can visually detect the end of the line. The amount of wheel rotation that is measured to occur between the detection of the beginning and end of the base line can be used along with knowledge of the standard length of a tennis court baseline to calculate the effective wheel diameter. Since the effective wheel diameter defines the distance traveled by the cleaning device per unit of wheel revolution, the precise measurement of this parameter while cleaning the lines of a tennis court can support precise adjustments to this parameter resulting is more precise movement of the cleaning device on the game playing surface.
As illustrated in FIGS. 1-15, and as described above, the present invention also includes various methods of cleaning at least one line of a surface. A method for cleaning boundary lines on a game playing surface, for example, includes directing a cleaning device to move along boundary lines on a game playing surface responsive to a set of programmed directions and cleaning the boundary lines when the cleaning device is moving along the boundary lines. The method can also include calculating the effective diameter of at least one wheel on the cleaning device. The calculating of the effective diameter of a wheel on the cleaning device can comprise measuring wheel rotation that occurs while traveling a known distance. The step of measuring the wheel rotation that occurs while traveling a known distance can advantageously comprises the step of initalizing the measurement of wheel rotation when the beginning of a line is detected. The step of measuring the wheel rotation that occurs while traveling a known distance can further comprise the step of precisely following the line whose beginning was detected and measuring the amount of rotation of each wheel while following the line. The step of measuring the wheel rotation that occurs while traveling a known distance can also comprise the step of sensing the end of the line and stopping the measurement of wheel rotation that occurred from the beginning of the line to the end of the line. The line being followed while measuring the wheel rotation that occurs from the beginning of the line to the end of the line can advantageously be a tennis court boundary line. Further, the tennis court boundary line that is followed while wheel rotation is measured can advantageously be a base line or a service line.
The present invention, as described and illustrated, also includes software or a computer program product residing on a computer usable medium for directing a cleaning device to clean at least one line on a surface. As described herein and understood by those skilled in the art, the code means is preferably software or computer program code or language as understood by those skilled in the art. In the present invention a computer program product program code means for directing a cleaning device to clean at least one line on a surface can comprise a program code mean for directing a cleaning device to move along at least one line of a surface. Further, the program can comprise a program code means for cleaning the at least one line on the surface when the cleaning device is moving along the at least one line. Further still, the program can comprise a program code means for calculating the effective diameter of at least one wheel on the cleaning device. The program code means for calculating of the effective diameter of a wheel on the cleaning device can comprise program code means for measuring wheel rotation that occurs while traveling a known distance. The program code means for measuring the wheel rotation that occurs while traveling a known distance can advantageously comprise program code means for initalizing the measurement of wheel rotation when the beginning of a line is detected. The program code means of measuring the wheel rotation that occurs while traveling a known distance can further comprise program code means of precisely following the line whose beginning was detected and measuring the amount of rotation of each wheel while following the line. The program code means of measuring the wheel rotation that occurs while traveling a known distance can also comprise program code means of sensing the end of the line and stopping the measurement of wheel rotation that occurred from the beginning of the line to the end of the line. The line being followed while program code means measures the wheel rotation that occurs from the beginning of the line to the end of the line can advantageously be a tennis court boundary line. Further, the tennis court boundary line that is followed while program code means measures wheel rotation can advantageously be a base line or a service line.
As has been described, the present invention provides methods for cleaning boundary lines on a playing surface of a tennis court. It is also important to note that although the present invention has been described in the context of a fully functional computer system, those skilled in the art will appreciate that the mechanisms of the present invention are capable of being distributed as a program product in a variety of forms, and that the present invention applies equally regardless of the particular type of signal bearing media utilized to actually carry out the distribution. Examples of signal bearing media include, without limitation, recordable type media such as floppy disks, CD ROMs, various programmable and re-writable ROMs, and transmission type media such as analog or digital communications links.
Although the invention has been particularly shown and described with reference to illustrated preferred embodiments, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention.

## Claims

1. A method for cleaning boundary lines on a game playing surface, the method comprising:
directing a cleaning device to move along boundary lines on a game playing surface responsive to a set of programmed directions;
cleaning the boundary lines without cleaning substantial portions of the game playing surface when the cleaning device is moving along the boundary lines; and
calculating an effective diameter of at least one wheel on the cleaning device.

2. A method as defined in claim 1, wherein the step of calculating the effective diameter of at least one wheel further comprises measuring wheel rotation that occurs while traveling a known distance.

3. A method as defined in claim 2, wherein the step of measuring the wheel rotation that occurs while traveling a known distance further comprises the step of initalizing the measurement of wheel rotation when the beginning of a line is detected.

4. A method as defined in claim 3, wherein the step of measuring the wheel rotation that occurs while traveling a known distance further comprises the step of precisely following the line whose beginning was detected and measuring the amount of rotation of each wheel while following the line.

5. A method as defined in claim 4, wherein the step of measuring the wheel rotation that occurs while traveling a known distance further comprises the step of sensing the end of the line and stopping the measurement of wheel rotation that occurred from the beginning of the line to the end of the line.

6. A method as defined in claim 5, wherein the line that is followed while measuring the amount of wheel rotation is a tennis court boundary line.

7. A method as defined in claim 6 wherein the tennis court boundary line that is followed while measuring the wheel rotation is a base line or service line.

8. A method as defined in claim 1, further comprising using the calculated effective wheel diameters to dynamically update the amount of wheel rotation per unit distance traveled that is used in the calculation of dead reckoned distances traveled.

9. A computer program product residing on a computer usable medium for directing a cleaning device to clean at least one line on a surface, the computer program product comprising:
program code means for directing a cleaning device to move along at least one line of a surface;
program code means for cleaning the at least one line on the surface without cleaning substantial portions of the surface when the cleaning device is moving along the at least one line; and
a program code means for calculating an effective diameter of at least one wheel on the cleaning device.

10. A computer program product as defined in claim 9, wherein the program code means for calculating the effective diameters of wheels on the cleaning device includes program code means for measuring wheel rotation that occurs while traveling a known distance.

11. A computer program product as defined in claim 10, wherein the program code means for calculating the effective diameters of wheels on the cleaning device further includes program code means for initalizing the measurement of wheel rotation when the beginning of a line is detected.

12. A computer program product as defined in claim 11, wherein the program code means for calculating the effective diameters of wheels on the cleaning device further includes program code means for directing the cleaning device to precisely follow the line whose beginning was detected and to measure the amount of rotation of each wheel while following the line.

13. A computer program product as defined in claim 12, wherein the program code means for calculating the effective diameters of wheels on the cleaning device further includes program code means for sensing the end of the line and stopping the measurement of wheel rotation that occurs from the beginning of the line to the end of the line.

14. A computer program product as defined in claim 13, wherein the line that is followed while measuring the amount of wheel rotation is a tennis court boundary line.

15. A computer program product as defined in claim 14, wherein the tennis court boundary line that is followed while measuring the wheel rotation is a base line or service line.

16. A computer program product as defined in claim 9, further comprising program code means for using the effective diameter of a cleaning device wheel to dynamically update the amount of wheel rotation per unit distance traveled that is used in the calculation of dead reckoned distances traveled.