Method, system, robot and computer readable medium for mowing a plurality of areas
阅读说明:本技术 对多个区块割刈的方法、系统、机器人及计算机可读介质 (Method, system, robot and computer readable medium for mowing a plurality of areas ) 是由 P.C.巴卢蒂斯 A.比利 B.雅莫奇 于 2015-09-16 设计创作,主要内容包括:本公开提供对多个区块割刈的方法、系统、机器人及计算机可读介质。所述对多个区块进行割刈的方法可以包括:通过生成指示第一区块的第一边界和第二区块的第二边界的数据,训练自主草坪割刈机器人割刈多个区块;通过生成指示用户选择的穿过第一区块的路线的数据,训练机器人横穿第一区块;将指示路线的数据以及指示第一边界和第二边界的数据传送到移动计算设备,以在移动计算设备的显示器上呈现第一边界、第二边界和路线的表示;以及发起割刈操作,机器人在割刈操作中自主地:禁用割刈功能,在禁用割刈功能后,通过遵循路线行进到第二区块,而不对第一区块进行割刈,以及在行进到第二区块后,激活割刈功能以对第二区块进行割刈。(The present disclosure provides methods, systems, robots, and computer readable media for mowing multiple areas. The method of mowing a plurality of areas may comprise: training the autonomous lawn-mowing robot to mow the plurality of areas by generating data indicative of a first boundary of the first area and a second boundary of the second area; training the robot to traverse the first tile by generating data indicative of a user-selected route through the first tile; transmitting data indicative of the route and data indicative of the first boundary and the second boundary to the mobile computing device to present representations of the first boundary, the second boundary, and the route on a display of the mobile computing device; and initiating a mowing operation, wherein the robot autonomously: disabling the mowing function, after disabling the mowing function, traveling to the second area by following the route without mowing the first area, and after traveling to the second area, activating the mowing function to mow the second area.)
1. A method of mowing a plurality of areas, the method comprising:
training the autonomous lawn-mowing robot to mow the plurality of areas by generating data indicative of a first boundary of a first area of the plurality of areas and a second boundary of a second area of the plurality of areas;
training the robot to traverse a first tile of the plurality of tiles by generating data indicative of a user selected route through the first tile of the plurality of tiles;
transmitting data indicative of the route and data indicative of the first boundary and the second boundary to a mobile computing device to present representations of the first boundary, the second boundary, and the route on a display of the mobile computing device; and
initiating a mowing operation in which the robot autonomously:
the function of cutting the mow is forbidden,
after disabling the mowing function, by following the route to a second block of the plurality of blocks without mowing the first block of the plurality of blocks, and
after traveling to a second block of the plurality of blocks, a mowing function is activated to mow the second block of the plurality of blocks.
2. The method of claim 1, further comprising training the robot to traverse a space by generating data indicative of a user-selected traversal route through the space, the space separating a first tile of a plurality of tiles from a second tile of a plurality of tiles,
wherein, during a mowing operation, the robot does not mow the space by following an across route through the space to a second block of the plurality of blocks.
3. The method of claim 2, further comprising training the robot to traverse the space by generating data indicative of one or more user-selected points of a traverse route through the space.
4. The method of claim 1, wherein:
generating data indicative of the first boundary and the second boundary comprises:
while manually navigating the robot along the first boundary, generating data indicative of the first boundary, an
While manually navigating the robot along the second boundary, generating data indicative of the second boundary; and
training the robot to traverse a first block of a plurality of blocks comprises:
generating data indicative of the route as the robot is manually navigated along the route.
5. The method of claim 1, wherein:
generating data indicative of the first boundary and the second boundary comprises:
generating data indicative of the first boundary based on a user selection of the first boundary, an
Generating data indicative of the second boundary based on a user selection of the second boundary.
6. The method of claim 5, further comprising wirelessly receiving, from a mobile computing device, a user selection of the first boundary and a user selection of the second boundary.
7. The method of claim 1, wherein training the robot to mow a plurality of areas comprises: a user selection of a movement pattern covering a first block of the plurality of blocks and a user selection of a movement pattern covering a second block of the plurality of blocks is received.
8. The method of claim 1, wherein training the robot to traverse a first tile of a plurality of tiles comprises: receiving data representing an automatically selected route through a first tile of the plurality of tiles prior to generating the data indicative of the route.
9. The method of claim 1, further comprising wirelessly receiving a user selection of the route from a mobile computing device, wherein the user selection of the route overrides an automatically selected route through a first tile of a plurality of tiles.
10. The method of claim 9, wherein:
wirelessly receiving a user selection of the route comprises: wirelessly receiving a plurality of user-selected points defining the route, the user-selected points including a starting point defining a start of the route and a landing point defining an end of the route, and
data indicative of the route is generated based on the received user-selected point.
11. The method of claim 10, wherein the activation point corresponds to a location of a charging dock operable to charge a power source of the robot.
12. The method of claim 9, wherein wirelessly receiving the user selection of the route comprises: receiving a user instruction to store a current position of the robot.
13. The method of claim 1, wherein training the robot to traverse a first tile of a plurality of tiles comprises: generating data indicative of a route through a first tile of a plurality of tiles while manually navigating the robot along the route.
14. A method of controlling an autonomous lawn mowing robot to mow a plurality of areas, the method comprising:
initiating a training mode in which a user navigates the robot along a first boundary of a first block of a plurality of blocks and along a second boundary of a second block of the plurality of blocks;
communicating data to the robot indicating a user-selected route through a first block of a plurality of blocks to train the robot to traverse the first block of the plurality of blocks such that during a mowing operation, the robot autonomously:
the function of cutting the mow is forbidden,
after disabling the mowing function, by following the route to a second block of the plurality of blocks without mowing the first block of the plurality of blocks, and
activating a mowing function to mow a second block of the plurality of blocks after traveling to the second block; and
presenting representations of the first boundary, the second boundary, and the route on a display of a mobile computing device.
15. The method of claim 14, further comprising wirelessly transmitting instructions to the robot to initiate a mowing operation.
16. The method of claim 14, further comprising transmitting data to the robot indicating a user-selected traversal route through a space separating a first tile of the plurality of tiles from a second tile of the plurality of tiles,
wherein, during a mowing operation, the robot travels to a second block of a plurality of blocks by following the traversal route through the space without mowing the space.
17. The method of claim 14, wherein transmitting data indicative of the route comprises: transmitting a plurality of user-selected points defining the route, wherein the user-selected points include a launch point defining a beginning of the route and a landing point defining an end of the route.
18. A method of controlling an autonomous lawn mowing robot to mow a plurality of areas, the method comprising:
navigating the robot along a first boundary of a first block of a plurality of blocks;
navigating the robot along a second boundary of a second block of the plurality of blocks to train the robot to mow the plurality of blocks;
selecting a route through a first block of a plurality of blocks to train the robot to traverse the first block of the plurality of blocks;
initiating presentation of the first boundary, the second boundary, and the representation of the route on a display of a mobile computing device; and
initiating a mowing operation in which the robot autonomously:
the function of cutting the mow is forbidden,
after disabling the mowing function, by following the route to a second block of the plurality of blocks without mowing the first block of the plurality of blocks, and
after traveling to a second block of the plurality of blocks, a mowing function is activated to mow the second block of the plurality of blocks.
19. The method of claim 18, further comprising selecting a traversal route through a space separating a first block of the plurality of blocks from a second block of the plurality of blocks,
wherein, during a mowing operation, the robot travels to a second block of a plurality of blocks by following the traversal route through the space without mowing the space.
20. The method of claim 18, wherein selecting the route comprises:
operating a mobile computing device to select a plurality of user-selected points defining the route, wherein the user-selected points include a launch point defining a start of the route and a landing point defining an end of the route, and
initiate a transfer of the user-selected point to the robot to train the robot to traverse a first tile of a plurality of tiles.
21. The method of claim 1, further comprising, after transmitting the data indicative of the route and the data indicative of the first boundary and the second boundary to a mobile computing device:
receiving a user selection indicating a modification to the route, an
In response to receiving a user selection indicating the modification, modifying data indicating the route.
22. The method of claim 14, further comprising, after presenting the first boundary, the second boundary, and the representation of the route:
transmitting a user selection indicating a modification to the route to the robot to modify the route through a first tile of a plurality of tiles.
23. The method of claim 18, further comprising, after initiating presentation of the first boundary, the second boundary, and the representation of the route, initiating a transfer of a user selection indicating a modification to the route to modify the route through a first tile of a plurality of tiles.
24. A method, comprising:
initiating a training mode of the autonomous lawn mowing robot; and
presented on a user interface of a user computing device,
indicating the first and second cutable mowing areas and the first and second cutable mowing areas
A map of the space between the swaths can be cut,
a representation of a route through the space along which the robot navigates without mowing during a mowing operation that mows at least one of the first or second mowable areas,
a representation of a boundary of a first mowable zone for which the robot is navigating in a training mode, an
A representation of a boundary of a second mowable area that the robot navigates in training mode.
25. The method of claim 24, wherein presenting the representation of the route comprises: a representation of a starting point defining the beginning of the route along the boundary of the first mowable area and a representation of a landing point defining the end of the route along the boundary of the second mowable area are presented.
26. The method of claim 24, further comprising communicating, by the user computing device, the user-selected schedule to the robot, such that the robot mows at least one of the first or second mowable areas according to the user-selected schedule.
27. The method of claim 26, wherein transmitting the schedule comprises: instructions are communicated to cause the robot to mow a first mowable area at a first time and mow a second mowable area at a second time.
28. The method of claim 24, wherein the map comprises an image representing a first and second mowable area.
29. The method of claim 28, further comprising identifying, by the user computing device from the image, data indicative of a boundary of the first mowable area and indicative of a boundary of the second mowable area.
30. The method of claim 24, wherein the route is a first route, and the method further comprises presenting, on a user interface of a user computing device, a representation of a second route through a first mowable area through which the robot navigates in training mode.
31. The method of claim 24, further comprising presenting, on a user interface of a user computing device, an indicator of a current location of the robot on the map.
32. The method of claim 24, further comprising presenting, on a user interface of a user computing device, an indicator of a location of a charging dock on the map that is configured to charge a battery of the robot.
33. The method of claim 24, further comprising wirelessly transmitting instructions from a user computing device to a robot to cause the robot to initiate a mowing operation in which the robot:
the function of cutting the mow is forbidden,
after disabling the mowing function, sailing through the space and to a second mowable area by following the route, an
After navigating to the second mowable area, activating the mowable function to mow the second mowable area.
34. The method of claim 33, wherein the robot autonomously mows the first mowable area before disabling the mowable function.
35. The method of claim 33, wherein the route also extends through the first mowable area, and the robot autonomously navigates along the route through the first mowable area and through the space by following the route.
36. The method of claim 24, further comprising transmitting, from the user computing device to the robot, data indicative of the user selection of a route through the space.
37. The method of claim 36, wherein the user selection of the route overrides an automatically selected route through the space.
38. The method of claim 24, further comprising transmitting, from the user computing device to the robot, data indicative of a plurality of user selected points defining at least a beginning of the route and an end of the route.
39. The method of claim 24, further comprising, during the training mode, wirelessly transmitting, from the user computing device to the robot, instructions to store a current location of the robot, the current location defining a point along the route, along a boundary of the first mowable area, or along a boundary of the second mowable area.
40. The method of claim 24, further comprising communicating, from the user computing device to the robot, a selection of a movement pattern that covers the first mowable area or a selection of a movement pattern that covers the second mowable area.
41. The method of claim 24, further comprising receiving, by the user computing device from the robot, data indicative of a boundary of the first mowable area, data indicative of a boundary of the second mowable area, and data indicative of the route,
wherein representations of the route, the boundary of the first mowable area, and the boundary of the second mowable area are presented based on data indicative of the boundary of the first mowable area, data indicative of the boundary of the second mowable area, and data indicative of the route.
42. The method of claim 41, further comprising, during the training mode, sending instructions to cause the robot to store, in the training mode, data indicative of the boundary of the first mowable area, data indicative of the boundary of the second mowable area, and data indicative of the route.
43. A system, comprising:
a computing device, comprising:
a user interface;
a memory configured to store instructions; and
a processor to execute the instructions to perform operations comprising:
initiating a training mode of the autonomous lawn mowing robot; and
is presented on the user interface in the form of a graphical representation,
a map indicating the first mowable area, the second mowable area, and a space between the first mowable area and the second mowable area,
a representation of a route through the space along which the robot navigates without mowing during a mowing operation that mows at least one of the first or second mowable areas,
a representation of a boundary of a first mowable zone for which the robot is navigating in a training mode, an
A representation of a boundary of a second mowable area that the robot navigates in training mode.
44. The system of claim 43, wherein the computing device is a smartphone, a pair of smart glasses, or a smart watch.
45. One or more non-transitory computer-readable media storing instructions executable by a processing device and that, when executed, cause the processing device to perform operations comprising:
initiating a training mode of the autonomous lawn mowing robot; and
presented on a user interface of a user computing device,
a map indicating the first mowable area, the second mowable area, and a space between the first mowable area and the second mowable area,
a representation of a route through the space along which the robot navigates without mowing during a mowing operation that mows at least one of the first or second mowable areas,
a representation of a boundary of a first mowable zone for which the robot is navigating in a training mode, an
A representation of a boundary of a second mowable area that the robot navigates in training mode.
46. The system of claim 43, wherein presenting the representation of the route comprises: a representation of a starting point defining the beginning of the route along the boundary of the first mowable area and a representation of a landing point defining the end of the route along the boundary of the second mowable area are presented.
47. The system of claim 43, wherein the route is a first route, and the operations further comprise presenting, on the user interface, a representation of a second route of the robot navigating through a first mowable area in a training mode.
48. The system of claim 43, wherein the operations further comprise presenting, on the user interface, an indicator of a current location of the robot on the map.
49. The system of claim 43, wherein the operations further comprise presenting, on the user interface, an indicator of a location of a charging dock on the map that is configured to charge a battery of the robot.
50. The system of claim 43, wherein the operations further comprise transmitting, from the computing device to the robot, data indicative of the user selection of a route through the space.
51. The system of claim 43, wherein the operations further comprise communicating, from the computing device to the robot, a selection of a movement pattern that covers the first mowable area or a selection of a movement pattern that covers the second mowable area.
52. The one or more non-transitory computer-readable media of claim 45, wherein presenting the representation of the route comprises: a representation of a starting point defining the beginning of the route along the boundary of the first mowable area and a representation of a landing point defining the end of the route along the boundary of the second mowable area are presented.
53. The one or more non-transitory computer-readable media of claim 45, wherein the route is a first route, and the operations further comprise presenting, on a user interface of the user computing device, a representation of a second route through a first mowable area that the robot navigates in a training mode.
54. The one or more non-transitory computer-readable media of claim 45, wherein the operations further comprise presenting, on a user interface of the user computing device, an indicator of a current location of the robot on the map.
55. The one or more non-transitory computer-readable media of claim 45, wherein the operations further comprise presenting, on a user interface of the user computing device, an indicator of a location on the map of a charging dock configured to charge a battery of the robot.
56. The one or more non-transitory computer-readable media of claim 45, wherein the operations further comprise transmitting, from the user computing device to the robot, data indicative of the user selection of a route through the space.
57. The one or more non-transitory computer-readable media of claim 45, wherein the operations further comprise communicating, from the user computing device to the robot, a selection of a movement pattern that covers the first mowable area or a selection of a movement pattern that covers the second mowable area.
58. An autonomous lawn mowing robot comprising:
a drive system for moving the robot around a mowable area;
a cutting system for mowing the mowable area as the robot moves around the mowable area; and
a controller to:
initiating a first mowing operation according to the schedule to mow a first cutable one of the cutable zones, an
And initiating a second mowing operation according to the scheduling to mow a second mowable area in the mowable areas.
59. The robot of claim 58, wherein:
the configuration of the controller initiating a first mowing operation according to the schedule to mow the first mowable area comprises a configuration of initiating a first mowing operation at a first scheduled time and a first scheduled date according to the schedule, and
the configuration of the controller initiating a second mowing operation according to the schedule to mow the second mowable area comprises configuration to initiate a second mowing operation at a second scheduled time and a second scheduled date to initiate a second mowing operation.
60. The robot of claim 58, wherein the controller is further configured to transmit data indicative of a map of the first and second mowable areas to cause a remote user computing device to present a graphical representation of the map.
61. The robot of claim 58, wherein the controller is configured to initiate a third mowing operation to mow a first and second of the mowable areas according to the schedule.
62. The robot of claim 61, wherein the configuration to initiate a third mowing operation to mow the first and second mowable areas according to the schedule comprises:
the following configuration of initiating a third mowing operation according to the schedule:
mowing the first mowable area,
moving through a space separating the first and second cutable swaths without mowing the space, and
and mowing the second mowable area.
63. The robot of claim 58, wherein the configuration of the controller to initiate a second mowing operation to mow a second one of the mowable areas according to the schedule comprises:
the following configuration of initiating a second mowing operation according to the schedule:
moving from the first cutable mowing area to the second cutable mowing area without mowing the first cutable mowing area, and
and mowing the second mowable area.
64. The robot of claim 63, wherein the configuration of the controller to initiate a second mowing operation according to the schedule to move from the first mowable area to the second mowable area without mowing the first mowable area further comprises:
the following configuration of initiating a second mowing operation according to the schedule: the first and second mowable areas are moved across the first mowable area and then across a space separating the first and second mowable areas without mowing the first mowable area and the space to reach the second mowable area.
65. The robot of claim 58, wherein the controller is further configured to store data indicative of a schedule for initiating the first mowing operation and the second mowing operation.
66. The robot of claim 58, wherein the controller is further configured to receive, using a wireless receiver of the robot, data indicative of a schedule for initiating the first mowing operation and the second mowing operation.
67. The robot of claim 66, wherein the controller receiving a configuration of data indicative of a schedule includes receiving a configuration of data from a user computing device.
68. The robot of claim 58, wherein the controller is further configured to initiate a docking operation after the second mowing operation to move the robot across the first mowable swath toward the docking station without mowing the first mowable swath area.
69. The robot of claim 58, wherein the controller is configured to generate the data indicative of the schedule for initiating the first mowing operation and the second mowing operation based on at least one estimate of power consumption for mowing the first mowable area or the estimate of power consumption for mowing the second mowable area.
70. A method, comprising:
presenting, by a user computing device, a graphical representation of a map of a mowable area; and
transmitting, by a user computing device, data indicative of a schedule selected by a user to initiate a mowing operation of an autonomous lawnmower robot, wherein the data indicative of the schedule comprises:
first data that causes the robot to initiate a first of the mowing operations according to a schedule to mow a first of the mowing areas, and
and second data, enabling the robot to initiate a second mowing operation according to the scheduling so as to mow a second mowing area in the mowing-available area.
71. The method of claim 70, wherein the data indicative of the schedule comprises data indicative of a first time and a first date at which a first mowing operation is initiated and a second time and a second date at which a second mowing operation is initiated.
72. The method of claim 70, wherein the data indicative of the schedule includes third data that causes the robot to initiate a third mowing operation according to the schedule to mow a first and second of the mowable areas.
73. The method of claim 72, wherein the third data is configured to cause the robot to initiate a third mowing operation according to a schedule to:
mowing the first mowable area,
moving through a space separating the first and second cutable swaths without mowing the space, and
and mowing the second mowable area.
74. The method of claim 70, wherein communicating first data to cause the robot to initiate a first mowing operation according to a schedule to mow a first and second mowable area comprises:
transmitting second data to cause the robot to initiate a second mowing operation according to a schedule so as to:
moving from the first cutable mowing area to the second cutable mowing area without mowing the first cutable mowing area, and
and mowing the second mowable area.
75. The method of claim 74, wherein communicating second data to cause the robot to initiate a second mowing operation according to the schedule to move from the first mowable area to the second mowable area without mowing the first mowable area comprises:
second data is transmitted to cause the robot to initiate a second mowing operation according to the schedule to move through the first mowable area and then through a space separating the first mowable area from the second mowable area without mowing the first mowable area and the space to reach the second mowable area.
76. A system, comprising:
a computing device, comprising:
a user interface;
a memory configured to store instructions; and
a processor to execute the instructions to perform operations comprising:
presenting a graphical representation of a map of the mowable area using a user interface; and
transmitting data indicative of the schedule selected by the user to initiate a mowing operation of the autonomous lawnmower robot, wherein transmitting the data indicative of the schedule comprises transmitting:
first data that causes the robot to initiate a first of the mowing operations according to a schedule to mow a first of the mowing areas, and
second data that causes the robot to initiate a second one of the mowing operations according to the schedule to mow a second one of the mowing areas.
77. The system of claim 76, wherein the data indicative of the schedule includes data indicative of a first time and a first date to initiate a first mowing operation and a second time and a second date to initiate a second mowing operation.
78. The system of claim 76, wherein communicating data indicative of the schedule comprises communicating third data to cause the robot to initiate a third mowing operation according to the schedule to mow a first and second of the mowable areas.
79. The system of claim 78, configured to cause the robot to initiate a third mowing operation according to a schedule, to:
mowing the first mowable area,
moving through a space separating the first and second cutable swaths without mowing the space, and
and mowing the second mowable area.
80. The system of claim 76, wherein communicating first data to cause the robot to initiate a first mowing operation to mow the first and second mowable areas according to a schedule comprises:
transmitting second data to cause the robot to initiate a second mowing operation according to a schedule, so as to:
moving from the first cutable mowing area to the second cutable mowing area without mowing the first cutable mowing area, and
and mowing the second mowable area.
81. The system of claim 80, wherein communicating second data to cause the robot to initiate a second mowing operation according to the schedule to move from the first mowable area to the second mowable area without mowing the first mowable area comprises:
second data is transmitted to cause the robot to initiate a second mowing operation according to the schedule to move through the first mowable area and then through a space separating the first mowable area from the second mowable area without mowing the first mowable area and the space to reach the second mowable area.
Technical Field
The present invention relates to mowing lawn areas and other areas by autonomous robots, and more particularly to mowing a plurality of non-contiguous areas.
Background
The autonomous robot may be programmed to mow (mow) the lawn area. Care must be taken to keep these robots from mowing outside the intended area. The embedded electrical leads generally define a lawn boundary that the robot is programmed to not cross. Other forms of navigation have also been considered.
Disclosure of Invention
One aspect of the invention features a method of mowing a plurality of spatially separated areas. The method comprises the following steps: training a robot mower (mower) to mow the area, comprising: moving the robotic mower around each area while storing data indicating the position of the boundary of the area relative to a boundary marker; the method further comprises the following steps: training the robotic mower to move through the space separating the areas, comprising: moving the robotic mower to the traverse start point of the first one of the tiles; storing data indicative of the location of the traversal initiation point; moving the robotic mower to a traversal landing point of a second one of the areas; and storing data indicative of the location of the intersecting landing sites. Initiating a mowing operation that causes the robotic mower to autonomously and sequentially: mowing the first one of the areas; moving to the traverse initiation point; moving through the space from the traverse initiation point to the traverse landing point; and then mow the second one of the areas.
In some examples, the method further comprises: training the robotic mower to move through a second space that separates the second area from a third area to be mowed. The method may further comprise: generating a 2D grid of cells representing one or more of the blocks and the space, and assigning values to each of the cells. The value indicates whether a particular bin is mowable. The value may also indicate whether the cell is on one or more of the boundaries. The value may indicate whether the cell is along a path between the traversal start point and the traversal landing point.
In some examples, training the robotic mower to move through the space separating the areas is performed after training the robotic mower to mow a first one of the areas and before training the robotic mower to mow a second one of the areas. Each of the mower and boundary marker may comprise a respective broadband transceiver operating at a frequency of from 5925MHz to 7250 MHz. Training the robotic mower to move through the space may further comprise: storing data indicative of at least one intermediate position along a path between the traversal initiation point and the traversal landing point; and initiating the mowing operation may cause the robotic mower to move along the path through the intermediate position.
In some cases, initiating the mowing operation may cause the robotic mower to mow the first area according to a mowing pattern determined in part by a shape of the first area. For example, the mowing mode may be a grain line mode. Initiating the mowing operation may cause the robotic mower to automatically infer the mowing operation after mowing the second one of the areas without again mowing within the first one of the areas.
In some embodiments, the traversal launch point is on the boundary of the first block. The cross landing site may be on the boundary of the second block.
In some implementations, during the mowing operation, the mower moves in a straight line from the traverse start point through the space to the traverse landing point. During the mowing operation, the robotic mower can automatically disable a mowing function while moving through the space, and can then reactivate the mowing function in the second area.
Another aspect of the invention features a robotic mower having: a wheeled chassis; a motorized weed cutter carried by the wheeled chassis; and a controller. The controller is configured to: storing data indicative of a location of a boundary of each of at least two areas to be mowed, wherein the at least two areas are separated by a space that is not to be mowed; storing data indicative of a traversal path through the space of the pending swath, wherein a traversal start point of a first one of the areas and a traversal landing point of a second one of the areas are located along the traversal path, and controlling the robotic mower to perform a swath operation. In a mowing operation, the robotic mower autonomously and sequentially: mowing the first one of the areas; moving to the traverse initiation point; traversing the space from the traverse initiation point and moving along the traverse path to the traverse landing point; and mowing the second one of the areas.
In some examples, the controller is further configured to: moving the robotic mower in a straight line from the traverse start point to the traverse landing point. The controller may be further configured to: training the robotic mower to move through a second space that separates the second area from a third area to be mowed. The controller may also be configured to: automatically disabling the weed cutter while the robotic mower is moving along the traversal path; and reactivating the weed cutter once the robotic mower is in the second zone. The controller may store data indicative of at least one intermediate position along the traversal path, and wherein the mowing operation causes the robotic mower to move along the traversal path through the intermediate position.
The controller may be configured to: generating a 2D grid of cells representing one or more of the blocks and the space, and assigning values to each of the cells. For example, the value may indicate whether the grid is mowable. The value may further indicate whether the cell is on one or more of the boundaries. The value may also indicate whether the cell is along a path between the traversal start point and the traversal landing point.
In some implementations of the robotic mower, the controller trains the robotic mower to move through the space separating the areas after the robotic mower is trained to mow the first one of the areas and before the robotic mower is trained to mow the second one of the areas. For example, each of the robotic mowers and boundary markers may include a respective broadband transceiver operating at a frequency from 5925MHz to 7250 MHz. The controller may store data indicative of at least one intermediate position along the traversal path, and the mowing operation may include: the robotic mower moves along the path through the intermediate position.
Many lawns are not regularly shaped or formed in a continuous weed field. For example, a lawn may include a plurality of different mowable areas separated by non-mowable areas (e.g., paths or lanes). To mow non-contiguous sections or areas of the lawn, the robot lawnmower described herein navigates between separate lawn areas to mow the areas.
In some examples, the robot includes a controller and a subsystem configured to: the robot is directed to traverse a non-mowable area separating a first lawn area from a second lawn area. In some cases, the robot controls its subsystems so that the cutting system is operable during mowing operations and is inoperable during traversal of non-mowable areas between lawn areas and bypassing lawn areas to travel to another lawn area. Thus, a single robot may be used to attend to two or more physically separated lawn areas.
The system may further allow for automated methods, manual methods, or a selectable combination of automated and manual methods to be employed by the training robot to complete mowing operations, bypass operations, and traverse routes that operate and move between lawn areas. The automated method may include optimization techniques for increasing the efficiency of the mowing operation. Users may also have flexibility for adoptive methods through manual training methods.
Another aspect of the invention features a method of mowing a plurality of areas, the method comprising: training the autonomous lawn-mowing robot to mow the plurality of areas by generating data indicative of a first boundary of a first area of the plurality of areas and a second boundary of a second area of the plurality of areas; training the robot to traverse a first tile of the plurality of tiles by generating data indicative of a user selected route through the first tile; transmitting data indicative of the route and data indicative of the first boundary and the second boundary to a mobile computing device to present representations of the first boundary, the second boundary, and the route on a display of the mobile computing device; and initiating a mowing operation in which the robot autonomously: disabling the mowing function, after disabling the mowing function, not mowing the first block of the plurality of blocks by following the route to a second block of the plurality of blocks, and after travelling to the second block of the plurality of blocks, activating the mowing function to mow the second block of the plurality of blocks.
Another aspect of the invention features a method of controlling an autonomous lawn mowing robot to mow a plurality of areas, the method comprising: initiating a training mode in which a user navigates the robot along a first boundary of a first block of a plurality of blocks and along a second boundary of a second block of the plurality of blocks; communicating data to the robot indicating a user-selected route through a first block of a plurality of blocks to train the robot to traverse the first block of the plurality of blocks such that during a mowing operation, the robot autonomously: the cutting function is forbidden; after disabling the mowing function, by following the route to a second block of the plurality of blocks without mowing a first block of the plurality of blocks, and after travelling to the second block of the plurality of blocks, activating the mowing function to mow the second block of the plurality of blocks; and presenting representations of the first boundary, the second boundary, and the route on a display of a mobile computing device.
Another aspect of the invention features a method of controlling an autonomous lawn mowing robot to mow a plurality of areas, the method comprising: navigating the robot along a first boundary of a first block of a plurality of blocks; navigating the robot along a second boundary of a second tile of the plurality of tiles to train the robot to mow the plurality of tiles; selecting a route through a first block of a plurality of blocks to train the robot to traverse the first block of the plurality of blocks; initiating presentation of the first boundary, the second boundary, and the representation of the route on a display of a mobile computing device; and initiating a mowing operation in which the robot autonomously: disabling the mowing function, after disabling the mowing function, by following the route to travel to a second block of the plurality of blocks without mowing the first block of the plurality of blocks, and after traveling to the second block of the plurality of blocks, activating the mowing function to mow the second block of the plurality of blocks.
Another aspect of the invention features a method that includes: initiating a training mode of the autonomous lawn mowing robot; and presenting, on a user interface of a user computing device, a map indicating the first mowable area, the second mowable area, and a space between the first mowable area and the second mowable area, a representation of a route through the space, a representation of a route along which the robot navigates without mow during a mowable operation that mows at least one of the first mowable area or the second mowable area, a representation of a boundary of the first mowable area that the robot navigates in a training mode, and a representation of a boundary of the second mowable area that the robot navigates in the training mode.
Another aspect of the invention features a system, including a computing device, including: a user interface; a memory configured to store instructions; and a processor to execute the instructions to perform operations comprising: initiating a training mode of the autonomous lawn mowing robot; and rendering on a user interface, a map indicating the first mowable area, the second mowable area, and a space between the first mowable area and the second mowable area, a representation of a route through the space, a representation of a route along which the robot navigates without mow during a mow operation that mows at least one of the first mowable area or the second mowable area, a representation of a boundary of the first mowable area that the robot navigates in a training mode, and a representation of a boundary of the second mowable area that the robot navigates in a training mode.
Another aspect of the invention features one or more non-transitory computer-readable media storing instructions executable by a processing device and that, when executed, cause the processing device to perform operations comprising: initiating a training mode of the autonomous lawn mowing robot; and presenting, on a user interface of a user computing device, a map indicating the first mowable area, the second mowable area, and a space between the first mowable area and the second mowable area, a representation of a route through the space, a representation of a boundary of the first mowable area along which the robot navigates without moking during a mow operation that mows at least one of the first mowable area or the second mowable area, a representation of a boundary of the first mowable area that the robot navigates in a training mode, and a representation of a boundary of the second mowable area that the robot navigates in the training mode.
Another aspect of the invention features an autonomous lawn mowing robot including a drive system for moving the robot around a mowable area; a cutting system for mowing the mowable area as the robot moves around the mowable area; and a controller for: initiating a first mowing operation according to the schedule to mow a first cutable zone of the cutable zones, and initiating a second mowing operation according to the schedule to mow a second cutable zone of the cutable zones.
Another aspect of the invention features a method that includes: presenting, by a user computing device, a graphical representation of a map of a mowable area; and transmitting, by the user computing device, data indicative of a schedule selected by the user to initiate a mowing operation of the autonomous lawnmower robot, wherein the data indicative of the schedule comprises: first data for causing the robot to initiate a first of the mowing operations according to the schedule to mow a first of the mowing areas, and second data for causing the robot to initiate a second mowing operation according to the schedule to mow a second of the mowing areas.
Another aspect of the invention features a system, including a computing device, including: a user interface; a memory configured to store instructions; and a processor to execute the instructions to perform operations comprising: presenting a graphical representation of a map of the mowable area using a user interface; and transmitting data indicative of the schedule selected by the user to initiate a mowing operation of the autonomous lawnmower robot, wherein transmitting the data indicative of the schedule comprises transmitting: first data for causing the robot to initiate a first of the mowing operations according to the schedule to mow a first of the mowing areas, and second data for causing the robot to initiate a second of the mowing operations according to the schedule to mow a second of the mowing areas.
The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims.
Drawings
Fig. 1A is a schematic bottom view of an autonomous lawn mower robot.
Fig. 1B is a schematic side view of the robot of fig. 1A.
Fig. 1C is a block diagram of a control system of the robot of fig. 1A.
Fig. 2 is a schematic diagram of an example set of non-adjacent lawn areas with a traversal region separating the non-adjacent lawn areas.
Fig. 3 is a block diagram of a memory structure of the robot of fig. 2.
Fig. 4A-4B are schematic diagrams illustrating a method of teaching a robot not to border a lawn area.
Fig. 5A-5B are schematic diagrams illustrating a method of teaching a robot a traversal route of a traversal area.
Fig. 6 is a schematic diagram illustrating a method of teaching a robot a bypass route that does not adjoin a lawn area.
Fig. 7A-7B are schematic diagrams of fig. 2 each with a different coverage route for the robot.
Fig. 8 is a screen shot of a computing device installed with an application to control a robot.
FIG. 9 is a flow diagram of an example method of training a robot.
Fig. 10A-10B are flow diagrams of examples for operating a robot.
Like reference symbols in the various drawings indicate like elements.
Detailed Description
The robotic lawnmower described below can mow non-adjacent lawn areas as it autonomously moves around the lawn area, and traverse an intersection area or space that separates the lawn areas. The robot includes a cutting system having cutting blades for cutting weeds on the lawn area as it moves along the lawn path via a drive system having wheels that cause the robot to move ("path" is also referred to herein as "path"). The cutting system is decoupled from the drive system so that the robot can disable the cutting system while the drive system is running. For example, the robot may disable the cutting system while the robot follows a traversal route that traverses a traversal region between lawn areas.
The controller is coupled to a memory storage element that stores the behavior of the robot during various operations and a schedule for mowing non-adjacent lawn areas. In some schedules, the robot may be programmed to mow a target lawn area that is separate from the current position of the robot. The robot may be programmed to move along a bypass route through the lawn area with the cutting system disabled so that the robot can reach the target lawn area without mowing the lawn area between the robot's location and the target lawn area. The memory storage element also stores data corresponding to points or segments along the lawn route, the traversal route, and the bypass route, for example. A combination of manual training by a user or automated path planning by a subroutine programmed on the robot determines the route, and a memory storage element may store data pertaining to the route.
Fig. 1A-1B are a general schematic overview of an example of an autonomous
The
The
The bottom portion of the
Fig. 1B is a schematic side view of an
A
Sensor system 650 (shown in fig. 1C) of
Furthermore, the
The
Referring to fig. 1C, to achieve reliable and robust autonomous movement and cutting, the
The
The electromechanical systems, including the sensing systems, cutting systems, drive systems, navigation systems, power systems, communication systems disclosed and illustrated herein, may include additional elements and features disclosed in U.S. patent application serial No.11/688,213, filed 3/19/2007, entitled "Robot definitions," the disclosure of which is incorporated herein by reference in its entirety.
Typically, many lawns are irregularly shaped or include discrete weed areas. For example, a lawn may include a plurality of different mowable areas separated by non-mowable areas (e.g., paths or lanes). In order to mow multiple non-contiguous sections or areas of lawn, the robotic lawnmower described herein navigates between separate lawn areas to mow multiple areas.
Fig. 2 depicts a schematic view of an example of a
The
Fig. 3 shows an example of training data 303 stored in a memory storage element 900 (depicted in fig. 1C) that the robot may perform to mow a set of non-adjacent lawn areas. To train the
The boundary data 305 is a set of points that define a lawn area. Referring briefly back to FIG. 2, the
The internal boundary data 310 is a set of points that define an obstacle that cannot be traversed. The internal boundary data 310 defines a retention zone within the mowable zone within which the robot lawnmower should not mow. For example, referring back briefly to fig. 2 again, the
The cross-route data 315, the bypass-route data 320, and the lawn-route data 325 each comprise a set of points. Each point stored in the cross-route data 315, the bypass-route data 320, and the lawn-route data 325 includes one or more locations (e.g., X-coordinates, Y-coordinates measured from one or more data points). As will be described in more detail later, one or more data points may correspond to a position relative to a boundary marker placed along the boundary. The location of the boundary marker serves as a reference point with respect to other points stored in the boundary data 305, the traversal route data 315, the bypass route data 320, and the lawn route data 325. The position of the point at this point is typically measured relative to an established coordinate system relative to the boundary markers.
The controller may use the route data 315, 320, 325 to generate one or more paths of movement that the
Referring also to fig. 2, the traverse route data 315 includes traverse route data 315a and traverse route data 315b for the
The traversal start point generally corresponds to an end point of the first lawn route; the intermediate traversal points generally correspond to points in the traversal region (e.g., path or route) traveled by the robot; the traversal landing site generally corresponds to a starting point of the second lawn route. The first lawn route terminates at a first interface between the first lawn area and the traversal region. The first interface is defined by a subset of points of boundary data for the first lawn area.
The middle traversal point within the traversal route corresponds to the point the robot follows while traversing the tile. The intermediate traversal point may further correspond to other changes in the behavior of the system (e.g., drive system, power system, navigation system, etc.) of the robot. For example, the controller may increase the power level at the intermediate traversal point to compensate for changes in the terrain at the intermediate traversal point. The terrain may be more difficult for the robot to traverse after traversing the intermediate traverse point, and increasing the power level of the power system would therefore be beneficial. The intermediate traversal route may include one or more additional intermediate points, which with the intermediate traversal point may define a straight-line geometry that may be represented by two or more points. For example, two intermediate traversal points and one intermediate point may define an arc.
The traversal landing point corresponds to the end of the traversal region and may additionally correspond to the starting point of the second lawn route. The second lawn route may begin at a second interface between the second lawn area and the traversal region. The second interface is defined by a subset of points of boundary data for the second lawn area. The traverse route data 305a includes a traverse start point, a middle traverse point, and a traverse landing point. The traverse route data 305b includes a traverse start point, an intermediate traverse route, and a traverse landing point. The points described above with respect to the traversal route data 305a-b will be explained in more detail herein.
In some cases, it may be desirable to move to a different lawn area without first mowing the lawn area closest to the
The bypass route data includes bypass route data 320a for
During mowing of a particular lawn area, the robotic lawnmower may follow a predetermined path or pattern to complete cutting of weeds in the lawn area. The information about the path is stored as lawn route data. Robot grassThe lawn mower may store separate route data for each of the different lawn areas that allow each to be mowed according to the appropriate pattern for the lawn area. The lawn routing data 325 includes lawn routing data 325a for the
The path behavior data 330 indicates the operation of the robotic system (e.g., drive system, cutting system, navigation system) along the segments of the route defined by the route data 315, 320, 325. For example, some or all of the routes corresponding to lawn route data 325 may be associated with path behavior data 330 instructing the controller to set the power system so that both the drive system and the cutting system are on and weeds are cut while the robot traverses the routes. The portion or all of the routes corresponding to the traversal route data 315 and the bypass data 320 can be associated with path behavior data 330 that sets the drive system to a predetermined drive speed (e.g., slower than mowing when the robot is likely to handle different turns, or faster than during mowing if the robot traverses a long distance) and sets the cutting system to an activation level of 0% (e.g., disabling mowing). The path behavior data 330 may also include instructions for the navigation and/or drive system to navigate the robot by steering and forward driving.
The user may set the scheduling data 335 via a user interface on the mobile application or robot. The user can set a schedule that automates the robot to mow each lawn at different times. For example, the robot may be set to mow the
To generate the route data 315, 320, 325, the robot may be trained manually by a user or automatically. Fig. 4-8 describe aspects of both an automated method and a manual method of training a robot. Specifically, fig. 4A-4B illustrate different examples of generating boundary data 305 that may be used by a controller or a user to generate route data 315, 320, 325. Fig. 5A-5B illustrate different examples of generating the traversal route data 315. FIG. 6 depicts an example of generating bypass route data 320. Fig. 7 shows an example of route data (e.g., lawn route data, traversal route data, and bypass route data) that may be generated based on the results from fig. 4-6. As the route data 315, 320, 325 is generated, the path behavior data 330 may be associated with each of the route data 315, 320, 325, either automatically (described in association with fig. 7) or manually (described in association with fig. 8), such that the appropriate systems of the
Fig. 4A illustrates an
The pose (e.g., P) of the robot may be determined based on signals received from the boundary markers (e.g., signals sent from the robot and reflected by the boundary markers or signals generated by the boundary markers and received by the robot)1、P2). The robot lawnmower determines the distance between the robot and the boundary marker based on the time of flight between the marker and the robot. Thus, based on information from the plurality of boundary markers, the pose of the robot may be determined by triangulation based on the range/orientation information received from each of the boundary markers. Generally, triangulation is the process of determining the absolute or relative position of a point by measuring distances using circular, spherical, or triangular geometries. In one example, triangulation may be based on a least squares algorithm using distance/time-of-flight measurements. In another example, time of flight may be measured indirectly by measuring the phase shift between the signal and receipt of the reflected signal. Alternatively, the distance may be determined by: the method includes the steps of sending a signal from the robot, measuring the time of arrival of the signal at each boundary marker, and using a time difference of arrival technique to estimate the position of the robot.
The
Fig. 4B illustrates a manual process of generating lawn boundary data for the lawn area 102B. The user manually navigates the
In some examples, the data processing unit generates a 2D grid of cells to represent the lawn area. As the robot lawnmower determines its orientation relative to the beacons, the data processing unit determines and saves the coordinates of each cell containing the robot lawnmower during its movement. For each lawn block, each cell in the grid may be assigned a mow patch value indicating whether the cell is understood to be NONMOWABLE (i.e., outside the BOUNDARY), MOWABLE (i.e., inside the BOUNDARY), or BOUNDARY (i.e., on the BOUNDARY). Each bin of the grid may be assigned an (X, Y) coordinate based on the chosen origin (0, 0) bin. Each cell may represent a square block, wherein each cell has a side length between 1cm and 100 cm. For example, the grid may be a grid of cells each 10cm x 10 cm. The robot lawnmower stores the (X, Y) coordinates of each cell traversed by the robot lawnmower along the actual teaching path travelled during the teaching mode. The robot lawnmower can mark the actual teach path as a simple straight line that tracks the path of the robot through a single grid. Alternatively, the robot may mark all cells under the footprint of the robot as bound cells. At the beginning of the teaching, the values of all the bins are initialized to NONMOWABLE (non-secable). The operator presses the start button to start the training process, and then drives around the boundary of the mowing area. As the robot drives, the values of all the cells along its actual taught path are set to bound, the location of the cells being determined by the distance from the beacon. After walking the border, the operator presses a button to end the teaching process. The operator then positions the robot lawnmower anywhere within the mowing block and presses a button, indicating to the robot lawnmower that it is inside the boundary. In response, the system performs flood filling to set the values of all cells inside the BOUNDARY defined by the BOUNDARY cells to mark them as MOWABLE cells to be mowed.
Referring back to fig. 3, the traversal route data 315 instructs the robot to route through traversal regions between separate lawn areas (e.g., the
Fig. 5A-5B illustrate examples of
In some examples, a route between the traversal start point and the traversal landing site may be trained using a process similar to the process used to train the boundary of the lawn. For example, the user may place the robot into a traverse training mode, and the traverse initiation point may be the position of the robot relative to the beacon. The user then pushes the robot along the path, and the robot stores the path in memory. The end of the path is stored as traversing the landing site.
Although in the above examples, the traversal route is trained manually, in some examples, automated processing may be used to train the traversal route. In an automated implementation of training the
In a manual implementation of the
With respect to traversing the
In some examples, as described above, the data processing unit generates a 2D grid of cells to represent the lawn areas, and each cell is indicated as MOWABLE, NONMOWABLE, or BOUNDARY. In such a grid-based system, during the training traversal region, as the robot lawnmower determines its orientation relative to the beacons, the data processing unit determines and saves the coordinates of each grid containing the robot lawnmower during its operation (e.g., while traversing the boundary areas between lawn areas). Each bin of the grid may be assigned an (X, Y) coordinate based on the chosen origin (0, 0) bin. The robot lawnmower stores the (X, Y) coordinates of each cell traversed by the robot lawnmower along the actual teach path traveled during the teach traversal path. The robot lawnmower can mark the actual teach path as a simple straight line that tracks the path of the robot through a single grid of regions. Alternatively, the robot may mark all cells under the footprint of the robot as TRAVERSAL PATH (traversal path) cells.
At the start of the teaching, the values of all the bins between the multiple swath blocks are initialized to NONMOWABLE. The operator presses the start button to start the teaching process and then drives from one lawn area to another. As the robot drives, the values of all the bins along its actual taught path are set to TRAVERSAL PATH, the location of the bins being determined by the distance from the beacon. After walking across the path, the operator presses a button to end the teaching process. During operation, as the robot lawnmower traverses the grid labeled TRAVERSAL PATH, the robot lawnmower disables (turns off) its cutting system.
Fig. 6 is an example of training bypass route data 320a, 320b that respectively provide the controller with data for traversing through
Similarly, to train the bypass route data 320b representing the bypass route 1800, the controller generates a bypass initiation point 1840 that coincides with the
In some examples, as described above, the data processing unit generates a 2D grid of cells to represent the lawn areas, and each cell is indicated as MOWABLE, NONMOWABLE, or BOUNDARY. The area between the lawn areas may have a connection path labeled as the TRAVERSAL PATH cell. In such a grid-based system, during training of the bypass route, as the robot lawnmower determines its orientation relative to the beacons, the data processing unit determines and saves the coordinates of each cell containing the robot lawnmower during its movement (e.g., while traversing through the lawn area). Each cell of the grid may be assigned an (X, Y) coordinate based on the chosen origin (0, 0) cell. The robot lawnmower stores the (X, Y) coordinates of each cell traversed by the robot lawnmower along the actual teach path traveled during the teach bypass path. The robot lawnmower can mark the actual teach path as a simple straight line that tracks the path of the robot through a single grid. Alternatively, the robot may mark all cells under the footprint of the robot as BYPASS cells.
At the start of the teaching, the values of all the bins are MOWABLE, since the bypass route is within the block of lawn to be mowed. The operator presses the start button to start the teaching process and then drives from one orientation within the lawn block to another orientation within the lawn block. As the robot drives, the values of all cells along its actual taught path are set to BYPASS (or MOWABLE/BYPASS), the location of the cells being determined by the distance from the beacon. After walking the bypass route path, the operator presses a button to end the teaching process.
Fig. 7A-7B depict automated generation of lawn route data 325a-c associated with the above generated route data 315, 320 and different path behaviors 330. The lawn route data 325a-c includes a start point, an end point, and a movement pattern. The movement pattern may be, for example, a spiral pattern, a grain row pattern, a meandering pattern, or the like. The user may select a desired movement pattern for each of the lawn areas, and different patterns may be selected with respect to different areas of the same lawn.
In some examples, the yard may be too long to mow on a single charge of the robot lawn mower battery. In these cases, the robot may mow different blocks of the yard at different times, allowing the robot to return to the dock and charge its battery between mow different blocks.
Fig. 7A depicts performing a mowing operation of the
Referring to fig. 7B, at a subsequent time (e.g., after charging), the robot continues to mow the lawn by mowing the block of
As shown throughout this disclosure, a user may monitor and control the robot and various aspects of the training of the robot through applications installed on the computing device, which allows the user to enable functionality such as scheduling, bypass, movement selection, lawn area selection, among other functions, for example. A user may interact with the computing device via an interface feature (e.g., a touch screen display, a keyboard, a voice command, a gesture, or another type of interaction). Although the computing device shown in fig. 8 is a smartphone, in other implementations, the device may be a portable device (e.g., smart glasses, smart watches, laptop computer) or a computing device (e.g., desktop computer).
Fig. 8 illustrates a screen shot of a user interface of the exemplary lawn area shown in fig. 2. The mobile device displays a
As the user continues through additional aspects of the training robot (e.g., boundary training, cross-route training, and bypass route training), additional options from the main menu become available. After the robot has completed the boundary training of the lawn area, the map may include the points of the boundary data 305 (described above). While the traversal start points and the traversal landing points for each traversal region have been described as being automatically set, the user may also be receptive to automatically selected points by selecting one of the points of the boundary shown on the map on the application. After the user selects the traversal start point and the traversal landing point for each traversal region, the controller may further implement an optimization algorithm (e.g., a quasi-newton method) that considers the locations of the traversal start point and the traversal landing point to calculate the shortest route between the traversal start point and the traversal landing point. In some implementations, a user can mark traversable and non-traversable boundaries on a mobile device.
After determining and storing the traversal start point and the traversal end point for the traversal region, the user may initiate automated or manual traversal route training as described in detail previously. Since the mowing pattern may be defined after the lawn route starting point and the lawn route ending point have been defined, the user may also select a mowing pattern for each lawn before the cross-route training is achieved.
The user may further create a schedule for the robot. Each section of the lawn may be dispatched separately. Thus, the robot stores scheduling data for each of the plurality of lawn areas. For example, if the user wants the robot to mow
Fig. 9 is a flow diagram for training a robot to mow first and second lawns having an intersection area separating the first lawn from the second lawn (e.g.,
At step S900, the controller trains the robot to identify the boundary of the first lawn area. The controller implements one or more of the boundary training methods described with respect to fig. 4A-4B to generate points corresponding to the boundary of the first lawn area.
In step S905, the controller trains the robot to identify the boundary of the second lawn area. The controller implements one or more of the boundary training methods described with respect to fig. 4A-4B to generate points corresponding to the boundaries of the second lawn area.
In step S910, the controller trains the traversal starting point. The controller may train the traversal launch point via user selection on the application depicted in fig. 8, or the controller may implement route training (such as depicted in fig. 5) to automatically select the traversal launch point.
In step S915, the controller trains a first lawn route for the first lawn area. The first lawn block route uses a starting point that is typically predetermined by the location of the charging station and uses an ending point determined by the traversal starting point trained in step S910. The controller selects a mowing mode for the first lawn route, which may be a default mode for the geometry of the first lawn area (e.g., a grain row mode). The controller may further set an associated path behavior for the first lawn route.
At step S920, the controller trains the intermediate cross points and the cross landing points for the cross area by implementing the cross course training described with respect to fig. 5A-5B. The controller navigates the robot to the traversal start point selected in step S910 and commands the robot to pass through the traversal region as the controller implements the traversal route training. If an obstacle is present within the traversal region, the controller may generate a middle traversal point as the robot avoids the obstacle. As the robot traverses the traversal area and enters the second lawn, the controller generates a traversal landing spot, and thus completes the training traversal route. The controller may further set an associated path behavior for traversing the route, including: the cutting system of the robot lawnmower is turned off.
In step S925, the controller trains a second lawn route for the second lawn area. The mowing pattern for the second lawn uses a starting point typically determined by the position of the intersecting landing spots trained in step S920. The mowing pattern for the second lawn uses the boundary points typically trained in step S905 and the end points determined by the crossing landing points. In some implementations, the end point is the boundary point furthest from the cross-landing point. The controller selects a second mowing mode for the second lawn route, which may be a default mode for the geometry of the first lawn area (e.g., grain row mode). The controller may further set an associated path behavior for the second lawn route.
At step S930, the controller trains the bypass route to move across the first lawn block from the start point corresponding to the location of the charging station to the beginning of the traverse route. The controller implements the bypass route training described in fig. 7 to generate the points of the bypass route. The controller may further set an associated path behavior for the bypass route.
Fig. 10A-10B are flow diagrams for the mowing operation after the robot has been trained by the method of fig. 9.
Fig. 10A is a flowchart of the mowing operation that mows both the first lawn area and the second lawn area. At step S1000A, the robot activates the cutting system of the robot and mows the first lawn area. The robot follows the first mowing pattern determined in step S915. After the robot has covered at least 100% of the area of the first lawn area, the mowing mode ends at the traversal start point determined in step S910.
At step S1005A, after the robot reaches the traverse start point of the traverse route, the robot disables the cutting system and begins traversing across the traverse area via the traverse route (including the traverse start point, the intermediate traverse point, and the traverse end point) determined in steps S910 and S920. The robot completes the traversal route at the traversal end point determined in step S920.
At step S1010A, after the robot traverses the traversal area, the robot activates the cutting system and begins mowing the second lawn via the second lawn route stored in step S925. The robot follows the second mowing pattern until the robot has covered at least 100% of the area of the second lawn area. The robot then terminates the second lawn route at the end point determined in step S925.
At step S1015A, after the robot reaches the end point of the second lawn route, the robot disables the cutting system and returns to the start point.
Fig. 10B is a flow diagram of a mowing operation that bypasses the first lawn and mows the second lawn area. At step S1000B, the robot disables the mowing function, bypasses the first lawn via the bypass route trained in step S935, traverses the first traversed area via the traversed route trained in steps S910 and S920 to reach the traversed landing spot on the second lawn area.
At step S1005B, after the robot reaches the traversal landing site of the traversal route, the robot activates the cutting system and begins mowing the second lawn via the second lawn route determined in step S925. The robot follows the second mowing pattern until the robot has covered an area of at least 100% of the area of the second lawn area. The robot then terminates the second lawn route at the end point determined in step S925.
At step S1010B, after the robot reaches the end point of the second lawn route, the robot disables the cutting system and returns to the start point.
Although the examples described in this disclosure describe three
While the combination of activation levels of the systems (e.g., 50% activation level of the drive system and 0% activation level of the cutting system during the traversing operation) has been briefly described with respect to various operations, in some implementations, setting the activation levels may be adaptive. For example, as the robot performs a training operation, the robot may have a swath sensor that may detect the stiffness of weeds that the robot passes over. As the robot detects the stiffness of the weeds, it can modify the level of activation of the cutting system during the mowing operation to accommodate this stiffness. If the weeds are rigid, the activation level of the cutting system may be increased. The robot may also include torque or force sensors in the drive system to determine the level of activation for the drive system to drive the wheel modules to traverse various terrain.
While the scheduling data 335 has been described as being set by a user via an application on a computing device, in some implementations, the controller may be configured to: the scheduling data is automatically set. The controller may, for example, calculate the area of each of the non-adjacent lawn areas and the distance of the potential route, and use these calculations to estimate the amount of power consumption associated with the particular route option. The controller may then set the schedule of routes so that the robot can perform each mowing operation with the full charge of power.
While path planning algorithms (e.g., a @, fast-exploring random trees (RRTs), or probabilistic signposts) have been described for training traversal and bypass routes, in other implementations, other algorithms (e.g., Floyd-Warshall algorithm, Johnson algorithm, and Dijkstra algorithm) may be used to reduce computational burden. For example, where the set of points includes only one point or the second set of points includes only one point, a single source or single destination shortest path algorithm (e.g., Dijkstra algorithm) may be used.
While the threshold mowing area coverage has been described as 100% of the area of the lawn, in some implementations, the threshold mowing area coverage may be greater. In other implementations, the threshold mowing area coverage may be greater than, for example, 150% of the area of the
In the manual mode, while the robot has been described as detecting the handle via the sensor system, in some implementations, the user may manually instruct the robot that the handle has been attached. Furthermore, in manual mode with automatic point storage, the robot has been described as storing points per second. In other implementations, the duration of time between storing points may be modified by the user to be more or less. For example, for larger lawn areas, it may be beneficial to store fewer points to reduce the amount of storage space dedicated to lawn route data.
While the
Although not shown for defining virtual characteristics of the
While the cells of the 2D grid used to represent the cells of the lawn have been described as representing square blocks having a side length between 1cm and 100cm, in other implementations, the cells may be larger or smaller depending on the nature. For example, for larger properties (e.g. football pitch, golf course), the side length may be between 1m and 10 m. In some implementations, the user manually sets the side lengths. In other implementations, the controller selects the cell size based on input for a block of lawn or real estate. In other examples, the controller implements an adaptive algorithm that determines the size of the cells based on the geometry of the lawn. For example, for an amorphous lawn shape, a greater number of cells may be used to reflect an amorphous geometry.
In some implementations, the user may select an objective function for the path planning algorithm. For example, rather than requesting a route with a minimum distance between the traversal start point and the traversal landing point, the user may select an objective function that the controller minimizes to select a route with the fewest number of turns, starting and ending at a particular point (e.g., the user pre-defines the traversal start point and the traversal landing point). The user may also select more than one objective function to minimize. For example, the user may want to minimize the number of turns and the distance between the traversal start point and the traversal landing point.
While the training methods for
While the traversal launch site and the traversal landing site have been described as being selected in an automated manner or via a user application installed on the mobile device, in some implementations, boundary markers placed along the boundary may also serve as the traversal launch site and the traversal landing site. In these implementations, the user can place physical markers (e.g., boundary markers) that represent traversal of the start point and traversal of the landing site, as opposed to relying on virtual markers for traversal of the start and landing sites.
While the examples of route segmentation shown in this disclosure focus on straight line segments between points, it should be understood that other curvilinear geometries (e.g., arcs) may be generated by points on the route. Associating a polynomial with two points on the route may, for example, generate a spline geometry connecting the two points. When the robot reaches one of the points of the spline geometry, the controller may correlate the navigation system with the polynomial function so that the robot moves along the spline geometry. For example, for obstacles having a geometry that is not easily defined by an arc, the controller may generate a spline geometry for approximating a path for avoiding the obstacle geometry.
While the first
While the
While the mowing mode of the lawn line has been described as being completed after overlaying the lawn, in some implementations, the controller can be programmed so that the mowing mode of the lawn line ends at the traversal start point. For example, the end point of the lawn route may terminate at the traversal start point of the traversal route.
In some implementations, the return route that the robot takes when inferring the mowing operation can be a composite of a bypass route and a traversal route. For example, referring briefly to fig. 7A, to return to the charging
While the path behavior data 330 has been described as being assigned to the traversal route data 315 and the bypass route data 320 with respect to fig. 7 after the lawn route data 325 has been generated, it should be understood that the path behavior data 330 may be generated as each route data is being generated. For example, as points for traversing route data and bypass route data are being generated, path behavior data associated with these routes may be set such that the drive system is set at a mid-range activation level and the cutting system is disabled. In some implementations, the controller may be programmed to train the bypass route data and the traverse route data to automatically associate those route data with disabling of the cutting system, and train the lawn route data to automatically associate the lawn route data with activation of the cutting system.
Although the lawn paths described herein apply to a continuous lawn, in some implementations, the lawn may be segmented into two separate lawn areas adjacent the lawn area. The robot may be scheduled to mow the lawn area at different times.
While the selection of the traverse start point and the traverse landing point has been described as an optimized automated selection based on the distance of the traverse start point from the traverse landing point, the modification of the traverse start point and the traverse landing point may be a manual operation. For example, a user may browse the boundary data stored for a lawn area on an application of the mobile device and manually select a location for traversing the launch point and traversing the landing point.
While the steps of the flow diagrams shown in fig. 9-10 have been described as occurring in sequence, it should be understood that some of the steps may be performed in a different order. For example, referring to fig. 9, training the traversal route between the first and second areas may result after training the mowing operation for the first and second areas. The training bypass route may be generated before training the second lawn route or training the traversal route.
A number of embodiments of the invention have been described. Nevertheless, it will be understood that various modifications may be made without departing from the spirit and scope of the invention.
- 上一篇:一种医用注射器针头装配设备
- 下一篇:一种草坪机割草高度调节装置