Robot obstacle avoidance method based on line laser sensor and laser radar
By combining line laser sensors and lidar on the sweeping robot, effective detection and bypassing low and high obstacles is solved, the problem of obstacle avoidance blind spots of existing sweeping robots is reduced, and the cost and algorithm complexity is improved. Cleaning efficiency.
Patent Information
- Application Number
- CN202310824065.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-06
- Publication Date
- 2025-01-10
AI Technical Summary
Existing sweeping robots have blind spots when avoiding obstacles, especially low obstacles are difficult to detect, resulting in the inability to effectively bypass, and the cost and algorithm complexity are high.
Using a combination of linear laser sensor and lidar, the linear laser sensor is installed on the front side of the robot, and the lidar is installed on the top of the robot. The position of the obstacle is marked through point cloud data, and whether there are high-blind obstacles are detected, and the obstacles or edges are activated. Walking mode to ensure cleaning coverage.
It effectively reduces scanning blind spots, ensures that low obstacles are bypassed, and high obstacles are scanned along the edges, reducing costs and algorithm difficulty, and improving the accuracy of obstacle avoidance and cleaning efficiency.
Smart Images

Figure CN119279433A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of robot obstacle avoidance, and in particular to a robot obstacle avoidance method based on a line laser sensor and a laser radar. Background Art
[0002] Currently, most sweeping robots do not have the function of active obstacle avoidance. Using collision sensors alone to avoid obstacles can easily result in bumping into furniture or pushing small obstacles. Sweeping robots that achieve obstacle avoidance often need to install line laser modules on multiple sides (for example, at least one on each side of the body) to achieve real-time data obstacle avoidance, which results in high costs. In addition, each sensor has its own limitations, such as detection range and effective viewing angle, which results in the line laser module producing detection blind spots of different sizes depending on the installation height. Summary of the invention
[0003] This application discloses a robot obstacle avoidance method based on a line laser sensor and a laser radar. The specific technical solution is as follows: A robot obstacle avoidance method based on a line laser sensor and a laser radar, characterized in that a line laser sensor is installed on the front side of the robot body, a laser radar is installed on the top of the robot body, and the installation height of the laser radar in the body is greater than the installation height of the line laser sensor in the body; the robot obstacle avoidance method comprises: step A, when the robot marks a high blind zone obstacle position and enters an obstacle avoidance area planned based on the currently marked high blind zone obstacle position, an obstacle avoidance walking mode is started, wherein the high blind zone obstacle position is marked by the robot using point cloud data collected by the line laser sensor; step B, when the robot marks a planar obstacle position and does not mark a high blind zone obstacle position, if the robot detects that the minimum distance between the edge position in its walking direction and the currently marked planar obstacle position is a set obstacle avoidance distance, then the edge walking mode is started; wherein the planar obstacle position is jointly marked by the robot using point cloud data collected by the line laser sensor and point cloud data collected by the laser radar.
[0004] By executing the above steps A and B, the present application determines whether there is a short obstacle between the robot and the wall according to the point cloud data scanned by the line laser sensor and the corresponding marked obstacle position, that is, confirms whether there is an obstacle at the location of the high blind spot obstacle. If so, the robot avoids the obstacle and walks around the obstacle at the location of the high blind spot obstacle to realize the robot's obstacle navigation; if not, the robot walks along the outline of the obstacle where the planar obstacle is located, which may be along the wall, and then effectively avoids the shorter obstacles while ensuring that the robot walks along the straight wall and maintains a certain distance from the wall, thereby realizing real-time obstacle avoidance along the edge of the robot and ensuring the cleaning coverage rate.
[0005] Moreover, the robot obstacle avoidance method uses a line laser sensor on the front side of the machine body in conjunction with a laser radar on the top of the machine, which can scan obstacles of a certain height and will not ignore short obstacles, thereby reducing the blind area during the scanning process, and achieving circumvention of low obstacles and laser tracking of high obstacles. Compared with the existing technology, there is no need to install a line laser sensor on the side of the machine body, which reduces the algorithm difficulty and manufacturing cost, and also ensures the normal operation of the robot's obstacle avoidance operation. BRIEF DESCRIPTION OF THE DRAWINGS
[0006] Figure 1 This is a side view schematic diagram of the layout of the laser radar and line laser sensor in the robot provided in one embodiment of the present application.
[0007] Figure 2 It is a schematic diagram of a robot provided by an embodiment of the present application using a laser radar and a line laser sensor to scan the outline of a wall 102 and mark it on a plane map; wherein, the triangular area T1T2T3 is the area 101 marked on the plane map using the point cloud data collected by the line laser sensor, forming the area 101 formed by the projection of the scanning area of the line laser sensor on the robot's walking plane; the trapezoidal area T2T3T4T5 represents the overlapping area in the plane map where the line laser sensor and the laser radar scan the outline of the wall 102 and mark it, and the trapezoidal area T2T8T9T4 and the trapezoidal area T3T7T6T5 both represent the area other than the overlapping area in the plane map where the laser radar scans the outline of the wall 102 and marks it.
[0008] Figure 3 It is a schematic diagram of a robot provided by an embodiment of the present application marking obstacles scanned by a line laser sensor on a plane map, and correspondingly setting an obstacle avoidance area in front of the body 100, wherein area 101 covers the currently marked obstacle grid (squares filled with black), the front of the body 100 is the position of area 101 relative to the body 101, the obstacle avoidance area is represented by the area covered by the black circle 201, and the black area 203 is the area occupied by obstacles that the robot needs to avoid when walking along the black circle 201.
[0009] Figure 4 This is a schematic diagram of marking an obstacle avoidance area on the right side of the body 100 and generating a reference scanning blind area when the robot provided by an embodiment of the present application moves in the direction of arrow P1 and uses a line laser sensor to scan, wherein the reference scanning blind area is represented by the area covered by the black circle 202, the obstacle avoidance area is represented by the area covered by the black circle 201, and the black area 203 is the area occupied by obstacles that the robot needs to avoid along the black circle 201.
[0010] Figure 5This is a schematic diagram showing that when the robot provided by an embodiment of the present application walks in the direction of arrow P2, the scanning area of the line laser sensor is projected on the robot's walking plane and the area 101 enters the inside of the black circle 202 and begins to cover the black area 203.
[0011] Figure 6 This is a schematic diagram of an embodiment of the present application showing that when a robot walks along the edge of a black circle 201, the scanning area of the line laser sensor in the area 101 formed by the projection of the robot's walking plane enters into the black area 203 and marks a new obstacle avoidance area to continue covering the black area 203, wherein the new obstacle avoidance area is represented by the area covered by the black circle 301.
[0012] Figure 7 It is a flow chart of a robot obstacle avoidance method based on a line laser sensor and a laser radar provided in one embodiment of the present application. Implementation
[0013] In order to more clearly illustrate the present invention, specific embodiments are given below for further explanation. In the following description, for illustration rather than for limitation, specific details such as specific system structure, technology and the like are proposed, so as to thoroughly understand the present application embodiments. However, it should be clear to those skilled in the art that the present application can also be implemented in other embodiments without these specific details. In other cases, the detailed description of well-known systems, devices, circuits and methods is omitted to prevent unnecessary details from hindering the description of the present application.
[0014] It should be understood that when used in this application, the term "comprising" indicates the presence of the described features, integral bodies, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integral bodies, steps, operations, elements, components and / or their collections. It should also be understood that the term "and / or" used in this application refers to any combination of one or more of the associated listed items and all possible combinations, and includes these combinations.
[0015] As used in this application, the term "if" can be interpreted as "when" or "uponce" or "in response to determining" or "in response to detecting", depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "uponce it is determined" or "in response to determining" or "uponce [described condition or event] is detected" or "in response to detecting [described condition or event]", depending on the context.
[0016] As an embodiment, a robot obstacle avoidance method based on a line laser sensor and a laser radar is disclosed. The executor of this embodiment can be a robot with data processing, network communication and program running functions. The line laser sensor is installed on the front side of the robot body, and the laser radar is installed on the top of the robot body. The installation height of the laser radar in the body is greater than the installation height of the line laser sensor in the body, and the installation height of the laser radar in the body is greater than the height of the body.
[0017] The scanning area of the laser radar is formed by two first rays in the same vertical plane and at an angle to each other, which rotate horizontally for one circle. The two first rays are located on the upper and lower sides of the robot's walking plane at the intersection. The two first rays intersect, and the angles they form with the robot's walking plane are equal and acute; the rotation centers of the two first rays are located on the vertical center line of the laser radar.
[0018] The scanning area of the line laser sensor is formed by rotating a second ray around its emission point in a plane by a first angle, see Figures 1 to 6 The scanning area of the line laser sensor is projected on the walking plane of the robot to form a triangular area 101, which is specifically formed by projecting the laser emitted by the line laser sensor and inclined toward the ground 40 onto the ground 40 and marked in the grid map; when the triangular area 101 encounters an obstacle in the process of scanning the ground 40 and the blind spot of the field of view changes, the robot can perceive the three-dimensional coordinate information of the obstacle relative to the robot. When detecting the position of the obstacle, the point cloud data of the scanned ground part needs to be deleted in advance.
[0019] Both laser radar and line laser sensors emit lasers and form light spots on the detected objects, and obtain target information by detecting the echo signal of the emitted laser beam. Figure 2 As shown, the boundary line T3T2 and the boundary line T4T5 are the overlapping parts of the projection line segments of the laser radar scanning area and the line laser sensor scanning area on the wall 102, and the scanning line formed by the laser radar scanning area on the wall 102 is the boundary line T7T8. The robot obtains the position information of the wall 104 relative to the robot by calculating the distance from the boundary line T3T2 or the boundary line T7T8 to the center of the robot body.
[0020] When the robot detects the position of an obstacle in front of it, the laser reflected from the obstacle surface at the obstacle position will be received by the camera installed in the laser radar and / or line laser sensor. Since the laser light source is a line light source, as the robot moves, the laser will illuminate the surface of the obstacle at a certain height. The laser hits the surface of the obstacle and then reflects to the camera. The distance of the obstacle can be calculated based on the returned laser, or the returned laser point cloud can be used for fitting processing to obtain straight line segments in various directions or contour lines of various curvatures that represent the position of the obstacle. Among them, when a vertical line laser is emitted, the obstacle information presented to the robot will become continuous points. These points are connected to form a line that presents the contour of the obstacle surface in the vertical direction, from which the height information of the laser point cloud can be extracted.
[0021] For example, Figure 1 The figure is a side view schematic diagram of the layout of the laser radar and line laser sensor provided by the present application in the robot. The line laser sensor can obtain the plane information of the object, but has a smaller coverage area than the laser radar, so the obstacle information obtained is not complete. Figure 1 The laser radar is arranged on the top of the robot body 100. Figure 1 The scanning area of the laser radar in the figure is blocked by the top of the body, and the scanning area of the laser radar cannot cover the relatively low area in front of the body 100. For example, the area between the bottom of the laser emitted by the line laser sensor inclined toward the ground 40 and the ground 40 forms the scanning blind area of the laser radar shown in the figure, resulting in the laser radar only being able to collect point cloud data of relatively high obstacles, but unable to collect point cloud data of low obstacles. Then, the laser radar cannot collect point cloud data of its own scanning blind area during the walking of the robot. Therefore, in this embodiment, a line laser sensor is installed on the front side of the robot body. The scanning area of the line laser sensor can cover the scanning blind area of the laser radar. The point cloud data collected by the line laser sensor can make up for the omitted parts of the point cloud data collected by the laser radar, and can detect obstacles with a certain height without ignoring small obstacles. It can ensure the comprehensiveness of obstacle detection and effectively avoid the omission of low obstacle detection.
[0022] In this embodiment, if Figure 7 As shown, the robot obstacle avoidance method includes: Step A: When the robot marks the position of a high blind spot obstacle and enters an obstacle avoidance area planned based on the position of the high blind spot obstacle, there may be a risk of collision with the obstacle at the position of the high blind spot obstacle. The robot then starts the obstacle avoidance walking mode, thereby simulating the robot's obstacle avoidance walking path by planning the obstacle avoidance area, so that the robot completely bypasses the obstacle at the position of the high blind spot obstacle and avoids low obstacles distributed in the walking direction or on one side of the walking direction of the robot. Before the robot enters the obstacle avoidance area, the line laser sensor has been used to scan the height corresponding to the position of the high blind spot obstacle. It can be understood that the position of the high blind spot obstacle is marked by the point cloud data collected by the line laser sensor, and the height scanned by the line laser sensor is within the scanning blind spot of the laser radar, and is mostly the height position occupied by low and isolated obstacles with small geometric dimensions.
[0023] Step B, when the robot marks the position of a planar obstacle and does not mark the position of a high blind zone obstacle, if the robot detects that the minimum distance between the edge position in its walking direction and the currently marked planar obstacle position is the set obstacle avoidance distance, then the edge walking mode is started. For example, when the robot walks to the position where its nose is close to the planar obstacle and there is no high blind zone obstacle position in front of the planar obstacle position, that is, there is no high blind zone obstacle position that hinders the robot from walking to the planar obstacle position, then the robot walks to the minimum distance between its edge position and the planar obstacle position is the set obstacle avoidance distance, and the walking direction needs to be adjusted to start walking along the outline of the obstacle where the planar obstacle position is located. Before the robot starts the edge walking mode, the robot has used the laser radar to scan the height corresponding to the planar obstacle position, and the robot has also used the line laser sensor to scan the height corresponding to the planar obstacle position. It can be understood that the planar obstacle position is jointly marked by the point cloud data collected by the robot using the line laser sensor and the point cloud data collected by the laser radar.
[0024] Furthermore, when walking along the outline of the obstacle where the planar obstacle is located, the obstacle avoidance walking mode is activated when the high blind spot obstacle position is marked using a line laser sensor and the obstacle avoidance area based on the high blind spot obstacle position mark is entered.
[0025] It should be noted that the height corresponding to the position of the planar obstacle scanned by the line laser sensor is greater than the height corresponding to the position of the height blind zone obstacle scanned by the line laser sensor, and the height corresponding to the position of the planar obstacle scanned by the laser radar is greater than the height corresponding to the position of the planar obstacle scanned by the line laser sensor. The obstacle at the height blind zone obstacle position is a low obstacle (for example, the actual physical height is less than the installation height of the line laser sensor in the body, and the maximum height of the low obstacle is preferably 45mm), but the height blind zone obstacle position does not include the two-dimensional coordinate position corresponding to the point cloud data of the ground part; the obstacle at the planar obstacle position is an obstacle that can be scanned by the laser radar on the top of the machine and the line laser sensor on the front side of the machine at the same time, and the minimum height of the obstacle at the planar obstacle position is greater than the installation height of the line laser sensor in the machine body, or the height of the machine body, or the installation height of the laser radar in the machine body; for example, the obstacle at the planar obstacle position can be a relatively high obstacle such as a table, chair, cabinet, wall, etc.
[0026] By executing the above steps A and B, this embodiment determines whether there is a short obstacle between the robot and the wall according to the point cloud data scanned by the line laser sensor and the corresponding marked obstacle position, that is, confirms whether there is an obstacle at the location of the high blind spot obstacle. If so, the robot avoids the obstacle and walks around the obstacle at the location of the high blind spot obstacle to realize the robot's obstacle navigation; if not, the robot walks along the outline of the obstacle at the location of the planar obstacle, which may be along the wall, and then effectively avoids the shorter obstacles while ensuring that the robot walks along the straight wall and maintains a certain distance from the wall, thereby realizing real-time obstacle avoidance along the edge of the robot and ensuring the cleaning coverage rate.
[0027] Moreover, the robot obstacle avoidance method uses a line laser sensor on the front side of the machine body in conjunction with a laser radar on the top of the machine, which can scan obstacles of a certain height and will not ignore short obstacles, thereby reducing the blind area during the scanning process, and achieving circumvention of low obstacles and laser tracking of high obstacles. Compared with the existing technology, there is no need to install a line laser sensor on the side of the machine body, which reduces the algorithm difficulty and manufacturing cost, and also ensures the normal operation of the robot's obstacle avoidance operation.
[0028] In the above embodiment, before starting the edge walking mode or starting the obstacle avoiding walking mode, there are: In the point cloud data collected by the laser radar, the robot marks the obstacle position whose obstacle scanning height is greater than or equal to the preset blind spot height on the projection position of the robot's walking plane as the first specific height obstacle position, and determines that the first specific height obstacle position is within the projection area of the laser radar's scanning area on the robot's walking plane, wherein there may be higher obstacles or suspended obstacles at the first specific height obstacle position; the preset blind spot height is greater than or equal to the installation height of the laser radar in the body, and the obstacle position whose obstacle scanning height is greater than or equal to the preset blind spot height is within the scanning area of the laser radar, that is, within the effective detection range of the laser radar; the installation height of the laser radar in the body is greater than the body height, so that the laser radar can scan obstacles higher than the robot.
[0029] In the point cloud data collected by the robot's online laser sensor, the obstacle position whose obstacle scanning height is less than or equal to the installation height of the line laser sensor in the body is marked as the projection position of the robot's walking plane as the second specific height obstacle position, and it is determined that the second specific height obstacle position is in the projection area of the line laser sensor's scanning area within the robot's walking plane, and it is determined that the second specific height obstacle position is in the projection area of the robot's walking plane. The obstacle position whose obstacle scanning height is less than or equal to the installation height of the line laser sensor in the body is within the scanning area of the line laser sensor, that is, within the effective detection range of the line laser sensor; there is a shorter obstacle at the second specific height obstacle position; the second specific height obstacle position includes a height blind spot obstacle position, and the height blind spot obstacle position is within the scanning blind spot of the laser radar.
[0030] The robot selects the obstacle positions occupying the same two-dimensional coordinate position from the first specific height obstacle position and the second specific height obstacle position, and then marks the obstacle positions occupying the same two-dimensional coordinate position as planar obstacle positions, wherein the line laser sensor and the laser radar respectively scan different heights of the obstacle where the planar obstacle position is located, and there is a higher obstacle at the planar obstacle position, such as a wall standing on the ground. It can be understood that the robot marks the obstacle positions scanned by both the line laser sensor and the laser radar as planar obstacle positions, and the obstacle where the planar obstacle position is located presents a continuous contour in the vertical direction or the vertical direction of the robot's walking plane, then the obstacle where the planar obstacle position is located can be simultaneously scanned by the line laser sensor and the laser radar to obtain point cloud data corresponding to the obstacle scanning height.
[0031] In some embodiments, the robot uses two numerical values to mark the point cloud data collected by the line laser sensor and the point cloud data collected by the lidar, respectively; wherein the point cloud data collected by the lidar is marked as laser marking information, including the two-dimensional coordinates of the obstacle position at a first specific height and the obstacle scanning height in the vertical direction; the point cloud data collected by the line laser sensor is marked as line laser marking information, including the two-dimensional coordinates of the obstacle position at a second specific height and the obstacle scanning height in the vertical direction.
[0032] It should be noted that the obstacle scanning height is configured as the height detected by the line laser sensor or laser radar of the obstacles distributed in its scanning area in the same vertical plane. It is the height information of the point cloud data scanned by the sensor mapped to the same coordinate system, such as the z-axis coordinate value of the three-dimensional coordinate. If the plane of the yox coordinate system is set to the ground, the obstacle scanning height can represent the height from the ground, and then the line laser sensor or laser radar can scan a position at a certain height from the ground, which can be recorded as a certain height position. It occupies a two-dimensional coordinate position on the ground, which can be understood as occupying the obstacle position.
[0033] Specifically, the line laser sensor or laser radar can use its pitch angle to detect the height information of each column of the obstacle surface in its scanning area in the vertical direction of the robot's walking plane, which is recorded as the obstacle scanning height; the first specific height obstacle position corresponds to the obstacle scanning height greater than or equal to the preset blind spot height, the second specific height obstacle position corresponds to the obstacle scanning height less than or equal to the installation height of the line laser sensor in the body, and the planar obstacle position also corresponds to the obstacle scanning height greater than or equal to the preset blind spot height. The obstacle scanning heights on each column of the same obstacle surface are not necessarily equal. It can be understood that the obstacle scanning heights at different first specific height obstacle positions are not necessarily equal and can be scanned by the laser radar; the obstacle scanning heights at different second specific height obstacle positions are not necessarily equal and can be scanned by the line laser sensor.
[0034] After the robot marks the second specific height obstacle position and the first specific height obstacle position on the grid map, schematically, the grids occupied by the first specific height obstacle position in the grid map can be displayed as orange grids, and the grids occupied by the second specific height obstacle position in the grid map can be displayed as green grids, representing obstacles at different obstacle scanning heights respectively; the grids occupied by the planar obstacle position are marked as the first specific height obstacle position and the second specific height obstacle position at the same time, so they will be displayed in orange-green.
[0035] The planar obstacle position, the height blind zone obstacle position, the second specific height obstacle position and the first specific height obstacle position are all obstacle positions, which are regarded as being occupied by obstacles of a certain height and are marked in the form of obstacle grids in the grid map. The marking information of the obstacle grid includes the sensor equipment information (such as line laser sensor or lidar) that scans the corresponding obstacle position, the obstacle scanning height at the corresponding obstacle position, and the two-dimensional coordinate position of the corresponding obstacle position (together with the obstacle scanning height, it can constitute the three-dimensional coordinates of the point cloud occupying the corresponding obstacle position).
[0036] The detection range diagram of LiDAR and line laser sensor in the top view can be found in Figure 2 , Figure 2 This is a schematic diagram of a robot provided by an embodiment of the present application using a laser radar and a line laser sensor to scan the outline of a wall 102 and mark it on a plane map; wherein the triangular area T1T2T3 represents the area actually scanned by the line laser sensor and marked on the plane map, forming a horizontal area 101 formed by the line laser sensor emitting laser, which belongs to the projection area of the scanning area of the line laser sensor on the robot's walking plane. The plane map here uses a grid map.
[0037] Figure 2 In the example, the robot identifies the second specific height obstacle position from the horizontal area 101, and the triangular area T1T2T3 includes the triangular area T1T4T5; the height blind area obstacle position is distributed in the triangular area T1T4T5, corresponding to Figure 3 In the figure, the height blind area obstacle position is the obstacle grid covered by area 101 (the squares filled with black).
[0038] Figure 2 In the figure, the trapezoidal area T2T3T4T5 represents the overlapping area marked in the plane map by the line laser sensor and the laser radar by scanning the outline of the wall 104. The robot recognizes the position of the surface obstacle from the trapezoidal area T2T3T4T5. In particular, when the position of the surface obstacle is marked in the grid map, the grid filled in the trapezoidal area T2T3T4T5 is the grid occupied by the position of the surface obstacle in the grid map.
[0039] Figure 2 In the figure, the trapezoidal area T2T8T9T4 and the trapezoidal area T3T7T6T5 both represent the areas other than the trapezoidal area T2T3T4T5 that are marked in the plane map by the laser radar by scanning the outline of the wall 104, and the grids filled with the trapezoidal areas T2T8T9T4 and the trapezoidal areas T3T7T6T5 are the grids occupied by the positions of the obstacles at the first specific height in the grid map.
[0040] The aforementioned embodiment uses a line laser sensor and a laser radar to distinguish between the first specific height obstacle position and the second specific height obstacle position, and then distinguishes the planar obstacle position from the first specific height obstacle position and the second specific height obstacle position, so as to mark the obstacle positions at different obstacle scanning heights, thereby guiding the robot to choose to start the obstacle avoidance walking mode or the edge walking mode when the obstacle position at the corresponding obstacle scanning height is scanned in real time.
[0041] As an embodiment, the height information obtained by the robot converting the point cloud data collected by the laser radar into the robot coordinate system is different from the height information obtained by the robot converting the point cloud data collected by the line laser sensor into the same robot coordinate system, and the absolute height of the point cloud data collected by the laser radar into the robot coordinate system is greater than the absolute height of the point cloud data collected by the line laser sensor into the same robot coordinate system, so that the installation position of the line laser sensor in the body is determined based on the scanning blind spot of the laser radar, and the point cloud data collected by the line laser sensor makes up for the scanning blind spot of the laser radar.
[0042] In this embodiment, the point cloud data collected by the laser radar is located in the laser radar coordinate system with the laser radar itself as the origin, while the point cloud data collected by the line laser sensor is located in the line laser sensor coordinate system with the line laser sensor itself as the origin. The point cloud data collected by the laser radar and the point cloud data collected by the line laser sensor are in different coordinate systems. In this regard, this embodiment converts the point cloud data collected by the laser radar and the point cloud data collected by the line laser sensor into the same robot coordinate system, so that each mapped point cloud data is in the same robot coordinate system.
[0043] When the robot is walking, it will emit lasers to collect information about obstacles and fill the obstacle information into the grid map to indicate the position of the obstacle on the grid map. The grid map is divided into small square cells. A square cell represents a grid. Each square cell has a side length. An obstacle position can be represented by a square cell.
[0044] Specifically, based on the transformation matrix between the laser radar coordinate system and the robot coordinate system, the robot converts the point cloud data collected by the laser radar into the robot coordinate system to obtain the first point cloud data, where the first point cloud data includes the two-dimensional coordinates of each obstacle position and the obstacle scanning height; then the robot selects the two-dimensional coordinate positions occupied by the point clouds whose obstacle scanning height is greater than or equal to the preset blind spot height from the first point cloud data, and then marks the two-dimensional coordinate positions selected from the first point cloud data as the first specific height obstacle positions, and obtains the two-dimensional coordinates of the first specific height obstacle positions in the robot coordinate system, where the point clouds whose obstacle scanning height is greater than or equal to the preset blind spot height are The two-dimensional coordinate position occupied by the cloud is the projection coordinate position of the point cloud whose obstacle scanning height is greater than or equal to the preset blind spot height on the walking plane of the robot; it should be noted that when converting the point cloud data collected by the lidar from the lidar coordinate system to the robot coordinate system, the transformation matrix between the lidar coordinate system and the robot coordinate system can be applied, and the point cloud data collected by the lidar can be multiplied by the transformation matrix to obtain the first point cloud data, wherein the transformation matrix between the lidar coordinate system and the robot coordinate system can be obtained by pre-calibration of the lidar, and the transformation matrix here represents the translation and / or rotation operations required to convert from the lidar coordinate system to the robot coordinate system.
[0045] Based on the conversion matrix between the line laser sensor coordinate system and the robot coordinate system, the robot converts the point cloud data collected by the line laser sensor into the robot coordinate system to obtain the second point cloud data, wherein the second point cloud data includes the two-dimensional coordinates of each obstacle position and the obstacle scanning height; then the robot selects the two-dimensional coordinate position occupied by the point cloud whose obstacle scanning height is less than or equal to the installation height of the line laser sensor in the machine body and whose obstacle scanning height is greater than the preset ground height threshold from the second point cloud data, and then marks the two-dimensional coordinate position selected from the second point cloud data as the second specific height obstacle position; wherein, the two-dimensional coordinate position occupied by the point cloud whose obstacle scanning height is less than or equal to the installation height of the line laser sensor in the machine body and whose obstacle scanning height is greater than the preset ground height threshold is the projection coordinate position of the point cloud whose obstacle scanning height is less than or equal to the installation height of the line laser sensor in the machine body and whose obstacle scanning height is greater than the preset ground height threshold on the walking plane of the robot; wherein, the point cloud whose obstacle scanning height is less than or equal to the preset ground height threshold is the point cloud of the ground part scanned by the line laser sensor, and the two-dimensional coordinate position occupied by the point cloud of the ground part is not the obstacle position. The installation height of the line laser sensor in the body is preferably 45 mm; it should be noted that when converting the point cloud data collected by the line laser sensor from the line laser sensor coordinate system to the robot coordinate system, the transformation matrix between the line laser sensor coordinate system and the robot coordinate system can be applied, and the point cloud data collected by the line laser sensor is multiplied by the transformation matrix to obtain the second point cloud data, wherein the transformation matrix between the line laser sensor coordinate system and the robot coordinate system can be obtained by pre-calibration of the line laser sensor, and the transformation matrix here represents the translation and / or rotation operations required to convert from the line laser sensor coordinate system to the robot coordinate system.
[0046] It is worth noting that the installation height of the laser radar in the body is greater than the installation height of the line laser sensor in the body. The laser emitted by the line laser sensor may be directed to the ground, and the ground here can be regarded as the walking plane of the robot. Therefore, the second point cloud data contains point cloud data of the ground around the body, and the point cloud data of the ground is not only meaningless for obstacle detection itself, but also may introduce interference to obstacle detection. Therefore, the second point cloud data can be pre-detected on the ground, so as to divide the second point cloud data into point cloud data of the ground part and point cloud data of the non-ground part, and the obstacle position at the second specific height is screened out from the two-dimensional coordinate position occupied by the point cloud data of the non-ground part.
[0047] On this basis, the robot selects the obstacle positions occupying the same two-dimensional coordinate position from the first specific height obstacle position and the second specific height obstacle position, and then marks the obstacle positions occupying the same two-dimensional coordinate position as the planar obstacle position; the robot also marks the two-dimensional coordinate positions of the second specific height obstacle position except the planar obstacle position as the height blind area obstacle position, and the height blind area obstacle position is in the scanning blind area of the laser radar. Therefore, according to the obstacle scanning height, the two-dimensional coordinate positions corresponding to the point cloud data collected by the line laser sensor and the point cloud data collected by the laser radar are divided into the first specific height obstacle position and the second specific height obstacle position in the same robot coordinate system, and the height blind area obstacle position is extracted. Improve the comprehensiveness of the robot's perception of obstacles and the accuracy of obstacle avoidance.
[0048] It should be noted that, according to the characteristics of the indoor robot, according to the position of the obstacle relative to the robot, there are mainly low obstacles, suspended obstacles, and general height obstacles; according to the movement characteristics of the obstacle, there are mainly dynamic obstacles and static obstacles; according to the geometric characteristics of the obstacle, there are mainly point obstacles, linear obstacles and surface obstacles (such as walls), etc.; according to the physical characteristics of the obstacle, there are mainly optically visible obstacles and optically invisible obstacles (such as glass). Corresponding to the aforementioned embodiment, the first specific height obstacle position can be the position occupied by a general height obstacle or a surface obstacle, including a wall; the height blind area obstacle position can be the position occupied by a low obstacle, and limited by the installation height of the line laser sensor, the second specific height obstacle position can be the position occupied by a low obstacle or a general height obstacle or a surface obstacle. The obstacle scanning height in the point cloud data or the second point cloud data collected by the line laser sensor represents the height of the partial outline of the surface obstacle. The obstacle scanning height at the height blind area obstacle position can be the maximum height of the low obstacle.
[0049] Based on the foregoing embodiment, the robot marks the obstacle scanning height at the planar obstacle position included in the first specific height obstacle position as the first scanning height at the planar obstacle position, and also marks the obstacle scanning height at the planar obstacle position included in the second specific height obstacle position as the second scanning height at the planar obstacle position. The second scanning height at the planar obstacle position is less than the first scanning height at the planar obstacle position. The second scanning height and the first scanning height respectively represent different heights of the contour surface of the obstacle at the planar obstacle position scanned jointly by the line laser sensor and the laser radar. However, it can be determined that point cloud data at different heights occupy the same obstacle position on the walking plane of the robot. Here, the jointly scanned contour surface is preferably a continuous wall surface. Then, it can be determined that the obstacle at the planar obstacle position is not a suspended obstacle in the jointly scanned area of the line laser sensor and the laser radar. Since there is a first scanning height at the planar obstacle position, the actual height of the obstacle at the planar obstacle position (which can also be understood as the obstacle scanning height of the point cloud representing the obstacle) is greater than or equal to the preset blind spot height. Therefore, the obstacle at the first specific height obstacle position and the obstacle at the planar obstacle position can be the same obstacle, for example, a general height obstacle or a planar obstacle. The obstacle at the position of the planar obstacle is scanned by the line laser sensor and the laser radar together. The projection line on the robot's walking plane is configured as the obstacle contour that the robot needs to follow in the edge walking mode, which corresponds to Figure 2 The boundary line T6T9 or boundary line T7T8 is used to make the walking direction formed by the robot in the edge walking mode parallel to the obstacle contour or the tangent direction of the obstacle contour.
[0050] The walking mode along the edge initiated by the robot in step B includes: the robot walks along the obstacle contour where the first specific height obstacle position or the planar obstacle position is located by adjusting the posture, so that the robot's adjusted walking direction is parallel to the tangent direction of the obstacle contour where the first specific height obstacle position or the planar obstacle position is located, wherein the robot adjusts the posture in a manner that includes changing the rotation speed of the driving wheels on the left and right sides of the body, so that the robot's walking direction changes from pointing to the first specific height obstacle position to being parallel to the obstacle contour at the first specific height obstacle position or the tangent direction of the obstacle contour at the first specific height obstacle position, and the distance between the edge position of the robot after the posture adjustment and the nearest first specific height obstacle position (which may be a grid position) is greater than or equal to the set obstacle avoidance distance. Therefore, when the robot after the posture adjustment is walking along the obstacle contour where the first specific height obstacle position or the planar obstacle position is located, on the side of the body that is biased toward the first specific height obstacle position or the planar obstacle position, the minimum margin between the body edge and the contour along which the robot is walking is set to be greater than or equal to the set obstacle avoidance distance. The robot is enabled to perform real-time edge-following behavior without touching obstacles at the first specific height obstacle position or the planar obstacle position.
[0051] It should be noted that the walking path formed after the robot starts the edge walking mode is an edge path. The set obstacle avoidance distance is the minimum distance between the edge path and the obstacle contour where the first specific height obstacle position or the surface obstacle position is located. It is the collision avoidance distance determined by the robot's body radius on the grid map. The set obstacle avoidance distance is preferably a distance value between 3 and 10 cm to ensure that the robot walks normally along the line connecting multiple consecutive first specific height obstacle positions or surface obstacle positions.
[0052] In the related prior art, in the scenario where a line laser sensor is set at the front of the sweeping robot to sense obstacles in the forward direction of the sweeping robot, since the line laser sensor of the sweeping robot faces forward and the lateral field of view is smaller than the forward field of view, when the sweeping robot needs to turn or walk along the outline of the obstacle (performing the walking mode along the edge described in step B), the line laser sensor has a blind spot in the lateral field of view and cannot sense the obstacles in the blind spot, especially the long obstacles. The line laser sensor cannot completely mark the entire obstacle at the beginning, resulting in the sweeping robot being unable to take obstacle avoidance measures, causing the sweeping robot to collide with obstacles frequently, making it impossible for the sweeping robot to bypass obstacles and complete normal cleaning operations, and even causing serious consequences such as damage and overturning of the sweeping robot due to collision.
[0053] Based on the aforementioned related technical issues, the robot executes step A. During the walking process, when the robot pre-scans the position of a high blind spot obstacle using a line laser sensor and begins to enter the obstacle avoidance area planned based on the position of the high blind spot obstacle, the obstacle avoidance walking mode is started.
[0054] As an embodiment, step A includes: Step A1, the robot plans an obstacle bypassing area based on the pre-marked high blind spot obstacle position, which can be understood as the robot marking / occupying the high blind spot obstacle position corresponding to the point cloud data in the scanning area of the line laser sensor before the current obstacle bypassing walking mode is started. It is generally located in the current walking direction of the robot or on the side of the body, and the robot will contact the high blind spot obstacle position while walking along the current walking direction; then the robot plans a reference scanning blind area based on the scanning area of the line laser sensor and the obstacle bypassing area, which is used as the blind area of the line laser sensor on its side, and is marked as the blind area on the side of the scanning area of the line laser sensor in the map. Then execute step A2. Among them, the actual coverage area of the high blind spot obstacle position pre-marked in step A1 does not exceed the actual coverage area of the scanning area of the line laser sensor on the walking plane of the robot.
[0055] Schematically, the scanning area of the line laser sensor is used in the two-dimensional plane area occupied by the robot's walking plane Figure 4 When the area 101 is used to represent the obstacle avoidance area, the area covered by the black circle 201 is used to represent the planned reference scanning blind area, and the area covered by the black circle 202 is used to represent the reference scanning blind area, so that the area covered by the reference scanning blind area is larger than the area covered by the obstacle avoidance area, and the reference scanning blind area (the area covered by the black circle 202) is set to be tangent to the side of the area 101 before the robot walks.
[0056] Step A2: When the robot detects that there is an overlapping area between its body coverage area and the obstacle avoidance area, the robot adjusts its posture. At this time, since the obstacle avoidance area is planned based on the pre-marked high blind area obstacle position, the robot's line laser sensor has scanned the obstacle where the high blind area obstacle is located and currently enters the obstacle avoidance area. Then the robot starts to change the driving wheels on both sides to turn, and then the robot walks along the edge of the obstacle avoidance area, driving the scanning area of the line laser sensor into the reference scanning blind area, so that Figure 4The area 101 and the black circle 202 intersect; at this time, the walking trajectory of the robot can be recorded as the edge of the obstacle bypassing area, the line laser scanning range can cover the reference scanning blind area pre-marked by the line laser, the line laser sensor's field of view begins to rotate toward the obstacle bypassing area, enters the reference scanning blind area, and starts the obstacle bypassing walking mode. The robot begins to walk around the obstacle where the high blind area obstacle is located inside the obstacle bypassing area, but an obstacle bypassing area does not necessarily surround the obstacle where the high blind area obstacle is located. However, during the robot's rotation, the robot's field of view that is biased toward the obstacle bypassing area is expanded, and then step A3 is executed. Thereby reducing the distance between the edge line of the scanning area of the line laser sensor that is biased toward the obstacle bypassing area and the high blind area obstacle position, and reducing the field of view blind area between the line laser sensor and the obstacle bypassing area.
[0057] It should be noted that Figures 4 to 5 With the change of the scanning range of the area 101 in the image, the area swept by the line laser sensor during the rotation of the random body 100 tends to approach the obstacle 203 where the high blind spot obstacle is located, so as to expand the detection field of the line laser sensor to the left side contour of the obstacle 203.
[0058] Step A3, when the robot walks along the edge of the obstacle bypassing area described in step A1, when the scanning area of the line laser sensor covers the height blind zone obstacle position outside the obstacle bypassing area described in step A1 in the walking plane of the robot, the newly scanned height blind zone obstacle position can be marked in the grid map. This newly scanned height blind zone obstacle position is the scanning area of the line laser sensor outside the obstacle bypassing area described in step A1 and within the reference scanning blind area. In order to completely bypass the obstacle where the height blind zone obstacle position is located, the height blind zone obstacle position currently covered outside the obstacle bypassing area described in step A1 is updated to the pre-marked height blind zone obstacle position described in step A1; then repeat steps A1 to A2, mark new obstacle bypassing areas in sequence to surround the target obstacle, until the robot completely bypasses the target obstacle while walking along the edges of each obstacle bypassing area marked successively, wherein the coverage area of the height blind zone obstacle position updated each time does not exceed the coverage area of the scanning area of the line laser sensor in the walking plane of the robot. In this embodiment, the obstacle at the height blind spot obstacle position is the target obstacle that the robot needs to bypass, and can be marked as target obstacle 203; the target obstacle is in the scanning blind spot of the laser radar in the vertical direction of the robot's walking plane. The height blind spot obstacle position can be regarded as the two-dimensional coordinate position occupied by the target obstacle that the robot needs to bypass in the robot's walking plane. The specific manifestation of the robot completely bypassing the target obstacle is: when the robot is walking, the line laser sensor and the laser radar do not scan the height blind spot obstacle position (including the two-dimensional coordinate position occupied by the target obstacle), and the robot is far away from the target obstacle.
[0059] Compared with the prior art, the aforementioned steps A1 to A3 successively set the obstacle bypassing area and the reference scanning blind area, and control the robot to walk along the edge of the obstacle bypassing area, driving the scanning area of the line laser sensor to enter the reference scanning blind area, so as to reduce the blind area range of the line laser sensor during the obstacle bypassing walking process. Moreover, whenever the robot newly marks the position of a high blind area obstacle outside the current obstacle bypassing area, a new obstacle bypassing area and a corresponding reference scanning blind area are planned, so that in the process of the robot turning and walking along the edges of the obstacle bypassing areas marked successively, the scanning blind area on the side of the scanning area of the line laser sensor is continuously supplemented to gradually bypass one or more target obstacles, and avoid frequent collisions with obstacles during the obstacle bypassing process. Under the premise of not changing the movement direction of walking along the straight wall, the efficiency of effectively avoiding low obstacles (obstacles or target obstacles where high blind area obstacles are located) is improved.
[0060] On the basis of the above embodiments, when the robot cannot mark the obstacle avoidance area based on the pre-marked height blind spot obstacle position or does not mark the height blind spot obstacle position, if the minimum distance between the first specific height obstacle position or the planar obstacle position and the edge position of the robot in its walking direction becomes smaller, until the minimum distance between the currently scanned first specific height obstacle position or the planar obstacle position and the edge position in the robot's walking direction is the set obstacle avoidance distance, then the edge walking mode described in step B is started, and the obstacle avoidance distance is set, preferably a distance value is selected from 2 to 10 cm; thus, after the robot adjusts its posture, it walks along the first specific height according to the above embodiments. Walking along the obstacle contour where the obstacle position or the surface obstacle position is located, compared with the prior art, the movement amplitude of the walking along the edge mode generated by the robot starting step B is not large and the frequency of triggering the walking along the edge is not high. For example, in the process of the robot walking along the contour line formed by the pre-marked first specific height obstacle position or the surface obstacle position, the obstacle avoidance walking mode may be started by executing step A. After completely bypassing the target obstacle to stay away from the target obstacle, or when the height blind spot obstacle position and the obstacle avoidance area are not marked, the interference of the height blind spot obstacle position is eliminated, and then the nearby first specific height obstacle position or surface obstacle position is continued to be used to implement the walking along the edge mode.
[0061] In some embodiments, the step A3 also includes: when the robot walks along the edge of the obstacle avoidance area, if the scanning area of the line laser sensor does not cover the high blind area obstacle position in the robot's walking plane, the step A1 is not executed to mark the new obstacle avoidance area; then, when the first specific high obstacle position is currently marked, if the minimum distance between the edge position of the robot in its walking direction and the first specific high obstacle position currently marked is the set obstacle avoidance distance, the robot walks along the obstacle contour where the first specific high obstacle position is located by adjusting the posture. Thus, the robot improves the efficiency of effectively avoiding low obstacles (obstacles or target obstacles where the high blind area obstacle position is located) without changing the movement direction of walking along the straight wall, and accelerates the return to the edge walking mode after completing the obstacle avoidance to continue walking along the straight wall.
[0062] As an example, combining Figure 5 and Figure 6It can be seen that in step A3, the robot walks to a position along the edge of the obstacle avoidance area, that is, the robot walks along the arc on one side that contacts the black circle 201 shown in the figure by turning; if the scanning area of the line laser sensor covers at least one of the highly blind obstacle positions or multiple highly blind obstacle positions outside the obstacle avoidance area described in step A1 in the walking plane of the robot, it corresponds to the process that the robot rotates to the right along the edge of the black circle 201, and the area 101 moves to cover the partial position of the target obstacle 203 outside the black circle 201, encircling the highly blind obstacle position that has not been scanned before, and preferably located in the corresponding reference scanning blind area; then the new obstacle avoidance area is marked and the new reference scanning blind area is planned by executing step A1, wherein the planned new obstacle avoidance area is used Figure 6 The black circle 301 coverage area in the figure represents; at the same time, the robot continues to walk along the edge of the obstacle avoidance area marked in the previous step A1, while walking along the edge of the black circle 201, and planning the black circle 301 using the newly scanned high blind spot obstacle position outside the black circle 201, and then executing step A2, so that when the robot walks to the intersection of its body coverage area and the new obstacle avoidance area, it is determined that the robot has entered the black circle 301, and the robot walks along the edge of the new obstacle avoidance area by adjusting its posture, which is not shown in the figure. In this way, whenever the robot marks the position of a high blind spot obstacle outside the last planned obstacle avoidance area on the map, it continues to plan the obstacle avoidance area to circle the newly marked high blind spot obstacle position and mark it on the map. After subsequently entering the newly planned obstacle avoidance area, the robot adjusts to walk along the edge of the newly planned obstacle avoidance area to continue walking around the obstacle. In the process of walking around the obstacle, the new point cloud height information and the two-dimensional coordinate position occupied by the point cloud collected in real time by the line laser sensor are filled into the line laser grid map in sequence. In this way, the robot's obstacle avoidance walking path is updated according to the new high blind spot obstacle position in the grid map, so that low obstacles can be avoided, effectively supplementing the side scanning blind spot of the line laser sensor, and improving the robot's obstacle avoidance accuracy.
[0063] As an embodiment, in step A1, the method for the robot to plan an obstacle bypassing area based on the pre-marked high blind zone obstacle position includes: the robot marks the smallest circular area surrounding the pre-marked high blind zone obstacle position described in step A1 as the obstacle bypassing area, wherein the distribution range of the pre-marked high blind zone obstacle position described in step A1 does not exceed the corresponding coverage range of the scanning area of the line laser sensor in the walking plane of the robot. When the robot walks to a position, the planned obstacle bypassing area surrounds all high blind zone obstacle positions in the projection area of the scanning area of the line laser sensor in the walking plane of the robot in the form of a circular area, and the planned circular area is a circular area with the smallest area, and there is no specific restriction on the selection of its center and radius. Thus, the obstacle bypassing area is used to simulate the maximum range occupied by the obstacle where the high blind zone obstacle position is located in the current scanning area of the line laser sensor, so that the robot can bypass the obstacle where the marked high blind zone obstacle position is located without obstacles.
[0064] Preferably, in the specific application scenario of the obstacle avoidance walking mode, Figure 3 , the robot sets the obstacle avoidance area (black circle 201 coverage area) to allow intersection with the body 100 coverage area; corresponding to Figure 4 The robot also sets the obstacle avoidance area (covered area of the black circle 201) to be tangent to the covered area of the body 100. This drives the scanning area of the line laser sensor to cover the inner and outer areas of the marked obstacle avoidance area in the walking plane of the robot, thereby reducing the blind area of the line laser sensor.
[0065] Repeat steps A1 to A2 to mark new obstacle avoidance areas. Figure 3 In the example, the robot uses area 101 in front of the body 100 to cover the currently marked obstacle grid (filled with black squares), and then sets the obstacle avoidance area to encircle the currently marked obstacle grid (filled with black squares). Specifically, a circle is planned by selecting a center and matching a radius to obtain a black circle 201, and then the area covered by the black circle 201 is used to represent the obstacle avoidance area; corresponding to Figure 4 In the figure, the black area 203 is the area occupied by the obstacle that the robot needs to bypass along the black circle 201, which represents the target obstacle. The black circle 201 only encircles a part of the black area 203, and a new obstacle bypassing area still needs to be designed to encircle the other parts of the black area 203.
[0066] Based on the above embodiment, the robot sets the obstacle avoidance area to be parallel to the robot walking plane and marks it in the map; in step A1, the robot sets the distance between the center of the body and the center of the obstacle avoidance area so that the edge of the robot's body does not contact the second specific height obstacle position. Then, in the obstacle avoidance walking mode, the coverage area of the robot's body 100 does not overlap with the height blind spot obstacle position and the planar obstacle position, thereby preventing the robot from colliding with obstacles of different heights in the obstacle avoidance walking mode.
[0067] As an embodiment, in step A1, the method for the robot to plan a reference scanning blind area in combination with the scanning area of the line laser sensor and the obstacle avoidance area includes: the robot sets a target circular area with the center of the obstacle avoidance area as a preset center and a preset blind area length as a radius, and then marks the target circular area as the reference scanning blind area; the robot sets the reference scanning blind area to be parallel to the robot walking plane and marks it in the map; the robot marks the projection area of the scanning area of the line laser sensor in the robot's walking plane as the effective scanning plane area of the line laser sensor; the robot sets the side edge of the reference scanning blind area covered by the body to be tangent to the side edge of the effective scanning plane area of the line laser sensor that is biased towards the obstacle avoidance area; and, when the distance between the center of the body and the center of the obstacle avoidance area remains unchanged, the robot sets the preset blind area length to be negatively correlated with the scanning angle of the line laser sensor, and the scanning angle of the line laser sensor is less than or equal to 180 degrees.
[0068] like Figure 4 As shown, when the robot moves in the direction of arrow P1, the area covered by the black circle 201 is marked on the right side of the body 100 in advance, that is, the obstacle avoidance area is marked in advance. On this basis, a black circle 202 is expanded with the center of the black circle 201 as the preset center, and the area covered by the black circle 202 is used to represent the reference scanning blind area; Figure 4 In the figure, the effective scanning plane area of the line laser sensor is represented by the triangular area 101, and the scanning angle of the line laser sensor is the angle of view passing through the arrow P1 in the effective scanning plane area of the line laser sensor; the edge of one side of the black circle 202 covered by the body 100 is tangent to the edge of one side of the triangular area 101 that is biased towards the black circle 201; therefore, when the distance between the center of the body 100 and the center of the black circle 201 remains unchanged, when the scanning angle of the line laser sensor is larger, the smaller the radius of the black circle 202 is set, the smaller the blind area on the side of the scanning area of the line laser sensor; when the scanning angle of the line laser sensor is smaller, the larger the radius of the black circle 202 is set, the larger the blind area on the side of the scanning area of the line laser sensor.
[0069] Therefore, based on the relative positional relationship between the center of the obstacle bypassing area, the coverage of the obstacle bypassing area, the side of the effective scanning plane area of the line laser sensor, and the body center of the robot, a reference scanning blind area is planned to form a blind area on the side of the line laser sensor when the robot walks along the edge of the obstacle bypassing area, wherein the control of the scanning angle of the line laser sensor, the center of the reference scanning blind area, and the radius of the reference scanning blind area affect the size of the side blind area of the line laser sensor to a certain extent, and on the basis of the flexible adjustment of the scanning angle of the line laser sensor, the center of the obstacle bypassing area, and the radius of the reference scanning blind area, the reference scanning blind area can also be flexibly set according to demand. Therefore, under the premise of ensuring the measurement range (or performance) of the line laser sensor, the reference scanning blind area should be expanded as much as possible, so that the larger the range occupied by the target obstacle that can be scanned is, the detection accuracy of the target obstacle is improved, the probability of the robot colliding with the low obstacles near it is reduced, and the robot is accelerated to bypass the target obstacle along the edge of the obstacle bypassing area.
[0070] On the basis of the above embodiment, the robot sets the radius of the reference scanning blind area to be greater than the radius of the obstacle bypassing area, and sets the reference scanning blind area to be a circular area surrounding the obstacle bypassing area; and then the robot sets the inner diameter of the annular area between the edge of the reference scanning blind area and the edge of the obstacle bypassing area to be greater than or equal to the body radius of the robot. In addition, in step A1, if the line laser sensor is installed on the body axis of the robot, the distance between the body center of the robot and the center of the circle of the reference scanning blind area is greater than or equal to the radius of the reference scanning blind area, so that when the robot does not start walking along the edge of the obstacle bypassing area, the effective scanning plane area of the line laser sensor does not intersect with the reference scanning blind area, and the effective scanning plane area of the line laser sensor and the reference scanning blind area can be set to be tangent to each other. It is worth noting that at this time, the robot has not entered the obstacle bypassing walking mode, but is understood to plan a reference scanning blind area at a position. The robot scans a new obstacle position within a larger blind area to prevent the robot from colliding with the obstacle at the height blind area obstacle position inside the obstacle bypassing area when driving the scanning area of the line laser sensor into the reference scanning blind area.
[0071] As an embodiment, in step A2, the robot walks along the edge of the obstacle avoidance area to drive the scanning area of the line laser sensor into the reference scanning blind area. The method includes: after detecting that there is an overlapping area between the robot's body coverage area and the obstacle avoidance area through step A1, the robot rotates toward the inside of the reference scanning blind area to drive the scanning area of the line laser sensor to rotate into the reference scanning blind area, so that the effective scanning plane area of the line laser sensor intersects with the reference scanning blind area. At the same time, the robot keeps the side edge of the body biased toward the inside of the reference scanning blind area tangent to the edge of the obstacle avoidance area, and walks in the direction after rotation, so that the robot is determined to walk along the edge of the obstacle avoidance area, and the walking trajectory formed by the robot in the obstacle avoidance walking mode can be regarded as the edge of the obstacle avoidance area, but the effective scanning plane area of the line laser sensor needs to have an overlapping area with the reference scanning blind area to continuously scan the new contour of the target obstacle and mark the new height blind area obstacle position.
[0072] Combination Figure 5 and Figure 6 It can be seen that when planning the black circle 202, the robot is configured to walk in the direction of arrow P1; when the scanning area of the line laser sensor enters the black circle 202 in the area 101 formed by the projection of the robot's walking plane, the robot starts the obstacle avoidance walking mode. At this time, the area 101 begins to cover the black area 203 to mark the new height blind spot obstacle position, and the obstacle avoidance walking mode is started. The robot configures the walking direction from the direction of arrow P1 to the direction of arrow P2, that is, the robot deflects to the right by a preset turning angle so that its walking direction is the direction of arrow P2, and then walks along the edge of the black circle 201. At the same time, the edge of the side of the body 100 that is biased toward the inside of the black circle 202 is tangent to the edge of the black circle 201. When the robot walks along the edge of the black circle 201, the scanning area of the line laser sensor enters the black area 203 in the area 101 formed by the projection of the robot's walking plane and continues to mark the new height blind area obstacle position, thereby gradually reducing the blind area of the right edge of area 101 inside the black circle 202, thereby reducing or even eliminating the blind area of the robot's vision when it turns to one side when walking around obstacles, allowing the robot to take obstacle avoidance measures in a timely manner, reducing the probability of damage or overturning of the robot due to frequent collisions, increasing the service life of the robot, and improving the robot's navigation efficiency.
[0073] Among them, the preset turning angle is respectively associated with the distance between the center of the body and the center of the obstacle avoidance area (the area covered by the black circle 201), and the scanning angle of the line laser sensor. If the distance between the center of the body and the center of the obstacle avoidance area (the area covered by the black circle 201) is smaller and / or the scanning angle of the line laser sensor is smaller, the preset turning angle is set to be smaller. Of course, the distance between the center of the body and the center of the obstacle avoidance area (the area covered by the black circle 201) will be affected by the coverage size of the obstacle avoidance area (the area covered by the black circle 201) or the position of the high blind spot obstacle enclosed therein, and the number and distribution range of the high blind spot obstacle positions enclosed within the obstacle avoidance area are also affected by the scanning angle of the line laser sensor; therefore, in this embodiment, the preset turning angle is preferably set to 42.8 degrees.
[0074] A person of ordinary skill in the art will appreciate that the implementation of all or part of the processes in the above-mentioned embodiment method can be completed by instructing the relevant hardware through a computer program. 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 method.
[0075] The technical features of the above embodiments may be arbitrarily combined. To make the description concise, not all possible combinations of 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.
Claims
1. A robot obstacle avoidance method based on a line laser sensor and a laser radar, characterized in that: A line laser sensor is installed on the front side of the robot body, and a laser radar is installed on the top of the robot body, and the installation height of the laser radar in the body is greater than the installation height of the line laser sensor in the body; The robot obstacle avoidance method comprises: Step A: When the robot marks the position of a high blind spot obstacle and enters the obstacle avoidance area planned based on the currently marked high blind spot obstacle position, the obstacle avoidance walking mode is started, wherein the high blind spot obstacle position is marked by the robot using point cloud data collected by the line laser sensor; Step B: When the robot marks the position of a planar obstacle and does not mark the position of a high blind spot obstacle, if the robot detects that the minimum distance between the edge position in its walking direction and the currently marked planar obstacle position is the set obstacle avoidance distance, the edge walking mode is started; wherein the planar obstacle position is marked by the robot using the point cloud data collected by the line laser sensor and the point cloud data collected by the lidar.
2. The robot obstacle avoidance method according to claim 1, characterized in that: Before starting the edge walking mode or the obstacle avoidance walking mode, there are: The robot marks the projection position of the obstacle position whose obstacle scanning height is greater than or equal to the preset blind spot height on the robot walking plane as the first specific height obstacle position in the point cloud data collected by the laser radar, wherein the preset blind spot height is greater than or equal to the installation height of the laser radar in the body; In the point cloud data collected by the line laser sensor of the robot, the projection position of the obstacle position whose obstacle scanning height is less than or equal to the installation height of the line laser sensor in the robot body on the walking plane of the robot is marked as the second specific height obstacle position; the second specific height obstacle position includes the height blind zone obstacle position; The robot selects the obstacle positions occupying the same two-dimensional coordinate position from the first specific height obstacle position and the second specific height obstacle position, and then marks the obstacle positions occupying the same two-dimensional coordinate position as the planar obstacle position, wherein the line laser sensor and the laser radar respectively scan different heights of the obstacle where the planar obstacle position is located; The obstacle scanning height is configured as the height scanned by the line laser sensor or laser radar for obstacles distributed within its scanning area in the same vertical plane.
3. The robot obstacle avoidance method according to claim 2, characterized in that: The height information converted from the point cloud data collected by the laser radar into the robot coordinate system is different from the height information converted from the point cloud data collected by the line laser sensor into the same robot coordinate system, so that the installation position of the line laser sensor in the body is determined based on the scanning blind area of the laser radar.
4. The robot obstacle avoidance method according to claim 3, characterized in that: Based on the conversion matrix between the laser radar coordinate system and the robot coordinate system, the robot converts the point cloud data collected by the laser radar into the robot coordinate system to obtain the first point cloud data; then the robot selects the two-dimensional coordinate position occupied by the point cloud whose obstacle scanning height is greater than or equal to the preset blind spot height from the first point cloud data, and then marks the two-dimensional coordinate position selected from the first point cloud data as the first specific height obstacle position; Based on the conversion matrix between the line laser sensor coordinate system and the robot coordinate system, the robot converts the point cloud data collected by the line laser sensor into the robot coordinate system to obtain second point cloud data; then the robot selects the two-dimensional coordinate position occupied by the point cloud whose obstacle scanning height is less than or equal to the installation height of the line laser sensor in the body and whose obstacle scanning height is greater than a preset ground height threshold from the second point cloud data, and then marks the two-dimensional coordinate position selected from the second point cloud data as the second specific height obstacle position; wherein, the point cloud whose obstacle scanning height is less than or equal to the preset ground height threshold is the point cloud of the ground part collected by the line laser sensor, and the two-dimensional coordinate position occupied by the point cloud of the ground part is not the obstacle position; The robot also marks the two-dimensional coordinate positions of the second specific height obstacle positions except the planar obstacle positions as height blind area obstacle positions.
5. The robot obstacle avoidance method according to claim 4, characterized in that: The robot marks the obstacle scanning height at the planar obstacle position included in the first specific height obstacle position as the first scanning height at the planar obstacle position, and also marks the obstacle scanning height at the planar obstacle position included in the second specific height obstacle position as the second scanning height at the planar obstacle position; The second scanning height at the location of the planar obstacle is less than the first scanning height at the location of the planar obstacle, and the second scanning height and the first scanning height respectively represent different heights of the obstacle contour surface of the obstacle at the location of the planar obstacle scanned jointly by the line laser sensor and the laser radar, so as to determine that the obstacle at the location of the planar obstacle is not a suspended obstacle in the area scanned jointly by the line laser sensor and the laser radar; The projection line of the obstacle where the planar obstacle is located, which is scanned jointly by the line laser sensor and the laser radar, on the walking plane of the robot is configured as the obstacle contour that the robot needs to follow in the edge walking mode, so that the walking direction formed by the robot in the edge walking mode is parallel to the obstacle contour or the tangent direction of the obstacle contour.
6. The robot obstacle avoidance method according to claim 5, characterized in that: The edge walking mode started by the robot in step B includes: The robot walks along the obstacle contour where the first obstacle at a specific height or the planar obstacle is located by adjusting its posture, so that the robot's adjusted walking direction is parallel to the tangent direction of the obstacle contour where the first obstacle at a specific height or the planar obstacle is located; When the robot, after adjusting its posture, walks along the obstacle contour where the first specific height obstacle position or the planar obstacle position is located, on the side where the body is biased toward the first specific height obstacle position or the planar obstacle position, the minimum margin distance between the edge of the body and the contour along which the robot is walking is set to be greater than or equal to the set obstacle avoidance distance.
7. The robot obstacle avoidance method according to claim 4, characterized in that: Step A includes: Step A1: The robot plans an obstacle bypassing area based on the pre-marked high blind zone obstacle position; then the robot plans a reference scanning blind zone in combination with the scanning area of the line laser sensor and the obstacle bypassing area; wherein the coverage area of the pre-marked high blind zone obstacle position does not exceed the coverage area of the scanning area of the line laser sensor on the robot's walking plane; Step A2: When the robot detects that there is an overlapping area between its body coverage area and the obstacle avoidance area, the robot adjusts its posture and then walks along the edge of the obstacle avoidance area, driving the scanning area of the linear laser sensor into the reference scanning blind area to start the obstacle avoidance walking mode; Step A3, when the robot walks along the edge of the obstacle bypassing area described in step A1, when the scanning area of the line laser sensor covers the height blind zone obstacle position outside the obstacle bypassing area described in step A1 in the walking plane of the robot, the height blind zone obstacle position outside the obstacle bypassing area described in step A1 that is currently covered is updated to the height blind zone obstacle position pre-marked in step A1, and then steps A1 to A2 are repeated until the robot completely bypasses the target obstacle while walking along the edges of each obstacle bypassing area marked successively; Among them, the obstacle at the height blind spot obstacle position is the target obstacle that the robot needs to bypass; the target obstacle is in the scanning blind spot of the laser radar in the vertical direction of the robot's walking plane.
8. The robot obstacle avoidance method according to claim 7, characterized in that: When the robot cannot plan an obstacle avoidance area based on the pre-marked height blind spot obstacle position or the height blind spot obstacle position is not marked, if the minimum distance between the first specific height obstacle position or the surface obstacle position and the edge position of the robot in its walking direction becomes smaller, until the minimum distance between the currently scanned first specific height obstacle position or the surface obstacle position and the edge position of the robot in the walking direction is the set obstacle avoidance distance, the edge walking mode described in step B is started.
9. The robot obstacle avoidance method according to claim 7, characterized in that: In step A3, the robot walks along the edge of the obstacle avoidance area to a position. If the scanning area of the line laser sensor covers at least one of the highly blind obstacle positions or multiple highly blind obstacle positions outside the obstacle avoidance area described in step A1 in the walking plane of the robot, then step A1 is executed to mark a new obstacle avoidance area and plan a new reference scanning blind area. At the same time, the robot continues to walk along the edge of the obstacle avoidance area marked in the previous step A1, and then step A2 is executed so that when the robot walks to the point where its body coverage area intersects with the new obstacle avoidance area, the robot walks along the edge of the new obstacle avoidance area by adjusting its posture.
10. The robot obstacle avoidance method according to claim 9, characterized in that: In step A1, the method for the robot to plan an obstacle bypassing area based on the pre-marked high blind spot obstacle position includes: the robot marks the smallest circular area surrounding the pre-marked high blind spot obstacle position described in step A1 as the obstacle bypassing area; Among them, the distribution range of the pre-marked high blind spot obstacle positions described in step A1 does not exceed the corresponding coverage range of the scanning area of the line laser sensor in the walking plane of the robot.
11. The robot obstacle avoidance method according to claim 10, characterized in that: In step A1, the robot sets the distance between the center of the robot body and the center of the obstacle avoidance area so that the edge of the robot body does not contact the position of the second specific height obstacle.
12. The robot obstacle avoidance method according to claim 11, characterized in that: In step A1, the method for the robot to plan a reference scanning blind area by combining the scanning area of the line laser sensor and the obstacle avoidance area includes: The robot sets a target circular area with the center of the obstacle avoidance area as the preset circle center and the preset blind area length as the radius, and then marks the target circular area as the reference scanning blind area; The robot marks the projection area of the scanning area of the line laser sensor in the walking plane of the robot as the effective scanning plane area of the line laser sensor; the robot sets the side edge of the reference scanning blind area covered by the body to be tangent to the side edge of the effective scanning plane area of the line laser sensor that is biased towards the obstacle avoidance area; Moreover, when the distance between the center of the body and the center of the obstacle avoidance area remains unchanged, the robot sets the preset blind spot length to be negatively correlated with the scanning angle of the line laser sensor, and the scanning angle of the line laser sensor is less than or equal to 180 degrees.
13. The robot obstacle avoidance method according to claim 12, characterized in that: The robot sets the radius of the reference scanning blind area to be greater than the radius of the obstacle avoidance area, and also sets the inner diameter of the annular area between the edge of the reference scanning blind area and the edge of the obstacle avoidance area to be greater than or equal to the body radius of the robot; In step A1, if the line laser sensor is installed on the central axis of the robot's body, the distance between the robot's body center and the center of the reference scanning blind area is greater than or equal to the radius of the reference scanning blind area, so that when the robot does not start walking along the edge of the obstacle avoidance area, the effective scanning plane area of the line laser sensor does not intersect with the reference scanning blind area.
14. The robot obstacle avoidance method according to claim 13, characterized in that: In step A2, the method in which the robot walks along the edge of the obstacle avoidance area to drive the scanning area of the linear laser sensor into the reference scanning blind area includes: After detecting that there is an overlapping area between the robot's body coverage area and the obstacle avoidance area through step A1, the robot rotates toward the inside of the reference scanning blind area, driving the scanning area of the line laser sensor to rotate into the reference scanning blind area, so that the effective scanning plane area of the line laser sensor intersects with the reference scanning blind area. At the same time, the robot keeps the edge of one side of the body biased toward the inside of the reference scanning blind area tangent to the edge of the obstacle avoidance area, and walks in the direction after rotation, to ensure that the robot walks along the edge of the obstacle avoidance area.
Citation Information
Cited By
An obstacle intelligent recognition method and robot based on structured light module
CN122676466A