Driving assistance systems and computer programs
Patent Information
- Application Number
- JP2022191406
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-11-30
- Publication Date
- 2026-09-15
- Estimated Expiration
- 2042-11-30
Smart Images

Figure 0007920877000001 
Figure 0007920877000002 
Figure 0007920877000003
Abstract
Description
[Technical Field]
[0001] This invention relates to a driver assistance device and computer program that assist in driving a vehicle in a parking lot. [Background technology]
[0002] In recent years, in addition to manual driving, where the vehicle operates based on the user's driving input, new automated driving assistance systems have been proposed that assist the user in driving the vehicle by having the vehicle perform some or all of the user's driving operations. In such automated driving assistance systems, for example, the current position of the vehicle, the lane the vehicle is traveling in, and the positions of other vehicles in the vicinity are detected in real time, and vehicle control such as steering, drivetrain, and brakes is automatically performed to drive along a pre-set route.
[0003] Furthermore, when performing the above-mentioned automated driving assistance or providing various other driving assistance to vehicles, a recommended driving trajectory is pre-generated on the road the vehicle will travel on, based on the vehicle's planned route and map information. In particular, when generating the above-mentioned driving trajectory for sections of road that bend at a predetermined angle or curve in an arc shape with a predetermined curvature (hereinafter referred to as "curve sections"), a driving trajectory consisting of a combination of straight lines and arcs is first mentioned. However, as shown in Figure 22, in a driving trajectory consisting of a combination of straight lines and arcs, the curvature, i.e., the steering angle, does not match before and after the connection points 201 and 202 of the straight lines and arcs. Therefore, in order to drive along the generated driving trajectory, it is necessary to stop at connection points 201 and 202 and change the steering angle. For example, Japanese Patent Publication No. 2021-75256 discloses a technology for generating a smooth driving trajectory that does not require the above-mentioned temporary stops by further combining a clothoid curve between the straight lines and arcs. Furthermore, a clothoid curve is a curve drawn when the curvature is changed at a constant rate with respect to distance (for example, if the vehicle speed is fixed, the steering angle is changed at a constant angular velocity). [Prior art documents] [Patent Documents]
[0004] [Patent Document 1] Japanese Patent Publication No. 2021-75256 (paragraphs 0026-0029) [Overview of the Initiative] [Problems that the invention aims to solve]
[0005] However, if a clothoid curve is added between a straight line and an arc, as in Patent Document 1 mentioned above, the radius of curvature R2 of the arc after adding the clothoid curve will be basically smaller than the radius of curvature R1 of the arc in the travel trajectory consisting of a combination of a straight line and an arc before adding the clothoid curve (the curvature of the arc will increase). As a result, the maximum value of the lateral acceleration generated during travel and the amount of change per unit time will increase, which may result in a travel trajectory that is not recommended for the vehicle.
[0006] The present invention was made to solve the aforementioned problems of the conventional system, and aims to provide a driving assistance device and computer program that can generate a driving trajectory that is not only smooth when traveling on a curved section, but also suppresses the maximum value of lateral acceleration and the amount of change per unit time, making it possible to generate a driving trajectory that is recommended for vehicle travel, thereby enabling appropriate driving assistance that does not burden the vehicle occupants. [Means for solving the problem]
[0007] To achieve the above objective, the present invention FirstThe driver assistance system includes a planned route acquisition means for acquiring the planned route the vehicle will travel, a curved section acquisition means for acquiring the start and end points of a curved section if the planned route includes a curve, using information about road markings and information about curvature, an arc acquisition means for acquiring the largest arc, which is the arc with the largest radius of curvature that passes through the start and end points of the curved section in the direction of travel of the vehicle, and the arc that moves from the start point of the curved section in the direction of travel of the vehicle to the start point of an arc trajectory having the same radius of curvature as the largest arc. The system includes: a track generation means that generates a first curve that connects with the same curvature as the track, a second curve that connects to the end point of the circular arc track with the same curvature as the circular arc track and connects to the end point of the curved section so that the track proceeds in the direction of travel of the vehicle at the end point of the curved section; a driving track generation means that generates a combination of the first curve, the circular arc track and the second curve as a driving track on which the vehicle is recommended to travel in the curved section; and a driving support means that provides driving support for the vehicle based on the driving track generated by the driving track generation means. The trajectory generating means generates the first and second curves on the condition that the travel time of the vehicle while traveling along the first and second curves is greater than or equal to a lower limit, or that the change in the amount of lateral acceleration per unit time during travel does not exceed an upper limit. . Furthermore, the second driving assistance device according to the present invention includes: a driving route acquisition means for acquiring the planned driving route on which the vehicle will travel; a curve section acquisition means for acquiring the start and end points of a curve section when the planned driving route includes a curve, using information on road markings and information on curvature; an arc acquisition means for acquiring the maximum arc, which is the largest radius of curvature arc passing through the start and end points of the curve section in the direction of travel of the vehicle; a trajectory generation means for generating a first curve that connects the start point of the curve section to the start point of an arc trajectory having the same radius of curvature as the maximum arc, with the same curvature as the arc trajectory; a second curve that connects to the end point of the arc trajectory with the same curvature as the arc trajectory, and connects to the end point of the curve section so that the trajectory proceeds in the direction of travel of the vehicle at the end point of the curve section; and a combination of the first curve, the arc trajectory and the second curve for generating a driving trajectory on which the vehicle is recommended to travel in the curve section. The system includes a trajectory generation means and a driving support means that provides driving support for a vehicle based on the trajectory generated by the trajectory generation means. When the midpoint of the curve is defined as the point where the angle bisector of the angle formed by a first line segment connecting the center of the maximum arc and the starting point of the curve section and a second line segment connecting the center of the maximum arc and the ending point of the curve section intersects with the arc trajectory, the trajectory generated by the trajectory generation means is symmetrical with respect to the bisector, with the first half of the trajectory from the starting point of the curve section to the midpoint of the curve and the second half of the trajectory from the midpoint of the curve to the ending point of the curve section being symmetrical with respect to the bisector. When generating the first half of the trajectory, the trajectory generation means generates a reference trajectory by combining the first curve and the arc trajectory for a predetermined length, provided that the lateral acceleration generated during driving does not exceed an upper limit. The total length of the reference trajectory is adjusted so that the position of the endpoint of the reference trajectory is within a predetermined distance from the bisector, and the adjusted reference trajectory is generated as the first half of the trajectory. Furthermore, the term "curve" includes not only shapes in which a road bends in an arc with a predetermined curvature (including shapes where the curvature of the road changes), but also shapes that bend at a predetermined angle such as a right angle (for example, an L-shaped intersection).
[0008] Furthermore, according to the present invention FirstThe computer program is a program that generates support information used for driving assistance implemented in a vehicle. Specifically, the computer includes a planned route acquisition means for acquiring the planned route the vehicle will travel, a curved section acquisition means for acquiring the start and end points of a curved section if the planned route includes a curve, using information about road markings and information about curvature, an arc acquisition means for acquiring the largest arc, which is the arc with the largest radius of curvature that passes through the start and end points of the curved section in the direction of travel of the vehicle, and the arc that moves from the start point of the curved section in the direction of travel of the vehicle to the start point of an arc trajectory having the same radius of curvature as the largest arc. The system includes a track generation means that generates a first curve that connects with the same curvature as the track, a second curve that connects to the end point of the circular arc track with the same curvature as the circular arc track and connects to the end point of the curved section such that the track proceeds in the direction of travel of the vehicle at the end point of the curved section, a track generation means that generates a combination of the first curve, the circular arc track and the second curve as a track on which the vehicle is recommended to travel in the curved section, and a driving support means that provides driving support for the vehicle based on the track generated by the track generation means. Furthermore, the trajectory generating means generates the first and second curves on the condition that the travel time of the vehicle while traveling along the first and second curves is equal to or greater than the lower limit, or that the amount of change per unit time of the lateral acceleration generated during travel does not exceed the upper limit. Furthermore, the second computer program according to the present invention is a program that generates support information used for driving assistance implemented in a vehicle. Specifically, the computer comprises: a means for acquiring a planned driving route on which the vehicle will travel; a means for acquiring a curved section using information about road markings and information about curvature to acquire the start and end points of a curved section if the planned driving route includes a curve; a means for acquiring the largest circular arc, which is the circular arc with the largest radius of curvature that passes through the start and end points of the curved section in the direction of travel of the vehicle; and a means for acquiring the circular arc that passes from the start point of the curved section in the direction of travel of the vehicle to the start point of a circular arc trajectory having the same radius of curvature as the largest circular arc. The system includes a track generation means that generates a first curve that connects with the same curvature as the track, a second curve that connects to the end point of the circular arc track with the same curvature as the circular arc track and connects to the end point of the curved section such that the track proceeds in the direction of travel of the vehicle at the end point of the curved section, a track generation means that generates a combination of the first curve, the circular arc track and the second curve as a track on which the vehicle is recommended to travel in the curved section, and a driving support means that provides driving support for the vehicle based on the track generated by the track generation means. Furthermore, when the point where the angle bisector of the angle formed by the first line segment connecting the center of the maximum arc and the starting point of the curved section and the second line segment connecting the center of the maximum arc and the ending point of the curved section intersects with the arc trajectory is defined as the midpoint of the curve, the trajectory generated by the trajectory generating means is symmetrical with respect to the bisector between the first half of the trajectory from the starting point of the curved section to the midpoint of the curve and the second half of the trajectory from the midpoint of the curve to the ending point of the curved section. When generating the first half of the trajectory, the trajectory generating means generates a reference trajectory by combining the first curve and the arc trajectory for a predetermined length, provided that the acceleration generated laterally during travel does not exceed an upper limit. The total length of the reference trajectory is adjusted so that the position of the endpoint of the reference trajectory is within a predetermined distance from the bisector, and the adjusted reference trajectory is generated as the first half of the trajectory. [Effects of the Invention]
[0009] The present invention having the above configuration First Driving assistance systems , second driver assistance device, first computer program, and Second According to the computer program, when a vehicle travels through a curved section, it is possible to generate a recommended driving path that is not only smooth but also suppresses the maximum value and rate of change of lateral acceleration per unit time. As a result, it becomes possible to provide appropriate driving assistance that does not burden the vehicle's occupants. Furthermore, with the second driving support device and the second computer program in particular, if the first half of the track is calculated, the second half of the track can be easily derived, thereby reducing the processing load related to the calculation of the travel track. [Brief explanation of the drawing]
[0010] [Figure 1] This is a schematic diagram showing the driver assistance system according to this embodiment. [Figure 2] FIG. 1 is a block diagram showing a configuration of a driving assistance system according to the present embodiment. [Figure 3] FIG. 2 is a block diagram showing a navigation device according to the present embodiment. [Figure 4] FIG. 3 is a flowchart of an automatic driving assistance program according to the present embodiment. [Figure 5] FIG. 4 is a diagram showing an area where high-precision map information is acquired. [Figure 6] FIG. 5 is a diagram explaining a calculation method for a dynamic travel path. [Figure 7] FIG. 6 is a flowchart of a sub-processing program for static travel path generation processing. [Figure 8] FIG. 7 is a diagram showing an example of a planned travel route of a vehicle. [Figure 9] FIG. 8 is a diagram showing an example of a lane network constructed for the planned travel route shown in FIG. 7. [Figure 10] FIG. 9 is a flowchart of a sub-processing program for travel path calculation processing for a curved section according to method 1. [Figure 11] FIG. 10 is a diagram showing an example of a curved section including a curve. [Figure 12] FIG. 11 is a diagram explaining a maximum circular arc with the largest radius of curvature that passes through a start vector and an end vector in the traveling direction of each vector. [Figure 13] FIG. 12 is a diagram showing an example of a travel path recommended for vehicle travel in a curved section generated according to method 1. [Figure 14] FIG. 13 is a diagram explaining travel path generation processing according to method 1. [Figure 15] FIG. 14 is a flowchart of a sub-processing program for travel path calculation processing for a curved section according to method 2. [Figure 16] FIG. 15 is a diagram explaining travel path generation processing according to method 2. [Figure 17] FIG. 16 is a diagram explaining travel path generation processing according to method 2. [Figure 18] FIG. 17 is a flowchart of a sub-processing program for first-half path calculation processing. [Figure 19] This diagram illustrates the calculation process for the first half of the trajectory using Method 2. [Figure 20] This diagram illustrates the calculation process for the first half of the trajectory using Method 2. [Figure 21] This figure shows an example of the first half of the orbit generated by Method 2. [Figure 22] This diagram illustrates the problems with conventional technology. [Figure 23] This diagram illustrates the problems with conventional technology. [Modes for carrying out the invention]
[0011] Hereinafter, an embodiment of the driver assistance device according to the present invention, implemented in a navigation device 1, will be described in detail with reference to the drawings. First, the schematic configuration of the driver assistance system 2 including the navigation device 1 according to this embodiment will be described using Figures 1 and 2. Figure 1 is a schematic configuration diagram showing the driver assistance system 2 according to this embodiment. Figure 2 is a block diagram showing the configuration of the driver assistance system 2 according to this embodiment.
[0012] As shown in Figure 1, the driver assistance system 2 according to this embodiment basically comprises a server device 4 provided by the information distribution center 3 and a navigation device 1 mounted on the vehicle 5 that provides various support for the autonomous driving of the vehicle 5. Furthermore, the server device 4 and the navigation device 1 are configured to send and receive electronic data to and from each other via a communication network 6. In addition, other in-vehicle devices mounted on the vehicle 5 or a vehicle control device that controls the vehicle 5 may be used instead of the navigation device 1.
[0013] Here, vehicle 5 is a vehicle that can perform not only manual driving based on the user's driving operations, but also assisted driving through automated driving assistance, in which the vehicle automatically drives along a pre-set route or path without user operation.
[0014] Furthermore, autonomous driving assistance may be provided for all road sections, or it may be configured to be provided only while the vehicle is traveling through specific road sections (for example, highways with gates (regardless of whether they are manned or unmanned, tolled or free) at the boundaries). In the following explanation, the autonomous driving sections in which vehicle autonomous driving assistance is provided will include all road sections, including general roads and highways, as well as parking lots, and will be described as basically providing autonomous driving assistance from the time the vehicle starts traveling until it stops traveling (until the vehicle is parked). However, it is desirable that autonomous driving assistance not be provided every time the vehicle travels through an autonomous driving section, but only when the user selects to provide autonomous driving assistance (for example, by turning on the autonomous driving start button) and when it is determined that it is possible to provide autonomous driving assistance. On the other hand, vehicle 5 may be a vehicle that is only capable of autonomous driving assistance.
[0015] Furthermore, in vehicle control for autonomous driving assistance, for example, the vehicle's current position, the lane the vehicle is traveling in, and the positions of surrounding obstacles are detected in real time and generated by the navigation device 1 as described later. The vehicle's steering, drivetrain, brakes, and other controls are automatically performed to ensure that the vehicle travels along the generated trajectory at a speed according to the generated speed plan. In this embodiment, the vehicle also performs lane changes, turns, and parking maneuvers using the same automated driving assistance system. However, for special maneuvers such as lane changes, turns, and parking, the vehicle may be driven manually without the automated driving assistance system.
[0016] On the other hand, the navigation device 1 is mounted in the vehicle 5 and is an in-vehicle device that displays a map of the area around the vehicle's position based on map data held by the navigation device 1 or map data acquired from an external source, allows the user to input a destination, displays the vehicle's current position on the map image, and provides driving guidance along a set guidance route. In this embodiment, in particular, when the vehicle performs assisted driving using automated driving assistance, it generates various support information related to automated driving assistance. Examples of support information include the recommended driving trajectory for the vehicle (including the recommended lane movement pattern), the selection of a parking position for parking the vehicle at the destination, and a speed plan indicating the vehicle speed when driving. Further details of the navigation device 1 will be described later.
[0017] Furthermore, the server device 4 performs route searching in response to a request from the navigation device 1. Specifically, the navigation device 1 sends information necessary for route searching, such as the departure point and destination, to the server device 4 along with the route search request (however, in the case of a re-search, it is not always necessary to send information about the destination). Upon receiving the route search request, the server device 4 uses its map information to perform a route search and identifies a recommended route from the departure point to the destination. It then sends the identified recommended route to the requesting navigation device 1. The navigation device 1 can then provide the user with information about the received recommended route, or it can use the recommended route to generate various support information related to automated driving assistance, as described later.
[0018] Furthermore, in addition to the normal map information used for route searching, the server device 4 also possesses high-precision map information and facility information, which are more accurate map information. The high-precision map information includes, for example, information on road lane shapes (road shape, curvature, bending angle, lane width, etc. for each lane) and road markings (center line of the roadway, lane boundary lines, outer line of the roadway, guidance lines, etc.). It also includes information on intersections, etc. On the other hand, facility information is more detailed information about facilities that is stored separately from the facility information included in the map information. For example, it includes facility floor maps, information on parking lot entrances and exits, information on the layout of passages and parking spaces in the parking lot, information on the markings that demarcate parking spaces, and connection information showing the connection relationship between parking lot entrances and exits and lanes. The server device 4 then distributes high-precision map information and facility information in response to requests from the navigation device 1, and the navigation device 1 uses the high-precision map information and facility information distributed from the server device 4 to generate various support information related to automated driving assistance, as described later. While high-precision map information is generally limited to roads (links) and their surrounding areas, it may also include areas outside of roads.
[0019] However, the route search process described above does not necessarily have to be performed by the server device 4; if the navigation device 1 has map information, it may be performed by the navigation device 1. Also, high-precision map information and facility information may be provided by the navigation device 1 in advance, rather than being distributed from the server device 4.
[0020] Furthermore, the communication network 6 includes numerous base stations located throughout the country and communication companies that manage and control each base station, and is configured by connecting the base stations and communication companies to each other via wired (optical fiber, ISDN, etc.) or wireless connections. Here, each base station has a transceiver (transceiver) and antenna that communicates with the navigation device 1. The base station also conducts wireless communication between communication companies, and acts as the end of the communication network 6, relaying communications of the navigation device 1 within the range (cell) of the base station's radio waves to the server device 4. It has the role of doing so.
[0021] Next, the configuration of the server device 4 in the driver assistance system 2 will be explained in more detail using Figure 2. As shown in Figure 2, the server device 4 comprises a server control unit 11, a server-side map DB 12 as an information recording means connected to the server control unit 11, a high-precision map DB 13, a facility DB 14, and a server-side communication device 15.
[0022] The server control unit 11 is a control unit (MCU, MPU, etc.) that controls the entire server device 4, and is equipped with a CPU 21 as an arithmetic unit and control device, RAM 22 used as working memory when the CPU 21 performs various arithmetic processing, ROM 23 on which control programs are stored, and flash memory 24 for storing programs read from ROM 23, among other internal storage devices. The server control unit 11, together with the ECU of the navigation device 1 described later, has various means as processing algorithms.
[0023] On the other hand, the server-side map DB12 is a storage means that stores server-side map information, which is the latest version of map information registered based on external input data and input operations. Here, server-side map information consists of various information necessary for route searching, route guidance, and map display, including road networks. For example, it consists of network data including nodes and links that show the road network, link data related to roads (links), node data related to node points, intersection data related to each intersection, location data related to locations such as facilities, map display data for displaying maps, search data for searching for routes, search data for searching for locations, etc.
[0024] Furthermore, the high-precision map DB13 is a storage means that stores high-precision map information 16, which is map information with higher precision than the server-side map information mentioned above. The high-precision map information 16 is map information that stores more detailed information, particularly regarding roads on which vehicles are intended to travel. In this embodiment, for example, regarding roads, it includes information on lane shape (road shape and curvature per lane, lane width, etc.) and road markings (center line of the roadway, lane boundary lines, outer line of the roadway, guidance lines, etc.). In addition, data representing the slope, cant, bank, merging sections, places where the number of lanes decreases, places where the width narrows, level crossings, etc. of the road are recorded, as are data representing the radius of curvature and bending angle for curves, data representing branching points such as intersections and T-junctions, data representing downhill roads, uphill roads, etc. regarding road attributes, and data representing general roads such as national roads, prefectural roads, and narrow streets, as well as toll roads such as expressways, urban expressways, motorways, general toll roads, and toll bridges, etc., regarding road types. Furthermore, information regarding lane markings includes details that identify the type of lane markings and how they are positioned on the road. In the following explanation, "curve" includes not only shapes where the road bends in an arc with a predetermined curvature (including shapes where the curvature of the road changes), but also shapes where the road bends at a predetermined angle such as a right angle (for example, an L-shaped intersection). In addition to the number of lanes on the road, information is also stored that identifies the direction of travel for each lane and the connections between roads (specifically, the correspondence between lanes on the road before passing through an intersection and lanes on the road after passing through an intersection). Moreover, the speed limit set for the road is also stored.
[0025] On the other hand, the facility DB14 is a storage means that stores more detailed facility information than the facility information stored in the server-side map information mentioned above. Specifically, the facility information 17 includes information that identifies the location of the entrance and exit of the parking lot (including both parking lots attached to facilities and independent parking lots), information that identifies the arrangement of parking spaces within the parking lot, information that identifies the lines that demarcate the parking spaces, and information that identifies the passageways, etc. For facilities other than parking lots, it includes information that identifies the floor map of the facility. The floor map includes information that identifies the location of entrances and exits, passageways, stairs, elevators, and escalators, for example. In addition, in the case of a mixed-use commercial facility with multiple tenants, it includes information for each tenant that occupies the facility. This includes information that identifies the location. Facility information 17 may also be information generated by creating a 3D model of the parking lot or facility. Furthermore, facility DB 14 also includes connection information 18 that shows the connection relationship between the lanes included in the access road facing the entrance to the parking lot and the entrance to the parking lot, and road surface shape information 19 that identifies the area where vehicles can pass between the access road and the entrance to the parking lot.
[0026] Furthermore, while the high-precision map information 16 is basically map information that covers only roads (links) and their surroundings, it may also include areas other than those surrounding roads. Also, in the example shown in Figure 2, the server-side map information stored in the server-side map DB 12 and the information stored in the high-precision map DB 13 and facility DB 14 are different map information, but the information stored in the high-precision map DB 13 and facility DB 14 may be part of the server-side map information. In addition, the high-precision map DB 13 and facility DB 14 may be combined into a single database.
[0027] On the other hand, the server-side communication device 15 is a communication device for communicating with the navigation device 1 of each vehicle 5 via the communication network 6. In addition to the navigation device 1, it is also possible to receive traffic information consisting of various types of information such as congestion information, regulation information, and traffic accident information transmitted from the Internet network or traffic information centers, such as VICS (registered trademark: Vehicle Information and Communication System) centers.
[0028] Next, the schematic configuration of the navigation device 1 installed in the vehicle 5 will be explained using Figure 3. Figure 3 is a block diagram showing the navigation device 1 according to this embodiment.
[0029] As shown in Figure 3, the navigation device 1 according to this embodiment includes a current position detection unit 31 that detects the current position of the vehicle on which the navigation device 1 is installed, a data recording unit 32 on which various data are recorded, a navigation ECU 33 that performs various calculation processing based on the input information, an operation unit 34 that accepts operations from the user, a liquid crystal display 35 that displays information to the user such as a map of the area around the vehicle and the guidance route (planned route of the vehicle) set in the navigation device 1, a speaker 36 that outputs voice guidance regarding route guidance, a DVD drive 37 that reads a DVD which is a storage medium, and a communication module 38 that communicates with an information center such as a probe center or a VICS center. Furthermore, the navigation device 1 is connected to an external camera 39 and various sensors installed on the vehicle on which the navigation device 1 is installed via an in-vehicle network such as CAN. In addition, it is connected in a bidirectional communication manner to a vehicle control ECU 40 that performs various controls on the vehicle on which the navigation device 1 is installed.
[0030] The following describes each component of the navigation device 1 in order. The current position detection unit 31 consists of a GPS 41, a vehicle speed sensor 42, a steering sensor 43, a gyro sensor 44, etc., and is capable of detecting the current position, direction, vehicle speed, current time, etc. In particular, the vehicle speed sensor 42 is a sensor for detecting the distance traveled and vehicle speed of the vehicle, and generates pulses in accordance with the rotation of the vehicle's drive wheels and outputs the pulse signal to the navigation ECU 33. The navigation ECU 33 then calculates the rotation speed of the drive wheels and the distance traveled by counting the generated pulses. It should be noted that the navigation device 1 does not need to be equipped with all four types of sensors mentioned above, and the navigation device 1 may be configured to be equipped with only one or more of these types of sensors.
[0031] Furthermore, the data recording unit 32 includes a hard disk (not shown) as an external storage device and recording medium, and a recording head (not shown) which is a driver for reading map information DB 45, cache 46, predetermined programs, etc., recorded on the hard disk, and writing predetermined data to the hard disk. The data recording unit 32 may also have flash memory, a memory card, or an optical disc such as a CD or DVD instead of a hard disk. Furthermore, as described above, in this embodiment, the server device 4 searches for a route to the destination, so the map information DB 45 may be omitted. Even if the map information DB 45 is omitted, it is still possible to obtain map information from the server device 4 as needed.
[0032] Here, the map information DB45 is a storage means that stores, for example, link data related to roads (links), node data related to node points, search data used for processing related to route searching and modification, facility data related to facilities, map display data for displaying maps, intersection data related to each intersection, and search data for searching for locations.
[0033] On the other hand, the cache 46 is a storage means that stores high-precision map information 16, facility information 17, connection information 18, and off-road shape information 19 that have been previously distributed from the server device 4. The storage period can be set as appropriate, but for example, it may be a predetermined period (e.g., one month) from the time it is stored, or it may be until the vehicle's ACC power (accessory power supply) is turned off. Alternatively, after the amount of data stored in the cache 46 reaches its limit, older data may be deleted sequentially. The navigation ECU 33 then uses the high-precision map information 16, facility information 17, connection information 18, and off-road shape information 19 stored in the cache 46 to generate various support information related to automated driving assistance. Details will be described later.
[0034] On the other hand, the navigation ECU (Electronic Control Unit) 33 is an electronic control unit that controls the entire navigation device 1, and includes a CPU 51 as an arithmetic unit and control device, a RAM 52 which is used as working memory when the CPU 51 performs various arithmetic processing and stores route data when a route is searched, a ROM 53 which stores control programs as well as the automatic driving support program (see Figure 4) described later, and other internal storage devices such as a flash memory 54 which stores programs read from the ROM 53. The navigation ECU 33 also has various means as processing algorithms. For example, the planned driving route acquisition means acquires the planned driving route that the vehicle will travel. The curve section acquisition means uses information about road markings and information about curvature to acquire the start and end points of a curve section if the planned driving route includes a curve. The arc acquisition means acquires the maximum arc, which is the arc with the largest radius of curvature that passes through the start point and end point of the curve section in the direction of travel of the vehicle. The track generation means generates a first curve that connects the starting point of the curved section to the starting point of an arc track having the same radius of curvature as the maximum arc, with the same curvature as the arc track, from the track moving in the direction of the vehicle's travel, and a second curve that connects to the end point of the arc track with the same curvature as the arc track, and connects to the end point of the curved section so that the track moves in the direction of the vehicle's travel at the end point of the curved section. The driving track generation means generates a combination of the first curve, the arc track and the second curve as a driving track recommended for the vehicle's travel in the curved section. The driving support means provides driving support for the vehicle based on the driving track generated by the driving track generation means.
[0035] The control unit 34 is operated when inputting the starting point (departure point) and the ending point (destination point), and has multiple operation switches (not shown), such as various keys and buttons. The navigation ECU 33 controls the system to perform various operations based on the switch signals output when each switch is pressed. The control unit 34 may also have a touch panel located in front of the liquid crystal display 35. It may also have a microphone and a voice recognition device.
[0036] The LCD display 35 also displays map images including roads, traffic information, operation instructions, operation menus, key guidance, guidance information along the guided route (planned driving route), news, weather forecasts, time, emails, TV programs, etc. Alternatively, a HUD or HMD may be used instead of the LCD display 35.
[0037] Furthermore, speaker 36 outputs voice guidance that directs the driver along the guided route (planned route) based on instructions from the navigation ECU 33, as well as traffic information.
[0038] Furthermore, the DVD drive 37 is a drive capable of reading data recorded on recording media such as DVDs and CDs. Based on the read data, it performs functions such as playing music and videos, and updating the map information DB 45. Alternatively, a card slot for reading and writing memory cards may be provided instead of the DVD drive 37.
[0039] Furthermore, the communication module 38 is a communication device for receiving traffic information, probe information, weather information, etc. transmitted from traffic information centers, such as VICS centers and probe centers, and includes, for example, mobile phones and DCMs. It also includes vehicle-to-vehicle communication devices for communication between vehicles and vehicle-to-infrastructure communication devices for communication with roadside devices. It is also used to send and receive route information, high-precision map information 16, facility information 17, connection information 18, and off-road shape information 19, which have been searched by the server device 4, to and from the server device 4.
[0040] Furthermore, the external camera 39 is composed of a camera using a solid-state image sensor such as a CCD, and is mounted above the vehicle's front bumper with its optical axis oriented at a predetermined angle downward from the horizontal. The external camera 39 captures images of the area in front of the vehicle when the vehicle is traveling in an automated driving section. The navigation ECU 33 performs image processing on the captured images to detect obstacles such as lane markings on the road the vehicle is traveling on and other vehicles in the vicinity, and generates various support information related to automated driving assistance based on the detection results. For example, if an obstacle is detected, a new driving trajectory is generated that avoids or follows the obstacle. The external camera 39 may also be configured to be positioned at the rear or side of the vehicle, in addition to the front. Furthermore, instead of a camera, sensors such as millimeter-wave radar or laser sensors, or vehicle-to-vehicle communication or vehicle-to-infrastructure communication may be used as means for detecting obstacles.
[0041] Furthermore, the vehicle control ECU 40 is an electronic control unit that controls the vehicle equipped with the navigation device 1. The vehicle control ECU 40 is also connected to various drive units of the vehicle, such as the steering, brakes, and accelerator, and in this embodiment, it controls each drive unit to provide automatic driving assistance to the vehicle, especially after automatic driving assistance has been initiated in the vehicle. In addition, if the user overrides the automatic driving assistance, the ECU 40 detects that an override has occurred.
[0042] Here, after the vehicle starts driving, the navigation ECU 33 transmits various support information related to automated driving assistance generated by the navigation device 1 to the vehicle control ECU 40 via CAN. The vehicle control ECU 40 then uses the received support information to perform automated driving assistance after the vehicle starts driving. Examples of support information include the recommended driving trajectory for the vehicle and a speed plan indicating the vehicle speed during driving.
[0043] Next, the automatic driving support program executed by the CPU 51 in the navigation device 1 according to this embodiment having the above configuration will be described with reference to Figure 4. Figure 4 is a flowchart of the automatic driving support program according to this embodiment. Here, the automatic driving support program is executed after the vehicle's ACC power supply (accessory power supply) is turned ON and the vehicle starts driving with automatic driving support, and is a program that performs assisted driving with automatic driving support according to the support information generated by the navigation device 1. Furthermore, the programs shown in the flowcharts in Figures 4, 7, 10, 15 and 18 are stored in the RAM 52 and ROM 53 of the navigation device 1 and are executed by the CPU 51.
[0044] First, in the autonomous driving assistance program, in step 1 (hereinafter abbreviated as S), CP U51 acquires the route the vehicle is scheduled to travel (hereinafter referred to as the "scheduled route"). The vehicle's scheduled route is, for example, the recommended route to the destination found by the server device 4 when the user sets a destination. If no destination is set, the route taken by following the road from the vehicle's current location may be used as the scheduled route.
[0045] Furthermore, when searching for a recommended route, the CPU 51 first sends a route search request to the server device 4. The route search request includes a terminal ID that identifies the navigation device 1 that sent the route search request, and information that identifies the starting point (e.g., the vehicle's current location) and the destination. Note that information that identifies the destination is not necessarily required when performing a re-search. Subsequently, the CPU 51 receives the search route information sent from the server device 4 in response to the route search request. The search route information is information that identifies the recommended route (center route) from the starting point to the destination, which the server device 4 has searched using the latest version of map information based on the transmitted route search request (e.g., a list of links included in the recommended route). For example, it may be searched using the well-known Dijkstra's algorithm.
[0046] Furthermore, when searching for the recommended route described above, it is desirable to select a recommended parking spot (parking space) at the destination parking lot and then search for a recommended route to the selected parking spot. In other words, it is desirable that the searched recommended route include not only the route to the parking lot but also the route showing the movement of the car within the parking lot. For example, from among the available parking spaces in the parking lot, a parking space that is easy for the user to park in (for example, a parking space close to the entrance / exit of the parking lot, a parking space where there are no other vehicles parked on either side, etc.) should be determined as a candidate for a recommended parking spot for the user. In addition, when selecting a parking spot, it is desirable to select a parking spot that minimizes the burden on the user by considering not only the movement of the vehicle to the parking spot but also the walking distance after parking and the movement of the car when leaving the parking spot on the way back.
[0047] Furthermore, multiple parking locations may be selected as recommended parking spots for the vehicle. If multiple parking locations are selected as recommended parking spots, the recommended routes to each parking location will be acquired as planned driving routes in S1, meaning that multiple candidate planned driving routes will be acquired. Moreover, even if only one recommended parking location is selected, if multiple recommended routes are possible to that parking location, multiple candidate planned driving routes may be acquired. In addition, if multiple candidate planned driving routes are acquired in S1, the lane movement patterns among the multiple planned driving routes will be compared in S25 described below, and the recommended lane movement pattern will be determined as one, thereby determining the parking location and planned driving route as one.
[0048] Furthermore, the server device 4 refers to connection information 18 that shows the connection relationship between the lanes included in the road facing the entrance / exit of the parking lot where the user will park (hereinafter referred to as the access road) and the entrance / exit of the parking lot. If the possible directions of travel for entering the parking lot from the access road are limited (for example, only left turns are permitted), the server device 4 also considers the direction of entry when searching for the above-mentioned driving route. Note that other search methods besides Dijkstra's algorithm may be used as the route search method. Also, the driving route search in S1 may be performed by the navigation device 1 instead of the server device 4.
[0049] Next, in S2, the CPU 51 acquires high-precision map information 16 for the area including the planned route acquired in S1, starting from the vehicle's current position.
[0050] Here, the high-precision map information 16 is divided into rectangular shapes (for example, 500m x 1km) as shown in Figure 5 and stored in the high-precision map DB 13 of the server device 4. Therefore, for example, when route 61 is acquired as the vehicle's travel route as shown in Figure 5, the area including route 61 is stored. High-precision map information 16 is acquired for areas A62-65. However, if the distance to the destination is particularly long, high-precision map information 16 may be acquired for only the secondary mesh where the vehicle is currently located, or for only the area within a predetermined distance (e.g., within 3 km) from the vehicle's current location.
[0051] The high-precision map information 16 includes information such as road lane shapes and road markings (center lines, lane boundaries, outer lines, guide lines, etc.). It also includes information about intersections, parking lots, etc. The high-precision map information 16 is basically acquired from the server device 4 in the rectangular area units described above, but if high-precision map information 16 for an area is already stored in the cache 46, it is acquired from the cache 46. The high-precision map information 16 acquired from the server device 4 is temporarily stored in the cache 46.
[0052] In addition, in S2, the CPU 51 also similarly acquires connection information 18 indicating the connection relationship between the lanes included in the access road facing the entrance / exit of the parking lot where the user parks and the entrance / exit of the parking lot, and road surface shape information 19 that identifies the area where vehicles can pass between the access road and the entrance / exit of the parking lot where the user parks.
[0053] Subsequently, in S3, the CPU 51 executes the static driving trajectory generation process (Figure 7) described below. Here, the static driving trajectory generation process generates a static driving trajectory, which is the driving trajectory recommended for the vehicle on the roads included in the planned driving route, based on the vehicle's planned driving route and the high-precision map information 16 acquired in S2. In particular, the CPU 51 not only identifies the lane on which the vehicle is recommended to drive, but also generates a static driving trajectory that identifies the specific driving position within the lane on which driving is recommended. If the distance to the destination is particularly far, it is also possible to generate a static driving trajectory only for the section from the vehicle's current position to a predetermined distance ahead in the direction of travel (for example, within the secondary mesh where the vehicle is currently located). The predetermined distance can be changed as appropriate, but the static driving trajectory is generated for an area that includes at least the area outside the range (detection range) on which the road conditions around the vehicle can be detected by the external camera 39 or other sensors.
[0054] Next, in S4, the CPU 51 generates a vehicle speed plan for traveling along the static track generated in S3, based on the high-precision map information 16 acquired in S2. For example, it calculates the recommended vehicle speed for traveling along the static track, taking into account speed limit information and speed change points on the planned route (e.g., intersections, curves, railway crossings, pedestrian crossings, etc.).
[0055] The speed plan generated in S4 is then stored in flash memory 54 or the like as support information for autonomous driving assistance. In addition, a plan of acceleration indicating the acceleration and deceleration of the vehicle necessary to realize the speed plan generated in S4 may also be generated as support information for autonomous driving assistance.
[0056] Next, in S5, the CPU 51 performs image processing on the image captured by the external camera 39 to determine whether there are any factors in the surrounding road conditions, particularly around the vehicle, that could affect the vehicle's movement. Here, the "factors that could affect the vehicle's movement" to be determined in S5 are dynamic factors that change in real time, and static factors such as those based on road structure are excluded. For example, this includes other vehicles traveling or parked in front of the vehicle's direction of travel, congested vehicles, pedestrians located in front of the vehicle's direction of travel, and construction zones in front of the vehicle's direction of travel. On the other hand, intersections, curves, railway crossings, merging zones, lane reduction zones, etc. are excluded. Furthermore, even if other vehicles, pedestrians, or construction zones exist, if there is no risk of them overlapping with the vehicle's future trajectory (for example, if they are far from the vehicle's future trajectory), then these factors are excluded. If the vehicle is located in a specific position, it is excluded from the "factors that affect the vehicle's movement." In addition, instead of cameras, sensors such as millimeter-wave radar or laser sensors, or vehicle-to-vehicle communication or vehicle-to-infrastructure communication may be used as means of detecting factors that may affect the vehicle's movement.
[0057] Alternatively, for example, the real-time location of each vehicle traveling on roads nationwide may be managed by an external server, and the CPU 51 may obtain the locations of other vehicles located around its own vehicle from the external server and perform the determination process in S5.
[0058] If it is determined that there are factors in the vicinity of the vehicle that could affect its operation (S5: YES), the process proceeds to S6. Conversely, if it is determined that there are no factors in the vicinity of the vehicle that could affect its operation (S5: NO), the process proceeds to S9.
[0059] In S6, the CPU 51 generates a new dynamic trajectory to avoid or follow the "factors affecting the vehicle's movement" detected in S5, and return to the static trajectory. The dynamic trajectory is generated for the section containing the "factors affecting the vehicle's movement." The length of the section varies depending on the nature of the factor. For example, if the "factor affecting the vehicle's movement" is another vehicle (forward vehicle) traveling in front of the vehicle, the dynamic trajectory 67 is generated as an avoidance trajectory, which is the trajectory from changing lanes to the right to overtake the forward vehicle 66, and then changing lanes to the left to return to the original lane, as shown in Figure 6. Alternatively, a follow trajectory may be generated as the dynamic trajectory, which is the trajectory of following the forward vehicle 66 at a predetermined distance behind (or traveling parallel to) the forward vehicle 66 without overtaking it. Furthermore, multiple candidates may be generated as dynamic trajectories, in which case the candidate with the lowest cost will be selected from among the multiple candidates in S7, described later.
[0060] To explain the calculation method of the dynamic driving trajectory 67 shown in Figure 6 as an example, the CPU 51 first starts turning the steering wheel to move to the right lane and calculates the first trajectory L1 necessary for the steering wheel to return to the straight-ahead position. The first trajectory L1 is calculated based on the vehicle's current speed, and the lateral acceleration (lateral G) that occurs when changing lanes is calculated. The lateral G does not exceed an upper limit (e.g., 0.2G) that does not interfere with the automatic driving assistance and does not cause discomfort to the vehicle's occupants. The rate of change of lateral G per unit time is also limited to an upper limit (e.g., 0.6m / s²). 3 The system calculates a trajectory that is as smooth as possible and minimizes the distance required for lane changes, using clothoid curves and circular arcs, provided that the value does not exceed [a certain value]. It also requires that an appropriate following distance N or greater be maintained between the vehicle 66 in front. Next, a second trajectory L2 is calculated, which involves driving in the right lane at the speed limit to overtake vehicle 66 and maintaining an appropriate following distance N or more between the two vehicles. The second trajectory L2 is basically a straight line, and its length is calculated based on the speed of vehicle 66 and the road's speed limit. Next, the system calculates a third trajectory L3, which is necessary to initiate the steering turn to return to the left lane and for the steering wheel to return to the straight-ahead position. The third trajectory L3 is calculated based on the vehicle's current speed, determining the lateral acceleration (lateral G) generated during the lane change. The system ensures that the lateral G does not exceed a certain upper limit (e.g., 0.2G) that does not interfere with the automated driving assistance system or cause discomfort to the vehicle's occupants. Similarly, the rate of change of lateral G per unit time is also limited to a certain upper limit (e.g., 0.6 m / s²). 3 The system calculates a trajectory that is as smooth as possible and minimizes the distance required for lane changes, using clothoid curves and circular arcs, provided that the value does not exceed [a certain value]. It also requires that an appropriate following distance N or greater be maintained between the vehicle 66 in front. Furthermore, since the dynamic driving trajectory is generated based on the road conditions around the vehicle acquired by the external camera 39 and other sensors, the area in which the dynamic driving trajectory is generated is at least the range in which the road conditions around the vehicle can be detected by the external camera 39 and other sensors. It falls within the (detection range).
[0061] Next, in S7, the CPU 51 reflects the newly generated dynamic trajectory in S6 onto the static trajectory generated in S3. Specifically, it calculates the cost of both the static trajectory and the dynamic trajectory (there may be multiple candidates for the dynamic trajectory) from the vehicle's current position to the end of the section containing "factors that affect the vehicle's movement," and selects the trajectory with the lowest cost. As a result, a portion of the static trajectory will be replaced with the dynamic trajectory as needed. However, in some situations, the dynamic trajectory may not be replaced, meaning that even if the dynamic trajectory is reflected, it may not change from the static trajectory generated in S3. Furthermore, if the dynamic trajectory and the static trajectory are the same trajectory, even if replacement occurs, it may not change from the static trajectory generated in S3.
[0062] Next, in S8, the CPU 51 modifies the vehicle's speed plan generated in S4 based on the content of the dynamic trajectory, after the dynamic trajectory has been reflected in S7. If the static trajectory generated in S3 does not change as a result of the reflection of the dynamic trajectory, the process in S8 may be omitted.
[0063] Next, in S9, the CPU 51 calculates the control amounts necessary for the vehicle to travel at a speed according to the speed plan generated in S4 (or the modified plan if the speed plan was modified in S8) based on the static driving trajectory generated in S3 (or the trajectory after the dynamic driving trajectory has been reflected in S7). Specifically, the control amounts for the accelerator, brake, gear, and steering are calculated, respectively. Note that the processing in S9 and S10 may be performed by the vehicle control ECU 40, which controls the vehicle, rather than the navigation device 1.
[0064] Subsequently, in S10, the CPU 51 reflects the control values calculated in S9. Specifically, it transmits the calculated control values to the vehicle control ECU 40 via CAN. The vehicle control ECU 40 performs vehicle control of the accelerator, brakes, gears, and steering based on the received control values. As a result, it becomes possible to provide driving support control that drives the vehicle at a speed according to the speed plan generated in S4 (or the modified plan if the speed plan was modified in S8) along the static driving trajectory generated in S3 (or the trajectory after the dynamic driving trajectory has been reflected in S7).
[0065] Next, in S11, the CPU 51 determines whether the vehicle has traveled a certain distance since the static track was generated in S3. For example, the certain distance is 1 km.
[0066] Then, if it is determined that the vehicle has traveled a certain distance since the static trajectory was generated in S3 (S11: YES), the process returns to S2. Subsequently, the static trajectory is generated again for a section within a predetermined distance from the vehicle's current position along the planned route (S2-S4). In this embodiment, the static trajectory is repeatedly generated for a section within a predetermined distance from the vehicle's current position along the route each time the vehicle travels a certain distance (e.g., 1 km). However, if the distance to the destination is short, the static trajectory to the destination may be generated all at once at the start of travel.
[0067] On the other hand, if it is determined that the vehicle has not traveled a certain distance since the static driving trajectory was generated in S3 (S11: NO), it is determined whether or not to terminate the assisted driving by the automated driving support system (S12). In addition to arriving at the destination, the assisted driving by the automated driving support system may be terminated if the user intentionally disables (overrides) the assisted driving by operating the control panel on the vehicle, or by operating the steering wheel or brakes.
[0068] If it is determined that the automated driving assistance should be terminated (S12: YES), the automated driving assistance program is terminated. Conversely, if it is determined that the automated driving assistance should be continued (S12: NO), the process returns to S5.
[0069] Next, the subprocessing of the static trajectory generation process executed in S3 will be explained with reference to Figure 7. Figure 7 is a flowchart of the subprocessing program for the static trajectory generation process.
[0070] First, in S21, the CPU 51 acquires the current position of the vehicle detected by the current position detection unit 31. It is desirable to determine the vehicle's current position in detail using, for example, high-precision GPS information or high-precision location technology. Here, high-precision location technology is a technology that detects white lines and road paint information captured from a camera installed on the vehicle using image recognition, and further compares the detected white lines and road paint information with, for example, high-precision map information 16, thereby enabling the detection of the driving lane and the vehicle's position with high precision. Furthermore, if the vehicle is traveling on a road with multiple lanes, the lane the vehicle is traveling in is also identified. In addition, if the vehicle is located in a parking lot, the specific location within the parking lot (for example, the parking space in which the vehicle is located) and the vehicle's orientation (for example, the direction of travel of the vehicle, and, if located in a parking space, the orientation in which it is parked relative to the parking space) are also identified.
[0071] Next, in S22, the CPU 51 acquires lane shape, lane marking information, intersection information, etc., based on the high-precision map information 16 acquired in S2, particularly for the section where a static driving trajectory is generated in front of the vehicle in the direction of travel (for example, the planned driving route within a predetermined distance from the vehicle's current position). The lane shape and lane marking information acquired in S22 includes information that identifies how the lanes that the vehicle can select to drive on are arranged on the road, and further includes information that identifies the number of lanes, the type and arrangement of the lane markings that divide the lanes, the curvature of the road (lanes), the lane width, where and how the number of lanes increases or decreases if there is an increase or decrease, the traffic division in the direction of travel for each lane, and the connections between roads (specifically, the correspondence between the lanes included in the road before passing an intersection and the lanes included in the road after passing an intersection).
[0072] Next, in S23, the CPU 51 constructs a lane network for the section in front of the vehicle's direction of travel where a static driving trajectory is generated, based on the lane shape and lane marking information acquired in S22. Here, the lane network is a network that shows the lane changes that the vehicle can choose.
[0073] Here, as an example of constructing a lane network in S23, we will explain using the example of a vehicle traveling along the planned route shown in Figure 8. The planned route shown in Figure 8 is a route in which the vehicle travels straight from its current position, turns right at the next intersection 71, turns right again at the next intersection 72, and turns left at the next intersection 73. In the planned route shown in Figure 8, for example, when turning right at intersection 71, it is possible to enter either the right lane or the left lane. However, since it is necessary to turn right at the next intersection 72, it is necessary to move to the rightmost lane when entering intersection 72. Similarly, when turning right at intersection 72, it is possible to enter either the right lane or the left lane. However, since it is necessary to turn left at the next intersection 73, it is necessary to move to the leftmost lane when entering intersection 73. Figure 9 shows a lane network constructed for sections where such lane changes are possible.
[0074] As shown in Figure 9, the lane network divides the section that generates the static driving trajectory in front of the vehicle's direction of travel into multiple sections (groups). Specifically, the boundaries are defined by the entry and exit points of intersections and the points where lanes increase or decrease. Then, node points (hereinafter referred to as lane nodes) 75 are set for each lane located at the boundary of each divided section. Furthermore, links 76 (hereinafter referred to as lane links) are set up to connect the lane nodes 75. Note that, when the lane links 76 do not cross lanes, they are basically set to the center of the lane.
[0075] Furthermore, the lane network, particularly through the connection of lane nodes and lane links at intersections, includes information that identifies the correspondence between lanes included in the road before passing through an intersection and lanes included in the road after passing through an intersection, that is, information that identifies the lanes that can be moved to after passing through an intersection in relation to the lanes before passing through an intersection. Specifically, it indicates that vehicles can move between lanes corresponding to lane nodes connected by lane links, among the lane nodes set on the road before passing through an intersection and the lane nodes set on the road after passing through an intersection. In order to generate such a lane network, the high-precision map information 16 stores lane flags that indicate the correspondence between lanes for each combination of roads entering and exiting an intersection for each road connected to an intersection. When the CPU 51 constructs the lane network in S23, it refers to the lane flags to form the connection between lane nodes and lane links at the intersection.
[0076] Although Figure 9 shows an example of a lane network constructed for roads, a similar network (hereinafter referred to as the parking lot network) can be constructed for parking lots if the section for generating static driving trajectories includes a parking lot. The parking lot network consists of parking lot nodes and parking lot links. Parking lot nodes are set at the entrances and exits of parking lots, intersections where vehicle-accessible paths intersect, corners of vehicle-accessible paths (i.e., connection points between paths), and the ends of paths. Parking lot links, on the other hand, are set for vehicle-accessible paths between parking lot nodes.
[0077] Furthermore, if multiple candidate routes are obtained in S1, the lane network and parking lot network described above will be constructed for each of the multiple routes.
[0078] Next, in S24, the CPU 51 sets a starting lane (departure node) at the lane node located at the starting point of the lane network constructed in S23 (including the parking lot network if the section for generating the static driving trajectory includes a parking lot, the same applies hereinafter), and sets a target lane (destination node) at the lane node located at the end point of the lane network, which is the target lane to which the vehicle will move. If the starting point of the lane network is a road with multiple lanes in one direction, the lane node corresponding to the lane in which the vehicle is currently located becomes the starting lane. On the other hand, if the end point of the lane network is a road with multiple lanes in one direction, the lane node corresponding to the leftmost lane (in the case of left-hand traffic) becomes the target lane. Furthermore, if the starting or ending point of the lane network is within a parking lot, the starting lane is set in the parking space or passage where the vehicle is currently located within the parking lot network, and the target lane is set in the parking space where the vehicle will park or in the passage leading to the parking space.
[0079] Subsequently, in S25, the CPU 51 refers to the lane network constructed in S23 and derives the route with the smallest lane cost among the routes that continuously connect the starting lane to the target lane (hereinafter referred to as the recommended route). For example, Dijkstra's algorithm is used to search for a route from the target lane side. However, other search methods besides Dijkstra's algorithm may be used as long as a route that continuously connects the starting lane to the target lane can be found. The derived recommended route becomes the recommended lane movement pattern for the vehicle when the vehicle moves (information that identifies the lane that is recommended to drive in and the recommended position for lane changes).
[0080] Furthermore, the lane cost used in searching for the above route is assigned to each lane link 76. The lane cost assigned to each lane link 76 is equal to the length of each lane link 76 or The time required for movement is used as the baseline value. In particular, in this embodiment, the length of the lane link (in meters) is used as the baseline value for the lane cost. Furthermore, for lane links involving lane changes, a lane change cost (e.g., 50) is added to the above baseline value. Note that the value of the lane change cost may be changed depending on the number of lane changes and the location of the lane changes. For example, the value of the added lane change cost can be increased when lane changes occur near intersections or when lane changes involving two lanes occur.
[0081] Furthermore, if multiple candidate routes are obtained in S1, the recommended route with the lowest lane cost is derived from among the multiple routes. The route to be driven is then determined to be the same as the recommended route derived.
[0082] Next, in S26, the CPU 51 performs the curved section trajectory calculation process described later (Figures 10 and 15). The curved section trajectory calculation process is a process that generates a recommended trajectory when traveling along the recommended route derived in S25, focusing on curved sections in the planned travel route of the section for which a static trajectory is to be generated in the direction of travel of the vehicle, particularly those containing curves. If the planned travel route includes multiple curved sections, a recommended trajectory is generated for each of the multiple curved sections. Here, "curve" includes not only shapes in which the road bends in an arc with a predetermined curvature (including shapes in which the curvature of the road changes), but also shapes that bend at a predetermined angle such as a right angle (for example, an L-shaped road). On the other hand, in this embodiment, it is assumed that the vehicle travels through curves within the same lane of the road, and curves at intersections where lanes are interrupted, around toll booths, and at parking lot entrances and exits are excluded from the curves in S26.
[0083] Subsequently, in S27, the CPU 51 generates a recommended driving trajectory for driving along the recommended route derived in S25, excluding the curved section. For example, for driving trajectories involving lane changes, the CPU 51 sets the positions of lane changes so that they are not consecutive and are located as far away from intersections as possible. Furthermore, when generating driving trajectories, especially when turning right or left or changing lanes at intersections, the CPU 51 calculates the lateral acceleration (lateral G) generated in the vehicle and ensures that the lateral G does not exceed an upper limit (e.g., 0.2G) that does not interfere with automatic driving assistance or cause discomfort to the vehicle's occupants. The same upper limit (e.g., 0.6m / s) is also set for the rate of change of lateral G per unit time. 3 The system calculates a trajectory that connects the points as smoothly as possible using a clothoid curve, provided that it does not exceed the specified limit. By performing the above process, a recommended driving trajectory is generated for the roads included in the planned route. For sections that are neither curved, lane change sections, nor intersections, the recommended driving trajectory is the one that passes through the center of the lane. Furthermore, if the generation of static driving trajectories includes entry into or exit from parking spaces, driving trajectories for entry into or exit from parking spaces are also generated.
[0084] In S28, the CPU 51 combines the driving trajectories calculated in S26 and S27 to generate a static driving trajectory, which is the driving trajectory recommended for the vehicle on the roads included in the planned driving route. The static driving trajectory generated in S28 is stored in the flash memory 54 or the like as support information used for automated driving assistance. The process then proceeds to S4, where various driving assistance functions are performed based on the generated static driving trajectory.
[0085] Next, we will explain the sub-processes of the curved section trajectory calculation process performed in S26. The curved section trajectory calculation process is a process that calculates the recommended trajectory for traveling through the curved section included in the planned route. Below, we will explain examples using two different methods, "Method 1" and "Method 2," for the curved section trajectory calculation process. Either "Method 1" or "Method 2" may be used for the curved section trajectory calculation process. Alternatively, "Method 1" and "Method 2" may be performed separately, and one of the trajectories calculated by each method may be selected as the final recommended trajectory. .
[0086] First, we will explain an example of implementing "Method 1" using Figure 10. Figure 10 is a flowchart of the sub-processing program for calculating the running trajectory in a curved section in "Method 1".
[0087] In S31, the CPU 51 acquires information to identify the driving area in which the vehicle travels, based on the high-precision map information 16 acquired in S2, for the section in front of the vehicle in the direction of travel where a static driving trajectory is generated. Specifically, information is acquired to identify the positions of the left and right lane markings (or the edges of the road for single-lane roads or roads without lane markings) in which the vehicle travels when traveling according to the lane movement pattern selected in S25.
[0088] Next, in S32, the CPU 51 calculates the centerline of the lane in which the vehicle travels, based on the driving area information acquired in S31, for the section in front of the vehicle in the direction of travel where a static driving trajectory is generated. For example, it is possible to calculate the centerline at the center of the driving area from the positions of the left and right lane lines or the edges of the road. However, instead of calculating the centerline from the lane lines, it is also possible to calculate it in advance for each lane and store it in the high-precision map DB 13.
[0089] Next, in S33, the CPU 51 calculates a moving average line for the lane in which the vehicle travels, based on the center line calculated in S32, for the section in front of the vehicle in the direction of travel where a static driving trajectory is generated. The moving average line is a line connecting the average points of a predetermined number of consecutive coordinate points arranged along the center line of the lane. More specifically, for each coordinate point set at predetermined intervals along the center line, the average point (the point obtained by averaging the latitude and longitude of the two coordinate points before and after it) is calculated, and the line connecting these average points is used as the moving average line. However, it is also possible to calculate the moving average line for each lane in advance and store it in the high-precision map DB 13, rather than calculating it from the center line.
[0090] Furthermore, in S34, the CPU 51 compares the center line calculated in S32 with the moving average line calculated in S33 and detects the range where the center line and the moving average line do not coincide as the range where a curve exists. Here, Figure 11 shows an example of the center line 81 and moving average line 82 calculated in S32 and S33. As mentioned above, the moving average line 82 is a line that connects the average points (points obtained by averaging the latitude and longitude of each) of five coordinate points, including the two coordinate points before and after each coordinate point set at predetermined intervals along the center line 81. Therefore, in sections where the center line 81 is arranged in a straight line, the center line 81 and the moving average line 82 coincide, but as shown in Figure 11, there are ranges where the center line 81 and the moving average line 82 do not coincide at places where the road curves in an arc or bends at a predetermined angle. Therefore, in S34, the range where the center line 81 and the moving average line 82 do not coincide is detected as the range where a curve exists.
[0091] In addition, in S34, the CPU 51 detects curves in the section that generates the static trajectory ahead of the vehicle's direction of travel by comparing the center line 81 and the moving average line 82. However, it is also possible to detect curves based on map information. In that case, the map information should include information that identifies the location of the curve in advance (for example, information that identifies the link corresponding to the curve, or the coordinates of the start and end points of the curve). Alternatively, information about the curvature of the road can be obtained from the map information, and curves can be detected from the curvature of the road (for example, if there is a range where the curvature of the road is greater than or equal to a threshold, that range can be detected as a curve).
[0092] Next, in S35, the CPU 51 determines whether or not there is at least one curve in the section where the static driving trajectory ahead of the vehicle's direction of travel is generated, based on the detection results from S34.
[0093] Then, if it is determined that there is at least one curve in the section for generating the static track ahead of the vehicle's direction of travel (S35: YES), the process proceeds to S36. Conversely, if it is determined that there are no curves in the section for generating the static track ahead of the vehicle's direction of travel (S35: NO), the process proceeds to S27, where a recommended track is generated for driving along the recommended route derived in S25.
[0094] From S36 onwards, the following process is used to generate a recommended driving path for the curved section, which includes the curve detected as described above. If multiple curves are detected, the following process is executed for each curved section corresponding to all detected curves to generate a driving path.
[0095] First, in S36, the CPU 51 obtains a start vector that specifies the position and direction of the vehicle at the start of the curved section when the vehicle travels along the planned route according to the lane movement pattern selected in S25, and an end vector that specifies the position and direction of the vehicle at the end of the curved section.
[0096] The positions of the start and end points of this curved section may be appropriately changed depending on the lane movement pattern selected in S25, or they may be set under fixed conditions regardless of the lane movement pattern. For example, the start point of the curved section can be set to the start point of the section where the center line 81 and the moving average line 82 no longer coincide, or a predetermined distance (e.g., 5m) before that point, and the end point of the curved section can be set to the end point of the section where the center line 81 and the moving average line 82 no longer coincide, or a point that has advanced a predetermined distance in the direction of travel. In particular, in the following explanation, the start point of the section where the center line 81 and the moving average line 82 no longer coincide will be set as the start point of the curved section, and the end point of the section where the center line 81 and the moving average line 82 no longer coincide will be set as the end point of the curved section. Also, if the vehicle's current position is before the curve, the vehicle's current position may be set as the start point of the curved section. Furthermore, information that identifies the curved section (for example, information that identifies links included in the curved section, or the coordinates of the start and end points of the curved section) may be included in the map information in advance, and the curved section may be set based on the map information. Furthermore, when detecting curves from the curvature of roads included in map information, the range in which the curvature exceeds a threshold may be set as the curved section.
[0097] Here, the positions of the start and end vectors along the road's direction of travel (forward and backward positions) correspond to the start and end points of the curved section described above. On the other hand, the position of the start and end vectors in the road width direction is basically the center of the lane in which the vehicle travels (or the center of the road in the case of a single-lane road or a road without lane divisions). Furthermore, the orientation of the start and end vectors is basically parallel to the direction of travel on the road (the length of the road), assuming that the vehicle's orientation is parallel to the direction of travel on the road at the start and end points of the curved section. However, this does not apply in cases where special vehicle operations such as lane changes or right / left turns are required before a curved section, for example. In such cases, the positions of the start and end vectors in the road width direction may be set to the left or right of the center of the lane, and the direction may also be set at an angle to the direction of travel on the road.
[0098] Figure 11 shows an example of a start vector 83 and an end vector 84 set for a curved section that includes a right-angle bend. In the example shown in Figure 11, the start vector 83 is set at the center of the lane at the beginning of the section where the center line 81 and the moving average line 82 no longer coincide, and the end vector 84 is set at the center of the lane at the end of the section where the center line 81 and the moving average line 82 no longer coincide. The orientation of both the start vector 83 and the end vector 84 is parallel to the direction of travel of the road (road length direction).
[0099] Next, in S37, the CPU 51 calculates the arc with the largest radius of curvature (hereinafter referred to as the "maximum arc") 85, which passes through the direction of travel of the start vector 83 and end vector 84 obtained in S36 (i.e., the tangent direction of the arc coincides with the direction of travel of each vector), as shown in Figure 12. Note that the start vector 83 and end vector 84 correspond to the position and direction of the vehicle at the start and end points of the curved section when traveling along the planned route, so the maximum arc 85 also corresponds to the arc with the largest radius of curvature that passes through the start and end points of the curved section in the direction of travel of the vehicle.
[0100] Subsequently, in S38, the CPU 51 calculates the maximum speed at which the vehicle can travel without exceeding an upper limit (e.g., 0.2G) that does not interfere with the automatic driving assistance or cause discomfort to the vehicle's occupants, assuming that the vehicle travels along the maximum arc calculated in S37. For example, if Rmax is the radius of curvature of the maximum arc and Gmax is the upper limit of acceleration, the maximum speed vmax is calculated by the following equation (1). vmax=√(Gmax×Rmax)···(1) However, if the vmax calculated using formula (1) above exceeds the road's speed limit, then vmax = road's speed limit.
[0101] Next, assuming that the vehicle is traveling at the upper speed vmax calculated in S37, The rate of change per unit time of the resulting lateral acceleration (lateral G) is limited to an upper limit (e.g., 0.6 m / s²). 3 ) is not exceeded, and the travel time while traveling along the first clothoid curve is equal to or greater than the lower limit (e.g., 3 seconds). A first clothoid curve is drawn so that the trajectory moving in the direction of travel of the vehicle at the start of the curved section connects with the same curvature as the arc trajectory having the same radius of curvature as the largest arc, and a second clothoid curve is drawn so that it connects with the same curvature as the arc trajectory having the same radius of curvature as the largest arc, and also becomes the trajectory moving in the direction of travel of the vehicle at the end of the curved section. The condition that the change in lateral acceleration (lateral G) per unit time does not exceed the upper limit is to avoid causing burden or discomfort to the vehicle occupants. The condition that the travel time while traveling along the first clothoid curve is equal to or greater than the lower limit is to allow the vehicle occupants to perform safe steering operations. The lower limit can be changed as appropriate, but if the clothoid curve is too short, it will force unnatural steering operations, so it is set to, for example, 3 seconds. The lengths of the first clothoid curve and the second clothoid curve are set to the length at which the vehicle's travel time exceeds the lower limit.
[0102] A clothoid curve is a curve drawn when the curvature is changed at a constant rate with respect to distance (for example, if the vehicle speed is fixed, the steering angle is changed at a constant angular velocity). The clothoid curve in S39 can be calculated, for example, by calculating the Fresnel integral using Simpson's method or an approximation formula, or by replacing it with a complex plane. The method for calculating the clothoid curve is already publicly known, so the details are omitted. The longer the length of the clothoid curve, the longer the travel time while traveling along the clothoid curve, and the smaller the rate of change in curvature per unit time, i.e., the rate of change in lateral acceleration. On the other hand, the shorter the length of the clothoid curve, the shorter the travel time while traveling along the clothoid curve, and the larger the rate of change in curvature per unit time, i.e., the rate of change in lateral acceleration.
[0103] In S37, assuming that the vehicle is traveling at the upper speed limit vmax as described above, the vehicle will The rate of change per unit time of lateral acceleration (lateral G) is limited to an upper limit (e.g., 0.6 m / s²). 3 The clothoid curve is calculated under the conditions that it does not exceed ) and the travel time while traveling along the clothoid curve is equal to or greater than the lower limit (e.g., 3 seconds), but on the other hand, it is desirable for the clothoid curve to be as short as possible. Therefore, in this embodiment, the first clothoid curve and the second clothoid curve are calculated by setting either of the following conditions (A) or (B). (A) The change in the lateral acceleration (lateral G) generated in the vehicle per unit time is the upper limit (for example) 0.6 m / s 3 The first and second clothoid curves are calculated under the condition that ). However, the travel time while traveling along each clothoid curve must be above the lower limit. If it exceeds the lower limit, it is desirable to set a value smaller than the upper limit for the change in acceleration (lateral G) per unit time and recalculate. (B) The first and second clothoid curves are calculated on the condition that the travel time while traveling along the first and second clothoid curves is set to the lower limit (e.g., 3 seconds). However, if the rate of change of lateral acceleration per unit time exceeds the upper limit, it is desirable to set a travel time longer than the lower limit for traveling along the first and second clothoid curves and recalculate. Furthermore, as shown in the graph in Figure 13, the curvature of the first and second clothoid curves never exceeds the curvature of the circular trajectory. Therefore, the lateral acceleration (lateral G) generated in the vehicle when traveling along the first and second clothoid curves at vmax is limited to an upper limit (e.g., 0.2G). ) The result will be as follows:
[0104] Subsequently, in S40, the CPU 51 calculates the base running track (hereinafter referred to as the basic running track) by connecting the first clothoid curve 91 calculated in S39, the second clothoid curve 92, and the circular arc track 93 having the same radius of curvature as the largest arc, as shown in Figure 13. Note that the starting point 95 and ending point 96 of the basic running track calculated in S40 do not coincide with the positions of the starting point (starting vector 83) and ending point (ending vector 84) of the curved section (they are not calculated on the condition that they coincide). However, the orientation of the starting point 95 and ending point 96 of the basic running track coincides with the direction of travel of the vehicle at the starting point and ending point of the curved section (the orientation of the starting vector 83 and ending vector 84).
[0105] Therefore, in S41, the CPU 51 adjusts the starting point 95 and ending point 96 of the basic trajectory calculated in S40 to coincide with the starting point (start vector 83) and ending point (end vector 84) of the curved section by scaling (basically shrinking) while maintaining the overall shape of the basic trajectory calculated in S40, as shown in Figure 14. The ratio of the horizontal and vertical directions when scaling is basically the same, but different ratios are also acceptable. In addition to scaling, the basic trajectory may also be rotated.
[0106] Subsequently, in S42, the CPU 51 selects a basic driving trajectory, which in S41 ultimately resulted in the starting point 95 and ending point 96 coinciding with the starting point (start vector 83) and ending point (end vector 84) of the curved section, and the orientations of the starting point 95 and ending point 96 coinciding with the direction of travel of the vehicle at the starting point and ending point of the curved section (orientations of the starting vector 83 and ending vector 84), as the recommended driving trajectory when driving through the curved section. Then, the process moves to S27, where the CPU 51 generates a recommended driving trajectory for sections other than the curved section, following the recommended route derived in S25.
[0107] Furthermore, in "Method 1" described above, a track combining a clothoid curve and a circular arc track is generated as the recommended track for travel through curved sections. Therefore, the generated track ensures that the vehicle's position and direction are continuous (i.e., the track is a continuous line without interruption and does not bend midway), and that any changes in direction are continuous (i.e., the curvature is continuous without jumps). However, it is also possible to use a curve other than a clothoid curve. Even in that case, it is desirable to ensure the continuity of the vehicle's position and direction on the track, and that any changes in direction are continuous. In addition, it is desirable that the radius of curvature of the circular arc track included in the track be as close as possible to the largest radius of curvature of the arc that passes through the start and end points of the curved section in the direction of travel of the vehicle. This reduces the burden on the occupants during travel and shortens the travel time.
[0108] Next, we will explain an example of implementing "Method 2" using Figure 15. Figure 15 is a flowchart of the sub-processing program for calculating the running trajectory in a curved section in "Method 2".
[0109] Furthermore, the process for detecting curves in the planned route from S51 to S55 is the same as the process from S31 to S35 in "Method 1" (Figure 10) described above, so the explanation will be omitted.
[0110] For S56 and below, the following process generates a recommended driving path when traveling through a curved section, targeting the curved section containing the detected curve. If multiple curves are detected, the following process is executed for each curved section corresponding to all detected curves to generate the driving path.
[0111] First, in S56, the CPU 51 obtains a start vector that specifies the vehicle's position and direction at the start of the curved section, and an end vector that specifies the vehicle's position and direction at the end of the curved section, respectively, when the vehicle travels along the planned route according to the lane movement pattern selected in S25. The details are the same as in S36 described above, so they are omitted here.
[0112] Next, in S57, the CPU 51 calculates the arc with the largest radius of curvature (maximum arc) 85, which passes through the direction of travel of the start vector 83 and end vector 84 obtained in S36 (i.e., the tangent direction of the arc coincides with the direction of travel of each vector), as shown in Figure 16. Note that the start vector 83 and end vector 84 correspond to the position and direction of the vehicle at the start and end points of the curved section, respectively, when traveling along the planned route. Therefore, the maximum arc 85 also corresponds to the arc with the largest radius of curvature that passes through the start and end points of the curved section in the direction of travel of the vehicle.
[0113] Subsequently, in S58, the CPU 51 calculates the angle bisector 101 of the angle formed by the first line segment connecting the center P of the maximum arc 85 and the starting point of the curve section (start vector 83), and the second line segment connecting the center P of the maximum arc 85 and the ending point of the curve section (end vector 84), as shown in Figure 16.
[0114] Next, in S59, the CPU 51 performs the first half trajectory calculation process (Figure 18), which will be described later. The first half trajectory calculation process generates a recommended trajectory for the curved section, specifically from the starting point of the curved section (starting vector 83) to the midpoint of the curve. The midpoint of the curve is defined as the point where the calculated trajectory intersects the bisector 101. In other words, the first half trajectory is the recommended trajectory for the section from the starting point of the curved section to the bisector 101.
[0115] Next, in S60, the CPU 51 generates the second half of the track 103 by inverting the first half of the track 102 generated in S59 around the bisector 101, as shown in Figure 17. The second half of the track 103 is the track that is recommended to be traveled within the curved section, particularly from the midpoint of the curve to the end of the curved section (end vector 84). In other words, the second half of the track is the track that is recommended to be traveled in the section from the bisector 101 to the end of the curved section.
[0116] Subsequently, in S61, the CPU 51 connects the first half track 102 calculated in S59 and the second half track 103 calculated in S60 to form a single track. As shown in Figure 17, the first half track 102 and the second half track 103 are connected at the midpoint of the curve on the bisector 101. Furthermore, since the curvature of the first half track 102 at the midpoint of the curve is perpendicular to the bisector 101, the curvature of the first half track 102 and the second half track 103 (which is the reverse of the first half track 102) at the midpoint of the curve are the same. That is, the curvature before and after the midpoint of the curve after connection is the same, resulting in a smooth track that can run without stopping at the midpoint of the curve. The starting and ending points of the track coincide with the positions of the starting point (start vector 83) and ending point (end vector 84) of the curved section, and furthermore, the orientation of the starting and ending points 96 of the track also coincides with the direction of travel of the vehicle at the starting and ending points of the curved section (orientation of the starting vector 83 and ending vector 84).
[0117] Subsequently, in S62, the CPU 51 selects the track generated in S61 by connecting the first half track 102 and the second half track 103 as the recommended track for traveling through the curved section. Then, proceeding to S27, the CPU generates a recommended track for traveling along the recommended route derived in S25 for sections other than the curved section. In this embodiment, the first half track 102 from the start of the curved section to the midpoint of the curve and the second half track 103 from the midpoint of the curve to the end of the curved section are aligned with the bisector line 101 as the axis. Symmetry This is the result.
[0118] Next, we will describe the subprocessing of the first half orbit calculation process performed in S59. Figure 18 is a flowchart of the subprocessing program for the first half orbit calculation process.
[0119] In S71, the CPU 51 generates a reference trajectory by combining a clothoid curve and a circular arc trajectory for a predetermined length, under the condition that the maximum value of the lateral acceleration generated during travel and the rate of change per unit time do not exceed the upper limit, as shown in Figure 19. Furthermore, in S72, the endpoint coordinates of the generated reference trajectory are calculated with the starting point of the curved section as the origin. The reference trajectory is the base trajectory for the first half of the trajectory, which is the recommended trajectory to travel from the starting point (start vector 83) of the curved section to the midpoint of the curve. The calculation method for the reference trajectory and the endpoint coordinates of the reference trajectory will be explained below using Figure 19.
[0120] First, the orbital length L of the reference orbit is calculated assuming that the reference orbit consists only of circular arc orbits and does not include clothoid curves (Equation 1). The initial value of K is set to 1.0, and the value of K will be adjusted in S75, described later, during the repeated processing of S71 and S72. Furthermore, the orbital lengths are considered to be the same when the reference orbit consists only of circular arc orbits and when it consists of a combination of clothoid curves and circular arc orbits (regardless of the ratio of the lengths of the clothoid curves and circular arc orbits) (Equation 2). In addition, the orbital length of the clothoid curve portion included in the reference orbit is determined using parameters (Equation 3), and the orbital length of the circular arc portion included in the reference orbit is also determined using parameters (Equation 4). Furthermore, in addition to these expressions, using the maximum value Gr (e.g., 0.2G) of lateral acceleration when traveling along an arc portion included in the reference trajectory, that is, lateral acceleration (lateral G) when traveling along the reference trajectory, the change amount dGr of lateral acceleration per unit time when traveling along a clothoid curve included in the reference trajectory (which does not change when traveling along the arc portion), and the traveling time Tc for traveling along the clothoid curve included in the reference trajectory, a relational expression (Expression 5) between the vehicle speed v of the vehicle and the trajectory length L when traveling along the reference trajectory is calculated, and the vehicle speed v is determined (Expression 6). Note that although Expression 6 uses dGr, it can also be expressed using Tc instead of dGr. Further, the vehicle speed v is defined as the maximum speed at which the vehicle can travel such that the lateral acceleration (lateral G) when traveling along the reference trajectory (particularly the arc portion with curvature radius Rc) does not exceed the upper limit value Gr, provided that the speed is not higher than the speed limit of the road. Here, in the present embodiment, when it is assumed that the vehicle travels at the above-mentioned upper limit speed v, the change amount dGr of lateral acceleration (lateral G) occurring in the vehicle per unit time, which is the same as in the above-mentioned "Method 1", has an upper limit value (e.g., 0.6 m / s 3 ), and the traveling time Tc for traveling along the clothoid curve is not less than a lower limit value (e.g., 3 seconds), the clothoid curve included in the reference trajectory is calculated. Since the relational expression between Tc and dGr is "Tc=Gr / dGr", if the traveling time Tc for traveling along the clothoid curve is set to 3 seconds which is the lower limit value, dGr becomes less than 0.6 m / s 3 this is the case where Gr=0.2 G, the same applies hereinafter). On the other hand, if dGr is set to 0.6 m / s 3 which is the upper limit value, the traveling time Tc for traveling along the clothoid curve becomes larger than the lower limit value of 3 seconds. Therefore, if either dGr=0.6 m / s 3 or Tc=3 seconds is set, all the above conditions can be satisfied. However, dGr does not necessarily need to be set to the upper limit value, and may be set to a value smaller than 0.6 m / s 3 similarly, Tc does not necessarily need to be set to the lower limit value, and may be set to a time longer than 3 seconds. However, if set to the upper limit value or the lower limit value, the clothoid curve portion included in the reference trajectory can be shortened as much as possible. From the velocity v calculated above, the parameters Rc, Lc, and δc can be determined, and further, the endpoint coordinates of the clothoid curve at a unit size are calculated from δc. Then, the size is changed by √(Lc × Rc) to find the endpoint coordinates (xc, yc) of the clothoid curve when the starting point of the curved section is taken as the origin. Furthermore, using the endpoint coordinates of the clothoid curve as a reference, the endpoint coordinates of the circular arc trajectory, i.e., the endpoint coordinates of the reference trajectory, when the starting point of the curved section is taken as the origin, are calculated (Equation 7). The reference trajectory calculated in this embodiment has an upper limit (e.g., 0.2G) on the maximum value of the lateral acceleration generated during travel and the change per unit time (e.g., 0.6m / s²). 3 The trajectory does not exceed the specified limit, and the vehicle's travel time while traveling along the clothoid curve is greater than or equal to the lower limit (e.g., 3 seconds).
[0121] Next, in S73, the CPU 51 compares the endpoint coordinates of the reference trajectory calculated in S72 with the bisector 101 calculated in S58 to determine whether the position of the endpoint of the reference trajectory is within a predetermined distance from the bisector 101. The predetermined distance used as the criterion for determination in S73 is set to a value that is negligibly small compared to the total length of the reference trajectory (i.e., a value that allows the endpoint of the reference trajectory to be considered to lie on the bisector), for example, 1 cm.
[0122] Furthermore, the distance from the endpoint of the reference track in S73 to the bisector 101 may be the shortest distance from the endpoint of the reference track to the bisector 101, but in this embodiment it is calculated as shown in Figure 20. Using Figure 20 as an example, first, the nearest point of tangency T is calculated from the position of the endpoint of the reference track on the bisector 101. Note that the coordinates of the endpoint of the reference track, with the starting point of the curved section as the origin, have been calculated in S72 (Equation 7 in Figure 19). Next, the straight-line distance Dh from the origin (starting point of the curved section) to the nearest point of tangency T is calculated, and the straight-line distance D from the origin to the endpoint of the reference track is also calculated. Note that Dh and D may be distances along the reference track rather than straight-line distances. Then, the difference between Dh and D, |Dh-D|, is considered as the distance from the endpoint of the reference track to the bisector 101, and in S73, it is determined whether |Dh-D| is within a predetermined distance.
[0123] Then, if it is determined that the position of the endpoint of the reference track is within a predetermined distance from the bisector 101 (S73: YES), the current reference track is selected as the first half track, which is the track recommended for travel from the starting point of the curved section (start vector 83) to the midpoint of the curve (S74). Figure 21 shows an example of the first half track 102 that was finally selected in S74. As shown in Figure 21, the first half track 102 consists of a combination of a first clothoid curve 105, which connects the starting point of the circular arc track 106 with the same curvature as the circular arc track 106, from the track that moves in the direction of travel from the starting point of the curved section (start vector 83) in the direction of travel of the vehicle, and the circular arc track 106. Furthermore, the endpoint of the circular arc track 106 lies on the midpoint of the curve on the bisector 101 (in reality, the endpoint of the circular arc track 106 is |Dh-D| away from the bisector 101, but this is sufficiently short compared to the length of the first half of the track 102, so it can be considered to be located on the bisector 101). Subsequently, the process moves to S60, where the second half of the track 103 is generated based on the generated first half of the track 102, and finally, by connecting them, the recommended track for traveling through the curved section is generated (S60-S62).
[0124] Here, the second half of the orbit 103 is the orbit obtained by reversing the first half of the orbit 102 around the bisector 101 as described above (see Figure 17). Therefore, of the first half of the orbit 102 shown in Figure 21, the first cross The portion of clothoid curve 105 that is inverted around the bisector 101 also becomes a clothoid curve. Specifically, it is a second clothoid curve that connects the endpoint of the circular arc track 106, which is inverted around the bisector 101, with the same curvature as the circular arc track, and connects to the endpoint of the curved section (end vector 84) so that the track proceeds in the direction of the vehicle's movement at the endpoint of the curved section. The final running track generated by connecting the first half track 102 and the second half track 103 is a combination of the first clothoid curve 105, the circular arc track (a combination of the circular arc track 106 included in the first half track and the circular arc track inverted around the bisector 101), and the second clothoid curve (a clothoid curve obtained by inverting the first clothoid curve 105 included in the first half track around the bisector 101).
[0125] On the other hand, if it is determined that the position of the endpoint of the reference orbit is not within a predetermined distance from the bisector 101 (S73: NO), the total length of the reference orbit is adjusted using the distance ratio of Dh and D (S75). Specifically, K in (Equation 1) in Figure 19 is changed from the initial value of 1.0 to Dh / D, and the reference orbit and the coordinates of the endpoint of the reference orbit are calculated again according to the procedure shown in Figure 19 (S71, S72). Then, the processes S71 to S73 and S75 are repeated until the position of the endpoint of the reference orbit is within a predetermined distance from the bisector 101.
[0126] Furthermore, in "Method 2" described above, a track combining a clothoid curve and a circular arc track is generated as the recommended track for travel through curved sections. Therefore, the generated track ensures that the vehicle's position and direction are continuous (i.e., the track is a continuous line without interruption and does not bend in the middle), and that any changes in direction are continuous (i.e., the curvature is continuous without jumps). However, it is also possible to use a curve other than a clothoid curve. Even in that case, it is desirable to ensure the continuity of the vehicle's position and direction on the track, and that any changes in direction are continuous. In addition, it is desirable that the radius of curvature Rc of the circular arc track included in the track be as close as possible to the maximum radius of curvature of the largest circular arc that passes through the start and end points of the curved section in the direction of travel of the vehicle. This reduces the burden on the occupants during travel and shortens the travel time.
[0127] As described in detail above, in the navigation device 1 and the computer program executed by the navigation device 1 according to this embodiment, if the planned route the vehicle will travel includes a curve, the start and end points of the curve section are obtained (S36), the maximum arc, which is the arc with the largest radius of curvature that passes through the start and end points of the curve section in the direction of travel of the vehicle, is obtained (S37), a first curve is created that connects the start point of the curve section to the start point of an arc trajectory having the same radius of curvature as the maximum arc, with the same curvature as the arc trajectory, and the end point of the arc trajectory is connected with the same curvature as the arc trajectory, and the curve section The system generates a second curve that connects the first curve to the end point so that the track proceeds in the direction of the vehicle's travel at the end of the curved section (S71-S74), and further generates a combination of the first curve, the circular track, and the second curve as a recommended driving track for the vehicle in the curved section (S59-S62). Based on the generated driving track, the system provides driving assistance for the vehicle (S9, S10). As a result, when driving through a curved section, it is possible to generate a driving track that is not only smooth but also suppresses the maximum value of lateral acceleration and the rate of change per unit time, making it possible to provide appropriate driving assistance that does not burden the vehicle's occupants. Furthermore, the combination of the first curve, the circular arc, and the second curve generates a running track such that the vehicle's position and direction are continuous, as is the change in direction. By creating a smooth running track that includes a clothoid curve, it becomes possible to generate a running track that suppresses the maximum value and the rate of change per unit time of lateral acceleration, making it a recommended running track for vehicles. Furthermore, if the midpoint of the curve is defined as the point where the angle bisector of the angle formed by the first line segment connecting the center of the largest arc and the starting point of the curved section, and the second line segment connecting the center of the largest arc and the ending point of the curved section, intersects with the arc trajectory, the resulting trajectory will consist of the first half of the trajectory from the starting point of the curved section to the midpoint of the curve, and the second half of the trajectory from the midpoint of the curve to the ending point of the curved section, with the angle bisector as the axis. SymmetryTherefore, by calculating the first half of the trajectory, the second half of the trajectory can be easily derived, reducing the processing load associated with calculating the travel trajectory. Furthermore, by combining the first curve and the circular arc trajectory to generate the first half of the trajectory, and then inverting the generated first half trajectory around the bisector axis to generate the second half of the trajectory, and by connecting the first half trajectory and the second half trajectory, the aforementioned running trajectory consisting of the combination of the first curve, the circular arc trajectory and the second curve is generated. Therefore, once the first half trajectory is calculated, the second half trajectory can be easily derived by inverting it around the bisector axis. Furthermore, when generating the first half of the track, a reference track is generated by combining the first curve and a circular arc track of a predetermined length, provided that the maximum lateral acceleration during travel does not exceed the upper limit. The total length of the reference track is then adjusted so that the endpoint of the reference track is within a predetermined distance from the bisector. The adjusted reference track is then generated as the first half of the track. This makes it possible to generate a track that suppresses the maximum lateral acceleration, which is then recommended as the track for vehicle travel. Furthermore, since the first and second curves are generated under the condition that the vehicle's travel time while traveling along the first and second curves is above the lower limit, or that the rate of change in lateral acceleration per unit time during travel does not exceed the upper limit, it becomes possible to generate a travel trajectory that does not force the vehicle to make unnatural steering maneuvers when traveling along curves and suppresses changes in lateral acceleration.
[0128] It should be noted that the present invention is not limited to the embodiments described above, and various improvements and modifications are possible without departing from the spirit of the invention. For example, in this embodiment, as shown in Figure 11, recommended driving trajectories are generated for curves where the road bends in an arc with a predetermined curvature or curves that bend at a predetermined angle, without any branching or changes in the number of lanes. However, if a vehicle is traveling within the same lane, it is acceptable for there to be branching or changes in the number of lanes along the curve. Furthermore, for sections where lanes are interrupted, such as at intersections, it is possible to set up a virtual lane connecting the lanes and similarly generate a driving trajectory for these sections. In addition, for intersections where right or left turns are required, it is possible to set the entry point of the intersection as the start point of the curved section and the exit point of the intersection as the end point of the curved section. Also, for roads without lane divisions (no lane markings), the entire road can be considered as the lane on which the vehicle travels, and a driving trajectory can be generated in the same way.
[0129] In this embodiment, the center line 81 and the moving average line 82 are identified based on map information, and the presence of a curve is identified by comparing the center line 81 and the moving average line 82 (S34, S54). However, the presence of a curve may also be identified by performing image recognition processing on an image captured by an external camera, for example. Alternatively, information on the curvature of the road may be obtained from the map information, and a curve may be detected from the curvature of the road (for example, if there is a range where the curvature of the road is greater than or equal to a threshold, that range may be detected as a curve). Furthermore, information on the curvature of the road and lane markings may not be part of the map information, but may be obtained as information separate from the map information.
[0130] Furthermore, in this embodiment, the change in the lateral acceleration (lateral G) generated in the vehicle per unit time is set to an upper limit (for example, 0.6 m / s²). 3 The clothoid curve is calculated to satisfy both conditions: that it does not exceed 1, and that the travel time while traveling along the clothoid curve is equal to or greater than the lower limit (e.g., 3 seconds). However, only one of these conditions may be used.
[0131] Furthermore, in this embodiment, a combination of the first clothoid curve (first curve), a circular arc track, and the second clothoid curve (second curve) is generated as a recommended track for vehicle travel in curved sections. However, for the first clothoid curve, the starting point of the curved section is... Any curve other than a clothoid curve is acceptable as long as it connects the tracks moving in both directions to the starting point of the circular arc track with the same curvature as the circular arc track. Similarly, for the second clothoid curve, any curve other than a clothoid curve is acceptable as long as it connects to the end point of the circular arc track with the same curvature as the circular arc track and connects to the end point of the curved section so that the track moves in the direction of the vehicle's movement at the end point of the curved section. However, it is desirable that the position and direction of the vehicle traveling on the track be continuous (i.e., the track is a continuous line without interruption and does not bend in the middle), and if the direction changes, the change in direction is continuous (i.e., the curvature is continuous without jumps).
[0132] Furthermore, in this embodiment, vehicle control is performed to drive according to the generated driving trajectory after the trajectory has been generated (S9, S10), but the processing related to vehicle control from S9 onward can be omitted. For example, the navigation device 1 may be a device that guides the user along a recommended driving trajectory without performing vehicle control based on the driving trajectory.
[0133] Furthermore, in this embodiment, lane networks and parking lot networks are generated using high-precision map information 16 and facility information 17 (S23). However, it is also possible to store each network covering roads and parking lots nationwide in advance in a database and read them from the database as needed.
[0134] Furthermore, in this embodiment, the high-precision map information held by the server device 4 includes both information on the road lane shape (road shape and curvature per lane, lane width, etc.) and information on the lane markings drawn on the road (center line of the roadway, lane boundary lines, outer line of the roadway, guidance lines, etc.). However, it may also include only information on lane markings, or only information on the road lane shape. For example, even if only information on lane markings is included, it is possible to estimate information equivalent to information on the road lane shape based on the information on lane markings. Also, even if only information on the road lane shape is included, it is possible to estimate information equivalent to information on lane markings based on the information on the road lane shape. Furthermore, "information on lane markings" may be information that identifies the type and arrangement of the lane markings themselves, information that identifies whether or not lane changes are possible between adjacent lanes, or information that directly or indirectly identifies the shape of the lanes.
[0135] Furthermore, in this embodiment, as a means of reflecting the dynamic trajectory in the static trajectory, a portion of the static trajectory is replaced with the dynamic trajectory (S7). However, instead of replacement, the trajectory may be modified to bring the static trajectory closer to the dynamic trajectory.
[0136] Furthermore, in this embodiment, the vehicle control ECU 40 has been described as controlling all of the vehicle operations related to the vehicle's behavior, namely accelerator operation, brake operation, and steering operation, as an automated driving support system for driving automatically without user operation. However, automated driving support may also be defined as the vehicle control ECU 40 controlling at least one of the vehicle operations related to the vehicle's behavior, namely accelerator operation, brake operation, and steering operation. On the other hand, manual driving by user operation is described as the user performing all of the vehicle operations related to the vehicle's behavior, namely accelerator operation, brake operation, and steering operation.
[0137] Furthermore, the driving assistance of the present invention is not limited to automated driving assistance related to the automated driving of a vehicle. For example, it is also possible to provide driving assistance by displaying the static driving trajectory generated in S3 and the dynamic driving trajectory generated in S6 on the navigation screen, and by providing guidance using voice or screen (e.g., guidance for lane changes, guidance for recommended vehicle speed, etc.). Alternatively, the static driving trajectory and dynamic driving trajectory may be displayed on the navigation screen to assist the user's driving operations. .
[0138] Furthermore, in this embodiment, the navigation device 1 is configured to execute the automated driving support program (Figure 4), but it may also be configured to be executed by an in-vehicle device other than the navigation device 1 or by the vehicle control ECU 40. In that case, the in-vehicle device or the vehicle control ECU 40 is configured to acquire the vehicle's current position, map information, etc., from the navigation device 1 or the server device 4. Moreover, the server device 4 may execute some or all of the steps of the automated driving support program (Figure 4). In that case, the server device 4 corresponds to the driving support device of this application.
[0139] Furthermore, the present invention can be applied not only to navigation devices but also to mobile phones, smartphones, tablet devices, personal computers, etc. (hereinafter referred to as "mobile devices, etc."). It can also be applied to systems consisting of a server and mobile devices, etc. In that case, each step of the above-described automated driving support program (see Figure 4) may be performed by either the server or the mobile devices, etc. However, when applying the present invention to mobile devices, etc., it is necessary that the vehicle capable of performing automated driving support and the mobile devices, etc. are connected in a state where they can communicate (whether wired or wireless). [Explanation of symbols]
[0140] 1...Navigation device (driving assistance device), 2...Driving assistance system, 3...Information distribution center, 4...Server device, 5...Vehicle, 16...High-precision map information, 33...Navigation ECU, 40...Vehicle control ECU, 51...CPU, 81...Centerline, 82...Moving average line, 83...Start vector, 84...End vector, 93,106...Circular arc trajectory, 91,105...First clothoid curve, 92...Second clothoid curve, 101...Bisector, 102...First half trajectory, 103...Second half trajectory
Claims
1. A means for acquiring the planned route on which a vehicle will travel, A curve section acquisition means that uses information about road markings and information about curvature to acquire the start and end points of a curved section when the planned route includes a curve, Arc acquisition means for acquiring the largest arc, which is the arc with the largest radius of curvature that passes through the starting point and the ending point of the curved section in the direction of travel of the vehicle, A track generation means that generates a first curve that connects the starting point of the curved section to the starting point of an arc track having the same radius of curvature as the largest arc, with the same curvature as the arc track, from a track that moves in the direction of the vehicle's travel from the starting point of the curved section, and a second curve that connects to the end point of the arc track with the same curvature as the arc track, and connects to the end point of the curved section so that the track moves in the direction of the vehicle's travel at the end point of the curved section, A track generation means that generates a track in which the combination of the first curve, the circular track, and the second curve is recommended for vehicle travel in the curved section, The vehicle includes a driving support means that provides driving support for the vehicle based on the driving trajectory generated by the driving trajectory generating means, The orbit generation means is A driving assistance device that generates the first curve and the second curve, provided that at least one of the following conditions is met: the travel time of the vehicle while traveling along the first curve and the second curve is greater than or equal to a lower limit, or the change in the amount of acceleration generated laterally during travel per unit time does not exceed an upper limit.
2. A means for acquiring the planned route on which a vehicle will travel, A curve section acquisition means that uses information about road markings and information about curvature to acquire the start and end points of a curved section when the planned route includes a curve, Arc acquisition means for acquiring the largest arc, which is the arc with the largest radius of curvature that passes through the starting point and the ending point of the curved section in the direction of travel of the vehicle, A track generation means that generates a first curve that connects the starting point of the curved section to the starting point of an arc track having the same radius of curvature as the largest arc, with the same curvature as the arc track, from a track that moves in the direction of the vehicle's travel from the starting point of the curved section, and a second curve that connects to the end point of the arc track with the same curvature as the arc track, and connects to the end point of the curved section so that the track moves in the direction of the vehicle's travel at the end point of the curved section, A track generation means that generates a track in which the combination of the first curve, the circular track, and the second curve is recommended for vehicle travel in the curved section, The vehicle includes a driving support means that provides driving support for the vehicle based on the driving trajectory generated by the driving trajectory generating means, When the midpoint of the curve is defined as the point where the angle bisector of the angle formed by the first line segment connecting the center of the largest circular arc and the starting point of the curved section and the second line segment connecting the center of the largest circular arc and the ending point of the curved section intersects with the circular arc trajectory, The trajectory generated by the trajectory generating means is such that the first half of the trajectory, from the starting point of the curved section to the midpoint of the curve, and the second half of the trajectory, from the midpoint of the curve to the end point of the curved section, are symmetrical with respect to the bisector. The aforementioned track trajectory generating means is When generating the first half of the trajectory, a reference trajectory is generated by combining the first curve and the circular arc trajectory for a predetermined length, provided that the lateral acceleration generated during travel does not exceed an upper limit. The total length of the reference track is adjusted so that the position of the endpoint of the reference track is within a predetermined distance from the bisector. A driving support device that generates the adjusted reference track as the first half track.
3. The driving support device according to claim 1, wherein the driving track generating means generates a driving track formed by combining the first curve, the circular arc track, and the second curve such that the driving position and direction of a vehicle traveling on the driving track are continuous, as well as the changes in direction are continuous.
4. The aforementioned track trajectory generating means is After generating the first half of the orbit, the second half of the orbit is generated by inverting the generated first half of the orbit around the bisector axis. The driving support device according to claim 2, which generates the driving track consisting of a combination of the first curve, the circular arc track and the second curve by connecting the first half track and the second half track.
5. Computers, A means for acquiring the planned route on which a vehicle will travel, A curve section acquisition means that uses information about road markings and information about curvature to acquire the start and end points of a curved section when the planned route includes a curve, Arc acquisition means for acquiring the largest arc, which is the arc with the largest radius of curvature that passes through the starting point and the ending point of the curved section in the direction of travel of the vehicle, A track generation means that generates a first curve that connects the starting point of the curved section to the starting point of an arc track having the same radius of curvature as the largest arc, with the same curvature as the arc track, from a track that moves in the direction of the vehicle's travel from the starting point of the curved section, and a second curve that connects to the end point of the arc track with the same curvature as the arc track, and connects to the end point of the curved section so that the track moves in the direction of the vehicle's travel at the end point of the curved section, A track generation means that generates a track in which the combination of the first curve, the circular track, and the second curve is recommended for vehicle travel in the curved section, A driving support means that provides driving support for a vehicle based on the driving trajectory generated by the aforementioned driving trajectory generating means, It is a computer program that makes it function, The orbit generation means is A computer program that generates the first curve and the second curve, provided that at least one of the following conditions is met: the travel time of the vehicle while traveling along the first curve and the second curve is greater than or equal to a lower limit, or the rate of change per unit time of lateral acceleration during travel does not exceed an upper limit.
6. Computers, A means for acquiring the planned route on which a vehicle will travel, A curve section acquisition means that uses information about road markings and information about curvature to acquire the start and end points of a curved section when the planned route includes a curve, Arc acquisition means for acquiring the largest arc, which is the arc with the largest radius of curvature that passes through the starting point and the ending point of the curved section in the direction of travel of the vehicle, A track generation means that generates a first curve that connects the starting point of the curved section to the starting point of an arc track having the same radius of curvature as the largest arc, with the same curvature as the arc track, from a track that moves in the direction of the vehicle's travel from the starting point of the curved section, and a second curve that connects to the end point of the arc track with the same curvature as the arc track, and connects to the end point of the curved section so that the track moves in the direction of the vehicle's travel at the end point of the curved section, A track generation means that generates a track in which the combination of the first curve, the circular track, and the second curve is recommended for vehicle travel in the curved section, A driving support means that provides driving support for a vehicle based on the driving trajectory generated by the aforementioned driving trajectory generating means, It is a computer program that makes it function, When the midpoint of the curve is defined as the point where the angle bisector of the angle formed by the first line segment connecting the center of the largest circular arc and the starting point of the curved section and the second line segment connecting the center of the largest circular arc and the ending point of the curved section intersects with the circular arc trajectory, The trajectory generated by the trajectory generating means is such that the first half of the trajectory, from the starting point of the curved section to the midpoint of the curve, and the second half of the trajectory, from the midpoint of the curve to the end point of the curved section, are symmetrical with respect to the bisector. The aforementioned track trajectory generating means is When generating the first half of the trajectory, a reference trajectory is generated by combining the first curve and the circular arc trajectory for a predetermined length, provided that the lateral acceleration generated during travel does not exceed an upper limit. The total length of the reference track is adjusted so that the position of the endpoint of the reference track is within a predetermined distance from the bisector. A computer program that generates the adjusted reference orbit as the first half orbit.
Citation Information
Patent Citations
Travel control device
JP2017193189A
Travel track correction device and travel track correction method
JP2021075256A
Traveling assistance method and traveling assistance device
JP2022083093A