Robot driving control method, device and robot
By adjusting the obstacle-walking strategy and generating driving control strategy, the inefficient car meeting problem during robot path conflicts is solved, and the robot car meeting efficiency is improved.
Patent Information
- Application Number
- CN202410465771.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-17
- Publication Date
- 2025-08-15
- Estimated Expiration
- 2044-04-17
AI Technical Summary
In the case of complex and variable environment and large differences in channel widths, when robot paths in the prior art conflict, some robots will usually leave the original planned path and go to a far away avoidance area, seriously affecting the operation efficiency.
By determining the second robot with path conflict, determines the car meeting conditions based on the paths of itself and the second robot, adjusts the barrier-bending strategy to reduce the barrier-bending distance, obtains real-time status and generates a driving control strategy, and realizes efficient path adjustment when the robot meets.
It reduces the situation where one of the robots moves to the obstacle avoidance area first and stops driving when they meet, and improves the efficiency of the robots meet.
Smart Images

Figure CN118192602B_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of robotics technology, and in particular relates to a robot driving control method, device and robot. Background Art
[0002] With the development of science and technology, robots are gradually being used in people's lives, for example, in restaurants, hotels, hospitals, factories, etc. During these applications, multiple robots often operate simultaneously in the same environment, and their paths may conflict.
[0003] Especially in restaurants, where environments are complex and ever-changing, and aisle widths vary widely, some solutions, when two robots encounter a path conflict, often ignore the path conditions and the robots' real-time status and uniformly dispatch some robots to a more distant avoidance zone, severely impacting the robots' operational efficiency. Summary of the Invention
[0004] The embodiments of the present application provide a robot travel control method, device, and robot, which can adapt to the scheduling problem of the robot in a complex and changeable environment and with different channel widths.
[0005] A first aspect of an embodiment of the present application provides a robot travel control method, applied to a first robot, comprising:
[0006] determining a second robot having a path conflict;
[0007] When the preset meeting condition is determined to be met based on the robot's first path and the second path of the second robot, the robot enters the meeting state and adjusts the obstacle avoidance strategy to reduce the obstacle avoidance distance;
[0008] Obtaining a first real-time state of the robot itself and a second real-time state of the second robot;
[0009] generating a first driving control strategy according to the first real-time state and the second real-time state;
[0010] The vehicle is met according to the first driving control strategy.
[0011] A second aspect of the embodiments of the present application provides a robot travel control device, located on a first robot, comprising:
[0012] A second robot determining module, configured to determine a second robot having a path conflict;
[0013] A meeting condition determination module is configured to enter a meeting state and adjust an obstacle avoidance strategy to reduce an obstacle avoidance distance when determining that a preset meeting condition is met based on the first path of the robot itself and the second path of the second robot.
[0014] A real-time status acquisition module, configured to acquire a first real-time status of the robot itself and a second real-time status of the second robot;
[0015] a first driving control strategy generating module, configured to generate a first driving control strategy according to the first real-time state and the second real-time state;
[0016] The first driving control strategy meeting module is used to meet other vehicles according to the first driving control strategy.
[0017] A third aspect of an embodiment of the present application provides a robot, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the robot driving control method as described in the first aspect above is implemented.
[0018] A fourth aspect of an embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the robot driving control method as described in the first aspect above.
[0019] A fifth aspect of the embodiments of the present application provides a computer program product. When the computer program product is run on a computer, the computer is caused to execute the robot driving control method described in the first aspect.
[0020] Compared with the prior art, the embodiments of the present application have the following beneficial effects:
[0021] In an embodiment of the present application, the first robot determines that there is a path conflict with the second robot; when it determines that the preset meeting conditions are met based on its own first path and the second path of the second robot, the first robot enters a meeting state and adjusts the obstacle avoidance strategy to reduce the obstacle avoidance distance; obtains its own first real-time state and the second real-time state of the second robot; generates a first driving control strategy based on the first real-time state and the second real-time state; and meets the second robot according to the first driving control strategy, so that when there is a conflict between the initial paths currently traveled by the first robot and the second robot, the first driving control strategy is generated, and correspondingly, the second robot generates a third driving control strategy. Due to the adjustment of the obstacle avoidance strategy and the first robot and the second robot driving according to the first driving control strategy and the third driving control strategy respectively, the situation in which one of the two robots first moves to an obstacle avoidance area and stops driving when it needs to meet, and resumes driving from the obstacle avoidance area after the other passes is reduced, thereby improving the meeting efficiency of the robots. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the embodiments or descriptions of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0023] Figure 1 is a schematic diagram of a robot driving control method provided in an embodiment of the present application;
[0024] Figure 2 This is an example flow chart of a robot driving control provided by an embodiment of the application;
[0025] Figure 3 is a schematic diagram of another robot travel control method provided in an embodiment of the present application;
[0026] Figure 4 This is a schematic diagram of position adjustment provided by an embodiment of the present application;
[0027] Figure 5 is a schematic diagram of another robot travel control method provided in an embodiment of the present application;
[0028] Figure 6 This is a discounted road meeting schematic diagram provided by an embodiment of the present application;
[0029] Figure 7 This is another discounted road meeting schematic diagram provided by an embodiment of the present application;
[0030] Figure 8 This is a schematic diagram of a vehicle passing in a width-varying channel provided by an embodiment of the present application;
[0031] Figure 9 This is a schematic diagram of a road intersection provided by an embodiment of the present application;
[0032] Figure 10 This is another intersection meeting schematic diagram provided by an embodiment of the present application;
[0033] Figure 11 This is a schematic diagram of continuous meeting provided by an embodiment of the present application;
[0034] Figure 12 Schematic diagram of the structure of the robot travel control device provided in an embodiment of the present application;
[0035] Figure 13 It is a schematic diagram of the structure of the robot provided in the embodiment of the present application. DETAILED DESCRIPTION
[0036] In the following description, specific details such as specific system structures and techniques are provided for purposes of illustration rather than limitation to facilitate a thorough understanding of the embodiments of the present application. However, it will be apparent to those skilled in the art that the present application may be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to avoid obscuring the description of the present application with unnecessary detail.
[0037] It should be understood that when used in the present specification and the appended claims, the term "comprising" indicates the presence of described features, integers, steps, operations, elements and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and / or collections thereof.
[0038] It will also be understood that the term "and / or" used in this specification and the appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.
[0039] As used in this specification and the appended claims, the term "if" can be interpreted as "when" or "upon" or "in response to determining" or "in response to detecting," depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "upon determination" or "in response to determining" or "upon detection of [described condition or event]" or "in response to detecting [described condition or event]," depending on the context.
[0040] In addition, in the description of the present application specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance.
[0041] References to "one embodiment" or "some embodiments" in this specification mean that a particular feature, structure, or characteristic described in conjunction with that embodiment is included in one or more embodiments of the present application. Thus, phrases such as "in one embodiment," "in some embodiments," "in other embodiments," and "in other embodiments" appearing in various places in this specification do not necessarily refer to the same embodiment, but rather mean "one or more but not all embodiments," unless otherwise specifically emphasized. The terms "including," "comprising," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized.
[0042] A robot can be equipped with a drive assembly that enables it to travel in different ways. In some scenarios (including but not limited to hotels and restaurants), the robot needs to travel to a designated location to complete a task, for example: transporting an object from a hotel front desk to a designated room, or traveling from another location to a restaurant kitchen to receive food and then transport it to a designated table. Different robots may be operating at the same time. If different robots need to meet each other during their respective travels, the travel control strategy during the meeting process will directly affect the robots' operating efficiency. To this end, an embodiment of the present application provides a robot travel control method to improve the robot's meeting efficiency.
[0043] The robots involved in the embodiments of this application can use their own computing resources and installed sensing devices to complete information collection, path planning, and path updates. The robots can communicate with other robots in a network architecture without a central node, and the robots can also communicate with each other through a commonly connected server. The technical solution of this application is illustrated below through specific embodiments.
[0044] Reference Figure 1 , which shows a schematic diagram of a robot driving control method provided by an embodiment of the present application. The embodiment of the present application can be applied to a first robot and can specifically include the following steps:
[0045] Step 101, determining a second robot with a path conflict;
[0046] Before a robot moves, it typically plans a path based on its current position and target position (its intended destination) according to pre-set rules, and then travels along the resulting planned path. While the first robot is moving, it can identify a second robot with a conflicting path through various methods. For example, a sensor can be used to detect the presence of a second robot in its path, thereby determining whether the second robot and the first robot are in conflict. A second robot is a robot other than the first robot.
[0047] Exemplarily, near-field communication (e.g., MSEH communication) can be used to determine whether a second robot is on its path. For example, multiple robots can operate in the same restaurant. When within communication range, the first robot can send its own position and path information to the other robots, and simultaneously receive the position and path information of the other robots. By determining whether there is any overlap in their paths to be traveled, it can be determined whether there is a path conflict. The path information of the first robot, i.e., the first path, can be the planned path when the robot departs, or the robot's latest planned path.
[0048] For example, a path conflict occurs when the first and second robots follow their respective paths and encounter an intersection. The first path is the path currently being traveled by the first robot, and the second path is the path currently being traveled by the second robot. The first robot can communicate its current path to the second robot.
[0049] Step 102: When it is determined that the preset meeting condition is met based on the first path of the robot itself and the second path of the second robot, the robot enters a meeting state and adjusts the obstacle avoidance strategy to reduce the obstacle avoidance distance.
[0050] The first robot can determine whether a preset meeting condition is met based on the first and second paths. If the first and second paths meet the meeting condition, the two robots enter a meeting state. Correspondingly, the second robot can also enter a meeting state if the first and second paths determine that the meeting condition is met.
[0051] In general, to avoid collisions between robots and other objects, an obstacle avoidance strategy is set for the robot. For example, the obstacle avoidance strategy can mean that the distance between the robot and the obstacle during driving is not less than a preset obstacle avoidance distance. By setting the obstacle avoidance strategy, the robot can avoid the obstacle through local path planning when it detects an obstacle, that is, avoid the object when it is a certain distance away from other objects, and needs to travel a certain distance from the wall, resulting in the robot's drivable path width being less than the actual width. In some scenarios (such as hotels and restaurants mentioned above), if two robots need to meet, the actual width may be only slightly larger than the sum of the widths of the two robots, resulting in both robots being unable to complete the meeting according to the original obstacle avoidance strategy. In turn, when the two robots need to meet, one of them may first move to an obstacle avoidance area and stop driving, and then resume driving from the obstacle avoidance area after the other passes. In an embodiment of the present application, to avoid inefficient meeting of robots under the control of the obstacle avoidance strategy, when it is determined that the first path and the second path meet the meeting conditions, the obstacle avoidance strategy is adjusted, for example, by reducing the obstacle avoidance distance. For example, in a non-meeting state, the robot's obstacle avoidance distance can be 20cm. Dynamic or static obstacles within 20cm are avoided. In a meeting state, the obstacle avoidance distance can be adjusted to 10cm, reducing the total width required for the robot to pass through, making it more adaptable to narrow roads. For example, in a meeting state, the obstacle avoidance strategy can be disabled, reducing the obstacle avoidance distance to 0, to maximize adaptability to narrow roads.
[0052] Step 103, obtaining a first real-time state of the robot itself and a second real-time state of the second robot;
[0053] After the first robot determines that it has entered the meeting state, it determines its own first real-time state and communicates with the second robot (or communicates with the server) to obtain the second real-time state of the second robot.
[0054] Step 104: generating a first driving control strategy according to the first real-time state and the second real-time state;
[0055] The real-time state may include the current state of the robot related to the oncoming vehicle, such as position state, time state, speed state, etc. A first driving control strategy for oncoming vehicles is generated based on the robot's first real-time state and the real-time state of the second robot.
[0056] Step 105: performing a vehicle-meeting operation according to the first driving control strategy.
[0057] The first driving control strategy includes driving control information for the first robot, and the first robot meets other vehicles in response to the first driving control strategy.
[0058] It is understood that during the meeting process, the first and second robots must both follow a specific driving control strategy to complete the meeting. Therefore, the second robot also performs steps 101-102 and, after obtaining the first real-time state of the first robot, generates a third driving control strategy based on its own second real-time state and first real-time state. The first robot drives according to the first driving control strategy, and the second robot drives according to the third driving control strategy to complete the meeting.
[0059] For example, after determining that the first driving control strategy corresponds to the third driving control strategy, the first robot drives according to the first driving control strategy and the second robot drives according to the third driving control strategy, ensuring that the driving strategies correspond, avoiding abnormal situations where both parties are waiting, and further improving the efficiency of meeting.
[0060] That is, while the first robot generates a first driving control strategy, the second robot can generate a third driving control strategy corresponding to the first driving control strategy. This allows the first robot to pass the second robot while the first robot drives according to the first driving control strategy and the second robot drives according to the third driving control strategy. The second robot's generation of the third driving control strategy can be referenced to the description of the first robot's generation of the first driving control strategy, and will not be further elaborated.
[0061] In the application embodiment, the first robot determines that there is a path conflict with the second robot; when it determines that the preset meeting conditions are met based on its own first path and the second path of the second robot, the first robot enters a meeting state and adjusts the obstacle avoidance strategy to reduce the obstacle avoidance distance; obtains its own first real-time state and the second real-time state of the second robot; generates a first driving control strategy based on the first real-time state and the second real-time state; and meets the second robot according to the first driving control strategy, so that when there is a conflict between the initial paths currently traveled by the first robot and the second robot, the first driving control strategy is generated, and correspondingly, the second robot generates a third driving control strategy. Due to the adjustment of the obstacle avoidance strategy and the first robot and the second robot driving according to the first driving control strategy and the third driving control strategy respectively, that is, driving decisions are made according to the path conditions and real-time states of the robots, the situation in which one of the two robots first moves to an obstacle avoidance area and stops driving when it needs to meet, and then resumes driving from the obstacle avoidance area after the other passes is reduced, thereby improving the meeting efficiency of the robots.
[0062] Reference Figure 2 , shows an example flow chart of a robot driving control provided by an embodiment of the application; in one example, the robot implements driving control and completes the meeting through the following steps, including:
[0063] Step 201, obtain basic information of the local machine; the basic information includes path information (the first path as described above);
[0064] Step 202, determine whether there is a conflict between the robot and its own path; if so, execute step 203;
[0065] Step 203, determine whether the meeting condition is met; if so, execute steps 204-205;
[0066] Step 204: Control the speed (e.g., including speed magnitude and speed direction) according to the generated driving control strategy (the first driving control strategy described above);
[0067] Step 205 , determining whether the meeting is completed; if not, returning to step 204 , if yes, determining that the meeting is completed.
[0068] Through the above steps, the robot can monitor the robots that conflict with its own path and generate corresponding driving control strategies to meet the vehicles until the meeting is completed.
[0069] Reference Figure 3 , which shows a schematic diagram of another robot travel control method provided by an embodiment of the present application. The embodiment of the present application can be applied to a first robot and may specifically include the following steps:
[0070] Step 301, determining a second robot with a path conflict;
[0071] Step 302: When it is determined that a preset meeting condition is satisfied based on the robot's first path and the second path of the second robot, the robot enters a meeting state and adjusts the obstacle avoidance strategy to reduce the obstacle avoidance distance. The first path includes a first current position, and the second path includes a second current position. The preset meeting condition may include: the distance between the first current position and the second current position satisfies a preset distance range, the first path and the second path have a conflicting target area, the target area is located between the first current position and the second current position, and the width of at least part of a continuous area within the target area is greater than a first width value.
[0072] The first and second robots may pre-store static map information of their drivable areas. The first and second positions are the coordinates of the first and second robots in the static map information, respectively, which may be relative or absolute coordinates. After obtaining the first and second paths, the distance between the first and second positions may be calculated to determine whether the distance is within a preset distance range. A target area where the first and second paths conflict is determined to be located between the first and second positions, and the width of at least a portion of a continuous area within the target area is greater than a first width value, to ensure that the first and second robots can pass each other between the target areas.
[0073] The preset distance range can be determined based on one or more of the actual scenario, robot performance, robot operational needs, or other factors. For example, when a robot is transporting food, it is necessary to limit the robot's speed change to prevent food from spilling from the plate. During the process of meeting other vehicles, it may also be necessary to adjust the position and speed by setting the lower limit of the distance range to prevent affecting the transportation of food; if the distance between the two robots is greater than the upper limit of the preset distance range, the robots can continue to drive according to the original plan.
[0074] Exemplarily, the preset distance range can be determined based on the braking distance of the robot and the adjustment distance required to pull over. In a specific example, the direction of the machine pulling over when meeting is pre-set. For example, if it is set to drive on the right, the machine will try to drive to the right side of the route to complete the pull-over. At this time, if the robot is triggered from the left side of the route to enter the meeting state, it needs to adjust to the right, which requires a distance of about 1.5 meters. Considering the extreme scenario, a 3-meter adjustment distance is required between the two machines; in the last 3 meters, if the machine speed is already at the maximum, it takes 1.5 meters to brake. Therefore, 4.5 meters can be the lower limit of the distance range for the two machines to meet. 7 meters can be the upper limit of the distance range. If it exceeds 7 meters, there is no need to enter the meeting state. According to the above scenario, if the distance is less than the lower limit of the distance range of 4.5 meters, for example, 4 meters triggers an oncoming vehicle. In the extreme scenario, the machine needs to adjust to the corresponding position with 1 meter left and the speed is maximum. At this time, if a sudden situation affects the oncoming vehicle, the machine needs to brake. While ensuring stable food delivery, the braking distance needs to be about 1 meter. The total braking distance of 2 meters for the two robots is already greater than 2 meters, which will cause sudden braking and affect the quality of delivery.
[0075] The meeting condition also requires that at least a portion of the target area's continuous area be no less than a first width, and that the first width be no less than the sum of the maximum widths of the first and second robots. During a meeting, the target area must be wider than the sum of the widths of the two robots, ensuring that at least a portion of the area is available for both robots to meet, allowing one robot to stop while the other moves forward.
[0076] The width of the target area can be determined based on the first or second path. The first and second paths include the width of each path point. The first robot can combine the first position, second position, and first path to determine the width of each location in the target area. Similarly, the second robot can combine the first position, second position, and second path to determine the width of each location in the target area.
[0077] It can be understood that the length of the target area also needs to be no less than the sum of the lengths of the first robot and the second robot.
[0078] The percentage of continuous areas that are at least the first width can be set based on the actual scenario or robot performance (e.g., distance control accuracy). For example, if the first robot has a width of 0.5 meters and the second robot has a width of 0.7 meters, the passing condition can be set to include: at least 75% of the continuous area in the target area must be at least 1.5 meters.
[0079] In an optional embodiment of the present application, before step 302, the following steps may be included: when the distance between the first current position and the second current position satisfies the adjustment distance range, and the current driving strategy of the first robot is inconsistent with the side, the first robot is controlled to drive toward the side, and the adjustment distance range is greater than the preset distance range.
[0080] An adjustment distance range greater than the preset distance range is pre-set. For example, if the preset distance range is 4-7 meters, the adjustment distance range may be 7-8.5 meters. It will be understood that 7-8.5 meters is merely an example, and the adjustment distance range may also be other distance ranges, as long as the adjustment distance range is greater than the preset distance range.
[0081] When the distance between the current positions of the first robot and the second robot is within the adjusted distance range, for example, when the distance between the first robot and the second robot is determined to be 8.5 meters, it is determined that the first robot and the second robot are about to meet. Then, it is determined whether the current driving strategy of the first robot is consistent with the designated pull-over side. The current driving strategy may include, but is not limited to, driving in the center, driving on the left, and driving on the right. The designated pull-over side may be one of the left side or the right side. If the current driving strategy is inconsistent with the designated pull-over side, for example, the current driving strategy is driving in the center and the designated pull-over side is the right side, then the current driving strategy is inconsistent with the designated pull-over side, and the first robot is controlled to drive toward the designated pull-over side.
[0082] Similarly, when the distance between the first current position and the second current position satisfies the adjustment distance range and the current driving strategy of the second robot is inconsistent with the side, the second robot drives toward the side.
[0083] By setting the adjustment distance range, the first robot and the second robot can drive to their respective designated side in advance before entering the preset distance range and entering the meeting state, so that the first robot and the second robot can complete the position adjustment earlier, making the subsequent meeting process more streamlined and further improving the success rate of meeting.
[0084] Step 303, obtaining the first real-time state of the robot itself and the second real-time state of the second robot; the real-time state may include a position state and a route state. If the current position of the robot is on the designated side of the channel, the position state is determined to be safe. If there is a passable route within a preset distance in front of the robot, the route state is determined to be a meeting route.
[0085] The designated side is the preset side of the robot that approaches the passageway when traveling. If the robot's current position is on the designated side of the passageway when entering the meeting state, its position status is safe. If the robot's current position is not on the designated side of the passageway, such as in the middle of the passageway or on the other side of the designated side, its position status is unsafe.
[0086] For example, if the right side is specified as the pull-over side, the robot will maintain a safe distance from the right side of the aisle and drive close to it. When entering the oncoming state, if the robot is currently on the right side of the aisle when entering the oncoming state, its position status is safe. If the robot is not on the specified pull-over side when entering the oncoming state, for example, on the left or middle of the aisle, its position status is unsafe.
[0087] For example, the robot can be driven in the center by default. When the robot just enters the state of meeting other vehicles, if the current position is not on the designated side of the channel, it can adjust its position by moving forward and gradually approaching the designated side. After driving forward a certain distance, the position state and route state are re-determined. For example: Figure 4 , shows a schematic diagram of position adjustment provided by an embodiment of the present application. When entering the oncoming state, robot A is located in the solid-line frame, and its position status is currently unsafe. Robot A can adjust its speed to move to the dashed-line frame, and its position status is currently safe. The distance that can be traveled during position adjustment is determined based on the preset distance range, robot performance, and robot operational requirements, and is not limited in this embodiment.
[0088] In one embodiment, the obstacle avoidance strategy is adjusted to disable the obstacle avoidance strategy, i.e., the obstacle avoidance distance is reduced to zero. Since the obstacle avoidance strategy is disabled, the robot must attempt to regenerate a meeting route through the target area. If a passable route exists within a preset distance ahead of the robot, the route status is determined to be a meeting route exists, meaning the robot can proceed forward and pass through the target area. If no passable route exists within the preset distance, the route status is determined to be a meeting route does not exist, meaning the robot cannot proceed forward through the target area.
[0089] To minimize collisions with other objects (including other robots), the generated meeting path is closer to the edge of the passage than the initial path. For example, if the first robot's initial path is 15 cm from the right wall of the passage or a virtual wall, the generated meeting path will be closer to the right wall of the passage than the initial path. If there is a passable path within a preset distance in front of it, the distance from the right wall of the passage will be less than 15 cm, such as 10 cm or 5 cm.
[0090] The preset distance can be determined based on the distance of the target area in the direction of robot travel. In one example, the preset distance is no less than the distance of the target area in the direction of robot travel. In another example, to prevent obstacles near the edge of the target area from affecting the robot's travel, a redundant distance is added to the aforementioned distance of the target area in the direction of robot travel to determine the preset distance.
[0091] Exemplarily, due to the shielding obstacle avoidance strategy, the above-mentioned passable route may refer to a route for straight-line driving. The robot can determine whether there is a passable route by determining whether there are obstacles that affect straight-line driving within a preset distance. Specifically, if there are obstacles that affect its straight-line driving within a preset distance in front of the robot, it is determined that there is no passable route; if there are no obstacles that affect its straight-line driving within a preset distance in front of the robot, it is determined that there is a passable route. In addition, the robot can determine whether there is an obstacle based on its own sensing range, or by combining its own sensing range with the sensing range of another robot. It only needs to be that the robot that is meeting the vehicle can accurately determine whether there is an obstacle within the preset range in front of it. The method of sensing the obstacle does not affect the implementation of the embodiments of the present application.
[0092] Step 304: generating a first driving control strategy according to the first real-time state and the second real-time state;
[0093] Depending on the difference between the first real-time status and the second real-time status, step 304 may specifically include one of the following:
[0094] 1. If both the first real-time status and the second real-time status include that the current position is safe and that a meeting route exists, the first driving control strategy includes continuing driving along the meeting route.
[0095] If the position states of the first robot and the second robot are both safe, and the route states both indicate that a meeting route exists, a first driving control strategy including driving along the meeting route is generated, that is, the first robot and the second robot each drive along their own meeting route until the meeting is completed.
[0096] The first robot and the second robot may detect the topological paths between the current position and the target position at a certain frequency during the meeting process, and determine that the meeting is completed when it is determined that there is no conflict between the topological paths of the first robot and the second robot.
[0097] 2. If the first real-time status includes that the current position is safe and a passing route exists, and the second real-time status includes that the current position is safe and no passing route exists, then the first driving control strategy includes a recovery obstacle avoidance strategy.
[0098] If the position states of the first robot and the second robot are both that the current positions are safe, and the route states of the first robot are that there is a passing route, and the route state of the second robot is that there is no passing route, then the first robot generates a first driving control strategy including a strategy for recovering the obstacle avoidance, and the second robot generates a third driving control strategy for stopping driving, so that when the second robot cannot drive forward, the obstacle avoidance strategy of the first robot is recovered, and after the first robot passes the current position of the second robot, the second robot replans the path according to its current position and target position and drives.
[0099] Conversely, if the first real-time status includes that the current position is safe and there is no oncoming route, and the second real-time status includes that the current position is safe and there is a oncoming route, the first robot generates a first control strategy to stop driving, and the second robot generates a third driving control strategy to resume the obstacle avoidance strategy.
[0100] 3. If both the first real-time status and the second real-time status include that the current position is unsafe, the current channel width is obtained. When the channel width is greater than the second width value, the first driving control strategy includes waiting for the second robot to pass. When the channel width is less than or equal to the second width value, the meeting state is exited, and the first driving control strategy includes going to an avoidance point to avoid or waiting for the second robot to go to an avoidance point to avoid.
[0101] If both the first real-time state and the second real-time state include the current position being unsafe (for example, the two robots are in the opposite position to the designated side after just entering the meeting state, or are pressed against the center line (such as Figure 4 In the scenario (shown by the straight dotted line), it is determined whether the width of the channel is greater than the second width value.
[0102] If the width of the channel is greater than the second width value, the first robot generates a first driving control strategy to wait in place for the second robot to pass, and the second robot generates a third driving control strategy to pass through the first robot, so that the second robot re-plans the path for its target position after passing the position of the first robot, and the first robot plans the path for its own target position after the second robot passes its position.
[0103] In another embodiment, when it is determined that the channel width is greater than the second width value, the first robot generates a first driving control strategy of driving past the second robot, and the second robot generates a third driving control strategy of waiting in place for the first robot to pass.
[0104] The second width value is greater than the first width value, and it is only necessary to satisfy the requirement that when the channel width is determined to be greater than the second width value, a first driving control strategy is generated in which one of the two robots waits in place for the other robot to pass, and the two robots can complete the meeting according to the first driving control strategy. The specific value of the second width value does not affect the implementation of the embodiment of the present application.
[0105] Specifically, if the route status in the first real-time state and the second real-time state is the same, the first driving control strategy of the first robot is to wait for the second robot in place, or the third driving control strategy of the second robot is to wait for the first robot in place; if the route status in the first real-time state and the second real-time state is different, the first driving control strategy and the third driving control strategy are matched with the robot without route status waiting in place for the robot with a meeting route.
[0106] The robot that does not need to wait in place can follow the oncoming route (if any) or resume the obstacle avoidance strategy. If the robot waiting in place is on its initial path, it can continue to follow the initial path after the other robot passes it.
[0107] If the channel width is less than or equal to the second width value, the robot exits the meeting state and determines whether there is an avoidance point in the target area. If so, the first robot generates a first driving control strategy in which it either proceeds to the avoidance point or waits for the second robot to proceed to the avoidance point. Correspondingly, the second robot generates a third driving control strategy in which it waits for the first robot to proceed to the avoidance point or proceeds to the avoidance point itself. This ensures that when one of the first and second robots reaches the avoidance point and waits there, the other robot can pass the waiting robot without entering the area where the avoidance point is located. For example, the first robot may reach the avoidance point and stop, while the second robot passes the first robot outside the avoidance point and replans its path. After the second robot passes the avoidance point, the first robot replans its path based on its current position and the target position. Similarly, the second robot may reach the avoidance point and stop, while the first robot passes the second robot outside the avoidance point and replans its path. After the first robot passes the avoidance point, the second robot replans its path based on its current position and the target position.
[0108] If there is no avoidance point in the target area, one of the first robot and the second robot will drive to a preset avoidance area outside the target area, stop and re-plan the path. When the other robot passes the target area and does not conflict with the planned path, the robot in the avoidance area will drive according to the planned path.
[0109] In one embodiment, when a first robot and a second robot are about to meet or are in the process of meeting, the route status of one robot may change from "Meeting Route Existed" to "Meeting Route Not Existed." For example, a dynamic obstacle may prevent one robot from continuing along the traversable route, resulting in the robot's route status changing to "Meeting Route Not Existed." In this situation, smooth passage between the two robots cannot be guaranteed. In this case, the first control strategy needs to be adjusted so that the robot with the "Meeting Route Not Existed" route status waits for the other robot to pass before resuming the obstacle avoidance strategy.
[0110] In another embodiment, when a first robot and a second robot are about to meet or are in the process of meeting, a situation may occur in which the route status of both robots changes from existing a meeting route to not existing a meeting route. For example, a dynamic obstacle may appear in front of both robots, preventing them from following a passable route. In this case, if the area between the two robots is less than or equal to the second width, the first driving control strategy is adjusted to include moving to an avoidance point or waiting for the second robot to move to an avoidance point.
[0111] Step 305: Meet other vehicles according to the first driving control strategy.
[0112] The first driving control strategy includes driving control information for the first robot, and the first robot responds to the first driving control strategy to meet the first robot. The second robot generates a third driving control strategy, which includes driving control information for the second robot, and the second robot responds to the third driving control strategy to meet the first robot.
[0113] In an embodiment of the present application, when determining that there is a path conflict with the second robot, the first path of the robot itself and the second path of the second robot are obtained; when it is determined that the preset meeting conditions are met according to the first path and the second path, the robot enters the meeting state and shields the obstacle avoidance strategy; the first path includes the first current position, and the second path includes the second current position; the preset meeting conditions include: the distance between the first current position and the second current position meets the preset distance range, and there is a target area where the first path and the second path conflict, the target area is located between the first current position and the second current position, and the width of at least part of the continuous area in the target area is greater than the first width value; the first real-time state of the robot itself and the second real-time state of the second robot are obtained; the real-time state includes the position state and the route state. If the current position of the robot is at the designated side of the channel, the position state is determined to be the current position safe. If there is a passable route within a preset distance in front of the robot, the route state is determined to be that there is a meeting route; based on the first real-time state and the second real-time state, a first driving control strategy is generated; according to the first driving control strategy, the meeting is performed, and the second robot generates a third driving control strategy and performs the meeting according to the third driving control strategy. In the embodiment of the present application, when the first robot and the second robot meet the preset distance range based on their respective current positions and at least part of the continuous area in the target area between the two robots is greater than the first width value, the first robot enters the meeting state and shields the obstacle avoidance strategy, and generates the first driving control strategy based on whether the position state of the first robot and the second robot is safe at the current position and whether there is a meeting route in the route state, and adopts the first driving control strategy to control the first robot in multiple real-time states to meet the vehicle, thereby improving the meeting efficiency of the robot.
[0114] Reference Figure 5 , which shows a schematic diagram of another robot travel control method provided by an embodiment of the present application. The embodiment of the present application can be applied to the first robot and can specifically include the following steps:
[0115] Step 501, determining a second robot with a path conflict;
[0116] Step 502: When it is determined that the preset meeting condition is met based on the first path of the robot itself and the second path of the second robot, the robot enters the meeting state and adjusts the obstacle avoidance strategy to reduce the obstacle avoidance distance.
[0117] Step 503: Obtain static map information;
[0118] The first robot and the second robot may pre-store static map information of their drivable areas, where the static map information contains information related to the drivable areas, such as channel shape, channel width, channel slope, avoidance area, speed limit, etc.
[0119] Step 504: determining whether the environment of the robot and the second robot matches a preset feature scene based on the static map information;
[0120] Based on the first path, the second path, and the static map information, a determination is made as to whether the environment in the area between the first robot and the second robot matches a preset characteristic scene. A characteristic scene corresponds to a specific channel shape, such as a curve or intersection.
[0121] If the environment where the robot and the second robot are located does not match the preset feature scene, then execute steps 505-507; if the environment where the robot and the second robot are located does match the preset feature scene, then execute steps 508-509;
[0122] Step 505, obtaining a first real-time state of the robot itself and a second real-time state of the second robot;
[0123] Step 506: generating a first driving control strategy according to the first real-time state and the second real-time state;
[0124] Step 507: performing a meeting according to the first driving control strategy;
[0125] Step 508: determining a second driving control strategy corresponding to the characteristic scenario;
[0126] A meeting mode corresponding to the characteristic scene is preset, and a second driving control strategy is generated by combining the current positions of the first robot and the second robot and the corresponding meeting mode.
[0127] Step 509: performing the meeting according to the second driving control strategy.
[0128] When meeting other vehicles, this embodiment first determines a characteristic scenario. If the scenario is a characteristic scenario, the generated second driving control strategy is used to meet the other vehicles. This ensures that when it is determined that the environments of the first and second robots match the preset characteristic scenarios, the meeting is prioritized according to the meeting method corresponding to the characteristic scenarios, thereby improving the efficiency of meeting in specific environments.
[0129] The second driving control strategy includes driving control information for the first robot, and the first robot responds to the second driving control strategy when meeting the vehicle. When the first robot generates the second driving control strategy, the second robot generates a fourth driving control strategy, so that the first robot can complete the meeting when driving according to the second driving control strategy and the second robot drives according to the fourth driving control strategy.
[0130] The second robot generates the fourth travel control strategy by referring to the description of the first robot generating the second travel control strategy, which will not be repeated here.
[0131] In an optional embodiment of the present application, the feature scene includes a broken line channel, referring to Figure 6 , showing a schematic diagram of a discounted road meeting provided by an embodiment of the present application; the broken line channel includes a corner; step 508 includes: when detecting that the robot itself and the second robot are on different sides of the corner, adjusting the driving speed; so that the robot itself and one of the second robots are on the same straight road after passing the corner; driving towards the second robot and passing the second robot.
[0132] Generally, on a discounted road, if the two sides of a corner are straight or approximately straight passages, and the environment of the first and second robots is a broken-line passage, that is, the two robots are located in straight passages on either side of a corner at a certain angle (e.g., less than 120 degrees), the two robots' environments are determined to match the discounted passage. The second driving control strategy includes waiting for the second robot to be on the same side of the corner as the robot before meeting the other robot, and the fourth driving control strategy includes driving to the same side of the corner as the first robot before meeting the other robot. Alternatively, the second driving control strategy includes driving to the same side of the corner as the second robot before meeting the other robot, and the fourth driving control strategy includes waiting in place for the first robot to be on the same side of the corner as the second robot before meeting the other robot.
[0133] For example: As shown in 6, robot A can wait in place (or slow down), refer to Figure 7 , shows another schematic diagram of meeting on a zigzag road provided by an embodiment of the present application. When the second robot B passes the corner at the original speed (or accelerates) and is located on the same straight channel as the first robot, robots A and B travel towards each other and meet.
[0134] Furthermore, when robot A and robot B are located on the same straight channel, they can meet each other by referring to steps 101-105 or steps 301-305 of the above embodiment, which will not be repeated here.
[0135] In an optional embodiment of the present application, the feature scene includes a width change channel; step 508 includes: determining the width change information of the width change channel based on the static map information; determining an avoidance point along the current driving direction according to the width change information; and adjusting the driving speed to intersect with the second robot at the avoidance point.
[0136] Reference Figure 8 , showing a schematic diagram of a width-variable channel meeting provided by an embodiment of the present application. The drivable area may also include width-variable channels. Such roads are not always wide enough for two robots to pass side by side, making it possible for both robots to pass in a relatively narrow area, leaving insufficient space between them for both robots to pass side by side.
[0137] The second driving control strategy may include driving to a meeting point determined according to the width change information to meet other vehicles. Correspondingly, the fourth driving control strategy may include driving to a meeting point determined according to the width change information to meet other vehicles. The second driving control strategy is adjacent to the meeting point position in the fourth driving control strategy.
[0138] For example: Figure 8 As shown, the first robot determines the first meeting point P1 and the second meeting point P2 according to the width change information. The first robot and the second robot adjust their own speeds so that the second robot is located at the meeting point P2 before the first robot moves forward at the position of point P1. The two robots complete the meeting at a position in the width change channel where the width satisfies the parallel position of the two robots. The dotted box is used to represent the position of the robot when it drives to the corresponding meeting point.
[0139] In an optional embodiment of the present application, the feature scene includes an intersection; the step 508 includes: determining a first priority according to the time when the robot arrives at the intersection; obtaining the second priority of the remaining robots located at the intersection; when the first priority is greater than the second priority, driving towards the second robot and passing the second robot.
[0140] The drivable area may include intersections, including but not limited to intersections, T-junctions, and M-junctions. For example, if a first robot detects that the path of a third robot intersects its current path at a certain location (e.g., the angle of intersection between the two paths is slightly less than 90 degrees, such as 88 degrees), the first robot and the second robot may be determined to be in an intersection. The second driving control strategy may include prioritizing passing vehicles based on the time of entry into the intersection. Correspondingly, the fourth driving control strategy may include prioritizing passing vehicles based on the time of entry into the intersection.
[0141] The first robot can determine its first priority based on its arrival time at the intersection, and then obtain and compare the second priorities of other robots at the same intersection (including robots waiting to meet vehicles and robots not waiting to meet vehicles). If the first priority is lower than the second priority, the first and second robots will wait at the intersection. If the first priority is higher than the second priority, that is, the first robot's priority is higher than the other robots' priorities, the first and second robots will proceed to meet at the intersection.
[0142] Take the intersection as an example, refer to Figure 9 , shows a schematic diagram of a road intersection meeting provided by an embodiment of the present application; when robots A and B arrive at the intersection, their priorities are lower than those of robots C and D that have arrived at the intersection earlier, so robots A and B wait at the intersection. Figure 10, showing another intersection meeting schematic diagram provided by an embodiment of the present application; until robots C and D complete the meeting, robots A and B continue to meet.
[0143] In addition, the channels at the intersection can be divided into a first channel and other channels that intersect with the channel at the intersection. When the first priority is lower than the second priority, the first robot is determined to be in the first channel. When there are no robots in other channels whose driving path intersects with the first robot's own, the first robot and the second robot begin to meet. That is, when the first robot arrives at the intersection, it can determine that it is in the first channel. When the driving paths of robots in other channels do not conflict with its own driving path, the first robot begins to meet the second robot.
[0144] The robot's drivable area may contain numerous intersections and a large number of robots. This often results in multiple robots exiting an intersection and needing to meet other vehicles, which can easily cause the vehicles to enter the middle of the intersection, leading to a jam. By implementing the aforementioned second driving control strategy for preemptive intersections, other robots wait outside the intersection, ensuring smooth meeting and no jamming.
[0145] In the prior art, since the initial paths of different robots may intersect at the intersection, the width of the sub-area of the initial path at the intersection is smaller than the actual drivable width, for example: Figure 9 As shown, the initial path of robots A and B at the intersection sub-area Aere1 has a width of W1. If it is determined that no robots have entered sub-area Aere1 from other channels (for example, if no robots are in channels other than the first channel, or if robots in other channels have already completed their meeting, or if robots in other channels have stopped traveling), sub-area Aere1 can be expanded to Aere2, increasing its width to W2. This prevents the possibility of failing to complete the meeting due to the width of sub-area Aere1 being less than the actual passable width. W2 can be determined based on the sum of the widths of robots A and B, ensuring that W2 is no less than the sum of the widths of robots A and B. W2 can also be determined based on the width of the channels before robots A and B enter the intersection area.
[0146] In an optional embodiment of the present application, the method further includes: upon detecting a third robot in a meeting state within a second preset distance ahead, following the third robot; the third robot is a robot traveling in the same direction as the robot itself.
[0147] Before step 501, the first robot can also monitor whether there is a third robot in the second preset distance in front of it and traveling in the same direction as itself, and if so, follow the third robot to travel. Since the third robot needs to meet the third robot, the first robot needs to meet the third robot after the third robot has completed the meeting. At this time, it can follow the third robot to travel, and the first robot, the third robot and the robot in the opposite direction have completed the meeting. The second preset distance can be determined according to the actual scenario, and is not limited in the embodiment of the present application. Figure 11 , shows a schematic diagram of a continuous meeting provided by an embodiment of the present application; robots A and D are in a meeting state. When robots C and B detect robot A traveling in the same direction and in a meeting state, robots B and C each follow robot A in turn. When robot E detects robot D traveling in the same direction and in a meeting state, robot E follows robot D in its turn.
[0148] In the above embodiment, the first robot and the second robot are only used to distinguish different robot individuals. Those skilled in the art will understand that the above method is also applicable to the second robot. When the embodiment of the present application is applied to the second robot, the main difference lies in the different subjects executing the embodiment. The second robot implements the above process similarly to the first robot, and will not be repeated here.
[0149] Reference Figure 12 , shows a schematic diagram of a robot driving control device provided in an embodiment of the present application. The device is located in a first robot and may specifically include a second robot determination module 1201, a meeting condition determination module 1202, a real-time status acquisition module 1203, a first driving control strategy generation module 1204, and a first driving control strategy meeting module 1205, wherein:
[0150] A second robot determining module 1201 is configured to determine a second robot having a path conflict;
[0151] The meeting condition determination module 1202 is configured to enter a meeting state and adjust the obstacle avoidance strategy to reduce the obstacle avoidance distance when determining that a preset meeting condition is met based on the first path of the robot itself and the second path of the second robot.
[0152] A real-time status acquisition module 1203 is configured to acquire a first real-time status of the robot itself and a second real-time status of the second robot;
[0153] A first driving control strategy generating module 1204 is configured to generate a first driving control strategy according to the first real-time state and the second real-time state;
[0154] The first driving control strategy meeting module 1205 is configured to meet other vehicles according to the first driving control strategy.
[0155] In an optional embodiment of the present application, the first path includes a first current position, and the second path includes a second current position; the preset meeting condition includes: the distance between the first current position and the second current position meets a preset distance range, and there is a conflicting target area between the first path and the second path, the target area is located between the first current position and the second current position, and the width of at least part of the continuous area within the target area is greater than the first width value.
[0156] In an optional embodiment of the present application, the device further includes:
[0157] An adjustment module is used to control the first robot to travel toward the side when the distance between the first current position and the second current position meets the adjustment distance range and the current driving strategy of the first robot is inconsistent with the specified side, and the adjustment distance range is greater than the preset distance range.
[0158] In an optional embodiment of the present application, the real-time status includes a position status and a route status. If the current position of the robot is on a designated side of the channel, the position status is determined to be that the current position is safe. If there is a passable route within a preset distance in front of the robot, the route status is determined to be that there is a meeting route.
[0159] In an optional embodiment of the present application, the first driving control strategy generating module 1204 is configured to, if both the first real-time status and the second real-time status include that the current position is safe and that a meeting route exists, then the first driving control strategy includes continuing driving along the meeting route; if the first real-time status includes that the current position is safe and that a meeting route exists, and the second real-time status includes that the current position is safe and that a meeting route does not exist, then the first driving control strategy includes resuming the obstacle avoidance strategy.
[0160] In an optional embodiment of the present application, the first driving control strategy generation module 1204 is further used to obtain the current channel width if both the first real-time status and the second real-time status include that the current position is unsafe; when the channel width is greater than the second width value, the first driving control strategy includes waiting in place for the second robot to pass; when the channel width is less than or equal to the second width value, exiting the meeting state, the first driving control strategy includes going to the avoidance point to avoid or waiting for the second robot to go to the avoidance point to avoid.
[0161] In an optional embodiment of the present application, the device further includes:
[0162] Map acquisition module, used to obtain static map information;
[0163] an environment determination module, configured to determine, based on the static map information, whether the environment in which the robot and the second robot are located matches a preset characteristic scene; and if so, invoke a second driving control strategy determination module and a second driving control strategy meeting module;
[0164] The second driving control strategy determination module is used to determine a second driving control strategy corresponding to the characteristic scenario;
[0165] The second driving control strategy meeting module is used to meet other vehicles according to the second driving control strategy.
[0166] In an optional embodiment of the present application, the characteristic scene includes a broken line channel, and the broken line channel includes a corner; the second driving control strategy meeting module includes:
[0167] a broken line channel adjustment submodule, configured to adjust the travel speed upon detecting that the robot and the second robot are on different sides of a corner, so that the robot and the second robot are on the same straight path after passing the corner;
[0168] The broken line channel meets the vehicle module, and is used for traveling towards the second robot and passing through the second robot.
[0169] In an optional embodiment of the present application, the characteristic scenario includes a width-changing channel; and the second driving control strategy meeting module includes:
[0170] a width change information determining submodule, configured to determine the width change information of the width change channel based on the static map information;
[0171] an avoidance point determination submodule, configured to determine an avoidance point along the current driving direction according to the width change information;
[0172] The avoidance point meeting module is used to adjust the driving speed so as to meet the second robot at the avoidance point.
[0173] In an optional embodiment of the present application, the characteristic scene includes an intersection; and the second driving control strategy meeting module includes:
[0174] A first priority determination submodule, configured to determine a first priority according to the time at which the first priority is reached by the vehicle;
[0175] A second priority determination submodule, configured to obtain the second priorities of the remaining robots located at the intersection;
[0176] The intersection meeting module is configured to drive towards the second robot and pass the second robot when the first priority is greater than the second priority.
[0177] An embodiment of the present application provides a robot travel control device, and by using this device, each step in the aforementioned method embodiments can be implemented.
[0178] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the description of the method embodiment part.
[0179] Reference Figure 13 , shows a schematic diagram of a robot provided by an embodiment of the present application. Figure 13 As shown, the robot 1300 in the embodiment of the present application includes: a processor 1310, a memory 1320, and a computer program 1321 stored in the memory 1320 and executable on the processor 1310. When the processor 1310 executes the computer program 1321, the steps in each embodiment of the above-mentioned robot driving control method are implemented, such as Figure 1 Alternatively, when the processor 1310 executes the computer program 1321, the functions of the modules / units in the above-mentioned device embodiments are realized, for example Figure 12 Functions of modules 1201 to 1205 are shown.
[0180] Exemplarily, the computer program 1321 can be divided into one or more modules / units, which are stored in the memory 1320 and executed by the processor 1310 to complete the present application. The one or more modules / units can be a series of computer program instruction segments that can perform specific functions, and the instruction segments can be used to describe the execution process of the computer program 1321 in the robot 1300. For example, the computer program 1321 can be divided into a second robot determination module, a meeting condition determination module, a real-time status acquisition module, a first driving control strategy generation module, and a first driving control strategy meeting module. The specific functions of each module are as follows:
[0181] A second robot determining module, configured to determine a second robot having a path conflict;
[0182] A meeting condition determination module is configured to enter a meeting state and adjust an obstacle avoidance strategy to reduce an obstacle avoidance distance when determining that a preset meeting condition is met based on the first path of the robot itself and the second path of the second robot.
[0183] A real-time status acquisition module, configured to acquire a first real-time status of the robot itself and a second real-time status of the second robot;
[0184] a first driving control strategy generating module, configured to generate a first driving control strategy according to the first real-time state and the second real-time state;
[0185] The first driving control strategy meeting module is used to meet other vehicles according to the first driving control strategy.
[0186] The robot 1300 may be the first robot in each of the aforementioned embodiments. The robot may include, but is not limited to, a processor 1310 and a memory 1320. Those skilled in the art will appreciate that Figure 13 This is only an example of the robot 1300 and does not constitute a limitation of the robot 1300. The robot 1300 may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, the robot 1300 may also include input and output devices, network access devices, buses, etc.
[0187] The processor 1310 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor.
[0188] The memory 1320 may be an internal storage unit of the robot 1300, such as a hard drive or memory of the robot 1300. The memory 1320 may also be an external storage device of the robot 1300, such as a plug-in hard drive, a Smart Media Card (SMC), a Secure Digital (SD) card, a flash memory card, etc. equipped on the robot 1300. Furthermore, the memory 1320 may include both an internal storage unit of the robot 1300 and an external storage device. The memory 1320 is used to store the computer program 1321 and other programs and data required by the robot 1300. The memory 1320 may also be used to temporarily store data that has been output or is about to be output.
[0189] An embodiment of the present application further discloses a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the robot driving control method as described in the above embodiments is implemented.
[0190] An embodiment of the present application further discloses a computer program product. When the computer program product is run on a computer, the computer is enabled to execute the robot driving control method described in each of the aforementioned embodiments.
[0191] The above embodiments are intended only to illustrate the technical solutions of the present application and are not intended to limit them. Although the present application has been described in detail with reference to the above embodiments, those skilled in the art should understand that they may still modify the technical solutions described in the above embodiments or replace some of the technical features therein with equivalents; and such modifications or replacements do not deviate from the spirit and scope of the technical solutions of the embodiments of the present application and should be included within the scope of protection of the present application.
Claims
1. A robot driving control method, characterized in that: Applied to a first robot, where the current driving strategy of the first robot is centering driving, the method includes: determining a second robot having a path conflict; When the preset meeting conditions are determined to be met based on the robot's first path and the second path of the second robot, the robot enters the meeting state and adjusts the obstacle avoidance strategy to reduce the obstacle avoidance distance or disables the obstacle avoidance strategy; and drives toward the designated side. The obstacles include dynamic and static obstacles, and the static obstacles include walls. Obtaining a first real-time state of the robot itself and a second real-time state of the second robot; the real-time state includes a position state and a route state; if the current position of the robot is at a designated side of the passage, determining that the position state is safe; and determining that the route state indicates whether a meeting route exists or does not exist; generating a first driving control strategy according to the first real-time state and the second real-time state; The first robot and the second robot meet each other according to the first driving control strategy; after the first robot and the second robot complete the meeting, the obstacle avoidance strategies of the first robot and the second robot are both restored; The generating of a first driving control strategy based on the first real-time state and the second real-time state includes: if both the first real-time state and the second real-time state indicate that the current position is safe and a meeting route exists, then the first driving control strategy includes continuing driving along the meeting route; if the first real-time state indicates that the current position is safe and a meeting route exists, and the second real-time state indicates that the current position is safe and no meeting route exists, then the first driving control strategy includes resuming an obstacle avoidance strategy; Before determining the second robot with a path conflict, the method further includes: upon detecting a third robot in a meeting state within a second preset distance ahead, following the third robot; the third robot is a robot traveling in the same direction as the robot; Before obtaining the first real-time state of the robot itself and the second real-time state of the second robot, the method further includes: obtaining static map information; determining whether the environment of the robot itself and the second robot matches a preset characteristic scene based on the static map information; if so, determining a second driving control strategy corresponding to the characteristic scene; and performing the meeting according to the second driving control strategy; The characteristic scene is an intersection; the second driving strategy includes: when it is determined that no robot enters the sub-area from other channels, increasing the width of the sub-area so that the width of the sub-area is not less than the sum of the widths of the first robot and the second robot.
2. The method according to claim 1, characterized in that The first path includes a first current location, and the second path includes a second current location; the preset meeting condition includes: The distance between the first current position and the second current position satisfies a preset distance range, and there is a conflicting target area between the first path and the second path, the target area is located between the first current position and the second current position, and the width of at least part of the continuous area within the target area is greater than the first width value.
3. The method according to claim 2, characterized in that Before determining that a preset meeting condition is satisfied according to the first path of the robot itself and the second path of the second robot, the method further includes: When the distance between the first current position and the second current position satisfies the adjustment distance range and the current driving strategy of the first robot is inconsistent with the specified side, the first robot is controlled to drive toward the side, and the adjustment distance range is greater than the preset distance range.
4. The method according to claim 1, wherein If there is a passable route within a preset distance in front of the robot, it is determined that the route status is that there is a meeting route.
5. The method according to claim 1 or 4, characterized in that Generating a first driving control strategy according to the first real-time state and the second real-time state includes: If both the first real-time status and the second real-time status include that the current position is unsafe, obtaining the current channel width; When the passage width is greater than a second width value, the first travel control strategy includes waiting in place for the second robot to pass; When the channel width is less than or equal to the second width value, the meeting state is exited, and the first driving control strategy includes going to the avoidance point to avoid or waiting for the second robot to go to the avoidance point to avoid.
6. The method according to claim 1, characterized in that The characteristic scene includes a broken line channel, and the broken line channel includes a corner; and the meeting according to the second driving control strategy includes: When detecting that the robot and the second robot are on different sides of a corner, adjusting the driving speed so that the robot and one of the second robots are on the same straight road after passing the corner; Travel toward the second robot and pass by the second robot.
7. The method according to claim 1, characterized in that The characteristic scenario includes a width-changing channel; and the meeting according to the second driving control strategy includes: determining width change information of the width change channel based on the static map information; determining an avoidance point along the current driving direction according to the width change information; The driving speed is adjusted so as to intersect with the second robot at the avoidance point.
8. The method according to claim 1, characterized in that The characteristic scene includes an intersection; and the meeting according to the second driving control strategy includes: Determine the first priority according to the time of arrival at the intersection; Obtain the second priority of the remaining robots at the intersection; When the first priority is greater than the second priority, the vehicle travels toward the second robot and passes the second robot.
9. A robot driving control device, characterized in that: The device is located on a first robot, and the current driving strategy of the first robot is centering driving, including: A second robot determining module, configured to determine a second robot having a path conflict; A meeting condition determination module is configured to, when determining based on the robot's first path and the second path of the second robot that a preset meeting condition is met, enter a meeting state, adjust the obstacle avoidance strategy to reduce the obstacle avoidance distance, or disable the obstacle avoidance strategy, and drive to a designated side. The obstacles include dynamic and static obstacles, and the static obstacles include walls. a real-time status acquisition module, configured to acquire a first real-time status of the robot itself and a second real-time status of the second robot; the real-time status includes a position status and a route status; if the current position of the robot is at a designated side of the passage, the position status is determined to be safe; and the route status is determined to be whether a meeting route exists or does not exist; a first driving control strategy generating module, configured to generate a first driving control strategy based on the first real-time state and the second real-time state; wherein after the first robot and the second robot complete the meeting, the obstacle avoidance strategy of the first robot and the second robot is restored; a first driving control strategy meeting module, configured to meet other vehicles according to the first driving control strategy; The generating of the first driving control strategy based on the first real-time status and the second real-time status includes: if both the first real-time status and the second real-time status indicate that the current position is safe and a meeting route exists, then the first driving control strategy includes continuing driving along the meeting route; if the first real-time status indicates that the current position is safe and a meeting route exists, and the second real-time status indicates that the current position is safe and no meeting route exists, then the first driving control strategy includes resuming the obstacle avoidance strategy; The device further includes a module for following a third robot when detecting that the third robot is in a meeting state within a second preset distance ahead; the third robot is a robot traveling in the same direction as the robot; Map acquisition module, used to obtain static map information; an environment determination module, configured to determine, based on the static map information, whether the environment in which the robot and the second robot are located matches a preset characteristic scene; and if so, invoke a second driving control strategy determination module and a second driving control strategy meeting module; The second driving control strategy determination module is used to determine a second driving control strategy corresponding to the characteristic scenario; The second driving control strategy meeting module is used to meet other vehicles according to the second driving control strategy; The characteristic scene is an intersection; the second driving strategy includes: when it is determined that no robot enters the sub-area from other channels, increasing the width of the sub-area so that the width of the sub-area is not less than the sum of the widths of the first robot and the second robot.
10. A robot comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the method according to any one of claims 1 to 8 is implemented.
Citation Information
Patent Citations
Robot avoidance driving method and device and robot
CN110377038A
Automatic driving meeting scene processing method and device and vehicle
CN112265542A
C-V2X-based vehicle scheduling method and system, electronic equipment and storage medium
CN113240907A