Self-moving robot, control method and control apparatus therefor, storage medium, computer program and program product

By detecting obstacles ahead and dynamically adjusting the turning radius, and using LDS laser sensors and line laser sensors to measure the position and distance of obstacles, the problem of controlling the movement path of a self-moving robot in narrow spaces has been solved, achieving stable passage and collision avoidance.

WO2026007177A1PCT designated stage Publication Date: 2026-01-08BEIJING ROBOROCK INNOVATION TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/107310
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-07-05
Filing Date
2024-07-24
Publication Date
2026-01-08

AI Technical Summary

Technical Problem

Self-moving robots have difficulty effectively controlling their path while moving, leading to missed scans and collisions, especially when encountering narrow spaces and irregular obstacles, making it difficult to pass through stably.

Method used

By detecting obstacles ahead, the turning radius is dynamically adjusted. The position and distance of obstacles are measured using LDS laser sensors and line laser sensors, the dynamic turning radius R2 is calculated, and the robot's movement is controlled accordingly to avoid collisions.

Benefits of technology

It enables stable passage in confined spaces, reduces missed scans and collisions, and improves the mobility and safety of the self-moving robot.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024107310_08012026_PF_FP_ABST
    Figure CN2024107310_08012026_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the present disclosure are a self-moving robot, a control method and control apparatus therefor, a storage medium, a program product and a computer program. The control method comprises: if a self-moving robot is in a turning scenario, controlling the self-moving robot to move at an initial turning radius R1; detecting whether there is a second obstacle ahead of the self-moving robot; and, if there is a second obstacle ahead of the self-moving robot, determining a dynamic turning radius R2, and using the dynamic turning radius R2 to control the movement of the self-moving robot, R2 being less than R1. The present disclosure can effectively control the travel route of the self-moving robot and reduce missed sweeping and collisions.
Need to check novelty before this filing date? Find Prior Art

Description

Self-moving robot, control method, control device, storage medium, computer program and program product thereof

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to Chinese Patent Application No. 202410903498.6, filed on July 5, 2024, the entire contents of which are incorporated herein by reference. TECHNICAL FIELD

[0003] The present disclosure relates to the technical field of self-moving robots, in particular, to a self-moving robot, a control method, a control device, a storage medium, a computer program and a computer program product. BACKGROUND

[0004] When a self-moving robot travels, it needs to cope with complex surrounding environment. For example, when the self-moving robot performs a cleaning task, it sometimes needs to travel along an obstacle and keep a certain distance from the obstacle. If a corner space is narrow during the travel process, the self-moving robot may not be able to pass through smoothly, resulting in missed scanning of these areas, and the self-moving robot may also collide with the obstacle during travel, causing damage to the device. Therefore, how to effectively control the travel route of the self-moving robot becomes a technical problem to be solved at present.

[0005] SUMMARY

[0006] Some embodiments of the present disclosure provide a self-moving robot, a control method, a control device, a storage medium, a computer program and a computer program product, which can effectively control the travel route of the self-moving robot and reduce missed scanning and collision.

[0007] The embodiments of the present disclosure provide a self-moving robot control method, which comprises: if the self-moving robot is in a turning scene, controlling the self-moving robot to move at an initial turning radius R1; detecting whether a second obstacle exists in front of the self-moving robot; if the second obstacle exists in front of the self-moving robot, determining a dynamic turning radius R2, and controlling the movement of the self-moving robot at the dynamic turning radius R2, wherein R2 is less than R1.

[0008] In some embodiments, the step of determining the dynamic turning radius R2 comprises: determining a first reference point A and a second reference point B under the current trajectory; wherein the first reference point A is the point closest to the center of the body from the second obstacle, and the second reference point B is the point closest to the center of the body from the first edge, and the first edge is the edge currently followed by the self-moving robot; and determining the dynamic turning radius R2 according to the positions of the first reference point A and the second reference point B.

[0009] In some embodiments, the step of determining the dynamic turning radius R2 according to the positions of the first reference point A and the second reference point B comprises: obtaining the coordinates of the first reference point A and the second reference point B relative to the center of the self-moving robot respectively; determining the angle θ actually required to be turned in the dynamic turning, the angle θ being the included angle between the perpendicular bisector of the line connecting the first reference point and the second reference point and the moving direction of the self-moving robot; and calculating the dynamic turning radius R2 according to the tangent velocity V of the advancing in the dynamic turning and the angle θ actually required to be turned in the dynamic turning.

[0010] In some embodiments, the formula for calculating the dynamic turning radius R2 is R2 = V 2 / θ, wherein V is the tangent velocity of the advancing in the dynamic turning, and θ is the angle actually required to be turned in the dynamic turning.

[0011] In some embodiments, the method for calculating the coordinates of the first reference point A relative to the center of the self-moving robot comprises: determining the coordinates of the first reference point A relative to the center of the self-moving robot according to the distance L1 between the center of the robot and the first reference point A and the included angle α of the line connecting the center of the robot and the first reference point A relative to the advancing direction of the robot body.

[0012] In some embodiments, the method for determining the coordinates of the second reference point B relative to the center of the self-moving robot comprises: calculating the coordinates of the second reference point B relative to the center of the self-moving robot according to the distance L2 between the center of the self-moving robot and the second reference point B and the included angle β of the line connecting the center of the self-moving robot and the second reference point B relative to the advancing direction of the robot body.

[0013] In some embodiments, after the steps of determining the first reference point A and the second reference point B under the current trajectory, the method further comprises: obtaining the distance L1 between the center of the self-moving robot and the first reference point A and the distance L2 between the center of the self-moving robot and the second reference point B; and if L1 or L2 is less than or equal to the sum of the radius of the robot body and a preset safety margin, controlling the self-moving robot to stop moving.

[0014] In some embodiments, in the step of detecting the second obstacle in front of the self-moving robot, the first sensor carried by the self-moving robot is used to detect the second obstacle.

[0015] In some embodiments, the first sensor is an LDS laser sensor and / or a line laser sensor.

[0016] In some embodiments, in the step of detecting the end point of the first edge during the movement of the self-moving robot along the first edge, the end point of the first edge is detected by an edge-following sensor and / or an LDS laser sensor carried by the self-moving robot.

[0017] In some embodiments, in the step of detecting the second obstacle in front of the self-moving robot, if the second obstacle does not exist, the self-moving robot is controlled to move at the initial turning radius R1 as the current turning radius.

[0018] The embodiments of the present disclosure further provide a self-moving robot control device, which comprises: an initial radius generation unit configured to control the self-moving robot to move at an initial turning radius R1 if the self-moving robot is in a turning scenario; an obstacle detection unit configured to detect whether a second obstacle exists in front of the self-moving robot; and a dynamic radius generation unit configured to determine a dynamic turning radius R2 if the second obstacle exists in front of the self-moving robot, and control the movement of the self-moving robot at the dynamic turning radius R2, wherein R2 is less than R1.

[0019] The embodiments of the present disclosure further provide a self-moving robot, which comprises: a memory configured to store a program or instructions; and a controller configured to implement the self-moving robot control method according to any one of the preceding embodiments when executing the program or instructions.

[0020] The embodiments of the present disclosure further provide a computer-readable storage medium, which stores a computer program, and the computer program implements the self-moving robot control method according to any one of the preceding embodiments when executed by a processor.

[0021] The embodiments of the present disclosure further provide a computer program product, which comprises a computer program, and the computer program implements the self-moving robot control method according to any one of the preceding embodiments when executed by a processor.

[0022] The embodiments of the present disclosure further provide a computer program, which comprises computer program code, and the computer program code causes a computer to perform the self-moving robot control method according to any one of the preceding embodiments when the computer program code is executed on the computer.

[0023] Compared with the related art, the self-moving robot control method and device provided by the embodiments of the present disclosure can achieve a dynamic turning trajectory according to the distance information of each obstacle, can stably complete the wall-following turning action in a narrow space, and can more effectively control the travel route of the self-moving robot. BRIEF DESCRIPTION OF DRAWINGS

[0024] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present disclosure and serve to explain the principles of the present disclosure. It is apparent that the accompanying drawings, which are described below, are only some embodiments of the present disclosure, and other drawings can be obtained by those of ordinary skill in the art without creative effort based on these drawings. In the drawings:

[0025] FIG. 1 is a schematic diagram of a three-dimensional structure of a self-moving robot according to some embodiments of the present disclosure;

[0026] FIG. 2 is a specific application scenario of a self-moving robot control method according to the present disclosure;

[0027] FIG. 3 is a specific application scenario of a self-moving robot control method according to the present disclosure;

[0028] FIG. 4 is a flowchart of a self-moving robot control method according to some embodiments of the present disclosure;

[0029] FIG. 5 is a schematic diagram of a self-moving robot control method according to some embodiments of the present disclosure;

[0030] FIG. 6 is a schematic diagram of a self-moving robot control method according to some embodiments of the present disclosure;

[0031] FIG. 7 is a schematic diagram of a self-moving robot control method according to some embodiments of the present disclosure;

[0032] FIG. 8 is a schematic diagram of a self-moving robot control device according to some embodiments of the present disclosure.

[0033] FIG. 9 is a schematic diagram of a connection structure of a self-moving robot according to some embodiments of the present disclosure.

[0034] Legend of reference signs:

[0035] Sweeping robot 10, body 110, forward portion 111, rearward portion 112, perception system 120, buffer 122, first obstacle 210, first edge 211, second edge 212, second obstacle 220. DETAILED DESCRIPTION

[0036] In order to make the purposes, technical solutions and advantages of the present disclosure clearer, the present disclosure will be described in further detail below with reference to the accompanying drawings. Obviously, the described embodiments are only some of the embodiments of the present disclosure, not all the embodiments. Based on the embodiments in the present disclosure, all other embodiments obtained by those of ordinary skill in the art without creative effort fall within the scope of protection of the present disclosure.

[0037] The terminology used in the disclosure of the embodiments herein is for the purpose of describing particular embodiments only and is not intended to be limiting thereof. The use of the singular herein includes the plural unless the context clearly dictates otherwise. The use of the term "a" or "an" herein does not denote a limitation of quantity, but rather denotes the presence of at least one of the referenced item. The terms "comprising," "comprises," "including," "includes" or any other variation thereof are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but can include other elements not expressly listed or inherent to such process, method, article, or apparatus. The terms "about" and "substantially" are used herein to represent an amount that is close to a stated value, but not necessarily exact. The terms "about" and "substantially" can include amounts that are within standard experimental error for the particular measurement technique at issue.

[0038] It should be understood that the term "and / or" as used herein merely describes associated objects in association, which means that there can be three relationships, for example, A and / or B, which can represent three cases: A exists alone, A and B exist together, and B exists alone. In addition, the character " / " herein generally represents an "or" relationship between the front and rear associated objects.

[0039] It should also be noted that the terms "comprising", "including", or any other variation thereof are intended to cover non-exclusive inclusion, so that the product or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such product or device. Without more limitation, the element defined by the sentence "including one" does not exclude the presence of other identical elements in the product or device including the element.

[0040] The optional embodiments of the disclosure will be described in detail below with reference to the accompanying drawings.

[0041] The control method provided by the embodiments of the present application is applicable to various types of self-moving robots, such as a sweeping robot, a mopping robot, a vacuum cleaner, a weeding machine, etc. For ease of description, the control method will be described below by taking a sweeping robot as an example.

[0042] Referring to FIG. 1, the self-moving robot is a sweeping robot 10, which can further include a body 110, a perception system 120, a controller, a driving system, a cleaning system, an energy system, etc.

[0043] The body 110 includes a front portion 111 and a rear portion 112, wherein a bumper 122 can be further arranged on the front portion 111 of the body 110. The body 110 has a circular or approximately circular shape. In some embodiments, the body 110 is circular, and the center of the body 110 is the center of the circle. The circular design helps the sweeping robot 10 to be more flexible in obstacle avoidance when encountering obstacles.

[0044] The driving system includes a driving wheel assembly and a driven wheel assembly, which realizes the travel and steering of the sweeping robot 10.

[0045] The controller is configured to control the driving system, the cleaning system, etc., so that the robot cleaner 10 can perform the cleaning operation.

[0046] The perception system 120 is configured to provide various position information and motion state information of the robot cleaner 10 to the controller. The perception system 120 can include various sensors disposed on or inside the body 110, such as an LDS (Laser Distance Sensor) laser sensor, a line laser sensor, an edge-following sensor, a collision sensor, a cliff sensor, a magnetometer, an accelerometer, a gyroscope, an odometer, etc.

[0047] The LDS laser sensor scans the environment around the body 110 by emitting a laser beam and receiving the reflected light beam reflected back. The LDS laser sensor calculates the distance of the obstacle according to the time of the laser beam returning. The LDS laser sensor can perform a large-angle environmental scan, such as a 360-degree environmental scan, so as to dynamically collect the distance data of the obstacles around the body 110.

[0048] The line laser sensor is configured to detect obstacles in the front region of the body 110. The line laser sensor can provide more targeted detection of obstacles in front of the body 110, and dynamically collect the distance data of the obstacles in the direction of travel of the body 110. The line laser sensor can be further divided into a vertical line laser sensor and a horizontal line laser sensor. The vertical line laser sensor is configured to emit a laser line that is substantially perpendicular to the plane on which the mobile robot is located, and the horizontal line laser sensor is configured to emit a laser line that is substantially parallel to the plane on which the mobile robot is located.

[0049] The edge-following sensor is configured to assist the robot cleaner in edge-following cleaning. The edge-following sensor can accurately measure the distance between the body 110 and the edge of a specific obstacle (such as a wall), and ensure the effect of edge-following cleaning. The edge-following sensor is usually installed on both sides of the body 110, so as to ensure that a constant distance can be maintained when the body 110 travels along the wall, and improve the efficiency and quality of edge-following cleaning.

[0050] FIG. 2 and FIG. 3 show an application scenario of the self-moving robot control method. In the figures, the robot body 110 travels along a wall while performing a routine task, specifically, the robot body 110 moves along a first edge 211 of a first obstacle 210 located on the right side of the travel direction, and maintains a preset distance from the first edge 211 during the movement. When the robot body 110 approaches the end point of the first edge 211, the robot body 110 performs a circular arc trajectory with a fixed turning radius R1, while trying to obtain new wall distance information to resume the wall travel. As shown in FIG. 2, when there is no obstacle in front of the left side of the robot body 110, the robot body 110 can successfully perform the turning with the turning radius R1; however, as shown in FIG. 3, when there is a second obstacle 220 in front of the left side of the robot body 110, if the robot body 110 continues to move along the arc with the fixed turning radius R1, the robot body 110 will collide with the second obstacle 220 on the left front side, and finally the robot body 110 cannot successfully pass through the narrow area between the first obstacle 210 and the second obstacle 220.

[0051] Referring to FIG. 4-FIG. 6, for the above scenario, the present embodiment provides a self-moving robot control method, the self-moving robot comprising a robot body 110; the method comprising:

[0052] S130, if the self-moving robot is in a turning scenario, controlling the self-moving robot to move with an initial turning radius R1.

[0053] S140, detecting whether there is a second obstacle 220 in front of the self-moving robot.

[0054] S150, if there is the second obstacle 220 in front of the self-moving robot, determining a dynamic turning radius R2, and controlling the movement of the self-moving robot with the dynamic turning radius R2, wherein R2 is less than R1.

[0055] Step S130, if the self-moving robot is in a turning scenario, controlling the self-moving robot to move with an initial turning radius R1.

[0056] In some embodiments, step S130 further comprises judging whether the self-moving robot enters a turning, which can comprise the following steps: during the movement of the self-moving robot along the first edge 211, detecting the end point of the first edge 211; if the end point of the first edge 211 is detected, entering the turning scenario, and the initial turning radius is R1.

[0057] The first edge 211 is the edge of the first obstacle 210, wherein the first obstacle 210 can be a wall, furniture or other obstacle with a relatively regular edge.

[0058] The body 110 travels at a preset distance from the first edge 211, which can be monitored by an edge-following sensor on the body 110. By continuously monitoring the distance from the first edge 211 through the edge-following sensor, the accuracy and stability of the body 110 during edge-following can be ensured.

[0059] In some embodiments, the body 110 moves along the edge of a wall or furniture for edge-following. The body 110 is usually also provided with one or more edge brushes, which can be located on one side or both sides of the body 110, and rotate to sweep dust at the edge during edge-following.

[0060] When the edge-following sensor detects a large distance change in the distance measurement from the first edge 211, or the LDS laser sensor detects that the distance measurement point on one side of the first edge 211 is interrupted, it can be considered that the end of the first edge 211 is detected, and the target wall surface for edge-following will end soon. It can be understood that in addition to the above-mentioned edge-following sensor and LDS laser sensor, other types of sensors such as infrared sensors or ultrasonic sensors can also be used to detect the end of the first edge, which can provide information about the distance relationship between the body 110 and the surrounding obstacles.

[0061] When the end of the first edge 211 is detected, the self-moving robot will enter a turning scenario. At this time, the body 110 will adopt a preset initial turning radius R1 for turning operation. Usually, the initial turning radius R1 is set to be relatively large, so that the body 110 can smoothly turn in most standard environments, maintain a safe distance between the body 110 and the wall, and reduce the risk of collision between the body 110 and the wall.

[0062] Step S140, detecting whether a second obstacle 220 exists in front of the self-moving robot.

[0063] The second obstacle 220 is usually an irregular obstacle, such as a part of furniture (e.g., a bed side or a chair leg). Due to the variety of positions and shapes of the second obstacle 220, it brings great challenges to the turning of the self-moving robot during movement.

[0064] In some embodiments, the self-moving robot detects the second obstacle in front by using the LDS laser sensor and / or line laser sensor carried by the self-moving robot. The LDS laser sensor and line laser sensor work together to accurately measure the position and distance of the second obstacle in front. It can be understood that in addition to the above-mentioned LDS laser sensor and line laser sensor, other types of sensors can also be used to detect the second obstacle.

[0065] Further, the front obstacle is usually located at the side front of the self-moving robot, if the first edge 211 is located at one side of the robot body 110, this step will mainly detect the area in front of the other side opposite to the first edge 211, for example, if the first edge 211 is located at the right side of the robot body 110, this step will detect the area in front of the left side of the robot body 110.

[0066] In this step, if the self-moving robot does not detect any obstacle in its predetermined detection path, it will continue to turn with the initially set turning radius R1. In this case, the self-moving robot will perform the turning action according to the planned path, and continue to move along the wall surface or other boundaries after turning; if the self-moving robot finds a second obstacle in front during the detection process, it needs to further perform the subsequent step S140 to dynamically adjust the turning radius. By dynamically adjusting the turning radius, the self-moving robot can improve its maneuverability and safety in complex environments while maintaining moving efficiency.

[0067] Step S150, if the second obstacle 220 exists in front of the self-moving robot, determine the dynamic turning radius R2, and control the movement of the self-moving robot with the dynamic turning radius R2, wherein R2 is less than R1.

[0068] The determination of the dynamic turning radius R2 can further include:

[0069] determining a first reference point A and a second reference point B under the current trajectory; wherein the first reference point A is the point closest to the center o of the robot body of the second obstacle 220, and the second reference point B is the point closest to the center o of the robot body of the first edge 211;

[0070] calculating the dynamic turning radius R2 according to the positions of the first reference point A and the second reference point B.

[0071] When the second obstacle 220 exists in front of the self-moving robot, two key reference points under the current trajectory need to be determined: the first reference point A and the second reference point B. Among them, the first reference point A is the point closest to the center o of the robot body of the second obstacle 220, and the second reference point B is the point closest to the center o of the robot body of the first edge 211.

[0072] In some embodiments, the self-moving robot can use the loaded sensors, such as the wall-following sensor, the LDS laser sensor, and the line laser sensor, to determine the first reference point A and the second reference point B.

[0073] For the first reference point A, the mobile robot measures the distance to the second obstacle 220 through sensors, determines the point of the second obstacle 220 closest to the center o of the robot - the first reference point A, and the distance L1 between the center o of the robot and the first reference point A, and also needs to obtain the angle a of the line oA connecting the center o of the robot and the first reference point A relative to the forward direction of the body 110.

[0074] For the second reference point B, the mobile robot measures the distance to the first edge 211 through sensors, determines the point of the first edge 211 closest to the center o of the robot - the second reference point B, and the distance L2 between the center o of the robot and the second reference point B, and also needs to obtain the angle β of the line oB connecting the center o of the robot and the second reference point B relative to the forward direction of the body 110.

[0075] According to L1, L2, a, β, the coordinates of the first reference point A and the second reference point B relative to the center o of the body can be calculated respectively, i.e. the position information of the first reference point A and the second reference point B. The coordinates of the first reference point A and the second reference point B are updated in real time with the movement of the body 110, ensuring that the mobile robot can adapt to changes in the environment while moving.

[0076] In step S150, the dynamic turning radius R2 can be calculated according to the position information of the first reference point A and the second reference point B. The dynamic turning radius R2 is smaller in value than the initial turning radius R1, and by adjusting the turning radius, the mobile robot can safely pass through the narrow area between the first obstacle and the second obstacle without collision.

[0077] The step of calculating the dynamic turning radius R2 according to the positions of the first reference point A and the second reference point B includes:

[0078] S151, respectively obtaining the coordinates of the first reference point A and the second reference point B relative to the center o of the body;

[0079] S152, calculating the angle θ actually needed to be turned for dynamic turning, which is the angle between the perpendicular line n1 of the line connecting the first reference point A and the second reference point B and the moving direction n2 of the mobile robot; and

[0080] S153, calculating the dynamic turning radius R2 according to the forward tangent velocity V before dynamic turning and the angle θ actually needed to be turned for dynamic turning.

[0081] In step S152, in order to ensure that the mobile robot passes through the space between the first reference point A and the second reference point B as much as possible, it is necessary for the left and right sides of the mobile robot to be tangent to the first reference point A and the second reference point B when passing through the first reference point A and the second reference point B. That is, the edge of the body 110 of the robot must be perpendicular to the line connecting the first reference point A and the second reference point B when passing through the first reference point A and the second reference point B. As an illustration, referring to FIG. 6, the first reference point A and the second reference point B are connected by a line, and the direction of the perpendicular n1 of the line is the dynamic turning heading angle to which the robot needs to be adjusted. The angle between the perpendicular n1 and the current heading direction n2 of the robot is the angle θ that the robot actually needs to turn.

[0082] In step S153, during the dynamic turning, the mobile robot sets a fixed forward tangential velocity V. The tangential velocity refers to the speed of the mobile robot in the tangential direction when turning, that is, the speed in the instantaneous motion direction. Further, according to the forward tangential velocity V and the actual angle θ that needs to be turned (that is, the angle difference between the forward direction and the new direction), the radius R of the arc traveled by the robot when turning can be calculated.

[0083] Specifically, the dynamic turning radius R2 can be calculated by the following relationship:

[0084] R2 = V / ω

[0085] where ω is the angular velocity, which is related to the angle θ. Given the angle θ and the fixed tangential velocity V, the corresponding dynamic turning radius R2 = V / θ can be calculated. 2

[0086] Further, if at any time, the measured distance of L1 or L2 is reduced to within the body radius r plus a safety margin (for example, 5 mm), it is determined that the current space is not sufficient to pass safely. At this time, the mobile robot will stop advancing and perform a spin turn in place, thereby avoiding collision, and according to the environmental conditions, a route around the obstacle is selected, such as entering the column turning logic.

[0087] It should be noted that during the turning operation, the coordinates of the first reference point A and the second reference point B will be updated in real time according to the sensor data. The mobile robot will repeat the above steps according to these updated data to dynamically adjust the dynamic turning radius R2, thereby optimizing its travel trajectory to adapt to the changing environmental conditions.

[0088] ​When the dynamic turning radius R2 is adjusted repeatedly, the self-moving robot finally passes through the narrow area and will continue to move along the arc, and the distance L3 between the second edge 212 and the point C closest to the center o of the robot body is monitored in real time during the movement along the arc. When the distance L3 is less than or equal to the robot body radius r plus a preset edge margin (for example, 50 mm), the self-moving robot will end the arc action, and be considered as completing the turning, and then maintain a stable distance along the second edge 212 by adjusting the edge sensor and the LDS laser sensor and the like.

[0089] If the wall surface cannot be detected again by the robot in a short time, for example, a corner with a large angle change is encountered, the steps S110-S150 described above will be re-executed, a new dynamic turning radius R2 is calculated, and the attempt to pass through the narrow area is made. This process will be repeated until the robot can stably move along the wall.

[0090] Referring to FIG. 8, as a specific implementation of the self-moving robot control method described above, an embodiment of the present application provides a self-moving robot control device 300, the self-moving robot comprising a robot body; the control device 300 comprising:

[0091] an initial radius generation unit 330, configured to control the self-moving robot to move at an initial turning radius R1 if the self-moving robot is in a turning scenario;

[0092] an obstacle detection unit 340, configured to detect whether a second obstacle exists in front of the self-moving robot; and

[0093] a dynamic radius generation unit 350, configured to determine a dynamic turning radius R2 if the second obstacle exists in front of the self-moving robot, and control the movement of the self-moving robot at the dynamic turning radius R2, wherein R2 is less than R1.

[0094] The self-moving robot control device 300 provided by the embodiment of the present application can realize each process of the self-moving robot control method provided by the foregoing embodiments, and thus the details are not repeated here.

[0095] The embodiment of the present application further provides a self-moving robot, which comprises:

[0096] a robot body 110;

[0097] a memory provided in the robot body 110, the memory storing a program or instructions; and

[0098] a controller provided in the robot body 110, the controller implementing the self-moving robot control method according to any one of claims 1 to 11 when executing the program or instructions.

[0099] Based on the same inventive concept, the disclosure further provides a computer readable storage medium, having stored thereon a computer program which, when executed by a processor, implements the self-moving robot control method according to any one of claims 1 to 11.

[0100] Based on the same inventive concept, the disclosure further provides a computer program product comprising a computer program which, when executed by a processor, implements the self-moving robot control method according to any one of claims 1 to 11.

[0101] Based on the same inventive concept, the disclosure further provides a computer program comprising computer program code which, when run on a computer, causes the computer to perform the self-moving robot control method according to any one of claims 1 to 11.

[0102] All embodiments of the disclosure can be executed independently or in combination with other embodiments, and are all considered as the scope of the disclosure.

[0103] Compared with the prior art, the self-moving robot control method and device provided by the embodiments of the disclosure can realize a dynamic turning trajectory according to distance information of each obstacle, can stably complete a wall-following turning action in a narrow space, and can more effectively control a travel route of the self-moving robot.

[0104] Some embodiments of the disclosure provide a non-transitory computer readable storage medium, storing computer program instructions, which, when invoked and executed by a processor, implement the method steps according to any one of the above embodiments.

[0105] As shown in FIG. 9, the self-moving robot can include a processing device (such as a central processing unit, a graphics processing unit, etc.) 1101, which can perform various appropriate actions and processes according to programs stored in a read-only memory (ROM) 1102 or loaded from a storage device 1108 into a random access memory (RAM) 1103. In the RAM 1103, various programs and data required for base station operation are also stored. The processing device 1101, the ROM 1102, and the RAM 1103 are connected to each other through a bus 1104. An input / output (I / O) interface 1105 is also connected to the bus 1104.

[0106] Generally, the following devices can be connected to the I / O interface 1105: input devices 1106 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; output devices 1107 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 1108 including, for example, a hard disk, etc.; and communication devices 1109. The communication devices 1109 can allow the base station to wirelessly or wiredly communicate with other devices to exchange data.

[0107] The flowcharts and block diagrams in the attached drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowcharts and block diagrams can represent a module, a segment, or a portion of code, which comprises one or more executable instructions for implementing the specified logical functions. It should also be noted that in some alternative implementations, the functions noted in the blocks can occur out of the order noted in the figures. For example, two blocks noted in succession can in fact be executed substantially concurrently or in the reverse order, depending on the functionality involved. It will also be noted that each block in the block diagrams and / or flowchart illustrations, and combinations of blocks in the block diagrams and / or flowchart illustrations, can be implemented by special purpose hardware-based systems that perform the specified functions or operations, or combinations of special purpose hardware and computer instructions.

[0108] Finally, it should be noted that each of the embodiments described in this specification has been provided in a progressive manner, with each embodiment highlighting the differences from other embodiments, and with the same or similar parts between embodiments being referred to each other. For the system or device disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple, and the relevant parts are referred to the method part.

[0109] The above embodiments are only used to illustrate the technical solutions of the present disclosure, rather than limit it. Even though the present disclosure has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that the technical solutions recorded in the foregoing embodiments can be modified, or some technical features can be replaced by equivalent ones. Such modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present disclosure.

Claims

1. A method for controlling a self-moving robot, the method comprising: if the self-moving robot is in a turning scenario, controlling the self-moving robot to move with an initial turning radius R1; detecting whether a second obstacle exists in front of the self-moving robot; if the second obstacle exists in front of the self-moving robot, determining a dynamic turning radius R2, and controlling the self-moving robot to move with the dynamic turning radius R2, wherein R2 is smaller than R1.

2. The self-moving robot control method of claim 1, wherein, The step of determining the dynamic turning radius R2 comprises: determining a first reference point A and a second reference point B under a current trajectory; wherein the first reference point A is a point closest to a center of the self-moving robot among points of the second obstacle, and the second reference point B is a point closest to the center of the self-moving robot among points of a first edge, the first edge being an edge along which the self-moving robot currently moves; and determining the dynamic turning radius R2 according to positions of the first reference point A and the second reference point B.

3. The self-moving robot control method according to claim 2, wherein The step of determining the dynamic turning radius R2 according to the positions of the first reference point A and the second reference point B comprises: respectively obtaining coordinates of the first reference point A and the second reference point B relative to the center of the self-moving robot; determining a dynamic turning angle θ actually required to be turned, the dynamic turning angle θ being an included angle between a perpendicular bisector of a line connecting the first reference point and the second reference point and a moving direction of the self-moving robot; and calculating the dynamic turning radius R2 according to an advancing tangent velocity V before the dynamic turning and the dynamic turning angle θ actually required to be turned.

4. The self-moving robot control method according to any one of claims 1-3, wherein, The calculation formula of the dynamic turning radius R2 is: R2=V 2 / θ, wherein V is the dynamic turning forward tangent velocity, and θ is the angle actually required to be turned in the dynamic turning.

5. The self-moving robot control method according to claim 3, wherein The method for calculating the coordinates of the first reference point A relative to the center of the self-moving robot comprises: determining the coordinates of the first reference point A relative to the center of the self-moving robot according to a distance L1 between the center of the self-moving robot and the first reference point A and an included angle α of a line connecting the center of the self-moving robot and the first reference point A relative to an advancing direction of the self-moving robot.

6. The self-moving robot control method according to claim 3, wherein The method for determining the coordinates of the second reference point B relative to the center of the self-moving robot comprises: calculating the coordinates of the second reference point B relative to the center of the self-moving robot according to a distance L2 between the center of the self-moving robot and the second reference point B and an included angle β of a line connecting the center of the self-moving robot and the second reference point B relative to the advancing direction of the self-moving robot. After the step of determining the first reference point A and the second reference point B under the current trajectory, the method further comprises:

7. The self-moving robot control method according to claim 2, wherein obtaining the distance L1 between the center of the self-moving robot and the first reference point A and the distance L2 between the center of the self-moving robot and the second reference point B; if L1 or L2 is less than or equal to a sum of a radius of the self-moving robot and a preset safety margin, controlling the self-moving robot to stop moving. In the step of detecting the second obstacle in front of the self-moving robot, the first sensor carried by the self-moving robot is used to detect the second obstacle.

8. The self-moving robot control method according to any one of claims 1-7, wherein, The first sensor is an LDS laser sensor and / or a line laser sensor.

9. The self-moving robot control method of claim 8, wherein, In the step of detecting an end point of the first edge during the movement of the self-moving robot along the first edge, an edge sensor and / or an LDS laser sensor carried by the self-moving robot are used to detect the end point of the first edge.

10. The self-moving robot control method according to any one of claims 1-9, wherein, ​ 11. The self-moving robot control method according to any one of claims 1-10, wherein, If the second obstacle does not exist, the self-moving robot controls the movement of the self-moving robot with the initial turning radius R1 as a current turning radius.

12. A self-moving robot control device, wherein, The self-moving robot comprises a body; and the control device comprises: an initial radius generating unit configured to control the self-moving robot to move with an initial turning radius R1 if the self-moving robot is in a turning scenario; an obstacle detecting unit configured to detect whether a second obstacle exists in front of the self-moving robot; and 13. A self-moving robot, wherein, a dynamic radius generating unit configured to determine a dynamic turning radius R2 if the second obstacle exists in front of the self-moving robot, and control the movement of the self-moving robot with the dynamic turning radius R2, wherein R2 is less than R1. comprise: a memory storing a program or instructions; and a controller which, when executing the program or instructions, implements the self-moving robot control method according to any one of claims 1 to 11.

14. A computer readable storage medium having stored thereon a computer program which, when executed by a processor, implements the self-moving robot control method according to any one of claims 1 to 11.

15. A computer program product comprising a computer program which, when executed by a processor, implements the self-moving robot control method according to any one of claims 1 to 11.

16. A computer program comprising computer program code which, when run on a computer, causes the computer to perform the self-moving robot control method according to any one of claims 1 to 11.

Citation Information

Patent Citations

  • Fire-fighting reconnaissance robot path generating method, device and system and robot

    CN109910009A

  • Autonomous movement system, autonomous movement method, and storage medium

    CN114675633A

  • Method for unmanned tracking driving to pass through obstacle array and storage medium

    CN114987552A

  • Vehicle motion controller

    JP2000339596A

  • Power vehicle

    JP2002225741A