Control method and device of mobile robot, electronic equipment and medium

By entering the obstacle-by-breaking mode after the mobile robot detects the obstacle, selecting the optimal breakthrough point to bypass the obstacle, combining lidar and ultrasonic data to adjust the direction, the problem of high computational complexity in complex environments in the existing technology is solved, and the robot's autonomous navigation and environmental adaptability are improved.

CN120386340APending Publication Date: 2025-07-29GUANG ZHOU XING CHENG ZHI NENG KE JI YOU XIAN GONG SI
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510243780.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-03
Publication Date
2025-07-29

AI Technical Summary

Technical Problem

The existing route planning algorithm has high computational complexity in complex environments, especially for Ackerman structural robots. When facing complex environments, especially in scenarios of escape, the processing process is more complex, and the calculation difficulty is significantly increased, which limits its application and operation efficiency.

Method used

By receiving the job task, generating a planned route, detecting the obstacle and entering the obstacle circumvention mode, determining the width of the breakthrough port between the end points of the obstacle, adding end points larger than the preset width to the alternative array, selecting the optimal breakthrough port based on the distance to bypass the obstacle, and adjusting the reverse direction with lidar and ultrasonic data.

Benefits of technology

It improves the autonomous navigation capabilities and adaptability to complex environments, enhances its robustness, and achieves efficient barrier-blocking in crowded or dynamic environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120386340A_ABST
    Figure CN120386340A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a control method and device for a mobile robot, electronic equipment and a medium, and the method comprises the steps: controlling the mobile robot to enter an obstacle avoidance mode when an obstacle is detected in a process of controlling the mobile robot to move according to a planned route; in the obstacle avoidance mode, the width of a breakthrough opening between the end points of different obstacles is determined; adding the endpoints corresponding to the breakthrough ports larger than the preset width into an alternative endpoint array; for each endpoint in the alternative endpoint array, determining a first distance from the mobile robot to the endpoint, and determining a second distance from the endpoint to a preview point on the planned route; and according to the first distance and the second distance, selecting a target endpoint from the alternative endpoint array, taking a breakthrough opening corresponding to the target endpoint as an optimal breakthrough opening, and controlling the mobile robot to bypass the obstacle through the optimal breakthrough opening, thereby realizing intelligent obstacle avoidance when the mobile robot encounters the obstacle when executing the operation task. And the adaptability and robustness of the method to a complex environment are enhanced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of mobile robots, and in particular to a control method, device, electronic equipment and medium for a mobile robot. Background Art

[0002] In the field of mobile robotics, route planning is one of the key technologies to ensure that robots can autonomously navigate in complex environments and complete tasks efficiently.

[0003] In the prior art, route planning algorithms, such as graph search-based algorithms and sampling-based algorithms, are generally used to find the optimal route.

[0004] However, the route planning algorithm requires a lot of computing power and resources during the calculation process, occupying a large amount of system resources; and for specific mobile robots, such as Ackerman structure robots, when facing complex environments, especially escape scenarios (such as obstacle avoidance), the processing process is more complicated and the calculation difficulty increases significantly, which limits the application and operation efficiency of Ackerman structure robots in complex environments. Summary of the Invention

[0005] In view of the above problems, a control method, device, electronic device and medium for a mobile robot are proposed to overcome the above problems or at least partially solve the above problems, including:

[0006] A method for controlling a mobile robot, the method comprising:

[0007] Receive a task and generate a planned route based on the task;

[0008] In the process of controlling the mobile robot to move along the planned route, when an obstacle is detected on the planned route, controlling the mobile robot to enter an obstacle avoidance mode;

[0009] In obstacle avoidance mode, determine the width of the gap between the endpoints of different obstacles;

[0010] When the width of the breakthrough is greater than a preset width matching the mobile robot, the endpoint corresponding to the breakthrough that is greater than the preset width is added to the candidate endpoint array;

[0011] For each endpoint in the candidate endpoint array, determining a first distance from the mobile robot to the endpoint, and determining a second distance from the endpoint to a preview point on the planned route;

[0012] According to the first distance and the second distance, a target endpoint is selected from the array of candidate endpoints, a breakthrough point corresponding to the target endpoint is used as an optimal breakthrough point, and the mobile robot is controlled to bypass the obstacle through the optimal breakthrough point.

[0013] Optionally, determining the width of the breakthrough between the endpoints of different obstacles includes:

[0014] Determining the angular difference between the endpoints of different obstacles in polar coordinates and determining the polar radius of the endpoints;

[0015] Combining the angular difference and the polar radius to determine the width of the breakthrough between the endpoints of different obstacles.

[0016] Optionally, it further includes:

[0017] In the case where the optimal breakthrough is not found, controlling the mobile robot to move towards the preview point on the planned route, and when detecting that the distance between the obstacle and the mobile robot is less than a preset distance, controlling the mobile robot to enter the stop mode;

[0018] In the stop mode, waiting for a preset duration, and after waiting for the preset duration, detecting whether the obstacle has left. If it is detected that the obstacle has left, entering the normal movement mode.

[0019] Optionally, it further includes:

[0020] If it is detected that the obstacle has not left, controlling the mobile robot to enter the reverse mode;

[0021] In the reverse mode, determining the target reverse direction, and after controlling the mobile robot to reverse according to the target reverse direction, reversing the angle of the steering wheel to move.

[0022] Optionally, determining the target reverse direction includes:

[0023] Obtaining lidar data and ultrasonic data;

[0024] Determining the target reverse direction according to the lidar data and the ultrasonic data.

[0025] Optionally, the determining the target reverse direction according to the lidar data and the ultrasonic data includes:

[0026] According to the lidar data, determining the number of obstacle point clouds in multiple candidate reverse directions, and according to the ultrasonic data, determining the distances of the obstacles in the multiple candidate reverse directions;

[0027] For each candidate reverse direction, using the obstacle distance to update the number of obstacle point clouds, and determining the target reverse direction according to the updated number of obstacle point clouds.

[0028] Optionally, the using the obstacle distance to update the number of obstacle point clouds includes:

[0029] Determine a weight according to the obstacle distance; the weight is negatively correlated with the obstacle distance;

[0030] Use the weight to weight the number of obstacle point clouds to obtain an updated number of obstacle point clouds.

[0031] A control device for a mobile robot, the device is used for:

[0032] Receive an operation task, and generate a planned route according to the operation task;

[0033] During the process of controlling the mobile robot to move along the planned route, when an obstacle is detected on the planned route, control the mobile robot to enter an obstacle avoidance mode;

[0034] In the obstacle avoidance mode, determine the width of the breakthrough between the endpoints of different obstacles;

[0035] When the width of the breakthrough is greater than a preset width matching the mobile robot, add the endpoints corresponding to the breakthroughs greater than the preset width to an alternative endpoint array;

[0036] For each endpoint in the alternative endpoint array, determine a first distance from the mobile robot to the endpoint, and determine a second distance from the endpoint to a preview point on the planned route;

[0037] According to the first distance and the second distance, select a target endpoint from the alternative endpoint array, use the breakthrough corresponding to the target endpoint as the optimal breakthrough, and control the mobile robot to bypass the obstacle via the optimal breakthrough.

[0038] An electronic device, including a processor, a memory, and a computer program stored on the memory and capable of running on the processor, where when the computer program is executed by the processor, the method described above is implemented.

[0039] A computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the method described above is implemented.

[0040] The embodiments of the present invention have the following advantages:

[0041] In some embodiments of the present invention, a job task is received, and a planned route is generated according to the job task; during the process of controlling the mobile robot to move along the planned route, when an obstacle is detected on the planned route, the mobile robot is controlled to enter an obstacle avoidance mode; in the obstacle avoidance mode, the width of the breakthrough between the end points of different obstacles is determined; when the width of the breakthrough is greater than a preset width matching the mobile robot, the end points corresponding to the breakthroughs greater than the preset width are added to an alternative end point array; for each end point in the alternative end point array, the first distance from the mobile robot to the end point is determined, and the second distance from the end point to a preview point on the planned route is determined; according to the first distance and the second distance, a target end point is selected from the alternative end point array, the breakthrough corresponding to the target end point is used as the optimal breakthrough, and the mobile robot is controlled to bypass the obstacle via the optimal breakthrough, realizing intelligent obstacle avoidance of the mobile robot when encountering an obstacle during the execution of a job task, which not only improves the autonomous navigation ability of the robot, but also enhances its adaptability and robustness to complex environments. BRIEF DESCRIPTION OF THE DRAWINGS

[0042] In order to more clearly illustrate the technical solutions of the present invention, the drawings required for the description of the present invention will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0043] Figure 1 is a flowchart of the steps of a control method for a mobile robot provided by some embodiments of the present invention;

[0044] Figure 2 is a schematic diagram of a control method for a mobile robot provided by some embodiments of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0045] To make the above objects, features, and advantages of the present invention more obvious and understandable, the present invention will be further described in detail below with reference to the drawings and specific embodiments. Obviously, the described embodiments are some, but not all, of the embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts fall within the scope of the present invention.

[0046] In related technologies, route planning algorithms are mainly divided into two categories: graph search-based algorithms and sampling-based algorithms.

[0047] Graph search-based algorithms, such as Dijkstra's and A*, build graph structures and utilize graph search techniques to find optimal routes. These algorithms have a clear theoretical mathematical foundation and have demonstrated good performance in many practical applications. However, they are complex, particularly when dealing with small-scale scenarios. Due to the large number of nodes and edges they must process, they often exhibit low operational efficiency, limiting their application in scenarios requiring fast response and high efficiency.

[0048] Another sampling-based algorithm, such as the dynamic window algorithm (DWA) and the Lattice Planner, generates a series of candidate routes through random sampling and selects the optimal route from them. These algorithms have advantages in dealing with uncertainty and dynamic environments, but they also have the problem of high computational complexity; especially in dynamic environments that require frequent re-routing, their operating efficiency will be seriously affected.

[0049] In addition, there are relatively few route planning algorithms for dynamic obstacles. Existing algorithms, such as the Timed Elastic Band Local Planner (TEB Local Planner), can solve route planning problems through numerical optimization and adapt to changes in dynamic environments to a certain extent. However, their calculation process still requires a large amount of computing power and resources. As a result, in resource-constrained systems, algorithms such as the TEB Local Planner may occupy a large amount of system resources, affecting the overall performance and stability of the system.

[0050] Specific mobile robots, such as Ackerman robots, face even more severe challenges in route planning. Compared to omnidirectional robots, Ackerman robots have a natural disadvantage in steering capabilities, making them more complex and challenging to navigate in complex environments, especially in escape scenarios that require frequent steering and obstacle avoidance. When dealing with sudden, dynamic obstacles, Ackerman robots require not only a higher level of intelligence to make quick and accurate decisions, but also more sophisticated control algorithms to ensure they can smoothly and safely avoid obstacles and continue their mission.

[0051] The present invention will be further described below with reference to the accompanying drawings:

[0052] Reference Figure 1 , shows a flowchart of a control method for a mobile robot provided by some embodiments of the present invention, which may specifically include the following steps:

[0053] Step 101: Receive a work task and generate a planned route based on the work task.

[0054] As some examples, the operation tasks can be handling tasks, patrolling tasks, cleaning tasks, etc.; different requirements can be put forward for the route planning and control algorithms of the mobile robot according to the actual needs and different environments, and different operation tasks can be generated.

[0055] After receiving the operation task, the operation task can be parsed and pre-processed; for example, key information such as the type, target location, and path constraints of the operation task can be extracted and analyzed to clarify the specific actions and path requirements that the mobile robot needs to execute. The planned route can also be generated in combination with the operation task and the current environmental information, such as the distribution of obstacles and road conditions, and optimized and adjusted to ensure that the mobile robot can efficiently complete the operation task according to the planned route.

[0056] Step 102, during the process of controlling the mobile robot to move along the planned route, when an obstacle is detected on the planned route, control the mobile robot to enter the obstacle avoidance mode.

[0057] As some examples, the mobile robot can be a robot with an Ackerman steering structure; the mobile robot can detect obstacles through a variety of sensor technologies, such as lidar, infrared sensors, ultrasonic sensors, etc. These sensors can monitor the surrounding environment in real time and send signals to the control system when an obstacle is detected to control the mobile robot to enter the obstacle avoidance mode; among them, the obstacles can be static or dynamic objects, such as parked vehicles, pedestrians, construction facilities, etc.

[0058] In some examples, the obstacle avoidance mode can be an operation or calculation mode designed to find a path that enables the mobile robot to avoid obstacles and safely reach the target point from the starting point; in the obstacle avoidance mode, the mobile robot can perceive the surrounding environment in real time, such as obtaining information about the position, shape, and size of the obstacles through sensors.

[0059] Step 103, in the obstacle avoidance mode, determine the width of the breakthrough between the end points of different obstacles.

[0060] As some examples, the position of the obstacle can be judged based on the obtained lidar data to determine the width of the breakthrough between the end points of different obstacles; among them, the breakthrough can be the space that the mobile robot can pass through; the width of the breakthrough can be calculated by comparing the position information between the obstacles. If the width of the breakthrough is greater than or equal to the minimum passing width of the mobile robot, the control system can plan a path to bypass the obstacle so that the mobile robot can pass safely; otherwise, if the width of the breakthrough is less than the minimum passing width of the mobile robot, the control system can further adjust the position of the mobile robot or re-plan the path to avoid collision with the obstacle.

[0061] In some embodiments of the present invention, determining the width of the breakthrough between the endpoints of different obstacles includes: determining the angular difference between the endpoints of different obstacles in polar coordinates and determining the polar radius of the endpoints; combining the angular difference and the polar radius to determine the width of the breakthrough between the endpoints of different obstacles.

[0062] As some examples, a polar coordinate system can be established, and polar coordinate points relative to the coordinate system of the mobile robot (taking the mobile robot as the origin) can be generated. The endpoints of the obstacles are projected into this polar coordinate system in combination with the lidar data, so as to obtain the polar angles and polar radii of the endpoints. By comparing these polar angles and polar radii, the relative positional relationship between the obstacles can be judged more accurately.

[0063] For example, the angular difference between adjacent obstacle endpoints can be calculated, and this angular difference can reflect their relative positional relationship. Combining the polar radius information of each endpoint to the polar coordinate point, the distance relationship between the mobile robot and the obstacle endpoints can be determined. Based on these angular differences and polar radii, the width of the breakthrough between different obstacle endpoints can be estimated.

[0064] In practical applications, when the polar angles of the endpoints of two obstacles in the polar coordinate system differ greatly and the polar radii are similar, it means that a relatively narrow channel is formed between these two obstacles. On the contrary, if the angular difference is small or the polar radius difference is significant, it means that the channel between the obstacles is relatively wide or there is a large height difference.

[0065] In some examples, in polar coordinates, the angular difference can be multiplied by the smaller polar radius to obtain the arc length as an approximation of the width of the breakthrough.

[0066] Step 104, when the width of the breakthrough is greater than the preset width matching the mobile robot, add the endpoints corresponding to the breakthrough greater than the preset width to the alternative endpoint array.

[0067] As some examples, a value can be preset in advance according to the physical size (such as width) of the mobile robot and the minimum space required for its safe passage as the preset width. If the width of the breakthrough is less than this preset width, it means that the mobile robot may not be able to pass, or there is a safety risk even if it can pass.

[0068] In some examples, when the mobile robot encounters an obstacle, it can determine the width of the breakthrough between the endpoints of different obstacles. If the width of this breakthrough is greater than the preset width matching the mobile robot, it means that the mobile robot has enough space to pass through this breakthrough safely. In this case, the two endpoints corresponding to this breakthrough can be added to the alternative endpoint array to determine the optimal breakthrough from the alternative endpoint array.

[0069] Step 105: For each endpoint in the alternative endpoint array, determine the first distance from the mobile robot to the endpoint, and determine the second distance from the endpoint to the preview point on the planned route.

[0070] As some examples, the first distance can represent the straight-line distance or path distance from the current position of the mobile robot to the alternative endpoint, which is used to evaluate the difficulty or time required for the mobile robot to reach the alternative endpoint; the second distance can represent the distance from the alternative endpoint to the preview point on the planned route. The preview point can be an expected passing point on the planned route, which is used to evaluate the degree of proximity or deviation from the alternative endpoint to the planned route. By combining the first distance and the second distance, the optimal alternative endpoints that are both easy to reach and close to the planned route can be further screened out, thereby guiding the mobile robot to make a more reasonable path selection.

[0071] Step 106: According to the first distance and the second distance, select a target endpoint from the alternative endpoint array, use the breakthrough point corresponding to the target endpoint as the optimal breakthrough point, and control the mobile robot to bypass the obstacle via the optimal breakthrough point.

[0072] As some examples, a distance threshold or distance combination condition can be preset in advance. When the first distance and the second distance of a certain alternative endpoint meet the distance threshold or distance combination condition, the alternative endpoint can be determined as the target endpoint; and use the breakthrough point corresponding to the target endpoint as the optimal breakthrough point, control the mobile robot to adjust its traveling direction, and move forward towards the optimal breakthrough point until it successfully bypasses the obstacle and realigns with the planned route.

[0073] In some examples, the selection of the target endpoint can be determined using the heuristic distance formula:

[0074] h = o + f

[0075] Where O represents the first distance from the mobile robot itself to the endpoint, and f represents the second distance from the endpoint to the preview point on the planned route. By selecting the endpoint with the minimum heuristic distance h as the target endpoint and determining the breakthrough point corresponding to the target endpoint as the optimal breakthrough point, the mobile robot is controlled to bypass the obstacle via the optimal breakthrough point.

[0076] In some embodiments of the present invention, it further includes: when the optimal breakthrough point is not found, controlling the mobile robot to move towards the preview point on the planned route, and when the distance between the detected obstacle and the mobile robot is less than the preset distance, controlling the mobile robot to enter the stop mode; in the stop mode, wait for a preset duration, and after waiting for the preset duration, detect whether the obstacle has left. If it is detected that the obstacle has left, enter the normal moving mode.

[0077] In practical applications, if the optimal breakthrough point is not found, the mobile robot can give up selecting the target endpoint from the array of alternative endpoints and continue to move towards the preview point on the planned route, while choosing a suitable low speed to ensure safety.

[0078] As some examples, when no suitable breakthrough is found, it means that the surrounding environment is relatively crowded or extremely empty (for example, there is only one obstacle in front). Continuing to move towards the preview point on the planned route may cause a collision. At this time, the preset distance can be a preset safety distance. The preset safety distance can be set in advance based on factors such as the size, speed and surrounding environment of the robot to avoid collision with obstacles. During the movement, the mobile robot will continuously monitor the distance between it and the surrounding obstacles. If the robot detects that the distance between it and an obstacle is less than a preset safety distance, then in order to avoid collision, the mobile robot will enter stop mode. In stop mode, the robot will stop all forward movements and remain stationary.

[0079] After entering the stop mode, the mobile robot can wait for a preset time (such as 3 seconds). This waiting time allows the dynamic environment around the robot to change, such as the obstacle may be removed or moved; after the waiting period, the mobile robot will use its sensor technology again to detect whether the previously detected obstacle is still there; if after the waiting time, the mobile robot detects that the obstacle has left (that is, the distance between the obstacle and the mobile robot exceeds the preset safety distance), then the mobile robot will exit the stop mode and enter the normal movement mode, continuing to move along the preview point on the planned route.

[0080] In some embodiments of the present invention, it also includes: if it is detected that the obstacle has not left, controlling the mobile robot to enter the reversing mode; in the reversing mode, determining the target reversing direction, and after controlling the mobile robot to reverse according to the target reversing direction, reversing the angle of the steering wheel to move.

[0081] In actual applications, the mobile robot can wait for a preset period of time and then detect whether the obstacle has left. If it detects that the obstacle has not left, it is considered necessary to actively bypass the obstacle. The mobile robot can be controlled to enter reverse mode to ensure that the robot can safely bypass the obstacle.

[0082] As some examples, a target reversing direction may be one with more obstacles. The mobile robot may turn the steering wheel toward the target reversing direction and reverse backwards. After the reversing is completed, the angle of the steering wheel may be reversed to continue moving forward.

[0083] In some examples, during reverse driving, the mobile robot can continuously monitor the distance to obstacles. Once the distance reaches a safe range, the mobile robot can also stop reverse driving and re-evaluate the forward route. In addition, to avoid creating new collision risks during reverse driving, the mobile robot will also adjust the reverse speed and direction in real time according to the surrounding environment; if new obstacles or complex environments are encountered during reverse driving, the mobile robot will intelligently choose to continue reverse driving, stop and wait, or adopt other obstacle avoidance strategies to ensure the safe and efficient completion of the task.

[0084] In some embodiments of the present invention, determining the target reverse direction includes: obtaining lidar data and ultrasonic data; and determining the target reverse direction according to the lidar data and the ultrasonic data.

[0085] In some embodiments of the present invention, the determining the target reverse direction according to the lidar data and the ultrasonic data includes: determining the number of obstacle point clouds in multiple candidate reverse directions according to the lidar data, and determining the obstacle distances in the multiple candidate reverse directions according to the ultrasonic data; for each candidate reverse direction, updating the number of obstacle point clouds by using the obstacle distance, and determining the target reverse direction according to the updated number of obstacle point clouds.

[0086] As some examples, the lidar can emit laser beams and receive the signals reflected back, so as to sense the three-dimensional information of the surrounding environment; during reverse driving, the mobile robot can use the lidar to scan the surrounding environment and convert the obstacles in the scanned lidar data into point cloud data.

[0087] Among them, multiple candidate reverse directions can be directions evenly distributed at a preset angular interval with the mobile robot as the center. For example, the 360-degree circumference can be equally divided into several candidate reverse directions, such as 8, 16, or 32, etc., and the specific number can be set according to actual needs. In each candidate reverse direction, the lidar can scan the obstacles in that direction and convert them into point cloud data; in the point cloud data, the number of obstacle point clouds can reflect the density of obstacles in the candidate reverse direction.

[0088] As some examples, the ultrasonic sensor can emit ultrasonic signals and receive the signals reflected back, so as to measure the distance between the mobile robot and the obstacle. During reverse driving, the mobile robot can use the ultrasonic sensor to monitor the surrounding environment and obtain obstacle distance information. For each candidate reverse direction, the mobile robot can further update and optimize the number of obstacle point clouds obtained based on the lidar data according to the obstacle distance measured by the ultrasonic sensor.

[0089] For example, if the distance to an obstacle in a certain candidate reverse direction is relatively close, then even if the number of obstacle point clouds in that direction is small, it may still indicate a high collision risk in that direction. Therefore, it needs to be considered when determining the target reverse direction. By combining lidar data and ultrasonic data, the mobile robot can more accurately perceive the surrounding environment and thus select a safer target reverse direction.

[0090] In some embodiments of the present invention, the updating of the number of obstacle point clouds using the obstacle distance includes: determining a weight according to the obstacle distance; the weight is negatively correlated with the obstacle distance; using the weight to weight the number of obstacle point clouds to obtain the updated number of obstacle point clouds.

[0091] In some examples, when the obstacle distance is relatively close, a larger weight can be assigned to the number of obstacle point clouds in that direction, indicating that the obstacle in that direction has a greater impact on the reverse path selection of the mobile robot. On the contrary, when the obstacle distance is relatively far, a smaller weight can be assigned to the number of obstacle point clouds in that direction, indicating that the obstacle in that direction has a smaller impact on the reverse path selection of the mobile robot. Through such weighting processing, the mobile robot can pay more attention to obstacles at close range when selecting the target reverse direction, thereby improving the safety of the reverse process.

[0092] For example, when selecting the target reverse direction, by combining lidar data and ultrasonic data, within a range of five meters to the left and right in front of the mobile robot, the number of left obstacle point clouds num_left and the number of right obstacle point clouds num_right are counted, and it is judged in which direction the lidar data has more point cloud data, and the side with more is determined as the obstacle area. Then, the number of point clouds counted by the lidar is normalized, the ultrasonic data is added, and the weight is determined according to the obstacle distance. The weight is used to weight the number of obstacle point clouds, and the closer the obstacle is to the mobile robot, the greater the weight.

[0093] Taking the detection of an ultrasonic signal on the left side as an example, the weighting formula is as follows:

[0094] num left =num lefe +α*(num lefe +num right )

[0095] Where α (alpha) is a weight factor with a value range of (0, 1) (the weight is negatively correlated with the obstacle distance), and the smaller the distance between the obstacle and the mobile robot, the closer its value is to 1.

[0096] For another example, taking a mobile robot as the center, with the left direction and the right direction as candidate reverse directions, in the point cloud data, the number of obstacle point clouds on the left is 10, and the number of obstacle point clouds on the right is 5. Considering the distance between the obstacles and the mobile robot, which will have an impact during the reverse process, by combining ultrasonic data, it is determined that the distance between the obstacle on the left and the mobile robot is 3 m, and the distance between the obstacle on the right and the mobile robot is 1 m.

[0097] According to the above weighting formula, the updated number of obstacle point clouds is:

[0098] The updated number of obstacle point clouds in the left direction = 10 + 0×(10 + 5) = 10;

[0099] The updated number of obstacle point clouds in the right direction = 5 + 1×(10 + 5) = 20;

[0100] After determining the updated number of obstacle point clouds, the candidate reverse direction with a larger number of obstacle point clouds (i.e., the left direction) can be used as the target reverse direction. The mobile robot can turn the steering wheel towards the left direction and reverse backward. After the reverse is completed, then reverse the angle of the steering wheel, continue to move forward, and re-plan the route to restore the normal movement mode.

[0101] In some embodiments of the present invention, by receiving an operation task and generating a planned route according to the operation task; during the process of controlling the mobile robot to move according to the planned route, when an obstacle is detected on the planned route, controlling the mobile robot to enter an obstacle avoidance mode; in the obstacle avoidance mode, determining the width of the breakthrough between the endpoints of different obstacles; when the width of the breakthrough is greater than a preset width matching the mobile robot, adding the endpoints corresponding to the breakthrough greater than the preset width to an alternative endpoint array; for each endpoint in the alternative endpoint array, determining the first distance from the mobile robot to the endpoint and determining the second distance from the endpoint to a preview point on the planned route; according to the first distance and the second distance, selecting a target endpoint from the alternative endpoint array, using the breakthrough corresponding to the target endpoint as the optimal breakthrough, and controlling the mobile robot to bypass the obstacle via the optimal breakthrough, realizing intelligent obstacle avoidance of the mobile robot when encountering an obstacle during the execution of an operation task, not only improving the autonomous navigation ability of the robot, but also enhancing its adaptability and robustness to complex environments.

[0102] The following combines the attached Figure 2 Exemplarily illustrate the present invention:

[0103] Step 201, determine whether there is a planned route. If yes, proceed to step 202; otherwise, proceed to step 203.

[0104] Step 202, drive according to the planned route.

[0105] Step 203: Control the mobile robot to move towards the preview point on the planned route, and determine whether the distance between the obstacle and the mobile robot is less than the stop distance (preset distance). If so, proceed to Step 204; otherwise, proceed to Step 205.

[0106] Step 204: Enter the parking mode (stop mode), and determine whether the stop time is greater than the preset duration (such as 3 s). If not, continue to wait. If so, enter the reverse mode, determine the target reverse direction in combination with the lidar data and ultrasonic data, and proceed to Step 206.

[0107] Step 205: Enter the obstacle bypass mode and select the optimal breakthrough point.

[0108] Step 206: Determine whether the obstacle has been successfully bypassed. If so, proceed to Step 202; otherwise, proceed to Step 204.

[0109] Through some embodiments of the present invention, an efficient and simple method for a robot with an Ackerman structure to escape from trouble is provided. Especially in a crowded environment where obstacles are mobile, compared with the algorithms in the related art, the calculation efficiency is higher and the effect of escaping from trouble is better. After testing, in 99.3% of the scenarios, after the mobile robot bypasses the obstacle and reverses and recovers, it can re-plan the forward route and resume the normal traveling mode.

[0110] It should be noted that for the method embodiments, for the sake of simple description, they are all expressed as a series of action combinations. However, those skilled in the art should know that the embodiments of the present invention are not limited by the described action sequence, because according to the embodiments of the present invention, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily essential for the embodiments of the present invention.

[0111] Some embodiments of the present invention also provide a control device for a mobile robot. The device is used for:

[0112] Receive an operation task and generate a planned route according to the operation task;

[0113] During the process of controlling the mobile robot to move according to the planned route, when an obstacle is detected on the planned route, control the mobile robot to enter the obstacle bypass mode;

[0114] In the obstacle bypass mode, determine the width of the breakthrough between the endpoints of different obstacles;

[0115] When the width of the breakthrough is greater than the preset width matching the mobile robot, add the endpoints corresponding to the breakthrough greater than the preset width to the alternative endpoint array;

[0116] For each endpoint in the array of alternative endpoints, determine a first distance from the mobile robot to the endpoint and a second distance from the endpoint to the look-ahead point on the planned route;

[0117] Based on the first distance and the second distance, select a target endpoint from the array of alternative endpoints, use the breakthrough point corresponding to the target endpoint as the optimal breakthrough point, and control the mobile robot to bypass the obstacle via the optimal breakthrough point.

[0118] In some embodiments of the present invention, determining the width of the breakthrough point between the endpoints of different obstacles includes:

[0119] Determine the angular difference between the endpoints of different obstacles in polar coordinates and determine the polar radius of the endpoints;

[0120] Combining the angular difference and the polar radius, determine the width of the breakthrough point between the endpoints of different obstacles.

[0121] In some embodiments of the present invention, the device is further configured to:

[0122] In the case where no optimal breakthrough point is found, control the mobile robot to move towards the look-ahead point on the planned route, and when the distance between the obstacle and the mobile robot is detected to be less than a preset distance, control the mobile robot to enter a stop mode;

[0123] In the stop mode, wait for a preset duration, and after waiting for the preset duration, detect whether the obstacle has left. If it is detected that the obstacle has left, enter the normal movement mode.

[0124] In some embodiments of the present invention, the device is further configured to:

[0125] If it is detected that the obstacle has not left, control the mobile robot to enter a reverse mode;

[0126] In the reverse mode, determine a target reverse direction, and after controlling the mobile robot to reverse according to the target reverse direction, move by reversing the angle of the steering wheel.

[0127] In some embodiments of the present invention, determining the target reverse direction includes:

[0128] Obtain lidar data and ultrasonic data;

[0129] Based on the lidar data and the ultrasonic data, determine the target reverse direction.

[0130] In some embodiments of the present invention, the determining the target reverse direction based on the lidar data and the ultrasonic data includes:

[0131] Based on the lidar data, determine the number of obstacle point clouds in multiple candidate reverse directions, and based on the ultrasonic data, determine the obstacle distances in the multiple candidate reverse directions;

[0132] For each candidate reverse direction, use the obstacle distance to update the number of obstacle point clouds, and determine the target reverse direction according to the updated number of obstacle point clouds.

[0133] In some embodiments of the present invention, the step of using the obstacle distance to update the number of obstacle point clouds includes:

[0134] Determine a weight according to the obstacle distance; the weight is negatively correlated with the obstacle distance;

[0135] Use the weight to weight the number of obstacle point clouds to obtain the updated number of obstacle point clouds.

[0136] Some embodiments of the present invention also provide an electronic device, including a processor, a memory, and a computer program stored on the memory and capable of running on the processor. When the computer program is executed by the processor, the above method is implemented.

[0137] Some embodiments of the present invention also provide a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the above method is implemented.

[0138] Some embodiments of the present invention also provide a computer program product, including a computer program. When the computer program is executed by a processor, the above method is implemented.

[0139] For the device embodiments, since they are basically similar to the method embodiments, the description is relatively simple. For the relevant parts, refer to the partial description of the method embodiments.

[0140] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. And the collection, use, and processing of relevant data need to comply with the relevant laws, regulations, and standards of relevant countries and regions, and corresponding operation entrances are provided for users to choose to authorize or refuse.

[0141] Each embodiment in this specification is described in a progressive manner. Each embodiment focuses on the differences from other embodiments. For the same or similar parts among the embodiments, refer to each other.

[0142] Those skilled in the art should understand that the embodiments of the present invention can be provided as a method, an apparatus, or a computer program product. Therefore, the embodiments of the present invention can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the embodiments of the present invention can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk memory, CD-ROM, optical memory, etc.) that contain computer-usable program code.

[0143] The embodiments of the present invention are described with reference to the flowcharts and / or block diagrams of methods, terminal devices (systems), and computer program products according to the embodiments of the present invention. It should be understood that each flow and / or block in the flowchart and / or block diagram, as well as the combination of flows and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal devices to generate a machine, such that the instructions executed by the processor of the computer or other programmable data processing terminal devices generate a device for implementing the functions specified in Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.

[0144] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing terminal devices to work in a specific manner, such that the instructions stored in the computer-readable memory generate a manufactured article including an instruction device, and the instruction device implements the functions specified in Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.

[0145] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal devices, such that a series of operation steps are executed on the computer or other programmable terminal devices to generate a computer-implemented process. Thus, the instructions executed on the computer or other programmable terminal devices provide steps for implementing the functions specified in Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.

[0146] Although the preferred embodiments of the embodiments of the present invention have been described, those skilled in the art can make additional changes and modifications to these embodiments once they know the basic creative concepts. Therefore, the appended claims are intended to be interpreted to include the preferred embodiments and all changes and modifications that fall within the scope of the embodiments of the present invention.

[0147] Finally, it should also be noted that in this text, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the term "including", "comprising" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article or terminal device including a series of elements not only includes those elements, but also includes other elements not expressly listed, or further includes elements inherent to such process, method, article or terminal device. Without further limitation, an element defined by the statement "including one..." does not exclude the existence of additional identical elements in the process, method, article or terminal device including the above elements.

[0148] The above provides a detailed introduction to a control method, device, electronic device and medium of a mobile robot. Specific examples are used in this text to elaborate on the principles and implementation manners of the present invention. The descriptions of the above embodiments are only used to help understand the method and its core idea of the present invention; at the same time, for those of ordinary skill in the art, according to the idea of the present invention, there will be changes in the specific implementation manners and application scopes. In summary, the content of this specification should not be construed as a limitation to the present invention.

Claims

1. A control method for a mobile robot, characterized in that: The method includes: Receiving a job task and generating a planned route according to the job task; During the process of controlling the mobile robot to move along the planned route, when an obstacle is detected on the planned route, controlling the mobile robot to enter an obstacle avoidance mode; In the obstacle avoidance mode, determining the width of the breakthrough between the endpoints of different obstacles; When the width of the breakthrough is greater than a preset width matching the mobile robot, adding the endpoints corresponding to the breakthroughs greater than the preset width to an alternative endpoint array; For each endpoint in the alternative endpoint array, determining a first distance from the mobile robot to the endpoint and a second distance from the endpoint to a preview point on the planned route; According to the first distance and the second distance, selecting a target endpoint from the alternative endpoint array, taking the breakthrough corresponding to the target endpoint as the optimal breakthrough, and controlling the mobile robot to bypass the obstacle via the optimal breakthrough; 2. The method according to claim 1, characterized in that, The determining the width of the breakthrough between the endpoints of different obstacles includes: Determining the angular difference between the endpoints of different obstacles in polar coordinates and determining the polar radius of the endpoints; Combining the angular difference and the polar radius to determine the width of the breakthrough between the endpoints of different obstacles; 3. The method according to claim 1 or 2, characterized in that, It further includes: In the case where no optimal breakthrough is found, controlling the mobile robot to move towards a preview point on the planned route, and when the distance between the detected obstacle and the mobile robot is less than a preset distance, controlling the mobile robot to enter a stop mode; In the stop mode, waiting for a preset duration, and after waiting for the preset duration, detecting whether the obstacle has left. If it is detected that the obstacle has left, entering a normal movement mode; 4. The method according to claim 3, characterized in that, It further includes: If it is detected that the obstacle has not left, controlling the mobile robot to enter a reverse mode; In the reverse mode, determining a target reverse direction, and after controlling the mobile robot to reverse according to the target reverse direction, moving by reversing the angle of the steering wheel; 5. The method according to claim 4, wherein Determining the target reverse direction includes: Obtaining lidar data and ultrasonic data; According to the lidar data and the ultrasonic data, determining the target reverse direction; 6. The method according to claim 5, wherein The determining the target reverse direction according to the lidar data and the ultrasonic data includes: According to the lidar data, determining the number of obstacle point clouds in multiple candidate reverse directions, and according to the ultrasonic data, determining the distances of obstacles in the multiple candidate reverse directions; For each candidate reverse direction, using the obstacle distance to update the number of obstacle point clouds, and according to the updated number of obstacle point clouds, determining the target reverse direction; 7. The method according to claim 6, characterized in that, The using the obstacle distance to update the number of obstacle point clouds includes: According to the obstacle distance, determining a weight; the weight is negatively correlated with the obstacle distance; Using the weight to weight the number of obstacle point clouds to obtain the updated number of obstacle point clouds; 8. A control device for a mobile robot, characterized in that: The device is used for: Receiving a job task and generating a planned route according to the job task; During the process of controlling the mobile robot to move along the planned route, when an obstacle is detected on the planned route, control the mobile robot to enter the obstacle avoidance mode; In the obstacle avoidance mode, determine the width of the breakthrough between the endpoints of different obstacles; When the width of the breakthrough is greater than the preset width matching the mobile robot, add the endpoints corresponding to the breakthroughs greater than the preset width to the alternative endpoint array; For each endpoint in the alternative endpoint array, determine the first distance from the mobile robot to the endpoint, and determine the second distance from the endpoint to the preview point on the planned route; According to the first distance and the second distance, select a target endpoint from the alternative endpoint array, use the breakthrough corresponding to the target endpoint as the optimal breakthrough, and control the mobile robot to bypass the obstacle via the optimal breakthrough.

9. An electronic device, characterized in that, It includes a processor, a memory, and a computer program stored on the memory and capable of running on the processor. When the computer program is executed by the processor, it implements the method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that, A computer program is stored on the computer-readable storage medium. When the computer program is executed by the processor, it implements the method according to any one of claims 1 to 7.