Robot, map verification method, and storage medium

By employing a dual map detection procedure and an active map marker method, the problem of low efficiency in robot map updates was solved, achieving both standardization and high efficiency in map updates.

CN117021070BActive Publication Date: 2026-06-19SHENZHEN PUDU TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHENZHEN PUDU TECH CO LTD
Filing Date
2023-06-29
Publication Date
2026-06-19

Smart Images

  • Figure CN117021070B_ABST
    Figure CN117021070B_ABST
Patent Text Reader

Abstract

This application relates to a map verification method, a robot, and a storage medium. The method includes: determining whether a map conforms to the path specifications of a first map detection program; if the map does not conform to the path specifications of the first map detection program, determining whether the map carries an active map identifier written by a second map detection program; if the map carries an active map identifier, determining whether the map belongs to a usable map awaiting update based on the information from the first map detection program and the active map identifier; if the map does not carry an active map identifier, determining that the map belongs to a usable map that will not be updated. Thus, by writing an active map identifier into the map, different types of usable maps are distinguished during the verification process, reducing the number of map modifications; if the map carries an active map identifier, indicating that it is an active map, it is determined whether the map will be updated; otherwise, it is an inactive map with too low an usage frequency and is not verified.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robotics technology, and in particular to a robot, a map verification method, an apparatus, a storage medium, and a computer program product. Background Technology

[0002] With the rapid development of machine learning and perception technologies, intelligent robots are being used in a wider range of applications. They can be used in public places such as restaurants, shopping malls, and airports to interact with users, thereby reducing costs and improving user experience.

[0003] During robot operations, if the map does not conform to deployment specifications, it may cause the robot to malfunction, or even prevent some of its functions from operating properly. Since there may be a large number of existing maps on the robot, if maps that do not conform to path specifications are forcibly modified indiscriminately, the map update efficiency will be too low. Summary of the Invention

[0004] Therefore, it is necessary to provide a map verification method, device, robot, computer-readable storage medium, and computer program product to address the aforementioned technical problems and improve map update efficiency.

[0005] Firstly, this application provides a map verification method, including:

[0006] Determine whether the map conforms to the path specifications of the first map detection program;

[0007] When the map does not conform to the path specifications of the first map detection program, it is determined whether the map carries an active map identifier written by the second map detection program.

[0008] If the map carries the active map identifier, then based on the information from the first map detection program and the active map identifier, it is determined whether the map is a usable map that needs to be updated;

[0009] If the map does not carry the active map identifier, then the map is determined to be a usable map that is not being updated.

[0010] In one embodiment, the active map identifier includes version information of the second map detection program; if the map carries the active map identifier, determining whether the map belongs to the available maps to be updated based on the information of the first map detection program and the active map identifier includes:

[0011] Obtain and compare the version information of the second map detection program carried by the map with the version information of the first map detection program;

[0012] If the version information of the second map detection program carried by the map is lower than the version information of the first map detection program, then the map is determined to be a map that needs to be updated.

[0013] Based on the level of the path specification that the map to be updated does not conform to in the first map detection program, it is determined whether the map to be updated belongs to the available map to be updated.

[0014] In one embodiment, determining whether the map to be updated belongs to the available map to be updated based on the level of path specification of the first map detection program that the map to be updated does not conform to includes:

[0015] If the path specifications of the first map detection program that the map to be updated does not conform to are all at the alarm level, then the map to be updated is determined to be an available map to be updated.

[0016] If the path specification of the first map detection program does not meet any of the criteria for the map to be updated, and the level is classified as a fault level, then the map to be updated is determined to be an unusable map to be updated.

[0017] In one embodiment, the method further includes:

[0018] If the version information of the second map detection program carried by the map is higher than or equal to the version information of the first map detection program, then the map is determined to be an updated and usable map.

[0019] In one embodiment, the method further includes:

[0020] If the map conforms to the path specifications of the first map detection program, then the map is determined to be an updated usable map.

[0021] In one embodiment, before determining whether the map conforms to the path specifications of the first map detection program, the method further includes:

[0022] Determine whether the map conforms to the path specifications of the second map detection program;

[0023] If the map conforms to the path specifications of the second map detection program, then the active map identifier is written into the map;

[0024] If the map does not conform to the path specifications of the second map detection program, the second map detection program generates a map modification instruction.

[0025] In one embodiment, the path specification of the second map detection program is the same as that of the first map detection program.

[0026] In one embodiment, the second map detection program is installed on the robot's host computer, and the first map detection program is installed on the robot.

[0027] Secondly, this application also provides a robot, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps performed by the robot in any of the above embodiments.

[0028] Thirdly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, implements the steps performed by the robot in any of the above embodiments.

[0029] Fourthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the steps performed by the robot in any of the above embodiments.

[0030] The aforementioned robot, map verification method, device, storage medium, and computer program product, during the map verification process of the first map detection program, detect the active map identifier written to the map by the second map detection program. This distinguishes different types of usable maps during the verification process, reducing the number of map modifications. If an active map identifier is present, it indicates that the map is active, and further determination is needed to determine whether the map has been updated. Otherwise, it is considered an inactive map. Although it may pose security risks, its usage frequency is too low, the security risks are relatively small, and it is possible to use this map even at a time when it cannot be updated. Therefore, it is considered a usable map that is not being updated. Thus, further verification of active maps to determine whether they have been updated and whether they are usable improves efficiency. Attached Figure Description

[0031] Figure 1 This is a flowchart illustrating a map verification method in one embodiment;

[0032] Figure 2 This is a schematic diagram illustrating an application scenario of the map verification method in one embodiment;

[0033] Figure 3 This is a schematic diagram of the map drawing and verification process in one embodiment;

[0034] Figure 4 This is a flowchart illustrating the map verification method in another embodiment;

[0035] Figure 5 This is a structural block diagram of a map verification device in one embodiment;

[0036] Figure 6 This is a diagram of the internal structure of a robot in one embodiment. Detailed Implementation

[0037] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are for illustrative purposes only and are not intended to limit the scope of this application.

[0038] The map verification methods provided in the embodiments of this application can be applied to robot-based distributed application scenarios, as well as to scenarios where robots communicate with servers.

[0039] In one embodiment, such as Figure 1 As shown, a map verification method is provided, including the following steps:

[0040] Step 102: Determine whether the map conforms to the path specifications of the first map detection program.

[0041] It is understood that, prior to step 102, the above verification method also includes: enabling the first map detection program and loading the map through the enabled first map detection program.

[0042] It is understood that a map contains the environmental information necessary for a robot in a specific work scenario, serving as one of the bases for the robot's autonomous localization, obstacle avoidance, route planning, and multi-robot scheduling. Optionally, the map includes a topology map of the robot and may also include a localization map required for the robot's localization. The map verified in this application primarily refers to a topology map, which indicates the robot's operating path within the scenario. This path includes the path endpoints, path length, distance between the path and the resource point location required for the robot to perform a specific task, or other relevant path information, as long as the path information can guide the robot's movement within the scenario. The localization map is used in conjunction with the real-time environmental data collected by the robot according to its localization sensors to determine the robot's position within the operating scenario.

[0043] The first map detection program involves the detection of one or more path specifications. Path specifications refer to the items that each map detection program performs path detection on, as well as the judgment criteria or rules for that item. Each path specification is used to determine whether there are any anomalies in the paths on the map. If at least one anomaly is found, the level of non-compliance of the map with the path specifications is determined based on the anomaly. See Table 1 below for details.

[0044] Maps that do not conform to route specifications are categorized into several levels, including but not limited to "alarm" and "fault" levels. If the activity level of a map is not assessed first, and all maps are forcibly standardized directly, thousands of maps would need to be modified and updated, resulting in extremely low processing efficiency.

[0045] For example, some path specifications and their corresponding error levels are shown in Table 1, where the error level "warning" is the "alarm" level of the path specification and the error level "error" is the "fault" level of the path specification.

[0046] Table 1 Path Specification Judgment Rules

[0047] Serial Number Path Specification Error level 1 Parallel path distance, for example, less than 0.5m error 2 Parallel path distance, for example, less than 1.2m warning 3 Map connectivity issues error 4 Path intersections did not generate nodes error 5 Some paths are too short, for example, less than 1.2m. warning 6 The dining table is too close to the path, for example, less than 0.5m. warning 7 The distance between all reachable points and the path is too great, for example, greater than 2 meters. error 8 All reachable points are too close to the path, for example, less than 0.5m. warning 9 The dining table is too close to the food pick-up point, for example, less than 0.5m. warning 10 The angle between the connected paths is too small, for example, less than 30°. warning

[0048] Before applying any map, it must be validated by the first map detection program. Because the first map detection program is based on path specifications, it does not only focus on a specific work scenario, but also applies to map deployment specifications for various work scenarios, and can detect map issues that do not conform to path specifications.

[0049] Step 104: If the map does not conform to the path specifications of the first map detection program, determine whether the map carries an active map identifier written by the second map detection program.

[0050] The active map identifier is used to determine whether the map being detected has been used recently, improving the efficiency of map modification and updates from the perspective of map applications. Because the active map identifier is pre-written into the map through the second map detection program, the map can be marked based on this identifier. Marked maps are more active than unmarked maps. Maps carrying the active map identifier have been opened or used within a certain period of time, representing active maps in the current application scenario; active maps are maps that require updates.

[0051] In one embodiment, if a map conforms to the path specifications of the first map detection program, then the map is determined to be an updated usable map. Here, "updated usable map" refers to a map that has been updated to a certain version and conforms to the path specifications of the first map detection program, meaning that this map can be directly loaded and applied by the robot.

[0052] Step 106: If the map carries an active map identifier, determine whether the map belongs to the available map to be updated based on the information from the first map detection program and the active map identifier. Here, "available map to be updated" refers to a map that needs to be updated and is usable, as opposed to "unavailable map to be updated".

[0053] In one implementation, the active map identifier includes version information of the second map detection program. Determining whether a map is a usable map awaiting update based on the information from the first map detection program and the active map identifier specifically includes: acquiring and comparing the version information of the second map detection program carried on the map with the version information of the first map detection program; if the version information of the second map detection program carried on the map is lower than the version information of the first map detection program, then the map is determined to be a map awaiting update; and determining whether the map awaiting update is a usable map based on the level of path specification non-compliance of the map awaiting update.

[0054] The version information of both the first and second map detection programs refers to the version information of the map detection programs. This information can describe the map detection program on the device and its version. Version information can include the program version number, the program completion time, or other identifying data indicating the application order of the map detection programs.

[0055] Optionally, the version information of the first map detection program is used to identify the map detection program installed on the robot body, as well as its version information. The version information of the second map detection program is used to identify the map detection program installed on the host computer to which the robot belongs, as well as its version information.

[0056] If the version information of the second map detection program is detected to be lower than that of the first map detection program, the version information of the second map detection program carried by the map indicates that the map has not been verified by the first map detection program with newer version information. From this perspective, the map is determined to be a "map to be updated".

[0057] "Maps to be Updated" includes "Available Maps to be Updated" and "Unavailable Maps to be Updated." For "Available Maps to be Updated," the level of non-compliance with route specifications is obtained through mapping using some route specifications, indicating that the map can be used without modification or updating. For "Unavailable Maps to be Updated," the level of non-compliance with route specifications is obtained through mapping using other route specifications, indicating that the map needs to be modified or updated to eliminate significant security risks.

[0058] In an optional implementation, if the version information of the second map detection program carried by the map is detected to be lower than the version information of the first map detection program, then the map is determined to be a map to be updated, including: if the version number of the second map detection program carried by the map is detected to be lower than the version number of the first map detection program, then the map is determined to be a map to be updated.

[0059] In another optional implementation, if the version information of the second map detection program carried by the map is detected to be lower than the version information of the first map detection program, then the map is determined to be a map to be updated. This includes: selecting host computer program summary information from the version information of the second map detection program carried by the map, and mapping the version number of the second map detection program according to the host computer program summary information; selecting robot program summary information from the version information of the first map detection program, and mapping the version number of the first map detection program according to the robot program summary information; if the version generation time point mapped by the second map detection program carried by the map is detected to be earlier than the version generation time point mapped by the first map detection program, then the map is determined to be a map to be updated. Thus, the second map detection program and the first map detection program generate version generation time points corresponding to their version numbers in different ways, and the order of the different map detection programs is determined by the version generation time points.

[0060] Since the version information of the second map detection program is carried by the map, and the number of versions of the first and second map detection programs is much smaller than the number of map versions, by comparing the version information of these two types of map detection programs, even if there is no correlation between map version numbers, it is possible to basically determine the version order of different maps and whether a map belongs to "maps to be updated".

[0061] If the version information of the second map detection program is detected to be lower than that of the first map detection program, the version information of the second map detection program carried by the map indicates that the map has not been verified by the new version of the first map detection program. From this perspective, the map is determined to be a "map awaiting update". Further subdivision of "maps awaiting update" is performed based on their level of non-compliance with route specifications to determine whether the map is usable, and further analysis is conducted to determine whether the "maps awaiting update" must be modified and updated.

[0062] In one implementation, determining whether the map to be updated is a usable map is based on the level of non-compliance with path specifications. Specifically, this includes: if all non-compliance with path specifications in the map to be updated is at the alarm level, then the map to be updated is determined to be a usable map to be updated; if any non-compliance with path specifications in the map to be updated is at the fault level, then the map to be updated is determined to be an unusable map to be updated.

[0063] The path specifications corresponding to the "alarm" level generally do not affect the normal use of the map. They focus more on the stability of the machine's map usage. Because the operating scenario is fixed and the correlation between path specifications at the "alarm" level is weak, it is unlikely to cause security risks. Therefore, when all levels of "map to be updated" that do not conform to the path specifications fall under the "alarm" level, then the "map to be updated" specifically belongs to the "available map to be updated." The "fault" level is defined based on whether the map can be used normally, focusing on whether the machine can run on the map. Although the machine's operating scenario is fixed, when any path specification falls under the "fault" level, it may lead to significant security risks for the machine using the map during operation. In this case, the "map to be updated" specifically belongs to the "unavailable map to be updated."

[0064] In another optional implementation, determining whether the map to be updated is a usable map based on the level of non-compliance with the path specifications includes: counting the number of non-compliance issues in the map to be updated to obtain the number of anomalies in the map to be updated; comparing the number of anomalies with a preset level threshold; if the number is greater than the threshold, the map to be updated is an unusable map to be updated; otherwise, the map to be updated is a usable map to be updated.

[0065] In one embodiment, the method further includes: if the version information of the second map detection program carried by the map is higher than or equal to the version information of the first map detection program, then the map is determined to be an updated usable map.

[0066] Specifically, if a map is detected to carry version information of a second map detection program, and the version information of the second map detection program is higher than or equal to the version information of the first map detection program, the verification of the second map detection program is relatively superior, and the map is thus identified as an "updated usable map." If the map conforms to the path specifications of the first map detection program, it is directly identified as an "updated usable map." An "updated usable map" is a map that has been updated to a reasonable version and whose topological path does not contain anomalies, meaning that this map can be directly loaded and applied by the robot.

[0067] Step 108: If the map does not carry an active map identifier, then the map is determined to be a usable map that is not being updated.

[0068] "Usable maps that are not updated," also known as existing maps, refer to maps with non-standard topological paths that are not required to be updated. Existing maps are maps pre-stored internally by the machine. For example, they could be maps used in robot trials, demonstrations, and sales scenarios, or maps temporarily deployed during a specific event. Since there are a relatively large number of existing maps and their uses are limited, there is no need to modify them. Furthermore, since one of these maps might be used at some point in the future, these usable maps will not be deleted.

[0069] "Available maps that are not being updated" refers to maps that do not require updating. If a map does not carry an active map identifier, it is an inactive map in the current operating scenario. Inactive maps have not been opened or applied for a long time, and there are too many of them. Updating these inactive maps would consume a lot of time and resources, and even if these maps were updated, they would not have any specific use. Therefore, they are not updated. However, it should be understood that although inactive maps may pose security risks, their low frequency of use makes the security risks relatively small, and they may still be usable at a certain time when updating is not possible. Therefore, they are considered "available maps that are not being updated." Before a robot loads and applies "available maps that are not being updated," a "Stock Maps" prompt will appear.

[0070] The map verification method described above distinguishes different types of usable maps during the verification process by writing an active map identifier into the map, thus reducing the number of map modifications required. If a map carries an active map identifier, it indicates that the map is active and requires further verification to determine whether it has been updated. Otherwise, it is considered an inactive map. Although it may pose security risks, its infrequent use minimizes these risks, and it may still be usable at a point when updates are not possible. Therefore, further verification of active maps to determine their update status and usability improves the efficiency of map verification and update.

[0071] In an optional implementation, the method further includes: using a first map detection program to detect whether the path in the map conforms to the path specifications of the first map detection program according to path endpoints, path length, path and / or the spacing between map key points.

[0072] In an optional implementation, a first map detection program detects whether the map conforms to the path specifications of the map detection program based on path endpoints, path length, and the spacing between path and / or map key points. This includes: using the map detection program to check whether there are endpoints based on path length, the spacing between path endpoints, the spacing between parallel paths, map connectivity anomalies determined by map path key points, and the spacing between resource points such as dining tables and paths; and performing topological path detection on each map in the machine's environment.

[0073] In an optional implementation, before detecting whether the map conforms to the path specifications of the first map detection program, the method further includes receiving and parsing a map package sent by a host computer, or receiving and parsing a map package downloaded from a cloud platform. The map package sent by the host computer may carry an active map identifier, while the map downloaded from the cloud platform is mainly an existing map.

[0074] The first map detection program detects each dimension of the above-mentioned path specifications of the map, and analyzes more accurately whether it conforms to the path specifications specified by the first map detection program. After preliminary screening, it can accurately determine whether some maps are "updated usable maps" and determine whether the map carries an active map identifier.

[0075] In a preferred embodiment, before determining whether the map conforms to the path specifications of the first map detection program, the method further includes: determining whether the map conforms to the path specifications of the second map detection program; if the map conforms to the path specifications of the second map detection program, then writing an active map identifier into the map; if the map does not conform to the path specifications of the second map detection program, then the second map detection program generates a map modification instruction.

[0076] Before the map is distributed to the robot, if it is determined that the map conforms to the path specifications of the second map detection program, an active map identifier is written into the map, thus indicating that the map has passed the detection by the second map detection program. It is understandable that, since existing technologies do not write active map identifiers when maps are verified, the second map detection program writes the active map identifier into the map, allowing for cross-domain time-dimension detection of both the first and second map detection programs.

[0077] If the map does not conform to the path specifications of the second map detection program, the second map detection program generates a map modification instruction to instruct the user to edit and modify the map, and then re-verify the path specifications of the second map detection program.

[0078] In one embodiment, the path specification of the second map detection program is the same as that of the first map detection program. That is, the second map detection program and the first map detection program use the same path specification judgment rules when detecting and verifying maps, for example, both use the path specification judgment rules in Table 1.

[0079] like Figure 2 As shown, in one embodiment, the second map detection program is installed on the robot's host computer, and the first map detection program is installed on the robot. Thus, map detection is performed separately by the robot and its host computer. Before the host computer distributes the map to the robot, it is detected by the second map detection program; after the robot receives the map but before applying it, it is detected by the first map detection program. The detection process between the first and second map detection programs is based on active map identifiers. This improves the efficiency of map detection across time and space domains.

[0080] In one embodiment, the method further includes: the host computer encapsulates the version information of the second map detection program with the standard map to obtain a map package carrying an active map identifier; the version information of the second map detection program belongs to the active map identifier; the host computer sends the map carrying the active map identifier to the robot.

[0081] The version information of the second map detection program and the map are packaged into a map package. The version information of the second map detection program is directly used as the active map identifier, so that the robot can compare the information of the first map detection program and the version information of the second map detection program to efficiently and accurately determine whether the map belongs to "maps to be updated".

[0082] The host computer of the robot is used to verify, detect and distribute maps to the aforementioned robot and other robots belonging to the host computer, so that multiple robots belonging to the host computer can receive the map of their own operating scene.

[0083] In one implementation, before encapsulating the version information of the second map detection program with the map, the method further includes: determining whether the map drawn by the host computer passes the path specification verification of the second map detection program using the second map detection program. Specifically, the second map detection program checks whether the map conforms to the path specifications of the second map detection program based on path endpoints, path length, and the spacing between path and / or map key points. For example, it checks whether the path endpoints, path length, and the spacing between path and / or map key points exceed their respective threshold ranges. If they do not exceed these thresholds, the map conforms to the path specifications of the second map detection program; if they exceed them, the map conforms to the path specifications that the second map detection program does not conform to.

[0084] In one embodiment, the method further includes: if the map drawn by the host computer fails the path specification verification of the second map detection program, a map modification instruction is generated to modify the map drawn by the host computer according to the path specification of the second map detection program, until the map drawn by the host computer passes the path specification verification of the second map detection program. 。

[0085] The aforementioned modification command is used to issue a prompt via the host computer, indicating that the currently loaded map does not conform to the path specifications of the second map detection program. Optionally, this modification command can be used to instruct the host computer to correct the path specifications that the drawn map does not conform to according to obstacle information, or it can simply be used to issue a prompt message to allow the user to improve the map.

[0086] In one exemplary embodiment, the execution process of this solution is described in conjunction with a specific application scenario. During robot movement, if the topology map does not conform to the deployment specifications, it may cause the robot to malfunction and some robot functions to fail to operate normally (such as multi-robot scheduling). Since there may be a large number of existing maps on the robot, if maps that do not conform to the path specifications are forcibly modified indiscriminately, the map update efficiency will be too low, and it will bring huge maintenance costs.

[0087] This invention proposes a method that uses a first map detection program and a second map detection program to perform dual verification of the robot map. This ensures the map conforms to deployment specifications, identifies "usable maps awaiting updates," and excludes "unusable maps awaiting updates" that do not meet specifications and pose significant security risks from direct use, thus ensuring the standardization of the robot's map. Simultaneously, by detecting the version number in the map package, this invention provides only a reminder for "usable maps that do not require updates," such as existing maps already in use, without forcing modifications, thereby reducing the need to modify existing robot maps on the market.

[0088] like Figures 2-3 As shown, the robot body software and the host computer software are run by different execution entities. The host computer software has map drawing and editing functions, and a second map detection program for verification and testing. The robot body software can parse the map package distributed by the host computer and perform verification and testing by the first map detection program. Users draw and edit maps using the host computer software to form maps, and then perform verification and testing on the maps using the second map detection program. If the verification passes, a map package of the corresponding map is generated. After receiving the map package, the robot parses the map package to obtain the aforementioned map, and then performs verification and testing by the first map detection program through steps 102-108 of this application and corresponding embodiments.

[0089] like Figures 3-4 As shown, after the user completes drawing and editing the map, before applying it to the robot, the map needs to be validated by a second map detection program to determine if it conforms to the path specifications of the second map detection program (S410). If the map does not conform to the path specifications of the second map detection program, a map modification instruction is generated (S411), and the map is modified accordingly. If it conforms to the path specifications of the second map detection program, the version information of the second map detection program at the time of this verification is written, and a map package is generated (S412), resulting in a map carrying the version information of the second map detection program and an active map identifier. This map is then distributed to the robot. After receiving the map package, the robot parses it (S420) to obtain the aforementioned map and the version information of the second map detection program it carries. Then, it determines whether the map conforms to the path specifications of the first map detection program (S430). If the map conforms to the path specifications of the first map detection program, it is determined that the map belongs to the "updated usable map" and can be directly loaded and applied by the robot. If the map does not conform to the path specifications of the first map detection program, it is further determined whether the map carries the version information of the second map detection program (S440). If the map does not carry the version information of the second map detection program, it is determined that the map belongs to the "usable map that will not be updated" and can be loaded and applied after a "stock map" prompt appears (S440). If the map carries the version information of the second map detection program, it is further determined whether the version information of the second map detection program carried is higher than or equal to the version information of the first map detection program (S450). If the version information of the second map detection program carried by the map is higher than or equal to the version information of the first map detection program, it is determined that the map belongs to the "updated usable map", that is, the map can also be directly loaded and applied by the robot. If the version information of the second map detection program carried by the map is lower than that of the first map detection program, the map is determined to be a "map to be updated," and the system continues to determine the level at which the "map to be updated" does not conform to the path specification of the first map detection program (S460). If the level of non-conforming path specification is "alarm," the map is determined to be a "usable map to be updated," which can be loaded and applied; if the level of non-conforming path specification is "fault," the map is determined to be a "non-usable map to be updated," a map modification instruction is generated, and the instruction is given to modify the map. After the map has been modified and edited, the above verification and detection process of S410-S460 is repeated.

[0090] Based on this, in the solution of this application, the host computer uses a second map detection program to write the detection program version number into the map package, thereby determining the version difference between the second map detection program and the robot's first map detection program. The lower version of the second map detection program, by default, allows the detection results of the higher version. Simultaneously, the map is double-checked using both the first and second map detection programs to ensure that the map in the robot conforms to the latest deployment specifications, reducing robot malfunctions caused by non-standard deployment. Furthermore, it does not modify existing maps currently in use, reducing the deployment difficulty for robot users. 。

[0091] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0092] Based on the same inventive concept, this application also provides a map verification device for implementing the map verification method described above. The solution provided by this device is similar to the implementation described in the above method; therefore, the specific limitations in one or more map verification device embodiments provided below can be found in the limitations of the map verification method described above, and will not be repeated here.

[0093] In one embodiment, such as Figure 5 As shown, a robot map verification device is provided, comprising:

[0094] The first verification module 502 is used to determine whether the map conforms to the path specifications of the first map detection program;

[0095] The identifier detection module 504 is used to determine whether the map carries an active map identifier written by the second map detection program when the map does not conform to the path specification of the first map detection program.

[0096] The verification processing module 506 is used to determine whether the map is an available map to be updated based on the information of the first map detection program and the active map identifier if the map carries the active map identifier; if the map does not carry the active map identifier, it is determined that the map is an available map that will not be updated.

[0097] In one embodiment, the active map identifier includes version information of the second map detection program; the verification processing module 506 is used for:

[0098] Obtain and compare the version information of the second map detection program carried by the map with the version information of the first map detection program;

[0099] If the version information of the second map detection program carried by the map is lower than the version information of the first map detection program, then the map is determined to be a map that needs to be updated.

[0100] Based on the level of the path specification that the map to be updated does not conform to in the first map detection program, it is determined whether the map to be updated belongs to the available map to be updated.

[0101] In one embodiment, the verification processing module 506 is configured to:

[0102] If the path specifications of the first map detection program that the map to be updated does not conform to are all at the alarm level, then the map to be updated is determined to be an available map to be updated.

[0103] If the path specification of the first map detection program does not meet any of the criteria for the map to be updated, and the level is classified as a fault level, then the map to be updated is determined to be an unusable map to be updated.

[0104] In one embodiment, the verification processing module 506 is configured to:

[0105] If the version information of the second map detection program carried by the map is higher than or equal to the version information of the first map detection program, then the map is determined to be an updated and usable map.

[0106] In one embodiment, the verification processing module 506 is configured to:

[0107] If the map conforms to the path specifications of the first map detection program, then the map is determined to be an updated usable map.

[0108] In one embodiment, before determining whether the map conforms to the path specifications of the first map detection program, the device further includes a second verification module; the second verification module is configured to:

[0109] Determine whether the map conforms to the path specifications of the second map detection program;

[0110] If the map conforms to the path specifications of the second map detection program, then the active map identifier is written into the map;

[0111] If the map does not conform to the path specifications of the second map detection program, the second map detection program generates a map modification instruction.

[0112] In one embodiment, the path specification of the second map detection program is the same as that of the first map detection program.

[0113] In one embodiment, the second map detection program is installed on the robot's host computer, and the first map detection program is installed on the robot.

[0114] Each module in the aforementioned map verification device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in the robot's processor in hardware form or independent of it, or they can be stored in the robot's memory in software form, so that the processor can call and execute the corresponding operations of each module.

[0115] In one embodiment, a robot is provided, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to implement the steps performed by the robot in any of the above embodiments. Its internal structure diagram can be shown as follows: Figure 6As shown, the robot includes a processor, memory, input / output interface, communication interface, display unit, and input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interface. The robot's processor provides computational and control capabilities. The robot's memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The robot's input / output interface is used for exchanging information between the processor and external devices. The robot's communication interface is used for wired or wireless communication with external robots; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements a map verification method. The robot's display unit is used to form a visually visible image. It can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The robot's input device can be a touch layer covering the display screen, or buttons, a trackball, or a touchpad set on the robot's shell, or an external keyboard, touchpad, or mouse, etc.

[0116] Those skilled in the art will understand that Figure 6 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the robot to which the present application is applied. A specific robot may include more or fewer parts than shown in the figure, or combine certain parts, or have different part arrangements.

[0117] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.

[0118] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.

[0119] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data shall comply with the relevant laws, regulations and standards of the relevant countries and regions.

[0120] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0121] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0122] The above embodiments merely illustrate several implementation methods of this application, and their descriptions are relatively specific and detailed. However, they should not be construed as limiting the scope of protection of this application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the appended claims.

Claims

1. A map verification method characterized by comprising: The method includes: Determine whether the map conforms to the path specifications of the first map detection program; When the map does not conform to the path specifications of the first map detection program, it is determined whether the map carries an active map identifier written by the second map detection program; the active map identifier being written into the map indicates that the map has passed the detection of the second map detection program; the active map identifier includes the version information of the second map detection program; Obtain and compare the version information of the second map detection program carried by the map with the version information of the first map detection program; if the version information of the second map detection program carried by the map is lower than the version information of the first map detection program, then determine that the map is a map to be updated; determine whether the map to be updated belongs to the available maps to be updated based on the level of the path specification of the first map detection program that the map to be updated does not conform to. If the map does not carry the active map identifier, then the map is determined to be a usable map that is not being updated.

2. The map verification method according to claim 1, characterized by, The step of determining whether the map to be updated belongs to the available map to be updated based on the level of the path specification that the map to be updated does not conform to in the first map detection program includes: If the path specifications of the first map detection program that the map to be updated does not conform to are all at the alarm level, then the map to be updated is determined to be an available map to be updated. If the path specification of the first map detection program does not meet any of the criteria for the map to be updated, and the level is classified as a fault level, then the map to be updated is determined to be an unusable map to be updated.

3. The map verification method according to claim 1, characterized by, The method further includes: If the version information of the second map detection program carried by the map is higher than or equal to the version information of the first map detection program, then the map is determined to be an updated and usable map.

4. The map verification method according to claim 1, characterized by, The method further includes: If the map conforms to the path specifications of the first map detection program, then the map is determined to be an updated usable map.

5. The map verification method according to any one of claims 1 to 4, characterized by, Before determining whether the map conforms to the path specifications of the first map detection program, the method further includes: Determine whether the map conforms to the path specifications of the second map detection program; If the map conforms to the path specifications of the second map detection program, then the active map identifier is written into the map; If the map does not conform to the path specifications of the second map detection program, the second map detection program generates a map modification instruction.

6. The map verification method according to claim 5, characterized by, The path specification of the second map detection program is the same as that of the first map detection program.

7. The map verification method according to claim 5, characterized by, The second map detection program is installed on the robot's host computer, and the first map detection program is installed on the robot.

8. The map verification method according to claim 1, characterized by, If the map does not conform to the path specifications of the second map detection program, the second map detection program generates a map modification instruction to instruct the user to edit and modify the map, and then re-perform the path specification verification of the second map detection program.

9. A robot comprising a memory and a processor, the memory storing a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the map verification method according to any one of claims 1-8.

10. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program, when executed by a processor, implements the steps of the map verification method according to any one of claims 1-8.