Vehicle steering control method and device, terminal equipment and storage medium
By planning the overall steering trajectory in an autonomous vehicle and generating an extended trajectory, which is then divided into multiple steering sequences, the problem of the vehicle being unable to accurately reach the preset point and attitude is solved, thus achieving more precise steering control.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- YOUDI ROBOT (WUXI) CO LTD
- Filing Date
- 2022-05-24
- Publication Date
- 2026-06-05
Smart Images

Figure CN114954524B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of autonomous driving technology, and in particular relates to a vehicle steering control method, device, terminal equipment and storage medium. Background Technology
[0002] Autonomous driving technology is a technology that integrates many technologies such as automatic control, vision computing, and system architecture. It includes the technology of planning trajectories that can complete vehicle turning tasks in autonomous driving path planning schemes.
[0003] Generally, vehicle control algorithms need to pre-aim at points on the planned trajectory that have not yet been reached in order to correct the attitude in advance. That is, when the vehicle reverses and approaches the preset point, the control algorithm will use the preset point as the pre-aim point for control to calculate the speed in advance. However, at this time, the vehicle has not actually reached the preset point, and the attitude of the target vehicle has not been corrected to the preset attitude of the preset point.
[0004] Therefore, how to enable autonomous vehicles to accurately reach preset points and preset postures according to planned trajectories, thereby improving the accuracy of vehicle steering, is an urgent problem to be solved. Summary of the Invention
[0005] This application provides a vehicle steering control method and apparatus, which can solve the problem that autonomous vehicles cannot accurately reach the preset point and preset posture according to the planned trajectory when steering.
[0006] In a first aspect, embodiments of this application provide a vehicle steering control method, including:
[0007] In one possible implementation of the first aspect, an overall steering trajectory is planned based on the target vehicle's starting orientation and ending orientation; various speed reversal points are determined on the overall steering trajectory; the overall steering trajectory is divided into a sequence of multiple steering trajectory segments with the speed reversal points as endpoints; an extension trajectory corresponding to the speed reversal point is generated with the speed reversal point as the starting point, and the extension trajectory is spliced to the sequence of multiple steering trajectory segments to form an updated sequence of multiple steering trajectory segments with the ending point of the extension trajectory segment as the endpoint; the target vehicle is controlled to travel to the endpoint according to the updated sequence of multiple steering trajectory segments.
[0008] In one possible implementation of the first aspect, the step of planning the overall turning trajectory based on the starting orientation and ending orientation of the target vehicle includes: obtaining the starting point and starting orientation of the target vehicle, as well as the ending point and ending orientation of the target vehicle; and planning an overall turning trajectory between the starting point and the ending point of the target vehicle, such that the orientation of the target vehicle when it reaches the end point of the overall turning trajectory is the ending orientation of the target vehicle.
[0009] In one possible implementation of the first aspect, determining each velocity reversal point on the overall steering trajectory includes: generating a first vector based on a first steering trajectory point and a target trajectory point, and generating a second vector based on a second steering trajectory point and a target trajectory point; the first steering trajectory point and the second steering trajectory point are two points existing on the overall steering trajectory; calculating the angle between the first vector and the second vector, and if the angle is less than a preset threshold, determining the target trajectory point as a velocity reversal point; traversing all trajectory points on the overall steering trajectory to determine all velocity reversal points on the overall steering trajectory.
[0010] In one possible implementation of the first aspect, generating an extended trajectory corresponding to the speed reversal point using an interpolation extension tip algorithm, starting from the speed reversal point, includes: obtaining the coordinates of the first turning trajectory point and the second turning trajectory point; calculating the midpoint coordinates based on the first turning trajectory point coordinates and the second turning trajectory point coordinates, and determining the direction of the extended trajectory point based on the midpoint coordinates and the target trajectory point coordinates; and uniformly inserting extended trajectory points along the direction of the extended trajectory point, starting from the target trajectory point, to form an extended trajectory corresponding to the speed reversal point.
[0011] In one possible implementation of the first aspect, controlling the target vehicle to travel to the destination according to the updated multi-segment steering trajectory sequence includes: sequentially sending the updated multi-segment steering trajectory sequence to the controller of the target vehicle, so that the target vehicle controller controls the target vehicle to travel to the destination.
[0012] In one possible implementation of the first aspect, the target vehicle controller controls the target vehicle to travel to the destination, comprising: the target vehicle controller employing two different travel strategies to execute two adjacent steering trajectory sequences respectively, so that the target vehicle travels to the destination.
[0013] In one possible implementation of the first aspect, the two travel strategies are a forward travel strategy and a backward travel strategy.
[0014] Secondly, embodiments of this application provide a vehicle turning control device, comprising: a trajectory planning module, used to plan an overall turning trajectory based on the starting orientation and ending orientation of the target vehicle; a reversal point determination module, used to determine each speed reversal point on the overall turning trajectory; a first sequence generation module, used to cut the overall turning trajectory into a multi-segment turning trajectory sequence with the speed reversal points as endpoints; a second sequence generation module, used to generate an extension line trajectory corresponding to the speed reversal point as the starting point, and splice the extension line trajectory to the multi-segment turning trajectory sequence to form an updated multi-segment turning trajectory sequence with the ending point of the extension line trajectory as the endpoint; and a running control module, used to control the target vehicle to travel to the endpoint according to the updated multi-segment turning trajectory sequence.
[0015] Thirdly, embodiments of this application provide a terminal device, which includes a memory and a processor. The memory stores a computer program, and the processor executes the computer program to perform the following steps: including: planning an overall steering trajectory based on the starting orientation and ending orientation of the target vehicle; determining various speed reversal points on the overall steering trajectory; cutting the overall steering trajectory into a sequence of multiple steering trajectory segments with the speed reversal points as endpoints; generating an extension trajectory corresponding to the speed reversal points as starting points, and splicing the extension trajectory to the sequence of multiple steering trajectory segments to form an updated sequence of multiple steering trajectory segments with the ending point of the extension trajectory as the endpoint; and controlling the target vehicle to travel to the endpoint according to the updated sequence of multiple steering trajectory segments.
[0016] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program thereon. When executed by a processor, the computer program performs the following steps: planning an overall steering trajectory based on the initial orientation and the final orientation of the target vehicle; determining various speed reversal points on the overall steering trajectory; dividing the overall steering trajectory into a sequence of multiple steering trajectory segments with the speed reversal points as endpoints; generating an extension trajectory corresponding to the speed reversal points as starting points, and splicing the extension trajectory to the sequence of multiple steering trajectory segments to form an updated sequence of multiple steering trajectory segments with the endpoint of the extension trajectory as the endpoint; and controlling the target vehicle to travel to the endpoint according to the updated sequence of multiple steering trajectory segments.
[0017] Fifthly, embodiments of this application provide a computer program product that, when run on a terminal device, causes the terminal device to execute the vehicle steering control method described in any of the first aspects above.
[0018] It is understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here.
[0019] The beneficial effects of this application embodiment compared with the prior art are as follows: In the above-mentioned vehicle steering control method, device, computer equipment, storage medium, and computer program product, the server plans the overall steering trajectory based on the target vehicle's starting orientation and ending orientation. The overall steering trajectory is then divided into multiple steering trajectory sequences with the speed reversal point as the endpoint. An extension trajectory corresponding to the speed reversal point is generated with the speed reversal point as the starting point, and these extension trajectories are spliced into the multiple steering trajectory sequences to form an updated sequence. The target vehicle is then controlled to travel to the endpoint according to the updated sequence of multiple steering trajectories. In this method, the server divides the overall steering trajectory into multiple steering trajectory sequences with the speed reversal point as the endpoint. An interpolation extension tip algorithm is used to generate an extension trajectory corresponding to the speed reversal point with the speed reversal point as the starting point. This allows the target vehicle to adjust its attitude to a preset orientation at the preset speed reversal point on the extension trajectory, thereby enabling the target vehicle to achieve steering more accurately. Attached Figure Description
[0020] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0021] Figure 1 This is an application environment diagram of a vehicle steering control method according to an embodiment of this application;
[0022] Figure 2 This is a schematic flowchart of a vehicle steering control method in one embodiment of this application;
[0023] Figure 3 This is a flowchart illustrating the reverse point acquisition steps provided in an embodiment of this application;
[0024] Figure 4 This is a flowchart illustrating the first sequence generation step provided in an embodiment of this application;
[0025] Figure 5 This is an overall steering trajectory diagram provided in one embodiment of this application;
[0026] Figure 6 This is a schematic diagram illustrating the determination of the insertion direction of the extended trajectory point according to an embodiment of this application;
[0027] Figure 7This is a schematic diagram of the vehicle steering planning device provided in the embodiments of this application;
[0028] Figure 8 This is a schematic diagram of the structure of the terminal device provided in the embodiments of this application. Detailed Implementation
[0029] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0030] Figure 1 This is an application environment diagram of a vehicle steering control method in one embodiment of this application.
[0031] The vehicle steering control method provided in this application embodiment can be applied to, for example, Figure 1 In the application environment shown, the target vehicle 102 communicates with the server 104 via a network. A data storage system can store the data that the server 104 needs to process. The data storage system can be integrated onto the server 104 or placed in the cloud or on another network server. The server 104 plans an overall turning trajectory based on the target vehicle's starting and ending directions, determines various speed reversal points on the overall turning trajectory, divides the overall turning trajectory into a sequence of multiple turning trajectory segments with each speed reversal point as an endpoint, generates an extension trajectory corresponding to each speed reversal point as a starting point, and splices the extension trajectories into the multiple turning trajectory segments to form an updated sequence of multiple turning trajectory segments. The updated sequence of multiple turning trajectory segments is then sent to the target vehicle 102 so that the target vehicle 102 can travel to the destination according to the updated sequence of multiple turning trajectory segments. The server 104 can be implemented using a standalone server or a server cluster consisting of multiple servers.
[0032] Optionally, the data storage system and server 104 are both integrated into the target vehicle 102.
[0033] Figure 2 This is a schematic flowchart of a vehicle steering control method in one embodiment of this application.
[0034] In one embodiment, such as Figure 2 As shown, a vehicle steering control method is provided, which is applied to... Figure 1 Taking server 104 as an example, the following steps are included:
[0035] S202, the overall turning trajectory is planned based on the starting orientation and ending orientation of the target vehicle.
[0036] The overall steering trajectory includes the target vehicle's starting position, starting orientation, ending position, ending orientation, forward trajectory, and reverse trajectory. This overall steering trajectory is used to instruct the target vehicle to find a suitable ending point and ending orientation for a U-turn, and to transform the starting orientation into the ending orientation so that the target vehicle can achieve the steering plan.
[0037] Specifically, the server obtains the real-time coordinates and initial orientation of the target vehicle. Based on the real-time coordinates and initial orientation of the target vehicle, it finds a suitable turning target point and target orientation in the drivable path map of the target vehicle. The real-time coordinates of the target vehicle are used as the starting point, the initial orientation as the starting orientation, and the turning target point as the ending point. Based on the starting point, starting orientation, turning target point, and ending orientation of the target vehicle, a hybrid A* algorithm is used to plan an overall turning trajectory. The overall turning trajectory includes the trajectory of the target vehicle traveling with two different travel strategies, and the corresponding preset orientation is specified at the intersection of the two different travel strategies.
[0038] S204 determines the speed reversal points on the overall steering trajectory.
[0039] Among them, the speed reversal point refers to the intersection of the trajectories of two different travel strategies in the overall turning trajectory.
[0040] Understandably, when the target vehicle cannot rotate in place, it cannot control the front of the vehicle to turn through an obtuse angle during one-way travel. Therefore, when the angle between the initial orientation and the destination orientation of the target vehicle is an obtuse angle, it is impossible to control the front of the target vehicle to turn through an obtuse angle in place, and the target vehicle needs to change its driving strategy. For the target vehicle to change its orientation from the initial orientation to the target orientation, it needs to undergo multiple changes in driving strategy. The angle between the trajectories of different driving strategies is generally an acute angle, with the vertex of the acute angle being the point of velocity reversal.
[0041] Specifically, the server obtains the overall turning trajectory planned by S202, obtains the slope of each trajectory point on the overall turning trajectory, and when the sign of the slope of the trajectory point near the critical trajectory point changes, the critical trajectory point is determined as the velocity reversal point.
[0042] S206 divides the overall steering trajectory into a sequence of multiple steering trajectories with the speed reversal point as the endpoint.
[0043] Specifically, the server divides the overall steering trajectory into multiple steering trajectories using the target vehicle's starting point, target vehicle's ending point, and each speed reversal point as endpoints, and arranges each steering trajectory into a multi-segment steering trajectory sequence according to the direction of travel on the overall steering trajectory.
[0044] S208, starting from the speed reversal point, generate an extended trajectory corresponding to the speed reversal point, and splice the extended trajectory into a multi-segment turning trajectory sequence to form an updated multi-segment turning trajectory sequence with the end point of the extended trajectory as the endpoint.
[0045] The server utilizes an interpolation-based tip extension algorithm to insert extension line points at velocity reversal points, forming corresponding extension line trajectories at each velocity reversal point. The specific interpolation process includes: finding any two points on the overall turning trajectory, including a first trajectory point and a second trajectory point, where the first and second trajectory points, together with the velocity reversal point, form two direction vectors; calculating the direction of the extension trajectory using the coordinates of the first and second trajectory points; and sequentially inserting extension trajectory points along the extension trajectory direction, starting from the velocity direction point, with each extension trajectory point forming an extension line trajectory corresponding to that velocity direction point.
[0046] Specifically, the server calculates the direction of the extended trajectory based on the coordinates of the first and second trajectory points. Along the direction of the extended trajectory, starting from the velocity reversal point, it evenly inserts each extended sampling point until the end of the extended sampling. Then, it generates an extended trajectory sequence corresponding to the velocity reversal point based on each extended sampling point. The extended trajectory sequences are then spliced to the corresponding velocity reversal points and combined with the original multi-segment turning trajectory sequence to form an updated multi-segment turning trajectory sequence.
[0047] S210, control the target vehicle to travel to the destination according to the updated multi-segment trajectory sequence.
[0048] The server sends each segment of the multiple steering trajectory sequence to the target vehicle controller in sequence, so that the target vehicle travels to the destination according to each segment of the steering trajectory.
[0049] In the aforementioned vehicle steering control method, the server plans an overall steering trajectory based on the target vehicle's initial and final orientations. This overall trajectory is then divided into multiple steering trajectory sequences, with the speed reversal point as the endpoint. Starting from this speed reversal point, an interpolation-based extension tip algorithm is used to generate an extension trajectory corresponding to the speed reversal point. This extension trajectory is then stitched into the multiple steering trajectory sequences to form an updated sequence. The target vehicle is controlled to travel to its destination according to this updated sequence of steering trajectories. In this method, the server divides the overall steering trajectory into multiple steering trajectory sequences with the speed reversal point as the endpoint. Starting from this speed reversal point, an interpolation-based extension tip algorithm is used to generate an extension trajectory corresponding to the speed reversal point. This allows the target vehicle to adjust its attitude to a preset orientation at the preset speed reversal point along the extension trajectory, thereby enabling the target vehicle to achieve more precise steering.
[0050] In one embodiment, the overall steering trajectory is planned based on the target vehicle's starting orientation and ending orientation, including:
[0051] Obtain the starting point and starting orientation of the target vehicle, as well as the ending point and ending orientation of the target vehicle.
[0052] Specifically, the server obtains the target vehicle's location information from the positioning detector on the target vehicle, and obtains the target vehicle's pose information from the vehicle's onboard camera. Based on the target vehicle's starting point and initial orientation, the server finds a suitable target orientation and turning point on the target vehicle's drivable map, determines the target orientation as the destination orientation, and determines the turning point as the destination.
[0053] A general turning trajectory is planned between the starting point and the ending point of the target vehicle, so that the direction of the target vehicle when it reaches the end point of the general turning trajectory is the direction of the target vehicle's ending point.
[0054] Using the hybrid A* algorithm, an overall turning trajectory is planned between the starting point and the ending point of the target vehicle. This overall turning trajectory includes both forward and backward strategies. The intersection point between each forward and backward strategy trajectory is set with the target vehicle's preset orientation.
[0055] In this embodiment, the hybrid A* algorithm is used to plan an overall turning trajectory between the starting point and the ending point of the target vehicle, thereby enabling the target vehicle to avoid all road obstacles and avoid collisions with other vehicles and obstacles, thus increasing the safety of the turning trajectory.
[0056] Figure 3 This is a flowchart illustrating the reverse point acquisition steps provided in an embodiment of this application.
[0057] In one embodiment, such as Figure 3 As shown, the velocity reversal points are determined on the overall turning trajectory, including:
[0058] S302, generate a first vector based on the first steering trajectory point and the target trajectory point, and generate a second vector based on the second steering trajectory point and the target trajectory point; the first steering trajectory point and the second steering trajectory point are two points existing on the overall steering trajectory.
[0059] Specifically, the server finds two turning trajectory points on the overall turning trajectory, namely the first turning trajectory point and the second turning trajectory point. A first vector is formed with the target trajectory point as the starting point and the first turning trajectory point as the ending point; a second vector is formed with the target trajectory point as the starting point and the second turning trajectory point as the ending point.
[0060] S304, calculate the angle between the first vector and the second vector. If the angle is less than a preset threshold, then the target trajectory point is determined as the velocity reversal point.
[0061] The preset threshold for the angle between the first vector and the second vector is less than 90 degrees.
[0062] Calculate the angle between the first vector and the second vector. If there exists a first turning trajectory point and a second turning trajectory point on the overall turning trajectory such that the angle between the first vector and the second vector is less than a threshold, then the target trajectory point is determined as the velocity reversal point.
[0063] S306, traverse all trajectory points on the overall steering trajectory and determine all velocity reversal points on the overall steering trajectory.
[0064] Specifically, all trajectory points on the overall turning trajectory are traversed, that is, any trajectory point on the overall turning trajectory is taken as the target trajectory point. If a first trajectory point and a second trajectory point other than the target trajectory point can be found on the overall turning trajectory such that the angle between the first vector and the second vector is less than a threshold, then the target trajectory point is the velocity reversal point.
[0065] In this embodiment, since the target vehicle cannot turn its front end through an obtuse angle, when the server traverses all the trajectory points on the overall steering trajectory, it can accurately determine the speed reversal point on the overall steering trajectory by judging whether the angle between the first vector and the second vector is less than a preset threshold and the preset threshold is less than 90 degrees.
[0066] Figure 4 This is a flowchart illustrating the first sequence generation step provided in an embodiment of this application.
[0067] In one embodiment, such as Figure 4 As shown, the extended trajectory corresponding to the velocity reversal point is generated using an interpolation-based tip extension algorithm, starting from the velocity reversal point. This includes:
[0068] S402, obtain the coordinates of the first steering trajectory point and the second steering trajectory point.
[0069] Insert a Cartesian coordinate system into the overall steering trajectory to obtain the coordinates of the first steering trajectory point and the coordinates of the second steering trajectory point.
[0070] S404, calculate the midpoint coordinates based on the coordinates of the first turning trajectory point and the second turning trajectory point, and determine the direction of the extended trajectory point based on the midpoint coordinates and the target trajectory point coordinates.
[0071] Specifically, the server calculates the average of the horizontal and vertical coordinates of the first and second turning trajectory points to obtain the midpoint between the two points. Using this midpoint as the starting point and the target trajectory point as the ending point, the server determines the direction from the midpoint to the target trajectory point and uses this direction as the direction for extending the trajectory point.
[0072] S406, starting from the target trajectory point, insert the extended trajectory points evenly along the direction of the extended trajectory points to form an extended trajectory corresponding to the velocity reversal point.
[0073] Specifically, the server takes the target trajectory point as the starting point and inserts extension trajectory points evenly along the direction of the extension trajectory point. The interval between each extension trajectory point is kept uniform. The final sampling point is the endpoint sampling point. It is also worth noting that the extension trajectory is from the target trajectory point to the endpoint sampling point, and then from the endpoint sampling point to the target sampling point.
[0074] In this embodiment, the server generates an extended trajectory at each speed reversal point based on the first trajectory point and the second trajectory point, so that the target vehicle can adjust its front orientation to the preset orientation at the speed reversal point on the extended trajectory.
[0075] In one embodiment, controlling a target vehicle to travel to the destination according to an updated multi-segment steering trajectory sequence includes: sequentially sending the updated multi-segment steering trajectory sequence to the controller of the target vehicle, so that the controller of the target vehicle controls the target vehicle to travel to the destination.
[0076] It should be noted that the updated multi-segment steering trajectory includes the multi-segment steering trajectory and the extension trajectory. The updated multi-segment steering trajectory contains multiple trajectories, which can be divided into the first steering trajectory, the second steering trajectory, and the Nth steering trajectory. The Nth steering trajectory includes the Nth multi-segment steering trajectory and the Nth extension trajectory.
[0077] In this embodiment, the server sends the updated multi-segment steering trajectory to the target vehicle controller. By segmenting the steering trajectory into segments, the control module can drive the target vehicle to reach each speed reversal point more accurately, thereby enabling the target vehicle to accurately complete the trajectory tracking task.
[0078] In one embodiment, the target vehicle controller controls the target vehicle to travel to the destination, including: the target vehicle controller uses two different travel strategies to execute two adjacent steering trajectory sequences to make the target vehicle travel to the destination.
[0079] Among them, the two movement strategies can be a forward movement strategy and a backward movement strategy.
[0080] Since the updated multi-segment steering trajectory sequence is based on the endpoint of the extended trajectory, and the endpoint of the extended trajectory is used to define the trajectory sequence with two different driving strategies, the controller controls the target vehicle with alternating forward and reverse driving strategies to drive the target vehicle to turn.
[0081] Figure 5 This is an overall steering trajectory diagram provided in one embodiment of this application.
[0082] In one embodiment, such as Figure 5 As shown, a vehicle steering control method is proposed.
[0083] S1, the server plans an overall turning trajectory based on the target vehicle's starting point and starting direction, and ending point and ending direction. This overall turning trajectory consists of trajectory segments numbered ①-⑥. The target vehicle starts from the starting point and travels along trajectory number ① according to the starting direction, using a forward driving strategy to travel along this trajectory to point a1.
[0084] S2, find the first turning trajectory point and the second turning trajectory point on the overall turning trajectory. Form a first vector by combining the target trajectory point and the first turning trajectory point, and form a second vector by combining the target trajectory point and the second turning trajectory point. Calculate the angle between the first vector and the second vector, and compare the angle with the angle threshold. If the angle is less than the angle threshold, then determine the target trajectory point pm as the velocity reversal point. Traverse all trajectory points on the overall turning trajectory to determine the velocity reversal points on the overall turning trajectory, which include points a1, b1, and c1.
[0085] S3, as Figure 6 As shown, the midpoint pn between the first and second turning trajectory points is calculated. Then, a straight line passing through points pn and pm is calculated, and the extended trajectory points are evenly inserted along the vector pnpm after the target trajectory point pm until the endpoint sampling point pe. It is important to note that the length of the extended trajectory cannot exceed 1m; this needs to be determined in conjunction with the shortest trajectory that the control algorithm can track. Taking point a1 as an example, the first turning trajectory point p1 and the second turning trajectory point p2 are found on the overall turning trajectory, and the perpendicular bisector between points p1 and p2 is calculated. Extended trajectory points are evenly inserted along this perpendicular bisector until point A1. The same applies to points b1 and c1.
[0086] S4, after the target vehicle reaches point a1, it continues to travel along trajectory ② with the forward driving strategy to point A1. At point A1, the target vehicle controller adjusts the target vehicle's pose to the first preset orientation, and then controls the target vehicle to return to point a1 along trajectory ② with the reverse driving strategy. Then, it continues to travel along trajectory ③ with the reverse driving strategy to point b1, and then along trajectory ④ with the reverse driving strategy to the end point B1 of the extended trajectory. At point B1, the target vehicle controller adjusts the target vehicle's pose to the second preset orientation, and then continues to travel along trajectory ④ with the forward driving strategy to return to point b1. Then, it continues to travel along trajectory ⑤ with the forward driving strategy to point c1, and then along trajectory ⑥ with the forward driving strategy to point C1. At point C1, the target vehicle controller adjusts the target vehicle's pose to the end orientation, thus adjusting the target vehicle's pose from the starting orientation to the target orientation.
[0087] In this embodiment, the server divides the overall steering trajectory into multiple steering trajectory sequences with the speed reversal point as the endpoint. Starting from the speed reversal point, the server uses an interpolation extension tip algorithm to generate an extension trajectory corresponding to the speed reversal point, so that the target vehicle adjusts its attitude to a preset orientation at the preset speed reversal point on the extension trajectory, thereby enabling the target vehicle to achieve steering more accurately.
[0088] It should be understood that although the steps in the flowcharts of the above embodiments are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0089] Based on the same inventive concept, this application also provides a vehicle steering control device for implementing the vehicle steering control method described above. The solution provided by this device is similar to the solution described in the above method; therefore, the specific limitations in one or more robot teaching device embodiments provided below can be found in the limitations of the vehicle steering control method described above, and will not be repeated here.
[0090] Figure 7 This is a schematic diagram of the vehicle steering planning device provided in the embodiments of this application.
[0091] In one embodiment, such as Figure 7 As shown, a vehicle steering control device 700 is provided, including: a trajectory planning module 702, a reverse point determination module 704, a first sequence generation module 706, a second sequence generation module 708, and a running control module 710, wherein:
[0092] The trajectory planning module 702 is used to plan the overall turning trajectory based on the starting orientation and ending orientation of the target vehicle.
[0093] The reverse point determination module 704 is used to determine the reverse points of each speed on the overall steering trajectory.
[0094] The first sequence generation module 706 is used to cut the overall turning trajectory into a multi-segment turning trajectory sequence with the speed reversal point as the endpoint.
[0095] The second sequence generation module 708 is used to generate an extended trajectory corresponding to the speed reversal point, starting from the speed reversal point, and to splice the extended trajectory to a multi-segment turning trajectory sequence to form an updated multi-segment turning trajectory sequence with the end point of the extended trajectory as the endpoint.
[0096] The operation control module 710 is used to control the target vehicle to travel to the destination according to the updated multi-segment steering trajectory sequence.
[0097] In the aforementioned vehicle steering control device 700, the server plans an overall steering trajectory based on the target vehicle's initial and final orientations. This overall trajectory is then divided into multiple steering trajectory sequences, with the speed reversal point as the endpoint. Starting from this speed reversal point, an interpolation extension tip algorithm is used to generate an extension trajectory corresponding to the speed reversal point. This extension trajectory is then inserted into the multiple steering trajectory sequences to form an updated sequence of multiple steering trajectory segments. The target vehicle is controlled to travel to the endpoint according to this updated sequence of multiple steering trajectory segments. In this method, the server divides the overall steering trajectory into multiple steering trajectory sequences with the speed reversal point as the endpoint. Starting from this speed reversal point, an interpolation extension tip algorithm is used to generate an extension trajectory corresponding to the speed reversal point. This allows the target vehicle to adjust its attitude to a preset orientation at the preset speed reversal point along the extended trajectory, thereby enabling the target vehicle to achieve more precise steering.
[0098] In one embodiment, the trajectory planning module 702 includes: an orientation acquisition submodule for acquiring the starting point and starting orientation of the target vehicle, as well as the ending point and ending orientation of the target vehicle; and a trajectory planning submodule for planning an overall turning trajectory between the starting point and the ending point of the target vehicle, such that the orientation of the target vehicle when it reaches the end point of the overall turning trajectory is the ending orientation of the target vehicle.
[0099] In one embodiment, the reversal point determination module 704 includes: a trajectory point determination submodule, used to generate a first vector based on a first turning trajectory point and a target trajectory point, and to generate a second vector based on a second turning trajectory point and a target trajectory point; the first turning trajectory point and the second turning trajectory point are two points existing on the overall turning trajectory; a calculation submodule, used to calculate the angle between the first vector and the second vector, and if the angle is less than a preset threshold, then the target trajectory point is determined as a speed reversal point; and a traversal submodule, used to traverse all trajectory points on the overall turning trajectory and determine all speed reversal points on the overall turning trajectory.
[0100] The first sequence generation module 706 includes: a coordinate acquisition submodule, used to acquire the coordinates of a first turning trajectory point and a second turning trajectory point; a direction determination submodule, used to calculate the midpoint coordinates based on the coordinates of the first turning trajectory point and the second turning trajectory point, and to determine the direction of the extended trajectory point based on the midpoint coordinates and the target trajectory point coordinates; and a trajectory forming submodule, used to uniformly insert extended trajectory points along the direction of the extended trajectory point, starting from the target trajectory point, to form an extended trajectory corresponding to the velocity reversal point.
[0101] The operation control module 710 is also used to send the updated multi-segment steering trajectory sequence to the controller of the target vehicle in sequence, so that the controller of the target vehicle can control the target vehicle to drive until the destination.
[0102] The various modules in the aforementioned vehicle steering control device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the corresponding operations of each module.
[0103] Figure 8 This is a schematic diagram of the structure of the terminal device provided in the embodiments of this application.
[0104] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 8 As shown, the computer device includes a processor, memory, and a network interface connected via a system bus. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores path trajectory data. The network interface communicates with external terminals via a network connection. When executed by the processor, the computer program implements a robot teaching method.
[0105] Those skilled in the art will understand that Figure 8 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0106] In one embodiment, a computer device is provided, including a memory and a processor. The memory stores a computer program, and the processor executes the computer program to perform the following steps: planning an overall steering trajectory based on the initial orientation and the final orientation of the target vehicle; determining each speed reversal point on the overall steering trajectory; dividing the overall steering trajectory into a sequence of multiple steering trajectory segments with the speed reversal points as endpoints; generating an extension trajectory corresponding to the speed reversal point as the starting point, and splicing the extension trajectory to the sequence of multiple steering trajectory segments to form an updated sequence of multiple steering trajectory segments with the endpoints of the extension trajectory segments as endpoints; and controlling the target vehicle to travel to the endpoint according to the updated sequence of multiple steering trajectory segments.
[0107] In one embodiment, when the processor executes the computer program, it further performs the following steps: obtaining the starting point and starting orientation of the target vehicle, as well as the ending point and ending orientation of the target vehicle; planning an overall turning trajectory between the starting point and the ending point of the target vehicle, such that the orientation of the target vehicle when it reaches the end point of the overall turning trajectory is the ending orientation of the target vehicle.
[0108] In one embodiment, when the processor executes the computer program, it further performs the following steps: generating a first vector based on a first steering trajectory point and a target trajectory point, and generating a second vector based on a second steering trajectory point and a target trajectory point; the first steering trajectory point and the second steering trajectory point are two points existing on the overall steering trajectory; calculating the angle between the first vector and the second vector, and if the angle is less than a preset threshold, determining the target trajectory point as a speed reversal point; traversing all trajectory points on the overall steering trajectory, and determining all speed reversal points on the overall steering trajectory.
[0109] In one embodiment, when the processor executes the computer program, it further performs the following steps: obtaining the coordinates of a first steering trajectory point and a second steering trajectory point; calculating the coordinates of the midpoint based on the coordinates of the first steering trajectory point and the second steering trajectory point, and determining the direction of the extended trajectory point based on the coordinates of the midpoint and the coordinates of the target trajectory point; and uniformly inserting extended trajectory points along the direction of the extended trajectory point, starting from the target trajectory point, to form an extended trajectory corresponding to the velocity reversal point.
[0110] In one embodiment, when the processor executes the computer program, it also performs the following steps: sequentially sending the updated multi-segment steering trajectory sequence to the controller of the target vehicle, so that the controller of the target vehicle controls the target vehicle to drive until the destination.
[0111] In one embodiment, when the processor executes the computer program, it also performs the following steps: the target vehicle controller executes two adjacent steering trajectory sequences using two different travel strategies to drive the target vehicle to the destination.
[0112] In one embodiment, when the processor executes the computer program, it also implements the following steps: two travel strategies are a forward travel strategy and a backward travel strategy.
[0113] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements a vehicle steering control method.
[0114] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements a vehicle steering control method.
[0115] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties.
[0116] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0117] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0118] The above embodiments are merely illustrative of several implementation methods of this application, and their descriptions are relatively specific and detailed. However, they should not be construed as limiting the scope of this application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A vehicle steering control method, characterized in that, The vehicle steering control method includes: The overall turning trajectory is planned based on the target vehicle's starting orientation and ending orientation; Determining each velocity reversal point on the overall steering trajectory includes: generating a first vector based on a first steering trajectory point and a target trajectory point, and generating a second vector based on a second steering trajectory point and a target trajectory point; the first steering trajectory point and the second steering trajectory point are two points existing on the overall steering trajectory; calculating the angle between the first vector and the second vector, and if the angle is less than a preset threshold, then determining the target trajectory point as a velocity reversal point; traversing all trajectory points on the overall steering trajectory to determine all velocity reversal points on the overall steering trajectory; The overall steering trajectory is divided into a sequence of multiple steering trajectories with the speed reversal point as the endpoint; Generating an extended trajectory corresponding to the speed reversal point, starting from the speed reversal point, includes: obtaining the coordinates of the first turning trajectory point and the second turning trajectory point; calculating the midpoint coordinates based on the first turning trajectory point coordinates and the second turning trajectory point coordinates, and determining the direction of the extended trajectory point based on the midpoint coordinates and the target trajectory point coordinates; and uniformly inserting extended trajectory points along the direction of the extended trajectory point, starting from the target trajectory point, to form an extended trajectory corresponding to the speed reversal point. The extended line trajectory is spliced to the multi-segment turning trajectory sequence to form an updated multi-segment turning trajectory sequence with the end point of the extended line trajectory as the endpoint; Control the target vehicle to travel to the destination according to the updated multi-segment steering trajectory sequence.
2. The vehicle steering control method as described in claim 1, characterized in that, The step of planning the overall turning trajectory based on the target vehicle's starting orientation and ending orientation includes: Obtain the starting point and starting direction of the target vehicle, as well as the ending point and ending direction of the target vehicle; A general turning trajectory is planned between the starting point and the ending point of the target vehicle, such that the direction in which the target vehicle travels to the end point of the general turning trajectory is the direction in which the target vehicle ends.
3. The vehicle steering control method as described in claim 1, characterized in that, Controlling the target vehicle to travel to the destination according to the updated multi-segment steering trajectory sequence includes: The updated multi-segment steering trajectory sequence is sent sequentially to the controller of the target vehicle, so that the controller of the target vehicle can control the target vehicle to drive until the destination.
4. The vehicle steering control method as described in claim 3, characterized in that, The target vehicle controller controls the target vehicle to travel to its destination, including: The target vehicle controller employs two different travel strategies to execute two adjacent steering trajectory sequences to guide the target vehicle to its destination.
5. The vehicle steering control method as described in claim 4, characterized in that, The two travel strategies are a forward travel strategy and a backward travel strategy.
6. A vehicle steering control device, characterized in that, The device includes: The trajectory planning module is used to plan the overall turning trajectory based on the target vehicle's starting orientation and ending orientation. The reversal point determination module is used to determine each speed reversal point on the overall steering trajectory; The first sequence generation module is used to cut the overall turning trajectory into a multi-segment turning trajectory sequence with the speed reversal point as the endpoint; The second sequence generation module is used to generate an extended line trajectory corresponding to the speed reversal point as the starting point, and to splice the extended line trajectory to the multi-segment turning trajectory sequence to form an updated multi-segment turning trajectory sequence with the end point of the extended line trajectory as the endpoint. The operation control module is used to control the target vehicle to travel to the destination according to the updated multi-segment steering trajectory sequence; The reverse point determination module includes a trajectory point determination submodule, used to generate a first vector based on the first turning trajectory point and the target trajectory point, and to generate a second vector based on the second turning trajectory point and the target trajectory point; The first steering trajectory point and the second steering trajectory point are two points that exist on the overall steering trajectory; The calculation submodule is used to calculate the angle between the first vector and the second vector. If the angle is less than a preset threshold, the target trajectory point is determined as the velocity reversal point. The traversal submodule is used to traverse all trajectory points on the overall turning trajectory and determine all velocity reversal points on the overall turning trajectory. The first sequence generation module includes: a coordinate acquisition submodule, used to acquire the coordinates of the first turning trajectory point and the coordinates of the second turning trajectory; The direction determination submodule is used to calculate the midpoint coordinates based on the coordinates of the first turning trajectory point and the second turning trajectory point, and to determine the direction of the extended trajectory point based on the midpoint coordinates and the target trajectory point coordinates. The trajectory forming submodule is used to uniformly insert extension trajectory points along the direction of the extension trajectory points, starting from the target trajectory point, to form an extension trajectory corresponding to the velocity reversal point.
7. A terminal device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the method as described in any one of claims 1 to 5.
8. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1 to 5.