Cleaning robot obstacle avoidance method, cleaning robot, medium and program product
The DTOF imaging system recognizes obstacles and dynamically plans the path, which solves the problem of low safety in cleaning robots when encountering obstacles, and achieves more efficient and safe cleaning operations.
Patent Information
- Application Number
- CN202411664504.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-20
- Publication Date
- 2025-03-21
AI Technical Summary
The cleaning robot cannot adjust the route of travel in time when detecting obstacles, resulting in low safety.
The DTOF imaging system is used to obtain environmental imaging data, determine the differences between actual and theoretical environmental objects, identify obstacles, and perform path planning based on obstacle information, and dynamically adjust the working path of the cleaning robot.
It significantly improves the environmental perception ability of the cleaning robot, accurately identify obstacles and dynamically plan paths, avoid collisions with moving obstacles, and improves the safety and work efficiency of the cleaning robot.
Smart Images

Figure CN119655674A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of robotics technology, and in particular to an obstacle avoidance method for a cleaning robot, a cleaning robot, a medium and a program product. Background Art
[0002] Cleaning robots are a new type of cleaning equipment that has emerged in recent years with the rapid development of robotics and automation technologies. The basic principle of cleaning robots is to enable robots to autonomously navigate, identify the environment, and perform cleaning tasks through a series of sensors and control systems. With the continuous advancement of technology and the increasing market demand, cleaning robots will develop in a more intelligent, efficient, and diversified direction. At present, when cleaning robots are actually used for cleaning, they may encounter obstacles. If the cleaning robot cannot adjust its route in time when it detects an obstacle, it may affect the safety of the cleaning robot.
[0003] The above contents are only used to assist in understanding the technical solution of the present application and do not constitute an admission that the above contents are prior art. Summary of the invention
[0004] The main purpose of the present application is to provide a cleaning robot obstacle avoidance method, a cleaning robot, a medium and a program product, aiming to solve the technical problem that obstacles cause low safety of the cleaning robot.
[0005] To achieve the above objectives, the present application proposes a cleaning robot obstacle avoidance method, which is applied to a cleaning robot, on which a DTOF (direct Time-of-Flight) imaging system is provided, and the cleaning robot obstacle avoidance method comprises:
[0006] Acquire environmental imaging data of the external environment in which the cleaning robot is located through the DTOF imaging system, and determine actual environmental objects in the external environment based on the environmental imaging data;
[0007] Determine the current position of the cleaning robot, and determine theoretical environmental objects based on the current position and preset environmental modeling data;
[0008] If the actual environment object and the theoretical environment object are inconsistent, determining an obstacle from the actual environment object and the theoretical environment object, and determining obstacle information of the obstacle based on the environment imaging data;
[0009] Based on the obstacle information of the obstacle and the current position, path planning is performed to obtain a target working path, and the cleaning robot is controlled to operate according to the target working path.
[0010] In one embodiment, before the step of performing path planning based on the obstacle information of the obstacle and the current position to obtain the target working path, the step further includes:
[0011] Acquire historical image data of the obstacle in the external environment, and detect whether the obstacle is a moving obstacle based on the historical image data;
[0012] If the obstacle is the moving obstacle, inputting the historical image data into a pre-trained trajectory prediction model to obtain a predicted trajectory of the obstacle;
[0013] Comparing the unfinished working path with the predicted trajectory to obtain a trajectory comparison result, wherein the trajectory comparison result is used to characterize whether there is a trajectory overlap point between the unfinished working path and the predicted trajectory, and the unfinished working path is a working path that the cleaning robot has not run in the preset working path of the cleaning robot;
[0014] The step of performing path planning based on the obstacle information of the obstacle and the current position to obtain a target working path includes:
[0015] Path planning is performed based on the trajectory comparison result, the obstacle information of the obstacle and the current position to obtain a target working path.
[0016] In one embodiment, the step of performing path planning based on the trajectory comparison result, the obstacle information of the obstacle and the current position to obtain the target working path includes:
[0017] If the trajectory comparison result indicates that there is an overlapping point of the trajectory, determining a moving direction detection result of the obstacle, wherein the moving direction detection result is used to indicate whether the moving direction of the obstacle is a direction approaching the cleaning robot;
[0018] Path planning is performed based on the moving direction detection result, the obstacle information and the current position to obtain a target working path.
[0019] In one embodiment, the step of performing path planning based on the moving direction detection result, the obstacle information and the current position to obtain a target working path includes:
[0020] If the moving direction detection result indicates that the moving direction of the obstacle is a direction close to the cleaning robot, determining a target deflection angle of the cleaning robot based on the obstacle information of the obstacle, and controlling the cleaning robot to deflect the target deflection angle;
[0021] The target working path is obtained by replanning the path according to the current position of the cleaning robot after deflection by the target deflection angle and the obstacle information of the obstacle.
[0022] In one embodiment, the step of performing path planning based on the moving direction detection result, the obstacle information and the current position to obtain a target working path includes:
[0023] If the moving direction detection result indicates that the moving direction of the obstacle is not a direction approaching the cleaning robot, obtaining a moving speed of the obstacle;
[0024] Reducing the moving speed of the cleaning robot to a speed lower than the moving speed of the obstacle;
[0025] After the distance between the obstacle and the cleaning robot after the moving speed is reduced is greater than the preset obstacle avoidance distance, path planning is performed based on the moving speed of the cleaning robot after the moving speed is reduced and the current position after the moving speed is reduced to obtain the target working path.
[0026] In one embodiment, after the step of detecting whether the obstacle is a moving obstacle based on the historical image data, the method further includes:
[0027] If the obstacle is not the mobile obstacle, detecting whether the obstacle is a long-term obstacle;
[0028] If the obstacle is a long-standing obstacle, the environmental modeling data is updated based on the environmental imaging data, path planning is performed based on the updated environmental modeling data to obtain an updated working path, the cleaning robot is controlled to operate according to the updated working path, and the updated environmental modeling data is used as the preset environmental modeling data.
[0029] In one embodiment, the step of performing path planning based on the trajectory comparison result, the obstacle information of the obstacle and the current position to obtain the target working path includes:
[0030] Determine new objects and missing objects in the external environment based on the actual environment objects and the theoretical environment objects;
[0031] Determine a first area where the missing object is located in the external environment based on the environmental modeling data, and determine a second area where the newly added object is located in the external environment based on the environmental imaging data;
[0032] If it is determined that the area overlap between the first area and the second area is less than a preset overlap threshold, the newly added object is regarded as an obstacle, and the first area is regarded as an area to be cleaned.
[0033] In addition, to achieve the above-mentioned objectives, the present application also proposes a cleaning robot, the device comprising: a memory, a processor, and a computer program stored on the memory and executable on the processor, the computer program being configured to implement the steps of the cleaning robot obstacle avoidance method as described above.
[0034] In addition, to achieve the above-mentioned purpose, the present application also proposes a storage medium, which is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by the processor, the steps of the cleaning robot obstacle avoidance method described above are implemented.
[0035] In addition, to achieve the above-mentioned purpose, the present application also provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, it implements the steps of the cleaning robot obstacle avoidance method as described above.
[0036] In the present application, environmental imaging data of the external environment in which the cleaning robot is located is obtained through a DTOF imaging system, and the actual environmental objects in the external environment are determined based on the environmental imaging data; the current position of the cleaning robot is determined, and the theoretical environmental objects are determined based on the current position and preset environmental modeling data; if the actual environmental objects and the theoretical environmental objects are inconsistent, obstacles are determined from the actual environmental objects and the theoretical environmental objects, and the obstacle information of the obstacles is determined based on the environmental imaging data; path planning is performed based on the obstacle information and the current position of the obstacles to obtain the target working path, and the cleaning robot is controlled to operate according to the target working path.
[0037] In this application, a DTOF imaging system is introduced to obtain environmental imaging data of the external environment in real time. The environmental imaging data obtained by the DTOF imaging system not only contains distance information, but may also include multi-dimensional features such as the shape and size of objects, so that the cleaning robot can understand the surrounding environment more comprehensively, and achieve high-precision imaging and multi-dimensional feature extraction of the external environment, thereby significantly improving the environmental perception ability of the cleaning robot, so that the cleaning robot can more accurately identify obstacles in the environment, and provide a basis for subsequent path planning. After identifying the obstacle, this application dynamically plans and adjusts the working path of the cleaning robot in combination with the detailed information of the obstacle, so that the cleaning robot can adapt to the moving state of the obstacle, avoiding the overlap of the re-planned working trajectory with the predicted moving trajectory, causing the cleaning robot to collide with the moving obstacle in subsequent operations, and improving the safety of the cleaning robot's work. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0039] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0040] Figure 1 A flowchart diagram of the first embodiment of the cleaning robot obstacle avoidance method of the present application;
[0041] Figure 2 A flow chart of the second embodiment of the cleaning robot obstacle avoidance method of the present application;
[0042] Figure 3 A schematic diagram of a brief flow chart of a cleaning robot obstacle avoidance method provided in one embodiment of the present application;
[0043] Figure 4 This is a schematic diagram of the module structure of the obstacle avoidance device of the cleaning robot according to an embodiment of the present application;
[0044] Figure 5 This is a schematic diagram of the equipment structure of the hardware operating environment involved in the cleaning robot obstacle avoidance method in the embodiment of the present application.
[0045] The purpose, features and advantages of this application will be further described in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION
[0046] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.
[0047] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.
[0048] The main solution of the embodiment of the present application is: to obtain environmental imaging data of the external environment in which the cleaning robot is located through a DTOF imaging system, and to determine the actual environmental objects in the external environment based on the environmental imaging data; to determine the current position of the cleaning robot, and to determine the theoretical environmental objects based on the current position and preset environmental modeling data; if the actual environmental objects are inconsistent with the theoretical environmental objects, obstacles are determined from the actual environmental objects and the theoretical environmental objects, and obstacle information of the obstacles is determined based on the environmental imaging data; to perform path planning based on the obstacle information and the current position of the obstacles to obtain the target working path, and to control the cleaning robot to operate according to the target working path.
[0049] Cleaning robots are a new type of cleaning equipment that has emerged in recent years with the rapid development of robotics and automation technologies. The basic principle of cleaning robots is to enable robots to autonomously navigate, identify the environment, and perform cleaning tasks through a series of sensors and control systems. With the continuous advancement of technology and the increasing market demand, cleaning robots will develop in a more intelligent, efficient, and diversified direction. At present, when cleaning robots are actually used for cleaning, they may encounter obstacles. If the cleaning robot cannot adjust its route in time when it detects an obstacle, it may affect the safety of the cleaning robot.
[0050] The present application provides a solution, which obtains environmental imaging data of the external environment in real time by introducing a DTOF imaging system. The environmental imaging data not only contains distance information, but may also include multi-dimensional features such as the shape and size of objects, so that the cleaning robot can understand the surrounding environment more comprehensively, and realize high-precision imaging and multi-dimensional feature extraction of the external environment, thereby significantly improving the environmental perception ability of the cleaning robot, so that the cleaning robot can more accurately identify obstacles in the environment, and provide a basis for subsequent path planning. After identifying the obstacle, the present application dynamically plans and adjusts the working path of the cleaning robot in combination with the detailed information of the obstacle, so that the cleaning robot can adapt to the moving state of the obstacle, avoids the re-planned working trajectory and the mobile predicted trajectory overlapping, causing the cleaning robot to collide with the moving obstacle in the subsequent operation, and improves the safety of the cleaning robot.
[0051] It should be noted that the executor of this embodiment can be a cleaning robot with data processing, network communication and program running functions. A DTOF imaging system is set on the cleaning robot. The cleaning robot is taken as an example to illustrate this embodiment and the following embodiments.
[0052] Based on this, the present application embodiment provides a cleaning robot obstacle avoidance method, referring to Figure 1 , Figure 1 This is a flow chart of the first embodiment of the cleaning robot obstacle avoidance method of the present application.
[0053] In this embodiment, the cleaning robot obstacle avoidance method includes steps S10 to S40:
[0054] Step S10, obtaining environmental imaging data of the external environment in which the cleaning robot is located through the DTOF imaging system, and determining actual environmental objects in the external environment based on the environmental imaging data;
[0055] The DTOF imaging system is a technical system that directly calculates the distance by measuring the time difference between the emission and reflection of a light pulse. The working principle of the DTOF imaging system is based on the direct measurement of the photon flight time. The system emits a light pulse and records the emission time. This light pulse is irradiated on the target object and reflected back, captured by the receiver and the reception time is recorded. By calculating the difference between these two time points (i.e., the flight time of the photon) and combining it with the speed of light, the distance between the target object and the receiver can be calculated. Combined with image processing and machine learning algorithms, it can further identify the shape, size and other features of the object, thereby constructing a three-dimensional model of the actual environment.
[0056] Environmental imaging data refers to the images or visual information of the external environment obtained by the DTOF imaging system. Environmental imaging data is the basis for the cleaning robot to avoid obstacles and understand the environment. Actual environmental objects refer to objects encountered by the cleaning robot in the actual working environment, such as furniture, walls, obstacles, etc. The DTOF imaging system is used to perceive the existence and position of these objects in order to avoid obstacles and plan paths.
[0057] The cleaning robot starts the DTOF imaging system, which emits light pulses and receives reflected light pulses. The distance between the object and the cleaning robot is calculated based on the round-trip time of the light pulses and the speed of light. The distance data is combined with the angle information of the imaging system to generate a three-dimensional image or point cloud data of the environment, that is, environmental imaging data. The actual environmental objects are identified and extracted through image processing algorithms. The specific image processing and recognition algorithms are not limited here and can be set according to actual needs. It is understandable that by accurately acquiring the three-dimensional information of the environment, the accuracy of environmental perception can be improved, environmental data can be updated in real time, and dynamically changing environments can be adapted to, providing accurate environmental object information for subsequent steps, and improving the accuracy of obstacle avoidance and path planning.
[0058] Step S20, determining the current position of the cleaning robot, and determining theoretical environmental objects based on the current position and preset environmental modeling data;
[0059] The current position refers to the current position of the cleaning robot in the external environment. The environmental modeling data refers to the environmental model representation built based on known environmental information. Environmental modeling data is usually used for global path planning and environmental understanding. It can be a two-dimensional grid map or a three-dimensional point cloud map, etc., which contains the position, size, shape and other information of objects in the environment. Theoretical environmental objects refer to objects that should theoretically exist in the working environment of the cleaning robot when the cleaning robot is in its current position, determined based on environmental modeling data.
[0060] There is no restriction on the method of determining the current position of the cleaning robot. It can be set according to actual needs. For example, laser radar positioning can be used. Laser is emitted through high-speed rotation. After the laser is emitted, it hits an obstacle and reflects back. The robot judges the distance between itself and the obstacle according to the reflection time, and thus determines the relative position to locate the current position. For example, the cleaning robot can be equipped with a wireless carrier indoor positioning system. Both the cleaning robot body and the charging base have built-in wireless carrier probes. The robot determines its own position by measuring the offset angle between itself and the charging base. Other positioning methods can also be used to determine the current position.
[0061] After the cleaning robot determines its current position through an internal positioning system (such as an inertial navigation system or a visual odometer, etc.), it reads the preset environmental modeling data, determines the position information of the current position mapped in the environmental modeling data, and determines the theoretical environmental objects in the external environment when the cleaning robot is at its current position based on the position information. Furthermore, the working range of the cleaning robot can be set in advance, and the theoretical environmental objects may be environmental objects within the working range of the cleaning robot when it is at its current position.
[0062] Step S30, if the actual environment object and the theoretical environment object are inconsistent, determining an obstacle from the actual environment object and the theoretical environment object, and determining obstacle information of the obstacle based on the environment imaging data;
[0063] Compare the actual environment objects with the theoretical environment objects, identify inconsistent objects (hereinafter referred to as changed objects for convenience of description), which may be newly added obstacles or missing objects, determine the obstacles from the changed objects, and obtain detailed information of the obstacles through the DTOF imaging system. Obstacle information refers to a detailed description of the obstacles, including its location, size, shape, type, etc. It can be understood that by accurately identifying obstacles in the environment, the reliability of obstacle avoidance is improved, and detailed obstacle information is provided for path planning.
[0064] Step S40, performing path planning based on the obstacle information of the obstacle and the current position to obtain a target working path, and controlling the cleaning robot to operate according to the target working path.
[0065] According to the information of obstacles and the current position of the cleaning robot, a path planning algorithm is used to generate an optimal target working path to ensure that the cleaning robot avoids all obstacles and efficiently covers the entire area to be cleaned. Then, the cleaning robot is controlled to operate according to this target working path. The path planning algorithm may include classic algorithms such as A* algorithm, Dijkstra algorithm, genetic algorithm or their improved versions, which are not limited here.
[0066] In a specific embodiment, the obstacle information may include appearance information that characterizes the size and shape of the obstacle; the obstacle information may also include position information that characterizes the relative position of the obstacle to the cleaning robot, for example, it may be the orientation of the obstacle relative to the cleaning robot. Exemplarily, in one embodiment, the path points that need to be added (hereinafter referred to as supplementary points for distinction) may be determined based on the obstacle information, and the target working path of the cleaning robot may be replanned based on the supplementary points and the path points. Specifically, the process of determining the supplementary points may be: determining the position of the cleaning robot, determining the position of the obstacle based on the position of the cleaning robot and the position information of the obstacle, and using the point whose distance from the position of the obstacle is the obstacle avoidance distance as the supplementary point; in another embodiment, the target deflection angle and deflection direction of the cleaning robot may be determined based on the obstacle information and the moving direction, and the target working path may be replanned based on the posture and path points of the deflected cleaning robot, which is not specifically limited here.
[0067] In one feasible implementation, step S30: the step of determining obstacles from the actual environment objects and the theoretical environment objects, comprises:
[0068] Step S301, determining new objects and missing objects in the external environment based on the actual environment objects and the theoretical environment objects;
[0069] New objects refer to objects that appear in the working environment. These objects do not exist in the previous environment modeling data. New objects may be caused by environmental changes or human intervention. Missing objects refer to objects that should exist in the working environment but are not detected in the current environment imaging data. Missing objects may be caused by environmental changes, sensor failures, or data processing errors. The process of determining new objects and missing objects is: traverse the actual environment object list, for each actual environment object, check whether it exists in the theoretical environment object list; if it exists, mark it as matched; if it does not exist, mark it as a new object; traverse the theoretical environment object list, for each theoretical environment object, check whether it exists in the actual environment object list; if it exists, confirm that it has been matched; if it does not exist, mark it as a missing object.
[0070] Step S302, determining a first area where the missing object is located in the external environment based on the environmental modeling data, and determining a second area where the newly added object is located in the external environment based on the environmental imaging data;
[0071] For each missing object, its first area in the environment is determined based on the location information in the environment modeling data, and for each newly added object, its second area in the environment is determined based on the location information (such as three-dimensional coordinates) in the DTOF imaging data. That is, the first area refers to the location area where the missing object is located based on the environment modeling data, and the second area refers to the location area where the newly added object is located based on the environment imaging data.
[0072] Step S303: if it is determined that the area overlap between the first area and the second area is less than a preset overlap threshold, the newly added object is regarded as an obstacle.
[0073] The location information of the first area and the second area are compared. If the two areas are inconsistent, the newly added object is determined to be an obstacle. In this embodiment, the area overlap between the first area and the second area can be calculated. If the area overlap is less than a preset threshold, it is determined that the first area and the second area are inconsistent. It should be noted that the method for calculating the area overlap is not limited here. For example, the intersection-and-union ratio between the first area and the second area can be calculated as the area overlap.
[0074] In this embodiment, by introducing a DTOF imaging system to obtain environmental imaging data of the external environment in real time, the environmental imaging data not only contains distance information, but may also include multi-dimensional features such as the shape and size of objects, so that the cleaning robot can understand the surrounding environment more comprehensively, and achieve high-precision imaging and multi-dimensional feature extraction of the external environment, thereby significantly improving the environmental perception ability of the cleaning robot, so that the cleaning robot can more accurately identify obstacles in the environment, and provide a basis for subsequent path planning. After identifying the obstacle, this embodiment dynamically plans and adjusts the working path of the cleaning robot in combination with the detailed information of the obstacle, so that the cleaning robot can adapt to the moving state of the obstacle, avoiding the re-planned working trajectory and the predicted moving trajectory from coinciding with the collision of the cleaning robot with the moving obstacle in the subsequent operation, and improving the safety of the cleaning robot's work.
[0075] Further, based on the above first embodiment, a second embodiment of this solution is proposed. In this embodiment, please refer to Figure 2 , before the step S40: performing path planning based on the obstacle information of the obstacle and the current position to obtain the target working path, it also includes:
[0076] Step S01, acquiring historical image data of the obstacle in the external environment, and detecting whether the obstacle is a moving obstacle based on the historical image data;
[0077] Historical image data refers to environmental image data acquired by sensors or imaging systems over a period of time in the past. Historical image data can be used to detect changes in the environment, such as the movement of obstacles or the appearance of new objects.
[0078] Mobile obstacles refer to objects that can move in the working environment, such as pedestrians, pets, other robots, etc. Specifically, a DTOF imaging system or other image acquisition equipment is used to obtain continuous image data or video streams (i.e., historical image data) of obstacles in the external environment, and the features of obstacles, such as shape, size, color, texture, etc., are extracted from the continuous image data. Motion detection methods such as inter-frame difference, optical flow method, background subtraction, etc. are used to analyze the characteristic changes of obstacles and determine whether they move. According to the motion detection results, if the characteristics of the obstacle change significantly between consecutive frames, it is determined to be a mobile obstacle.
[0079] It can be understood that by detecting moving obstacles, the ability to perceive the dynamic changes of obstacles in the environment is improved, path planning errors caused by misjudging static obstacles as moving obstacles are reduced, and the accuracy and efficiency of path planning are improved.
[0080] Step S02: if the obstacle is the moving obstacle, inputting the historical image data into a pre-trained trajectory prediction model to obtain a predicted trajectory of the obstacle;
[0081] In this embodiment, the process of pre-training the trajectory prediction model may be: obtaining historical image data of obstacles and pre-processing the historical image data; establishing a training data set based on the pre-processed historical image data; inputting the training data set into the initial prediction model constructed based on the attention mechanism and the target detection algorithm to obtain a prediction result; based on the loss function, adjusting the model parameters in the initial prediction model according to the prediction result to obtain the trajectory prediction model. In a specific embodiment, pre-processing the historical image data may be data amplification of the historical image data to expand the sample capacity; pre-processing may also be image data enhancement of the historical image data. A training data set is established based on the pre-processed historical image data to train the initial prediction model (hereinafter referred to as the initial prediction model for distinction) through the training data set. In a specific implementation, the target detection algorithm can be a YOLO (You Only Look Once: Unified, Real-Time Object Detection, which only requires one convolutional neural network operation) algorithm. Specifically, in this implementation, the YOLO5v algorithm can be used. Specifically, the network structure of the YOLO5v algorithm includes four parts: an input end, a backbone network, a neck, and an output end. An attention module is introduced after the first convolutional layer of the backbone network to form an initial prediction model based on the attention mechanism and the target detection algorithm. Based on the loss function, the model parameters in the initial prediction model are adjusted according to the prediction results to obtain a trajectory prediction model.
[0082] Step S03, comparing the unfinished working path with the predicted trajectory to obtain a trajectory comparison result, wherein the trajectory comparison result is used to characterize whether there is a trajectory overlap point between the unfinished working path and the predicted trajectory, and the unfinished working path is a working path that the cleaning robot has not run in the preset working path of the cleaning robot;
[0083] The preset work path refers to the path that the cleaning robot plans before performing the task based on the task requirements and environmental modeling data. The unfinished work path refers to the part of the preset work path that the cleaning robot has not yet walked during the task. The unfinished work path reflects the robot's work progress and the amount of remaining tasks.
[0084] In this embodiment, the unfinished working path portion is extracted from the preset working path of the cleaning robot, and the unfinished working path is compared with the predicted trajectory of the obstacle to determine whether there are overlapping trajectory points between the two, and the trajectory comparison result is output according to the comparison result. It should be noted that the determination of whether there are overlapping trajectory points can be to traverse each path point of the unfinished working path, detect whether there are trajectory points in each trajectory point of the predicted trajectory that overlap with the path point in time and space, and if so, the trajectory point that overlaps with the path point in time and space is used as the overlapping trajectory point.
[0085] The step S40, performing path planning based on the obstacle information of the obstacle and the current position to obtain the target working path, includes:
[0086] Step S401, performing path planning based on the trajectory comparison result, the obstacle information of the obstacle and the current position to obtain a target working path.
[0087] The trajectory comparison results, obstacle information and current position are integrated to form complete path planning input information; a path planning algorithm (such as A* algorithm, Dijkstra algorithm, genetic algorithm, etc.) is used to search for feasible paths under the constraints of the input information; the searched paths are evaluated and the optimal path is selected as the target working path. The target working path is output to the control system of the cleaning robot to guide it to perform operations.
[0088] In one feasible implementation, the step S401: performing path planning based on the trajectory comparison result, the obstacle information of the obstacle and the current position to obtain the target working path includes:
[0089] Step S4011: if the trajectory comparison result indicates that there is an overlapping point of the trajectory, determining a moving direction detection result of the obstacle, wherein the moving direction detection result is used to indicate whether the moving direction of the obstacle is a direction approaching the cleaning robot;
[0090] If the trajectory comparison result indicates that there are overlapping points in the trajectories, then the obstacle's moving direction is detected to see if it is close to the cleaning robot, and the moving direction detection result is obtained. Specifically, a variety of methods can be used to detect the moving direction. For example, a radar or lidar sensor can be used to measure the distance change between the obstacle and the cleaning robot in real time, and the obstacle's moving direction can be inferred from the distance change rate. In addition, the historical position data of the obstacle can be combined with a trajectory prediction algorithm to predict the future moving direction of the obstacle.
[0091] Step S4012: Perform path planning based on the moving direction detection result, the obstacle information and the current position to obtain a target working path.
[0092] It should be noted that if the moving direction of the obstacle is close to the cleaning robot. If so, it indicates that there is a potential collision risk and corresponding obstacle avoidance measures need to be taken; if not, it indicates that the moving direction of the obstacle does not conflict with the motion path of the cleaning robot, and the path planning can continue as originally planned. It is understandable that by comprehensively considering information such as the moving direction, position and shape of the obstacle, as well as factors such as the current position and target position of the cleaning robot, a safer and more efficient target working path can be generated, which improves the intelligence and automation level of path planning, can be dynamically adjusted and optimized according to actual conditions, and improves the operating efficiency and safety of the cleaning robot.
[0093] In one feasible implementation, the step S4012: performing path planning based on the moving direction detection result, the obstacle information and the current position to obtain a target working path includes:
[0094] Step S40121, if the moving direction detection result indicates that the moving direction of the obstacle is a direction close to the cleaning robot, determining a target deflection angle of the cleaning robot based on the obstacle information of the obstacle, and controlling the cleaning robot to deflect the target deflection angle;
[0095] According to the moving direction detection result, it is confirmed whether the moving direction of the obstacle is the direction close to the cleaning robot. If the moving direction of the obstacle is close to the cleaning robot, a suitable target deflection angle is calculated according to the position and speed of the obstacle and the current position and speed of the cleaning robot to ensure that the cleaning robot can avoid the obstacle. The calculated target deflection angle is sent to the control system of the cleaning robot to control the cleaning robot to deflect according to the angle. It can be understood that by deflecting the cleaning robot in time, direct collision with obstacles can be effectively avoided, thereby improving operation safety.
[0096] Step S40122, replanning the path according to the current position of the cleaning robot after deflection by the target deflection angle and the obstacle information of the obstacle to obtain the target working path.
[0097] After the cleaning robot completes the deflection, the current position information of the cleaning robot is updated, and the path planning is re-performed based on the updated position information of the cleaning robot and the obstacle information of the obstacle to obtain a new target working path. Through the path re-planning, it can be ensured that the cleaning robot can continue to work according to the optimal path after avoiding obstacles.
[0098] In one feasible implementation, the step S4012: performing path planning based on the moving direction detection result, the obstacle information and the current position to obtain a target working path includes:
[0099] Step S40123, if the moving direction detection result indicates that the moving direction of the obstacle is not a direction close to the cleaning robot, obtaining the moving speed of the obstacle;
[0100] If it is confirmed according to the moving direction detection result that the moving direction of the obstacle is not the direction approaching the cleaning robot, the moving speed information of the obstacle is obtained through sensors or other means to provide a basis for subsequent adjustment of the moving speed of the cleaning robot.
[0101] Step S40124, reducing the moving speed of the cleaning robot to a speed lower than the moving speed of the obstacle;
[0102] The moving speed of the obstacle is compared with the current moving speed of the cleaning robot. If the moving speed of the cleaning robot is greater than the moving speed of the obstacle, the moving speed of the cleaning robot is reduced until it is less than the moving speed of the obstacle. It can be understood that by reducing the moving speed of the cleaning robot, the collision between the cleaning robot and the obstacle can be avoided, the safety during the operation is improved, and the collision risk is reduced.
[0103] Step S40125, after the distance between the obstacle and the cleaning robot after the moving speed is reduced is greater than the preset obstacle avoidance distance, path planning is performed based on the moving speed of the cleaning robot after the moving speed is reduced and the current position after the moving speed is reduced to obtain the target working path.
[0104] The obstacle avoidance distance refers to the minimum safe distance that an object or individual maintains during movement in order to avoid obstacles. The distance between the obstacle and the cleaning robot is monitored in real time to determine whether it is greater than the preset obstacle avoidance distance; when the distance between the obstacle and the cleaning robot is greater than the preset obstacle avoidance distance, path planning is performed based on the reduced moving speed of the cleaning robot and the current position information to obtain a new target working path. It can be understood that by performing path planning after the distance between the obstacle and the cleaning robot is greater than the preset obstacle avoidance distance, it can ensure that the cleaning robot continues to operate under the premise of safety, improve the efficiency and accuracy of path planning, and enable the cleaning robot to cope with complex environments more intelligently.
[0105] In a feasible implementation manner, after the step S30: detecting whether the obstacle is a moving obstacle based on the historical image data, further includes:
[0106] Step S04: if the obstacle is not the moving obstacle, detecting whether the obstacle is a long-term obstacle;
[0107] Long-term obstacles refer to those obstacles whose positions remain basically unchanged or only change slightly over a short period of time (such as hours, days or even months). They usually include fixed buildings, furniture and other objects that are difficult to move. Compared with temporary obstacles, long-term obstacles have a more lasting and stable impact on the path planning of cleaning robots.
[0108] It should be noted that whether an obstacle is a long-term obstacle can be determined based on multiple factors, including but not limited to: whether the position of the obstacle remains unchanged at multiple consecutive time points or the degree of position change is less than a preset threshold. For example, by comparing the obstacle information in the historical image data, the obstacle exists in the same position for a long time; the physical characteristics of the obstacle are fixed buildings, furniture and other objects that are not easy to move.
[0109] It can be understood that by distinguishing between long-term obstacles and temporary obstacles, the system can plan the working path of the cleaning robot more accurately and avoid unnecessary detours and collisions.
[0110] Step S05, if the obstacle is a long-standing obstacle, the environmental modeling data is updated based on the environmental imaging data, path planning is performed based on the updated environmental modeling data to obtain an updated working path, the cleaning robot is controlled to operate according to the updated working path, and the updated environmental modeling data is used as the preset environmental modeling data.
[0111] If the obstacle is a long-standing obstacle, the location, shape and other information of the obstacle are extracted from the environmental imaging data, and the extracted data is merged with the existing environmental modeling data. The new environmental modeling data will be used for path planning. The process of path planning is not described here. It can be understood that by updating the environmental modeling data in real time and planning the optimal path, the cleaning robot can complete the task more efficiently, reduce unnecessary waiting and detour time, and the cleaning robot can perceive environmental changes in real time and update the environmental modeling data, thereby enhancing its adaptability to complex environments.
[0112] In this embodiment, by introducing a DTOF imaging system to obtain environmental imaging data of the external environment in real time, the environmental imaging data not only contains distance information, but may also include multi-dimensional features such as the shape and size of objects, so that the cleaning robot can understand the surrounding environment more comprehensively, and achieve high-precision imaging and multi-dimensional feature extraction of the external environment, thereby significantly improving the environmental perception ability of the cleaning robot, so that the cleaning robot can more accurately identify obstacles in the environment, and provide a basis for subsequent path planning. After identifying the obstacle, this embodiment dynamically plans and adjusts the working path of the cleaning robot in combination with the detailed information of the obstacle, so that the cleaning robot can adapt to the moving state of the obstacle, avoiding the re-planned working trajectory and the predicted moving trajectory from coinciding with the collision of the cleaning robot with the moving obstacle in the subsequent operation, and improving the safety of the cleaning robot's work.
[0113] For example, in order to help understand the implementation process of the cleaning robot obstacle avoidance method obtained by combining this embodiment with the above-mentioned embodiment 1, please refer to Figure 3 , Figure 3 A brief flowchart of a cleaning robot obstacle avoidance method is provided, specifically:
[0114] The DTOF imaging system is used to obtain environmental imaging data of the external environment in which the cleaning robot is located, and the actual environmental objects in the external environment are determined based on the environmental imaging data.
[0115] The current position of the cleaning robot is determined, and theoretical environmental objects are determined based on the current position and preset environmental modeling data.
[0116] If the actual environment objects are inconsistent with the theoretical environment objects, obstacles are determined from the actual environment objects and the theoretical environment objects, and obstacle information of the obstacles is determined based on the environment imaging data. The process of determining the obstacle information may be: determining the newly added objects and missing objects in the external environment based on the actual environment objects and the theoretical environment objects; determining the first area where the missing objects are located in the external environment based on the environment modeling data, and determining the second area where the newly added objects are located in the external environment based on the environment imaging data; determining that the area overlap between the first area and the second area is less than a preset overlap threshold, and then treating the newly added objects as obstacles.
[0117] Obtain historical image data of the obstacle in the external environment, and detect whether the obstacle is a moving obstacle based on the historical image data.
[0118] If the obstacle is a mobile obstacle, the historical image data is input into the trajectory prediction model to obtain the predicted trajectory of the obstacle; the unfinished working path and the predicted trajectory are compared to obtain the trajectory comparison result; if the trajectory comparison result indicates that there are trajectory overlapping points, the obstacle's moving direction detection result is determined; if the trajectory comparison result indicates that there are no trajectory overlapping points, path planning is performed based on the obstacle information and current position of the obstacle to obtain the target working path, and the cleaning robot is controlled to operate according to the target working path.
[0119] If the moving direction detection result indicates that the moving direction of the obstacle is a direction approaching the cleaning robot, the target deflection angle of the cleaning robot is determined based on the obstacle information of the obstacle, and the cleaning robot is controlled to deflect the target deflection angle; the path is replanned according to the current position of the cleaning robot after deflecting the target deflection angle and the obstacle information of the obstacle to obtain the target working path; if the moving direction detection result indicates that the moving direction of the obstacle is not a direction approaching the cleaning robot, the moving speed of the obstacle is obtained; the moving speed of the cleaning robot is reduced to be less than the moving speed of the obstacle; after the distance between the obstacle and the cleaning robot after the moving speed is reduced is greater than the preset obstacle avoidance distance, the path is planned based on the moving speed of the cleaning robot after the moving speed is reduced and the current position after the moving speed is reduced to obtain the target working path.
[0120] If the obstacle is not a mobile obstacle, detect whether the obstacle is a long-term obstacle; if the obstacle is a long-term obstacle, update the environmental modeling data based on the environmental imaging data, perform path planning based on the updated environmental modeling data to obtain an updated working path, control the cleaning robot to operate according to the updated working path, and use the updated environmental modeling data as the preset environmental modeling data; if it is not a long-term obstacle, perform path planning based on the obstacle information and current position of the obstacle to obtain the target working path, and control the cleaning robot to operate according to the target working path.
[0121] It should be noted that the above examples are only used to understand the present application and do not constitute a limitation on the obstacle avoidance method of the cleaning robot of the present application. More simple transformations based on this technical concept are all within the scope of protection of the present application.
[0122] This application also provides a cleaning robot obstacle avoidance device, please refer to Figure 4 The cleaning robot obstacle avoidance device is applied to a cleaning robot, a DTOF imaging system is arranged on the cleaning robot, and the cleaning robot obstacle avoidance device comprises:
[0123] An acquisition module 10 is used to acquire environmental imaging data of the external environment in which the cleaning robot is located through the DTOF imaging system, and determine actual environmental objects in the external environment based on the environmental imaging data;
[0124] A determination module 20, for determining a current position of the cleaning robot, and determining a theoretical environmental object based on the current position and preset environmental modeling data;
[0125] The determination module 20 is further configured to determine an obstacle from the actual environment object and the theoretical environment object if the actual environment object and the theoretical environment object are inconsistent, and determine obstacle information of the obstacle based on the environment imaging data;
[0126] The planning module 30 is used to perform path planning based on the obstacle information of the obstacle and the current position to obtain a target working path, and control the cleaning robot to operate according to the target working path.
[0127] Optionally, the device further comprises a comparison module, for:
[0128] Acquire historical image data of the obstacle in the external environment, and detect whether the obstacle is a moving obstacle based on the historical image data;
[0129] If the obstacle is the moving obstacle, inputting the historical image data into a pre-trained trajectory prediction model to obtain a predicted trajectory of the obstacle;
[0130] Comparing the unfinished working path with the predicted trajectory to obtain a trajectory comparison result, wherein the trajectory comparison result is used to characterize whether there is a trajectory overlap point between the unfinished working path and the predicted trajectory, and the unfinished working path is a working path that the cleaning robot has not run in the preset working path of the cleaning robot;
[0131] The planning module 30 is also used for:
[0132] Path planning is performed based on the trajectory comparison result, the obstacle information of the obstacle and the current position to obtain a target working path.
[0133] Optionally, the planning module 30 is further configured to:
[0134] If the trajectory comparison result indicates that there is an overlapping point of the trajectory, determining a moving direction detection result of the obstacle, wherein the moving direction detection result is used to indicate whether the moving direction of the obstacle is a direction approaching the cleaning robot;
[0135] Path planning is performed based on the moving direction detection result, the obstacle information and the current position to obtain a target working path.
[0136] Optionally, the planning module 30 is further configured to:
[0137] If the moving direction detection result indicates that the moving direction of the obstacle is a direction close to the cleaning robot, determining a target deflection angle of the cleaning robot based on the obstacle information of the obstacle, and controlling the cleaning robot to deflect the target deflection angle;
[0138] The target working path is obtained by replanning the path according to the current position of the cleaning robot after deflection by the target deflection angle and the obstacle information of the obstacle.
[0139] Optionally, the planning module 30 is further configured to:
[0140] If the moving direction detection result indicates that the moving direction of the obstacle is not a direction approaching the cleaning robot, obtaining a moving speed of the obstacle;
[0141] Reducing the moving speed of the cleaning robot to a speed lower than the moving speed of the obstacle;
[0142] After the distance between the obstacle and the cleaning robot after the moving speed is reduced is greater than the preset obstacle avoidance distance, path planning is performed based on the moving speed of the cleaning robot after the moving speed is reduced and the current position after the moving speed is reduced to obtain the target working path.
[0143] Optionally, the device further includes an updating module, configured to:
[0144] If the obstacle is not the mobile obstacle, detecting whether the obstacle is a long-term obstacle;
[0145] If the obstacle is a long-standing obstacle, the environmental modeling data is updated based on the environmental imaging data, path planning is performed based on the updated environmental modeling data to obtain an updated working path, the cleaning robot is controlled to operate according to the updated working path, and the updated environmental modeling data is used as the preset environmental modeling data.
[0146] Optionally, the determining module 20 is further configured to:
[0147] Determine new objects and missing objects in the external environment based on the actual environment objects and the theoretical environment objects;
[0148] Determine a first area where the missing object is located in the external environment based on the environmental modeling data, and determine a second area where the newly added object is located in the external environment based on the environmental imaging data;
[0149] If it is determined that the area overlap between the first area and the second area is less than a preset overlap threshold, the newly added object is regarded as an obstacle.
[0150] The cleaning robot obstacle avoidance device provided by the present application adopts the cleaning robot obstacle avoidance method in the above embodiment, which can solve the technical problem that obstacles cause low safety of the cleaning robot. Compared with the prior art, the beneficial effects of the cleaning robot obstacle avoidance device provided by the present application are the same as the beneficial effects of the cleaning robot obstacle avoidance method provided by the above embodiment, and the other technical features of the cleaning robot obstacle avoidance device are the same as the features disclosed in the above embodiment method, which will not be repeated here.
[0151] The present application provides a cleaning robot, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the cleaning robot obstacle avoidance method in the above-mentioned embodiment one.
[0152] Reference below Figure 5 , which shows a schematic diagram of the structure of a cleaning robot suitable for implementing an embodiment of the present application. The cleaning robot in the embodiment of the present application may include but is not limited to mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 5 The cleaning robot shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0153] like Figure 5As shown, the cleaning robot may include a processing device 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM: Read Only Memory) 1002 or a program loaded from a storage device 1003 to a random access memory (RAM: Random Access Memory) 1004. In RAM1004, various programs and data required for the operation of the cleaning robot are also stored. The processing device 1001, ROM1002, and RAM1004 are connected to each other via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: an input device 1007 including, for example, a touch screen, a touch pad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; an output device 1008 including, for example, a liquid crystal display (LCD: Liquid Crystal Display), a speaker, a vibrator, etc.; a storage device 1003 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. Communication device 1009 can allow the cleaning robot to communicate wirelessly or wired with other equipment to exchange data. Although the cleaning robot with various systems is shown in the figure, it should be understood that it is not required to implement or have all the systems shown. More or fewer systems can be implemented or have alternatively.
[0154] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.
[0155] The cleaning robot provided by the present application adopts the cleaning robot obstacle avoidance method in the above embodiment, which can solve the technical problem that obstacles cause low safety of the cleaning robot. Compared with the prior art, the beneficial effects of the cleaning robot provided by the present application are the same as the beneficial effects of the cleaning robot obstacle avoidance method provided by the above embodiment, and the other technical features of the cleaning robot are the same as the features disclosed in the method of the previous embodiment, which will not be repeated here.
[0156] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.
[0157] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
[0158] The present application provides a computer-readable storage medium having computer-readable program instructions (ie, computer programs) stored thereon, and the computer-readable program instructions are used to execute the cleaning robot obstacle avoidance method in the above-mentioned embodiment.
[0159] The computer-readable storage medium provided in the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM: Random Access Memory), a read-only memory (ROM: Read Only Memory), an erasable programmable read-only memory (EPROM: Erasable Programmable Read Only Memory or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM: CD-Read Only Memory), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency: Radio Frequency), etc., or any suitable combination of the above.
[0160] The computer-readable storage medium may be included in the cleaning robot; or may exist independently without being assembled into the cleaning robot.
[0161] The computer-readable storage medium carries one or more programs. When the one or more programs are executed by the cleaning robot, the cleaning robot implements the specific implementation of the above embodiments.
[0162] Computer program code for performing the operations of the present application may be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0163] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0164] The modules involved in the embodiments described in this application may be implemented by software or hardware, wherein the name of the module does not constitute a limitation on the unit itself in some cases.
[0165] The readable storage medium provided by the present application is a computer-readable storage medium, which stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned cleaning robot obstacle avoidance method, and can solve the technical problem that obstacles cause low safety of the cleaning robot. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided by the present application are the same as the beneficial effects of the cleaning robot obstacle avoidance method provided by the above-mentioned embodiment, and will not be repeated here.
[0166] The present application also provides a computer program product, including a computer program, which, when executed by a processor, implements the steps of the cleaning robot obstacle avoidance method as described above.
[0167] The computer program product provided by the present application can solve the technical problem that obstacles cause low safety of cleaning robots. Compared with the prior art, the beneficial effects of the computer program product provided by the present application are the same as the beneficial effects of the cleaning robot obstacle avoidance method provided by the above embodiment, which will not be repeated here.
[0168] The above descriptions are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect applications in other related technical fields are included in the patent protection scope of the present application.
Claims
1. A cleaning robot obstacle avoidance method, characterized in that: The cleaning robot obstacle avoidance method is applied to a cleaning robot, on which a DTOF imaging system is provided. The cleaning robot obstacle avoidance method comprises: Acquire environmental imaging data of the external environment in which the cleaning robot is located through the DTOF imaging system, and determine actual environmental objects in the external environment based on the environmental imaging data; Determine the current position of the cleaning robot, and determine theoretical environmental objects based on the current position and preset environmental modeling data; If the actual environment object and the theoretical environment object are inconsistent, determining an obstacle from the actual environment object and the theoretical environment object, and determining obstacle information of the obstacle based on the environment imaging data; Based on the obstacle information of the obstacle and the current position, path planning is performed to obtain a target working path, and the cleaning robot is controlled to operate according to the target working path.
2. The cleaning robot obstacle avoidance method according to claim 1, characterized in that: Before the step of performing path planning based on the obstacle information of the obstacle and the current position to obtain the target working path, the method further includes: Acquire historical image data of the obstacle in the external environment, and detect whether the obstacle is a moving obstacle based on the historical image data; If the obstacle is the moving obstacle, inputting the historical image data into a pre-trained trajectory prediction model to obtain a predicted trajectory of the obstacle; Comparing the unfinished working path with the predicted trajectory to obtain a trajectory comparison result, wherein the trajectory comparison result is used to characterize whether there is a trajectory overlap point between the unfinished working path and the predicted trajectory, and the unfinished working path is a working path that the cleaning robot has not run in the preset working path of the cleaning robot; The step of performing path planning based on the obstacle information of the obstacle and the current position to obtain a target working path includes: Path planning is performed based on the trajectory comparison result, the obstacle information of the obstacle and the current position to obtain a target working path.
3. The cleaning robot obstacle avoidance method according to claim 2, characterized in that: The step of performing path planning based on the trajectory comparison result, the obstacle information of the obstacle and the current position to obtain the target working path includes: If the trajectory comparison result indicates that there is an overlapping point of the trajectory, determining a moving direction detection result of the obstacle, wherein the moving direction detection result is used to indicate whether the moving direction of the obstacle is a direction approaching the cleaning robot; Path planning is performed based on the moving direction detection result, the obstacle information and the current position to obtain a target working path.
4. The cleaning robot obstacle avoidance method according to claim 3, characterized in that: The step of performing path planning based on the moving direction detection result, the obstacle information and the current position to obtain a target working path includes: If the moving direction detection result indicates that the moving direction of the obstacle is a direction close to the cleaning robot, determining a target deflection angle of the cleaning robot based on the obstacle information of the obstacle, and controlling the cleaning robot to deflect the target deflection angle; The target working path is obtained by replanning the path according to the current position of the cleaning robot after deflection by the target deflection angle and the obstacle information of the obstacle.
5. The cleaning robot obstacle avoidance method according to claim 3, characterized in that: The step of performing path planning based on the moving direction detection result, the obstacle information and the current position to obtain a target working path includes: If the moving direction detection result indicates that the moving direction of the obstacle is not a direction approaching the cleaning robot, obtaining a moving speed of the obstacle; Reducing the moving speed of the cleaning robot to a speed lower than the moving speed of the obstacle; After the distance between the obstacle and the cleaning robot after the moving speed is reduced is greater than the preset obstacle avoidance distance, path planning is performed based on the moving speed of the cleaning robot after the moving speed is reduced and the current position after the moving speed is reduced to obtain the target working path.
6. The cleaning robot obstacle avoidance method according to claim 2, characterized in that: After the step of detecting whether the obstacle is a moving obstacle based on the oral history image data, the method further includes: If the obstacle is not the mobile obstacle, detecting whether the obstacle is a long-term obstacle; If the obstacle is a long-standing obstacle, the environmental modeling data is updated based on the environmental imaging data, path planning is performed based on the updated environmental modeling data to obtain an updated working path, the cleaning robot is controlled to operate according to the updated working path, and the updated environmental modeling data is used as the preset environmental modeling data.
7. The cleaning robot obstacle avoidance method according to any one of claims 1 to 6, characterized in that: The step of determining obstacles from the actual environment objects and the theoretical environment objects comprises: Determine new objects and missing objects in the external environment based on the actual environment objects and the theoretical environment objects; Determine a first area where the missing object is located in the external environment based on the environmental modeling data, and determine a second area where the newly added object is located in the external environment based on the environmental imaging data; If it is determined that the area overlap between the first area and the second area is less than a preset overlap threshold, the newly added object is regarded as an obstacle.
8. A cleaning robot, characterized in that: The cleaning robot comprises: a memory, a processor, and a cleaning robot obstacle avoidance program stored in the memory and executable on the processor, wherein the cleaning robot obstacle avoidance program is configured to implement the steps of the cleaning robot obstacle avoidance method according to any one of claims 1 to 7.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a cleaning robot obstacle avoidance program, and when the cleaning robot obstacle avoidance program is executed by the processor, the steps of the cleaning robot obstacle avoidance method according to any one of claims 1 to 7 are implemented.
10. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the steps of the cleaning robot obstacle avoidance method according to any one of claims 1 to 7 are implemented.