Cleaning robot control method and cleaning robot
By using the cleaning robot's historical walking trajectory and obstacle information on the map, planning the pass path and adopting different pass strategies, the problem of being trapped during the navigation of the cleaning robot is solved, and navigation efficiency and user experience are improved.
Patent Information
- Application Number
- CN202311816682.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-26
- Publication Date
- 2025-06-27
AI Technical Summary
Cleaning robots are easily trapped during navigation, resulting in reduced navigation efficiency and poor user experience.
By obtaining the historical walking trajectory of the cleaning robot, planning a pass path from the current position to the target position, and marking the warning position according to the obstacle position on the map, using different pass strategies to pass warning and non-warning positions.
Improves the ability of cleaning robots to get out of trapped state, enhances navigation efficiency and user experience, and ensures that cleaning robots can effectively bypass obstacles and complete cleaning tasks.
Smart Images

Figure CN120203444A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of cleaning robots, and in particular to a control method for a cleaning robot and a cleaning robot. Background Art
[0002] With the continuous advancement of science and technology and society, the cleaning robot industry is ushering in a new period of development. Cleaning robot equipment is becoming an indispensable part of homes and other scenes that require automatic cleaning, providing people with a more convenient, comfortable and safe cleaning experience.
[0003] The navigation of the cleaning robot is an important factor affecting the user experience. Being trapped is a common problem during the navigation of the cleaning robot. If the cleaning robot cannot effectively escape from the trapped state, the navigation efficiency will be reduced and the user's intelligent experience will be affected. Summary of the invention
[0004] Based on this, it is necessary to provide a control method, device, computer equipment, computer-readable storage medium and computer program product for a cleaning robot to address the above technical problems.
[0005] In a first aspect, the present application provides a control method for a cleaning robot. The method comprises:
[0006] When the cleaning robot fails to perform path planning based on the first map at the first moment, obtaining a historical walking trajectory of the cleaning robot;
[0007] According to the historical walking trajectory, planning a first travel path of the cleaning robot from a first position to a target position; wherein the first position is the position of the cleaning robot at a first moment, and the target position is the target arrival position of the cleaning robot;
[0008] Marking a warning position on the first passage path according to the position of the obstacle on the first map;
[0009] The cleaning robot is controlled to walk along the first passage path, and passes through the warning position and the non-warning position on the first passage path with different passage strategies.
[0010] In one embodiment, planning a first travel path of the cleaning robot from a first position to a target position according to the historical walking trajectory includes:
[0011] According to the historical walking track and the first map, obstacles on the historical walking track in the first map are removed to obtain a fused map;
[0012] Perform path planning based on the fused map to obtain a first passage path of the cleaning robot from the first position to the target position.
[0013] In one embodiment, controlling the cleaning robot to walk according to the first passage path and passing through the warning position and non-warning position on the first passage path with different passage strategies includes:
[0014] When walking to the non-warning position based on the first passage path, control the cleaning robot to walk with a first passage strategy;
[0015] When walking to the warning position based on the first passage path, control the cleaning robot to walk with a second passage strategy; the first passage strategy and the second passage strategy include at least one parameter of walking speed and sensor call frequency; the first walking speed in the first passage strategy is greater than the second walking speed in the second passage strategy; the sensor call frequency in the first passage strategy is lower than the sensor call frequency in the second passage strategy.
[0016] In one embodiment, the cleaning robot includes a sensor; the step of controlling the cleaning robot to walk with a second passage strategy further includes:
[0017] Obtain sensor information collected by the sensor;
[0018] Using the first passage path as a direction guide, explore a path to bypass the obstacle according to the sensor information.
[0019] In one embodiment, the method further includes:
[0020] When it is determined according to the sensor information that the path segment corresponding to the warning position is blocked by an obstacle, determine an exploration point according to the intersection of the obstacle and the first passage path;
[0021] Explore a path to bypass the obstacle according to the exploration point and the sensor information.
[0022] In one embodiment, the method further includes:
[0023] When it is determined according to the sensor information that other directions of the path segment corresponding to the warning position except the entrance are blocked by obstacles, control the cleaning robot to retreat or turn around to leave the path segment corresponding to the warning position.
[0024] In one embodiment, the path exploration method includes at least one of the following methods:
[0025] The first type: when the cleaning robot touches an obstacle and cannot cross the obstacle, taking the first passage path as the direction guidance, controlling the cleaning robot to explore along the edge of the obstacle;
[0026] The second type: when the cleaning robot is lifted by an obstacle, controlling the cleaning robot to accelerate across the obstacle;
[0027] The third type: when the cleaning robot is lifted by an obstacle, controlling the cleaning robot to accelerate across the obstacle. If it still cannot cross the obstacle after acceleration, then controlling the cleaning robot to retreat, or after rotating a preset angle and turning around, taking the first passage path as the direction guidance, controlling the cleaning robot to explore along the edge of the obstacle.
[0028] In one embodiment, the method further includes:
[0029] During the process of the cleaning robot moving based on the first passage path, when a second passage path from a second position to the target position is planned according to a second map at a second moment, controlling the cleaning robot to move based on the second passage path; the second position is the position where the cleaning robot is located at the second moment.
[0030] In a second aspect, the present application further provides a control device for a cleaning robot. The device includes:
[0031] A planning module, configured to, when the path planning of the cleaning robot fails based on a first map at a first moment, obtain the historical walking trajectory of the cleaning robot, and plan a first passage path of the cleaning robot from a first position to a target position according to the historical walking trajectory.
[0032] A detection module, configured to obtain the positions of obstacles on the first map.
[0033] An early warning module, configured to mark early warning positions on the first passage path according to the positions of obstacles on the first map.
[0034] A control module, configured to control the cleaning robot to move according to the first passage path, and pass through the early warning positions and non-early warning positions on the first passage path with different passage strategies.
[0035] In a third aspect, the present application further provides a cleaning robot, including a sensor, a wheel assembly, and a controller. The sensor and the wheel assembly are both electrically connected to the controller. The controller includes a memory and a processor. When the processor executes the computer program, the steps of the control method of the cleaning robot in the above embodiments are implemented.
[0036] Fourthly, the present application also provides a computer-readable storage medium. On the computer-readable storage medium, a computer program is stored, and when the computer program is executed by a processor, the steps of the control method of the cleaning robot in the above embodiments are implemented.
[0037] Fifthly, the present application also provides a computer program product. The computer program product includes a computer program, and when the computer program is executed by a processor, the steps of the control method of the cleaning robot in the above embodiments are implemented.
[0038] For the above control method, device, computer device, storage medium and computer program product of the cleaning robot, regardless of the form and scenario of being trapped, when the path planning based on the first map fails, according to the historical trajectory of the cleaning robot in the current scenario, a first passage path from the first position to the target position of the cleaning robot is planned. The historical trajectory of the cleaning robot in the current scenario can represent each area of the current scenario that the cleaning robot has reached in all modes. Therefore, by using the historical trajectory of the cleaning robot in the current scenario, the situation where path planning fails due to the existence of temporary obstacles in the current scenario is considered. Therefore, taking the historical trajectory of the cleaning robot in the current scenario as a path that can be predicted enriches the information volume of path planning and can improve the success rate of path planning. And according to the position of the obstacle, warning positions on the first passage path are marked, and different passage strategies are adopted for the warning positions and non-warning positions on the first passage path, which can take into account the different characteristics of the obstacle path segment and the non-obstacle path segment, adopt different passage strategies, and improve the passage efficiency and success rate. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] Figure 1 It is an application environment diagram of the control method of the cleaning robot in an embodiment;
[0040] Figure 2 It is a flowchart of the control method of the cleaning robot in an embodiment;
[0041] Figure 3 It is a flowchart of the control method of the cleaning robot in another embodiment;
[0042] Figure 4 It is a structural block diagram of the control device of the cleaning robot in an embodiment;
[0043] Figure 5 It is an internal structure diagram of a computer device in an embodiment. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0044] In order to make the objectives, technical solutions and advantages of the present application more clear and understandable, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0045] As Figure 1 shown, the sensing and control 30 part of the cleaning robot includes: a controller 301, a driver 302, multiple types of sensors 303, and a communication module 304. The multiple types of sensors can include an image module, an IMU (Inertial Measurement Unit), a lidar, and a target sensor, etc. Among them, each sensor in the multiple types of sensors 303 and the driver 302 are both signal-connected to the controller 301. The controller 301 processes the sensing data collected by the multiple types of sensors, makes decisions, generates control instructions based on the decision results, and sends the control instructions to the driver 302. The driver 302 can include a driver for the drive wheels of the cleaning robot, a driver for the module adjustment device, etc. The decisions can include navigation, obstacle avoidance, and control of each component of the cleaning robot. Based on the communication module 304, it can communicate with the server 10. The server 10 can be communicatively connected to the user terminal 20. Control instructions can be sent to the cleaning robot through the user terminal 20. For example, cleaning robot operation instructions, cleaning robot charging instructions, cleaning robot map building instructions, etc. It should be understood that the user terminal 20 is installed with an application related to the cleaning robot and can send related instructions to the cleaning robot.
[0046] Among them, the user terminal 20 can be, but is not limited to, various personal computers, laptop computers, smart phones, tablet computers, Internet of Things devices, and portable wearable devices. The Internet of Things devices can be smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, etc. The portable wearable devices can be smart watches, smart bracelets, head-mounted devices, etc.
[0047] Among them, the cleaning robot refers to a self-mobile device configured with sensor components that can move autonomously to perform tasks. The cleaning robot includes cleaning robots for cleaning home and non-home scenarios, such as floor sweepers, mopping machines, automatic floor scrubbers, and cleaning robots for entertainment venues (such as pool cleaning machines), etc.
[0048] During the operation of a cleaning robot, it may be trapped. There are two types of being trapped, one is movement being trapped, and the other is planning being trapped. Planning being trapped means that the cleaning robot is trapped in a certain area and unable to reach other specified areas because it cannot plan a path. When the cleaning robot is in the state of planning being trapped, the cleaning robot can move forward, rotate, etc. normally and freely. Movement being trapped means that the cleaning robot cannot move or rotate smoothly or even cannot move or rotate at all due to a failure or special terrain and special scenario. This application is used to solve the problem of planning being trapped. By using the control method of the cleaning robot in this application, the cleaning robot can be disengaged from the state of planning being trapped.
[0049] Specifically, the control method of the cleaning robot in this application includes two planning methods. The first planning method is to perform path planning based on the first map. When the path planning based on the first map fails, the second method is used for path planning. The second path planning method takes into account the historical walking trajectory of the cleaning robot. The historical walking trajectory of the cleaning robot can represent the areas of the current scenario that the cleaning robot has reached in all modes. Therefore, using the historical trajectory of the cleaning robot in the current scenario as a path that can be predicted enriches the information volume of path planning, can improve the success rate of path planning, and enables the cleaning robot to get out of the state of planning being trapped.
[0050] In one embodiment, as Figure 2 shown, a control method of a cleaning robot is provided. Taking the example that this method is applied to the controller of the cleaning robot in Figure 1 it includes the following steps:
[0051] Step 202, when the cleaning robot fails to perform path planning based on the first map at the first moment, obtain the historical walking trajectory of the cleaning robot.
[0052] Specifically, when the cleaning robot fails to execute the preset path planning algorithm, it is determined that the cleaning robot is trapped due to path planning failure. Among them, the cleaning robot can execute the preset path planning algorithm to calculate the passing path based on all or part of the map in the scenario, knowing the body shape and size parameters, target position and current position of the robot. Among them, the preset path planning algorithm can adopt traditional algorithms such as BFS, A star or AI methods.
[0053] Among them, the historical trajectory of the cleaning robot in the current scenario can represent the areas of the current scenario that the cleaning robot has reached in all modes.
[0054] In this embodiment, the map used by the robot for path planning includes, but is not limited to, two-dimensional / three-dimensional grid maps, two-dimensional / three-dimensional cost maps, and two-dimensional / three-dimensional point cloud maps. The map can be divided into different layers according to requirements, and all or part of the layers of the map can be used for path planning.
[0055] In one embodiment, the layers of the map can include an obstacle layer, which represents basic obstacles, including fixed objects and moving objects, as well as living and inanimate objects.
[0056] In one embodiment, the layers of the map can also include a historical trajectory layer, which is used to represent the position information that the cleaning robot has ever reached.
[0057] In one embodiment, the layers of the map can include a carpet layer, which is a carpet layer marked by the cleaning robot according to actual perception.
[0058] In one embodiment, the layers of the map can include a cliff layer, which is a cliff layer marked by the cleaning robot according to actual perception. If the machine does not avoid it, it may cause falling or getting stuck.
[0059] In one embodiment, the layers of the map can include a restricted area layer, which is a layer set by the user to prohibit the cleaning robot from entering.
[0060] In one embodiment, the layers of the map can include a virtual wall layer, which is a layer set by the user to prohibit the cleaning robot from crossing (penetrating).
[0061] In one embodiment, the layers of the map can include a non-mopping area layer, which is an area layer set by the user to prohibit the cleaning robot from mopping the floor.
[0062] In one embodiment, the layers of the map can include a semantic information layer, which is semantic information marked by the cleaning robot according to the recognition results of AI or other methods.
[0063] Both the first path planning method and the second path planning method of this application can use all or part of the layers of the map of the cleaning robot for path planning.
[0064] Step 204, plan the first passage path of the cleaning robot from the first position to the target position according to the historical walking trajectory; wherein, the first position is the position where the cleaning robot is located at the first moment, and the target position is the target arrival position of the cleaning robot.
[0065] The first map can be a local map of the working space of the cleaning robot, such as a local map of a certain room, or a global map of the cleaning robot. In this embodiment, when the path planning based on the first map fails, according to the historical walking trajectory, the first passing path of the cleaning robot from the first position to the target position is planned.
[0066] Considering that the layout of the working area of the cleaning robot is usually relatively fixed, when the path planning using the current scene map fails, it may be that there are temporary obstacles in the current scene. After the machine cleans in Room A and is about to enter Room B, when there is an animal or a person in the passage from A to B behind the machine, the real-time positioning and mapping system of the robot will block the passage. At this time, it is impossible to plan a path from the map level, that is, the machine cannot pass through this passage. The historical trajectory of the cleaning robot in the current scene can represent the areas of the current scene that the cleaning robot has reached in all modes. Therefore, when the path planning of the cleaning robot based on the first map fails, it may be that there are obstacles in the current scene at the current first moment, and the obstacle may be a temporary obstacle. Considering the situation of temporary obstacles, using the historical walking trajectory for path planning enriches the information volume of path planning and can improve the success rate of path planning.
[0067] The first position is the position where the cleaning robot is located at the first moment. The target position is the target arrival position of the cleaning robot, such as the target arrival position determined by the cleaning robot according to the map. In this embodiment, when the path planning using the first path planning method fails, that is, when the path planning of the cleaning robot based on the first map at the first moment fails, the second path planning method is adopted. This method plans the first passing path of the cleaning robot from the first position to the target position according to the historical walking trajectory.
[0068] Specifically, for the second path planning method, using the historical trajectory of the cleaning robot in the current scene, according to the first map, the known body shape and size parameters of the robot, the target position, and the first position, a preset path planning algorithm is executed to calculate the first passing path of the cleaning robot from the first position to the target position.
[0069] Step 206, mark the warning positions on the first passing path according to the positions of the obstacles on the first map.
[0070] Since the first passage path is obtained from historical passage paths, and historical passage paths represent areas of the current scene that the cleaning robot has reached in all modes. Therefore, when planning the first passage path, the obstacle situation on the first map is not considered. This means that there is a possibility that a current obstacle is on the historical passage path but is planned as a passage path, that is, the area where the obstacle is located is planned as a passable area, and there are obstacles on the first passage path. In view of this situation, in this embodiment, warning positions on the first passage path are marked according to the positions of the obstacles on the first map.
[0071] In this embodiment, by virtue of the warning positions on the first passage path, it is possible to distinguish between sections of the first passage path where free passage is possible and sections of the obstacle passage that require caution. Taking an obstacle on the first passage path as an example, the first passage path may include a first passable path section from the first position to the obstacle, an obstacle path section corresponding to the obstacle, which is a warning section, and a second passable path section from the obstacle to the target point.
[0072] Among them, the first passage path includes multiple path points. To mark the warning positions, warning position identifiers can be added to the path points in the area of the obstacles on the first map on the first passage path.
[0073] Step 208, control the cleaning robot to walk according to the first passage path, and pass through the warning positions and non-warning positions on the first passage path with different passage strategies.
[0074] Among them, the non-warning positions on the first passage path are the path points that are not marked as warning positions. After the first passage path is planned by adopting the second path planning method, control the cleaning robot to walk according to the first passage path. Moreover, during the walking process, different passage strategies are adopted for the warning positions and non-warning positions on the first passage path.
[0075] Among them, the warning positions on the first passage path are the path points corresponding to the areas where the obstacles are located, and there are no obstacles at the non-warning positions on the second passage path. By adopting different methods for the two, the passing efficiency can be improved. For example, for the non-warning positions on the first passage path, a passage strategy with higher passing efficiency can be adopted. For the warning positions on the first communication path, considering the obstacles, a relatively safe and secure passage strategy can be adopted.
[0076] In actual tests and use, it is found that the forms and scenarios of being trapped are diverse. If the scenarios are completely subdivided and different measures are taken, it will increase the complexity of the algorithm processing logic, and at the same time, it is very likely to cause some scenarios to be overlooked. Through actual analysis, the machine always needs a passage that can at least accommodate the fuselage to get out of the trapped scenario, so that the machine can successfully get out of the trapped area.
[0077] Considering the above situation, in this embodiment, the forms and scenarios of being trapped are not distinguished. When the path planning based on the first map fails, according to the historical trajectory of the cleaning robot in the current scenario, the first passage path of the cleaning robot from the first position to the target position is planned. The historical trajectory of the cleaning robot in the current scenario can represent the regions of the current scenario that the cleaning robot has reached in all modes. Therefore, by using the historical trajectory of the cleaning robot in the current scenario, the situation where the path planning fails due to the existence of temporary obstacles in the current scenario is considered. Therefore, taking the historical trajectory of the cleaning robot in the current scenario as the path that can be predicted enriches the information volume of the path planning and can improve the success rate of the path planning. And according to the positions of the obstacles on the first map, the warning positions on the first passage path are marked, and different passage strategies are adopted for the warning positions and non-warning positions on the first passage path, which can take into account the different characteristics of the obstacle path segments and non-obstacle path segments, adopt different passage strategies, and improve the passage efficiency and success rate.
[0078] In one embodiment, planning the first passage path of the cleaning robot from the first position to the target position according to the historical walking trajectory includes: clearing the obstacles on the first map on the historical walking trajectory according to the historical walking trajectory and the first map to obtain a fused map; performing path planning according to the fused map to obtain the first passage path of the cleaning robot from the first position to the target position.
[0079] The first map can be a local map of the working space of the cleaning robot, such as a local map of a certain room, or it can be a global map of the cleaning robot. In this embodiment, when the path planning based on the first map fails, according to the historical trajectory of the cleaning robot in the current scenario, the obstacles on the historical walking trajectory in the first map are cleared to obtain a fused map. Among them, the first map is the working space of the cleaning robot, for example, a certain room. Therefore, in the fused map, the obstacles on the historical walking trajectory in the first map are cleared. For example, at the position where the obstacle A is located in the first map and on the historical walking trajectory, the obstacle A can be cleared from the first map to obtain a fused map.
[0080] Therefore, the fused map utilizes the historical trajectory of the cleaning robot in the current scenario to clear the obstacles on the historical walking trajectory in the first map, and then takes this historical passage trajectory as the path that can be used. Furthermore, according to the current fused map, knowing the body shape and size parameters of the robot, the target position and the first position, a preset path planning algorithm is executed to calculate the first passage path of the cleaning robot from the current position to the target position.
[0081] Some path planning methods consider the historical walking trajectory by usually dividing path segments based on the historical walking trajectory and the positions of obstacles. For example, if there is a historical walking trajectory from the current position to an obstacle, then this segment of the historical walking trajectory is taken as one segment of the path planning, and then path planning is carried out for the obstacle segment and from the obstacle to the target point.
[0082] The way of considering the historical walking trajectory for planning in this embodiment is different from the traditional way. In this embodiment, the obstacles located on the historical walking trajectory in the first map are removed to obtain a fused map, that is, if there is a path segment that was historically passable but currently has an obstacle, it is regarded as a passable path during planning, and path planning from the first position to the target position is carried out in this way without segmental path division, which can improve the efficiency of path planning. While improving the path planning efficiency, this method takes into account the relationship between the historical walking trajectory and the current obstacles, and can consider the possibility of temporary obstacles. Therefore, taking the historical trajectory of the cleaning robot in the current scene as a path that can be predicted for use enriches the information volume of path planning and can improve the success rate of path planning.
[0083] In another embodiment, the cleaning robot is controlled to walk along the first passable path and pass through the warning positions and non-warning positions on the first passable path with different passing strategies, including: when walking to a non-warning position based on the first passable path, controlling the cleaning robot to walk with a first passing strategy; when walking to a warning position based on the first passable path, controlling the cleaning robot to walk with a second passing strategy; the first walking speed in the first passing strategy is greater than the second walking speed in the second passing strategy.
[0084] For the path points corresponding to the positions of the obstacles on the first passable path, warning position marks are added. Through the warning position marks, it can be identified whether the current cleaning robot walks to the warning position (obstacle path segment) or the non-warning position (non-obstacle path segment) of the first passable path.
[0085] When it is determined that the cleaning robot walks to a non-obstacle path segment, control the cleaning robot to walk with the first passing strategy. When it is determined that the cleaning robot walks to an obstacle path segment, control the cleaning robot to walk with the second passing strategy.
[0086] In this embodiment, the first passing strategy and the second passing strategy include walking speeds. The first walking speed in the first passing strategy is greater than the second walking speed in the second passing strategy.
[0087] Specifically, the walking speed of the cleaning robot on the non-obstacle path segment of the first passage path is greater than that on the obstacle path segment. For example, the cleaning robot first walks to the warning position at the first walking speed, walks at the second walking speed at the warning position, and when passing through all the warning positions, continues to walk at the first walking speed. Among them, the first walking speed is greater than the second walking speed.
[0088] Taking one obstacle on the first passage path as an example, the first passage path may include a first passable path segment from the first position to the obstacle, an obstacle path segment corresponding to the obstacle, which is a warning section, and a second passable path segment from the obstacle to the target point. The user can observe that the cleaning robot walks at a faster speed on the first passable path segment, probes through the obstacle path segment at a slower walking speed, and after passing the obstacle, continues to walk at a faster speed on the second passable path segment. Therefore, the cleaning robot will quickly move forward to the area where the path is blocked by obstacles, then pass through the blocked area at a slower speed, and then continue to quickly pass through the next passable path segment in turn.
[0089] Among them, reducing the speed of the cleaning robot can enable the cleaning robot to pass through the obstacle path segment at a slower walking speed. In this way, even if it touches an obstacle during passing, due to the low speed, the possibility of damage to the cleaning robot is reduced, thus improving the safety of passing through the obstacle path segment.
[0090] In another embodiment, both the first passage strategy and the second passage strategy may further include the sensor call frequency. The sensor call frequency refers to the frequency at which the cleaning robot calls the sensor to obtain sensor data. Since there are no obstacles near the first passage path, and the second passage path is an obstacle path segment. Therefore, the second passage path is safer than the first passage path. Therefore, on the first passage path, the call frequency of the sensor of the cleaning robot can be reduced, while on the second passage path, the call frequency of the sensor of the cleaning robot can be relatively increased, so as to obtain sensor data at a higher frequency and provide real-time data for safely bypassing the obstacle path segment.
[0091] In another embodiment, the cleaning robot includes a sensor; the second passage strategy further includes: obtaining the sensor information collected by the sensor; using the first passage path as the direction guidance, and exploring a path to bypass the obstacle according to the sensor information.
[0092] The sensor information includes the information detected by various sensors of the cleaning robot, including image sensor information, collision sensor information, radar sensors, etc. When the cleaning robot walks to an obstacle path segment, in addition to reducing the walking speed, it also adjusts the passing parameters according to the sensor information and the first passing path, and passes through the warning position in an exploratory manner. Specifically, guided by the first passing path, it explores the path according to the sensor information to bypass the obstacle.
[0093] Traditional path exploration methods usually rely on sensor information. For example, following the wall or moving forward in an exploratory manner. In these methods, the machine will move forward in an exploratory manner, such as following the wall. This way has no directionality and makes less use of the existing known map information and other sensor information. Therefore, the result is predictable. The wall-following scheme may be opposite to the destination. At the same time, due to less use of perception information, it takes a long time and may even be stuck by some marginal obstacles, resulting in the machine being completely unable to move.
[0094] In this embodiment, guided by the first passing path, it explores the path according to the sensor information to bypass the obstacle. In this way, the direction of the explored path is the first passing path, and the path bypassing the obstacle is explored using the sensor information.
[0095] Among them, the exploration method includes various situations. For example, when the cleaning robot touches an obstacle and cannot cross the obstacle, guided by the first passing path, it controls the cleaning robot to explore along the edge of the obstacle. Another example is when the cleaning robot is lifted by an obstacle, it controls the cleaning robot to accelerate and cross the obstacle. Another example is when the cleaning robot is lifted by an obstacle, it controls the cleaning robot to accelerate and cross the obstacle. If it still cannot cross the obstacle after acceleration, it controls the cleaning robot to retreat, or retreat after rotating a preset angle, and guided by the first passing path, it controls the cleaning robot to explore along the edge of the obstacle.
[0096] In this embodiment, it obtains the sensor information, and adjusts the passing parameters according to the sensor information and the first passing path, and passes through the warning position in an exploratory manner. For example, if the machine encounters a high obstacle collision or a low obstacle lifts the machine, the cleaning robot takes corresponding passing actions. It adjusts the direction according to the actual situation, combines actions such as rotating a certain angle, moving forward and backward, and sends the machine to the next actually planned and feasible path, and passes through the warning position in an exploratory manner.
[0097] In one embodiment, when the cleaning robot walks to an obstacle path segment, the adjustment method of at least one parameter among the walking speed and the sensor call frequency, and the method of exploring a path to bypass the obstacle according to the sensor information with the first passage path as the direction guidance can be alternated. For example, when the cleaning robot walks to an obstacle path segment, first reduce at least one parameter among the walking speed and the sensor call frequency. During this process, obtain the sensor information collected by the sensor, and with the first passage path as the direction guidance, explore a path to bypass the obstacle according to the sensor information.
[0098] For another example, when the cleaning robot walks to an obstacle path segment, obtain the sensor information collected by the sensor; with the first passage path as the direction guidance, explore a path to bypass the obstacle according to the sensor information. Among them, during the process of exploring a path to bypass the obstacle with the first passage path as the direction guidance, reduce at least one parameter among the walking speed and the sensor call frequency.
[0099] In this embodiment, the warning position represents the warning range of the cleaning robot on the first passage path. Within this range, the cleaning robot bypasses the obstacle path segment by reducing the walking speed and using the sensor information and the first passage path to explore.
[0100] In another embodiment, the cleaning robot control method further includes: when it is determined according to the sensor information that the path segment corresponding to the warning position is blocked by an obstacle, determine an exploration point according to the intersection point of the obstacle and the first passage path; and bypass the obstacle in an exploratory manner according to the exploration point and the sensor information.
[0101] Specifically, when it is determined according to the sensor information that the path segment corresponding to the warning position is blocked by an obstacle, it may be that the obstacle is too high to be crossed, or it may be that the cleaning robot is lifted to the obstacle but is blocked due to being stuck. At this time, determine an exploration point according to the intersection point of the obstacle and the first passage path; and bypass the obstacle in an exploratory manner according to the exploration point and the sensor information.
[0102] Among them, the exploration method includes multiple situations. For example, when the cleaning robot touches an obstacle and cannot cross the obstacle, with the first passage path as the direction guidance, control the cleaning robot to explore along the edge of the obstacle. For another example, when the cleaning robot is lifted by an obstacle, control the cleaning robot to accelerate across the obstacle. For another example, when the cleaning robot is lifted by an obstacle, control the cleaning robot to accelerate across the obstacle. If it still cannot cross the obstacle after acceleration, then control the cleaning robot to retreat, or retreat after rotating a preset angle, and with the first passage path as the direction guidance, control the cleaning robot to explore along the edge of the obstacle.
[0103] In this embodiment, when the path segment corresponding to the warning position is blocked by an obstacle, the cleaning robot will explore at the intersection of the first passing path and the obstacle-blocked road, try to use the real-time sensor to lead the cleaning robot to find other passing intersections, and then return to the planned path, so as to bypass the obstacle.
[0104] In another embodiment, the cleaning robot control method further includes: when it is determined according to the sensor information that all other directions of the path segment corresponding to the warning position except the entrance are blocked by obstacles, controlling the cleaning robot to retreat or turn around to leave the path segment corresponding to the warning position.
[0105] Specifically, when it is determined according to the sensor information that all other directions of the path segment corresponding to the warning position except the entrance are impassable, it is possible that all other directions of the first passing path except the entrance are blocked, and in this case, the first passing path becomes a dead end. For this situation, the cleaning robot can be controlled to take a rotating action to turn around or retreat according to the situation, and then come out of the dead end. Specifically, if the cleaning robot determines that its rotation is restricted according to the sensor information, it can perform a retreat action according to the historical trajectory, and will perform real-time detection according to the sensor data during the retreat. If there is an obstacle, it will decelerate or brake. If the cleaning robot determines that it can rotate freely according to the sensor information, it can rotate and turn around, and will perform real-time detection according to the sensor data during walking. If there is an obstacle, it will decelerate or brake.
[0106] In this embodiment, when all other directions of the path segment corresponding to the warning position except the entrance are blocked by obstacles, by controlling the cleaning robot to retreat or turn around to leave, it can further prevent the cleaning robot from being trapped during passage and improve the passing success rate.
[0107] In another embodiment, the way for the cleaning robot to explore the passing path can be: when the cleaning robot touches an obstacle and cannot cross the obstacle, using the first passing path as the direction guide, controlling the cleaning robot to explore along the edge of the obstacle.
[0108] The difference between this way of exploring the edge path and other ways of exploring the edge path is that this edge exploration has directionality. It uses the first passing path as the direction guide and explores the edge in the direction of the first passing path to bypass the obstacle.
[0109] In another embodiment, the way for the cleaning robot to explore and pass can be: when the cleaning robot is lifted by an obstacle, controlling the cleaning robot to accelerate across the obstacle.
[0110] Specifically, when the cleaning robot touches a low obstacle, the cleaning robot may be lifted by the low obstacle. At this time, the cleaning robot can be controlled to accelerate across the obstacle.
[0111] In another embodiment, the way for the cleaning robot to explore and pass through can be as follows: when the cleaning robot is lifted by an obstacle, control the cleaning robot to accelerate and cross the obstacle. If it still cannot cross the obstacle after acceleration, then control the cleaning robot to retreat, or after rotating a preset angle and turning around, with the first passing path as the direction guidance, control the cleaning robot to explore along the edge of the obstacle.
[0112] Specifically, when the cleaning robot touches a low obstacle, the cleaning robot may be lifted by the low obstacle. At this time, the cleaning robot can be controlled to accelerate and cross the obstacle. However, if it cannot pass through after acceleration, such as when the robot is stuck, at this time, the cleaning robot can be controlled to retreat, or retreat after rotating a preset angle, and determine that the obstacle is impassable. For the situation where the obstacle is impassable, with the first passing path as the direction guidance, control the cleaning robot to explore along the edge of the obstacle.
[0113] In this embodiment, the way for the cleaning robot to explore the path takes into account the working conditions of the cleaning robot. After the first passing path is planned, the planning layer sends the route and the warning position to the chassis of the cleaning robot for path following. The cleaning robot first travels along the actually plannable route. After reaching the warning position predicted according to the historical position information, the cleaning robot fuses and removes the obstacles with historical marks on the map according to the real-time sensor data to find the traveling route, and then tries to travel at a slower speed. If the machine encounters a high obstacle collision or a low obstacle lifts the machine, the robot takes corresponding passing actions. Adjust the direction according to the actual situation, and combine actions such as rotating a certain angle, advancing, and retreating to send the machine to the next actually plannable path segment. In this way, the passing success rate is improved.
[0114] Among them, the end of the exploration path includes two situations. One situation is that when the planning layer can plan a path according to the latest map, it means that there is no obstacle blocking ahead and it can travel according to normal actions and speed, then the robot is controlled to walk according to the planned new path. Another situation is that it is determined that the obstacle area corresponding to the warning position has been exited according to the warning position information.
[0115] In another embodiment, the cleaning robot control method further includes: during the process of the cleaning robot traveling based on the first passing path, when a second passing path from the second position to the target position is planned based on the second map at the second moment, control the cleaning robot to travel based on the second passing path.
[0116] The second position is the position where the cleaning robot is located at the second moment. When the cleaning robot is walking along the first passage path, if a second passage path from the second position to the target position can be planned according to the second map at the second moment, it means that the cleaning robot can successfully perform path planning based on the second map, which means that the temporary obstacle has left during the walking process of the cleaning robot, and then the cleaning robot walks along the planned second passage path.
[0117] When the planning layer can plan a path according to the latest map, it means that there is no obstacle blocking ahead and the robot can move forward with normal actions and speed. Then, the robot is controlled to walk according to the planned new path.
[0118] In another embodiment, a control method for a cleaning robot is applied to the navigation process of the cleaning robot. Navigation refers to the process in which the cleaning robot plans a corresponding path according to the map and the target point and delivers the robot to the target position (area). Since the actual scenario is not ideal, the machine will inevitably encounter special situations during navigation, such as a temporary obstacle blocking the path and being unable to plan a new path. To solve this problem, this embodiment provides a control method for a cleaning robot, as Figure 3 shown, including:
[0119] Step 302, determine whether the path planning based on the first map at the first moment is successful. If successful, execute step 303; if not successful, execute step 304.
[0120] Step 303, control the cleaning robot to walk according to the currently planned path.
[0121] Step 304, obtain the historical walking trajectory of the cleaning robot, remove the obstacles on the historical walking trajectory from the first map according to the historical walking trajectory and the first map to obtain a fused map, and perform path planning according to the fused map to obtain the first passage path of the cleaning robot from the first position to the target position.
[0122] It can be understood that if the path cannot be planned in this way, other path planning methods can also be used. If all path planning methods cannot plan a path, the navigation fails and the user can be reminded.
[0123] Step 306, mark the warning positions on the first passage path according to the positions of the obstacles on the first map.
[0124] Step 308, control the cleaning robot to walk according to the first passage path, and when walking to the non-warning position based on the first passage path, control the cleaning robot to walk with the first passage strategy; when walking to the warning position based on the first passage path, control the cleaning robot to walk with the second passage strategy; the first walking speed in the first passage strategy is greater than the second walking speed in the second passage strategy, and / or the sensor calling frequency in the first passage strategy is lower than the sensor calling frequency in the second passage strategy.
[0125] Step 310, obtain sensor signal information collected by the sensor, use the first pass path as a direction guide, and explore a path according to the sensor information to bypass the obstacle.
[0126] Among them, during the walking process, it also includes:
[0127] Step 312, when it is determined according to the sensor information that the path segment corresponding to the warning position is blocked by an obstacle, an exploration point is determined according to the intersection of the obstacle and the first pass path; and a path is explored to bypass the obstacle according to the exploration point and the sensor information.
[0128] Step 314, when it is determined based on the sensor information that the path segment corresponding to the warning position is blocked by obstacles in all directions except the entrance, the cleaning robot is controlled to retreat or turn around to leave the path segment corresponding to the warning position.
[0129] Step 316, when the cleaning robot is moving based on the first path, when a second path from the second position to the target position is planned based on the second map at the second moment, the cleaning robot is controlled to move based on the second path.
[0130] In this embodiment, the path planning methods include multiple methods, which can improve the success rate and efficiency of navigation. This method makes the machine behavior more intelligent and the robot's passage plan more complete by distinguishing between conventional navigation and escape processes. When path planning based on the first map fails, path planning is performed using the historical walking trajectory. According to the historical position information combined with real-time sensor data, the navigation path includes the warning position corresponding to the obstacle. The cleaning robot adopts different passage strategies for the warning position and the non-warning position, so that the action can be flexibly adjusted as needed, reducing false collisions while improving the passing efficiency. In order to solve the problem of interference in map data and the lack of real-time performance on the target passage path, real-time data (real-time sensors, etc.) will be combined to improve the real-time performance of navigation and escape.
[0131] It should be understood that although the steps in the flowcharts involved in the above-described embodiments are sequentially shown according to the indications of the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless there is a clear indication in this article, the execution of these steps has no strict order limit, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-described embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily executed at the same moment, but can be executed at different moments. The execution order of these steps or stages is not necessarily sequential, but can be executed alternately or in turn with at least a part of other steps or steps or stages in other steps.
[0132] Based on the same inventive concept, an embodiment of the present application also provides a control device for a cleaning robot for implementing the control method of the cleaning robot involved above. The solution provided by this device to solve the problem is similar to the solution described in the above method. Therefore, the specific limitations in one or more embodiments of the control device for the cleaning robot provided below can refer to the limitations on the control method of the cleaning robot in the above text, and will not be repeated here.
[0133] In one embodiment, as Figure 4 shown, a control device for a cleaning robot is provided, including:
[0134] A planning module 402, configured to, when the path planning of the cleaning robot fails based on the first map at the first moment, obtain the historical walking trajectory of the cleaning robot, and plan a first passage path of the cleaning robot from the first position to the target position according to the historical walking trajectory; wherein, the first position is the position where the cleaning robot is located at the first moment, and the target position is the target arrival position of the cleaning robot.
[0135] A detection module 404, configured to obtain the position of an obstacle.
[0136] An early warning module 406, configured to mark the early warning positions on the first passage path according to the positions of the obstacles on the first map.
[0137] A control module 408, configured to control the cleaning robot to walk according to the first passage path, and pass through the early warning positions and non-early warning positions on the first passage path with different passage strategies.
[0138] In one of the embodiments, the planning module is configured to, according to the historical walking trajectory and the first map, remove the obstacles on the historical walking trajectory in the first map to obtain a fused map; and perform path planning according to the fused map to obtain the first passage path of the cleaning robot from the first position to the target position.
[0139] In another embodiment, the control module is configured to control the cleaning robot to travel with a first travel strategy when walking to the non-warning position based on the first travel path; when walking to the warning position based on the first travel path, the first travel strategy and the second travel strategy include at least one parameter of the walking speed and the sensor call frequency; control the cleaning robot to travel with a second travel strategy; the first walking speed in the first travel strategy is greater than the second walking speed in the second travel strategy; the sensor call frequency in the first travel strategy is lower than the sensor call frequency in the second travel strategy.
[0140] In another embodiment, the control module is further configured to obtain the sensor information collected by the sensors; take the first travel path as the direction guidance, and explore a path to bypass the obstacle according to the sensor information.
[0141] In another embodiment, the control module is further configured to, when determining that the path segment corresponding to the warning position is blocked by an obstacle according to the sensor information, determine an exploration point according to the intersection point of the obstacle and the first travel path; explore a path to bypass the obstacle according to the exploration point and the sensor information.
[0142] In another embodiment, the control module is further configured to, when determining that all other directions except the entrance of the path segment corresponding to the warning position are blocked by an obstacle according to the sensor information, control the cleaning robot to retreat or turn around to leave the path segment corresponding to the warning position.
[0143] In another embodiment, the control module is further configured to, when the cleaning robot touches an obstacle and cannot cross the obstacle, take the first travel path as the direction guidance and control the cleaning robot to explore along the edge of the obstacle.
[0144] In another embodiment, the control module is further configured to, when the cleaning robot is lifted by an obstacle, control the cleaning robot to accelerate across the obstacle.
[0145] In another embodiment, the control module is further configured to, when the cleaning robot is lifted by an obstacle, control the cleaning robot to accelerate across the obstacle. If it cannot cross the obstacle by accelerating, then control the cleaning robot to retreat, or after rotating a preset angle and turning around, take the first travel path as the direction guidance and control the cleaning robot to explore along the edge of the obstacle.
[0146] In another embodiment, the control module is further configured to control the cleaning robot to travel along the second travel path when, during the process of the cleaning robot traveling along the first travel path, a second travel path from a second position to the target position is planned based on a second map at a second moment.
[0147] Each module in the control device of the above-mentioned cleaning robot can be implemented in whole or in part by software, hardware, and their combination. Each of the above modules can be embedded in the processor of the computer device in hardware form or be independent of it, or can be stored in the memory of the computer device in software form, so that the processor can call and execute the operations corresponding to each of the above modules.
[0148] In one embodiment, a controller for a cleaning robot is provided, and its internal structure diagram can be as Figure 5 shown. The computer device includes a processor, a memory, a communication interface, and an input device connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be implemented through WIFI, a mobile cellular network, NFC (Near Field Communication), or other technologies. The input device can be a microphone. When the computer program is executed by the processor, it implements a control method for a cleaning robot.
[0149] Those skilled in the art can understand that Figure 5 the structure shown in
[0150] is only a block diagram of some structures related to the solution of this application, and does not constitute a limitation on the computer device to which the solution of this application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine some components, or have different component arrangements.
[0151] In one embodiment, a computer program product is provided, including a computer program that implements the control method of the cleaning robot in the above-mentioned embodiments when executed by a processor.
[0152] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, database, or other medium used in the embodiments provided in the present application can include at least one of non-volatile and volatile memories. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The databases involved in the embodiments provided in the present application can include at least one of relational databases and non-relational databases. Non-relational databases can include distributed databases based on blockchain, etc., without limitation. The processors involved in the embodiments provided in the present application can be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, data processing logics based on quantum computing, etc., without limitation.
[0153] The technical features of the above embodiments can be combined arbitrarily. For the sake of concise description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope described in this specification.
[0154] The above-described embodiments merely represent several implementation manners of the present application. The description is relatively specific and detailed, but it should not be construed as a limitation on the patent scope of the present application. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the appended claims.
Claims
1. A control method for a cleaning robot, characterized in that The method includes: When the path planning of the cleaning robot fails based on the first map at the first moment, obtaining the historical walking trajectory of the cleaning robot; According to the historical walking trajectory, planning a first passing path for the cleaning robot from the first position to the target position; wherein, the first position is the position where the cleaning robot is located at the first moment, and the target position is the target arrival position of the cleaning robot; Marking warning positions on the first passing path according to the positions of obstacles on the first map; Controlling the cleaning robot to walk according to the first passing path and passing through the warning positions and non-warning positions on the first passing path with different passing strategies.
2. The method according to claim 1, wherein The planning of the first passing path for the cleaning robot from the first position to the target position according to the historical walking trajectory includes: According to the historical walking trajectory and the first map, clearing the obstacles on the historical walking trajectory in the first map to obtain a fused map; Performing path planning according to the fused map to obtain the first passing path for the cleaning robot from the first position to the target position.
3. The method according to claim 1, characterized in that, The controlling the cleaning robot to walk according to the first passing path and passing through the warning positions and non-warning positions on the first passing path with different passing strategies includes: When walking to the non-warning position based on the first passing path, controlling the cleaning robot to walk with a first passing strategy; When walking to the warning position based on the first passing path, controlling the cleaning robot to walk with a second passing strategy; The first passing strategy and the second passing strategy include at least one parameter of walking speed and sensor call frequency; the first walking speed in the first passing strategy is greater than the second walking speed in the second passing strategy; the sensor call frequency in the first passing strategy is lower than the sensor call frequency in the second passing strategy.
4. The method according to claim 3, characterized in that, The cleaning robot includes a sensor; The step of controlling the cleaning robot to walk with the second passing strategy further includes: Obtaining sensor information collected by the sensor; Using the first passing path as a direction guide and exploring a path to bypass the obstacle according to the sensor information.
5. The method according to claim 4, wherein The method further includes: When it is determined according to the sensor information that the path segment corresponding to the warning position is blocked by an obstacle, determining an exploration point according to the intersection of the obstacle and the first passing path; Exploring a path to bypass the obstacle according to the exploration point and the sensor information.
6. The method according to claim 4, wherein The method further includes: When it is determined according to the sensor information that all other directions of the path segment corresponding to the warning position except the entrance are blocked by obstacles, controlling the cleaning robot to retreat or turn around to leave the path segment corresponding to the warning position.
7. The method according to claim 4 or 5, characterized in that, The path exploration method includes at least one of the following methods: The first: When the cleaning robot touches an obstacle and cannot cross the obstacle, using the first passing path as a direction guide and controlling the cleaning robot to explore along the edge of the obstacle; The second: When the cleaning robot is lifted by an obstacle, controlling the cleaning robot to accelerate across the obstacle; The third type: when the cleaning robot is lifted by an obstacle, control the cleaning robot to accelerate and cross the obstacle. If it still cannot cross the obstacle after acceleration, then control the cleaning robot to retreat, or after rotating a preset angle and turning around, using the first passage path as the direction guidance, control the cleaning robot to explore along the edge of the obstacle.
8. The method according to any one of claims 1 to 6, characterized in that The method further includes: During the process of the cleaning robot moving along the first passage path, when a second passage path from a second position to the target position is planned based on a second map at a second moment, control the cleaning robot to move along the second passage path; the second position is the position where the cleaning robot is located at the second moment.
9. A control device for a cleaning robot, characterized in that, The device includes: A planning module, configured to, when the path planning of the cleaning robot fails based on a first map at a first moment, obtain the historical walking trajectory of the cleaning robot, and plan a first passage path of the cleaning robot from a first position to a target position according to the historical walking trajectory; A detection module, configured to obtain the position of an obstacle; An early warning module, configured to mark an early warning position on the first passage path according to the position of the obstacle on the first map; A control module, configured to control the cleaning robot to move along the first passage path and pass through the early warning position and the non-early warning position on the first passage path with different passage strategies.
10. A cleaning robot, comprising a sensor, a wheel assembly and a controller, the sensor and the wheel assembly are both electrically connected to the controller, the controller includes a memory and a processor, the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 8.