Control method and apparatus for self-propelled device, device, and readable storage medium

By generating an obstacle height map and determining the area type, self-propelled equipment can avoid low spaces, solving the problem of difficulty leaving complex environments and improving task execution efficiency.

WO2025195478A1PCT designated stage Publication Date: 2025-09-25BEIJING ROBOROCK INNOVATION TECH CO LTD
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/083881
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-20
Filing Date
2025-03-20
Publication Date
2025-09-25

AI Technical Summary

Technical Problem

It may be difficult for self-propelled devices to leave complex environments, resulting in the inability to continue the mission or extending the completion time.

Method used

By obtaining the obstacle height information of the current detection area of ​​the self-propelled device, an obstacle height map is generated, the area type is determined, and the walking strategy is determined based on the area type and target location to avoid low space areas to improve task execution efficiency.

Benefits of technology

It effectively prevents self-propelled equipment from falling into low spaces that are difficult to escape, improves task completion efficiency, and ensures that self-propelled equipment can successfully complete tasks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025083881_25092025_PF_FP_ABST
    Figure CN2025083881_25092025_PF_FP_ABST
Patent Text Reader

Abstract

A control method and apparatus for a self-propelled device, a device, and a readable storage medium. The method comprises: acquiring a region type of a current detection region of a self-propelled device, wherein the region type is determined on the basis of height information of obstacles within the current detection region (S101); acquiring a target position to which the self-propelled device is to move (S102); and, on the basis of the region type and the target position, determining a movement strategy for the self-propelled device (S103).
Need to check novelty before this filing date? Find Prior Art

Description

Control method, device, equipment and readable storage medium for self-propelled equipment CROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims priority to the application number 202410324146.5 filed with the National Intellectual Property Administration of China on March 20, 2024, entitled “Control method, device, equipment and readable storage medium for self-propelled equipment,” the entire contents of which are incorporated herein by reference. Technical Field

[0002] The present application relates to the technical field of self-propelled equipment, and in particular to a control method, apparatus, device and readable storage medium for self-propelled equipment. Background Art

[0003] With the continuous advancement of science and technology, autonomous vehicles (such as sweeping robots, mopping robots, robotic dogs, and humanoid robots) are becoming increasingly intelligent. Some autonomous vehicles can automatically map their surroundings and use this map to plan paths and avoid obstacles during movement. However, due to the complexity of their environments, autonomous vehicles may find it difficult to exit certain spaces after entering them, resulting in the inability to continue their current mission or significantly prolonging the task's completion time. Summary of the Invention

[0004] In view of the above technical problems, the embodiments of the present application provide a control method, apparatus, device and readable storage medium for a self-propelled device.

[0005] In a first aspect, the present application provides a method for controlling a self-propelled device, the method comprising:

[0006] Obtaining an area type of a current detection area of ​​the self-propelled device, where the area type is determined based on height information of obstacles within the current detection area;

[0007] Obtaining a target position of the self-propelled device;

[0008] A walking strategy of the self-propelled device is determined based on the area type and the target location.

[0009] In some embodiments, obtaining the area type of obstacles in the current detection area of ​​the autonomous vehicle includes:

[0010] Determining an obstacle height map, wherein the obstacle height map includes height information and position information of obstacles in the current detection area;

[0011] The area type is determined based on the obstacle height map.

[0012] In some embodiments, determining an obstacle height map includes:

[0013] The current detection area is detected by the depth sensor on the self-propelled device to obtain point cloud data of obstacles in the current detection area, and the obstacle height map is generated based on the point cloud data.

[0014] In some embodiments, determining the area type based on the obstacle height map includes:

[0015] Determining, based on the obstacle height map, whether there is a target suspended obstacle around the self-propelled device, wherein the height of the target suspended obstacle is greater than the body height of the self-propelled device and less than or equal to a first height;

[0016] If the target suspended obstacle exists, the area type is determined based on the position of the target suspended obstacle and the current position of the self-propelled device.

[0017] In some embodiments, the area type is an area type surrounded by a target suspended obstacle, and the height of the target suspended obstacle is greater than the body height of the self-propelled device and less than or equal to a first height; and obtaining the target position of the self-propelled device includes:

[0018] An area search is performed on the obstacle height map, and the target position is determined from the searched target area.

[0019] In some embodiments, performing an area search on the obstacle height map and determining the target location from the searched target area includes:

[0020] Searching for a non-low area from the obstacle height map as the target area, wherein no obstacles exist in the non-low area, or the height of the obstacles in the non-low area is greater than a second height, and the second height is greater than the first height;

[0021] The target position is determined from the non-low-profile area.

[0022] In some embodiments, performing an area search on the obstacle height map and determining the target location from the searched target area includes:

[0023] Searching for a feasible low area from the obstacle height map as the target area, wherein the height of obstacles in the feasible low area is greater than the first height and less than or equal to a second height, and the second height is greater than the first height;

[0024] The target position is determined from the feasible low-rise area.

[0025] In some embodiments, performing an area search on the obstacle height map and determining the target location from the searched target area includes:

[0026] Searching for an infeasible low area from the obstacle height map as the target area, wherein all obstacles in the infeasible low area are the target suspended obstacles;

[0027] The target position is determined from the infeasible low area.

[0028] In some embodiments, performing an area search on the obstacle height map and determining the target location from the searched target area includes:

[0029] Searching for an unknown area from the obstacle height map as the target area, wherein obstacles in the unknown area are in an unknown state;

[0030] The target location is determined from the unknown area.

[0031] In some embodiments, performing an area search on the obstacle height map includes:

[0032] The obstacle height map is searched regionally according to a preset regional search priority, wherein, in the preset regional search priority, the search priorities of non-low areas, feasible low areas, infeasible low areas, and unknown areas decrease in sequence.

[0033] In some embodiments, the area type is an area type that is not surrounded by a target suspended obstacle, and the height of the target suspended obstacle is greater than the height of the self-propelled device and less than or equal to the first height;

[0034] The obtaining of the target position of the self-propelled device includes:

[0035] Searching for an unknown area from the obstacle height map, wherein obstacles in the unknown area are in an unknown state;

[0036] The target location is determined from the unknown area.

[0037] In some embodiments, determining the area type based on the location of the target suspended obstacle and the current location of the autonomous device includes:

[0038] Based on the position of the target suspended obstacle and the current position of the self-propelled device, determining whether the self-propelled device is located within a target annular area formed by the target suspended obstacles, wherein a gap between target suspended obstacles located in the target annular area is smaller than a passage width of the self-propelled device;

[0039] If the self-propelled device is located in the target annular area, the area type is determined to be an area type surrounded by the target suspended obstacle.

[0040] In some embodiments, determining the region type further comprises:

[0041] If the target suspended obstacle does not exist around the self-propelled device, or the self-propelled device is not located in the target annular area, the area type is determined to be an area type that is not surrounded by the target suspended obstacle.

[0042] In some embodiments, determining the walking strategy of the autonomous walking device includes:

[0043] If the area type is an area type surrounded by the target suspended obstacle, determining whether the forward travel area of ​​the self-propelled device includes an infeasible area, where the height of the low obstacles in the infeasible area is less than or equal to the height of the self-propelled device;

[0044] The walking strategy is determined based on the position of the low obstacle in the infeasible area and the target position, wherein the walking strategy is a route that avoids the low obstacle.

[0045] In some embodiments, determining the walking strategy of the autonomous walking device includes:

[0046] If the area type is an area type not surrounded by the target suspended obstacle, determining whether the forward travel area of ​​the self-propelled device includes an infeasible area and / or an infeasible low area, the height of the low obstacle in the infeasible area being less than or equal to the body height of the self-propelled device, and the obstacle in the infeasible low area being the target suspended obstacle;

[0047] The walking strategy is determined based on the position of the low obstacle in the infeasible area, the position of the target suspended obstacle in the infeasible low area, and the target position, wherein the walking strategy is a route that avoids the low obstacle and the target suspended obstacle.

[0048] In some embodiments, after determining the walking strategy of the autonomous device, the method further includes:

[0049] During the movement of the autonomous device according to the walking strategy, updating the obstacle height map;

[0050] Determining whether a new obstacle appears on the route of the walking strategy based on the updated obstacle height map;

[0051] If the new obstacle appears, the walking strategy is adjusted based on the position of the new obstacle to avoid the new obstacle.

[0052] In some embodiments, generating the obstacle height map based on the point cloud data includes:

[0053] Filtering the point cloud data based on N preset height ranges, where N is a positive integer;

[0054] Based on the filtered N groups of point cloud data, N height submaps are generated, wherein the N height submaps correspond one-to-one to the N groups of preset height ranges, and the obstacle height map includes the N height submaps.

[0055] In some embodiments, the N height submaps include a first height submap, a second height submap, and a third height submap, and the first height is less than the second height;

[0056] Among them, the third height submap is used to represent the presence of obstacles within a range less than or equal to the fuselage height of the self-propelled device, the second height submap is used to represent the presence of obstacles within a range greater than the fuselage height and less than or equal to the first height, and the first height submap is used to represent the presence of obstacles within a range greater than the fuselage height of the self-propelled device and less than the second height.

[0057] In some embodiments, if the first area in the first height sub-map and the third height sub-map indicates that no obstacles exist, the first area is determined to be a non-low area.

[0058] In some embodiments, if the second area in the first height submap indicates the presence of an obstacle, and the second area in the second height submap and the third height submap indicates the absence of an obstacle, the second area is determined to be a feasible low area.

[0059] In some embodiments, if the third area in the first height submap and the second height submap indicates the presence of an obstacle, and the third area in the third height submap indicates the absence of an obstacle, the third area is determined to be an infeasible low area.

[0060] In some embodiments, if the fourth area in the third height sub-map indicates the presence of an obstacle, the fourth area is determined to be an infeasible area.

[0061] In a second aspect, the present application provides a control device for a self-propelled device, the device comprising:

[0062] A first acquisition module is configured to acquire an area type of a current detection area of ​​the self-propelled device, where the area type is determined based on height information of obstacles within the current detection area;

[0063] A second acquisition module is used to obtain the target position of the self-propelled device;

[0064] A processing module is used to determine a walking strategy of the self-propelled device based on the area type and the target location.

[0065] In a third aspect, the present application provides a self-propelled device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the control method for the self-propelled device provided in the first aspect when executing the program.

[0066] In a fourth aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the control method for the self-propelled device provided in the first aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0067] FIG1 is a flow chart of a control method for a self-propelled device provided in an embodiment of this specification;

[0068] FIG2 is a schematic diagram of an obstacle height map provided in an embodiment of this specification;

[0069] FIG3 is a flow chart of determining an area type based on the positional relationship between a self-propelled device and a target suspended obstacle according to an embodiment of this specification;

[0070] FIG4 is a schematic diagram of a self-propelled device surrounded by a target suspended obstacle provided by an embodiment of this specification;

[0071] FIG5 is a flowchart of determining a walking strategy when the area type is an area type surrounded by the target suspended obstacle provided in an embodiment of this specification;

[0072] FIG6 is a flowchart of determining a walking strategy when the area type is an area type not surrounded by the target suspended obstacle, according to an embodiment of this specification;

[0073] FIG7 is a flow chart of determining a walking strategy for a self-propelled device according to an embodiment of this specification;

[0074] FIG8 is a schematic diagram of a control device for a self-propelled device provided in an embodiment of this specification;

[0075] FIG9 is a schematic diagram of a self-propelled device provided in an embodiment of this specification. DETAILED DESCRIPTION

[0076] In order to better understand the above technical solutions, the technical solutions of the embodiments of this specification are described in detail below through the accompanying drawings and specific embodiments. It should be understood that the embodiments of this specification and the specific features in the embodiments are detailed descriptions of the technical solutions of the embodiments of this specification, rather than limitations on the technical solutions of this specification. In the absence of conflict, the embodiments of this specification and the technical features in the embodiments can be combined with each other.

[0077] First of all, it should be noted that the term "and / or" appearing in this article is only a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent three situations: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the front and back associated objects are in an "or" relationship. The terms "multiple" and "at least two" include two or more than two situations. The terms "first", "second", "third", etc. are only used as labels, and are not restrictions on the number of their objects and the order of their relationships. The terms "front", "back", "up", "down", "left", "right", etc. are only used to indicate relative position relationships. When the absolute position of the described object changes, the relative position relationship may also change accordingly.

[0078] As shown in FIG1 , a flow chart of a control method for a self-propelled device provided in an embodiment of this specification is provided. The method includes the following steps:

[0079] Step S101: obtaining the area type of the current detection area of ​​the self-propelled device, where the area type is determined based on the height information of obstacles in the current detection area;

[0080] Step S102: Acquire the target position of the self-propelled device;

[0081] Step S103: Determine a walking strategy of the autonomous vehicle based on the area type and the target location.

[0082] The methods provided in the embodiments of this specification can be applied to self-propelled devices, including but not limited to sweeping robots, mopping robots, and robotic dogs. The methods provided in the embodiments of this specification can also be applied to servers that are communicatively connected to self-propelled devices, and can also be applied to systems that include self-propelled devices and servers, without limitation.

[0083] Self-propelled devices may be equipped with detection sensors, such as depth sensors and radars, which can collect data about the environment in which the self-propelled device is located, such as location information and height information of obstacles in the environment.

[0084] In step S101, the current detection area of ​​the self-propelled device may be the entire area that can be detected by the sensor when the self-propelled device is at the current position, or may be a partial area that can be currently detected by the detection sensor, which is not limited here.

[0085] In the embodiments of this specification, there may be multiple types of areas in the environment where the self-propelled device is located. In some embodiments, based on the different heights of obstacles in the area, the area types may include but are not limited to infeasible areas, infeasible low areas, feasible low areas, and non-low areas. The following describes the above-mentioned area types and the height ranges of obstacles in the areas.

[0086] The height of the obstacles in the infeasible area is less than or equal to the body height of the self-propelled device, that is, the self-propelled device cannot pass through the infeasible area.

[0087] In an unfeasible low area, there are obstacles with a height higher than the fuselage height and less than or equal to a first height. The first height can be set according to actual needs, for example, 2cm or 3cm higher than the fuselage height. Obstacles in an unfeasible low area create a low passage. Although autonomous vehicles can pass through, the space is too low and entering may make it difficult to exit.

[0088] For the infeasible low area, according to the distribution of the target suspended obstacles in the infeasible low area, the infeasible low area can also be divided into an infeasible low area surrounded by the target suspended obstacles and an infeasible low area not surrounded by the target suspended obstacles, wherein the target suspended obstacle is the corresponding obstacle in the infeasible low area. For the infeasible low area surrounded by the target suspended obstacles, the target suspended obstacles in the infeasible low area form an annular low space area. When the self-propelled device is located in the annular low space area, it is more difficult to leave the area. For the infeasible low area not surrounded by the target suspended obstacles, the area does not contain an annular low space area. For example, the low space formed by the target suspended obstacles can be dispersed. Therefore, the self-propelled device can leave the area more smoothly.

[0089] The feasible low-rise area contains obstacles with a suspended height greater than the first height and less than or equal to the second height. The second height can be set according to actual needs, for example, the second height can be 5cm or 6cm higher than the height of the autonomous vehicle. The obstacles in the feasible low-rise area also form a low space that the autonomous vehicle can pass through. However, compared to the infeasible low-rise area, the height of the space formed in the feasible low-rise area is higher than the height of the low space in the infeasible low-rise area. The height of the low space in the feasible low-rise area does not affect the movement of the autonomous vehicle, and the autonomous vehicle can enter and exit the feasible low-rise area relatively freely.

[0090] There is no obstacle in the non-low area, or there is an obstacle with a suspended height greater than the second height. The non-low area will not cause any obstacle to the movement of the self-propelled device.

[0091] In step S101 , based on the obstacle height information of the current detection area, the area type of the current detection area of ​​the self-propelled walking device may be determined from the above area types.

[0092] In the embodiments of this specification, the area type of the current detection area can be determined in a variety of ways. For example, by detecting the height information of obstacles in the current detection area and comparing the height information with the obstacle height range corresponding to each area type, the area type of the current detection area can be determined.

[0093] In some embodiments, the area type of the current detection area can be determined by the following steps: determining an obstacle height map, wherein the obstacle height map contains height information and position information of obstacles in the current detection area; and determining the area type based on the obstacle height map.

[0094] It should be noted that while the autonomous vehicle is moving, its detection sensors can collect real-time data on obstacles in the surrounding environment and update the obstacle height map based on this data. Therefore, the obstacle height map can record the location and height information of all obstacles detected by the autonomous vehicle, including those in the current detection area.

[0095] After obtaining the obstacle height map, by querying the obstacle height map, the position and height of the obstacles in the current detection area can be obtained, and then the area type of the current detection area can be determined.

[0096] In an embodiment of the present specification, the obstacle height map can be generated by the following steps: detecting the current detection area through the depth sensor on the self-propelled device, obtaining point cloud data of obstacles in the current detection area, and generating the obstacle height map based on the point cloud data.

[0097] The depth sensor, which can be a ToF (Time of Flight) sensor, can obtain point cloud data of obstacles within the detection area. When constructing an obstacle height map, the position information of each point in the point cloud data can be mapped to the obstacle height map and the corresponding height information can be recorded.

[0098] In some embodiments, generating an obstacle height map based on point cloud data can be achieved by the following steps: filtering the point cloud data based on N preset height ranges, where N is a positive integer; generating N height submaps based on the filtered N groups of point cloud data, wherein the N height submaps correspond one-to-one to the N groups of preset height ranges, and the obstacle height map includes the N height submaps.

[0099] In the specific implementation process, the value of N can be set according to actual needs, such as 1, 2, 3, etc., and is not limited here. Since the point cloud data contains the position information and height information of each point, based on the height information of each point in the point cloud data, the points in the point cloud data can be mapped to different preset height ranges. Based on the point cloud data corresponding to each preset height range, a height submap is constructed. Each height submap is used to represent the distribution of obstacles within the corresponding preset height range.

[0100] For ease of explanation, taking N as 3 as an example, the obstacle height map may include a first height submap, a second height submap, and a third height submap, wherein the third height submap is used to represent the presence of obstacles within a range less than or equal to the fuselage height of the self-propelled device, the second height submap is used to represent the presence of obstacles within a range greater than the fuselage height and less than or equal to the first height, and the first height submap is used to represent the presence of obstacles within a range greater than the fuselage height of the self-propelled device and less than the second height.

[0101] For example, if the height of the self-propelled device is h, the first height is h+3, and the second height is h+5, then the preset height range corresponding to the third height submap M3 is less than or equal to h, the preset height range corresponding to the second height submap M2 is greater than h and less than or equal to h+3, and the preset height range corresponding to the first height submap M1 is greater than h and less than or equal to h+5.

[0102] To better understand the generation process of the obstacle height map, the following is an explanation using the three height sub-maps M1, M2, and M3 as examples.

[0103] In the embodiment of the present specification, the three height sub-maps can all be grid maps. Then, the obstacle height map can include three stacked grid maps, and the stacking order from top to bottom is M1, M2, and M3. As shown in Figure 2, each stacked height sub-map records the obstacle information within the corresponding height range in the form of a two-dimensional grid.

[0104] The grayscale value of the grid in the height submap can be Color_min to Color_max, where the values ​​of Color_min and Color_max can be set according to actual needs. For example, Color_min is 0 and Color_max is 255. Of course, other values ​​are also possible and are not limited here. In some embodiments, Color_min can represent black, indicating that there is an obstacle at the grid location, and Color_max represents white, indicating that there is no obstacle at the grid location. If the grayscale value C of the grid is between Color_min and Color_max, that is, Color_min<C<Color_max, it means that the obstacle is in an unknown state.

[0105] When generating each height submap, the points in the point cloud data are enumerated one by one according to the filtered point cloud data within the preset height range corresponding to the height submap. If the height of the enumerated point is in the submap Mi (i is 1, 2, 3), it is mapped to the corresponding grid in Mi based on the position information of the point. For the map Mi, if there are one or more points that correspond to a certain grid, the grid is colored once, and the coloring process can be performed according to a fixed ratio r. In some embodiments, when coloring the grid, the original grayscale value C0 of the grid can be obtained, and the coloring result C'=(1-r)*C0+r*Color_min. If the grayscale value of the grid is less than Color_min, or greater than Color_max, it is truncated to Color_min or Color_max.

[0106] In the embodiment of this specification, since the depth sensor detects the environment in real time, it continuously collects point cloud data. For each frame of point cloud data collected, the grid is colored in the above-mentioned manner to update the obstacle height map.

[0107] It should be understood that when a self-propelled device is performing a task, for example, when a self-propelled device is performing a rapid mapping task, if it enters an area such as the bottom of a cabinet or under a bed, it is very likely that it will be difficult to escape, thereby affecting the execution time of the task or even making it impossible to complete the task. Therefore, in the embodiments of this specification, in order to avoid the above situation, when the self-propelled device performs tasks such as rapid mapping that need to be completed in a short time, these low space areas can be avoided to improve the efficiency of task execution. When the self-propelled device has entered a low space area that is difficult to leave, it is necessary to control the self-propelled device to quickly escape from the area. It can be seen that different walking strategies can be selected to control the self-propelled device according to the area type of the area where the self-propelled device is currently located.

[0108] In an embodiment of the present specification, when determining whether the self-propelled device is currently in an area that is difficult to escape, it can be achieved in the following way: based on the obstacle height map, determine whether there is a target suspended obstacle around the self-propelled device, wherein the suspension height of the target suspended obstacle is greater than the body height of the self-propelled device and is less than or equal to the first height; if the target suspended obstacle exists, determine the area type based on the position of the target suspended obstacle and the current position of the self-propelled device.

[0109] When determining the location of a target suspended obstacle, the coordinate information of any target suspended obstacle whose height is greater than the aircraft's height but less than the first height can be retrieved by querying the obstacle height map. The coordinate information of the autonomous vehicle can also be determined from the obstacle height map. Because target suspended obstacles can create low spaces that make it difficult for the autonomous vehicle to escape, the coordinate information of the target suspended obstacle and the autonomous vehicle can be used to determine the positional relationship between the autonomous vehicle and the target suspended obstacle, thereby determining the area type.

[0110] Continuing with the example of the obstacle height map including M1, M2, and M3, when determining the target suspended obstacle, the area where the walking device is located is determined in M1, M2, and M3. If there is no obstacle in M1 of the grid at the same position in the area, but there is an obstacle in M2, it indicates that there is a target suspended obstacle at the grid position.

[0111] As shown in FIG3 , in the embodiment of this specification, based on the positional relationship between the self-propelled device and the target suspended obstacle, determining the area type can be achieved by the following steps:

[0112] Step S301: Based on the position of the target suspended obstacle and the current position of the self-propelled device, determining whether the self-propelled device is located within a target annular area formed by the target suspended obstacle;

[0113] wherein the gaps between target suspended obstacles located on the target annular area are smaller than the passage width of the self-propelled device;

[0114] Step S302: If the self-propelled device is located within the target annular area, determining that the area type is an area type surrounded by the target suspended obstacle;

[0115] Step S303: If the target suspended obstacle does not exist around the self-propelled device, or the self-propelled device is not located in the target annular area, the area type is determined to be an area type not surrounded by the target suspended obstacle.

[0116] The autonomous vehicle's clearance width can be set based on actual needs. For example, it can be the maximum width of the autonomous vehicle's body. If the positional relationship between the autonomous vehicle and the target suspended obstacle is such that the autonomous vehicle is located within the target ring area formed by the target suspended obstacle, and the gaps between the target suspended obstacles within the target ring area are smaller than the autonomous vehicle's clearance width, this indicates that the autonomous vehicle is completely surrounded by the target suspended obstacle, and even if there are gaps, they are insufficient for the autonomous vehicle to pass through. In this case, the autonomous vehicle will remain in the low area below the target suspended obstacle regardless of its movement direction.

[0117] In some embodiments, it may be determined whether a target annular area exists within a preset distance from the center of the autonomous vehicle. For example, it may be determined whether a target suspended obstacle forms a target annular area within 30 cm from the center of the autonomous vehicle.

[0118] Still using the example of the obstacle height map including M1, M2, and M3, please refer to Figure 4. By querying M2, in M2, if the grid around the self-propelled device is painted black to form a ring area with a gap smaller than the pass width, it indicates that the current area type is the area type surrounded by the target suspended obstacle.

[0119] In the embodiment of this specification, the area type surrounded by the target suspended obstacle may correspond to the infeasible low area surrounded by the target suspended obstacle in the infeasible area. When the self-propelled device is in this area type, it indicates that there is a risk that the self-propelled device will have difficulty escaping.

[0120] Correspondingly, if the target suspended obstacle does not exist around the self-propelled device, or the self-propelled device is not located in the target annular area, the area type is determined to be an area type that is not surrounded by the target suspended obstacle.

[0121] The type of area not surrounded by the target suspended obstacle can correspond to the non-low area, feasible low area, and infeasible low area not surrounded by the target suspended obstacle in the above-mentioned non-low area, feasible low area, and infeasible area. In the area not surrounded by the target suspended obstacle, the self-propelled device can move smoothly in the area, and the risk of escape difficulty is low.

[0122] In step S102, obtaining the target position of the self-propelled device can be achieved in many ways. In some embodiments, the unexplored position of the self-propelled device can be used as the target position. In other embodiments, any walkable position in the current detection area can be used as the target position.

[0123] In the embodiments of this specification, when the autonomous vehicle is within the aforementioned area surrounded by the target suspended obstacle, the driving strategy is to escape the area. However, when the autonomous vehicle is within an area not surrounded by the target suspended obstacle, the driving strategy can be a strategy that quickly completes the exploration task. Therefore, when determining the target location, the method for determining the target location can also vary depending on the type of area the autonomous vehicle is considering.

[0124] In some embodiments, for the area type surrounded by the target suspended obstacle, the target position can be determined by the following steps: performing an area search on the obstacle height map, and determining the target position from the searched target area.

[0125] It should be understood that the autonomous vehicle escapes the area surrounded by the target suspended obstacle by moving the autonomous vehicle to an area not surrounded by the target suspended obstacle through one or more path planning steps. Therefore, when searching for the target area on the obstacle height map, the target area can be considered the area where the autonomous vehicle's target position was when planning the current path. Searching for the target area and determining the target position can be achieved in a variety of ways, several of which are described below.

[0126] The first implementation method

[0127] A non-low area is searched from the obstacle height map as the target area, where no obstacles exist in the non-low area, or the suspended height of the obstacles in the non-low area is greater than a second height, and the second height is greater than the first height; and the target position is determined in the non-low area.

[0128] When searching for non-low areas from the obstacle height map, the search can be performed within a range close to the self-propelled device, such as searching within a range of 0.8, 1m, or 1.2m from the self-propelled device. When performing an area search, by querying the height of the obstacles recorded in the obstacle height map, areas where there are no obstacles, or where there are obstacles but the hanging height of the obstacles is greater than the second height are regarded as non-low areas. If multiple non-low areas are searched out, the non-low area closest to the self-propelled device can be used as the target area, or any non-low area can be used as the target area, without limitation. To determine the target position in the target area, the position closest to the self-propelled device in the target area can be used as the target position, or any position in the target area can be used as the target position, without limitation.

[0129] To facilitate understanding of the process of determining a non-low area, using the example of an obstacle height map including M1, M2, and M3, if the first area in the first height submap M1 and the third height submap M3 indicates that there are no obstacles, then the first area is determined to be a non-low area.

[0130] It should be noted that the range of the first area corresponds to the range of the target area, and can be set according to actual needs. For example, the range of the first area can be greater than or equal to the range that can accommodate the self-propelled device.

[0131] If, after determining the target location, the autonomous vehicle is unable to move to the target location, it may reselect a target location from the target area until a path exists that allows the autonomous vehicle to move to the target location. Alternatively, if no path exists for the autonomous vehicle to move to any point within the target area, the target area may be reselected, for example, using the next closest non-low-rise area as the target area and repeating the above process. It should be understood that if the autonomous vehicle is unable to move to all of the searched non-low-rise areas, other methods may be used to determine the target location.

[0132] The second implementation method

[0133] A feasible low area is searched from the obstacle height map as the target area, wherein the suspended height of obstacles in the feasible low area is greater than the first height and less than or equal to a second height, and the second height is greater than the first height; and the target position is determined from the feasible low area.

[0134] When searching for feasible low areas from the obstacle height map, the search can be performed within a range close to the self-propelled device, such as searching within a range of 0.8, 1m, or 1.2m from the self-propelled device. When performing an area search, by querying the height of the obstacles recorded in the obstacle height map, the area where there are obstacles and the suspended height of the obstacles is greater than the first height and less than or equal to the second height is regarded as a feasible low area. If multiple feasible low areas are searched out, the feasible low area closest to the self-propelled device can be used as the target area, or any feasible low area can be used as the target area, without limitation. To determine the target position in the target area, the position closest to the self-propelled device in the target area can be used as the target position, or any position in the target area can be used as the target position, without limitation.

[0135] To facilitate understanding of the process of determining a feasible low area, using the example of an obstacle height map including M1, M2, and M3, if the second area in the first height submap M1 indicates the presence of an obstacle, and the second areas in the second height submap M2 and the third height submap M3 indicate the absence of an obstacle, then the second area is determined to be a feasible low area.

[0136] It should be noted that the range of the second area corresponds to the range of the target area and can be set according to actual needs. For example, the range of the second area can be greater than or equal to the range that can accommodate the self-propelled device.

[0137] If, after determining the target location, the autonomous vehicle is found unable to move to the target location, it may reselect a target location from the target area until a path exists that allows the autonomous vehicle to move to the target location. Alternatively, if no path exists for the autonomous vehicle to move to any point within the target area, the target area may be reselected, for example, using the next closest feasible low-rise area as the target area and repeating the above process. It should be understood that if the autonomous vehicle is unable to move to all searched feasible low-rise areas, other methods may be used to determine the target location.

[0138] The third implementation method

[0139] An infeasible low area is searched from the obstacle height map as the target area, and obstacles in the infeasible low area are all target suspended obstacles; and the target position is determined from the infeasible low area.

[0140] In the embodiments of this specification, considering that the autonomous vehicle can escape from the area surrounded by the target suspended obstacle through one or more movements, the target area can also be determined from the infeasible low area. For example, by moving in the infeasible low area one or more times, the autonomous vehicle can eventually escape to an area not surrounded by the target suspended obstacle.

[0141] When searching for an infeasible low area from the obstacle height map, the search can be performed within a range close to the self-propelled device, such as searching within a range of 0.8, 1m, or 1.2m from the self-propelled device. When performing an area search, by querying the height of the obstacles recorded in the obstacle height map, the area where the target suspended obstacle exists, that is, the obstacle with a suspended height greater than the fuselage height and less than or equal to the first height, is regarded as an infeasible low area. If multiple infeasible low areas are searched out, the infeasible low area closest to the self-propelled device can be used as the target area, or any of the infeasible low areas can be used as the target area, without limitation. To determine the target position in the target area, the position closest to the self-propelled device in the target area can be used as the target position, or any position in the target area can be used as the target position, without limitation.

[0142] To facilitate understanding of the process of determining a feasible low area, using the example of an obstacle height map including M1, M2, and M3, if the third area in the first height submap M1 and the second height submap M2 indicates the presence of an obstacle, and the third area in the third height submap M3 indicates the absence of an obstacle, then the third area is determined to be an infeasible low area.

[0143] It should be noted that the range of the third area corresponds to the range of the target area and can be set according to actual needs. For example, the range of the third area can be greater than or equal to the range that can accommodate the self-propelled device.

[0144] If, after determining the target location, the autonomous vehicle is found unable to move to the target location, it may reselect a target location from the target area until a path exists that allows the autonomous vehicle to move to the target location. Alternatively, if no path exists for the autonomous vehicle to move to any point within the target area, the target area may be reselected, for example, using the next closest unfeasible low-rise area as the target area and repeating the above process. It should be understood that if the autonomous vehicle is unable to move to all of the searched unfeasible low-rise areas, other methods may be used to determine the target location.

[0145] The fourth implementation method

[0146] An unknown area is searched from the obstacle height map as the target area, wherein obstacles in the unknown area are in an unknown state; and the target position is determined from the unknown area.

[0147] Areas that have not been explored by autonomous vehicles can be considered unknown areas in the obstacle height map. Using the example of the obstacle height map including M1, M2, and M3, if the range of the grid grayscale value C in the same area of ​​M1, M2, and M3 is Color_min<C<Color_max, then the area is considered unknown.

[0148] If multiple unknown areas are found in the obstacle height map, the target area can be the unknown area closest to the self-propelled device, or any of the unknown areas can be used as the target area. The target position can be determined within the target area, and the location closest to the self-propelled device can be used as the target location, or any location within the target area can be used as the target location.

[0149] If, after determining the target location, the autonomous device is found unable to move to the target location, it may reselect a target location from the target area until a path exists that allows the autonomous device to move to the target location. Alternatively, if no path exists for the autonomous device to move to any point within the target area, the target area may be reselected, for example, using the next closest unknown area as the target area and repeating the above process. It should be understood that if the autonomous device is unable to move to all of the searched unknown areas, other methods may be used to determine the target location.

[0150] The fifth implementation method

[0151] The obstacle height map is searched regionally according to a preset regional search priority, wherein, in the preset regional search priority, the search priorities of non-low areas, feasible low areas, infeasible low areas, and unknown areas decrease in sequence.

[0152] It should be understood that in order to quickly escape the self-propelled device, the explored area can be searched first, and the target position can be determined in the area where the obstacle distribution is known. If the target position cannot be determined in the explored area, the search is performed in the unknown area.

[0153] In addition, when searching the exploration area, the area search and target location determination can be carried out in the order of priority of non-low area, feasible low area, and infeasible low area. Since the purpose of the self-propelled device when escaping is to move to an area that is not surrounded by the target suspended obstacles, and in the area that is not surrounded by the target suspended obstacles, the non-low area can be used as the preferred target area for escape because there are no obstacles or the suspended obstacles are at a high height; if there is no non-low area, or the location in the non-low area cannot be reached by the self-propelled device, the feasible low area can be selected as the target area; if the feasible low area is not searched on the obstacle height map, or the location in the feasible low area cannot be reached by the self-propelled device, the infeasible low area can be selected as the target area; if the infeasible low area is not searched, or the location in the infeasible low area cannot be reached by the self-propelled device, the unknown area is selected as the target area, and the target location is determined from the unknown area.

[0154] In some embodiments, for the type of area that is not surrounded by the target suspended obstacle, the determination of the target position can be achieved by the following steps: searching for an unknown area from the obstacle height map, wherein the obstacles in the unknown area are in an unknown state; and determining the target position from the unknown area.

[0155] For areas not surrounded by the target's overhead obstacles, since there's no need to escape, the autonomous vehicle can continue exploring unexplored areas of the environment, essentially determining the target's location within the unknown area. The method for searching the unknown area within the obstacle height map is described above and will not be repeated here.

[0156] In step S103, different area types may correspond to different walking strategies. As described above, when the area type is surrounded by the target suspended obstacle, the walking strategy is to escape the area. When the area type is not surrounded by the target suspended obstacle, the walking strategy can be normal exploration of the unexplored area. In this case, the walking strategy can be a strategy to prevent accidentally entering low areas.

[0157] In some embodiments, referring to FIG5 , if the area type is an area type surrounded by the target suspended obstacle, the walking strategy may be determined by the following steps:

[0158] Step S501: Determine whether the forward travel area of ​​the self-propelled device contains an infeasible area, and the height of the low obstacles in the infeasible area is less than or equal to the body height of the self-propelled device;

[0159] Step S502: Determine the walking strategy based on the position of the low obstacle in the infeasible area and the target position, wherein the walking strategy is a route that avoids the low obstacle.

[0160] The infeasible area contains low obstacles whose height is less than or equal to that of the autonomous vehicle, making it completely inaccessible to the autonomous vehicle. The forward area of ​​the autonomous vehicle can be set according to actual needs. For example, the forward area can be the area in the direction of the autonomous vehicle's forward movement, and the area of ​​the forward area can be greater than or equal to the area of ​​the autonomous vehicle's body.

[0161] Continuing with the example above where the obstacle height map includes M1, M2, and M3, if the fourth area in the third height sub-map M3 indicates the presence of an obstacle, the fourth area is determined to be an infeasible area.

[0162] When an autonomous vehicle is surrounded by a target suspended obstacle, to quickly escape, the vehicle's path planning strategy only considers obstacles within the infeasible area, ignoring other low, suspended obstacles as long as the autonomous vehicle can navigate. Therefore, if the forward travel area includes the infeasible area, the location of the low obstacles within the infeasible area can be determined, and the path planning strategy avoids these low obstacles and moves from the autonomous vehicle's current position to the target location.

[0163] In some embodiments, referring to FIG6 , if the area type is an area type not surrounded by the target suspended obstacle, the walking strategy may be determined by the following steps:

[0164] Step S601: Determine whether the forward travel area of ​​the self-propelled device includes an infeasible area and / or an infeasible low area, the height of the low obstacles in the infeasible area being less than or equal to the body height of the self-propelled device, and the obstacles in the infeasible low area being the target suspended obstacles;

[0165] Step S602: Determine the walking strategy based on the position of the low obstacle in the infeasible area, the position of the target suspended obstacle in the infeasible low area, and the target position, wherein the walking strategy is a route that avoids the low obstacle and the target suspended obstacle.

[0166] When in an area not surrounded by target suspended obstacles, the self-propelled device performs the current task (such as performing a rapid mapping task), and the corresponding walking strategy can be to conduct normal exploration of the environment. In order to avoid the situation where the self-propelled device enters a low space and has difficulty escaping, in an embodiment of the present specification, when the self-propelled device is in an area not surrounded by target suspended obstacles, the walking strategy is a strategy to prevent the self-propelled device from mistakenly entering a low area, that is, avoiding infeasible areas and / or avoiding infeasible low areas, so as to prevent the self-propelled device from mistakenly entering a low space formed by the target suspended obstacles, thereby ensuring the duration of the task execution. That is, if there are low obstacles and / or target suspended obstacles in the forward area of ​​the self-propelled device, the location of the low obstacles and / or target suspended obstacles is avoided when planning the path, and the self-propelled device moves from its current position to the target position.

[0167] It should be noted that when the self-propelled device is in an area surrounded by target suspended obstacles, after the self-propelled device completes its escape and moves to an area not surrounded by target suspended obstacles, the walking strategy will also be updated to avoid low obstacles in the infeasible area and / or avoid target suspended obstacles in the infeasible low area.

[0168] In the embodiment of this specification, after the walking strategy is determined, the following steps may also be included: updating the obstacle height map while the self-propelled device moves according to the walking strategy; determining whether new obstacles appear on the route of the walking strategy based on the updated obstacle height map; if new obstacles appear, adjusting the walking strategy based on the position of the new obstacles to avoid the new obstacles.

[0169] It should be noted that as the autonomous vehicle moves according to the travel strategy, it continuously collects environmental data. Therefore, it may detect new obstacles during movement and update the obstacle height map with their height and location information. Based on the updated obstacle height map, it determines whether new obstacles have appeared on the travel strategy's route.

[0170] In some embodiments, if the walking strategy is an escape strategy, it is necessary to determine whether new low obstacles appear on the moving route. If so, the path needs to be re-planned to avoid new low obstacles. In other embodiments, if the walking strategy is a strategy for preventing accidental entry into low areas, it is necessary to determine whether new low obstacles and / or target suspended obstacles appear on the moving route. If so, the path needs to be re-planned to avoid new low obstacles and / or target suspended obstacles. Among them, when adjusting the walking strategy, if a new obstacle causes the self-propelled device to be unable to move to the target position, the target position can be updated. If the self-propelled device can still move to the target position after a new obstacle appears, the route to the target position can be updated. Of course, the walking strategy can also be updated in other ways, which are not limited here.

[0171] To better understand the control method of the self-propelled device provided in the embodiments of this specification, please refer to FIG7 , which is a flow chart for determining a walking strategy of the self-propelled device provided in the embodiments of this specification, including the following steps:

[0172] Step S701: Determine whether the current detection area of ​​the self-propelled device is an area surrounded by a target suspended obstacle;

[0173] If yes, enter the low-rise area escape strategy and execute step S702; if no, enter the low-rise area prevention strategy and execute step S708;

[0174] Step S702: Based on the obstacle height map, determine the target location from the non-low area, the feasible low area, the infeasible low area or the unknown area;

[0175] The target position can be determined from any area of ​​the non-low-rise area, the feasible low-rise area, the infeasible low-rise area or the unknown area, and the area search and target position determination can also be performed in the order of priority of the non-low-rise area, the feasible low-rise area, the infeasible low-rise area and the unknown area;

[0176] Step S703: planning a route to the target location;

[0177] Among them, the route avoids low obstacles in infeasible areas;

[0178] Step S704: determining whether a new low obstacle appears on the moving route during the forward movement;

[0179] If yes, go back to step S703 to re-plan the route; if no, go to step S705;

[0180] Step S705: Determine whether the target location is reachable;

[0181] If yes, execute step S706, if no, return to step S702 to redetermine the target position;

[0182] Step S706: Arriving at the target location;

[0183] Step S707: Determine the target location in the unknown area based on the obstacle height map;

[0184] Step S708: planning a route to move to the target location;

[0185] Among them, the route avoids low obstacles in the infeasible area and target suspended obstacles in the infeasible low area;

[0186] Step S709: determining whether new low obstacles and / or target suspended obstacles appear on the moving route during the forward movement;

[0187] If yes, go back to step S708 to re-plan the route; if no, go to step S710;

[0188] Step S710: Determine whether the target location is reachable;

[0189] If yes, execute step S711, if no, return to step S707 to redetermine the target position;

[0190] Step S711: Arrive at the target location.

[0191] In summary, the solutions provided in the embodiments of this specification determine a corresponding travel strategy based on the area type of the autonomous vehicle's current location. When surrounded by a target suspended obstacle, an escape strategy is implemented to quickly escape. When not surrounded by a target suspended obstacle, a normal detection strategy is implemented to avoid the target suspended obstacle and prevent the autonomous vehicle from entering the low, inaccessible area formed by the target suspended obstacle. This effectively ensures the autonomous vehicle's current task execution time and allows it to complete the task quickly.

[0192] Based on the same inventive concept, an embodiment of this specification provides a control device for a self-propelled device, as shown in FIG8 , the control device includes:

[0193] The first acquisition module 801 is used to obtain the area type of the current detection area of ​​the self-propelled device, where the area type is determined based on the height information of obstacles in the current detection area;

[0194] The second acquisition module 802 is used to obtain the target position of the self-propelled device;

[0195] The processing module 803 is used to determine the walking strategy of the autonomous vehicle based on the area type and the target location.

[0196] In some embodiments, the first acquisition module 801 is configured to:

[0197] Determine the obstacle height map, which contains the height and location information of obstacles in the current detection area;

[0198] Based on the obstacle height map, determine the area type.

[0199] In some embodiments, the first acquisition module 801 is configured to:

[0200] The depth sensor on the self-propelled device detects the current detection area, obtains point cloud data of obstacles in the current detection area, and generates an obstacle height map based on the point cloud data.

[0201] In some embodiments, the first acquisition module 801 is configured to:

[0202] Determining whether there is a target suspended obstacle around the autonomous device based on the obstacle height map, wherein a suspended height of the target suspended obstacle is greater than a body height of the autonomous device and less than or equal to a first height;

[0203] If there is a target suspended obstacle, the area type is determined based on the location of the target suspended obstacle and the current location of the autonomous vehicle.

[0204] In some embodiments, the area type is an area type surrounded by a target suspended obstacle, and the height of the target suspended obstacle is greater than the height of the self-propelled device and less than or equal to the first height; the second acquisition module 802 is used to:

[0205] Perform an area search on the obstacle height map and determine the target location from the searched target area.

[0206] In some embodiments, the second acquisition module 802 is configured to:

[0207] Searching for a non-low area from the obstacle height map as the target area, where there are no obstacles in the non-low area, or the height of the obstacles in the non-low area is greater than the second height, and the second height is greater than the first height;

[0208] Determine the target location from the non-low-lying area.

[0209] In some embodiments, the second acquisition module 802 is configured to:

[0210] Searching for a feasible low area from the obstacle height map as the target area, wherein the height of obstacles in the feasible low area is greater than the first height and less than or equal to the second height, and the second height is greater than the first height;

[0211] Determine the target location from the feasible low area.

[0212] In some embodiments, the second acquisition module 802 is configured to:

[0213] Search the infeasible low area from the obstacle height map as the target area. All obstacles in the infeasible low area are target suspended obstacles.

[0214] Determine the target location from the infeasible low area.

[0215] In some embodiments, the second acquisition module 802 is configured to:

[0216] An unknown area is searched from the obstacle height map as a target area, wherein obstacles in the unknown area are in an unknown state;

[0217] Determine the target location from an unknown area.

[0218] In some embodiments, the second acquisition module 802 is configured to:

[0219] The obstacle height map is searched regionally according to a preset regional search priority, wherein, in the preset regional search priority, the search priorities of non-low areas, feasible low areas, infeasible low areas, and unknown areas decrease in sequence.

[0220] In some embodiments, the area type is an area type not surrounded by a target suspended obstacle, and the height of the target suspended obstacle is greater than the height of the self-propelled device and less than or equal to the first height; the second acquisition module 802 is configured to:

[0221] Searching for an unknown area from the obstacle height map, wherein obstacles in the unknown area are in an unknown state;

[0222] Determine the target location from an unknown area.

[0223] In some embodiments, the first acquisition module 801 is configured to:

[0224] Based on the position of the target suspended obstacle and the current position of the self-propelled device, determining whether the self-propelled device is located within a target annular area formed by the target suspended obstacles, wherein a gap between target suspended obstacles located in the target annular area is smaller than a passage width of the self-propelled device;

[0225] If the self-propelled device is located in the target annular area, the area type is determined to be an area type surrounded by the target suspended obstacle.

[0226] In some embodiments, the first acquisition module 801 is configured to:

[0227] If there is no target suspended obstacle around the self-propelled device, or the self-propelled device is not located in the target annular area, the area type is determined to be an area type that is not surrounded by the target suspended obstacle.

[0228] In some embodiments, the processing module 803 is configured to:

[0229] If the area type is an area surrounded by a target suspended obstacle, determine whether the forward area of ​​the self-propelled device contains an infeasible area, and the height of the low obstacles in the infeasible area is less than or equal to the height of the self-propelled device;

[0230] A walking strategy is determined based on the positions of the low obstacles in the infeasible area and the target position, wherein the walking strategy is a route that avoids the low obstacles.

[0231] In some embodiments, the processing module 803 is configured to:

[0232] If the area type is an area type not surrounded by target suspended obstacles, determine whether the forward travel area of ​​the self-propelled device contains an infeasible area and / or an infeasible low area. The height of the low obstacle in the infeasible area is less than or equal to the body height of the self-propelled device, and the obstacle in the infeasible low area is the target suspended obstacle.

[0233] A walking strategy is determined based on the position of the low obstacles in the infeasible area, the position of the target suspended obstacle in the infeasible low area, and the target position, wherein the walking strategy is a route that avoids the low obstacles and the target suspended obstacle.

[0234] In some embodiments, the apparatus further comprises:

[0235] A map update module is used to update the obstacle height map while the autonomous vehicle moves according to the walking strategy;

[0236] The obstacle determination module is used to determine whether there are new obstacles on the route of the walking strategy based on the updated obstacle height map;

[0237] The strategy adjustment module is used to adjust the walking strategy based on the position of the new obstacle when a new obstacle appears, so as to avoid the new obstacle.

[0238] In some embodiments, the first acquisition module 801 is configured to:

[0239] Filter the point cloud data based on N preset height ranges, where N is a positive integer;

[0240] Based on the N groups of filtered point cloud data, N height submaps are generated, wherein the N height submaps correspond one-to-one to the N groups of preset height ranges, and the obstacle height map includes the N height submaps.

[0241] In some embodiments, the N height submaps include a first height submap, a second height submap, and a third height submap, and the first height is smaller than the second height;

[0242] Among them, the third height submap is used to represent the existence of obstacles within a range less than or equal to the fuselage height of the self-propelled device, the second height submap is used to represent the existence of obstacles within a range greater than the fuselage height and less than or equal to the first height, and the first height submap is used to represent the existence of obstacles within a range greater than the fuselage height of the self-propelled device and less than the second height.

[0243] In some embodiments, if the first area in the first height sub-map and the third height sub-map indicates that no obstacle exists, the first area is determined to be a non-low area.

[0244] In some embodiments, if the second area in the first height submap indicates the presence of an obstacle, and the second areas in the second height submap and the third height submap indicate the absence of an obstacle, the second area is determined to be a feasible low area.

[0245] In some embodiments, if the third area in the first height submap and the second height submap indicates the presence of an obstacle, and the third area in the third height submap indicates the absence of an obstacle, the third area is determined to be an infeasible low area.

[0246] In some embodiments, if the fourth area in the third height sub-map indicates the presence of an obstacle, the fourth area is determined to be an infeasible area.

[0247] Regarding the above-mentioned device, the specific functions of each module therein have been described in detail in the embodiment of the control method of the self-propelled device provided in the embodiment of this specification, and will not be elaborated here.

[0248] One or more technical solutions provided by this application achieve at least the following technical effects or advantages:

[0249] In the control method for a self-propelled device provided in an embodiment of the present application, the area type of the self-propelled device's current detection area is obtained, where the area type is determined based on the height information of obstacles within the current detection area. The target position of the self-propelled device is obtained, and the self-propelled device's travel strategy is determined based on the area type and the target position. In the above scheme, because the area type can represent the height information of obstacles within the current detection area, a travel strategy that matches different obstacle heights can be selected to enable the self-propelled device to complete the current task smoothly and quickly, effectively ensuring the execution time of the self-propelled device's current task.

[0250] Based on the same inventive concept, an embodiment of the present invention provides a self-propelled device, as shown in Figure 9, including a memory 904, a processor 902, and a computer program stored in the memory 904 and executable on the processor 902. When the processor 902 executes the program, any one of the implementation methods of the control method for the self-propelled device is implemented.

[0251] In FIG9 , a bus architecture (represented by bus 900) is shown. Bus 900 may include any number of interconnected buses and bridges. Bus 900 links various circuits together, including one or more processors represented by processor 902 and memory represented by memory 904. Bus 900 may also link various other circuits together, such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art and are therefore not described further herein. Bus interface 905 provides an interface between bus 900 and receiver 901 and transmitter 903. Receiver 901 and transmitter 903 may be the same component, namely a transceiver, which provides a unit for communicating with various other devices over a transmission medium. Processor 902 is responsible for managing bus 900 and general processing, while memory 904 may be used to store data used by processor 902 when performing operations.

[0252] The functions described herein may be implemented in hardware, software executed by a processor, firmware, or any combination thereof. If implemented in software executed by a processor, the functions may be stored as one or more instructions or codes on or transmitted via a computer-readable medium. Other examples and implementations are within the scope and spirit of this application and the appended claims. For example, due to the nature of software, the functions described above may be implemented using software executed by a processor, hardware, firmware, hardwiring, or a combination of any of these. Furthermore, the functional units may be integrated into a single processing unit, each unit may exist physically separately, or two or more units may be integrated into a single unit.

[0253] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only exemplary. For example, the division of the units can be a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.

[0254] The units described as separate components may or may not be physically separate, and the components of the control device may or may not be physical units, that is, they may be located in one place or distributed across multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0255] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, a server or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.

[0256] It should be noted that the above embodiments illustrate rather than limit the present application, and that those skilled in the art may devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between brackets should not be construed as limiting the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The present application may be implemented by means of hardware comprising several different elements and by means of a suitably programmed computer.

[0257] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the disclosure disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present application that follow the general principles of the present application and include common knowledge or customary techniques in the art not disclosed herein. The description and examples are to be considered as exemplary only, and the true scope and spirit of the present application are indicated by the following claims.

[0258] The above description is only a preferred embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application should be included in the scope of protection of the present application.

Claims

1. A control method for a self-propelled device, characterized in that: The method comprises: Obtaining an area type of a current detection area of ​​the self-propelled device, where the area type is determined based on height information of obstacles within the current detection area; Obtaining a target position of the self-propelled device; A walking strategy of the self-propelled device is determined based on the area type and the target location.

2. The method according to claim 1, wherein The method of obtaining the area type of obstacles in the current detection area of ​​the self-propelled device includes: Determining an obstacle height map, wherein the obstacle height map includes height information and position information of obstacles in the current detection area; The area type is determined based on the obstacle height map.

3. The method according to claim 2, wherein: Determining the obstacle height map includes: The current detection area is detected by the depth sensor on the self-propelled device to obtain point cloud data of obstacles in the current detection area, and the obstacle height map is generated based on the point cloud data.

4. The method according to claim 2, wherein: The determining the area type based on the obstacle height map includes: Determining, based on the obstacle height map, whether there is a target suspended obstacle around the self-propelled device, wherein the height of the target suspended obstacle is greater than the height of the self-propelled device and less than or equal to a first height; If the target suspended obstacle exists, the area type is determined based on the position of the target suspended obstacle and the current position of the self-propelled device.

5. The method according to claim 4, wherein: The area type is an area type surrounded by a target suspended obstacle, and the suspended height of the target suspended obstacle is greater than the body height of the self-propelled device and less than or equal to a first height; The obtaining of the target position of the self-propelled device includes: An area search is performed on the obstacle height map, and the target position is determined from the searched target area.

6. The method according to claim 5, wherein: The performing an area search on the obstacle height map and determining the target position from the searched target area includes: Searching the obstacle height map for a non-low area as the target area, wherein no obstacles exist in the non-low area, or the height of the obstacles in the non-low area is greater than a second height, and the second height is greater than the first height; The target position is determined from the non-low-profile area.

7. The method according to claim 5, wherein: The performing an area search on the obstacle height map and determining the target position from the searched target area includes: Searching for a feasible low area from the obstacle height map as the target area, wherein the height of obstacles in the feasible low area is greater than the first height and less than or equal to a second height, and the second height is greater than the first height; The target position is determined from the feasible low-rise area.

8. The method of claim 5, wherein: The performing an area search on the obstacle height map and determining the target position from the searched target area includes: Searching for an infeasible low area from the obstacle height map as the target area, wherein all obstacles in the infeasible low area are the target suspended obstacles; The target position is determined from the infeasible low area.

9. The method of claim 5, wherein: The performing an area search on the obstacle height map and determining the target position from the searched target area includes: Searching for an unknown area from the obstacle height map as the target area, wherein obstacles in the unknown area are in an unknown state; The target location is determined from the unknown area.

10. The method of claim 5, wherein: The performing an area search on the obstacle height map includes: The obstacle height map is searched regionally according to a preset regional search priority, wherein, in the preset regional search priority, the search priorities of non-low areas, feasible low areas, infeasible low areas, and unknown areas decrease in sequence.

11. The method of claim 4, wherein: The area type is an area type that is not surrounded by a target suspended obstacle, and the suspended height of the target suspended obstacle is greater than the body height of the self-propelled device and less than or equal to a first height; The obtaining of the target position of the self-propelled device includes: Searching for an unknown area from the obstacle height map, wherein obstacles in the unknown area are in an unknown state; The target location is determined from the unknown area.

12. The method of claim 4, wherein: The determining the area type based on the position of the target suspended obstacle and the current position of the self-propelled device includes: Based on the position of the target suspended obstacle and the current position of the self-propelled device, determining whether the self-propelled device is located within a target annular area formed by the target suspended obstacles, wherein a gap between target suspended obstacles located in the target annular area is smaller than a passage width of the self-propelled device; If the self-propelled device is located in the target annular area, the area type is determined to be an area type surrounded by the target suspended obstacle.

13. The method of claim 12, wherein: The determining of the area type further includes: If the target suspended obstacle does not exist around the self-propelled device, or the self-propelled device is not located in the target annular area, the area type is determined to be an area type that is not surrounded by the target suspended obstacle.

14. The method according to any one of claims 5 to 10, wherein: Determining the walking strategy of the self-propelled device includes: If the area type is an area type surrounded by the target suspended obstacle, determining whether the forward travel area of ​​the self-propelled device includes an infeasible area, where the height of the low obstacles in the infeasible area is less than or equal to the height of the self-propelled device; The walking strategy is determined based on the position of the low obstacle in the infeasible area and the target position, wherein the walking strategy is a route that avoids the low obstacle.

15. The method of claim 4, wherein: Determining the walking strategy of the self-propelled device includes: If the area type is an area type not surrounded by the target suspended obstacle, determining whether the forward travel area of ​​the self-propelled device includes an infeasible area and / or an infeasible low area, the height of the low obstacle in the infeasible area being less than or equal to the body height of the self-propelled device, and the obstacle in the infeasible low area being the target suspended obstacle; The walking strategy is determined based on the position of the low obstacle in the infeasible area, the position of the target suspended obstacle in the infeasible low area, and the target position, wherein the walking strategy is a route that avoids the low obstacle and the target suspended obstacle.

16. The method of claim 2, wherein: After determining the walking strategy of the self-propelled device, the method further includes: During the movement of the autonomous device according to the walking strategy, updating the obstacle height map; Determining whether a new obstacle appears on the route of the walking strategy based on the updated obstacle height map; If the new obstacle appears, the walking strategy is adjusted based on the position of the new obstacle to avoid the new obstacle.

17. The method of claim 3, wherein: Generating the obstacle height map based on the point cloud data includes: Filtering the point cloud data based on N preset height ranges, where N is a positive integer; Based on the filtered N groups of point cloud data, N height submaps are generated, wherein the N height submaps correspond one-to-one to the N groups of preset height ranges, and the obstacle height map includes the N height submaps.

18. The method of claim 17, wherein: The N height submaps include a first height submap, a second height submap, and a third height submap; Among them, the third height submap is used to represent the presence of obstacles within a range less than or equal to the fuselage height of the self-propelled device, the second height submap is used to represent the presence of obstacles within a range greater than the fuselage height and less than or equal to the first height, and the first height submap is used to represent the presence of obstacles within a range greater than the fuselage height of the self-propelled device and less than the second height, wherein the first height is less than the second height.

19. The method of claim 18, wherein: If the first area in the first height submap and the third height submap indicates that no obstacle exists, the first area is determined to be a non-low area.

20. The method of claim 18, wherein: If the second area in the first height submap indicates that an obstacle exists, and the second area in the second height submap and the third height submap indicates that no obstacle exists, the second area is determined to be a feasible low area.

21. The method of claim 18, wherein: If the third area in the first height submap and the second height submap indicates that an obstacle exists, and the third area in the third height submap indicates that no obstacle exists, the third area is determined to be an infeasible low area.

22. The method of claim 18, wherein: If the fourth area in the third height sub-map indicates that an obstacle exists, the fourth area is determined to be an infeasible area.

23. A control device for a self-propelled device, wherein: The device comprises: A first acquisition module is configured to acquire an area type of a current detection area of ​​the self-propelled device, where the area type is determined based on height information of obstacles within the current detection area; A second acquisition module is used to obtain the target position of the self-propelled device; A processing module is used to determine a walking strategy of the self-propelled device based on the area type and the target location.

24. The control device for a self-propelled device according to claim 23, wherein: The first acquisition module is further configured to: Determining an obstacle height map, wherein the obstacle height map includes height information and position information of obstacles in the current detection area; The area type is determined based on the obstacle height map.

25. The control device for a self-propelled device according to claim 24, wherein: The first acquisition module is further configured to: The current detection area is detected by the depth sensor on the self-propelled device to obtain point cloud data of obstacles in the current detection area, and the obstacle height map is generated based on the point cloud data.

26. The control device for a self-propelled device according to claim 24, wherein: The first acquisition module is further configured to: Determining, based on the obstacle height map, whether there is a target suspended obstacle around the self-propelled device, wherein the height of the target suspended obstacle is greater than the body height of the self-propelled device and less than or equal to a first height; If the target suspended obstacle exists, the area type is determined based on the position of the target suspended obstacle and the current position of the self-propelled device.

27. The control device for a self-propelled device according to claim 26, wherein: The area type is an area type surrounded by a target suspended obstacle, and the suspended height of the target suspended obstacle is greater than the body height of the self-propelled device and less than or equal to the first height; the second acquisition module is further used to: An area search is performed on the obstacle height map, and the target position is determined from the searched target area.

28. The control device for a self-propelled device according to claim 27, wherein: The second acquisition module is further configured to: Searching for a non-low area from the obstacle height map as the target area, wherein no obstacles exist in the non-low area, or the height of the obstacles in the non-low area is greater than a second height, and the second height is greater than the first height; The target position is determined from the non-low-profile area.

29. The control device for a self-propelled device according to claim 27, wherein: The second acquisition module is further configured to: Searching for a feasible low area from the obstacle height map as the target area, wherein the height of obstacles in the feasible low area is greater than the first height and less than or equal to a second height, and the second height is greater than the first height; The target position is determined from the feasible low-rise area.

30. The control device for a self-propelled device according to claim 27, wherein: The second acquisition module is further configured to: Searching for an infeasible low area from the obstacle height map as the target area, wherein all obstacles in the infeasible low area are the target suspended obstacles; The target position is determined from the infeasible low area.

31. The control device for a self-propelled device according to claim 27, wherein: The second acquisition module is further configured to: Searching for an unknown area from the obstacle height map as the target area, wherein obstacles in the unknown area are in an unknown state; The target location is determined from the unknown area.

32. The control device for a self-propelled device according to claim 27, wherein: The second acquisition module is further configured to: The obstacle height map is searched regionally according to a preset regional search priority, wherein, in the preset regional search priority, the search priorities of non-low areas, feasible low areas, infeasible low areas, and unknown areas decrease in sequence.

33. The control device for a self-propelled device according to claim 26, wherein: The area type is an area type that is not surrounded by a target suspended obstacle, and the suspended height of the target suspended obstacle is greater than the body height of the self-propelled device and less than or equal to a first height; The second acquisition module is further configured to: The obtaining of the target position of the self-propelled device includes: Searching for an unknown area from the obstacle height map, wherein obstacles in the unknown area are in an unknown state; The target location is determined from the unknown area.

34. The control device for a self-propelled device according to claim 26, wherein: The first acquisition module is further configured to: Based on the position of the target suspended obstacle and the current position of the self-propelled device, determining whether the self-propelled device is located within a target annular area formed by the target suspended obstacles, wherein a gap between target suspended obstacles located in the target annular area is smaller than a passage width of the self-propelled device; If the self-propelled device is located in the target annular area, the area type is determined to be an area type surrounded by the target suspended obstacle.

35. The control device for a self-propelled device according to claim 34, wherein: The first acquisition module is further configured to: If the target suspended obstacle does not exist around the self-propelled device, or the self-propelled device is not located in the target annular area, the area type is determined to be an area type that is not surrounded by the target suspended obstacle.

36. The control device for a self-propelled device according to any one of claims 27 to 32, wherein: The processing module is further configured to: If the area type is an area type surrounded by the target suspended obstacle, determining whether the forward travel area of ​​the self-propelled device includes an infeasible area, where the height of the low obstacles in the infeasible area is less than or equal to the height of the self-propelled device; The walking strategy is determined based on the position of the low obstacle in the infeasible area and the target position, wherein the walking strategy is a route that avoids the low obstacle.

37. The control device for a self-propelled device according to claim 26, wherein: The processing module is further configured to: If the area type is an area type not surrounded by the target suspended obstacle, determining whether the forward travel area of ​​the self-propelled device includes an infeasible area and / or an infeasible low area, the height of the low obstacle in the infeasible area being less than or equal to the body height of the self-propelled device, and the obstacle in the infeasible low area being the target suspended obstacle; The walking strategy is determined based on the position of the low obstacle in the infeasible area, the position of the target suspended obstacle in the infeasible low area, and the target position, wherein the walking strategy is a route that avoids the low obstacle and the target suspended obstacle.

38. The control device for a self-propelled device according to claim 24, wherein: The device further comprises: A map updating module, configured to update the obstacle height map while the autonomous device moves according to the walking strategy; an obstacle determination module, configured to determine whether a new obstacle appears on the route of the walking strategy based on the updated obstacle height map; The strategy adjustment module is used to adjust the walking strategy based on the position of the new obstacle when the new obstacle appears, so as to avoid the new obstacle.

39. The control device for a self-propelled device according to claim 25, wherein: The first acquisition module is further configured to: Filtering the point cloud data based on N preset height ranges, where N is a positive integer; Based on the filtered N groups of point cloud data, N height submaps are generated, wherein the N height submaps correspond one-to-one to the N groups of preset height ranges, and the obstacle height map includes the N height submaps.

40. The control device for a self-propelled device according to claim 39, wherein: The N height submaps include a first height submap, a second height submap, and a third height submap; Among them, the third height submap is used to represent the presence of obstacles within a range less than or equal to the fuselage height of the self-propelled device, the second height submap is used to represent the presence of obstacles within a range greater than the fuselage height and less than or equal to the first height, and the first height submap is used to represent the presence of obstacles within a range greater than the fuselage height of the self-propelled device and less than the second height, wherein the first height is less than the second height.

41. The control device for a self-propelled device according to claim 40, wherein: If the first area in the first height submap and the third height submap indicates that no obstacle exists, the first area is determined to be a non-low area.

42. The control device for the self-propelled device according to claim 40, wherein: If the second area in the first height submap indicates that an obstacle exists, and the second area in the second height submap and the third height submap indicates that no obstacle exists, the second area is determined to be a feasible low area.

43. The control device for the self-propelled device according to claim 40, wherein: If the third area in the first height submap and the second height submap indicates that an obstacle exists, and the third area in the third height submap indicates that no obstacle exists, the third area is determined to be an infeasible low area.

44. The control device for the self-propelled device according to claim 40, wherein: If the fourth area in the third height sub-map indicates that an obstacle exists, the fourth area is determined to be an infeasible area.

45. A self-propelled device, wherein: include: A memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method according to any one of claims 1 to 22 when executing the program.

46. ​​A computer-readable storage medium, characterized in that A computer program is stored thereon, and when the program is executed by a processor, the steps of the method according to any one of claims 1 to 22 are implemented.

Citation Information

Patent Citations

  • Mobile robot and control method thereof

    CN111930106A

  • Advancing control method, surface cleaning robot and storage medium

    CN113961005A

  • Robot control method and device, robot and storage medium

    CN114578831A

  • Video call method based on self-moving device and self-moving device

    CN116074463A

  • Control method, device and equipment of self-walking equipment and readable storage medium

    CN118192570A