Method, device, equipment and product for controlling robot

By combining base maps and thematic maps in robot navigation, the problem of insufficient scalability of traditional grid maps is solved, enabling flexible expansion of robot functions and improved safety.

CN121325848APending Publication Date: 2026-01-13BEIJING YOUZHUJU NETWORK TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410939984.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-07-12
Publication Date
2026-01-13

AI Technical Summary

Technical Problem

In existing technologies, robot navigation maps cannot effectively expand to new functions, and traditional grid maps have poor scalability, failing to meet the ever-increasing functional requirements.

Method used

By acquiring a base map and thematic maps, the values ​​of control attributes are determined based on the robot's pose and the thematic maps, enabling the robot to execute additional functions. Thematic maps are overlaid on the base map, providing additional control attributes to achieve new functions.

Benefits of technology

This allows for the expansion of new functions without modifying the base map, reducing the complexity of expansion and improving the robot's safety and functional applicability in different environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121325848A_ABST
    Figure CN121325848A_ABST
Patent Text Reader

Abstract

The invention relates to a method, a device, equipment and a computer program product for controlling a robot. The method includes acquiring a basic map indicating information of an environment where the robot is located and a thematic map indicating control attributes. The method further includes determining a value of a control attribute associated with the pose based on the pose of the robot and the thematic map. In addition, the method includes controlling the robot based on the base map and the value of the control attribute. In this way, the thematic map can have additional control attributes which are not possessed by the basic map, so that the robot can be controlled to execute various additional functions. When a new function is expanded, a new thematic map can be overlaid on the basis of the basic map without modifying the basic map, so that the complexity of expanding the new function can be reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of robotics, and more specifically to methods, apparatus, devices, and computer program products for controlling robots. Background Technology

[0002] Robot navigation relies on a predefined navigation map, which can be, for example, a grid map. The grid map divides the environment into multiple rectangular or square cells, each representing a region within the environment. These cells typically have the following states: occupied, meaning the cell is blocked by an obstacle and the robot cannot enter; free, meaning the cell is unobstructed and the robot can enter; and unknown, meaning the cell's state is unknown and further exploration may be needed. The robot can plan its path on the constructed grid map to move from one location to another. Summary of the Invention

[0003] In a first aspect of the embodiments of this disclosure, a method for controlling a robot is provided. The method includes acquiring a base map indicating information about the robot's environment and a thematic map indicating control attributes. The method further includes determining values ​​of control attributes associated with the robot's pose based on the robot's pose and the thematic map. Furthermore, the method includes controlling the robot based on the base map and the values ​​of the control attributes.

[0004] In two aspects of embodiments of this disclosure, an apparatus for controlling a robot is provided. The apparatus includes a thematic map acquisition module configured to acquire a base map indicating information about the robot's environment and a thematic map indicating control attributes. The apparatus also includes a control attribute determination module configured to determine values ​​of control attributes associated with the robot's pose based on the robot's pose and the thematic map. Furthermore, the apparatus includes a robot control module configured to control the robot based on the base map and the values ​​of the control attributes.

[0005] In a third aspect of embodiments of this disclosure, an electronic device is provided. The electronic device includes one or more processors; and a storage device for storing one or more programs, which, when executed by the one or more processors, cause the one or more processors to implement a method for controlling a robot. The method includes acquiring a base map indicating information about the robot's environment and a thematic map indicating control attributes. The method further includes determining values ​​of control attributes associated with the pose based on the robot's pose and the thematic map. Furthermore, the method includes controlling the robot based on the base map and the values ​​of the control attributes.

[0006] In a fourth aspect of embodiments of this disclosure, a computer program product is provided. The computer program product is tangibly stored on a non-transitory computer-readable medium and includes machine-executable instructions that, when executed, cause a machine to implement a method for controlling a robot. The method includes acquiring a base map indicating information about the robot's environment and a thematic map indicating control attributes. The method also includes determining values ​​of control attributes associated with the pose based on the robot's pose and the thematic map. Furthermore, the method includes controlling the robot based on the base map and the values ​​of the control attributes.

[0007] The summary section is provided to present the chosen concepts in a simplified form, which will be further described in the detailed description below. The summary section is not intended to identify key or principal features of the claimed subject matter, nor is it intended to limit the scope of the claimed subject matter. Attached Figure Description

[0008] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein:

[0009] Figure 1 A schematic diagram of an example environment in which several embodiments of the present disclosure may be implemented is shown;

[0010] Figure 2 A flowchart of a method for controlling a robot according to some embodiments of the present disclosure is shown;

[0011] Figure 3 A schematic diagram illustrating an example of controlling a robot based on multiple thematic maps according to some embodiments of the present disclosure is shown;

[0012] Figure 4 A schematic diagram illustrates an example of enabling a portion of multiple thematic maps based on robot configuration information according to some embodiments of the present disclosure;

[0013] Figure 5 A schematic diagram illustrating an example of a thematic map according to some embodiments of the present disclosure having control attributes including multiple sub-control attributes;

[0014] Figure 6 A block diagram of a device for controlling a robot according to some embodiments of the present disclosure is shown; and

[0015] Figure 7 A block diagram of a device capable of implementing several embodiments of the present disclosure is shown. Detailed Implementation

[0016] It is understood that all user-related data involved in this technical solution should be obtained and used only after authorization from the user. This means that if it is necessary to use a user's personal information in this technical solution, the user's explicit consent and authorization are required before obtaining this data; otherwise, no related data collection and use will be carried out. It should also be understood that when implementing this technical solution, relevant laws and regulations should be strictly followed in the process of data collection, use, and storage, and necessary technical measures should be taken to protect user data security and ensure the secure use of data.

[0017] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.

[0018] In the description of embodiments of this disclosure, the term "comprising" and similar terms should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first", "second", etc., may refer to different or the same objects unless explicitly stated. Other explicit and implicit definitions may also be included below.

[0019] Grid mapping is a commonly used method for representing the environment, widely applied in robot navigation and Simultaneous Localization and Mapping (SLAM). Grid mapping creates a two-dimensional representation of the environment by dividing it into uniform cells and labeling the occupancy status of each cell. In grid mapping, occupancy status can be used to represent obstacles. Occupancy status typically includes three values: occupied, free, and unknown. Occupied indicates that the cell is occupied by an obstacle, and the robot cannot enter the area; free indicates that the cell has no obstacles, and the robot can enter the area; unknown indicates that the state of the cell is unknown and may require further exploration.

[0020] As robot functions become more numerous and sophisticated, user and developer requirements for map functionality are becoming more diverse and specific. This means that standard map functions may be insufficient to meet all needs in robot applications, necessitating customized development and adjustments to adapt to different application scenarios and specific requirements. For example, robots need to identify whether no-entry lines are set in various areas of the map, whether depth image sensors (i.e., RGB-D sensors) can be activated, and speed limits for those areas. Some related technical solutions use only a single map to control the robot, but this approach can no longer support the ever-increasing variety of functions, and the scalability of such traditional maps is poor.

[0021] Therefore, embodiments of this disclosure provide a scheme for controlling a robot. In this scheme, the robot's control unit can acquire a base map indicating information about the robot's environment and a thematic map indicating control attributes. The control unit can acquire the robot's pose and determine the values ​​of the control attributes corresponding to that pose based on the acquired pose and the thematic map. Then, the control unit can control the robot based on the base map and the values ​​of the control attributes.

[0022] In this way, thematic maps can possess additional control attributes not found in the base map, enabling the robot to perform various additional functions. When expanding new functions, new thematic maps can be overlaid on the base map without modifying the base map, thus reducing the complexity of expanding new functions.

[0023] Figure 1 A schematic diagram of an example environment 100 in which various embodiments of this disclosure may be implemented is shown. For example... Figure 1 As shown, environment 100 includes robot 102, base map 106, and thematic map 108, wherein robot 102 includes control unit 104. In environment 100, base map 106 can be a grid map containing multiple cells, which contains environmental information about the area where the robot is located. For example, in base map 106, black cells indicate that the cell is occupied by an obstacle, and the robot's navigation path must avoid black cells. White cells indicate that the cell is in an empty state, that is, not occupied by an obstacle, and the robot can reach its destination by passing through white cells when planning its navigation path.

[0024] In environment 100, the thematic map 108 is a map used to implement additional control functions for the robot. These additional control functions may include, for example, turning the robot's RGB-D sensors on or off, prohibiting the robot from entering a specific location on the map, and limiting the robot's speed when passing through a location. The thematic map 108 includes associated control attributes 110, and a corresponding value for each control attribute 110 is pre-set at each location on the thematic map 108. For example, control attribute 110 may indicate whether the robot is prohibited from entering. If the value of control attribute 110 corresponding to a location is 0, it means the robot is not prohibited from entering that location; if the value of control attribute 110 corresponding to a location is 1, it means the robot is prohibited from entering that location for a specific time period; if the value of control attribute 110 corresponding to a location is 2, it means the robot is prohibited from entering that location for all time periods. It should be understood that although the control attributes 110 shown in environment 100 are enumerated integers (i.e., 0, 1, and 2), they are not intended to restrict the data type of the control attributes 110. For example, the control attribute 110 can also be a Boolean value, a series of integer values, a series of floating-point values, or text.

[0025] In environment 100, control unit 104 can determine the pose 112 of robot 102, which indicates the position of robot 102 in base map 106 and position in thematic map 108. Control unit 104 can determine the position of robot 102 on thematic map 108 based on pose 112, and then determine the value of control attribute 110 based on that position. Figure 1As shown, the control unit 104 can determine the current position of the robot 102 based on the pose 112, corresponding to cell 114 in the base map 106 and cell 118 in the thematic map 108. Then, the control unit 104 can obtain the value of the control attribute 110 associated with cell 118 in the thematic map 108. The value of the control attribute 110 associated with cell 118 can be the value of the control attribute 110 of cell 118 itself, or the value of the control attribute 110 of other cells near cell 118. For example, the control unit 104 can obtain the value of the control attribute 110 of cell 120, which is 0. A value of 0 indicates that the robot is not prohibited from entering cell 120. Furthermore, in the base map 106, cell 116 corresponding to cell 120 in the thematic map 108 is in an idle state; therefore, when planning the robot's movement path, cell 116 in the base map 106 can be included in the movement path. As another example, if control attribute 110 indicates whether the RGB-D sensor is on, control unit 104 can obtain the value of control attribute 110 of cell 118 itself in the thematic map 108, which is 0. When a value of 0 indicates that the RGB-D sensor is off, robot 102 can turn off the RGB-D sensor.

[0026] In this way, the thematic map 108 can have additional control attributes that the base map 106 does not possess, thereby enabling the robot 102 to perform various additional functions. Furthermore, when expanding new functions, new thematic maps can be overlaid on the base map 106 without modifying the base map 106, thus reducing the complexity of expanding new functions.

[0027] Figure 2 A flowchart of a method 200 for controlling a robot according to some embodiments of the present disclosure is shown. Method 200 may, for example, be... Figure 1 The control unit 104 in the middle performs the operation. For example... Figure 2 As shown in box 202, method 200 can acquire a base map indicating the robot's environment and a thematic map indicating control attributes. For example, in... Figure 1 In the environment 100 shown, the control unit 104 of robot 102 can acquire a base map 106 and a thematic map 108. The base map 106 can indicate information about the environment in which robot 102 is located. For example, black cells in the base map 106 can indicate the presence of obstacles at that location, while white cells can indicate the absence of obstacles at that location. The thematic map 108 is associated with control attributes 110, which may include, for example, turning the robot's RGB-D sensors on or off, prohibiting the robot from entering a certain location on the map, or limiting the robot's speed when it passes through a certain location.

[0028] In box 204, method 200 can determine the values ​​of control attributes associated with the pose based on the robot's pose and thematic maps. For example, in... Figure 1 In the environment 100 shown, the control unit 104 can determine the value of the control attribute 110 of the cell associated with the pose 112 of the robot 102 based on the pose 112. For example, in the thematic map 108, the cell corresponding to the pose 112 is cell 118, and cell 120 is the cell near cell 118. When the control attribute 110 indicates whether to prohibit the robot from moving to the current position, the control unit 104 can determine the value of the control attribute 110 of cell 120 in the thematic map 108. When the control attribute 110 indicates whether to turn the RGB-D sensor on or off, the control unit 104 can determine the value of the control attribute 110 of cell 118 in the thematic map.

[0029] In box 206, method 200 can control the robot based on the base map and the values ​​of control attributes. For example, in... Figure 1 In the illustrated environment 100, control unit 104 can control the robot based on the values ​​of control attributes 110 of cells associated with pose 112 in the base map 106 and the thematic map 108. For example, when control attribute 110 indicates whether to prohibit the robot from moving to its current position, control unit 104 can plan the movement path of robot 102 based on the value of cell 120. When control attribute 110 indicates to turn the RGB-D sensor on or off, control unit 104 can turn the RGB-D sensor of robot 102 on or off based on the value of cell 118.

[0030] In this way, thematic maps can possess additional control attributes not found in the base map, enabling the robot to perform various additional functions. When expanding new functions, new thematic maps can be overlaid on the base map without modifying the base map, thus reducing the complexity of expanding new functions.

[0031] In some embodiments, to implement multiple functions for controlling the robot, multiple thematic maps can be acquired, wherein multiple control attributes corresponding to the multiple thematic maps are different. Then, the values ​​of the multiple control attributes associated with the robot's pose can be determined based on the robot's pose and the multiple thematic maps, and the robot can be controlled based on the values ​​of these multiple control attributes.

[0032] Figure 3 A schematic diagram of an example 300 for controlling a robot based on multiple thematic maps according to some embodiments of the present disclosure is shown. Figure 3As shown, in Example 300, robot 302 can obtain a base map 304 and multiple thematic maps, namely, thematic maps 305, 306, ..., and 307. The base map 304 may include information about the environment in which robot 302 is located; for example, the base map 304 may be... Figure 1 The base map is 106. In Example 300, thematic map 305 is associated with control attribute 315, thematic map 306 with control attribute 316, and thematic map 307 with control attribute 317. It should be understood that, for the sake of brevity, Figure 3 Only three thematic maps are shown, but this is not intended to limit the number of thematic maps; embodiments of this disclosure may include more or fewer thematic maps.

[0033] In some embodiments, the thematic map can be a no-entry line map, and control attributes can indicate whether to prohibit the robot from moving to its current location. To ensure that the robot does not enter areas it should not enter based on correct positioning and to avoid accidents, no-entry lines can be set on the thematic map. The location or cell where the no-entry line is set is an area where the robot is prohibited from entering. For example, areas where no-entry lines are set may include glass walls. Because glass is transparent, the robot may not be able to accurately identify glass walls through its sensors, which could easily lead to a collision. Areas where no-entry lines are set may also include the area around suspended objects (e.g., tables or chairs). Because there is open space below suspended objects, the robot may mistakenly believe that the area is passable, but a collision may actually occur. In addition, areas where no-entry lines are set may also include hazardous areas (e.g., escalator or stairwell entrances). Because these areas pose a risk of falls or other safety hazards, robot entry may lead to accidents. By setting no-entry lines at corresponding locations on the thematic map, the robot can consider the prohibited areas in the thematic map in addition to the base map when executing path planning algorithms, thereby enabling the robot to avoid these areas and improve robot safety.

[0034] In some embodiments, the thematic map can be an RGB-D map, and control attributes can indicate whether to activate the RGB-D sensor at the current location. In areas prone to misidentification, the RGB-D sensor can be deactivated to prevent erroneous data from affecting navigation and decision-making. For example, in areas with reflective surfaces, the RGB-D sensor can be deactivated because reflective surfaces cause light beam reflection, potentially generating incorrect depth data in such areas. Furthermore, in areas inside elevators or near elevator doors, the laser emitter of the RGB-D sensor may interfere with the elevator door sensor, causing the elevator door to malfunction. By setting the activation or deactivation of the RGB-D sensor at corresponding locations on the thematic map, when performing path planning algorithms based on the base map and the thematic map, it can be ensured that the robot automatically deactivates the RGB-D sensor's camera, laser emitter, or both, when entering these areas, thereby improving data accuracy and reliability.

[0035] In some embodiments, the thematic map can be a speed-limited area map, and control attributes can indicate speed limits corresponding to the current location. For example, in areas with high pedestrian traffic, a lower speed limit can be set at the corresponding location on the thematic map, requiring the robot to slow down to avoid collisions with pedestrians. In warehouses or logistics centers, between open aisles and shelves, a higher speed limit can be set at the corresponding location on the thematic map, allowing the handling robot to move quickly and improving transportation efficiency. Therefore, by setting speed limits in the thematic map, both robot safety and work efficiency can be improved.

[0036] In some embodiments, the thematic map can be a point cloud validity map, and control attributes can indicate whether the point cloud data corresponding to the current location is valid. For example, in situations such as the presence of strong light or reflective surfaces in the area, LiDAR may generate data with significant errors. Setting the point cloud data to invalid at the corresponding location on the thematic map can filter out data with significant errors, thereby ensuring that the robot uses high-quality data when performing path planning algorithms based on the base map and the thematic map, reducing navigation deviations caused by erroneous data. Furthermore, moving objects in a dynamic environment (e.g., pedestrians) can cause inaccurate point cloud data. Therefore, setting these areas to invalid point cloud data on the thematic map enables the robot to more accurately identify and avoid obstacles.

[0037] In some embodiments, the thematic map can be a positioning technology map, and control attributes can indicate the positioning technology used at the current location. Since different areas may have different positioning technology requirements, different positioning technologies can be set at different locations on the thematic map. For example, in areas with good lighting conditions, visual SLAM positioning technology can be used on the thematic map; in areas near windows, a global positioning system can be used; and in areas with Wi-Fi or Bluetooth, Wi-Fi / Bluetooth positioning technology can be used. By using the most suitable positioning technology in different areas, positioning accuracy can be improved, and system reliability can be enhanced.

[0038] In such Figure 3 In Example 300, the control attributes 315, 316, and 317 of thematic maps 305, 306, and 307 can correspond to different robot functions. For example, thematic map 305 can be a no-entry map, and control attribute 315 can indicate whether to prohibit the robot from moving to the current position; thematic map 306 can be an RGB-D map, and control attribute 316 can indicate whether to activate the RGB-D sensor at the current position; thematic map 307 can be a speed-limited area map, and control attribute 317 can indicate the speed limit corresponding to the current position. After robot 302 determines its current pose 318, the values ​​of control attributes 315, 316, and 317 at the corresponding positions in thematic maps 305, 306, and 307 can be determined based on the pose 318, and the corresponding functions of robot 302 can be controlled based on these values.

[0039] In this way, multiple thematic maps for various robot functions can be overlaid on the base map 304, thereby improving the robot's ability to control and complete more complex robot tasks.

[0040] In some embodiments, multiple thematic maps can be acquired, each corresponding to different control attributes. Additionally, configuration information associated with the robot can be acquired. This configuration information can then be used to select one or more thematic maps as the target thematic map.

[0041] Figure 4 A schematic diagram of example 400 is shown, illustrating the use of robot configuration information to enable a subset of multiple thematic maps according to some embodiments of this disclosure. Figure 4As shown, in Example 300, robot 402 can acquire a base map 404 and multiple thematic maps, namely, thematic maps 405, 406, ..., and 407. Base map 404 may include information about the environment in which robot 402 is located. In Example 400, thematic map 405 is associated with control attribute 415, thematic map 406 is associated with control attribute 416, and thematic map 407 is associated with control attribute 417, where control attributes 415, 416, and 417 are different control attributes.

[0042] In Example 400, each thematic map may include corresponding configuration requirements. When the robot 402's configuration meets the configuration requirements of the thematic map, the thematic map can be enabled; otherwise, the thematic map can be disabled. For example, thematic map 405 has corresponding configuration requirements 425, thematic map 406 has corresponding configuration requirements 426, and thematic map 407 has corresponding configuration requirements 427. When thematic map 405 is an RGB-D map and control attribute 415 indicates whether to enable the RGB-D sensor at the current location, the configuration requirement 425 of the thematic map 405 may include, for example, that the robot is equipped with an RGB-D sensor. The robot 402 can obtain its own configuration information 430, which may include, for example, the equipped sensors, the function or model of the equipped sensors, the model of the robot 402, and the parameters of the robot 402 (e.g., maximum speed). If the configuration information 430 indicates that the robot 402 is equipped with an RGB-D sensor, then the robot 402 can enable the thematic map 405; otherwise, the robot 402 can disable the thematic map 405.

[0043] In Example 400, robot 402 can match configuration information 430 with configuration requirements 425, 426, and 427 respectively, and enable a portion of the thematic maps based on the matching results. Then, robot 402 can determine the values ​​of control attributes associated with robot 402's pose 428 in the enabled thematic maps, and control robot 402 to perform corresponding functions based on the base map 404 and these control attribute values.

[0044] In this way, after acquiring multiple thematic maps, robot 402 can determine which thematic maps can be enabled based on its own configuration information and the configuration requirements of the thematic maps. This reduces the occurrence of errors or malfunctions due to mismatches between the robot's configuration and the thematic map's configuration requirements, thereby improving system stability.

[0045] In some embodiments, the control attribute associated with the thematic map may include multiple sub-control attributes, and when determining the value of the control attribute associated with the pose based on the pose and the thematic map, multiple values ​​of the multiple sub-control attributes associated with the pose may be determined based on the pose and the thematic map. Then, the value of the control attribute may be determined based on the multiple values ​​of the multiple sub-control attributes.

[0046] Figure 5 A schematic diagram of example 500, showing control attributes of a thematic map according to some embodiments of the present disclosure, including multiple sub-control attributes, is illustrated. Figure 5 As shown, in Example 500, robot 502 can acquire a base map 504 and a thematic map 506, which is associated with control attribute 508. In Example 500, control attribute 508 can include multiple sub-control attributes (i.e., sub-control attributes 510 and 512), and the value of control attribute 508 can be determined based on the values ​​of its sub-control attributes. For example, the thematic map 506 can be an RGB-D map, and control attribute 508 can indicate whether the RGB-D sensor is turned on at the current location. The value of control attribute 508 can be, for example, 0, 1, 2, and 3, where 0 indicates that both the camera and laser emitter of the RGB-D sensor are turned off, 1 indicates that the camera is turned on and the laser emitter is turned off, 2 indicates that the camera is turned off and the laser emitter is turned on, and 3 indicates that both the camera and laser emitter are turned on.

[0047] In Example 500, sub-control attribute 510 may, for example, indicate whether the camera of the RGB-D sensor is turned on at the current position. The value of sub-control attribute 510 may be 0 or 1, where 0 indicates the camera is off and 1 indicates the camera is on. Sub-control attribute 512 may, for example, indicate whether the laser emitter of the RGB-D sensor is turned on at the current position. The value of sub-control attribute 512 may be 0 or 1, where 0 indicates the laser emitter is off and 1 indicates the laser emitter is on. Thus, by combining the values ​​of sub-control attributes 510 and 512, the value of control attribute 508 can be determined. Then, robot 502 can determine the value of control attribute 508 associated with the pose 516 of robot 502 in the thematic map 506, and control robot 502 to perform corresponding functions based on the base map 504 and the value of control attribute 508.

[0048] This approach allows for more precise control of the robot's functions, enabling it to perform different functions in multiple areas and for various scenarios, thus improving the applicability of thematic maps.

[0049] Figure 6 A block diagram of an apparatus 600 for generating odometry information for a robot, according to some embodiments of the present disclosure, is shown. Figure 6As shown, the device 600 includes a thematic map acquisition module 602, configured to acquire a base map indicating information about the robot's environment and a thematic map indicating control attributes. The device 600 also includes a control attribute determination module 604, configured to determine the values ​​of control attributes associated with the robot's pose based on the robot's pose and the thematic map. Furthermore, the device 600 includes a robot control module 606, configured to control the robot based on the base map and the values ​​of the control attributes.

[0050] In some embodiments, the control attribute determination module 606 includes:

[0051] The thematic map location determination module is configured to determine the robot's position on the thematic map based on the pose; and

[0052] The thematic map location module is configured to determine the value of the control attribute based on the location.

[0053] In some embodiments, the thematic map is a target thematic map, and the apparatus 600 further includes:

[0054] The second thematic map acquisition module is configured to acquire multiple thematic maps, each with different control attributes corresponding to the multiple thematic maps.

[0055] The configuration information past module is configured to acquire configuration information associated with the robot; and

[0056] The configuration information usage module is configured to enable one or more thematic maps among the plurality of thematic maps as the target thematic map based on the configuration information.

[0057] In some embodiments, the control attribute associated with the thematic map includes a plurality of sub-control attributes, and determining the value of the control attribute associated with the pose based on the pose and the thematic map includes:

[0058] A sub-control attribute determination module is configured to determine multiple values ​​of the plurality of sub-control attributes of the control attributes associated with the pose based on the pose and the thematic map; and

[0059] The sub-control attribute usage module is configured to determine the value of the control attribute based on the plurality of values ​​of the plurality of sub-control attributes.

[0060] In some embodiments, the control attributes of the thematic map include whether to activate the depth image sensor at the current location.

[0061] In some embodiments, the depth image sensor includes a camera and a laser emitter, and the plurality of sub-control attributes include whether the camera is turned on and whether the laser emitter is turned on.

[0062] In some embodiments, the control attributes of the thematic map include whether to prohibit the robot from moving to its current location.

[0063] In some embodiments, the control attributes of the thematic map include whether the point cloud data corresponding to the current location is valid.

[0064] In some embodiments, the control attributes of the thematic map include a speed limit corresponding to the current location.

[0065] In some embodiments, the control attributes of the thematic map include the positioning technology used at the current location.

[0066] It is understood that by utilizing the apparatus 600 of this disclosure, at least one of the many advantages achievable by the methods or processes described above can be realized. For example, by utilizing the apparatus 600, thematic maps can possess additional control attributes not present in the base map, thereby enabling the robot to perform various additional functions. When expanding new functions, new thematic maps can be overlaid on the base map without modifying the base map, thereby reducing the complexity of expanding new functions.

[0067] Figure 7 A block diagram of a device 700 capable of implementing various embodiments of the present disclosure is shown. Device 700 may be, for example, as... Figure 1 The control unit 104 is shown. (As shown...) Figure 7 As shown, device 700 includes a central processing unit (CPU) and / or a graphics processing unit (GPU) 701, which can perform various appropriate actions and processes according to computer program instructions stored in read-only memory (ROM) 702 or loaded from storage unit 708 into random access memory (RAM) 703. Various programs and data required for the operation of device 700 can also be stored in RAM 703. The CPU / GPU 701, ROM 702, and RAM 703 are interconnected via bus 704. Input / output (I / O) interface 705 is also connected to bus 704. Although not shown in... Figure 7 As shown, device 700 may also include a coprocessor.

[0068] Multiple components in device 700 are connected to I / O interface 705, including: input unit 706, such as keyboard, mouse, etc.; output unit 707, such as various types of monitors, speakers, etc.; storage unit 708, such as disk, optical disk, etc.; and communication unit 709, such as network card, modem, wireless transceiver, etc. Communication unit 709 allows device 700 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0069] The various methods or processes described above can be executed by CPU / GPU 701. For example, in some embodiments, the methods can be implemented as computer software programs tangibly contained in a machine-readable medium, such as storage unit 708. In some embodiments, part or all of the computer program can be loaded and / or installed on device 700 via ROM 702 and / or communication unit 709. When the computer program is loaded into RAM 703 and executed by CPU / GPU 701, one or more steps or actions in the methods or processes described above can be performed.

[0070] In some embodiments, the methods and processes described above can be implemented as a computer program product. The computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for performing various aspects of this disclosure.

[0071] Computer-readable storage media can be tangible devices capable of holding and storing instructions for use by an instruction execution device. Computer-readable storage media can be, for example, but not limited to, electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination thereof. More specific examples (a non-exhaustive list) of computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disc read-only memory (CD-ROM), digital multifunction disc (DVD), memory sticks, floppy disks, mechanical encoding devices, such as punch cards or recessed protrusions storing instructions thereon, and any suitable combination thereof. The computer-readable storage media used herein are not to be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.

[0072] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, a local area network (LAN), a wide area network (WAN), and / or a wireless network, to an external computer or external storage device. The network may include copper cables, fiber optic cables, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.

[0073] Computer program instructions used to perform the operations of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, status setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​and conventional procedural programming languages. The computer-readable program instructions may execute entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized by utilizing the status information of the computer-readable program instructions to implement various aspects of this disclosure.

[0074] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processing unit of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0075] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0076] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of devices, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0077] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical applications, or technical improvements to the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.

Claims

1. A method for controlling a robot, comprising: obtaining a base map indicative of information of an environment where the robot is located and a thematic map indicative of a control attribute; determining, based on a pose of the robot and the thematic map, a value of the control attribute associated with the pose; and controlling the robot based on the base map and the value of the control attribute.

2. The method of claim 1, wherein determining, based on the pose and the thematic map, the value of the control attribute associated with the pose comprises: determining, based on the pose, a location of the robot on the thematic map; and determining, based on the location, the value of the control attribute.

3. The method of claim 1, wherein the thematic map is a target thematic map, the method further comprising: obtaining a plurality of thematic maps corresponding to a plurality of control attributes different from each other; obtaining configuration information associated with the robot; and enabling, based on the configuration information, one or more of the plurality of thematic maps as the target thematic map.

4. The method of claim 1, wherein the control attribute associated with the thematic map comprises a plurality of sub-control attributes, and determining, based on the pose and the thematic map, the value of the control attribute associated with the pose comprises: determining, based on the pose and the thematic map, a plurality of values of the plurality of sub-control attributes of the control attribute associated with the pose; and determining, based on the plurality of values of the plurality of sub-control attributes, the value of the control attribute.

5. The method of claim 4, wherein the control attribute of the thematic map comprises whether to turn on a depth image sensor at a current location.

6. The method of claim 5, wherein the depth image sensor comprises a camera and a laser emitter, and the plurality of sub-control attributes comprise whether to turn on the camera and whether to turn on the laser emitter.

7. The method of claim 1, wherein the control attribute of the thematic map comprises whether to prohibit robot movement to a current location.

8. The method of claim 1, wherein the control attribute of the thematic map comprises whether point cloud data corresponding to a current location is valid.

9. The method of claim 1, wherein the control attribute of the thematic map comprises a speed limit corresponding to a current location.

10. The method of claim 1, wherein the control attribute of the thematic map comprises a localization technology employed at a current location.

11. An apparatus for controlling a robot, comprising: a thematic map obtaining module configured to obtain a base map indicative of information of an environment where the robot is located and a thematic map indicative of a control attribute; a control attribute determining module configured to determine, based on a pose of the robot and the thematic map, a value of the control attribute associated with the pose; and a robot control module configured to control the robot based on the base map and the value of the control attribute. ​ ​ ​ ​ ​ 12. An electronic device, comprising: a processor; and a memory coupled with the processor, the memory having stored therein instructions that, when executed by the processor, cause the electronic device to perform the method of any of claims 1-10.

13. A computer program product, tangibly stored on a non-transitory computer- readable medium and comprising machine-executable instructions that, when executed, cause a machine to implement the method of any of claims 1-10.