Unloading control method and device, mower and computer readable storage medium

By determining the next unloading point based on the position and offset of the last unloading point in the automatic mowing equipment, the problem of low utilization of the unloading area in the traditional method is solved, and more efficient unloading of the grass slag is achieved.

CN119414843AActive Publication Date: 2025-02-11SHENZHEN MAMMOTION INNOVATION CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202411540782.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-30
Publication Date
2025-02-11
Estimated Expiration
2044-10-30

AI Technical Summary

Technical Problem

Traditional unload control methods lead to lower utilization of unloading areas in automatic mowing equipment, because the volume of grass slag loaded before each unloading is different, resulting in idle or excessive accumulation of multiple unloading points.

Method used

By obtaining the position of the first unloading point and its offset of the mobile robot that completed the unloading operation at the last time, the position of the second unloading point that currently performs the unloading operation is determined, and the mobile robot is controlled to go to this position to perform the unloading operation until the unloading task is completed .

Benefits of technology

The utilization rate of the unloading area is improved, and by reasonably determining the offset, the objects to be unloaded are fully stacked to the area of ​​each unloading point, solving the problem of low utilization rate of the unloading area in traditional methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119414843A_ABST
    Figure CN119414843A_ABST
Patent Text Reader

Abstract

The invention discloses an unloading control method and device, a mower and a computer readable storage medium. The method comprises the steps that the position of a first unloading point where a mobile robot completes unloading operation last time is obtained; according to the position of the first unloading point and the offset, the position of a second unloading point where the mobile robot currently executes unloading operation is determined; and according to the position of the second unloading point, the mobile robot is controlled to go to the position of the second unloading point to execute unloading operation until the unloading task is completed. The method is beneficial to improving the utilization rate of the unloading area.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of automatic control technology, and in particular to an unloading control method, device, lawn mower and computer-readable storage medium. Background Art

[0002] With the development of automatic control technology, automatic mowing equipment, such as automatic lawn mowers and automatic lawn mowing robots, are widely used in people's lives. Automatic mowing equipment is mainly used for lawn mowing, harvesting, and clearing.

[0003] When the automatic mowing equipment is mowing the lawn, the cut grass residue will remain on the lawn. At this time, the grass residue needs to be collected by the grass collecting device of the mobile robot. After the cutting is completed, the mobile robot is controlled to unload the grass residue. When the automatic mowing equipment is mowing a large area of ​​lawn, the mobile robot needs to unload multiple times. The traditional unloading control method sets multiple unloading points and controls the mobile robot to unload at each unloading point in turn.

[0004] However, since the volume of grass residue loaded by the mobile robot before each unloading is different, setting all unloading points in advance may result in multiple unloading points being idle and multiple unloading points being piled up high, resulting in low utilization of the unloading area. Summary of the invention

[0005] In order to solve the above-mentioned problems existing in the prior art, the embodiments of the present application provide an unloading control method, device, lawn mower and computer-readable storage medium. According to the position and offset of the first unloading point where the mobile robot last completed the unloading operation, the position of the second unloading point where the mobile robot is currently performing the unloading operation is determined, thereby controlling the mobile robot to go to the position of the second unloading point to perform the unloading operation until the unloading task is completed. The unloading point of each unloading is determined according to the position and offset of the last unloading, thereby improving the utilization rate of the unloading area.

[0006] In a first aspect, an embodiment of the present application provides an uninstallation control method, including:

[0007] Obtain the position of the first unloading point of the last unloading operation completed by the mobile robot;

[0008] Determining the position of the second unloading point where the mobile robot is currently performing an unloading operation according to the position of the first unloading point and the offset;

[0009] According to the position of the second unloading point, the mobile robot is controlled to go to the position of the second unloading point to perform the unloading operation until the unloading task is completed.

[0010] In a second aspect, an embodiment of the present application provides an unloading control device, the device comprising:

[0011] An acquisition module, used to acquire the position of the first unloading point where the mobile robot completed the unloading operation last time;

[0012] A processing module, configured to determine the position of a second unloading point where the mobile robot is currently performing an unloading operation according to the position of the first unloading point and the offset;

[0013] The control module is used to control the mobile robot to go to the position of the second unloading point to perform the unloading operation according to the position of the second unloading point until the unloading task is completed.

[0014] In a third aspect, an embodiment of the present application provides a lawn mower, the lawn mower comprising: a mowing device, a grass collecting device, a traveling device and a control device; the mowing device is used for mowing, the grass collecting device is used for collecting cut grass residues, the traveling device is used for driving the lawn mower to move, and the control device is used for executing computer program instructions so that the control device performs the following steps:

[0015] Obtaining the position of the first grass unloading point where the lawn mower completed the grass unloading operation last time;

[0016] Determine the position of a second grass unloading point where the lawn mower is currently performing a grass unloading operation according to the position of the first grass unloading point and the grass unloading offset;

[0017] According to the position of the second grass unloading point, the lawn mower is controlled to go to the position of the second grass unloading point to perform the grass unloading operation until the grass unloading task is completed.

[0018] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and the computer program is executed by a processor to implement the method described in the first aspect.

[0019] In a fifth aspect, an embodiment of the present application provides a computer program product, wherein the computer program product includes a computer program, and the computer program is executed by a processor to implement the method described in the first aspect.

[0020] Implementing the embodiments of the present application has the following beneficial effects:

[0021] In an embodiment of the present application, the controller of the mobile robot first obtains the position of the first unloading point where the mobile robot completed the unloading operation last time. Then, the position of the second unloading point where the mobile robot is currently performing the unloading operation is determined based on the position and offset of the first unloading point. Finally, based on the position of the second unloading point, the mobile robot is controlled to go to the position of the second unloading point to perform the unloading operation until the unloading task is completed. Based on this, each time the mobile robot performs an unloading operation, it can determine the position of the unloading point where the unloading operation is currently being performed based on the position and offset of the unloading point where the unloading operation was completed last time. By determining a reasonable offset, the mobile robot can fully stack the objects to be unloaded in the unloading area of ​​each unloading point, thereby solving the problem of low utilization of the unloading area caused by setting all unloading points in advance, and improving the utilization of the unloading area. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.

[0023] Figure 1 A schematic diagram of an application scenario of an unloading control method provided in an embodiment of the present application;

[0024] Figure 2 A flowchart of an unloading control method provided in an embodiment of the present application;

[0025] Figure 3 A schematic diagram of a scenario of an offset determination method provided in an embodiment of the present application;

[0026] Figure 4 A schematic diagram of a scenario of a method for determining an unloading point provided in an embodiment of the present application;

[0027] Figure 5 A schematic diagram of a scenario of a second direction determination method provided in an embodiment of the present application;

[0028] Figure 6 A schematic diagram of an unloading control device provided in an embodiment of the present application;

[0029] Figure 7 A schematic structural diagram of a lawn mower provided in an embodiment of the present application. DETAILED DESCRIPTION

[0030] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0031] The terms "first", "second", "third" and "fourth" etc. in the specification and claims of the present application and the drawings are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but optionally includes steps or units that are not listed, or optionally includes other steps or units inherent to these processes, methods, products or devices.

[0032] Reference to "embodiments" herein means that a particular feature, result, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0033] First, see Figure 1 , Figure 1 Schematic diagram of an application scenario of an unloading control method provided in an embodiment of the present application. Figure 1 The application scenario shown includes an unloading control system, which includes: a mobile robot, a controller of the mobile robot, and a lawn mower.

[0034] In the embodiment of the present application, the controller is an electronic device for receiving, processing, sending and executing instructions, and can interact with the mobile robot to control the mobile robot to go to the corresponding position to perform unloading work, and receive the working status returned by the mobile robot to monitor the unloading work of the mobile robot in real time. The controller can be a processor integrated into the mobile robot for reading, receiving and sending instructions, and executing functions, including: a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor (DSP), etc. This application does not make specific restrictions on this. The controller can also be a server for receiving, sending, storing and executing program execution instructions, including: a rack server, an application server, a cloud server, a virtual private server (VPS), etc. This application does not make specific restrictions on this. When the controller is a server, the controller can interact with the processing chip of the mobile robot to control the mobile robot to perform unloading work through the processing chip of the mobile robot.

[0035] In an embodiment of the present application, the mobile robot is an automated robot that works with a lawn mower. The lawn mower is an intelligent garden tool that can automatically complete lawn mowing, weed cutting, and other tasks in the working area. Optionally, the lawn mower can also be an automatic lawn mower or an automatic lawn mower robot, which is not specifically limited in the present application. The lawn mower is provided with a mowing device, a traveling device, and a control device. The mowing device includes a mowing blade for mowing. The traveling device includes a walking wheel for driving the lawn mower to walk. The control device can be used to execute computer program instructions to control the lawn mower to complete the mowing operation in the working area. The mobile robot can be used to cooperate with the lawn mower to collect the cut grass residues. The mobile robot is equipped with a grass collecting device that can collect the grass residues cut by the lawn mower. When the grass residues in the grass collecting device reach a preset volume, or when the controller of the mobile robot receives an unloading instruction, the controller can control the mobile robot to go to the unloading area to unload the grass residues in the grass collecting device. Optionally, the mobile robot and the lawn mower may be integrated into the same set of equipment, namely, an automatic lawn mowing and unloading robot, thereby integrating the functions of mowing, collecting and unloading lawn. The embodiments of the present application are not limited to this.

[0036] Optionally, the user can remotely control the mobile robot and the lawn mower through a remote control device, which includes: a smart phone, a computer, etc. The user can set the working area of ​​the lawn mower, the unloading area of ​​the mobile robot, etc. on the remote control device. The remote control device communicates with the controller of the mobile robot through radio communication technology, such as the fifth generation technology standard for cellular networks (5G) Wi-Fi, Bluetooth, Ethernet, etc., so that the controller determines the unloading area of ​​the mobile robot. The remote control device can also receive the working status of the mobile robot returned by the controller in real time to monitor the working status of the mobile robot, for example, to monitor the volume of objects to be unloaded, the volume of unloaded objects, etc.

[0037] It should be noted that in the existing unloading control method, all unloading points in the unloading area and the unloading order of each unloading point are usually set in advance, so as to control the mobile robot to go to each unloading point in turn to perform the unloading operation according to the unloading order of each unloading point. However, each time the mobile robot performs the unloading operation, the volume of the objects to be unloaded loaded in the grass collecting device is not the same, which leads to the situation that the area corresponding to the unloading point is not fully utilized and the objects in the unloading point are piled up too high, and the utilization rate of the unloading area is low.

[0038] To this end, applied to the above scenario, in the unloading control method provided in the embodiment of the present application, the controller of the mobile robot obtains the position of the first unloading point at which the mobile robot last completed an unloading operation;

[0039] The controller of the mobile robot determines the position of the second unloading point where the mobile robot is currently performing an unloading operation according to the position of the first unloading point and the offset;

[0040] The controller of the mobile robot controls the mobile robot to go to the position of the second unloading point to perform the unloading operation according to the position of the second unloading point until the unloading task is completed.

[0041] It can be seen that, in the above scenario, the controller of the mobile robot can determine the location of the unloading point for the current unloading operation according to the location and offset of the unloading point for the last unloading operation each time it performs an unloading operation, and control the mobile robot to go to the location of the unloading point for the current unloading operation to perform the unloading operation until the unloading task is completed. By determining the appropriate offset, the area corresponding to each unloading point can be fully stacked with objects to be unloaded, thereby improving the utilization rate of the unloading area.

[0042] See also Figure 2 , Figure 2A flowchart of an unloading control method provided in an embodiment of the present application is provided. The method is applied to the controller of the mobile robot in the above application scenario. The method includes but is not limited to the following steps:

[0043] 201: Obtain the position of the first unloading point of the last unloading operation completed by the mobile robot.

[0044] In an embodiment of the present application, the real-time position of the mobile robot can be sent to the controller of the mobile robot to monitor the motion trajectory of the mobile robot. Before the current unloading operation is performed, the controller of the mobile robot can obtain the position of the first unloading point of the mobile robot at the last unloading operation. Optionally, the position of the first unloading point can be a two-dimensional plane coordinate. For example, when the projection area of ​​the working area on the horizontal plane is a rectangular area, one side of the rectangular area is used as the horizontal axis, and the other side adjacent to the side is used as the vertical axis to establish a two-dimensional plane coordinate system, so as to determine that the coordinates of the first unloading point in the two-dimensional plane coordinate system are the position of the first unloading point. The position of the first unloading point can also be a three-dimensional space coordinate. For example, when the projection area of ​​the working area on the horizontal plane is a rectangular area, one side of the rectangular area is used as the horizontal axis, and the other side adjacent to the side is used as the vertical axis, and the direction perpendicular to the horizontal plane is used as the vertical axis direction to establish a three-dimensional space coordinate system, so as to determine that the coordinates of the first unloading point in the three-dimensional space coordinate system are the position of the first unloading point. This application does not make specific restrictions on this.

[0045] It should be noted that any unloading point after completing the unloading operation is within the preset unloading area, and the preset unloading area can be pre-set according to the working route of the lawn mower. Optionally, the preset unloading area can be located within the working area or outside the working area. Optionally, the preset unloading area can be automatically divided according to the position of the initial unloading point preset by the user and the shape of the preset unloading area. For example, if the preset unloading area is a square, the preset initial unloading point is used as a vertex of the preset unloading area of ​​the square, and the preset unloading area is automatically divided according to the length and width set by the user.

[0046] When the mobile robot last performed an unloading operation at the first unloading point, the unloading objects collected by the mobile robot were stacked in a stacking area corresponding to the first unloading point to unload the objects, wherein the unloading objects may be grass residues cut by a lawn mower, for example.

[0047] Exemplarily, the method may further include:

[0048] If the currently executed uninstallation operation is the first uninstallation operation in the uninstallation task, the position of the preset initial uninstallation point is obtained;

[0049] According to the position of the preset initial unloading point, the mobile robot is controlled to go to the position of the preset initial unloading point to perform the unloading operation.

[0050] In an embodiment of the present application, the position of the preset initial unloading point when the mobile robot performs the unloading operation for the first time can be pre-set according to user needs.

[0051] Specifically, if the controller of the mobile robot cannot obtain the position of the first unloading point where the unloading operation was completed last time, it is determined that the unloading operation currently being performed is the first unloading operation in the unloading task, and the controller of the mobile robot obtains the position of the preset initial unloading point. Then, according to the position of the preset initial unloading point, the mobile robot is controlled to go to the position of the preset initial unloading point to perform the first unloading operation. Thus, when the mobile robot performs the second unloading operation in the unloading task, the controller of the mobile robot can obtain the position of the preset initial unloading point where the unloading operation was completed for the first time.

[0052] 202: Determine the position of a second unloading point where the mobile robot is currently performing an unloading operation according to the position of the first unloading point and the offset.

[0053] In the embodiment of the present application, the offset represents the distance from the position of the first unloading point to the position of the second unloading point. The mobile robot can determine the position of the second unloading point according to the position of the first unloading point and the offset. Optionally, the offset can be preset by the user, that is, the distance between the unloading points corresponding to any two consecutive unloading operations is the preset offset.

[0054] Exemplarily, the offset can also be determined according to the volume of the object to be unloaded during the last unloading process of the mobile robot. Before determining the position of the second unloading point at which the mobile robot is currently performing an unloading operation according to the position of the first unloading point and the offset, the method may further include:

[0055] Determine the unloading area of ​​the object to be unloaded based on the current volume of the object to be unloaded and the preset unloading thickness;

[0056] Based on the unloaded area, the offset is determined.

[0057] In the embodiment of the present application, the preset unloading thickness is the height of the objects to be unloaded stacked at each unloading point relative to the ground.

[0058] Specifically, the controller of the mobile robot can obtain the volume of the collected objects to be unloaded. Then, according to the volume of the objects to be unloaded and the preset unloading thickness, the unloading area corresponding to the objects to be unloaded is determined. The unloading area represents the bottom area of ​​the stacking area corresponding to the second unloading point. Optionally, when the mobile robot stacks the objects to be unloaded into cylindrical objects, such as cylinders, cuboids, and cubes, the controller of the mobile robot can use the ratio of the volume of the objects to be unloaded to the preset unloading thickness as the unloading area corresponding to the objects to be unloaded.

[0059] Furthermore, the controller of the mobile robot can determine the stacking area corresponding to the second unloading point based on the unloading area. For example, when the mobile robot stacks the objects to be unloaded as a cylinder, the controller of the mobile robot can determine the first radius of the bottom circle of the cylinder based on the unloading area. If the radius of the bottom circle of the stacking area corresponding to the first unloading point is the second radius. Then the controller of the mobile robot can use the sum of the first radius and the second radius as the offset between the second unloading point and the first unloading point. It should be noted that this application only uses the example of the mobile robot stacking the objects to be unloaded as a cylinder for explanation. The processing method of the mobile robot stacking the objects to be unloaded into other shapes is similar to the embodiment of this application and will not be repeated here.

[0060] It can be seen that the controller of the mobile robot can determine the unloading area of ​​the object to be unloaded based on the volume of the object to be unloaded and the preset unloading thickness, and then determine the offset between the second unloading point and the first unloading point based on the unloading area. Therefore, the second unloading point currently performing the unloading operation is determined according to the volume of the object to be unloaded, so that the object to be unloaded can make full use of the stacking area corresponding to the second unloading point, thereby improving the utilization rate of the unloading area.

[0061] In a feasible embodiment, determining the offset based on the unloading area may include the following steps, for example:

[0062] Get the mass of the object to be unloaded;

[0063] Determine the target stacking volume required for the objects to be unloaded based on the mass and volume of the objects to be unloaded;

[0064] Based on the target stacking volume, the unloading area is adjusted to obtain the target unloading area of ​​the objects to be unloaded;

[0065] Based on the target unloading area, determining a stacking area for the second unloading point;

[0066] Based on the stacking area of ​​the second unloading point and the position of the first unloading point, an offset is determined.

[0067] It should be noted that the objects to be unloaded loaded in the grass collecting device of the mobile robot may be relatively loose. When unloading the objects to be unloaded at the second unloading point, the mobile robot will squeeze and stack the objects to be unloaded, resulting in a large amount of surplus area in the stacking area corresponding to the second unloading point, and the utilization rate of the unloading area is low. Therefore, in order to make full use of the stacking area corresponding to the second unloading point, in the embodiment of the present application, the controller of the mobile robot can obtain the mass of the objects to be unloaded in the grass collecting device. For example, the grass collecting device of the mobile robot can be provided with a pressure sensor, a gravity sensor, etc. to monitor the mass of the objects to be unloaded. The controller of the mobile robot can obtain the mass of the objects to be unloaded from the above sensors.

[0068] Then, the controller of the mobile robot can determine the density of the objects to be unloaded loaded in the grass collecting device based on the mass and volume of the objects to be unloaded. If the density of the objects to be unloaded does not match the target density, the target stacking volume required for the objects to be unloaded is determined based on the target density and the mass of the objects to be unloaded. Among them, the target density can be preset based on user needs. Furthermore, the controller of the mobile robot can adjust the unloading area according to the target stacking volume to obtain the target unloading area of ​​the objects to be unloaded. For example, when the mobile robot stacks the objects to be unloaded as columns, the ratio of the target stacking volume to the preset unloading thickness can be used as the target unloading area.

[0069] Furthermore, the controller of the mobile robot can determine the stacking area of ​​the second unloading point according to the target unloading area. For example, when the mobile robot stacks the objects to be unloaded as cylinders, the stacking area of ​​the second unloading point can be determined according to the target unloading area and the preset unloading thickness. Finally, the offset can be determined according to the stacking area of ​​the second unloading point and the position of the first unloading point. For example, when the mobile robot stacks the objects to be unloaded as cylinders, the controller of the mobile robot can use the sum of the bottom circle radius of the stacking area corresponding to the first unloading point and the bottom circle radius of the stacking area corresponding to the second unloading point as the offset.

[0070] It can be seen that the controller of the mobile robot can determine the target stacking volume of the objects to be unloaded according to the mass and volume of the objects to be unloaded, thereby adjusting the unloading area based on the target stacking volume to obtain the target unloading area. Then, based on the target unloading area, the stacking area corresponding to the second unloading point is determined. Finally, based on the stacking area corresponding to the second unloading point and the position of the first unloading point, the offset is determined. Thus, according to the mass of the objects to be unloaded, the target stacking volume when the density of the objects to be unloaded is the target density can be determined, so that the mobile robot can make full use of the stacking area corresponding to the second unloading point to unload the objects to be unloaded, thereby improving the utilization rate of the stacking area of ​​the second unloading point, thereby improving the utilization rate of the unloading area.

[0071] In another feasible embodiment, determining the offset based on the unloading area may include, for example:

[0072] Obtain a first stacking area corresponding to a first unloading point;

[0073] Determine a second stacking area adjacent to the first stacking area according to the unloading area;

[0074] Obtaining the flatness of the second stacking area;

[0075] Adjust the second stacking area according to the flatness to obtain a target stacking area;

[0076] Determine the location of the offset point in the target stacking area;

[0077] The offset is determined according to the position of the first unloading point and the position of the offset point.

[0078] It should be noted that, due to the different terrains corresponding to each position in the unloading area, the flatness of the stacking areas corresponding to different unloading points may be different. When the flatness of the stacking area at the unloading point is low, the objects to be unloaded may not be fully unloaded in the stacking area. Therefore, in the embodiment of the present application, the controller of the mobile robot needs to adjust the size of each stacking area according to the flatness of each stacking area.

[0079] Specifically, the controller of the mobile robot first obtains the first stacking area corresponding to the first unloading point. According to the unloading area, a second stacking area adjacent to the first stacking area is determined. For example, Figure 3 As shown, when the mobile robot stacks the objects to be unloaded into a cylinder, the first stacking area corresponding to the first unloading point is the cylindrical area. It can be understood that Figure 3 Only a side view of the cylindrical area is shown. The controller of the mobile robot can determine a second stacking area adjacent to the first stacking area corresponding to the first unloading point according to the unloading area of ​​the object to be unloaded. For example, the diameter of the bottom circle of the second stacking area can be determined according to the unloading area, such as Figure 3 As shown, the diameter of the bottom circle of the second stacking area is D1. According to the diameter D1 of the bottom circle of the second stacking area, the second stacking area adjacent to the first stacking area can be determined.

[0080] Then, the controller of the mobile robot will obtain the flatness of the second stacking area, wherein the flatness of the second stacking area is used to characterize the flatness of the lawn in the second stacking area relative to the horizontal plane. For example, a laser radar is also provided on the mobile robot, and the controller of the mobile robot can emit laser pulses to the second stacking area through the laser radar, and determine the point cloud data of the second stacking area according to the reflected light pulses, wherein the point cloud data includes the spatial position coordinates of each point in the second stacking area. According to the point cloud data of the second stacking area, a terrain model of the second stacking area is constructed. According to the terrain model of the second stacking area, the height change data of the raised area and the height change data of the sunken area in the second stacking area are determined. According to the height change data of the raised area, the volume of the raised area can be determined, and according to the height change data of the sunken area, the volume of the sunken area can be determined. Then, the controller of the mobile robot determines the difference between the volume of the raised area and the volume of the sunken area to obtain the deviation volume. The ratio of the offset volume to the volume of the second stacking area is used as the flatness of the second stacking area. According to the flatness of the second stacking area, the controller of the mobile robot can adjust the second stacking area to determine the target stacking area. Specifically, the controller of the mobile robot may determine the initial stacking volume corresponding to the second stacking area according to the flatness of the second stacking area, that is, the difference between the volume of the second stacking area and the offset volume.

[0081] If the initial stacking volume is not equal to the target stacking volume, it means that all the objects to be unloaded cannot be stacked in the second stacking area. The controller of the mobile robot will determine the diameter of the bottom circle of the target stacking area according to the flatness of the second stacking area and the target stacking volume, such as Figure 3 As shown, the diameter of the bottom circle of the target stacking area is D2. According to the diameter D2, the target stacking area can be determined.

[0082] If the initial stacking volume is equal to the target stacking volume, it means that the second stacking area can stack all the objects to be unloaded, and the controller of the mobile robot determines that the second stacking area is the target stacking area.

[0083] Finally, the controller of the mobile robot determines the position of the offset point in the target stacking area, and uses the distance between the position of the first unloading point and the position of the offset point as the offset. The offset point can be, for example, the intersection of the central axis of the target stacking area and the lawn.

[0084] It can be seen that in the embodiment of the present application, the controller of the mobile robot first obtains the first stacking area corresponding to the first unloading point, and according to the unloading area, the second stacking area adjacent to the first stacking area can be determined. Then, the second stacking area is adjusted according to the flatness of the second stacking area to obtain the target stacking area, and the position of the offset point is determined in the target stacking area. The offset can be determined according to the position of the first unloading point and the position of the offset point. Thus, according to the flatness of the second stacking area, the stacking area corresponding to the second unloading point can be adjusted so that the objects to be unloaded can be completely unloaded in the target stacking area corresponding to the second unloading point without going to the next unloading point, thereby improving the unloading efficiency.

[0085] Further, after determining the offset, the controller of the mobile robot can determine the position of the second unloading point according to the position and offset of the first unloading point. It should be noted that each unloading point is located in the preset unloading area. If the determined second unloading point is located outside the preset unloading area, a new second unloading point needs to be determined according to the position and offset of the first unloading point until the second unloading point is in the preset unloading area.

[0086] Exemplarily, determining the position of the second unloading point where the mobile robot is currently performing an unloading operation according to the position and offset of the first unloading point may include, for example:

[0087] Obtaining a preset unloading area and obtaining a working route of the mobile robot in the working area;

[0088] Determine a first direction corresponding to the working route;

[0089] Determine a position of a first candidate unloading point based on the position of the first unloading point, the first direction, and the offset;

[0090] If the position of the first candidate unloading point is within the preset unloading area, the position of the first candidate unloading point is used as the position of the second unloading point;

[0091] If the position of the first candidate unloading point is outside the preset unloading area, a second direction different from the first direction is determined, and the position of the second candidate unloading point is determined based on the position of the first unloading point, the second direction and the offset, until the position of the second candidate unloading point is within the preset unloading area, and the position of the second candidate unloading point within the preset unloading area is determined as the position of the second unloading point.

[0092] In an embodiment of the present application, the controller of the mobile robot can obtain the working route of the mobile robot in the working area. The working route of the mobile robot in the working area can be preset by the user. Figure 4As shown, the controller of the mobile robot can determine a first direction corresponding to a working route, and the movement route of the mobile robot along the first direction is the working route of the mobile robot in the working area.

[0093] Then, the controller of the mobile robot determines the position of the first candidate unloading point according to the position of the first unloading point, the first direction and the offset. Figure 4 As shown, the first direction at this time is Figure 4 The horizontal right direction. By moving the above offset distance from the position of the first unloading point along the first direction, the position of the first candidate unloading point can be obtained. For example, the coordinates corresponding to the position of the first unloading point are (x1, y1), and when the offset is D, if the first direction is the positive semi-axis direction of the x-axis, the coordinates corresponding to the position of the first candidate unloading point are (x1+D, y1).

[0094] In an optional embodiment, determining the position of the first candidate unloading point based on the position, the first direction, and the offset of the first unloading point may include, for example:

[0095] Moving an offset amount from the position of the first unloading point in a first direction to obtain the position of an initial candidate unloading point;

[0096] If the position of the initial candidate unloading point is within the passable area, the position of the initial candidate unloading point is determined to be the position of the first candidate unloading point;

[0097] If the position of the initial candidate unloading point is located in an inaccessible area, a third direction different from the first direction is determined, and an offset is moved from the position of the first unloading point to the third direction to obtain the position of the target candidate unloading point, until the position of the target candidate unloading point is located in a passable area, and the position of the target candidate unloading point located in the passable area is determined as the position of the first candidate unloading point.

[0098] It should be noted that there may be inaccessible areas in the preset unloading area, such as obstacles, buildings, pools, etc. When the position of the first candidate unloading point determined by the controller of the mobile robot is located in the inaccessible area, the mobile robot cannot reach the area to perform the unloading operation. Therefore, it is necessary to determine the position of the target candidate unloading point until the position of the target candidate unloading point is located in the accessible area.

[0099] Specifically, the controller of the mobile robot moves the offset from the position of the first unloading point to the first direction to obtain the position of the initial candidate unloading point. For example, when the coordinates corresponding to the position of the first unloading point are (x2, y2), the offset is R, and the first direction is the positive semi-axis direction of the x-axis, the coordinates corresponding to the position of the initial candidate unloading point are (x2+R, y2).

[0100] If the position of the initial candidate unloading point is within the passable area, it means that the mobile robot can go to the position of the initial candidate unloading point to perform the unloading operation, and the controller of the mobile robot determines the position of the initial candidate unloading point as the position of the first candidate unloading point.

[0101] If the position of the initial candidate unloading point is located in an inaccessible area, it means that the mobile robot cannot go to the position of the initial candidate unloading point to perform the unloading operation, and the controller of the mobile robot needs to determine a third direction different from the first direction, for example, rotating the first direction counterclockwise by a preset angle to obtain the third direction. Then, the offset is moved from the position of the first unloading point to the third direction to obtain the position of the target candidate unloading point. The processing method of moving the offset from the position of the first unloading point to the third direction to obtain the position of the target candidate unloading point is similar to the processing method of moving the offset from the position of the first unloading point to the first direction to obtain the position of the first candidate unloading point, and will not be repeated here.

[0102] Further, the controller of the mobile robot continues to determine whether the position of the target candidate unloading point is within the passable area, and if so, the position of the target candidate unloading point is used as the position of the first candidate unloading point. Otherwise, the third direction is continuously rotated counterclockwise by a preset angle to obtain a new third direction, and the position of the new target candidate unloading point is determined until the position of the target candidate unloading point is within the passable area, and the position of the target candidate unloading point within the passable area is determined as the position of the first candidate unloading point.

[0103] Therefore, the controller of the mobile robot can determine that all unloading points in the preset unloading area are located in the passable area, so that the mobile robot can go to each unloading point to perform unloading operations, solving the problem that the mobile robot cannot go to the unloading points in the inaccessible area to perform unloading operations and affect subsequent unloading tasks, thereby improving the unloading efficiency.

[0104] It should be noted that each unloading point determined by the controller of the mobile robot needs to be within the preset unloading area. The controller of the mobile robot needs to determine whether the position of the first candidate unloading point is within the preset unloading area. If the position of the first candidate unloading point is within the preset unloading area, the position of the first candidate unloading point is used as the position of the second unloading point.

[0105] If the position of the first candidate unloading point is outside the preset unloading area, the controller of the mobile robot determines a second direction different from the first direction. Figure 4 As shown, the position of the first candidate unloading point determined at this time is outside the preset unloading area. The controller of the mobile robot can determine a second direction different from the first direction, and determine the position of the second unloading point within the preset unloading area according to the second direction.

[0106] Exemplarily, determining a second direction different from the first direction may include, for example:

[0107] Determine the shortest distance from the location of the first unloading point to the boundary of the preset unloading area;

[0108] Rotate the first direction by a preset angle to obtain a first candidate direction;

[0109] Determine the position of the first candidate point in the first candidate direction of the first unloading point according to the shortest distance;

[0110] According to the unloading area, taking the position of the first candidate point as the center of the area, determining a first candidate stacking area corresponding to the first candidate point;

[0111] If the first candidate stacking area is located in the preset unloading area, determining the first candidate direction as the second direction;

[0112] If the first candidate stacking area has an intersection with the boundary of the preset unloading area, the first candidate direction is rotated by the preset angle to obtain the second candidate direction, and the second candidate stacking area is determined according to the second candidate direction until the second candidate stacking area is located in the preset unloading area, and the second candidate direction corresponding to the second candidate stacking area located in the preset unloading area is determined to be the second direction.

[0113] It should be noted that while each unloading point is located within the preset unloading area, in order to ensure that the mobile robot can perform unloading operations at each unloading point, the stacking area corresponding to each unloading point also needs to be located within the preset unloading area.

[0114] Specifically, the controller of the mobile robot first determines the shortest distance from the position of the first unloading point to the boundary of the preset unloading area. Figure 5 As shown, the boundary of the preset unloading area with the shortest distance to the position of the first unloading point is the right boundary, and the shortest distance from the position of the first unloading point to the right boundary of the preset unloading area is d.

[0115] Then, the controller of the mobile robot rotates the first direction by a preset angle to obtain a first candidate direction. Figure 5 As shown, the preset angle is a, and the controller of the mobile robot rotates the first direction counterclockwise by the preset angle a to obtain the first candidate direction. The position of the first candidate point is obtained by moving the above-mentioned shortest distance d from the position of the first unloading point to the first candidate direction, that is, the distance between the position of the first unloading point and the position of the first candidate point is d. According to the unloading area, the first candidate stacking area corresponding to the first candidate point is determined with the position of the first candidate point as the center of the area. Figure 5 As shown, the shape of the first candidate stacking area is a circle, and the controller of the mobile robot will determine the first candidate stacking area according to the unloading area with the position of the first candidate point as the center of the circle.

[0116] If the first candidate stacking area is located in the preset unloading area, the first candidate direction is determined to be the second direction. Figure 5 As shown, if the first candidate stacking area corresponding to the first candidate point is located in the preset unloading area, the first candidate direction is determined to be the second direction.

[0117] If the first candidate stacking area intersects with the boundary of the preset unloading area, the first candidate direction is further rotated counterclockwise by a preset angle to obtain a second candidate direction. The second candidate stacking area corresponding to the second candidate point is determined according to the second candidate direction until the second candidate stacking area is located within the preset unloading area, and the second candidate direction is determined to be the second direction. The processing method for determining the second candidate stacking area corresponding to the second candidate point according to the second candidate direction is similar to the processing method for determining the first candidate stacking area of ​​the first candidate point in the above embodiment, and will not be repeated here.

[0118] It should be noted that since the distance between the position of the first candidate point and the position of the first unloading point is the shortest distance from the position of the first unloading point to the boundary of the preset unloading area, after rotating by the preset angle, the first candidate point must be within the preset unloading area. Therefore, the first candidate stacking area can only be located within the preset unloading area or have an intersection with the boundary of the preset unloading area, and will not be located outside the preset unloading area.

[0119] Therefore, in an embodiment of the present application, the mobile robot can determine a second direction different from the first direction, and thus can determine a second unloading point located in the preset unloading area according to the second direction, so that each unloading point is located in the preset unloading area while also making full use of the preset unloading area, thereby improving the utilization rate of the unloading area.

[0120] In a possible embodiment, the preset angle may be, for example, 90 degrees. For example, when the preset unloading area is a rectangular area, a coordinate system is established with the lower left vertex of the preset unloading area as the origin, a side corresponding to the length of the preset unloading area as the horizontal axis, and a side corresponding to the width adjacent to the side as the vertical axis. When the coordinates corresponding to the position of the first unloading point are (x0, y0), and the offset is k, the coordinates corresponding to the position of the first candidate unloading point are (x0+k, y0). If (x0+k) is less than or equal to the length of the preset unloading area, the position of the first candidate unloading point is used as the position of the second unloading point.

[0121] If (x0+k) is greater than the length of the preset unloading area, the coordinates corresponding to the position of the second candidate unloading point are determined to be (x0, y0+k). If (y0+k) is less than or equal to the width of the preset unloading area, the position of the second candidate unloading point is determined to be the position of the second unloading point.

[0122] If (y0+k) is greater than the width of the preset unloading area, it means that the number of unloading points in the preset unloading area has reached the maximum number and a new unloading point cannot be determined.

[0123] Thus, the unloading points in the preset unloading area can be concentrated in each row in the preset unloading area, so as to make full use of the preset unloading area and improve the utilization rate of the unloading area. In addition, each time, only the first direction needs to be rotated 90 degrees without multiple rotation angles, which reduces the amount of algorithm calculation and improves the efficiency of determining the unloading point.

[0124] Further, the controller of the mobile robot moves the offset from the position of the first unloading point to the second direction to obtain the position of the second candidate unloading point. If the position of the second candidate unloading point is located in the preset unloading area, the position of the second candidate unloading point is determined to be the position of the second unloading point. If the position of the second candidate unloading point is outside the preset unloading area, the second direction is further rotated by a preset angle to obtain a new position of the second candidate unloading point, until the position of the new second candidate unloading point is located in the preset unloading area, and the position of the second candidate unloading point located in the preset unloading area is determined to be the position of the second unloading point.

[0125] It can be seen that the controller of the mobile robot can determine the first direction corresponding to the working route according to the working route of the mobile robot in the working area, and can determine the position of the first candidate unloading point based on the position of the first unloading point, the first direction and the offset. When the position of the first candidate unloading point is within the preset unloading area, the position of the first candidate unloading point is used as the position of the second unloading point. When the position of the first candidate unloading point is outside the preset unloading area, a second direction different from the first direction is determined, and the position of the second candidate unloading point is determined according to the second direction until the position of the second candidate unloading point is within the preset unloading area, and the position of the second candidate unloading point within the preset unloading area is determined as the position of the second unloading point. Thus, each unloading point is within the unloading area, and according to the rotation of the first direction and the second direction, the unloading point can be determined in the idle area in the preset unloading area, so as to make full use of the preset unloading area and improve the utilization rate of the unloading area.

[0126] 203: According to the position of the second unloading point, control the mobile robot to go to the position of the second unloading point to perform the unloading operation until the unloading task is completed.

[0127] In the embodiment of the present application, the controller of the mobile robot can use the determined position of the second unloading point as the position of the unloading point where the mobile robot currently performs the unloading operation. According to the position of the second unloading point, the mobile robot is controlled to go to the position of the second unloading point to unload the object to be unloaded. Based on the above method, the controller of the mobile robot can control the mobile robot to perform each unloading operation in the unloading task until the unloading task is completed.

[0128] In summary, in an embodiment of the present application, the controller of the mobile robot first obtains the position of the first unloading point where the mobile robot completed an unloading operation last time. Then, the position of the second unloading point where the mobile robot is currently performing an unloading operation is determined based on the position of the first unloading point and the offset. Finally, based on the position of the second unloading point, the mobile robot is controlled to go to the position of the second unloading point to perform the unloading operation until the unloading task is completed. Based on this, each time the mobile robot performs an unloading operation, it can determine the position of the unloading point where the unloading operation is currently being performed based on the position of the unloading point where the unloading operation was completed last time and the offset. By determining a reasonable offset, the mobile robot can fully stack the objects to be unloaded in the unloading area of ​​each unloading point, thereby solving the problem of low utilization of the unloading area caused by setting all unloading points in advance, and improving the utilization of the unloading area.

[0129] In one embodiment of the present application, taking the grass unloading control method performed by a lawn mower as an example, during each grass unloading operation of the lawn mower performing an unloading task, the control device of the lawn mower can obtain the position of the first unloading point where the lawn mower completed the last unloading operation; then, based on the position of the first unloading point and the unloading offset, the position of the second unloading point where the lawn mower is currently performing the unloading operation is determined; finally, based on the position of the second unloading point, the lawn mower is controlled to go to the position of the second unloading point to perform the unloading operation until the unloading task is completed.

[0130] Exemplarily, the unloading offset can be determined based on the volume of grass residues collected in the grass collecting device of the lawn mower, or can be pre-set by the user; the method for determining the unloading offset is similar to the method for determining the offset in the above embodiment, and will not be repeated here.

[0131] Exemplarily, the first grass unloading point and the second grass unloading point are both located in the preset grass unloading area; specifically, if the offset direction of the first grass unloading point is the first offset direction, the control device of the lawn mower moves the distance of the grass unloading offset in the first offset direction according to the position of the first grass unloading point to obtain the position of the first candidate grass unloading point. When the position of the first candidate grass unloading point is located in the preset grass unloading area, the position of the first candidate grass unloading point is determined as the position of the second grass unloading point. When the position of the first candidate grass unloading point is outside the preset grass unloading area, the first offset direction is rotated by a preset angle to the second offset direction, and the preset angle can be 30 degrees, 60 degrees, 90 degrees, etc. Take 90 degrees as an example. If the first offset direction is along the positive half axis of the X axis, and after multiple grass unloading, the position of the first candidate grass unloading point exceeds the boundary of the preset grass unloading area, the first offset direction is rotated by 90 degrees to the second offset direction. At this time, the second offset direction is along the positive half axis of the y axis. After the distance of the grass unloading offset from the position of the first grass unloading point along the second offset direction is offset, the position of the second candidate grass unloading point is obtained, and the position of the second candidate grass unloading point is used as the position of the first candidate grass unloading point, and the second offset direction is used as the first offset direction, until the position of the first candidate grass unloading point is within the preset grass unloading area, and the position of the candidate grass unloading point located in the preset grass unloading area is used as the position of the second grass unloading point. Finally, the control device of the lawn mower controls the lawn mower to go to the position of the second grass unloading point, and unloads the grass residue in the grass collecting device through the rotation of the lawn mower itself, completing the current grass unloading operation. Each grass unloading operation can be performed according to the above method until all grass unloading operations in the grass unloading task are completed. Optionally, the initial grass unloading point for the first grass unloading operation can be preset by the user.

[0132] Exemplarily, the first offset direction and the second offset direction may be directions parallel or perpendicular to the boundary of the preset grass unloading area. For example, the first offset direction is parallel to the first boundary of the preset grass unloading area, and the second offset direction is parallel to the second boundary of the preset grass unloading area, wherein the first boundary is adjacent to the second boundary, and the control device of the lawn mower moves the distance of the above-mentioned grass unloading offset in the first offset direction according to the position of the first grass unloading point, thereby determining the position of the first candidate grass unloading point along the direction of the first boundary. When the position of the first candidate grass unloading point is within the preset grass unloading area, the position of the first candidate grass unloading point is used as the position of the second grass unloading point. After multiple grass unloadings, the position of the first candidate grass unloading point along the direction of the first boundary exceeds the second boundary of the preset grass unloading area. At this time, the control device of the lawn mower rotates the first offset direction to be parallel to the direction of the second boundary to obtain the second offset direction. After the position of the first unloading point is offset by the distance of the unloading offset along the second offset direction, the position of the second candidate unloading point is obtained, and the position of the second candidate unloading point is used as the position of the first candidate unloading point, and the second offset direction is used as the first offset direction, and the second boundary is used as the first boundary, and another boundary adjacent to the second boundary is used as the second boundary, until the position of the first candidate unloading point is located in the preset unloading area, and the position of the candidate unloading point located in the preset unloading area is used as the position of the second unloading point. Finally, the control device of the lawn mower controls the lawn mower to move to the position of the second unloading point, and unloads the grass residue in the grass collecting device through the rotation of the lawn mower itself, completing the current unloading operation. Each unloading operation can be performed according to the above method until all unloading operations in the unloading task are completed. Optionally, the initial unloading point for the first unloading operation can be preset by the user.

[0133] It can be understood that the above unloading control method is only exemplary. The method of determining the position of the second unloading point where the lawn mower is currently performing an unloading operation based on the position of the first unloading point and the unloading offset is similar to the method of determining the position of the second unloading point where the mobile robot is currently performing an unloading operation based on the position of the first unloading point and the offset in any of the above embodiments, and will not be repeated here.

[0134] Thus, the unloading point of each unloading operation of the mower can be determined based on the position of the unloading point of the last unloading operation and the unloading offset. By determining the unloading offset corresponding to the grass residue to be unloaded, the grass residue can be fully accumulated in the unloading area corresponding to each unloading point, thereby improving the utilization rate of the unloading area.

[0135] See also Figure 6 , Figure 6Schematic diagram of an unloading control device provided in an embodiment of the present application. The unloading control device 600 may be a controller of a mobile robot in any of the above embodiments. The unloading control device 600 includes an acquisition module 601 , a processing module 602 and a control module 603 .

[0136] An acquisition module 601 is used to acquire the position of the first unloading point at which the mobile robot completed the last unloading operation;

[0137] A processing module 602 is used to determine the position of a second unloading point where the mobile robot is currently performing an unloading operation according to the position of the first unloading point and the offset;

[0138] The control module 603 is used to control the mobile robot to go to the position of the second unloading point to perform the unloading operation according to the position of the second unloading point until the unloading task is completed.

[0139] In a possible embodiment, the offset is determined according to the volume of the object to be unloaded during the last unloading process of the mobile robot. Before determining the position of the second unloading point where the mobile robot is currently performing the unloading operation according to the position of the first unloading point and the offset, the processing module 602 is further used to:

[0140] Determine the unloading area of ​​the object to be unloaded based on the current volume of the object to be unloaded and the preset unloading thickness;

[0141] Based on the unloaded area, the offset is determined.

[0142] In a possible embodiment, in determining the position of the second unloading point at which the mobile robot currently performs an unloading operation according to the position of the first unloading point and the offset, the processing module 602 is specifically configured to:

[0143] Obtaining a preset unloading area and obtaining a working route of the mobile robot in the working area;

[0144] Determine a first direction corresponding to the working route;

[0145] Determine a position of a first candidate unloading point based on the position of the first unloading point, the first direction, and the offset;

[0146] If the position of the first candidate unloading point is within the preset unloading area, the position of the first candidate unloading point is used as the position of the second unloading point;

[0147] If the position of the first candidate unloading point is outside the preset unloading area, a second direction different from the first direction is determined, and the position of the second candidate unloading point is determined based on the position of the first unloading point, the second direction and the offset, until the position of the second candidate unloading point is within the preset unloading area, and the position of the second candidate unloading point within the preset unloading area is determined as the position of the second unloading point.

[0148] In a possible embodiment, in determining a second direction different from the first direction, the processing module 602 is specifically configured to:

[0149] Determine the shortest distance from the location of the first unloading point to the boundary of the preset unloading area;

[0150] Rotate the first direction by a preset angle to obtain a first candidate direction;

[0151] Determine the position of the first candidate point in the first candidate direction of the first unloading point according to the shortest distance;

[0152] According to the unloading area, taking the position of the first candidate point as the center of the area, determining a first candidate stacking area corresponding to the first candidate point;

[0153] If the first candidate stacking area is located in the preset unloading area, determining the first candidate direction as the second direction;

[0154] If the first candidate stacking area has an intersection with the boundary of the preset unloading area, the first candidate direction is rotated by a preset angle to obtain a second candidate direction, and the second candidate stacking area is determined according to the second candidate direction until the second candidate stacking area is located in the preset unloading area, and the second candidate direction corresponding to the second candidate stacking area located in the preset unloading area is determined to be the second direction.

[0155] In a possible embodiment, in determining the offset based on the unloading area, the processing module 602 is specifically configured to:

[0156] Get the mass of the object to be unloaded;

[0157] Determine the target stacking volume required for the objects to be unloaded based on the mass and volume of the objects to be unloaded;

[0158] Based on the target stacking volume, the unloading area is adjusted to obtain the target unloading area of ​​the objects to be unloaded;

[0159] Based on the target unloading area, determining a stacking area for the second unloading point;

[0160] Based on the stacking area of ​​the second unloading point and the position of the first unloading point, an offset is determined.

[0161] In a possible embodiment, in determining the offset based on the unloading area, the processing module 602 is specifically configured to:

[0162] Obtain a first stacking area corresponding to a first unloading point;

[0163] Determine a second stacking area adjacent to the first stacking area according to the unloading area;

[0164] Obtaining the flatness of the second stacking area;

[0165] Adjust the second stacking area according to the flatness to obtain a target stacking area;

[0166] Determine the location of the offset point in the target stacking area;

[0167] The offset is determined according to the position of the first unloading point and the position of the offset point.

[0168] In a possible embodiment, the acquisition module 601 is further used to: if the currently executed unloading operation is the first unloading operation in the unloading task, obtain the position of the preset initial unloading point;

[0169] The control module 603 is further used to: according to the position of the preset initial unloading point, control the mobile robot to go to the position of the preset initial unloading point to perform the unloading operation.

[0170] See also Figure 7 , Figure 7 This is a schematic diagram of the structure of a lawn mower provided in an embodiment of the present application. Figure 7 As shown, the lawn mower includes a mowing device 701, a grass collecting device 702, a traveling device 703 and a control device 704. The lawn mower includes the mobile robot and the lawn mower in any of the above embodiments, and can realize automatic mowing, grass collecting and grass unloading. The control device 704 can be a controller of the mobile robot in any of the above embodiments. The control device 704 can also be the unloading control device 600 in the above embodiment.

[0171] The mowing device 701 is provided with a mowing blade for mowing and trimming or cutting the lawn. The grass collecting device 702 is used to collect the grass residue cut by the mowing device 701 and unload the collected grass residue when performing the unloading operation. The traveling device 703 is provided with a walking wheel for driving the mower to travel. The control device 704 includes a memory and a processor. The memory is used to store computer program instructions and data. The processor is used to read and execute computer program instructions in the memory to control the mowing device 701, the grass collecting device 702 and the traveling device 703. The mowing device 701 is located at the bottom of the mower and is only an annotation in the figure.

[0172] The processor reads the computer program instructions in the memory and can perform the following operations:

[0173] Get the position of the first grass unloading point of the lawn mower when it completed the grass unloading operation last time;

[0174] Determine the position of a second grass unloading point where the lawn mower is currently performing a grass unloading operation according to the position of the first grass unloading point and the offset;

[0175] According to the position of the second grass unloading point, the lawn mower is controlled to go to the position of the second grass unloading point to perform the grass unloading operation until the grass unloading task is completed.

[0176] The mowing blade on the mowing device 701 may be a disc-shaped rotating blade, which can cut the grass by the centrifugal force when the blade rotates. The mowing blade may also be a roller blade composed of multiple blades, which can trim the lawn by rolling the multiple blades. The height of the mowing device 701 can be adjusted autonomously to adjust the cutting height of the lawn.

[0177] The grass collecting device 702 includes a grass collecting box, which is used to load the cut grass residue. The grass collecting device has a related structure capable of collecting the grass residue into the grass collecting device 702. For example, a fan is provided inside the grass collecting box. After the fan is started, the rotation of the fan makes the pressure inside the grass collecting box lower than the air pressure, so that the cut grass residue is sucked into the grass collecting box to collect the grass residue; or a roller brush is provided at the position of the grass collecting device 702, and the grass residue is swept into the grass collecting device by driving the roller brush to rotate.

[0178] The traveling device 703 mainly includes a driving device and running wheels. The driving device may include an engine or a motor for driving the running wheels to rotate, so as to drive the lawn mower to move forward, backward and turn.

[0179] The control device 704 can control the speed of the lawn mower by controlling the speed of the engine or motor of the traveling device 703, and at the same time, the travel route of the lawn mower can be controlled by controlling the steering of the running wheels of the traveling device 703. The control device 704 can also control the start and stop of the mowing device 701. After the mowing device 701 is started, the grass on the travel route is cut. The control device 704 can control the height adjustment of the mowing device 701 to control the cutting height of the grass. The control device 704 can also control the start and stop of the fan on the grass collecting device 702. After the fan is started, the grass residue can be collected by the grass collecting box on the grass collecting device 702. When unloading the grass, the control device 704 can turn off the fan, then control the running wheels to turn in one direction, and drive the lawn mower to rotate through the driving device to unload the grass residue in the grass collecting box to complete the unloading operation.

[0180] The above mainly introduces the scheme of the embodiment of the present application from the perspective of the execution process on the method side. It is understandable that, in order to realize the above functions, the lawn mower includes hardware structures and / or software modules corresponding to the execution of each function. Those skilled in the art should easily realize that, in combination with the units and algorithm steps of each example described in the embodiments provided in this article, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0181] An embodiment of the present application also provides a computer-readable storage medium, which stores a computer program. The computer program is executed by a processor to implement part or all of the steps of any unloading control method recorded in the above method embodiments.

[0182] An embodiment of the present application also provides a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to execute part or all of the steps of any unloading control method recorded in the above method embodiments.

[0183] It should be noted that, for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described order of actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily required by the present application.

[0184] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0185] In the several embodiments provided in the present application, it should be understood that the disclosed device can be implemented in other ways. For example, the device embodiments described above are only schematic, such as the division of the units, which is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, and the indirect coupling or communication connection of the device or unit can be electrical or other forms.

[0186] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0187] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above integrated unit may be implemented in the form of hardware or in the form of a software program module.

[0188] If the integrated unit is implemented in the form of a software program module and sold or used as an independent product, it can be stored in a computer-readable memory. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a memory, including a number of instructions to enable a computer device (which can be a personal computer, server or network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned memory includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, disk or CD-ROM and other media that can store program codes.

[0189] A person skilled in the art can understand that all or part of the steps in the various methods of the above embodiments can be completed by instructing related hardware through a program, and the program can be stored in a computer-readable memory, and the memory can include: a flash drive, a read-only memory (English: Read-Only Memory, abbreviated as: ROM), a random access memory (English: Random Access Memory, abbreviated as: RAM), a magnetic disk or an optical disk, etc.

[0190] The embodiments of the present application are introduced in detail above. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method and core idea of ​​the present application. At the same time, for general technical personnel in this field, according to the idea of ​​the present application, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. An unloading control method, characterized in that: include: Obtain the position of the first unloading point of the last unloading operation completed by the mobile robot; Determining the position of the second unloading point where the mobile robot is currently performing an unloading operation according to the position of the first unloading point and the offset; According to the position of the second unloading point, the mobile robot is controlled to go to the position of the second unloading point to perform the unloading operation until the unloading task is completed.

2. The method according to claim 1, characterized in that: The offset is determined according to the volume of the object to be unloaded during the last unloading process of the mobile robot; before determining the position of the second unloading point of the mobile robot currently performing the unloading operation according to the position of the first unloading point and the offset, the method further includes: Determining an unloading area of ​​the object to be unloaded based on the current volume of the object to be unloaded and a preset unloading thickness; Based on the unloaded area, the offset is determined.

3. The method according to claim 1 or 2, characterized in that: The step of determining the position of the second unloading point where the mobile robot is currently performing an unloading operation according to the position and the offset of the first unloading point comprises: Obtaining a preset unloading area and obtaining a working route of the mobile robot in the working area; Determining a first direction corresponding to the working route; Determining a position of a first candidate unloading point based on the position of the first unloading point, the first direction, and the offset; If the position of the first candidate unloading point is within the preset unloading area, the position of the first candidate unloading point is used as the position of the second unloading point; If the position of the first candidate unloading point is outside the preset unloading area, a second direction different from the first direction is determined, and the position of the second candidate unloading point is determined based on the position of the first unloading point, the second direction and the offset, until the position of the second candidate unloading point is within the preset unloading area, and the position of the second candidate unloading point within the preset unloading area is determined as the position of the second unloading point.

4. The method according to claim 3, characterized in that: The determining a second direction different from the first direction comprises: Determine the shortest distance from the position of the first unloading point to the boundary of the preset unloading area; Rotate the first direction by a preset angle to obtain a first candidate direction; Determining a position of a first candidate point in the first candidate direction of the first unloading point according to the shortest distance; According to the unloading area, taking the position of the first candidate point as the center of the area, determining a first candidate stacking area corresponding to the first candidate point; If the first candidate stacking area is located in the preset unloading area, determining the first candidate direction to be the second direction; If the first candidate stacking area has an intersection with the boundary of the preset unloading area, the first candidate direction is rotated by the preset angle to obtain a second candidate direction, and the second candidate stacking area is determined according to the second candidate direction until the second candidate stacking area is located in the preset unloading area, and the second candidate direction corresponding to the second candidate stacking area located in the preset unloading area is determined to be the second direction.

5. The method according to claim 2, characterized in that: The step of determining the offset based on the unloading area includes: Obtaining the mass of the object to be unloaded; Determining a target stacking volume required for the objects to be unloaded based on the mass and volume of the objects to be unloaded; Based on the target stacking volume, adjusting the unloading area to obtain a target unloading area for the objects to be unloaded; Based on the target unloading area, determining a stacking area of ​​the second unloading point; The offset is determined based on a stacking area of ​​the second unloading point and a position of the first unloading point.

6. The method according to claim 2, characterized in that The step of determining the offset based on the unloading area includes: Acquire a first stacking area corresponding to the first unloading point; Determining a second stacking area adjacent to the first stacking area according to the unloading area; Acquire the flatness of the second stacking area; adjusting the second stacking area according to the flatness to obtain a target stacking area; Determine the position of the offset point in the target stacking area; The offset is determined according to the position of the first unloading point and the position of the offset point.

7. The method according to claim 1 or 2, characterized in that: The method further comprises: If the currently executed uninstallation operation is the first uninstallation operation in the uninstallation task, obtaining the position of the preset initial uninstallation point; According to the position of the preset initial unloading point, the mobile robot is controlled to go to the position of the preset initial unloading point to perform an unloading operation.

8. An unloading control device, characterized in that: The device comprises: An acquisition module, used to acquire the position of the first unloading point where the mobile robot completed the unloading operation last time; A processing module, configured to determine the position of a second unloading point where the mobile robot is currently performing an unloading operation according to the position of the first unloading point and the offset; The control module is used to control the mobile robot to go to the position of the second unloading point to perform the unloading operation according to the position of the second unloading point until the unloading task is completed.

9. A lawn mower, characterized in that: The lawn mower comprises: a mowing device, a grass collecting device, a traveling device and a control device; the mowing device is used for mowing, the grass collecting device is used for collecting cut grass residues, the traveling device is used for driving the lawn mower to move, and the control device is used for executing computer program instructions so that the control device performs the following steps: Obtaining the position of the first grass unloading point where the lawn mower completed the grass unloading operation last time; Determine the position of a second grass unloading point where the lawn mower is currently performing a grass unloading operation according to the position of the first grass unloading point and the grass unloading offset; According to the position of the second grass unloading point, the lawn mower is controlled to go to the position of the second grass unloading point to perform the grass unloading operation until the grass unloading task is completed.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and the computer program is executed by a processor to implement the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Logistics vehicle management method and device, electronic equipment and storage medium

    CN117057701A

  • Working robot

    US4994970A

  • Material unloading

    WO2024175177A1