Robot intersection movement control method and device, electronic equipment, medium and product
By predicting vehicle trajectories and positional relationships to plan robot paths, the problem of collisions when robots meet vehicles is solved, achieving safe and efficient intersection passage.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-19
- Publication Date
- 2026-03-31
AI Technical Summary
Robots are prone to collisions when meeting oncoming vehicles at intersections, and current technologies struggle to achieve safe and efficient passage.
By predicting the vehicle's trajectory and combining the positional relationship between the robot and the vehicle in the intersection area, the robot's movement path is determined, and the robot is controlled to avoid the vehicle along that path.
It enables safe and efficient passage for robots and vehicles, reduces the risk of collisions, and improves traffic efficiency.
Smart Images

Figure CN121764069A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of robot control technology, and in particular to a robot intersection movement control method, device, electronic device, medium and product. Background Technology
[0002] Robots possess a certain degree of mobility and interaction capabilities in real-world environments, enabling them to smoothly reach their destination from a starting point in complex conditions. For example, a cleaning robot can automatically clean driveways and parking spaces on different floors of an underground parking garage. During the cleaning process, it may encounter cars traveling in various directions. At intersections or crossroads, the risk of robots passing oncoming traffic is high, and collisions are easily possible.
[0003] To prevent collisions at intersections, current solutions include installing warning lights on robots to alert drivers, which relies on the driver's skill and risk assessment. Alternatively, robots can stop moving when they encounter vehicles near intersections, allowing vehicles to avoid them, but this can sometimes block the road, causing cars to be unable to pass and creating a standoff that affects traffic efficiency. In addition, both robots and vehicles are underactuated mechanisms, and robots have poor flexibility when trying to avoid vehicles. Neither side can accurately predict the other's behavior, so there is still a probability of collision.
[0004] In summary, for scenarios where vehicles meet at intersections, how to enable robots to proactively avoid vehicles and leave sufficient space for them to ensure efficient and safe passage is an urgent problem to be solved. Summary of the Invention
[0005] This application provides a method, device, electronic device, medium, and product for controlling the movement of robots at intersections, so as to achieve safe and efficient passage for robots and vehicles.
[0006] In a first aspect, embodiments of this application provide a robot intersection movement control method, including:
[0007] When a robot and a vehicle are about to enter or are in the same intersection area, the robot's movement path is determined based on the positional relationship between the robot and the vehicle in the intersection area and the predicted trajectory of the vehicle.
[0008] The robot is controlled to move along the specified path to avoid the vehicle.
[0009] Secondly, embodiments of this application also provide a robot intersection movement control device, comprising:
[0010] The path planning module is used to determine the robot's movement path based on the positional relationship between the robot and the vehicle in the intersection area and the predicted trajectory of the vehicle when the robot and the vehicle are about to enter or are in the same intersection area.
[0011] The control module is used to control the robot to move along the movement path in order to avoid the vehicle.
[0012] Thirdly, embodiments of this application provide an electronic device, including:
[0013] One or more processors;
[0014] Storage device for storing one or more programs;
[0015] When the one or more programs are executed by the one or more processors, the one or more processors implement the robot intersection movement control method as described in the first aspect.
[0016] Fourthly, embodiments of this application also provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the robot intersection movement control method as described in the first aspect.
[0017] Fifthly, embodiments of this application also provide a computer program product, including a computer program and / or instructions, which, when executed by a processor, implement the robot intersection movement control method as described in any of the above embodiments.
[0018] This application provides a robot intersection movement control method, device, electronic device, medium, and product. The robot intersection movement control method includes: when a robot and a vehicle are about to enter or are in the same intersection area, determining the robot's movement path based on the positional relationship between the robot and the vehicle in the intersection area and the predicted trajectory of the vehicle; and controlling the robot to move along the movement path to avoid the vehicle. This technical solution, by predicting the vehicle's trajectory and combining it with the positional relationship between the robot and the vehicle in the intersection area, can rationally plan the robot's movement path in the intersection area, enabling it to avoid vehicles and complete oncoming traffic without affecting vehicle movement, thus achieving safe and efficient passage for both the robot and the vehicle. Attached Figure Description
[0019] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.
[0020] Figure 1 A flowchart illustrating a robot intersection movement control method provided in this application embodiment;
[0021] Figure 2 A schematic diagram of an intersection area provided in an embodiment of this application;
[0022] Figure 3 A schematic diagram of a robot provided for an embodiment of this application;
[0023] Figure 4 A schematic diagram illustrating the selection of candidate paths provided in an embodiment of this application;
[0024] Figure 5 A schematic diagram illustrating another candidate path selection method provided in this application embodiment;
[0025] Figure 6 A schematic diagram illustrating another candidate path selection method provided in an embodiment of this application;
[0026] Figure 7 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0027] Figure 8 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0028] Figure 9 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0029] Figure 10 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0030] Figure 11 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0031] Figure 12 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0032] Figure 13 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0033] Figure 14 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0034] Figure 15 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0035] Figure 16 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0036] Figure 17 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0037] Figure 18 A schematic diagram illustrating yet another candidate path selection method provided in an embodiment of this application;
[0038] Figure 19 This is a flowchart illustrating the process of a robot meeting oncoming traffic at an intersection, as provided in one embodiment.
[0039] Figure 20 A schematic diagram of a robot intersection movement control device provided in this application embodiment;
[0040] Figure 21 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. Detailed Implementation
[0041] The present application will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the application and not intended to limit it. Furthermore, it should be noted that, for ease of description, the accompanying drawings show only the parts relevant to the present application, not the entire structure.
[0042] Before discussing the exemplary embodiments in more detail, it should be noted that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although the flowcharts describe the steps as sequential processes, many of these steps can be performed in parallel, concurrently, or simultaneously. Furthermore, the order of the steps can be rearranged. The process can be terminated when its operation is complete, but may also have additional steps not included in the figures. The process can correspond to a method, function, procedure, subroutine, subroutine, etc.
[0043] It should be noted that the concepts of "first" and "second" mentioned in the embodiments of this application are only used to distinguish different devices, modules, units or other objects, and are not used to limit the order of functions performed by these devices, modules, units or other objects or their interdependencies.
[0044] Furthermore, the embodiments and features described in this application may be combined with each other, unless otherwise specified.
[0045] The acquisition, storage, use, and processing of data in this application all comply with the relevant provisions of national laws and regulations.
[0046] It should be noted that in the embodiments of this application, certain software, components, models and other existing solutions in the industry may be mentioned. These should be regarded as exemplary and are only intended to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the relevant content of the solution.
[0047] Figure 1 This is a flowchart illustrating a robot intersection movement control method provided in this application embodiment. This embodiment is applicable to situations where a robot encounters oncoming vehicles at an intersection. Specifically, this robot intersection movement control method can be executed by a robot intersection movement control device, which can be implemented through software and / or hardware and integrated into an electronic device. The electronic device includes, but is not limited to, controllers, computers, smartphones, host computers, or servers, and other devices with control functions.
[0048] like Figure 1 As shown, the method specifically includes the following steps:
[0049] S110. When the robot and the vehicle are about to enter or are in the same intersection area, determine the robot's movement path based on the positional relationship between the robot and the vehicle in the intersection area and the predicted trajectory of the vehicle.
[0050] The intersection can be a crossroads, a T-junction, an X-junction, or a Y-junction, etc., and the intersection area can be understood as the area where roads from different directions intersect. Vehicles can be any vehicle within the robot's detection range. For example... Figure 2 As shown, taking a crossroads as an example, the intersection area can be understood as the quadrilateral area formed by the intersection of transverse and longitudinal roads, i.e., the shaded area. It should be noted that... Figure 2 In this example, the robot moves from left to right on the transverse road, while the vehicle travels from bottom to top on the longitudinal road. In practical applications, the vehicle can enter the intersection area from any direction. The intersection area can be pre-deployed in the robot's positioning system and electronic map, or it can be identified based on positioning algorithms and Simultaneous Localization and Mapping (SLAM). This embodiment does not impose specific limitations on this.
[0051] When a robot and a vehicle are about to enter or are in the same intersection area, which can be understood as entering the same intersection area within a short period of time (usually a few seconds), it is necessary to plan the robot's movement path in advance to avoid the vehicle. Otherwise, if the robot still moves according to the pre-set path (when the robot starts or when there are no vehicles nearby by default), there is a high probability of colliding with the car or seriously affecting the normal driving of the vehicle.
[0052] The positional relationship between the robot and the vehicle in the intersection area can include the positional relationship between the robot and the vehicle, the positional relationship between the robot and the intersection area, the positional relationship between the robot, the vehicle, and the intersection area, the position and direction of movement of the robot, and the position and direction of travel of the vehicle.
[0053] For example, the positional relationship between the robot and the vehicle can be the positional relationship between the robot's reference points (such as the robot's center point, the center of the front wheel, or the center of the rear wheel) and the vehicle's reference points (such as the vehicle's center point, the midpoint of the front bumper, the midpoint of the rear bumper, or the midpoint of the bulge). This could include the distance between the two reference points, and / or whether the two reference points are on the same horizontal line or lane line, and / or the angular relationship between the line connecting the two reference points and the horizontal line or lane line.
[0054] For example, the positional relationship between the robot and the intersection area can be the distance from the robot's reference point to the intersection area, and / or the distance between the robot's reference point and the reference point of the intersection area (such as the vertex or midpoint of the edge of the intersection area), and / or whether the robot's reference point and the reference point of the intersection area are on the same horizontal line or lane line, and / or the angular relationship between the line connecting the robot's reference point and the reference point of the intersection area and the horizontal line or lane line, etc.
[0055] For example, based on the positional relationship between the robot and the vehicle, and the positional relationship between the robot and the intersection area, the positional relationship between the robot, the vehicle, and the intersection area can be further determined. For example, the relationship between the robot's reference point and the vehicle's reference point relative to the intersection area's reference point, and / or the relationship between the line connecting the robot's reference point and the vehicle's reference point relative to the intersection area's reference point, and / or the relationship between the line connecting the robot's reference point and the vehicle's reference point, and the line connecting the robot's reference point and the intersection area's reference point, and the relationship between these two types of lines.
[0056] The predicted trajectory of a vehicle mainly refers to the route a vehicle takes within an intersection area. It can be predicted based on the vehicle's current speed and acceleration, or it can be predicted using machine learning, deep learning, and / or visual-language multimodal models.
[0057] Determining the robot's movement path can be done by using Dijkstra's Algorithm, A-Algorithm, or grid-based methods to generate the robot's path based on the robot's and vehicle's positional relationship in the intersection area and the vehicle's predicted trajectory. Alternatively, it can involve pre-designing several candidate paths for the robot and then selecting a suitable one based on the robot's and vehicle's positional relationship in the intersection area and the vehicle's predicted trajectory. Optionally, a reference point (e.g., a vertex) can be selected from the intersection area as the target point before determining the movement path from the robot's current position to that target point.
[0058] S120. Control the robot to move along the movement path to avoid the vehicle.
[0059] The robot can be controlled to move to a target point according to the movement path, pass oncoming vehicles during the movement, avoid vehicles in time, stop moving when necessary to give priority to the passage of vehicles, and continue from the target point to perform the interrupted task after the vehicles have passed.
[0060] The robot intersection movement control method in this embodiment provides a comprehensive and reliable basis for the robot to successfully complete vehicle passing in the intersection area by comprehensively analyzing the positional relationship between the robot and the vehicle, as well as the positional relationship between the robot and the intersection area. Based on this, combined with the predicted trajectory of the vehicle, path planning can be made in advance to determine a safe and reasonable movement path, improve the robot's active safety, and avoid vehicles while minimizing the impact on the normal driving of the vehicles, thus achieving safe and efficient passage for both the robot and the vehicle.
[0061] In one embodiment, determining the robot's movement path based on the positional relationship between the robot and the vehicle in the intersection area, and the predicted trajectory of the vehicle, includes:
[0062] S1110. Take each vertex of the intersection area as a target point, and take the path from the robot's reference point to each target point as a candidate path.
[0063] The robot can avoid obstacles and pass other vehicles by moving to the target point. The path from the robot's reference point to each target point can be used as a candidate path.
[0064] by Figure 2For example, the four vertices (A, B, C, D) of the intersection area can be taken as target points, and the robot's reference point can be the center of the rear wheel. Based on this, there are four candidate paths: a candidate path from the center of the rear wheel to vertex A, a candidate path from the center of the rear wheel to vertex B, a candidate path from the center of the rear wheel to vertex C, and a candidate path from the center of the rear wheel to vertex D. Optionally, one or more candidate paths can be planned for each type of candidate path. For example, multiple candidate paths can be planned from the center of the rear wheel to vertex A.
[0065] S1120. Based on the positional relationship between the robot and the vehicle in the intersection area, determine the angle between the first direction and the second direction. The first direction is the direction from the robot's reference point to any vertex in the intersection area, and the second direction is the direction from the robot's reference point to the vehicle's reference point.
[0066] For each vertex in the intersection area, an angle can be determined, which is the angle between the line connecting the robot's reference point to that vertex and the line connecting the robot's reference point to the vehicle's reference point.
[0067] by Figure 2 For example, for vertex A, the included angle is ∠AOP; for vertex B, the included angle is ∠BOP (not shown in the figure); for vertex C, the included angle is ∠COP (not shown in the figure); and for vertex D, the included angle is ∠DOP (not shown in the figure). It can be understood that the larger the included angle corresponding to a vertex, the more pronounced the robot's tendency to move away from the vehicle when moving towards that vertex, and the easier it is to avoid the vehicle. When determining the movement path, this vertex can be prioritized as the target point, and candidate paths with this vertex as the target point can be selected preferentially.
[0068] S1130. Based on the included angle and the predicted trajectory of the vehicle, select one candidate path from the candidate paths as the moving path.
[0069] For example, based on the included angle, a candidate path with a suitable included angle can be selected from the candidate paths corresponding to each vertex (e.g., selecting the largest included angle, the included angle greater than a set threshold, or sorting the included angles corresponding to each vertex from largest to smallest and selecting the top few, etc.); based on the predicted trajectory, a candidate path that does not intersect with the predicted trajectory or is far away from it can be selected from the candidate paths corresponding to each vertex. Combining these two options, the candidate paths selected by the two points have a relatively obvious tendency to move away from the vehicle, which can fully ensure that there is no collision with the vehicle, and can minimize the impact on the normal driving of the vehicle, ensuring the safe and efficient passage of the robot and the vehicle.
[0070] In this embodiment of the application, the process of selecting a candidate path can also be equivalent to the process of selecting a vertex or target point. That is, based on the positional relationship between the robot and the vehicle in the intersection area, the angle between the first direction and the second direction is determined. Based on the angle and the predicted trajectory of the vehicle, a vertex is selected from each vertex in the intersection area as the target point. On this basis, the movement path of the robot from the current position to the target point can be determined.
[0071] Figure 3 This is a schematic diagram of a robot provided as an embodiment. Figure 3 As shown, the robot moves from left to right, with the front part being the active mechanism and the rear part being the driven mechanism. The front wheel center (steering_link) can serve as the starting point for resuming the original task after avoiding a vehicle. After avoiding the vehicle, the robot can navigate to the pre-planned task path. The rear wheel center (base_link) can serve as the starting point for the planned movement path when avoiding vehicles in the intersection area.
[0072] In one embodiment, the robot's reference point can be the center of the rear wheel. The vehicle's reference point can be the center of the convex hull. A convex hull is a concept in computational geometry (graphics) that can be understood as the intersection of a convex set containing all points of the vehicle.
[0073] In one embodiment, selecting a candidate path from the candidate paths as the movement path based on the included angle and the predicted trajectory of the vehicle includes: selecting a candidate path from the candidate paths as the movement path according to at least one of the following strategies based on the positional relationship between the robot and the vehicle, the positional relationship between the robot and the intersection area, and the positional relationship between the robot and the vehicle in the intersection area:
[0074] It does not intersect with the predicted trajectory of the vehicle (this can be called a non-intersection strategy).
[0075] The angle is the largest (which can be called the angle strategy);
[0076] The robot does not turn around (this can be called the non-turn-around strategy).
[0077] The non-intersection strategy means planning candidate paths for each vertex of the intersection area, predicting the vehicle's trajectory over a future period (usually a few seconds), and selecting candidate paths that do not intersect with the predicted trajectory (or the direction of the predicted trajectory). A candidate path that does not cross the front of the vehicle reduces the risk of collision. Figure 2For example, if the predicted trajectory of the vehicle is from bottom to top through the intersection area, the robot can prioritize candidate paths to either vertex A or vertex C, which do not intersect with the vehicle's predicted trajectory. This strategy can effectively ensure that the robot and the vehicle do not collide, even in some high-risk situations, such as when the robot is in the driver's blind spot and the driver may not see the robot and thus collide, or when the vehicle is moving slowly and the robot's perception is inaccurate and it identifies the vehicle as stationary, making collisions more likely during avoidance. In these situations, this strategy can also improve safety in both the spatial and temporal domains.
[0078] The angle strategy aims to maximize the angle between the robot's reference point and the vertex of the intersection area, and between the robot's reference point and the vehicle's reference point. Figure 2 For example, if the predicted trajectory of the vehicle is from bottom to top through the intersection area, the robot can prioritize the candidate path to vertex A because ∠AOP has the largest angle among the four vertices. This strategy can ensure that the robot tends to move away from the vehicle as much as possible, guaranteeing that the robot can either move away from the vehicle from an avoidance position or avoid it in the direction of movement.
[0079] The "no-turn-around" strategy means choosing paths that prevent the robot from turning around as much as possible. If all candidate paths require the robot to turn around, then the candidate paths can be replanned and a new path can be selected. Figure 2 For example, if the robot has already entered the intersection area (crossed the line segment between vertex A and vertex C), it can avoid selecting candidate paths to vertex A or vertex C, as these two candidate paths require the robot to turn around. Considering the low efficiency of robot turning around to avoid obstacles, and the driver's poor ability to predict the robot's turning behavior, this strategy can minimize the robot's repetitive work, improve the robot's work efficiency, and reduce the impact on normal vehicle driving.
[0080] Based on the magnitude of the collision risk between the robot and vehicles and the complexity of the intersection environment, one or more of the aforementioned strategies can be used to select candidate paths. If multiple strategies are used, different priorities can be assigned to each strategy. For example, the priorities of the intersection strategy, the angle strategy, and the non-U-turn strategy decrease in that order. That is, priority is given to candidate paths that do not intersect with the predicted trajectory of vehicles; from the candidate paths that do not intersect with the predicted trajectory of vehicles, priority is given to the candidate path with the largest angle; and from the candidate paths with the largest angle, priority is given to the candidate path that does not U-turn. On this basis, the safety of robot-versus-vehicle encounters at intersections, the robot's working efficiency, and the ease with which the driver can predict the robot's movements can be effectively balanced, making it applicable to different scenarios and meeting different needs.
[0081] In one embodiment, if there is a candidate path that does not intersect with the predicted trajectory of the vehicle, the strategy of the robot not turning around has a higher priority than the strategy with the largest angle between the first and second directions.
[0082] In this embodiment, the priority of the intersection strategy, the no-turn strategy, and the angle strategy decreases in that order. For example, if among the candidate paths corresponding to each vertex there exists a candidate path that does not intersect with the vehicle's predicted trajectory, then from these candidate paths, the no-turn strategy can be prioritized to select the candidate path where the robot does not turn, excluding candidate paths where the robot does turn. If there is more than one candidate path where the robot does not turn, or if all these candidate paths require the robot to turn, then the angle strategy can be used to select the candidate path with the largest angle as the movement path. It is also understood that the existence of candidate paths that do not intersect with the vehicle's predicted trajectory indicates that a collision with the vehicle can be sufficiently guaranteed. In this case, avoiding the robot's turn operation can be prioritized to improve the robot's movement and operational efficiency, and also to facilitate the driver's prediction of the robot's movement. Then, the largest angle can be considered to further improve safety.
[0083] In one embodiment, if there is no candidate path that does not intersect with the predicted trajectory of the vehicle, the priority of the strategy of the robot not turning around is lower than the priority of the strategy with the largest angle between the first direction and the second direction.
[0084] In this embodiment, the priority of the intersection strategy, the angle strategy, and the non-turning strategy decreases in that order. For example, if there are no candidate paths that do not intersect with the predicted trajectory of the vehicle among the candidate paths corresponding to each vertex (the robot and the vehicle are in a standoff state, and there is no ideal candidate path), then from among the candidate paths, the candidate path with the largest angle can be selected first according to the angle strategy as the movement path to ensure that the robot stays as far away from the vehicle as possible and to ensure safety as much as possible; then, the candidate path where the robot does not turn around can be selected according to the non-turning strategy to avoid the robot's turning operation as much as possible, improve the robot's movement and operation efficiency, and also make it easier for the driver to predict the robot's movement.
[0085] Below are some diagrams illustrating the selection of candidate paths. In each diagram, ego represents the robot, the pointed end indicates the robot's direction of movement, and the arrows on vehicles indicate the vehicle's direction of travel.
[0086] like Figure 4 As shown, the vehicle travels longitudinally from bottom to top, and the robot moves from top to bottom. In this case, there is no candidate path that does not intersect with the predicted trajectory of the vehicle. The candidate path corresponding to vertex A or vertex B can be selected as the movement path according to the included angle strategy. The robot needs to turn around for both of these candidate paths.
[0087] like Figure 5 As shown, the vehicle travels longitudinally from bottom to top, and the robot moves from bottom to top. The candidate paths that do not intersect with the vehicle's predicted trajectory are the candidate paths corresponding to vertices B and D. The candidate path corresponding to vertex D can be eliminated according to the no-turn-around strategy, and the candidate path corresponding to vertex B is finally taken as the movement path.
[0088] like Figure 6 As shown, the vehicle travels longitudinally from bottom to top, and the robot moves from right to left. The candidate paths that do not intersect with the vehicle's predicted trajectory are the candidate paths corresponding to vertices B and D. Both candidate paths require turning around, and the candidate path corresponding to vertex B can be selected as the movement path based on the included angle strategy.
[0089] like Figure 7 As shown, the vehicle moves vertically from bottom to top, and the robot moves from top to bottom. The candidate paths that do not intersect with the vehicle's predicted trajectory are the candidate paths corresponding to vertices B and D. According to the no-turn-around strategy, the candidate path corresponding to vertex B can be eliminated, and the candidate path corresponding to vertex D can be taken as the movement path.
[0090] like Figure 8 As shown, the vehicle travels longitudinally from bottom to top, and the robot moves from right to left. The candidate paths that do not intersect with the vehicle's predicted trajectory are the candidate paths corresponding to vertices B and D. The robot needs to turn around for both candidate paths. The candidate path corresponding to vertex B can be selected as the movement path based on the included angle strategy.
[0091] like Figure 9 As shown, the vehicle travels longitudinally from bottom to top, and the robot moves from bottom to top. The candidate paths that do not intersect with the vehicle's predicted trajectory are the candidate paths corresponding to vertices B and D. According to the no-turn-around strategy, the candidate path corresponding to vertex D can be eliminated, and the candidate path corresponding to vertex B can be selected as the movement path.
[0092] like Figure 10 As shown, the vehicle moves longitudinally from bottom to top, and the robot moves from top to bottom. The candidate paths that do not intersect with the vehicle's predicted trajectory are the candidate paths corresponding to vertices B and D. According to the no-turn-around strategy, the candidate path corresponding to vertex B can be eliminated, and the candidate path corresponding to vertex D can be selected as the movement path.
[0093] like Figure 11 As shown, the vehicle travels longitudinally from bottom to top, and the robot moves from top to bottom. There is no candidate path that does not intersect with the predicted trajectory of the vehicle. Therefore, the candidate path corresponding to vertex B can be selected as the movement path first according to the included angle strategy. This candidate path requires the robot to turn around.
[0094] like Figure 12As shown, the vehicle travels longitudinally from bottom to top, and the robot moves from top to bottom. The candidate paths that do not intersect with the vehicle's predicted trajectory are the candidate paths corresponding to vertices A and C. Therefore, the candidate path corresponding to vertex C can be selected as the movement path based on the no-turn-around strategy.
[0095] like Figure 13 As shown, the vehicle travels longitudinally from bottom to top, and the robot moves from left to right. The candidate paths that do not intersect with the vehicle's predicted trajectory are the candidate paths corresponding to vertices A and C. Both candidate paths require turning around, and the candidate path corresponding to vertex A can be selected as the movement path based on the included angle strategy.
[0096] like Figure 14 As shown, the vehicle moves vertically from bottom to top, and the robot moves from top to bottom. According to the non-intersection strategy, all candidate paths corresponding to vertices can be eliminated. The candidate path corresponding to vertex A can be selected as the movement path first according to the included angle strategy, which requires the robot to turn around.
[0097] like Figure 15 As shown, the vehicle moves vertically from bottom to top, and the robot moves from top to bottom. According to the non-intersection strategy, the candidate paths corresponding to vertices B and D can be eliminated. According to the non-turn-around strategy, the candidate path corresponding to vertex C can be eliminated. Finally, the candidate path corresponding to vertex A is selected as the movement path.
[0098] like Figure 16 As shown, the vehicle travels vertically from bottom to top, and the robot moves from bottom to top. According to the non-intersection strategy, the candidate paths corresponding to vertices B and D can be eliminated. According to the non-turn-around strategy, the candidate path corresponding to vertex C can be eliminated. Finally, the candidate path corresponding to vertex A is selected as the movement path.
[0099] like Figure 17 As shown, the vehicle travels vertically from bottom to top, and the robot moves from left to right. According to the non-intersection strategy, the candidate paths corresponding to vertices B and D can be eliminated. The candidate paths corresponding to vertices A and C both need to turn around. The candidate path corresponding to vertex A can be selected as the movement path according to the included angle strategy.
[0100] like Figure 18 As shown, the vehicle moves vertically from bottom to top, and the robot moves from top to bottom. According to the non-intersection strategy, the candidate paths corresponding to vertices B and D can be eliminated. According to the non-turn-around strategy, the candidate paths corresponding to vertex A need to be turned around. The candidate path corresponding to vertex C can be selected as the movement path.
[0101] In summary, when determining the robot's movement path, a comprehensive analysis can be conducted based on the predicted trajectory of the vehicle, the robot's position and direction of movement, and the vehicle's position and direction of travel. One or more strategies can be adopted to determine the robot's movement path, thereby taking into account factors such as the robot's safety when encountering oncoming traffic at intersections, the robot's working efficiency, and the ease with which the driver can predict the robot's movement, according to actual needs.
[0102] In one embodiment, the method further includes:
[0103] S130. When the robot enters a set range around the intersection area, turn on the indicator light.
[0104] For example, a warning light, such as a flashing light, can be installed on the robot's head or in a prominent position. The warning light can be turned on when the robot is about to enter the intersection area (such as within a 3-meter area around the intersection) to attract the driver's attention and improve passive safety.
[0105] Figure 19 This is a flowchart illustrating the process of a robot meeting oncoming traffic at an intersection, as provided in one embodiment. Figure 19 As shown, when the robot is about to enter or is in an intersection area, it first predicts the vehicle's trajectory. If it predicts that the vehicle will also enter or is already in the intersection area, it selects the intersection vertex as the target point based on the positional relationship between the robot and the vehicle in the intersection area and the predicted trajectory of the vehicle. Then, it determines the movement path corresponding to the vertex and controls the robot to move along the movement path. If a danger is found during the movement, such as the vehicle deviating from the predicted trajectory or other obstacles appearing, the robot can stop moving and wait for a first duration (e.g., 5 seconds). If it predicts that the vehicle will not enter the intersection area, the robot can observe for a second duration (e.g., 2 seconds) to further ensure safety before entering the intersection area.
[0106] Figure 20 This is a schematic diagram of the structure of a robot intersection movement control device provided in an embodiment of this application. Figure 20 As shown, the robot intersection movement control device provided in this embodiment includes:
[0107] The path planning module 210 is used to determine the robot's movement path based on the positional relationship between the robot and the vehicle in the intersection area and the predicted trajectory of the vehicle when the robot and the vehicle are about to enter or are in the same intersection area.
[0108] The control module 220 is used to control the robot to move along the movement path in order to avoid the vehicle.
[0109] This device predicts vehicle trajectories and combines the positional relationship between the robot and the vehicle in the intersection area to rationally plan the robot's movement path in the intersection area, enabling it to avoid vehicles and complete oncoming traffic without affecting vehicle traffic, thus achieving safe and efficient passage for both the robot and the vehicle.
[0110] Based on any of the above embodiments, the path planning module 210 includes:
[0111] The candidate path determination unit is used to take each vertex of the intersection area as a target point and the path from the robot's reference point to each target point as a candidate path.
[0112] Angle determination unit is used to determine the angle between a first direction and a second direction based on the positional relationship between the robot and the vehicle in the intersection area. The first direction is the direction from the robot's reference point to any vertex in the intersection area, and the second direction is the direction from the robot's reference point to the vehicle's reference point.
[0113] The path selection unit is used to select a candidate path from the candidate paths as the moving path based on the included angle and the predicted trajectory of the vehicle.
[0114] Based on any of the above embodiments, the path selection unit is specifically used to: select a candidate path from each of the candidate paths as the movement path according to at least one of the following strategies, based on the positional relationship between the robot and the vehicle, the positional relationship between the robot and the intersection area, and the positional relationship between the robot and the vehicle in the intersection area: the path does not intersect with the predicted trajectory of the vehicle; the angle between the first direction and the second direction is the largest, where the first direction is the direction from the robot's reference point to any vertex in the intersection area, and the second direction is the direction from the robot's reference point to the vehicle's reference point; and the robot does not turn around.
[0115] Based on any of the above embodiments, if there is a candidate path that does not intersect with the predicted trajectory of the vehicle, the priority of the strategy of the robot not turning around is higher than the priority of the strategy with the largest angle between the first direction and the second direction.
[0116] Based on any of the above embodiments, if there is no candidate path that does not intersect with the predicted trajectory of the vehicle, the priority of the strategy of the robot not turning around is lower than the priority of the strategy with the largest angle between the first direction and the second direction.
[0117] Based on any of the above embodiments, the device further includes: a prompting module, used to turn on a prompting light when the robot enters a set range around the intersection area.
[0118] The robot intersection movement control device provided in this application embodiment can be used to execute the robot intersection movement control method provided in any of the above embodiments, and has corresponding functions and beneficial effects.
[0119] Figure 21 A schematic diagram of an electronic device 10, which can be used to implement embodiments of this application, is shown. The electronic device 10 is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device 10 may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, user equipment, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the application described and / or claimed herein.
[0120] like Figure 21 As shown, the electronic device 10 includes at least one processor 11 and a memory, such as a read-only memory (ROM) 12 or a random access memory (RAM) 13, communicatively connected to the at least one processor 11. The memory stores computer programs executable by the at least one processor. The processor 11 can perform various appropriate actions and processes based on the computer program stored in the ROM 12 or loaded from storage unit 18 into the RAM 13. The RAM 13 can also store various programs and data required for the operation of the electronic device 10. The processor 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output (I / O) interface 15 is also connected to the bus 14.
[0121] Multiple components in electronic device 10 are connected to I / O interface 15, including: input unit 16, such as keyboard, mouse, etc.; output unit 17, such as various types of displays, speakers, etc.; storage unit 18, such as disk, optical disk, etc.; and communication unit 19, such as network card, modem, wireless transceiver, etc. Communication unit 19 allows electronic device 10 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks and wireless networks.
[0122] Processor 11 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. Processor 11 performs the various methods and processes described above.
[0123] In some embodiments, the methods described above can be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 18. In some embodiments, part or all of the computer program can be loaded and / or installed on electronic device 10 via ROM 12 and / or communication unit 19. When the computer program is loaded into RAM 13 and executed by processor 11, one or more steps of the methods described above can be performed. Alternatively, in other embodiments, processor 11 can be configured to perform the methods of any of the embodiments described above by any other suitable means (e.g., by means of firmware).
[0124] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), payload-programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0125] Computer programs used to implement the methods of this application may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0126] In the context of this application, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium can be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0127] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device 10, which includes: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device 10. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0128] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0129] A computing system can include clients and servers. Clients and servers are generally located far apart and typically interact through communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a hosting product within the cloud computing service system to address the shortcomings of traditional physical hosts and VPS services, such as high management difficulty and weak business scalability.
[0130] This application also provides a computer program product, including a computer program and / or instructions, which, when executed by a processor, implement the robot intersection movement control method as described in any of the above embodiments.
[0131] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this application can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this application can be achieved, and this is not limited herein.
[0132] The specific embodiments described above do not constitute a limitation on the scope of protection of this application. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application should be included within the scope of protection of this application.
Claims
1. A robot intersection movement control method characterized by, The method comprises: In the case that a robot and a vehicle are about to enter or are in the same intersection area, determining a moving path of the robot according to a positional relationship between the robot and the vehicle in the intersection area and a predicted trajectory of the vehicle; Controlling the robot to move according to the moving path to avoid the vehicle.
2. The method of claim 1, wherein, Determining the moving path of the robot according to the positional relationship between the robot and the vehicle in the intersection area and the predicted trajectory of the vehicle comprises: Taking each vertex of the intersection area as a target point respectively and taking a path between the reference point of the robot and each target point as a candidate path respectively; Determining an included angle between a first direction and a second direction according to the positional relationship between the robot and the vehicle in the intersection area, the first direction being a direction from the reference point of the robot to any vertex of the intersection area and the second direction being a direction from the reference point of the robot to the reference point of the vehicle; Selecting a candidate path from the candidate paths as the moving path according to the included angle and the predicted trajectory of the vehicle.
3. The method of claim 2, wherein, Selecting a candidate path from the candidate paths as the moving path according to the included angle and the predicted trajectory of the vehicle comprises: According to the positional relationship between the robot and the vehicle, the positional relationship between the robot and the intersection area and the positional relationship between the robot and the vehicle in the intersection area, selecting a candidate path from the candidate paths as the moving path according to at least one of the following strategies: The candidate path does not intersect with the predicted trajectory of the vehicle; The included angle between the first direction and the second direction is maximum, the first direction being a direction from the reference point of the robot to any vertex of the intersection area and the second direction being a direction from the reference point of the robot to the reference point of the vehicle; The robot does not make a U-turn.
4. The method according to claim 3, wherein If there is a candidate path that does not intersect with the predicted trajectory of the vehicle, the priority of the strategy that the robot does not make a U-turn is higher than the priority of the strategy that the included angle between the first direction and the second direction is maximum.
5. The method of claim 3, wherein, If there is no candidate path that does not intersect with the predicted trajectory of the vehicle, the priority of the strategy that the robot does not make a U-turn is lower than the priority of the strategy that the included angle between the first direction and the second direction is maximum.
6. The method of claim 1, wherein, The method further comprises: When the robot enters a set range around the intersection area, turning on a prompt light.
7. A robot intersection movement control device characterized by comprising: The method comprises: A path planning module, configured to determine a moving path of a robot according to a positional relationship between the robot and a vehicle in an intersection area and a predicted trajectory of the vehicle in the case that the robot and the vehicle are about to enter or are in the same intersection area; A control module, configured to control the robot to move according to the moving path to avoid the vehicle.
8. An electronic device, comprising: The method comprises: At least one processor; A memory connected in communication with the at least one processor; and wherein The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to perform the robot intersection movement control method according to any one of claims 1-6.
9. A computer-readable storage medium having stored thereon a computer program, characterized in that, The program is executed by the processor to implement the robot intersection movement control method according to any one of claims 1-6.
10. A computer program product comprising computer programs and / or instructions, characterized in that, The computer program and / or instructions are executed by the processor to implement the robot intersection movement control method according to any one of claims 1-6.