Vehicle control device, vehicle control method, and program

The vehicle control device addresses the challenges of inflexible and slow trajectory model creation by dynamically updating start and end points based on error calculations, resulting in a more flexible and efficient vehicle control system.

JP7699435B2Active Publication Date: 2025-06-27HONDA MOTOR CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2021004002
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-01-14
Publication Date
2025-06-27
Estimated Expiration
2041-01-14

AI Technical Summary

Technical Problem

Existing vehicle control techniques, such as those using the gradient descent method, face challenges in creating a flexible and quick trajectory model for vehicle steering, often resulting in long calculation times and inflexible trajectory models.

Method used

A vehicle control device that acquires track points, sets start and end points for a track model, calculates the track model and error between the model and target points, and updates the start and end points based on error values to improve model fit.

Benefits of technology

This approach enables the creation of a trajectory model that is more flexible and can be calculated more quickly, allowing for improved vehicle control and navigation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007699435000003
    Figure 0007699435000003
  • Figure 0007699435000004
    Figure 0007699435000004
  • Figure 0007699435000005
    Figure 0007699435000005
Patent Text Reader

Abstract

To generate a track model conforming to a target track of a vehicle more speedily and flexibly.SOLUTION: A vehicle control device comprises: an acquisition part which acquires a plurality of track points constituting a target track where a vehicle passes through in future; a track point setting part which sets a start point and an end point, to which the track model is applied, from the plurality of track points; and a track model calculation part which calculates a track model applied to target track points between the start point and the end point among the plurality of track points, and calculates an error between the track model and the target track points. The vehicle control device makes the vehicle travel along the determined track model, and the track point setting part updates the start point and the end point based upon the error.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a vehicle control device, a vehicle control method, and a program.

Background Art

[0002] Conventionally, a technique is known in which a trajectory model in an arc shape is applied to a target trajectory of a vehicle to perform steering angle control. For example, Patent Document 1 discloses a technique for creating a trajectory model by arc fitting using the gradient descent method.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] However, since the technique described in Patent Document 1 uses the gradient descent method, the calculation time until the solution converges may be long. Furthermore, since the technique described in Patent Document 1 does not make the number of trajectory points of the vehicle to which the trajectory model is applied variable, it may not be possible to create a flexible trajectory model according to the target trajectory of the vehicle.

[0005] The present invention has been made in consideration of such circumstances, and one of its objects is to provide a vehicle control device, a vehicle control method, and a program that can create a trajectory model according to the target trajectory of a vehicle more quickly and flexibly.

Means for Solving the Problems

[0006] The vehicle control device according to this invention employs the following configuration. (1): A vehicle control device according to an aspect of the present invention includes an acquisition unit that acquires a plurality of track points constituting a target track that the vehicle will pass through in the future, a track point setting unit that sets a start point and an end point that are targets for fitting a track model from the plurality of track points, and a track model calculation unit that calculates a track model fitted to a target track point between the start point and the end point among the plurality of track points and calculates an error between the track model and the target track point. The vehicle control device runs the vehicle along the determined track model, and the track point setting unit updates the start point and the end point based on the error.

[0007] (2): In the aspect of (1) above, when the error is greater than an error upper limit value or less than an error lower limit value, the track point setting unit updates the end point based on a minimum allowable value or a maximum allowable value of the end point, and repeats a process of updating the start point by multiplying the updated end point by a predetermined value to update the start point and the end point.

[0008] (3): In the aspect of (1) or (2) above, the track point setting unit calculates the error based on a squared error between the track model and the target track point.

[0009] (4): In the aspect of (3) above, the track model is an arc, and the track model calculation unit calculates a reference point of the vehicle based on a radius of the arc and a wheelbase of the vehicle, and calculates the squared error by calculating a squared difference between a squared distance between the reference point and the center of the arc and a squared distance between the reference point and the target track point.

[0010] (5) The vehicle control method according to another aspect of the present invention is such that a vehicle control device acquires a plurality of track points constituting a target track that the vehicle will pass through in the future, sets a start point and an end point to which a track model is to be applied from the plurality of track points, calculates a track model applied to target track points between the start point and the end point among the plurality of track points, and calculates an error between the track model and the target track points, causes the vehicle to travel along the determined track model, and updates the start point and the end point based on the error.

[0011] (6) The program according to another aspect of the present invention causes a processor of a vehicle control device to acquire a plurality of track points constituting a target track that the vehicle will pass through in the future, set a start point and an end point to which a track model is to be applied from the plurality of track points, calculate a track model applied to target track points between the start point and the end point among the plurality of track points, and calculate an error between the track model and the target track points, cause the vehicle to travel along the determined track model, and update the start point and the end point based on the error.

Advantages of the Invention

[0012] (1) to (6) enable creation of a track model according to the target track of the vehicle more quickly and flexibly.

Brief Description of the Drawings

[0013]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Embodiments for Carrying Out the Invention

[0014] Hereinafter, with reference to the drawings, a vehicle control device, a vehicle control method, and a program according to an embodiment of the present invention will be described.

[0015] [Overall Configuration] FIG. 1 is a configuration diagram of a vehicle system 1 using the vehicle control device according to the embodiment. The vehicle on which the vehicle system 1 is mounted is, for example, a two-wheeled, three-wheeled, or four-wheeled vehicle, and its drive source is an internal combustion engine such as a diesel engine or a gasoline engine, an electric motor, or a combination thereof. The electric motor operates using electric power generated by a generator connected to the internal combustion engine, or discharge power of a secondary battery or a fuel cell.

[0016] The vehicle system 1 includes, for example, a camera 10, a radar device 12, a LIDAR (Light Detection and Ranging) 14, an object recognition device 16, a communication device 20, an HMI (Human Machine Interface) 30, a vehicle sensor 40, a navigation device 50, an MPU (Map Positioning Unit) 60, a driving operator 80, an automatic driving control device 100, a traveling driving force output device 200, a brake device 210, and a steering device 220. These devices and equipment are connected to each other by a multiplex communication line such as a CAN (Controller Area Network) communication line, a serial communication line, a wireless communication network, or the like. Note that the configuration shown in FIG. 1 is merely an example, and a part of the configuration may be omitted, or another configuration may be added.

[0017] The camera 10 is a digital camera that uses a solid-state imaging device such as a CCD (Charge Coupled Device) or a CMOS (Complementary Metal Oxide Semiconductor). The camera 10 is attached to an arbitrary location on a vehicle (hereinafter referred to as the host vehicle M) on which the vehicle system 1 is mounted. When imaging the front, the camera 10 is attached to the upper part of the front windshield, the back of the rearview mirror, or the like. The camera 10 periodically and repeatedly images the surroundings of the host vehicle M, for example. The camera 10 may be a stereo camera.

[0018] The radar device 12 radiates radio waves such as millimeter waves around the host vehicle M and detects radio waves (reflected waves) reflected by an object to detect at least the position (distance and azimuth) of the object. The radar device 12 is attached to an arbitrary location on the host vehicle M. The radar device 12 may detect the position and speed of an object by an FM-CW (Frequency Modulated Continuous Wave) method.

[0019] The LIDAR 14 irradiates light (or electromagnetic waves with a wavelength close to light) around the host vehicle M and measures scattered light. The LIDAR 14 detects the distance to an object based on the time from light emission to light reception. The irradiated light is, for example, pulsed laser light. The LIDAR 14 is attached to an arbitrary location on the host vehicle M.

[0020] The object recognition device 16 performs sensor fusion processing on the detection results from some or all of the camera 10, the radar device 12, and the LIDAR 14 to recognize the position, type, speed, etc. of an object. The object recognition device 16 outputs the recognition result to the automatic driving control device 100. The object recognition device 16 may output the detection results of the camera 10, the radar device 12, and the LIDAR 14 to the automatic driving control device 100 as they are. The object recognition device 16 may be omitted from the vehicle system 1.

[0021] The communication device 20 communicates with other vehicles existing around the host vehicle M, for example, using a cellular network, a Wi-Fi network, Bluetooth (registered trademark), DSRC (Dedicated Short Range Communication), etc., or communicates with various server devices via a wireless base station.

[0022] The HMI 30 presents various information to the occupants of the host vehicle M and accepts input operations by the occupants. The HMI 30 includes various display devices, speakers, buzzers, touch panels, switches, keys, etc.

[0023] The vehicle sensor 40 includes a vehicle speed sensor that detects the speed of the host vehicle M, an acceleration sensor that detects acceleration, a yaw rate sensor that detects the angular velocity around the vertical axis, an azimuth sensor that detects the orientation of the host vehicle M, etc.

[0024] The navigation device 50 includes, for example, a GNSS (Global Navigation Satellite System) receiver 51, a navigation HMI 52, and a route determination unit 53. The navigation device 50 holds first map information 54 in a storage device such as an HDD (Hard Disk Drive) or a flash memory. The GNSS receiver 51 identifies the position of the host vehicle M based on signals received from GNSS satellites. The position of the host vehicle M may be identified or supplemented by an INS (Inertial Navigation System) using the output of the vehicle sensor 40. The navigation HMI 52 includes a display device, a speaker, a touch panel, keys, etc. The navigation HMI 52 may share part or all of the above-described HMI 30. The route determination unit 53 determines, for example, a route (hereinafter, a map route) from the position of the host vehicle M identified by the GNSS receiver 51 (or an arbitrary input position) to the destination input by the occupant using the navigation HMI 52 with reference to the first map information 54. The first map information 54 is information in which the road shape is represented by, for example, links indicating roads and nodes connected by the links. The first map information 54 may include the curvature of the road, POI (Point Of Interest) information, etc. The map route is output to the MPU 60. The navigation device 50 may perform route guidance using the navigation HMI 52 based on the map route. The navigation device 50 may be realized by, for example, the functions of a terminal device such as a smartphone or a tablet terminal held by the occupant. The navigation device 50 may transmit the current position and the destination to the navigation server via the communication device 20 and acquire a route equivalent to the map route from the navigation server.

[0025] The MPU60 includes, for example, a recommended lane determination unit 61 and holds second map information 62 in a storage device such as an HDD or a flash memory. The recommended lane determination unit 61 divides the on-map route provided from the navigation device 50 into a plurality of blocks (for example, divides it every 100 [m] in the vehicle traveling direction) and determines the recommended lane for each block with reference to the second map information 62. The recommended lane determination unit 61 makes a determination as to which lane from the left the vehicle should travel in. When there is a branch point on the on-map route, the recommended lane determination unit 61 determines the recommended lane so that the host vehicle M can travel on a reasonable route for proceeding to the branch destination.

[0026] The second map information 62 is map information with higher accuracy than the first map information 54. The second map information 62 includes, for example, information on the center of a lane or information on the boundary of a lane. Further, the second map information 62 may include road information, traffic regulation information, address information (address and postal code), facility information, telephone number information, and the like. The second map information 62 may be updated at any time when the communication device 20 communicates with other devices.

[0027] The driving operator 80 includes, for example, an accelerator pedal, a brake pedal, a shift lever, a steering wheel, a non-standard steering device, a joystick, and other operators. A sensor for detecting the operation amount or the presence or absence of an operation is attached to the driving operator 80, and the detection result is output to some or all of the automatic driving control device 100, the traveling driving force output device 200, the brake device 210, and the steering device 220.

[0028] The automatic driving control device 100 includes, for example, a first control unit 120 and a second control unit 160. The first control unit 120 and the second control unit 160 are each realized, for example, by a hardware processor such as a CPU (Central Processing Unit) executing a program (software). Further, some or all of these components may be realized by hardware (including a circuit unit; circuitry) such as an LSI (Large Scale Integration), an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a GPU (Graphics Processing Unit), or may be realized by the cooperation of software and hardware. The program may be stored in advance in a storage device (a storage device having a non-transitory storage medium) such as an HDD or a flash memory of the automatic driving control device 100, or may be stored in a removable storage medium such as a DVD or a CD-ROM, and may be installed in the HDD or the flash memory of the automatic driving control device 100 when the storage medium (non-transitory storage medium) is mounted on a drive device. The automatic driving control device 100 is an example of a "vehicle control device".

[0029] FIG. 2 is a functional configuration diagram of the first control unit 120 and the second control unit 160. The first control unit 120 includes, for example, a recognition unit 130 and an action plan generation unit 140. The first control unit 120 realizes, for example, functions by AI (Artificial Intelligence) and functions by a pre-given model in parallel. For example, the function of "recognizing an intersection" may be realized by recognizing an intersection by deep learning or the like and recognition based on pre-given conditions (such as signals capable of pattern matching and road markings) being executed in parallel, and scoring and comprehensively evaluating both of them. Thereby, the reliability of automatic driving is ensured.

[0030] The recognition unit 130 recognizes the position of an object around the host vehicle M and the state of the object such as speed and acceleration based on the information input from the camera 10, the radar device 12, and the LIDAR 14 via the object recognition device 16. The position of the object is recognized, for example, as a position on the absolute coordinates with the representative point (such as the center of gravity or the center of the drive shaft) of the host vehicle M as the origin, and is used for control. The position of the object may be represented by a representative point such as the center of gravity or a corner of the object, or may be represented by the represented area. The "state" of the object may include the acceleration, jerk, or "behavior state" of the object (for example, whether or not the vehicle is changing lanes or about to change lanes).

[0031] In addition, the recognition unit 130 recognizes, for example, the lane (travel lane) in which the host vehicle M is traveling. For example, the recognition unit 130 compares the pattern of the road markings obtained from the second map information 62 (for example, the arrangement of solid lines and broken lines) with the pattern of the road markings around the host vehicle M recognized from the image captured by the camera 10 to recognize the travel lane. Note that the recognition unit 130 may recognize the travel lane by recognizing the driving lane boundary (road boundary) including not only the road markings but also the road markings, the road shoulder, the curb, the median strip, the guardrail, etc. In this recognition, the position of the host vehicle M acquired from the navigation device 50 and the processing result by the INS may be taken into account. In addition, the recognition unit 130 recognizes a stop line, an obstacle, a red signal, a toll gate, and other road events.

[0032] When recognizing the travel lane, the recognition unit 130 recognizes the position and attitude of the host vehicle M with respect to the travel lane. For example, the recognition unit 130 may recognize the deviation of the reference point of the host vehicle M from the center of the lane and the angle formed with respect to the line connecting the centers of the lanes in the traveling direction of the host vehicle M as the relative position and attitude of the host vehicle M with respect to the travel lane. Instead of this, the recognition unit 130 may recognize the position of the reference point of the host vehicle M with respect to either side end (road marking or road boundary) of the travel lane as the relative position of the host vehicle M with respect to the travel lane.

[0033] The action plan generation unit 140 basically travels in the recommended lane determined by the recommended lane determination unit 61, and further generates a target trajectory for the host vehicle M to automatically travel in the future (regardless of the driver's operation) so as to cope with the surrounding situation of the host vehicle M. The target trajectory includes, for example, a speed element. For example, the target trajectory is expressed as a sequence of points (trajectory points) that the host vehicle M should reach. The trajectory points are points that the host vehicle M should reach at regular driving distances (for example, about several [m]) along the road, and separately, the target speed and target acceleration at predetermined sampling times (for example, about 0 comma several [sec]) are generated as part of the target trajectory. Also, the trajectory points may be the positions that the host vehicle M should reach at the sampling times at predetermined sampling times. In this case, the information on the target speed and target acceleration is expressed by the intervals between the trajectory points.

[0034] When generating the target trajectory, the action plan generation unit 140 may set an event for autonomous driving. Events for autonomous driving include a constant speed driving event, a low speed following driving event, a lane change event, a branching event, a merging event, a takeover event, and the like. The action plan generation unit 140 generates a target trajectory according to the activated event.

[0035] The second control unit 160 controls the driving force output device 200, the brake device 210, and the steering device 220 so that the host vehicle M passes through the target trajectory generated by the action plan generation unit 140 at the scheduled time.

[0036] Returning to FIG. 2, the second control unit 160 includes, for example, an acquisition unit 162, a speed control unit 164, and a steering control unit 166. The acquisition unit 162 acquires information on the target trajectory (trajectory points) generated by the action plan generation unit 140 and stores it in a memory (not shown). The speed control unit 164 controls the travel driving force output device 200 or the brake device 210 based on the speed element associated with the target trajectory stored in the memory. The steering control unit 166 controls the steering device 220 according to the degree of curvature of the target trajectory stored in the memory. The processing of the speed control unit 164 and the steering control unit 166 is realized, for example, by a combination of feedforward control and feedback control. As an example, the steering control unit 166 executes a combination of feedforward control according to the curvature of the road ahead of the host vehicle M and feedback control based on the deviation from the target trajectory.

[0037] The steering control unit 166 further extracts a specific trajectory point (hereinafter referred to as the "target trajectory point") from a plurality of trajectory points constituting the target trajectory and calculates a trajectory model to fit the target trajectory point. In the present embodiment, the steering control unit 166 calculates an arc with a constant curvature as the trajectory model to fit the target trajectory point. However, the present invention is not limited to this configuration, and a trajectory model with an arbitrary shape whose curvature is not constant can also be calculated. When the error between the calculated arc and the target trajectory point is within a predetermined range, the steering control unit 166 controls the steering device 220 so that the host vehicle M travels according to the arc. On the other hand, when the error is not within the predetermined range, the steering control unit 166 re-extracts the target trajectory point and recalculates the arc. To realize this function, the steering control unit 166 includes a trajectory point setting unit 166A and a trajectory model calculation unit 166B. Details of these functional units will be described later.

[0038] The traveling driving force output device 200 outputs the traveling driving force (torque) for the vehicle to travel to the driving wheels. The traveling driving force output device 200 includes, for example, a combination of an internal combustion engine, an electric motor, and a transmission, and an ECU (Electronic Control Unit) that controls these. The ECU controls the above configuration according to the information input from the second control unit 160 or the information input from the operation operator 80.

[0039] The brake device 210 includes, for example, a brake caliper, a cylinder that transmits hydraulic pressure to the brake caliper, an electric motor that generates hydraulic pressure in the cylinder, and a brake ECU. The brake ECU controls the electric motor according to the information input from the second control unit 160 or the information input from the operation operator 80, so that brake torque corresponding to the braking operation is output to each wheel. The brake device 210 may include, as a backup, a mechanism that transmits the hydraulic pressure generated by the operation of the brake pedal included in the operation operator 80 to the cylinder via the master cylinder. Note that the brake device 210 is not limited to the above-described configuration, and may be an electronically controlled hydraulic brake device that controls an actuator according to the information input from the second control unit 160 and transmits the hydraulic pressure of the master cylinder to the cylinder.

[0040] The steering device 220 includes, for example, a steering ECU and an electric motor. The electric motor, for example, acts on a rack and pinion mechanism to change the direction of the steered wheels. The steering ECU drives the electric motor according to the information input from the second control unit 160 or the information input from the operation operator 80 to change the direction of the steered wheels.

[0041] [Extraction of Target Trajectory Points and Calculation of Trajectory Model] Hereinafter, the extraction of target trajectory points by the trajectory point setting unit 166A and the calculation of the trajectory model by the trajectory model calculation unit 166B will be described.

[0042] The target trajectory point setting unit 166A extracts target trajectory points to be used for calculating a trajectory model from a plurality of trajectory points that constitute a target trajectory. FIG. 3 is a diagram showing an example of a scene in which target trajectory points are extracted by the target trajectory point setting unit 166A. FIG. 3 shows a scene where the host vehicle M makes a right turn before an intersection, and the coordinates of each point are shown with a point O on the rear wheel axle RL of the host vehicle M as the origin. P1(x1, y1) to P7(x7, y7) represent the trajectory points of the host vehicle M, FL represents the front wheel axle, l represents the wheelbase of the host vehicle M (that is, the distance between the front wheel axle FL and the rear wheel axle RL), C represents a trajectory model (arc), RP(l / 2, r) represents a reference point on the host vehicle where the arc C starts, RC represents the midpoint of the rear wheel, and TP represents target trajectory points among P1(x1, y1) to P7(x7, y7) to which the arc C is fitted (hereinafter, fitting is also referred to as "fitting"). The reference point RP(l / 2, r) can be said to be a point at the midpoint of the wheelbase in the longitudinal direction of the host vehicle M and at the midpoint of the vehicle body in the lateral direction of the host vehicle M. For convenience, P n (x n ,y n )(n is an integer) represents the trajectory point of the host vehicle M n seconds after the current time, but is not limited to this configuration.

[0043] In FIG. 3, the target trajectory point setting unit 166A extracts P1(x1, y1) to P5(x5, y5), that is, five trajectory points, as the target trajectory points TP. Hereinafter, the number of trajectory points extracted as the target trajectory points TP is referred to as the "fitting length". In this case, P1(x1, y1) is the start point of the target trajectory points TP, and P5(x5, y5) is the end point of the target trajectory points TP. Conversely, if the start point and the end point of the target trajectory points TP are determined, the trajectory points extracted as the target trajectory points TP and the number thereof are also determined. That is, extracting the target trajectory points TP and determining the start point and the end point of the target trajectory points TP are substantially the same.

[0044] FIG. 4 is a diagram showing another example of a scene where the target trajectory points are extracted by the trajectory point setting unit 166A. In FIG. 4, the trajectory point setting unit 166A extracts, as the target trajectory points TP, P1(x1, y1) to P7(x7, y7), that is, the target trajectory points TP with a fitting length of 7. However, if, as shown in FIG. 4, the steering control unit 166 steers the host vehicle M along the arc C fitted to the target trajectory points TP, the host vehicle M will excessively deviate to the right on the road where it should go straight after turning right at the intersection and enter the adjacent lane. This means that the fitting length set in FIG. 4 is too long.

[0045] FIG. 5 is a diagram showing still another example of a scene where the target trajectory points are extracted by the trajectory point setting unit 166A. In FIG. 5, the trajectory point setting unit 166A extracts, as the target trajectory points TP, P1(x1, y1) to P3(x3, y3), that is, the target trajectory points TP with a fitting length of 3. However, if, as shown in FIG. 5, the steering control unit 166 steers the host vehicle M along the arc C fitted to the target trajectory points TP, the steering control will switch during the right turn along the arc C, and smooth steering will be hindered. This means that the fitting length set in FIG. 5 is too short.

[0046] As described above, it is required that the trajectory point setting unit 166A extracts the target trajectory points TP having an appropriate fitting length so that the fitting length is not too long and not too short. Hereinafter, with reference to FIG. 6, the configuration of the trajectory point setting unit 166A that extracts the target trajectory points TP having an appropriate fitting length will be described.

[0047] FIG. 6 is a diagram showing an extraction algorithm for the target trajectory points by the trajectory point setting unit 166A. In FIG. 6, start indicates the start point of the target trajectory points TP, end indicates the end point of the target trajectory points TP, end max indicates the maximum allowable value that the end point can take, and end minrepresents the minimum allowable value that the end point can take, and const represents a predetermined value greater than 0 and less than 1. Also, err represents the error between the calculated arc C and the target trajectory point TP, and err max represents the error upper limit value, which is the maximum allowable error, and err min represents the error lower limit value, which is the minimum allowable error. The specific calculation method of the error will be described later.

[0048] When the error err is greater than the error upper limit value err max or less than the error lower limit value err min , the trajectory point setting unit 166A updates the end point end based on the minimum allowable value end min or the maximum allowable value err max , and repeatedly updates the start point start by multiplying the updated end point end by the predetermined value const, thereby updating the start point start and the end point end. When the error err is greater than or equal to the error lower limit value err min and less than or equal to the error upper limit value err max , the trajectory point setting unit 166A determines the start point start and the end point end at that time as the start point and the end point of the target trajectory point TP, and extracts the target trajectory point TP therebetween.

[0049] Specifically, for example, in the first extraction shown in FIG. 6, assume that end max = 7, end min = 1, const = 0.3, end = end max . At this time, since start = end × const = 7 × 0.3 = 2.1, rounding down the decimal point gives start = 2. That is, in the first extraction, the trajectory point setting unit 166A extracts P2(x2, y2) to P7(x7, y7) as the target trajectory point TP with a fitting length of 6. In the first extraction, since it is determined that err > err max , the trajectory point setting unit 166A updates the end point end based on the minimum allowable value end min . That is, the trajectory point setting unit 166A sets the end point end = (end + end min) / 2 = (7 + 1) / 2 = 4 and update it. Accordingly, the trajectory point setting unit 166A updates the start point start to 1 with start = end × const = 4 × 0.3 = 1.2. As a result, the trajectory point setting unit 166A re-extracts P1(x1, y1) to P4(x4, y4) as the target trajectory points TP with a fitting length of 4, and the trajectory model calculation unit 166B recalculates the arc C that fits the target trajectory points TP (second extraction). However, in the second extraction, since it is determined that the error err between the arc C and the target trajectory points TP satisfies err < err min , the trajectory point setting unit 166A updates the end point end based on the maximum allowable value end max . That is, the trajectory point setting unit 166A updates the end point end to 5 with end = (end + end max ) / 2 = (4 + 7) / 2 = 5.5. Accordingly, the trajectory point setting unit 166A updates the start point start to 1 with start = end × const = 5 × 0.3 = 1.5. As a result, the trajectory point setting unit 166A re-extracts P1(x1, y1) to P5(x5, y5) as the target trajectory points TP with a fitting length of 5, and the trajectory model calculation unit 166B recalculates the arc C that fits the target trajectory points TP (third extraction). In the third extraction, since it is determined that the error err between the arc C and the target trajectory points TP satisfies err min ≤ err ≤ err max , the trajectory point setting unit 166A finally determines P1(x1, y1) to P5(x5, y5) as the target trajectory points TP.

[0050] According to the above example, the trajectory point setting unit 166A updates the fitting length from 6 → 4 → 5 based on the error err between the arc C and the target trajectory points TP. That is, by using the above algorithm, the trajectory point setting unit 166A can extract the target trajectory points TP having an appropriate fitting length.

[0051] Next, with reference to FIG. 7, the calculation of the trajectory model by the trajectory model calculation unit 166B will be described. FIG. 7 is a diagram showing the mechanism of the calculation of the trajectory model by the trajectory model calculation unit 166B. The trajectory model calculation unit 166B acquires a plurality of trajectory points constituting the target trajectory from the first control unit 120, and acquires the start point and the end point that become the target trajectory point TP from among the plurality of trajectory points from the trajectory point setting unit 166A. In the first calculation, as shown in the algorithm of FIG. 6, the start point and the end point provided by the trajectory point setting unit 166A may be default values.

[0052] The trajectory model calculation unit 166B specifies the target trajectory point TP based on the plurality of trajectory points acquired from the first control unit 120 and the start point and the end point acquired from the trajectory point setting unit 166A. Here, it is assumed that n trajectory points P k (x k ,y k )(k = 1, 2, ··· n) are specified. Next, the trajectory model calculation unit 166B calculates the radius r of the arc C that fits the specified target trajectory point P k (x k ,y k ) based on Equation (1).

[0053]

Equation

[0054] Next, the trajectory model calculation unit 166B takes the origin O, which is the end point of the line segment extended by the length of the radius r along the rear wheel axis RL from the midpoint RC of the rear wheel, as the center, the reference point RP as the start point, and from the origin O to P n (x n ,y n ) and calculates an arc C with the end point of the line segment extended by the length of the radius r in the direction of P as the end point. Here, the direction of extending the line segment by the length of the radius r along the rear wheel axis RL from the midpoint RC of the rear wheel to set the origin O can be either the left or the right direction, but which direction to extend the line segment to set the origin O can be determined by the inclination of the plurality of trajectory points acquired from the first control unit 120 (that is, whether the target trajectory of the own vehicle M is in the right direction or the left direction).

[0055] Next, the trajectory model calculation unit 166B calculates the error err between the calculated arc C and the target trajectory point P k (x k , y k ) based on Equation (2).

[0056]

Equation

[0057] That is, the trajectory model calculation unit 166B calculates the square of the difference between the square of the distance between the reference point RP and the center O of the arc C and the square of the distance to the target trajectory point P Center O of the arc C and the target trajectory point P k (x k , y k ). By calculating the square of the difference, the trajectory model calculation unit 166B calculates the squared error between the arc C and the target trajectory point P k (x k , y k ) and defines this as the error err. Next, the trajectory model calculation unit 166B determines whether the calculated error err is greater than or equal to the lower error limit err min and less than or equal to the upper error limit err max . If the calculated error err is greater than or equal to the lower error limit err min and less than or equal to the upper error limit err max , the trajectory model calculation unit 166B outputs a steering angle such that the host vehicle M travels along the calculated arc C, and the steering control unit 166 steers the host vehicle M according to the steering angle. On the other hand, if the calculated error err is less than the lower error limit err min or greater than the upper error limit err max , the trajectory model calculation unit 166B outputs the error err to the trajectory point setting unit 166A, and the trajectory point setting unit 166A updates the start point and end point of the target trajectory point TP based on the error err as described above with reference to FIG. 6.

[0058] [Flow of operation] Next, with reference to FIG. 8, the flow of the process executed by the steering control unit 166 will be described. FIG. 8 is a flowchart showing an example of the flow of the process executed by the cooperation of the trajectory point setting unit 166A and the trajectory model calculation unit 166B.

[0059] First, when the trajectory point setting unit 166A acquires a plurality of trajectory points constituting the target trajectory from the first control unit 120, it sets a start point and an end point to be fitted in an arc shape from among the trajectory points (S100). Next, the trajectory point setting unit 166A extracts target trajectory points that are trajectory points between the set start point and end point from among the acquired plurality of trajectory points (S101). Next, the trajectory model calculation unit 166B calculates an arc fitted to the extracted target trajectory points (S102). Next, the trajectory model calculation unit 166B determines whether the error between the calculated arc and the target trajectory points is equal to or less than the error upper limit value (S103). If the error between the calculated arc and the target trajectory points is equal to or less than the error upper limit value, the trajectory model calculation unit 166B determines whether the error is equal to or greater than the error lower limit value (S104). If the error is equal to or greater than the error lower limit value, the trajectory model calculation unit 166B outputs a steering angle such that the host vehicle M travels along the calculated arc C and ends the process.

[0060] On the other hand, in step S103, if the error between the calculated arc and the target trajectory points is greater than the error upper limit value, the trajectory point setting unit 166A updates the end point based on the minimum allowable value of the end point (S105). Also, in step S104, if the error between the calculated arc and the target trajectory points is less than the error lower limit value, the trajectory point setting unit 166A updates the end point based on the maximum allowable value of the end point (S106). Next, the trajectory point setting unit 166A updates the start point based on the updated end point. Specifically, as described above, the trajectory point setting unit 166A updates the start point by multiplying the updated end point by a predetermined value (S107). Thereafter, the trajectory point setting unit 166A returns the process to S101, and the trajectory model calculation unit 166B extracts target trajectory points based on the updated start point and end point.

[0061] As described above, according to the embodiment of the present invention, the trajectory point setting unit 166A sets the start point, the end point, and the target trajectory point for fitting according to the trajectory points that make up the acquired target trajectory. The trajectory model calculation unit 166B calculates an arc and its error by simple calculation based on the set start point, end point, and target trajectory point. Further, when the calculated error is not within the predetermined range, the trajectory point setting unit 166A updates the start point, the end point, and the target trajectory point for fitting so that the calculated error is within the predetermined range. The trajectory model calculation unit 166B recalculates the arc based on the updated start point, end point, and target trajectory point. As a result, the automatic driving control device 100 according to the embodiment can create a trajectory model corresponding to the target trajectory of the vehicle more quickly and flexibly.

[0062] The embodiment described above can be expressed as follows. A storage device storing a program; A hardware processor, and By the hardware processor executing the program stored in the storage device, A plurality of trajectory points constituting a target trajectory that the vehicle will pass through in the future are acquired, A start point and an end point to which a trajectory model is to be applied are set from the plurality of trajectory points, Among the plurality of trajectory points, a trajectory model applied to the target trajectory points between the start point and the end point is calculated, and an error between the trajectory model and the target trajectory points is calculated, The vehicle is caused to travel along the determined trajectory model, The trajectory point setting unit updates the start point and the end point based on the error, A vehicle control device configured as described above.

[0063] As described above, the embodiments for carrying out the present invention have been described using the embodiments. However, the present invention is not limited to such embodiments, and various modifications and substitutions can be made without departing from the gist of the present invention.

Explanation of Reference Numerals

[0064] 10 cameras 12 radar devices 14 LIDARs 16 object recognition devices 100 automatic driving control devices 120 First control unit 130 Recognition unit 140 Action plan generation unit 160 Second control unit 162 Acquisition unit 164 Speed control unit 166 Steering control unit 166A Trajectory point setting unit 166B Trajectory model calculation unit

Claims

1. An acquisition unit that acquires a predetermined number of orbital points that make up a target orbit through which the vehicle will pass in the future, in order of proximity from a reference point of the vehicle; An orbital point setting unit that sets a start point and an end point that are targets for fitting an orbital model that is an arc from among the plurality of orbital points; Among the plurality of orbital points, based on the target orbital points between the start point and the end point, calculate the radius of the arc that fits the target orbital points according to a predefined calculation formula, and calculate the center of the arc as a point shifted by a predetermined amount based on the radius from the reference point, thereby calculating the orbital model. Next, an orbital model calculation unit that calculates an error between the distance between the reference point of the vehicle and the center of the arc and the distance between the center of the arc and the target orbital points; A vehicle control device that causes the vehicle to travel along the calculated orbital model, The orbital point setting unit sets the orbital point corresponding to the last order among the orders of the plurality of orbital points as the initial value of the end point, and sets the orbital point corresponding to the order corresponding to the multiplication value obtained by multiplying the number of the plurality of orbital points by a predetermined value greater than zero and less than one as the initial value of the start point, and updates the start point and the end point based on the error; The reference point is a point on the vehicle where the arc starts; When the error is greater than the error upper limit value, the orbital point setting unit updates the end point as the orbital point corresponding to the order between the first order and the order of the end point among the plurality of orbital points, and updates the start point as the orbital point corresponding to the order corresponding to the multiplication value obtained by multiplying the order of the updated end point by the predetermined value. On the other hand, when the error is less than the error lower limit value, the orbital point setting unit updates the end point as the orbital point corresponding to the order between the last order and the order of the end point among the plurality of orbital points, and updates the start point as the orbital point corresponding to the order corresponding to the multiplication value obtained by multiplying the order of the updated end point by the predetermined value, and repeats the process of updating the start point and the end point; Vehicle control device.

2. The orbital point setting unit calculates the error based on the squared error between the distance between the reference point of the vehicle and the center of the arc and the distance between the center of the arc and the target orbital points. The vehicle control device according to Claim 1.

3. The arc radius calculation unit calculates the predetermined amount based on the radius of the arc and the wheelbase of the vehicle, and calculates the squared error by calculating the square of the difference between the square of the distance between the reference point and the center of the arc and the square of the distance between the center of the arc and the target track point. The vehicle control device according to claim 2.

4. A vehicle control device, acquires a predetermined number of track points that make up the target track that the vehicle will pass through in the future, in ascending order from the reference point of the vehicle; sets a start point and an end point that are targets for fitting a track model that is an arc from among the plurality of track points; calculates the radius of the arc that fits the target track point based on the target track points between the start point and the end point among the plurality of track points according to a pre-defined calculation formula, and calculates the center of the arc as a point shifted by a predetermined amount based on the radius from the reference point, thereby calculating the track model. Next, an error between the distance between the reference point of the vehicle and the center of the arc and the distance between the center of the arc and the target track point is calculated. A vehicle control method for running the vehicle along the calculated track model, sets the track point corresponding to the last order among the orders of the plurality of track points as the initial value of the end point, and sets the track point corresponding to the order corresponding to the multiplication value obtained by multiplying the number of the plurality of track points by a predetermined value greater than 0 and less than 1 as the initial value of the start point, and updates the start point and the end point based on the error. The reference point is the point on the vehicle where the arc starts. When the error is greater than the error upper limit value, the end point is updated to the track point corresponding to the order between the first order and the order of the end point among the plurality of track points, and the start point is updated to the track point corresponding to the order obtained by multiplying the order of the updated end point by the predetermined value. On the other hand, when the error is less than the error lower limit value, the end point is updated to the track point corresponding to the order between the last order and the order of the end point among the plurality of track points, and the start point is updated to the track point corresponding to the order obtained by multiplying the order of the updated end point by the predetermined value. The start point and the end point are updated by repeating the process. Vehicle control method.

5. The processor of the vehicle control device, causes to acquire a predetermined number of track points that make up the target track that the vehicle will pass through in the future, in ascending order from the reference point of the vehicle. Set a starting point and an ending point for fitting an arc-shaped trajectory model from the plurality of trajectory points. Among the plurality of trajectory points, calculate the radius of the arc that fits the target trajectory points based on the target trajectory points between the starting point and the ending point according to a predefined calculation formula, and calculate the center of the arc as a point shifted by a predetermined amount based on the radius from the reference point, thereby calculating the trajectory model. Next, calculate the error between the distance between the reference point of the vehicle and the center of the arc and the distance between the center of the arc and the target trajectory points. A program for driving the vehicle along the calculated trajectory model. Among the orders of the plurality of trajectory points, set the trajectory point corresponding to the last order as the initial value of the ending point, and set the trajectory point corresponding to the order corresponding to the multiplication value obtained by multiplying the number of the plurality of trajectory points by a predetermined value greater than zero and less than one as the initial value of the starting point, and update the starting point and the ending point based on the error. The reference point is the point on the vehicle where the arc starts. When the error is greater than the error upper limit value, update the ending point as the trajectory point corresponding to the order between the first order and the order of the ending point among the plurality of trajectory points, and update the starting point as the trajectory point corresponding to the order obtained by multiplying the order of the updated ending point by the predetermined value. On the other hand, when the error is less than the error lower limit value, update the ending point as the trajectory point corresponding to the order between the last order and the order of the ending point among the plurality of trajectory points, and update the starting point as the trajectory point corresponding to the order obtained by multiplying the order of the updated ending point by the predetermined value, and repeat the process to update the starting point and the ending point. Program.

Citation Information

Patent Citations

  • Road shape estimating device, road shape estimating method, and program

    JP2009243948A

  • Travel control device, travel control method, and program

    JP2018203018A

  • Vehicle travel control device, vehicle travel control method and vehicle travel control system

    JP2020192938A