Indoor robot and map construction method and device thereof
By employing a multi-layered grid map construction method and map update technology, the problem of inaccurate indoor robot maps caused by LiDAR blind spots was solved, enabling dynamic updates of indoor robot work maps and improving environmental description capabilities, thereby increasing work efficiency.
Patent Information
- Application Number
- CN202211332778.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-10-28
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2042-10-28
AI Technical Summary
Due to limitations in the installation location, number of cables, and measurement range of lidar, indoor maps created by indoor robots have blind spots, failing to accurately reflect the environment and affecting path planning and work efficiency.
A multi-layer raster map construction method is adopted, which updates the multi-layer raster map in real time by acquiring map update data, including the original map layer, user data map layer, exploration data map layer and temporary data map layer. The working map of the indoor robot is dynamically constructed according to the priority of map update data and historical labels.
It improves the ability of indoor robot working maps to describe the environment and improves working efficiency, ensuring that map information is rich and accurate, thereby enhancing the robot's working efficiency.
Smart Images

Figure CN115736733B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of robot mapping technology, and in particular to a mapping method for an indoor robot, a mapping device for an indoor robot, and an indoor robot. Background Technology
[0002] Currently, based on the advantages of high measurement accuracy and strong anti-interference ability of LiDAR, most indoor robots using related technologies use LiDAR combined with SLAM (Simultaneous Localization and Mapping) technology to build indoor maps.
[0003] However, the problem with this technology is that, due to limitations such as the installation location of the lidar relative to the indoor robot body, the number of wiring harnesses, and the measurement range of the laser sensor, blind spots inevitably occur in the lidar measurement. As a result, the created indoor map cannot accurately reflect the current environment of the indoor robot, which in turn makes it impossible for the indoor robot to perform accurate path planning and affects the working efficiency of the indoor robot. Summary of the Invention
[0004] This invention aims to at least partially solve one of the technical problems in related technologies. Therefore, the first objective of this invention is to propose a map-building method for indoor robots, which can utilize map update data to update a multi-layered raster map used to construct the working map of the indoor robot in real time, and dynamically construct the working map of the indoor robot based on the updated multi-layered raster map, thereby improving the working map's ability to describe the indoor robot's working environment and enhancing the robot's working efficiency.
[0005] The second objective of this invention is to provide a map-building device for an indoor robot.
[0006] The third objective of this invention is to provide an indoor robot.
[0007] To achieve the above objectives, the first aspect of the present invention proposes a map building method for an indoor robot, comprising the following steps: obtaining a multi-layer grid map for building a working map of the indoor robot; obtaining map update data and updating the multi-layer grid map according to the map update data; and building the working map of the indoor robot according to the updated multi-layer grid map.
[0008] According to an embodiment of the present invention, a map building method for an indoor robot involves acquiring a multi-layered grid map for constructing a working map of the indoor robot, acquiring map update data, updating the multi-layered grid map based on the map update data, and constructing a working map of the indoor robot based on the updated multi-layered grid map. Thus, by using map update data to update the multi-layered grid map for constructing the working map of the indoor robot in real time, and dynamically constructing the working map of the indoor robot based on the updated multi-layered grid map, the method improves the ability of the working map to describe the working environment of the indoor robot and enhances the working efficiency of the indoor robot.
[0009] In addition, the map building method for indoor robots according to the above embodiments of the present invention may also have the following additional technical features:
[0010] According to one embodiment of the present invention, the multi-layer raster map includes an original map layer, a user data map layer, an exploration data map layer, and a temporary data map layer.
[0011] According to one embodiment of the present invention, updating the multi-layer raster map based on the map update data includes: obtaining the raster map layer that needs to be updated in the multi-layer raster map; and updating the raster map layer that needs to be updated based on the map update data.
[0012] According to one embodiment of the present invention, the map update data includes data update tags and data update locations. Updating the multi-layer raster map based on the map update data includes: obtaining the raster map layer that needs to be updated in the multi-layer raster map based on the data update tags; obtaining the data history tags corresponding to the data update locations in the raster map layer that needs to be updated; and updating the raster map layer that needs to be updated based on the data update tags and the data history tags.
[0013] According to one embodiment of the present invention, updating the raster map layer to be updated based on the data update label and the data history label includes: determining whether the data history label corresponding to the data update position in the raster map layer to be updated is empty; if the data history label is empty, then using the data update label to overwrite the data history label, and initializing the consecutive occurrence count of the data update label; if the data history label is not empty, and the data update label is consistent with the data history label, then retaining the data history label, and counting the consecutive occurrence count of the data history label; if the history label is not empty, and the data update label is inconsistent with the data history label, then updating the map label corresponding to the data update position in the raster map layer to be updated according to the priority of the data update label and the priority of the data history label.
[0014] According to one embodiment of the present invention, the priority of the map labels includes: the map label corresponding to the exploration data map layer has a higher priority than the map label corresponding to the user data map layer, and the map label corresponding to the user data map layer has a higher priority than the map label corresponding to the temporary data map layer.
[0015] According to one embodiment of the present invention, the step of constructing the working map of the indoor robot based on the updated multi-layer grid map includes: obtaining the grid map layers required for constructing the working map of the indoor robot from the multi-layer grid map; and constructing the working map of the indoor robot according to the priority of each grid map layer in the required grid map layers.
[0016] According to one embodiment of the present invention, the original map layer has a higher priority than the exploration data map layer, the exploration data map layer has a higher priority than the user data map layer, and the user data map layer has a higher priority than the temporary data map layer.
[0017] To achieve the above objectives, the second aspect of the present invention provides a map building apparatus for an indoor robot, comprising: an acquisition module for acquiring a multi-layer grid map for building a working map of the indoor robot; an update module for acquiring map update data and updating the multi-layer grid map according to the map update data; and a building module for building the working map of the indoor robot according to the updated multi-layer grid map.
[0018] According to an embodiment of the present invention, a map building apparatus for an indoor robot acquires a multi-layered grid map for constructing a working map of the indoor robot through an acquisition module, acquires map update data through an update module, updates the multi-layered grid map according to the map update data, and constructs a working map of the indoor robot through a construction module based on the updated multi-layered grid map. Thus, by using map update data to update the multi-layered grid map for constructing the working map of the indoor robot in real time, and dynamically constructing the working map of the indoor robot based on the updated multi-layered grid map, the ability of the working map to describe the working environment of the indoor robot is improved, thereby increasing the working efficiency of the indoor robot.
[0019] To achieve the above objectives, the third aspect of the present invention provides an indoor robot that includes the map building device for the indoor robot described in the above-described embodiments of the present invention.
[0020] According to an embodiment of the present invention, the indoor robot, by employing the above-described map building device for the indoor robot, can use map update data to update the multi-layer grid map used to build the working map of the indoor robot in real time, and dynamically build the working map of the indoor robot based on the updated multi-layer grid map, thereby improving the ability of the working map to describe the working environment of the indoor robot and improving the working efficiency of the indoor robot.
[0021] Additional aspects and advantages of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. Attached Figure Description
[0022] Figure 1 This is a flowchart illustrating a map-building method for an indoor robot according to an embodiment of the present invention;
[0023] Figure 2 This is a data structure diagram of map data for a multi-layer raster map according to an embodiment of the present invention;
[0024] Figure 3 This is a flowchart illustrating a map-building method for an indoor robot according to an embodiment of the present invention;
[0025] Figure 4 This is a flowchart illustrating a map-building method for an indoor robot according to another embodiment of the present invention;
[0026] Figure 5 This is a flowchart illustrating a map-building method for an indoor robot according to yet another embodiment of the present invention;
[0027] Figure 6 This is a block diagram of a map-building device for an indoor robot according to an embodiment of the present invention;
[0028] Figure 7 This is a block diagram of an indoor robot according to an embodiment of the present invention. Detailed Implementation
[0029] Embodiments of the present invention are described in detail below. Examples of these embodiments are illustrated in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain the present invention, and should not be construed as limiting the present invention.
[0030] The following description, with reference to the accompanying drawings, illustrates an indoor robot map building method, an indoor robot map building device, and an indoor robot according to embodiments of the present invention.
[0031] Figure 1This is a flowchart illustrating a map-building method for an indoor robot according to an embodiment of the present invention.
[0032] like Figure 1 As shown, in some embodiments of the present invention, the map building method for an indoor robot includes the following steps:
[0033] S101, Obtain a multi-layered grid map for constructing a working map of the indoor robot.
[0034] Specifically, to address the problem that indoor robots often fail to provide complete environmental information when constructing working maps based solely on raw laser sensors in complex environments, resulting in low robot efficiency, this embodiment of the invention collects and manages map data in the form of multi-layered grid maps. These maps are then used to construct working maps for indoor robots, thereby mapping different types, sources, and functions of map data onto multi-layered grid maps for unified management. This also facilitates map data classification, post-processing, maintaining map data diversity, and preventing cross-contamination of map data.
[0035] Optionally, in practical applications, the map building method for indoor robots in this embodiment of the invention can also adjust the number of layers of multi-layer grid maps according to the actual situation, so as to use as few grid map layers as possible while maintaining the diversity of map data, and avoid excessive consumption of indoor robot memory.
[0036] It should be noted that, in some embodiments of the present invention, in order to make full use of the indoor robot's memory space, the map data structure can be defined as follows based on the characteristics of the grid map:
[0037] Specifically, such as Figure 2 As shown, A, B, C, and D represent the corresponding raster map layers, a 00 、b 00 c 00 d 00 These correspond to the raster data at row 0 and column 0 in raster map layers A, B, C, and D, respectively. Simultaneously, the raster data at row 0 and column 0 corresponds to a uniquely defined location within the indoor robot's working environment. Here, a... 00 、b 00 c 00 d 00 Map data can be stored using 8-bit binary data, facilitating storage and retrieval. Furthermore, based on map data at the same location within four raster map layers... 00 、b 00 c 00 d 00 It can also be combined into 32-bit data m 00 , where m00 The subscript indicates the row and column number of the corresponding raster cell. Similarly, the subscript can be used to determine the row and column number of the map data at the same location in four raster map layers. 01 、b 01 c 01 d 01 It can also be combined into 32-bit data m 01 Similarly, map data at the same location in four raster map layers can be used. xy 、b xy c xy d xy This allows us to obtain the description m of the x-row, y-column grid cell on the map. xy This will not be elaborated further here. Therefore, the map data used to describe multi-layer raster maps can be obtained as follows:
[0038]
[0039] Optionally, in some embodiments of the present invention, if the indoor robot is being started for the first time, the original map layer can be obtained using a laser sensor combined with SLAM technology, and a multi-layer raster map can be constructed based on the original map layer. If the indoor robot is not being started for the first time, the historical data of the multi-layer raster map can be directly loaded.
[0040] S102, Obtain map update data and update the multi-layer raster map based on the map update data.
[0041] Specifically, in this embodiment of the invention, the indoor robot can acquire map update data while performing indoor work tasks, thereby facilitating the updating of the multi-layer grid map based on the map update data when the map data changes.
[0042] S103, construct the working map of the indoor robot based on the updated multi-layer grid map.
[0043] It should be understood that, in the above embodiments of the present invention, the indoor robot can use map update data to update the multi-layer grid map used to construct the working map of the indoor robot in real time, and dynamically construct the working map of the indoor robot based on the updated multi-layer grid map, thereby improving the ability of the working map to describe the working environment of the indoor robot and improving the working efficiency of the indoor robot.
[0044] Furthermore, in some embodiments of the present invention, a multi-layer raster map may include an original map layer, a user data map layer, an exploration data map layer, and a temporary data map layer.
[0045] Specifically, in this embodiment of the present invention, the original map layer may include grid map data generated by the indoor robot based on laser sensors combined with SLAM technology; the user data map layer may include grid map data customized by the user through an APP; the exploration data map layer may include grid map data generated by the indoor robot using sensors other than laser sensors (e.g., drop sensors and collision sensors) during the execution of work tasks; and the temporary data map layer may include grid map data generated by the indoor robot based on the cleaning trajectory and necessary auxiliary information (e.g., temporary obstacles) during the execution of work tasks.
[0046] Furthermore, in some embodiments of the present invention, Figure 3 As shown, updating a multi-layer raster map based on map update data includes:
[0047] S201, Get the raster map layer that needs to be updated in the multi-layer raster map.
[0048] Specifically, since the actual environment description corresponding to each grid map layer may need to be updated or may remain unchanged each time the indoor robot performs an indoor work task, in this embodiment of the present invention, before updating the multi-layer grid map using map update data, it is also necessary to first obtain the grid map layers that need to be updated in the multi-layer grid map, thereby reducing the data computation load of the indoor robot and improving the update efficiency of the indoor robot's working map. S202, update the grid map layers that need to be updated according to the map update data.
[0049] Specifically, in this embodiment of the present invention, the multi-layer grid map used to construct the working map of the indoor robot can be updated in real time using map update data, so as to dynamically construct the working map of the indoor robot based on the updated multi-layer grid map, thereby improving the ability of the working map to describe the working environment of the indoor robot and improving the working efficiency of the indoor robot.
[0050] Specifically, in some embodiments of the present invention, the map update data includes data update labels and data update locations, such as... Figure 4 As shown, updating a multi-layer raster map based on map update data includes:
[0051] S301, based on the data update label, obtain the raster map layer that needs to be updated in the multi-layer raster map.
[0052] Specifically, in this embodiment of the invention, the data update tag can be represented by an assigned hexadecimal number, as shown in Table 1 below:
[0053] Table 1
[0054]
[0055] Based on Table 1 above, when the data update label is a collision trigger label and / or a fall trigger label, it can be confirmed that the raster map layer that needs to be updated in the multi-layer raster map is the exploration data map layer. When the data update label is a no-cleaning label and / or a focused cleaning label and / or a virtual wall label, it can be confirmed that the raster map layer that needs to be updated in the multi-layer raster map is the user data map layer. When the data update label is a cleaned area label, it can be confirmed that the raster map layer that needs to be updated in the multi-layer raster map is the temporary data map layer.
[0056] It should be noted that when there are multiple data update labels, the number of raster map layers that need to be updated in a multi-layer raster map can be one or more.
[0057] S302, retrieve the historical data labels of the corresponding data update locations in the raster map layer that needs to be updated.
[0058] Specifically, in this embodiment of the present invention, after obtaining the raster map layer that needs to be updated, the data history label corresponding to the data update position in the raster map layer that needs to be updated can be further obtained. For example, the number of rows and columns of the corresponding raster in the raster map layer that needs to be updated can be determined according to the data update position, and then the data history label corresponding to the raster position can be obtained.
[0059] S303, update the raster map layer that needs to be updated based on the data update label and the data history label.
[0060] Specifically, in some embodiments of the present invention, such as Figure 4 As shown, the raster map layers that need to be updated are updated based on the data update labels and data history labels, including:
[0061] S304, determine whether the historical data label of the corresponding data update location in the raster map layer that needs to be updated is empty.
[0062] Specifically, in this embodiment of the present invention, it can be determined whether the grid map layer to be updated has already described the actual working environment of the indoor robot corresponding to the grid position by judging whether the data history label of the corresponding data update position in the grid map layer to be updated is empty.
[0063] S3051, if the data history label is empty, then the data update label is used to overwrite the data history label, and the consecutive occurrence count of the data update label is initialized.
[0064] Specifically, in this embodiment of the present invention, when the data history label is empty, it can be assumed that the grid map layer that needs to be updated has not yet described the actual working environment of the indoor robot corresponding to the grid position. At this time, the data update label can be directly used to overwrite the data history label, and the consecutive occurrence count of the data update label can be initialized. For example, the consecutive occurrence count of the data update label can be reset to the first occurrence, so as to describe the actual working environment of the indoor robot corresponding to the grid position using the new data update label.
[0065] S3052, if the data history label is not empty and the data update label is consistent with the data history label, then the data history label is retained and the number of consecutive occurrences of the data history label is counted.
[0066] Specifically, in this embodiment of the present invention, when the data history label is not empty and the data update label is consistent with the data history label, it can be considered that the data update label and the data history label describe the actual working environment of the indoor robot corresponding to the grid position in the grid map layer that needs to be updated. At this time, the data history label can be retained, and the number of consecutive occurrences of the data history label can be counted, for example, by adding one consecutive occurrence, so as to continue to use the data history label to describe the actual working environment of the indoor robot corresponding to the grid position.
[0067] S3053 If the historical label is not empty and the data update label is inconsistent with the data historical label, then update the map label of the corresponding data update location in the raster map layer that needs to be updated according to the priority of the data update label and the priority of the data historical label.
[0068] Specifically, in this embodiment of the invention, when the historical label is not empty and the data update label is inconsistent with the data historical label, it can be considered that the data update label and the data historical label do not describe the actual working environment of the indoor robot corresponding to the grid position in the grid map layer that needs to be updated. At this time, the map label corresponding to the data update position in the grid map layer that needs to be updated can be updated according to the priority of the data update label and the priority of the data historical label. For example, if the priority of the data update label is greater than the priority of the data historical label, the map label corresponding to the data update position in the grid map layer that needs to be updated can be updated using the data update label, and the data update can be initialized. The number of consecutive occurrences of a new label can be initialized, for example, to the first occurrence. This allows the new data update label to describe the actual working environment of the indoor robot corresponding to the grid location. Conversely, if the priority of the data update label is lower than that of the data history label, the data history label can be used to update the map label of the corresponding data update location in the grid map layer that needs to be updated, while keeping the number of consecutive occurrences of the data history label unchanged. This allows the data history label to describe the actual working environment of the indoor robot corresponding to the grid location, thereby improving the working map's ability to describe the indoor robot's working environment and increasing the working efficiency of the indoor robot.
[0069] Furthermore, in some embodiments of the present invention, the priority of map labels includes: the priority of map labels corresponding to the exploration data map layer is higher than the priority of map labels corresponding to the user data map layer, and the priority of map labels corresponding to the user data map layer is higher than the priority of map labels corresponding to the temporary data map layer.
[0070] For example, in this embodiment of the present invention, if it is determined that the historical data label is not empty, the updated data label is inconsistent with the historical data label, and the historical data label is a map label corresponding to the exploration data map layer, while the updated data label is a map label corresponding to the user data map layer, then the historical data label can be maintained, and the consecutive occurrence count of the historical data label remains unchanged. This allows the map label corresponding to the exploration data map layer to be used preferentially to describe the actual working environment of the indoor robot. Alternatively, if the historical data label is not empty, the updated data label is inconsistent with the historical data label, and the historical data label is a label of the temporary data map layer, while the updated data label is a label corresponding to the user data map layer, then the updated data label can be used to overwrite the historical data label, and the consecutive occurrence count of the updated data label can be initialized to the first occurrence. This allows the map label corresponding to the user data map layer to be used preferentially to describe the actual working environment of the indoor robot.
[0071] It should be noted that in some embodiments of the present invention, the "No Cleaning" label and virtual wall label corresponding to the user data map layer have higher priority than the "Key Cleaning Area" label. In other words, in this embodiment of the present invention, if the data history label is not empty, the data update label is inconsistent with the data history label, and the data history label is the "No Cleaning" label and / or virtual wall label corresponding to the user data map layer, and the data update label is the "Key Cleaning Area" label corresponding to the user data map layer, then the "No Cleaning" label and / or virtual wall label can be used to cover the "Key Cleaning Area" label, and the consecutive occurrence count of the "No Cleaning" label and / or virtual wall label is initialized to the first occurrence, thereby prioritizing the use of the "No Cleaning" label and / or virtual wall label to describe the actual working environment of the indoor robot.
[0072] It should be understood that, for each grid location in the indoor robot's work map, the number of consecutive occurrences of the collision trigger label and / or fall trigger label can also be used to determine whether the label participates in the description of the actual working environment of the robot corresponding to that grid location. The number of consecutive occurrences of the prohibition cleaning label, the key cleaning label, the virtual wall label, and the cleaned area label can be used to indicate the number of times that grid location has been set as a prohibition cleaning area, the number of times it has been set as a key cleaning area, the number of times it has been set as a virtual wall, and the number of times it has been cleaned.
[0073] For example, suppose there is a collision trigger label and / or a fall trigger label for grid location A in the work map of an indoor robot, and the number of consecutive occurrences of the collision trigger label and / or fall trigger label is 3. Then, the number of consecutive occurrences can be compared with a preset threshold. If the number of consecutive occurrences exceeds the preset threshold, the collision trigger label and / or fall trigger label will not be included in the description of the actual working environment of the robot corresponding to that grid location. If the number of consecutive occurrences exceeds the preset threshold, the collision trigger label and / or fall trigger label will be included in the description of the robot corresponding to that grid location. The description of the actual working environment of the robot at grid position A is as follows: In other words, the more consecutive occurrences of the collision trigger tag and / or fall trigger tag at grid position A, the greater the probability that a collision and / or fall will occur at grid position A. Therefore, the collision trigger tag and / or fall trigger tag can be included in the description of the actual working environment of the robot at that grid position. Conversely, the fewer consecutive occurrences of the collision trigger tag and / or fall trigger tag, the lower the probability that a collision and / or fall will occur at grid position A. It is considered an occasional event and therefore is not included in the description of the actual working environment of the robot at that grid position.
[0074] Furthermore, in some embodiments of the present invention, Figure 5As shown, a working map for the indoor robot is constructed based on the updated multi-layer grid map, including:
[0075] S401, Obtain the grid map layer needed to build the working map of the indoor robot from the multi-layer grid map.
[0076] Specifically, since different indoor robot tasks may correspond to different indoor robot work map requirements, in this embodiment of the present invention, the grid map layers required to construct the indoor robot work map can be obtained from a multi-layer grid map for different work map requirements. For example, when the indoor robot work map requirement is a cleaning progress work map, a temporary data map layer can be obtained from the multi-layer grid map, and the cleaning progress work map of the indoor robot can be constructed using the temporary data map layer. When the indoor robot work map requirement is a global path planning work map, the original map layer, user data map layer, and exploration data map layer can be obtained from the multi-layer grid map, and the global path planning work map can be constructed using the original map layer, user data map layer, and exploration data map layer.
[0077] S402, constructs a working map for the indoor robot according to the priority of each grid map layer in the required grid map layers.
[0078] Specifically, when multiple grid map layers are required to construct the working map of an indoor robot from a multi-layer grid map, in order to ensure that the map information is rich, accurate, and targeted, in this embodiment of the present invention, the working map of the indoor robot can also be constructed according to the priority of each grid map layer in the required grid map layers.
[0079] Furthermore, in some embodiments of the present invention, the original map layer has a higher priority than the exploration data map layer, the exploration data map layer has a higher priority than the user data map layer, and the user data map layer has a higher priority than the temporary data map layer.
[0080] It should be noted that the original map layer has the highest priority and can be used to determine the map boundaries and fixed obstacles of the indoor robot's working map, first defining the corresponding workspace for the indoor robot. However, when constructing the indoor robot's working map based on the original map layer, the created working map information is incomplete due to factors such as blind spots in the sensors on the indoor robot, which greatly affects the working efficiency of the indoor robot. Therefore, in the embodiments of the present invention, the exploration data map layer, user data map layer, and temporary data map layer are further utilized to supplement and update the description of the indoor robot's working map constructed based on the original map layer according to the priority of each map layer, thereby improving the description accuracy of the working map and improving the working efficiency of the indoor robot.
[0081] For example, in this embodiment of the invention, since each map layer is built by stacking when constructing the working map, data conflicts can be avoided when various map layers are stacked according to the priority of the map layers required to construct the working map of the indoor robot. For example, assuming that the map layers required to construct the working map of the indoor robot include the original map layer, the user data map layer, and the exploration data map layer, then the working map of the indoor robot can be initially constructed based on the original map layer, and then each grid position in the working map can be traversed based on the user data map layer and the exploration data map layer to finally construct the working map of the indoor robot. Specifically, during the traversal of grid position A, the user data map layer has a key cleaning label for grid position A, and the exploration data map layer has a collision trigger label for grid position A. At this time, since the priority of the exploration data map layer is higher than that of the user data map layer, the collision trigger label can be used to describe the working environment of grid position A. In this way, the map layer traversal of each grid position in the working map of the indoor robot can be realized, thereby ensuring that the map information is rich, accurate, and targeted.
[0082] In summary, the indoor robot map construction method according to embodiments of the present invention obtains a multi-layered grid map for constructing a working map of the indoor robot, then obtains map update data, updates the multi-layered grid map according to the map update data, and constructs a working map of the indoor robot based on the updated multi-layered grid map. Thus, by using map update data to update the multi-layered grid map for constructing the working map of the indoor robot in real time, and dynamically constructing the working map of the indoor robot based on the updated multi-layered grid map, the ability of the working map to describe the working environment of the indoor robot is improved, thereby enhancing the working efficiency of the indoor robot.
[0083] Figure 6 This is a block diagram of a map-building device for an indoor robot according to an embodiment of the present invention.
[0084] like Figure 6 As shown, the map building device 1000 for indoor robots includes: an acquisition module 10, an update acquisition module 20, and a building module 30.
[0085] The acquisition module 10 is used to acquire a multi-layer grid map for constructing the working map of the indoor robot; the update module 20 is used to acquire map update data and update the multi-layer grid map according to the map update data; and the construction module 30 is used to construct the working map of the indoor robot according to the updated multi-layer grid map.
[0086] Furthermore, in some embodiments of the present invention, the multi-layer raster map includes an original map layer, a user data map layer, an exploration data map layer, and a temporary data map layer.
[0087] Furthermore, in some embodiments of the present invention, the update module 20 is also used to obtain the raster map layer that needs to be updated in the multi-layer raster map; and update the raster map layer that needs to be updated according to the map update data.
[0088] Furthermore, in some embodiments of the present invention, the map update data includes data update tags and data update locations. The update module 20 is also used to: obtain the raster map layer that needs to be updated in the multi-layer raster map according to the data update tags; obtain the data history tags corresponding to the data update locations in the raster map layer that needs to be updated; and update the raster map layer that needs to be updated according to the data update tags and the data history tags.
[0089] Furthermore, in some embodiments of the present invention, the update module 20 is further configured to determine whether the historical data label corresponding to the data update position in the raster map layer to be updated is empty; if the historical data label is empty, the historical data label is overwritten with the data update label, and the consecutive occurrence count of the data update label is initialized; if the historical data label is not empty, and the data update label is consistent with the historical data label, the historical data label is retained, and the consecutive occurrence count of the historical data label is counted; if the historical data label is not empty, and the data update label is inconsistent with the historical data label, the map label corresponding to the data update position in the raster map layer to be updated is updated according to the priority of the data update label and the priority of the historical data label.
[0090] Furthermore, in some embodiments of the present invention, the priority of map labels includes: the priority of map labels corresponding to the exploration data map layer is higher than the priority of map labels corresponding to the user data map layer, and the priority of map labels corresponding to the user data map layer is higher than the priority of map labels corresponding to the temporary data map layer.
[0091] Furthermore, in some embodiments of the present invention, the construction module 30 is also configured to: obtain the grid map layers required for constructing the working map of the indoor robot from the multi-layer grid map; and construct the working map of the indoor robot according to the priority of each grid map layer in the required grid map layers.
[0092] Furthermore, in some embodiments of the present invention, the original map layer has a higher priority than the exploration data map layer, the exploration data map layer has a higher priority than the user data map layer, and the user data map layer has a higher priority than the temporary data map layer.
[0093] It should be noted that the specific implementation of the map building device 1000 for indoor robots according to the embodiments of the present invention corresponds one-to-one with the specific implementation of the map building method for indoor robots described above, and will not be repeated here.
[0094] In summary, the indoor robot map building apparatus according to embodiments of the present invention acquires a multi-layered grid map for building a working map of the indoor robot through an acquisition module, acquires map update data through an update module, updates the multi-layered grid map according to the map update data, and builds the working map of the indoor robot through a building module based on the updated multi-layered grid map. Thus, by using map update data to update the multi-layered grid map for building the working map of the indoor robot in real time, and dynamically building the working map of the indoor robot based on the updated multi-layered grid map, the working map's ability to describe the indoor robot's working environment is improved, thereby increasing the working efficiency of the indoor robot.
[0095] Figure 7 This is a block diagram of an indoor robot according to an embodiment of the present invention.
[0096] like Figure 7 As shown, the indoor robot 1000 includes a map building device 100 for the indoor robot as described in the above embodiment of the present invention.
[0097] It should be noted that the specific implementation of the indoor robot 1000 in this embodiment of the invention can be found in the specific implementation of the map construction method of the indoor robot in the foregoing embodiment of the invention, and will not be repeated here.
[0098] In summary, the indoor robot according to the embodiments of the present invention uses map update data to update the multi-layer grid map used to construct the working map of the indoor robot in real time, and dynamically constructs the working map of the indoor robot based on the updated multi-layer grid map, thereby improving the ability of the working map to describe the working environment of the indoor robot and improving the working efficiency of the indoor robot.
[0099] Furthermore, the other components and functions of the indoor robot in this embodiment of the invention are known to those skilled in the art, and will not be described in detail here to reduce redundancy.
[0100] It should be noted that the logic and / or steps represented in the flowcharts or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing the logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (e.g., a computer-based system, a system including a processor, or other system that can fetch and execute instructions from an instruction execution system, apparatus, or device). For purposes of this specification, a "computer-readable medium" can be any device that can contain, store, communicate, propagate, or transport a program for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (non-exhaustive list) of computer-readable media include the following: an electrical connection with one or more wires (electronic device), a portable computer disk cartridge (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and programmable read-only memory (EPROM or flash memory), fiber optic devices, and portable compact disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.
[0101] It should be understood that various parts of the present invention can be implemented using hardware, software, firmware, or a combination thereof. In the above-described embodiments, multiple steps or methods can be implemented using software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented using hardware, as in another embodiment, any one of the following technologies known in the art or a combination thereof can be used: a discrete logic circuit having a logic gate circuit for implementing a logic function on a data signal, an application-specific integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.
[0102] In the description of this specification, references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.
[0103] In the description of this invention, it should be understood that the terms "center," "longitudinal," "lateral," "length," "width," "thickness," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," "outer," "clockwise," "counterclockwise," "axial," "radial," and "circumferential" indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are used only for the convenience of describing this invention and simplifying the description, and are not intended to indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on this invention.
[0104] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this invention, "a plurality of" means at least two, such as two, three, etc., unless otherwise explicitly specified.
[0105] In this invention, unless otherwise explicitly specified and limited, the terms "installation," "connection," "linking," and "fixing," etc., should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal communication of two components or the interaction between two components, unless otherwise explicitly limited. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.
[0106] In the present invention, unless otherwise expressly specified or limited, when a first feature is "above" or "below" a second feature, it may mean that the first and second features are in direct contact, or that the first and second features are in indirect contact through an intermediary. Furthermore, when a first feature is "above," "above," or "above" a second feature, it may mean that the first feature is directly above or diagonally above the second feature, or simply means that the first feature is at a higher level than the second feature. When a first feature is "below," "below," or "below" a second feature, it may mean that the first feature is directly below or diagonally below the second feature, or simply means that the first feature is at a lower level than the second feature.
[0107] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.
Claims
1. A map building method for an indoor robot, characterized in that, The method includes the following steps: Obtain a multi-layered grid map for building a working map of the indoor robot; Obtain map update data and update the multi-layer raster map based on the map update data; The working map of the indoor robot is constructed based on the updated multi-layer grid map; The map update data includes data update labels and data update locations. Updating the multi-layer raster map based on the map update data includes: Based on the data update labels, obtain the raster map layer in the multi-layer raster map that needs to be updated; Obtain the historical data labels corresponding to the data update location in the raster map layer that needs to be updated; Update the raster map layer that needs updating based on the data update label and the data history label; The step of updating the raster map layer that needs to be updated based on the data update label and the data history label includes: Determine whether the historical data label corresponding to the data update location in the raster map layer that needs to be updated is empty; If the data history label is empty, then the data update label is used to overwrite the data history label, and the consecutive occurrence count of the data update label is initialized; If the data history label is not empty and the data update label is consistent with the data history label, then the data history label is retained and the number of consecutive occurrences of the data history label is counted. If the historical label is not empty and the data update label is inconsistent with the data historical label, then the map label corresponding to the data update position in the raster map layer that needs to be updated is updated according to the priority of the data update label and the priority of the data historical label.
2. The map building method for an indoor robot according to claim 1, characterized in that, The multi-layered raster map includes an original map layer, a user data map layer, an exploration data map layer, and a temporary data map layer.
3. The map construction method for an indoor robot according to claim 1, characterized in that, The step of updating the multi-layer raster map based on the map update data includes: Obtain the raster map layer that needs to be updated in the multi-layer raster map; Update the raster map layer that needs updating based on the map update data.
4. The map building method for an indoor robot according to claim 2, characterized in that, The priority of the map labels includes: the map label corresponding to the exploration data map layer has a higher priority than the map label corresponding to the user data map layer, and the map label corresponding to the user data map layer has a higher priority than the map label corresponding to the temporary data map layer.
5. The map construction method for an indoor robot according to claim 2, characterized in that, The step of constructing the working map of the indoor robot based on the updated multi-layer grid map includes: Obtain the grid map layers needed to construct the working map of the indoor robot from the multi-layer grid map; The working map of the indoor robot is constructed according to the priority of each grid map layer in the required grid map layers.
6. The map building method for an indoor robot according to claim 5, characterized in that, The original map layer has a higher priority than the exploration data map layer, the exploration data map layer has a higher priority than the user data map layer, and the user data map layer has a higher priority than the temporary data map layer.
7. A map-building device for an indoor robot, characterized in that, The device includes: The acquisition module is used to acquire a multi-layered grid map for building the working map of the indoor robot; An update module is used to acquire map update data and update the multi-layer raster map based on the map update data; The construction module is used to construct the working map of the indoor robot based on the updated multi-layer grid map; The map update data includes data update tags and data update locations. The update module is further configured to: obtain the raster map layer that needs to be updated in the multi-layer raster map according to the data update tags; obtain the data history tags corresponding to the data update locations in the raster map layer that needs to be updated; and update the raster map layer that needs to be updated according to the data update tags and the data history tags. The update module is further configured to: determine whether the historical data label corresponding to the data update location in the raster map layer that needs to be updated is empty; if the historical data label is empty, then the historical data label is overwritten with the data update label, and the consecutive occurrence count of the data update label is initialized; if the historical data label is not empty, and the data update label is consistent with the historical data label, then the historical data label is retained, and the consecutive occurrence count of the historical data label is counted; if the historical data label is not empty, and the data update label is inconsistent with the historical data label, then the map label corresponding to the data update location in the raster map layer that needs to be updated is updated according to the priority of the data update label and the priority of the historical data label.
8. An indoor robot, characterized in that, The indoor robot includes the map building device for the indoor robot as described in claim 7.
Citation Information
Patent Citations
Map construction and navigation method, device, and system
CN108344414A