Obstacle separation method and self-moving equipment
By detecting non-grass boundaries and updating obstacle markers to the map via a self-moving device, the problem of low obstacle removal efficiency of lawnmower robots is solved, achieving more efficient obstacle removal.
Patent Information
- Application Number
- CN202410516886.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-26
- Publication Date
- 2025-10-28
AI Technical Summary
Existing lawn mowing robots are inefficient when detaching from obstacles, affecting the reliability of lawn mowing operations.
The device detects non-grass boundaries by moving its own mobile device, identifies obstacles, updates the obstacle markers to a preset map, drives away from obstacles, and uses the preset map to query markers to improve obstacle removal efficiency.
By recording the markers of obstacles that have been bypassed in the past, the self-moving device can quickly identify and avoid repeated detours, improving the efficiency of obstacle removal.
Smart Images

Figure CN120848477A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robotics, and in particular to obstacle evasion methods and self-moving devices. Background Technology
[0002] Self-moving devices such as lawnmower robots have automatic walking capabilities and can autonomously complete the lawn mowing task without direct human control or operation. They are suitable tools for lawn mowing and maintenance in home yards, public green spaces, and other locations. Currently, lawnmower robots are widely used due to their ease of operation and ability to save manpower and time.
[0003] In actual lawn mowing operations, there may be isolated islands or groups of isolated islands in the area to be mowed. These isolated islands are obstacles that are some distance from the boundary of the area to be mowed, which can affect the normal operation of the lawn mowing robot. Therefore, the lawn mowing robot needs to quickly move away from these isolated islands to ensure the reliability of the mowing operation.
[0004] However, existing lawnmower robots suffer from low efficiency when detaching from obstacles. Summary of the Invention
[0005] This application aims to at least solve the technical problems existing in the prior art. To this end, the first aspect of this application proposes an obstacle removal method applied to a self-moving device, which is configured to move and / or work along the boundary of a working area. The method includes:
[0006] In response to the self-moving device detecting a non-grass boundary, the self-moving device is controlled to move along the non-grass boundary and the obstacle corresponding to the non-grass boundary is identified;
[0007] Update obstacle markers to the preset map, where each marker corresponds one-to-one with a non-grass boundary;
[0008] Drive away from the obstacle and continue to detect non-grass boundaries on the path;
[0009] In response to the detection of a non-grass boundary, the marker is queried according to the preset map;
[0010] If the preset map contains a marker corresponding to the current non-grass boundary, drive away from the current non-grass boundary;
[0011] or,
[0012] If the preset map does not contain the marker corresponding to the current non-grass boundary, move along the current non-grass boundary to identify the obstacle corresponding to the current non-grass boundary;
[0013] Update the markers of obstacles corresponding to the current non-grass boundary to the preset map, and then drive away from the current non-grass boundary.
[0014] In one possible implementation, in response to the self-moving device detecting a non-grass boundary, the following is included:
[0015] Real-time acquisition of image information from a mobile device within a first preset distance range;
[0016] Real-time detection of non-grass boundaries within image information to obtain the detection results of non-grass boundaries detected by the mobile device;
[0017] When a non-grass boundary is detected in the detection results, the self-moving device is controlled to respond to the detection of the non-grass boundary and perform the corresponding action.
[0018] In one possible implementation, controlling the self-moving device to move along a non-grass boundary to identify obstacles corresponding to the non-grass boundary includes:
[0019] Control the self-moving device to move along the non-grass boundary based on historical movement data and identify the non-grass boundary, generating the identification result;
[0020] Based on the identification results, the outer boundary of the obstacle corresponding to the non-grass boundary is determined, where the outer boundary of the obstacle is used to characterize the external contour of the obstacle.
[0021] In one possible implementation, controlling the self-moving device to move along a non-grass boundary to identify obstacles corresponding to the non-grass boundary further includes:
[0022] When the mobile device is in a recharging state, obtain the current recharging time of the mobile device, where the current recharging time is used to characterize the time required for the mobile device to return to the charging station;
[0023] If the current recharge duration is less than the preset duration threshold, the self-moving device is controlled to detour along the non-grass boundary according to the first detour angle threshold.
[0024] In one possible implementation, controlling the self-moving device to move along a non-grass boundary to identify obstacles corresponding to the non-grass boundary further includes:
[0025] If the current recharge duration is greater than or equal to a preset duration threshold, the self-moving device is controlled to detour along the non-grass boundary at a second detour angle threshold, wherein the second detour angle threshold is less than the first detour angle threshold.
[0026] In one possible implementation, driving away from the obstacle and continuing to detect non-grass boundaries on the path includes:
[0027] Based on the markers in the preset map, a first direction is determined, wherein there are no markers of any obstacles within a preset distance in the first direction;
[0028] Control the self-moving device to move along the first direction to drive away from the obstacle, and continue to detect non-grass boundaries on the path.
[0029] In one possible implementation, if the preset map contains a marker corresponding to the current non-grass boundary, driving away from the current non-grass boundary includes:
[0030] If the preset map contains markers corresponding to the current non-grass boundary, a second direction is determined based on the markers in the preset map, wherein there are no markers of any obstacles within a second preset distance range in the second direction, and the angle between the second direction and the first direction is within the deviation angle threshold range.
[0031] Control the self-moving device to move in the second direction to leave the current non-grass boundary.
[0032] In one possible implementation, updating the markers of obstacles corresponding to the current non-grass boundary to a preset map and then driving away from the current non-grass boundary includes:
[0033] Update the markers of obstacles corresponding to the current non-grass boundaries to the preset map;
[0034] Based on the markers in the preset map, a third direction is determined, wherein there are no markers of any obstacles within a third preset distance range in the third direction, and the angle between the third direction and the first direction is within the deviation angle threshold range.
[0035] Control the self-moving device to move along a third direction to leave the current non-grass boundary.
[0036] A second aspect of this application provides an obstacle removal method applied to a self-moving device configured to move and / or work along the boundary of a work area, the method comprising:
[0037] When the mobile device moves away from the first obstacle, record the first departure direction of the mobile device.
[0038] In response to the self-moving device detecting a non-grass boundary, it moves and / or works along the non-grass boundary, and determines the non-grass boundary as a second obstacle;
[0039] The second departure direction is determined based on the position of the first obstacle and the first departure direction, wherein the angle between the second departure direction and the first departure direction is within the deviation angle threshold range;
[0040] Control the self-moving device to move away from the first obstacle and the second obstacle according to the second departure direction.
[0041] A third aspect of this application proposes a self-moving device, comprising:
[0042] The recognition module is used to control the self-moving device to move along the non-grass boundary in response to the self-moving device detecting a non-grass boundary, and to identify the obstacle corresponding to the non-grass boundary;
[0043] The first update module is used to update the obstacle markers to the preset map, wherein the markers correspond one-to-one with the non-grass boundaries;
[0044] The detection module is used to move away from obstacles and continue to detect non-grass boundaries on the path;
[0045] The query module is used to query markers based on a preset map in response to the detection of non-grass boundaries;
[0046] The control module is used to drive away from the current non-grass boundary when the preset map contains a marker corresponding to the current non-grass boundary; or to move along the current non-grass boundary when the preset map does not contain a marker corresponding to the current non-grass boundary, so as to identify obstacles corresponding to the current non-grass boundary.
[0047] The second update module is used to update the markers of obstacles corresponding to the current non-grass boundary to the preset map and drive away from the current non-grass boundary.
[0048] In one possible implementation, the identification module described above is specifically used for:
[0049] Real-time acquisition of image information from a mobile device within a first preset distance range;
[0050] Real-time detection of non-grass boundaries within image information to obtain the detection results of non-grass boundaries detected by the mobile device;
[0051] When a non-grass boundary is detected in the detection results, the self-moving device is controlled to respond to the detection of the non-grass boundary and perform the corresponding action.
[0052] In one possible implementation, the identification module is further used for:
[0053] Control the self-moving device to move along the non-grass boundary based on historical movement data and identify the non-grass boundary, generating the identification result;
[0054] Based on the identification results, the outer boundary of the obstacle corresponding to the non-grass boundary is determined, where the outer boundary of the obstacle is used to characterize the external contour of the obstacle.
[0055] In one possible implementation, the identification module is further used for:
[0056] When the mobile device is in a recharging state, obtain the current recharging time of the mobile device, where the current recharging time is used to characterize the time required for the mobile device to return to the charging station;
[0057] If the current recharge duration is less than the preset duration threshold, the self-moving device is controlled to detour along the non-grass boundary according to the first detour angle threshold.
[0058] In one possible implementation, the identification module is further used for:
[0059] If the current recharge duration is greater than or equal to a preset duration threshold, the self-moving device is controlled to detour along the non-grass boundary at a second detour angle threshold, wherein the second detour angle threshold is less than the first detour angle threshold.
[0060] In one possible implementation, the detection module described above is specifically used for:
[0061] Based on the markers in the preset map, a first direction is determined, wherein there are no markers of any obstacles within a preset distance in the first direction;
[0062] Control the self-moving device to move along the first direction to drive away from the obstacle, and continue to detect non-grass boundaries on the path.
[0063] In one possible implementation, the control module is specifically used for:
[0064] If the preset map contains markers corresponding to the current non-grass boundary, a second direction is determined based on the markers in the preset map, wherein there are no markers of any obstacles within a second preset distance range in the second direction, and the angle between the second direction and the first direction is within the deviation angle threshold range.
[0065] Control the self-moving device to move in the second direction to leave the current non-grass boundary.
[0066] In one possible implementation, the second update module is specifically used for:
[0067] Update the markers of obstacles corresponding to the current non-grass boundaries to the preset map;
[0068] Based on the markers in the preset map, a third direction is determined, wherein there are no markers of any obstacles within a third preset distance range in the third direction, and the angle between the third direction and the first direction is within the deviation angle threshold range.
[0069] Control the self-moving device to move along a third direction to leave the current non-grass boundary.
[0070] The fourth aspect of this application proposes another self-moving device, including:
[0071] The recording module is used to record the first departure direction of the self-moving device when it leaves the first obstacle;
[0072] The first determining module is configured to, in response to the self-moving device detecting a non-grass boundary, move and / or work along the non-grass boundary, and determine the non-grass boundary as a second obstacle;
[0073] The second determining module is used to determine the second departure direction based on the position of the first obstacle and the first departure direction, wherein the angle between the second departure direction and the first departure direction is within the deviation angle threshold range.
[0074] The control module is used to control the self-moving device to move away from the first obstacle and the second obstacle according to the second departure direction.
[0075] The fifth aspect of this application provides an electronic device comprising a processor and a memory, wherein the memory stores at least one instruction, at least one program, a code set, or an instruction set, wherein the at least one instruction, the at least one program, the code set, or the instruction set is loaded and executed by the processor to implement the obstacle removal method as described in the first aspect.
[0076] The sixth aspect of this application provides a computer-readable storage medium storing at least one instruction, at least one program, a code set, or an instruction set, wherein the at least one instruction, the at least one program, the code set, or the instruction set is loaded and executed by a processor to implement the obstacle removal method as described in the first aspect.
[0077] The embodiments of this application have the following beneficial effects:
[0078] The obstacle avoidance method provided in this application includes: responding to the detection of a non-grass boundary by a self-moving device, controlling the self-moving device to move along the non-grass boundary, identifying the obstacle corresponding to the non-grass boundary, updating the obstacle's marker to a preset map, leaving the obstacle, and continuing to detect non-grass boundaries on the path. Responding to the detection of a non-grass boundary, querying the marker according to the preset map, leaving the current non-grass boundary if the preset map contains the marker corresponding to the current non-grass boundary, or moving along the current non-grass boundary if the preset map does not contain the marker corresponding to the current non-grass boundary, to identify the obstacle corresponding to the current non-grass boundary, updating the marker of the obstacle corresponding to the current non-grass boundary to the preset map, and leaving the current non-grass boundary. This solution improves obstacle avoidance efficiency by updating the marker of the previously bypassed obstacle to the preset map after the self-moving device moves along the non-grass boundary, thus recording the location marker information of all previously bypassed obstacles in the preset map. This facilitates early avoidance of the obstacle when encountering it again, preventing repeated movement around previously bypassed obstacles. Attached Figure Description
[0079] Figure 1 A block diagram of a computer device provided for an embodiment of this application;
[0080] Figure 2 A flowchart illustrating the steps of an obstacle removal method provided in this application.
[0081] Figure 3 A flowchart of steps for responding to a self-moving device detecting a non-grass boundary is provided for an embodiment of this application;
[0082] Figure 4 A flowchart illustrating the steps for identifying obstacles corresponding to non-grass boundaries, provided in this application embodiment;
[0083] Figure 5 A flowchart illustrating another step for identifying obstacles corresponding to non-grass boundaries, provided for an embodiment of this application;
[0084] Figure 6 A schematic diagram illustrating movement along a non-grass boundary as provided in this application embodiment;
[0085] Figure 7 A schematic diagram of a marker box provided for an embodiment of this application;
[0086] Figure 8 A flowchart illustrating the steps of driving away from an obstacle, as provided in this application embodiment;
[0087] Figure 9 A schematic diagram illustrating a vehicle driving away from an obstacle, as provided in this application.
[0088] Figure 10 Another schematic diagram illustrating the driving away from an obstacle provided for an embodiment of this application;
[0089] Figure 11 A flowchart illustrating the steps of driving away from a current non-grass boundary is provided for an embodiment of this application.
[0090] Figure 12 A flowchart illustrating another step for driving away from the current non-grass boundary as provided in this application embodiment;
[0091] Figure 13 A flowchart illustrating the steps of another obstacle removal method provided in this application embodiment;
[0092] Figure 14 A structural block diagram of a self-moving device provided for embodiments of this application;
[0093] Figure 15 A schematic diagram of the structure of a self-moving device provided for an embodiment of this application;
[0094] Figure 16A structural block diagram of another self-moving device provided for an embodiment of this application. Detailed Implementation
[0095] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0096] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of embodiments of this disclosure, unless otherwise stated, "a plurality of" means two or more. Furthermore, the use of "based on" or "according to" implies openness and inclusiveness, because processes, steps, calculations, or other actions "based on" or "according to" one or more of the stated conditions or values may in practice be based on additional conditions or beyond the stated values.
[0097] The obstacle removal method provided in this application can be applied to computer equipment (electronic devices). The computer equipment can be a server or a terminal. The server can be a single server or a server cluster composed of multiple servers. This application does not specifically limit this. The terminal can be, but is not limited to, various personal computers, laptops, smartphones, tablets, and portable wearable devices.
[0098] Taking computer devices as terminals as an example, Figure 1 A block diagram of a terminal is shown, such as Figure 1 As shown, the computer device may include a processor, memory, network interface, display screen, and input devices connected via a system bus. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The network interface is used to communicate with external terminals via a network connection. When the computer program is executed by the processor, it implements an obstacle avoidance method. The display screen may be an LCD screen or an e-ink screen. The input devices may be a touch layer covering the display screen, buttons, a trackball, or a touchpad mounted on the computer device casing, or an external keyboard, touchpad, or mouse.
[0099] Those skilled in the art will understand that the structure shown in the figure is merely a block diagram of a portion of the structure related to the solution of this application, and does not constitute a limitation on the terminal to which the solution of this application is applied. Optionally, the terminal may include more or fewer components than shown in the figure, or combine certain components, or have different component arrangements.
[0100] This embodiment provides an autonomous working machine (self-moving device), such as... Figure 15 and Figure 16 As shown, the autonomous working machine includes a body 100, an imaging sensor 200, a position sensor 500, and a control circuit 600.
[0101] Specifically, the machine body 100 includes a drive unit 700, which is used to move the machine body 100 on the working surface according to the received drive command. The drive unit 700 typically includes rollers and a motor that drives the rollers to rotate. The rollers may include driving rollers and driven rollers. The rollers may be distributed on both sides of the machine body 100, and the number of rollers on each side may be one or two, etc.
[0102] The machine body 100 also includes a working module, which is used to perform specific work tasks. For example, if the autonomous working machine is an automatic lawnmower, the working module includes lawnmower blades, a cutting motor, etc., and may also include auxiliary components such as a lawnmower height adjustment mechanism to optimize or adjust the lawnmower effect; if the autonomous working machine is an automatic vacuum cleaner, the working module includes working components such as a vacuum motor, a vacuum port, a vacuum hose, a vacuum chamber, and a dust collection device to perform vacuuming tasks.
[0103] The body 100 may also include an energy module for providing power to the autonomous machine for various tasks. The energy module may include a rechargeable battery and a charging connection structure, wherein the charging connection structure is typically a charging electrode plate that can be used in conjunction with a charging electrode plate located at the docking station to charge the autonomous machine.
[0104] The body 100 also includes a memory 400, which is used to store data generated by sensors or control circuits, or to pre-store data for use by control circuits.
[0105] The fuselage 100 also includes a position sensor 500, which may include an inertial measurement unit (IMU) or an odometer (ODO) mounted on the drive unit 700, for obtaining the relative position based on the movement of the fuselage 100.
[0106] In addition to the modules mentioned above, the main body 100 may also include a housing for accommodating and installing the various modules, a control panel for user operation, and various environmental sensors, such as humidity sensors, temperature sensors, acceleration sensors, and light sensors. These sensors can assist the autonomous machine in determining the working environment in order to execute the corresponding program.
[0107] The control circuit 600 is the core component of the autonomous working machine. It is used to control the autonomous working machine to move and work automatically. Its functions include controlling the working module to start or stop, controlling the drive device 700 to move, judging the power of the energy module and controlling the autonomous working machine to return to the docking station for automatic charging, and executing corresponding programs based on data from environmental sensors.
[0108] Reference Figure 15 and Figure 16 The autonomous working machine includes an imaging sensor 200, which is connected to the body 100 and is used to acquire images in the forward direction of the body 100. These images are at least partially images of the working surface in the forward direction. The acquired images are located within the field of view 210 of the imaging sensor 200. The imaging sensor 200 can be a commonly used camera or lidar, etc.
[0109] Generally, the imaging sensor 200 is mounted on the upper front part of the fuselage 100, preferably centered, with its viewing angle pointing downwards and forwards to capture images of the working surface. The size of its field of view 210 can be adjusted according to actual needs; a larger field of view 210 captures more images in the forward direction of the fuselage 100, and vice versa. The fuselage 100 can move in various directions, such as normal forward movement, backward movement, or turning. In this embodiment, the forward direction of the fuselage refers to the normal forward movement direction, i.e., the direction of the fuselage's central axis.
[0110] Figure 2 This is a flowchart illustrating the steps of an obstacle removal method provided in an embodiment of this application. Figure 2 As shown, the method includes the following steps:
[0111] Step 202: In response to the self-moving device detecting a non-grass boundary, control the self-moving device to move along the non-grass boundary and identify the obstacle corresponding to the non-grass boundary.
[0112] The obstacle removal method provided in this application is applied to a self-moving device, which may be a robotic vacuum cleaner, a smart lawnmower, etc. Furthermore, the self-moving device is configured to move and / or operate along the boundary of the work area.
[0113] In some alternative embodiments, the self-moving device may include at least one image acquisition device, which may be a camera. The camera can acquire local image data, and the self-moving device can generate route guidance data based on the local image data. Optionally, the camera may be a monocular camera, which can reduce the cost of the self-moving device.
[0114] Route guidance data is used to guide the self-moving device along the edge and to move. It can be obtained by processing the image data captured by the camera to obtain the pixel positions of obstacles and movable areas in the image data. Based on the different pixel positions, the route guidance data of the self-moving device can be determined.
[0115] During the movement of the self-moving device, it will respond to the detection of a non-grass boundary by the self-moving device. In some alternative embodiments, such as Figure 3 As shown, Figure 3 A flowchart of steps for responding to a self-moving device detecting a non-grass boundary, provided in an embodiment of this application, includes:
[0116] Step 302: Acquire image information within the first preset distance range of the mobile device in real time.
[0117] Step 304: Detect non-grass boundaries within the image information in real time to obtain the detection results of non-grass boundaries detected by the mobile device.
[0118] Step 306: When a non-grass boundary is detected in the detection results, control the self-moving device to respond to the detection of the non-grass boundary and perform the corresponding action.
[0119] Specifically, when acquiring image information within a first preset distance range of the self-moving device in real time, the first preset distance range can be pre-defined. For example, the first preset distance range can be 60 centimeters. Thus, the self-moving device can acquire image information within a 60-centimeter range in real time through its own image acquisition device.
[0120] After acquiring image information, non-grass boundaries within the image information can be detected in real time using image processing techniques to obtain the detection results of non-grass boundaries detected by the mobile device. Optionally, detection can be performed by matching image features of non-grass boundaries. Alternatively, a neural network model can be used to detect non-grass boundaries within the image information in real time to obtain the detection results of non-grass boundaries detected by the mobile device. Of course, other methods can also be used for detection, and this application embodiment does not specifically limit them.
[0121] Next, if a non-grass boundary is detected in the results, the self-moving device can be controlled to respond to the detection of the non-grass boundary and perform corresponding actions. These actions, when encountering a non-grass boundary, may include, but are not limited to, moving along the non-grass boundary or recognizing the non-grass boundary.
[0122] In some alternative embodiments, after the mobile device detects a non-grass boundary, the type of the non-grass boundary can be identified. If the obstacle corresponding to the non-grass boundary is entirely within the detected image information range, the obstacle corresponding to the non-grass boundary can be identified as an island, and the information of the obstacle can be recorded in the map.
[0123] Optionally, when identifying the types of non-grass boundaries, identification can be performed using radar or other identification devices on self-moving devices; this application embodiment does not specifically limit this.
[0124] Optionally, when identifying the type of non-grass boundary, if the self-moving device moves along the right side of the non-grass boundary while its detour angle reaches 540 degrees (the parameter can be adjusted according to actual needs), then the obstacle corresponding to the non-grass boundary is determined to be an island, and the information of the obstacle is recorded in the map.
[0125] In other alternative embodiments, after controlling the self-moving device to move along the non-grass boundary in response to detecting the non-grass boundary, the self-moving device identifies the obstacle corresponding to the non-grass boundary. For example... Figure 4 As shown, Figure 4 A flowchart illustrating the steps for identifying obstacles corresponding to non-grass boundaries, as provided in this application embodiment, includes:
[0126] Step 402: Control the self-moving device to move along the non-grass boundary according to historical movement data and identify the non-grass boundary, and generate the identification result.
[0127] Step 404: Based on the recognition results, determine the outer boundary of the obstacle corresponding to the non-grass boundary.
[0128] Upon detecting a non-grass boundary, the system can control the self-moving device to move along the non-grass boundary based on historical movement data and identify the boundary, generating an identification result. The historical movement data can be determined based on the self-moving device's original direction of travel.
[0129] When controlling the self-moving device to identify non-grass boundaries, it can also be identified through the self-moving device's radar or other identification devices to obtain the obstacles corresponding to the non-grass boundaries.
[0130] After obtaining the recognition results corresponding to the non-grass boundary, the outer boundary of the obstacle corresponding to the non-grass boundary can be determined based on the recognition results. The outer boundary of the obstacle is used to characterize the external contour of the obstacle. Optionally, the outer boundary of the obstacle corresponding to the non-grass boundary can be determined using a contour extraction method.
[0131] In some alternative embodiments, after controlling the self-moving device to respond to the detection of a non-grass boundary, the self-moving device moves along the non-grass boundary and identifies the obstacle corresponding to the non-grass boundary. For example... Figure 5 As shown, Figure 5 Another flowchart for identifying obstacles corresponding to non-grass boundaries provided in this application embodiment includes:
[0132] Step 502: When the self-device is in the charging state, obtain the current charging time of the self-device.
[0133] Step 504: If the current recharge duration is less than the preset duration threshold, control the self-moving device to detour along the non-grass boundary according to the first detour angle threshold.
[0134] Step 506: If the current recharge duration is greater than or equal to the preset duration threshold, control the self-moving device to detour along the non-grass boundary according to the second detour angle threshold.
[0135] When the mobile device is in recharging mode, it will move along the boundary and search for a charging station. During this process, when it encounters a non-grass boundary and moves along that boundary, it is necessary to first obtain the current recharging time of the mobile device. The current recharging time is used to characterize the time required for the mobile device to return to the charging station.
[0136] Based on the current recharge duration, a first detour angle threshold is determined when moving along the non-grass boundary. Optionally, if the current recharge duration is less than a preset duration threshold, the self-moving device is controlled to move around the non-grass boundary according to the first detour angle threshold. If the current recharge duration is greater than or equal to the preset duration threshold, the self-moving device is controlled to move around the non-grass boundary according to a second detour angle threshold, where the second detour angle threshold is less than the first detour angle threshold.
[0137] The preset duration threshold, the first detour angle threshold, and the second detour angle threshold can all be pre-defined. For example, the preset duration threshold can be 20 minutes, the first detour angle threshold can be 540 degrees, and the second detour angle threshold can be 270 degrees.
[0138] Therefore, when the current recharge duration is less than 20 minutes, the mobile device can circle 540 degrees when moving around the non-grass boundary during its return to the charging station. When the current recharge duration is greater than or equal to 20 minutes, meaning the mobile device has not returned to the charging station within 20 minutes, the circumference angle threshold can be reduced to 270 degrees when moving around the non-grass boundary during its return to the charging station.
[0139] In this implementation, by reducing the detour angle threshold, the recharging time of the self-moving device can be reduced, the recharging efficiency can be improved, and thus the reliability of the self-moving device can be improved.
[0140] Step 204: Update the obstacle markers to the preset map.
[0141] The preset map may include markers for obstacles, which may be location markers. Obstacles may include obstacles that the mobile device has already traversed, or other objects that affect the normal movement of the mobile device. This application embodiment does not specifically limit the type of obstacle.
[0142] When moving along a non-grass boundary, the movement termination condition can be set based on yaw angle data. Yaw angle data is collected by the inertial measurement unit (IMU) in the self-moving device and is also called yaw angle data. The movement termination condition can be that the yaw angle data reaches at least 360 degrees. For example, the movement termination condition can be that the yaw angle data reaches 540 degrees; that is, when the yaw angle data of the self-moving device reaches 540 degrees, the movement termination condition is considered met, and the obstacle is determined to be an island. Figure 6 As shown, Figure 6 This application provides a schematic diagram of movement along a non-grass boundary, where the obstacle corresponding to the non-grass boundary is... Figure 6 In the scenario of Island 1, mobile device A moves around Island 1 in one circle, meaning its yaw angle reaches 360 degrees. The route taken is... Figure 6 A curve around the isolated island 1.
[0143] After the mobile device moves along the non-grass boundary, if the movement ends under the condition that the obstacle corresponding to the non-grass boundary is met, the markers of the obstacle need to be updated to the preset map. In addition, the markers in the preset map correspond one-to-one with each non-grass boundary.
[0144] In some optional embodiments, when updating the markers of obstacles corresponding to the non-grass boundary to a preset map, the location and marker frame of the non-grass boundary can be obtained based on information acquired when the mobile device moves along the non-grass boundary, and then the location and marker frame of the non-grass boundary can be stored in the preset map. The information acquired when the mobile device moves along the non-grass boundary may include location information collected by the mobile device's odometer, or it may include image information collected by the mobile device.
[0145] Optionally, in order to better record the obstacles corresponding to the non-grass boundary, the non-grass boundary can also be marked by a marker box. In some optional embodiments, the marker box can be a rectangle of a pre-set fixed size.
[0146] In some alternative embodiments, at least four marker points can be obtained first when the self-moving device moves along the non-grass boundary, and then the circumscribed rectangles corresponding to the at least four marker points can be obtained, with the circumscribed rectangles serving as the marker boxes. The yaw angle data corresponding to each marker point differs from a preset yaw angle threshold; optionally, the yaw angle threshold can be 90 degrees. Thus, when the self-moving device moves along the non-grass boundary, a marker point is set for every 90-degree increase in the yaw angle data. Since the movement ends when the yaw angle data reaches at least 360 degrees, at least four marker points can be obtained.
[0147] Next, the bounding rectangle of at least four marker points can be used as the marker frame. The specific process of determining the bounding rectangle can be found in existing technologies, and will not be elaborated further in this application. For example... Figure 7 As shown, Figure 7 This is a schematic diagram of a marker frame provided in an embodiment of this application. The obstacle corresponding to the non-grass boundary is... Figure 7 Any one of the isolated islands 1 to n in the map can be considered as forming an island group. Additionally, each non-grass boundary has a corresponding rectangle, which is the marker box for that non-grass boundary. The area within this marker box is considered a restricted area, i.e., an area where the mobile device cannot move normally. Restricted areas 1 to n correspond to each non-grass boundary.
[0148] After obtaining the location and marker box of the obstacle corresponding to the non-grass boundary, the mobile device can store the location and marker box in the preset map to update the obstacle marker.
[0149] In this embodiment, the positions and marker frames of obstacles corresponding to non-grass boundaries are stored in a preset map to update the obstacle markers. This allows for the recording of relevant information about bypassed obstacles, enabling quick departure when the vehicle encounters the obstacle again. Furthermore, since the shapes of obstacles corresponding to non-grass boundaries may be irregular, the marker frames are determined using the bounding rectangles of the marker points, ensuring a closer match to the obstacle's shape and thus more accurate obstacle marking.
[0150] Step 206: Drive away from the obstacle and continue to detect non-grass boundaries on the path.
[0151] In this embodiment, after the self-moving device encounters an obstacle, it can be controlled to move away from the obstacle and continue detecting non-grass boundaries on the path. In some optional embodiments, such as... Figure 8 As shown, Figure 8 A flowchart illustrating the steps for driving away from an obstacle, as provided in this application embodiment, includes:
[0152] Step 802: Determine the first direction based on the markers in the preset map.
[0153] Step 804: Control the self-moving device to move along the first direction to drive away from the obstacle, and continue to detect non-grass boundaries on the path.
[0154] The first direction is marked as having no obstacles within a preset distance. Optionally, the presence of obstacles can be determined by detecting markers in a preset map, or by using a visual sensor or other sensors in the mobile device to detect obstacles in real time. The direction with no obstacles is ultimately taken as the first direction. It should be noted that the detection is performed within a preset distance; for example, it can detect obstacles within a two-meter range in the direction corresponding to that angle.
[0155] Therefore, after determining the first direction, the self-moving device can be controlled to move along the first direction to move away from the obstacle and continue to detect non-grass boundaries on the path. Figure 9 As shown, Figure 9 This is a schematic diagram illustrating a vehicle driving away from an obstacle, as provided in an embodiment of this application. The obstacle is... Figure 9 In the isolated island 1, the mobile device A drives away from the obstacle in the first direction indicated by the arrow.
[0156] In some embodiments, such as Figure 10 As shown, Figure 10 This is another schematic diagram of driving away from an obstacle provided in an embodiment of this application, wherein the obstacle is... Figure 10 Island 1 or Island 2 in the middle, combined Figure 9When mobile device A leaves obstacle 1 (island 1), it may encounter obstacle 2 (island 2). Island 2 then acts as an obstacle, and mobile device A will move along this obstacle. The movement path is... Figure 10 A curve around island 2. After the movement ends, the process of leaving island 1 can be continued to leave island 2. Since this process is the same as the process of leaving island 1, it will not be described again in this embodiment.
[0157] Step 208: In response to the detection of a non-grass boundary, query the marker according to the preset map.
[0158] In the process of the self-moving device moving along the first direction and continuing to detect non-grass boundaries on the path, the self-moving device can be controlled to respond to the detection of non-grass boundaries and query the markers according to the preset map.
[0159] As the mobile device moves away from the obstacle in the first direction, there is a possibility of it returning to an obstacle it previously bypassed. Please refer to [the documentation / reference needed]. Figure 10 After the mobile device A moves away from the obstacle (island 2) along the first direction, it may return to island 1. At this point, island 1 has become an obstacle that was previously bypassed. Consequently, the mobile device will re-detect the non-grass boundary and can then query the obstacle markers based on the preset map.
[0160] Step 212: If the preset map contains a marker corresponding to the current non-grass boundary, drive away from the current non-grass boundary.
[0161] In cases where the preset map includes markers corresponding to the current non-grass boundaries, such as... Figure 11 As shown, Figure 11 A flowchart illustrating the steps for leaving a current non-grass boundary, as provided in this application embodiment, includes:
[0162] Step 1102: If the preset map contains markers corresponding to the current non-grass boundary, determine the second direction based on the markers in the preset map.
[0163] Step 1104: Control the self-moving device to move along the second direction to leave the current non-grass boundary.
[0164] Since the preset map includes markers for multiple obstacles, the obstacles corresponding to the current non-grass boundary of the self-moving device can be determined based on the preset map as the self-moving device moves along the first direction.
[0165] If the preset map contains a marker corresponding to the current non-grass boundary, it means the mobile device has already bypassed the obstacle. The second direction can be determined directly based on the markers in the preset map, eliminating the need to bypass the obstacle again. The mobile device can then move along the second direction, which is the direction away from the obstacle. Furthermore, there are no obstacle markers within a preset distance along the second direction, and the angle between the second and first directions is within a deviation angle threshold, which can be pre-defined. For example, the second direction is the same as the first direction.
[0166] In this embodiment, when it is determined that the obstacle corresponding to the current non-grass boundary is a previously bypassed obstacle, since the marker of the previously bypassed obstacle has been recorded, it is not necessary to move along the current non-grass boundary repeatedly. The self-moving device can be directly controlled to move in the second direction to leave the current non-grass boundary, thereby improving the efficiency of leaving the current non-grass boundary.
[0167] Step 214: If the preset map does not contain the marker corresponding to the current non-grass boundary, move along the current non-grass boundary to identify the obstacle corresponding to the current non-grass boundary, update the marker of the obstacle corresponding to the current non-grass boundary to the preset map, and leave the current non-grass boundary.
[0168] In cases where the preset map does not contain markers corresponding to the current non-grass boundary, the device can move along the current non-grass boundary to identify obstacles corresponding to it. Similarly, when controlling the self-moving device to identify the current non-grass boundary, it can also use its radar or other identification devices to determine the obstacles corresponding to that boundary.
[0169] After identifying the obstacle corresponding to the current non-grass boundary, the markers of the obstacle corresponding to the current non-grass boundary can be updated to the preset map.
[0170] After updating the obstacle markers corresponding to the current non-grass boundary to the preset map, when leaving the current non-grass boundary, such as Figure 12 As shown, Figure 12 Another flowchart of steps for leaving the current non-grass boundary provided in this application embodiment includes:
[0171] Step 1202: Update the markers of obstacles corresponding to the current non-grass boundaries to the preset map.
[0172] Step 1203: Determine the third direction based on the markers in the preset map.
[0173] Step 1204: Control the self-moving device to move along a third direction to leave the current non-grass boundary.
[0174] When updating the markers of obstacles corresponding to the current non-grass boundary to the preset map, the location and marker frame of the current non-grass boundary can be obtained based on information acquired as the mobile device moves along the current non-grass boundary, and then stored in the preset map. The information acquired as the mobile device moves along the current non-grass boundary can include location information collected by the mobile device's odometer, or image information collected by the mobile device.
[0175] To better record the obstacles corresponding to the current non-grass boundary, a marker box can be used to mark the non-grass boundary. In some optional embodiments, the specific process of determining the marker box can be referred to the above embodiments, and will not be repeated here.
[0176] Therefore, a third direction can be determined based on the markers in the preset map. Specifically, there are no markers for any obstacles within a third preset distance range in the third direction, and the angle between the third direction and the first direction is within the deviation angle threshold range, which can be preset and customized.
[0177] Optionally, the presence of obstacles can be determined by detecting markers in a preset map, or by using a visual sensor or other sensors in the mobile device to detect obstacles in real time. The direction without any obstacles is then used as the third direction. It should be noted that the detection of obstacles is also performed within a preset distance; for example, the presence of obstacles can be detected within a two-meter range in the direction corresponding to that angle.
[0178] In this embodiment, by determining the third direction based on the markers in the preset map, it is possible to avoid encountering other non-grass boundaries when leaving the current non-grass boundary, thereby improving the reliability and efficiency of leaving the current non-grass boundary.
[0179] In some alternative embodiments, such as Figure 13 As shown, Figure 13 A flowchart of another obstacle removal method provided in this application embodiment includes:
[0180] Step 1302: When the self-moving device moves away from the first obstacle, record the first departure direction of the self-moving device.
[0181] Step 1304: In response to the self-moving device detecting a non-grass boundary, move and / or work along the non-grass boundary, and determine the non-grass boundary as a second obstacle.
[0182] Step 1306: Determine the second departure direction based on the position of the first obstacle and the first departure direction.
[0183] Step 1308: Control the self-moving device to move away from the first obstacle and the second obstacle according to the second departure direction.
[0184] The obstacle removal method provided in this application is applied to a self-moving device, which may be a robotic vacuum cleaner, a smart lawnmower, etc. Furthermore, the self-moving device is configured to move and / or operate along the boundary of the work area.
[0185] When the mobile device encounters a first obstacle, the marker of the first obstacle is recorded in a preset map, and the first departure direction of the mobile device as it moves away from the first obstacle is also recorded.
[0186] The self-moving device is controlled to move and / or operate along the non-grass boundary in response to the detection of a non-grass boundary, and the non-grass boundary is identified as a second obstacle. Then, a second departure direction can be determined based on a first departure direction and the position of the first obstacle marked in a preset map, wherein the angle between the second departure direction and the first departure direction is within a deviation angle threshold range, which can be preset and customized.
[0187] Ultimately, the self-moving device can be controlled to move away from the first and second obstacles according to the second departure direction.
[0188] The obstacle avoidance method provided in this application includes: responding to the detection of a non-grass boundary by the self-moving device, controlling the self-moving device to move along the non-grass boundary, identifying the obstacle corresponding to the non-grass boundary, updating the obstacle's marker to a preset map, leaving the obstacle, and continuing to detect non-grass boundaries on the path. In response to the detection of a non-grass boundary, querying the marker according to the preset map, leaving the current non-grass boundary if the preset map contains the marker corresponding to the current non-grass boundary, or moving along the current non-grass boundary if the preset map does not contain the marker corresponding to the current non-grass boundary, to identify the obstacle corresponding to the current non-grass boundary, updating the marker of the obstacle corresponding to the current non-grass boundary to the preset map, and leaving the current non-grass boundary. This solution improves obstacle avoidance efficiency by updating the marker of the previously bypassed obstacle to the preset map after the self-moving device moves along the non-grass boundary, thus recording the location marker information of all previously bypassed obstacles in the preset map. This facilitates early avoidance of the obstacle when encountering it again, preventing repeated movement around previously bypassed obstacles.
[0189] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0190] Figure 14 This is a structural block diagram of a self-moving device provided in an embodiment of this application.
[0191] like Figure 14 As shown, the self-moving device 1400 includes:
[0192] The recognition module 1402 is used to control the self-moving device to move along the non-grass boundary in response to the self-moving device detecting a non-grass boundary, and to identify the obstacle corresponding to the non-grass boundary.
[0193] The first update module 1404 is used to update the obstacle markers to the preset map, wherein the markers correspond one-to-one with the non-grass boundaries.
[0194] The detection module 1406 is used to drive away from obstacles and continue to detect non-grass boundaries on the path.
[0195] The query module 1408 is used to query markers based on a preset map in response to the detection of non-grass boundaries.
[0196] The control module 1410 is used to drive away from the current non-grass boundary when the preset map contains a marker corresponding to the current non-grass boundary; or to move along the current non-grass boundary when the preset map does not contain a marker corresponding to the current non-grass boundary, so as to identify obstacles corresponding to the current non-grass boundary.
[0197] The second update module 1412 is used to update the markers of obstacles corresponding to the current non-grass boundary to the preset map and drive away from the current non-grass boundary.
[0198] In some optional embodiments, the self-moving device may further include an edge sensor module, which includes at least one camera for acquiring local image data. The self-moving device is also used to generate route guidance data based on the local image data. The camera may be a monocular camera.
[0199] In some alternative embodiments, the edge sensor module may also include a collision sensor, so that the relevant data collected by the edge sensor module can be processed by a preset edge algorithm, and the self-moving device can realize effective and robust edge function according to the processing result.
[0200] Regarding the self-moving device in the above embodiments, the specific methods by which each module performs its operations have been described in detail in the embodiments related to the method, and will not be elaborated upon here. Each module in the above-described self-moving device can be implemented entirely or partially through software, hardware, or a combination thereof. Each module can be embedded in or independent of the processor in a computer device in hardware form, or it can be stored in the memory of a computer device in software form, so that the processor can call and execute the operations of each module.
[0201] In one embodiment of this application, a computer device is provided, the computer device including a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:
[0202] In response to the self-moving device detecting a non-grass boundary, the self-moving device is controlled to move along the non-grass boundary and the obstacle corresponding to the non-grass boundary is identified;
[0203] Update obstacle markers to the preset map, where each marker corresponds one-to-one with a non-grass boundary;
[0204] Drive away from the obstacle and continue to detect non-grass boundaries on the path;
[0205] In response to the detection of a non-grass boundary, the marker is queried according to the preset map;
[0206] If the preset map contains a marker corresponding to the current non-grass boundary, drive away from the current non-grass boundary;
[0207] or,
[0208] If the preset map does not contain the marker corresponding to the current non-grass boundary, move along the current non-grass boundary to identify the obstacle corresponding to the current non-grass boundary;
[0209] Update the markers of obstacles corresponding to the current non-grass boundary to the preset map, and then drive away from the current non-grass boundary.
[0210] In one embodiment of this application, the processor further performs the following steps when executing the computer program:
[0211] Real-time acquisition of image information from a mobile device within a first preset distance range;
[0212] Real-time detection of non-grass boundaries within image information to obtain the detection results of non-grass boundaries detected by the mobile device;
[0213] When a non-grass boundary is detected in the detection results, the self-moving device is controlled to respond to the detection of the non-grass boundary and perform the corresponding action.
[0214] In one embodiment of this application, the processor further performs the following steps when executing the computer program:
[0215] Control the self-moving device to move along the non-grass boundary based on historical movement data and identify the non-grass boundary, generating the identification result;
[0216] Based on the identification results, the outer boundary of the obstacle corresponding to the non-grass boundary is determined, where the outer boundary of the obstacle is used to characterize the external contour of the obstacle.
[0217] In one embodiment of this application, the processor further performs the following steps when executing the computer program:
[0218] When the mobile device is in a recharging state, obtain the current recharging time of the mobile device, where the current recharging time is used to characterize the time required for the mobile device to return to the charging station;
[0219] If the current recharge duration is less than the preset duration threshold, the self-moving device is controlled to detour along the non-grass boundary according to the first detour angle threshold.
[0220] In one embodiment of this application, the processor further performs the following steps when executing the computer program:
[0221] If the current recharge duration is greater than or equal to a preset duration threshold, the self-moving device is controlled to detour along the non-grass boundary at a second detour angle threshold, wherein the second detour angle threshold is less than the first detour angle threshold.
[0222] In one embodiment of this application, the processor further performs the following steps when executing the computer program:
[0223] Based on the markers in the preset map, a first direction is determined, wherein there are no markers of any obstacles within a preset distance in the first direction;
[0224] Control the self-moving device to move along the first direction to drive away from the obstacle, and continue to detect non-grass boundaries on the path.
[0225] In one embodiment of this application, the processor further performs the following steps when executing the computer program:
[0226] If the preset map contains markers corresponding to the current non-grass boundary, a second direction is determined based on the markers in the preset map, wherein there are no markers of any obstacles within a second preset distance range in the second direction, and the angle between the second direction and the first direction is within the deviation angle threshold range.
[0227] Control the self-moving device to move in the second direction to leave the current non-grass boundary.
[0228] In one embodiment of this application, the processor further performs the following steps when executing the computer program:
[0229] Update the markers of obstacles corresponding to the current non-grass boundaries to the preset map;
[0230] Based on the markers in the preset map, a third direction is determined, wherein there are no markers of any obstacles within a third preset distance range in the third direction, and the angle between the third direction and the first direction is within the deviation angle threshold range.
[0231] Control the self-moving device to move along a third direction to leave the current non-grass boundary.
[0232] The computer device provided in this application embodiment has a similar implementation principle and technical effect to the above method embodiment, and will not be described again here.
[0233] In one embodiment of this application, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, it performs the following steps:
[0234] In response to the self-moving device detecting a non-grass boundary, the self-moving device is controlled to move along the non-grass boundary and the obstacle corresponding to the non-grass boundary is identified;
[0235] Update obstacle markers to the preset map, where each marker corresponds one-to-one with a non-grass boundary;
[0236] Drive away from the obstacle and continue to detect non-grass boundaries on the path;
[0237] In response to the detection of a non-grass boundary, the marker is queried according to the preset map;
[0238] If the preset map contains a marker corresponding to the current non-grass boundary, drive away from the current non-grass boundary;
[0239] or,
[0240] If the preset map does not contain the marker corresponding to the current non-grass boundary, move along the current non-grass boundary to identify the obstacle corresponding to the current non-grass boundary;
[0241] Update the markers of obstacles corresponding to the current non-grass boundary to the preset map, and then drive away from the current non-grass boundary.
[0242] In one embodiment of this application, the computer program, when executed by a processor, further performs the following steps:
[0243] Real-time acquisition of image information from a mobile device within a first preset distance range;
[0244] Real-time detection of non-grass boundaries within image information to obtain the detection results of non-grass boundaries detected by the mobile device;
[0245] When a non-grass boundary is detected in the detection results, the self-moving device is controlled to respond to the detection of the non-grass boundary and perform the corresponding action.
[0246] In one embodiment of this application, the computer program, when executed by a processor, further performs the following steps:
[0247] Control the self-moving device to move along the non-grass boundary based on historical movement data and identify the non-grass boundary, generating the identification result;
[0248] Based on the identification results, the outer boundary of the obstacle corresponding to the non-grass boundary is determined, where the outer boundary of the obstacle is used to characterize the external contour of the obstacle.
[0249] In one embodiment of this application, the computer program, when executed by a processor, further performs the following steps:
[0250] When the mobile device is in a recharging state, obtain the current recharging time of the mobile device, where the current recharging time is used to characterize the time required for the mobile device to return to the charging station;
[0251] If the current recharge duration is less than the preset duration threshold, the self-moving device is controlled to detour along the non-grass boundary according to the first detour angle threshold.
[0252] In one embodiment of this application, the computer program, when executed by a processor, further performs the following steps:
[0253] If the current recharge duration is greater than or equal to a preset duration threshold, the self-moving device is controlled to detour along the non-grass boundary at a second detour angle threshold, wherein the second detour angle threshold is less than the first detour angle threshold.
[0254] In one embodiment of this application, the computer program, when executed by a processor, further performs the following steps:
[0255] Based on the markers in the preset map, a first direction is determined, wherein there are no markers of any obstacles within a preset distance in the first direction;
[0256] Control the self-moving device to move along the first direction to drive away from the obstacle, and continue to detect non-grass boundaries on the path.
[0257] In one embodiment of this application, the computer program, when executed by a processor, further performs the following steps:
[0258] If the preset map contains markers corresponding to the current non-grass boundary, a second direction is determined based on the markers in the preset map, wherein there are no markers of any obstacles within a second preset distance range in the second direction, and the angle between the second direction and the first direction is within the deviation angle threshold range.
[0259] Control the self-moving device to move in the second direction to leave the current non-grass boundary.
[0260] In one embodiment of this application, the computer program, when executed by a processor, further performs the following steps:
[0261] Update the markers of obstacles corresponding to the current non-grass boundaries to the preset map;
[0262] Based on the markers in the preset map, a third direction is determined, wherein there are no markers of any obstacles within a third preset distance range in the third direction, and the angle between the third direction and the first direction is within the deviation angle threshold range.
[0263] Control the self-moving device to move along a third direction to leave the current non-grass boundary.
[0264] The computer-readable storage medium provided in this embodiment is similar in principle and technical effect to the method embodiment described above, and will not be repeated here.
[0265] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. This computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and RAMbus dynamic RAM (RDRAM), etc.
[0266] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the following claims.
[0267] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.
Claims
1. An obstacle removal method applied to a self-moving device, the self-moving device being configured to move and / or operate along the boundary of a working area, characterized in that, The method includes: In response to the self-moving device detecting a non-grass boundary, the self-moving device is controlled to move along the non-grass boundary, and obstacles corresponding to the non-grass boundary are identified; Update the markers of the obstacles to a preset map, wherein each marker corresponds one-to-one with a non-grass boundary; Drive away from the obstacle and continue to detect non-grass boundaries on the path; In response to the detection of the non-grass boundary, a marker is queried according to the preset map; If the preset map contains the marker corresponding to the current non-grass boundary, drive away from the current non-grass boundary; or, If the preset map does not contain the marker corresponding to the current non-grass boundary, move along the current non-grass boundary to identify the obstacle corresponding to the current non-grass boundary; Update the markers of the obstacles corresponding to the current non-grass boundary to the preset map, and drive away from the current non-grass boundary.
2. The method according to claim 1, characterized in that, The response to the self-moving device detecting a non-grass boundary includes: Real-time acquisition of image information within a first preset distance range of the self-moving device; Real-time detection of non-grass boundaries within the image information to obtain the detection results of non-grass boundaries detected by the mobile device; When the non-grass boundary is present in the detection results, the self-moving device is controlled to respond to the detection of the non-grass boundary and perform the corresponding action.
3. The method according to claim 1 or 2, characterized in that, The control of the self-moving device to move along the non-grass boundary to identify obstacles corresponding to the non-grass boundary includes: The self-moving device is controlled to move along the non-grass boundary based on historical movement data and identify the non-grass boundary, generating an identification result; Based on the recognition results, the outer boundary of the obstacle corresponding to the non-grass boundary is determined, wherein the outer boundary of the obstacle is used to characterize the external contour of the obstacle.
4. The method according to claim 1 or 2, characterized in that, The method of controlling the self-moving device to move along the non-grass boundary to identify obstacles corresponding to the non-grass boundary further includes: When the self-mobile device is in a recharging state, the current recharging time of the self-mobile device is obtained, wherein the current recharging time is used to characterize the time required for the self-mobile device to return to the charging station; If the current recharge duration is less than a preset duration threshold, the self-moving device is controlled to detour along the non-grass boundary at a first detour angle threshold.
5. The method according to claim 4, characterized in that, The method of controlling the self-moving device to move along the non-grass boundary to identify obstacles corresponding to the non-grass boundary further includes: If the current recharge duration is greater than or equal to the preset duration threshold, the self-moving device is controlled to detour along the non-grass boundary at a second detour angle threshold, wherein the second detour angle threshold is less than the first detour angle threshold.
6. The method according to claim 1 or 2, characterized in that, The step of driving away from the obstacle and continuing to detect non-grass boundaries on the path includes: Based on the markers in the preset map, a first direction is determined, wherein there are no markers of any obstacles within a preset distance in the first direction; The self-moving device is controlled to move along the first direction to move away from the obstacle, and non-grass boundaries on the path are continuously detected.
7. The method according to claim 1 or 2, characterized in that, When the preset map contains the marker corresponding to the current non-grass boundary, driving away from the current non-grass boundary includes: If the preset map contains the marker corresponding to the current non-grass boundary, a second direction is determined based on the marker in the preset map, wherein there is no marker of any obstacle within a second preset distance range in the second direction, and the angle between the second direction and the first direction is within the deviation angle threshold range; Control the self-moving device to move along the second direction to leave the current non-grass boundary.
8. The method according to claim 1 or 2, characterized in that, The step of updating the markers of obstacles corresponding to the current non-grass boundary to the preset map and driving away from the current non-grass boundary includes: Update the markers of the obstacles corresponding to the current non-grass boundary to the preset map; Based on the markers in the preset map, a third direction is determined, wherein there are no markers of any obstacles within a third preset distance range in the third direction, and the angle between the third direction and the first direction is within the deviation angle threshold range. Control the self-moving device to move along the third direction to leave the current non-grass boundary.
9. An obstacle removal method applied to a self-moving device, the self-moving device being configured to move and / or operate along the boundary of a working area, characterized in that, include: When the self-moving device moves away from the first obstacle, the first departure direction of the self-moving device is recorded; In response to the self-moving device detecting a non-grass boundary, moving and / or operating along the non-grass boundary, and determining the non-grass boundary as a second obstacle; The second departure direction is determined based on the position of the first obstacle and the first departure direction, wherein the angle between the second departure direction and the first departure direction is within the deviation angle threshold range; The self-moving device is controlled to move away from the first obstacle and the second obstacle according to the second departure direction.
10. A self-moving device, characterized in that, include: The identification module is used to control the self-moving device to move along the non-grass boundary in response to the self-moving device detecting a non-grass boundary, and to identify the obstacle corresponding to the non-grass boundary. The first update module is used to update the markers of the obstacles to a preset map, wherein the markers correspond one-to-one with the non-grass boundaries; The detection module is used to move away from the obstacle and continue to detect non-grass boundaries on the path; The query module is used to query markers based on the preset map in response to the detection of the non-grass boundary; The control module is configured to, when the preset map contains the marker corresponding to the current non-grass boundary, drive away from the current non-grass boundary; or, when the preset map does not contain the marker corresponding to the current non-grass boundary, move along the current non-grass boundary to identify obstacles corresponding to the current non-grass boundary. The second update module is used to update the markers of the obstacles corresponding to the current non-grass boundary to the preset map, and drive away from the current non-grass boundary.