| CPC G05D 1/617 (2024.01) [B25J 9/1676 (2013.01); B25J 9/1697 (2013.01); G05D 1/249 (2024.01)] | 30 Claims |

|
1. A method for operating a robot, comprising:
capturing, by at least one image sensor disposed on the robot, images of a workspace;
capturing data indicative of movement of the robot based on wheel rotations;
capturing, by a LIDAR disposed on the robot, LIDAR data as the robot moves within the workspace, wherein the LIDAR data is indicative of distances from a position of the LIDAR to objects and perimeters surrounding the robot;
generating, in a first session, after finishing an undocking routine, by a processor of the robot, a first iteration of a map of the workspace based on the LIDAR data, wherein the first iteration of the map is a bird-eye's view of at least a portion of the workspace;
generating, by the processor of the robot, additional iterations of the map based on newly captured LIDAR data as the robot moves into new and undiscovered areas, wherein successive iterations of the map depict a larger area of the workspace due to addition of newly discovered areas;
actuating, by the processor of the robot, the robot to drive by providing electric current to electric motors of wheels of the robot;
discriminating, by the processor of the robot, between an object on a floor surface along a path of the robot and the floor surface based on the captured images of the workspace, the robot to execute at least one action based on the object being on the path of the robot, wherein the at least one action comprises driving along a modified path or driving around the object to avoid driving over the object;
actuating, by the processor of the robot, the robot to drive until determining, by the processor of the robot, all areas of the workspace are discovered and included in the map, wherein:
the map is saved for use by the processor during a successive session;
the map is transmitted to an application of a communication device previously paired with the robot; and
the application is configured to display the map on a screen of the communication device;
executing, by the robot, a cleaning function, wherein the cleaning function comprises actuating a motor to control at least one of: a main brush, a side brush, a fan, and a mop, in a same session or successive sessions.
|