Environment-adaptive region partitioning method and robot
By defining obstacles or wall boundaries as positioning edges in the robot and generating appropriately sized partitions using partition generation rules, the problem of fragmented partitions in complex environments is solved, improving robot efficiency and path planning accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HONGYANG HOME APPLIANCES
- Filing Date
- 2021-09-28
- Publication Date
- 2026-07-03
AI Technical Summary
In existing technologies, robots tend to create small, fragmented areas when dividing a workplace in a complex environment, resulting in low work efficiency and an inability to effectively conform to obstacles or wall boundaries.
By determining the boundaries of obstacles or walls based on environmental information as positioning edges, partitions are generated using partition generation rules, including partitions that conform to the boundaries of obstacles or walls and partitions generated by maximum size rules or specified size principles, ensuring that the partition boundaries conform to environmental characteristics.
It achieves adaptive area division, avoiding partitions that are too small or too large, improving the efficiency and accuracy of path planning, and ensuring that the robot can effectively cover the workplace.
Smart Images

Figure CN115877829B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to an environment-adaptive region division method and a robot. Background Technology
[0002] Some robots need to traverse the entire workplace when performing tasks, such as service robots, robotic vacuum cleaners, robotic mops, combined vacuum and mop robots, and window cleaning robots. These robots require comprehensive path planning across the entire workplace to determine their movement routes. When the workplace is large, the robot can first divide it into multiple areas and then plan a movement path for each area. In related technologies, robots can divide the workplace into areas based on pre-set partition sizes, forming multiple relatively uniform and orderly areas. However, in complex environments, obstacles and the edge contours of the workplace can easily lead to fragmented small areas, resulting in low subsequent work efficiency. Summary of the Invention
[0003] The purpose of this 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, this application provides an environment-adaptive region partitioning method for robots, including:
[0005] The positioning edge is determined based on environmental information, wherein the positioning edge is the boundary of the obstacle / wall, and the positioning edge includes a first positioning edge and a second positioning edge that intersect the line.
[0006] The positioning edge is used as the partition boundary, and the partition is established according to the preset partition generation rules; wherein, the preset partition generation rules include: if there is an obstacle / wall boundary opposite to the known partition boundary within a set distance range of the known partition boundary, then a partition that fits the boundary of the opposite obstacle / wall is generated based on the known partition boundary; otherwise, the partition is generated according to the preset maximum size rule or specified size principle, using the positioning edge as the partition boundary.
[0007] The boundaries of the existing partitions are used as the boundaries of the new partitions, and the new partitions are expanded according to the preset partition generation rules.
[0008] In one embodiment, the set distance range includes:
[0009] The distance to the known partition boundary is less than the first distance.
[0010] In one embodiment, the set distance range includes:
[0011] The distance to the known partition boundary is less than the first distance and greater than the second distance.
[0012] In one embodiment, determining the location edge based on environmental information includes:
[0013] Based on environmental information, the boundary of the nearest obstacle / wall to the robot is determined as the first defined edge.
[0014] In one embodiment, determining the location edge based on environmental information includes:
[0015] Based on environmental information, the boundary of an obstacle / wall that is parallel to the first positioning edge and whose distance from the robot meets a preset condition in a specified direction is used as the second positioning edge;
[0016] The preset conditions include: the distance to the robot is less than a set threshold.
[0017] In one embodiment, the preset conditions further include: the distance to the robot is less than a set threshold, and the distance to the robot is at its maximum.
[0018] In one embodiment, generating partitions that conform to the boundaries of the opposing obstacles / walls based on known partition boundaries includes:
[0019] If, within a set distance range of a known partition boundary, there are multiple boundaries of obstacles / walls opposite to the known partition boundary, the boundary of the farthest obstacle / wall will be matched.
[0020] In one embodiment, the method further includes:
[0021] If neither the first positioning edge nor the second positioning edge exists around the robot, then a partition satisfying the specified size principle is generated with the robot's current position as the center.
[0022] In one embodiment, the method further includes:
[0023] If there is only one wall or several parallel walls around the robot, determine the boundary of the wall closest to the robot as the first positioning edge;
[0024] Using the robot's current position as the center position in the direction parallel to the first positioning edge, and the position of the first positioning edge as the partition boundary, a partition that satisfies the specified size principle is generated.
[0025] On the other hand, this application also provides a robot, the robot comprising:
[0026] processor;
[0027] Memory used to store processor-executable instructions;
[0028] The processor is configured to execute the aforementioned environment-adaptive region partitioning method.
[0029] This application's solution determines the positioning edge based on environmental information, where the positioning edge is the boundary of an obstacle or wall. The positioning edge serves as the partition boundary, and partitions are generated according to partition generation rules. These rules include: if an obstacle / wall boundary exists within a set distance of the known partition boundary, then a partition is generated that fits the boundary of the opposite obstacle / wall based on the known partition boundary; otherwise, partitions are generated using the positioning edge as the partition boundary according to a preset maximum size rule or a specified size principle. The boundaries of existing partitions are used as the partition boundaries of new partitions, and the new partitions are expanded according to the preset partition generation rules.
[0030] The partitions generated by this application can adaptively conform to walls or obstacles. The partitions are only generated when there are corresponding obstacles / walls within a set distance range of the known partition boundaries. This prevents the partition boundaries from being too far away, which would make the partitions too large, and also prevents the partition boundaries from being too close, which would make the partitions too small. This ensures that the partitions conform to the boundaries of obstacles / walls while maintaining an appropriate size.
[0031] In addition, based on environmental information, the boundary of the nearest obstacle / wall to the robot is determined as the first positioning edge, and the boundary of the obstacle / wall in a specified direction parallel to the first positioning edge that meets the preset conditions is determined as the second positioning edge. The preset conditions include: the distance to the robot is less than a set threshold, which limits the distance between the second positioning edge and the robot, so that the robot is currently located in the first partition generated by the first positioning edge and the second positioning edge, making it convenient for the robot to clean the first partition.
[0032] Additionally, if there are multiple obstacles or walls opposite the known partition boundary within a set distance, the boundary of the furthest obstacle or wall can be used as the boundary. This measure allows for a larger partition size while adhering to the wall principle, thus preventing the partitions from becoming too small and numerous due to dense walls or obstacles, which could negatively impact subsequent path planning tasks. Attached Figure Description
[0033] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly described below.
[0034] Figure 1This is a schematic diagram of the structure of a robot provided in one embodiment of this application;
[0035] Figure 2 A flowchart illustrating an environment-adaptive region partitioning method provided in an embodiment of this application;
[0036] Figure 3 A top view of a working environment provided in an embodiment of this application;
[0037] Figure 4 A schematic diagram of an extended partition provided in an embodiment of this application;
[0038] Figure 5 A schematic diagram of an extended partition provided in another embodiment of this application;
[0039] Figure 6 A top view of a working environment provided for another embodiment of this application;
[0040] Figure 7 A top view of a working environment provided in yet another embodiment of this application;
[0041] Figure 8 A top view of a working environment provided in an embodiment of this application;
[0042] Figure 9 A top view of a working environment provided for another embodiment of this application;
[0043] Figure 10 A top view of a working environment provided in yet another embodiment of this application;
[0044] Figure 11 This is a schematic diagram of partitioning provided in one embodiment of this application;
[0045] Figure 12 A partition diagram provided for another embodiment of this application;
[0046] Figure 13 This is a flowchart illustrating an environment-adaptive region partitioning method provided in an embodiment of this application. Detailed Implementation
[0047] The technical solutions in the embodiments of this application will now be described with reference to the accompanying drawings.
[0048] Similar reference numerals and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be further defined and explained in subsequent figures. Furthermore, in the description of this application, terms such as "first," "second," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.
[0049] like Figure 1 As shown, this embodiment provides a robot 1, including: at least one processor 11 and a memory 12. Figure 2 Taking a processor 11 as an example, the processor 11 and memory 12 are connected via a bus 10. The memory 12 stores instructions that can be executed by the processor 11. The instructions are executed by the processor 11 to enable the electronic device 1 to perform all or part of the processes of the methods described in the embodiments below. In one embodiment, the robot 1 may be a sweeping robot used to perform an environment-adaptive area division method.
[0050] The memory 12 can be implemented by any type of volatile or non-volatile storage 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 red-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk or optical disk.
[0051] This application also provides a computer-readable storage medium storing a computer program that can be executed by a processor 11 to perform the environment-adaptive region partitioning method provided in this application.
[0052] See Figure 2 This is a flowchart illustrating an environment-adaptive region partitioning method provided in an embodiment of this application, as shown below. Figure 2 As shown, the method may include steps 210-230.
[0053] Step 210: Determine the positioning edge based on environmental information, where the positioning edge is the boundary of the obstacle / wall, and the positioning edge includes the first positioning edge and the second positioning edge that intersect the line.
[0054] Environmental information can include the location information of walls and obstacles. Obstacles can include furniture (such as cabinets, screens, etc.) and appliances (such as refrigerators, televisions, etc.) in the work environment that restrict the robot's range of movement. During movement, the robot can move as close as possible to walls or obstacles, using its onboard radar, distance sensors, laser sensors, depth sensors, and other devices to detect environmental information.
[0055] In one scenario, the robot can acquire workplace environmental information in real time during its movement and execute the proposed area division method based on that information. In another scenario, the robot can acquire workplace environmental information before executing the proposed area division method and execute it based on that existing information. In this case, the robot can directly acquire pre-configured environmental information (e.g., a map of the workplace) or directly use environmental information detected during previous movement.
[0056] The robot can determine the boundaries of obstacles or walls from environmental information and identify the positioning edges based on these boundaries. From all the boundaries of obstacles and walls, the robot can select two intersecting straight lines as the first and second positioning edges, respectively.
[0057] See Figure 3 A top view of the working environment provided in one embodiment of this application, as shown below. Figure 3 As shown, the robot's working environment includes walls AB, AC, CD, BE, EF, and FG; wall AB intersects the line containing wall AC, wall AC intersects the line containing wall CD, wall AB intersects the line containing wall BE, wall BE intersects the line containing wall EF, wall EF intersects the line containing wall FG, and wall AC intersects the line containing wall EF.
[0058] against Figure 3 In the working environment, the robot can select a pair of walls from the above wall combinations as positioning edges.
[0059] For example, the robot can randomly select a pair of walls whose lines intersect as positioning edges. Alternatively, the robot can select the first pair of walls whose lines intersect as positioning edges. Or, after determining multiple pairs of walls whose lines intersect, the robot can select the pair of walls with the largest sum of wall lengths as positioning edges.
[0060] Step 220: Use the positioning edge as the partition boundary and create the partition according to the preset partition generation rules; wherein, the preset partition generation rules include: if there is an obstacle / wall boundary opposite to the known partition boundary within the set distance range of the known partition boundary, then generate a partition that fits the boundary of the opposite obstacle / wall based on the known partition boundary; otherwise, generate the partition according to the preset maximum size rule or specified size principle using the positioning edge as the partition boundary.
[0061] Here, a distance range is set to limit the location of the other boundary.
[0062] After determining the positioning edges, the robot can determine the other boundaries of the partition based on these edges. Using the first and second positioning edges as the partition boundaries, for each partition boundary, the robot can determine whether there are any obstacles or walls opposing that partition boundary within a set distance range of the known partition boundary. Figure 3 For example, if the positioning walls AC and CD are used as the partition boundaries, then within the set distance range of wall AC, it is possible to check whether there are obstacles or wall boundaries opposite to wall AC; within the set distance range of wall CD, it is possible to check whether there are obstacles or wall boundaries opposite to wall CD.
[0063] On the one hand, for any partition boundary, if there is an obstacle or wall boundary opposite to that partition boundary within a set distance range, then the boundary of the obstacle or wall can be used as the new partition boundary. Figure 3 For example, taking the positioning walls AC and CD as the partition boundaries, for wall AC, there is wall FG within a set distance range. At this time, wall FG can be used as the new partition boundary.
[0064] On the other hand, for any partition boundary, if there is no obstacle or wall boundary opposite to that partition boundary within a set distance range, the robot can define a new partition boundary.
[0065] In one embodiment, when defining custom partition boundaries, the robot can generate new partition boundaries according to the maximum size rule, such that the new partition boundaries and the known partition boundaries can form a partition of the maximum size. Figure 3 For example, taking the positioning walls AC and CD as the partition boundaries, for wall CD, there are no relative obstacles or wall boundaries within the set distance range (wall AB is outside the set distance range). At this time, within the set distance range of wall CD, the farthest distance position can be customized as the new partition boundary according to the maximum size rule.
[0066] In one embodiment, when customizing partition boundaries, the robot can generate new partition boundaries according to specified size principles. (Continuing with...) Figure 3 For example, taking the positioning walls AC and CD as the partition boundaries, if there are no relative obstacles or wall boundaries within the set distance range for wall CD (wall AB is outside the set distance range), then a new partition boundary can be generated at a position with a specified distance from wall CD.
[0067] When creating partitions based on the known partition boundaries using the first and second positioning edges, the following situations may be included:
[0068] In one scenario, there are relative obstacles or wall boundaries within the set distance range of both the first and second positioning edges. In this case, a partition is established using the first positioning edge, the second positioning edge, the boundary of the obstacle or wall opposite to the first positioning edge, and the boundary of the obstacle or wall opposite to the second positioning edge.
[0069] In another scenario, there is a boundary of an obstacle or wall within the set distance range of the first positioning edge, but no boundary of an obstacle or wall within the set distance range of the second positioning edge. In this case, a partition is constructed using the first positioning edge, the second positioning edge, the boundary of the obstacle or wall opposite to the first positioning edge, and a partition boundary defined based on the second positioning edge according to the maximum size rule or specified size principle.
[0070] In another scenario, there are no opposing obstacles or wall boundaries within the set distance range of the first positioning edge, but there are opposing obstacles or wall boundaries within the set distance range of the second positioning edge. In this case, a partition is constructed using the first positioning edge, the second positioning edge, the boundary of the obstacle or wall opposite to the second positioning edge, and a partition boundary defined based on the first positioning edge according to the maximum size rule or specified size principle.
[0071] In another scenario, there are no relative obstacles or wall boundaries within the set distance range of the first and second positioning edges. In this case, a partition is constructed using the first positioning edge, the second positioning edge, a partition boundary defined based on the first positioning edge according to the maximum size rule or specified size principle, and a partition boundary defined based on the second positioning edge according to the maximum size rule or specified size principle.
[0072] Step 230: Use the boundaries of the existing partitions as the boundaries of the new partitions, and expand the new partitions according to the preset partition generation rules.
[0073] After constructing the partitions, the robot can use the boundaries of the existing partitions as the boundaries of the new partitions. Based on these known boundaries, the robot can then expand the new partitions according to the aforementioned partition generation rules.
[0074] See Figure 4 This is a schematic diagram of an extended partition provided in an embodiment of this application, as shown below. Figure 4 As shown, a room in the workplace includes walls AB, AC, CD, BE, EF, and FG. Using the positioning edges AB and AC as partition boundaries, the first partition constructed according to the partition generation rules is named Amnh. The robot can then use the partition boundary mn of this first partition as the partition boundary of a new partition, and expand it to create new partitions mnqp according to the partition generation rules.
[0075] See Figure 5This is a schematic diagram of an extended partition provided in another embodiment of this application, as shown below. Figure 5 As shown, a room in the workplace includes walls AB, AC, CD, BE, EF, and FG. Using the positioning edges AB and AC as partition boundaries, the first partition, Amnh, is constructed according to the partition generation rules. The robot can then use the partition boundary hn of this first partition as the partition boundary of a new partition, and expand it to create new partitions hnzw according to the partition generation rules.
[0076] In workplaces where areas are not yet defined, a robot can use any boundary of an existing partition as the boundary of a new partition to expand outwards and create new partitions. If one boundary of a new partition is determined, the positions of adjacent partition boundaries are already determined. Figure 4 For example, when the partition boundary mn is the partition boundary of the new partition, the two partition boundaries adjacent to the partition boundary mn are located on the line containing the boundary Am and the line containing the boundary hn, respectively.
[0077] At this point, the robot, according to the partitioning generation rules, determines the boundary opposite to the current new partition's boundary, thus constructing the new partition. (Continuing with...) Figure 4 For example, when the partition boundary mn is used as the partition boundary of the new partition, the partition boundary pq relative to mn is determined according to the partition generation rules, so that the new partition mnqp can be determined based on the partition boundaries mn and pq.
[0078] For ease of description, the new partition boundary selected by the robot is referred to as the target partition boundary. The robot can determine whether there is an obstacle or wall boundary opposite to the target partition boundary within a set distance range of the target partition boundary. On the one hand, if an obstacle or wall boundary exists, a new partition boundary of the same length as the target partition boundary can be determined at the position of the straight line where the obstacle or wall boundary is located. On the other hand, if no obstacle or wall boundary exists, the robot can determine the position of the partition boundary opposite to the target partition boundary according to the maximum size rule or the specified size principle, and determine a new partition boundary of the same length as the target partition boundary at that position.
[0079] In one embodiment, based on the current partition, the robot can determine whether a boundary coincides with the boundary of an obstacle or wall according to the order of distances between each boundary and itself from smallest to largest. The robot can take the first partition boundary that does not coincide with the boundary of an obstacle or wall as the target partition boundary, and use the target partition boundary as the new partition boundary to expand outward.
[0080] This measure can reduce unnecessary movement and improve partitioning efficiency.
[0081] The robot can continuously expand outwards, using the boundaries of the established partitions as the boundaries of new partitions, until the entire workplace is divided.
[0082] In one embodiment, the distance range includes a distance from a known partition boundary that is less than a first distance. Here, the first distance can be pre-configured based on the specific circumstances of the workplace. For example, if the workplace is a residence, the first distance can be 5 meters; if the workplace is a factory or a basement, the first distance can be 20 meters.
[0083] In this embodiment, when the robot determines the relative partition boundary based on the known partition boundary, it can determine whether there is a boundary of an obstacle or wall opposite to the known partition boundary within a range where the distance to the known partition boundary is less than a first distance. See also Figure 6 This is a top view of the working environment provided in another embodiment of this application, such as... Figure 6 As shown, the working environment includes walls AB, AC, CD, BE, EF, and FG. Wall AB is a known partition boundary, and the distance between the dashed line l and wall AB is the first distance. The robot can determine whether there are obstacles or walls between wall AB and the dashed line l.
[0084] When there are no obstacles or walls at the boundary, the robot can generate partitions according to the maximum size rule or the specified size principle.
[0085] In one scenario, if 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 position at a distance of the first distance from the known partition boundary. Figure 6 For example, if there are no obstacles or walls between wall AB and dashed line l, according to the maximum size rule, in order to maximize the size of the partition, the partition boundary opposite to wall AB should be the furthest from wall AB. Therefore, the location of dashed line l is determined as the location of the relative boundary of wall AB.
[0086] In another scenario, if partitions are generated according to specified size principles, the robot can determine the location of the relative boundary of the known partition at a distance of a specified size from the known partition boundary.
[0087] In one embodiment, the distance range includes a distance from the known partition boundary that is less than a first distance and greater than a second distance. Here, both the first and second distances can be pre-configured based on the specific conditions of the workplace. The second distance can be used to limit the lower limit of the partition size. For example, if the second distance is 3 meters, then the boundary length of the partition cannot be less than 3 meters.
[0088] In this embodiment, when the robot determines the relative partition boundary based on the known partition boundary, it can determine whether there is a boundary of an obstacle or wall opposite to the known partition boundary within a range where the distance to the known partition boundary is less than a first distance and greater than a second distance. See also Figure 7 This is a top view of the working environment provided in another embodiment of this application, such as... Figure 7 As shown, the working environment includes walls AB, AC, CD, BE, EF, and FG. Wall AB is a known partition boundary. The distance between dashed line l2 and wall AB is the first distance, and the distance between dashed line l1 and wall AB is the second distance. The robot can determine whether there are obstacles or walls between dashed lines l1 and l2.
[0089] When there are no obstacles or walls at the boundary, the robot can generate partitions according to the maximum size rule or the specified size principle.
[0090] In one scenario, if 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 position at a distance of the first distance from the known partition boundary. Figure 7 For example, if there are no obstacles or walls between dashed lines l1 and l2, according to the maximum size rule, in order to maximize the size of the partition, the partition boundary opposite to wall AB should be the furthest from wall AB. Therefore, the location of dashed line l2 is determined as the location of the relative boundary of wall AB.
[0091] In another scenario, if partitions are generated according to a specified size principle, the robot can determine the location of the relative boundary of the known partition at a distance of the specified size from the known partition boundary. Generally, the specified size will be between a first distance and a second distance. For example, the first distance is 5 meters, the second distance is 3 meters, and the specified size can be 4 meters.
[0092] By defining the distance range by using the first distance and the second distance, the boundary length of each partition can fluctuate between the first distance and the second distance, thereby controlling the size of the partition to prevent it from being too large or too small.
[0093] In one embodiment, when the robot performs step 210, if the robot acquires environmental information in real time within the workplace, it can determine the boundary of the nearest obstacle or wall to the robot based on the environmental information, using this boundary as the first positioning edge. See also Figure 8 This is a top view of the working environment provided in an embodiment of this application, as shown below. Figure 8 As shown, the robot's working environment includes walls AB, AC, CD, BE, EF, and FG. The robot is located in... Figure 8Position O. The robot can establish a coordinate system using its own location as the origin, thereby marking the positions of obstacles and walls within the coordinate system for partitioning. The robot at point O can use the boundary of the nearest wall AC as its first positioning edge.
[0094] In one embodiment, when the robot performs step 210, if the robot acquires environmental information in real time in the workplace, and the first positioning edge has been determined, the robot can, based on the environmental information, use the boundary of an obstacle or wall in a specified direction parallel to the first positioning edge and whose distance from the robot meets a preset condition as the second positioning edge.
[0095] The preset conditions include: the distance to the robot is less than a set threshold. Here, the set threshold can be an empirical value, used to ensure that after the first partition is established, the robot is located within that first partition, allowing subsequent robots to expand to other partitions from that partition. For example, the distance range set in the partition generation rules includes: the distance to the known partition boundary is less than a first distance. In this case, to ensure the robot can subsequently be located within the partition, the set threshold can be equal to the first distance.
[0096] by Figure 8 For example, when using wall AC as the first positioning edge, the robot checks for obstacles or walls with a distance less than a set threshold in the positive or negative Y-axis direction parallel to the first positioning edge. The robot can identify walls AB and EF that meet preset conditions and can select either wall AB or wall EF as the second positioning edge.
[0097] By setting a threshold to limit the position of the second positioning edge, the subsequent partitions constructed based on the first and second positioning edges include the robot's current position. When the robot collects environmental information in real time and establishes partitions, this measure ensures that the robot can start from the first partition and expand to other partitions, making the partitioning process more planar.
[0098] In one embodiment, when the robot performs step 210, it uses the boundary of an obstacle or wall in a specified direction parallel to the first positioning edge, where the distance from the robot meets a preset condition, as the first positioning edge. The preset condition includes: the distance from the robot is less than a set threshold, and the distance from the robot is the greatest possible.
[0099] In this embodiment, after determining the first positioning edge, the robot can check for the existence of obstacles or walls within a range where the distance from itself in the direction parallel to the first positioning edge is less than a set threshold. On one hand, if there is a unique obstacle or wall, the robot can use the boundary of the obstacle or wall as the second positioning edge. On the other hand, if there are several obstacles or walls, the robot can select the obstacle or wall furthest from itself and use the boundary of the selected obstacle or wall as the second positioning edge.
[0100] See Figure 9 This is a top view of the working environment provided in another embodiment of this application. Figure 9 Workplace and Figure 8 In the same workplace scenario, when wall AC is used as the first positioning edge, the robot determines that the distances from walls AB and EF to itself are both less than a set threshold in either the positive or negative Y-axis direction parallel to the first positioning surface. In this case, if wall EF is selected as the second positioning edge, the boundary of the partition is located at dashed line l4, and the area between dashed line l4 and wall AB is not included in the partition. If wall AB is selected as the second positioning edge, the boundary of the partition is located at dashed line l3, and the area between dashed line l4 and wall AB is included in the partition. To avoid missing small areas during the partitioning process, the robot can choose wall AB as the second positioning edge.
[0101] In one embodiment, when the robot performs step 220, if there are multiple boundaries of obstacles or walls opposite to the known partition boundary within a set distance range of the known partition boundary, it can fit the boundary of the farthest obstacle or wall.
[0102] join Figure 10 This is a top view of the working environment provided in another embodiment of this application, such as... Figure 10 As shown, the working environment is protected by walls AB, AC, CD, BE, EF, GH, GK, JI, and KS. After determining wall AC as the positioning edge, wall AC is used as the partition boundary. Within a set distance range of this known partition boundary, walls BE, GH, and JI exist. In this case, the robot can use the boundary of wall JI as another partition boundary, allowing the partition to conform to the farthest wall boundary.
[0103] This measure allows for maximizing the size of partitions while adhering to the principle of close proximity to walls at partition boundaries. This avoids the problem of numerous small partitions caused by dense walls or obstacles, which could negatively impact subsequent path planning tasks.
[0104] In one embodiment, when the robot executes the region division method, if there are no first and second positioning edges around the robot, a partition satisfying a specified size principle is generated with the robot's current position as the center. When there are no obstacles or walls within a set distance range in all directions of the robot, the robot can generate a rectangular partition with a specified boundary length, centered on its current position. For example, a specified length of 4 meters can generate a 4*4 rectangular partition.
[0105] See Figure 11 This is a schematic diagram of a partition provided in an embodiment of this application, such as... Figure 11 As shown, O is the location of the robot. The robot can generate a partition mnhk with a specified boundary length, centered at point O.
[0106] After generating a partition according to a specified length rule, it can be expanded outwards to create more partitions. Since the environment information is incomplete, generating the first partition based on the specified length rule ensures flexibility for subsequent partitioning.
[0107] In one embodiment, when the robot executes the region division method, if there is only one wall or several parallel walls around the robot, the robot can determine the boundary of the nearest wall as the first positioning edge. The robot can then use its current position as the center position in the direction parallel to the first positioning edge, and use the location of the first positioning edge as the partition boundary to generate partitions that satisfy the specified size principle.
[0108] See Figure 12 This is a partitioning diagram provided in another embodiment of this application, such as... Figure 12 As shown, the workplace includes walls AB and CD, which are parallel to each other. Point O is the robot's location. Wall AB is closest to point O, and the robot can use the boundary of wall AB as its first positioning edge. After determining the first positioning edge, the robot can use point O as the center of the direction parallel to the first positioning edge, i.e., the Y-axis direction, and use the location of the first positioning edge as the partition boundary to generate partitions Amsn that satisfy the specified size principle. At this time, the partition boundaries Am, ms, sn, and nA are all specified dimensions, and point O passes through the midpoint of boundary Am.
[0109] In the absence of two intersecting positioning edges, since the environmental information is incomplete, the first partition is generated based on a single positioning edge according to the specified length principle, which can ensure the flexibility of subsequent partitions.
[0110] Figure 13 This is an embodiment of an environmentally adaptive region division device according to the present invention, such as... Figure 13 As shown, the device may include:
[0111] The determination module 1310 is used to determine the positioning edge based on environmental information, wherein the positioning edge is the boundary of the obstacle / wall, and the positioning edge includes a first positioning edge and a second positioning edge that intersect the line.
[0112] The generation module 1320 is used to create partitions by using the positioning edge as the partition boundary and according to a preset partition generation rule. The preset partition generation rule includes: if there is an obstacle / wall boundary opposite to the known partition boundary within a set distance range of the known partition boundary, then a partition that fits the boundary of the opposite obstacle / wall is generated based on the known partition boundary; otherwise, a partition is generated by using the positioning edge as the partition boundary according to a preset maximum size rule or a specified size principle.
[0113] The expansion module 1330 is used to use the boundary of the existing partition as the partition boundary of the new partition, and to expand the new partition according to the preset partition generation rules.
[0114] The implementation process of the functions and roles of each module in the above-mentioned device is detailed in the implementation process of the corresponding steps in the above-mentioned environmental adaptive region division method, and will not be repeated here.
[0115] The apparatuses and methods disclosed in the several embodiments provided in this application can also be implemented in other ways. The apparatus embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of apparatuses, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code, which contains one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram and / or flowchart, and combinations of blocks in block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0116] In addition, the functional modules in the various embodiments of this 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.
[0117] If a function is implemented as a software 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 this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as a USB flash drive, a portable hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
Claims
1. An environment-adaptive region partitioning method applied to a robot, characterized in that, include: The positioning edge is determined based on environmental information, wherein the positioning edge is the boundary of the obstacle / wall, and the positioning edge includes a first positioning edge and a second positioning edge that intersect the line. The positioning edge is used as the partition boundary, and the partition is established according to the preset partition generation rules; wherein, the preset partition generation rules include: if there is an obstacle / wall boundary opposite to the known partition boundary within a set distance range of the known partition boundary, then a partition that fits the boundary of the opposite obstacle / wall is generated based on the known partition boundary; otherwise, the partition is generated according to the preset maximum size rule or specified size principle, using the positioning edge as the partition boundary. The boundaries of the existing partitions are used as the boundaries of the new partitions, and the new partitions are expanded according to the preset partition generation rules. If the first positioning edge and the second positioning edge do not exist around the robot, then a partition that satisfies the specified size principle is generated with the robot's current position as the center. If there is only one wall or several parallel walls around the robot, determine the boundary of the wall closest to the robot as the first positioning edge; take the current position of the robot as the center position in the direction parallel to the first positioning edge, and the position of the first positioning edge as the partition boundary to generate a partition that satisfies the specified size principle.
2. The method of claim 1, wherein, The set distance range includes: The distance to the known partition boundary is less than the first distance.
3. The method of claim 1, wherein, The set distance range includes: The distance to the known partition boundary is less than the first distance and greater than the second distance.
4. The method of claim 1, wherein, The determination of the positioning edge based on environmental information includes: Based on environmental information, the boundary of the nearest obstacle / wall to the robot is determined as the first defined edge.
5. The method of claim 4, wherein, The determination of the positioning edge based on environmental information includes: Based on environmental information, the boundary of an obstacle / wall that is parallel to the first positioning edge and whose distance from the robot meets a preset condition in a specified direction is used as the second positioning edge; The preset conditions include: the distance to the robot is less than a set threshold.
6. The method of claim 5, wherein, The preset conditions also include: the distance to the robot is less than a set threshold, and the distance to the robot is at its maximum.
7. The method of claim 1, wherein, The process of generating partitions that fit the boundaries of the opposing obstacles / walls based on known partition boundaries includes: If, within a set distance range of a known partition boundary, there are multiple boundaries of obstacles / walls opposite to the known partition boundary, the boundary of the farthest obstacle / wall will be matched.
8. A robot, characterized in that The robot includes: processor; Memory used to store processor-executable instructions; The processor is configured to execute the environment-adaptive region partitioning method according to any one of claims 1-7.