Methods and systems for complete coverage of a surface by an autonomous robot
First Claim
1. A mobile device configured to navigate a surface, the mobile device comprising:
- a movement mechanism configured to move the mobile device among poses on the surface, each of the poses comprising a respective location and orientation of the mobile device on the surface;
a mapping module configured to update a map representing data about the surface, the map associating locations of the surface with one or more properties, the properties being indicative of unexplored, explored, and occupied locations, wherein frontiers indicate respective boundaries between the explored locations and the unexplored locations, and edges indicate respective boundaries between the explored locations and the occupied locations;
a region-covering module configured to cause the movement mechanism to move the mobile device so as to cover regions of the surface and to cause the mapping module to update the map responsive thereto;
an edge-following module configured to cause the movement mechanism to move the mobile device along edges, cause the mapping module to extend the edges and add frontiers that are adjacent one or more of the edges and are discovered as the mobile device moves along the edges, and cause the region-covering module to cause the movement mechanism to move the mobile device so as to cover one or more of the frontiers responsive to discovery thereof during moving the mobile device along the edges.
5 Assignments
0 Petitions
Accused Products
Abstract
A robot configured to navigate a surface, the robot comprising a movement mechanism; a logical map representing data about the surface and associating locations with one or more properties observed during navigation; an initialization module configured to establish an initial pose comprising an initial location and an initial orientation; a region covering module configured to cause the robot to move so as to cover a region; an edge-following module configured to cause the robot to follow unfollowed edges; a control module configured to invoke region covering on a first region defined at least in part based at least part of the initial pose, to invoke region covering on least one additional region, to invoke edge-following, and to invoke region covering cause the mapping module to mark followed edges as followed, and cause a third region covering on regions discovered during edge-following.
120 Citations
21 Claims
-
1. A mobile device configured to navigate a surface, the mobile device comprising:
-
a movement mechanism configured to move the mobile device among poses on the surface, each of the poses comprising a respective location and orientation of the mobile device on the surface; a mapping module configured to update a map representing data about the surface, the map associating locations of the surface with one or more properties, the properties being indicative of unexplored, explored, and occupied locations, wherein frontiers indicate respective boundaries between the explored locations and the unexplored locations, and edges indicate respective boundaries between the explored locations and the occupied locations; a region-covering module configured to cause the movement mechanism to move the mobile device so as to cover regions of the surface and to cause the mapping module to update the map responsive thereto; an edge-following module configured to cause the movement mechanism to move the mobile device along edges, cause the mapping module to extend the edges and add frontiers that are adjacent one or more of the edges and are discovered as the mobile device moves along the edges, and cause the region-covering module to cause the movement mechanism to move the mobile device so as to cover one or more of the frontiers responsive to discovery thereof during moving the mobile device along the edges. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method of operating a mobile robot to navigate a surface, the method comprising:
-
storing, in a computer readable memory, a map associating locations of the surface with one or more properties, the properties being indicative of unexplored, explored, and occupied locations, wherein frontiers indicate respective boundaries between the explored locations and the unexplored locations, and edges indicate respective boundaries between the explored locations and the occupied locations; operating a movement mechanism to move the mobile robot among poses on the surface, each of the poses comprising a respective location and orientation of the mobile robot on the surface, so as to cover regions of the surface; updating the map responsive to operating the movement of the mobile robot to cover the regions of the surface; and operating the movement mechanism to move the mobile robot along edges; updating the map to extend the edges and add frontiers that are adjacent one or more of the edges and are discovered as the mobile robot moves along the edges; and operating the movement mechanism to move the mobile robot so as to cover one or more of the frontiers responsive to discovery thereof during movement of the mobile robot along the edges. - View Dependent Claims (20, 21)
-
Specification