DETECTION OF AND RESPONSE TO OBSTRUCTIONS WITHIN A CLEANING CHANNEL OF AN AUTONOMOUS VACUUM SYSTEM

Disclosed is an autonomous vacuum system that detects and responds to obstructions in a cleaning channel of the vacuum. Pressure sensors repeatedly measure pressure at different points in the cleaning channel, and the autonomous vacuum system analyzes the pressure measurements to determine whether an obstruction is likely present. Such a determination may be made based on, e.g., computed pressure differentials across the pressure sensors, and/or pressures of individual pressures sensors. The autonomous vacuum system can respond to the detection of an obstruction by, for example, performing a change in vacuum speed, such as ramping up to or near a maximum speed, and then decreasing again to a more normal speed.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description
CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority to and the benefit of U.S. Provisional Application No. 63/396,887 filed on Aug. 10, 2022, which is incorporated by reference in its entirety.

TECHNICAL FIELD

This disclosure relates to autonomous cleaning systems. More particularly, this disclosure describes techniques for detection of obstructions within a cleaning channel of the autonomous cleaning system and responses for resolving any detected obstructions.

BACKGROUND

Autonomous cleaning systems, such as autonomous vacuums, spare their users the time and effort of manually cleaning the homes or other spaces. However, conventional autonomous cleaning systems may on occasion encounter difficulties that cause them no longer to be able to function effectively without human intervention. This decreases the faith that the users have in their autonomous cleaning systems' abilities to perform their tasks in the users' absence, increases user frustration, and may require significant user time to resolve the difficulties, thereby defeating much of the purpose of saving user time and effort.

One such difficulty is the clogging of the autonomous cleaning system, which may occur (for example) when the airway or other channel used for vacuuming becomes clogged by debris, such as large, sharp, or sticky portions of objects. This impedes airflow, which reduces cleaning ability of the autonomous cleaning system. Additionally, clogs or other obstructions tend to lead to additional obstructions and thus accumulate over time, eventually causing the autonomous cleaning system to become non-functional.

SUMMARY

An autonomous vacuum system detects and responds to clogs in a cleaning channel of the vacuum. Pressure sensors repeatedly measure pressure at different points in the cleaning channel, and the autonomous vacuum system analyzes the pressure measurements to determine whether an obstruction is likely present. Such a determination may be made based on, e.g., computed pressure differentials across the pressure sensors, and/or pressures of individual pressure sensors. The autonomous vacuum system can respond to the detection of an obstruction by, for example, performing a change in vacuum speed, such as ramping up to or near a maximum speed in order to attempt to clear the cleaning channel, and then decreasing again to a more normal speed.

The features and advantages described in the specification are not all inclusive and, in particular, many additional features and advantages will be apparent to one of ordinary skill in the art in view of the drawings, specification, and claims. Moreover, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter.

BRIEF DESCRIPTION OF THE DRAWINGS

Figure (FIG. 1 is a block diagram of an autonomous vacuum, according to one example embodiment.

FIG. 2 illustrates a spatial arrangement of components of the autonomous vacuum, according to one example embodiment

FIG. 3 is a block diagram of a sensor system of the autonomous vacuum, according to one example embodiment.

FIG. 4 illustrates in more detail the dry channel of FIG. 1, according to some embodiments.

FIG. 5 is a flowchart illustrating steps for detecting and reacting to an obstruction in a cleaning channel, according to some embodiments.

The figures depict various embodiments of the present invention for purposes of illustration only. One skilled in the art will readily recognize from the following discussion that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles of the invention described herein.

DETAILED DESCRIPTION

The figures (FIGS.) and the following description relate to preferred embodiments by way of illustration only. It should be noted that from the following discussion, alternative embodiments of the structures and methods disclosed herein will be readily recognized as viable alternatives that may be employed without departing from the principles of what is claimed.

Reference will now be made in detail to several embodiments, examples of which are illustrated in the accompanying figures. It is noted that wherever practicable similar or like reference numbers may be used in the figures and may indicate similar or like functionality. The figures depict embodiments of the disclosed system (or method) for purposes of illustration only. One skilled in the art will readily recognize from the following description that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles described herein.

Overview

An autonomous vacuum system detects and responds to obstructions in a cleaning channel of the vacuum. Pressure sensors repeatedly measure pressure at different points in the cleaning channel, and the autonomous vacuum system analyzes the pressure measurements to determine whether an obstruction is likely present. Such a determination may be made based on, e.g., computed pressure differentials across the pressure sensors, and/or pressures of individual pressure sensors. The autonomous vacuum system can respond to the detection of an obstruction by, for example, performing a change in vacuum speed in order to attempt to clear the cleaning channel, such as ramping up to or near a maximum speed, and then decreasing again to a more normal speed.

System Architecture

FIG. 1 is a block diagram of an autonomous vacuum 100, according to one example embodiment. The autonomous vacuum 100 in this example may include a chassis 110, a connection assembly 130, and a cleaning head 140. The components of the autonomous vacuum 100 allow the autonomous vacuum 100 to intelligently clean as the autonomous vacuum 100 traverses an area within an environment.

As an overview, the chassis 110 is a rigid body that serves as a base frame for the autonomous vacuum. The chassis 110 comprises a plurality of motorized wheels for driving the autonomous vacuum 100. The chassis 110 hosts a suite of other components for navigating the autonomous vacuum 100, communicating with external devices, and providing notifications, among other operations. The connection assembly 130 serves as a connection point between the cleaning head 140 and the chassis 110. The connection assembly 130 comprises at least a plurality of channels used to direct solvent, water, waste, or some combination thereof between the cleaning head 140 and the chassis 110. The connection assembly 130 also comprises an actuator assembly 138 that controls movement of the cleaning head 140. The cleaning head 140 comprises the one or more brush rollers used to perform cleaning operations. In some embodiments, the architecture of the autonomous vacuum 100 includes more components for autonomous cleaning purposes. Some examples include a mop roller, a solvent spray system, a waste container, and multiple solvent containers for different types of cleaning solvents. The autonomous vacuum 100 may support a variety of cleaning functions, such as vacuuming, sweeping, dusting, mopping, and/or deep cleaning.

The chassis 110 is a rigid base frame for the autonomous vacuum 100. In one or more embodiments, the chassis 110 comprises at least a waste bag 112, a solvent tank 114, a water tank 116, a sensor system 118, a vacuum pump 120, a display 122, a controller 124, and a battery 126. In other embodiments, the chassis 110 may comprise additional, fewer, or different components than those listed herein. For example, one embodiment of the chassis 110 omits the display 122. Another embodiment includes an additional output device, such as a speaker. Still another embodiment may combine the solvent tank 114 and the water tank 116 into a single tank.

The waste bag 112 collects the waste that is accumulated from performing cleaning routines. The waste bag 112 may be configured to collect solid and/or liquid waste. In one or more embodiments, there may be two separate waste bags 112, one for solid waste and one for liquid waste. The waste bag 112 may be temporarily secured within the chassis 110, and capable of removal. As the waste bag 112 is filled, the autonomous vacuum 100 may alert the user to empty the waste bag 112 and/or replace the waste bag 112. In other embodiments, the waste bag 112 can remain in the chassis 110 when emptied. In such embodiments, the chassis 110 may further comprise a drainage channel connected to the waste bag 112 to drain the collected waste. The waste bag 112 may further comprise an absorbent material that soaks up liquid, e.g., to prevent the liquid from sloshing out of the bag during operation of the autonomous vacuum 100.

The solvent tank 114 comprises solvent used for cleaning. The solvent tank 114 comprises at least a chamber and one or more valves for dispensing from the chamber. The solvent is a chemical formulation used for cleaning. Example solvents include dish detergent, soap, bleach, other organic and/or nonorganic solvents. In some embodiments, the solvent tank 114 comprises dry solvent that is mixed with water from the water tank 116 to create a cleaning solution. The solvent tank may be removable, allowing a user to refill the solvent tank 114 when the solvent tank 114 is empty.

The water tank 116 stores water used for cleaning. The water tank 116 comprises at least a chamber and one or more valves for dispensing from the chamber. The water tank 116 may be removable, allowing a user to refill the water tank 116 when the water tank 116 is empty. In one or more embodiments, the water tank 116 comprises a valve located on the bottom of the water tank 116, when the water tank 116 is secured in the chassis 110. When the tank is not secured inside the autonomous vacuum 100 and hence not connected to the chassis, the weight of the water applies a downward force due to gravity, a spring mechanism, or some combination thereof, to keep the valve closed. Once the solvent tank is connected to the autonomous vacuum 100, some protrusion on the chassis 110 applies a counteracting upward force that opens the valve, e.g., by pushing the valve towards an interior of the chamber revealing an outlet permitting water to escape the water tank 116.

The sensor system 118 comprises a suite of sensors for guiding operation of the autonomous vacuum 100. The sensor system 118 uses the sensor data to map the environment and determine and execute cleaning tasks to handle a variety of messes. The sensor system 118 is further described in FIG. 3.

The vacuum pump 120 generates a vacuum force that aids ingestion of waste by the cleaning head 140. In one or more embodiments, to generate the vacuum force, the vacuum pump 120 may comprise one or more fans that rotate to rapidly move air. The vacuum force flows through the waste bag 112, through the connection assembly 130, and to the cleaning head 140.

The display 122 is an electronic display that can present visual content. The display 122 may be positioned on a topside of the autonomous vacuum 100. The display may be configured to notify a user regarding operation of the autonomous vacuum 100. For example, notifications may describe an operation being performed by the autonomous vacuum 100, an error message, service needs, or the status of the autonomous vacuum 100, etc. The display 122 may be an output device that includes a driver and/or screen to drive presentation of (e.g., provides for display) and/or present visual information. The display 122 may include a user interface that allows users to interact with and control the autonomous vacuum. In some embodiments, the display may additionally or alternatively include physical interface buttons along with a touch sensitive interface. The display 122 receives data from the sensor system 118 and may display the data. The data may include renderings of a view (actual image or virtual) of a physical environment, a route of the autonomous vacuum 100 in the environment, obstacles in the environment, and messes encountered in the environment. The data may also include alerts, analytics, and statistics about cleaning performance of the autonomous vacuum 100 and messes and obstacles detected in the environment.

The controller 124 is a general computing device that controls operation of the autonomous vacuum 100. As a general computing device, the controller 124 comprises one or more processors and computer-readable storage media for storing instructions executable by the processors. Operations of the controller 124 include navigating the autonomous vacuum 100, simultaneous localization and mapping of the autonomous vacuum 100, controlling operation of the cleaning head 140, generating notifications to provide to the user via one or more output devices (e.g., the display 122, a speaker, or a notification transmittable to the user's client device, etc.), running quality checks on the various components of the autonomous vacuum 100, controlling docking at the docking station 190, etc.

The controller 124 may control movement of the autonomous vacuum 100. In various embodiments, the controller 124 also monitors and manages environment mapping, sensors, detection of items and users in an environment, task lists and assignments, navigation, surface detection, user interfaces, and other logic associated with operation of the autonomous vacuum 100. The controller 124 connects to one more motors connected to one or more wheels that may be used to move the autonomous vacuum 100 based on sensor data captured by the sensor system 118 (e.g., indicating a location of a mess to travel to). The controller 124 may cause the motors to rotate the wheels forward/backward or turn to move the autonomous vacuum 100 in the environment. Based on surface type detection by the sensor system 118, the controller 124 may modify or alter navigation of the autonomous vacuum 100.

The controller 124 of the actuator assembly 138 may also control cleaning operations. Cleaning operations may include a combination of rotation of the brush rollers, positioning or orienting the cleaning head 140 via the actuator assembly 138, controlling dispersion of solvent, activation of the vacuum pump 120, monitoring the sensor system 118, and other functions of the autonomous vacuum 100.

In controlling rotation of the brush rollers, the controller 124 may connect to one or more motors (e.g., the sweeper motor 146, the mop motor 150, and the side brush motor 156) positioned at the ends of the brush rollers. The controller 124 can toggle rotation of the brush rollers between rotating forward or backward or not rotating using the motors. In some embodiments, the brush rollers may be connected to an enclosure of the cleaning head 140 via rotation assemblies each comprising one or more of direct drive, geared, or belted drive assemblies that connect to the motors to control rotation of the brush rollers. The controller 124 may rotate the brush rollers based on a direction needed to clean a mess or move a component of the autonomous vacuum 100.

In some embodiments, the sensor system 118 determines an amount of pressure needed to clean a mess (e.g., more pressure for a stain than for a spill), and the controller 124 may alter the rotation of the brush rollers to match the determined pressure. The controller 124 may, in some instances, be coupled to a load cell at each brush roller that is used to detect pressure being applied by the brush roller. In another instance, the sensor system 118 may be able to determine an amount of current required to spin each brush roller at a set number of rotations per minute (RPM), which may be used to determine a pressure being exerted by the brush roller. The sensor system 118 may also determine whether the autonomous vacuum 100 is able to meet an expected movement (e.g., if a brush roller is jammed) and adjust the rotation via the controller 124 if not. Thus, the sensor system 118 may optimize a load being applied by each brush roller in a feedback control loop to improve cleaning efficacy and mobility in the environment. The controller 124 may additionally control dispersion of solvent during the cleaning operation by controlling a combination of the sprayer 152, the liquid channels 134, the solvent tank 114, the water tank 116, and turning on/off the vacuum pump 120.

The autonomous vacuum 100 is powered with an internal battery 126. The battery 126 stores and supplies electrical power for the autonomous vacuum 100. In some embodiments, the battery 126 consists of multiple smaller batteries that charge specific components of the autonomous vacuum 100. The battery 126 may implement a battery optimization scheme to efficiently distribute power across the various components. The battery 126 may be rechargeable and can be recharged when the autonomous vacuum 100 is docked at the docking station 190.

The docking station 190 may be connected to an external power source to provide power to the battery 126. External power sources may include a household power source and one or more solar panels. The docking station 190 also may include processing, memory, and communication computing components that may be used to communicate with the autonomous vacuum 100 and/or a cloud computing infrastructure (e.g., via wired or wireless communication). These computing components may be used for firmware updates and/or communicating maintenance status. The docking station 190 may also include other components, such as a cleaning station for the autonomous vacuum 100. In some embodiments, the cleaning station includes a solvent tray that the autonomous vacuum 100 may spray solvent into and roll the roller 144 or the side brush roller 154 in the solvent tray for cleaning. In other embodiments, the autonomous vacuum may eject the waste bag 112 into a container located at the docking station 190 for a user to remove.

The connection assembly 130 is a rigid body that connects the cleaning head 140 to the chassis 110. A four-bar linkage may join the cleaning head 140 to the connection assembly 130. In some embodiments, the connection assembly 130 comprises a dry channel 132, one or more liquid channels 134, one or more pressure sensors 136, and an actuator assembly 138. Channel refers generally to either a dry channel or a liquid channel. The connection assembly 130 may comprise additional, fewer, or different components than those listed herein. For example, one or more sensors of the sensor system 118 may be disposed on the connection assembly 130.

The dry channel 132 is a conduit for conducting dry waste from the cleaning head 140 to the waste bag 112. The dry channel 132 is substantially large in diameter to permit movement of most household waste.

The one or more liquid channels 134 are conduits for conveying liquids between the cleaning head 140 and the chassis 110. There is at least one liquid channel 134 (a liquid waste channel) that carries liquid waste from the cleaning head 140 to the waste bag 112. In some embodiments, the liquid channel 134 carrying liquid waste may be smaller in diameter than the dry channel 132. In such embodiments, the autonomous vacuum 100 sweeps (collecting dry waste) before mopping (collecting liquid waste). There is at least one other liquid channel 134 (a liquid solution channel) that carries water, solvent, and/or cleaning solution (combination of water and solvent) from the chassis 110 to the cleaning head 140 for dispersal to the cleaning environment.

In some operational situations, the autonomous vacuum 100 may encounter debris that will result in an obstruction of a cleaning channel (e.g., the dry channel 132, or a liquid channel 134). An “obstruction” of a channel as described herein may be a complete blockage/clog of the channel that prevents essentially any airflow through the channel, or the presence of a lesser amount of material that prevents consistent optimized flow within the channel (e.g., airflow within the dry channel 132, or liquid flow within a liquid channel 134). Obstructions may include, for example, large portions of debris that do not fit through the channel, sharp portions of debris that become embedded in the wall of the channel, or sticky or viscous debris that adheres to the wall of the channel, or even a condition that reduces airflow, such as a kink within a pliable hose that part of connecting to the channel. This blocks or substantially reduces the normal flow area within the channel, which in turn increases resistance to flow (i.e., airflow within the dry channel 132, and liquid flow within the liquid channel 134) and lessens the degree of flow, reducing the effectiveness of the vacuuming operation. Additionally, due to the reduced flow and the presence of debris within the channel, additional debris tends to be caught and accumulate within the channel, worsening the degree of obstruction. To address these situations, the autonomous vacuum 100 monitors data from pressure 136 sensors and responds accordingly, as described later below with respect to FIG. 4.

The one or more pressure sensors 136 measure pressure in one or more of the channels. The pressure sensors 136 may be located at various positions along the connection assembly 130. The pressure sensors 136 provide pressure measurements to the controller 124 for processing. The pressure sensors 136 are made up of a sensing element and its related circuitry, such as a printed circuit board assembly (PCBA). The pressure sensors 136 may be located at or near the end of ducts in the housing of the channels. The pressure sensors 136 may also be located such that the sensing elements are only indirectly connected to the end of a duct.

In one embodiment, the pressure sensors 136 measure pressure at a plurality of points along a cleaning channel in order to detect any obstructions within the channel. For example, FIG. 4 illustrates in more detail the dry channel 132, according to some embodiments. It is noted that the principles and techniques discussed below apply to liquid channels 134, as well as to the dry channel 132. A first pressure port A 405 is located at a point near one end of the dry channel 132, and a second pressure port B 410 is located at another point near the other end of the dry channel. The pressure ports 405, 410 contain pressure sensors 136 that measure the pressure at their respective points along the dry channel 132. Although only two pressure sensors 136 are discussed herein to illustrate the basic principles of the system, in some embodiments more than two such pressure sensors are used. The use of multiple pressure sensors 136 may provide more accurate results about average pressure, particularly for situations in which the flow patterns can change significantly, or where the channel being measured is large, and provides redundancy in case of obstruction, electrical issues, or other problems with one or more of the pressure sensors. Additionally, pressure differences may be measured in different areas, such as with one set of pressure sensors 136 in a first area (such as near a bin area of the autonomous vacuum 100), and another set of pressure sensors in a second area (such as near the “nose” of the autonomous vacuum).

The autonomous vacuum 100 (e.g., via its controller 124) detects and responds to obstructions based on the readings from the pressure sensors 136 (e.g., at the pressure ports 405). For example, in some embodiments the controller 124 computes a pressure differential between the readings of the sensors 136 at the ports 405, such as between the sensors at ports 405A and 405B, as in FIG. 4. The pressure differential need not be computed based on a single set of readings; in some embodiments, for example, readings from the pressure sensors 136 may be gathered with high frequency (e.g., 20 times per second, and the pressure differential computed based on averages of the readings (e.g., the pressure differential may be computed as the difference between the average pressure at port 405A and the average pressure at port 405B, averaged over an interval such as 5 seconds). Averaging over a sufficiently large interval (e.g., 5 seconds) means that smaller portions of debris will not trigger a false error, resulting in smoother operation. The controller 124 may determine that an obstruction is likely present if the computed pressure differential is above a particular threshold value (e.g., 6 pounds per square inch). In some embodiments, the controller 124 additionally and/or alternatively evaluates the individual pressure readings to determine whether an obstruction is likely present. For example, at least one of the pressure sensors 136 may need to indicate that the pressure is above a certain threshold value (indicating high pressure at that point in the dry channel) before the controller 124 determines that an obstruction is likely present. In some embodiments, both a pressure differential, and an individual pressure reading, must indicate an anomaly before the controller 124 determines that an obstruction is likely present.

The autonomous vacuum 100 (e.g., via its controller 124) takes a remedial action upon a determination that an obstruction is likely present. One form of remedial action is purging: speeding up the vacuum's operation, then slowing it down again, which tends to eject clogged material from the dry channel 132. In some embodiments, when performing a purge the controller 124 speeds up the operation of the autonomous vacuum 100 (e.g., increasing the revolutions per minute (RPM) of the motor, such as the sweeper motor 146, thereby increasing flow speed in the channel) to at or near its top speed (i.e., the highest speed at which the autonomous vacuum may safely operate), then reducing the speed again to a lesser, normal speed, e.g., to the prior speed at which the autonomous vacuum 100 was operating before the purging operation. In some embodiments, the reduction of speed follows a smoothing spline. The controller 124 may measure the pressure differential again after the purging (e.g., 10 seconds after completion of purging) to determine whether the obstructions has been eliminated or whether it persists; if the measured pressure differential indicates that the obstruction persists, then the controller 124 may perform another purge (e.g., a purge performed in the same manner, a more aggressive purge with faster speed changes, or the like). The controller 124 may repeat the measuring and purging until it determines based on the measuring that the obstructions likely has been eliminated, or until it determines (e.g., after some number of failed purging attempts) that the obstructions is likely too significant to eliminate through purging operations.

Another form of remedial action is notification of a user. For example, the display 122 may display an error message (e.g., “Obstructions detected. Please check vacuum internals.”), or the autonomous vacuum may notify the user in other ways, such as playing an alert sound, and/or sending an email or other form of communication to a known address of the user. The autonomous vacuum 100 may notify the user only after determining that the obstructions is likely too significant to eliminate through the vacuum's own purging operations, or it may notify the user immediately when an obstruction is detected, for example.

FIG. 5 is a flowchart illustrating steps performed by the autonomous vacuum 100 (e.g., by its controller 124) for detecting and reacting to an obstruction in a cleaning channel, according to some embodiments. In step 505, the autonomous vacuum 100 computes 505 a pressure differential between two pressure sensors located at different locations within a cleaning channel, such as the dry channel 132 or liquid channel 134.

In step 510, the autonomous vacuum 100 uses the pressure differential to determine that the cleaning channel contains an obstruction that is preventing a consistent, optimized flow within the cleaning channel, with larger pressure differentials more strongly indicating that an obstruction is present. In addition to evaluating the pressure differential, the autonomous vacuum 100 may also consider individual pressure readings when determining whether an obstruction is present.

In step 515, the autonomous vacuum 100 executes a remedial action in response to determining that an obstruction is present within the channel. For example, the autonomous vacuum 100 may perform one or more purge procedures, notify a user of the autonomous vacuum, or the like.

Returning again to FIG. 1, the actuator assembly 138 controls movement and position of the cleaning head 140, relative to the chassis 110. The actuator assembly 138 comprises one or more actuators configured to generate linear and/or rotational movement of the cleaning head 140. Linear movement may include vertical height of the cleaning head 140. Rotational movement may include pitching the cleaning head 140 to varying angles, e.g., to switch between sweeping mode and mopping mode, or to adjust cleaning by the cleaning head 140 based on detected feedback signals. The actuator assembly 138 may include a series of joints that aid in providing the movement to the cleaning head 140.

The actuator assembly 138 includes one or more actuators (henceforth referred to as an actuator for simplicity) and one or more controllers and/or processors (henceforth referred to as a controller for simplicity) that operate in conjunction with the sensor system 118 to control movement of the cleaning head 140. The sensor system 118 collects and uses sensor data to determine an optimal height for the cleaning head 140 given a surface type, surface height, and mess type.

Mess types are the form of mess in the environment, such as smudges, stains, and spills. They also include the type of phase the mess embodies, such as liquid, solid, semi-solid, or a combination of liquid and solid. Some examples of waste include bits of paper, popcorn, leaves, and particulate dust. A mess typically has a size/form factor that is relatively small compared to obstacles in the environment. For example, spilled dry cereal may be a mess but the bowl it came in would be an obstacle. Spilled liquid may be a mess, but the glass that held it may be an obstacle. However, if the glass broke into smaller pieces, the glass shards would then be a mess rather than an obstacle. Further, if the sensor system 118 determines that the autonomous vacuum 100 cannot properly clean up the glass, the glass may again be considered an obstacle, and the sensor system 118 may send a notification to a user indicating that there is a mess that needs user cleaning. The mess may be visually defined in some embodiments, e.g., in terms of visual characteristics. In other embodiments a mess may be defined by particle size or make up. When defined by size, in some embodiments, a mess and an obstacle may coincide. For example, a small interlocking brick piece may be the size of both a mess and an obstacle.

The actuator assembly 138 automatically adjusts the height of the cleaning head 140 given the surface type, surface height, and mess type. Surface types may be the floorings used in the environment and may include surfaces of varying characteristics (e.g., texture, material, absorbency), for example, carpet, wood, tile, rug, laminate, marble, and vinyl. In particular, the actuator controls vertical movement and rotation tilt of the cleaning head 140. The actuator may vertically actuate the cleaning head 140 based on instructions from the sensor system 118. For example, the actuator may adjust the cleaning head 140 to a higher height if the sensor system 118 detects thick carpet in the environment and may adjust the cleaning head 140 to a lower height if the sensor system 118 detects thin carpet. Further, the actuator may adjust the cleaning head 140 to a higher height for a solid waste spill than for a liquid waste spill.

The autonomous vacuum 100 may detect the height of obstructions and/or obstacles, and if an obstruction or obstacle is over a threshold size, the autonomous vacuum 100 may use the collected visual data to determine whether to climb or circumvent the obstruction or obstacle by adjusting the cleaning head 140 height using the actuator assembly 138. In some embodiments, the actuator may set the height of the cleaning head 140 to push larger messes out of the path of the autonomous vacuum 100. For example, if the autonomous vacuum 100 is blocked by a pile of books, the sensor system 118 may detect the obstruction (i.e., the pile of books) and the actuator may move the cleaning head 140 to the height of the lowest book, and the autonomous vacuum 100 may move the books out of the way to continue cleaning an area.

The cleaning head 140 performs cleaning operations to clean an environment. The cleaning head 140 is a rigid body that forms a cleaning cavity 142, where a sweeper roller 144 and a mop roller 148 are disposed. The cleaning head 140 further comprises a sweeper motor 146, a mop motor 150, a sprayer 152, a side brush roller 154, and a side brush motor 156. The cleaning head 140 may be referred to as a “roller housing.” Collectively, the sweeper roller 144, the mop roller 148, and the side brush roller 154 are referred to as the “brush rollers.” Likewise, the “brush motors” include the sweeper motor 146, the mop motor 150, and the side brush motor 156. In some embodiments, each brush roller may be composed of different materials and operate at different times and/or speeds, depending on a cleaning task being executed by the autonomous vacuum 100. The cleaning head 140 may include additional, fewer, or different components than those listed herein.

The sweeper roller 144 sweeps dry waste into the autonomous vacuum 100. The sweeper roller 144 generally comprises one or more brushes attached to a cylindrical core. The sweeper roller 144 rotates to collect and clean messes. The sweeper roller 144 may be used to handle large particle messes, such as food spills or small items like plastic bottle caps. When the sweeper roller 144 is activated by the sweeper motor 146, the brushes act in concert to sweep dry waste towards a dry inlet connected to the dry channel 132. The brushes may be composed of a compliant material to sweep the mostly dry waste. In some embodiments, the sweeper roller 144 may be composed of multiple materials for collecting a variety of waste, including synthetic bristle material, microfiber, wool, or felt.

The mop roller 148 mops the cleaning environment and ingests liquid waste into the autonomous vacuum 100. The mop roller 148 generally comprises fabric bristles attached to a cylindrical core. With the aid of a cleaning solution, the fabric bristles work to scrub away dirt, grease, or other contaminants that may have stuck to the cleaning surface. The mop motor 150 provides rotational force to the mop roller 148. In some embodiments, the mop roller 148 may be composed of multiple materials for collecting a variety of waste, including synthetic bristle material, microfiber, wool, or felt.

In normal sweeping mode, as the air flows from the dry channel 132 and the dry inlet towards the vacuum pump 120, the sweeper roller 144 rotates to move dry waste from the cleaning environment towards the inlet, in order to deposit the dry waste in the waste bag 112. In normal mopping mode, the cleaning head 140 sprays the cleaning solution (water, solvent, or solvent mixed with water) onto the cleaning environment or on top of the mop roller 148 itself. The mop roller 148 contacts the sprayed surface to scrub the surface with the fabric bristles. The vacuum force sucks up or ingests the liquid waste to deposit the liquid waste into the waste bag 112.

The side brush roller 154 sweeps dirt near a side of the cleaning head 140. The side brush roller 154 may rotate along an axis that is orthogonal or perpendicular to the ground. The side brush is controlled by a side brush motor 156. The side brush roller 154 may be shaped like a disk or a radial arrangement of bristles that can push dirt into the path of the sweeper roller 144. In some embodiments, the side brush roller 154 is composed of different materials than the sweeper roller 144 to handle different types of waste and mess. The side brush roller 154 may be concealed to minimize a profile of the cleaning head 140 when the side brush roller 154 is not in use.

The sprayer 152 sprays liquid into the cleaning environment. The sprayer 152 is connected to the liquid solution channel 134 that is connected to the solvent tank 114 and/or the water tank 116. A pump on the chassis 110 can dispense solvent and/or water from the solvent tank 114 and/or the water tank 116. The liquid travels to the sprayer 152, which then has a nozzle for spraying the liquid into the cleaning environment. The sprayer 152 may include a plurality of nozzles, e.g., two disposed on either side of the cleaning head 140.

The cleaning head 140 ingests waste 170 as the autonomous vacuum 100 cleans using the sweeper roller 144 and the side brush roller 154 and sends the waste 170 to the waste bag 112. The waste bag 112 collects and filters waste 170 from the air to send filtered air 175 out of the autonomous vacuum 100 through the vacuum pump 120 as air exhaust 180. The autonomous vacuum 100 may also use solvent 160 combined with pressure from the cleaning head 140 to clean a variety of surface types. The autonomous vacuum 100 may dispense solvent 160 from the solvent tank 114 onto an area to remove dirt, such as dust, stains, and solid waste and/or clean up liquid waste. The autonomous vacuum 100 may also dispense solvent 160 into a separate solvent tray, which may be part of a charging station (e.g., docking station 190), to clean the roller 144 and the side brush roller 154.

In other embodiments, any of the components of the autonomous vacuum can be variably distributed among the chassis 110, the connection assembly 130, and the cleaning head 140.

FIG. 2 illustrates a spatial arrangement of components of the autonomous vacuum 100, according to one example embodiment. The autonomous vacuum 100 includes the cleaning head 140 (as described in relation to FIG. 1) at the front 200 and the chassis 110 at the back 205. The cleaning head 140 may be connected to the chassis 110 via the connection assembly 130 (e.g., a four-bar linkage system). The connection assembly 130 may be connected to one or more actuators of the actuator assembly 138 such that the actuators can control movement of the cleaning head 140 with the four-bar linkage system.

The chassis 110 includes the frame, a plurality of wheels 210, a cover 220, an opening flap 230, and a display 122. The cover 220 is an enclosed hollow structure that covers containers internal to the base that contain solvent and waste (e.g., in the waste bag 112). The opening flap 230 may be opened or closed by a user to access the containers (e.g., to add more solvent, remove the waste bag 112, or put in a new waste bag 112). The cover may also house a subset of the sensors of the sensor system 118 and the actuator assembly 138, which may be configured at a front of the cover 220 to connect to the cleaning head 140. The display 122 is embedded in the cover 220 of the autonomous vacuum 100 and may include physical interface buttons and a touch sensitive interface.

FIG. 3 is a block diagram of the sensor system 118 of the autonomous vacuum 100, according to one example embodiment. The sensor system 118 may receive sensor data from one or more cameras (video/visual), microphones 330 (audio), lidar sensors, infrared (IR) sensors, and/or inertial sensors that capture inertial data (e.g., environmental surrounding or environment sensor data) about an environment for cleaning. The sensor system 118 uses the sensor data to map the environment and determine and execute cleaning tasks to handle a variety of messes. The controller 124 manages operations of the sensor system 118 and its various components. The controller 124 may communicate with one or more client devices 310 via a network 300 to send sensor data, alert a user to messes, or receive cleaning tasks to add to a task list.

The network 300 may comprise any combination of local area and/or wide area networks, using wired and/or wireless communication systems. In one embodiment, the network 300 uses standard communications technologies and/or protocols. For example, the network 300 includes communication links using technologies such as Ethernet, 802.11 (WiFi), worldwide interoperability for microwave access (WiMAX), 3G, 4G, 5G, code division multiple access (CDMA), digital subscriber line (DSL), Bluetooth, Near Field Communication (NFC), Universal Serial Bus (USB), or any combination of protocols. In some embodiments, all or some of the communication links of the network 300 may be encrypted using any suitable technique or techniques.

The client device 310 is a computing device capable of receiving user input as well as transmitting and/or receiving data via the network 300. Though only two client devices 310 are shown in FIG. 3 (i.e., 310A and 310B), in some embodiments, more or fewer client devices 310 may be connected to the autonomous vacuum 100. In one embodiment, a client device 310 is a conventional computer system, such as a desktop or a laptop computer. Alternatively, a client device 310 may be a device having computer functionality, such as a personal digital assistant (PDA), a mobile telephone, a smartphone, a tablet, an Internet of Things (IoT) device, or another suitable device. A client device 310 is configured to communicate via the network 300. In one embodiment, a client device 310 executes an application allowing a user of the client device 310 to interact with the sensor system 118 to view sensor data, receive alerts, set cleaning settings, and add cleaning tasks to a task list for the autonomous vacuum 100 to complete, among other interactions. For example, a client device 310 executes a browser application with an application programming interface (API) that enables interactions between the client device 310 and the autonomous vacuum 100 via the network 300. In another embodiment, a client device 310 interacts with autonomous vacuum 100 through an application running on a native operating system of the client device 310, such as iOS® or ANDROID™.

In some embodiments, the sensor system 118 includes a camera system 320, microphone 330, inertial measurement device (IMU) 340, a glass detection sensor 345, a lidar sensor 350, and lights 355.

The camera system 320 comprises one or more cameras that capture visual data about the environment (e.g., in the form of images and/or video signals). In some embodiments, the camera system 320 includes an IMU (separate from the IMU 340 of the sensor system 118) for capturing visual-inertial data in conjunction with the cameras. The visual data captured by the camera system 320 may be used for image processing.

The microphone 330 captures audio data by converting sound into electrical signals that can be stored or processed by other components of the sensor system 118. The audio data may be processed to identify voice commands for controlling functions of the autonomous vacuum 100. In one embodiment, sensor system 118 uses more than one microphone 330, such as an array of microphones.

The IMU 340 captures inertial data describing the autonomous vacuum's 100 force, angular rate, and orientation. The IMU 340 may include one or more accelerometers, gyroscopes, and/or magnetometers. In some embodiments, the sensor system 118 employs multiple IMUs 340 to capture a range of inertial data that can be combined to determine a more precise measurement of the autonomous vacuum's 100 position in the environment.

The glass detection sensor 345 detects glass in the environment. Glass may be transparent material that may be stained, leaded, laminate or the like and may be part of furniture, flooring, or other objects in the environment (e.g., cups, mirrors, candlesticks, etc.). The glass detection sensor 345 may be an infrared sensor and/or an ultrasound sensor. In some embodiments, the glass detection sensor 345 is coupled with the camera system 320 to remove glare from the visual data when glass is detected. For example, the camera system 320 may have integrated polarizing filters that can be applied to the cameras of the camera system 320 to remove glare. In some embodiments, the glass sensor is a combination of an IR sensor and neural network that determines if an obstacle in the environment is transparent (e.g., glass) or opaque.

The lidar sensor 350 emits pulsed light into the environment and detects reflections of the pulsed light on objects (e.g., obstacles or obstructions) in the environment. Lidar data captured by the lidar sensor 350 may be used to determine a 3D representation of the environment.

The lights 355 are one or more illumination sources that may be used by the autonomous vacuum 100 to illuminate an area around the autonomous vacuum 100. In some embodiments, the lights may be LEDs, e.g., having a static color such as white or green, or changeable colors (such as green of operating, red for stopped and yellow indicating slowing down).

Additional Considerations

The foregoing description of the embodiments of the invention has been presented for the purpose of illustration; it is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Persons skilled in the relevant art can appreciate that many modifications and variations are possible in light of the above disclosure.

Some portions of this description describe the embodiments of the invention in terms of algorithms and symbolic representations of operations on information. These algorithmic descriptions and representations are commonly used by those skilled in the data processing arts to convey the substance of their work effectively to others skilled in the art. These operations, while described functionally, computationally, or logically, are understood to be implemented by computer programs or equivalent electrical circuits, microcode, or the like. Furthermore, it has also proven convenient at times, to refer to these arrangements of operations as modules, without loss of generality. The described operations and their associated modules may be embodied in software, firmware, hardware, or any combinations thereof.

Any of the steps, operations, or processes described herein may be performed or implemented with one or more hardware or software modules, alone or in combination with other devices. In one embodiment, a software module is implemented with a computer program product comprising a computer-readable medium containing computer program code, which can be executed by a computer processor for performing any or all of the steps, operations, or processes described.

Embodiments of the invention may also relate to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, and/or it may comprise a general-purpose computing device selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a non-transitory, tangible computer readable storage medium, or any type of media suitable for storing electronic instructions, which may be coupled to a computer system bus. Furthermore, any computing systems referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability.

Embodiments of the invention may also relate to a product that is produced by a computing process described herein. Such a product may comprise information resulting from a computing process, where the information is stored on a non-transitory, tangible computer readable storage medium and may include any embodiment of a computer program product or other data combination described herein.

Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the invention be limited not by this detailed description, but rather by any claims that issue on an application based hereon. Accordingly, the disclosure of the embodiments of the invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.

Claims

1. An autonomous vacuum system comprising:

a cleaning head;
a chassis having a waste container;
a channel between the cleaning head and the chassis for conducting air, the channel comprising: a first pressure sensor measuring pressure at a first location of the channel; and a second pressure sensor measuring pressure at a second location of the channel; and
a controller device including a memory comprising stored instructions configured to detect and respond to an obstruction within the channel, the stored instructions comprising instructions that when executed cause the controller device to: compute a pressure differential between the first pressure sensor and the second pressure sensor; determine, using the computed pressure differential, that the channel contains an obstruction; and execute a remedial action in response to the determining.

2. The autonomous vacuum system of claim 1, wherein the instructions to execute the remedial action comprise instructions to execute a purge procedure.

3. The autonomous vacuum system of claim 1, wherein the instructions to execute the purge procedure further comprise instructions that when executed cause the controller device to:

increase a speed of the vacuum to a top speed;
reduce the speed of the vacuum following a smooth spline to a normal speed;
re-compute the pressure differential; and
execute repeatedly the instructions to increase, reduce, and re-compute if the re-computed pressure differential is above a threshold.

4. The autonomous vacuum system of claim 3, wherein the instructions to execute the remedial action comprise instructions that when executed cause the controller device to provide a notification to a user of the autonomous vacuum system if the obstruction persists after executing repeatedly the increase, reduce, and re-compute.

5. The autonomous vacuum system of claim 1, wherein the instructions to determine whether the channel contains the obstruction additionally comprises instructions that when executed cause the controller device to determine that a reading of at least one of the first pressure sensor or the second pressure sensor is above a threshold pressure value.

6. A method implemented by an autonomous vacuum system, the method comprising:

computing a pressure differential between a first pressure sensor and a second pressure sensor located within a channel between a cleaning head of the autonomous vacuum system and a chassis of the autonomous vacuum system, wherein the first pressure sensor measures pressure at a first location of the channel, and the second pressure sensor measures pressure at a second location of the channel;
determining, using the computed pressure differential, that the channel contains an obstruction; and
executing a remedial action in response to the determining.

7. The method of claim 6, wherein the remedial action comprises a purge procedure to eliminate the obstruction.

8. The method of claim 6, wherein the purge procedure comprises:

increasing a speed of the vacuum to a top speed;
reducing the speed of the vacuum following a smooth spline to a normal speed;
re-computing the pressure differential; and
repeatedly performing the increasing, reducing, and re-computing responsive to the re-computed pressure differential remaining above a threshold.

9. The method of claim 8, wherein the remedial action comprises providing a notification to a user of the autonomous vacuum system, responsive to determining that the obstruction persists after repeatedly performing the increasing, reducing, and re-computing.

10. The method of claim 6, wherein determining that the channel contains an obstruction additionally comprises determining that a reading of at least one of the first pressure sensor or the second pressure sensor is above a threshold pressure value.

11. A non-transitory computer-readable storage medium storing instructions that when executed by a computer processor of an autonomous vacuum system cause the computer processor to:

compute a pressure differential between a first pressure sensor and a second pressure sensor located within a channel between a cleaning head of the autonomous vacuum system and a chassis of the autonomous vacuum system, wherein the first pressure sensor measures pressure at a first location of the channel, and the second pressure sensor measures pressure at a second location of the channel;
determine, using the computed pressure differential, that the channel contains an obstruction; and
execute a remedial action in response to the determining.

12. The non-transitory computer-readable storage medium of claim 11, wherein the instructions to execute the remedial action comprise a purge procedure.

13. The non-transitory computer-readable storage medium of claim 11, wherein the instructions to execute the purge procedure comprise instructions that when executed cause the computer processor to:

increase a speed of the vacuum to a top speed;
reduce the speed of the vacuum following a smooth spline to a normal speed;
re-compute the pressure differential; and
execute repeatedly the instructions to increase, reduce, and re-compute if the re-computed pressure differential is above a threshold.

14. The non-transitory computer-readable storage medium of claim 13, wherein the instructions to execute the remedial action comprise instructions that when executed cause the computer processor to provide a notification to a user of the autonomous vacuum system if the obstruction persists after executing repeatedly the increase, reduce, and re-compute.

15. The non-transitory computer-readable storage medium of claim 11, wherein the instructions to determine whether the channel contains an obstruction additionally comprises instructions that when executed cause the controller device to determine that a reading of at least one of the first pressure sensor or the second pressure sensor is above a threshold pressure value.

Patent History
Publication number: 20240049933
Type: Application
Filed: Aug 10, 2023
Publication Date: Feb 15, 2024
Inventors: Anshuman Kumar (San Francisco, CA), Karthik Chandrashekaraiah (San Francisco, CA), Vishal Jain (Santa Clara, CA), Nathan Elio Madonia (Mountain View, CA), William George Plummer (London, England), Tristan Pierre Gervais (Sunnyvale, CA), Yuval Karoly (Sunnyvale, CA)
Application Number: 18/232,726
Classifications
International Classification: A47L 9/28 (20060101);