Robot edge following control method, device, robot and storage medium

The integration of three-line laser scanners and triangulation radar with speed-based data conversion improves edge following accuracy and reduces collisions by providing comprehensive obstacle detection for robots.

CN114625135BActive Publication Date: 2025-07-15MIDEA ROBOZONE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210232325.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-03-09
Publication Date
2025-07-15
Estimated Expiration
2042-03-09

AI Technical Summary

Technical Problem

In the existing robot edge control method, infrared sensors have poor distance measurement accuracy and are sensitive to black objects. PSD sensors can only measure obstacles at fixed height and cannot effectively identify obstacles at low or above fixed height.

Method used

Using a combination of multi-routine laser and triangular range measurement radar, the linear laser is installed in front of the robot and along the edge, and the triangular range measurement radar is installed on the top. By acquiring and converting data to the robot's current position coordinate system, full coverage detection is achieved.

Benefits of technology

It improves obstacle recognition capabilities, reduces physical collisions, has anti-interference, and can identify obstacles of different heights to ensure real-time and accuracy of detection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114625135B_ABST
    Figure CN114625135B_ABST
Patent Text Reader

Abstract

The present invention discloses a method for controlling a robot to move along an edge. The method includes: obtaining first acquisition data from a triangular ranging radar on the top of the robot, and obtaining second acquisition data from two line lasers in front of the robot and one line laser on the edge side; converting the first acquisition data and the second acquisition data into corresponding first prediction data and second prediction data in the coordinate system of the current pose of the robot according to the speed information of the robot at the current moment; and controlling the robot to move along the edge by using the first prediction data and the second prediction data. Multiple line lasers + triangular ranging radar can achieve complementary advantages. The triangular ranging radar performs better than the line laser on the surfaces of strong light, high reflection, and black objects. However, the triangular ranging radar will miss obstacles under the scanning plane, while the line laser can detect obstacles between the line laser and the ground. By converting the data of the line laser and the triangular ranging radar into the coordinate system of the current pose of the robot, it is ensured that obstacle detection is more real-time, accurate, and robust.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of robot control, and particularly to a method and device for controlling a robot to follow an edge, a robot, and a storage medium. Background Art

[0002] Following an edge is a basic function of a robot and is involved in multiple functional modules such as exploration and mapping, obstacle avoidance, navigation, and escape from trouble.

[0003] Currently, the common methods for a robot to follow an edge in the market are to follow the edge based on an infrared sensor or based on a PSD (Position Sensitive Detectors) sensor. Both the infrared sensor and the PSD sensor are distance sensors. When the sensor continuously detects an obstacle on the side, it means that the robot has found the edge. The robot is controlled to travel at a certain distance from the edge through a controller. If the sensor does not detect an obstacle on the side, the robot bypasses the obstacle.

[0004] However, for the infrared sensor, the ranging accuracy is poor. When the surface color of the obstacle is slightly dark, the infrared light will be absorbed, resulting in ranging failure. For the PSD sensor, it is a single-point ranging sensor that can only return data of one point and cannot fully represent the spatial attributes of the obstacle. Moreover, it can only detect obstacles at a fixed height (such as 5 cm) and cannot achieve following the edge of low objects or objects higher than the fixed height. Summary of the Invention

[0005] An object of the present invention is to provide a method and device for controlling a robot to follow an edge, a robot, and a storage medium, which are proposed in view of the deficiencies of the above-mentioned prior art, and the object is achieved through the following technical solutions.

[0006] A first aspect of the present invention provides a method for controlling a robot to follow an edge, the method including:

[0007] Obtaining first acquisition data of a triangular ranging radar installed on the top of the robot, and obtaining second acquisition data of two line lasers installed in front of the robot and one line laser on the side of following the edge;

[0008] According to the speed information of the robot at the current moment, converting the first acquisition data and the second acquisition data into corresponding first prediction data and second prediction data in the coordinate system of the current pose of the robot;

[0009] Controlling the robot to follow the edge by using the first prediction data and the second prediction data.

[0010] In some embodiments of the present application, according to the speed information of the robot at the current moment, converting the first acquisition data and the second acquisition data into corresponding first prediction data and second prediction data in the coordinate system of the current pose of the robot respectively includes:

[0011] Converting the first acquisition data into corresponding first prediction data in the coordinate system of the current pose of the robot according to the current moment, the speed information, and the first acquisition moment of the first acquisition data; converting the second acquisition data into corresponding second prediction data in the coordinate system of the current pose of the robot according to the current moment, the speed information, and the second acquisition moment of the second acquisition data.

[0012] In some embodiments of the present application, converting the first acquisition data into corresponding first prediction data in the coordinate system of the current pose of the robot according to the current moment, the speed information, and the first acquisition moment of the first acquisition data includes:

[0013] Determining the first pose change amount of the robot from the first acquisition moment to the current moment according to the speed information; using the first pose change amount to convert the first acquisition data into corresponding first prediction data in the coordinate system of the current pose of the robot.

[0014] In some embodiments of the present application, converting the second acquisition data into corresponding second prediction data in the coordinate system of the current pose of the robot according to the current moment, the speed information, and the second acquisition moment of the second acquisition data includes:

[0015] Determining the second pose change amount of the robot from the second acquisition moment to the current moment according to the speed information; using the second pose change amount to convert the second acquisition data into corresponding second prediction data in the coordinate system of the current pose of the robot.

[0016] In some embodiments of the present application, before controlling the robot to move along the edge using the first prediction data and the second prediction data, the method further includes:

[0017] Performing filtering processing on the first prediction data and the second prediction data respectively to filter out abnormal data in the first prediction data and the second prediction data.

[0018] In some embodiments of the present application, controlling the robot to move along the edge using the first prediction data and the second prediction data includes:

[0019] Obtain the surrounding obstacles of the robot based on the first prediction data and the second prediction data; control the robot to decelerate according to the surrounding obstacles that fall within the target area in front of the robot; expand the position of the robot according to the surrounding obstacles that do not fall within the target area in front of the robot or the deceleration of the robot; control the robot to rotate to an angle parallel to the obstacle according to the surrounding obstacles that fall within the expanded area; according to the surrounding obstacles that do not fall within the expanded area or the rotation of the robot, find the edge based on the side obstacles located on the edge side, and control the robot to follow the edge in real time.

[0020] In some embodiments of the present application, determining that there are obstacles among the surrounding obstacles that fall within the target area in front of the robot includes:

[0021] Determine the target area in front of the robot according to the deceleration distance threshold and the body width; match the position information of the surrounding obstacles with the target area; when the matching is successful, determine that there are obstacles among the surrounding obstacles that fall within the target area in front of the robot.

[0022] In some embodiments of the present application, expanding the position of the robot includes:

[0023] Determine the braking distance of the robot according to the speed information; determine the expansion radius based on the braking distance; use the expansion radius to expand the position of the robot to obtain an expanded area.

[0024] In some embodiments of the present application, controlling the robot to rotate to an angle parallel to the obstacle includes:

[0025] Obtain the obstacle closest to the robot from the surrounding obstacles; obtain the angle of the obstacle relative to the front of the robot; determine the rotation angle according to the angle, and control the robot to rotate according to the rotation angle.

[0026] In some embodiments of the present application, finding the edge based on the side obstacles located on the edge side among the surrounding obstacles includes:

[0027] Obtain the side obstacles obtained from the first prediction data from the surrounding obstacles; obtain the first distance of the side obstacle closest to the robot whose angle relative to the front of the robot is within the first preset interval and the second distance of the side obstacle closest to the robot whose angle relative to the front of the robot is within the second preset interval; determine that the edge is found according to the first distance and the second distance meeting the first preset condition.

[0028] In some embodiments of the present application, finding the edge based on the side obstacles located on the edge side among the surrounding obstacles includes:

[0029] Obtain the side obstacles obtained from the second prediction data from the surrounding obstacles; obtain the third distance to the side obstacle closest to the robot from the side obstacles, and obtain the spatial point count representing the side obstacle corresponding to the third distance from the second prediction data; when the third distance and the spatial point count meet the second preset condition, determine that an edge is found.

[0030] In some embodiments of the present application, the method further includes:

[0031] When an edge is not found based on the side obstacles located on the edge side among the surrounding obstacles, control the robot to avoid obstacles according to the surrounding obstacles.

[0032] A second aspect of the present invention provides a robot edge following control device, the device includes a memory, a processor, and a computer program stored on the memory and executable on the processor, and when the processor executes the computer program, it implements the steps of the method described in the first aspect above.

[0033] A third aspect of the present invention provides a robot, including:

[0034] The robot edge following control device described in the second aspect above;

[0035] Three line lasers, two of which are installed in front of the robot, and the other line laser is installed on the edge side of the robot;

[0036] A triangulation ranging radar, installed on the top of the robot.

[0037] A fourth aspect of the present invention provides a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, it implements the steps of the method described in the first aspect above.

[0038] Based on the robot edge following control method, device, robot, and storage medium described in the first aspect to the fourth aspect above, the technical solution of the present invention has the following beneficial effects or advantages:

[0039] By arranging multiple line lasers respectively in front of and on the edge side of the robot, and cooperating with the triangulation ranging radar on the top of the robot for obstacle detection, to achieve full coverage detection in front of and on the edge side of the robot in the planar space, and full coverage detection from the ground to the top of the robot in the height space, thereby improving the robot's obstacle recognition ability and reducing physical collisions. And because the triangulation ranging radar and the line lasers can return data of multiple points, they have a certain anti-interference ability for black objects and highly reflective objects. In terms of accuracy, the line lasers are superior to infrared sensors and PSD sensors, and cooperating with the triangulation ranging radar can further enhance the adaptability to high-light and highly reflective environments.

[0040] In addition, since the triangulation radar has a certain detection frequency, usually rotating once every few hundred milliseconds to complete a detection, and the robot has a moving speed during this period. Therefore, when the triangulation radar completes a detection, the robot has already traveled a certain distance. Based on this, in this solution, according to the moving speed of the robot, by transferring the acquisition data of the line laser and the triangulation radar to the current pose coordinate system of the robot, the acquisition data is made consistent with the robot in terms of time sequence, ensuring that the detection of obstacles is more real-time, accurate, and robust. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the following drawings are only some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on the structures shown in these drawings.

[0042] Figure 1 Schematic diagram of the installation positions of the line laser and the triangulation radar on a robot shown in the present invention;

[0043] Figure 2 Schematic flowchart of an embodiment of a method for controlling a robot along an edge shown in the present invention according to an exemplary embodiment;

[0044] Figure 3 Schematic flowchart of the specific processing flow of the acquisition data of the line laser and the triangulation radar shown in the present invention according to an exemplary embodiment;

[0045] Figure 4 In the present invention according to Figure 2 Schematic flowchart of a specific process of edge following control shown in the illustrated embodiment;

[0046] Figure 5 Schematic diagram of the setting of a deceleration area of a robot shown in the present invention according to an exemplary embodiment;

[0047] Figure 6 Schematic diagram of the setting of a virtual collision area of a robot shown in the present invention according to an exemplary embodiment;

[0048] Figure 7 Schematic diagram of the structure of a device for controlling a robot along an edge shown in the present invention according to an exemplary embodiment;

[0049] Figure 8 Schematic diagram of the structure of a storage medium shown in the present invention according to an exemplary embodiment.

[0050] The realization, functional features and advantages of the present invention will be further described with reference to the embodiments and the accompanying drawings. Specific embodiments

[0051] The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without making creative efforts shall fall within the protection scope of the present invention.

[0052] It should be noted that all directional indications (such as up, down, left, right, front, back...) in the embodiments of the present invention are only used to explain the relative positional relationship and movement conditions between components in a specific posture (as shown in the accompanying drawings). If the specific posture changes, the directional indications will also change accordingly.

[0053] In addition, the descriptions such as "first" and "second" in the present invention are only for descriptive purposes, and cannot be understood as indicating or implying their relative importance or implicitly indicating the quantity of the indicated technical features. Thus, the features defined with "first" and "second" may explicitly or implicitly include at least one such feature. In the description of the present invention, "a plurality" means at least two, such as two, three, etc., unless otherwise specifically defined.

[0054] In the present invention, unless otherwise clearly defined and limited, the terms "connection", "fixation", etc. shall be understood in a broad sense. For example, "fixation" may be a fixed connection, a detachable connection, or integrated; it may be a mechanical connection or an electrical connection; it may be directly connected or indirectly connected through an intermediate medium, and it may be the internal communication of two components or the interaction relationship between two components, unless otherwise clearly limited. For those of ordinary skill in the art, the specific meanings of the above terms in the present invention can be understood according to specific situations.

[0055] In addition, the technical solutions between the various embodiments of the present invention can be combined with each other, but it must be based on the ability of those of ordinary skill in the art to implement. When the combination of technical solutions is contradictory or cannot be implemented, it should be considered that such a combination of technical solutions does not exist and is not within the protection scope required by the present invention.

[0056] Taking a cleaning robot as an example, the robot needs to follow the edge when exploring and building a map. The robot can explore unknown areas more effectively by walking along an edge. During the navigation process, if the robot finds an obstacle in front of it, it needs to use the obstacle avoidance function along the edge to bypass the obstacle. If the robot is trapped in a certain area, it also needs to follow the edge to get out of the confined area. Therefore, following the edge runs through multiple functional modules such as exploration and building a map, obstacle avoidance, navigation, and getting out of trouble.

[0057] At present, the commonly used infrared sensor edge solution is that the infrared transmitter emits an infrared light beam at a certain angle. When encountering an obstacle, the infrared light will be reflected back. After the infrared receiver detects the reflected light, it calculates the distance of the object through the geometric triangulation relationship in the structure.

[0058] The commonly used PSD sensor edge solution is composed of a light-emitting LED, a light-receiving LEN and a PSD. The LED emits a light beam. When it encounters an obstacle, the light will return in the opposite direction and irradiate the light spot of the PSD through the light-receiving LEN. At the location of the light spot, a certain proportion of light energy electron-hole pairs will flow through the P layer resistor, and current will be output from the two poles of the P layer resistor. Since the P layer resistor is uniform, the photocurrent output by the electrode is inversely proportional to the distance from the incident light spot to the two poles. Then, the distance from the obstacle to the sensor center can be calculated through the triangulation principle.

[0059] However, the commonly used edge solutions have the following problems:

[0060] 1. The edge solution based on infrared sensors has poor ranging accuracy. When encountering obstacles with slightly darker surface colors, the infrared light is absorbed, resulting in ranging failure.

[0061] 2. PSD sensor-based edge solution: PSD is a single-point distance measurement sensor that can only return information about one point and cannot fully express the spatial properties of obstacles. The distance measurement range is short (1.5cm-5cm), and the robot can only detect obstacles when it is very close to them, which makes the robot prone to collisions. In addition, the PSD sensor is prone to false positive values for data that exceeds the distance measurement range, which is ambiguous. The PSD sensor can only detect obstacles of a fixed height, and the general test height is about 5cm, which makes obstacles below 5cm or above 5cm not detectable. Therefore, it cannot bypass low objects or edge objects above 5cm.

[0062] In order to solve the above technical problems, the present invention proposes a robot that uses a multi-path laser with a triangulated ranging radar to achieve edge tracking. Taking a cleaning robot as an example, see Figure 1 As shown, two line lasers 01 and 02 are installed in front of the robot, a line laser 03 is installed along the side of the robot (usually the right side), and a triangulation ranging radar 04 is installed in conjunction with the top of the robot.

[0063] Among them, the line laser can emit a beam of "one"-shaped laser from the sensing front end, and capture the laser hitting the ground or obstacles through the camera inside the line laser, so as to discover the obstacle information between the line laser and the ground. In this application, the two line lasers 01 and 02 in front of the robot are specifically installed horizontally to completely cover the front of the robot, mainly used to achieve the functions of deceleration and collision avoidance. Its ranging range is as follows: 1) Angle: Taking the front of the robot as 0 degrees, the coverage range is between + / - 50 degrees; 2) Distance: Taking the front of the robot as 0, 0 - 35 cm; 3) Height: 0 - 20 cm. In addition, one line laser 03 along the side of the robot is specifically installed vertically to make the "one"-shaped laser beam perpendicular to the ground. Since one line laser can return 160 spatial points, it can cover from the ground to the top of the machine.

[0064] The triangular ranging radar on the top of the robot is that the laser emitter emits laser. After the laser irradiates an object, the reflected light is received by the linear CCD. Since there is a certain distance between the laser emitter and the detector, according to the optical path, objects at different distances will be imaged at different positions on the CCD. Then, by calculating according to the triangular formula, the distance of the measured object can be deduced. The commonly used triangular ranging radar on the cleaning robot is a single-line lidar. When it scans a circle, it can obtain the obstacle information on a plane within the range.

[0065] It can be seen that the technical solution of multiple line lasers + triangular ranging radar can achieve complementary advantages. Due to rich point clouds, the triangular ranging radar performs better than the line laser for strong light, high reflectivity, and the surface of black objects. However, the triangular ranging radar can only return the obstacles on the scanning plane and will miss the obstacle information under the scanning plane, while the line laser can discover the obstacles between the line laser and the ground. That is to say, the line laser can identify low obstacles, and the triangular ranging radar can identify higher obstacles. Therefore, the line laser and the triangular ranging radar achieve full-space coverage from low to high and can identify objects at different heights, such as low wires and socks, stools, table legs, trash cans, etc. with a certain height.

[0066] To enable those skilled in the art to better understand the solution of this application, the following will clearly and completely describe the process of using the collected data along the edge of the three line lasers + one triangular ranging radar in combination with the accompanying drawings in the embodiments of this application. Figure 1 The process of using the collected data along the edge of the three line lasers + one triangular ranging radar is given a clear and complete description.

[0067] Embodiment 1:

[0068] Figure 2 This is a schematic flowchart of the embodiment of a robot edge control method shown according to an exemplary embodiment of the present invention. The robot to which the robot edge control method is applicable includes as Figure 1The line lasers 01, 02, 03 shown, and the triangulation radar 04. Below, taking the robot as a cleaning robot as an example for exemplary illustration, as Figure 2 shown, the method for controlling the robot along the edge includes the following steps:

[0069] Step 201: Obtain the first acquisition data of the triangulation radar installed on the top of the robot, and obtain the second acquisition data of the two line lasers installed in front of the robot and one line laser on the side along the edge.

[0070] Among them, as Figure 1 shown, the first acquisition data is from the triangulation radar 04, and is composed of the spatial points collected by the triangulation radar 04 rotating 360 degrees during the walking process of the robot. The second acquisition data is from the three line lasers 01, 02, 03, and is composed of the spatial points collected by the three line lasers respectively during the walking process of the robot.

[0071] Step 202: According to the speed information of the robot at the current moment, convert the first acquisition data and the second acquisition data into the corresponding first prediction data and second prediction data in the coordinate system of the current pose of the robot respectively.

[0072] Among them, the speed information of the robot can be obtained by the IMU (inertial sensor) and Odometry (odometer) in the robot, and specifically includes the angular velocity and the linear velocity.

[0073] The function of the robot along the edge is a functional module with relatively high real-time requirements. The frequency of the commonly used triangulation radar of the robot is about 5HZ, and it rotates one circle in about 200 milliseconds. The movement speed of the robot is 25 cm / s. When the triangulation radar rotates one circle, the robot has walked 5 cm. Therefore, the data collected within these 200 milliseconds is not accurate enough for the robot that has walked 5 cm. Based on this, the first prediction data and the second prediction data are the data calculated and converted according to the current speed information of the robot. That is to say, the obstacle data relative to the robot collected at the previous moment changes relative to the robot data at the next moment. Through this conversion, the real-time performance, accuracy, and robustness of the data can be ensured.

[0074] In a possible implementation manner, the first acquisition data can be transformed into the corresponding first prediction data in the coordinate system of the current pose of the robot according to the current moment, the speed information, and the first acquisition moment of the first acquisition data; and the second acquisition data can be transformed into the corresponding second prediction data in the coordinate system of the current pose of the robot according to the current moment, the speed information, and the second acquisition moment of the second acquisition data.

[0075] In a specific embodiment, refer to Figure 3As shown in the figure, the conversion process for the first acquisition data is as follows: According to the speed information, determine the change in the first pose of the robot from the first acquisition moment to the current moment, and then use the change in the first pose to transform the first acquisition data into the corresponding first predicted data in the coordinate system of the current pose of the robot.

[0076] The conversion process for the second acquisition data is as follows: According to the speed information, determine the change in the second pose of the robot from the second acquisition moment to the current moment, and then use the change in the second pose to transform the second acquisition data into the corresponding second predicted data in the coordinate system of the current pose of the robot.

[0077] Furthermore, to ensure data accuracy, refer to Figure 3 As shown in the figure, filtering processing can also be performed on the first predicted data and the second predicted data respectively to filter out the abnormal data in the first predicted data and the second predicted data.

[0078] It can be understood that for the filtering process, relevant technologies can be used to implement it, and this application does not specifically limit the specific filtering algorithm.

[0079] It should be noted that the conversion processes of the above first acquisition data and second acquisition data can be executed in parallel independently to improve the data processing efficiency.

[0080] Step 203: Control the robot to move along the edge using the first predicted data and the second predicted data.

[0081] Among them, the edge following control of the robot can include deceleration, virtual collision, edge finding, edge following, and obstacle avoidance. For the specific edge following control process, refer to the description of the following embodiments, and this application will not elaborate here for the time being.

[0082] So far, the above Figure 2 As shown in the figure, the edge following control process is completed. Since the triangular ranging radar has a certain detection frequency, usually it rotates once every few hundred milliseconds to complete a detection, and the robot has a moving speed during this period. Therefore, when the triangular ranging radar completes a detection, the robot has walked a certain distance. Based on this, in this solution, according to the moving speed of the robot, by transforming the acquisition data of the line laser and the triangular ranging radar into the coordinate system of the current pose of the robot, the acquisition data is made consistent with the robot in terms of time sequence, ensuring that the detection of obstacles is more real-time, accurate, and robust.

[0083] Embodiment 2:

[0084] Figure 4 This is for the present invention according to Figure 2 As shown in the figure, a specific flow diagram of an edge following control is shown. Based on the above Figure 2 As shown in the figure, on the basis of the above embodiment, the edge following control process specifically includes:

[0085] Step 401: Obtain the surrounding obstacles of the robot based on the first prediction data and the second prediction data.

[0086] It can be understood that since the triangular ranging radar performs rotational detection, the obstacles located in front of the robot, along the sides, and with a relatively high height can be obtained according to the first prediction data, while the obstacles located in front of the robot, along the sides, and with a height lower than the height of the triangular ranging radar can be obtained according to the second prediction data. These obstacles constitute the surrounding obstacles of the robot.

[0087] Step 402: Determine whether there is an obstacle in the surrounding obstacles that falls within the target area in front of the robot. If so, execute Step 403; if not, execute Step 404.

[0088] Specifically, as shown in Figure 5 , the target area (i.e., the deceleration area) in front of the robot can be determined according to the deceleration distance threshold and the body width, and then the position information of the surrounding obstacles is matched with the target area. When the matching is successful, it is determined that there is an obstacle in the surrounding obstacles that falls within the target area in front of the robot.

[0089] Step 403: Control the robot to decelerate and execute Step 404.

[0090] Among them, when it is determined that there is an obstacle falling within the target area in front of the robot, it indicates that the robot has approached the obstacle and needs to decelerate to avoid collision. This is more conducive to braking, making the movement smoother, and at this time, decelerating is more conducive to the sensor to collect more accurate data.

[0091] Step 404: Expand the position of the robot and determine whether there is an obstacle in the surrounding obstacles that falls within the expanded area. If so, execute Step 405; if not, execute Step 406.

[0092] Among them, by expanding the robot, as long as the obstacle falls within the expanded area, a virtual collision is triggered to avoid a real collision.

[0093] For the expansion process, optionally, the braking distance of the robot can be determined according to the speed information of the robot, and the expansion radius can be determined based on the braking distance. Then, the position of the robot is expanded using the expansion radius to obtain the expanded area, such as the expanded area shown by the dashed line in Figure 6 .

[0094] Among them, the expansion radius can be obtained by adding a fixed threshold to the braking distance.

[0095] Step 405: Control the robot to rotate to an angle parallel to the obstacle and execute Step 406.

[0096] In a possible implementation, by obtaining the obstacle closest to the robot from the surrounding obstacles, then obtaining the angle of the closest obstacle relative to the front of the robot, and determining the rotation angle based on this angle, and finally controlling the rotation of the robot according to the rotation angle so that the robot is parallel to the obstacle.

[0097] The specific method for determining the rotation angle of the robot is as follows:

[0098] Taking the front of the robot as 0 degrees, clockwise is 0 - 180 degrees, and counterclockwise is 0 - (-180) degrees. Assume the angle of the obstacle relative to the front of the robot is Obs_Angle.

[0099] a) When -60 degrees < Obs_Angle < -30 degrees: The rotation angle of the robot Rotate_Angle = -Obs_Angle;

[0100] b) When -30 degrees < Obs_Angle < 30 degrees: The rotation angle of the robot Rotate_Angle = 90 - Obs_Angle;

[0101] c) When 30 degrees < Obs_Angle < 60 degrees: The rotation angle of the robot Rotate_Angle = 180 - Obs_Angle.

[0102] Step 406: Search for the edge based on the side obstacles located along the edge among the surrounding obstacles. If the edge is found, execute Step 407; if the edge is not found, execute Step 408.

[0103] In an alternative embodiment, search for the edge by using the side obstacles detected by the triangular ranging radar, that is, obtain the side obstacles obtained from the first prediction data from the surrounding obstacles, and obtain the first distance of the side obstacle closest to the robot whose angle relative to the front of the robot is within the first preset interval, and obtain the second distance of the side obstacle closest to the robot whose angle relative to the front of the robot is within the second preset interval. If the first distance and the second distance meet the first preset condition, it is determined that the edge is found.

[0104] Among them, since the robot refers to the obstacles (such as walls) on the side when following the edge, and the triangular ranging radar detects by rotation, it can detect all obstacles with a certain height around. Therefore, it is possible to make a conditional judgment by obtaining the nearest side obstacles in two areas on the side of the robot (for example, the first preset interval Dist1: 30 - 40 degrees, the second preset interval Dist2: 50 - 60 degrees). The first preset condition is that the average value of the two distances is less than a preset threshold, and the difference between the two distances is also less than another preset threshold, indicating that the nearest side obstacle at this time is the edge reference of the robot.

[0105] In another alternative embodiment, the edge is found by using the side obstacles detected by the line laser on the side. That is, the side obstacles obtained from the second prediction data are acquired from the surrounding obstacles, the third distance of the side obstacle closest to the robot is obtained from the side obstacles, and the spatial point count representing the side obstacle corresponding to the third distance is obtained from the second prediction data. When the third distance and the spatial point count meet the second preset condition, it is determined that the edge is found.

[0106] Among them, since the number of spatial points returned by the objects detected by the line laser is not large, when finding the edge, in addition to the distance condition, the spatial point number condition is added to ensure finding the correct edge.

[0107] Step 407: Control the robot to follow the edge and drive in real time.

[0108] Optionally, the real-time edge-following strategy of the robot is to obtain the distance of the robot from the edge in real time. When the distance from the edge is within the effective range, the corresponding speed is returned to the robot to make the robot follow the edge and drive. When the distance from the edge is not within the effective range, it means that the edge-following fails. At this time, the robot rotates in an arc at a fixed radian. After the robot rotates 360 degrees, if the robot's trajectory forms a closed loop, the robot ends the edge-following control. If the robot's trajectory does not form a closed loop, the first acquisition data and the second acquisition data can be obtained again, and the execution process shown above Figure 2 is executed.

[0109] Step 408: Control the robot to avoid obstacles according to the surrounding obstacles.

[0110] Regarding the obstacle avoidance process of the robot, it can be understood that by obtaining the side obstacles located on the side of the robot from the surrounding obstacles, when there are side obstacles in the front area, middle area, and rear area on the side of the robot, the robot is controlled to go straight. When there are no side obstacles in the front area and middle area on the side of the robot, the robot is controlled to rotate in an arc in the direction of the side.

[0111] So far, the above Figure 4 shown control process is completed.

[0112] An embodiment of the present invention further provides a robot edge control device corresponding to the robot edge control method provided in the foregoing embodiment to execute the above-mentioned robot edge control method.

[0113] Figure 7 FIG. 5 is a hardware structure diagram of a robot edge control device shown according to an exemplary embodiment of the present invention. The robot edge control device includes: a communication interface 701, a processor 702, a memory 703, and a bus 704; wherein, the communication interface 701, the processor 702, and the memory 703 complete mutual communication through the bus 704. The processor 702 can execute the robot edge control method described above by reading and executing machine-executable instructions corresponding to the control logic of the robot edge control method in the memory 703. For the specific content of this method, refer to the above embodiment and will not be repeated here.

[0114] The memory 703 mentioned in the present invention can be any electronic, magnetic, optical or other physical storage device, which can store information such as executable instructions, data, etc. Specifically, the memory 703 can be a RAM (Random Access Memory), a flash memory, a storage drive (such as a hard disk drive), any type of storage disk (such as an optical disk, a DVD, etc.), or a similar storage medium, or a combination thereof. The communication connection between the system network element and at least one other network element is realized through at least one communication interface 701 (which can be wired or wireless), and the Internet, a wide area network, a local area network, a metropolitan area network, etc. can be used.

[0115] The bus 704 can be an ISA bus, a PCI bus, an EISA bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. Among them, the memory 703 is used to store programs, and the processor 702 executes the programs after receiving execution instructions.

[0116] The processor 702 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware in the processor 702 or the instructions in the form of software. The above-mentioned processor 702 may be a general-purpose processor, including a central processing unit (CPU for short), a network processor (NP for short), etc.; it may also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components. It can implement or execute the various methods, steps and logic block diagrams disclosed in the embodiments of the present application. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc. The steps of the method disclosed in combination with the embodiments of the present application can be directly embodied as being executed by the hardware decoding processor, or executed by the combination of the hardware and software modules in the decoding processor.

[0117] The robot edge control device provided by the embodiments of the present application and the robot edge control method provided by the embodiments of the present application are based on the same inventive concept and have the same beneficial effects as the methods adopted, run or implemented by them.

[0118] The embodiments of the present application also provide a computer-readable storage medium corresponding to the robot edge control method provided by the foregoing embodiments. Please refer to Figure 8 As shown, the computer-readable storage medium shown is an optical disc 30, on which a computer program (i.e., a program product) is stored. When the computer program is run by a processor, it will execute the robot edge control method provided by any of the foregoing embodiments.

[0119] It should be noted that examples of the computer-readable storage medium may also include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other optical and magnetic storage media, which will not be elaborated here one by one.

[0120] The computer-readable storage medium provided by the above embodiments of the present application and the robot edge control method provided by the embodiments of the present application are based on the same inventive concept and have the same beneficial effects as the methods adopted, run or implemented by the application programs stored in it.

[0121] Other embodiments of the present invention will be readily apparent to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. The present invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include known common general knowledge or conventional technical means in the technical field not disclosed by the present invention. The specification and examples are only illustrative, and the true scope and spirit of the present invention are pointed out by the following claims.

[0122] The above are only the preferred embodiments of the present invention and are not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principle of the present invention shall be included within the scope of protection of the present invention.

Claims

1. A method for controlling a robot along an edge, characterized in that, The method includes: Obtaining first acquisition data of a triangular ranging radar installed on the top of the robot, and obtaining second acquisition data of two line lasers installed in front of the robot and one line laser along the side; According to the speed information of the robot at the current moment, converting the first acquisition data and the second acquisition data into corresponding first prediction data and second prediction data in the current pose coordinate system of the robot respectively; Using the first prediction data and the second prediction data to control the robot to follow the edge; The using the first prediction data and the second prediction data to control the robot to follow the edge includes: Obtaining surrounding obstacles of the robot according to the first prediction data and the second prediction data; Determining that there are surrounding obstacles falling within the target area in front of the robot, and controlling the robot to decelerate; According to the fact that there are no surrounding obstacles falling within the target area in front of the robot or the robot decelerates, expanding the position where the robot is located; According to the fact that there are surrounding obstacles falling within the expanded area, controlling the robot to rotate to an angle parallel to the obstacle; According to the fact that there are no surrounding obstacles falling within the expanded area or the robot rotates, finding the edge according to the side obstacles located along the edge side among the surrounding obstacles, and controlling the robot to follow the edge in real time.

2. The method according to claim 1, wherein The converting the first acquisition data and the second acquisition data into corresponding first prediction data and second prediction data in the current pose coordinate system of the robot respectively according to the speed information of the robot at the current moment includes: According to the current moment, the speed information, and the first acquisition moment of the first acquisition data, transforming the first acquisition data into corresponding first prediction data in the current pose coordinate system of the robot; According to the current moment, the speed information, and the second acquisition moment of the second acquisition data, transforming the second acquisition data into corresponding second prediction data in the current pose coordinate system of the robot.

3. The method according to claim 2, characterized in that, The transforming the first acquisition data into corresponding first prediction data in the current pose coordinate system of the robot according to the current moment, the speed information, and the first acquisition moment of the first acquisition data includes: Determining the first pose change amount of the robot from the first acquisition moment to the current moment according to the speed information; Using the first pose change amount to transform the first acquisition data into corresponding first prediction data in the current pose coordinate system of the robot.

4. The method according to claim 2, characterized in that, The transforming the second acquisition data into corresponding second prediction data in the current pose coordinate system of the robot according to the current moment, the speed information, and the second acquisition moment of the second acquisition data includes: Determining the second pose change amount of the robot from the second acquisition moment to the current moment according to the speed information; Using the second pose change amount to transform the second acquisition data into corresponding second prediction data in the current pose coordinate system of the robot.

5. The method according to claim 1, characterized in that, Before using the first prediction data and the second prediction data to control the robot to follow the edge, the method further includes: Performing filtering processing on the first prediction data and the second prediction data respectively to filter out abnormal data in the first prediction data and the second prediction data.

6. The method according to claim 1, characterized in that, Determining that there is a surrounding obstacle falling within the target area in front of the robot includes: Determining the target area in front of the robot according to the deceleration distance threshold and the body width; Matching the position information of the surrounding obstacles with the target area; When the matching is successful, determining that there is a surrounding obstacle falling within the target area in front of the robot.

7. The method according to claim 1, characterized in that, Dilating the position where the robot is located includes: Determining the braking distance of the robot according to the speed information; Determining the dilation radius based on the braking distance; Dilating the position where the robot is located by using the dilation radius to obtain a dilated area.

8. The method according to claim 1, wherein Controlling the robot to rotate to an angle parallel to the obstacle includes: Obtaining the obstacle closest to the robot from the surrounding obstacles; Obtaining the angle of the closest obstacle relative to the front of the robot; Determining the rotation angle according to the angle and controlling the robot to rotate according to the rotation angle.

9. The method according to claim 1, characterized in that, Finding the edge according to the side obstacles located on the edge side among the surrounding obstacles includes: Obtaining the side obstacles obtained from the first prediction data from the surrounding obstacles; Obtaining the first distance of the side obstacle closest to the robot whose angle relative to the front of the robot is within the first preset interval and the second distance of the side obstacle closest to the robot whose angle relative to the front of the robot is within the second preset interval from the side obstacles; Determining that the edge is found according to the first distance and the second distance meeting the first preset condition.

10. The method according to claim 1, characterized in that, Finding the edge according to the side obstacles located on the edge side among the surrounding obstacles includes: Obtaining the side obstacles obtained from the second prediction data from the surrounding obstacles; Obtaining the third distance of the side obstacle closest to the robot from the side obstacles and obtaining the spatial point count representing the side obstacle corresponding to the third distance from the second prediction data; Determining that the edge is found according to the third distance and the spatial point count meeting the second preset condition.

11. The method according to claim 1, characterized in that, The method further includes: When the edge is not found according to the side obstacles located on the edge side among the surrounding obstacles, controlling the robot to bypass the obstacle according to the surrounding obstacles.

12. A robot edge control device, the device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, When the processor executes the computer program, the steps of the method according to any one of claims 1-11 are implemented.

13. A robot, characterized in that, Including: The robot edge control device according to claim 12 above; Three line lasers, two of which are installed in front of the robot and the other is installed on the edge side of the robot; One triangular ranging radar, installed on the top of the robot.

14. The robot according to claim 13, wherein, The two line lasers are horizontally installed in front of the robot; The other line laser is vertically installed on the edge side of the robot.

15. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, the steps of the method according to any one of claims 1-11 are implemented.

Citation Information

Patent Citations

  • Novel miniaturization implementation method for fusion of laser radar and ultrasonic radar

    CN111781606A

  • Floor sweeping robot

    CN112641387A