Method, device, controller and intelligent automobile for vehicle control
By acquiring the collision potential energy between the intelligent vehicle and the obstacle, and utilizing a dual-channel redundancy design and a potential energy decomposition and merging method, the optimal speed is determined to avoid the obstacle. This solves the problem of collision misjudgment in complex scenarios for intelligent vehicles, and achieves accurate obstacle avoidance and improved safety.
Patent Information
- Application Number
- CN202210301333.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-09-16
- Filing Date
- 2019-12-31
- Publication Date
- 2025-11-11
- Estimated Expiration
- 2039-12-31
AI Technical Summary
Existing collision avoidance systems in intelligent vehicles are prone to misjudgment or omission in complex scenarios, leading to collisions between vehicles and obstacles. Furthermore, traditional methods can only prevent collisions in front and cannot effectively avoid collisions in multiple directions.
By acquiring the collision potential energy of the intelligent vehicle with surrounding obstacles, the speed of the working channel and safety channel with dual-channel redundancy design is planned separately. Combined with the potential energy decomposition and merging method, the optimal speed is determined to avoid obstacles. The driver or controller is prompted to take over through the interface display screen to achieve precise obstacle avoidance.
It enhances the safety of intelligent vehicles during autonomous driving, effectively avoiding collisions with obstacles from all directions, reducing injuries to passengers and the vehicle, and improving the driving experience and safety.
Smart Images

Figure CN114834443B_ABST
Abstract
Description
[0001] This application is a divisional application. The original application has the application number 201911417586.0 and the original application date is December 31, 2019. The entire contents of the original application are incorporated herein by reference. Technical Field
[0002] This application relates to the automotive field, and more particularly to a method, apparatus, controller, and intelligent car for vehicle control. Background Technology
[0003] With the increasing application of artificial intelligence (AI) technology in the field of intelligent vehicles, more and more intelligent vehicles are utilizing AI algorithms, such as deep learning, to achieve automatic driving (ADS). Traditional technologies use onboard sensors to collect information about vehicles ahead, and the onboard controller determines whether a collision will occur based on braking distance and minimum braking time. Once the controller determines a collision is imminent, it initiates braking. However, this collision avoidance scheme only considers the distance between the vehicle and other vehicles and the minimum braking time to decide whether to brake, which can easily lead to misjudgments or missed judgments, resulting in personal injury or vehicle damage. Furthermore, in complex scenarios, if there are potential collisions from multiple directions simultaneously or some vehicles are traveling in the wrong direction, simply performing braking may not be effective in preventing collisions with other vehicles. Therefore, how to provide a more effective vehicle control method for obstacle avoidance has become an urgent technical problem to be solved. Summary of the Invention
[0004] This application provides a vehicle control method, device, controller, and intelligent vehicle, which can be applied to intelligent vehicles to achieve a more effective collision avoidance function and improve the safety of intelligent vehicles during autonomous driving.
[0005] Firstly, a vehicle control method is provided, comprising: acquiring a first speed for planning the travel of an intelligent vehicle in a first region; the first region being a segment of the intelligent vehicle's journey to a destination; acquiring a second speed for planning the travel of the intelligent vehicle in the first region; the second speed being obtained based on collision potential energy; wherein the first speed and the second speed respectively include direction and magnitude; the first speed, the second speed, and the collision risk between the intelligent vehicle and surrounding obstacles are used to determine an optimal speed for the intelligent vehicle, the optimal speed including magnitude and direction. Through this method, the intelligent vehicle can utilize a dual-channel redundant design, planning a first speed and a second speed for travel within the same region, and then determining the optimal speed based on the collision risk between the intelligent vehicle and surrounding obstacles. This enables the intelligent vehicle to avoid collisions with surrounding obstacles at the optimal speed, reducing injuries to passengers and the vehicle itself, and improving the safety of the intelligent vehicle during autonomous driving.
[0006] In one possible implementation, collision potential energy is used to identify the tendency of obstacles around the intelligent vehicle to collide with it. In this application, the safety passage can identify obstacles that may collide with the vehicle using collision potential energy, and further determine a first velocity based on the collision potential energy. Controlling the intelligent vehicle to travel at the first velocity can effectively achieve the obstacle avoidance process.
[0007] In another possible implementation, the optimal speed for collision avoidance of the intelligent vehicle is determined based on the first speed, the second speed, and the collision risk between the intelligent vehicle and surrounding obstacles. The optimal speed includes both magnitude and direction. Through the above description, the vehicle control method provided in this application allows the intelligent vehicle to select an optimal speed from the first speed and the second speed based on the collision risk between itself and obstacles, and control the intelligent vehicle's movement at this speed, thereby effectively avoiding collisions with surrounding obstacles and improving the safety of the intelligent vehicle.
[0008] In another possible implementation, a speed control command is received, and the intelligent vehicle is controlled to drive using the speed control command. In the method provided in this application, the intelligent vehicle can present a first speed and a second speed to the driver via an interface display screen or similar means, allowing the driver to select either the first or second speed to control the intelligent vehicle's movement. In this case, the speed selected by the driver can be sent to the intelligent vehicle's controller in the form of a speed control command, and the controller will then control the intelligent vehicle's movement according to the speed control command.
[0009] Optionally, the driver can also switch to manual driving mode via the interface display and control the intelligent vehicle to drive according to the current driver's operation. In this application, the interface display warns the driver of collision risks, and the driver can directly take over control of the intelligent vehicle, thereby achieving manual control of the intelligent vehicle's driving.
[0010] In another possible implementation, when the intelligent vehicle is controlled by a controller and a first preset condition is met, the optimal speed is the first speed; wherein, the first preset condition is that the collision potential energy of any surrounding obstacle is less than a first threshold. In the vehicle control method provided in this application, the speed of the intelligent vehicle can be determined by the collision potential energy of obstacles. When the direction of collision between any obstacle and the vehicle is less than the first threshold, the vehicle can be controlled at a speed determined by the working channel. That is, when there is no obstacle and a preset collision risk exists, the vehicle can be controlled at a speed determined by the working channel, thereby achieving obstacle avoidance and improving the safety of the intelligent vehicle.
[0011] In another possible implementation, when the intelligent vehicle is controlled by a controller and a second preset condition is met, the optimal speed is the second speed; wherein the second preset condition is that the collision potential energy of any surrounding obstacle is greater than or equal to a first threshold. In the vehicle control method provided in this application, the tendency for an obstacle to collide with the vehicle is determined based on the collision potential energy of surrounding obstacles. When the collision potential energy of any obstacle around the vehicle is greater than or equal to the first threshold, the intelligent vehicle is controlled to travel at the second speed determined by the safe passage. That is, when any surrounding obstacle reaches a preset collision risk, the vehicle is controlled to travel at the speed determined by the safe passage, thereby achieving obstacle avoidance and improving the safety of the intelligent vehicle.
[0012] In another possible implementation, the intelligent vehicle can alert the driver to a potential collision risk through at least one of the following methods: displaying a text message on the vehicle's in-vehicle display indicating a potential collision with a surrounding obstacle, specifying a first and second speed; or displaying a voice message within the vehicle, specifying a first and second speed; or displaying a warning via seat vibration; or displaying a warning via flashing headlights. These methods enable message interaction between the intelligent vehicle and the driver, allowing for timely alerts to potential risks in dangerous situations and enabling the driver to take over or control the driving process, thereby reducing driver fear due to lack of awareness and improving the driving experience.
[0013] Optionally, the above-mentioned prompting method can also present the optimal speed of the vehicle to the driver, allowing the driver to understand the obstacle avoidance process and speed planned by the vehicle, increasing the human-vehicle interaction process and improving the user experience.
[0014] Based on the above description, the vehicle control method provided in this application can plan the speeds of the safety passage and the working passage in a first area, and the controller selects one speed as the optimal speed, or the controller receives the speed selected by the driver, and then controls the vehicle to drive at the optimal speed or the speed selected by the driver, thereby achieving an effective obstacle avoidance process and improving the safety of intelligent vehicles. Furthermore, the vehicle control method provided in this application can obtain the optimal speed that meets high functional safety requirements in any area based on the collision potential energy of obstacles using a potential energy decomposition and merging method, and then verify it through feasible areas to finally determine the optimal speed for obstacle avoidance of the intelligent vehicle. By comprehensively considering the distance and relative speed between the vehicle and surrounding obstacles, the possibility of collision between the vehicle and obstacles is better identified, thereby solving the problem of misjudgment or omission caused by traditional methods that only rely on braking distance and minimum braking time. Furthermore, the method provided in this application can avoid collisions not only with vehicles in front of the vehicle, but also with vehicles from behind, sides, and other directions. Compared to traditional methods that can only avoid collisions with vehicles in front, this improves the obstacle avoidance capabilities of intelligent vehicles. It can not only control the intelligent vehicle to decelerate, but also control it to accelerate along a predetermined obstacle avoidance direction, thus enabling the intelligent vehicle to achieve obstacle avoidance in all directions. On the other hand, the obstacle avoidance direction and speed provided by the method in this application are more precise, ensuring that the intelligent vehicle avoids obstacles according to the safest direction and speed at the current moment, preventing collisions with surrounding vehicles.
[0015] Secondly, this application provides another vehicle control method, which includes: calculating the collision potential energy of surrounding obstacles of the intelligent vehicle based on first perception data, the first perception data including the relative speed and relative distance between the surrounding obstacles and the intelligent vehicle; determining a safe speed for the intelligent vehicle to travel in a first area based on the collision potential energy of the surrounding obstacles, the first area being a segment of the intelligent vehicle's planned path; and controlling the intelligent vehicle to travel in the first area at the safe speed. The method provided by this application can utilize the collision potential energy of surrounding obstacles to determine a safe speed, and control the intelligent vehicle to travel in a first area at this safe speed, thereby achieving obstacle avoidance for the intelligent vehicle, reducing damage to occupants and the vehicle itself, and improving the safety of the intelligent vehicle.
[0016] In one possible implementation, the collision potential energy is used to identify the collision tendency between the surrounding obstacles and the intelligent vehicle.
[0017] In another possible implementation, the collision potential energy of the surrounding obstacles can be calculated using the following formula:
[0018]
[0019] Where k, α, and β are constant coefficients, C is a constant, ν is the magnitude of the relative speed of the first obstacle relative to the intelligent vehicle, and d is the relative distance of the first obstacle relative to the intelligent vehicle. The first obstacle is any one of the obstacles surrounding the intelligent vehicle.
[0020] In another possible implementation, the collision risk level of each surrounding obstacle is determined based on the collision potential energy of the surrounding obstacles and a preset threshold. The collision risk level includes safe, warning, and dangerous. All surrounding obstacles with a preset collision risk level are selected. The safe speed is determined based on the collision potential energy of all surrounding obstacles with the selected preset collision risk level. In this application, the controller can select a portion of the surrounding obstacles from all surrounding obstacles based on the preset collision risk level, and further determine the safe obstacle avoidance speed based on the collision potential energy of each obstacle, which can reduce the controller's computational load and processing time.
[0021] In another possible implementation, first perception data is acquired, which is data obtained after analysis and processing of initial data detected by the sensing devices of the intelligent vehicle; a coordinate system is established with the intelligent vehicle as the origin; the positions of the surrounding obstacles in the coordinate system are calculated based on the first perception data, and the positions are used to indicate the coordinates and quadrants of each obstacle in the coordinate system.
[0022] In another possible implementation, the intelligent vehicle's coordinate system can be a coordinate system with the vehicle's center of mass as the origin and the direction of travel as the positive X-axis. Optionally, this coordinate system can also use the midpoint of the vehicle's front or rear as the origin.
[0023] In another possible implementation, when all surrounding obstacles of the preset safety risk level are distributed in the four quadrants, the maximum safe angle in the obstacle-free area is identified, the direction of the angle bisector of the maximum safe angle is taken as the direction of the safe speed, and the magnitude of the safe speed is greater than or equal to the maximum speed of the surrounding vehicles.
[0024] In another possible implementation, when all surrounding obstacles of the preset safety risk level are distributed across three quadrants, the sum of collision potential energies of all obstacles of the preset safety risk level within the same quadrant is calculated; the orthogonality of the sums of collision potential energies in each quadrant is determined; the sums of collision potential energies and / or the orthogonality of the sums of collision potential energies of all obstacles in the quadrant with obstacles are removed; the sums of collision potential energies and / or the orthogonality of the sums of collision potential energies in the quadrant without obstacles are calculated, and the combination of all directions in the orthogonality of the sums of collision potential energies and / or the sums of collision potential energies in the quadrant without obstacles is taken as the direction of the safe speed, and the magnitude of the speed greater than or equal to the maximum speed of surrounding vehicles is taken as the magnitude of the safe speed. Wherein, the direction of the sum of collision potential energies in two quadrants is the direction of the safe speed, and the magnitude of the sum of collision potential energies in two quadrants is the magnitude of the safe speed; the orthogonality of the sums of collision potential energies and / or the sums of collision potential energies includes either of the following two cases: the orthogonality of the sums of collision potential energies and the orthogonality of the sums of collision potential energies, or the orthogonality of the sums of collision potential energies alone.
[0025] In another possible implementation, when all surrounding obstacles of the preset safety risk level are distributed in two adjacent quadrants, the collision potential energy of all surrounding obstacles of the preset collision risk level in the same quadrant is calculated, and the orthogonal direction of each collision potential energy combination is determined; the orthogonal directions in the quadrant with obstacles are removed; the combination of the orthogonal directions of the collision potential energy combinations in the quadrant without obstacles is calculated as the direction of the safe speed, and the magnitude of the safe speed is the magnitude of the maximum speed of all surrounding vehicles that is greater than or equal to the preset collision risk level.
[0026] In another possible implementation, when all surrounding obstacles of the preset safety risk level are distributed in two adjacent quadrants, the collision potential energy of all surrounding vehicles of the preset collision risk level in the same quadrant is calculated, and the orthogonality of each collision potential energy combination is determined. The orthogonality of collision potential energy combinations in the quadrant with obstacles is removed. In the quadrant without obstacles, the collision potential energy combinations of obstacles in the two quadrants are compared. When the collision potential energy combinations in the two quadrants are equal, the sum of the collision potential energy combinations in the two quadrants is calculated, and the combined collision potential energy combinations in the two quadrants are used as the safe speed. When the collision potential energy combinations in the two quadrants are unequal, the sum of the orthogonal collision potential energy combinations in the two quadrants is calculated, and the combined orthogonal collision potential energy combinations in the two quadrants are used as the safe speed. The magnitude of the orthogonality of the collision potential energy combinations is the magnitude of the collision potential energy combinations, and the direction is perpendicular to the direction of the collision potential energy combinations.
[0027] In another possible implementation, when all surrounding obstacles of the preset safety risk level are distributed in two non-adjacent quadrants, the collision potential energy of all surrounding obstacles of the preset collision risk level in the same quadrant is calculated, and the orthogonality of each collision potential energy combination is determined; the orthogonal combination of the collision potential energy combinations belonging to the same quadrant is calculated, and any direction of the orthogonal combination of the collision potential energy combinations in the same quadrant is taken as the magnitude of the safe speed, which is greater than or equal to the magnitude of the maximum speed among the surrounding vehicles.
[0028] In another possible implementation, when it is determined that all surrounding vehicles of the preset collision risk level are distributed in only one quadrant, the collision potential energy of all surrounding vehicles of the preset collision risk level is calculated, and the direction of the safe speed is taken as the orthogonal direction of the collision potential energy, and the magnitude of the safe speed is greater than or equal to the maximum speed of the surrounding vehicles.
[0029] In another possible implementation, it is determined whether the direction of the safe speed falls within a feasible range, which is an area that meets the following criteria: no collision with dynamic obstacles, no collision with static obstacles, and no violation of traffic rules. Dynamic obstacles include motor vehicles, pedestrians, and animals; static obstacles include infrastructure such as medians, guardrails, paths, and streetlights; and traffic rules include driving against traffic and running red lights. When the direction of the safe speed falls within the feasible range, the intelligent vehicle is controlled to travel at the safe speed within the first area.
[0030] As another possible implementation, when the second speed confirmed by the safety passage has multiple directions, the safest direction can be selected as the direction of the second speed based on the degree of collision risk with the obstacle. The degree of collision risk includes one or more factors such as the probability of colliding with the obstacle and the degree of damage caused by the collision. The degree of damage caused by the collision can be calibrated based on the size of the obstacle, the relative speed, and the relative distance. The larger the obstacle, the faster the relative speed, and the shorter the relative distance, the higher the degree of damage caused by the collision.
[0031] Thirdly, this application provides a vehicle control apparatus, the apparatus comprising modules for performing the vehicle control method in the first aspect or any possible implementation thereof.
[0032] Fourthly, this application provides a vehicle control apparatus, the apparatus comprising modules for performing the vehicle control method of the second aspect or any possible implementation thereof.
[0033] Fifthly, this application provides a vehicle control controller, the controller including a processor, a memory, a communication interface, and a bus, the processor, memory, and communication interface being connected via the bus and communicating with each other, the memory storing computer-executed instructions, and when the controller is running, the processor executing the computer-executed instructions in the memory to utilize the hardware resources in the controller to perform the operation steps of the method in the first aspect or any possible implementation of the first aspect.
[0034] In a sixth aspect, this application provides a vehicle control controller, the controller including a processor, a memory, a communication interface, and a bus, the processor, the memory and the communication interface being connected via the bus and communicating with each other, the memory storing computer-executable instructions, and when the controller is running, the processor executing the computer-executable instructions in the memory to utilize the hardware resources in the controller to perform the operation steps of the method in the second aspect or any possible implementation of the second aspect.
[0035] Seventhly, this application provides an intelligent vehicle, the intelligent vehicle including a controller, the controller being used to implement the functions implemented by the controller in the fifth aspect and any possible implementation of the fifth aspect, or the controller being used to implement the functions implemented by the controller in the sixth aspect and any possible implementation of the sixth aspect.
[0036] Eighthly, this application provides a computer-readable storage medium storing instructions that, when executed on a computer, cause the computer to perform the methods or functions described in the above aspects.
[0037] Ninthly, this application provides a computer program product containing instructions that, when run on a computer, cause the computer to perform the methods or functions described in the above aspects.
[0038] Based on the implementation methods provided in the above aspects, this application can be further combined to provide more implementation methods. Attached Figure Description
[0039] Figure 1 A schematic diagram of the architecture of an intelligent vehicle provided in this application;
[0040] Figure 2 A schematic diagram of another intelligent vehicle architecture provided for this application;
[0041] Figure 3 A flowchart illustrating a vehicle control method provided in this application;
[0042] Figure 4A flowchart illustrating another vehicle control method provided in this application;
[0043] Figure 5 A schematic diagram of a smart car coordinate system provided in this application;
[0044] Figure 6 A schematic diagram illustrating a method for calculating the relative speed between an obstacle and a vehicle, as provided in this application;
[0045] Figure 7 A schematic diagram illustrating the classification of obstacle collision risk levels provided in this application;
[0046] Figure 8 A schematic diagram of obstacles distributed in four quadrants, provided for this application;
[0047] Figure 9 A schematic diagram of an obstacle distribution in three quadrants provided for this application;
[0048] Figure 10 A schematic diagram of obstacles distributed in two adjacent quadrants, as provided in this application;
[0049] Figure 11 A schematic diagram provided for this application showing obstacles distributed in two non-adjacent quadrants;
[0050] Figure 12 A schematic diagram of obstacles distributed in the same quadrant provided for this application;
[0051] Figure 13 A schematic diagram of a human-computer interaction system in an intelligent vehicle provided in this application;
[0052] Figure 14 A schematic diagram of the structure of a vehicle control device provided in this application;
[0053] Figure 15 A schematic diagram of another vehicle control device provided in this application;
[0054] Figure 16 This is a schematic diagram of the structure of a controller provided in this application. Detailed Implementation
[0055] The technical solutions in the embodiments of this application will be clearly described below with reference to the accompanying drawings.
[0056] Figure 1The schematic diagram of an intelligent vehicle architecture provided in this application is shown in the figure. The intelligent vehicle 100 includes a controller 101, a sensing device 102, an interaction system 103, and an execution system 104. The sensing device 102 is used to acquire information about obstacles such as vehicles, people, and infrastructure around the intelligent vehicle through sensors. This information includes images and detection information of the obstacles. The detection information can vary depending on the type of sensing device. For example, when the sensing device is a lidar, the lidar can emit a detection signal (e.g., a laser beam) towards the target. Then, the received signal reflected back from the target (e.g., the target echo) is compared with the emitted signal. After appropriate processing, relevant detection information about the target can be obtained, such as the target's distance, orientation, height, speed, attitude, and even shape. The obstacle information is sent to the controller 101, which further determines the intelligent vehicle's trajectory to its destination based on the obstacle information. The controller then sends a control command, including speed, to the execution system 104, which controls the intelligent vehicle's movement. Speed is a vector quantity, including magnitude and direction; the magnitude of speed can also be referred to as rate. To meet the high functional safety requirements for safe driving of intelligent vehicles, the controller 101 can utilize a redundant dual-channel design to calculate the speed of vehicles traveling in the same segment.
[0057] Specifically, the controller may include a working channel and a safety channel. The working channel is used to plan the speed of the intelligent vehicle using artificial intelligence algorithms. The safety channel defines a potential function between the intelligent vehicle and obstacles, and plans the obstacle avoidance speed of the intelligent vehicle based on the potential energy decomposition and merging method to prevent collisions. The controller 101 can use the working channel and the safety channel to determine the speed of travel in the same area of the driving trajectory, and then the controller 101 determines the final speed to be selected according to preset conditions. The final speed selected by the controller 101 can also be called the optimal speed, and the potential energy decomposition and merging method can also be called the vector decomposition and merging method.
[0058] It is worth noting that, in the following embodiments of this application, unless otherwise specified, "speed" refers to both magnitude and direction.
[0059] Figure 1 It also includes an interaction system 103, which is used to realize message interaction between the intelligent vehicle 100 and the driver, so that the driver can send operation instructions to the intelligent vehicle through the interaction system 103 and understand the current status of the intelligent vehicle through the interaction system 103.
[0060] As a possible embodiment, in addition to the speed determined by the controller 101 according to preset conditions for selecting the working channel or the safety channel as the optimal speed for the intelligent vehicle, the intelligent vehicle 100 also includes an arbitrator 105, which receives the speed planned for the working channel and the speed planned for the safety channel respectively, and selects the optimal speed for the intelligent vehicle according to preset conditions.
[0061] Figure 2 A schematic diagram of another intelligent vehicle architecture provided for this application is shown in the figure. Figure 2 Further demonstration Figure 1 The logical structure of each part in the intelligent vehicle 100 is described. The sensing device 102 includes one or more sensors capable of detecting and identifying surrounding objects, such as an image acquisition device 1021, a lidar 1022, and a millimeter-wave radar 1023. Furthermore, the number of the same type of sensor deployed in the same intelligent vehicle does not constitute a limitation on the technical solution to be protected in this application.
[0062] The controller 101 includes a dual-channel redundant design of a working channel 1011 and a safety channel 1012. The working channel 1011 utilizes artificial intelligence algorithms for perception, decision-making, and path planning, outputting the safe direction and speed of the intelligent vehicle to ensure it meets quality management (QM) requirements. The working channel 1011 includes a first perception module 10111 and a decision module 10112. The first perception module 10111 collects information about obstacles around the intelligent vehicle from sensing devices and processes this information to obtain road condition information, such as obstacle type, speed, size, and road infrastructure conditions (e.g., number of lanes in the current direction, traffic signs, etc.). The decision module 10112 further determines the direction and speed of travel within a certain area based on the road condition information provided by the first perception module 10111. The safety channel 1012 includes a second perception module 10121 and a decision-making and collision avoidance module 10122. The decision-making and collision avoidance module 10122 is used to determine the direction and speed of travel within a certain area based on obstacle information provided by the second perception module 10121, such as the distance and relative speed of the obstacle relative to the vehicle. This is achieved using a potential energy decomposition and merging method, ensuring that the intelligent vehicle's driving meets the safety integrity level (ASIL) requirements of Level D. ASIL level describes the probability of a component or system achieving a predetermined safety goal. It is determined by three basic elements: severity (S), exposure (E), and controllability (C). Severity indicates the degree of harm to life and property of occupants if the risk occurs; exposure indicates the probability of harm; and controllability describes the extent to which the driver can take proactive measures to avoid harm when the risk becomes a reality. ASIL levels are divided into four levels from highest to lowest: D, C, B, and A, with Level D having the lowest safety risk and Level A having the highest. In addition to the four safety levels, there is a quality management requirement. This directive has no safety requirements, and for autonomous driving mode, the safety risks are greater than those of ASIL.
[0063] As one possible implementation method, Figure 2 The first sensing module 10111 and the second sensing module 10121 can be merged into one sensing module. The merged sensing module obtains obstacle information from the sensing device 102, and further calculates road condition information such as the distance of the obstacle relative to the intelligent vehicle and the relative speed of the obstacle relative to the intelligent vehicle based on this information. It also sends the required content to the decision module 10112 and the decision and collision avoidance module 10122 respectively based on the information required by them.
[0064] Figure 2 The first sensing module 10111, decision module 10112, second sensing module 10121, decision and anti-collision module 10122, and arbitration module 105 in the controller shown can be implemented by hardware, software, or by a combination of hardware and software to achieve the corresponding functions.
[0065] As one possible implementation method, Figure 1 and Figure 2 This is merely a schematic diagram of an intelligent vehicle architecture provided in this application. The arbitrator's function can be implemented by software or hardware within the controller. Alternatively, the arbitrator can be implemented by a separate processor to select redundant channels. For ease of description, the following description of this application uses the arbitrator as an example of a module within the controller. Furthermore, for ease of description of the collision avoidance method provided in this application, the following embodiments use surrounding vehicles as an example of surrounding obstacles.
[0066] Figure 3 This is a flowchart illustrating a vehicle control method provided in this application. The method comprises... Figure 2 The decision-making module 10112, the decision-making and collision avoidance module 10122, and the arbitration module 105 in the controller 101 of the intelligent vehicle, as well as the execution system 104 of the intelligent vehicle, are executed as shown in the figure. The method includes:
[0067] S210, The decision module acquires the first perception data of the intelligent vehicle obtained by the first perception module.
[0068] The first perception module can acquire information about vehicles surrounding the intelligent vehicle through sensing devices, such as the type, status, speed, size, and road signs of obstacles. For example, when the sensing device includes an image acquisition device, it can acquire information about surrounding obstacles by capturing images. The first perception module can then analyze the type, size, and road signs of obstacles based on the images. When the sensing device is a lidar, the beam of light will return to the lidar after diffuse reflection upon hitting an object. The first perception module can then calculate the distance between the lidar and the object by multiplying the time interval between the lidar's signal transmission and reception by the speed of light and dividing by 2. By using two or more beams of light, the distance the obstacle has moved relative to the intelligent vehicle can be determined. Combining this with the transmission time of the two beams of light, the relative speed of the obstacle relative to the intelligent vehicle can be further calculated. The first perception module can then send the aforementioned distance between the obstacle and the intelligent vehicle, as well as the speed of the obstacle relative to the intelligent vehicle, as first perception data to the decision module.
[0069] S211, the decision module plans the first speed for driving in the first area.
[0070] During operation, intelligent vehicles plan their entire route to the destination based on the destination, the driver's driving habits, and a map. However, due to the complexity of road conditions, the decision-making module also needs to plan the vehicle's trajectory based on the current road conditions. For example, the decision-making module may obtain real-time or periodic information about the road conditions of a specific section within the planned route based on initial perception data. For clarity, the following embodiments use this section as an example, where the length of the first region is determined by the range of obstacles detectable by the sensing device and the computing power of the decision-making module within the intelligent vehicle.
[0071] The decision module can determine the position of the obstacle and its relative speed to the intelligent vehicle based on the first perception data, and determine the direction and speed of the intelligent vehicle based on the target speed of the intelligent vehicle. The direction and speed determined by the working channel in the controller can be referred to as the first speed or the working speed. For ease of description, the following embodiment uses the direction and speed determined by the decision module in the working channel as the first speed for illustration.
[0072] For example, the decision-making module can plan the first speed of the intelligent vehicle in a first area based on the destination specified by the driver, the onboard map, the positioning system, and information on surrounding obstacles. This application does not limit the method by which the decision-making module determines the first speed; in specific implementations, an appropriate method can be adopted to determine the first speed according to business needs.
[0073] S212, The decision module sends the first speed to the arbitration module.
[0074] S213, The decision-making and collision avoidance module acquires the second perception data of the intelligent vehicle sent by the second perception module.
[0075] The decision-making and collision avoidance module can also obtain second perception data from the second perception module using a method similar to step S210. The second perception data includes the relative distance, relative speed, and relative position between the surrounding vehicles and the vehicle. The relative position can be calculated based on the angle of the speed of light received by the perception device and the relative distance. For example, if the angle of the speed of light received by the perception device for the obstacle is 30 degrees, the decision-making and collision avoidance module can determine the position of the obstacle in the vehicle's coordinate system based on this angle and relative distance.
[0076] S214, the decision-making and collision avoidance module plans the second speed for the intelligent vehicle to travel in the first area.
[0077] The decision-making and collision avoidance modules can determine the obstacle avoidance speed of the intelligent vehicle based on the potential energy decomposition and merging method. The speed determined by the safety channel in the controller can be called the second speed or the safety speed. For ease of description, the following embodiments will use the speed determined by the decision-making module in the working channel as an example for illustration.
[0078] See Figure 4 , Figure 4 The flowchart illustrates another vehicle control method provided in this application. Specifically, it illustrates a method for a decision-making and collision avoidance module to plan the second speed of an intelligent vehicle traveling in a first area. As shown in the figure, the method includes:
[0079] S300. Establish a two-dimensional coordinate system with the center of mass of the intelligent vehicle as the origin and the direction of the intelligent vehicle's driving speed as the positive X-axis, and determine the position of each surrounding vehicle in the two-dimensional coordinate system.
[0080] Alternatively, the vehicle coordinate system can also be a coordinate system with a non-centroid as the origin, for example, with the center position at the front of the vehicle as the origin, or with the midpoint of the vehicle's central axis as the origin.
[0081] Optionally, the vehicle coordinate system can also be a three-dimensional coordinate system, in which the coordinate of each obstacle on the Z-axis in the vehicle coordinate system can take any value, or be the value obtained by transforming the coordinates of other vehicles' coordinate systems to the vehicle coordinate system.
[0082] Alternatively, in addition to taking the velocity direction as the positive direction, the positive direction of the X-axis in the vehicle coordinate system can also be set in other ways, such as taking the direction of the vehicle's orientation as the positive direction of the X-axis.
[0083] S301, the decision-making and collision avoidance module calculates the collision potential energy between each surrounding vehicle and the intelligent vehicle based on the relative distance and relative speed between each surrounding vehicle and the intelligent vehicle.
[0084] Figure 5 This application provides a schematic diagram of a smart car coordinate system, as shown below. Figure 5 As shown, a two-dimensional coordinate system is established with the center of mass of the intelligent vehicle as the origin and the direction of the intelligent vehicle's driving speed as the positive X-axis. The center of mass of the intelligent vehicle can be the center of a cuboid based on the vehicle's length, width, and height.
[0085] The relative distance and speed between the vehicle and the obstacle are determined using sensing devices. The specific process is as follows:
[0086] 1. Determine the position O of the obstacle at time T, and determine the position O′ of the obstacle at time T'.
[0087] 2. Calculate the current distance between the vehicle and the obstacle.
[0088] 3. Calculate the relative speed between the vehicle and the obstacle, with the direction of this speed pointing towards the intelligent vehicle.
[0089] Figure 6 A schematic diagram of a method for calculating the relative speed between an obstacle and a vehicle provided in this application is shown in the figure. The obstacle moves from time T to time T′=T+Δt. Move to in, The speed of the vehicle is The obstacle's speed is The projection of the obstacle's speed onto the vehicle's speed direction is:
[0090] First, use formula (1) to calculate the distance the obstacle moves in time Δt.
[0091]
[0092] Then, the velocity is calculated using formula (2):
[0093]
[0094] Then, use formula (3) to calculate the projection of the obstacle along the speed direction of the intelligent vehicle:
[0095]
[0096] in, This refers to the coordinates of the vector representing the movement position of the obstacle at time T′=T+Δt in the intelligent vehicle coordinate system. For example, ... Figure 6 shown and That is The length can be specifically utilized. Obtained through calculation.
[0097] An obstacle can only collide with the vehicle if it is traveling in the same direction and has a similar speed. Calculating the projection of the obstacle along the vehicle's speed direction determines the speed component from which a collision is likely. In other words, the projection of the obstacle along the vehicle's speed direction indicates the likelihood of a collision caused by the obstacle moving in the same direction as the vehicle. This projection is then used as the relative speed of the obstacle to the vehicle.
[0098] 4. Calculate the collision potential energy of the obstacle using formula (4).
[0099]
[0100] The collision potential energy f(O) of obstacle O describes the tendency of obstacle O to collide with the intelligent vehicle, or the escape potential energy that the intelligent vehicle should possess to avoid the collision. For example, the closer the vehicle is to the obstacle, the stronger the tendency to escape; the faster the obstacle approaches, the stronger the tendency to escape. In the above formula, k, α, and β are constant coefficients, and C is a constant. The value of C can be flexibly set according to simulation results and practical experience. Because the velocity ν is the velocity of the obstacle relative to the intelligent vehicle, it is a vector with both magnitude and direction. Therefore, f is also a vector with the same direction as ν. It is worth noting that when calculating the magnitude of f(O), the magnitude of ν is substituted into the above formula to obtain the collision potential energy of the obstacle. The projections of f in the x and y directions are respectively... Among them, v x and v y These are the coordinates of ν on the X and Y axes, respectively.
[0101] Alternatively, the collision potential energy of the obstacle can also be calculated using formula (5) or formula (6):
[0102]
[0103] Formula (6) is f(O) = f1(v) + f2(d) + C.
[0104] Furthermore, the decision-making and collision avoidance module can determine the relative positions of each surrounding vehicle to the vehicle based on the relative positions of the surrounding vehicles. Figure 5 The position in the coordinate system shown. Specifically, after establishing a coordinate system with the vehicle as the origin, this coordinate system is a two-dimensional coordinate system. In the plane of this two-dimensional coordinate system, the projection position of the surrounding vehicles in this two-dimensional coordinate system is taken as the position of the surrounding vehicles. Optionally, the method for determining the position of the surrounding vehicles in the vehicle's coordinate system also includes: converting the coordinates of the surrounding vehicles in the geodetic coordinate system into a two-dimensional coordinate system. In specific implementation, conventional techniques can be used to achieve the coordinate transformation of the surrounding vehicles in the two coordinate systems, and this application does not limit this.
[0105] S302 (optionally), determine the collision risk level of each surrounding vehicle based on the collision potential energy of each surrounding vehicle.
[0106] All obstacles detected by the sensing devices can have their collision potential energy calculated using any one of the formulas (4)-(6) above. However, to save the computational power of the decision-making and anti-collision modules and improve processing speed, obstacles with a high potential collision risk can also be identified based on preset conditions, and then the second velocity can be determined based on the collision potential energy of these obstacles. For example, such as Figure 7As shown, this application classifies the risk of collisions between the vehicle and surrounding vehicles into three levels: safe, warning, and dangerous. When the obstacle is at the safe level, there is no possibility of collision for the vehicle; when the obstacle is at the warning level, there is a possibility of collision for the vehicle, and the controller can prompt the driver to manually operate through the interactive system to achieve obstacle avoidance; when the obstacle is at the dangerous level, the controller can take over control of the intelligent vehicle in an emergency to prevent the vehicle from colliding with other vehicles due to emergency situations occurring during the processing of other modules of the intelligent vehicle.
[0107] It's worth noting that when an obstacle reaches a dangerous level, the controller's active takeover is limited to processes where calculations or data processing are performed by other modules while the intelligent vehicle is in autonomous driving mode. In manual driving mode, the intelligent vehicle is entirely controlled by the driver, and the controller does not interfere with its operation.
[0108] Alternatively, the method provided in this application may also determine the second speed directly based on the collision potential energy of all obstacles surrounding the intelligent vehicle without distinguishing the collision risk level. For ease of description, the following embodiments of this application use the classification of obstacle collision risk levels as an example for illustration.
[0109] Figure 7 The collision risk levels shown can be preset with collision potential energies |F1| and |F2| based on the obstacle avoidance capabilities (such as performance and size) of the intelligent vehicle. When F2|≤|f|<|F1|, the obstacle is at the warning level; when |f|≥|F1|, the obstacle is at the danger level; and when |f|<|F2|, the obstacle is at the safety level, where |F2|<|F1|.
[0110] Optionally, the decision-making and collision avoidance module can determine the risk of a collision with the vehicle based solely on the collision potential energy of surrounding vehicles at the warning and / or hazard levels. Alternatively, the decision-making and collision avoidance module can simultaneously calculate the collision potential energy of all obstacles and determine the risk of a collision with other surrounding vehicles based on all collision potential energies.
[0111] After the decision-making and collision avoidance module calculates the potential energy of obstacles and confirms the quadrant to which each obstacle belongs in the intelligent vehicle's coordinate system, it first determines whether surrounding vehicles with a preset collision risk level are distributed in all four quadrants. Then, it progressively determines whether surrounding vehicles with the preset collision risk level are distributed in three quadrants, two quadrants, and one quadrant. In other words, the decision-making and collision avoidance module makes judgments progressively according to the risk of collision with the vehicle from high to low. Optionally, the decision-making and collision avoidance module can also directly determine the quadrants in which all obstacles are distributed and use different methods to determine the second speed based on the different quadrants. That is, the decision-making and collision avoidance module can directly consider the quadrants in which obstacles are distributed instead of judging them progressively according to the collision risk level between the obstacle and the vehicle, and use different methods to determine the second speed based on various situations.
[0112] For ease of description, the following section, in conjunction with steps S303 to S311, further elaborates on the collision avoidance method by which the decision-making and collision avoidance module determines the second speed based on the collision risk level:
[0113] S303. Determine whether all surrounding vehicles of the preset collision risk level are distributed in four different quadrants.
[0114] S304. When all surrounding vehicles of the preset collision risk level are distributed in four different quadrants, identify the maximum safe angle, take the direction of the angle bisector of the maximum safe angle as the direction of the second speed, and take the magnitude of the second speed as greater than or equal to the maximum speed of the surrounding vehicles.
[0115] like Figure 8 As shown, when all surrounding vehicles of the preset collision risk level are distributed across the four quadrants, theoretically, there is a risk of collision with the vehicle from an obstacle in every direction. The decision-making and collision avoidance module can first determine the collision risk based on the preset angle α and preset radius. Define the arc-shaped region centered at the origin and with angle α as the assumed driving range for surrounding vehicles. This refers to the maximum distance a vehicle can travel per unit time, determined based on its performance. The boundaries of the travel areas of two adjacent obstacles form a new area, as shown in the figure. When each of the four quadrants includes one surrounding vehicle, and the assumed travel ranges of the four vehicles are divided according to preset angles and radii, four additional areas—Region 1, Region 2, Region 3, and Region 4—are also defined. These four areas are all obstacle-free safe zones. The decision-making and collision avoidance module can select the area with the largest included angle and use the direction of the angle bisector of this largest included angle as the direction of the intelligent vehicle's second speed for obstacle avoidance, using a direction greater than or equal to the maximum speed of the surrounding vehicles as the second speed. For example, Figure 8Assuming that the included angle β of region 1 is the region with the four largest included angles, the direction of the angle bisector of this included angle is taken as the direction of the second velocity, and the magnitude of the second velocity is greater than or equal to the maximum velocity of obstacle 1, obstacle 2, obstacle 3, and obstacle 4. The preset angle and preset radius can be preset according to the different models, sizes, and performance of surrounding vehicles, and the decision-making and collision avoidance module can obtain the assumed driving range of surrounding vehicles according to these preset rules.
[0116] S305. When all surrounding vehicles of the preset collision risk level are not distributed in four different quadrants, determine whether all surrounding vehicles of the preset collision risk level are distributed in three different quadrants.
[0117] S306. When all surrounding vehicles of the preset collision risk level are distributed in three different quadrants, first calculate the sum of collision potential energies within the same quadrant, and determine the orthogonality of each sum of collision potential energies. Remove the sum of collision potential energies of all obstacles in the quadrant with obstacles and / or the orthogonality of their sums. Then calculate the sum of collision potential energies and / or the orthogonality of their sums in the quadrant without obstacles. The sum of all directions is the direction of the second velocity, and the magnitude of the second velocity is greater than or equal to the maximum velocity of the surrounding vehicles. Where only one obstacle exists in the same quadrant, the sum of collision potential energies is the potential energy of that obstacle.
[0118] As one possible implementation, if all vehicles at the preset collision risk level are not distributed across four different quadrants, the decision-making and collision avoidance module can further determine whether the surrounding vehicles are distributed across three different quadrants. When all surrounding vehicles at the preset collision risk level are distributed across three different quadrants, the decision-making and collision avoidance module can further determine the safe direction for obstacle avoidance by combining the potential energy decomposition and merging method provided in this application. Specifically, the decision-making and collision avoidance module first calculates the sum of collision potential energies of all obstacles within the same quadrant; then, it determines the orthogonality of the sums of collision potential energies in different quadrants; then, it calculates the sum of all directions within the quadrant without obstacles, and takes the direction of the sum of all directions within the quadrant without obstacles as the direction of the second velocity, and takes the magnitude of the second velocity as greater than or equal to the maximum speed of the surrounding vehicles.
[0119] Figure 9 The diagram illustrates the distribution of all surrounding vehicles in three different quadrants for a preset collision risk level, as provided in this application. As shown, surrounding vehicles O1, O2, O3, and O4 are distributed in the first, second, and third quadrants, respectively, where the first quadrant includes O1 and O2. The potential energy of each obstacle can be calculated in step S301; potential energy has both direction and magnitude. Next, the decision-making and collision avoidance module can determine the second velocity according to the following steps:
[0120] 1. First, calculate the combined collision potential energy of all surrounding vehicles with preset collision risk levels in each quadrant.
[0121] like Figure 9 As shown, there are two obstacles only in the first quadrant. The decision-making and collision avoidance module needs to calculate the sum of the collision potential energies of O1 and O2 in the first quadrant. Since the velocities of O1 and O2 are both pointing towards the vehicle, the magnitude and direction of the potential energy do not change when the potential energy is moved parallel to other quadrants. To more clearly represent the sum of the collision potential energies of O1 and O2, V1 and V2 are established in the third quadrant, starting from the origin and moved parallel to the original collision potential energies of O1 and O2. At this time, the sum of the potential energies of O1 and O2 is the diagonal V1 of the parallelogram established by V1 and V2, starting from the origin. * .
[0122] For obstacles in the second and third quadrants, since there is only one obstacle in each quadrant, the collision potential energy of that quadrant can be understood as the collision potential energy of that obstacle.
[0123] 2. Determine the orthogonal direction of the resultant collision potential energy in each quadrant.
[0124] like Figure 9 As shown, according to the principle that the magnitude and direction of potential energy do not change when potential energy is moved parallel to other coordinate systems, the collision potential energy of O3 can be moved parallel to the fourth quadrant, and the collision potential energy of O4 can be moved parallel to the first quadrant. The orthogonal direction of the resultant collision potential energy is the direction perpendicular to the resultant collision potential energy. Figure 9 The collision potential energy of obstacles in the first quadrant is V. * perpendicular to V * The orthogonal direction is V ** Correspondingly, the orthogonal direction of the potential energy of obstacle O3 in the second quadrant is V'3, and the orthogonal direction of the potential energy of obstacle O4 in the third quadrant is V'4.
[0125] 3. Calculate the sum of collision potential energies and / or the orthogonal sum of collision potential energies in the quadrant without obstacles, and use this direction as the direction of the second velocity.
[0126] like Figure 9 As shown, the orthogonal directions of the potential energy of O3 in the second quadrant are distributed in the first and third quadrants, respectively. Since both quadrants contain obstacles, it is only necessary to consider the orthogonal directions of the collision potential energy in the first and third quadrants. Specifically, following the method for calculating the collision potential energy in step 1 above, the new collision potential energy can be obtained as V. a In other words, V a The direction of the second velocity.
[0127] 4. The decision-making and collision avoidance module can also determine the maximum speed based on the speed of surrounding vehicles at all preset collision risk levels, and use a speed greater than or equal to that maximum speed as the magnitude of the second speed.
[0128] S307. When all surrounding vehicles of the preset collision risk level are not distributed in three different quadrants, determine whether all surrounding vehicles registered for the preset warning are distributed in two quadrants.
[0129] S308. When all surrounding vehicles of the preset collision risk level are distributed in two quadrants, determine whether all surrounding vehicles of the preset collision risk level are distributed in two adjacent quadrants.
[0130] S309. When all surrounding vehicles of the preset collision risk level are distributed in two adjacent quadrants, first calculate the sum of collision potential energy of all surrounding vehicles of the preset collision risk level in the same quadrant, and determine the orthogonal direction of each sum of collision potential energy. Remove the orthogonal directions in the quadrant with obstacles. Then, calculate the sum of the orthogonal directions in the quadrant without obstacles as the direction of the second velocity. The magnitude of the second velocity is the magnitude of the maximum velocity of all surrounding vehicles that is greater than or equal to the preset collision risk level.
[0131] As one possible implementation, the second velocity can also be calculated by comparing the combined collision potential energies of obstacles in two quadrants within the obstacle-free quadrant. When the combined collision potential energies in the two quadrants are equal, the sum of the combined collision potential energies in the two quadrants is calculated, and this sum is taken as the second velocity. The direction of the sum of the combined collision potential energies in the two quadrants is the direction of the safe velocity, and the magnitude of the sum of the combined collision potential energies in the two quadrants is the magnitude of the safe velocity. When the combined collision potential energies in the two quadrants are unequal, the orthogonal sum of the combined collision potential energies in the two quadrants is calculated, and this orthogonal sum is taken as the second velocity. The magnitude of the orthogonality of the combined collision potential energies is the magnitude of the combined collision potential energies, and the direction is perpendicular to the direction of the combined collision potential energies.
[0132] As one possible implementation, when all surrounding vehicles of a preset collision risk level are distributed in two adjacent quadrants, the decision-making and collision avoidance module determines the second speed according to the following steps:
[0133] 1. Calculate the combined potential energy of surrounding vehicles in the same quadrant for all preset collision risk levels.
[0134] 2. Determine the orthogonal direction of the potential energy in each quadrant.
[0135] 3. Remove the collision potential energy in the quadrant containing obstacles and its orthogonal direction.
[0136] 4. Compare the combined collision potential energies of obstacles in the two quadrants. When the combined collision potential energies in the two quadrants are equal, calculate the sum of the combined collision potential energies in the two quadrants, and take this sum as the second velocity. When the combined collision potential energies in the two quadrants are unequal, calculate the orthogonal sum of the combined collision potential energies in the two quadrants, and take this orthogonal sum as the second velocity. The magnitude of the orthogonal direction of the combined collision potential energies is the magnitude of the combined collision potential energy.
[0137] Figure 10 An example of a pre-defined collision risk level provided in this application, where all vehicles are distributed in two adjacent quadrants, is shown in the figure. Surrounding vehicles O1 and O2 are distributed in the first quadrant, and O3 and O4 are distributed in the second quadrant. The combined potential energy of O1 and O2 is V. * The potential energies of O3 and O4 combine to form V^. Then, determine V separately. * The orthogonal direction to V^ is V ** And V^^. Then compare V. * And the size of V^, when V * When V is not equal to V^, calculate V. ** The potential energy of V^^ is V a V a The direction of V is taken as the direction of the second velocity. a The speed is taken as the second speed. When V * If V is equal to V^, then calculate V. * The combination of V^ will make V * The direction of the resultant potential energy of V^ is taken as the direction of the second velocity, V * The magnitude of the combined potential energy of V^ is taken as the magnitude of the second velocity.
[0138] It is worth noting that, Figure 10 In China, only V * Taking the process of determining the second velocity when V^ is not equal as an example, Figure 10 V is not shown in the middle. * The process of confirming the second velocity when it is equal to V^.
[0139] S310. When all surrounding vehicles of a preset collision risk level are not distributed in two adjacent quadrants, calculate the sum of collision potential energies of all surrounding vehicles of the preset collision risk level, list the orthogonal directions of each sum of collision potential energies, and then calculate the sum of orthogonal directions belonging to the same quadrant. Take any direction of the sum of orthogonal directions as the direction of the second velocity, and the velocity greater than or equal to the maximum velocity among the surrounding vehicles is the magnitude of the second velocity. The magnitude of the orthogonal direction within the same quadrant is the sum of collision potential energies in that quadrant.
[0140] Similar to step S309, Figure 11An example provided in this application, where all surrounding vehicles of a preset collision risk level are not distributed in two adjacent quadrants, is shown in the figure. Surrounding vehicles O1 and O2 are distributed in the first quadrant, while O3 and O4 are distributed in the third quadrant. The combined potential energy of O1 and O2 is V. * The potential energies of O3 and O4 combine to form V^. Then, determine V separately. * The orthogonal direction to V^ is V ** And V^^. Calculate V ** The combination of V^^ a and V b The direction of the second speed is taken as any direction, and further, the magnitude of the second speed is greater than or equal to the maximum speed of the surrounding vehicles.
[0141] S311. When all surrounding vehicles of the preset collision risk level are determined to be distributed in only one quadrant, calculate the collision potential energy of all surrounding vehicles of the preset collision risk level, take the orthogonal direction of the collision potential energy as the direction of the second velocity, and take the magnitude of the second velocity as greater than or equal to the maximum velocity of the surrounding vehicles.
[0142] Figure 12 An example of a preset collision risk level provided in this application, where all surrounding vehicles are distributed in the same quadrant, is shown in the figure. Surrounding vehicles O1, O2, O3, and O4 are distributed in the first quadrant. The decision-making and collision avoidance module calculates the sum of the collision potential energies of the four obstacles and uses any one of the orthogonal directions of this sum of collision potential energies as the direction of the second velocity, such as V. a and V b The decision-making and collision avoidance module can select any direction as the direction of the second velocity, given the orthogonal direction of the resultant collision potential energy of obstacles in the first quadrant. Furthermore, the second velocity is defined as having the orthogonal direction of the resultant collision potential energy and a magnitude greater than or equal to the maximum speed of surrounding vehicles.
[0143] It is worth noting that, Figure 12 The document lists various possibilities for the decision-making and collision avoidance control module to determine the second speed when obstacles are distributed in different quadrants. In specific implementation, when the decision-making and collision avoidance control module determines that all surrounding vehicles of the preset collision risk level meet any one of the possibilities, the second speed can be determined according to the steps of the above method.
[0144] As one possible implementation, in addition to using the magnitude of the second speed as greater than or equal to the magnitude of the maximum speed among all surrounding obstacles, the obstacle avoidance speed can be determined in other ways. For example, the magnitude of the second speed can be limited by using N times the magnitude of the maximum speed among surrounding obstacles as a reference.
[0145] Optionally, when the decision-making and collision avoidance module determines multiple obstacle avoidance speed directions, it can calculate the probability of a collision between the obstacle and the vehicle based on the obstacle type, relative speed, and relative distance. The calculated probabilities are then sorted by magnitude, and the direction of the obstacle with the lowest probability is selected as the direction of the second speed. Alternatively, multiple selectable speed directions can be displayed on the in-vehicle display screen, along with the probability of a collision. The driver selects a speed direction, and the controller controls the intelligent vehicle to drive according to the driver's selection.
[0146] S215, the decision-making and collision avoidance module sends the second speed to the arbitration module.
[0147] S216. When the first preset condition is met, the arbitration module selects the first speed as the speed at which the intelligent vehicle travels.
[0148] The speed determined by the arbitration module can also be called the optimal speed. This optimal speed enables the intelligent vehicle to effectively avoid obstacles, ensuring that the intelligent vehicle does not collide with surrounding obstacles, reducing the possibility of collisions, and improving the safety of the intelligent vehicle's autonomous driving process.
[0149] S217 (optionally), determine whether the direction of the first velocity is within the feasible range.
[0150] S218. When it is determined that the direction of the first velocity is within a feasible range, the arbitration module sends a first control command to the execution system, wherein the first control command includes the first velocity.
[0151] S219. The execution system controls the intelligent vehicle to drive according to the first speed.
[0152] As a possible implementation, after the arbitration module selects a first speed as the speed for the intelligent vehicle, it can further determine whether the direction of the first speed is within a feasible range. Specifically, the direction of the first speed obtained through the potential energy decomposition and merging method is a theoretically safe speed, and it should be verified according to the actual situation to improve the safety of the intelligent vehicle's driving process. The criteria for the arbitration module to determine whether the direction of the first speed is feasible include: avoiding collisions with dynamic obstacles (such as motor vehicles, non-motor vehicles, pedestrians, animals, and goods falling from moving vehicles); avoiding collisions with static obstacles (infrastructure such as medians, guardrails, roadbeds, and streetlights); and avoiding violations of traffic rules (such as driving against traffic or running red lights). The arbitration module can obtain obstacle data collected by the sensing devices from the first sensing module and use this data to build a world model of the intelligent vehicle's driving environment. Within this world model, the above criteria are used to filter the physical space to obtain all feasible areas. If the direction of the first speed is within a feasible range, the arbitration module sends a control command to the execution system, instructing the execution system to control the intelligent vehicle to drive according to the first speed. If the direction of the first velocity is not within the feasible area, the arbitration module confirms that there is a safety risk in the direction of the first velocity. In this case, the arbitration module only executes the braking command to avoid a collision or reduce the collision damage.
[0153] Optionally, the arbitration module can also acquire the collision potential energy of all surrounding vehicles at a preset collision risk level. When it is determined that the collision potential energy is less than a first threshold, the arbitration module selects a first speed as the driving speed of the intelligent vehicle and sends a first control command to the execution system. The execution system then controls the intelligent vehicle to drive in the first area according to the first speed. In other words, the first preset condition is that the collision potential energy of all surrounding vehicles at the preset collision risk level is less than the first threshold. At this time, the arbitration module will control the intelligent vehicle to drive according to the speed determined by the working channel.
[0154] Optionally, in steps S217 to S218 above, the arbitration module may not determine whether the direction of the first velocity is within the feasible range, and may directly send the first control command to the execution system.
[0155] S220. When the second preset condition is met, the arbitration module selects the second speed as the driving speed of the intelligent vehicle.
[0156] S221 (optionally), the arbitration module determines whether the direction of the second velocity is within the feasible range.
[0157] S222. When the direction of the second speed is within a feasible range, the arbitration module sends a second control command to the execution system, which includes the second speed.
[0158] S223, The execution system controls the intelligent vehicle to drive according to the second speed.
[0159] When the arbitration module determines that the collision potential energy of all surrounding vehicles at the preset collision risk level is greater than or equal to the first threshold, the arbitration module selects the second speed as the driving speed of the intelligent vehicle. In other words, the second preset condition is that the collision potential energy of all surrounding vehicles at the preset collision risk level is greater than or equal to the first threshold. In this case, the arbitration module will control the intelligent vehicle to drive according to the speed determined by the safety passage.
[0160] Furthermore, the arbitration module will further determine whether the direction of the second velocity is within a feasible range. Specifically, the direction of the second velocity obtained through the potential energy decomposition and merging method is the theoretically safe speed, and it should be verified according to the actual situation to improve the safety of the intelligent vehicle's driving process. The criteria for the arbitration module to determine whether the direction of the second velocity is feasible include: not colliding with dynamic obstacles (such as motor vehicles, non-motor vehicles, pedestrians, animals, goods falling from moving vehicles, etc.), not colliding with static obstacles (infrastructure such as medians, guardrails, roadbeds, streetlights, etc.), and not violating traffic rules (such as driving against traffic or running red lights). The arbitration module can obtain obstacle data collected by the sensing devices from the first sensing module, and use this data to build a world model of the intelligent vehicle's driving environment. Within this world model, the physical space is filtered using the above criteria to obtain all feasible areas. If the direction of the second velocity is within a feasible area, the arbitration module sends a control command to the execution system, instructing the execution system to control the intelligent vehicle to drive according to the second velocity. If the direction of the second velocity is not within the feasible area, the arbitration module confirms that there is a safety risk in the direction of the second velocity. In this case, the arbitration module only executes a braking command to avoid a collision or reduce collision damage.
[0161] It is worth noting that the processes of confirming the first and second speeds in the safety passage and the working passage are two independent processes, independent of each other, and can be processed in parallel. That is, steps S210 to S212 and steps S213 to S215 can be executed in parallel. Furthermore, steps S216 to S219 and steps S220 to S223 are also two independent decision branches. When the first preset condition is met, the arbitration module can further determine whether the direction of the first speed is within a feasible range, or directly send the first speed to the execution system, thereby controlling the intelligent vehicle to drive according to the speed confirmed by the working passage. When the second preset condition is met, the arbitration module further determines whether the direction of the second speed is within a feasible range. If the direction of the second speed is feasible, it sends the second speed to the execution system, thereby controlling the intelligent vehicle to drive according to the direction and speed confirmed by the safety passage. In addition, this application does not limit the method for establishing the world model; in specific implementation, a model reflecting the surrounding vehicle and obstacle situations can be established according to business needs.
[0162] The obstacle avoidance method for intelligent vehicles provided in this application is a process of actively and continuously implementing effective obstacle avoidance in scenarios with collision risk. This process is an iterative process during the intelligent vehicle's operation. As long as the collision potential energy of any obstacle is greater than or equal to a first threshold, the process will be continuously executed in a loop. In other words, as long as there is a collision risk, the safety passage will calculate the collision potential energy of the obstacle and then determine the second speed based on the collision potential energy.
[0163] Based on the above description, the collision avoidance method provided in this application can obtain the optimal speed that meets high functional safety requirements in any region based on the potential energy decomposition and merging method, and further verify it through feasible regions to finally determine the optimal speed for obstacle avoidance by the intelligent vehicle. This application can comprehensively judge the possibility of collision between the vehicle and obstacles by considering the distance and relative speed between the vehicle and surrounding obstacles, thus better identifying the collision risk of the vehicle and solving the problem of misjudgment or omission caused by traditional methods that rely solely on braking distance and minimum braking time. Furthermore, the method provided in this application can not only avoid collisions with vehicles coming from in front of the vehicle, but also avoid collisions from behind, sides, and other directions. Compared to traditional methods that can only handle collisions from vehicles coming from in front, this improves the obstacle avoidance capability of the intelligent vehicle. It can not only control the intelligent vehicle to decelerate, but also control the intelligent vehicle to accelerate and avoid obstacles in a determined direction, thereby enabling the intelligent vehicle to achieve obstacle avoidance effects in all directions. On the other hand, the method provided in this application offers more precise obstacle avoidance direction and speed, ensuring that the intelligent vehicle avoids obstacles in the safest direction and speed at the current moment, thus preventing collisions between the vehicle and surrounding vehicles.
[0164] As one possible implementation method, Figure 13 This is a schematic diagram of an interactive system provided in this application. As shown, this interactive system can prompt the driver to pay attention to the surrounding vehicle situation in various ways, allowing the driver to take over the intelligent vehicle or send execution commands to the intelligent vehicle to control its operation. Examples include audio prompts, seat vibration prompts, and interior light flashing prompts. The human-machine interaction system can also use different colors or backgrounds to indicate different levels and areas.
[0165] Specifically, the human-machine interaction process between intelligent vehicles and drivers can be realized using at least one of the following methods:
[0166] Method 1: The in-vehicle display of the smart car provides a textual warning indicating a potential collision risk with surrounding obstacles, along with the first and second speed limits. For example, Figure 13Va and Vb are optional obstacle avoidance directions, and the driver can choose either one as the direction the vehicle should travel. In addition to indicating Va and Vb as optional obstacle avoidance directions, different markings can be used to indicate the collision risk when traveling towards the obstacle. For example, in... Figure 13 In the directions of obstacles O1 and O2, use pentagram symbols and text to indicate "Danger".
[0167] Method 2: In the smart car, a voice prompt indicates a risk of collision with surrounding obstacles, specifying the first and second speeds; in the smart car, seat vibration is used to indicate a risk of collision with surrounding obstacles.
[0168] Method 3: In intelligent vehicles, flashing headlights can indicate a potential collision risk with surrounding obstacles. For dangerous situations, rapid flashing of the lights can also alert the driver.
[0169] As one possible implementation, after the intelligent vehicle avoids obstacles using the above method, it may change the original driving trajectory determined by the decision-making module. It is necessary to further replan or adjust the original driving trajectory based on the current road conditions of the intelligent vehicle in order to ensure that the intelligent vehicle can successfully reach the destination specified by the driver.
[0170] Alternatively, in addition to using the aforementioned controller to determine the speed, the intelligent vehicle can also receive the speed selected by the driver through an interface or voice, and after receiving the speed control command, it can control the intelligent vehicle to drive at that speed.
[0171] The aforementioned human-machine interaction system enhances the driver's experience, helping them better take over and control the intelligent vehicle. Furthermore, it allows drivers to understand the vehicle's environment, reducing fear in emergencies caused by uncertainty about the vehicle's location. In emergencies, drivers can also use the information displayed on the system to decide whether to switch to manual driving mode, allowing them to regain control of the vehicle.
[0172] As one possible approach, besides using the relative speed and distance between the obstacle and the vehicle to determine the collision potential energy and thus the collision risk, different weights can be assigned to different types of vehicles based on the type of obstacle. The specific weight settings can consider the degree of damage from collisions with different types of obstacles. Furthermore, the optimal direction and speed for obstacle avoidance can be determined by combining these collision damage levels.
[0173] As another possible implementation, in addition to relying on the sensing devices of the intelligent vehicle to detect surrounding obstacles, the controller can also receive information from other obstacles, including the trajectory information of other vehicles, from other obstacles. The intelligent vehicle's obstacle avoidance process can then be implemented by combining this information. Other obstacles can send information to the intelligent vehicle via vehicle-to-everything (V2X) communication technology. When two or more obstacle avoidance directions exist, the probability of collision with the vehicle can be determined based on the obstacle's type, distance, and relative speed. The probability of obstacle avoidance is displayed on the interface, and the driver can select any feasible direction as the obstacle avoidance direction through the interface.
[0174] As another possible implementation, when there are multiple directions for the second speed confirmed by the safe passage, the safest direction can be selected as the direction of the second speed based on the degree of collision risk with obstacles. The degree of collision risk includes one or more factors such as the probability of colliding with an obstacle and the extent of damage in the event of a collision. The extent of damage can be calibrated based on the size of the obstacle, the relative speed, and the relative distance; the larger the obstacle, the faster the relative speed, and the shorter the relative distance, the greater the extent of damage in the event of a collision. Through this method, when multiple directions of the second speed exist, the optimal direction can be selected to avoid obstacles based on the degree of collision risk, further improving the safety of autonomous driving. Moreover, the aforementioned collision risk level can be displayed to the driver through a human-machine interface, allowing the driver to select the direction of the final speed and thus control the vehicle to travel at the speed selected by the driver.
[0175] It is worth noting that, for the sake of simplicity, the above method embodiments are described as a series of actions. However, those skilled in the art should know that this application is not limited to the order of the described actions. Furthermore, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by this application.
[0176] Other reasonable combinations of steps that can be conceived by those skilled in the art based on the above description also fall within the scope of protection of this application. Furthermore, those skilled in the art should also be aware that the embodiments described in the specification are preferred embodiments, and the actions involved are not necessarily essential to this application.
[0177] The above text combines Figures 1 to 13 The method for collision avoidance provided according to this application is described in detail below, in conjunction with... Figures 14 to 16 This application describes a vehicle control device, controller, and intelligent vehicle provided according to the present application.
[0178] Figure 14 A schematic diagram of a vehicle control device 500 provided in this application is shown in the figure. The device 500 includes an acquisition unit 501, which is used to acquire a first speed for the intelligent vehicle to travel in a first region; the first region is a region during the intelligent vehicle's journey to its destination; acquire a second speed for the intelligent vehicle to travel in the first region; the second speed is obtained based on collision potential energy; wherein the first speed and the second speed respectively include direction and magnitude; the first speed, the second speed, and the collision risk between the intelligent vehicle and surrounding obstacles are used to determine the optimal speed of the intelligent vehicle, the optimal speed including magnitude and direction.
[0179] Optionally, the collision potential energy is used to identify the collision trend between the surrounding obstacles and the intelligent vehicle.
[0180] Optionally, the device 500 further includes a control unit 502 for determining an optimal speed for collision avoidance of the intelligent vehicle based on the first speed, the second speed, and the collision risk between the intelligent vehicle and surrounding obstacles, the optimal speed including magnitude and direction.
[0181] Optionally, the control unit 502 further includes a first decision unit 5021, for receiving speed control commands and controlling the driving of the intelligent vehicle with the speed control commands.
[0182] Optionally, the control unit 502 further includes a second decision unit 5022, which is used to determine the optimal speed as the first speed when a first preset condition is met; wherein the first preset condition is that the collision potential energy of any of the surrounding obstacles is less than a first threshold.
[0183] Optionally, the control unit 502 further includes a second decision unit 5022, which is further configured to determine the optimal speed as the second speed when a second preset condition is met; wherein the second preset condition is that the collision potential energy of any one of the surrounding obstacles is greater than or equal to a first threshold.
[0184] Optionally, the device 500 further includes an interaction unit 503, configured to alert the intelligent vehicle to a collision risk in at least one of the following ways: or, by displaying a text message on the intelligent vehicle's in-vehicle display interface indicating a collision risk between the intelligent vehicle and surrounding obstacles, along with the first speed and the second speed; or, by providing a voice message within the intelligent vehicle indicating a collision risk between the intelligent vehicle and surrounding obstacles, along with the first speed, the second speed, and the optimal speed; or, by vibrating the seat within the intelligent vehicle indicating a collision risk between the intelligent vehicle and surrounding obstacles; or, by flashing the headlights within the intelligent vehicle indicating a collision risk between the intelligent vehicle and surrounding obstacles.
[0185] Optionally, the first decision unit 5021 is used to implement the function of obtaining the first speed in the working channel in the above method, while the second decision unit 5022 is used to implement the function of obtaining the second speed in the safety channel in the above method. The first decision unit 5021 and the second decision unit 5022 can also be combined into one decision unit, which is used to implement the functions of determining the first speed and the second speed in the safety channel and the working channel, respectively.
[0186] It should be understood that the device 500 in this application embodiment can be implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD can be a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. It can also be implemented using software. Figure 3 and Figure 4 In the vehicle control method shown, the device 500 and its various modules can also be software modules.
[0187] The apparatus 500 according to the embodiments of this application can correspond to performing the methods described in the embodiments of this application, and the above and other operations and / or functions of each unit in the apparatus 500 are respectively for implementing Figures 3 to 4 For the sake of brevity, the corresponding processes of each method in the code will not be elaborated here.
[0188] Figure 15 A schematic diagram of another vehicle control device 600 provided in this application is shown in the figure. The device 600 includes a computing unit 601, a decision-making unit 602, and a control unit 603, wherein...
[0189] The computing unit 601 is used to calculate the collision potential energy of the surrounding obstacles of the intelligent vehicle based on the first perception data, the first perception data including the relative speed and relative distance between the surrounding obstacles and the intelligent vehicle.
[0190] The decision unit 602 is used to determine the safe speed of the intelligent vehicle in the first area based on the collision potential energy of the surrounding obstacles. The first area is a segment of the planned path of the intelligent vehicle.
[0191] The control unit 603 is used to control the intelligent vehicle to travel at the safe speed in the first area.
[0192] Optionally, the collision potential energy is used to identify the collision trend between the surrounding obstacles and the intelligent vehicle.
[0193] Optionally, the control unit 603 is further configured to control the intelligent vehicle to travel at the safe speed in the first area when the collision potential energy of any of the surrounding obstacles is greater than or equal to the first threshold.
[0194] Optionally, the calculation unit 601 is further configured to calculate the collision potential energy of the surrounding obstacle using the following formula:
[0195]
[0196] Where k, α, and β are constant coefficients, C is a constant, ν is the magnitude of the relative speed of the first obstacle relative to the intelligent vehicle, and d is the relative distance of the first obstacle relative to the intelligent vehicle. The first obstacle is any one of the surrounding obstacles.
[0197] Optionally, the decision unit 602 is further configured to determine the collision risk level of each surrounding obstacle based on the collision potential energy of the surrounding obstacles and a preset threshold, the collision risk level including safe, warning and dangerous; select all surrounding obstacles with preset collision risk levels; and determine the safe speed based on the collision potential energy of all surrounding obstacles with the selected preset collision risk levels.
[0198] Optionally, the decision unit 602 is further configured to acquire first perception data, which is data obtained after analysis and processing of initial data detected by the sensing device of the intelligent vehicle; establish an X-axis with the intelligent vehicle as the origin and the driving direction of the intelligent vehicle as the X-axis; calculate the position of the surrounding obstacles in the coordinate system based on the first perception data, wherein the position is used to indicate the coordinates and quadrant of each obstacle in the coordinate system.
[0199] Optionally, the decision unit 602 is further configured to identify the maximum safe angle in the obstacle-free area when all surrounding obstacles of the preset safety risk level are distributed in the four quadrants, take the direction of the angle bisector of the maximum safe angle as the direction of the safe speed, and take the magnitude of the safe speed as greater than or equal to the maximum speed of the surrounding vehicles.
[0200] Optionally, the decision unit 602 is further configured to: calculate the sum of collision potential energies of all obstacles of the preset safety risk level in the same quadrant when all surrounding obstacles of the preset safety risk level are distributed in the three quadrants; determine the orthogonality of the sum of collision potential energies in each quadrant; remove the sum of collision potential energies and / or the orthogonality of the sum of collision potential energies of all obstacles in the quadrant with obstacles; calculate the sum of collision potential energies and / or the orthogonality of the sum of collision potential energies in the quadrant without obstacles; take the combination of all directions in the orthogonality of the sum of collision potential energies and / or the sum of collision potential energies in the quadrant without obstacles as the direction of the safe speed; and take the magnitude greater than or equal to the maximum speed of the surrounding vehicles as the magnitude of the safe speed.
[0201] Optionally, the decision unit 602 is further configured to, when all surrounding obstacles of the preset safety risk level are distributed in two adjacent quadrants, calculate the sum of collision potential energy of all surrounding obstacles of the preset collision risk level in the same quadrant, and determine the orthogonal direction of each collision potential energy sum; calculate the sum of the orthogonal directions of the collision potential energy sum in the quadrant without obstacles as the direction of the safe speed, and take the magnitude of the safe speed as the magnitude of the maximum speed of all surrounding vehicles that is greater than or equal to the preset collision risk level.
[0202] Optionally, the decision unit 602 is further configured to: calculate the combined collision potential energy of all surrounding vehicles with the preset collision risk level in the same quadrant when all surrounding obstacles of the preset safety risk level are distributed in two adjacent quadrants, and determine the orthogonality of each combined collision potential energy; compare the combined collision potential energy of obstacles in the two quadrants in the obstacle-free quadrant; when the combined collision potential energy in the two quadrants is equal, calculate the sum of the combined collision potential energy in the two quadrants, and use the sum of the combined collision potential energy in the two quadrants as the safe speed; when the combined collision potential energy in the two quadrants is unequal, calculate the orthogonal sum of the combined collision potential energy in the two quadrants, and use the orthogonal sum of the combined collision potential energy in the two quadrants as the safe speed. Wherein, the magnitude of the orthogonality of the combined collision potential energy is the magnitude of the combined collision potential energy, and the direction is perpendicular to the direction of the combined collision potential energy.
[0203] Optionally, the decision unit 602 is further configured to: calculate the sum of collision potential energies of all surrounding obstacles of the preset collision risk level in the same quadrant when all surrounding obstacles of the preset safety risk level are distributed in two non-adjacent quadrants, and determine the orthogonality of each sum of collision potential energies; calculate the orthogonal sum of the sums of collision potential energies belonging to the same quadrant, and take any direction of the orthogonal sum of the sums of collision potential energies in the same quadrant as the magnitude of the safe speed, and take the magnitude of the safe speed as greater than or equal to the magnitude of the maximum speed among the surrounding vehicles.
[0204] Optionally, the decision unit 602 is further configured to calculate the collision potential energy of all surrounding vehicles of the preset collision risk level when all surrounding vehicles of the preset collision risk level are distributed in only one quadrant, and take the orthogonal direction of the collision potential energy as the direction of the safe speed, and the magnitude of the safe speed as greater than or equal to the maximum speed of the surrounding vehicles.
[0205] Optionally, the decision unit 602 is further configured to determine whether the direction of the safe speed is within a feasible range, wherein the feasible range is an area that meets the following criteria: no collision with dynamic obstacles, no collision with static obstacles, and no violation of traffic rules. Dynamic obstacles include motor vehicles, pedestrians, and animals; static obstacles include infrastructure such as medians, guardrails, paths, and streetlights; and traffic rules include driving against traffic and running red lights. When the direction of the safe speed is within the feasible range, the decision unit 602 sends the safe speed to the control unit 603, which then controls the intelligent vehicle to travel at the safe speed within the first area.
[0206] It should be understood that the device 600 in this application embodiment can be implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD can be a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. It can also be implemented using software. Figure 3 and Figure 4 In the vehicle control method shown, the device 600 and its various modules can also be software modules.
[0207] The apparatus 600 according to the embodiments of this application can correspond to performing the methods described in the embodiments of this application, and the above and other operations and / or functions of each unit in the apparatus 600 are respectively for implementing Figures 3 to 4 The corresponding processes of each method in the process are not described in detail here for the sake of brevity. In addition, the decision unit 602 of device 600 can correspond to the second decision unit 5022 in device 500, and is used to realize the process of decision-making and collision avoidance module determining the second speed in the safety channel.
[0208] Figure 16 This is a schematic diagram of a controller 700 provided in an embodiment of this application. As shown in the figure, the controller 700 includes a processor 701, a memory 702, a communication interface 703, and a main memory 704. The processor 701, memory 702, communication interface 703, and main memory 704 communicate via a bus 705. The memory 702 stores instructions, and the processor 701 executes the instructions stored in the memory 702. The memory 702 stores program code, and the processor 701 can call the program code stored in the memory 702 to perform the following operations:
[0209] A first speed is obtained for the intelligent vehicle to travel in a first region; the first region is a segment of the intelligent vehicle's journey to its destination; a second speed is obtained for the intelligent vehicle to travel in the first region; the second speed is obtained based on the collision potential energy.
[0210] The first speed and the second speed include direction and magnitude, respectively; the first speed, the second speed, and the collision risk between the intelligent vehicle and surrounding obstacles are used to determine the optimal speed of the intelligent vehicle, the optimal speed including magnitude and direction.
[0211] It should be understood that in the embodiments of this application, the processor 701 may be a CPU, or it may be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc.
[0212] Optionally, the controller 700 may include multiple processors, for example, Figure 16 It includes processors 701 and 706. Processors 701 and 706 can be different types of processors, and each processor includes one or more chips.
[0213] The memory 702 may include read-only memory and random access memory, and provides instructions and data to the processor 701. The memory 702 may also include non-volatile random access memory. For example, the memory 702 may also store device type information.
[0214] The memory 702 can be volatile memory or non-volatile memory, or it can include both. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DR RAM).
[0215] In addition to the data bus, bus 705 may also include a power bus, a control bus, and a status signal bus. However, for clarity, all buses are labeled as bus 705 in the figure. Optionally, bus 705 may also be an in-vehicle Ethernet or Controller Area Network (CAN) bus or other internal bus.
[0216] It should be understood that the controller according to the embodiments of this application may correspond to the device 500 and device 600 in the embodiments of this application, and may correspond to the execution of the device according to the embodiments of this application. Figure 3 and Figure 4 The corresponding entities of the method shown, and the above and other operations and / or functions of each module in the controller 700, are respectively implemented to achieve... Figures 3 to 4 For the sake of brevity, the corresponding processes of each method in the code will not be elaborated here.
[0217] As another possible implementation method Figure 16 The processor 701 of the controller 700 shown can call the program code stored in the memory 702 to perform the following operations:
[0218] The collision potential energy of the surrounding obstacles of the intelligent vehicle is calculated based on the first perception data, which includes the relative speed and relative distance between the surrounding obstacles and the intelligent vehicle.
[0219] The safe speed of the intelligent vehicle in the first area is determined based on the collision potential energy of the surrounding obstacles. The first area is a segment of the planned path of the intelligent vehicle.
[0220] Control the intelligent vehicle to travel at the safe speed in the first area.
[0221] It should be understood that the controller 700 according to the embodiments of this application may correspond to the device 500 and device 600 in the embodiments of this application, and may correspond to the execution of the device 700 according to the embodiments of this application. Figure 3 and Figure 4 The corresponding entities of the method shown, and the above and other operations and / or functions of each module in the controller 700, are respectively implemented to achieve... Figures 3 to 4 For the sake of brevity, the corresponding processes of each method in the code will not be elaborated here.
[0222] This application also provides a method such as Figure 1 or Figure 2 The intelligent vehicle shown includes Figure 16 The controller 700 shown is used to implement the above. Figures 3 to 4 For the sake of brevity, the corresponding processes of each method will not be elaborated here.
[0223] The above embodiments can be implemented, in whole or in part, by software, hardware, firmware, or any other combination thereof. When implemented using software, the above embodiments can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded or executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more sets of available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium. A semiconductor medium can be a solid-state drive (SSD).
[0224] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0225] The above description is merely a specific embodiment of this application. Any variations or substitutions conceived by those skilled in the art based on the specific embodiments provided in this application should be covered within the protection scope of this application.
Claims
1. A vehicle control method applied to intelligent vehicles, characterized in that, Applied to a controller, the method includes: The controller's working channel determines the first speed of the intelligent vehicle in a first region based on the first sensing data from the sensing device. The first region is a segment of the intelligent vehicle during its journey to its destination. The controller's safety channel determines the collision potential energy based on the relative distance and relative speed between the surrounding obstacles and the intelligent vehicle, wherein the collision potential energy is used to identify the tendency of the surrounding obstacles to collide with the intelligent vehicle. The controller's safety channel determines the second speed of the intelligent vehicle in the first area based on the collision potential energy; The controller determines the third speed of the intelligent vehicle based on the first speed, the second speed, and the collision risk between the intelligent vehicle and surrounding obstacles; The controller controls the intelligent vehicle to travel at the third speed; The first velocity, the second velocity, and the third velocity each include direction and magnitude.
2. The method according to claim 1, characterized in that, Determining a third speed of the intelligent vehicle based on the first speed, the second speed, and the collision risk between the intelligent vehicle and surrounding obstacles includes: When the first preset condition is met, the third speed is the first speed; wherein, the first preset condition is that the collision potential energy of any of the surrounding obstacles is less than a first threshold.
3. The method according to claim 1, characterized in that, Determining a third speed of the intelligent vehicle based on the first speed, the second speed, and the collision risk between the intelligent vehicle and surrounding obstacles includes: When the second preset condition is met, the third speed is the second speed; wherein, the second preset condition is that the collision potential energy of any of the surrounding obstacles is greater than or equal to the first threshold.
4. The method according to any one of claims 1 to 3, characterized in that, The method further includes: The intelligent vehicle can alert the intelligent vehicle to a potential collision risk through at least one of the following methods: The in-vehicle display interface of the intelligent vehicle displays a text message indicating a potential collision risk between the intelligent vehicle and surrounding obstacles, along with the first speed and the second speed; or, The intelligent vehicle is given a voice prompt indicating a collision risk with surrounding obstacles, along with the first speed and the second speed; or, In the intelligent vehicle, seat vibrations serve as a warning of a potential collision risk with surrounding obstacles; or, The intelligent vehicle uses flashing headlights to warn of a potential collision risk with surrounding obstacles.
5. The method according to claim 1, characterized in that, Also includes: The collision potential energy is obtained using the following formula: in, C is a constant coefficient. It is the magnitude of the relative velocity of the first obstacle with respect to the intelligent vehicle. It is the relative distance between the first obstacle and the intelligent vehicle, where the first obstacle is any one of the obstacles surrounding the intelligent vehicle.
6. The method according to claim 1 or 5, characterized in that, Also includes: Based on the collision potential energy and a preset threshold, the collision risk between the intelligent vehicle and the surrounding obstacles is determined, and the collision risk level includes a safety level, a warning level, and a danger level.
7. A vehicle controller, characterized in that, It includes a processor and a memory, wherein the memory stores instructions, and when the controller is running, the processor executes the instructions to implement the operation steps of any of the methods described in claims 1 to 6.
8. An intelligent vehicle, characterized in that, The intelligent vehicle includes the controller described in claim 7.
9. A readable storage medium, characterized in that, The device stores instructions that, when executed by a processor, can implement the operational steps of any of the methods described in claims 1 to 6.
Citation Information
Patent Citations
Vehicle control method and device, controller and intelligent vehicle
CN112590778A
Unified motion planning algorithm for autonomous driving vehicle in obstacle avoidance maneuver
US20150353082A1
Vehicle control system
WO2019151094A1