Lifting method and device, mobile robot and storage medium
By controlling the liftable device to rotate on the sweeping robot to collect point cloud data, identify low-short areas and lift devices in time, the problem of identifying low-short spaces in the prior art can only be identified after reaching the target position, and the working efficiency of sweeping robots is improved.
Patent Information
- Application Number
- CN202411606856.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-11
- Publication Date
- 2025-08-08
AI Technical Summary
Existing sweeping robots need to reach the target position when identifying low spaces, which affects work efficiency.
By controlling the rotation of the liftable device at the first position of the mobile robot, point cloud data returned by the obstacle is collected, and whether the projected position of the obstacle belongs to a low area based on the point cloud data, and lifting the liftable device when the robot leaves or enters the low area.
It realizes the update of map data in advance when identifying low areas, improves the work efficiency of the sweeping robot and avoids the reduction in efficiency caused by recognition lag.
Smart Images

Figure CN120447532A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to, but is not limited to, the field of lifting technology, and in particular to a lifting method, device, mobile robot, and storage medium. Background Art
[0002] Currently, a laser distance sensor (LDS) solution has been proposed to address the low-lying cleaning needs of household robot vacuums. To avoid collisions, an intelligent algorithm is needed to effectively identify low-lying spaces and proactively lower the LDS to allow the robot to pass through them.
[0003] However, in identifying low spaces, an upward ranging device of a sweeping robot is usually used to measure distance, so as to determine which positions belong to low areas and which positions belong to non-low areas.
[0004] However, this method requires reaching the target position before identifying whether the target position belongs to a low space, which will affect the working efficiency of the sweeping robot. Summary of the Invention
[0005] In view of this, the embodiments of the present application at least provide a lifting method, device, mobile robot and storage medium, which can improve the working efficiency of the mobile robot.
[0006] The technical solution of the embodiment of the present application is implemented as follows:
[0007] In one aspect, an embodiment of the present application provides a lifting method, which is applied to a mobile robot, wherein the mobile robot includes a liftable device, including:
[0008] When the mobile robot is in the first position, controlling the liftable device to rotate;
[0009] The first point cloud data returned by the obstacle formed during the rotation is collected through the liftable device;
[0010] determining, based on the first point cloud data, whether a projection position of the first point cloud data belongs to a first area;
[0011] When the mobile robot leaves or enters the first area, the liftable device is raised or lowered.
[0012] On the other hand, an embodiment of the present application provides a lifting device, which is provided in a mobile robot. The mobile robot includes a lifting device, including:
[0013] A control module, configured to control the rotation of the liftable device when the mobile robot is in the first position;
[0014] A collection module, configured to collect first point cloud data returned by an obstacle formed during the rotation process through a liftable device;
[0015] a determination module, configured to determine, based on the first point cloud data, whether a projection position of the first point cloud data belongs to a first area;
[0016] The lifting module is used to lift or lower the liftable device when the mobile robot leaves or enters the first area.
[0017] On the other hand, an embodiment of the present application provides a mobile robot, including a memory and a processor, wherein the memory stores a computer program that can be run on the processor, and when the processor executes the program, some or all of the steps in the above method are implemented.
[0018] Embodiments of the present application provide a lifting method, apparatus, mobile robot, and storage medium. The mobile robot includes a liftable device, comprising: when the mobile robot is in a first position, controlling the liftable device to rotate, collecting, through the liftable device, first point cloud data returned by an obstacle formed during the rotation, determining, based on the first point cloud data, whether a projection position of the first point cloud data belongs to a first area, and raising or lowering the liftable device when the mobile robot leaves or enters the first area; that is, in embodiments of the present application, based on the mobile robot at the first position, the first point cloud data returned by the obstacle can be collected by controlling the liftable device to rotate, and then the first point cloud data is used to determine whether the projection position of the first point cloud data belongs to a low area. Since the mobile robot can collect the first point cloud data at the first position, the mobile robot can determine in advance whether other positions are low areas at the first position, and thus can timely update the low areas in the map. Therefore, when the mobile robot leaves or enters the low area, it can control the liftable device to rise or fall to smoothly pass through the low area, thereby improving the working efficiency of the mobile robot. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Figure 1 A schematic structural diagram of an optional mobile robot provided in an embodiment of the present application;
[0020] Figure 2 A schematic flow chart of an optional lifting method provided in an embodiment of the present application;
[0021] Figure 3a Schematic diagram of an optional sweeping robot collecting point cloud data provided in an embodiment of the present application Figure 1 ;
[0022] Figure 3b Schematic diagram of an optional sweeping robot collecting point cloud data provided in an embodiment of the present application Figure 2 ;
[0023] Figure 3c Schematic diagram 3 of an optional sweeping robot collecting point cloud data provided in an embodiment of the present application;
[0024] Figure 4 A schematic flow chart of an example of an optional lifting method provided in an embodiment of the present application;
[0025] Figure 5 A schematic structural diagram of an optional lifting device provided in an embodiment of the present application;
[0026] Figure 6 A schematic structural diagram of an optional mobile robot provided in an embodiment of the present application. DETAILED DESCRIPTION
[0027] In order to make the technical solutions and advantages of the present application clearer, the technical solutions of the present application are further elaborated in detail below with reference to the accompanying drawings and embodiments. The described embodiments should not be regarded as limiting the present application. All other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present application.
[0028] In the following description, references to "some embodiments" describe a subset of all possible embodiments. However, it is understood that "some embodiments" may be the same subset or different subsets of all possible embodiments, and may be combined with each other without conflict. The terms "first / second / third" are merely used to distinguish similar objects and do not represent a specific ordering of the objects. It is understood that the specific order or sequence of "first / second / third" may be interchanged where permitted, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein.
[0029] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which this application pertains. The terms used herein are intended only to describe the embodiments of this application and are not intended to limit this application.
[0030] In view of the fact that the map formed by the upward ranging device of the mobile robot is not timely and affects the accuracy of the map, the embodiment of the present application provides a lifting method, which is applied to the mobile robot. Figure 1 A schematic diagram of the structure of an optional mobile robot provided in an embodiment of the present application is shown in FIG. Figure 1 As shown, the mobile robot 100 includes a liftable component 11, which is located on the upper shell of the body 12 of the mobile robot.
[0031] The liftable device 11 can rotate 360 degrees around the installation position on the upper shell of the fuselage 12. In the embodiment of the present application, the component on the liftable device 11 for collecting point cloud data is at a preset elevation angle with the horizontal position.
[0032] In addition, in addition to the above-mentioned liftable device 11, the above-mentioned mobile robot 100 may also include other liftable devices, and this embodiment of the present application does not limit this.
[0033] Based on the above Figure 1 The structure of the mobile robot, Figure 2 A flow chart of an optional lifting method provided in an embodiment of the present application is shown as follows: Figure 2 As shown, the lifting method may include:
[0034] S201: When the mobile robot is in the first position, controlling the liftable component to rotate;
[0035] In order to improve the working efficiency of the mobile robot, map data is usually pre-stored in the mobile robot, and the map data stores information on whether each location is a low area.
[0036] Then, based on the map data, the mobile robot can lower the liftable device when entering a low area and raise the liftable device when leaving a low area. It can be seen that the accuracy of the map data directly affects the working efficiency of the mobile robot.
[0037] Typically, the map data can be obtained using an upward ranging device. However, for an upward ranging device, whether the target location is a low area can only be measured when the target location is reached. Therefore, there will be a lag in the creation and update of the map data, resulting in the mobile robot being unable to identify the low area in a timely manner.
[0038] In order to improve the working efficiency of the mobile robot, it is necessary to enable the mobile robot to distinguish which locations belong to low areas and which locations do not belong to low areas based on accurate map data. In an embodiment of the present application, during the operation of the mobile robot, when the mobile robot is in the first position, the rotation of the liftable device is controlled. The mobile robot in the embodiment of the present application can be a sweeping robot for cleaning the floor, or a robot for providing certain service functions. Here, the embodiment of the present application does not limit this.
[0039] The first position may be any position in the movable area set by the mobile robot. When the mobile robot moves to the first position, the elevating device is controlled to rotate. Here, the range in which the elevating device is controlled to rotate is (0, 360]. Generally, one rotation, that is, 360 degrees, is selected. For example, a laser radar is used as a component on the elevating device for collecting point cloud data. The laser radar is controlled to emit laser pulses while the elevating device is controlled to rotate one circle.
[0040] S202: Collecting first point cloud data returned by an obstacle formed during the rotation process through the liftable device;
[0041] Through the above S201, the mobile robot at the first position controls the liftable device to rotate. During the rotation, the first point cloud data returned by the obstacles in the rotation area is collected by the component of the liftable device for collecting point cloud data.
[0042] For example, a laser radar is used as a component on a liftable device to collect point cloud data. As the liftable device rotates, the laser radar emits laser pulses. The area covered by the laser pulses is called the rotation area. The point cloud data returned by the laser pulses on the obstacle is determined as the first point cloud data. The first point cloud data is the position of the obstacle's surface detected in space.
[0043] In a home environment, these obstacles can include walls, household appliances, coffee tables, and stools. It's important to note that because the LiDAR's elevation angle is generally small, it typically scans the lower surface (bottom) of coffee tables and stools. Coffee tables and stools typically occupy low areas.
[0044] It should be noted that due to the different shapes and heights of obstacles, the arrangement of the point cloud data returned by the laser pulse at different locations is different. For example, the arrangement of the point cloud data obtained by scanning a wall and the bottom of a stool is different.
[0045] Figure 3a Schematic diagram of an optional sweeping robot collecting point cloud data provided in an embodiment of the present application Figure 1 ,like Figure 3a As shown, the sweeping robot is at the current position, controls the lifting device to rotate one circle, and the laser pulse scans the bottom surface of the stool. The connecting line of the point cloud data returned by the bottom surface of the stool is usually a curve with continuous curvature, and the convex direction of the curve deviates from the current position.
[0046] If the laser pulse emitted by the sweeping robot hits a wall, since the wall is usually a plane perpendicular to the ground, the line connecting the point cloud data returned by the wall is usually a straight line.
[0047] S203: Determine, based on the first point cloud data, whether the projection position of the first point cloud data belongs to the first area;
[0048] After the first point cloud data is acquired in S202 , it may be determined in S203 whether the projection position of the first point cloud data belongs to the first area based on the first point cloud data.
[0049] Here, it should be noted that although the above-mentioned first point cloud data belongs to a point in space, the projection of the first point cloud data on the ground can be called the projection position of the first point cloud data, and the projection position belongs to a point on the plane.
[0050] In an embodiment of the present application, based on the arrangement of the first point cloud data, for example, the curvature of points on a line connecting the first point cloud data can be used to determine whether the projected position of the first point cloud data belongs to the first region. Alternatively, the curvature of points on a line connecting the first point cloud data and changes in point cloud data collected as the mobile robot moves can be used to determine whether the projected position of the first point cloud data belongs to the first region. This embodiment of the present application is not limited to this.
[0051] S204: When the mobile robot leaves or enters the first area, the liftable component is raised or lowered.
[0052] After determining which locations belong to the first area and which locations belong to the second area, where the first area can be called a low-rise area and the second area can be called a non-low-rise area, map data can be generated.
[0053] Then, when the mobile robot enters the first area from the second area, the liftable device is lowered, and when the mobile robot enters the second area from the first area, the liftable device is raised.
[0054] In this way, as long as the map data can be determined in a timely manner and the accuracy of the map data is guaranteed, the mobile robot can accurately determine when to raise the liftable device and when to lower the liftable device, thereby improving the working efficiency of the mobile robot.
[0055] In order to determine whether the projection position of the first point cloud data belongs to the first area, in an optional embodiment, S203 may include:
[0056] determining a sum of distances between a projection position of the first point cloud data and the first position;
[0057] When the sum is less than the first preset threshold, it is determined that the projection position of the first point cloud data belongs to the first area.
[0058] It can be understood that, taking the control of the liftable device to rotate one circle as an example, when the preset elevation angle of the laser pulse is small, the laser pulse will generally partially scan the bottom surface of the low obstacle. The first point cloud data obtained at this time is usually connected to form a curve. If the laser pulse scans the bottom surface of the low obstacle in its entirety, the first point cloud data is usually a circle. Since the preset elevation angle is small, the area of the circle is smaller.
[0059] The distance between the projection position of the first point cloud data and the first position can be determined first, and then all distances are summed to obtain a sum value. When the first point cloud data is sufficiently dense, the sum value is equivalent to the area of the region formed by the line connecting the first point cloud data and the first position.
[0060] When the line connecting the first point cloud data is a circle, the sum is equal to the area of the circle. If the first point cloud data is a rectangle, the sum is the area of the rectangle. If the first point cloud data is a curve, the sum is the area of the region formed by the curve, the endpoint of the curve, and the first position.
[0061] After determining the sum value, it is compared with a first preset threshold. If the sum value is less than the first preset threshold, it indicates that the area formed by the line connecting the first point cloud data and the first position is smaller. Due to the setting of the first preset threshold, the area formed by the line connecting the projection positions of the point cloud data obtained by scanning all the low obstacles is generally determined as the first preset threshold. If the sum value is less than the first preset threshold, it indicates that the laser pulses have completely scanned the bottom surface of the low obstacle. Therefore, here, if the sum value is less than the first preset threshold, it is determined that the projection position of the first point cloud data belongs to the first area, i.e., the low area.
[0062] In this way, by comparing the sum of the distances between the projection position of the first point cloud data and the first position with the first preset threshold, it is determined whether the projection position of the first point cloud data belongs to a low area. In this way, all situations where the bottom surface of low obstacles is scanned can be filtered out, and a large range of low areas can be quickly determined.
[0063] In addition, in order to determine whether the projection position of the first point cloud data belongs to the first area, in an optional embodiment, the method may further include:
[0064] When the sum is greater than a first preset threshold, determining the curvature of the point on the line connecting the first point cloud data;
[0065] Determine the points on the connecting line whose curvature is greater than a second preset threshold as first target point cloud data;
[0066] Based on the first target point cloud data, it is determined whether the projection position of the first target point cloud data belongs to the first area.
[0067] It can be understood that the above-mentioned situation in which all laser pulses are scanned to the bottom surface of the low obstacle is filtered out, but in actual scenarios, there are often some laser pulses that scan the bottom surface of the low obstacle, and some that scan the surface of the low obstacle or non-low obstacle. Then, for this situation, in an embodiment of the present application, when the sum value is greater than the first preset threshold, there may be a situation in which some laser pulses scan the bottom surface of the low obstacle, and it is necessary to further confirm whether part of the laser pulses scan the bottom surface of the low obstacle based on the first point cloud data.
[0068] Here, when the sum value is greater than the first preset threshold, the curvature of the points on the line of the first point cloud data is determined. That is to say, since the first point cloud data is generally discrete points, the discrete adjacent points are connected here to form lines. The lines here can include at least two lines, and the curvature of the points on each line is calculated. Here, for the target point, the three points of the target point and the adjacent points of the target point are used to determine a circle, and the inverse of the radius of the circle is determined as the curvature of the target point. In this way, the curvature of each point can be calculated.
[0069] Since the point cloud data obtained when the laser pulse scans the bottom surface of a low obstacle is generally a curve, here, by setting a second preset threshold, the points on the line with a curvature greater than the second preset threshold are found, and then the points on the line with a curvature greater than the second preset threshold are determined as the first target point cloud data.
[0070] It should be noted that even if the connecting line of the first target point cloud data is a curve, it does not necessarily mean that the bottom surface of the low obstacle is scanned. Therefore, it is necessary to further determine whether the projection position of the first target point cloud data belongs to the first area based on the first target point cloud data.
[0071] In this way, by selecting points on the connecting line that meets the curvature requirements from the first point cloud data as the first target point cloud data, the point cloud data that may scan the bottom surface of low obstacles will be screened out, and then it is further determined whether the projection position of these point cloud data belongs to the low area. In this way, further judgment is also made for the situation where the bottom surface of the low obstacle is partially scanned, so that the determined low area is more accurate.
[0072] In order to determine whether the projection position of the first target point cloud data belongs to the low area, in an optional embodiment, determining whether the projection position of the first target point cloud data belongs to the first area based on the first target point cloud data may include:
[0073] When the first target point cloud data meets a preset condition, controlling the mobile robot to move to a second position;
[0074] When the mobile robot is in the second position, controlling the liftable device to rotate;
[0075] The second point cloud data returned by the obstacles formed during the rotation is collected through the lifting device;
[0076] Determine the curvature of points on a line connecting the first point cloud data, and determine the points on the line whose curvature is greater than a second preset threshold as second target point cloud data;
[0077] In a case where the second target point cloud data meets a preset condition, it is determined whether the projection position of the first target point cloud data belongs to the first area according to the first target point cloud data and the second target point cloud data.
[0078] It can be understood that it is first determined whether the first target point cloud data meets the preset conditions, and only then the second target point cloud data is collected for the first target point cloud data that meets the preset conditions, and then based on the first target point cloud data and the second target point cloud data, it is determined whether the projection position of the first target point cloud data belongs to a low area.
[0079] To obtain the second target point cloud data, similar to the first target point cloud data, the mobile robot is first controlled to move to the second position. That is, the mobile robot moves from the first position to the second position and collects the second point cloud data, similar to collecting the first point cloud data at the first position. This is not repeated here. After obtaining the second point cloud data, to obtain the second target point cloud data, the process is similar to determining the first target point cloud data from the first point cloud data. This is not repeated here.
[0080] After determining the second target point cloud data, determine whether the second target point cloud data meets the preset conditions. If so, determine whether the projection position of the first target point cloud data belongs to a low area based on the first target point cloud data and the second target point cloud data. If not, it means that the projection position of the first target point cloud data belongs to a low area.
[0081] In this way, the second target point cloud data at the position after the movement is collected by moving the mobile robot, that is, the change of the point cloud data as the position moves is determined with the help of the point cloud data after the movement and the first target point cloud data, so as to determine whether the first target point cloud data belongs to a low area, thereby being able to more accurately determine the low area within the movable range of the mobile robot.
[0082] In order to determine whether the first target point cloud data meets the preset condition, in an optional embodiment, the above method may further include:
[0083] When the differences in curvatures of adjacent points in the first target point cloud data all fall within a preset error range and the centers of circles determined by three consecutive points in the first target point cloud data are located in a preset area, it is determined that the first target point cloud data meets the preset conditions.
[0084] It can be understood that the curvatures of adjacent points in the first target point cloud data are differentiated to obtain all the differences. If all the differences fall within the preset error range, and the center of the circle determined by three consecutive points in the first target point cloud data is located in the preset area, wherein the preset area is: the area formed by the line connecting the projection position of the first target point cloud data, the endpoints of the line connecting the line and the line connecting the first position.
[0085] In other words, not only is the curvature of the points on the line connecting the first target point cloud data continuous, but the direction of the curve's convexity points away from the first position. In this case, it is determined that the first target point cloud data is likely point cloud data returned from scanning the bottom surface of a low obstacle. Therefore, the first target point cloud data is determined to meet the preset conditions. The changes in the first target point cloud data as the mobile robot moves can be further examined to determine whether the projection position of the first target point cloud data belongs to a low area.
[0086] It should be noted that the method for determining whether the second target point cloud data meets the preset conditions is similar to the method for determining whether the first target point cloud data meets the preset conditions, and will not be described in detail here.
[0087] In this way, by judging whether the first target point cloud data meets the preset conditions, the first target point cloud data that meets the preset conditions is further judged, so that a more accurate low area can be obtained.
[0088] For the first target point cloud data that does not meet the preset conditions, in an optional embodiment, the method may further include:
[0089] When the first target point cloud data does not meet the preset condition, it is determined that the projection position of the first target point cloud data belongs to the second area.
[0090] It can be understood that after judgment, if the first target point cloud data does not meet the preset conditions, it means that the first target point cloud data at this time is not the point cloud data returned by the laser pulse scanning the bottom surface of the low obstacle. Therefore, it is determined that the projection position of the first target point cloud data does not belong to the first area, but to the second area, that is, the non-low area.
[0091] In this way, by determining that the projection position of the first target point cloud data that does not meet the preset conditions belongs to the non-low area, the determined map data is more accurate.
[0092] In the case where the first target point cloud data does not meet the preset conditions, in an optional embodiment, the method may further include:
[0093] When at least one difference value among the differences in curvatures of adjacent points in the first target point cloud data does not fall within a preset error range, it is determined that the first target point cloud data does not meet the preset condition.
[0094] It can be understood that the curvatures of adjacent points in the first target point cloud data are interpolated to obtain all the differences. If at least one difference among all the differences does not fall within the preset error range, it means that the curvatures of adjacent points in the first target point cloud data are discontinuous, and there may be points with sudden changes in curvature, indicating that the first target point cloud data is not the point cloud data returned by scanning the bottom surface of a low obstacle. Therefore, it is determined that the first target point cloud data does not meet the preset conditions, and then the projection position of the first target point cloud data belongs to a non-low area.
[0095] In this way, by judging whether the curvature is continuous, it is determined whether the first target point cloud data does not meet the preset conditions, thereby determining the non-low area and improving the accuracy of the map data.
[0096] In addition, for the case where the first target point cloud data does not meet the preset conditions, in an optional embodiment, the above method may further include:
[0097] When at least one center of a circle determined by three consecutive points in the first target point cloud data is located outside a preset area, it is determined that the first target point cloud data does not meet the preset condition.
[0098] It can be understood that the center of the circle defined by three consecutive points in the first target point cloud data lies within a predetermined region, where the predetermined region is defined as the area formed by the line connecting the projected position of the first target point cloud data, the line connecting its endpoints, and the line connecting the first position. In other words, the convex curve formed by the first target point cloud data points toward the first position, indicating that the first target point cloud data is not point cloud data returned from scanning the bottom surface of a low obstacle. Therefore, it is determined that the first target point cloud data does not meet the predetermined conditions, and the projected position of the first target point cloud data belongs to a non-low area.
[0099] In this way, by judging the position of the center of the circle determined by three consecutive points in the first target point cloud data, it is determined whether the first target point cloud data does not meet the preset conditions, thereby determining the non-low area and improving the accuracy of the map data.
[0100] In order to determine whether the projection position of the first target point cloud data belongs to the low area based on the change of the change point cloud data of the mobile robot, in an optional embodiment, determining whether the projection position of the first target point cloud data belongs to the first area based on the first target point cloud data and the second target point cloud data may include:
[0101] Based on the relative positional relationship between the second position and the first position, and according to the first target point cloud data and the second target point cloud data, it is determined whether the projection position of the first target point cloud data belongs to the first area.
[0102] It can be understood that the relationship between the second position and the first position is determined first. The position relationship here can include close and far, wherein close and far are relative to the projection position of the first target point cloud data. Here, after determining the relative position relationship, it is determined based on the first target point cloud data and the second target point cloud data whether the projection position of the first target point cloud data belongs to a low area.
[0103] The methods used to determine whether the projection position of the first target point cloud data belongs to the first area vary depending on the relative position relationship. However, they all determine this by comparing the number of points in the point cloud data. In other words, by comparing whether the number of points in the point cloud data increases or decreases, the determination of whether the first target point cloud data belongs to the low-rise area is made.
[0104] In this way, the change of position and the change of point cloud data are used to determine whether the projection position of the first target point cloud data belongs to a low area. The use of a dynamic change method to determine whether the projection position of the first target point cloud data belongs to a low area makes the judgment of the low area more accurate, thereby improving the accuracy of the map data.
[0105] With respect to the above-mentioned situation where the second position is far from the projection position of the first target point cloud data, in an optional embodiment, based on the relative positional relationship between the second position and the first position, determining whether the projection position of the first target point cloud data belongs to the first area according to the first target point cloud data and the second target point cloud data may include:
[0106] When the sum of the distances between the projection position of the first target point cloud data and the second position is greater than the sum of the distances between the projection position of the first target point cloud data and the first position, and the number of points in the second target point cloud data is less than the number of points in the first target point cloud data, it is determined that the projection position of the first target point cloud data belongs to the first area.
[0107] It can be understood that the sum of the distances between the projection position of the first target point cloud data and the second position is calculated, and the sum of the distances between the projection position of the first target point cloud data and the first position is calculated, and the two are compared. If the former is greater than the latter, it means that the second position is far away from the projection position of the first target point cloud data.
[0108] Then, for the case where the second position is far away from the projection position of the first target point cloud data, compare the number of points in the first target point cloud data with the number of points in the second target point cloud data. If it is less than, it means that when the second position is far away from the projection position of the first target point cloud data, the number of points in the point cloud data has decreased. This change indicates that the first target point cloud data is the point cloud data returned by the laser pulse scanning the bottom surface of the low obstacle, so the projection position of the first target point cloud data belongs to the low area.
[0109] Based on the above Figure 3a , Figure 3b Schematic diagram of an optional sweeping robot collecting point cloud data provided in an embodiment of the present application Figure 2 ,like Figure 3b As shown in the figure, when the mobile robot moves away, the number of points in the second target point cloud data is compared with Figure 3a The number of points in the first target point cloud data has decreased.
[0110] In this way, by controlling the mobile robot to move away from the projection position of the first target point cloud data and determining whether the projection position of the first target point cloud data belongs to a low area through the change of the midpoint of the point cloud data, it is possible to accurately determine whether the projection position of the first target point cloud data belongs to a low area, thereby improving the accuracy of the map data.
[0111] With respect to the case where the second position is close to the projection position of the first target point cloud data, in an optional embodiment, determining whether the projection position of the first target point cloud data belongs to the first area based on the relative positional relationship between the second position and the first position and based on the first target point cloud data and the second target point cloud data includes:
[0112] When the sum of the distances between the projection position of the first target point cloud data and the second position is less than the sum of the distances between the projection position of the first target point cloud data and the first position, and the number of points in the second target point cloud data is greater than the number of points in the first target point cloud data, it is determined that the projection position of the first target point cloud data belongs to the first area.
[0113] It can be understood that the sum of the distances between the projection position of the first target point cloud data and the second position is calculated, and the sum of the distances between the projection position of the first target point cloud data and the first position is calculated, and then the two are compared. If the former is smaller than the latter, it means that the second position is close to the projection position of the first target point cloud data.
[0114] Then, for the case where the second position is close to the projection position of the first target point cloud data, compare the number of points in the first target point cloud data with the number of points in the second target point cloud data. If it is greater, it means that when the second position is close to the projection position of the first target point cloud data, the number of points in the point cloud data has increased. This change indicates that the first target point cloud data is the point cloud data returned by the laser pulse scanning the bottom surface of the low obstacle, so the projection position of the first target point cloud data belongs to the low area.
[0115] Based on the above Figure 3a , Figure 3c Schematic diagram 3 of an optional sweeping robot collecting point cloud data provided in an embodiment of the present application, as shown in FIG. Figure 3c As shown in the figure, when the mobile robot approaches, the number of points in the second target point cloud data obtained is compared with Figure 3a The number of points in the first target point cloud data has increased.
[0116] In this way, by controlling the mobile robot to approach the projection position of the first target point cloud data and determining whether the projection position of the first target point cloud data belongs to a low area through the change of the midpoint of the point cloud data, it is possible to accurately determine whether the projection position of the first target point cloud data belongs to a low area, thereby improving the accuracy of the map data.
[0117] For the case where the projection position of the first target point cloud data belongs to the first area, in an optional embodiment, the method may further include:
[0118] When it is determined that the projection position of the first target point cloud data belongs to the first area, it is determined that the first position belongs to a restricted position.
[0119] Understandably, robots can navigate low spaces normally. However, due to the pitch error of the lidar installation, more laser pulses hit the bottom of the low space, resulting in invalid observations and affecting simultaneous localization and mapping (SLAM) positioning and navigation and obstacle avoidance functions. Therefore, it is necessary to identify areas where laser observation is restricted.
[0120] It is determined that the projection position of the first target point cloud data belongs to a low area, and the first target point cloud data is collected by the mobile robot at the first position, that is, the laser pulse at the first position scans the bottom surface of the low obstacle, and the data collected at this position is unreliable. Therefore, the first position is considered a restricted position, wherein the point cloud data collected by the mobile robot at the restricted position through the lifting device is considered unreliable.
[0121] In this way, the mobile robot can classify the locations in the map data and know which are restricted locations and which are unrestricted locations, so that the mobile robot can identify valid data.
[0122] The lifting method described in one or more of the above embodiments will be described below with examples.
[0123] Figure 4 A flow chart of an example of an optional lifting method provided in an embodiment of the present application is shown as follows: Figure 4 As shown, the lifting method may include:
[0124] S401: When the laser radar at the first position of the sweeping robot reaches the highest position, the laser radar is controlled to rotate 360 degrees to obtain first point cloud data;
[0125] S402: The cleaning robot calculates the sum of distances between the projection position of the first point cloud data and the first position;
[0126] S403: Determine whether the sum of the distances is less than a first preset threshold. If yes, execute S404; if no, execute S405;
[0127] S404: Determine that the projection position of the first point cloud data belongs to a low area, and determine that the first position is an observation-restricted position.
[0128] S405: Calculating the curvature of points on the line connecting the first point cloud data, selecting a curve with a curvature greater than a second preset threshold and continuous curvature, and taking the points on the curve whose convex direction deviates from the first position as the first target point cloud data;
[0129] That is to say, if there are points in the line connecting the first point cloud data whose curvature is greater than the second preset threshold, and the curvature of these points is continuous, and the curve formed by these points is tangent to an outward convex arc (concentric with the shape of the circular sweeping robot), it is considered that there may be laser-restricted or low areas.
[0130] S406: Control the mobile robot to move to a second position, collect second point cloud data to obtain second target point cloud data;
[0131] wherein, the second target point cloud data is determined in the same manner as that of collecting the first point cloud data;
[0132] S407: If the second position is closer to the projection position of the first target point cloud data relative to the first position, determine whether the sum of the distances between the first target point cloud data and the second position is greater than the sum of the distances between the second target point cloud data and the first position. If so, execute S409; if not, execute S410.
[0133] S408: If the second position is farther from the projection position of the first target point cloud data relative to the first position, determine whether the sum of the distances between the first target point cloud data and the second position is less than the sum of the distances between the second target point cloud data and the first position. If so, execute S409; if not, execute S410.
[0134] S409: Determine that the projection position of the first target point cloud data belongs to a low area;
[0135] S410: Determine whether the projection position of the first target point cloud data belongs to a non-low area.
[0136] Here, the body movement is used to determine whether the curve segment becomes larger or smaller as the robot vacuum approaches or moves away. If so, the presence of a low space is double-checked (if it is a real obstacle, the relative point cloud characteristics will not change regardless of the distance of the robot vacuum. If the point cloud on the curve changes at the same time through the body movement, it can be determined that the lower surface of the low space has been hit).
[0137] In this example, before the fuselage enters the low space, the pitch angle of the lidar installation can be used to shoot the laser pulse to the lower surface of the low space in advance. When the point cloud data returned by the emitted laser pulse forms the above-mentioned curved feature, it is considered that the projection position of the point cloud data on the curve belongs to the low space. Combined with the navigation logic, the LDS can be lowered in advance when entering the low area.
[0138] At the same time, due to the installation tolerance of the pitch angle of the laser radar installed on the sweeping robot, even if the sweeping robot enters a relatively spacious low space, the point cloud data collected by the laser radar becomes arc-shaped (that is, the laser radar reaches the lower surface of the low space). The LDS module still needs to descend to ensure better observation for subsequent SLAM positioning, mapping, and navigation and obstacle avoidance.
[0139] In this example, arc shapes are identified through point cloud data collected by the lidar, and low areas and laser-restricted scenes are then identified. Low areas, rather than ordinary obstacles, are confirmed through changes in point cloud features in consecutive frames. Unlike traditional height measurement to identify low spaces, this solution identifies low spaces through the shape of a two-dimensional plane (the laser will hit the lower surface of low spaces at close range).
[0140] It can be seen that the solution of this example is low-cost and does not require additional upward ranging sensors, so it can identify low spaces; it can identify the restricted scene based on the point cloud shape collected by the lidar, and control the lifting of the LDS; it can identify low areas in advance, without having to put the body into the low space and then pause to lower the LDS, thereby improving the operating efficiency of the sweeping robot.
[0141] In this way, sensor data is reduced and costs are lowered; low-lying areas can be identified in advance to improve operational efficiency; laser-restricted scenes can be identified and a reliable point cloud can be guaranteed by lowering the LDS to facilitate SLAM and navigation functions.
[0142] An embodiment of the present application provides a lifting method, wherein a mobile robot includes a liftable device, which is located on an upper shell of the mobile robot. The method comprises: when the mobile robot is in a first position, controlling the liftable device to rotate, collecting, through the liftable device, first point cloud data returned by an obstacle formed during the rotation, determining, based on the first point cloud data, whether a projection position of the first point cloud data belongs to a first area, and raising or lowering the liftable device when the mobile robot leaves or enters the first area. That is, in the embodiment of the present application, based on the mobile robot at the first position, the first point cloud data returned by the obstacle can be collected by controlling the liftable device to rotate, and then the first point cloud data is used to determine whether the projection position of the first point cloud data belongs to a low area. Since the mobile robot can collect the first point cloud data at the first position, the mobile robot can determine in advance whether other positions are low areas at the first position, and thus can timely update the low areas in the map. Therefore, when the mobile robot leaves or enters the low area, the liftable device can be controlled to be raised or lowered to smoothly pass through the low area, thereby improving the working efficiency of the mobile robot.
[0143] Based on the same concept as the above embodiments, the embodiment of the present application provides a lifting device, which is arranged in a mobile robot. The mobile robot includes a lifting device, which is located on the upper shell of the mobile robot. Figure 5 A schematic diagram of the structure of an optional lifting device provided in an embodiment of the present application is shown in FIG. Figure 5 As shown, the lifting device 500 includes: a control module 51, a collection module 52, a determination module 53 and a lifting module 54, wherein:
[0144] The control module 51 is used to control the rotation of the liftable device when the mobile robot is in the first position; the acquisition module 52 is used to collect the first point cloud data returned by the obstacles formed during the rotation process through the liftable device; the determination module 53 is used to determine whether the projection position of the first point cloud data belongs to the first area based on the first point cloud data; the lifting module 54 is used to raise or lower the liftable device when the mobile robot leaves or enters the first area.
[0145] In an optional embodiment, the determination module 53 is used to: determine the sum of the distances between the projection position of the first point cloud data and the first position; when the sum is less than a first preset threshold, determine that the projection position of the first point cloud data belongs to the first area.
[0146] In an optional embodiment, the device is also used to: determine the curvature of the points on the line connecting the first point cloud data when the sum value is greater than a first preset threshold; determine the points on the line whose curvature is greater than a second preset threshold as the first target point cloud data; and determine whether the projection position of the first target point cloud data belongs to the first area based on the first target point cloud data.
[0147] In an optional embodiment, the device determines whether the projection position of the first target point cloud data belongs to the first area based on the first target point cloud data, including: controlling the mobile robot to move to the second position when the first target point cloud data meets the preset conditions; controlling the liftable device to rotate when the mobile robot is in the second position; collecting second point cloud data returned by obstacles formed during the rotation process through the liftable device; determining the curvature of the points on the line connecting the first point cloud data, and determining the points on the line with a curvature greater than a second preset threshold as the second target point cloud data; when the second target point cloud data meets the preset conditions, determining whether the projection position of the first target point cloud data belongs to the first area based on the first target point cloud data and the second target point cloud data.
[0148] In an optional embodiment, the device is also used to determine that the first target point cloud data meets the preset conditions when the difference in curvature of adjacent points in the first target point cloud data falls within a preset error range and the center of a circle determined by three consecutive points in the first target point cloud data is located in a preset area; wherein the preset area is: the area formed by the line connecting the projection position of the first target point cloud data, the endpoints of the line connecting the line and the line connecting the first position.
[0149] In an optional embodiment, the device is further configured to: when the first target point cloud data does not satisfy a preset condition, determine that the projection position of the first target point cloud data belongs to the second area.
[0150] In an optional embodiment, the device is further used to determine that the first target point cloud data does not meet the preset condition when at least one difference value among the differences in curvature of adjacent points in the first target point cloud data does not fall within a preset error range value.
[0151] In an optional embodiment, the device is also used to determine that the first target point cloud data does not meet the preset conditions when at least one of the centers of circles determined by three consecutive points in the first target point cloud data is located outside a preset area; wherein the preset area is: the area formed by the line connecting the projection positions of the first target point cloud data, the endpoints of the line connecting and the line connecting the first position.
[0152] In an optional embodiment, the device determines whether the projection position of the first target point cloud data belongs to the first area based on the first target point cloud data and the second target point cloud data, including: based on the relative position relationship between the second position and the first position, determining whether the projection position of the first target point cloud data belongs to the first area based on the first target point cloud data and the second target point cloud data.
[0153] In an optional embodiment, the device determines whether the projection position of the first target point cloud data belongs to the first area based on the relative position relationship between the second position and the first position and according to the first target point cloud data and the second target point cloud data, including: when the sum of the distances between the projection position of the first target point cloud data and the second position is greater than the sum of the distances between the projection position of the first target point cloud data and the first position, and the number of points in the second target point cloud data is less than the number of points in the first target point cloud data, determining that the projection position of the first target point cloud data belongs to the first area.
[0154] In an optional embodiment, the device determines whether the projection position of the first target point cloud data belongs to the first area based on the relative positional relationship between the second position and the first position and according to the first target point cloud data and the second target point cloud data, including: when the sum of the distances between the projection position of the first target point cloud data and the second position is less than the sum of the distances between the projection position of the first target point cloud data and the first position, and the number of points in the second target point cloud data is greater than the number of points in the first target point cloud data, determining that the projection position of the first target point cloud data belongs to the first area.
[0155] In an optional embodiment, the device is also used to: determine that the first position belongs to a restricted position when it is determined that the projection position of the first target point cloud data belongs to the first area; wherein the point cloud data collected by the mobile robot at the restricted position through the lifting device is deemed unreliable.
[0156] In actual applications, the above-mentioned control module 51, acquisition module 52, determination module 53 and lifting module 54 can be implemented by a processor located on the lifting device 500, which can be a central processing unit (CPU), a microprocessor (MPU), a digital signal processor (DSP) or a field programmable gate array (FPGA).
[0157] Figure 6 A schematic diagram of the structure of an optional mobile robot provided in an embodiment of the present application is shown in FIG. Figure 6As shown, an embodiment of the present application provides a mobile robot 600, comprising:
[0158] A processor 61 and a storage medium 62 storing processor executable instructions; the storage medium 62 relies on the processor 61 to perform operations through a communication bus 63. When the instructions are executed by the processor, the lifting method described in one or more of the above embodiments is executed by the processor side.
[0159] It should be noted that in actual application, the various components in the electronic device are coupled together through the communication bus 63. It is understandable that the communication bus 63 is used to realize the connection and communication between these components. In addition to the data bus, the communication bus 63 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, Figure 6 Various buses are labeled as communication buses 63.
[0160] An embodiment of the present application provides a computer storage medium storing executable instructions. When the executable instructions are executed by one or more processors, the processors execute the lifting method described in one or more of the above embodiments.
[0161] Among them, the computer-readable storage medium can be a magnetic random access memory (FRAM), a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a flash memory (Flash Memory), a magnetic surface storage device, an optical disc, or a compact disc read-only memory (CD-ROM) and other memories.
[0162] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of hardware embodiments, software embodiments, or embodiments combining software and hardware. Furthermore, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage and optical storage, etc.) containing computer-usable program code.
[0163] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the steps in the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0164] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.
[0165] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0166] The above description is merely an optional embodiment of the present application and is not intended to limit the scope of protection of the present application.
Claims
1. A lifting method, characterized in that: Applied to a mobile robot, the mobile robot includes a liftable device, including: When the mobile robot is in the first position, controlling the liftable device to rotate; collecting, by the liftable device, first point cloud data returned by obstacles formed during the rotation process; determining, based on the first point cloud data, whether a projection position of the first point cloud data belongs to a first area; When the mobile robot leaves or enters the first area, the liftable device is raised or lowered.
2. The method according to claim 1, characterized in that The determining, based on the first point cloud data, whether the projection position of the first point cloud data belongs to the first area includes: determining a sum of distances between a projection position of the first point cloud data and the first position; When the sum is less than a first preset threshold, it is determined that the projection position of the first point cloud data belongs to the first area.
3. The method according to claim 2, characterized in that The method further comprises: When the sum is greater than the first preset threshold, determining the curvature of the point on the line connecting the first point cloud data; Determine the points on the connecting line whose curvature is greater than a second preset threshold as first target point cloud data; Based on the first target point cloud data, it is determined whether a projection position of the first target point cloud data belongs to the first area.
4. The method according to claim 3, characterized in that The determining, based on the first target point cloud data, whether the projection position of the first target point cloud data belongs to the first area includes: When the first target point cloud data meets a preset condition, controlling the mobile robot to move to a second position; When the mobile robot is in the second position, controlling the liftable device to rotate; collecting second point cloud data returned by obstacles formed during the rotation process through the liftable device; Determining the curvature of points on a line connecting the first point cloud data, and determining points on the line whose curvature is greater than a second preset threshold as second target point cloud data; In a case where the second target point cloud data meets a preset condition, it is determined whether the projection position of the first target point cloud data belongs to the first area according to the first target point cloud data and the second target point cloud data.
5. The method according to claim 4, characterized in that The method further comprises: If the differences in curvature of adjacent points in the first target point cloud data all fall within a preset error range, and the centers of circles determined by three consecutive points in the first target point cloud data are located in a preset area, it is determined that the first target point cloud data meets the preset conditions; The preset area is an area formed by a line connecting the projection positions of the first target point cloud data, an end point of the line connecting the projection positions, and a line connecting the first positions.
6. The method according to claim 4, characterized in that The determining, based on the first target point cloud data and the second target point cloud data, whether the projection position of the first target point cloud data belongs to the first area includes: Based on the relative positional relationship between the second position and the first position, and according to the first target point cloud data and the second target point cloud data, it is determined whether the projection position of the first target point cloud data belongs to the first area.
7. The method according to claim 6, characterized in that The determining, based on the relative positional relationship between the second position and the first position and according to the first target point cloud data and the second target point cloud data, whether the projection position of the first target point cloud data belongs to the first area includes: When the sum of the distances between the projection position of the first target point cloud data and the second position is greater than the sum of the distances between the projection position of the first target point cloud data and the first position, and the number of points in the second target point cloud data is less than the number of points in the first target point cloud data, it is determined that the projection position of the first target point cloud data belongs to the first area.
8. A lifting device, characterized in that: The device is provided in a mobile robot, and the mobile robot includes a liftable device, including: A control module, configured to control the rotation of the liftable device when the mobile robot is in the first position; a collection module, configured to collect, through the elevating device, first point cloud data returned by an obstacle formed during the rotation process; a determination module, configured to determine, based on the first point cloud data, whether a projection position of the first point cloud data belongs to a first area; A lifting module is used to raise or lower the liftable device when the mobile robot leaves or enters the first area.
9. A mobile robot comprising a memory and a processor, wherein the memory stores a computer program that can be run on the processor, characterized in that: When the processor executes the program, the steps of the method according to any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.
Citation Information
Cited By
Lifting and lowering method and apparatus, mobile robot, and storage medium
WO2026098652A1