Cleaning robot and operation thereof
Provided is a robot, including: a chassis; a set of wheels coupled to the chassis; a plurality of sensors; a processor; and a non-transitory, machine-readable media storing instructions that when executed by the processor effectuates operations including: establishing, with the processor, a wireless connection with at least one of a computing device, a charging station, and a second robot; capturing, with at least one sensor, spatial data of an environment of the robot; generating or updating, with the processor, a map of the environment based on at least a portion of the spatial data; dividing, with the processor, the map into two or more rooms; storing, with the processor, the map in a memory accessible to the processor during a subsequent work session; and transmitting, with the processor, the map to an application of the computing device, wherein the application is configured to display the map.
1 . An autonomous vacuum cleaning robot, comprising:
a chassis;
a set of drive wheels coupled to the chassis;
a plurality of sensors;
a camera;
a processor; and
a non-transitory, machine-readable media storing instructions that when executed by the processor of the autonomous vacuum cleaning robot effectuates operations comprising:
capturing, with at least one sensor, distance data from of an environment of the robot;
capturing, with the camera disposed on the autonomous vacuum cleaning robot, images of the environment of the autonomous vacuum cleaning robot;
generating or updating, with the processor of the robot, a map of the environment by aligning, with the processor, distance data captured from consecutive positions of the robot within the environment each having a different fields of view, wherein the alignment is based on the overlap of fields of view between the distance data captured from the consecutive positions, and wherein the map of the environment comprises autonomously identified rooms or areas of the environment;
identifying, with the processor of the autonomous vacuum cleaning robot, a traversable transition on a floor surface of the environment;
determining, with the processor of the robot, that the transition is traversable upon activating a mechanism for facilitating a climb of the transition, and
actuating, with the processor of the autonomous vacuum cleaning robot, a component augmenting the operation of the drive wheels of the robot in response to identifying the transition;
storing, with the processor of the autonomous vacuum cleaning robot, the map of the environment in a memory accessible to the processor of the autonomous vacuum cleaning robot during a subsequent work session; and
transmitting through a wireless connection, with the processor of the autonomous vacuum cleaning robot, the map of the environment to an application of the smartphone, wherein the application of the smartphone is configured to display the map of the environment.
2 . The autonomous vacuum cleaning robot of claim 1 , further comprising:
at least one encoder coupled to at least one of the drive wheels, wherein the component augmenting the operation of the drive wheels of the robot is at least an additional wheel that is attached to the chassis with a trailing arm.
3 . The autonomous vacuum cleaning robot of claim 1 , wherein the application of the smartphone is configured to:
receive at least one user input designating: an vacuum suction power, an operational schedule of the autonomous vacuum cleaning robot, a modification to the map of the environment, a new room within the map of the environment, a label for a room, and a number of cleaning passes; and
display a historical report of prior work sessions including: total time to complete a work session and total area coverage during the work session, a autonomous vacuum cleaning robot status, and a battery level.
4 . The autonomous vacuum cleaning robot of claim 3 , wherein the application of the smartphone is further configured to:
receive at least one input designating: an instruction to enter a do not disturb mode, wherein the autonomous vacuum cleaning robot is prevented from cleaning or enacting other actions that may disturb a the user.
5 . The autonomous vacuum cleaning robot of claim 3 , wherein the application of the smartphone is further configured to:
receive at least one input designating an order of rooms to be operated on by the autonomous vacuum cleaning robot.
6 . The autonomous vacuum cleaning robot of claim 1 , wherein the operations further comprise:
establishing, with the processor of the autonomous vacuum cleaning robot, a wireless connection with a home assistant, wherein verbal commands received by the home assistant are transmitted to the autonomous vacuum cleaning robot; and
actuating, with the processor of the robot, the autonomous vacuum cleaning robot to execute the verbal commands received from the home assistant, wherein the possible verbal commands comprise at least an instruction to begin cleaning, an instruction to clean a particular room, and an instruction to clean near a particularly labelled object.
7 . The autonomous vacuum cleaning robot of claim 1 , wherein the application of the smartphone is further configured to display at least a portion of the images of the environment captured by the camera disposed on the robot.
8 . The autonomous vacuum cleaning robot of claim 1 , wherein the operations further comprise:
capturing, with at least one microphone disposed on the autonomous vacuum cleaning robot, acoustic data within the environment, wherein the acoustic data comprises at least acoustics generated by a user; and
actuating, with the processor of the autonomous vacuum cleaning robot, the autonomous vacuum cleaning robot to navigate to a location determined by the user.
9 . The autonomous vacuum cleaning robot of claim 1 , wherein the robot comprises a vacuum.
10 . The autonomous vacuum cleaning robot of claim 1 , wherein the operations further comprise:
determining, with the processor of the autonomous vacuum cleaning robot, a floor type of the floor surface on which the autonomous vacuum cleaning robot is driving based on the data captured by the at least one sensor of the plurality of sensors;
actuating, with the processor of the autonomous vacuum cleaning robot, an adjustment to a vacuum suction power of the robot based on the floor type of the floor surface; and
actuating, with the processor of the autonomous vacuum cleaning robot, a vacuum or a mop of the robot to activate or deactivate based on the floor type of the floor surface.
11 . The autonomous vacuum cleaning robot of claim 1 , wherein the operations further comprise:
determining, with the processor of the autonomous vacuum cleaning robot, a floor type of the floor surface on which the autonomous vacuum cleaning robot is driving based on the data captured by the at least one sensor of the plurality of sensors; and
actuating, with the processor of the autonomous vacuum cleaning robot, an adjustment to a height of a brush of the robot relative to the floor surface based on the floor type of the floor surface.
12 . The autonomous vacuum cleaning robot of claim 1 , wherein the operations further comprise:
inferring, with the processor of the autonomous vacuum cleaning robot, locations within the environment with debris accumulation based on the data captured by the at least one sensor of the plurality of sensors; and
adjusting, with the processor of the autonomous vacuum cleaning robot, a path of the robot based on the locations with debris accumulation.
13 . The autonomous vacuum cleaning robot of claim 1 , wherein the operations further comprise:
inferring, with the processor of the autonomous vacuum cleaning robot, a presence or absence of a user within the environment based on location services on the computing device; and
determining, with the processor of the robot, an operational schedule of the robot based on the presence or the absence of the user within the environment, wherein the processor of the robot actuates the autonomous vacuum cleaning robot to operate when the user is absent from the environment.
14 . The autonomous vacuum cleaning robot of claim 1 , wherein the operations further comprise:
determining, with the processor of the autonomous vacuum cleaning robot, an operational schedule of the autonomous vacuum cleaning robot based on the weather.
15 . The autonomous vacuum cleaning robot of claim 1 , wherein: the application of the smartphone is further configured to:
segment, the map of the environment;
and the application of the smartphone is further configured to receive at least one input designating consent with respect to at least a portion of collected data.
16 . The autonomous vacuum cleaning robot of claim 1 , wherein the operations further comprise:
extracting, with the processor of the autonomous vacuum cleaning robot, features of an object in an captured image;
determining, with the processor of the autonomous vacuum cleaning robot, an object type of the object based on a comparison between the features of the object and features associated with different object types; and
determining, with the processor of the autonomous vacuum cleaning robot, an action of the autonomous vacuum cleaning robot based on the object type of the object, wherein the action comprises at least adjusting a path of the autonomous vacuum cleaning robot to avoid the object.
17 . The autonomous vacuum cleaning robot of claim 16 , wherein the operations further comprise:
marking, with the processor of the robot, the object at a location in the map of the environment corresponding with a location at which the object was encountered by the robot.
18 . The autonomous vacuum cleaning robot of claim 1 , further comprising:
a vacuum for collecting dust and debris; and
a bin for storing the dust and debris, wherein the bin is configured to be emptied manually by a user and automatically by a charging station.
19 . The autonomous vacuum cleaning robot of claim 18 , wherein the application of the smartphone is further configured to receive at least one user input designating a frequency at which the dust and debris stored in the bin is automatically emptied.
20 . The autonomous vacuum cleaning robot of claim 1 , wherein the operations further comprise:
determining, with the processor of the autonomous vacuum cleaning robot, a path of the autonomous vacuum cleaning robot within the environment, wherein the path comprises a repetitive iteration of:
actuating, with the processor of the autonomous vacuum cleaning robot, the robot to traverse a first linear segment;
actuating, with the processor of the autonomous vacuum cleaning robot, the autonomous vacuum cleaning robot to rotate 180 degrees in a first rotation, wherein the first rotation comprises traversing a first distance in a direction perpendicular to the first linear segment after starting the first rotation and before finishing the first rotation;
actuating, with the processor of the autonomous vacuum cleaning robot, the autonomous vacuum cleaning robot to traverse a second linear segment; and
actuating, with the processor of the autonomous vacuum cleaning robot, the autonomous vacuum cleaning robot to rotate 180 degrees in a second rotation, wherein the second rotation comprises traversing a second distance in a direction perpendicular to the second linear segment after starting the second rotation and before finishing the second rotation.