This disclosure relates to floor cleaning using an autonomous mobile robot.
Tiled floors and countertops routinely need cleaning, some of which entails scrubbing to remove dried in soils. Traditionally, wet mops are used to remove dirt and other dirty smears (e.g., dirt, oil, food, sauces, coffee, coffee grounds) from the surface of a floor. The fluid for wet cleaning can be distributed with the cleaning brush or pad or can be applied ahead of time. An autonomous robot is a robot that performs a specific task in unstructured environments without any guidance from a human. Several robots are available that can perform floor cleaning functions. An autonomous surface cleaning robot that can scrub and remove soils from surfaces traversed by the robot frees up an owner to perform other tasks or leisure.
One aspect of the disclosure provides a mobile robot having a robot body, a drive system, and a cleaning assembly. The cleaning assembly includes a pad holder, a fluid applicator and a controller. The drive system supports the robot body to maneuver the robot across a floor surface. The cleaning assembly is disposed on the robot body and includes a pad holder, a fluid applicator and a controller in communication with the drive system and the cleaning system. The pad holder is configured to receive a cleaning pad having a center and lateral edges. The fluid applicator is configured to apply fluid to the floor surface. The controller controls the drive system and fluid applicator while executing a cleaning routine. The cleaning routine includes applying fluid to an area substantially equal to a footprint area of the robot, and returning the robot to the area in a movement pattern that moves the center and lateral edges of the cleaning pad separately through the area to moisten the cleaning pad with the applied fluid.
Implementations of the disclosure may include one or more of the following features. In some implementations, the cleaning routine further includes applying fluid to the surface at an initial volumetric flow rate to moisten the cleaning pad, the initial volumetric flow rate being relatively higher than a subsequent volumetric flow rate when the cleaning pad is moistened.
In some examples, the fluid applicator applies fluid to an area in front of the cleaning pad and in the direction of travel of the mobile robot. In some examples, the fluid is applied to an area the cleaning pad has occupied previously. In some examples, the area the cleaning pad 400 has occupied is recorded on a stored map that is accessible to the controller 150.
In some examples, the fluid applicator applies fluid to an area the robot has backed away from by a distance of at least one robot footprint length immediately prior to applying fluid. Executing the cleaning routine further comprises moving the cleaning pad in a birdsfoot motion forward and backward along a center trajectory, forward and backward along a trajectory to the left of and heading away from a starting point along the center trajectory, and forward and backward along a trajectory to the right of and heading away from a starting point along the center trajectory.
In some implementations, the drive system includes right and left drive wheels disposed on corresponding right and left portions of the robot body. A center of gravity of the robot is positioned forward of the drive wheels, causing a majority of an overall weight of the robot to be positioned over the pad holder. The overall weight of the robot may be distributed between the pad holder and the drive wheels at a ratio of 3 to 1. In some examples, the overall weight of the robot is between about 2 lbs. and about 5 lbs.
In some examples, the robot body and the pad holder both define substantially rectangular foot prints. Additionally or alternatively, the bottom surface of the pad holder may have a width of between about 60 millimeters and about 80 millimeters and a length of between about 180 millimeters and about 215 millimeters.
One aspect of the disclosure provides a mobile floor cleaning robot having a robot body, a drive system, a cleaning assembly, a pad holder, and a controller. The robot body defines a forward drive direction. The drive system supports the robot body to maneuver the robot across a floor surface. The cleaning assembly is disposed on the robot body and includes a pad holder, a reservoir, and a sprayer. The pad holder has a bottom surface configured to receive a cleaning pad and arranged to engage the floor surface. The reservoir is configured to hold a volume of fluid, and the sprayer, which is in fluid communication with the reservoir, is configured to spray the fluid along the forward drive direction forward of the pad holder. The controller communicates with both the drive system and the cleaning system and executes a cleaning routine. The controller executes a cleaning routine that allows the robot to drive in the forward drive direction a first distance to a first location and then drive in a reverse drive direction, opposite the forward drive direction, a second distance to a second location. The cleaning routine allows the robot to spray fluid on the floor surface from the second location, in the forward drive direction forward of the pad holder but rearward of the first location. After spraying fluid on the floor surface, the cleaning routine allows the robot to drive in alternating forward and reverse drive directions while smearing the cleaning pad along the floor surface.
Implementations of the disclosure may include one or more of the following features. In some implementations, the drive system includes right and left drive wheels disposed on corresponding right and left portions of the robot body. A center of gravity of the robot is positioned forward of the drive wheels, causing a majority of an overall weight of the robot to be positioned over the pad holder. The overall weight of the robot may be distributed between the pad holder and the drive wheels at a ratio of 3 to 1. In some examples, the overall weight of the robot is between about 2 lbs. and about 5 lbs. The drive system may include a drive body, which has forward and rearward portions, and right and left motors disposed on the drive body. The right and left drive wheels may be coupled to the corresponding right and left motors. The drive system may also include an arm that extends from the forward portion of the drive body. The arm is pivotally attachable to the robot body forward of the drive wheels to allow the drive wheels to move vertically with respect to the floor surface. The rearward portion of the drive body may define a slot sized to slidably receive a guide protrusion extending from the robot body.
In some examples, the robot body and the pad holder both define substantially rectangular foot prints. Additionally or alternatively, the bottom surface of the pad holder may have a width of between about 60 millimeters and about 80 millimeters and a length of between about 180 millimeters and about 215 millimeters.
The reservoir may hold a fluid volume of about 200 milliliters. Additionally or alternatively, the robot may include a vibration motor, or orbital oscillator, disposed on the top portion of the pad holder.
Another aspect of the disclosure provides a mobile floor cleaning robot that includes a robot body, a drive system, and a cleaning assembly. The robot body defines a forward drive direction. The drive system supports the robot body to maneuver the robot across a floor surface. The cleaning assembly is disposed on the robot body and includes a pad holder and an orbital oscillator. The pad holder is disposed forward of the drive wheels and has a top portion and a bottom portion. The bottom portion has a bottom surface arranged within between about ½ cm and about 1½ cm of the floor surface and receives a cleaning pad. The bottom surface of the pad holder includes at least 40 of a surface area of a footprint of the robot. The orbital oscillator is disposed on the top portion of the pad holder and has an orbital range less than 1 cm. The pad holder is configured to permit more than 80 percent of the orbital range of the orbital oscillator to be transmitted from the top of the held cleaning pad to the bottom surface of the held cleaning pad.
In some examples, the orbital range of the orbital oscillator is less than cm during at least part of a cleaning run. Additionally or alternatively, the robot may move the cleaning pad forward or backward while the cleaning pad is oscillating.
In some examples, the robot moves in a birdsfoot motion forward and backward along a center trajectory, forward and backward along a trajectory to the left of and heading away from a starting point along the center trajectory, and forward and backward along a trajectory to the right of and heading away from a starting point along the center trajectory.
In some examples, the cleaning pad has a top surface attached to the bottom surface of the pad holder and the top of the pad is substantially immobile relative to the oscillating pad holder.
In some examples, the overall weight of the robot is distributed between the pad holder and the drive wheels at a ratio of 3 to 1. The overall weight of the robot may be between about 2 lbs. and about 5 lbs.
In some examples, the robot body and the pad holder both define substantially rectangular foot prints. Additionally or alternatively, the bottom surface of the pad holder may have a width of between about 60 millimeters and about 80 millimeters and a length of between about 180 millimeters and about 215 millimeters.
The cleaning assembly may further include at least one post disposed on the top portion of the pad holder sized for receipt by a corresponding aperture defined by the robot body. The at least one post may have a cross sectional diameter varying in size along its length. Additionally or alternatively, the at least one post may include a vibration dampening material.
In some implementations, the cleaning assembly further includes a reservoir to hold a volume of fluid, and a sprayer in fluid communication with the reservoir. The sprayer is configured to spray the fluid along the forward drive direction forward of the pad holder. The reservoir may hold a fluid volume of about 200 milliliters.
The drive system may include a drive body, which has forward and rearward portions, and right and left motors disposed on the drive body. The right and left drive wheels are coupled to the corresponding right and left motors. The drive system may also include an arm that extends from the forward portion of the drive body. The arm is pivotally attachable to the robot body forward of the drive wheels to allow the drive wheels to move vertically with respect to the floor surface. The rearward portion of the drive body may define a slot sized to slidably receive a guide protrusion that extends from the robot body. In one example, the cleaning pad disposed on the bottom surface of the pad holder body absorbs about 90% of the fluid volume held in the reservoir. The cleaning pad has a thickness of between about 6.5 millimeters and about 8.5 millimeters, a width of between about 80 millimeters and about 68 millimeters, and a length of between about 200 millimeters and about 212 millimeters.
In some examples, a method includes driving a first distance in a forward drive direction defined by the robot to a first location, while moving a cleaning pad carried by the robot along a floor surface supporting the robot. The cleaning pad has a center area and lateral areas flanking the center area. The method further includes driving in a reverse drive direction opposite the forward drive direction, a second distance to a second location while moving the cleaning pad along the floor surface. The method also includes applying fluid to an area on the floor surface substantially equal to a footprint area of the robot and forward of the cleaning pad but rearward of the first location. The method further includes returning the robot to the area of applied fluid in a movement pattern that moves the center and lateral portions of the cleaning pad separately through the area to moisten the cleaning pad with the applied fluid 172.
In some examples, the method includes driving in a left drive direction or a right drive direction while driving in the alternating forward and reverse directions after spraying fluid on the floor surface. Applying fluid on the floor surface may include spraying fluid in multiple directions with respect to the forward drive direction. In some examples, the second distance is at least equal to the length of an footprint area of the robot.
In still yet another aspect of the disclosure, a method of operating a mobile floor cleaning robot includes driving a first distance in a forward drive direction defined by the robot to a first location while smearing a cleaning pad carried by the robot along a floor surface supporting the robot. The method includes driving in a reverse drive direction, opposite the forward drive direction, a second distance to a second location while smearing the cleaning pad along the floor surface. The method also includes spraying fluid on the floor surface in the forward drive direction forward of the cleaning pad but rearward of the first location. The method also includes driving in an alternating forward and reverse drive directions while smearing the cleaning pad along the floor surface after spraying fluid on the floor surface.
In some examples, the method includes spraying fluid on the floor surface while driving in the reverse direction or after having driven in the reverse drive direction the second distance. The method may include driving in a left drive direction or a right drive direction while driving in the alternating forward and reverse directions after spraying fluid on the floor surface. Spraying fluid on the floor surface may include spraying fluid in multiple directions with respect to the forward drive direction. In some examples, the second distance is greater than or equal to the first distance.
The mobile floor cleaning robot may include a robot body, a drive system, a pad holder, a reservoir, and a sprayer. The robot body defines the forward drive direction and has a bottom portion. The drive system supports the robot body and maneuvers the robot over the floor surface. The pad holder is disposed on the bottom portion of the robot body and holds the cleaning pad. The reservoir is housed by the robot body and holds a fluid (e.g., 200 ml). The sprayer, which is also housed by the robot body, is in fluid communication with the reservoir and sprays the fluid in the forward drive direction forward of the cleaning pad. The cleaning pad disposed on the bottom portion of the pad holder may absorb about 90% of the fluid contained in the reservoir. In some examples, the cleaning pad has a width of between about 80 millimeters and about 68 millimeters and a length of between about 200 millimeters and about 212 millimeters. The cleaning pad may have a thickness of between about 6.5 millimeters and about 8.5 millimeters.
The details of one or more implementations of the disclosure are set forth in the accompanying drawings and the description below. Other aspects, features, and advantages will be apparent from the description and drawings, and from the claims.
Like reference symbols in the various drawings indicate like elements.
An autonomous robot movably supported can navigate a floor surface. In some examples, the autonomous robot can clean a surface while traversing the surface. The robot can remove debris from the surface by agitating the debris and/or lifting the debris from the surface by spraying a liquid solution to the floor surface and/or scrubbing the debris from the floor surface.
Referring to
The robot 100 can move across a cleaning surface 10 through various combinations of movements relative to three mutually perpendicular axes defined by the body 110: a transverse axis X, a fore-aft axis Y, and a central vertical axis Z. A forward drive direction along the fore-aft axis Y is designated F (sometimes referred to hereinafter as “forward”), and an aft drive direction along the fore-aft axis Y is designated A (sometimes referred to hereinafter as “rearward”). The transverse axis X extends between a right side R and a left side L of the robot 100 substantially along an axis defined by center points of the wheel modules 120a, 120b.
The robot 100 can tilt about the X axis. When the robot 100 tilts to the south position, it tilts toward the rearward portion 114 (sometimes referred to hereinafter as “pitched up”), and when the robot 100 tilts to the north position, it tilts towards the forward portion 112 (sometimes referred to hereinafter as “pitched down”). Additionally, the robot 100 tilts about the Y axis. The robot 100 may tilt to the east of the Y axis (sometimes referred to hereinafter as a “right roll”), or the robot 100 may tilt to the west of the Y axis (sometimes referred to hereinafter as a “left roll”). Therefore, a change in the tilt of the robot 100 about the X axis is a change in its pitch, and a change in the tilt of the robot 100 about the Y axis is a change in its roll. In addition, the robot 100 may either tilt to the right, i.e., an east position, or to the left i.e., a west position. In some examples, the robot tilts about the X axis and about the Y axis having tilt positions, such as northeast, northwest, southeast, and southwest. As the robot 100 is traversing a floor surface, the robot 100 may make a left or right turn about its Z axis (sometimes referred to hereinafter as a change in the yaw). A change in the yaw causes the robot 100 to make a left turn or a right turn while it is moving. Thus, the robot 100 may have a change in one or more of its pitch, roll, or yaw at the same time.
In some implementations, the forward portion 112 of the body 110 carries a bumper 130, which detects (e.g., via one or more sensors) one or more events in a drive path of the robot 100, for example, as the wheel modules 120a, 120b propel the robot 100 across the cleaning surface 10 during a cleaning routine. The robot 100 may respond to events (e.g., obstacles, cliffs, walls 20) detected by the bumper 130 by controlling the wheel modules 120a, 120b to maneuver the robot 100 in response to the event (e.g., away from an obstacle). While some sensors (not shown) are described herein as being arranged on the bumper 130, these sensors can additionally or alternatively be arranged at any of various different positions on the robot 100. The bumper 130 has a shape complementing the robot body 110 and extends forward the robot body 110 making the overall dimension of the forward portion 112 wider than the rearward portion 114 of the robot body (the robot as shown has a square shape).
A user interface 140 disposed on a top portion 118 of the body 110 receives one or more user commands and/or displays a status of the robot 100. The user interface 140 is in communication with a robot controller 150 carried by the robot 100 such that one or more commands received by the user interface 140 can initiate execution of a cleaning routine by the robot 100. In some examples, the user interface 140 includes a power button, which allows a user to turn on/off the robot 100. In addition, the user interface 140 may include a release mechanism to release a removable and/or disposable cleaning element, such as a cleaning pad 400, attached to the robot body 110 over a trash can without the user touching the pad 400. The release mechanism may be a release button (not shown) or a lever (not shown) that a user can pull or push allowing the robot body 110 to release the cleaning pad 400 from the pad holder assembly 190. Additionally or alternatively, for a cleaning robot, an open button (not shown) may be part of the user interface 140. The open button opens a door to a reservoir 170 allowing a user to fill/empty water. The controller 150 includes a computing processor 152 (e.g., central processing unit) in communication with non-transitory memory 154 (e.g., a hard disk, flash memory, random-access memory).
In some examples, a handle 119 is disposed on the top portion 118 of the body 110. The handle 119 may pivotally flip along the transverse axis X of the robot body 110. In a closed position, the handle 119 is disposed substantially parallel to the top portion 118 of the body 110. In an open position, the handle 119 is disposed substantially perpendicular to the top portion 118 of the body 110. The handle 119 may include a friction lock (not shown) in the open position to keep the robot stable when a user is carrying the robot 100 or when the user is inserting or removing the battery 102 or changing the cleaning pad 400.
Referring to
Referring to
An arm 123 is attached to the forward portion of the drive housing 121. The arm 123 is pivotally attachable to the robot body 110 forward of the drive wheels 124a, 124b to allow the drive housing 121 to move vertically with respect to the floor surface 10 via a rubber pivot mount 125. The rearward portion 121b of the drive housing 121 defines a slot 127. The slot 127 is sized to slidably receive a guide protrusion 111 defined by or disposed on the robot body 110. The slot 127 allows the robot body 110 to move with respect to the drive system 120 if vertical pressure is applied to the robot body 110 and the rear springs 180 are compressed due to the pressure. The robot 100 may include a caster wheel (not shown) disposed to support a rearward portion 114 of the robot body 110.
Referring back to
The robot controller 150 (
The robot 100 may include a cleaning system 160 (
In some implementations, the robot 100 only applies fluid to areas of the floor surface 10 that the robot 100 has already traversed. In one example, the fluid applicator 162 has multiple nozzles 164 each configured to spray the fluid 172 in a direction different than another nozzle 164. The fluid applicator 162 may apply fluid 172 downward rather than outward, dripping or spraying fluid 172 directly in front of the robot 100. In some examples, the fluid applicator 162 is a microfiber cloth or strip, a fluid dispersion brush, or a sprayer.
Referring to
As shown in
Referring to
In some examples, the fluid applicator 162 applies fluid 172 to an area in front of the cleaning pad 400 and in the direction of travel (e.g., forward direction F) of the mobile robot 100. In some examples, the fluid 172 is applied to an area the cleaning pad 400 has previously occupied. In some examples, the area the cleaning pad 400 has occupied is recorded on a stored map that is accessible to the controller 150.
In some examples, the robot 100 knows where it has been based on storing its coverage locations on a map stored on the non-transitory-memory 154 of the robot 100 or on an external storage medium accessible by the robot 100 through wired or wireless means during a cleaning run. The robot 100 sensors 510 (
In some examples, the robot 100 moves in a back and forth motion to moisten the cleaning pad 400 and/or scrub the floor surface 10 to which fluid 172 has been applied. The robot 100 may move in a birdsfoot pattern through the footprint area AF on the floor surface 10 to which fluid 172 has been applied. As depict, in some implementations, the birdsfoot cleaning routine involves moving the robot 100 in forward direction F and a backward or reverse direction A along a center trajectory 1000 and in forward direction F and a backward direction A along left 1010 and right 1005 trajectories. In some examples, the left trajectory 1010 and the right trajectory 1005 are arcuate trajectories that extend outward in an arc from a starting point along the center trajectory 1000. The left trajectory 1010 and the right trajectory 1005 may be straight line trajectories that extend outward in a straight line from the center trajectory 1000.
In the example of
In some examples, the robot 100 may move in a birdsfoot coverage pattern to moisten all portions of the cleaning pad 400 upon starting a cleaning run. As depicted in
In the example of
The back and forth movement of the robot 100 breaks down stains 22 on the floor surface 10. The broken down stains 22 are then absorbed by the cleaning pad 400. In some examples, the cleaning pad 400 picks up enough of the sprayed fluid 172 to avoid uneven streaks. In some examples, the cleaning pad 400 leaves a residue of the solution to provide a nice sheen look on the floor surface 10 being scrubbed. In some examples, the fluid 172 contains antibacterial solution; therefore, a thin layer of residue is purposely not absorbed by the cleaning pad 400 to allow the fluid 172 to kill a higher percentage of germs.
Referring to
The reservoir 170 may hold a fluid 172 having a volume between 200 ml and 250 ml or more. The reservoir 170 may have a semi-transparent portion or may be fully transparent to allow a user to know how much fluid 172 is left in the reservoir 170. The transparent portion may include an indication that allows the user to identify the volume of fluid 172 remaining and if the reservoir 170 needs to be refilled. In some examples, where the robot 100 carries a cleaning pad 400, the cleaning pad 400 may absorb 85% to 95% of the fluid volume contained in the reservoir 170.
The reservoir 170 includes a cap 176 for allowing a user to empty or fill the reservoir 170 with fluid 172. The cap 176 may be made of rubber to improve sealing the reservoir 170 after being filled with fluid 172. The cap 176 may include a retainer post (not shown) that connects the cap 176 to the robot 100 when a user opens the cap 176 to fill the tank 170. In some examples, an air release valve (not shown) is incorporated into the cap 176 to allow air to enter the reservoir 170 as the pump draws out cleaning solution to off-set the void left. In some examples, the air release valve is a tubular opening with a soft undercut flap molded into the cap 176. The handle 119 may fully or substantially cover the cap 176, in its closed position.
Referring to
A vibration motor 196 is disposed on the top portion 194a of the pad holder body 194 (e.g., mounted vertically with respect to the floor surface 10). The vibration motor 196 vibrates the pad holder body 194, which in turn vibrates the cleaning pad 400 and provides a scrubbing action when the robot 100 is traversing the floor surface 10 for cleaning. In some examples, the vibration motor 196 is an orbital oscillator having less than 1 cm of orbital range, and having less than ½ cm of orbital range during at least part of the cleaning run, for example during parts of the run when the robot 100 is moving the cleaning pad 400 in a scrubbing motion. The combination of the back and forth movement of the robot 100 (previously discussed) and the vibration movement improves the scrubbing action of the robot 100, which removes resistant stains 22 including dried stains, like mud and coffee, and sticky stains, like jelly and honey. In some examples, a cylindrical tube 197 protrudes away from the top portion 194a of the pad holder body 194, and may be located in the center of the holder body 194. The cylindrical tube 197 houses the vibration motor 196 and any oscillating components or counter weights 198 allowing them to slide in place. In some examples, counter weights 198 are disposed on the top portion of the pad holder body 194 attached to the motor's rotational shaft. The counter weights 198 provide an off-centered weight and cause the motor to wobble. This in turn causes the vibrating and oscillating motion of the pad holder assembly 190. The weight of the robot 100 may be distributed between the drive wheels 124a, 124b and the pad holder assembly 190 at a ratio of 3 to 1, where the heaviest portion of the robot body 110 is either above the drive wheels 124a, 124b or above the pad holder assembly 190. In some examples, the center of gravity CGr of the robot 100 is positioned forward the drive wheels 124a, 124b, therefore causing a majority of an overall weight of the robot 100 to be positioned over the pad holder body 194. The overall weight of the robot 100 may be between about 2 lbs. to about 5 lbs. Positioning the majority of the overall weight of the robot 100 over the pad holder body 194 has the advantage of concentrating the application downward force at the cleaning pad 400 of this lightweight robot 100 and keeping the cleaning pad 400 in contact with the floor surface 10.
Referring to
In some examples, the pad holder assembly 190 includes at least one post 192 disposed on the top portion 194a of the pad holder body 194. The post 192 may have a cross sectional diameter varying in size along its length and is sized to fit in an aperture 113 defined by the robot body 110. As shown, the pad holder assembly 190 includes four posts 192. The robot body 110 includes four apertures 113 for receiving the four posts 192, attaching the pad holder assembly 190 to the robot body 110. Once assembled, the four posts 192 are inserted into the four apertures 113 of the robot body 110, interlocking the robot body 110 and the pad holder assembly 190. In some examples, the posts 192 are of a vibration dampening material to allow the pad holder assembly 190 to oscillate in the horizontal plane under the power of the motor 196 and allows for scrubbing. In addition, the posts 192 control the vibration in the vertical direction thereby controlling the spacing between the pad holder assembly 190 and the robot body 110.
The cleaning pad 400 is configured to absorb the fluid 172 that the sprayer 162 sprays on the floor surface 10 and any smears (e.g., dirt, oil, food, sauces, coffee, coffee grounds) that are being absorbed. Some of the smears may have viscoelastic properties, which exhibit both viscous and elastic characteristic (e.g., honey). The cleaning pad 400 is absorbent and has an outer surface that is abrasive. As the robot 100 moves about the floor surface 10, the cleaning pad 400 wipes the floor surface 10 with the abrasive side (i.e., the abrasion layer) and absorbs cleaning solution sprayed onto the floor surface 10 with only a light amount of force.
The cleaning pad 400 is designed, therefore, to wipe and absorb solution sprayed onto the floor surface 10 with very little application of downward force. The cleaning pad 400 may include an abrasive outer layer (not shown) and an absorbent inner layer for absorbing and retaining the fluid 172 that the robot 100 sprays on the floor surface 10. The abrasive outer layer is in contact with the floor surface 10, while the absorbent inner layer is attached to the bottom portion 194b of the holder pad 194. The abrasion layer helps scrub the surface floor 10 and remove stubborn stains 22 while the absorbent layer absorbs the fluid 172 and the dirt and debris. The cleaning pad 400 may leave a thin sheen on the floor surface 10 that will air dry and not leave marks. If the cleaning pad 400 absorbs too much fluid 172, the cleaning pad 400 may be suctioned to the floor due to the friction between the cleaning pad 400 and the floor surface 10. The abrasive outer liner is an absorbent material that picks up dirt and debris and leaves a thin sheen on the surface that will air dry and not leave marks.
The cleaning pad 400 is designed to be strong enough to withstand the vibration of the pad holder body 194, which causes the cleaning pad 400 to move back and forth and/or oscillate, thereby scrubbing as the robot 100 traverses the floor surface 10. The cleaning pad 400 has a top surface 400a attached to the bottom surface 194b of the pad holder 194. The top surface 400b of the pad 400 is substantially immobile relative to the oscillating pad holder 194 and more than 80 percent of the orbital range of the orbital oscillator is transmitted from the top surface 400a of the held cleaning pad 400 to the bottom surface 400b of the held cleaning pad 400 in contact with the floor surface 10. Moreover, the back and forth movement of the robot 100 alone, and/or in combination with oscillation of the pad, breaks down stains 22 on the surface floor 10, which the cleaning pad 400 absorbs.
In some implementations, as the cleaning pad 400 is cleaning a floor surface 10, it absorbs the cleaning fluid 172 applied to the floor surface 10. The cleaning pad 400 may absorb enough fluid 172 without changing its shape. The cleaning pad 400 has substantially similar dimensions before cleaning the floor surface 10 and after cleaning the floor surface. This characteristic of the cleaning pad 400 prevents the robot 100 from tilting backwards or pitching up if the cleaning pad 400 expands. In some examples, the cleaning pad 400 absorbs up to 180 ml or 90% of the total fluid 172 contained in the robot tank 170. The cleaning pad 400 is sufficiently rigid to support the front of the robot.
Referring to
Referring to
In some examples, the sensor system 500 includes an inertial measurement unit (IMU) 512 in communication with the controller 150 to measure and monitor a moment of inertia of the robot 100 with respect to the overall center of gravity CGR of the robot 100. The controller 150 may monitor any deviation in feedback from the IMU 512 from a threshold signal corresponding to normal unencumbered operation. For example, if the robot 100 begins to pitch away from an upright position, it may be impeded, or someone may have suddenly added a heavy payload. In these instances, it may be necessary to take urgent action (including, but not limited to, evasive maneuvers, recalibration, and/or issuing an audio/visual warning) in order to assure proper continued operation of the robot 100.
When accelerating from a stop, the controller 150 may take into account a moment of inertia of the robot 100 from its overall center of gravity CGR to prevent the robot 100 from tipping. The controller 150 may use a model of its pose, including its current moment of inertia. When payloads are supported, the controller 150 may measure a load impact on the overall center of gravity CGR and monitor movement of the robot 100 moment of inertia. If this is not possible, the controller 150 may apply a test torque command to the drive system 120 and measure actual linear and angular acceleration of the robot using the IMU 512, in order to experimentally determine operating limits.
The IMU 512 may measure and monitor a moment of inertia of the robot 100 based on relative values. In some implementations, and over a period of time, constant movement may cause the IMU 512 to drift. The controller 150 executes a resetting command to recalibrate the IMU 512 and reset it to zero. Before resetting the IMU 512, the controller 150 determines if the robot 100 is tilted, and issues the resetting command only if the robot 100 is on a flat surface.
In some implementations, the robot 100 includes a navigation system 600 configured to allow the robot 100 to navigate the floor surface 10 without colliding into obstacles 20 or falling down stairs, and to intelligently recognize relatively dirty floor areas for cleaning. Moreover, the navigation system 600 can maneuver the robot 100 in deterministic and pseudo-random patterns across the floor surface 10. The navigation system 600 may be a behavior based system stored and/or executed on the robot controller 150. The navigation system 600 may communicate with the sensor system 500 to determine and issue drive commands to the drive system 120. The navigation system 600 influences and configures the robot behaviors 300, thus allowing the robot 100 to behave in a systematic preplanned movement. In some examples, the navigation system 600 receives data from the sensor system 500 and plans a desired path for the robot 100 to traverse. In some examples, the navigation system 600 includes a map stored on the non-transitory-memory 154 of the robot 100 or on an external storage medium accessible by the robot 100 through wired or wireless means during a cleaning run. The robot 100 sensors 510 (
In some implementations, the controller 150 (e.g., a device having one or more computing processors 152 in communication with non-transitory memory 154 capable of storing instructions executable on the computing processor(s) 152) executes a control system 210, which includes a behavior system 210a and a control arbitration system 210b in communication with each other. The control arbitration system 210b allows robot applications 220 to be dynamically added and removed from the control system 210, and facilitates allowing applications 220 to each control the robot 100 without needing to know about any other applications 220. In other words, the control arbitration system 210b provides a simple prioritized control mechanism between applications 220 and resources 240 of the robot 100.
In the example shown, the behavior system 210a includes an obstacle detection/obstacle avoidance (ODOA) behavior 300b for determining responsive robot actions based on obstacles 20 perceived by the sensor (e.g., turn away; turn around; stop before the obstacle, etc.). Another behavior 300 may include a wall following behavior 300c for driving adjacent a detected wall (e.g., in a wiggle pattern of driving toward and away from the wall). The behavior system 210a may include a dirt hunting behavior 300d (where the sensor(s) detect a dirty spot on the floor surface 10 and the robot 100 veers towards the spot for cleaning). Other behaviors 300 may include a spot cleaning behavior (e.g., the robot 100 follows a cornrow pattern to clean a specific spot), and a cliff behavior (e.g., the robot 100 detects stairs and avoids falling from the stairs).
In some examples, the method 1700 includes driving a first distance Fd in a forward drive direction F defined by the robot 100 to a first location L1, while moving a cleaning pad 400 carried by the robot 100 along a floor surface 10 supporting the robot 100. The method 1700 further includes driving in a reverse drive direction A, opposite the forward drive direction F, a second distance Ad to a second location L2 while moving the cleaning pad 400 along the floor surface 10. The method 1700 also includes applying fluid 172 on the floor surface 10 in an area substantially equal to a footprint area AF of the robot in the forward drive direction F forward of the cleaning pad 400 but rearward of the first location L1. The method 1700 further includes returning the robot 100 to the area of applied fluid in a movement pattern that moves the center area PC and left and right lateral edge areas PR and PL of the cleaning pad 400 separately through the area to moisten the cleaning pad 400 with the applied fluid 172. In some examples, the method 1700 includes applying fluid 172 on the floor surface 10 while driving in the reverse direction or after having driven in the reverse drive direction the second distance which is at least equal to the length of one footprint area AF of the robot 100. In some examples, the fluid applicator 162 applies fluid 172 to an area in front of the cleaning pad 400 and in the direction of travel of the mobile robot 100. In some examples, the fluid applicator 162 applies fluid 172 to an area that the cleaning pad 400 has occupied previously. In some examples, the area that the cleaning pad 400 has occupied is recorded on a stored map that is accessible to the controller 150.
The method 1700 may include driving in a left drive direction or a right drive direction while driving in the alternating forward and reverse directions after applying fluid 172 on the floor surface 10. Applying fluid 172 on the floor surface 10 may include spraying fluid 172 in multiple directions with respect to the forward drive direction F. In some examples, the second distance is greater than or equal to the first distance.
The mobile floor cleaning robot 10 may include a robot body 110, a drive system 120, a pad holder assembly 190, a reservoir 170, and a fluid applicator 162, such as for example a microfiber cloth or strip, a fluid dispersion brush, or a sprayer. The robot body 110 defines the forward drive direction and has a bottom portion 116. The drive system 120 supports the robot body 110 and maneuvers the robot 100 over the floor surface 10. The pad holder assembly 190 is disposed on the bottom portion 116 of the robot body 110 and holds the cleaning pad 400. The reservoir 170 is housed by the robot body 110 and holds a fluid 172 (e.g., 200 ml). The applicator 162, here a sprayer, which is also housed by the robot body 110, is in fluid communication with the reservoir 170 and sprays the fluid 172 in the forward drive direction forward of the cleaning pad 400. The cleaning pad 400 disposed on the bottom portion 116 of the pad holder assembly 190 may absorb about 90% of the fluid 172 contained in the reservoir 170. In some examples, the cleaning pad 400 has a width of between about 80 millimeters and about 68 millimeters and a length of between about 200 millimeters and about 212 millimeters. The cleaning pad 400 may have a thickness of between about 6.5 millimeters and about 8.5 millimeters.
A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the disclosure. Accordingly, other implementations are within the scope of the following claims. For example, the actions recited in the claims can be performed in a different order and still achieve desirable results.
Number | Name | Date | Kind |
---|---|---|---|
3729041 | Kubota | Apr 1973 | A |
4319379 | Carrigan et al. | Mar 1982 | A |
4967862 | Pong et al. | Nov 1990 | A |
5440216 | Kim | Aug 1995 | A |
5720077 | Nakamura et al. | Feb 1998 | A |
5787545 | Colens | Aug 1998 | A |
5815880 | Nakanishi | Oct 1998 | A |
5841259 | Kim et al. | Nov 1998 | A |
5894621 | Kubo | Apr 1999 | A |
5940927 | Haegermarck et al. | Aug 1999 | A |
5959423 | Nakanishi et al. | Sep 1999 | A |
5991951 | Kubo et al. | Nov 1999 | A |
5998953 | Nakamura et al. | Dec 1999 | A |
6012618 | Matsuo | Jan 2000 | A |
6076025 | Ueno et al. | Jun 2000 | A |
6119057 | Kawagoe | Sep 2000 | A |
6142252 | Kinto et al. | Nov 2000 | A |
6327741 | Reed | Dec 2001 | B1 |
6338013 | Ruffner | Jan 2002 | B1 |
6389329 | Colens | May 2002 | B1 |
6459955 | Bartsch et al. | Oct 2002 | B1 |
6481515 | Kirkpatrick et al. | Nov 2002 | B1 |
6532404 | Colens | Mar 2003 | B2 |
6580246 | Jacobs | Jun 2003 | B2 |
6594844 | Jones | Jul 2003 | B2 |
6600981 | Ruffner | Jul 2003 | B2 |
6690134 | Jones et al. | Feb 2004 | B1 |
6741054 | Koselka et al. | May 2004 | B2 |
6771217 | Liu et al. | Aug 2004 | B1 |
6779217 | Fisher | Aug 2004 | B2 |
6781338 | Jones et al. | Aug 2004 | B2 |
6809490 | Jones et al. | Oct 2004 | B2 |
6868307 | Song et al. | Mar 2005 | B2 |
6883201 | Jones et al. | Apr 2005 | B2 |
6901624 | Mori et al. | Jun 2005 | B2 |
6938298 | Aasen | Sep 2005 | B2 |
6965209 | Jones et al. | Nov 2005 | B2 |
7013527 | Thomas et al. | Mar 2006 | B2 |
7013528 | Parker et al. | Mar 2006 | B2 |
7015831 | Karlsson et al. | Mar 2006 | B2 |
7113847 | Chmura et al. | Sep 2006 | B2 |
7135992 | Karlsson et al. | Nov 2006 | B2 |
7145478 | Goncalves et al. | Dec 2006 | B2 |
7155308 | Jones | Dec 2006 | B2 |
7162338 | Goncalves et al. | Jan 2007 | B2 |
7173391 | Jones et al. | Feb 2007 | B2 |
7177737 | Karlsson et al. | Feb 2007 | B2 |
7196487 | Jones et al. | Mar 2007 | B2 |
7248951 | Hulden | Jul 2007 | B2 |
7272467 | Goncalves et al. | Sep 2007 | B2 |
7320149 | Huffman et al. | Jan 2008 | B1 |
7346428 | Huffman et al. | Mar 2008 | B1 |
7388343 | Jones et al. | Jun 2008 | B2 |
7389156 | Ziegler et al. | Jun 2008 | B2 |
7448113 | Jones et al. | Nov 2008 | B2 |
7480958 | Song et al. | Jan 2009 | B2 |
7539557 | Yamauchi | May 2009 | B2 |
7571511 | Jones et al. | Aug 2009 | B2 |
7620476 | Morse et al. | Nov 2009 | B2 |
7636982 | Jones et al. | Dec 2009 | B2 |
7761954 | Ziegler et al. | Jul 2010 | B2 |
7832048 | Harwig et al. | Nov 2010 | B2 |
8692695 | Fallon et al. | Apr 2014 | B2 |
8892251 | Dooley et al. | Nov 2014 | B1 |
20020002751 | Fisher | Jan 2002 | A1 |
20020011813 | Koselka et al. | Jan 2002 | A1 |
20020016649 | Jones | Feb 2002 | A1 |
20020120364 | Colens | Aug 2002 | A1 |
20020175648 | Erko et al. | Nov 2002 | A1 |
20030025472 | Jones et al. | Feb 2003 | A1 |
20030229421 | Chmura et al. | Dec 2003 | A1 |
20040020000 | Jones | Feb 2004 | A1 |
20040031113 | Wosewick et al. | Feb 2004 | A1 |
20041002000 | Jones | Feb 2004 | |
20040049877 | Jones et al. | Mar 2004 | A1 |
20040143930 | Haegermarck | Jul 2004 | A1 |
20040187457 | Colens | Sep 2004 | A1 |
20040207355 | Jones et al. | Oct 2004 | A1 |
20040244138 | Taylor et al. | Dec 2004 | A1 |
20050028316 | Thomas et al. | Feb 2005 | A1 |
20050053912 | Roth et al. | Mar 2005 | A1 |
20050067994 | Jones et al. | Mar 2005 | A1 |
20050204717 | Colens | Sep 2005 | A1 |
20050209736 | Kawagoe | Sep 2005 | A1 |
20050217061 | Reindle | Oct 2005 | A1 |
20050229340 | Sawalski et al. | Oct 2005 | A1 |
20050278888 | Reindle et al. | Dec 2005 | A1 |
20060009879 | Lynch et al. | Jan 2006 | A1 |
20060085095 | Reindle et al. | Apr 2006 | A1 |
20060123587 | Parr et al. | Jun 2006 | A1 |
20060185690 | Song et al. | Aug 2006 | A1 |
20060190134 | Ziegler et al. | Aug 2006 | A1 |
20060207053 | Beynon | Sep 2006 | A1 |
20060288519 | Jaworski et al. | Dec 2006 | A1 |
20060293794 | Harwig et al. | Dec 2006 | A1 |
20060293809 | Harwig et al. | Dec 2006 | A1 |
20070016328 | Ziegler et al. | Jan 2007 | A1 |
20070061040 | Augenbraun et al. | Mar 2007 | A1 |
20070094836 | Sepke et al. | May 2007 | A1 |
20070226943 | Lenkiewicz et al. | Oct 2007 | A1 |
20070234492 | Svendsen et al. | Oct 2007 | A1 |
20070266508 | Jones et al. | Nov 2007 | A1 |
20080039974 | Sandin et al. | Feb 2008 | A1 |
20080104783 | Crawford et al. | May 2008 | A1 |
20080109126 | Sandin et al. | May 2008 | A1 |
20080140255 | Ziegler | Jun 2008 | A1 |
20080155768 | Ziegler et al. | Jul 2008 | A1 |
20080188984 | Harwig et al. | Aug 2008 | A1 |
20080307590 | Jones et al. | Dec 2008 | A1 |
20090133720 | Van Den Bogert | May 2009 | A1 |
20090281661 | Dooley | Nov 2009 | A1 |
20090306822 | Augenbraun et al. | Dec 2009 | A1 |
20100049365 | Jones et al. | Feb 2010 | A1 |
20100257690 | Jones et al. | Oct 2010 | A1 |
20100257691 | Jones et al. | Oct 2010 | A1 |
20100263158 | Jones et al. | Oct 2010 | A1 |
Number | Date | Country |
---|---|---|
1625949 | Feb 2006 | EP |
10-2012-0042391 | Mar 2012 | KR |
10-2012-0042391 | Feb 2013 | KR |
0191623 | Dec 2001 | WO |
0191624 | Dec 2001 | WO |
Entry |
---|
Anderson, “IMU Odometry”, Jul. 27, 2006, SeattleRobotics.org. |
Anderson et al., “The Journey Robot”, Aug. 1, 2005, Southern Methodist University. |
International Search Report and Written Opinion from corresponding International Application No. PCT/US2014/062096, dated Feb. 4, 2015. |
Schur et al., “Robotics and Artificial Lifeforms: Stasis Logic,” Feb. 5, 2007, ShursAstroPhotography.com. |
Number | Date | Country | |
---|---|---|---|
20150128996 A1 | May 2015 | US |