Environment-adaptive region division method and robot

By determining the relationship between the obstacle/wall boundary and the target direction in the robot, selecting a vertical or parallel straight line as the first positioning edge, and combining it with the partition generation rules, the problem of inefficient robot area division in complex environments is solved, and efficient area division and coverage are achieved.

CN116069011BActive Publication Date: 2025-09-09HONGYANG HOME APPLIANCES
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111301707.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-04
Publication Date
2025-09-09
Estimated Expiration
2041-11-04

AI Technical Summary

Technical Problem

In the existing technology, when robots divide the workplace in a complex environment, they easily produce small fragmented areas, resulting in low work efficiency and the inability to effectively utilize environmental adaptation for area division.

Method used

By determining the relationship between the obstacle/wall boundary and the target direction, a vertical or parallel straight line is selected as the first positioning edge. Combined with the preset partition generation rules, partitions are established and expanded, and straight lines are fitted to irregular boundaries to form regular rectangular partitions.

Benefits of technology

It simplifies the complexity of zoning, improves work efficiency, and ensures the work efficiency and coverage integrity of each partition.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116069011B_ABST
    Figure CN116069011B_ABST
Patent Text Reader

Abstract

The present application provides an environment-adaptive area division method and robot, the method comprising: if the first boundary of the obstacle / wall in the target direction is not perpendicular to the target direction, using the point of the first boundary farthest from the robot in the target direction to determine a straight line perpendicular or parallel to the target direction as a first positioning edge; using the first positioning edge as a partition boundary, and on the basis of the partition boundary, establishing a partition according to a preset partition generation rule; using the boundary of the established partition as the partition boundary of the new partition, and expanding the new partition according to the partition generation rule. The present application scheme can divide irregular boundaries into regular rectangular partitions, thereby simplifying the complexity of the partition and ensuring the subsequent work efficiency in each partition.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to an environment-adaptive area division method and a robot. Background Art

[0002] Some robots need to traverse the entire workplace when performing tasks, such as service robots, sweeping robots, mopping robots, sweeping and mopping robots, window cleaning robots, etc. Such robots need to perform full-coverage path planning for the workplace when working to determine the movement path during work. When the scope of the workplace is large, the robot can first divide the workplace into multiple areas, and then plan the movement path for each area. In related technologies, the robot can divide the workplace into areas according to pre-set partition sizes to form multiple areas of uniform size and relatively neat. However, for complex environments, due to the influence of obstacles in the workplace and the edge contours of the workplace, it is easy to divide into small fragmented areas, resulting in low efficiency in subsequent work. Summary of the Invention

[0003] The purpose of the embodiments of the present application is to provide an environment-adaptive area division method and a robot for dividing the robot's workplace into areas.

[0004] On the one hand, the present application provides an environment-adaptive region division method, applied to a robot, comprising:

[0005] If the first boundary of the obstacle / wall in the target direction is not perpendicular to the target direction, a straight line perpendicular or parallel to the target direction is determined as a first positioning edge based on the point of the first boundary farthest from the robot in the target direction;

[0006] Using the first positioning edge as a partition boundary, and establishing partitions based on the partition boundary according to a preset partition generation rule;

[0007] The boundaries of the established partitions are used as the partition boundaries of the new partitions, and the new partitions are expanded according to the partition generation rules.

[0008] In one embodiment, the target direction is determined by:

[0009] Based on the linear boundaries of multiple obstacles / walls in the environmental information, the direction with the most parallel linear boundaries is determined as the designated direction;

[0010] Constructing an environment coordinate system using the specified direction as a coordinate axis direction;

[0011] Any coordinate axis direction of the environment coordinate system is used as the target direction.

[0012] In one embodiment, determining a straight line perpendicular or parallel to the target direction as a first positioning edge based on the point of the first boundary farthest from the robot in the target direction includes:

[0013] Determining a reference line of the first boundary by using the points of the first boundary that are farthest and second farthest from the robot in the target direction;

[0014] Determining whether the reference line fits the target direction; wherein the fit includes whether the reference line fits the target direction, or whether the reference line does not fit the target direction;

[0015] If the reference line fits the target direction, a straight line parallel to the target direction is determined as the first positioning edge, taking the point of the first boundary farthest from the robot in the target direction;

[0016] If the reference line does not fit the target direction, a straight line perpendicular to the target direction is determined based on the point where the first boundary is farthest from the robot in the target direction as the first positioning edge.

[0017] In one embodiment, the partition generation rules include:

[0018] If there is an obstacle / wall boundary relative to the known partition boundary within a preset distance range of the known partition boundary, a partition is generated based on the known partition boundary that fits the boundary of the obstacle / wall relative to the known partition boundary. Otherwise, a partition is generated based on the known partition boundary according to the maximum size rule or the specified size rule.

[0019] In one embodiment, before creating partitions according to the preset partition generation rules, the method further includes:

[0020] Scan the position grid data of obstacles / walls line by line within the distance range of the known partition boundary;

[0021] The row with the densest position grid data is used as the boundary position of the obstacle / wall.

[0022] In one embodiment, the first boundary of the obstacle / wall is determined as follows:

[0023] From the plurality of obstacles / wall boundaries in the target direction, determine the obstacle / wall boundary closest to the robot as the first boundary; wherein the plurality of obstacle / wall boundaries are straight lines or curves.

[0024] In one embodiment, the method further comprises:

[0025] If the first boundary is perpendicular to the target direction, the first boundary is used as a first positioning edge.

[0026] In one embodiment, before creating partitions according to the preset partition generation rules, the method further includes:

[0027] From the second boundaries of several obstacles / walls in the direction of the first positioning edge, a second boundary whose distance from the robot meets a preset distance condition is determined as the second positioning edge; wherein the second positioning edge is the partition boundary; the distance condition is that the distance from the robot is less than a set threshold and the distance from the robot is the farthest.

[0028] In one embodiment, the method further comprises:

[0029] If there are no obstacles or walls around the robot, a partition that meets the specified size principle is generated with the current position of the robot as the center.

[0030] On the other hand, the present application also provides a robot, comprising:

[0031] processor;

[0032] a memory for storing processor-executable instructions;

[0033] Wherein, the processor is configured to execute the above-mentioned environment-adaptive area division method.

[0034] In this application solution, when the first boundary of the obstacle / wall in the target direction is not perpendicular to the target direction, a straight line perpendicular or parallel to the target direction is determined based on the point of the first boundary farthest from the robot in the target direction as the first positioning edge. Based on the first positioning edge, partitions are generated and expanded according to the partition generation rules.

[0035] For situations where the boundaries of obstacles / walls are irregular, such as sharp or obtuse angles, or the boundaries of obstacles / walls are curved, the present application can perform straight line fitting on the boundaries to obtain a first positioning edge that is perpendicular or parallel to the target direction in the workplace, so that after subsequent partitioning, the irregular boundaries can be divided into regular rectangular partitions, thereby simplifying the complexity of the partitioning and ensuring subsequent work efficiency in each partition. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following briefly introduces the drawings required for use in the embodiments of the present application.

[0037] Figure 1 A schematic diagram of the structure of a robot provided in one embodiment of the present application;

[0038] Figure 2 A schematic diagram of a flow chart of an environment-adaptive area division method provided in one embodiment of the present application;

[0039] Figure 3 A schematic diagram of a first positioning edge provided in an embodiment of the present application;

[0040] Figure 4 A schematic diagram of a first positioning edge provided in another embodiment of the present application;

[0041] Figure 5 A schematic diagram of partitions provided in an embodiment of the present application;

[0042] Figure 6 A flowchart of a method for determining a target direction provided in one embodiment of the present application;

[0043] Figure 7 A schematic diagram of an environmental coordinate system provided in an embodiment of the present application;

[0044] Figure 8 A detailed flowchart of step 210 provided in one embodiment of the present application;

[0045] Figure 9 A schematic diagram of an environmental coordinate system provided in another embodiment of the present application;

[0046] Figure 10 A schematic diagram of an environmental coordinate system provided in yet another embodiment of the present application;

[0047] Figure 11 A schematic diagram of an environmental coordinate system provided in yet another embodiment of the present application;

[0048] Figure 12 A top view of a working environment provided in yet another embodiment of the present application;

[0049] Figure 13 A schematic diagram of location grid data provided in one embodiment of the present application;

[0050] Figure 14 A schematic diagram of a first positioning edge provided in yet another embodiment of the present application;

[0051] Figure 15 A top view of a working environment provided in yet another embodiment of the present application;

[0052] Figure 16 This is a block diagram of an environment-adaptive area division device provided in one embodiment of the present application. DETAILED DESCRIPTION

[0053] The technical solutions in the embodiments of the present application will be described below in conjunction with the drawings in the embodiments of the present application.

[0054] Similar reference numerals and letters denote similar items in the following drawings. Therefore, once an item is defined in one drawing, it does not need to be further defined or explained in subsequent drawings. At the same time, in the description of this application, the terms "first", "second", etc. are only used to distinguish the description and should not be understood as indicating or implying relative importance.

[0055] like Figure 1 As shown, this embodiment provides a robot 1, comprising: at least one processor 11 and a memory 12, Figure 1 In the example, a processor 11 is used. Processor 11 and memory 12 are connected via bus 10. Memory 12 stores instructions executable by processor 11. Processor 11 executes these instructions, enabling robot 1 to perform all or part of the method described in the following embodiments. In one embodiment, robot 1 may be a sweeping robot configured to perform an environment-adaptive area division method.

[0056] The memory 12 can be implemented by any type of volatile or non-volatile memory device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.

[0057] The present application also provides a computer-readable storage medium, which stores a computer program. The computer program can be executed by the processor 11 to complete the environment-adaptive area division method provided in the present application.

[0058] See also Figure 2 , is a flow chart of an environment-adaptive area division method provided in an embodiment of the present application, such as Figure 2 As shown, the method may include the following steps 210 to 230.

[0059] Step 210: If the first boundary of the obstacle / wall in the target direction is not perpendicular to the target direction, determine a straight line perpendicular or parallel to the target direction using the point of the first boundary farthest from the robot in the target direction as the first positioning edge.

[0060] The target direction is a direction determined by the robot in the workplace.

[0061] The boundary of an obstacle / wall can be straight or curved. The robot selects the boundary of the obstacle / wall in the target direction as the first boundary. Obstacles can include furniture (such as cabinets and screens) and appliances (such as refrigerators and TVs) in the work environment that limit the robot's range of motion.

[0062] After the robot determines the first boundary in the target direction, it determines whether the first boundary is perpendicular to the target direction. If the first boundary is not perpendicular to the target direction, the robot determines the point in the target direction where the first boundary is farthest from the robot and uses a line passing through this point and perpendicular or parallel to the target direction as the first positioning edge.

[0063] See also Figure 3 , is a schematic diagram of a first positioning edge provided in an embodiment of the present application, such as Figure 3 As shown in the figure, the working environment includes walls AB, AC, CD, BE, EF, and FG. When the boundary of the straight wall AC is the first boundary, point A is the point farthest from the robot in the target direction, and the dotted line passing through point A is the first positioning edge.

[0064] See also Figure 4 , is a schematic diagram of a first positioning edge provided in another embodiment of the present application, such as Figure 4 As shown in the figure, the working environment includes walls AB, AC, CD, BE, EF, and FG. When the boundary of the curved wall AC is the first boundary, the curve is composed of arc An and arc nC. Point m is the point farthest from the robot in the target direction, and the dotted line passing through point m is the first positioning edge.

[0065] Step 220: Use the first positioning edge as a partition boundary, and create a partition based on the partition boundary according to a preset partition generation rule.

[0066] Step 230: Use the boundaries of the established partition as the partition boundaries of the new partition, and expand the new partition according to the partition generation rules.

[0067] After determining the first positioning edge, the robot can use it as the partition boundary and then create partitions based on the partition generation rules. After establishing the first partition, the robot can use the first partition boundary as the partition boundary for new partitions and continue to partition according to the partition generation rules. The partitioning process continues to expand outward until the entire workplace is partitioned.

[0068] See also Figure 5 , which is a partition diagram provided by an embodiment of the present application, such as Figure 5 As shown, Figure 4After determining the first positioning edge in this way, partitions s1s2s5s4 and partitions s2s3s6s5 are divided, where s1 is the intersection of the straight line where boundary AB is located and the first positioning edge; s3 is the intersection of the straight line where boundary CD is located and the first positioning edge; line segment s4s6 is parallel to the first positioning edge; line segment s2s5 is parallel to boundaries AB and CD, and perpendicular to the first positioning edge.

[0069] When the robot plans a path for partitions s1, s2, s5, and s4, it can move along the boundary of s4A. When it reaches point A, it moves along the actual wall boundary An of partitions s1, s2, s5, and s4. When it reaches point n, it continues along the partition boundary ns5. Upon reaching point s5, it moves along boundary s5s4 to point s4, completing its movement within the inner and outer parts of the partition. It then cleans the area encircled by the robot's movement. For areas missed by the partition, such as those enclosed by s1, s2, n, m, and A, a follow-up clean can be performed after the full cleaning is complete. When the robot plans a path for partitions s2, s3, s6, and s5, it can move along the boundary of s5n. When it reaches point n, it moves along the actual wall boundary nC. When it reaches point C, it continues along the partition boundary Cs6. Upon reaching point s6, it moves along boundary s6s5 to point s5, completing its movement within the inner and outer parts of the partition. It then cleans the area encircled by the robot's movement.

[0070] In this case, after partitioning, the robot can plan the motion path for each partition to complete the work of each partition.

[0071] Through the above measures, the robot can perform straight line fitting on obstacles / wall boundaries with irregular boundary directions, and obtain the first positioning edge as the basis for partitioning. In this case, after partitioning, the irregular boundary can be divided into regular rectangular partitions, thereby realizing the division of multiple regular partitions in the presence of irregular boundaries in the workplace, which not only simplifies the complexity of partitioning, but also ensures the subsequent work efficiency in each partition.

[0072] In one embodiment, before determining the first positioning edge, the robot can determine the target direction in the workplace. Figure 6 , which is a flow chart of a method for determining a target direction provided by an embodiment of the present application, such as Figure 6 As shown, the method may include the following steps 610 to 630:

[0073] Step 610: Based on the linear boundaries of multiple obstacles / walls in the environmental information, determine the direction with the most parallel linear boundaries as the designated direction.

[0074] Environmental information refers to the location of walls and obstacles. The robot can obtain environmental information by detecting its surroundings using various sensors it carries. Sensors such as lidar and 3D Time of Flight (3D Time of Flight) can be used.

[0075] The robot can determine the boundaries of several obstacles / walls from the environmental information, select the straight line boundaries from them, and take the direction with the most parallel straight line boundaries as the designated direction. Figure 3 For example, the robot can determine that all wall boundaries are straight lines, that wall boundary AB is parallel to wall boundary CD, and that wall boundary BE is parallel to wall boundary FG. In this case, the robot can use the direction of wall boundaries AB and CD as the designated direction, or the direction of wall boundaries BE and FG as the designated direction.

[0076] Step 620: Construct an environment coordinate system using the specified direction as a coordinate axis direction;

[0077] Step 630: Use any coordinate axis direction of the environment coordinate system as the target direction.

[0078] After determining the specified direction, the robot can use the specified direction as a coordinate axis direction and its own position as the coordinate origin to construct the environment coordinate system. Figure 7 , is a schematic diagram of an environment coordinate system provided by an embodiment of the present application, such as Figure 7 As shown in the figure, point O is the current position of the robot, OX is one coordinate axis after determining the specified direction and coordinate origin, and OY is another coordinate axis.

[0079] After constructing the environment coordinate system, the robot can use any coordinate axis direction as the target direction. Figure 7 For example, both the OX direction and the OY direction can be used as the target direction.

[0080] In one embodiment, see Figure 8 , which is a detailed flow chart of step 210 provided in an embodiment of the present application, as shown Figure 8 As shown, the method may include the following steps 211 to 214:

[0081] Step 211: Determine a reference line of the first boundary using the points of the first boundary that are farthest and second farthest from the robot in the target direction.

[0082] The robot can select, from multiple points on the first boundary, the point farthest and the point second farthest from the robot in the target direction, and use the line segment formed by these two points as a reference line for the first boundary. The reference line can indicate the general direction of the first boundary between the farthest point and the second farthest point.

[0083] Here, when the robot is operating, it can detect multiple discrete points on the first boundary, rather than an infinite number of points. In one case, the farthest and second-farthest points can be general points detected in the target direction. In another case, if the first boundary is a straight line, the robot can select the farthest and second-farthest points from the endpoints; in this case, the selected points are the two endpoints of the line. If the first boundary is a curve, the robot can select the farthest and second-farthest points from the endpoints and vertices of the arcs that constitute the curve.

[0084] by Figure 7 For example, the point farthest from the robot's position O in the target direction OX is point A, and the second farthest point is point C. At this time, the reference line of the first boundary AC coincides with the first boundary.

[0085] See also Figure 9 , is a schematic diagram of an environmental coordinate system provided by another embodiment of the present application, such as Figure 9 As shown in the figure, point O is the current position of the robot, OX is one coordinate axis after determining the specified direction and coordinate origin, and OY is another coordinate axis; the direction of OX is the target direction, the farthest point on the first boundary AC is point m, and the second farthest point is point C.

[0086] See also Figure 10 , which is a schematic diagram of an environment coordinate system provided by another embodiment of the present application, such as Figure 10 As shown, the point farthest from the robot's position O in the target direction OX is point A, and the second farthest point is point C. At this time, the reference line of the first boundary AC coincides with the first boundary.

[0087] See also Figure 11 , which is a schematic diagram of an environment coordinate system provided by another embodiment of the present application, such as Figure 11 As shown in the figure, point O is the current position of the robot, OX is one coordinate axis after determining the specified direction and coordinate origin, and OY is another coordinate axis; the direction of OX is the target direction, the farthest point on the first boundary AC is point m, and the second farthest point is point C.

[0088] Step 212: Determine whether the reference line fits the target direction; wherein the fit includes whether the reference line fits the target direction, or whether the reference line does not fit the target direction.

[0089] Here, alignment is determined by the non-obtuse angle between the reference line and the target direction. When this angle is between 0 and 45 degrees, the reference line is aligned with the target direction; when the angle is greater than 45 degrees and less than or equal to 90 degrees, the reference line is not aligned with the target direction.

[0090] For example, after determining the reference line, the robot can determine the slope of the reference line based on the coordinates of the two end points of the reference line, and can determine the coordinate axis to which the reference line is close based on the slope, thereby determining the fit between the reference line and the target direction. Figure 7 and Figure 9 In the scene, the reference lines are all close to the Y axis and do not fit the target direction. Figure 10 and Figure 11 In the scenario, the reference line is close to the target direction where the X axis is located. Step 213: If the reference line is close to the target direction, a straight line parallel to the target direction is determined based on the point of the first boundary that is farthest from the robot in the target direction as the first positioning edge.

[0091] When the reference line fits the target direction, the robot can determine the straight line passing through the farthest point and parallel to the target direction as the first positioning edge.

[0092] by Figure 10 Taking the middle working place as an example, the straight line passing through the farthest point A and parallel to the target direction OX is Figure 10 The straight line on which the middle boundary AB lies is the first locating edge.

[0093] Step 214: If the reference line does not fit the target direction, determine a straight line perpendicular to the target direction using the point of the first boundary that is farthest from the robot in the target direction as the first positioning edge.

[0094] When the reference line does not fit the target direction, the robot can determine the straight line passing through the farthest point and perpendicular to the target direction as the first positioning edge.

[0095] by Figure 7 Taking the middle working place as an example, the straight line passing through the farthest point A and perpendicular to the target direction OX is Figure 3 The dotted line in the figure is the first positioning edge. Figure 9 Taking the middle workplace as an example, the straight line passing through the farthest point m and perpendicular to the target direction OX is Figure 4 The dotted line in the figure is the first positioning edge.

[0096] In one embodiment, when the robot performs partitioning according to the partition generation rule, it can determine whether there is an obstacle / wall boundary opposite to the known partition boundary within a preset distance range of the known partition boundary.

[0097] Here, the preset distance range is used to limit the position of another boundary relative to the known partition boundary. The distance range can limit the minimum distance between the two relative boundaries, the maximum distance between the two relative boundaries, or both the minimum and maximum distances between the two relative boundaries.

[0098] The distance range can be adjusted accordingly for different work scenarios. For example, if the workplace is a residence, the partition size can be (4±0.5) meters * (4±0.5) meters, and the distance range can be 3.5 to 4.5 meters; if the workplace is a factory or basement, the partition size can be (9±0.5) meters * (9±0.5) meters, and the distance range can be 8.5 to 9.5 meters.

[0099] On the one hand, if there is an obstacle / wall boundary opposite to the known partition boundary within a preset distance range of the known partition boundary, the robot can generate a partition that fits the boundary of the opposite obstacle / wall based on the known partition boundary.

[0100] In other words, when there is a relative obstacle / wall boundary within a preset distance range of a known partition boundary, the robot can use the relative obstacle / wall boundary as another partition boundary, thereby forming a partition with the known partition boundary and the other boundary. Figure 5 For example, the dashed line is the first positioning edge, which is also the known partition boundary. If a wall boundary FG is determined to exist within the distance range of the dashed line, the line along which boundary FG lies can be used as the boundary opposite to the known partition boundary. Based on these two boundaries, after determining the other two boundaries, the partition can be obtained.

[0101] On the other hand, if there is no relative obstacle / wall boundary within the preset distance range of the known partition boundary, the robot can generate partitions based on the known partition boundary according to the maximum size rule or the specified size rule.

[0102] In one scenario, when partitions are generated according to the maximum size rule, the robot can determine the location of the relative boundary of the known partition as the farthest point from the known partition boundary. For example, if the distance range is 3.5 to 4.5 meters and there are no obstacles or walls within this distance range, the location 4.5 meters from the known partition boundary can be determined as the relative boundary of the known partition boundary.

[0103] See also Figure 12 , is a top view of a working environment provided by another embodiment of the present application, such as Figure 12 As shown, the dashed line passing through point m on boundary AC is the first positioning edge, which is also the known partition boundary. Within the distance range of the known partition boundary, there are no obstacles or wall boundaries. Therefore, another boundary is determined at the position farthest from the first positioning edge. This boundary intersects boundary AB at point E and boundary CD at point G.

[0104] In another scenario, a boundary is generated according to a specified size rule. The robot can determine the location of the relative boundary of a known partition boundary at a distance of the specified size from the known partition boundary. For example, the distance range is 3.5 to 4.5 meters, and the specified size is 4 meters. If there are no obstacles or walls within this distance range, the robot can determine the location of the relative boundary of the known partition boundary at a distance of 4 meters from the known partition boundary.

[0105] In one embodiment, before creating zones according to the zone generation rules, the robot can use its onboard sensors to scan row-by-row for position grid data of obstacles / walls within a distance range of known zone boundaries. The position grid data is obtained by dividing the area scanned by the sensors into grids and assigning values ​​to each grid based on the obstacle / wall scan results.

[0106] The robot uses the row with the most position grid data as the boundary of the obstacle / wall. Because sensor measurement accuracy and confidence decrease with distance, the row with the most position grid data is considered the actual location of the obstacle / wall boundary.

[0107] See also Figure 13 , which is a schematic diagram of the position grid data provided by an embodiment of the present application, such as Figure 13 As shown in the figure, the robot divides the range from the known partition boundary Ax to A+x into a grid of 9 rows and 15 columns, and assigns a value to the corresponding grid when an obstacle or wall is scanned. Figure 13 The black grids in the middle are assigned values, while the gray grids are unassigned values. As can be seen, the row below the known partition boundary A has six assigned grids. This row has the densest grid data, so this row is the location of the obstacle / wall boundary.

[0108] In one embodiment, the robot may determine a first boundary before determining the first positioning edge. After determining the target direction, the robot may determine a plurality of obstacle / wall boundaries that are inconsistent with the target direction. Here, the obstacle / wall boundaries may be straight lines or curves.

[0109] The robot may determine the obstacle / wall boundary closest to the robot from among several obstacle / wall boundaries in the target direction as the first boundary.

[0110] by Figure 11 For example, the target direction is the direction of OX, the directions of boundaries AB, CD, and EF are consistent with the target direction, and the directions of boundaries AC, BE, and FG are different from the target direction. The robot can select the nearest boundary AC from the boundaries in the target direction as the first boundary.

[0111] Through the above measures, when there are multiple obstacles / wall boundaries in the target direction, partitioning can be started from the nearest boundary, thereby avoiding omissions during partitioning and reducing ineffective movement of the robot.

[0112] In one embodiment, after the robot determines the first boundary in the target direction, it determines whether the first boundary is perpendicular to the target direction. If the first boundary is perpendicular to the target direction, the robot can directly use the first boundary as the first positioning edge.

[0113] See also Figure 14 , is a schematic diagram of a first positioning edge provided in another embodiment of the present application, such as Figure 14 As shown, Figure 14 As shown, the target direction is the direction of the boundary AB, and the boundary AC is the first boundary in the target direction. Since the boundary AC is perpendicular to the target direction, the boundary AC can be directly used as the first positioning edge.

[0114] Through this measure, when the boundary of the obstacle / wall is relatively regular, the boundary of the obstacle / wall is directly selected as the first positioning edge, so as to achieve the partitioning of the workplace while fitting the boundary of the obstacle / wall as closely as possible.

[0115] In one embodiment, after determining the first positioning edge and before establishing the partition according to the partition generation rule, the robot may determine the partition boundary adjacent to the first positioning edge.

[0116] The robot can identify a second boundary from among several obstacle / wall second boundaries in the direction of the first positioning edge, whose distance from the robot meets a preset distance condition, as the second positioning edge. The second boundary is the obstacle / wall boundary in the direction of the first positioning edge, and the second positioning edge can serve as a partition boundary. The distance condition is that the distance from the robot is less than a set threshold and the distance from the robot is the farthest.

[0117] Here, the threshold can be an empirical value to ensure that after the first partition is established, the robot is located within it, allowing the robot to subsequently expand to other partitions from this partition. For example, the partition generation rule determines whether there is an obstacle / wall boundary opposite the known partition boundary within a distance range of 3.5 to 4.5 meters. In this case, the threshold can be 4.5 meters.

[0118] by Figure 4 For example, after determining that the dotted line passing through point m is the first positioning edge, the second boundaries AB and CD of the wall can be determined in the direction of the first positioning edge. The distances between the second boundaries AB and CD and the robot are both less than the set threshold. The second boundary AB is the farthest from the robot and can be determined as the second positioning edge.

[0119] This approach allows the workplace to be partitioned while closely following the boundaries of obstacles and walls, avoiding missed areas and reducing ineffective robot movement. Furthermore, it ensures that the robot can start from the first partition and expand to other partitions, making the partitioning process easier to plan.

[0120] In one embodiment, when a robot is creating partitions in its workplace, if there are no obstacles or walls around it, it can generate partitions that meet a specified size principle, centered on the robot's current location. If there are no obstacles or walls within a preset distance range in all directions of the robot, the robot can generate rectangular partitions with a specified boundary length, centered on its current location. For example, if the specified size is 4 meters, a 4x4 rectangular partition can be generated.

[0121] See also Figure 15 , is a top view of a working environment provided by another embodiment of the present application, such as Figure 15 As shown, O is the position of the robot. The robot can use O as the center point to generate a partition mnhk with a boundary length of a specified size.

[0122] After creating a partition based on a specified size principle, you can then expand outward based on that partition to create more partitions. Creating regular rectangular partitions based on a specified size principle ensures flexibility in subsequent partitioning.

[0123] Figure 16 FIG. 1 is a block diagram of an environment-adaptive region division device according to an embodiment of the present invention. Figure 16 As shown, the device may include:

[0124] A determination module 1610 is configured to, if a first boundary of the obstacle / wall in the target direction is not perpendicular to the target direction, determine a straight line perpendicular or parallel to the target direction using a point of the first boundary that is farthest from the robot in the target direction as a first positioning edge;

[0125] A generating module 1620 is configured to use the first positioning edge as a partition boundary and, based on the partition boundary, create a partition according to a preset partition generation rule;

[0126] The expansion module 1630 is configured to use the boundaries of the established partitions as the boundaries of the new partitions and expand the new partitions according to the partition generation rules.

[0127] The implementation process of the functions and effects of each module in the above-mentioned device is specifically described in the implementation process of the corresponding steps in the above-mentioned environment-adaptive area division method, and will not be repeated here.

[0128] In several embodiments provided in this application, the disclosed devices and methods may also be implemented in other ways. The device embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings show the possible architectures, functions, and operations of the devices, methods, and computer program products according to multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram may represent a module, a program segment, or a portion of code, and the module, program segment, or a portion of code contains one or more executable instructions for implementing the specified logical functions. In some alternative implementations, the functions marked in the boxes may also occur in an order different from that marked in the accompanying drawings. For example, two consecutive boxes may actually be executed substantially in parallel, or they may sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart, may be implemented using a dedicated hardware-based system that performs the specified functions or actions, or may be implemented using a combination of dedicated hardware and computer instructions.

[0129] In addition, the functional modules in each embodiment of the present application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0130] If the function is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a number of instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the various embodiments of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

Claims

1. An environment-adaptive region division method, applied to a robot, characterized in that: include: If the first boundary of the obstacle / wall in the target direction is not perpendicular to the target direction, determine a straight line perpendicular or parallel to the target direction at the point farthest from the robot in the target direction as the first positioning edge; Using the first positioning edge as a partition boundary, and establishing partitions based on the partition boundary according to a preset partition generation rule; The boundaries of the established partitions are used as the partition boundaries of the new partitions, and the new partitions are expanded according to the partition generation rules.

2. The method according to claim 1, characterized in that The target direction is determined as follows: Based on the linear boundaries of multiple obstacles / walls in the environmental information, the direction with the most parallel linear boundaries is determined as the designated direction; Constructing an environment coordinate system using the specified direction as a coordinate axis direction; Any coordinate axis direction of the environment coordinate system is used as the target direction.

3. The method according to claim 2, characterized in that The step of determining a straight line perpendicular to or parallel to the target direction based on the point of the first boundary that is farthest from the robot in the target direction as a first positioning edge includes: Determining a reference line of the first boundary by using the points of the first boundary that are farthest and second farthest from the robot in the target direction; Determining whether the reference line fits the target direction; wherein the fit includes whether the reference line fits the target direction, or whether the reference line does not fit the target direction; If the reference line fits the target direction, a straight line parallel to the target direction is determined as the first positioning edge, taking the point of the first boundary farthest from the robot in the target direction; If the reference line does not fit the target direction, a straight line perpendicular to the target direction is determined based on the point where the first boundary is farthest from the robot in the target direction as the first positioning edge.

4. The method according to claim 1, wherein The partition generation rules include: If there is an obstacle / wall boundary relative to the known partition boundary within a preset distance range of the known partition boundary, a partition is generated based on the known partition boundary that fits the boundary of the obstacle / wall relative to the known partition boundary. Otherwise, a partition is generated based on the known partition boundary according to the maximum size rule or the specified size rule.

5. The method according to claim 4, characterized in that Before establishing partitions according to the preset partition generation rules, the method further includes: Scan the position grid data of obstacles / walls line by line within the distance range of the known partition boundary; The row with the densest position grid data is used as the boundary position of the obstacle / wall.

6. The method according to claim 1, characterized in that The first boundary of the obstacle / wall is determined as follows: From a plurality of obstacle / wall boundaries that are not in the target direction, determine the obstacle / wall boundary closest to the robot as the first boundary; wherein the plurality of obstacle / wall boundaries are straight lines or curves.

7. The method according to claim 1, characterized in that The method further comprises: If the first boundary is perpendicular to the target direction, the first boundary is used as a first positioning edge.

8. The method according to claim 1, characterized in that Before establishing partitions according to the preset partition generation rules, the method further includes: From the second boundaries of several obstacles / walls in the direction of the first positioning edge, a second boundary whose distance from the robot meets a preset distance condition is determined as the second positioning edge; wherein the second positioning edge is the partition boundary; the distance condition is that the distance from the robot is less than a set threshold and the distance from the robot is the farthest.

9. The method according to claim 1, characterized in that The method further comprises: If there are no obstacles or walls around the robot, a partition that meets the specified size principle is generated with the current position of the robot as the center.

10. A robot, characterized in that: The robot comprises: processor; a memory for storing processor-executable instructions; The processor is configured to execute the environment-adaptive area division method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Autonomous robot, walking path planning method and device thereof and storage medium

    CN112306050A

  • Method for cleaning room, involves defining rectangular area to entire area to be cleaned, where driving lines for cleaning device are equidistant in rectangular area parallel to one side of rectangle part and end in partitioned areas

    DE102010000174A1