A robot positioning method, a robot, a device and a storage medium

By constructing a grid map and predicting the robot's position after traversing an object, the problem of positioning loss when a home robot traverses traversable objects is solved, achieving higher positioning accuracy.

CN119826852BActive Publication Date: 2026-01-23UBTECH ROBOTICS CORP LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411976049.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-26
Publication Date
2026-01-23
Estimated Expiration
2044-12-26

AI Technical Summary

Technical Problem

Home robots may mislocate when traversing traversable objects, especially at the boundaries of unknown areas, leading to lost or incorrect positioning.

Method used

By constructing a grid map, marking obstacles and unknown areas, determining the distance between the current position and the unknown area, obtaining the travel distance, and predicting the robot's predicted position on the other side of the traversable object, the robot uses real-time map information for matching to improve positioning accuracy.

Benefits of technology

This effectively avoids the robot losing its location when climbing over trespassable objects and improves the robot's positioning accuracy in unknown areas.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119826852B_ABST
    Figure CN119826852B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of robots, and discloses a robot positioning method, a robot, equipment and a storage medium. The method comprises the following steps: when a robot reaches one side of a crossable object, determining a current position of the robot according to a robot preset map, and judging whether the distance between the current position and an unknown region is less than a preset distance; the unknown region is a region that has not been explored on the robot preset map and exists on the other side of the crossable object; if the distance between the current position and the unknown region is less than the preset distance, obtaining the driving distance of the robot when the robot reaches the other side of the crossable object, and predicting the predicted position of the robot when the robot reaches the other side of the crossable object according to the driving distance. The application can reposition the robot when the robot crosses the crossable object to reach the unknown region, avoids robot positioning loss, and improves the positioning accuracy of the robot.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of robots, and in particular to a robot positioning method, a robot, a device, and a storage medium. BACKGROUND

[0002] A household robot generally establishes a robot map according to data returned by a laser radar. Laser is irradiated to an obstacle such as a wall and returns data, which marks the position of the obstacle in a grid map. If there is no obstacle, no signal is returned. However, various kinds of crossable objects may exist in the working environment of the robot, such as a threshold, a base of an electric fan, and daily necessities, and information of the crossable objects is usually not included in the map information. When the household robot crosses a relatively complex crossable object and reaches the other side of the crossable object, if the other side of the crossable object is a place where no map is established, the robot may be positioned incorrectly due to insufficient identifiable information. SUMMARY

[0003] Embodiments of the present application provide a robot positioning method, a robot, a device, and a storage medium to solve the problem that the robot may be positioned incorrectly when crossing a crossable object.

[0004] In a first aspect, the present application provides a robot positioning method, comprising:

[0005] When the robot reaches one side of a crossable object, determining a current position of the robot according to a robot preset map;

[0006] Determining whether a distance between the current position and an unknown region is less than a preset distance; the unknown region is a region that is not explored on the robot preset map and exists on the other side of the crossable object;

[0007] If the distance between the current position and the unknown region is less than the preset distance, obtaining a driving distance of the robot when the robot reaches the other side of the crossable object, and predicting a predicted position of the robot when the robot reaches the other side of the crossable object according to the driving distance.

[0008] In an implementation manner, the robot preset map is constructed in the following manner:

[0009] Constructing a grid map according to a current environment where the robot is located, and controlling the robot to scan the current environment by laser;

[0010] If reflection information of the laser is received, it is determined that the laser scans an obstacle, and an area where the obstacle is located is marked as an obstacle region on the grid map;

[0011] If no reflection information from the laser is received, it is determined that the laser has not detected any obstacle, and the area where the obstacle does not exist is marked as a blank area on the grid map; the area where the traversable object is located is the blank area;

[0012] The areas not scanned by the laser are marked as unknown areas on the grid map.

[0013] In one implementation, determining whether the distance between the current location and the unknown area is less than a preset distance includes:

[0014] Based on the current location, determine the robot's neighboring area on the grid map;

[0015] Select a target grid from the neighboring area and determine whether there is a target path that meets preset requirements between the target grid and the current position;

[0016] If it exists, then the distance is determined to be less than the preset distance;

[0017] If it does not exist, then the distance is determined to be greater than or equal to the preset distance.

[0018] In one implementation, determining whether a target path satisfying a preset requirement exists between the target grid and the current position includes:

[0019] The obstacle area is expanded by a preset range on the grid map to obtain the target obstacle area; the expansion direction is the direction of the blank area, and the expanded area is the area in the blank area where there are no obstacles;

[0020] Starting from the target grid and ending at the current position, a path search is performed to obtain multiple initial paths;

[0021] Determine whether there exists a target path among the multiple initial paths that meets the preset requirements; the preset requirements include that the initial path does not pass through the obstacle area and the blank area.

[0022] In one implementation, the number of initial paths is multiple, and the method further includes:

[0023] If a target path is found, the path search is stopped, and the distance is determined to be less than a preset distance.

[0024] If the target path is not found among the multiple initial paths, then the distance is determined to be greater than or equal to the preset distance.

[0025] In one embodiment, the number of target grids is multiple, and each target grid corresponds to at least one initial path; the method further includes:

[0026] If the target path is not found in any of the initial paths corresponding to any target grid, then the target grid is marked as a searched grid.

[0027] In one implementation, predicting the predicted position when the robot reaches the other side of the traversable object based on the travel distance includes:

[0028] Based on the travel distance, predict the preset position on the robot's preset map when the robot reaches the other side of the traversable object;

[0029] Real-time map information is collected when the robot reaches the other side of the traversable object;

[0030] The real-time map information is matched with the map information at the preset location to obtain a matching result, and the predicted location of the robot is determined based on the matching result.

[0031] Secondly, this application provides a robot, comprising:

[0032] The determination module is used to determine the current position of the robot based on a preset map when the robot reaches one side of the object that can be climbed over.

[0033] The judgment module is used to determine whether the distance between the current position and the unknown area is less than a preset distance; the unknown area is an area that has not been explored on the robot's preset map and exists on the other side of the traversable object;

[0034] The positioning module is used to obtain the travel distance when the robot reaches the other side of the traversable object if the distance between the current position and the unknown area is less than the preset distance, and to predict the predicted position of the robot when it reaches the other side of the traversable object based on the travel distance.

[0035] Thirdly, this application provides a computer device including a processor and a memory, the memory storing a computer program, and the processor executing the computer program to implement the robot localization method described in the first aspect.

[0036] Fourthly, this application provides a computer storage medium storing a computer program that, when executed on a processor, implements the robot localization method according to the first aspect.

[0037] The embodiments of this application have the following beneficial effects:

[0038] This application provides a robot localization method that obtains the robot's current position when it reaches one side of a traversable object, and then determines whether the distance between the current position and the unknown area is less than a preset distance. If it is less than the preset distance, it means that the robot may have reached the unknown area when it traversed the traversable object. The robot can then obtain the travel distance when it traversed the traversable object, and predict the robot's predicted position based on the travel distance. This avoids the robot losing its localization when it reaches the unknown area and improves the robot's localization accuracy. Attached Figure Description

[0039] To more clearly illustrate the technical solutions of this application, the accompanying drawings used in the embodiments will be briefly described below. It should be understood that the following drawings only show some embodiments of this application and therefore should not be considered as a limitation on the scope of protection of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0040] Figure 1 A flowchart illustrating a robot localization method provided in an embodiment of this application is shown;

[0041] Figure 2 This illustration shows a first principle diagram of robot positioning provided in an embodiment of this application;

[0042] Figure 3 This illustration shows a second principle diagram of robot positioning provided in an embodiment of this application;

[0043] Figure 4 This illustration shows a third principle diagram of robot positioning provided in an embodiment of this application;

[0044] Figure 5 A schematic diagram of the frame structure of a robot provided in an embodiment of this application is shown. Detailed Implementation

[0045] The technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.

[0046] The components of the embodiments of this application described and illustrated in the accompanying drawings can be arranged and designed in a variety of different configurations. Therefore, the following detailed description of the embodiments of this application provided in the drawings is not intended to limit the scope of the claimed application, but merely to illustrate selected embodiments of the application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.

[0047] In the following, the terms “comprising,” “having,” and their cognates, which may be used in various embodiments of this application, are intended only to indicate a particular feature, number, step, operation, element, component, or combination thereof, and should not be construed as excluding, firstly, the presence of one or more other features, numbers, steps, operations, elements, components, or combinations thereof, or adding the possibility of one or more features, numbers, steps, operations, elements, components, or combinations thereof.

[0048] Furthermore, the terms "first," "second," and "third" are used only to distinguish descriptions and should not be interpreted as indicating or implying relative importance.

[0049] Unless otherwise specified, all terms used herein (including technical and scientific terms) shall have the same meaning as commonly understood by one of ordinary skill in the art to which the various embodiments of this application pertain. Terms (such as those defined in commonly used dictionaries) shall be interpreted as having the same meaning as in their contextual meaning in the relevant technical field and shall not be construed as having an idealized or overly formal meaning, unless clearly defined in the various embodiments of this application.

[0050] The following detailed description of some embodiments of this application is provided in conjunction with the accompanying drawings. Unless otherwise specified, the following embodiments and features can be combined with each other.

[0051] Reference Figure 1 , Figure 1 This is a flowchart illustrating a robot localization method provided in this embodiment. This method can be used to avoid localization loss when a robot traverses traversable objects. The method includes:

[0052] S101. When the robot reaches one side of the object that can be climbed over, the robot's current position is determined according to the robot's preset map.

[0053] Home cleaning robots, such as common cleaning robots, typically divide the room into different areas when performing cleaning tasks. For example, a cleaning robot might be tasked with cleaning the living room, while areas like the kitchen and bathroom are not within its cleaning area. In this case, the robot's map would usually only include information about the living room, which is considered a known area. The kitchen and bathroom are generally not included in the map and are considered unknown areas.

[0054] When a cleaning robot performs cleaning tasks in the living room, it may encounter various objects. Smaller objects, such as trash, will be swept up directly. Larger objects, such as walls and table legs, are considered obstacles because the robot cannot climb over them, and it will avoid these obstacles while working. Medium-sized objects, or objects that can be climbed over, such as socks, fan bases, and thresholds, will be climbed over by the robot while working.

[0055] If a robot can traverse an object located at the edge of the living room, it might enter an unknown area while traversing it. For example, if the traversable object is the threshold between the living room and the kitchen, and the robot traverses the threshold, it enters the kitchen from the living room. Since the kitchen is an unknown area, the robot may lose its location due to the lack of known location markers. Even if it attempts to relocate, it may still mislocate, such as to the bathroom or other unknown areas.

[0056] To avoid loss of positioning, the robot's current position in the robot's preset map can be determined when the robot reaches the side of an obstacle that can be climbed, or when it is preparing to climb or climb over an obstacle.

[0057] S102. Determine whether the distance between the current position and the unknown area is less than a preset distance; the unknown area is an area that has not been explored on the robot's preset map and exists on the other side of the traversable object.

[0058] Then, the distance between the current location and the unknown area is obtained, and it is determined whether this distance is less than a preset distance. For example, if the robot is in the center of the living room and far from unknown areas such as the kitchen and bathroom, then the distance is greater than the preset distance. The preset distance can be set based on the robot model, the size of known objects that can be traversed, or other factors.

[0059] S103. If the distance between the current position and the unknown area is less than the preset distance, then obtain the travel distance when the robot reaches the other side of the traversable object, and predict the predicted position when the robot reaches the other side of the traversable object based on the travel distance.

[0060] If the robot is positioned at the threshold between the living room and the kitchen, and is about to climb over it, it means the robot is relatively close to the kitchen, and this distance is determined to be less than or equal to a preset distance. Therefore, when the robot climbs over the threshold, it may or may not have entered the kitchen area. To accurately locate the robot, parameters such as the direction and distance traveled when it climbs the threshold can be obtained to predict its position after climbing over the threshold. This predicted position can then be verified to obtain the robot's actual location. If the robot's predicted position is still within the living room, since the living room is a known area in the robot's preset map, the corresponding map information or location markers in the living room can be re-obtained to determine the robot's current position.

[0061] This embodiment obtains the robot's current position when it reaches one side of the traversable object, and then determines whether the distance between the current position and the unknown area is less than a preset distance. If it is less than the preset distance, it means that the robot may have reached the unknown area when it traversed the traversable object. Then, the robot's travel distance when it traversed the traversable object can be obtained, and the robot's predicted position can be predicted based on the travel distance. This avoids the robot losing its position when it reaches the unknown area and improves the robot's positioning accuracy.

[0062] Reference Figure 2 , Figure 2 This is a schematic diagram illustrating the first principle of the robot localization method provided in this embodiment.

[0063] like Figure 2 As shown, the method for constructing the robot's preset map includes:

[0064] A grid map is constructed based on the robot's current environment, and the robot is controlled to scan the current environment using lasers.

[0065] If the reflection information of the laser is received, it is determined that the laser has scanned an obstacle, and the area where the obstacle is located is marked as an obstacle area on the grid map.

[0066] Among them, the obstacle area is Figure 2 Area B in the diagram is the area represented by the black line.

[0067] If no reflection information from the laser is received, it is determined that the laser has not scanned any obstacles, and the area where no obstacle exists is marked as a blank area on the grid map; the area where the traversable object is located is the blank area.

[0068] Among them, the blank area is Figure 2 Area A in the diagram refers to the white area surrounded by black lines.

[0069] The areas not scanned by the laser are marked as unknown areas on the grid map.

[0070] Among them, the unknown area is Figure 2 Area C in the diagram refers to the gray area outside the black lines.

[0071] The scanned obstacles can also be used as positioning markers. Therefore, the scanned area, whether it is a blank area or an obstacle area, can be regarded as a known area. Then, according to the above area definition, it is marked and divided on the grid map to obtain the final robot preset map.

[0072] This embodiment improves the accuracy and convenience of robot localization by constructing a grid map and pre-marking various types of objects on the grid map.

[0073] In one implementation, determining whether the distance between the current location and the unknown area is less than a preset distance includes:

[0074] Based on the current location, determine the robot's neighboring area on the grid map;

[0075] Select a target grid from the neighboring area and determine whether there is a target path that meets preset requirements between the target grid and the current position;

[0076] If it exists, then the distance is determined to be less than the preset distance;

[0077] If it does not exist, then the distance is determined to be greater than or equal to the preset distance.

[0078] like Figure 2 As shown, the robot's current position X is Figure 2 The triangle in the image, the target grid Y is... Figure 2 The circle within the target area. If the target object is known, the robot's vicinity can be determined based on its size, model, and other data. If the target object is unknown, the robot can collect data about that object, or the vicinity can be defined based on the largest known target object. Users can also define the vicinity using other methods to improve positioning accuracy.

[0079] Then, select one or more target grids in the robot's vicinity. Figure 2The example only shows one target grid Y and does not limit the number of target grids. Then, it is determined whether a target path exists between the current position X and the target grid Y. This determination can be made using path planning methods. If a path exists, it is determined that the distance between the current position and the unknown area is less than a preset distance, meaning the robot's current position is relatively close to the unknown area.

[0080] If it does not exist, then it is determined that the distance between the current position and the unknown area is greater than or equal to the preset distance, indicating that the robot's current position is far from the unknown area.

[0081] This embodiment determines the robot's neighboring area based on the robot's current position, then selects a target grid from the neighboring area, and uses path planning to determine whether there is a preset path that meets the conditions between the target grid and the current position. This determines whether the robot's current position is close to an unknown area, which facilitates the subsequent positioning of the robot and improves the accuracy of robot positioning.

[0082] Reference Figure 3 , Figure 3 This is a schematic diagram illustrating the second principle of the robot localization method provided in this embodiment.

[0083] Determining whether there is a target path that meets preset requirements between the target grid and the current position includes:

[0084] The obstacle area is expanded by a preset range on the grid map to obtain the target obstacle area; the expansion direction is the direction of the blank area, and the expanded area is the area in the blank area where there are no obstacles;

[0085] Starting from the target grid and ending at the current position, a path search is performed to obtain multiple initial paths;

[0086] Determine whether there exists a target path among the multiple initial paths that meets the preset requirements; the preset requirements include that the initial path does not pass through the obstacle area and the blank area.

[0087] like Figure 3 As shown, the obstacle area B is expanded by a preset range towards the blank area A. Since the robot itself needs to occupy a certain area, expanding the obstacle area is equivalent to adding the robot's own area to the calculation during the robot's operation, so as to filter out some areas that the robot cannot reach, as well as areas missed by the laser, thus improving the accuracy of path planning.

[0088] Reference Figure 4 , Figure 4 This is a schematic diagram illustrating the third principle of the robot positioning method provided in this embodiment.

[0089] When planning the path between the robot's current position X and the target grid Y, one of X and Y can be used as the starting point and the other as the ending point. This may result in multiple initial paths, each of which needs to be verified. Paths that need to pass through obstacle area B or unknown area C are excluded. If a path only passes through blank area A, it can be determined that the path meets the preset conditions. At this point, the verification of other paths can be stopped, and the robot's current position X is determined to be near unknown area C.

[0090] Since there may be multiple target graticles, if none of the paths of one of the target graticles meet the preset conditions, the target graticle is marked as a searched graticle to avoid repeated searching of the target graticle in subsequent search processes, and then the initial path of the next target graticle is checked.

[0091] If all initial paths corresponding to all target grids have been verified and no target path matching the preset conditions has been found, it means that the robot's current position X is far from the unknown area C.

[0092] When the robot's current position X is near the unknown region C, it means that the robot may enter the unknown region when vaulting over a vaultable object. When the robot's current position X is far from the unknown region C, it means that the robot will not enter the unknown region when vaulting over a vaultable object.

[0093] This embodiment traverses the path between the target grid and the robot's current position and determines whether a target path exists. If a target path exists, the robot's current position is determined to be near an unknown area. If no target path exists, the robot's current position is determined to be far from the unknown area. Then, the corresponding positioning method is selected according to the situation to improve the robot's positioning accuracy.

[0094] In one implementation, predicting the predicted position when the robot reaches the other side of the traversable object based on the travel distance includes:

[0095] Based on the travel distance, predict the preset position on the robot's preset map when the robot reaches the other side of the traversable object;

[0096] Real-time map information is collected when the robot reaches the other side of the traversable object;

[0097] The real-time map information is matched with the map information at the preset location to obtain a matching result. The predicted location of the robot is determined based on the matching result.

[0098] If the robot's direction and distance when traversing an traversable object are known, a relatively accurate position can be estimated based on these parameters when the robot reaches the other side of the object. The robot can then collect real-time map information of the known area and determine its final position based on this information. Since the height of the traversable object is usually no greater than the robot's own height, the robot can still collect at least a portion of the known area's information while traversing the object, and then reposition itself based on this information and its current location.

[0099] If only the travel distance is known when the robot is traversing an traversable object, multiple possible positions can be calculated based on the travel distance to determine the robot's final position when it reaches the other side of the traversable object. Then, the robot is controlled to collect map information in the known area, and each possible position is verified based on the map information of the known area to determine the robot's final position.

[0100] In this embodiment, when the robot reaches the other side of the traversable object, different positioning methods are adopted to reposition the robot according to the different parameters that the robot can obtain, thereby improving the positioning accuracy of the robot.

[0101] Reference Figure 5 , Figure 5 A schematic diagram of the frame structure of a robot provided in this embodiment includes:

[0102] The determination module 501 is used to determine the current position of the robot based on a preset robot map when the robot reaches one side of the object that can be climbed.

[0103] The judgment module 502 is used to determine whether the distance between the current position and the unknown area is less than a preset distance; the unknown area is an area that has not been explored on the robot's preset map and exists on the other side of the traversable object.

[0104] The positioning module 503 is used to obtain the travel distance when the robot reaches the other side of the traversable object if the distance between the current position and the unknown area is less than the preset distance, and to predict the predicted position of the robot when it reaches the other side of the traversable object based on the travel distance.

[0105] It is understood that the robot in this embodiment corresponds to the robot localization method in the above embodiments, and the options in the above embodiments are also applicable to this embodiment, so they will not be described again here.

[0106] This application also provides a computer device, exemplary of which includes a processor and a memory, wherein the memory stores a computer program, and the processor executes the computer program to enable the computer device to perform the robot positioning method described above or the functions of various modules in the robot described above.

[0107] The processor can be an integrated circuit chip with signal processing capabilities. The processor can be a general-purpose processor, including at least one of a Central Processing Unit (CPU), Graphics Processing Unit (GPU), Network Processor (NP), Digital Signal Processor (DSP), Application-Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. The general-purpose processor can be a microprocessor or any conventional processor, capable of implementing or executing the methods, steps, and logic block diagrams disclosed in the embodiments of this application.

[0108] The memory can be, but is not limited to, Random Access Memory (RAM), Read Only Memory (ROM), Programmable Read-Only Memory (PROM), Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), etc. The memory is used to store computer programs, and the processor can execute the computer programs accordingly after receiving execution instructions.

[0109] This application also provides a computer storage medium for storing the computer program used in the aforementioned computer device. The computer storage medium can be a readable storage medium, a non-volatile storage medium, or a volatile storage medium. For example, the computer storage medium may include, but is not limited to, 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.

[0110] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods 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 show the architecture, functionality, and operation of possible implementations of apparatus, 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 containing one or more executable instructions for implementing a specified logical function. It should also be noted that, in 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 the block diagram and / or flowchart, and combinations of blocks in the block diagram and / or flowchart, 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.

[0111] In addition, the functional modules or units 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.

[0112] If the aforementioned functions are implemented as software functional modules and sold or used as independent products, they 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 part 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 smartphone, personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application.

[0113] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application.

Claims

1. A robot localization method, characterized in that, include: When the robot reaches one side of the object that can be climbed over, the robot's current position is determined according to the robot's preset map; Determine whether the distance between the current position and the unknown area is less than a preset distance; the unknown area is an area that has not been explored on the robot's preset map and exists on the other side of the traversable object; If the distance between the current position and the unknown area is less than the preset distance, then the travel distance when the robot reaches the other side of the traversable object is obtained, and the predicted position when the robot reaches the other side of the traversable object is predicted based on the travel distance; The method for constructing the robot's preset map includes: constructing a grid map based on the robot's current environment; if the laser scan detects an obstacle, it is marked as an obstacle area on the grid map; if the laser does not detect an obstacle, it is marked as a blank area on the grid map; and areas not scanned by the laser are marked as unknown areas on the grid map. The step of determining whether the distance between the current location and the unknown area is less than a preset distance includes: Based on the current location, determine the robot's neighboring area on the grid map; Selecting a target grid from the neighboring area and determining whether there is a target path between the target grid and the current position that meets preset requirements includes: expanding the obstacle area on the grid map by a preset range to obtain a target obstacle area; the expansion direction is the direction of the blank area, and the expanded area is the area in the blank area where there are no obstacles; performing a path search with the target grid as the starting point and the current position as the ending point to obtain multiple initial paths; and determining whether there is a target path that meets the preset requirements among the multiple initial paths. If it exists, then the distance is determined to be less than the preset distance; If it does not exist, then the distance is determined to be greater than or equal to the preset distance; the preset requirement includes that the initial path does not pass through the obstacle area and the blank area.

2. The robot localization method according to claim 1, characterized in that, After constructing a grid map based on the robot's current environment, the method further includes: The robot is controlled to scan the current environment using a laser; if the reflection information of the laser is received, it is determined that the laser has detected an obstacle; if the reflection information of the laser is not received, it is determined that the laser has not detected an obstacle; the area where the traversable object is located is the blank area.

3. The robot localization method according to claim 1, characterized in that, The initial path has multiple values, and the method further includes: If a target path is found, the path search is stopped, and the distance is determined to be less than a preset distance. If the target path is not found among the multiple initial paths, then the distance is determined to be greater than or equal to the preset distance.

4. The robot localization method according to claim 3, characterized in that, The number of target grids is multiple, and each target grid corresponds to at least one initial path. The method further includes: If the target path is not found in any of the initial paths corresponding to any target grid, then the target grid is marked as a searched grid.

5. The robot localization method according to claim 1, characterized in that, The method of predicting the predicted position when the robot reaches the other side of the traversable object based on the travel distance includes: Based on the travel distance, predict the preset position on the robot's preset map when the robot reaches the other side of the traversable object; Real-time map information is collected when the robot reaches the other side of the traversable object; The real-time map information is matched with the map information at the preset location to obtain a matching result, and the predicted location of the robot is determined based on the matching result.

6. A robot, characterized in that, For performing the robot localization method as described in any one of claims 1-5, the robot comprises: The determination module is used to determine the current position of the robot based on a preset map when the robot reaches one side of the object that can be climbed over. The judgment module is used to determine whether the distance between the current position and the unknown area is less than a preset distance; the unknown area is an area that has not been explored on the robot's preset map and exists on the other side of the traversable object; The positioning module is used to obtain the travel distance when the robot reaches the other side of the traversable object if the distance between the current position and the unknown area is less than the preset distance, and to predict the predicted position of the robot when it reaches the other side of the traversable object based on the travel distance.

7. A computer device, characterized in that, The computer device includes a processor and a memory, the memory storing a computer program, and the processor executing the computer program to implement the robot localization method according to any one of claims 1-5.

8. A computer storage medium, characterized in that, It stores a computer program, which, when executed on a processor, implements the robot localization method according to any one of claims 1-5.

Citation Information

Patent Citations

  • Robot motion control method, device and equipment

    CN107807650A

  • Indoor robot autonomous exploration method and system based on boundary driving

    CN113805590A