Cleaning robot control method and cleaning robot

By combining the detection results of lidar and target sensors, the cleaning robot can accurately identify low spaces, solve the problem of missing sweep and improve operational efficiency.

CN119606256APending Publication Date: 2025-03-14ANKER INNOVATIONS TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311180030.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-12
Publication Date
2025-03-14

AI Technical Summary

Technical Problem

The cleaning robot cannot be effectively identified in low spaces (such as under beds and sofas), resulting in missed sweeping and low operational efficiency.

Method used

Using a combination of lidar and target sensor, the transmitting part of the lidar is higher than the transmitting part of the target sensor, and the target sensor has a vertical field of view angle. By fusing the detection results of both, it is determined whether the current detection space is a passable space and is displayed on the environmental map.

Benefits of technology

It improves the accuracy of the identification of passable space by cleaning robots, avoids missing sweeping and overlapping pictures, and improves cleaning efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119606256A_ABST
    Figure CN119606256A_ABST
Patent Text Reader

Abstract

The invention relates to a control method of a cleaning robot and the cleaning robot. The cleaning robot is provided with a laser radar and a target sensor, a transmitting part of the laser radar is higher than a transmitting part of the target sensor, the target sensor has a vertical field angle, and the method comprises the following steps: controlling the laser radar and the target sensor of the cleaning robot to collect data; and when determining that the current detection space is passable based on the laser point cloud data acquired by the laser radar and the target point cloud data acquired by the target sensor, displaying the current detection space as a passable area on the environment map. According to the method, on one hand, the detection results of the laser radar and the target sensor are fused, the passable space of the cleaning robot can be accurately determined, on the other hand, the accurate identification result is displayed on the environment map, the mapping effect and the positioning effect can be improved, and the cleaning robot is prevented from missing scanning and overlapping images.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of cleaning robots, and in particular to a control method for a cleaning robot and a cleaning robot. Background Art

[0002] With the development of cleaning robot technology, cleaning robots have greatly brought convenience to people's lives. Among them, cleaning robots are becoming an important component of homes and other entertainment venues, playing an increasingly important role in cleaning services.

[0003] The cleaning robot is equipped with a variety of sensors to achieve effective obstacle avoidance during operation. During the operation of the cleaning robot, there are some low spaces, such as under the bed and sofa. If these low spaces cannot be effectively identified, the cleaning robot will not be able to effectively identify all passable spaces, causing the cleaning robot to miss sweeping during operation, affecting the cleaning robot's operating efficiency and effect. Summary of the invention

[0004] Based on this, it is necessary to provide a control method, device, cleaning robot, computer-readable storage medium and computer program product for a cleaning robot that can improve the recognition accuracy of traversable space in response to the above-mentioned technical problems.

[0005] In a first aspect, the present application provides a control method for a cleaning robot, wherein the cleaning robot is provided with a laser radar and a target sensor, wherein a transmitting portion of the laser radar is higher than a transmitting portion of the target sensor, and the target sensor has a vertical field of view, and the method comprises:

[0006] Controlling the laser radar and the target sensor of the cleaning robot to collect data;

[0007] When it is determined that the current detection space is passable based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor, the current detection space is displayed as a passable area on the environment map.

[0008] In a second aspect, the present application provides a control device for a cleaning robot, the device comprising:

[0009] A control device, used to control the laser radar and the target sensor of the cleaning robot to collect data;

[0010] The display control device is used to display the current detection space as a passable area on the environment map when it is determined that the current detection space is passable based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor.

[0011] In the third aspect, the present application provides a cleaning robot, which is provided with a laser radar and a target sensor, wherein the transmitting part of the laser radar is higher than the transmitting part of the target sensor, and the target sensor has a vertical field of view. The cleaning robot is also provided with a controller, which is electrically connected to the laser radar and the target sensor, and the controller includes a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the steps of the method described in the above embodiments are implemented.

[0012] In a fourth aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, and the processor implements the steps of the method described in the above embodiments when executing the computer program.

[0013] In a fifth aspect, the present application provides a computer program product, including a computer program, which implements the steps of the methods described in the above embodiments when executed by a processor.

[0014] The control method, device, cleaning robot, computer-readable storage medium and computer program product of the above-mentioned cleaning robot, because the transmitting part of the laser radar is higher than the transmitting part of the target sensor, and the target sensor has a vertical field of view, the target sensor can detect obstacles within a certain height range that the laser radar cannot detect, so that it can be ready to judge whether the current detection space is a passable space. This method can determine whether the current detection space is a passable space based on the laser point cloud data of the current detection space and the target point cloud data collected by the target sensor by fusing the detection results of the target sensor with a vertical field of view and the laser radar. If it is a passable space, it can be determined that the current detection space is passable, and then the current detection space is displayed as a passable area in the environmental map. On the one hand, this method integrates the detection results of the laser radar and the target sensor, and can accurately determine the passable space of the cleaning robot. On the other hand, the accurate identification results are displayed on the environmental map, which can improve the mapping effect and positioning effect, and avoid the cleaning robot from missing scans and overlapping images. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] Figure 1 This is a schematic diagram of the structure of a cleaning robot according to an embodiment;

[0016] Figure 2 A top view of a measurement area of ​​a target sensor and a 2D laser radar in one embodiment;

[0017] Figure 3 is a schematic diagram of the structure of the sensing and control part of the cleaning robot in one embodiment;

[0018] Figure 4 is a flow chart of a control method of a cleaning robot in one embodiment;

[0019] Figure 5 A schematic flow chart of steps for determining a target laser point cloud in one embodiment;

[0020] Figure 6-9 Schematic diagrams illustrating the cleaning robot detecting obstacles in different scenarios;

[0021] Fig.10 A schematic diagram illustrating a point where a laser beam passes through a target point in one embodiment;

[0022] Fig.11 A schematic diagram illustrating a cleaning robot detecting obstacles in another scenario;

[0023] Fig.12 A schematic flow chart of steps for determining a target laser point cloud in one embodiment;

[0024] Fig.13 A schematic flow chart of the steps of determining a target grid in one embodiment;

[0025] Figure 14-16 is a schematic diagram for explaining the expansion of obstacle points in one embodiment;

[0026] Fig.17 A global map before changing the sofa in one embodiment;

[0027] Fig.18 A global map after a sofa is replaced in one embodiment;

[0028] Fig.19 is a flow chart of a control method of a cleaning robot in another embodiment;

[0029] Fig. 20 is a structural block diagram of a control device of a cleaning robot in one embodiment;

[0030] Fig.21 FIG. 1 is a diagram showing the internal structure of a controller of a cleaning robot in one embodiment. DETAILED DESCRIPTION

[0031] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0032] The present application embodiment provides a cleaning robot, such as Figure 1As shown, it includes a cleaning robot body 101, a laser radar 102 and a target sensor 103. Among them, the installation height of the target sensor 103 is less than the installation height of the laser radar 102. More specifically, the emitting part of the laser radar 102 is higher than the emitting part of the target sensor 103. The laser radar 102 is a 2D laser radar. The 2D laser radar is a single-line laser radar. The laser radar can rotate horizontally and has a horizontal field of view. It can obtain the azimuth information of the target object on the horizontal plane of the horizontal field of view and the distance information of the target object in the radial direction. The target sensor 103 has a vertical field of view and can observe the target object in the vertical direction. In one embodiment, the horizontal field of view of the laser radar 102 can reach a maximum of 360°, and the vertical field of view of the target sensor 103 can reach a maximum of 90°. The detection distance of the target sensor is smaller than that of the laser radar. Figure 2 It is a top view of the measurement area of ​​the target sensor and lidar. Figure 2 As shown, the detection area 201 of the laser radar is a 360° horizontal area, and the detection area 202 of the target sensor is a smaller fan-shaped area.

[0033] Among them, the laser radar 102 can protrude from the top of the cleaning robot body 101, and the target sensor 103 can be set on the front side of the cleaning robot body 101. Based on the characteristics and installation positions of the target sensor and the 2D laser radar, the two cooperate to realize the mapping, positioning, obstacle avoidance and other functions of the automatically traveling cleaning robot. Specifically, the detection distance of the 2D laser radar is farther than the detection distance of the target sensor, but it has no vertical field of view, which is suitable for sensing the surrounding environment and obtaining distance information. The target sensor has a large vertical field of view, and its installation position is lower than that of the laser radar, which is suitable for detecting low obstacles. The combination of the two solutions can realize the accurate mapping, positioning, obstacle avoidance, etc. of the cleaning robot at a low cost, thereby improving the cleaning efficiency of the cleaning robot. In one embodiment, the target sensor can adopt a 3D TOF sensor.

[0034] like Figure 3As shown, the sensing and control part of the cleaning robot includes: a controller 301, a driver 302, multiple types of sensors 303, and a communication module 304. The multiple types of sensors may include an image module, an IMU (Inertial Measurement Unit), a laser radar, and a target sensor. Among them, each sensor in the multiple types of sensors 303 and the driver 302 are connected to the controller 301 signal. The controller 301 processes the sensor data collected by the multiple types of sensors, makes a decision, generates a control instruction based on the decision result, and sends the control instruction to the driver 302. The driver 302 may include a driver for the driving wheel of the cleaning robot, a driver for the module adjustment device, etc. The decision may include navigation, obstacle avoidance, and control of various components of the cleaning robot. Based on the communication module 301, it can communicate with the server 10, and the server 10 can be connected to the user terminal 20 for communication, and the control instruction can be sent to the cleaning robot through the user terminal 20. For example, the cleaning robot operation instruction, the cleaning robot charging instruction, the cleaning robot map construction instruction, etc. It should be understood that the user terminal 20 is installed with an application program related to the cleaning robot, which can send relevant instructions to the cleaning robot and display the map constructed by the cleaning robot and the status of the cleaning robot.

[0035] The user terminal 20 may be, but is not limited to, various personal computers, laptops, smart phones, tablet computers, IoT devices and portable wearable devices. IoT devices may be smart speakers, smart TVs, smart air conditioners, smart car devices, etc. Portable wearable devices may be smart watches, smart bracelets, head-mounted devices, etc.

[0036] Among them, cleaning robots include cleaning robots used for cleaning home and non-home scenarios, such as sweepers, mops, automatic floor scrubbers and other types of cleaning robots.

[0037] In one embodiment, Figure 4 As shown, a control method for a cleaning robot is provided, which can realize the detection of low passable spaces. Low passable spaces refer to spaces that are higher than the height of the cleaning robot but not higher than twice the height of the cleaning robot. For cleaning robots, common low passable spaces include the bottom of sofas, beds, and cabinets. Figure 3 The controller in the example is used to illustrate the following steps:

[0038] Step 402, controlling the laser radar and target sensor of the cleaning robot to collect data.

[0039] Specifically, the controller of the cleaning robot controls the laser radar and target sensor of the cleaning robot to collect data during the walking process of the cleaning robot. The walking process mentioned here can be the process of the cleaning robot building a map or the process of the cleaning robot performing a cleaning task.

[0040] Step 404 , when it is determined that the current detection space is passable based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor, the current detection space is displayed as a passable area on the environment map.

[0041] Specifically, when the robot is walking, it integrates the detection results of the target sensor with a vertical field of view and the laser radar. When it is determined that the current detection space is passable, it displays the current detection space as a passable area on the environmental map. The passable area refers to the area corresponding to the current detection space on the environmental map displayed on the APP. The entrance to this area, that is, the entrance where the cleaning robot enters this area, is not separated by a boundary line.

[0042] The target sensor has a vertical field of view, and the point cloud data collected by the target sensor is in three-dimensional form, including the horizontal coordinate, vertical coordinate and height of each point. In one embodiment, the point cloud data collected by the target sensor can be expressed as PointCloud{(x1,y1,z1)...(xn,yn,zn)}.

[0043] The laser radar in this embodiment can be a 2D laser radar, and the laser point cloud data collected by the laser radar is in a two-dimensional form, including the horizontal coordinate and the vertical coordinate of each point. In one embodiment, the laser point cloud data collected by the laser radar can be expressed as PLaser{(x1,y1)...(xn,yn)}.

[0044] Since the emitting part of the laser radar is higher than the emitting part of the target sensor, and the target sensor has a vertical field of view, the target sensor can detect obstacles within a certain height range that the laser radar cannot detect. Specifically, based on the laser radar and the target sensor, the cleaning robot can further determine whether the current detection space is a low passable space during walking. If the cleaning robot is in a low passable space, it means that the current detection space where the cleaning robot is located is passable. Based on the accurately identified low passable space, by displaying the current detection space as a passable area on the environmental map, the efficiency of mapping and positioning can be improved, and the cleaning robot can avoid missing scans and overlapping images.

[0045] It should be noted that before the cleaning robot enters the current detection space, the current detection space is more passable in a broad sense for the cleaning robot, which does not mean that it is actually passable. After entering or partially entering the current detection space, the cleaning robot can make a more accurate judgment on the current detection space based on the detection results of the lidar and target sensor. If the current detection space is determined to be passable based on the detection results of the lidar and target sensor, the corresponding area on the environmental map will be displayed as a passable area, avoiding the overlapping of images caused by inconsistent detection results when the cleaning robot detects the current detection space at different positions or different postures or at different times.

[0046] In the above-mentioned cleaning robot control method, since the transmitting part of the laser radar is higher than the transmitting part of the target sensor, and the target sensor has a vertical field of view, the target sensor can detect obstacles within a certain height range that the laser radar cannot detect, so that it can accurately judge whether the current detection space is a passable space. This method can determine whether the current detection space is a passable space based on the laser point cloud data of the current detection space and the target point cloud data collected by the target sensor by fusing the detection results of the target sensor with a vertical field of view and the laser radar. If it is a passable space, it can be determined that the current detection space is passable, and then the current detection space is displayed as a passable area in the environmental map. On the one hand, this method integrates the detection results of the laser radar and the target sensor, and can accurately determine the passable space of the cleaning robot. On the other hand, the accurate identification results are displayed on the environmental map, which can improve the mapping effect and positioning effect, and avoid the cleaning robot from missing scans and overlapping images.

[0047] In another embodiment, when it is determined that the current detection space is passable based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor, the current detection space is displayed as a passable area on the environmental map, including: determining the target laser point cloud of the passable current detection space based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor whose height is greater than the pass threshold; and displaying the passable area on the environmental map based on the target laser point cloud.

[0048] In this embodiment, the laser radar is a 2D laser radar, and the laser point cloud data collected by the laser radar is in a two-dimensional form, including the horizontal coordinate and the vertical coordinate of each point. In one embodiment, the laser point cloud data collected by the laser radar can be expressed as PLaser{(x1,y1)...(xn,yn)}.

[0049] The target sensor has a vertical field of view, and the point cloud data collected by the target sensor is in three-dimensional form, including the horizontal coordinate, vertical coordinate and height of each point. In one embodiment, the point cloud data collected by the target sensor can be expressed as PointCloud{(x1,y1,z1)...(xn,yn,zn)}.

[0050] The purpose of this application is to identify the passable space of the cleaning robot. Since the transmitting part of the laser radar is higher than the transmitting part of the target sensor, the target sensor can detect low obstacles. For the sensor point cloud collected by the target sensor, the sensor point cloud with a height lower than the pass threshold of the cleaning robot is further filtered out based on the pass threshold of the cleaning robot to obtain the target point cloud data. In other words, the target point cloud data is the point cloud data with a height greater than the pass threshold of the cleaning robot in the point cloud data collected by the target sensor. Because the low passable space must include detection data higher than the pass threshold of the cleaning robot, by only retaining the detection data higher than the pass threshold of the cleaning robot, the interference of the detection data lower than the pass threshold can be avoided. For example, the pass threshold of the cleaning robot is 10CM. By filtering out the point cloud data with a height lower than 10CM in the point cloud data collected by the target sensor, only retaining the detection data higher than the pass threshold of the cleaning robot, on the one hand, it indicates that the current detection space is passable, and on the other hand, further fusing the target point cloud data and the laser point cloud data can obtain the laser point cloud of the passable current detection space.

[0051] In one embodiment, the passage threshold of the cleaning robot may be pre-set based on the actual height of the cleaning robot, for example, set to be slightly higher than the actual height of the cleaning robot.

[0052] In one embodiment, the laser radar of the cleaning robot protrudes from the top of the cleaning robot body. Usually, the cleaning robot will be provided with a protective cover to cover the laser radar. Taking the height of the top of the protective cover from the ground as a reference, the passing threshold of the cleaning robot can be set to a height of the cleaning robot higher than the height of the protective cover from the ground.

[0053] After determining the target laser point cloud of the current detection space that is passable, the passable area is displayed on the environment map according to the target laser point cloud.

[0054] In this embodiment, the point cloud data collected by the target sensor is filtered according to the pass threshold to obtain target point cloud data that is higher than the pass threshold, and then the target point cloud data and the lidar data are fused to determine that the current detection space is a low passable space.

[0055] In another embodiment, Figure 5As shown, based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor whose height is greater than the pass threshold, the step of determining the target laser point cloud of the current detection space that is passable, that is, the step of determining the target laser point cloud includes:

[0056] Step 502: Acquire target point cloud data whose height is greater than a pass threshold.

[0057] Step 504, synchronizing the laser point cloud data and the target point cloud data.

[0058] The laser radar and target sensor use a unified time source, usually GPS. GPS provides a reference time to the laser radar and target sensor, and the laser radar and target sensor calibrate their respective clock times based on the reference time. The laser radar and target sensor add timestamp information to the collected data according to the calibrated time to achieve timestamp synchronization between the laser radar and target sensor. In this embodiment, the laser point cloud data and the target point cloud data are synchronized based on the timestamp, and each frame of the laser radar point cloud data and each frame of the target point cloud data are aligned.

[0059] Step 506 , converting the synchronized laser point cloud data and target point cloud data into the same two-dimensional map, obtaining a first obstacle point set corresponding to the laser point cloud data, and a second obstacle point set related to the target point cloud data.

[0060] The laser point cloud data is represented in the laser radar coordinate system, and the target point cloud data is represented in the target sensor coordinate system. By converting the laser point cloud data and the target point cloud data into the same two-dimensional map, the target point cloud data and the laser radar point cloud data can be better matched to obtain the target laser point cloud of the low passable space.

[0061] Based on the detection capability and setting position of the target sensor, and the detection capability and setting position of the laser radar, in this embodiment, the target sensor is used to detect low obstacles, while the laser radar is suitable for sensing the global environment and obtaining distance information.

[0062] After the laser point cloud data and the target point cloud data are projected onto the two-dimensional map, the first obstacle point set corresponding to the laser point cloud data is obtained based on the pixel points corresponding to the laser point cloud data on the two-dimensional map, and the second obstacle point set related to the target point cloud data is obtained based on the pixel points corresponding to the target point cloud data on the two-dimensional map. That is, the first obstacle point set represents the pixel points belonging to obstacles detected by the laser radar, and the second obstacle point set represents the pixel points belonging to obstacles detected by the target sensor.

[0063] In one embodiment, the two-dimensional map may be a two-dimensional grid map, and each point in the first obstacle point set and the second obstacle point set may be a grid point. For example, the first obstacle point set may be a set of grids corresponding to the laser radar point cloud data in the two-dimensional grid map, and the second obstacle point set may be a set of grids related to the target point cloud data in the two-dimensional grid map. Specifically, after the laser point cloud data and the target point cloud data are projected into the two-dimensional grid map, the first obstacle point set corresponding to the laser point cloud data is obtained according to the grid corresponding to the laser point cloud data in the two-dimensional grid map, and the second obstacle point set related to the target point cloud data is obtained according to the grid corresponding to the target point cloud data in the two-dimensional grid map.

[0064] The first obstacle point set represents the set of projected points of obstacles detected by the laser radar at a certain detection height on the two-dimensional map, and the second obstacle point set represents the set of projected points of obstacles detected by the target sensor at a height greater than the pass threshold on the two-dimensional map. The laser point cloud data and the target point cloud data are converted to the same two-dimensional map, and the laser point cloud data and the sensor point cloud data with the same horizontal and vertical coordinates can be projected to the same point in the two-dimensional map.

[0065] Step 508: Obtain target points that belong to the first obstacle point set but not to the second obstacle point set according to the first obstacle point set and the second obstacle point set.

[0066] If a point in the two-dimensional map belongs to the first obstacle point set, it means that the obstacle corresponding to the point can be detected by the laser radar. If a point in the two-dimensional map belongs to the second obstacle point set, it means that the obstacle corresponding to the point can be detected by the target sensor. If a point in the two-dimensional map belongs to the first obstacle point set and also to the second obstacle point set, it means that the vertical direction of the point in the two-dimensional map is detected as an obstacle by both the laser radar and the target sensor. According to the detection range of the laser radar and the target sensor, it can be determined that the obstacle detected by both the laser radar and the target sensor is an obstacle close to the cleaning robot. At this time, the cleaning robot is not in a passable low space. This is a normal detection of obstacles. Figure 6 As shown. Figure 6 In the example, the obstacle is close to the cleaning robot, the lidar can detect the point of the obstacle that is equivalent to its height, and the target sensor can detect the point of the obstacle that is higher than the lidar.

[0067] If a point in the two-dimensional map belongs to the first obstacle point set but not the second obstacle point set, it means that the laser radar detects an obstacle in the vertical direction of the point, but the target sensor does not detect an obstacle with a height greater than the pass threshold. This situation corresponds to three cases:

[0068] Case 1: If Figure 7 As shown, the cleaning robot is not in a low traversable space, and the obstacles detected by the laser radar are far away from the cleaning robot. The laser radar can detect the points of obstacles with the same height as it, but the target sensor cannot detect obstacles with a height greater than the pass threshold. Case 1 The cleaning robot is not in a low traversable space.

[0069] Case 2: Based on the installation position of the LiDAR, under normal circumstances, the LiDAR cannot detect obstacles that form a low passable space (such as the bottom of a sofa). However, due to the bumps during the operation of the cleaning robot, the LiDAR has a certain inclination angle, causing the LiDAR to mistakenly detect obstacles that form a low passable space (such as the bottom of a sofa). Figure 8 As shown, due to the tilt of the laser radar, the distant position of the obstacle forming the low passable space is detected, and the target sensor detects the near position of the obstacle forming the low passable space. Case 2: The cleaning robot is in the low passable space, and the low passable space needs to be detected for this case.

[0070] Case 3: If Fig. 9 As shown, based on the installation position of the laser radar, under normal circumstances, the laser radar cannot detect the bottom of obstacles that form a low passable space (such as the bottom of a sofa). The cleaning robot is in a low passable space and detects the bottom of obstacles that form a low passable space nearby, and the target sensor detects obstacles in the distance. Case 3 The cleaning robot is in a low passable space and needs to detect the low passable space for this case.

[0071] In the above three situations, in situation 1, the cleaning robot is not in the low passable space, and in situations 2 and 3, the cleaning robot is in the low passable space. The method of the present application needs to exclude situation 1 and detect the low passable space of the cleaning robot in situations 2 and 3.

[0072] As mentioned above, the laser point cloud data and the target point cloud data are projected into a two-dimensional map to obtain a first obstacle point set corresponding to the laser point cloud data and a second obstacle point set related to the target point cloud data. The first obstacle point set represents obstacles detected by the laser point cloud at a certain detection height, and the second obstacle point set represents obstacles detected by the target sensor at a height greater than the pass threshold. The laser point cloud data and the target point cloud data are converted into the same two-dimensional map, and the laser point cloud data and the sensor point cloud data with the same horizontal and vertical coordinates can be projected to the same point in the two-dimensional map.

[0073] For cases 2 and 3, according to the first obstacle point set and the second obstacle point set, the target points belonging to the first obstacle point set but not to the second obstacle point set are obtained, and the target laser point cloud of the low passable space is further determined.

[0074] Step 510, obtaining a set of points through which a laser beam passes to a target point according to a two-dimensional map.

[0075] Specifically, the laser radar is two-dimensional, and the point set through which the laser beam passes to the target point represents the detection range that the laser beam passes to the target point. Fig.10 As shown, in the two-dimensional map, the points through which the line segment from the origin to the target point C passes represent the point set through which the laser beam passes to the target point.

[0076] Step 512, obtaining a target laser point cloud according to the intersection of the laser beam passing point set and the second obstacle point set.

[0077] If the laser beam to the target point passes through the point set and intersects with the second obstacle point set, it means that in the vertical direction of the detection range of the laser beam passing through the target point, the target sensor detects an obstacle with a height greater than the pass threshold, that is, the radiation range of the laser beam to the target point (the laser radar does not detect the obstacle) is detected by the target sensor as an obstacle higher than the pass threshold of the cleaning robot, corresponding to Figure 8 and Fig. 9 In this case, it can be determined that the cleaning robot is in a passable low space, such as under a passable sofa or under a passable bed. The laser radar point cloud data corresponding to the intersection is determined to be a passable obstacle.

[0078] In this embodiment, by fusing the detection results of the laser radar and target sensor of the cleaning robot, the laser point cloud data and the target point cloud data with a height greater than the pass threshold of the cleaning robot are transferred to the same two-dimensional map, and the laser point cloud data and the point cloud data of the sensor with the same horizontal and vertical coordinates can be projected to the same point in the two-dimensional map. For the target point in the two-dimensional map that belongs to the first obstacle point set but not the second obstacle point set, if the laser beam to the target point passes through the point set and has an intersection with the second obstacle point set, it means that in the vertical direction of the detection range of the laser beam passed by the target point, the target sensor detects an obstacle with a height greater than the pass threshold, that is, the radiation range of the laser beam to the target point is detected by the target sensor as an obstacle higher than the pass threshold of the cleaning robot, so that it can be determined that the cleaning robot is in a passable low space, such as the bottom of a passable sofa or a passable bed where the cleaning robot is located, and the laser radar point cloud data corresponding to the intersection is determined to belong to the top of the low passable space. This method integrates the detection results of target sensors and lidar with vertical field of view, and can accurately determine the laser point cloud data belonging to low passable spaces, improve the accuracy of environmental data obtained by lidar, improve the effects of subsequent mapping and positioning, and avoid problems such as missed scanning and overlapping images.

[0079] In another embodiment, after the step of obtaining the target laser point cloud, the control method of the cleaning robot further includes: deleting the laser point cloud data corresponding to the target point in the current frame.

[0080] As mentioned earlier, if the laser beam to the target point intersects the point set passing through the second obstacle point set, the laser point cloud data corresponding to the intersection is determined to be the target laser point cloud of the low passable space. However, based on the installation position of the laser radar, under normal circumstances, the laser radar cannot detect the bottom of a low passable obstacle, such as the bottom of a sofa. However, due to the bumps during the operation of the cleaning robot, the laser radar has a certain inclination angle, causing the laser radar to mistakenly detect the bottom of a low passable obstacle. Figure 8 As shown, because the laser radar is tilted, it detects the distant position of the bottom of the low passable obstacle, and the target sensor detects the near position of the bottom of the low passable obstacle.

[0081] This situation causes serious distortion of the environmental data acquired by the laser radar. This distortion greatly affects the effects of mapping and positioning, and further causes a series of problems such as missed scans and overlapping images for the cleaning robot in this scene. To avoid this problem, in this embodiment, for the target point that belongs to the first obstacle point set but not the second obstacle point set in the two-dimensional map, if the laser beam to the target point intersects with the second obstacle point set through the point set, the laser point cloud data corresponding to the intersection is determined to be the target laser point cloud of the low passable space, and the laser point cloud data corresponding to the target point in the laser point cloud data of this frame is further deleted. That is, after determining the laser point cloud of the low passable space, the laser point cloud data corresponding to the target point that belongs to the first obstacle point set but not the second obstacle point set in the two-dimensional map related to it is deleted. The advantage of doing this is that the point cloud data at the bottom of the passable obstacle that is mistakenly detected by the laser radar tilt due to the bumps of the cleaning robot can be deleted. Figure 8 The LiDAR point cloud data of the sofa bottom shown in the figure. Although it is possible to accidentally delete Fig. 9 The normal detected distant LiDAR point cloud data shown in FIG. Fig.11 When the position is shown, it belongs to the first obstacle point set and the second obstacle point set in the two-dimensional map, that is, the lidar and the target sensor can be detected at the same time, which is a normal obstacle detection situation and is retained in the lidar point cloud data detected in this frame.

[0082] Therefore, after determining the laser point cloud of the passable obstacle, the laser point cloud data corresponding to the target point that belongs to the first obstacle point set but not the second obstacle point set in the two-dimensional map is deleted. This can delete the point cloud data of obstacles that form low passable spaces that are mistakenly detected by the laser radar tilt due to the bumps of the cleaning robot, thereby improving the accuracy of laser radar data acquisition and avoiding the adverse effects of distortion problems on the subsequent positioning and mapping of the cleaning robot.

[0083] In one embodiment, the two-dimensional map may be a two-dimensional grid map. A two-dimensional grid map refers to a map represented by a network composed of grids. A local two-dimensional grid map includes only local information and has better processing efficiency. Correspondingly, the first obstacle point set may be represented as a first obstacle grid point set composed of multiple grids. The second obstacle point set may be represented as a second obstacle grid point set composed of multiple grids.

[0084] Specifically, after synchronizing the laser point cloud data and the target point cloud data, the process of converting the target point cloud data into a local two-dimensional grid map includes the following steps:

[0085] Step 1: Convert the target point cloud data from the target sensor coordinate system to the cleaning robot coordinate system.

[0086] Among them, the conversion relationship between the target sensor coordinate system and the machine coordinate system can be obtained by calibrating the relative position relationship between the target sensor and the cleaning robot. Specifically, the position conversion matrix Tt of the target sensor coordinate system relative to the cleaning robot coordinate system can be obtained by calibration, so as to convert the target point cloud data PointCloud{(x1,y1,z1)...(xn,yn,zn)} to the current cleaning robot coordinate system, and obtain the target point cloud data PointCloud' in the cleaning robot coordinate system:

[0087] P'=Tt*P

[0088] Among them, P' represents the target point cloud data in the cleaning robot coordinate system, P represents the target point cloud data in the target sensor coordinate system, and Tt is the position transformation matrix of the target sensor coordinate system relative to the cleaning robot coordinate system.

[0089] Step 2, construct a local grid map coordinate system, obtain the local grid map representation of the current position of the cleaning robot, project the target point cloud data P' in the cleaning robot coordinate system to the 2D plane, calculate the coordinates in the local grid map, and obtain the grid coordinate point set after rasterization, that is, the first obstacle grid point set PCell_T{(Mp_x1,Mp_y1)...(Mp_xn,Mp_yn)}.

[0090] Mp_x=x / R

[0091] Mp_y=y / R

[0092] Among them, x represents the horizontal coordinate of the point cloud data in the cleaning robot coordinate system, y represents the vertical coordinate of the point cloud data in the cleaning robot coordinate system, Mp_x represents the horizontal coordinate of the grid map, Mp_y represents the vertical coordinate of the grid map, and R represents the rate of the grid map.

[0093] Specifically, after synchronizing the laser point cloud data and the target point cloud data, the process of converting the laser radar point cloud data into a local two-dimensional grid map includes the following steps:

[0094] Step 1: Convert the LiDAR point cloud data from the LiDAR coordinate system to the cleaning robot coordinate system.

[0095] First, the laser acquisition data is converted to the laser radar coordinate system. The laser acquisition data consists of the measured distance r and the corresponding measurement angle of each laser beam: Laser{(r1,t1)...(rn,tn)}. The 2D point cloud data converted to the laser radar coordinate system is: PLaser{(x1,y1)...(xn,yn)}. The conversion formula is:

[0096] x i= r i cos(t i )

[0097] y i = r i sin(t i )

[0098] Among them, r i represents the measured distance of the i-th point cloud, t i Indicates the measurement angle of the i-th point cloud, x i Represents the horizontal coordinate of the i-th point cloud in the laser radar coordinate system, y i Represents the ordinate of the i-th point cloud in the lidar coordinate system.

[0099] The conversion relationship between the laser radar coordinate system and the machine coordinate system can be obtained by calibrating the relative position relationship between the laser radar and the cleaning robot. According to the conversion relationship between the laser radar coordinate system and the cleaning robot coordinate system, the laser radar point cloud data is converted to the cleaning robot coordinate system to obtain the laser radar point cloud data in the cleaning robot coordinate system.

[0100] The conversion formula is as follows:

[0101] PLaser'=T1*PLaser

[0102] Among them, PLaser' represents the laser radar point cloud data in the cleaning robot coordinate system, PLaser represents the laser radar point cloud data in the laser radar coordinate system, and T1 is the pose conversion matrix from the laser radar coordinate system to the cleaning robot coordinate system.

[0103] Step 3, calculate the coordinates of the laser radar point cloud data in the cleaning robot coordinate system in the local grid map coordinate system, and obtain the grid corresponding to the laser radar point cloud data in the local grid map coordinate system, that is, the second obstacle grid point set PCell_L{(Mp_x1',Mp_y1')...(Mp_xm',Mp_ym')}. The calculation formula is as follows:

[0104] Mp_x=x / R

[0105] Mp_y=y / R

[0106] Among them, x represents the horizontal coordinate of the point cloud data in the cleaning robot coordinate system, y represents the vertical coordinate of the point cloud data in the cleaning robot coordinate system, Mp_x represents the horizontal coordinate of the grid map, Mp_y represents the vertical coordinate of the grid map, and R represents the rate of the grid map.

[0107] In the local two-dimensional grid map, a target grid belonging to the first obstacle grid point set but not belonging to the second obstacle grid point set is obtained according to the first obstacle grid point set and the second obstacle grid point set, wherein the target grid is a representation form of the target point.

[0108] The first obstacle grid point set is a coordinate data set of all grids corresponding to the laser radar point cloud data in the local two-dimensional map. The second obstacle grid point set is a coordinate data set of all grids corresponding to the sensor-related target point cloud data in the local two-dimensional map.

[0109] Specifically, for each grid point in the first obstacle grid point set, it is determined whether it exists in the second obstacle grid point set, thereby determining a target grid that belongs to the first obstacle grid point set but not to the second obstacle grid point set, that is, a target point in the two-dimensional map.

[0110] It is understandable that, depending on the search situation, there may be one or more target grids. Fig.12 As shown, the following steps 1202 to 1204 are executed for each target grid point.

[0111] Step 1202 : A laser beam to a target grid is acquired to pass through a target space grid where the grid set intersects with the second obstacle grid set.

[0112] The grid set that the laser beam passes through is the set of grids that the laser beam passes through to the target grid in the two-dimensional grid map. Specifically, the laser radar is two-dimensional, and the grid that the laser beam passes through to the target grid represents the detection range that the laser beam passes through to the target grid point. Fig.10 As shown, in the two-dimensional grid map, the points through which the line segment from the origin to the target grid C passes represent that the laser beam to the target grid passes through the grid set.

[0113] Calculate the intersection of the grid set that the laser beam to the target grid passes through and the second obstacle grid set: PMerge = PCell_Linei∩PCell_T'. PMerge represents the intersection, PCell_Linei represents the grid set that the laser beam to the target grid passes through, and PCell_T' represents the second obstacle grid set.

[0114] If the grid set through which the laser beam reaches the target grid does not intersect with the second obstacle grid set, that is, PMerge is empty, it means that no obstacle is detected in the vertical direction within the range through which the laser beam reaches the target grid. Figure 7 The situation shown.

[0115] If the grid set through which the laser beam passes to the target grid intersects with the second obstacle grid set, that is, PMerge is not empty, it means that in the vertical direction of the detection range of the laser beam passing through the target grid (in which the laser radar does not detect obstacles), the target sensor detects an obstacle with a height greater than the pass threshold, that is, the corresponding Figure 8 and Fig. 9 In the case of a problem, it can be determined that the cleaning robot is in a low traversable space, such as under a traversable sofa or under a traversable bed. At this time, the intersection of the grid set and the second obstacle grid set through which the laser beam reaches the target grid is determined as the target space grid. It can be understood that there can be multiple target space grids.

[0116] Step 1204 , determining that the laser point cloud data corresponding to the target space grid is the target laser point cloud of the low passable space.

[0117] Specifically, the laser beam to the target grid passes through the laser radar point cloud data corresponding to the intersection of the grid set and the second obstacle grid set to determine the target laser point cloud of the low passable space.

[0118] In this embodiment, by fusing the lidar point cloud data and the target point cloud data in the local two-dimensional grid map, the processing efficiency of the low passable space detection can be improved.

[0119] In another embodiment, Fig.13 As shown, the step of obtaining a target point belonging to the first obstacle point set but not belonging to the second obstacle point set according to the first obstacle point set and the second obstacle point set includes:

[0120] Step 1302: Obtain a first obstacle grid set corresponding to the laser point cloud data in the local two-dimensional grid map.

[0121] The first obstacle grid set is a coordinate data set of all grids corresponding to the laser radar point cloud data in the local two-dimensional grid map.

[0122] Step 1304: Obtain a second obstacle grid set related to the target point cloud data in the local two-dimensional grid map.

[0123] The second obstacle grid set is a coordinate data set of all grids related to the target point cloud data of the sensor in the local two-dimensional map.

[0124] Step 1306: Use each grid in the first obstacle grid set as a search point.

[0125] Step 1308, check whether there is a search point in the second obstacle grid set. If found, it means that the obstacle point corresponding to the search point can be detected by both the laser radar and the target sensor. Figure 6 If no search is found, step 1310 is executed.

[0126] Step 1310, taking the search point as the target grid.

[0127] If it is not found, it means that in the vertical direction of the detection range of the laser beam passing through the target grid (the laser radar does not detect obstacles in this range), the target sensor detects an obstacle with a height greater than the pass threshold, which corresponds to Figure 8 and Fig. 9 In this case, it can be determined that the cleaning robot is in a low passable space, such as under a sofa or bed where the cleaning robot can pass.

[0128] Step 1312, determine whether each grid in the first obstacle grid set has been searched. If not, return to step 1306 until each grid in the first obstacle grid set has been searched.

[0129] In this embodiment, a traversal method is adopted to take each grid in the first obstacle grid set as a search point, and to search whether the search point exists in the second obstacle grid set, so as to improve the search accuracy of the target grid.

[0130] In another embodiment, a method for obtaining a second obstacle point set related to the target point cloud data includes: obtaining obstacle points corresponding to the target point cloud data in a two-dimensional map; and obtaining a second obstacle point set based on the obstacle points and points within a preset range around the obstacle points.

[0131] Specifically, the target point cloud data is converted to the local map coordinate system to obtain the obstacle points corresponding to the target point cloud data in the two-dimensional map. In actual processing, if the projection of the laser data is also near the obstacle point, it will cause misjudgment of the laser beam. In order to increase the robustness of the algorithm, the obstacle points are expanded in this embodiment to obtain the obstacle point set detected by the target sensor.

[0132] Specifically, considering that the sampling points of the LiDAR are relatively sparse, taking the target sensor as a 3D TOF sensor as an example, the sampling points of the LiDAR are even sparser than those of the 3D TOF sensor. When the LiDAR point cloud data and the target point cloud data are converted to the same local two-dimensional map, one LiDAR point cloud data may correspond to two or more adjacent target point cloud data. In addition, the target sensor may have errors. If only the detected sensor target point cloud is used for subsequent calculations, there may be problems with identification and judgment.

[0133] To address this problem, in this embodiment, a second obstacle point set is obtained based on the obstacle points and points (grid points) within a preset range around the obstacle points.

[0134] Among them, the points within the preset range around the obstacle point can be determined based on the distribution of the laser radar's collection points and the measurement error of the target sensor, and can also be set based on experience. For example, the obstacle point can be taken as the center and two pixel points can be expanded outward to obtain the second obstacle point set. In this way, the pixel point data in the obstacle point set detected by the target sensor can be expanded on the basis of the original obstacle point to reduce misjudgment.

[0135] In one embodiment, obtaining the second obstacle point set according to the obstacle point and points within a preset range around the obstacle point includes: taking the obstacle point as the center and expanding a first preset number of points outward to obtain the second obstacle point set.

[0136] Specifically, Fig.14 As shown, for obstacle point 1301, two pixel points are expanded outward with it as the center to obtain an expanded obstacle point. According to obstacle point 1301 and the obstacles expanded outward with it as the center, a second obstacle point set is obtained. The number of pixel points expanded outward can be determined according to actual conditions. In other embodiments, more or fewer pixel points can be expanded outward. Fig.15 As shown in FIG. 1 , the black obstacle point in the figure is taken as the center and expanded outward by 1 pixel to obtain the gray expanded obstacle point in the figure.

[0137] In this embodiment, the expansion method with the obstacle point as the center can quickly expand to obtain the second obstacle point set.

[0138] In another embodiment, a second obstacle point set is obtained based on the obstacle point and the points within a preset range around the obstacle point, including: connecting the obstacle points within the preset distance range to obtain the points to be expanded, the points to be expanded include the points through which the obstacle point connection line passes, and the unconnected obstacle points; with the points to be expanded as the center, expanding outward a second preset number of points to obtain the second obstacle point set.

[0139] In this embodiment, a preset distance range is set based on experience, and obstacle points within the preset distance range are connected to obtain a point grid to be expanded. Fig.16 As shown in FIG. 1 , if the preset distance range is 3 pixels, then each obstacle point 1501 within the preset range is connected to obtain an obstacle point line 1502. Each pixel point passed by the obstacle point line 1502 is a point to be expanded. The point to be expanded also includes unconnected obstacle points, such as obstacle points whose distance to other obstacle points exceeds the preset range. With the point to be expanded as the center, a second preset number of points are expanded outward to obtain a second obstacle point set.

[0140] In this embodiment, the obstacle points within the preset distance range are connected and then expanded, which can be quickly expanded to obtain the second obstacle point set.

[0141] In another embodiment, obtaining a set of points through which a laser beam passes to a target point according to a two-dimensional map includes: obtaining points through which a line from an origin to the target point of the two-dimensional map passes, and obtaining a set of points through which a laser beam passes to the target point.

[0142] Specifically, the laser beam passing point set is a set of points formed by the laser beam passing through the target point in the two-dimensional map. Specifically, the laser radar is two-dimensional, and the laser beam passing through the target point represents the detection range that the laser beam passes through to the target point. One form of the laser beam passing point set is the laser beam passing through grid set. Fig.10 As shown, in the two-dimensional grid map, the grids passed by the line segment from the origin to the target grid C represent the grid set passed by the laser beam to the target grid. That is to say, if the two-dimensional map is a two-dimensional grid map, the laser beam passing point set is the laser beam passing grid set, specifically, the set of grids passed by the line from the origin to the target grid of the local two-dimensional grid map.

[0143] If the laser beam passing through the point set to the target point intersects with the second obstacle point set, the target point is obtained according to the intersection. The target point means that in the vertical direction of the detection range of the laser beam passing through the target point, the target sensor detects an obstacle with a height greater than the pass threshold, that is, the radiation range of the laser beam to the target point (the laser radar does not detect the obstacle) is detected by the target sensor as an obstacle higher than the pass threshold of the cleaning robot, corresponding to Figure 8 and Fig. 9 In this case, it can be determined that the cleaning robot is in a passable low space, such as under a passable sofa or under a passable bed. Then the laser radar point cloud data corresponding to the target grid point is the target laser point cloud of the passable low space.

[0144] In this embodiment, by using the set of points passed by the line from the origin to the target point of the local two-dimensional map and the intersection of the second obstacle point set, it is determined whether the radiation range of the laser beam to the target grid (the laser radar does not detect obstacles) is detected by the target sensor and whether obstacles higher than the cleaning robot's pass threshold are detected, thereby determining whether the cleaning robot is in a low passable space. This method is consistent with the actual operating conditions of the cleaning robot and can accurately detect whether the cleaning robot is in a low passable environment.

[0145] In another embodiment, the environment map is a global map. Displaying the traversable area on the environment map according to the target laser point cloud includes: obtaining the position and posture of the cleaning robot at the current moment; converting the target laser point cloud to the global map coordinate system according to the current position and posture and the target laser point cloud to obtain coordinate data in the global map coordinate system; and displaying the area corresponding to the coordinate data as the traversable area on the environment map.

[0146] Specifically, the target laser point cloud is converted into a global map coordinate system, so that the low passable space can be marked as a passable area in the global map.

[0147] Specifically, obtain the posture Pt(x, y, θ) of the cleaning robot corresponding to the laser point cloud of the current frame, and the posture matrix T from the laser radar coordinate system to the global map coordinate system,

[0148]

[0149] According to the pose matrix T from the laser radar coordinate system to the global map coordinate system, the coordinates of each target laser point cloud corresponding to the global map coordinate system are calculated:

[0150] PMap=T*PMerge

[0151] Among them, PMap is the coordinate of the target laser point cloud in the global map coordinate system, T is the pose matrix from the laser radar coordinate system to the global map coordinate system, and PMerge is the coordinate of the target laser point cloud in the laser radar coordinate system.

[0152] The coordinates of the target laser point cloud in the global map coordinate system can be represented as a traversable area in the global map.

[0153] In this embodiment, by marking the target laser point cloud as a laser point cloud of a low passable space in the global map, and marking the passable area based on the laser point cloud of the low passable space, the semantic information of the global map can be updated.

[0154] Among them, after the global map of the cleaning robot is constructed or updated, all the traversable areas of the cleaning robot can be obtained.

[0155] Global map construction refers to the initial construction of the map by the cleaning robot. Global map update refers to the data collected by the cleaning robot during operation and the update based on the data. Global map update consumes certain resources, and the fixed operation area of ​​the cleaning robot usually does not change frequently. Taking the cleaning robot as an example, the furnishings in the room usually remain unchanged for a period of time. In order to save resources, the user can trigger a global map update through a mobile terminal or a cleaning robot button after the statement changes. The global map update can update the traversable area. In one embodiment, the global map before the update is as follows: Fig.17 As shown in the figure, white represents the free area, gray represents the unknown area, and black represents the obstacle area. Fig.17 In the example, the obstacle area 1701 is a sofa, and the space at the bottom of the sofa is not passable. After the sofa is replaced with a high-legged sofa with a passable space at the bottom, the updated global map is as follows Fig.18 As shown, the space under the sofa is shown as a passable area.

[0156] In this embodiment, the detection of target lidar data in the passable obstacle area is based on single-frame detection and processing. After the cleaning robot completes the global map construction or update, all semantic information can be generated. The scene prior information can be effectively provided when the cleaning robot operates next time, which is conducive to the cleaning robot to quickly judge and process the environment.

[0157] In another embodiment, the control method of the cleaning robot further includes: sending the environment map to a user terminal for display, and the user can view it through a mobile phone terminal, thereby improving the intelligent experience.

[0158] In one embodiment, the cleaning robot uses a 3D TOF sensor and a laser radar to detect passable obstacles. In this embodiment, Fig.19 As shown, the control method of the cleaning robot includes:

[0159] Step 1802, obtaining laser point cloud data collected by the laser radar.

[0160] Step 1804 , obtaining target point cloud data collected by the 3D TOF sensor whose height is greater than the cleaning robot's pass threshold.

[0161] Step 1806: Synchronize the laser point cloud data and the target point cloud data, and convert the laser point cloud data and the target point cloud data into the same two-dimensional grid map.

[0162] In this step, the laser point cloud data is first converted to the cleaning robot coordinate system, and then converted from the cleaning robot coordinate system to the two-dimensional local map coordinate system. The target point cloud data is first converted to the cleaning robot coordinate system, and then converted from the cleaning robot coordinate system to the two-dimensional local map coordinate system.

[0163] Step 1808: Obtain a first obstacle grid set corresponding to the laser point cloud data in the local two-dimensional grid map.

[0164] Step 1810, obtaining obstacle points of the target point cloud data in the two-dimensional grid map; and obtaining a second obstacle grid set according to the obstacle points and the grids within a preset range around the obstacle points.

[0165] In order to increase the robustness of the algorithm and solve the critical point misjudgment scenario (if the projection of the laser data is also near the grid, it will cause misjudgment of the laser beam), the grid is expanded. The expansion methods include:

[0166] Extension method 1: Taking the obstacle point as the center, expand outward a first preset number of grids to obtain a second obstacle grid set.

[0167] Extension method 2: connect obstacle points within a preset distance range to obtain a grid to be expanded, which includes grids passed by the obstacle point connection line and unconnected obstacle points; take the center of the grid to be expanded as the center, expand outward a second preset number of grids to obtain a second obstacle point set.

[0168] Step 1812: Use each grid of the first obstacle grid set as a search point.

[0169] Step 1814, check whether there is a search point in the second obstacle point set. If so, the cleaning robot is in a non-passable obstacle scene. If not, execute step 1816 and use the search point as the target grid. If so, return to step 1812 until the search of each grid in the first obstacle point set in the second obstacle point set is completed.

[0170] Step 1818, determine whether the grid set through which the laser beam to the target grid passes intersects with the second obstacle point set. If so, execute step 1820, if not, return to step 1812 until each point in the first obstacle point set is searched in the second obstacle point set.

[0171] Step 1820, obtaining a target space grid according to the intersection, and determining that the target laser point cloud corresponding to the target space grid is a target laser point cloud of a low passable space.

[0172] Step 1822, delete the laser point cloud data corresponding to the current frame and the target grid.

[0173] Step 1824, displaying the traversable area on the environment map according to the target laser point cloud.

[0174] In this embodiment, by fusing the detection results of the laser radar and the target sensor of the cleaning robot, the laser point cloud data and the target point cloud data with a height greater than the pass threshold of the cleaning robot are transferred to the same two-dimensional map, and the laser point cloud data and the sensor point cloud data with the same horizontal and vertical coordinates can be projected onto the grid points in the two-dimensional map. For the target point in the two-dimensional map that belongs to the first obstacle point set detected by the laser radar but does not belong to the second obstacle point set detected by the target sensor, if the laser beam passing through the point set to the target point has an intersection with the second obstacle point set, it means that in the vertical direction of the detection range of the laser beam passing through the target point, the target sensor detects an obstacle with a height greater than the pass threshold, that is, the radiation range of the laser beam to the target grid point is detected by the target sensor as an obstacle higher than the pass threshold of the cleaning robot, so that it can be determined that the cleaning robot is in a low passable space, such as the cleaning robot is under a passable sofa or under a passable bed, and the laser radar point cloud data corresponding to the intersection is determined as the target laser point cloud of the low passable space. This method combines the detection results of target sensors with vertical field of view and lidar, and can determine the target laser point cloud of low passable spaces, thereby improving the accuracy of low passable space recognition. This method can effectively detect low passable spaces (including the bottom of sofas, beds, coffee tables, etc. that are at the same height as the lidar), improve the positioning robustness of the machine in the corresponding scene, greatly improve the stability of the map, and greatly reduce the probability of overlapping images in this scene.

[0175] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0176] Based on the same inventive concept, the embodiment of the present application also provides a control device for a cleaning robot for implementing the control method of the cleaning robot involved above. The implementation solutions provided by each device to solve the problem are similar to the implementation solutions recorded in the above method, so the specific limitations in the embodiments of each device provided below can refer to the limitations of the method above, and will not be repeated here.

[0177] In one embodiment, a control device for a cleaning robot is provided. Fig. 20 As shown, including:

[0178] A control device 2002, used for controlling the laser radar and the target sensor of the cleaning robot to collect data;

[0179] The display control device 2004 is used to display the current detection space as a passable area on the environment map when it is determined that the current detection space is passable based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor.

[0180] In another embodiment, a display control device includes:

[0181] The point cloud detection module is used to determine the target laser point cloud of the current detection space that is passable based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor with a height greater than a pass threshold.

[0182] The display processing module is used to display the traversable area on the environment map according to the target laser point cloud.

[0183] In another embodiment, the point cloud detection module includes:

[0184] A synchronization module is used to synchronize the laser point cloud data with the target point cloud data.

[0185] A conversion module is used to convert the synchronized laser point cloud data and the target point cloud data into the same two-dimensional map to obtain a first obstacle point set corresponding to the laser point cloud data and a second obstacle point set related to the target point cloud data.

[0186] A search module is used to obtain a target point that belongs to the first obstacle point set but does not belong to the second obstacle point set according to the first obstacle point set and the second obstacle point set.

[0187] The beam acquisition module is used to acquire a set of points through which the laser beam passes to the target point according to the two-dimensional map.

[0188] The intersection processing module is used to obtain the target laser point cloud according to the intersection of the laser beam passing point set and the second obstacle point set.

[0189] In another embodiment, the control device of the cleaning robot further comprises:

[0190] The deletion module is used to delete the laser point cloud data corresponding to the target point in the current frame.

[0191] In another embodiment, the conversion module includes:

[0192] The projection module is used to obtain the obstacle points corresponding to the target point cloud data in the two-dimensional map.

[0193] The expansion module is used to obtain the second obstacle point set according to the obstacle point and points within a preset range around the obstacle point.

[0194] In another embodiment, the expansion module is used to expand a first preset number of points outward with the obstacle point as the center to obtain the second obstacle point set.

[0195] In another embodiment, the expansion module is used to connect obstacle points within a preset distance range to obtain points to be expanded, wherein the points to be expanded include the points through which the obstacle point connection line passes, and the unconnected obstacle points; with the points to be expanded as the center, a second preset number of points are expanded outward to obtain the second obstacle point set.

[0196] In another embodiment, the beam acquisition module is used to acquire the points passed by the line from the origin of the two-dimensional map to the target point, and obtain a set of points passed by the laser beam to the target point.

[0197] In another embodiment, the environmental map is a global map; a display processing module is used to obtain the position and posture of the cleaning robot at a current moment; according to the position and posture at the current moment and the target laser point cloud, the target laser point cloud is converted to a global map coordinate system to obtain coordinate data in the global map coordinate system; and the area corresponding to the coordinate data is displayed on the environmental map as a passable area.

[0198] Each module in the control device of the cleaning robot can be implemented in whole or in part by software, hardware, or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute operations corresponding to each module.

[0199] In one embodiment, a cleaning robot is provided, and the internal structure diagram of the controller can be as follows: Fig.21As shown. The computer device includes a processor and a memory connected via a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be implemented through WIFI, mobile cellular network, NFC (near field communication) or other technologies. When the computer program is executed by the processor, a control method for a cleaning robot is implemented.

[0200] Those skilled in the art will understand that Fig.21 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0201] In one embodiment, a cleaning robot is provided, wherein the cleaning robot is provided with a laser radar and a target sensor, wherein the transmitting portion of the laser radar is higher than the transmitting portion of the target sensor, and the target sensor has a vertical field of view. The cleaning robot is also provided with a controller, wherein the controller is electrically connected to the laser radar and the target sensor, and wherein the controller includes a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the following steps are implemented:

[0202] Controlling the laser radar and the target sensor of the cleaning robot to collect data;

[0203] For the traversable current detection space, based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor with a height greater than a traversable threshold, the current detection space is displayed as a traversable area on the environment map.

[0204] In another embodiment, when it is determined that the current detection space is passable based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor, the current detection space is displayed as a passable area on the environment map, including:

[0205] Determine a target laser point cloud of a current detection space that is passable based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor whose height is greater than a pass threshold;

[0206] A traversable area is displayed on an environment map according to the target laser point cloud.

[0207] In another embodiment, the determining of the target laser point cloud of the current detection space that is passable based on the laser point cloud data collected by the laser radar and the target point cloud data whose height is greater than the pass threshold collected by the target sensor includes:

[0208] Acquire target point cloud data whose height is greater than the pass threshold;

[0209] Synchronizing the laser point cloud data and the target point cloud data;

[0210] Converting the synchronized laser point cloud data and the target point cloud data to the same two-dimensional map to obtain a first obstacle point set corresponding to the laser point cloud data and a second obstacle point set related to the target point cloud data;

[0211] According to the first obstacle point set and the second obstacle point set, obtaining a target point that belongs to the first obstacle point set but does not belong to the second obstacle point set;

[0212] Acquire a set of points through which a laser beam passes to the target point according to the two-dimensional map;

[0213] The target laser point cloud is obtained according to the intersection of the laser beam passing point set and the second obstacle point set.

[0214] In another embodiment, when the computer program is executed by a processor, the following steps are also implemented:

[0215] Delete the laser point cloud data corresponding to the target point in the current frame.

[0216] In another embodiment, the method of obtaining a second obstacle point set related to the target point cloud data includes:

[0217] Obtaining obstacle points corresponding to the target point cloud data in the two-dimensional map;

[0218] The second obstacle point set is obtained according to the obstacle point and points within a preset range around the obstacle point.

[0219] In another embodiment, obtaining the second obstacle point set according to the obstacle point and points within a preset range around the obstacle point includes:

[0220] Taking the obstacle point as the center, a first preset number of points are expanded outward to obtain the second obstacle point set.

[0221] In another embodiment, obtaining the second obstacle point set according to the obstacle point and points within a preset range around the obstacle point includes:

[0222] Connecting obstacle points within a preset distance range to obtain points to be expanded, wherein the points to be expanded include points passed by the obstacle point connection line and the unconnected obstacle points;

[0223] Taking the point to be expanded as the center, a second preset number of points are expanded outward to obtain the second obstacle point set.

[0224] In another embodiment, acquiring the laser beam passing through the target point according to the two-dimensional map includes:

[0225] The points passed by the line from the origin of the two-dimensional map to the target point are obtained to obtain a set of points passed by the laser beam to the target point.

[0226] The environmental map is a global map; and displaying the traversable area on the environmental map according to the target laser point cloud includes:

[0227] Obtaining the position and posture of the cleaning robot at the current moment;

[0228] According to the current position and the target laser point cloud, the target laser point cloud is converted into a global map coordinate system to obtain coordinate data in the global map coordinate system;

[0229] The area corresponding to the coordinate data is displayed as a passable area on the environment map.

[0230] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the cleaning robot control method of each of the above embodiments are implemented.

[0231] In one embodiment, a computer program product is provided, including a computer program, which implements the steps of the cleaning robot control method of each of the above embodiments when executed by a processor.

[0232] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., but are not limited to this.

[0233] The technical features of the above embodiments may be arbitrarily combined. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0234] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.

Claims

1. A control method for a cleaning robot, characterized in that: The cleaning robot is provided with a laser radar and a target sensor, the emitting portion of the laser radar is higher than the emitting portion of the target sensor, and the target sensor has a vertical field of view, and the method comprises: Controlling the laser radar and the target sensor of the cleaning robot to collect data; When it is determined that the current detection space is passable based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor, the current detection space is displayed as a passable area on the environment map.

2. The method according to claim 1, characterized in that When it is determined that the current detection space is passable based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor, the current detection space is displayed as a passable area on the environment map, including: Determine a target laser point cloud of a current detection space that is passable based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor whose height is greater than a pass threshold; A traversable area is displayed on an environment map according to the target laser point cloud.

3. The method according to claim 2, characterized in that The determining of the target laser point cloud of the current detection space that is passable based on the laser point cloud data collected by the laser radar and the target point cloud data whose height is greater than the pass threshold collected by the target sensor includes: Acquire target point cloud data whose height is greater than the pass threshold; Synchronizing the laser point cloud data and the target point cloud data; Converting the synchronized laser point cloud data and the target point cloud data to the same two-dimensional map to obtain a first obstacle point set corresponding to the laser point cloud data and a second obstacle point set related to the target point cloud data; According to the first obstacle point set and the second obstacle point set, obtaining a target point that belongs to the first obstacle point set but does not belong to the second obstacle point set; Acquire a set of points through which a laser beam passes to the target point according to the two-dimensional map; The target laser point cloud is obtained according to the intersection of the laser beam passing point set and the second obstacle point set.

4. The method according to claim 3, characterized in that After obtaining the target laser point cloud, the method further includes: Delete the laser point cloud data corresponding to the target point in the current frame.

5. The method according to claim 3, characterized in that: The method of obtaining a second obstacle point set related to the target point cloud data includes: Obtaining obstacle points corresponding to the target point cloud data in the two-dimensional map; The second obstacle point set is obtained according to the obstacle point and points within a preset range around the obstacle point.

6. The method according to claim 5, characterized in that The obtaining the second obstacle point set according to the obstacle point and points within a preset range around the obstacle point includes: Taking the obstacle point as the center, a first preset number of points are expanded outward to obtain the second obstacle point set.

7. The method according to claim 5, characterized in that The obtaining the second obstacle point set according to the obstacle point and points within a preset range around the obstacle point includes: Connecting obstacle points within a preset distance range to obtain points to be expanded, wherein the points to be expanded include points passed by the obstacle point connection line and the unconnected obstacle points; Taking the point to be expanded as the center, a second preset number of points are expanded outward to obtain the second obstacle point set.

8. The method according to claim 3, characterized in that The step of acquiring a laser beam passing through a point set to the target point according to the two-dimensional map includes: The points passed by the line from the origin of the two-dimensional map to the target point are obtained to obtain a set of points passed by the laser beam to the target point.

9. The method according to any one of claims 2 to 8, characterized in that: The environmental map is a global map; and displaying the traversable area on the environmental map according to the target laser point cloud includes: Obtaining the position and posture of the cleaning robot at the current moment; According to the current position and the target laser point cloud, the target laser point cloud is converted into a global map coordinate system to obtain coordinate data in the global map coordinate system; The area corresponding to the coordinate data is displayed on the environment map as a passable area.

10. A cleaning robot, characterized in that: The cleaning robot is provided with a laser radar and a target sensor, the transmitting part of the laser radar is higher than the transmitting part of the target sensor, and the target sensor has a vertical field of view. The cleaning robot is also provided with a controller, the controller is electrically connected to the laser radar and the target sensor, and the controller includes a memory and a processor, the memory stores a computer program, and the computer program is executed by the processor to implement the following steps: Controlling the laser radar and the target sensor of the cleaning robot to collect data; For the traversable current detection space, based on the laser point cloud data collected by the laser radar and the target point cloud data collected by the target sensor with a height greater than a traversable threshold, the current detection space is displayed as a traversable area on the environment map.