MOBILE CLEANING ROBOT WITH ACTIVE SUSPENSION

A mobile cleaning robot an include a body, a drive wheel, a wheel stop, and an actuator system. The drive wheel can be connected to the body and can be operable to move the mobile cleaning robot about an environment. The wheel stop can be movable with respect to the body. The actuator system can be operable to move the wheel stop to engage the drive wheel to extend the drive wheel from the body.

BACKGROUND

Autonomous mobile robots include autonomous mobile cleaning robots that can autonomously perform cleaning tasks within an environment, such as a home. Many kinds of cleaning robots are autonomous to some degree and in different ways. Some robots can perform vacuuming operations and some can perform mopping operations. Other robots can include components or systems to perform both vacuuming and mopping operations. Most types of mobile cleaning robots can interface with a docking station that can perform maintenance on the robot, such as charging and debris evacuation.

SUMMARY

Certain mobile cleaning robots can perform both mopping and vacuuming operations, where a cleaning pad can be added to the bottom of the mobile cleaning robot and pulled behind the vacuuming elements of the robotic vacuum. In such systems, it may be difficult to distribute an appropriate amount of weight on the cleaning pad and also provide adequate contact between the cleaning head and the floor. Additionally, it may be desirable to lift the cleaning pad off the floor surface to traverse a rug or other surface where it is not desirable to engage that surface with the cleaning pad. Further, it may be desirable to adjust the suspension when the robot is not mopping and is vacuuming carpet or a surface with a relatively high pile.

To help address the problems described above, this disclosure discusses solutions including an active suspension of the robot that is adjustable based on several factors, such as the operating mode (e.g., mopping mode or vacuuming mode) and the surface to be cleaned, helping to provide more reliable and better cleaning. For example, by adjusting the robot suspension during the mopping mode, a defined amount of weight can be placed upon the cleaning pad to allow for more effective cleaning. And when vacuuming, the suspension can be adjusted to improve contact between the ground and the cleaning head to provide improved debris pickup and can be adjusted to improve ride height relative to carpet pile.

The active suspension can also be used to help reduce slippage of the drive wheels of the mobile cleaning robot when the wheels encounter slick or wet surfaces, such as by adjusting the suspension to increase wheel downforce and therefore to increase traction. The active suspension can also be used to allow the robot to interact with a pickup and drop off dock that can interface with the robot to automatically connect a pad to the robot or disconnect a pad from the robot, helping to reduce user interactions with the robot.

For example, a mobile cleaning robot an include a body, a drive wheel, a wheel stop, and an actuator system. The drive wheel can be connected to the body and can be operable to move the mobile cleaning robot about an environment. The wheel stop can be movable with respect to the body. The actuator system can be operable to move the wheel stop to engage the drive wheel to extend the drive wheel from the body.

The above discussion is intended to provide an overview of subject matter of the present patent application. It is not intended to provide an exclusive or exhaustive explanation of the invention. The description below is included to provide further information about the present patent application.

DETAILED DESCRIPTION

Robot Operation Summary

FIG.1illustrates a plan view of a mobile cleaning robot100in an environment40, in accordance with at least one example of this disclosure. The environment40can be a dwelling, such as a home or an apartment, and can include rooms42a-42e.Obstacles, such as a bed44, a table46, and an island48can be located in the rooms42of the environment. Each of the rooms42a-42ecan have a floor surface50a-50e,respectively. Some rooms, such as the room42d,can include a rug, such as a rug52. The floor surfaces50can be of one or more types such as hardwood, ceramic, low-pile carpet, medium-pile carpet, long (or high)-pile carpet, stone, or the like.

The mobile cleaning robot100can be operated, such as by a user60, to autonomously clean the environment40in a room-by-room fashion. In some examples, the robot100can clean the floor surface50aof one room, such as the room42a,before moving to the next room, such as the room42d,to clean the surface of the room42d. Different rooms can have different types of floor surfaces. For example, the room42e(which can be a kitchen) can have a hard floor surface, such as wood or ceramic tile, and the room42a(which can be a bedroom) can have a carpet surface, such as a medium pile carpet. Other rooms, such as the room42d(which can be a dining room) can include multiple surfaces where the rug52is located within the room42d.

During cleaning or traveling operations, the robot100can use data collected from various sensors (such as optical sensors) and calculations (such as odometry and obstacle detection) to develop a map of the environment40. Once the map is created, the user60can define rooms or zones (such as the rooms42) within the map. The map can be presentable to the user60on a user interface, such as a mobile device, where the user60can direct or change cleaning preferences, for example.

Also, during operation, the robot100can detect surface types within each of the rooms42, which can be stored in the robot100or another device. The robot100can update the map (or data related thereto) such as to include or account for surface types of the floor surfaces50a-50eof each of the respective rooms42of the environment40. In some examples, the map can be updated to show the different surface types such as within each of the rooms42.

In some examples, the user60can define a behavior control zone54. In autonomous operation, the robot100can initiate a behavior in response to being in or near the behavior control zone54. For example, the user60can define an area of the environment40that is prone to becoming dirty to be the behavior control zone54. In response, the robot100can initiate a focused cleaning behavior in which the robot100performs a focused cleaning of a portion of the floor surface50din the behavior control zone54.

Components of the Robot

FIG.2Aillustrates a bottom view of the mobile cleaning robot100andFIG.2Billustrates a top isometric view of the robot100.FIGS.2A and2Bare discussed together below.FIG.2Cillustrates a side cross-sectional view of a mobile cleaning robot across indicators2C-2C ofFIG.2A.FIGS.2A-2Care discussed together below.

FIG.2A and2Bshow that the robot100can include a body102, a bumper109, an extractor113(including rollers114aand114b), motors116aand116b,drive wheels118aand118b,a caster120, a side brush assembly122, a vacuum assembly124, memory126, and sensors128. The robot100can also include a mopping system104that can include a tank132and a pump134.

The cleaning robot100can be an autonomous cleaning robot that can autonomously traverse the floor surface50(ofFIG.1) while ingesting the debris from different parts of the floor surface50. As shown inFIG.2A, the robot100can include the body102that can be movable across the floor surface50. The body102can include multiple connected structures to which movable or fixed components of the cleaning robot100can be mounted. The connected structures can include, for example, an outer housing (e.g., of the body102) to cover internal components of the cleaning robot100, a chassis (e.g., of the body102) to which the drive wheels118aand118band the cleaning rollers114aand114b(of the cleaning assembly113) can be mounted, and the bumper109connected to the outer housing. The caster wheel120can support at least a front portion of the body102above the floor surface50, and the drive wheels118aand118bcan support at least middle and rear portions of the body102(and can also support a majority of the weight of the robot100) above the floor surface50.

As shown inFIG.2A, the body102can include a front portion that can have a substantially semicircular shape and that can be connected to the bumper109. The body102can also include a rear portion that has a substantially semicircular shape. In other examples, the body102can have other shapes such as a square front or straight front. The robot100can also include a drive system including the actuators (e.g., motors)116aand116b.The actuators116aand116bcan be connected to the body102and can be operably connected to the drive wheels118aand118b,which can be rotatably mounted to the body102. The actuators116aand116b,when driven, can rotate the drive wheels118aand118bto enable the robot100to autonomously move across the floor surface50.

The vacuum assembly124can be located at least partially within the body102of the robot100, such as in a rear portion of the body102, and can be located in other locations in other examples. The vacuum assembly124can include a motor to drive an impeller that generates the airflow when rotated. The airflow and the cleaning rollers114, when rotated, can cooperate to ingest the debris into the robot100. The cleaning bin130(shown inFIG.2C) can be mounted in the body102and can contain the debris ingested by the robot100. A filter in the body102can separate the debris from the airflow before the airflow enters the vacuum assembly124and is exhausted out of the body102. In this regard, the debris can be captured in both the cleaning bin130and the filter before the airflow is exhausted from the body102. In some examples, the vacuum assembly124and extractor113can be optionally included or can be of a different type. Optionally, the vacuum assembly124can be operated during mopping operations, such as those including the mopping system104. That is, the robot100can perform simultaneous vacuuming and mopping missions or operations.

The cleaning rollers114aand114bcan be operably connected to an actuator115, e.g., a motor, through a gearbox. The cleaning head113and the cleaning rollers114aand114bcan be positioned forward of the cleaning bin130. The cleaning rollers114can be mounted to an underside of the body102so that the cleaning rollers114aand114bengage debris on the floor surface50during the cleaning operation when the underside of the body102faces the floor surface50.

The controller111can be located within the housing102and can be a programable controller, such as a single or multi-board computer, a direct digital controller (DDC), a programable logic controller (PLC), or the like. In other examples, the controller111can be any computing device, such as a handheld computer, for example, a smart phone, a tablet, a laptop, a desktop computer, or any other computing device including a processor, memory, and communication capabilities. The memory126can be one or more types of memory, such as volatile or non-volatile memory, read-only memory (ROM), random-access memory (RAM), magnetic disk storage media, optical storage media, flash-memory devices, and other storage devices and media. The memory126can be located within the housing102, can be connected to the controller111, and can be accessible by the controller111.

The controller111can operate the actuators116aand116bto autonomously navigate the robot100about the floor surface50during a cleaning operation. The actuators116aand116bcan be operable to drive the robot100in a forward drive direction, in a backwards direction, and to turn the robot100. The controller111can operate the vacuum assembly124to generate an airflow that flows through an air gap near the cleaning rollers114, through the body102, and out of the body102.

The robot100can include a sensor system including one or more sensors. The sensor system, as described herein, can generate one or more signal indicative of a current location of the robot100, and can generate signals indicative of locations of the robot100as the robot100travels along the floor surface50. The sensors128(shown inFIG.2A) can be located along a bottom portion of the housing102. Each of the sensors128can be an optical sensor that can be configured to detect a presence or absence of an object below the optical sensor, such as the floor surface50. The sensors128(optionally cliff sensors) can be connected to the controller111and can be used by the controller111to navigate the robot100within the environment40. In some examples, the cliff sensors can be used to detect a floor surface type which the controller111can use to selectively operate the mopping system104.

The cleaning pad assembly108can be a cleaning pad connected to the bottom portion of the body102(or connected to a moving mechanism configured to move the assembly108between a stored position and a cleaning position), such as to the cleaning bin130in a location to the rear of the extractor113. The tank132can be a water tank configured to store water or fluid, such as cleaning fluid, for delivery to a mopping pad142. The pump134can be connected to the controller111and can be in fluid communication with the tank132. The controller111can be configured to operate the pump134to deliver fluid to the mopping pad142during mopping operations. For example, fluid can be delivered through one or more dispensers117to the mopping pad142. The dispenser(s)117can be a valve, opening, or the like and can be configured to deliver fluid to the floor surface50of the environment40or to the pad142directly. In some examples, the pad142can be a dry pad such as for dusting or dry debris removal. The pad142can also be any cloth, fabric, or the like configured for cleaning (either wet or dry) of a floor surface.

As shown inFIG.2C, the vacuum assembly124can be located at least partially within the body102of the robot100, e.g., in the rear portion102bof the body102. The controller111can operate the vacuum assembly124to generate an airflow that flows through the air gap near the cleaning rollers114, through the body102, and out of the body102. The airflow and the cleaning rollers114, when rotated, can cooperate to ingest debris75into a suction duct136of the robot100. The suction duct136can extend down to or near a bottom portion of the body102.

The suction duct136can be connected to the cleaning head113or cleaning assembly and can be connected to a cleaning bin130. The cleaning bin130can be mounted in the body102and can contain the debris75ingested by the robot100. A filter145can be located in the body102, which can help to separate the debris75from the airflow before the airflow138enters the vacuum assembly124and is exhausted out of the body102. In this regard, the debris75can be captured in both the cleaning bin130and the filter before the airflow138is exhausted from the body102. The robot100can also include a debris port135that can extend at least partially through the body102or the cleaning bin130and can be operable to remove the debris75from the cleaning bin130, such as via a docking station or evacuation station.

The cleaning rollers114aand114bcan operably connected to one or more actuators115, e.g., motors, respectively. The cleaning head113and the cleaning rollers114aand114bcan be positioned forward of the cleaning bin130. The cleaning rollers114aand114bcan be mounted to a housing of the cleaning head113and mounted, e.g., indirectly or directly, to the body102of the robot100. In particular, the cleaning rollers114aand114bcan be mounted to an underside of the body102so that the cleaning rollers114aand114bengage debris75on the floor surface50during the cleaning operation when the underside faces the floor surface50.

Operation of the Robot

In operation of some examples, the controller111can be used to instruct the robot100to perform a mission. In such a case, the controller111can operate the motors116to drive the drive wheels118and propel the robot100along the floor surface50. The robot100can be propelled in a forward drive direction or a rearward drive direction. The robot100can also be propelled such that the robot100turns in place or turns while moving in the forward drive direction or the rearward drive direction. In addition, the controller111can operate the motors115to cause the rollers114aand114bto rotate, can operate the side brush assembly122, and can operate the motor of the vacuum system124to generate airflow. The controller111can execute software stored on the memory126to cause the robot100to perform various navigational and cleaning behaviors by operating the various motors of the robot100.

The various sensors of the robot100can be used to help the robot navigate and clean within the environment40. For example, the cliff sensors can detect obstacles such as drop-offs and cliffs below portions of the robot100where the cliff sensors are disposed. The cliff sensors can transmit signals to the controller111so that the controller111can redirect the robot100based on signals from the sensors.

Proximity sensors can produce a signal based on a presence or the absence of an object in front of the optical sensor. For example, detectable objects include obstacles such as furniture, walls, persons, and other objects in the environment40of the robot100. The proximity sensors can transmit signals to the controller111so that the controller111can redirect the robot100based on signals from the proximity sensors. In some examples, a bump sensor can be used to detect movement of the bumper109along a fore-aft axis of the robot100. A bump sensor139can also be used to detect movement of the bumper109along one or more sides of the robot100and can optionally detect vertical bumper movement. The bump sensors139can transmit signals to the controller111so that the controller111can redirect the robot100based on signals from the bump sensors139.

The robot100can also optionally include one or more dirt sensors144connected to the body102and in communication with the controller111. The dirt sensors144can be a microphone, piezoelectric sensor, optical sensor, or the like located in or near a flow path of debris, such as near an opening of the cleaning rollers114or in one or more ducts within the body102. This can allow the dirt sensor(s)144to detect how much dirt is being ingested by the vacuum assembly124(e.g., via the extractor113) at any time during a cleaning mission. Because the robot100can be aware of its location, the robot100can keep a log or record of which areas or rooms of the map are dirtier or where more dirt is collected.

The image capture device140can be configured to generate a signal based on imagery of the environment40of the robot100as the robot100moves about the floor surface50. The image capture device140can transmit such a signal to the controller111. The controller111can use the signal or signals from the image capture device140for various tasks, algorithms, or the like, as discussed in further detail below.

In some examples, the obstacle following sensors can detect detectable objects, including obstacles such as furniture, walls, persons, and other objects in the environment of the robot100. In some implementations, the sensor system can include an obstacle following sensor along the side surface, and the obstacle following sensor can detect the presence or the absence an object adjacent to the side surface. The one or more obstacle following sensors can also serve as obstacle detection sensors, similar to the proximity sensors described herein.

The robot100can also include sensors for tracking a distance travelled by the robot100. For example, the sensor system can include encoders associated with the motors116for the drive wheels118, and the encoders can track a distance that the robot100has travelled. In some implementations, the sensor can include an optical sensor facing downward toward a floor surface. The optical sensor can be positioned to direct light through a bottom surface of the robot100toward the floor surface50. The optical sensor can detect reflections of the light and can detect a distance travelled by the robot100based on changes in floor features as the robot100travels along the floor surface50.

The controller111can use data collected by the sensors of the sensor system to control navigational behaviors of the robot100during the mission. For example, the controller111can use the sensor data collected by obstacle detection sensors of the robot100, (the cliff sensors, the proximity sensors, and the bump sensors) to enable the robot100to avoid obstacles within the environment of the robot100during the mission.

The sensor data can also be used by the controller111for simultaneous localization and mapping (SLAM) techniques in which the controller111extracts features of the environment represented by the sensor data and constructs a map of the floor surface50of the environment. The sensor data collected by the image capture device140can be used for techniques such as vision-based SLAM (VSLAM) in which the controller111extracts visual features corresponding to objects in the environment40and constructs the map using these visual features. As the controller111directs the robot100about the floor surface50during the mission, the controller111can use SLAM techniques to determine a location of the robot100within the map by detecting features represented in collected sensor data and comparing the features to previously stored features. The map formed from the sensor data can indicate locations of traversable and nontraversable space within the environment. For example, locations of obstacles can be indicated on the map as nontraversable space, and locations of open floor space can be indicated on the map as traversable space.

The sensor data collected by any of the sensors can be stored in the memory126. In addition, other data generated for the SLAM techniques, including mapping data forming the map, can be stored in the memory126. These data produced during the mission can include persistent data that are produced during the mission and that are usable during further missions. In addition to storing the software for causing the robot100to perform its behaviors, the memory126can store data resulting from processing of the sensor data for access by the controller111. For example, the map can be a map that is usable and updateable by the controller111of the robot100from one mission to another mission to navigate the robot100about the floor surface50.

The persistent data, including the persistent map, can help to enable the robot100to efficiently clean the floor surface50. For example, the map can enable the controller111to direct the robot100toward open floor space and to avoid nontraversable space. In addition, for subsequent missions, the controller111can use the map to optimize paths taken during the missions to help plan navigation of the robot100through the environment40.

The controller111can also send commands to a motor (internal to the body102) to drive the arms106to move the pad assembly108between the stored position (shown inFIG.2A) and the deployed position (shown inFIG.2C). In the deployed position, the pad assembly108(the mopping pad142) can be used to mop a floor surface of any room of the environment40.

The mopping pad142can be a dry pad or a wet pad. Optionally, when the mopping pad142is a wet pad, the pump134can be operated by the controller111to spray or drop fluid (e.g., water or a cleaning solution) onto the floor surface50or the mopping pad142. The wetted mopping pad142can then be used by the robot100to perform wet mopping operations on the floor surface50of the environment40. As discussed in further detail below, the controller111can determine when to dispense fluid and when to move the pad tray141and the mopping pad142between the stored position and the cleaning position.

Docking Station and Robot Examples

FIG.3illustrates an isometric view of the mobile cleaning robot100and a docking station300. The docking station300can include an upper portion346and a base348. The components of the docking station300can be rigid or semi-rigid components made of materials such as one or more of metals, plastics, foams, elastomers, ceramics, composites, combinations thereof, or the like. Materials of some components are discussed in further detail below. Though the docking station300(or other docking stations discussed below) are discussed as working with the robot100, the docking station300(or other docking stations discussed below) can work with vacuuming only robots or any mobile cleaning robot that collects debris.

The upper portion346can include an outer wall350(or wall) connected to the base. The base348can include a platform352including include tracks. The base348can be a ramped member including the platform352, where the base348can be configured to receive the mobile cleaning robot100thereon for maintenance, such as replacement of a mopping pad of the mopping system104. For example, the mobile cleaning robot100can move onto the base348by traversing the platform352. The docking station300can optionally include a controller (e.g., similar to the controller111), such as for communicating with the robot100or other device.

In operation of some examples, when the robot100is docked on the base348, the robot100can be operated to release a mopping pad from the mopping system104or can be operated to collect or attach a mopping pad to the mopping system104. Further details of the robot100and the docking station300and operation thereof are discussed below.

Network Examples

FIG.4is a diagram showing a communication network400that enables networking between the mobile robot100and one or more other devices, a docking station300(or any of the docking stations discussed herein), a mobile device404(including a controller), a cloud computing system406(including a controller), or another autonomous robot separate from the mobile robot100. Using the communication network400, the robot100, the mobile device404, the docking station300, and the cloud computing system406can communicate with one another to transmit and receive data from one another. In some examples, the robot100, the docking station300, or both the robot100and the docking station300can communicate with the mobile device404through the cloud computing system406. Alternatively, or additionally, the robot100, the docking station300, or both the robot100and the docking station300can communicate directly with the mobile device404. Various types and combinations of wireless networks (e.g., Bluetooth, radio frequency, optical based, etc.) and network architectures (e.g., wi-fi or mesh networks) can be employed by the communication network400.

In some examples, the mobile device404can be a remote device that can be linked to the cloud computing system406and can enable a user to provide inputs. The mobile device404can include user input elements such as, for example, one or more of a touchscreen display, buttons, a microphone, a mouse, a keyboard, or other devices that respond to inputs provided by the user. The mobile device404can also include immersive media (e.g., virtual reality or augmented reality) with which the user can interact to provide input. The mobile device404, in these examples, can be a virtual reality headset or a head-mounted display.

The user can provide inputs corresponding to commands for the mobile robot100. In such cases, the mobile device404can transmit a signal to the cloud computing system406to cause the cloud computing system406to transmit a command signal to the mobile robot100. In some implementations, the mobile device404can present augmented reality images. In some implementations, the mobile device404can be a smart phone, a laptop computer, a tablet computing device, or other mobile device.

In some examples, the communication network400can include additional nodes. For example, nodes of the communication network400can include additional robots. Also, nodes of the communication network400can include network-connected devices that can generate information about the environment40. Such a network-connected device can include one or more sensors, such as an acoustic sensor, an image capture system, or other sensor generating signals, to detect characteristics of the environment40from which features can be extracted. Network-connected devices can also include home cameras, smart sensors, or the like.

In the communication network400, the wireless links can utilize various communication schemes, protocols, etc., such as, for example, Bluetooth classes, Wi-Fi, Bluetooth-low-energy, also known as BLE, 802.15.4, Worldwide Interoperability for Microwave Access (WiMAX), an infrared channel, satellite band, or the like. In some examples, wireless links can include any cellular network standards used to communicate among mobile devices, including, but not limited to, standards that qualify as 1G, 2G, 3G, 4G, 5G, or the like. The network standards, if utilized, qualify as, for example, one or more generations of mobile telecommunication standards by fulfilling a specification or standards such as the specifications maintained by International Telecommunication Union. For example, the 4G standards can correspond to the International Mobile Telecommunications Advanced (IMT-Advanced) specification. Examples of cellular network standards include AMPS, GSM, GPRS, UMTS, LTE, LTE Advanced, Mobile WiMAX, and WiMAX-Advanced. Cellular network standards can use various channel access methods, e.g., FDMA, TDMA, CDMA, or SDMA.

Robot Examples

FIG.5Aillustrates a schematic view of a mobile cleaning robot500in a first condition.FIG.5Billustrates a schematic view of the mobile cleaning robot500in a second condition.FIG.5Cillustrates a schematic view of the mobile cleaning robot500in a third condition.FIGS.5A-5Care discussed together below. The mobile cleaning robot500can be similar to the robot100discussed above; any of the mobile cleaning robots discussed above can include the features of the mobile cleaning robot500.

The mobile cleaning robot500can include a body502and drive wheel518connected to the body502by a drive arm554. The mobile cleaning robot500can also include a caster520. The drive wheel518and the caster520can together be configured to engage the floor surface50to move the mobile cleaning robot500about an environment (e.g., the environment40) and can be configured to support the mobile cleaning robot500. The body502, the drive wheel518, and the caster520can be similar to body102, the drive wheels118, and the caster120, respectively, of the robot100discussed above.

The drive arm554can be movable with respect to the body502such as to allow the drive wheel518to move (e.g., extend and retract) with respect to the body502. The drive arm554can also be connected to a spring or biasing elements to bias the drive wheel518to extend from the body502. The drive arm554can optionally include a gear train therein. The body502can also include a fender555or wheel guard connected to the drive arm554or the drive wheel518such that the fender555can at least partially surround the drive wheel518. The fender555can be movable with the drive arm554and the drive wheel518.

The mobile cleaning robot500can also include a stop support556and a wheel stop558. The stop support556can be connected to the body and can be configured to support the wheel stop558. The movable wheel stop558can be connected to the stop support556and can be engageable with the fender555. Optionally, the wheel stop558can engage other portions of the mobile cleaning robot500such as the drive arm554, so long as the wheel stop558can limit movement of the drive arm554relative to the body502. The wheel stop558can be connected to one or more actuators (as discussed below) and can be in communication with a controller (e.g., the controller111) such that the controller can operate the actuator or the wheel stop558to move with respect to the body502and the fender555(and therefore the drive arm554and the drive wheel518).

FIGS.5B and5Calso show that the mobile cleaning robot500can include a mopping pad542, such as of a mopping pad assembly, which can be similar to the mopping pad142, such that the mopping pad542can be engageable with the floor surface50to perform wet or dry mopping operations thereon. The mopping pad542can be movable with a pad assembly or can be releasably connectable to the body502of the mobile cleaning robot500.

In operation, as shown inFIG.5A, the wheel stop558can be in a first condition or position where the robot500is in a dry mode configuration, such as a vacuuming mode. In such a condition, a clearance between the body502and the floor can be optimized for vacuuming performance. Also, a distribution of weight to the caster520, the drive wheel518, and the cleaning head can be optimized or set for effective vacuuming operations or robot mobility.

As shown inFIG.5B, the wheel stop558can be in a second condition or position where the robot500is in a wet mode configuration, such as a mopping mode or both mopping and vacuuming mode. In the second condition, the wheel stop558can be retracted further from the condition ofFIG.5Ato allow the fender555and the drive wheel518to retract further (relative to the condition ofFIG.5A) into the body502. That is, the drive wheel518is free to have a greater travel (or float) with respect to the body502, as necessary to comply with the flooring surface. In such a condition, a clearance between the body502and the floor can be optimized for mopping or vacuuming and mopping. Also, a distribution of weight to the caster520, the drive wheel518, and the mopping pad542(e.g., additional robot weight applied to the mopping pad542) can be optimized or set for effective mopping operations, vacuuming and mopping operations, or robot mobility.

As shown inFIG.5C, the wheel stop558can be in a third condition or position where the robot500is in a transit or mobility mode or configuration. In the third condition, the wheel stop558can be extended further from the condition ofFIG.5Ato allow the fender555and the drive wheel518to extend further (relative to the condition ofFIG.5A) out of the body502. In such a condition, a clearance between the body502(especially the mopping pad542) and the floor can be increased for mobility, which can allow the robot100to carry the mopping pad542over a fibrous floor surface, such as carpet. The robot100(or a controller thereof) can operate the wheel stop558between the various modes throughout a cleaning to improve mobility and cleaning efficiency or effectiveness.

FIG.6illustrates an isometric view of a portion of a mobile cleaning robot600.FIG.7illustrates an isometric view of a portion of the mobile cleaning robot600.FIG.8illustrates an isometric view of a portion of the mobile cleaning robot600.FIG.9illustrates an isometric view of a portion of the mobile cleaning robot600.FIGS.6-9are discussed together below. The mobile cleaning robot600can be similar to the robots100or500discussed above; any of the mobile cleaning robots discussed above can include the features of the mobile cleaning robot600.

The mobile cleaning robot600can include a body602and drive wheel618connected to the body602by a drive arm654. The mobile cleaning robot600can also include a caster620. The drive wheel618and the caster620can together be configured to engage a floor surface to move the mobile cleaning robot600about an environment (e.g., the environment40) and can be configured to support the mobile cleaning robot600. The body602, the drive wheel618, and the caster620can be similar to body102, the drive wheels118, and the caster120, respectively, of the robot100discussed above.

The drive arm654and drive wheel618can be movable with respect to the body602such as to allow the drive wheel618to move (e.g., extend and retract) with respect to the body602. The drive arm654can optionally include a gear train therein. The body602can also include a fender655or wheel guard connected to the drive arm654or the drive wheel618such that the fender655at least partially surrounds the drive wheel618. The fender655can be movable with the drive arm654and the drive wheel618.

FIG.6also shows that the mobile cleaning robot600can include an actuator system660operable to move wheel stops658aand658bto engage the drive wheels618aand618b(only drive wheel618ais shown inFIG.6), respectively, to extend the drive wheels618from the body602. For example, the actuator system660can be operable to rotate the wheel stop658with respect to the body602, such as to change a mode of the mobile cleaning robot between a vacuuming mode and a mopping mode (or other modes).

More specifically, the actuator system660can include an actuator662, a gear box664, a drive shaft666, and actuator gears668aand668b.The actuator system660can also include an encoder (e.g., absolute encoder) or other sensor that can be connected to (or in communication with) a controller (e.g., the controller111). The encoder can be configured to generate a position signal based on a position of one or more components of the actuator system660to allow the controller to determine a position of the wheel stops658, which can be used by the controller111to change between modes or set a desire force distribution of the mobile cleaning robot600.

The actuator gears668can be connected to respective ends or end portions of the drive shaft666and the actuator gears668aand668bcan be engaged with wheel stops658aand658b,respectively. The drive shaft666can be a shaft or elongate member extending across the body602. The drive shaft666can be connected to our coupled with the gear box664. The gear box664can be a gear box or housing including one or more gears connected to the actuator662. The actuator662and the gear box664can be connected to or supported by the body602.

The actuator662can be a motor or actuator operable to rotate gears of the gear box664to rotate the drive shaft666and the actuator gears668to drive the wheel stops658to move or rotate. The actuator662can be connected to or in communication with a controller (e.g., the controller111) such that the controller can operate the actuator662to move the wheel stops658, such as based on one or more signals from a sensor system, e.g., the sensor system of the robot100. For example, the controller can be configured to determine a flooring type of a portion of the environment (e.g., the environment40) based on the image capture signal, and the controller can be configured to operate the actuator system660based on the determined flooring type to move the drive wheel618to improve cleaning efficiency or mobility of the mobile cleaning robot600.

FIG.6also shows that the wheel stops658can each include a body670rotatable with the actuator system660, such as with the actuator gear668and the actuator system660. The wheel stops658can also include a projection672extending laterally inward from the body670, where the projection672can be engageable with the fender655. The body670can also include one or more teeth674on an outer surface thereof, where the one or more teeth674can be engaged or engageable with teeth of the actuator gear668. The body670can also define a slot676extending at least partially through the body670. The slot676can receive a pin678at least partially therein. The pin678can be connected to the body602and can be engageable with ends of the slot676such as to guide and limit rotation of the wheel stops658with respect to the body602.

FIG.7shows the wheel stop658ain two configurations. The first configuration is in a raised configuration where the fender655(not visible inFIG.7) will not contact the wheel stop658a,as indicated by658c,such that the fender655and the drive wheel618a(not visible inFIG.7) are free to move through their full range, which can be similar to the configuration shown inFIG.5B. The second configuration of the wheel stop658ais a lowered configuration where the fender655will contact the wheel stop658a,as indicated by658din broken lines, such that the travel of the drive wheel618ais most limited by the wheel stop658a,which can be similar to the configuration shown inFIG.5C. The wheel stop658acan be movable to any position between the two shown configurations and optionally can be movable outside of the two shown configurations as limited by contact between the pin678and the slot676as discussed above.

FIGS.8and9show the wheel stop658ain multiple configurations. In the configuration shown by658d(in solid lines), the projection672of the wheel stop658acan engage the fender655to move the drive arm654and the drive wheel618ato extend from the body602or to limit retraction of the drive wheel618ainto the body602. In the configuration shown by658c(in dashed lines), the wheel stop658acan be disengaged from the fender to allow the drive arm654and the drive wheel618ato retract into the body602.

FIGS.8and9also show a gear train680of the drive arm654, which can be operable to rotate the drive wheel618a.FIG.9also shows, more clearly, how the projection672can extend laterally inward from the body670such that the projection672can be engageable with the fender655and such that the body670can rotate or move without engaging the fender655.

The above examples of robots (e.g., the mobile cleaning robot500and the mobile cleaning robot600) allow for the adjustable suspension to recover from wheel slip events, or events where the robot detects that it is not moving as it should in consideration of drive wheel movement. In such a situation, the robot can use the active suspension to push down on the drive wheels (to increase a downward force) to help regain traction, such as when traction is lost due to vacuuming high pile carpeting (when drag is high on the robot) or when mopping wet floors (such as when friction is low from slippery flooring surfaces).

The above robots also can also help to prevent or correct sinking of the robot into relatively high pile carpeting. In such a situation, when the robot sinks or begins to sink, the adjustable suspension can cause the drive wheels to extend from the body, lifting a body of the robot relatively higher, to reduce cleaning head engagement and to help reduce ingestion of carpet fiber ingestion or engagement.

Docking Station Examples

FIG.10illustrates an isometric view of the docking station300.FIG.10also shows orientation indicators Front and Rear. The docking station300ofFIG.10can be consistent with the docking station300discussed above.FIG.10shows additional details of the docking station300.

For example,FIG.10shows that the docking station300can include fiducials. Each of the fiducial can be a visual indicator such as a bar code, quick response (QR) code, April tag, or the like. A fiducial382can be connected to the outer wall350and can face a front portion of the docking station300. The docking station300can also include fiducials384aand384bthat can be located in notches386aand386b,respectively, and can face a front portion of the docking station300. The notches386aand386bcan allow the robot100(or the mobile cleaning robot600or other mobile cleaning robot) to identify the fiducials384aand384bfrom in front of the docking station300. The fiducials384aand384bcan be out of plane with the fiducial382to provide a robot with three dimensional information for docking purposes (e.g., using parallax).

The docking station300can also include tracks388aand388bin or on the base348, such as on the platform352, which can be configured to receive drive wheels (e.g., the drive wheels618aand618b) at least partially thereon or therein, respectively. The docking station300can also include rollers390aand390b,which can be connected to the base348such as at a rear end of the tracks388aand388b,respectively. The rollers390aand390bcan be configured to engage the drive wheels when the drive wheels reach respective ends of the tracks388, such as to limit fore-aft movement of the mobile cleaning robot with respect to the base348when the one or more drive wheels engage the base. In other words, rearward movement of the drive wheels (and therefore the mobile cleaning robot) onto the base348can be limited through engagement with the rollers390. Also, engagement of the drive wheels with the rollers390can align or orient the robot rotationally (about a vertical axis) on the docking station300. That is, as the robot backs up and engages the rollers390, if only one roller is engaged, the robot will rotate as the other drive wheel continues to move until the second roller is engaged, rotating the robot to properly align the robot on the docking station300. Also, the outer wall350can be engageable with the body of the robot to help center (e.g., laterally) or laterally orient the robot on the docking station300and to help limit rearward movement of the robot onto the docking station300.

The docking station300can also include a pad engagement system391including pawls392aand392bthat can be connected to the outer wall350(or the base348) such as in openings394aand394bof the outer wall350, respectively. The pawls392can be pivotably or rotatably connected to the outer wall350and can be engageable with a mopping pad of the robot, such as to help detach a mopping pad from the robot. Further details and operation of the pawls392are discussed below.

In operation, the robot100can use the fiducials382and384to identify the docking station300and align itself with respect to the docking station300for proper docking. For example, the controller111of the robot100can use the fiducials382and384to navigate the mobile cleaning robot100to dock. However, navigation of the robot100onto the docking station300is not required. Due to the fiducials and the rollers (and the walls350, the robot100can align itself with the tracks using the fiducials, can rotate180degrees and then reverse onto the base348. The robot can move its drive wheels into the tracks388and drive or move at least partially onto the base348, such as until the robot engages the outer wall350or until the drive wheels of the robot engage the rollers390. Sensors of the robot100can confirm that the robot100has stopped moving and is in a position 180 degrees from where the alignment with the fiducials occurred, indicating that the robot100is properly docked on the docking station300.

Prior to docking and after docking identification, the robot100can determine whether a mopping pad is located on the docking station300(e.g., on the base348), such as using a signal from one or more sensors (e.g., the image capture device140) and an identification routine (e.g., ODOA). The robot100can then decide whether a pad can be dropped off (e.g., when no pad is determined to be on the docking station300) or when a pad can be picked up (e.g., when a pad is determined to be on the docking station300).

Once the robot is docked at the docking station300, the pad engagement system391can engage a mopping pad (e.g., the mopping pad142or the mopping pad542) of the mobile cleaning robot to release the mopping pad from the mobile cleaning robot. In the scenario where there is no mopping pad connected to the robot, the robot can collect a mopping pad from the docking station300. For example, the robot can complete a vacuuming mission (or vacuuming portion of the mission) and then dock on the docking station300to attach a mopping pad to the robot. Then, when the robot needs to detach the mopping pad (such as when the mopping mission is complete or when more vacuuming is required), the robot can interact with the docking station300to detach the mopping pad. In this way, the docking station300can be used by the robot as a pickup and drop off docking station for mopping pads. Further details of the docking station300and how the docking station300can interact with a robot are discussed below.

FIG.11illustrates an isometric view of a portion of the docking station300. The docking station300can be consistent with the docking station300discussed above;FIG.11shows additional features of the docking station300.

For example,FIG.11shows that the pawl392aof the pad engagement system391can include a body396and a tooth398. The body396can be connected to the outer wall350by a pin399such as to form a bearing for the pawl392a,allowing the pawl392ato rotate with respect to the outer wall350. As illustrated by392c(in broken lines), the pawl392acan rotate away from the outer wall350such that the tooth398does not extend through the opening394a.Such rotation can occur when the mobile cleaning robot moves downward with respect to the pad engagement system and when a pad (or other portion of the robot) engages a top surface of the pawl392to allow a pad connected to the robot to be lowered past the pawls392. As illustrated by392d(in solid lies), the pawl392acan rotate toward the outer wall350such that the tooth398extends through the opening394a,allowing a bottom surface of the tooth398of the pawls392to engage a pad and separate the pad from the robot.

Dock Operation Examples

FIGS.12Aillustrates a perspective view of a portion of the mobile cleaning robot600and a portion of the docking station300.FIG.12Billustrates a perspective view of a portion of the mobile cleaning robot600and a portion of the docking station300.FIG.12Cillustrates a perspective view of a portion of the mobile cleaning robot600and a portion of the docking station300.FIG.12A-12Care discussed together below.

The docking station300and the mobile cleaning robot600can be consistent with the docking station300and the mobile cleaning robot600discussed above.FIGS.12A-12Cshow how the docking station300and mobile cleaning robot600can interact. For example,FIG.12Ashows the mobile cleaning robot600docked on the docking station300with the pad642in a lowered position, but high enough such that the pad642does not engage the docking station300as the mobile cleaning robot600docks, to help limit the mobile cleaning robot600from pushing the docking station300as it docks. In such a position, the drive wheel618can be engaged with the roller390. And, the tooth398of the pawl392can be positioned between the mopping pad642and the body602. The pawls392and the outer wall350can be designed or configured such that the tooth398inserts between the mopping pad542and the body602when the mobile cleaning robot600docks on the docking station300in a mopping configuration (or in another predetermined configuration, such as a docking configuration).

Once the mobile cleaning robot600is docked and the tooth398is inserted between the mopping pad642and the body602, the docking station300can use its active suspension system, such as the actuator system660to move to detach the pad642. For example, a controller (e.g., the controller111) can operate the actuator system660to move the wheel stops658to move the drive wheel618downward, lifting the body602. During such movement, the tooth398can remain engaged with the pad642and the pawls692can therefore release the pad642from the body602, such that the pad642rests on the base348, as shown inFIG.12B. Once the pad642is disconnected, the mobile cleaning robot600can move forward out of the docking station300and continue (or end) its mission.

The docking station300can also be used to attach the pad642to the mobile cleaning robot600. For example, as shown inFIG.12B, the pad642can be disconnected from the mobile cleaning robot600and resting on the base348. The mobile cleaning robot600can then dock on the docking station300with the body602above the pad642. The mobile cleaning robot600can then use the active suspension (e.g., the actuator system660) to move the wheel stops658to lower the body602. When the body602is lowered, the pawls392can rotate outward, as shown inFIG.12C, allowing the body to move past the pawls392. The body602can then engage the pad642to connect the pad642to the body602, such as through a snap engagement or a magnetic engagement between the body602and the pad642. Once the pad642is connected to the body602, the pad642can be raised high enough such that the pad642does not engage the docking station300as the mobile cleaning robot600undocks, to help limit the mobile cleaning robot600from moving the docking station300. Then, the mobile cleaning robot600can move forward out of the docking station300with the pad642connected to perform mopping operations.

When the mobile cleaning robot600drops off a cleaning pad, the mobile cleaning robot600can be adjusted to a height so that the mobile cleaning robot600does not engage the released pad resting on the base348. In this way, the docking station300can be used by the robot as a pickup and drop off docking station for mopping pads.

Docking Station Examples

FIG.13illustrates an isometric view of a docking station1300. The docking station1300can be similar to the docking station300discussed above. The docking station1300can include a different pad engagement system. Any of the docking stations discussed above or below can include the features of the docking station1300.

The docking station1300can include a base1348connected to an upper portion1346, which can include a wall1350. The base1348can include tracks1388aand1388band rollers1390aand1390b.The docking station1300can also include one or more fiducials1382.

The docking station1300can also include a pad engagement system1391that can include projections1393aand1393bor shelves. More specifically, the projections1393aand1393bcan include a ledge1395, which can be a lower surface of the projections1393aor1393b.The ledge1395of the projections1393aand1393bcan be configured to engage with the pad of a mobile cleaning robot, such as to engage the pad for removal from the robot. Optionally, in this configuration, the pad of the robot can extend beyond a perimeter of a body of the robot to improve engagement between the projections1393.

Robot Examples

FIG.14illustrates an isometric view of a portion of a mobile cleaning robot1400.FIG.15illustrates an isometric view of a portion of the mobile cleaning robot1400.FIGS.14and15are discussed together below. The mobile cleaning robot1400can be similar to the mobile cleaning robot600discussed above; the mobile cleaning robot1400can include overload protection. Any of the robots discussed above or below can include the features of the mobile cleaning robot1400.

The mobile cleaning robot1400can include a body1402and drive wheels1418a(shown inFIGS.14) and1418b(shown inFIG.15). The drive wheels1418can be similar to the drive wheels discussed above (e.g., the drive wheels618) such that the drive wheels1418can be connected to the body1402and can be configured to move with respect to the body1402. The mobile cleaning robot1400can also include a fender1455connected to a drive arm1454or the drive wheels1418.

The mobile cleaning robot1400can also include wheel stop assemblies1458a(shown inFIGS.14) and1458b(shown inFIG.15). The wheel stop assemblies1458can be similar to those discussed above (e.g., the wheel stops658); the wheel stop assemblies1458can include overload protection. More specifically, each of the wheel stop assemblies1458aand1458bcan include a housing1403(shown inFIG.14), a stop1404, a drive gear1406, and a biasing element1408(discussed inFIG.16). The stop1404can include a projection1472extending from a body1470. The stop1404can also include a shaft1410extending at least partially through the drive gear1406and the housing1403to enable coaxial or concentric rotation of the stop1404and the drive gear1406.

The housing1403can receive at least a portion of the actuator gear1468therein to allow the actuator gear1468to engage with teeth of the drive gear1406. The drive gear1406can be engaged with the stop1404such that rotation of the actuator gear1468(such as from an actuator system1460) can cause rotation of the drive gear1406and the stop1404to engage the fender1455to move the fender1455and the drive wheels1418. Rotation of the actuator gear1468in the opposite direction can cause rotation of the stop1404and the drive gear1406such as to cause the stop1404to disengage the fender1455. The biasing element1408can be engaged with the stop1404and the drive gear1406to operate as an overload protection device, as discussed in further detail below.

FIG.16illustrates an isometric view of a portion of the mobile cleaning robot1400. The mobile cleaning robot1400can be consistent with the mobile cleaning robot1400discussed above;FIG.16shows additional details of the mobile cleaning robot1400. For example,FIG.16shows the actuator gear1468engaged with teeth of the drive gear1406.

FIG.16also shows that the drive gear1406can include an engagement portion1412extending laterally inward from a body1414of the drive gear1406. The drive gear1406can also include a support portion1416extending laterally inward from the body1414of the drive gear1406. The stop1404can include an engagement portion1420extending laterally outward from the body1470of the drive gear1406. The engagement portion1420of the stop1404can be engageable or engaged with the engagement portion1412of the drive gear1406.

The biasing element1408can be a spring, such as a torsion spring, including one or more coils and including legs1422and1424. The leg1422can be engaged with the engagement portion1420of the stop1404and the leg1424can be engaged with the support portion1416of the drive gear1406. Because the engagement portion1412engages the engagement portion1420, the stop1404can be rotated by the drive gear1406away from the fender1455. And, because the leg1424engages the support portion1416and the leg1422engages the engagement portion1420, the stop1404can be rotated by the drive gear1406towards the fender1455. In this way, the stop1404and the drive gear1406can operate as a single component in a direction of rotation of the stop1404away from the fender1455.

The stop1404and the drive gear1406can also operate as a single component in a direction of rotation of the stop1404toward the fender1455until a force applied by the stop1404(such as from the fender1455) on the leg1422overcomes a spring force of the biasing element1408at which point the stop1404can move relative to the drive gear1406. In this overload scenario, the stop1404can rotate relative to the drive gear1406sufficiently far to disengage the projection1472from the fender1455such as to minimize forces applied to the actuator system1460(e.g., via the actuator gear1468and a drive shaft1466), helping to prevent damage to the actuator system1460during an overload condition (e.g., a user stepping on the body1402). When the force applied by the stop1404(such as from the fender1455) on the leg1422falls below the spring force, the stop1404can be biased by the biasing element1408to return to its normal position where the engagement portion1420is engaged with the engagement portion1412. In this way, the stop1404, drive gear1406, and biasing element1408can provide overload protection for the wheel stop assemblies1458helping to limit damage to the wheel stop assemblies1458or the actuator system1460.

The machine (e.g., computer system)1700can include a hardware processor1702(e.g., a central processing unit (CPU), a graphics processing unit (GPU), a hardware processor core, or any combination thereof), a main memory1704, a static memory (e.g., memory or storage for firmware, microcode, a basic-input-output (BIOS), unified extensible firmware interface (UEFI), etc.)1706, and mass storage1708(e.g., hard drive, tape drive, flash storage, or other block devices) some or all of which can communicate with each other via an interlink (e.g., bus)1730. The machine1700can further include a display unit1710, an alphanumeric input device1712(e.g., a keyboard), and a user interface (UI) navigation device1714(e.g., a mouse). In an example, the display unit1710, input device1712and UI navigation device1714can be a touch screen display. The machine1700can additionally include a storage device (e.g., drive unit)1708, a signal generation device1718(e.g., a speaker), a network interface device1720, and one or more sensors1716, such as a global positioning system (GPS) sensor, compass, accelerometer, or other sensor. The machine1700can include an output controller1728, such as a serial (e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR), near field communication (NFC), etc.) connection to communicate or control one or more peripheral devices (e.g., a printer, card reader, etc.).

Registers of the processor1702, the main memory1704, the static memory1706, or the mass storage1708can be, or include, a machine readable medium1722on which is stored one or more sets of data structures or instructions1724(e.g., software) embodying or utilized by any one or more of the techniques or functions described herein. The instructions1724can also reside, completely or at least partially, within any of registers of the processor1702, the main memory1704, the static memory1706, or the mass storage1708during execution thereof by the machine1700. In an example, one or any combination of the hardware processor1702, the main memory1704, the static memory1706, or the mass storage1708can constitute the machine readable media1722. While the machine readable medium1722is illustrated as a single medium, the term “machine readable medium” can include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) configured to store the one or more instructions1724.

The term “machine readable medium” can include any medium that is capable of storing, encoding, or carrying instructions for execution by the machine1700and that cause the machine1700to perform any one or more of the techniques of the present disclosure, or that is capable of storing, encoding or carrying data structures used by or associated with such instructions. Non-limiting machine readable medium examples can include solid-state memories, optical media, magnetic media, and signals (e.g., radio frequency signals, other photon based signals, sound signals, etc.). In an example, a non-transitory machine readable medium comprises a machine readable medium with a plurality of particles having invariant (e.g., rest) mass, and thus are compositions of matter. Accordingly, non-transitory machine-readable media are machine readable media that do not include transitory propagating signals. Specific examples of non-transitory machine readable media can include: non-volatile memory, such as semiconductor memory devices (e.g., Electrically Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM)) and flash memory devices; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.

NOTES AND EXAMPLES

Example 1 is a mobile cleaning robot comprising: a body; a drive wheel connected to the body and operable to move the mobile cleaning robot about an environment; a wheel stop movable with respect to the body; and an actuator system operable to move the wheel stop to engage the drive wheel to extend the drive wheel from the body.

In Example 2, the subject matter of Example 1 optionally includes wherein the actuator system is operable to rotate the wheel stop with respect to the body.

In Example 3, the subject matter of Example 2 optionally includes a fender connected to the drive wheel and at least partially surrounding the drive wheel, the wheel stop engageable with the fender.

In Example 4, the subject matter of Example 3 optionally includes wherein the wheel stop includes a body rotatable with the actuator system and wherein the wheel stop includes a projection extending laterally inward from the body, the projection engageable with the fender.

In Example 5, the subject matter of any one or more of Examples 1-4 optionally include wherein the actuator system is operable to change a mode of the mobile cleaning robot between a vacuuming mode and a mopping mode.

In Example 6, the subject matter of any one or more of Examples 1-5 optionally include a mopping pad assembly releasably connectable to the body.

In Example 7, the subject matter of any one or more of Examples 1-6 optionally include a sensor system connected to the body; and controller circuitry configured to operate the actuator system based on one or more signals from the sensor system.

In Example 8, the subject matter of Example 7 optionally includes wherein the sensor system includes an image capture sensor configured to generate an image capture signal, and wherein the controller is configured to determine a flooring type of a portion of the environment based on the image capture signal, and wherein the controller is configured to operate the actuator system based on the determined flooring type.

In Example 9, the subject matter of any one or more of Examples 1-8 optionally include wherein the actuator system includes a drive gear engageable with the wheel stop to move the wheel stop with respect to the body.

In Example 10, the subject matter of Example 9 optionally includes wherein the actuator system includes an overload spring engaged with the drive gear and the wheel stop, the overload spring configured to allow the wheel stop to move independently of the drive gear when a force applied by the wheel stop on the drive gear exceeds a threshold force.

Example 11 is a docking station for a mobile cleaning robot comprising: a base configured to receive the mobile cleaning robot at least partially thereon, and the base configured to receive a mopping pad at least partially thereon; a one or more walls connected to the base and extending therefrom; and a pad engagement system connected to the one or more walls and engageable with a mopping pad of the mobile cleaning robot to release the mopping pad from the mobile cleaning robot.

In Example 12, the subject matter of Example 11 optionally includes wherein the pad engagement system include a pawl connected to the base or the one or more walls, the pawl engageable with the mopping pad of the mobile cleaning robot to release the mopping pad from the mobile cleaning robot when the mobile cleaning robot moves upward with respect to the pad engagement system when the mobile cleaning robot is located at least partially on the base.

In Example 13, the subject matter of Example 12 optionally includes wherein the mobile cleaning robot is engageable with the pawl to cause the pawl to rotate with respect to the base when the mobile cleaning robot moves downward with respect to the pad engagement system when the mobile cleaning robot is located at least partially on the base.

In Example 14, the subject matter of any one or more of Examples 11-13 optionally include a first fiducial connected to the one or more walls; and a second fiducial and a third fiducial connected to the base.

In Example 15, the subject matter of any one or more of Examples 11-14 optionally include wherein the one or more walls are engageable with the mobile cleaning robot to laterally orient the mobile cleaning robot on the docking station.

In Example 16, the subject matter of any one or more of Examples 11-15 optionally include one or more rollers engageable with one or more drive wheels of the mobile cleaning robot to limit fore-aft movement of the mobile cleaning robot with respect to the base when the one or more drive wheels engage the base.

Example 17 is a mobile cleaning robot system comprising: a mobile cleaning robot comprising: a body; a mopping pad releasably connectable to the body; a pair of drive wheels connected to the body and operable to move the mobile cleaning robot about an environment; and an active suspension system operable to move the body with respect to the pair of drive wheels; a docking station comprising: a base configured to receive the mobile cleaning robot at least partially thereon; a wall connected to the base and extending therefrom; and a pad engagement system connected to the wall and engageable with the mopping pad to release the mopping pad from the mobile cleaning robot.

In Example 18, the subject matter of Example 17 optionally includes the active suspension system comprising: a pair of wheel stops movable with respect to the body; and an actuator system operable to move the pair of wheel stops to engage the pair of drive wheels, respectively, to: 1—limit vertical travel of the drive wheel with respect to the body, and 2—move the drive wheel with respect to the body.

In Example 19, the subject matter of Example 18 optionally includes a sensor system connected to the body; and a controller configured to operate the actuator system based on one or more signals from the sensor system.

In Example 20, the subject matter of Example 19 optionally includes wherein the sensor system includes an image capture sensor configured to generate an image capture signal, and wherein the controller is configured to determine a flooring type of a portion of the environment based on the image capture signal, and wherein the controller is configured to operate the actuator based on the determined flooring type.

In Example 21, the subject matter of Example 20 optionally includes a first fiducial connected to the wall; and a second fiducial and a third fiducial connected to the base, the controller configured to navigate the mobile cleaning robot to dock on the base using the first fiducial, the second fiducial, and the third fiducial.

In Example 22, the subject matter of any one or more of Examples 17-21 optionally include wherein the pad engagement system include a pawl connected to the wall, the pawl engageable with the mopping pad of the mobile cleaning robot to release the mopping pad from the mobile cleaning robot when the mobile cleaning robot moves upward with respect to the pad engagement system when the mobile cleaning robot is located at least partially on the base.

In Example 23, the apparatuses or method of any one or any combination of Examples 1-22 can optionally be configured such that all elements or options recited are available to use or select from.