Robot travel control method and device, robot, and storage medium
By planning local paths based on a global static map and real-time environmental information during robot operation, and using the positional relationship between the local paths and the predicted paths for collision prediction and correction control, the problem of the robot being unable to accurately reach the target position is solved, thus improving driving safety.
Patent Information
- Application Number
- CN202211411968.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-11
- Publication Date
- 2026-02-27
- Estimated Expiration
- 2042-11-11
AI Technical Summary
During autonomous positioning and navigation, the robot can avoid obstacles but cannot guarantee that it will accurately reach the target location, resulting in low driving safety.
Local paths are planned based on a global static map and real-time environmental information. The robot's direction of travel is adjusted by predicting the path. Collision prediction and correction control are performed by utilizing the positional relationship between the local path and the predicted path.
This improves the robot's driving safety after deviating from the local path and enhances the speed and safety of responding to emergencies.
Smart Images

Figure CN115755899B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of robot control, in particular to a robot driving control method and device, a robot and a storage medium. BACKGROUND
[0002] At present, when a robot encounters an obstacle in the process of autonomous positioning and navigation, it will drive around the obstacle. However, the autonomous positioning result and the control result of the robot cannot guarantee to reach an ideal state. For example, the control requirement is to control the robot to drive to a target position, but the actual position of the robot cannot reach the target position. When the actual position of the robot deviates from the target position, it will easily cause the robot to collide with the obstacle, especially in the process of driving around the obstacle, thereby causing low driving safety of the robot. SUMMARY
[0003] The main purpose of the present application is to provide a robot driving control method, device, robot and storage medium, which aims to solve the problem of low driving safety of the robot.
[0004] To achieve the above purpose, the present application provides a robot driving control method, which comprises the following steps:
[0005] Based on the static path of the global static map and the real-time acquired environmental information as input, a local path is planned as output, and the robot is controlled to drive along the local path;
[0006] In the process of controlling the robot to drive along the local path, if the current position of the robot deviates from the local path, a predicted path is determined according to the current position of the robot and the driving parameters at the current time of the robot;
[0007] The robot is controlled to drive according to the positional relationship between the local path and the predicted path.
[0008] Optionally, the driving parameters of the robot include driving speed, driving acceleration and driving direction;
[0009] The step of determining the predicted path according to the current position of the robot and the driving parameters at the current time of the robot comprises:
[0010] The driving speed, driving acceleration and driving direction of the robot at the current time are acquired, the current position of the robot is taken as a starting position, and the end position of the robot after a preset time is determined according to the driving speed, driving acceleration and driving direction;
[0011] The path between the starting position and the end position is determined as the predicted path.
[0012] Optionally, the step of determining the predicted path according to the current position of the robot and the driving parameter of the robot at the current time further comprises:
[0013] acquiring environment information, and determining the obstacles located around the robot according to the environment information;
[0014] performing collision prediction on the robot according to the obstacles distributed around the robot and the predicted driving direction of the predicted path.
[0015] Optionally, the step of performing collision prediction on the robot according to the obstacles distributed around the robot and the predicted driving direction of the predicted path comprises:
[0016] determining a probability level of the robot colliding in the predicted driving direction of the predicted path according to the position of the obstacles relative to the robot, the number of the obstacles and the distance of the obstacles relative to the robot;
[0017] determining a warning level according to the probability level, and performing an adjustment operation corresponding to the warning level.
[0018] Optionally, the step of controlling the robot to drive according to the positional relationship between the local path and the predicted path comprises:
[0019] acquiring at least part of the local path and fitting it as a straight line local path;
[0020] acquiring at least part of the predicted path and fitting it as a straight line predicted path;
[0021] controlling the robot to drive according to the included angle between the straight line local path and the straight line predicted path.
[0022] Optionally, the step of controlling the robot to drive according to the included angle between the straight line local path and the straight line predicted path comprises:
[0023] when the included angle between the straight line local path and the straight line predicted path is less than or equal to a first angle, it is determined that the driving state of the robot deviating from the local path is in a safe state, and the driving direction of the robot is adjusted to make the robot drive towards the local path;
[0024] when the included angle between the straight line local path and the straight line predicted path is greater than the first angle, it is determined that the driving state of the robot deviating from the local path is in a dangerous state, collision prediction is performed on the robot in the predicted driving direction of the predicted path, and the robot is controlled to drive.
[0025] Optionally, the step of performing collision prediction on the predicted travel direction of the robot on the predicted path and controlling the robot to travel comprises:
[0026] acquiring environment information and determining a target obstacle in the environment information located in the predicted travel direction of the predicted path;
[0027] when the distance between the target obstacle and the robot is greater than or equal to the safety distance, adjusting the travel direction of the robot so that the robot travels towards the local path;
[0028] when the distance between the target obstacle and the robot is less than the safety distance, controlling the robot to brake and stop moving.
[0029] In addition, to achieve the above object, the present application also provides a robot travel control device, which comprises: a travel module, configured to take the static path of a global static map and real-time acquired environment information as input, plan a local path as output, and control the robot to travel along the local path; a determination module, configured to, during the process of controlling the robot to travel along the local path, if the current position of the robot deviates from the local path, determine a predicted path according to the current position of the robot and the travel parameter at the current time of the robot; and a control module, configured to control the robot to travel according to the positional relationship between the local path and the predicted path.
[0030] In addition, to achieve the above object, the present application also provides a robot, which comprises a memory, a processor, and a robot travel control program stored on the memory and executable on the processor, and the robot travel control program, when executed by the processor, implements the steps of the robot travel control method as described above.
[0031] In addition, to achieve the above object, the present application also provides a computer readable storage medium, which stores a robot travel control program, and the robot travel control program, when executed by a processor, implements the steps of the robot travel control method as described above.
[0032] Different from the prior art, the robot driving control method provided by the embodiment of the present application firstly takes the static path based on the global static map and the real-time acquired environmental information as input, plans an output local path, and controls the robot to drive along the local path. In the process of controlling the robot to drive along the local path, if the current position of the robot deviates from the local path, a predicted path is determined according to the current position of the robot and the driving parameter at the current time of the robot, and finally the robot is controlled to drive according to the positional relationship between the local path and the predicted path. The present application generates a predicted path according to the current position of the robot and the driving parameter at the current time when the robot deviates from the local path, and controls the robot to drive according to the positional relationship between the local path and the predicted path, thereby improving the response speed of the robot to the sudden situation after the robot deviates from the local path, and improving the driving safety of the robot after the robot deviates from the local path. BRIEF DESCRIPTION OF DRAWINGS
[0033] The drawings incorporated into the specification and forming part of the specification, show embodiments consistent with the present application, and together with the specification serve to explain the principles of the present application. In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed to be used in the embodiment description will be briefly introduced as follows. Obviously, those skilled in the art can obtain other drawings according to these drawings without any creative labor.
[0034] Figure 1 The flowchart of the first embodiment of the robot driving control method of the present application;
[0035] Figure 2 The positional relationship diagram of the static path, the local path and the predicted path of the robot driving control method of the present application;
[0036] Figure 3 The detailed flowchart of step S20 of the first embodiment of the robot driving control method of the present application;
[0037] Figure 4 The detailed flowchart of step S30 of the first embodiment of the robot driving control method of the present application;
[0038] Figure 5 The positional relationship diagram of the straight local path and the straight predicted path of the robot driving control method of the present application;
[0039] Figure 6 The flowchart of the second embodiment of the robot driving control method of the present application based on step S20 of the first embodiment;
[0040] Figure 7 The functional module schematic diagram of the preferred embodiment of the robot driving control device of the present application;
[0041] Figure 8 is a structural schematic diagram of a hardware environment involved in the embodiment.
[0042] The implementation, functional features and advantages of the present application will be further described with reference to the embodiments and the accompanying drawings. DETAILED DESCRIPTION
[0043] It should be understood that the specific embodiments described herein are merely intended to explain the present application and are not intended to limit the present application.
[0044] The content claimed by the claims of the present application will be described in detail below with reference to the accompanying drawings.
[0045] Referring to Figure 1 , Figure 1 is a flowchart of a first embodiment of the robot travel control method of the present application.
[0046] The embodiments of the robot travel control method provided by the embodiments of the present application need to be explained, although the logical sequence is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that described herein.
[0047] The execution subject of each embodiment of the robot travel control method of the present application can be a robot, which can be a conventional robot controlled by an automatic control program, or can be used for carrying goods, planning paths, obtaining distribution, etc., and the type and style of the robot and the specific implementation details are not limited in each embodiment. In the present embodiment, the robot travel control method comprises the following steps S10-S30:
[0048] Step S10, based on the static path of the global static map and the real-time acquired environment information as input, planning output local path, controlling the robot to travel along the local path.
[0049] In the present embodiment, the robot uses SLAM (Simultaneous Localization and Mapping) technology to realize map construction and positioning, and the global static map is a priori map constructed by the robot according to the environment information of the application scene.
[0050] Referring to Figure 2, the robot receives a task and determines a target position to be reached by the robot according to the task, and plans a static path from an initial position of the robot to the target position based on a global static map. The environmental information can include fixed obstacles, parked vehicles, walking pedestrians, etc. detected by the robot during travel. The local path is a path output by the robot based on the static path and surrounding environmental information, such as obstacle distribution information, during travel. Optionally, when no obstacles appear on the static path, the local path overlaps with the static path. The planner of the robot plans and outputs the local path based on the static path of the global static map and the real-time acquired environmental information as input. The controller of the robot controls the robot to travel along the local path to drive the robot to travel from the initial position to the target position.
[0051] When an obstacle is detected in the environmental information during travel of the robot, the robot needs to travel around the obstacle, and the generated local path no longer overlaps with the static path, but a local path is generated to avoid the obstacle according to the position and / or state of the obstacle, and the robot is controlled to travel along the latest planned and output local path, so that the robot can avoid obstacles based on the obstacles in the environment.
[0052] The robot can scan the environment around the robot by a laser radar and / or a depth camera to obtain point cloud data containing the surrounding environmental information.
[0053] Step S20, during control of the robot to travel along the local path, if the current position of the robot deviates from the local path, a predicted path is determined according to the current position of the robot and the travel parameters at the current time of the robot.
[0054] Please continue to refer to Figure 2 The travel parameters at least include the travel speed, travel acceleration and travel direction of the robot. The predicted path refers to a travel path predicted and planned by the robot according to the current position, travel speed, travel acceleration and travel direction at the current time after deviating from the local path. The robot cannot reach the ideal control state during travel due to external factors and / or internal factors, and during control of the robot to travel along the local path, at some time, the position of the robot may deviate from the local path, and at this time, the predicted path is determined according to the current position and the travel parameters at the current time.
[0055] Specifically, refer to Figure 3 In step S20, the predicted path is determined according to the current position of the robot and the travel parameters at the current time of the robot, which specifically includes steps S21-S22:
[0056] In step S21, the driving speed, the driving acceleration and the driving direction of the robot at the current time are acquired, the current position of the robot is taken as a starting position, and the end position of the robot after a preset time period is determined according to the driving speed, the driving acceleration and the driving direction.
[0057] In step S22, the path between the starting position and the end position is determined as the predicted path.
[0058] In order to avoid the robot colliding with other obstacles when deviating from the original local path and traveling on a road without collision prediction due to ground skidding, motor abnormalities and other reasons, in the technical solution of the present application, the path that the robot may pass through in the future within a preset time period is predicted. After detecting that the robot deviates from the position corresponding to the map guide route of the local path, the driving speed, the driving acceleration and the driving direction of the robot at the current time are acquired, the current position of the robot is taken as a starting position, and the end position of the robot after a preset time period (for example, the preset time period is 3 seconds) is determined according to the driving speed, the driving acceleration and the driving direction. The path between the starting position and the end position is determined as the predicted path, so that the robot can perform corresponding driving actions according to the relationship between the local path and the predicted path after the predicted path.
[0059] Optionally, whether the robot deviates from the local path can be detected by a position detection module.
[0060] In step S30, the robot is controlled to drive according to the positional relationship between the local path and the predicted path.
[0061] The positional relationship between the local path and the predicted path can be a distance change relationship or a direction change relationship between the local path and the predicted path.
[0062] In some embodiments, the positional relationship can refer to an included angle relationship between the local path and the predicted path. After the robot deviates from the local path and generates the predicted path, at least part of the local path can be acquired from the local path and fitted as a straight line local path, at least part of the predicted path can be acquired from the predicted path and fitted as a straight line predicted path, and then the robot is controlled to drive according to the included angle between the fitted straight line local path and the straight line predicted path. By acquiring part of the local path, part of the predicted path and fitting them into the straight line local path and the straight line predicted path, the robot can more intuitively determine the included angle relationship between the local path and the predicted path at the current time.
[0063] Specifically, referring to Figure 4 the step of controlling the robot to drive according to the included angle between the fitted straight line local path and the straight line predicted path includes steps S31-S32:
[0064] Step S31, when the included angle between the straight local path and the straight predicted path is less than or equal to the first angle, it is determined that the driving state of the robot deviating from the local path is in a safe state, and the driving direction of the robot is adjusted to drive the robot towards the local path;
[0065] Specifically, the first angle is a reference threshold for judging whether the robot at the current position is in a safe state or a dangerous state, and the first angle can be dynamically set according to actual conditions, which can be 45 degrees here.
[0066] Step S32: When the included angle between the straight local path and the straight predicted path is greater than the first angle, it is determined that the driving state of the robot deviating from the local path is in a dangerous state, the predicted driving direction of the robot on the predicted path is collision predicted, and the robot is controlled to drive.
[0067] In the embodiment, the safe state refers to a small degree of deviation of the robot from the local path. The dangerous state refers to a large degree of deviation of the robot from the local path. When the degree of deviation of the robot from the local path is small, it is considered that the driving state of the robot at the current time is in a safe state, and the robot adjusts the driving direction according to the size of the included angle between the straight local path and the straight predicted path (the adjusted angle can be the size of the included angle between the straight local path and the straight predicted path), to make the robot adjust the driving direction based on the driving angle. The adjusted driving direction is to drive towards the local path.
[0068] Alternatively, when the degree of deviation of the robot from the local path is large, it is considered that the driving state of the robot at the current time is in a dangerous state. When the robot is in a dangerous state, the obstacle information in the driving direction and / or the extension direction of the predicted path can be scanned by the laser radar and / or the depth camera. According to the scanned point cloud data of the target obstacle located in the driving direction of the predicted path, the position information of the target obstacle is determined, and the distance between the robot and the target obstacle at the current time is calculated according to the position information of the scanned target obstacle, so that the robot makes corresponding driving actions according to the distance information of the target obstacle, and improves the driving safety.
[0069] Wherein, when the target distance between the robot and the obstacle is greater than the safe distance, the driving direction is adjusted towards the direction indicated by the local path based on the size of the included angle between the straight local path and the straight predicted path (the adjusted angle can be the size of the included angle between the straight local path and the straight predicted path), so that the robot drives towards the local path, avoiding the robot driving a long distance on the predicted path.
[0070] When the target distance between the robot and the obstacle is less than the safety distance, the robot is controlled to brake and stop moving to avoid collision between the robot and the obstacle on the predicted path in a high-speed driving state.
[0071] For example, with reference to Figure 5 , Figure 5 is the angle between the linear local path and the linear predicted path. In a specific implementation scenario, when the angle θ between the linear local path and the linear predicted path calculated by the robot is less than or equal to a first angle, for example, 45°, the driving state of the robot after deviating from the local path is updated to a safe state, and the driving direction of the robot is adjusted to make the robot drive towards the local path, so that the robot performs the action of correcting and returning to the local path after determining that the current state is a relatively safe state according to the positional relationship, thereby improving the safety of driving.
[0072] If the angle θ between the linear local path and the linear predicted path calculated by the robot is greater than the first angle, for example, 45°, the driving state of the robot after deviating from the local path is updated to a dangerous state, and then the predicted driving direction of the robot on the predicted path is collision predicted, and the robot is controlled to drive on the predicted path.
[0073] The step of collision predicting the predicted driving direction of the predicted path and controlling the robot to drive on the predicted path in step S32 can include steps S33-S35:
[0074] In step S33, the environment information of a preset range of the robot is obtained, and a target obstacle located in the predicted driving direction of the predicted path in the environment information is determined.
[0075] In step S34, when the distance between the target obstacle and the robot is greater than or equal to the safety distance, the driving direction of the robot is adjusted to make the robot drive towards the local path.
[0076] In step S35, when the distance between the target obstacle and the robot is less than the safety distance, the robot is controlled to brake and stop moving.
[0077] After the robot deviates from the local path, according to the size relationship of the included angle between the straight local path and the straight predicted path, the current state is determined as a dangerous state, and the environmental obstacles located on the predicted path or the extended direction of the predicted path are subjected to collision detection, that is, by scanning the position information of the target obstacle located on the predicted path or the extended direction of the predicted path, the distance between the robot and the target obstacle is calculated, and when the distance between the target obstacle and the robot is greater than or equal to a safety distance, for example, 1.5 meters, the travel direction of the robot is adjusted to return the robot to the local path. When the distance between the target obstacle and the robot is less than the safety distance of 1.5 meters, the robot is controlled to brake and stop moving to avoid collision with obstacles such as pedestrians during high-speed movement and to improve the response speed of the robot to unexpected situations.
[0078] It should be noted that the included angle between the straight local path and the straight predicted path, the safety distance and the like can be dynamically set. The first angle of 45° and the safety distance of 1.5 meters given in the present application are only used for illustration and do not limit the first angle and the safety distance.
[0079] In a specific implementation scenario, after the robot deviates from the local path, the included angle between the straight predicted path and the straight local path obtained is greater than 45°, at which time it can be considered that the travel state of the robot is a dangerous state, the robot starts to obtain surrounding environment information and determines the target obstacle such as a pedestrian on the predicted path. When the distance between the pedestrian and the robot is less than the safety distance, the robot is controlled to brake and stop moving, and after the distance between the pedestrian and the robot is greater than the safety distance, the robot is controlled to restart and travel in the direction of the local path, so that the robot returns to the travel direction of the local path after stopping and restarting.
[0080] In the embodiment, when the robot travels, a static path based on a global static map and environment information acquired in real time are taken as inputs to plan an output local path and control the robot to travel along the local path. In the process of controlling the robot to travel along the local path, if the robot deviates from the local path at a current position, a predicted path is determined according to a current position of the robot and a travel parameter at a current time, and a travel state of the robot after deviating from the local path is determined according to a positional relationship between the local path and the predicted path. If the travel state is a safe state, the travel direction of the robot is adjusted to make the robot travel towards the local path. If the travel state is a dangerous state, a collision prediction is performed on a predicted travel direction of the predicted path. When it is predicted that an obstacle is less than a safety distance, the robot is controlled to slow down and stop. The application makes the robot, after deviating from the local path, predict a path possibly passed by the robot within a preset time in the future, detect the safety of the robot on the predicted path, and perform a deviation correction or a slow-down action according to a detection result, so as to improve the response speed to the sudden situation and improve the travel safety of the robot after deviating from the local path.
[0081] Based on the above embodiment, a second embodiment of the application is proposed. In the embodiment, referring to Figure 6 , Figure 6 The flowchart after step S20 in the first embodiment is specifically shown in the figure, and specifically includes:
[0082] In step S40, environment information is acquired, and an obstacle located around the robot is determined according to the environment information.
[0083] In step S50, a collision prediction is performed on the robot according to the obstacle distributed around the robot and a predicted travel direction of the predicted path.
[0084] In the embodiment, after the robot deviates from the local path, the robot can scan the obstacle of the environment information around the current position through a laser radar and / or a depth camera, and perform a collision prediction on a travel direction corresponding to the predicted path according to the information of the scanned obstacle, such as position, distance and quantity, so as to improve the travel safety of the robot at the current time.
[0085] In step S50, the collision prediction on the robot according to the obstacle distributed around the robot and the predicted travel direction of the predicted path can include steps S51-S52:
[0086] In step S51, a probability level of the robot colliding in the predicted travel direction of the predicted path is determined according to a direction of the obstacle relative to the robot, a quantity of the obstacle and a distance of the obstacle relative to the robot.
[0087] Step S52, determining a warning level according to the probability level, and performing an adjusting operation corresponding to the warning level.
[0088] After the robot deviates from the local path and obtains the obstacle information of the environment, according to the position of the obstacle relative to the robot, the number of obstacles, and the distance of the obstacle relative to the robot, the probability level of the robot colliding in the predicted driving direction of the predicted path is determined, and the warning level is determined according to the probability level, and an adjusting operation corresponding to the warning level is performed to improve the safety of the robot after deviating from the local path.
[0089] For example, if the distance between the obstacle and the robot is less than the safe distance, the probability level of collision is determined to be 70%-90%, and according to this probability level, the warning level is determined to be the danger level, and the robot is controlled to perform the action of braking and stopping to avoid collision during subsequent travel.
[0090] Optionally, if the number of obstacles is large, the probability level of collision can be 30%-50%, at which time the robot is controlled to deviate in the direction with a smaller collision probability, and when the collision probability is less than a collision threshold such as 10%, the robot can be controlled to travel in the direction of the local path to avoid sudden conditions on the predicted path causing a collision accident.
[0091] Optionally, if the collision probability is 30%-50%, the robot can be controlled to perform a braking action to reduce the speed to reduce the collision probability level to below 10% to avoid too many obstacles and abnormal conditions, and the robot does not brake in time and the speed is too high, causing a collision.
[0092] Optionally, when the collision probability is small, such as less than 10%, the robot can be controlled to change the driving direction at this time so that the robot travels in the direction of the local path to avoid sudden conditions on the predicted path causing a collision accident.
[0093] It should be noted that the parameters of the probability level in the present embodiment are only exemplary and do not limit the present application.
[0094] In the embodiment, when the robot determines a predicted path and travels on the predicted path, the environment information on the predicted path can be acquired, and the probability level of collision is determined according to the position of the obstacle in the environment information, the number of obstacles and the distance between the obstacle and the robot, when the collision probability level is high, the warning level can be determined as dangerous, at this time, the robot is controlled to execute brake and stop action, when there are more obstacles, the robot can be controlled to slow down, so as to reduce the probability of collision. The application makes the robot travel, can execute corresponding action of reducing the probability of collision according to the information of the obstacle, improves the travel safety of the robot when traveling on the predicted path.
[0095] In addition, the embodiment of the application further provides a robot travel control device, referring to Figure 7 , the device comprises:
[0096] The travel module 10 is used for taking the static path of the global static map and the environment information acquired in real time as input, planning output local path, and controlling the robot to travel along the local path.
[0097] The determination module 20 is used for determining the predicted path according to the current position of the robot and the travel parameter of the robot at the current time, if the current position of the robot deviates from the local path during the process of controlling the robot to travel along the local path.
[0098] The control module 30 is used for controlling the robot to travel according to the positional relationship between the local path and the predicted path.
[0099] Further, the determination module 20 comprises:
[0100] The first acquisition unit is used for acquiring the travel speed, travel acceleration and travel direction of the robot at the current time.
[0101] The first determination unit is used for taking the current position of the robot as the starting position, and determining the terminal position of the robot after a preset time according to the travel speed, the travel acceleration and the travel direction, and determining the path between the starting position and the terminal position as the predicted path.
[0102] Further, the control module 30 comprises:
[0103] The second acquisition unit is used for acquiring at least part of the local path and fitting as a straight line local path, and acquiring at least part of the predicted path and fitting as a straight line predicted path.
[0104] The first control unit is used for controlling the robot to travel according to the included angle between the straight line local path and the straight line predicted path.
[0105] Further, the first control unit comprises:
[0106] The first determining sub-unit is configured to determine that the driving state of the robot deviating from the local path is in a safe state when an included angle between the straight local path and the straight predicted path is less than or equal to a first angle.
[0107] The adjusting sub-unit is configured to adjust the driving direction of the robot to drive the robot towards the local path.
[0108] The second determining sub-unit is configured to determine that the driving state of the robot deviating from the local path is in a dangerous state when the included angle between the straight local path and the straight predicted path is greater than the first angle.
[0109] The collision predicting sub-unit is configured to predict a collision of the robot in the predicted driving direction of the predicted path when the driving state of the robot deviating from the local path is in the dangerous state.
[0110] The control sub-unit is configured to control the robot to drive based on the prediction result of the predicting sub-unit.
[0111] Further, the predicting sub-unit comprises:
[0112] The obtaining sub-unit is configured to obtain environment information.
[0113] The first determining sub-unit is configured to determine a target obstacle in the predicted driving direction of the predicted path in the environment information obtained by the obtaining sub-unit.
[0114] The adjusting sub-unit is configured to adjust the driving direction of the robot to drive the robot towards the local path when a distance between the target obstacle and the robot is greater than or equal to a safety distance.
[0115] The first control sub-unit is configured to control the robot to brake and stop moving when the distance between the target obstacle and the robot is less than the safety distance.
[0116] Further, the apparatus further comprises:
[0117] The third obtaining unit is configured to obtain environment information.
[0118] The third determining unit is configured to determine obstacles around the robot based on the environment information obtained by the third obtaining unit.
[0119] The collision predicting unit is configured to predict a collision of the robot based on the obstacles around the robot and the predicted driving direction of the predicted path.
[0120] Further, the collision predicting unit comprises:
[0121] The second determining subunit is used to determine the probability level of the robot colliding with the robot in the predicted driving direction of the predicted path based on the position of the obstacle relative to the robot, the number of obstacles, and the distance of the obstacle relative to the robot.
[0122] Early warning processing subunit: used to determine the early warning level based on the probability level, and to perform adjustment operations corresponding to the early warning level.
[0123] The extended content of the specific implementation of the robot driving control device of the present invention is basically the same as the various embodiments of the robot driving control method described above, and will not be repeated here.
[0124] Furthermore, this invention also proposes a robot, which includes a memory, a processor, and a robot driving control program stored in the memory and executable on the processor. When the robot driving control program is executed by the processor, it implements the steps of the robot driving control method in any of the embodiments described above.
[0125] Furthermore, embodiments of the present invention also propose a computer-readable storage medium storing a robot driving control program, which, when executed by a processor, implements the steps of the robot driving control method in any of the embodiments described above.
[0126] like Figure 8 As shown, Figure 8 This is a schematic diagram of the terminal structure of the hardware operating environment involved in the embodiment of the present invention.
[0127] It should be noted that the device in the embodiments of the present invention can be a device with digital processing capabilities, such as a smartphone, a personal computer, or a server. The device can be deployed in a mobile robot, and no specific limitations are imposed here.
[0128] like Figure 8As shown, the device can include a processor 1001, such as a CPU, a network interface 1004, a user interface 1003, a memory 1005, and a communication bus 1002. The communication bus 1002 is used to realize the connection communication between these components. The user interface 1003 can include a display screen (Display), an input unit such as a keyboard (Keyboard), and the optional user interface 1003 can also include a standard wired interface, a wireless interface. The network interface 1004 can optionally include a standard wired interface, a wireless interface (such as a WI-FI interface). The memory 1005 can be a high-speed RAM memory, or a stable memory (non-volatile memory) such as a magnetic disk memory. The memory 1005 can also be an independent storage device from the aforementioned processor 1001.
[0129] Those skilled in the art can understand that Figure 8 The device structure shown in the foregoing embodiments does not constitute a limitation on the device, and can include more or fewer components than those shown, or combine certain components, or different component arrangements.
[0130] As Figure 8 As shown, the memory 1005 as a computer storage medium can include an operating system, a network communication module, a user interface module, and a robot driving control program. The operating system is a program that manages and controls the hardware and software resources of the device, supports the running of the robot driving control program and other software or programs. In Figure 8 In the device shown, the user interface 1003 is mainly used for data communication with the client; the network interface 1004 is mainly used for establishing a communication connection with the server; and the processor 1001 can be used to call the robot driving control program stored in the memory 1005, and perform the following operations:
[0131] Based on the global static map, the static path and the real-time acquired environment information are taken as inputs, a local path is planned as an output, and the robot is controlled to drive along the local path;
[0132] In the process of controlling the robot to drive along the local path, if the current position of the robot deviates from the local path, a predicted path is determined according to the current position of the robot and the driving parameters at the current time of the robot;
[0133] The robot is controlled to drive according to the positional relationship between the local path and the predicted path.
[0134] Further, the processor 1001 can call the robot driving control program stored in the memory 1005, and further perform the following operations:
[0135] The travel parameter of the robot comprises a travel speed, a travel acceleration and a travel direction;
[0136] The step of determining the predicted path according to the current position of the robot and the travel parameter of the robot at the current time comprises:
[0137] The travel speed, the travel acceleration and the travel direction of the robot at the current time are obtained, and a start position is set as the current position of the robot, and an end position of the robot after a preset time is determined according to the travel speed, the travel acceleration and the travel direction;
[0138] The path between the start position and the end position is determined as the predicted path.
[0139] Further, the processor 1001 can call the robot travel control program stored in the memory 1005, and further perform the following operations:
[0140] Obtain environment information, and determine the obstacles around the robot according to the environment information;
[0141] According to the obstacles distributed around the robot and the predicted travel direction of the predicted path, the collision of the robot is predicted.
[0142] Further, the processor 1001 can call the robot travel control program stored in the memory 1005, and further perform the following operations:
[0143] According to the position of the obstacles relative to the robot, the number of the obstacles and the distance of the obstacles relative to the robot, the probability level of the robot colliding in the predicted travel direction of the predicted path is determined;
[0144] According to the probability level, a warning level is determined, and an adjustment operation corresponding to the warning level is performed.
[0145] Further, the processor 1001 can call the robot travel control program stored in the memory 1005, and further perform the following operations:
[0146] At least part of the local path is obtained and fitted as a straight line local path;
[0147] At least part of the predicted path is obtained and fitted as a straight line predicted path;
[0148] According to the included angle between the straight line local path and the straight line predicted path, the robot is controlled to travel.
[0149] Further, the processor 1001 can call the robot travel control program stored in the memory 1005, and further perform the following operations:
[0150] When the included angle between the straight local path and the straight predicted path is less than or equal to a first angle, it is determined that the driving state of the robot deviating from the local path is in a safe state, and the driving direction of the robot is adjusted to drive the robot towards the local path;
[0151] When the included angle between the straight local path and the straight predicted path is greater than the first angle, it is determined that the driving state of the robot deviating from the local path is in a dangerous state, collision prediction is performed on the predicted driving direction of the robot on the predicted path, and the robot is controlled to drive.
[0152] Further, the processor 1001 can invoke the robot driving control program stored in the memory 1005, and further perform the following operations:
[0153] Obtain environment information, and determine a target obstacle in the environment information located on the predicted driving direction of the predicted path;
[0154] When the distance between the target obstacle and the robot is greater than or equal to a safe distance, the driving direction of the robot is adjusted to drive the robot towards the local path;
[0155] When the distance between the target obstacle and the robot is less than the safe distance, the robot is controlled to brake and stop moving.
[0156] It should be noted that in this document, the terms “comprising”, “including” or any other intended to encompass non-exclusive inclusion, so that the process, method, article or system including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or includes elements inherent to such process, method, article or system. Without more limitations, the element defined by the statement “including a…” does not exclude the presence of other identical elements in the process, method, article or system including the element.
[0157] The above-mentioned embodiment numbers of the application are only for description, and do not represent the advantages and disadvantages of the embodiments.
[0158] Through the above description of the embodiments, those skilled in the art can clearly understand that the above-mentioned example method can be realized by means of software and a necessary general hardware platform, and of course, it can also be realized by hardware, but in many cases, the former is a better embodiment. Based on such understanding, the technical solutions of the present application can be embodied in the form of a software product, which is stored in a storage medium (such as a ROM / RAM, a magnetic disk, or an optical disc) as described above, and includes a plurality of instructions for causing an end device (which can be a robot) to execute the method described in each embodiment of the present application.
[0159] The above is only a preferred embodiment of the present application, and does not limit the patent scope of the present application, and any equivalent structure or equivalent flow transformation made by using the content of the specification and drawings of the present application, or directly or indirectly applied to other related technical fields, are also included in the patent protection scope of the present application.
Claims
1. A robot driving control method, characterized in that, The method includes the following steps: Based on the static path of the global static map and the real-time environmental information as input, a local path is planned and output, and the robot is controlled to travel along the local path. During the process of controlling the robot to travel along the local path, if the robot's current position deviates from the local path, a predicted path is determined based on the robot's current position and the robot's current travel parameters. The robot's movement is controlled based on the positional relationship between the local path and the predicted path; The step of controlling the robot's movement based on the positional relationship between the local path and the predicted path includes: Obtain at least a portion of the local path and fit it as a straight local path; Obtain at least a portion of the predicted path and fit it to a linear predicted path; When the angle between the local straight path and the predicted straight path is less than or equal to the first angle, it is determined that the robot's deviation from the local path is in a safe state, and the robot's direction of travel is adjusted so that the robot moves toward the local path. When the angle between the local straight path and the predicted straight path is greater than a first angle, it is determined that the robot's deviation from the local path is in a dangerous state. Collision prediction is then performed on the predicted driving direction of the robot on the predicted path, and the robot is controlled to drive.
2. The method as described in claim 1, characterized in that, The robot's driving parameters include driving speed, driving acceleration, and driving direction; The step of determining the predicted path based on the robot's current position and the robot's current driving parameters includes: The robot's current speed, acceleration, and direction are obtained. The robot's current position is taken as the starting position, and the robot's destination position after a preset time period is determined based on the speed, acceleration, and direction. The path between the starting position and the ending position is determined as the predicted path.
3. The method as described in claim 1, characterized in that, After the step of determining the predicted path based on the robot's current position and the robot's current driving parameters, the method further includes: Acquire environmental information and determine obstacles around the robot based on the environmental information; Collision prediction is performed on the robot based on the obstacles distributed around it and the predicted driving direction of the predicted path.
4. The method as described in claim 3, characterized in that, The step of performing collision prediction for the robot based on obstacles distributed around the robot and the predicted driving direction of the predicted path includes: Based on the position of the obstacle relative to the robot, the number of obstacles, and the distance of the obstacle relative to the robot, determine the probability level of the robot colliding with the robot in the predicted driving direction of the predicted path; The warning level is determined based on the probability level, and the corresponding adjustment operation is performed.
5. The method as described in claim 1, characterized in that, The steps of predicting collisions to the robot in the predicted driving direction of the predicted path and controlling the robot's driving include: Acquire environmental information and identify target obstacles located in the predicted driving direction of the predicted path from the environmental information; When the distance between the target obstacle and the robot is greater than or equal to the safe distance, the robot's direction of travel is adjusted so that the robot travels toward the local path; When the distance between the target obstacle and the robot is less than a safe distance, the robot is controlled to brake and stop moving.
6. A robot driving control device, characterized in that, The device includes: The driving module is used to plan and output a local path based on the static path of the global static map and the environmental information acquired in real time, and control the robot to drive along the local path. The determination module is used to determine a predicted path based on the robot's current position and the robot's current driving parameters during the process of controlling the robot to travel along the local path. The control module is used to control the robot's movement based on the positional relationship between the local path and the predicted path; The step of controlling the robot's movement based on the positional relationship between the local path and the predicted path includes: Obtain at least a portion of the local path and fit it as a straight local path; Obtain at least a portion of the predicted path and fit it to a linear predicted path; When the angle between the local straight path and the predicted straight path is less than or equal to the first angle, it is determined that the robot's deviation from the local path is in a safe state, and the robot's direction of travel is adjusted so that the robot moves toward the local path. When the angle between the local straight path and the predicted straight path is greater than a first angle, it is determined that the robot's deviation from the local path is in a dangerous state. Collision prediction is then performed on the predicted driving direction of the robot on the predicted path, and the robot is controlled to drive.
7. A robot, characterized in that, The robot includes: a memory, a processor, and a robot driving control program stored in the memory and executable on the processor, wherein when the robot driving control program is executed by the processor, it implements the steps of any one of the robot driving control methods as claimed in claims 1 to 5.
8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a robot driving control program, which, when executed by a processor, implements the steps of the robot driving control method as described in any one of claims 1 to 5.
Citation Information
Patent Citations
Unmanned ship obstacle avoidance method and system based on collision danger coefficient
CN110906934A
Path planning method and device, robot and storage medium
CN113791616A
Robot control method, robot, control terminal and control system
CN113878577A
Automated car wash conveyor system and methods thereto
US20190061705A1