Interaction between host vehicle and target vehicle
By calculating the vehicle's motion state and path intersection, and using sensor data to automatically actuate, the problem of insufficient efficiency and accuracy of ADAS's actuation decision-making in complex environments is solved, and efficient actuation control is achieved under the bending path.
Patent Information
- Application Number
- CN202410846239.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-07-05
- Filing Date
- 2024-06-27
- Publication Date
- 2025-01-07
AI Technical Summary
Existing Advanced Driver Assistance Systems (ADAS) rely on map data or vehicle-to-vehicle (V2V) communications when determining when the main vehicle is actuated and it is difficult to handle bending paths, resulting in actuation of decisions in complex driving environments Insufficient efficiency and accuracy.
The motion state of the main vehicle and the target vehicle is determined by computer, the intersection of the bending path between the main vehicle and the target vehicle is calculated based on sensor data (such as radar data), and the main vehicle is automatically activated by using parameters such as the curvature radius and relative heading angle of the path. braking or steering system.
Without relying on map data and V2V communication, it can effectively handle the interaction of curved paths, improve the accuracy and efficiency of actuation decisions, and is suitable for manual driving and autonomous driving scenarios in complex driving environments.
Smart Images

Figure CN119261884A_ABST
Abstract
Description
Technical Field
[0001] This disclosure describes techniques for determining when to actuate a host vehicle in the presence of a target vehicle. Background Art
[0002] Advanced driver assistance systems (ADAS) are electronic technologies that assist drivers with driving and parking functions. Examples of ADAS include forward collision detection, lane departure detection, blind spot detection, automatic braking, adaptive cruise control, and lane keeping assist systems. Summary of the invention
[0003] A computer of a host vehicle is programmed to determine a motion state of a host vehicle and a target vehicle, determine an amount of intersection characterizing the paths of the host vehicle and the target vehicle, and actuate a component of the host vehicle based on the amount. The paths of the host vehicle and the target vehicle are based on respective motion states, and at least one path is curved. Because the motion state is used to determine the path, the computer can rely on sensor data (e.g., radar data) that is typically available on the host vehicle, rather than map data or vehicle-to-vehicle (V2V) communications, which may not be available or more difficult to access. Treating one or both of the paths as curved can allow for additional scenarios in which the host vehicle can be actuated to brake or steer, as compared to automatic braking that relies on the distance to an object in front of the host vehicle.
[0004] A computer includes a processor and a memory, and the memory stores instructions executable by the processor to: determine a primary motion state of a host vehicle, determine a target motion state of a target vehicle, determine an amount of intersection characterizing a primary path of the host vehicle and a target path of the target vehicle, and actuate a component of the host vehicle based on the amount. The primary path is based on the primary motion state, and the target path is based on the target motion state. At least one of the primary path or the target path is curved.
[0005] In one example, the component may include at least one of a braking system and a steering system.
[0006] In one example, the primary path and the target path may be based only on the primary motion state and the target motion state.
[0007] In one example, the primary path may be curved. In another example, the instructions may further include instructions for determining the radius of curvature based on a rate of change of the radius of curvature of the primary path. In yet another example, the radius of curvature may be the sum of an instantaneous radius of curvature and a term including the rate of change of the radius of curvature. In yet another example, the instantaneous radius of curvature may be a quotient of a speed of the host vehicle and a yaw rate of the host vehicle.
[0008] In yet another example, the radius of curvature of the main path may be based on a product of a pre-stored gain and the rate of change of the radius of curvature.
[0009] In yet another example, the instructions may further include instructions for determining a radius of curvature of the main path, and determining a time when the target vehicle enters the main path based on the radius of curvature.
[0010] In yet another example, the instructions may further include instructions for determining a radius of curvature of the main path, and determining a time when the target vehicle leaves the main path based on the radius of curvature.
[0011] In one example, the target path may be curved.In another example, the instructions may also include instructions for determining a distance from the host vehicle to the target path based on a rate of change of a relative heading angle between the host vehicle and the target vehicle.
[0012] In yet another example, the instructions may also include instructions for determining a lateral distance that displaces the target path from a straight path so that the target path does not intersect the main path at any point from the current position of the main vehicle through a braking distance of the main vehicle.
[0013] In one example, the primary path may be curved and the target path may be curved. In another example, the quantity may be a target yaw acceleration of the target vehicle. In yet another example, the instructions may further include instructions for determining the target yaw acceleration based on a radius of curvature of the primary path. In yet another example, the instructions may further include instructions for determining a target yaw rate of the target vehicle, the target yaw rate of the target vehicle maintaining a minimum distance between the target vehicle and the primary path having the radius of curvature, and determining the target yaw acceleration based on the target yaw rate.
[0014] In yet another example, the instructions may further include instructions for determining a target yaw acceleration based on a relative lateral velocity between the host vehicle and the target vehicle.
[0015] In yet another example, the instructions may further include instructions for determining the target yaw acceleration based on a quotient of a desired change in a target yaw rate of the target vehicle and a time for the target vehicle to enter a primary path following a straight line.
[0016] A method includes determining a primary motion state of a host vehicle, determining a target motion state of a target vehicle, determining an amount characterizing an intersection of a primary path of the host vehicle and a target path of the target vehicle, and actuating a component of the host vehicle based on the amount. The primary path is based on the primary motion state, and the target path is based on the target motion state. At least one of the primary path or the target path is curved. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] Figure 1 is a block diagram of an exemplary host vehicle.
[0018] Figure 2 is a flow chart of an exemplary process for actuating a host vehicle based on the motion states of the host vehicle and a target vehicle.
[0019] Figure 3 is a diagrammatic top view of an exemplary interaction between a host vehicle and a target vehicle.
[0020] Figure 4 It is used to determine Figure 3 A flowchart of an exemplary process for measuring interaction.
[0021] Figure 5 is a diagrammatic top view of another exemplary interaction between a host vehicle and a target vehicle.
[0022] Figure 6 is a diagrammatic top view of another exemplary interaction between a host vehicle and a target vehicle.
[0023] Figure 7 is a diagrammatic top view of another exemplary interaction between a host vehicle and a target vehicle. DETAILED DESCRIPTION
[0024] Referring to the drawings, wherein like numbers refer to like parts throughout the several views, a computer 105 includes a processor and a memory, and the memory stores instructions executable by the processor to: determine a primary motion state of a host vehicle 100, determine a target motion state of a target vehicle 300, determine an amount of intersection of a primary path 305 characterizing the host vehicle 100 and a target path 310 of the target vehicle 300, and actuate a component of the host vehicle 100 based on the amount. The primary path 305 is based on the primary motion state, and the target path 310 is based on the target motion state. At least one of the primary path 305 or the target path 310 is curved.
[0025] refer to Figure 1The host vehicle 100 may be any passenger vehicle or commercial vehicle, such as a car, truck, sport utility vehicle, crossover, van, minivan, taxi, bus, etc. The host vehicle 100 may include a computer 105, a communication network 110, sensors 115, a propulsion system 120, a braking system 125, and a steering system 130.
[0026] The computer 105 is a microprocessor-based computing device, such as a general-purpose computing device (which includes a processor and memory, an electronic controller, etc.), a field programmable gate array (FPGA), an application-specific integrated circuit (ASIC), a combination of the foregoing, etc. Typically, hardware description languages such as VHDL (VHSIC (Very High Speed Integrated Circuit) Hardware Description Language) are used in electronic design automation to describe digital and mixed-signal systems such as FPGAs and ASICs. For example, an ASIC is manufactured based on VHDL programming provided before manufacturing, and the logic components inside the FPGA can be configured based on, for example, VHDL programming stored in a memory electrically connected to the FPGA circuit. Therefore, the computer 105 may include a processor, a memory, etc. The memory of the computer 105 may include a medium for storing instructions executable by the processor and for electronically storing data and / or a database, and / or the computer 105 may include a structure such as the foregoing structure that provides programming. The computer 105 may be a plurality of computers connected together.
[0027] The computer 105 can transmit and receive data through the communication network 110. The communication network 110 can be, for example, a controller area network (CAN) bus, Ethernet, WiFi, a local interconnect network (LIN), an on-board diagnostic connector (OBD-II), and / or any other wired or wireless communication network. The computer 105 can be communicatively coupled to sensors 115, a propulsion system 120, a braking system 125, a steering system 130, and other components via the communication network 110.
[0028] Sensors 115 may provide data about the operation of host vehicle 100, such as wheel speed, wheel orientation, and engine and transmission data (e.g., temperature, fuel consumption, etc.). Sensors 115 may detect the position and / or orientation of host vehicle 100. For example, sensors 115 may include global positioning system (GPS) sensors; accelerometers, such as piezoelectric systems or micro-electromechanical systems (MEMS); gyroscopes, such as rate gyroscopes, ring laser gyroscopes, or fiber optic gyroscopes; inertial measurement units (IMUs); and magnetometers. Sensors 115 may detect the external world, such as objects and / or features of the environment surrounding host vehicle 100, such as target vehicles 300, road lane markings, traffic lights and / or signs, pedestrians, etc. For example, sensors 115 may include radar sensors, ultrasonic sensors, scanning laser rangefinders, light detection and ranging (lidar) devices, and image processing sensors (such as cameras).
[0029] The propulsion system 120 of the host vehicle 100 generates energy and converts the energy into motion of the host vehicle 100. The propulsion system 120 can be a conventional vehicle propulsion subsystem, such as a conventional powertrain system, which includes an internal combustion engine coupled to a transmission that transfers rotational motion to the wheels; an electric powertrain system, which includes a battery, an electric motor, and a transmission that transfers rotational motion to the wheels; a hybrid powertrain system, which includes elements of a conventional powertrain system and an electric powertrain system; or any other type of propulsion device. The propulsion system 120 can include an electronic control unit (ECU) that communicates with and receives input from the computer 105 and / or a human operator, etc. The human operator can control the propulsion system 120 via, for example, an accelerator pedal and / or a gear shift lever.
[0030] The brake system 125 is typically a conventional vehicle braking subsystem and resists the motion of the host vehicle 100, thereby slowing and / or stopping the host vehicle 100. The brake system 125 may include friction brakes, such as disc brakes, drum brakes, band brakes, etc.; regenerative brakes; any other suitable type of brake; or a combination thereof. The brake system 125 may include an electronic control unit (ECU) or the like that communicates with and receives input from the computer 105 and / or a human operator. The human operator may control the brake system 125 via, for example, a brake pedal.
[0031] The steering system 130 is typically a conventional vehicle steering subsystem and controls the turning of the wheels of the host vehicle 100. The steering system 130 may be a rack and pinion system with electric power steering, a steer-by-wire system (both of which are known), or any other suitable system. The steering system 130 may include an electronic control unit (ECU) or the like that communicates with and receives input from the computer 105 and / or a human operator. The human operator may control the steering system 130 via, for example, a steering wheel.
[0032] refer to Figure 3 and Figures 5 to 7 , the host vehicle 100 and the target vehicle 300 may be located in the same environment, for example, traveling on the same street or intersecting streets. The host vehicle 100 is a vehicle under the control of the computer 105, for which the following determinations and actuations are described. The target vehicle 300 is not controlled by the computer 105.
[0033] The computer 105 is programmed to determine a primary motion state for the subject vehicle 100 and a target motion state for the target vehicle 300. For purposes of this disclosure, a "motion state" is defined as a set of one or more variables that specify the motion of an object through space, such as one or more of position, velocity, acceleration, jerk, orientation, angular velocity, angular acceleration, etc. The computer 105 may determine the primary motion state based on data from the sensors 115 (e.g., data from a GPS sensor and / or an IMU). The computer 105 may determine the target motion state based on data from the sensors 115 (e.g., data from a radar and / or a lidar over time) using known object tracking algorithms.
[0034] The computer 105 is programmed to determine the main path 305. The main path 305 is the expected path of the host vehicle 100 when the host vehicle 100 travels from the current position of the host vehicle 100. The main path 305 can be based on a main motion state. For example, the main path 305 can be based on a main motion state and a target motion state; for example, the main path 305 can incorporate an expected maneuver to react to the target vehicle 300. The main path 305 can be based only on the main motion state and the target motion state. Therefore, the computer 105 can determine the main path 305 without the need for map data or a planned route. Therefore, the technology of this article is applicable when the host vehicle 100 is under the control of a human operator (i.e., not driven autonomously) and the planned route is unknown. The main path 305 can be curved.
[0035] The computer 105 is programmed to determine a target path 310. The target path 310 is the predicted path of the target vehicle 300 when the target vehicle 300 travels from the current location of the target vehicle 300. The target path 310 can be based on a target motion state. For example, the target path 310 can be based on a primary motion state and a target motion state; for example, the target path 310 can incorporate an expected maneuver to react to the host vehicle 100. The target path 310 can be based only on the primary motion state and the target motion state. Therefore, the computer 105 can determine the target path 310 without the need for map data or vehicle-to-vehicle (V2V) communication from the target vehicle 300. The target path 310 can be curved.
[0036] The computer 105 may be configured to: Figure 3 and Figures 5 to 7 The computer 105 may determine the main path 305 and the target path 310 based on the specific example described in the embodiment of the present invention. Figure 3 and Figures 5 to 7 The computer 105 may select a technique for determining the primary path 305 and the target path 310 based on whether the host vehicle 100 and / or the target vehicle 300 are turning. For example, the computer 105 may select a technique for determining the primary path 305 and the target path 310 in response to the host vehicle 100 turning (i.e., the primary path 305 is curved) and the target vehicle 300 is turning or going straight. Figure 3 The computer 105 may determine the main path 305 and the target path 310 in response to the target vehicle 300 turning (i.e., the target path 310 is curved) and the host vehicle 100 turning or going straight. Figure 5 technology and based on Figure 6 The computer 105 may determine the main path 305 and the target path 310 in response to the host vehicle 100 turning and the target vehicle 300 turning according to Figure 7 The main path 305 and the target path 310 are determined by using the technology.
[0037] The main path 305 intersects the target path 310. The host vehicle 100 may have a position along the main path 305 where the host vehicle 100 enters the target path 310, for example, a position where a portion of the host vehicle 100 first crosses the target path 310. The host vehicle 100 may have a position along the main path 305 where the host vehicle 100 leaves the target path 310, for example, a position where the last portion of the host vehicle 100 leaves the target path 310. The target vehicle 300 may have a position along the target path 310 where the target vehicle 300 enters the main path 305, for example, a position where a portion of the target vehicle 300 first crosses the main path 305. The target vehicle 300 may have a position along the target path 310 where the target vehicle 300 leaves the main path 305, for example, a position where the last portion of the target vehicle 300 leaves the main path 305.
[0038] The computer 105 is programmed to determine at least one quantity that characterizes the intersection of the main path 305 of the host vehicle 100 and the target path 310 of the target vehicle 300. The quantity indicates a certain motion characteristic of the host vehicle 100 and / or the target vehicle 300 relative to the intersection of the main path 305 and the target path 310. For example, the quantity may indicate the distance of the host vehicle 100 (or the target vehicle 300) from the target path 310 (or the main path 305), the time when the host vehicle 100 (or the target vehicle 300) enters or leaves the target path 310 (or the main path 305), the lateral acceleration of the host vehicle 100 (or the target vehicle 300) turning away from the target path 310 (or the main path 305), etc. The computer 105 may determine the lateral acceleration of the host vehicle 100 (or the target vehicle 300) based on the following information about the intersection of the host vehicle 100 and the target path 310. Figure 3 and Figures 5 to 7 Specific examples describe techniques for determining this amount.
[0039] The computer 105 may be programmed to actuate a component of the vehicle based on the amount. For example, the computer 105 may compare the amount to a threshold, actuate the component in response to the amount exceeding the threshold, and avoid actuating the component in response to the amount not exceeding the threshold. For another example, the computer 105 may compare the amount to one or more ranges, and actuate or avoid actuating the component depending on which range the amount is within. The component may include a braking system 125 and / or a steering system 130. For example, the computer 105 may actuate the braking system 125 to slow the host vehicle 100 to a stop and / or actuate the steering system 130 to turn the host vehicle 100 away from the target path 310. When avoiding actuating a component, the computer 105 does not actuate the component due to the amount, but the computer 105 may still actuate the component for a separate reason (such as an operator input, such as depressing the brake pedal or turning the steering wheel).
[0040] Figure 21 is a flow chart showing an exemplary process 200 for actuating the host vehicle 100 based on a primary motion state and a target motion state. The memory of the computer 105 stores executable instructions for performing the steps of the process 200 and / or may be programmed with a structure such as described above. As a general overview of the process 200, the computer 105 receives data from the sensor 115, determines a primary motion state and a target motion state, determines an intersection of the primary path 305 with the target path 310, determines whether a quantity exceeds a threshold, actuates a component of the host vehicle 100 when it is determined that the quantity exceeds the threshold, and avoids actuating the component when it is determined that the quantity does not exceed the threshold.
[0041] Process 200 begins at block 205 where computer 105 receives data from sensor 115, as described above.
[0042] Next, in box 210 , the computer 105 determines a host motion state of the host vehicle 100 and a target motion state of the target vehicle 300 , as described above.
[0043] Next, in block 215 , the computer 105 determines the primary path 305 , the target path 310 , and the intersection of the primary path 305 and the target path 310 , as described above and with the following specific examples.
[0044] Next, in decision block 220, computer 105 determines an amount that characterizes the intersection of primary path 305 and target path 310, as described above and with the following specific examples. In response to the amount exceeding a threshold, process 200 proceeds to block 225. In response to the amount not exceeding a threshold, process 200 proceeds to block 230.
[0045] In frame 225, computer 105 actuates components of host vehicle 100 as described above. After frame 225, process 200 ends.
[0046] In frame 230, computer 105 refrains from actuating components of host vehicle 100, as described above. After frame 230, process 200 ends.
[0047] refer to Figure 3 , the computer 105 may be programmed to follow Figure 3 The example steps of the embodiment of the present invention are to determine the amount of intersection of the main path 305 and the target path 310 in response to the main vehicle 100 turning and the target vehicle 300 approaching the main vehicle 100 from behind the main vehicle 100. The main path 305 is therefore curved. The target vehicle 300 can go straight or can be assumed to go straight. The amount of intersection can be the time when the target vehicle 300 enters and leaves the main path 305 and the time when the main vehicle 100 enters the target path 310 determined as described below.
[0048] The computer 105 is programmed to determine the radius of curvature based on, for example, the rate of change of the radius of curvature of the main path 305. The use of the rate of change of the radius of curvature provides a simple way to correct for clothoid turns, which are maneuvers of the vehicle along a clothoid curve. A clothoid curve has a curvature that changes linearly with the length of the curve. A clothoid turn provides a smooth transition between straight travel and a turn. For example, the radius of curvature may be the sum of an instantaneous radius of curvature and a term including the rate of change of the radius of curvature. The instantaneous radius of curvature may be the quotient of the speed of the host vehicle 100 and the yaw rate of the host vehicle 100. Another term may be the product of a pre-stored gain and the rate of change of the radius of curvature, for example, as shown in the following equation:
[0049]
[0050] Where R host is the radius of curvature of the main path 305, v host is the speed of the host vehicle 100, ω host is the yaw rate of the host vehicle 100, k is a pre-stored gain, and the point above the variable indicates the time derivative of the variable. The pre-stored gain k may be selected to provide adequate responsiveness while maintaining accuracy, such as 0.1. The pre-stored gain k may be stored in a memory of the computer 105.
[0051] The computer 105 is programmed to calculate the curvature radius R based on the host To determine the time when the target vehicle 300 enters and leaves the main path 305. For example, the computer 105 can determine the target entry time when the front end of the target vehicle 300 passes through the inner radius of the main path 305 and the target exit time when the rear end passes through the outer radius of the main path 305. The inner radius and the outer radius can be the radius of curvature adjusted by the width of the host vehicle 100, as shown in the following equation:
[0052]
[0053] Where R enter is the inner radius, W host is the width of the host vehicle 100, and R clear is the outer radius. Computer 105 can calculate the width W host Stored in memory.
[0054] First, the computer 105 may determine the longitudinal distance and the lateral distance between the target vehicle 300 and the host vehicle 100 from the perspective of the target vehicle 300 based on the relative heading between the host vehicle 100 and the target vehicle 300 and the longitudinal distance and the lateral distance from the perspective of the host vehicle 100, as shown in the following equations:
[0055] L long,target =-[(L long,host+L F2R )*cosθ+L lat,host *sinθ]
[0056] L lat,target =L lat,host *cosθ-(L long,host +L F2R )*sinθ
[0057] Where L long,target is the longitudinal distance between the target vehicle 300 and the host vehicle 100 relative to the target vehicle 300, L long,host is the longitudinal distance between the host vehicle 100 and the target vehicle 300 relative to the host vehicle 100, L F2R is the distance between the center of the rear axle and the center of the front bumper of the host vehicle 100, θ is the relative heading angle between the host vehicle 100 and the target vehicle 300, L lat,host is the lateral distance between the host vehicle 100 and the target vehicle 300 relative to the host vehicle 100, and L lat,target is the lateral distance between the target vehicle 300 and the host vehicle 100 relative to the target vehicle 300. The computer 105 can calculate the distance L F2R The computer 105 may determine the primary distance L based on data from the sensor 115 (eg, radar data). long,host and L lat,host and the relative heading angle θ.
[0058] Next, the computer 105 can calculate the target lateral distance L based on the target lateral distance L. lat,target , the relative heading angle θ and the width of the target are used to determine the lateral distance into the target and the lateral distance out of the target, as shown in the following equations:
[0059]
[0060] Where L lat,targEnter is the lateral distance into the target, W target is the width of the target vehicle 300, and L lat,targClear is the lateral distance from the target.
[0061] Next, computer 105 may determine that target vehicle 300 enters primary path 305 (i.e., first crosses inner radius R based on the entering and exiting target lateral distances). enter ) and leaves the main path 305 (ie, clears the outer radius R clear ), for example, as shown in the following equation:
[0062]
[0063] Where L targEnterThe target vehicle 300 travels to first pass through the inner radius R enter The distance, and L targClear The target vehicle 300 travels to completely pass through the outer radius R clear distance.
[0064] Finally, the computer 105 can use the longitudinal distance L targEnter First, pass through the inner radius R enter To determine when the target vehicle 300 enters the main path 305, the computer 105 may use the longitudinal distance L targClear Clear outer radius R clear To determine the time when the target vehicle 300 leaves the main path 305, for example, as shown in the following equation:
[0065]
[0066] where t targEnter is the time when the target vehicle 300 enters the main path 305, L targetLength is the length of the target vehicle 300, v target is the speed of the target vehicle 300, and t targClear is the time when the target vehicle 300 leaves the main path 305. The computer 105 can determine the length L of the target vehicle 300 based on data from the sensor 115 (e.g., from a radar). targetLength and speed v target .
[0067] The computer 105 is programmed to determine when the host vehicle 100 enters the target path 310. First, the computer 105 can determine the speed of the host vehicle 100, the acceleration of the host vehicle 100, and the lateral distance from the host vehicle 100 to the target vehicle 300, all of which are converted to the coordinate system of the target vehicle 300. The computer 105 can multiply the terms by a rotation matrix to convert to the coordinate system of the target vehicle 300, for example, as shown in the following equation:
[0068]
[0069] where v host→targ is the velocity of the host vehicle 100 in the coordinate system of the target vehicle 300, v long,host is the longitudinal component of the velocity of the host vehicle 100, v lat,host is the lateral component of the velocity of the host vehicle 100, θ(t) is the relative heading angle between the host vehicle 100 and the target vehicle 300 that varies with time, and a host→targ is the acceleration of the host vehicle 100 in the coordinate system of the target vehicle 300, a long,host is the longitudinal component of the acceleration of the host vehicle 100, a lat,hostis the lateral component of the acceleration of the host vehicle 100, L lat,host→targ is the lateral distance from the host vehicle 100 to the target vehicle 300 in the coordinate system of the target vehicle 300, L long,host is the longitudinal distance from the host vehicle 100 to the target vehicle 300, and L lat,host is the lateral distance from the host vehicle 100 to the target vehicle 300 .
[0070] Next, the computer 105 determines the time when the distance between the host vehicle 100 and the target path 310 is zero, for example, by solving the following equation for time t:
[0071]
[0072] Where k is an indicator of the lateral position of the target vehicle 300 relative to the host vehicle 100, W host is the width of the host vehicle 100, and W target is the width of the target vehicle 300. When the target vehicle 300 is to the right of the host vehicle 100, the indicator k is equal to 1, and when the target vehicle 300 is to the left of the host vehicle 100, the indicator is equal to −1. Time t is the time when the host vehicle 100 enters the target path 310. For example, the computer 105 may use numerical approximation to solve for time t.
[0073] The computer 105 is programmed to classify the interaction between the host vehicle 100 and the target vehicle 300 based on the time when the target vehicle 300 enters and leaves the main path 305 and the time when the host vehicle 100 enters the target path 310 (e.g., by using the time when the target vehicle 300 enters and leaves the main path 305 as the amount characterizing the intersection and using the time when the host vehicle 100 enters the target path 310 as the threshold (or vice versa)). The computer 105 can classify the interaction as a miss in response to the time when the host vehicle 100 enters the target path 310 occurring after the time when the target vehicle 300 leaves the main path 305. The computer 105 can classify the interaction as a near miss in response to the difference between the time when the host vehicle 100 enters the target path 310 and the time when the target vehicle 300 leaves the main path 305 being less than a threshold. The threshold can be selected based on the noise of the data from the sensor 115. The computer 105 can adjust the threshold based on operator input (e.g., selection of a driving mode). The computer 105 may classify the interaction as a potential frontal collision in response to the time when the host vehicle 100 enters the target path 310 occurring between the time when the target vehicle 300 enters the main path 305 and the time when the target vehicle 300 leaves the main path 305. The computer 105 may classify the interaction as a potential side collision in response to the time when the host vehicle 100 enters the target path 310 occurring before the time when the target vehicle 300 enters the main path 305.
[0074] The computer 105 may be programmed to determine a potential collision location on the side of the host vehicle 100 or the target vehicle 300 based on the classification of the interaction. In response to classifying the interaction as a potential frontal collision, the computer 105 may determine the location along the side of the target vehicle 300, for example, as a percentage of the length of the target vehicle 300, as shown in the following equation:
[0075]
[0076] In response to classifying the interaction as a potential side collision, the computer 105 may determine the position along the side of the host vehicle 100, for example, as a percentage of the length of the host vehicle 100, as shown in the following equation:
[0077]
[0078] In response to classifying the interaction as a near miss, the computer 105 may determine the percentage of the length of the target vehicle 300 that is currently in the primary path 305, for example, as shown in the following equation:
[0079]
[0080] The computer 105 may actuate components of the host vehicle 100 based on the classification of the interaction (e.g., based on the potential collision position or length of the target vehicle 300 in the primary path 305). For example, the computer 105 may select components to actuate in order to navigate the host vehicle 100 around the target vehicle 300, for example, with minimal changes in the direction and / or speed of the host vehicle 100, or according to some other criteria (where the potential collision position or length of the target vehicle 300 in the primary path 305 is an input).
[0081] Figure 4 is shown for Figure 3 Flowchart of an exemplary process 400 for determining an example amount (e.g., for decision box 220 of process 200). The memory of computer 105 stores executable instructions for performing the steps of process 400 and / or can be programmed with a structure such as described above. As a general overview of process 400, computer 105 determines the inner and outer radii of curvature of main path 305, determines when target vehicle 300 enters and leaves main path 305, determines when host vehicle 100 enters target path 310, and classifies interactions between host vehicle 100 and target vehicle 300.
[0082] Process 400 begins in block 405 where computer 105 determines the radius of curvature and the inner and outer radii of primary path 305 as described above.
[0083] Next, in block 410 , computer 105 determines the time at which target vehicle 300 enters and leaves primary path 305 based on the radius of curvature, as described above.
[0084] Next, in box 415 , the computer 105 determines when the host vehicle 100 enters the target path 310 , as described above.
[0085] Next, in box 420, the computer 105 classifies the interaction between the host vehicle 100 and the target vehicle 300, as described above. As described above, the computer 105 can also determine the potential collision location. After box 420, the process 400 ends.
[0086] refer to Figure 5 , the computer 105 may be programmed to follow Figure 5 The example steps of the embodiment of the present invention are to determine an amount characterizing the intersection of the main path 305 and the target path 310 in response to the forward trajectory of the target vehicle 300 intersecting the main path 305 and the target vehicle 300 turning. The target path 310 is therefore curved. The host vehicle 100 may be traveling straight or may be assumed to be traveling straight. The amount may be the adjusted distance of the host vehicle 100 from the target path 310 or the time when the host vehicle 100 enters the target path 310 as determined as described below.
[0087] The computer 105 is programmed to determine the distance between the host vehicle 100 and the target path 310 based on the rate of change of the relative heading angle between the host vehicle 100 and the target vehicle 300. First, the computer 105 may determine the distance between the target vehicle 300 and the main path 305. The distance between the target vehicle 300 and the main path 305 may be the sum of the lateral distance between the host vehicle 100 and the target vehicle 300 and the component of the width of the target vehicle 300 in the lateral direction to the host vehicle 100 minus half the width of the host vehicle 100, as shown in the following equation:
[0088]
[0089] Where L hostPath is the distance between the center of the target vehicle 300 and the main path 305, L latToTarg is the lateral distance between the center of the host vehicle 100 and the target vehicle 300, W target is the width of the target vehicle 300, θ is the relative heading angle between the host vehicle 100 and the target vehicle 300, sign() is a function that returns the sign (positive or negative) of its argument, and W host is the width of the host vehicle 100 .
[0090] Next, the computer 105 determines an adjustment to the distance of the host vehicle 100 from the target path 310 based on the rate of change of the relative heading angle θ. The adjustment may be the time at which the target vehicle 300 reaches the main path 305 laterally relative to the coordinate system of the host vehicle 100, the rate of change of the relative heading angle θ, and the distance L from the center of the target vehicle 300 to the main path 305. hostPath The product of, for example, as shown in the following equation:
[0091]
[0092] Where L targPathAdd is adjusted, and t hostLat is the time when the target vehicle 300 reaches the main path 305 laterally from the coordinate system of the host vehicle 100 .
[0093] Next, the computer 105 determines the distance of the host vehicle 100 from the target path 310 adjusted by the adjustment, for example, as shown in the following equation:
[0094]
[0095] Finally, the computer 105 may calculate the distance L between the host vehicle 100 and the target path 310 based on the adjusted distance L between the host vehicle 100 and the target path 310. targPathFinal The time when the host vehicle 100 enters the target path 310 is determined. Therefore, the time when the host vehicle 100 enters the target path 310 is based on the rate of change of the relative heading angle. For example, the time may be the lateral speed of the host vehicle 100 toward the target vehicle 300, the lateral acceleration of the host vehicle 100 toward the target vehicle 300, and the corrected distance L targPathFinal The function is expressed as follows:
[0096] t hostEnter =f(v latToTarg ,a latToTarg ,L targPathFinal )
[0097] where v latToTarg is the relative lateral velocity of the host vehicle 100 toward the target vehicle 300, and a latToTarg is the lateral acceleration of the host vehicle 100 toward the target vehicle 300 .
[0098] refer to Figure 6 , the computer 105 may be programmed to follow Figure 6The example steps of the embodiment of the present invention are to determine an amount characterizing the intersection of the main path 305 and the target path 310 in response to the forward trajectory of the target vehicle 300 intersecting the main path 305 and the target vehicle 300 turning. The target path 310 is therefore curved. The host vehicle 100 can go straight or turn. The following steps evaluate the ability of the target vehicle 300 to follow the curved target path 310 displaced from the straight target path. The target path 310 is therefore curved. The amount can be the lateral acceleration required for the target vehicle 300 to follow the displaced target path 310 or the ratio of the lateral acceleration to a preset lateral acceleration, determined as described below.
[0099] The computer 105 is programmed to determine a lateral distance to displace the target path 310 from the straight path so that the target path 310 does not intersect the main path 305 at any point that is farther from the current position of the host vehicle 100 than the braking distance of the host vehicle 100. In other words, the target path 310 is displaced so as to intersect the main path 305 only at points that are farther from the current position of the host vehicle 100 than the braking distance of the host vehicle 100. The lateral distance to be displaced can be measured from a reference point on the host vehicle 100 when located at the braking distance from the current position of the host vehicle 100. For example, the lateral distance can be given by the following equation:
[0100]
[0101] Where L latNeed is the lateral distance of the shift target path 310, t latToTarg is the time when the target vehicle 300 reaches the main path 305 laterally, and L longToHost is the longitudinal distance of the target vehicle 300 relative to the target vehicle 300 at which the target vehicle 300 reaches the main path 305 .
[0102] Computer 105 may determine the lateral acceleration required for target vehicle 300 to follow displaced target path 310, for example, as shown in the following equation:
[0103]
[0104] The computer 105 may determine the lateral acceleration a required for the target vehicle 300 to follow the displaced target path 310. latNeed The ratio between the preset lateral acceleration and the acceleration is, for example, as shown in the following equation:
[0105]
[0106] where a latMax is the preset lateral acceleration. You can select the preset lateral acceleration a latMax To represent the comfortable turning of the target vehicle 300. The preset lateral acceleration a latMaxIt can be stored in the memory of computer 105.
[0107] The computer 105 may be programmed to actuate components of the vehicle based on the lateral distance of the displacement target path 310. For example, the computer 105 may actuate a component in response to the ratio exceeding a threshold. The threshold may be selected to indicate that the target vehicle 300 is able to provide the required lateral acceleration within a margin. The computer 105 may actuate the braking system 125 to decelerate the host vehicle 100 to a stop.
[0108] The computer 105 may be programmed to avoid actuating components based on the lateral distance of the shift target path 310 in response to the braking torque of the braking system 125 exceeding a threshold. In other words, if the host vehicle 100 is already braking with a braking torque above the threshold, the computer 105 does not use the ratio to determine whether to further actuate the braking system 125. The threshold may be selected to indicate that the operator intends to stop the host vehicle 100.
[0109] refer to Figure 7 , the computer 105 may be programmed to follow Figure 7 305 and the target path 310 are determined in response to the host vehicle 100 turning and the target vehicle 300 approaching the host vehicle 100 from behind the host vehicle 100. The main path 305 is therefore curved. The target vehicle 300 can go straight or turn. The following steps evaluate the ability of the target vehicle 300 to follow the curved target path 310 within the curved main path 305. The target path 310 is therefore curved. The amount can be a target yaw acceleration of the target vehicle 300 determined as described below.
[0110] The computer 105 may be programmed to determine whether the target vehicle 300 is decelerating. For example, the computer 105 may determine whether the acceleration of the target vehicle 300 is continuously below an acceleration threshold for at least a previously preset duration. The acceleration threshold is negative (indicating deceleration) and may be selected to indicate active braking of the target vehicle 300, such as -1.5 m / s 2 The preset duration may be selected to indicate an intention to slow the target vehicle 300, rather than the typical speed fluctuation when traveling at an expected positive speed, i.e., 200 milliseconds. Upon determining that the target vehicle 300 is not slowing down, the computer 105 may include additional terms for the reaction time of the target vehicle 300 when determining, for example, the longitudinal distance or the time when the target vehicle 300 enters or leaves the main path 305 (such as shown in the example above).
[0111] The computer 105 is programmed to determine a target yaw acceleration for the target vehicle 300. The target yaw acceleration may be a minimum yaw acceleration required for the target vehicle 300 to turn on the inside of the turn of the host vehicle 100. The target yaw acceleration may be based on one or more of: maintaining a minimum distance between the target vehicle 300 and the main path 305 (where the main path 305 has a radius of curvature), minimizing a difference between a main yaw rate of the host vehicle 100 and a target yaw rate of the target vehicle 300, and minimizing a difference between a main lateral acceleration of the host vehicle 100 and a target lateral acceleration of the target vehicle 300.
[0112] First, the computer 105 may determine a first target yaw rate of the target vehicle 300 that maintains a minimum distance between the target vehicle 300 and the main path 305 having a radius of curvature, for example, as shown in the following equation:
[0113]
[0114] where ω roc is the first target yaw rate, and d min is the minimum distance. Figure 3 The radius of curvature R is determined enter .
[0115] Next, the computer 105 may determine a second target yaw rate based on the relative lateral velocity between the host vehicle 100 and the target vehicle 300 (i.e., the lateral velocity difference between the host vehicle 100 and the target vehicle 300), such as the quotient of the relative lateral velocity and the distance of the target vehicle 300 into the main path 305, for example, as shown in the following equation:
[0116]
[0117] where ω vlat is the second target yaw rate.
[0118] Next, the computer 105 may determine a third target yaw rate that minimizes the difference between the main lateral acceleration of the host vehicle 100 and the target lateral acceleration of the target vehicle 300. For example, the third target yaw rate may be based on the quotient of the desired change in the target yaw rate of the target vehicle 300 and the time at which the target vehicle 300 enters the main path 305 that follows a straight line, for example, as shown in the following equation:
[0119]
[0120] where ω alat is the third target yaw rate, a latToTargis the relative lateral acceleration of the host vehicle 100 towards the target vehicle 300 , and k is a weight parameter between 0 and 1. The weight parameter k may be selected based on the expected relative influence of the third target yaw rate in determining the overall target yaw rate as described below.
[0121] Next, the computer 105 may determine a total target yaw rate based on the first yaw rate, the second yaw rate, and the third yaw rate. For example, the total target yaw rate may be the sum of the first yaw rate, the second yaw rate, and the third yaw rate, as shown in the following equation:
[0122] ω to t=ω roc +ω vlat +ω alat
[0123] where ω tot is the total target yaw rate. Finally, computer 105 may determine a target yaw acceleration to change the actual target yaw rate to the total target yaw rate within the time before target vehicle 300 crosses primary path 305, for example, as shown in the following equation:
[0124]
[0125] in is the desired target yaw acceleration, and ω target is the current yaw rate of the target vehicle 300. Therefore, the target yaw acceleration Based on input of target yaw rate.
[0126] Alternatively, the computer 105 may determine the target yaw acceleration as the yaw acceleration required for the target vehicle 300 to have the same yaw rate as the host vehicle 100 when the target vehicle 300 begins to turn within the main path 305. The computer 105 may determine the target yaw acceleration in this manner in response to the difference between the time when the target vehicle 300 enters the main path 305 and the time when the host vehicle 100 reaches the target path 310 longitudinally being less than a preset threshold. The preset threshold may be selected based on typical reaction times. The target yaw acceleration may be based on the current main yaw acceleration, the time when the host vehicle 100 reaches the target path 310 longitudinally, the current yaw rate of the target vehicle 300, and the time when the target vehicle 300 enters the main path 305, as shown in the following equation:
[0127]
[0128] The computer 105 may be programmed to set the target yaw acceleration With threshold yaw acceleration The threshold yaw acceleration can be selected The computer 105 may respond to the target yaw acceleration Exceeding the threshold yaw acceleration The computer 105 may respond to the target yaw acceleration by actuating components of the vehicle, such as the brake system 125. Below threshold yaw acceleration Actuation of said components is avoided.
[0129] Generally speaking, the computing systems and / or devices described may employ any of a variety of computer operating systems, including but not limited to the following versions and / or types: Ford Application; AppLink / Smart Device Link middleware; Microsoft Operating system; Microsoft Operating system; Unix operating system (for example, distributed by Oracle Corporation of Redwood Shores, California operating systems); AIX UNIX operating system distributed by International Business Machines Corporation of Armonk, New York; Linux operating system; Mac OSX and iOS operating systems distributed by Apple Inc. of Cupertino, California; BlackBerry operating system distributed by BlackBerry Ltd. of Waterloo, Canada; and Android operating system developed by Google Inc. and the Open Handset Alliance; or provided by QNX Software Systems CAR Infotainment Platform. Examples of computing devices include, but are not limited to, an in-vehicle computer, a computer workstation, a server, a desktop, notebook, laptop or handheld computer, or some other computing system and / or device.
[0130] Computing devices typically include computer-executable instructions, wherein the instructions are executable by one or more computing devices such as those listed above. Computer-executable instructions may be compiled or interpreted from a computer program created using a variety of programming languages and / or technologies, including, alone or in combination, but not limited to Java. TM, C, C++, Matlab, Simulink, Stateflow, Visual Basic, Java Script, Python, Perl, HTML, etc. Some of these applications can be compiled and executed on virtual machines such as Java virtual machines, Dalvik virtual machines, etc. Typically, a processor (e.g., a microprocessor) receives instructions from, for example, a memory, a computer-readable medium, etc., and executes these instructions to perform one or more processes, including one or more of the processes described herein. Such instructions and other data can be stored and transmitted using various computer-readable media. Files in a computing device are typically a collection of data stored on a computer-readable medium such as a storage medium, a random access memory, etc.
[0131] Computer-readable media (also referred to as processor-readable media) include any non-transitory (e.g., tangible) media that participate in providing data (e.g., instructions) that can be read by a computer (e.g., by a processor of a computer). Such media can take many forms, including, but not limited to, non-volatile media and volatile media. Instructions can be transmitted via one or more transmission media, including optical fibers, wires, wireless communications, including internals that make up a system bus coupled to a processor of a computer. Common forms of computer-readable media include, for example, RAM, PROM, EPROM, FLASH-EEPROM, any other memory chip or cassette, or any other medium from which a computer can read.
[0132] The database, data repository or other data storage described herein may include various mechanisms for storing, accessing / accessing and retrieving various data, including hierarchical databases, file sets in file systems, application databases in special formats, relational database management systems (RDBMS), non-relational databases (NoSQL), graphic databases (GDB), etc. Each such data storage is typically included in a computing device using a computer operating system such as one of the above-mentioned, and is accessed via a network in any one or more of a variety of ways. The file system is accessible from the computer operating system and may include files stored in various formats. In addition to the language (such as the above-mentioned PL / SQL language) for creating, storing, editing and executing stored programs, RDBMS typically also uses structured query language (SQL).
[0133] In some examples, system elements may be implemented as computer-readable instructions (e.g., software) on one or more computing devices (e.g., servers, personal computers, etc.) stored on computer-readable media associated therewith (e.g., disks, memories, etc.). A computer program product may include such instructions stored on a computer-readable medium for performing the functions described herein.
[0134] In the accompanying drawings, like reference numerals indicate like elements. In addition, some or all of these elements may be changed. With respect to the media, processes, systems, methods, heuristics, etc. described herein, it should be understood that although the steps of such processes, etc. have been described as occurring in a certain ordered sequence, such processes may be practiced by performing the steps in an order different from that described herein. It should also be understood that certain steps may be performed simultaneously, other steps may be added, or certain steps described herein may be omitted. The operations, systems, and methods described herein should always be implemented and / or performed in accordance with applicable owner / user manuals and / or safety guidelines.
[0135] The present disclosure has been described in an illustrative manner, and it is to be understood that the terminology which has been used is intended to be in the nature of words of description rather than limitation. Many modifications and variations of the present disclosure are possible in light of the above teachings, and the present disclosure may be practiced in other ways than specifically described.
[0136] According to the present invention, a computer is provided, the computer having a processor and a memory, and the memory stores instructions, the instructions being executable by the processor to: determine a main motion state of a main vehicle; determine a target motion state of a target vehicle; determine an amount of intersection characterizing a main path of the main vehicle and a target path of the target vehicle, the main path being based on the main motion state, the target path being based on the target motion state, at least one of the main path or the target path being curved; and actuate a component of the main vehicle based on the amount.
[0137] According to an embodiment, the component comprises at least one of a braking system and a steering system.
[0138] According to an embodiment, the main path and the target path are based only on the main motion state and the target motion state.
[0139] According to an embodiment, the main path is curved.
[0140] According to an embodiment, the instructions further include instructions for determining the radius of curvature based on a rate of change of the radius of curvature of the main path.
[0141] According to an embodiment, the radius of curvature is the sum of an instantaneous radius of curvature and a term comprising the rate of change of the radius of curvature.
[0142] According to an embodiment, the instantaneous radius of curvature is the quotient of the speed of the host vehicle and the yaw rate of the host vehicle.
[0143] According to an embodiment, the radius of curvature of the main path is based on a product of a pre-stored gain and the rate of change of the radius of curvature.
[0144] According to an embodiment, the instructions further include instructions for performing the following operations: determining a radius of curvature of the main path, and determining a time when the target vehicle enters the main path based on the radius of curvature.
[0145] According to an embodiment, the instructions further include instructions for determining a radius of curvature of the main path, and determining a time when the target vehicle leaves the main path based on the radius of curvature.
[0146] According to an embodiment, the target path is curved.
[0147] According to an embodiment, the instructions further include instructions for determining a distance from the host vehicle to the target path based on a rate of change of a relative heading angle between the host vehicle and the target vehicle.
[0148] According to an embodiment, the instructions further comprise instructions for determining a lateral distance that displaces the target path from a straight path so that the target path does not intersect the primary path at any point from a current position of the host vehicle through a braking distance of the host vehicle.
[0149] According to an embodiment, the main path is curved and the target path is curved.
[0150] According to an embodiment, said quantity is a target yaw acceleration of said target vehicle.
[0151] According to an embodiment, the instructions further include instructions for determining the target yaw acceleration based on a radius of curvature of the main path.
[0152] According to an embodiment, the instructions further include instructions for determining a target yaw rate of the target vehicle, the target yaw rate of the target vehicle maintaining a minimum distance between the target vehicle and the main path having the radius of curvature, and determining the target yaw acceleration based on the target yaw rate.
[0153] According to an embodiment, the instructions further include instructions for determining a target yaw acceleration based on a relative lateral velocity between the host vehicle and the target vehicle.
[0154] According to an embodiment, the instructions further include instructions for determining the target yaw acceleration based on a quotient of a desired change in a target yaw rate of the target vehicle and a time for the target vehicle to enter a primary path following a straight line.
[0155] According to the present invention, a method includes: determining a main motion state of a main vehicle; determining a target motion state of a target vehicle; determining an amount of intersection characterizing a main path of the main vehicle and a target path of the target vehicle, the main path being based on the main motion state, the target path being based on the target motion state, at least one of the main path or the target path being curved; and actuating a component of the main vehicle based on the amount.
Claims
1. A method comprising: determining a primary motion state of the host vehicle; determining a target motion state of a target vehicle; determining an amount of intersection characterizing a primary path of the host vehicle and a target path of the target vehicle, the primary path being based on the primary motion state, the target path being based on the target motion state, at least one of the primary path or the target path being curved; as well as A component of the host vehicle is actuated based on the amount. 2 . The method of claim 1 , wherein the component comprises at least one of a braking system and a steering system. 3 . The method of claim 1 , wherein the primary path and the target path are based only on the primary motion state and the target motion state. The method of claim 1 , wherein the primary path is curved. The method of claim 4 , further comprising determining the radius of curvature based on a rate of change of the radius of curvature of the primary path.
6. The method of claim 5, wherein the radius of curvature is the sum of an instantaneous radius of curvature and a term including the rate of change of the radius of curvature.
7. The method of claim 5, wherein the radius of curvature of the main path is based on a product of a pre-stored gain and the rate of change of the radius of curvature. The method of claim 1 , wherein the target path is curved. 9 . The method of claim 8 , further comprising determining a distance from the host vehicle to the target path based on a rate of change of a relative heading angle between the host vehicle and the target vehicle.
10. The method of claim 8, further comprising determining a lateral distance that displaces the target path from a straight path so that the target path does not intersect the primary path at any point from a current position of the host vehicle through a braking distance of the host vehicle.
11. The method of claim 1, wherein the primary path is curved and the target path is curved.
12. The method of claim 11, wherein the quantity is a target yaw acceleration of the target vehicle. 13 . The method of claim 12 , further comprising determining the target yaw acceleration based on a radius of curvature of the primary path.
14. The method of claim 13 further comprising determining a target yaw rate for the target vehicle, the target yaw rate for the target vehicle maintaining a minimum distance between the target vehicle and the primary path having the radius of curvature, and determining the target yaw acceleration based on the target yaw rate.
15. A computer comprising a processor and a memory, the memory storing instructions executable by the processor to perform the method of one of claims 1 to 14.
Citation Information
Cited By
Vehicle braking method, device and equipment in curve scene and medium
CN121133636A