Autonomous travel system
Patent Information
- Application Number
- JP2023027361
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-02-24
- Publication Date
- 2025-07-04
AI Technical Summary
Existing autonomous vehicle systems struggle to navigate around obstacles near the boundary line between lanes in mining environments, such as fallen rocks, without stopping, which reduces productivity.
An autonomous driving system that adjusts the vehicle's position and speed based on obstacle location, predicts the arrival of other vehicles, and sets avoidance areas to continue traveling using adjacent lanes when necessary, generating avoidance routes to bypass obstacles efficiently.
Enhances productivity by allowing vehicles to avoid obstacles without frequent stops, reducing fuel consumption and operational costs, and improving travel efficiency in mining environments.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to an autonomous driving system. [Background technology]
[0002] Dump trucks (hereinafter referred to as "unmanned vehicles") that travel autonomously without an operator (hereinafter referred to as "driver") on board are known in open-cut mines and the like. In order to increase the transport volume of soil and minerals, which corresponds to the mine's production, the unmanned vehicles responsible for transporting the materials need to increase the distance they travel within their operating hours. However, mines contain obstacles such as mining machines that prepare the road surface and rocks that fall from unmanned vehicles during transport. When an unmanned vehicle detects an obstacle in its travel direction, it can prevent contact with the obstacle by stopping in front of the obstacle. However, stopping the unmanned vehicle reduces production. For this reason, in order to improve production, it is preferable to have the unmanned vehicle avoid the obstacle without stopping.
[0003] Conventionally, a vehicle control device having a function of generating a path to avoid contact between a vehicle and an obstacle is known (see Patent Document 1). The vehicle control device described in Patent Document 1 includes an obstacle identification unit that calculates the distance and relative speed between the vehicle and the obstacle, a path identification unit that selects a driving path for the vehicle based on the distance and the relative speed, and a driving path generation unit that generates a target driving path based on the selected driving path. When an obstacle in the first lane is detected while traveling in the second lane, the path identification unit selects one of a first path in which the vehicle travels in the second lane and passes the obstacle, then heads toward the center of the first lane, a second path in which the vehicle travels from the second lane toward the center of the first lane, travels in the center of the first lane, then heads toward the second lane to avoid the obstacle, and a third path in which the vehicle travels from the second lane toward a driving path closer to the obstacle avoidance direction than the center of the first lane, travels in the driving path closer to the obstacle avoidance direction, and then heads toward the second lane to avoid the obstacle. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent Publication No. 2021-70379 Summary of the Invention [Problem to be solved by the invention]
[0005] In the technology described in Patent Document 1, when an obstacle exists on the boundary line of the lane of the vehicle's driving opposite to the boundary line of the oncoming lane, the obstacle can be avoided by using the vicinity of the boundary line between the lane of the vehicle's driving and the oncoming lane. However, in a mine or the like, when an obstacle such as a rock that has fallen from an unmanned vehicle exists near the boundary line between the lane of the vehicle's driving and the oncoming lane, the technology described in Patent Document 1 cannot be used.
[0006] The present invention aims to provide an autonomous driving system that enables a transport vehicle to continue traveling by avoiding an obstacle when an obstacle is present near the boundary between the travel lane of the transport vehicle and a lane adjacent to the travel lane. [Means for solving the problem]
[0007] According to one aspect of the present invention, an autonomous driving system includes a control device that controls a transport vehicle capable of autonomous driving along a travel route. When an obstacle is located within the travel lane of the transport vehicle, the control device calculates a predicted arrival time, which is a time required for the transport vehicle to reach the position of the obstacle, based on the position of the obstacle and the position and travel speed of the transport vehicle, calculates a predicted position of the other vehicle after the predicted arrival time has elapsed based on the positions and travel speeds of other vehicles existing around the transport vehicle and the predicted arrival time, determines whether the other vehicle is present in the vicinity of the obstacle after the predicted arrival time has elapsed based on the position of the obstacle and the predicted position of the other vehicle, and determines whether the other vehicle is present in the vicinity of the obstacle after the predicted arrival time has elapsed based on the position of the obstacle and the predicted position of the other vehicle. If it is determined that the other vehicle is present near the obstacle after the predicted time has elapsed, the driving lane is set as an avoidance area, and a lane adjacent to the driving lane is not set as an avoidance area; if it is determined that the other vehicle is not present near the obstacle after the arrival predicted time has elapsed, both the driving lane and a lane adjacent to the driving lane are set as avoidance areas, and an avoidance path is generated within the avoidance area as the driving path for the transport vehicle to avoid the obstacle based on the position of the transport vehicle, the position of the obstacle, and the avoidance area. Effect of the Invention
[0008] According to the present invention, an autonomous driving system can be provided that allows a transport vehicle to continue traveling by avoiding an obstacle when an obstacle is present near the boundary between the lane in which the transport vehicle is traveling and a lane adjacent to the traveling lane. [Brief description of the drawings]
[0009] [Figure 1] FIG. 1 is a schematic diagram showing a work site of an open-cut mine, and shows an unmanned vehicle equipped with an autonomous driving system according to a first embodiment. [Diagram 2] FIG. 2 is a diagram showing the configuration of the unmanned vehicle. [Diagram 3] FIG. 3 is a diagram showing the travel route of an unmanned vehicle traveling within a transport path. [Figure 4A]FIG. 4A is a diagram showing an example of a first table of map information. [Figure 4B] FIG. 4B is a diagram showing an example of a second table of map information. [Diagram 5] FIG. 5 is a flowchart showing an example of the flow of obstacle information calculation processing executed by the obstacle information calculation unit. [Figure 6] FIG. 6 is a schematic plan view showing a host vehicle traveling in a driving lane and another vehicle (oncoming vehicle) traveling in an oncoming lane. [Figure 7] FIG. 7 is a flowchart showing an example of a flow of main calculation processing (main flow) of the vehicle control device. [Figure 8] FIG. 8 is a flowchart showing an example of the flow of the avoidance area determination process executed by the avoidance path generation unit. [Figure 9] FIG. 9 is a flowchart showing an example of the flow of the avoidance path generation process executed by the avoidance path generation unit. [Figure 10A] FIG. 10A is a diagram showing spatial distances according to avoidance areas, and shows a case in which a driving lane and an oncoming lane are set as the avoidance areas. [Figure 10B] FIG. 10B is a diagram showing spatial distances according to avoidance areas, and shows a case where only the driving lane is set as the avoidance area. [Figure 11A] FIG. 11A is a diagram showing the movement limit distance according to the avoidance area, and shows a case where the driving lane and the oncoming lane are set as the avoidance area. [Figure 11B] FIG. 11B is a diagram showing the movement limit distance according to the avoidance area, and shows a case where only the driving lane is set as the avoidance area. [Figure 12] FIG. 12 is a schematic diagram showing a work site of an open-cut mine, and shows a control station equipped with an autonomous driving system according to the second embodiment. [Figure 13] FIG. 13 is a diagram showing the configurations of the unmanned vehicle, the mining machine, and the control station. [Figure 14]FIG. 14 is a flowchart showing an example of the flow of a process for determining an avoidance area executed by the control server according to the second embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] The embodiments of the present invention will be described with reference to the drawings. The following description shows specific examples of the contents of the present invention, and the present invention is not limited to these descriptions. Various changes and modifications are possible by those skilled in the art within the scope of the technical ideas disclosed in this specification. In addition, in all the drawings for explaining the present invention, parts having the same functions are given the same reference numerals, and repeated explanations thereof may be omitted.
[0011] First Embodiment An autonomous driving system according to a first embodiment of the present invention will be described with reference to Figs. 1 to 11B. Fig. 1 is a schematic diagram showing a work site of an open-cut mine, and shows an unmanned vehicle 20 equipped with an autonomous driving system according to the first embodiment. As shown in Fig. 1, at the work site of an open-cut mine, one or more mining machines 30 that perform excavation work of earth and sand, ore, etc., loading work of loading the excavated material onto the unmanned vehicle 20, and maintenance work of the transport path 50, etc., and one or more unmanned vehicles 20 that transport cargo such as earth and sand, ore, etc. loaded from the mining machines 30 work together. In the figure, each unmanned vehicle 20 capable of autonomous driving is shown as 20-1, 20-2, ....
[0012] The unmanned vehicle 20 travels within a transport path 50 that is set based on the shape of the work site. The unmanned vehicle 20 is a transport vehicle that can travel autonomously without an operator on board. The unmanned vehicle 20 is, for example, a dump truck equipped with a vehicle body 21 on which a vessel (cargo platform) for carrying cargo is provided, and four wheels 22 provided on the vehicle body 21. Note that in this first embodiment, an example will be described in which all of the unmanned vehicles (dump trucks) 20 present at the work site have the same specifications (for example, the same maximum loading capacity) and the same functions. The mining machine 30 is, for example, a hydraulic excavator equipped with a working device having a boom, an arm, and a bucket, a vehicle body to which the working device is attached, and a crawler provided on the vehicle body.
[0013] The unmanned vehicles 20 are configured to be able to communicate with each other, and the unmanned vehicles 20 and the mining machines 30 are configured to be able to communicate with each other via wireless communication lines 40. Specifically, multiple wireless base stations 41 are installed at the work site, and the unmanned vehicles 20 are configured to transmit and receive information to and from each other via these wireless base stations 41.
[0014] Fig. 2 is a diagram showing the configuration of the unmanned vehicle 20. As shown in Fig. 2, the unmanned vehicle 20 includes, as its hardware configuration, a vehicle control device 100, an external sensor 101, a loading sensor 102, a position sensor 103, a direction sensor 104, a speed sensor 105, a steering angle sensor 106, a travel drive device 107, a storage device 108, and a wireless communication device 109. The autonomous driving system according to the first embodiment includes the vehicle control device 100 and the storage device 108. In the following, the unmanned vehicle 20 that includes this hardware and is the subject of control of the vehicle control device 100 is defined as a host vehicle 20A.
[0015] The wireless communication device 109 is a communication device capable of wireless communication with a wireless base station 41 that constitutes part of the wireless communication line 40, and has a communication interface including a communication antenna sensitive to a band such as the 2.1 GHz band.
[0016] The traveling drive device 107 drives the vehicle body 21 by steering and rotating the wheels 22 based on a traveling control command from the vehicle control device 100. The traveling drive device 107 has, for example, an engine, a generator driven by the engine, a traveling motor (electric motor) that drives the wheels 22 with electric power generated by the generator, a steering device that steers the wheels 22, and a brake device that applies a braking force to the wheels 22.
[0017] The traveling motor accelerates the vehicle body 21 by applying a driving force to the wheels 22. The steering device has a steering motor (electric motor) for changing the steering angle. The brake device includes an electric brake device and a mechanical brake device. The electric brake device is a regenerative brake device that reduces the traveling speed by using regenerative torque generated by the power generation of the traveling motor as a braking force. The mechanical brake device is a friction-type mechanical brake device that can generate a braking force greater than that of the electric brake device. The mechanical brake device is, for example, a disc brake device provided inside the wheels 22, and reduces the traveling speed by using friction force as a braking force.
[0018] The vehicle control device 100 is composed of a computer equipped with a processing device such as a CPU (Central Processing Unit), a volatile memory called a RAM (Random Access Memory), a non-volatile memory such as a ROM (Read Only Memory), an input / output interface, and other peripheral circuits. These hardware components work together to operate software and realize multiple functions. The vehicle control device 100 may be composed of one computer or multiple computers.
[0019] The non-volatile memory stores programs capable of executing various calculations and data required for various calculations (such as thresholds used in the determination process, the vehicle width of the unmanned vehicle 20A, the minimum ground clearance, and the spatial distance between the wheels 22). That is, the non-volatile memory is a storage medium (storage device) capable of reading a program that realizes the functions of this embodiment. The volatile memory is a storage medium (storage device) that temporarily stores the calculation results by the processing device and the signals input from the input / output interface. The processing device is a device that expands the program stored in the non-volatile memory into the volatile memory and executes the calculation, and performs a predetermined calculation process on the data taken in from the input / output interface, the non-volatile memory, and the volatile memory according to the program. The input unit of the input / output interface converts signals input from the various sensors 101 to 106 and the wireless communication device 109 into data that can be calculated by the processing device. In addition, the output unit of the input / output interface generates an output signal according to the calculation result by the processing device, and outputs the signal to the traveling drive device 107, the wireless communication device 109, etc.
[0020] The external sensor 101 is a sensor that recognizes objects around the unmanned vehicle 20. The external sensor 101 measures the relative three-dimensional position between the host vehicle 20A and objects (e.g., obstacles, mining machines 30, and other unmanned vehicles 20) around the host vehicle 20A. The external sensor 101 may also have a function of measuring the distance between the host vehicle 20A and the object based on the measured relative position. The external sensor 101 is, for example, a LIDAR (Light Detection And Ranging) that can measure the relative three-dimensional position between the external sensor 101 and the object using laser light. Note that the external sensor 101 may employ a millimeter wave radar, a stereo camera, or the like.
[0021] The load sensor 102 is for acquiring the load of the host vehicle 20A. The load sensor 102 detects, for example, the load acting on the suspension of the host vehicle 20A or the pressure of hydraulic oil in a hydraulic cylinder (suspension cylinder), and calculates the load of the host vehicle 20A based on the detection result.
[0022] The position sensor 103 is for acquiring the position of the vehicle 20A (position of the vehicle body 21), and the orientation sensor 104 is for acquiring the orientation of the vehicle 20A (direction of the vehicle body 21). The position sensor 103 and the orientation sensor 104 each have, for example, an antenna for multiple GNSS (Global Navigation Satellite System) (hereinafter, referred to as GNSS antenna), and a positioning calculation device that calculates the position of the vehicle body 21 expressed in actual coordinates in a three-dimensional space and an azimuth angle, which is an angle from a reference orientation, based on satellite signals (GNSS radio waves) from multiple positioning satellites received by the GNSS antenna. The position of the vehicle body 21 is expressed, for example, by the position coordinates of the vehicle body 21 in a geographic coordinate system (global coordinate system).
[0023] The position sensor 103 and the orientation sensor 104 may be configured with a single GNSS antenna and a positioning calculation device. In this case, the orientation sensor 104 calculates the orientation angle from the trajectory of the position of the vehicle body 21. The orientation sensor 104 may also include, for example, an IMU (Inertial Measurement Unit) and a calculation device that calculates the orientation angle from the time change of angular acceleration information detected by the IMU.
[0024] The speed sensor 105 is for acquiring the traveling speed V of the host vehicle 20A (movement speed of the vehicle body 21). The speed sensor 105 is, for example, a wheel speed sensor that detects the rotation speed of the wheels 22. Note that the speed sensor 105 may be a device that calculates the speed from the change over time in the position of the vehicle body 21 calculated by the position sensor 103.
[0025] The steering angle sensor 106 is for acquiring the steering angle of the host vehicle 20A. The steering angle sensor 106 is, for example, an angle detection device such as an encoder attached to a steering device.
[0026] The vehicle control device 100 controls the operation of the vehicle 20A. FIG. 3 is a diagram showing a travel route 11 of the unmanned vehicle 20 traveling in a conveying path 50. FIG. 3 shows an example in which the conveying path 50 is composed of only a travel lane 51 on which the unmanned vehicle 20 travels, but the conveying path 50 may also be composed of the travel lane 51 and an oncoming lane 52 (see FIG. 6) adjacent to the travel lane 51. As shown in FIG. 3, the vehicle control device 100 outputs a travel control command to the traveling drive device 107 to make the vehicle 20A travel autonomously along the travel route 11. The travel control command includes a brake operation amount, an accelerator operation amount, and a steering angle operation amount.
[0027] The travel route 11 is specified by a plurality of nodes 12. Information on the plurality of nodes 12 (hereinafter also referred to as map information) is stored in the storage device 108, as described later. The travel route 11 is data indicating a curve in the travel lane 10, and the nodes 12 are data indicating coordinates on the travel route 11. The vehicle control device 100 may autonomously drive the host vehicle 20A so as to minimize the deviation from the travel route 11, or may autonomously drive the host vehicle 20A so as to pass over the nodes 12. In the illustrated example, the travel route 11 is a curve passing through the center of the travel lane 10, but the travel route 11 may be provided at a position shifted to the left or right from the center of the travel lane 10. In the illustrated example, the nodes 12 are arranged at equal intervals on the travel route 11, but may be arranged at unequal intervals.
[0028] 2 is a non-volatile storage medium capable of reading and writing data, and stores an OS (Operating System), various control programs, application programs, databases, etc. The storage device 108 includes a map information storage unit 181. The map information storage unit 181 stores the map information shown in Fig. 4A and Fig. 4B in a table format.
[0029] Fig. 4A is a diagram showing an example of a first table of map information, and Fig. 4B is a diagram showing an example of a second table of map information. As shown in Figs. 4A and 4B, the map information includes information that specifies the node positions, gradients, speed limits, and lane widths that define the travel route 11. Fig. 4A is map information related to a route from a loading point to a loading / unloading point, and Fig. 4B is map information related to a route from a loading / unloading point to a loading point. Note that the first table and the second table are described separately, but the first table and the second table may be provided as a continuous data table.
[0030] When the host vehicle 20A is traveling along a travel route 11 defined by the node positions in the first table (see FIG. 4A), the first table becomes map information related to the travel lane 51, and the second table (see FIG. 4B) becomes map information related to the oncoming lane 52. Hereinafter, another unmanned vehicle 20 traveling in the oncoming lane 52 adjacent to the lane in which the host vehicle 20A is traveling is defined as an oncoming vehicle 20B. In addition, in this specification, control, operation, etc. when the host vehicle 20A is traveling along the travel route 11 defined by the node positions in the first table will be representatively described. Note that when the host vehicle 20A is traveling along a travel route 11 defined by the node positions in the second table (see FIG. 4B), the second table becomes map information related to the travel lane, and the first table (see FIG. 4A) becomes map information related to the oncoming lane.
[0031] The first table defines, for each node, the node ID, node position, speed limit, gradient, and driving lane information. The second table defines, for each node, the node ID, node position, speed limit, gradient, and oncoming lane information.
[0032] The node ID is information for identifying a node, and the node position is information for determining the route shape of the travel route 11. The node position is specified, for example, by the coordinates of a site coordinate system whose coordinate origin is set at the work site. The site coordinate system is a two-dimensional orthogonal coordinate system consisting of X and Y coordinates. The node position may also be specified by the coordinates of a geographic coordinate system. Coordinates of the site coordinate system and the geographic coordinate system can be converted.
[0033] The speed limit of the travel route 11 is determined taking into consideration at least one of the curvature and gradient of the travel route 11. The curvature of the travel route 11 can be calculated as the reciprocal of the radius of a circle having a predetermined number of nodes 12 on its circumference. The curvature of the travel route 11 may also be calculated as the reciprocal of the turning radius of the travel trajectory calculated from the azimuth angle of the vehicle body 21 or the time change in the position of the vehicle body 21 when the unmanned vehicle 20 travels along the travel route 11 in advance, for example, by a manned travel test.
[0034] The gradient of the travel path 11 is the inclination of the travel path 11 with respect to the horizontal direction. The lane information (traveling lane information and oncoming lane information) is data that defines lanes, which are areas in which the unmanned vehicle 20 can travel. At the work site of an open-cut mine, lane forming lines (lane boundary lines, center lines, etc.) for forming lanes, which are strip-shaped areas for traffic on the road, often do not physically exist. For this reason, in this specification, the area in which the unmanned vehicle 20 can travel, which is defined by the lane information stored in the storage device 108, is defined as a lane. Note that the lanes include a traveling lane 51, which is the lane in which the host vehicle 20A travels, and an oncoming lane 52, which is the lane in which the oncoming vehicle 20B travels.
[0035] In this embodiment, when an unmanned vehicle 20 is located at a node 12, the distances DL, DR in the left and right directions perpendicular to the traveling direction of the unmanned vehicle 20 from the node 12 are stored in the map information storage unit 181 as lane information.
[0036] An example of a driving lane 51 will be described with reference to FIG. 3. In this embodiment, a virtual lane forming line 51L on the left side of the driving lane (drivable area) is defined by a distance DL from the node 12 in the left direction. Similarly, a virtual lane forming line 51R on the right side of the driving lane (drivable area) is defined by a distance DR from the node 12 in the right direction. In other words, the lane forming line 51L corresponds to a virtual line connecting points that are a distance DL away from each of the multiple nodes 12 that make up the driving path 11 of the driving lane 51 in the left direction. Similarly, the lane forming line 51R corresponds to a virtual line connecting points that are a distance DR away from each of the multiple nodes 12 that make up the driving path 11 of the driving lane 51 in the right direction. In this embodiment, the right lane forming line 51R functions as a center line that separates the driving lane 51 of the vehicle from the oncoming lane 52 (see FIG. 6). The same applies to the oncoming lane 52 shown in FIG. 6. That is, the lane forming lines 52L, 52R of the oncoming lane 52 are defined by the distances DL, DR, which are oncoming lane information.
[0037] The functions of the vehicle control device 100 will be described in detail with reference to Fig. 2. Fig. 2 shows a functional block diagram of the vehicle control device 100. As shown in Fig. 2, the vehicle control device 100 functions as an obstacle information calculation unit 111, an avoidance path generation unit 112, a control target generation unit 113, and an autonomous driving control unit 114 by the processing device executing a program stored in a non-volatile memory.
[0038] The obstacle information calculation unit 111 detects the presence of an obstacle 90 in the traveling direction of the vehicle 20A based on the detection result of the external sensor 101. The obstacle information calculation unit 111 calculates the position, height, and width of the obstacle as information of the obstacle present in the traveling direction of the vehicle 20A based on the detection result of the external sensor 101. The position of the obstacle includes the position of the center of the obstacle and the positions of the upper, lower, left, and right ends of the obstacle. The height of the obstacle is calculated based on the positions of the upper and lower ends of the obstacle. The width of the obstacle is calculated based on the positions of the left and right ends of the obstacle.
[0039] The avoidance path generating unit 112 generates an avoidance path as a new travel path for avoiding an obstacle based on the information of the obstacle. Note that "generating an avoidance path" means setting a plurality of nodes constituting the avoidance path. The control target generating unit 113 generates control targets including a target speed Vt, which is a target value of the travel speed, and a target steering angle, which is a target value of the steering angle, based on the map information stored in the map information storage unit 181. Note that, when the avoidance path is generated, the control target generating unit 113 generates control targets for driving the host vehicle 20A along the avoidance path. That is, the control target generating unit 113 generates control targets based on the positions of the nodes constituting the avoidance path, ignoring the positions of the nodes in the map information within the range from the start node to the end node of the avoidance path.
[0040] The autonomous driving control unit 114 generates a driving control command based on the control target generated by the control target generation unit 113, the driving speed V acquired by the speed sensor 105, and the steering angle acquired by the steering angle sensor 106. The autonomous driving control unit 114 outputs the generated driving control command to the driving drive device 107. As a result, each unit of the driving drive device 107 is controlled, and the vehicle body 21 travels along the driving route 11 defined by the map information. Note that, when an avoidance route has been generated, the vehicle body 21 travels along the avoidance route as a new driving route.
[0041] The obstacle information calculation process will be described in detail with reference to Fig. 5 and Fig. 6. Fig. 5 is a flowchart showing an example of the flow of the obstacle information calculation process executed by the obstacle information calculation unit 271. The process shown in the flowchart of Fig. 5 is started, for example, when the ignition switch of the host vehicle 20A is turned on and the vehicle control device 100 is started, and is repeatedly executed at a predetermined control period (calculation period).
[0042] As shown in FIG. 5, in step S10, the obstacle information calculation unit 111 acquires map information and sensor information representing the detection result of the external sensor 101 from the map information storage unit 181 of the storage device 108, and proceeds to step S13.
[0043] In step S13, the obstacle information calculation unit 111 detects an obstacle in the traveling direction (forward) of the host vehicle 20A based on the sensor information of the external sensor 101 acquired in step S10. In step S15, the obstacle information calculation unit 111 calculates information on the detected obstacle, that is, the position of the obstacle, and the height and width which are parameters representing the size of the obstacle.
[0044] The details of the calculation process of the obstacle information by the obstacle information calculation unit 111 will be described with reference to FIG. 6. FIG. 6 is a schematic plan view showing the host vehicle 20A traveling on the travel lane 51 and another vehicle (oncoming vehicle) 20B traveling on the oncoming lane 52. The obstacle information calculation unit 111 calculates, for example, a rectangular parallelepiped 91 surrounding an obstacle 90 as shown in FIG. 6. The obstacle information calculation unit 111 calculates the center of the lower base surface of the rectangular parallelepiped 91 as the obstacle position Po, the height of the rectangular parallelepiped 91 from the ground (the height from the lower base surface to the upper base surface of the rectangular parallelepiped 91) as the obstacle height Ho, and the length of the rectangular parallelepiped 91 in the horizontal direction (left-right direction) perpendicular to the travel route 11 as the obstacle width Wo. When the calculation process of the information (position, size) of the obstacle 90 is completed in step S13 shown in FIG. 5, the process proceeds to step S15.
[0045] In step S15, the obstacle information calculation unit 111 determines whether or not the obstacle 90 is within the driving lane (drivable area) 10 based on the information of the obstacle 90 calculated in step S13. If at least a part of the rectangular parallelepiped 91 is present within the driving lane 10 in a planar view, the obstacle information calculation unit 111 determines that the obstacle 90 is within the driving lane 10. If the entire rectangular parallelepiped 91 is not present within the driving lane 10 in a planar view, the obstacle information calculation unit 111 determines that the obstacle 90 is not within the driving lane 10. If it is determined in step S15 that the obstacle 90 is within the driving lane 10, the process proceeds to step S17. If it is determined in step S15 that the obstacle 90 is not within the driving lane 10, the process proceeds to step S19.
[0046] In step S17, the obstacle information calculation unit 111 identifies the node position in the driving lane 10 that is closest to the position Po of the obstacle 90 based on the position Po of the obstacle 90 and the first table of the map information (see FIG. 4A). The obstacle information calculation unit 111 sets the node ID of the identified node position as a driving lane obstacle IDdx. The obstacle information calculation unit 111 identifies the node position in the oncoming lane 52 that is closest to the obstacle position Po based on the position Po of the obstacle 90 and the second table of the map information (see FIG. 4B). The obstacle information calculation unit 111 sets the node ID of the identified node position as an oncoming lane obstacle IDox.
[0047] In step S19, if the driving lane obstacle IDdx and the oncoming lane obstacle IDox have been set, the obstacle information calculation unit 111 cancels these settings.
[0048] When the process of setting the driving lane obstacle IDdx and the oncoming lane obstacle IDox (step S17) or the process of canceling the setting of the driving lane obstacle IDdx and the oncoming lane obstacle IDox (step S19) is completed, the process shown in the flowchart of FIG. 5 in this control cycle ends.
[0049] The avoidance path generation process and the control target generation process will be described in detail with reference to Fig. 7 to Fig. 11B. Fig. 7 is a flowchart showing an example of the flow (main flow) of the main calculation process of the vehicle control device 100. The process shown in the flowchart of Fig. 7 is started, for example, when the ignition switch of the host vehicle 20A is turned on and the vehicle control device 100 is started, and is repeatedly executed at a predetermined control period (calculation period).
[0050] As shown in FIG. 7, in step S20, the avoidance path generating unit 112 judges whether or not the obstacle IDdx of the driving lane and the obstacle IDox of the oncoming lane are set by the obstacle information calculation unit 111. The process of step S20 corresponds to a process of judging whether or not an obstacle 90 is detected ahead of the host vehicle 20A and the detected obstacle 90 is in the driving lane 10. If it is judged that the obstacle IDdx, IDox are set, that is, if it is judged that the obstacle 90 is detected ahead of the host vehicle 20A and the detected obstacle 90 is in the driving lane 10, the process proceeds to step S23. If it is judged in step S20 that the obstacle IDdx, IDox are not set, the process shown in the flowchart of FIG. 7 in this control cycle ends. In other words, if no obstacle 90 is detected ahead of the vehicle 20A, or if it is determined that the detected obstacle 90 is not within the driving lane 10, there is no obstacle with which the vehicle 20A may collide, and therefore the vehicle 20A travels along the driving route 11 based on the map information.
[0051] In step S23, the avoidance path generation unit 112 acquires the position of the host vehicle 20A from the position sensor 103 and acquires the traveling speed V of the host vehicle 20A from the speed sensor 105, and then proceeds to step S26.
[0052] In step S26, the avoidance path generating unit 112 acquires the node position (coordinates) of the driving lane obstacle IDdx set in step S17. The avoidance path generating unit 112 calculates the path (distance) along the driving path 11 from the position of the host vehicle 20A to the node position of the driving lane obstacle IDdx based on the node position of the driving lane obstacle IDdx and the position of the host vehicle 20A acquired in step S23. The avoidance path generating unit 112 calculates the predicted arrival time Ta, which is the time it takes for the host vehicle 20A to reach the node position of the driving lane obstacle IDdx, based on the calculated path (distance) and the driving speed V of the host vehicle 20A acquired in step S23.
[0053] In step S30, the avoidance path generating unit 112 determines an area (avoidance area) of the conveying path 50 that can be used for avoidance based on the predicted arrival time Ta, the positional relationship between the other vehicle 20B and the obstacle 90, the loads of the host vehicle 20A and the other vehicle 20B, and the gradient of the travel route 11, and proceeds to step S60. The details of the avoidance area determination process (step S30) will be described with reference to FIG. 8.
[0054] 8 is a flowchart showing an example of the flow of the avoidance area determination process executed by the avoidance path generation unit 112. In the avoidance area determination process (step S30), first, in step S131, the avoidance path generation unit 112 sets a variable k to 1 and advances the process to step S133. Note that the variable k is a unique number assigned to each unmanned vehicle 20 present at the work site. The variable k is a natural number that is incremented by 1 in step S139, which will be described later. Hereinafter, the unmanned vehicle 20 to which the variable k is assigned will also be referred to as the k-th unmanned vehicle 20.
[0055] An unmanned vehicle 20 at a work site acquires detection information from the position sensor 103 and speed sensor 105 equipped on that unmanned vehicle 20 at a predetermined control period, and transmits it to other unmanned vehicles 20 via the wireless communication line 40. In step S133, the avoidance path generation unit 112 acquires the position Pk and traveling speed Vk of the k-th unmanned vehicle 20 from that unmanned vehicle 20, and proceeds to the process at step S135.
[0056] In step S135, the avoidance path generation unit 112 calculates the travel distance Dk of the k-th unmanned vehicle based on the travel speed Vk acquired in step S133 and the predicted arrival time Ta calculated in step S26 (Dk = Vk · Ta). The avoidance path generation unit 112 calculates the predicted position Pka of the k-th unmanned vehicle 20 at the time when the predicted arrival time Ta has elapsed based on the position Pk of the unmanned vehicle 20 acquired in step S133, the travel path 11 of the unmanned vehicle 20 included in the map information, and the travel distance Dk. The avoidance path generation unit 112 identifies the node position closest to the predicted position Pka, and sets the node ID of the identified node position as the other vehicle predicted position IDk.
[0057] In the next step S137, the avoidance path generating unit 112 determines whether or not the k-th unmanned vehicle 20 is present in the vicinity of the obstacle 90 after the predicted arrival time Ta has elapsed (at the time of elapse) based on the oncoming lane obstacle IDox set in step S17 and the other vehicle predicted position IDk set in step S135. If the oncoming lane obstacle IDox is not present within a predetermined distance Dp from the node position of the other vehicle predicted position IDk, the avoidance path generating unit 112 determines that the k-th unmanned vehicle 20 is not present in the vicinity of the obstacle 90 after the predicted arrival time Ta has elapsed, and proceeds to step S139. If the oncoming lane obstacle IDox is present within a predetermined distance Dp from the node position of the other vehicle predicted position IDk, the avoidance path generating unit 112 determines that the k-th unmanned vehicle 20 is present in the vicinity of the obstacle 90 after the predicted arrival time Ta has elapsed, and proceeds to step S143.
[0058] In step S139, the avoidance path generating unit 112 adds 1 to the variable k and proceeds to step S141. In step S141, the avoidance path generating unit 112 determines whether the variable k is greater than a variable threshold kx. The variable threshold kx corresponds to the total number of unmanned vehicles 20 to which the variable k is assigned in the work site. If it is determined in step S141 that the variable k set in step S139 is equal to or less than the variable threshold kx, the process returns to step S133. Also, if it is determined in step S141 that the variable k set in step S139 is greater than the variable threshold kx, the process proceeds to step S153. Therefore, when the processes of steps S133 to S137 are performed for a certain unmanned vehicle 20 and a negative determination is made in step S137, the processes of steps S133 to S137 are similarly performed for the next unmanned vehicle 20.
[0059] An unmanned vehicle 20 at a work site acquires detection information from a loading sensor 102 equipped on the unmanned vehicle 20 at a predetermined control period, and transmits the information to other unmanned vehicles 20 via the wireless communication line 40. In step S143, the avoidance path generation unit 112 acquires the load amount of the host vehicle 20A from the loading sensor 102, and also acquires the load amount of the k-th unmanned vehicle 20 from the k-th unmanned vehicle 20, and proceeds to step S144. In the processes from step S143 onwards, the k-th unmanned vehicle 20 will also be referred to as the oncoming vehicle 20B for ease of explanation.
[0060] In step S144, the avoidance path generating unit 112 determines the loading state of the host vehicle 20A and the loading state of the oncoming vehicle 20B. When the loading amount of the host vehicle 20A acquired in step S143 is equal to or greater than the loading amount threshold, the avoidance path generating unit 112 determines the loading state of the host vehicle 20A to be a loaded state. When the loading amount of the host vehicle 20A is less than the loading amount threshold, the avoidance path generating unit 112 determines the loading state of the host vehicle 20A to be an unloaded state. Similarly, when the loading amount of the unmanned vehicle 20 acquired in step S143 is equal to or greater than the loading amount threshold, the avoidance path generating unit 112 determines the loading state of the unmanned vehicle 20 to be a loaded state. When the loading amount of the unmanned vehicle 20 is less than the loading amount threshold, the avoidance path generating unit 112 determines the loading state of the unmanned vehicle 20 to be an unloaded state.
[0061] In step S145, the avoidance path generating unit 112 determines whether the load state of the host vehicle 20A is a loaded state and the load state of the oncoming vehicle 20B is an unloaded state. If it is determined in step S145 that the load state of the host vehicle 20A is a loaded state and the load state of the oncoming vehicle 20B is an unloaded state, the process proceeds to step S153. If it is determined in step S145 that at least one of the load state of the host vehicle 20A being an unloaded state and the load state of the oncoming vehicle 20B being a loaded state is satisfied, the process proceeds to step S147.
[0062] Since the specifications of the host vehicle 20A and the oncoming vehicle 20B are the same, if a positive determination is made in step S145, this means that the load capacity of the host vehicle 20A is greater than the load capacity of the oncoming vehicle 20B.
[0063] In step S147, the avoidance path generating unit 112 acquires the gradient of the travel path 11 after the host vehicle 20A has passed the obstacle 90, that is, the gradient of the plurality of nodes 12 constituting the travel path 11 on the rear side of the obstacle 90 as seen from the host vehicle 20A, and proceeds to step S149. The gradients of the plurality of nodes 12 acquired in step S147 are the gradients of the nodes 12 ahead (in the traveling direction) of the host vehicle 20A relative to the travel lane obstacle IDdx, and are the gradients of the nodes 12 that exist within a predetermined acceleration distance Da from the travel lane obstacle IDdx. The acceleration distance Da is determined, for example, by adding a margin value to the distance required to accelerate the vehicle body 21 that has been decelerated by the avoidance operation to the speed limit (see FIG. 4A) defined in the map information.
[0064] In step S149, the avoidance path generating unit 112 determines whether or not the gradients of the multiple nodes 12 acquired in step S147 include a gradient greater than 0 (zero). When the gradients of the multiple nodes 12 acquired in step S147 include a gradient greater than 0 (zero), this means that an uphill gradient exists on the rear side of the obstacle 90 as viewed from the host vehicle 20A and within the acceleration distance Da from the obstacle 90. On the other hand, when the gradients of the multiple nodes 12 acquired in step S147 do not include a gradient greater than 0, this means that an uphill gradient does not exist on the rear side of the obstacle 90 as viewed from the host vehicle 20A and within the acceleration distance Da from the obstacle 90.
[0065] If it is determined in step S149 that the gradients of the multiple nodes 12 acquired in step S147 do not include a gradient greater than 0, the process proceeds to step S151. If it is determined in step S149 that the gradients of the multiple nodes 12 acquired in step S147 include a gradient greater than 0, the process proceeds to step S153.
[0066] The processes from step S143 to step S149 correspond to processes for determining whether the traveling priority of the host vehicle 20A is higher or lower than the traveling priority of the oncoming vehicle 20B. In the present first embodiment, if the determination process of step S145 is negative and the determination process of step S149 is negative, it is determined that the traveling priority of the host vehicle 20A is lower than the traveling priority of the oncoming vehicle 20B, and the process proceeds to step S151. On the other hand, if the determination process of step S145 is positive or if the determination process of step S149 is positive, it is determined that the traveling priority of the host vehicle 20A is higher than the traveling priority of the oncoming vehicle 20B, and the process proceeds to step S153.
[0067] In step S151, the avoidance path generation unit 112 determines only the driving lane 51 as an area that can be used for avoidance (avoidance area). In step S153, the avoidance path generation unit 112 determines the driving lane 51 and the oncoming lane 52 as areas that can be used for avoidance (avoidance area). When the process of determining the avoidance area (step S151 or step S153) is completed, the process shown in the flowchart of FIG. 8 in this control cycle ends.
[0068] As shown in Fig. 7, when the avoidance area determination process (step S30) is completed, the process proceeds to step S60. In step S60, the avoidance path generation unit 112 generates an avoidance path for avoiding the obstacle 90 based on the avoidance area determined in step S30, and the process proceeds to step S90. The details of the avoidance path generation process will be described with reference to Fig. 9.
[0069] 9 is a flowchart showing an example of the flow of the avoidance path generation process executed by the avoidance path generation unit 112. In the avoidance path generation process (step S90), first, in step S161, the avoidance path generation unit 112 determines whether or not two or more obstacles 90 are detected by the external sensor 101 within the avoidance area. If it is determined that two or more obstacles 90 are detected within the avoidance area, the avoidance path generation unit 112 advances the process to step S163. In step S163, the avoidance path generation unit 112 determines to stop the host vehicle 20A without generating an avoidance path, and ends the process shown in the flowchart of FIG. 9 for this control cycle.
[0070] In step S161, if it is determined that two or more obstacles 90 are not detected by the external sensor 101 within the avoidance area, that is, if it is determined that only one obstacle 90 is detected within the avoidance area by the external sensor 101, the process proceeds to step S165.
[0071] In step S165, the avoidance path generating unit 112 calculates spatial distances Ds1, Ds2 on the left and right of the obstacle 90 as viewed from the host vehicle 20A, based on the position Po of the obstacle 90, the width Wo of the obstacle 90, and the avoidance area.
[0072] Spatial distances Ds1 and Ds2 according to the avoidance area will be described with reference to Fig. 10A and Fig. 10B. Fig. 10A and Fig. 10B are diagrams showing spatial distances according to the avoidance area. Fig. 10A shows a case where a driving lane 51 and an oncoming lane 52 are set as the avoidance area, and Fig. 10B shows a case where only the driving lane 51 is set as the avoidance area. In Fig. 10A and Fig. 10B, the avoidance area is typically shown by hatching with diagonal lines.
[0073] 10A and 10B, the spatial distance Ds1 corresponds to the distance from the left end of the obstacle 90 to the left boundary line of the avoidance area (i.e., the lane forming line 51L). As shown in FIG. 10A, when the avoidance area is composed of the driving lane 51 and the oncoming lane 52, the spatial distance Ds2 corresponds to the distance from the right end of the obstacle 90 to the right boundary line of the avoidance area (i.e., the lane forming line 52L). As shown in FIG. 10B, when the avoidance area is composed only of the driving lane 51, the spatial distance Ds2 corresponds to the distance from the right end of the obstacle 90 to the right boundary line of the avoidance area (i.e., the lane forming line 51R).
[0074] Therefore, the value of the spatial distance Ds2 calculated in the process of step S165 in Fig. 9 differs depending on the set avoidance area. When the calculation process of the spatial distances Ds1 and Ds2 (step S165) is completed, the process proceeds to step S167.
[0075] In step S167, the avoidance path generating unit 112 determines whether or not the host vehicle 20A can pass the side of the obstacle 90 without coming into contact with the obstacle 90. In this embodiment, in step S167, the avoidance path generating unit 112 determines whether or not the spatial distances Ds1 and Ds2 calculated in step S165 are equal to or less than the vehicle width Wb of the host vehicle 20A. If the spatial distance Ds1 is equal to or less than the vehicle width Wb and the spatial distance Ds2 is equal to or less than the vehicle width Wb, the avoidance path generating unit 112 determines that the host vehicle 20A cannot pass the side of the obstacle 90 without coming into contact with the obstacle 90, and proceeds to step S173. On the other hand, if at least one of the spatial distances Ds1 and Ds2 is greater than the vehicle width Wb, the avoidance path generating unit 112 determines that the host vehicle 20A can pass the side of the obstacle 90 without coming into contact with the obstacle 90, and proceeds to step S169.
[0076] In step S169, the avoidance path generating unit 112 generates a detour path that passes beside the obstacle 90 based on the position of the host vehicle 20A, the position of the obstacle 90, and the avoidance area. The detour path starts from a node on the travel path 11 in front of the host vehicle 20A and before the obstacle 90, and ends at a node on the travel path 11 in front of the host vehicle 20A and behind the obstacle 90. The avoidance path generating unit 112 generates, as the detour path, a path that passes through the center of the larger of the spatial distances Ds1 and Ds2.
[0077] Note that the method of generating the detour route is not limited to this. For example, the avoidance route generating unit 112 may generate the detour route as follows. When each of the spatial distance Ds1 and the spatial distance Ds2 is greater than the vehicle width Wb, the avoidance route generating unit 112 generates a left detour route that passes through the center of the space on the left side of the obstacle 90, and a right detour route that passes through the center of the space on the right side of the obstacle 90. The avoidance route generating unit 112 selects, from the left detour route and the right detour route, the route that causes the least change in course from the travel route 11 as a detour route that is a candidate for the avoidance route.
[0078] Furthermore, in this embodiment, the detour route is generated so that the center of the vehicle body 21 passes through the center of the space to the side of the obstacle 90 in a plan view. Note that the method of generating the detour route is not limited to this. The detour route may be any route in which the vehicle body 21 passes through the side of the obstacle 90. For this reason, the detour route may be generated, for example, so that a position shifted to the left or right from the center of the vehicle body 21 passes through the center of the space to the side of the obstacle 90 in a plan view.
[0079] When the process of generating the detour route (step S169) is completed, the process proceeds to step S171. In step S171, a first required passing time Tb, which is the time required to pass through the detour route generated in step S169, is calculated. Specifically, the avoidance route generating unit 112 calculates the first required passing time Tb based on the route length L1 from the start point to the end point of the detour route and the traveling speed V of the host vehicle 20A acquired in step S23 (Tb=L1 / V).
[0080] If it is determined that the vehicle 20A cannot pass the side of the obstacle 90 without coming into contact with the obstacle 90 (Yes in step S167), in step S173, the avoidance path generation unit 112 does not generate a detour path and sets an invalid value to the detour travel time.
[0081] When the calculation process of the first required passing time Tb (step S171) or the invalid value setting process of the first required passing time Tb (step S173) is completed, the process proceeds to step S175. In step S175, the avoidance route generating unit 112 determines whether or not the crossing route generation condition is satisfied.
[0082] The crossing route generation condition is met when both of the following (Condition A) and (Condition B) are satisfied, and is not met when at least one of (Condition A) and (Condition B) is not satisfied. (Condition A) The host vehicle 20A can pass above the obstacle 90 without coming into contact with the obstacle 90. (Condition B) The host vehicle 20A can pass above the obstacle 90 without departing from the avoidance area.
[0083] The avoidance path generation unit 112 determines that (Condition A) is satisfied when the spatial distance Dw between the left and right wheels 22 of the vehicle 20A is greater than the width Wo of the obstacle 90 and the minimum ground clearance (road clearance) Cr of the vehicle 20A is greater than the height Ho of the obstacle 90.
[0084] The avoidance path generating unit 112 calculates the shortest distance Do from the travel path 11 to the position Po of the obstacle 90, based on the position Po of the obstacle 90. The avoidance path generating unit 112 calculates a travel limit distance Do0 according to the avoidance area, based on map information (see FIGS. 4A and 4B).
[0085] The travel limit distance Do0 according to the avoidance area will be described with reference to Fig. 11A and Fig. 11B. Fig. 11A and Fig. 11B are diagrams showing the travel limit distance Do0 according to the avoidance area. Fig. 11A shows a case where a driving lane 51 and an oncoming lane 52 are set as the avoidance area, and Fig. 11B shows a case where only the driving lane 51 is set as the avoidance area. In Fig. 11A and Fig. 11B, the avoidance area is typically shown by hatching with oblique lines.
[0086] As shown in FIG. 11A and FIG. 11B, the movement limit distance Do0 corresponds to the maximum distance that the vehicle body 21 can move laterally without departing from the avoidance area. Deviating from the avoidance area refers to a part of the vehicle 20A protruding outside the avoidance area in a plan view. As shown in FIG. 11A, when the avoidance area is composed of a driving lane 51 and an oncoming lane 52, the movement limit distance Do0 is calculated by subtracting, for example, half the vehicle width Wb from the distance Do2 from the driving path 11 of the driving lane 51 to the lane formation line 52L of the oncoming lane 52 (Do0=Do2-Wb / 2). Although not shown, it is preferable to obtain the movement limit distance Do0 by subtracting half the vehicle width Wb from the distance Do2 and further subtracting a predetermined margin value.
[0087] 11B, when the avoidance area is composed of only the driving lane 51, the movement limit distance Do0 is calculated, for example, by subtracting half the vehicle width Wb from the distance Do1 from the driving path 11 of the driving lane 51 to the lane formation line 51R of the driving lane 51 (Do0=Do1-Wb / 2). Although not shown, it is preferable to calculate the movement limit distance Do0 by subtracting half the vehicle width Wb from the distance Do1 and further subtracting a predetermined margin value.
[0088] The avoidance path generating unit 112 determines that (condition B) is satisfied when the shortest distance Do from the position Po of the obstacle 90 to the travel path 11 is equal to or less than the travel limit distance Do0. For example, in the example shown in FIG. 11A, the shortest distance Do is equal to or less than the travel limit distance Do0, so (condition B) is satisfied. The avoidance path generating unit 112 determines that (condition B) is not satisfied when the shortest distance Do from the position Po of the obstacle 90 to the travel path 11 is greater than the travel limit distance Do0. For example, in the example shown in FIG. 11B, the shortest distance Do is greater than the travel limit distance Do0, so (condition B) is not satisfied.
[0089] In step S175 shown in FIG. 9, if it is determined that the crossing route generation condition is met, the process proceeds to step S177, and if it is determined that the crossing route generation condition is not met, the process proceeds to step S187.
[0090] In step S177, the avoidance path generating unit 112 generates a crossing path that is a path that crosses the obstacle 90. The crossing path starts from a node of the travel path 11 in front of the host vehicle 20A and before the obstacle 90, and ends at a node of the travel path 11 in front of the host vehicle 20A and behind the obstacle 90. In this embodiment, the crossing path is generated so that the center of the vehicle body 21 passes directly above the position (center position) Po of the obstacle 90. Note that the method of generating the crossing path is not limited to this. The crossing path may be any path in which the vehicle body 21 passes directly above the obstacle 90. For this reason, the crossing path may be generated so that, for example, a position shifted to the left or right from the center of the vehicle body 21 passes through the position (center position) Po of the obstacle 90.
[0091] When the process of generating the cross-over route (step S177) is completed, the process proceeds to step S179. In step S179, a second required passing time Tc, which is the time required to pass the cross-over route generated in step S177, is calculated. Specifically, the avoidance route generating unit 112 calculates the second required passing time Tc (Tc=L2 / V) based on the route length L2 from the start point to the end point of the cross-over route and the traveling speed V of the host vehicle 20A acquired in step S23.
[0092] When the calculation process of the second required passing time Tc (step S179) is completed, the process proceeds to step S181. In step S181, the avoidance path generating unit 112 judges whether or not an invalid value is set to the first required passing time Tb. If it is judged in step S181 that an invalid value is not set to the first required passing time Tb, the process proceeds to step S183, and if it is judged that an invalid value is set to the first required passing time Tb, the process proceeds to step S185.
[0093] In step S183, the avoidance path generating unit 112 judges whether the first required passing time Tb is greater than the second required passing time Tc. If it is judged in step S183 that the first required passing time Tb is greater than the second required passing time Tc, the process proceeds to step S185, and if it is judged that the first required passing time Tb is equal to or less than the second required passing time Tc, the process proceeds to step S189.
[0094] In step S187, the avoidance path generating unit 112 performs the same process as in step S181. If it is determined in step S187 that an invalid value is not set in the first required passing time Tb, the process proceeds to step S189, and if it is determined that an invalid value is set in the first required passing time Tb, the process proceeds to step S163.
[0095] In step S185, the avoidance path generating unit 112 sets the crossing path generated in step S177 as the avoidance path, and ends the process shown in the flowchart of Fig. 9 for this control cycle. In step S189, the avoidance path generating unit 112 sets the detouring path generated in step S169 as the avoidance path, and ends the process shown in the flowchart of Fig. 9 for this control cycle.
[0096] As shown in FIG. 7, when the avoidance path generation process (step S60) is completed, the process proceeds to step S90. When the avoidance path has been generated, in step S90, the control target generation unit 113 generates a control target (including a target speed Vt and a target steering angle) for driving the vehicle body 21 along the avoidance path. In order to drive the vehicle body 21 along the avoidance path, the control target generation unit 113 sets the target speed Vt of the node between the start point and the end point of the avoidance path to be lower than the speed limit set at the nodes of the start point and the end point of the avoidance path. In addition, the autonomous driving control unit 114 generates a driving control command based on the control target. The generated driving control command is output to the driving drive device 107. As a result, each part of the driving drive device 107 is controlled, and the vehicle body 21 drives along the avoidance path.
[0097] When the crossing path is generated as the avoidance path in step S60, the target speed Vt, which is a target value of the traveling speed of the host vehicle 20A, is set as follows. The control target generating unit 113 reduces the target speed Vt of the host vehicle 20A on the crossing path as the height Ho of the obstacle 90 increases (i.e., as the value obtained by subtracting the height Ho of the obstacle 90 from the minimum ground clearance Cr of the host vehicle 20A decreases). In addition, the control target generating unit 113 reduces the target speed Vt of the host vehicle 20A on the crossing path as the width Wo of the obstacle 90 increases (i.e., as the value obtained by subtracting the width Wo of the obstacle 90 from the spatial distance Dw between the left and right wheels 22 of the host vehicle 20A decreases). By running the vehicle body 21 at a low speed, the path tracking performance of the host vehicle 20A with respect to the avoidance path can be improved. As a result, it is possible to more reliably prevent contact between the host vehicle 20A traveling along the crossing path and the obstacle 90.
[0098] If it is determined that the host vehicle 20A cannot pass either the side or above the obstacle 90 without coming into contact with the obstacle 90 (No in step S175, Yes in S187), an avoidance path is not generated, and it is determined to stop the host vehicle 20A (step S163). In this case, in step S90, the control target generation unit 113 sets the target speed Vt of the node in front of the obstacle 90 as seen from the host vehicle 20A to 0 (zero). In addition, the autonomous traveling control unit 114 generates a traveling control command based on the control target. The generated traveling control command is output to the traveling drive device 107. As a result, each unit of the traveling drive device 107 is controlled, and the host vehicle 20A is stopped in front of the obstacle 90.
[0099] In addition, when an oncoming vehicle 20B is present and the generated avoidance route is a detour route that passes through the oncoming lane 52, the vehicle control device 100 generates an intrusion prohibition command, which is a control command that prohibits the host vehicle 20A from entering an area on the host vehicle 20A side of the end point of the avoidance route (detour route) until the host vehicle 20A reaches the end point of the avoidance route, and transmits the generated intrusion prohibition command to the oncoming vehicle 20B via the wireless communication device 109.
[0100] When the unmanned vehicle 20 (oncoming vehicle 20B) receives the no-entry command, it slows down the traveling speed of the unmanned vehicle 20 (oncoming vehicle 20B) or slows down the unmanned vehicle 20 (oncoming vehicle 20B) so that the unmanned vehicle 20 (oncoming vehicle 20B) does not enter the detour route until the unmanned vehicle 20 (own vehicle 20A) has completed passing through the avoidance route (bypass route).
[0101] -Operation- The operation of the host vehicle 20A when an obstacle 90 is detected ahead of the host vehicle 20A in the travel lane 51 of the host vehicle 20A will be described. When the vehicle control device 100 detects the obstacle 90, it calculates a predicted arrival time Ta. When the vehicle control device 100 determines that an oncoming vehicle 20B does not exist near the obstacle 90 when the predicted arrival time Ta has elapsed, it sets an avoidance area including not only the travel lane 51 but also the oncoming lane 52. This makes it possible to execute an avoidance operation using the oncoming lane 52.
[0102] Even if the vehicle control device 100 determines that the oncoming vehicle 20B is present near the obstacle 90 when the predicted arrival time Ta has elapsed, if the traveling priority of the host vehicle 20A is higher than that of the oncoming vehicle 20B, the vehicle control device 100 sets the traveling lane 51 and the oncoming lane 52 as the avoidance area. In this case, an intrusion prohibition command is output from the host vehicle 20A to the oncoming vehicle 20B, causing the oncoming vehicle 20B to decelerate or stop. This allows the traveling (avoidance) of the host vehicle 20A to be prioritized.
[0103] The fuel consumption when accelerating again in a loaded state is greater than the fuel consumption when accelerating again in an unloaded state. In the case where the loaded state of the vehicle 20A is loaded and the loaded state of the oncoming vehicle 20B is unloaded, if the avoidance area is set only in the driving lane 51 and the traveling of the oncoming vehicle 20B is prioritized, it is not preferable in terms of fuel consumption. In this case, the fuel consumption used by the vehicle 20A to decelerate and re-accelerate is greater than that when the traveling of the vehicle 20A is prioritized and the other vehicle 20B is re-accelerated. As a result, the operating cost increases when viewed from the entire work site. In contrast, in this embodiment, when the loaded state of the vehicle 20A is loaded and the loaded state of the oncoming vehicle 20B is unloaded, the avoidance area is set not only in the driving lane 51 but also in the oncoming lane 52. This makes it possible to reduce the reduction in the traveling speed in the avoidance operation of the vehicle 20A. As a result, it is possible to increase the productivity of the entire work site.
[0104] When an upward gradient exists near the obstacle 90 on the travel route 11 after the host vehicle 20A has avoided the obstacle 90, the fuel consumption of the host vehicle 20A is greater than when there is no upward gradient. This is because re-acceleration on an upward gradient consumes more fuel than re-acceleration on flat ground or a downward gradient. In this embodiment, when an upward gradient exists near the obstacle 90, the avoidance area is widened and the reduction in the travel speed during the avoidance operation of the host vehicle 20A is reduced, thereby improving the productivity of the entire work site.
[0105] When the crossing route generation condition is satisfied, the vehicle control device 100 generates a crossing route. When a detour route is not generated, or when a detour route is generated but the first required passing time Tb is longer than the second required passing time Tc, the vehicle body 21 is caused to travel along the crossing route. This allows the host vehicle 20A to efficiently perform an avoidance operation for the obstacle 90.
[0106] Note that if the space on the left and right sides of the obstacle 90 in the avoidance area is narrow, the detour route is not generated. Also, if the crossing route generation condition is not satisfied, the crossing route is not generated. If neither the crossing route nor the detour route is generated, the vehicle control device 100 stops the host vehicle 20A. Therefore, even if the avoidance route is not generated, it is possible to appropriately prevent contact between the host vehicle 20A and the obstacle 90.
[0107] According to the above-described embodiment, the following advantageous effects are obtained.
[0108] (1) In this embodiment, the autonomous driving system is mounted on an unmanned vehicle (transport vehicle) 20. The autonomous driving system includes a vehicle control device (control device) 100 that controls a host vehicle (transport vehicle) 20A that is capable of autonomous driving along a travel route 11. When an obstacle 90 is located in the travel lane 51 of the host vehicle 20A, the vehicle control device 100 calculates a predicted arrival time Ta, which is the time it takes for the host vehicle 20A to reach the position Po of the obstacle 90, based on the position Po of the obstacle 90, the position P of the host vehicle 20A, and the travel speed V (steps S20, S23, and S26 in FIG. 7).
[0109] The vehicle control device 100 calculates a predicted position Pka of the other vehicle 20B after the predicted arrival time Ta has elapsed based on the position Pk and the traveling speed Vk of the other vehicle 20B around the host vehicle 20A and the predicted arrival time Ta (steps S133 and S135 in FIG. 8). The vehicle control device 100 determines whether the other vehicle 20B is in the vicinity of the obstacle 90 after the predicted arrival time Ta has elapsed based on the position Po of the obstacle 90 and the predicted position Pka of the other vehicle 20B (step S137 in FIG. 8). When it is determined that the other vehicle 20B is in the vicinity of the obstacle 90 after the predicted arrival time Ta has elapsed, the vehicle control device 100 sets the traveling lane 51 as an avoidance area, and does not set the oncoming lane 52, which is a lane adjacent to the traveling lane 51, as an avoidance area (Yes in step S137 in FIG. 8, S151). When it is determined that the other vehicle 20B is not present near the obstacle 90 after the predicted arrival time Ta has elapsed, the vehicle control device 100 sets both the driving lane 51 and the oncoming lane 52 as an avoidance area (No in step S137, S153 in FIG. 8). The vehicle control device 100 generates an avoidance route as a driving route for the host vehicle 20A to avoid the obstacle 90 within the avoidance area based on the position of the host vehicle 20A, the position Po of the obstacle 90, and the avoidance area (step S60 in FIG. 7). The vehicle control device 100 causes the host vehicle 20A to travel along the generated avoidance route (step S90 in FIG. 7).
[0110] Therefore, according to this embodiment, when an obstacle 90 exists near the boundary between the travel lane 51 of the host vehicle 20A and the oncoming lane 52, which is a lane adjacent to the travel lane 51, the host vehicle 20A can continue traveling by avoiding the obstacle 90. As a result, it is possible to improve productivity at the work site compared to a technique that stops the host vehicle 20A when the obstacle 90 exists near the boundary line. Also, when there is no possibility of contact with the oncoming vehicle 20B, an avoidance operation can be performed by using the oncoming lane 52. In this case, since the avoidance operation can be performed while suppressing a decrease in travel speed, the fuel consumption associated with re-acceleration can be suppressed.
[0111] (2) The vehicle control device 100 determines whether or not the host vehicle 20A can pass beside the obstacle 90 without coming into contact with the obstacle 90 based on the position Po of the obstacle 90, the width Wo of the obstacle 90, and the avoidance area (steps S165 and S167 in FIG. 9). The vehicle control device 100 determines whether or not the host vehicle 20A can pass above the obstacle 90 without coming into contact with the obstacle 90 based on the position Po of the obstacle 90, the width Wo and height Ho of the obstacle 90, and the avoidance area (step S175 in FIG. 9).
[0112] When it is determined that the host vehicle 20A cannot pass either the side or above the obstacle 90 without coming into contact with the obstacle 90, the vehicle control device 100 stops the host vehicle 20A in front of the obstacle 90 as viewed from the host vehicle 20A (Yes in S167, No in S175, Yes in S187, S163 in FIG. 9). When it is determined that the host vehicle 20A can pass the side of the obstacle 90 without coming into contact with the obstacle 90, the vehicle control device 100 generates a detour route that passes the side of the obstacle 90 as an avoidance route (No in S167, S169 in FIG. 9). When it is determined that the host vehicle 20A can pass above the obstacle 90 without coming into contact with the obstacle 90, the vehicle control device 100 generates a route that straddles the obstacle 90 as an avoidance route (Yes in S175, S177 in FIG. 9).
[0113] In this configuration, the avoidance operation can be realized by using either the detour route or the crossing route as the avoidance route. Therefore, according to the present embodiment, the frequency of stopping the vehicle 20A can be reduced compared to the technology that generates only the detour route or only the crossing route as the avoidance route. As a result, the productivity at the work site is improved.
[0114] (3) When both the detour route and the crossing route are generated, the vehicle control device 100 calculates a first passing time Tb, which is the time required for the host vehicle 20A to pass through the detour route, and a second passing time Tc, which is the time required for the host vehicle 20A to pass through the crossing route (steps S171 and S179 in FIG. 9). When the first passing time Tb is shorter than the second passing time Tc, the vehicle control device 100 sets the detour route as the avoidance route (step S183 in FIG. 9: No, S189). When the second passing time Tc is shorter than the first passing time Tb, the vehicle control device 100 sets the crossing route as the avoidance route (step S183 in FIG. 9: Yes, S185).
[0115] In this configuration, multiple avoidance routes that can realize the avoidance operation are generated, and the route with the shortest travel time is selected from the multiple avoidance routes. This reduces the travel time of the vehicle 20A, such as transportation time, and improves productivity at the work site.
[0116] (4) The vehicle control device 100 judges whether the travel priority of the host vehicle 20A is higher or lower than the travel priority of the other vehicle 20B (S143 to S149 in FIG. 8). When the vehicle control device 100 judges that the other vehicle 20B is present in the vicinity of the obstacle 90 after the predicted arrival time Ta has elapsed (Yes in S137 in FIG. 8) and judges that the travel priority of the host vehicle 20A is lower than the travel priority of the other vehicle 20B (No in S145 and No in S149 in FIG. 8), the vehicle control device 100 sets the travel lane 51 as an avoidance area and does not set the oncoming lane 52 as an avoidance area (S151 in FIG. 8). If the vehicle control device 100 determines that the other vehicle 20B is present in the vicinity of the obstacle 90 after the predicted arrival time Ta has elapsed (Yes in S137 of FIG. 8) and determines that the driving priority of the host vehicle 20A is higher than the driving priority of the other vehicle 20B (Yes in either S145 or S149 of FIG. 8), it sets both the driving lane 51 and the oncoming lane 52 as avoidance areas (S153 of FIG. 8).
[0117] According to this configuration, under conditions where fuel efficiency is significantly reduced due to deceleration caused by the avoidance operation of the vehicle 20A, the avoidance area is set wide. This makes it possible to suppress deceleration caused by the avoidance operation of the vehicle 20A, thereby suppressing an increase in operating costs and improving productivity.
[0118] (5) When the load of the host vehicle 20A is greater than the load of the oncoming vehicle (other vehicle) 20B, the vehicle control device 100 determines that the travel priority of the host vehicle 20A is higher than the travel priority of the oncoming vehicle 20B (Yes in step S145 in FIG. 8). This configuration makes it possible to suppress an increase in fuel consumption caused by re-acceleration of the host vehicle 20A in a loaded state. As a result, it is possible to increase productivity at the entire work site.
[0119] (6) The vehicle control device 100 acquires information on the gradient of the travel lane 51 of the host vehicle 20A, and determines whether or not an upward gradient exists on the rear side of the obstacle 90 as viewed from the host vehicle 20A and within the acceleration distance (predetermined distance) Da from the obstacle 90 based on the acquired gradient information (S147, S149 in FIG. 8). If it is determined that an upward gradient exists, the vehicle control device 100 determines that the travel priority of the host vehicle 20A is higher than the travel priority of the oncoming vehicle 20B (Yes in S149 in FIG. 8). This configuration makes it possible to suppress an increase in fuel consumption caused by the host vehicle 20A re-accelerating on an upward gradient. As a result, it is possible to increase productivity at the entire work site.
[0120] (7) When the vehicle control device 100 determines that the oncoming vehicle 20B is near the obstacle 90 after the predicted arrival time Ta has elapsed and also determines that the traveling priority of the host vehicle 20A is higher than the traveling priority of the oncoming vehicle 20B, the vehicle control device 100 transmits to the oncoming vehicle 20B an intrusion prohibition command (control command) that prohibits the host vehicle 20A from intruding into an area on the host vehicle 20A side of the end point of the avoidance route until the host vehicle 20A reaches the end point of the avoidance route. According to this configuration, while the host vehicle 20A is performing an avoidance operation using the oncoming lane 52, the oncoming vehicle 20B can be decelerated or stopped. This can reliably prevent contact between the host vehicle 20A performing an avoidance operation and the oncoming vehicle 20B.
[0121] As described above, the vehicle control device 100 according to the first embodiment calculates an avoidance area that can be used by the host vehicle 20A to avoid the obstacle 90, taking into consideration the width of the travel lane 51, the width of the conveying path 50, and the presence or absence of an oncoming vehicle 20B. This realizes an avoidance operation that prevents deviation from the conveying path 50 and contact with the oncoming vehicle 20B. Furthermore, the number of stops of the host vehicle 20A can be reduced, thereby improving the productivity of the work site.
[0122] <Second embodiment> An autonomous driving system according to a second embodiment of the present invention will be described with reference to Figs. 12 to 14. Configurations that are the same as or equivalent to those described in the first embodiment are given the same reference symbols, and differences will be mainly described. In the second embodiment, an example will be described in which an avoidance route is generated in a control station 80 that controls traffic of a plurality of unmanned vehicles 20 and a plurality of mining machines 30 performing work at a work site. The autonomous driving system according to the second embodiment is configured to include a control server 200 in the control station 80.
[0123] FIG. 12 is a schematic diagram showing a work site of an open-cut mine, and shows a control station 80 equipped with an autonomous driving system according to the second embodiment. The control station 80 shown in FIG. 12 is provided near the work site or at a location far away from the work site. The control station 80 is provided with a control server 200 and a communication device 209. The control server 200 aggregates operation information of one or more unmanned vehicles 20 and one or more mining machines 30 via the communication device 209 and the wireless communication line 40, and transmits control signals to the multiple unmanned vehicles 20 based on the aggregated operation information. In this way, the control station 80 aims to improve the productivity of the mine. In the figure, each mining machine 30 is shown as 30-1, 30-2, ...
[0124] Fig. 13 is a diagram showing the configurations of the unmanned vehicle 20, the mining machine 30, and the control station 80. The control server 200 shown in Fig. 13 is configured by a computer including a processing device, a volatile memory, a non-volatile memory, an input / output interface, and other peripheral circuits, similar to the vehicle control device 100 described in the first embodiment. In addition, the communication device 209 has a communication interface capable of communicating with the wireless communication line 40.
[0125] The mining machine 30 includes a machine control device 300, a wireless communication device 309, a storage device 308, a position sensor 303, and a speed sensor 305. The machine control device 300 is configured as a computer including a processing device, a volatile memory, a non-volatile memory, an input / output interface, and other peripheral circuits, similar to the vehicle control device 100. The wireless communication device 309 has a configuration similar to that of the wireless communication device 109, and includes a communication interface capable of communicating with the wireless communication line 40.
[0126] The control station 80, the unmanned vehicle 20, and the mining machine 30 exchange information with each other via a wireless communication line 40. The storage device of the control server 200 stores the same information as the map information stored in the storage device 108B of each unmanned vehicle 20.
[0127] The storage device 108B of the unmanned vehicle 20 has a work information storage unit 182. The work information storage unit 182 stores time and the travel priority (work priority) of the unmanned vehicle 20 in association with each other. The storage device 308 of the mining machine 30 has an operation information storage unit 382. The operation information storage unit 382 stores time and the operation status of the mining machine 30 in association with each other. The operation information includes a "loading status" indicating an operation status in which the mining machine 30 is performing loading work on the unmanned vehicle 20, and a "standby status" indicating an operation status in which the mining machine 30 is not performing loading work on the unmanned vehicle 20.
[0128] The vehicle control device 100B of the unmanned vehicle 20 repeatedly calculates the driving priority at a predetermined control period and stores the calculated driving priority together with the time in the storage device 108B. For example, the vehicle control device 100B calculates the driving priority α by adding together priority parameters α1, α2, α3, and α4 described below (α=α1+α2+α3+α4).
[0129] The vehicle control device 100B determines whether or not each of the following (first condition) to (fourth condition) is satisfied, for example. (First condition) The load state of the host vehicle 20A is an unloaded state, and the mining machine 30 performing work at the end point (destination) of the travel route 11 when the host vehicle 20A is in an unloaded state is in a standby state. (Second condition) The driving operation of the host vehicle 20A is being controlled by an operator (that is, the autonomous driving function is deactivated and the host vehicle 20A is operating as a manned vehicle). (Third condition) The vehicle 20A is in a loaded state. (Fourth condition) An upward gradient exists on the rear side of the obstacle 90 as viewed from the host vehicle 20A and within the acceleration distance Da from the obstacle 90.
[0130] The vehicle control device 100B sets the priority parameter α1 to α10 (for example, 0) when the (first condition) is not satisfied, and sets the priority parameter α1 to α11 when the (first condition) is satisfied. α11 is larger than α10. The vehicle control device 100B sets the priority parameter α2 to α20 (for example, 0) when the (second condition) is not satisfied, and sets the priority parameter α2 to α21 when the (second condition) is satisfied. α21 is larger than α20. The vehicle control device 100B sets the priority parameter α3 to α30 (for example, 0) when the (third condition) is not satisfied, and sets the priority parameter α3 to α31 when the (third condition) is satisfied. α31 is larger than α30. The vehicle control device 100B sets the priority parameter α4 to α40 (for example, 0) when the (fourth condition) is not satisfied, and sets the priority parameter α4 to α41 when the (fourth condition) is satisfied. α41 is larger than α40. Note that α11, α21, α31, and α41 may each be the same value or different values.
[0131] The control server 200 has the same functions as the avoidance route generating unit 112 of the vehicle control device 100 according to the first embodiment. In other words, the control server 200 can be said to be an avoidance route generating device that generates an avoidance route.
[0132] When the vehicle control device 100 of the unmanned vehicle 20 detects an obstacle 90, it calculates obstacle information and transmits the calculation result to the control station 80 via the wireless communication line 40. The control server 200 determines an avoidance area based on the received obstacle information and the operation information of the other unmanned vehicles 20 and the mining machine 30. The control server 200 generates an avoidance path according to the avoidance area, and transmits information on the generated avoidance path to the unmanned vehicle 20 that detected the obstacle 90 via the wireless communication line 40. Hereinafter, the unmanned vehicle 20 that is the target for generating the avoidance path is also referred to as the target vehicle. The target vehicle corresponds to the host vehicle 20A in the first embodiment, and is therefore given the same reference symbol. Also, as in the first embodiment, the unmanned vehicle 20 traveling in the opposite direction to the traveling direction of the target vehicle 20A is referred to as the oncoming vehicle 20B.
[0133] Fig. 14 is a flowchart similar to Fig. 8, showing an example of the flow of the avoidance area determination process executed by the control server 200 according to the second embodiment. In the flowchart of Fig. 14, the processes of steps S142B and S146B are executed instead of the processes of steps S143 to S149 in the flowchart of Fig. 8.
[0134] In step S142B, the control server 200 acquires the travel priority αA of the target vehicle 20A and the travel priority αB of the oncoming vehicle 20B, and proceeds to step S146B.
[0135] In step S146B, the control server 200 judges whether the traveling priority αB of the oncoming vehicle 20B is lower than the traveling priority αA of the target vehicle 20A based on the traveling priority αA, αB of the target vehicle 20A and the oncoming vehicle 20B acquired in step S142B. If it is judged in step S146B that the traveling priority αB of the oncoming vehicle 20B is higher than the traveling priority αA of the target vehicle 20A, the process proceeds to step S151. In this case, the target vehicle 20A is decelerated or stopped, and the oncoming vehicle 20B is allowed to travel with priority. If it is judged in step S146B that the traveling priority αB of the oncoming vehicle 20B is lower than the traveling priority αA of the target vehicle 20A, the process proceeds to step S153. In this case, the oncoming vehicle 20B is decelerated or stopped, and the target vehicle 20A is allowed to travel with priority.
[0136] As described above, the vehicle control device 100B constituting the autonomous driving system according to the second embodiment acquires information on the operating state of the mining machine 30 that loads the loading object onto the host vehicle 20A. The vehicle control device 100B determines whether the loading state of the host vehicle 20A is an unloaded state or a loaded state. When a first condition is satisfied, including that the operating state of the mining machine 30 is a standby state in which no loading work is being performed and the loading state of the host vehicle 20A is an unloaded state, the vehicle control device 100B sets the traveling priority of the host vehicle 20A higher than when the first condition is not satisfied (α1=α11>α10).
[0137] When the mining machine 30 is in a loading state, it will wait for a while even if the host vehicle 20A arrives at the loading location. On the other hand, when the mining machine 30 is in a standby state, loading work onto the host vehicle 20A starts immediately when the host vehicle 20A arrives at the loading location. Therefore, according to the above configuration, by shortening the time that the mining machine 30 is in a standby state, it is possible to improve productivity at the entire work site.
[0138] The vehicle control device 100B determines whether the host vehicle 20A is a manned vehicle or an unmanned vehicle. The autonomous driving function can be deactivated (disabled) by a changeover switch outside the unmanned vehicle 20 and in the driver's cab of the unmanned vehicle 20. When the vehicle control device 100B determines that the host vehicle 20A is a manned vehicle, it sets the driving priority of the host vehicle 20A higher than when the host vehicle 20A is determined to be an unmanned vehicle (α2=α21>α20).
[0139] This reduces the number of times that a manned vehicle needs to decelerate and stop, thereby reducing the operational burden on the operator.
[0140] <Modification of the second embodiment> In the above second embodiment, an example has been described in which the vehicle control device 100B of the unmanned vehicle 20 calculates the traveling priority level α. However, the calculation of the traveling priority level α may be performed by the control server 200. In this case, the control server 200 acquires operation information of each unmanned vehicle 20 from that unmanned vehicle 20, and calculates the traveling priority level α based on the acquired operation information. Based on the traveling priority level α acquired from each unmanned vehicle 20, the control server 200 determines whether the traveling priority level αA of the target vehicle 20A is higher or lower than the traveling priority level αB of the oncoming vehicle 20B.
[0141] The following modified examples are also within the scope of the present invention, and it is possible to combine the configurations shown in the modified examples with the configurations described in the above-mentioned embodiments, to combine the configurations described in the different embodiments above, or to combine the configurations described in the different modified examples below.
[0142] <Variation 1> The configuration and order of the processes executed by the vehicle control device 100 and the control server 200 can be changed as appropriate. For example, the processes of steps S143 to S149 in Fig. 8 and steps S142B and S146B in Fig. 14 may be omitted. Also, only the processes of steps S143 to S145 in Fig. 8 or only the processes of steps S147 and S149 may be omitted.
[0143] <Variation 2> In the second embodiment, an example has been described in which the driving priority level is calculated by adding up the priority level parameters set based on whether the first condition to the fourth condition are satisfied. However, the method of calculating the driving priority level is not limited to this. The driving priority level may be calculated based on whether at least one of the first condition to the fourth condition is satisfied.
[0144] Although the embodiments of the present invention have been described above, the above-mentioned embodiments merely show some of the application examples of the present invention, and it is not intended that the technical scope of the present invention be limited to the specific configurations of the above-mentioned embodiments. [Explanation of symbols]
[0145] 10...travel lane, 11...travel route, 12...node, 20...unmanned vehicle (transport vehicle, dump truck), 20A...own vehicle, target vehicle (unmanned vehicle), 20B...oncoming vehicle, other vehicle (unmanned vehicle), 21...vehicle body, 22...wheel, 30...mining machine, 40...wireless communication line, 50...transport path, 51...travel lane, 51L, 51R...lane forming line, 52...oncoming lane, 52L, 52R...lane forming line, 80...control station, 90...obstacle, 91...rectangular parallelepiped, 100, 100B...vehicle control device (control device), 101...external sensor, 103...position sensor, 104...orientation sensor, 105...speed sensor, 106 ...Steering angle sensor, 107...Travel drive device, 108, 108B...Storage device, 109...Wireless communication device, 111...Obstacle information calculation unit, 112...Avoidance path generation unit, 113...Control target generation unit, 114...Autonomous driving control unit, 181...Map information storage unit, 182...Work information storage unit, 200...Control server (control device), 209...Communication device, 271...Obstacle information calculation unit, 300...Machine control device, 303...Position sensor, 305...Speed sensor, 308...Storage device, 309...Wireless communication device, 382...Operation information storage unit, Ta...Predicted arrival time, Tb...First passing time, Tc...Second passing time
Claims
1. In an autonomous driving system including a control device that controls a transport vehicle capable of autonomous driving along a travel route, the control device, when an obstacle is located within the travel lane of the transport vehicle, calculates a predicted arrival time, which is the time until the transport vehicle reaches the position of the obstacle, based on the position of the obstacle, the position of the transport vehicle, and the traveling speed, calculates a predicted position of the other vehicle after the elapse of the predicted arrival time based on the position and traveling speed of the other vehicle existing around the transport vehicle and the predicted arrival time, determines whether or not the other vehicle will be in the vicinity of the obstacle after the elapse of the predicted arrival time based on the position of the obstacle and the predicted position of the other vehicle, when it is determined that the other vehicle will be in the vicinity of the obstacle after the elapse of the predicted arrival time, sets the travel lane as an avoidance area and does not set the lane adjacent to the travel lane as an avoidance area, when it is determined that the other vehicle will not be in the vicinity of the obstacle after the elapse of the predicted arrival time, sets both the travel lane and the lane adjacent to the travel lane as avoidance areas, generates an avoidance route as the travel route for the transport vehicle to avoid the obstacle within the avoidance area based on the position of the transport vehicle, the position of the obstacle, and the avoidance area, An autonomous driving system characterized by the above.
2. In the autonomous driving system according to Claim 1, the control device, determines whether or not the transport vehicle can pass by the side of the obstacle without contacting the obstacle based on the position of the obstacle, the lateral width of the obstacle, and the avoidance area, determines whether or not the transport vehicle can pass above the obstacle without contacting the obstacle based on the position of the obstacle, the lateral width and height of the obstacle, and the avoidance area, when it is determined that the transport vehicle cannot pass either by the side or above the obstacle without contacting the obstacle, stops the transport vehicle in front of the obstacle as seen from the transport vehicle, when it is determined that the transport vehicle can pass by the side of the obstacle without contacting the obstacle, generates a detour route passing by the side of the obstacle as a candidate for the avoidance route, when it is determined that the transport vehicle can pass above the obstacle without contacting the obstacle, generates a straddle route straddling the obstacle as a candidate for the avoidance route. An autonomous driving system characterized by the following.
3. In the autonomous driving system according to claim 2, the control device when both the detour route and the straddle route are generated, calculates a first passing time required for the transport vehicle to pass through the detour route and a second passing time required for the transport vehicle to pass through the straddle route, when the first passing time is shorter than the second passing time, sets the detour route as the avoidance route, when the second passing time is shorter than the first passing time, sets the straddle route as the avoidance route, An autonomous driving system characterized by the following.
4. In the autonomous driving system according to claim 1, the control device determines whether the driving priority of the transport vehicle is higher or lower than the driving priority of the other vehicle, when it is determined that after the elapse of the arrival prediction time, the other vehicle is present near the obstacle and the driving priority of the transport vehicle is determined to be lower than the driving priority of the other vehicle, sets the driving lane as an avoidance area and does not set the lane adjacent to the driving lane as an avoidance area, when it is determined that after the elapse of the arrival prediction time, the other vehicle is present near the obstacle and the driving priority of the transport vehicle is determined to be higher than the driving priority of the other vehicle, sets both the driving lane and the lane adjacent to the driving lane as avoidance areas, An autonomous driving system characterized by the following.
5. In the autonomous driving system according to claim 4, the control device when the load capacity of the transport vehicle is larger than the load capacity of the other vehicle, determines that the driving priority of the transport vehicle is higher than the driving priority of the other vehicle, An autonomous driving system characterized by the following.
6. In the autonomous driving system according to claim 4, the control device acquires information on the gradient of the driving lane of the transport vehicle, based on the acquired gradient information, determines whether there is an uphill gradient within a predetermined distance from the obstacle on the back side of the obstacle as seen from the transport vehicle, when it is determined that the uphill gradient exists, determines that the driving priority of the transport vehicle is higher than the driving priority of the other vehicle, An autonomous driving system characterized by the following.
7. In the autonomous driving system according to claim 4, the control device acquires information on the operating state of the mining machine that loads the object to be loaded onto the transport vehicle, Determine whether the loading state of the transport vehicle is an empty load state or a loaded state. When the operating state of the mining machine is a standby state where no loading operation is being performed and the loading state of the transport vehicle is the empty load state, set the driving priority of the transport vehicle to be higher than when the condition is not satisfied. An autonomous driving system characterized by the above.
8. In the autonomous driving system according to Claim 4, The control device Determines whether the transport vehicle is a manned vehicle or an unmanned vehicle. When it is determined that the transport vehicle is a manned vehicle, set the driving priority of the transport vehicle to be higher than when it is determined that the transport vehicle is an unmanned vehicle. An autonomous driving system characterized by the above.
9. In the autonomous driving system according to Claim 4, When it is determined that the other vehicle is present in the vicinity of the obstacle after the passage of the arrival prediction time and it is determined that the driving priority of the transport vehicle is higher than the driving priority of the other vehicle, a control command to prohibit the other vehicle from entering the area on the transport vehicle side of the end point of the avoidance route until the transport vehicle reaches the end point of the avoidance route is transmitted to the other vehicle. An autonomous driving system characterized by the above.
10. In the autonomous driving system according to Claim 3, The control device The higher the height of the obstacle, the smaller the target value of the driving speed of the transport vehicle on the straddling route. The larger the width of the obstacle, the smaller the target value of the driving speed of the transport vehicle on the straddling route. An autonomous driving system characterized by the above.