Autonomous driving kit
By receiving abnormal information about the propulsion function through the autonomous driving kit and adjusting the acceleration requirements, the problem of inappropriate reverse driving in existing technologies is solved, and safer autonomous driving operation is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- TOYOTA JIDOSHA KK
- Filing Date
- 2025-11-21
- Publication Date
- 2026-06-09
Smart Images

Figure CN122166125A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to an autonomous driving kit, and more particularly to an autonomous driving kit that issues instructions for autonomous driving. Background Technology
[0002] For example, the vehicle platform described in Japanese Patent Application Publication No. 2024-053730 can be equipped with an autonomous driving kit. Hereinafter, the vehicle platform will be referred to as "VP (Vehicle Platform)". The autonomous driving kit will be referred to as "ADK (Autonomous Driving Kit)". The VP includes a base vehicle and a vehicle control interface box that connects the base vehicle and the autonomous driving system via a communication bus. Hereinafter, the vehicle control interface box will be referred to as "VCIB (Vehicle Control Interface Box)". In this VP, fault diagnosis is performed in various systems such as the braking system and steering system, and fault information is sent to the VCIB. Furthermore, information related to the presence or absence of malfunction, indicated by the fault information, is sent from the VCIB to the ADK. Summary of the Invention
[0003] In Japanese Patent Application Publication No. 2024-053730, there is a signal from the VCIB to the ADK indicating a reduction in functions related to propulsion. For example, refer to section 3.5.2.4 of paragraph
[0172] regarding performance deterioration of the propulsion system. However, since the details of the remaining capacity cannot be obtained from the ADK side, it is difficult to perform retreat driving corresponding to the remaining capacity.
[0004] This disclosure provides an autonomous driving kit capable of appropriately performing reverse driving based on the remaining capacity of the propulsion function.
[0005] The autonomous driving kit disclosed herein issues instructions for autonomous driving and can be attached to and detached from a vehicle configured to perform autonomous driving. The vehicle includes: a vehicle platform; a propulsion unit that propels the vehicle platform according to propulsion instructions from the autonomous driving kit; and a vehicle control interface box that relays control communication between the autonomous driving kit and the propulsion unit. The autonomous driving kit receives exception information from the vehicle control interface box indicating an anomaly in the propulsion function implemented by the propulsion unit. Upon receiving exception information, the kit uses the anomaly indicated by the exception information as a condition that the anomaly requires stopping, and sends an instruction to reverse to the vehicle control interface box.
[0006] Based on this structure, the autonomous driving kit can use an anomaly in the vehicle platform's propulsion function, which necessitates stopping, as a condition to send an instruction to perform reverse maneuvering to the vehicle control interface box. The result is an autonomous driving kit that can appropriately execute reverse maneuvering based on the remaining capacity of the propulsion function.
[0007] Alternatively, the autonomous driving kit, upon receiving abnormal information, sends a required acceleration corresponding to the surrounding conditions of the vehicle platform to the propulsion function unit via the vehicle control interface box, and receives a response from the propulsion function unit corresponding to the required acceleration via the vehicle control interface box. The received response is then used as a further condition to send an instruction for retreating, corresponding to whether the response is appropriate, to the vehicle control interface box.
[0008] According to this structure, when abnormal information is received from the vehicle control interface box, the autonomous driving kit sends a required acceleration corresponding to the conditions around the vehicle platform to the propulsion function unit. The autonomous driving kit can receive the response from the propulsion function unit corresponding to the required acceleration and send an instruction for avoidance driving corresponding to whether the response is appropriate to the vehicle control interface box. As a result, avoidance driving can be performed more appropriately based on the remaining capacity of the propulsion function.
[0009] Alternatively, the required acceleration can be set to increase or maintain the forward speed of the vehicle platform, and the response content can be an indication of whether the propulsion function unit is generating a propulsion force that causes the vehicle platform to accelerate or maintain a constant speed at the required acceleration.
[0010] According to this structure, when abnormal information is received from the vehicle control interface box, the autonomous driving kit sends a required acceleration corresponding to the conditions around the vehicle platform to the propulsion function unit. The sent required acceleration is the acceleration required to increase or maintain the forward speed of the vehicle platform. The autonomous driving kit receives a response indicating whether the propulsion function unit is generating propulsion force to accelerate or maintain a constant speed for the vehicle platform. The autonomous driving kit can then send an instruction for reversing actions corresponding to the appropriateness of the response to the vehicle control interface box. As a result, reversing actions can be performed more appropriately based on the remaining capacity of the propulsion function.
[0011] Alternatively, the vehicle may also have a designated functional unit that performs a different designated function than the propulsion functional unit. The vehicle control interface box also relays the control communication between the autonomous driving kit and the designated functional unit. The autonomous driving kit receives abnormal information indicating an abnormality of the propulsion function implemented by the propulsion functional unit or an abnormality of the designated function implemented by the designated functional unit. Upon receiving abnormal information, the kit takes the condition that the abnormality indicated by the abnormal information is an abnormality requiring a stop and sends a reverse driving instruction corresponding to the content of the abnormality indicated by the abnormal information to the vehicle control interface box.
[0012] According to this structure, the autonomous driving kit can use anomalies in the vehicle platform's propulsion function or specified functions different from propulsion functions as conditions requiring a stop, and send instructions to the vehicle control interface box to perform reverse maneuvers corresponding to the content of the anomaly indicated in the anomaly information. As a result, reverse maneuvers can be performed more appropriately based on the remaining capacity of the propulsion function or specified functions.
[0013] According to this disclosure, an autonomous driving kit can be provided that can appropriately perform reverse driving based on the remaining capacity of the propulsion function. Attached Figure Description
[0014] The features, advantages, and technical and industrial significance of exemplary embodiments of the present invention will now be described with reference to the accompanying drawings, wherein like symbols denote like elements, and wherein: Figure 1 A diagram illustrating an outline of the vehicle involved in an embodiment of this disclosure.
[0015] Figure 2 A diagram illustrating in detail the structures of ADK, VCIB, and VP involved in this embodiment.
[0016] Figure 3 This is a flowchart illustrating the process executed by ADK, VCIB, and each control system in the first embodiment.
[0017] Figure 4 This is a flowchart illustrating the process executed by ADK, VCIB, and each control system in the second embodiment. Detailed Implementation
[0018] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. Identical or equivalent parts in the drawings will be labeled with the same reference numerals and will not be described repeatedly.
[0019] Figure 1 A diagram illustrating the outline of the vehicle 1 according to an embodiment of this disclosure. Figure 2 A diagram illustrating in detail the structures of ADK10, VCIB40, and VP20 involved in this embodiment. (Refer to...) Figure 1 and Figure 2 Vehicle 1 is equipped with ADK10 and VP20. ADK10 is configured to be mounted on VP20 (can be mounted on vehicle 1). ADK10 and VP20 are configured to communicate with each other via VCIB40.
[0020] The VP20 is capable of autonomous driving according to control requirements from the ADK10. Additionally, although... Figure 1 The ADK10 is shown in the position where it is separated from the VP20, but the ADK10 is actually mounted on the roof of the VP20. The ADK10 can also be removed from the VP20. With the ADK10 removed, the VP20 performs driving control in manual mode (manual driving mode) (driving control corresponding to user operation).
[0021] ADK10 includes an Autonomous Driving System (ADS) 11 for autonomous driving of vehicle 1. ADS11, for example, creates a driving plan for vehicle 1. ADS11 outputs various control requirements for making vehicle 1 drive according to the driving plan to VP20 according to the API (Application Program Interface) defined for each control requirement. Furthermore, ADS11 receives various signals representing the vehicle state (the state of VP20) from VP20 according to the API defined for each signal. And, ADS11 reflects the vehicle state in the driving plan.
[0022] VP20 includes a base vehicle 30 and VCIB40. The base vehicle 30 performs various vehicle controls according to control requirements from ADK10 (ADS11). The base vehicle 30 includes various onboard systems and sensors for controlling it. More specifically, the base vehicle 30 includes an integrated control manager 31, a braking system 32, a steering system 33, a powertrain system 34, and an active safety system 35. The base vehicle 30 also includes a body system 36, wheel speed sensors 51 and 52, a pinion angle sensor 53, a camera 54, and radar sensors 55 and 56.
[0023] The integrated control manager 31 includes processors such as a CPU (Central Processing Unit) and memories such as ROM (Read Only Memory) and RAM (Random Access Memory). The integrated control manager 31 performs integrated control over the aforementioned systems (braking system 32, steering system 33, powertrain system 34, active safety system 35, and body system 36) related to the operation of vehicle 1.
[0024] The braking system 32 is configured to control braking devices located at each wheel of the base vehicle 30. The braking devices include, for example, a disc brake system that operates according to hydraulic pressure adjusted by an actuator.
[0025] The braking system 32 is connected to wheel speed sensors 51 and 52. Wheel speed sensors 51 and 52 detect the rotational speeds of the front and rear wheels of the base vehicle 30, respectively, and output the detected rotational speeds to the braking system 32. The braking system 32 outputs the rotational speed of each wheel as one of the information included in the vehicle state to the VCIB 40. Furthermore, the braking system 32 generates braking commands for the braking device based on the prescribed control requirements output from the ADS 11 via the VCIB 40 and the integrated control manager 31. The braking system 32 uses the generated braking commands to control the braking device. Additionally, the integrated control manager 31 can calculate the vehicle speed (vehicle speed) based on the rotational speed of each wheel.
[0026] The steering system 33 is configured to control the steering angle (tire angle) of the steering wheels of the vehicle 1 using a steering device. The steering device includes, for example, a rack and pinion electric power steering (EPS) that can adjust the steering angle via an actuator.
[0027] The steering system 33 is connected to a pinion angle sensor 53. The pinion angle sensor 53 detects the rotation angle (pinion angle) of the pinion connected to the actuator's rotation shaft and outputs the detected pinion angle to the steering system 33. The steering system 33 outputs the pinion angle as one of the pieces of information included in the vehicle's status to the VCIB 40. Furthermore, the steering system 33 generates steering commands for the steering mechanism based on the prescribed control requirements output from the ADS 11 via the VCIB 40 and the integrated control manager 31. The steering system 33 uses the generated steering commands to control the steering mechanism.
[0028] The powertrain 34 controls the vehicle securing systems 341 and 342 and the propulsion system 343. The vehicle securing systems 341 and 342 control an electric parking brake (EPB) located at at least one of the multiple wheels and a parking lock (P-Lock) located at the transmission of the vehicle 1. The gear shifting device is configured to select a gear that controls the propulsion system 343.
[0029] The active safety system 35 uses a camera 54 and radar sensors 55 and 56 to detect obstacles (pedestrians, bicycles, parked vehicles, utility poles, etc.) in front of or behind the vehicle. Based on the distance between the vehicle 1 and the obstacle, and the direction of the vehicle 1's movement, the active safety system 35 determines the likelihood of a collision between the vehicle 1 and the obstacle. If a collision is deemed likely, the active safety system 35 outputs a braking command to the braking system 32 via the integrated control manager 31 to increase the braking force.
[0030] The body system 36 is configured, for example, to control components such as turn signals, hazard warning lights, horn, windshield wipers, headlights, and brake lights based on the driving state or environment of the vehicle 1. The body system 36 controls the aforementioned components according to the prescribed control requirements output from the ADS 11 via the VCIB 40 and the integrated control manager 31.
[0031] VCIB40 is configured to communicate with ADS11 via CAN (Controller Area Network) or similar means. VCIB40 receives various control requests from ADS11 or outputs vehicle status to ADS11 by executing predefined APIs for each signal. When VCIB40 receives a control request from ADK10, it outputs the corresponding control command to the system corresponding to that control command via the integrated control manager 31. Furthermore, VCIB40 obtains various information about the base vehicle 30 from various systems via the integrated control manager 31 and outputs the status of the base vehicle 30 as vehicle status to ADS11.
[0032] In addition, vehicle 1 can be used as a component of a MaaS (Mobility as a Service) system. Besides vehicle 1, a MaaS system may also include, for example, a data server and a Mobility Service Platform (MSPF).
[0033] MSPF refers to a unified platform that connects various mobility services. MSPF connects mobility services related to autonomous driving. In addition to autonomous driving-related mobility services, MSPF can also connect mobility services provided by ride-sharing operators, car-sharing operators, car rental operators, taxi operators, insurance companies, and others.
[0034] Vehicle 1 also has a Data Communication Module (DCM) capable of wirelessly communicating with a data server. The DCM outputs vehicle information such as speed, location, and autonomous driving status to the data server. In addition, the DCM receives various data from the mobility services via MSPF and the data server, such as data used to manage the driving of autonomous vehicles including Vehicle 1 in autonomous driving-related mobility services.
[0035] MSPF exposes APIs for various vehicle status and control data required for ADS11 development. Various mobility services can use these exposed APIs and leverage the functionalities provided by MSPF based on their service content. For example, autonomous driving-related mobility services can use these exposed APIs to obtain driving control data for vehicle 1, information stored in a data server, etc., from MSPF. Furthermore, autonomous driving-related mobility services can use these APIs to send data to MSPF for managing autonomous vehicles, including vehicle 1.
[0036] ADS11 includes a computer 111, an HMI (Human Machine Interface) 112, a recognition sensor 113, an attitude sensor 114, and a sensor cleaner 115.
[0037] Computer 111 includes a processor 101 such as a CPU and a memory 102 such as ROM and RAM. Memory 102 stores programs that can be executed by the processor 101. During autonomous driving of vehicle 1, computer 111 uses various sensors (described later) to acquire information about the environment of vehicle 1, as well as the attitude, operating status, and position of vehicle 1. Simultaneously, computer 111 obtains the vehicle status from VP20 via VCIB40 and sets the next actions of vehicle 1 (acceleration, deceleration, turning, etc.). Computer 111 outputs various instructions to VCIB40 to implement the next actions. Computer 111 also includes communication modules 111A and 111B. Communication modules 111A and 111B are configured to communicate with VCIB40.
[0038] HMI112 provides information to the user or accepts user operations during autonomous driving, manual driving requiring user intervention, and transitions between autonomous driving and manual driving requiring user intervention. HMI112 includes, for example, input / output devices such as a touch panel display installed on the base vehicle 30.
[0039] The identification sensor 113 is a sensor used to identify the environment of the vehicle 1. The identification sensor 113 includes at least one of, for example, LIDAR (Laster Imaging Detection and Ranging), millimeter-wave radar, and a camera. The LIDAR, for example, emits a laser pulsed with infrared light and measures the distance and direction of an object by detecting the reflected light from the object. The millimeter-wave radar emits millimeter waves and measures the distance and direction of an object by detecting the reflected waves from the object. The camera, for example, is positioned on the back side of a rearview mirror inside the vehicle and captures images of the area in front of the vehicle 1.
[0040] Attitude sensor 114 is a sensor used to detect the attitude, behavior, and position of vehicle 1. Attitude sensor 114 includes, for example, an IMU (Inertial Measurement Unit) and a GPS (Global Positioning System). The IMU detects, for example, the acceleration of vehicle 1 in the forward, left, right, and up directions, and the angular velocities of vehicle 1 in the roll, pitch, and yaw directions. The GPS uses information received from multiple GPS satellites orbiting the Earth to detect the position of vehicle 1.
[0041] The sensor cleaner 115 is configured to use cleaning fluid, windshield wipers, etc. to remove dirt that adheres to the various sensors (camera lenses, laser irradiation parts, etc.) during the driving of the vehicle 1.
[0042] VCIB40 includes a main VCIB41 and a secondary VCIB42. VCIB41 and 42 each include processors such as a CPU 411 and 421, and memories such as ROM and RAM 412 and 422, respectively. Memories 412 and 422 store programs executable by processors 411 and 421, and data processed by those programs. The main VCIB41 and communication module 111A are connected to each other via communication bus 43 (main bus) in a communicable manner. The secondary VCIB42 and communication module 111B are connected to each other via communication bus 44 (secondary bus) in a communicable manner. Furthermore, the main VCIB41 and secondary VCIB42 are connected to each other in a communicable manner.
[0043] VCIB41 and 42 relay control requests and vehicle information between ADS11 and VP20, respectively. VCIB41 and 42 connect the base vehicle 30 and ADS11 via communication buses 43 and 44. VCIB41 and 42 use API and generate control commands based on control requests from ADS11.
[0044] Control commands corresponding to the control requests provided from ADS11 to VCIB40 include, for example, directional control commands, stationary control commands, acceleration commands, tire angle commands, autonomous control commands, and stop commands. The directional control command requests gear shifting. The stationary control command requests the activation / deactivation of the EPB and P-Lock devices. The acceleration command requests acceleration or deceleration of vehicle 1. The tire angle command requests the tire angle of the steering wheels. The autonomous control command requests switching between Autonomous mode and Manual mode. The stop command requests the vehicle's parking hold or its deactivation.
[0045] Furthermore, VCIB41 and 42 output the generated control commands to the corresponding systems among the multiple systems included in VP20. In addition, VCIB41 and 42 use the API and generate information representing the vehicle status based on vehicle information from each system in VP20. This information representing the vehicle status can be the same as the vehicle information itself, or it can be information extracted from the vehicle information used in the processing to be executed in ADS11. VCIB41 and 42 output the generated vehicle status information to ADS11.
[0046] Braking system 32 includes braking systems 321 and 322. Steering system 33 includes steering systems 331 and 332. Powertrain system 34 includes vehicle fixing system 340 and propulsion system 343. Vehicle fixing system 340 includes vehicle fixing systems 341 and 342.
[0047] Although VCIB41 and 42 have essentially the same function, their connection destinations to the onboard systems included in VP20 differ. Specifically, the main VCIB41, braking system 321, steering system 331, vehicle anchoring systems 341 and 342, propulsion system 343, and body system 36 are connected to each other via a communication bus in a manner capable of communication. The auxiliary VCIB42, braking system 322, steering system 332, and vehicle anchoring systems 341 and 342 are also connected to each other via a communication bus in a manner capable of communication.
[0048] In this way, for some system actions (braking, steering, etc.), VCIB40 includes VCIB41 and 42 with equivalent functions, thus redundancy is achieved between the control systems of ADS11 and VP20. Therefore, in the event of a failure in the system, the function of VP20 can be maintained by appropriately switching the control system or disconnecting the failed control system.
[0049] Braking systems 321 and 322 each include processors 3211 and 3221 (e.g., CPU) and memories 3212 and 3222 (e.g., ROM and RAM). Braking systems 321 and 322 are configured to control the braking device. Braking systems 321 and 322 generate braking commands for the braking device according to control requirements output from ADS11 via VCIB41 and 42. Braking systems 321 and 322 may also have equivalent functions. Alternatively, one of the braking systems 321 and 322 may be configured to independently control the braking force of each wheel, while the other is configured to control the wheel in a manner that generates the same braking force. For example, braking systems 321 and 322 use braking commands generated by either braking system to control the braking device. Furthermore, in the event of an malfunction in one braking system, braking systems 321 and 322 may also use braking commands generated by the other braking system to control the braking device.
[0050] Steering systems 331 and 332 each include processors 3311 and 3321 (e.g., CPU) and memories 3312 and 3322 (e.g., ROM and RAM). Steering systems 331 and 332 are configured to control the steering angle of the steering wheels of vehicle 1 using a steering mechanism. Each steering system 331 and 332 generates steering commands for the steering mechanism according to control requirements output from ADS11 via VCIB41 and 42. Steering systems 331 and 332 may also have equivalent functions. Alternatively, steering systems 331 and 332 may, for example, use steering commands generated by either steering system to control the steering mechanism. Furthermore, in the event of an malfunction in one steering system, steering systems 331 and 332 may also use steering commands generated by the other steering system to control the steering mechanism.
[0051] Vehicle securing systems 341 and 342 respectively include processors 3411 and 3421 (CPU, etc.) and memories 3412 and 3422 (ROM, RAM, etc.). Vehicle securing systems 341 and 342 control the EPB and P-Lock device according to control requirements output from ADS11 via VCIB41 and 42. The EPB is installed separately from the braking device (disc brake system, etc.) and secures the wheels by the action of an actuator. For example, the EPB uses an actuator to activate a drum brake used for parking brakes installed on a portion of the multiple wheels to secure the wheels. Alternatively, the EPB uses an actuator, different from the braking systems 321 and 322, capable of adjusting the hydraulic pressure supplied to the braking device to activate the braking device to secure the wheels. Vehicle securing systems 341 and 342 have a brake holding function and are configured to switch the operation and release of brake holding.
[0052] The vehicle securing systems 341 and 342 activate the P-Lock device, for example, when the control requirement includes setting the shift gear to parking (P). Furthermore, the vehicle securing systems 341 and 342 deactivate the P-Lock device when the control requirement includes anything other than setting the shift gear to P. The P-Lock device engages the protrusion at the tip of the parking lock pawl, whose position can be adjusted by an actuator, with the teeth of a gear (locking gear) connected to a rotating element within the transmission of vehicle 1. This fixes the rotation of the transmission output shaft, thereby securing the wheels.
[0053] The propulsion system 343 includes a processor 3431 (such as a CPU) and a memory 3432 (such as ROM and RAM). The propulsion system 343 includes a steering control system and a propulsion system. The steering control system is connected to the VCIB 40. According to the control requirements output from the ADS 11 via the VCIB 41, the steering control system controls the direction of travel (forward or backward) of the VP20 by switching the gears of the shifting device. In addition to the P gear and neutral (N gear), the shifting gears include a forward driving gear (D gear) and a reverse driving gear (R gear). The propulsion system is connected to the VCIB 40. The propulsion system controls the propulsion force (e.g., acceleration and deceleration) of the VP20 by controlling the driving force from the drive source (electric generator, engine, etc.).
[0054] The active safety system 35 includes a processor 351 such as a CPU and a memory 352 such as ROM and RAM. The active safety system 35 is connected to the braking system 321 in a communicative manner. As described above, the active safety system 35 uses a camera 54 and / or a radar sensor 55 to detect obstacles ahead, and if it determines that there is a possibility of collision, it outputs a braking command to the braking system 321 to increase the braking force.
[0055] The body system 36 includes a processor 361 such as a CPU and a memory 362 such as ROM and RAM. The body system 36 controls components such as the steering indicator, horn, and wipers according to the control requirements output from the ADS11 via the VCIB41.
[0056] In vehicle 1, autonomous driving is performed, for example, when the user selects the autonomous mode (automatic driving mode) through operation of HMI 112. As mentioned above, during autonomous driving, ADS 11 first creates a driving plan. Examples of driving plans include a plan to continue in a straight line, a plan to turn left / right at a pre-defined intersection in the middle of a predetermined driving path, and a plan to change driving lanes. ADS 11 calculates the controllable physical quantities (acceleration, deceleration, maximum tire swerve, etc.) required for vehicle 1 to operate according to the created driving plan. ADS 11 segments the physical quantities for each execution cycle of the API. ADS 11 uses the API to output control requirements representing the segmented physical quantities to VCIB 40. Furthermore, ADS 11 obtains the vehicle state (the actual direction of movement of vehicle 1, the stationary state of the vehicle, etc.) from VP 20 and recreates a driving plan reflecting the obtained vehicle state. By employing this method, ADS 11 is able to perform autonomous driving of vehicle 1.
[0057] In the aforementioned VP20, fault diagnosis is performed on various systems such as braking systems 321 and 322 and steering systems 331 and 332, and fault information is sent to VCIB41 and 42. Furthermore, information related to the presence or absence of malfunction, as indicated by the fault information, is sent from VCIB41 and 42 to ADK10.
[0058] Previously, in VP20, there were signals from VCIB41 and 42 to ADK10 indicating a reduction in propulsion-related functions. However, since the ADK10 could not obtain detailed information about the remaining capacity, it was difficult to perform appropriate retreat maneuvers corresponding to the remaining capacity.
[0059] Therefore, ADK10 receives exception information from VCIB41 and 42 indicating an anomaly in the propulsion function implemented by propulsion system 343. Upon receiving the exception information, ADK10 sends an instruction to VCIB41 and 42 to perform reverse driving, taking as a condition that the exception indicated by the exception information is an exception requiring a stop.
[0060] Therefore, ADK10 can use the abnormality of VP20's propulsion function as a condition that requires stopping, and send an instruction to perform reverse driving to VCIB41 and 42. As a result, reverse driving can be performed appropriately based on the remaining capacity of the propulsion function.
[0061] First Implementation Method Figure 3 This is a flowchart illustrating the processing flow performed by ADK10, VCIB41, 42, and each control system of the first embodiment. (Refer to...) Figure 3 Each control system process is invoked and executed from the higher-level process at predetermined intervals via the processor of the control system of the base vehicle 30. The processor of the control system of the base vehicle 30 may be, for example, processor 3431 of the propulsion system 343, and processors 3211 and 3221 of the braking systems 321 and 322. Alternatively, the processor of the control system of the base vehicle 30 may be, for example, processors 3311 and 3321 of the steering systems 331 and 332, and processors 3411 and 3421 of the vehicle fixing systems 341 and 342. VCIB processing is invoked and executed from the higher-level process at predetermined intervals via processor 411 of VCIB41 and processor 421 of VCIB42. ADK processing is invoked and executed from the higher-level process at predetermined intervals via processor 101 of the computer 111 of ADS11.
[0062] In the base vehicle 30, the processors of each control system monitor the abnormal state of the base vehicle 30 and detect abnormalities (S311). If an abnormality is detected ("yes" in S311), the processors of each control system classify the detected abnormality into any one of the propulsion system, steering system, braking system, and others. Furthermore, the processors of each control system send the abnormality classification and abnormality status, etc., to VCIB41 and 42 (S312).
[0063] Propulsion system malfunctions include, for example, engine and motor malfunctions. Steering system malfunctions include, for example, steering malfunctions. Braking system malfunctions include, for example, brake malfunctions and ABS malfunctions. Other malfunctions include those requiring maintenance at a repair shop or at home, as well as other malfunctions. Malfunctions requiring maintenance at a repair shop include, for example, malfunctions requiring maintenance every specified distance (specifically, 5000 km, etc.). Alternatively, malfunctions requiring maintenance at a repair shop include, for example, malfunctions requiring maintenance of cameras 54 or radar sensors 55, 56 due to dirt, etc., and malfunctions of systems used before the vehicle moves, such as smart entry. Other malfunctions include, for example, airbag malfunctions.
[0064] If it is determined that no abnormality was detected (no in S311), or after S312, the processor of each control system will return the processing executed to the higher-level processing of the calling source of each control system.
[0065] In VCIB41 and 42, processors 411 and 421 determine whether abnormal content has been received from each control system (S411). If it is determined that abnormal content has been received (yes in S411), processors 411 and 421 determine whether the abnormality indicated by the received abnormal content is an abnormality that needs to be notified to ADK10 (S412). Abnormalities that need to be notified include, for example, abnormalities of the propulsion system, abnormalities of the steering system, abnormalities of the braking system, abnormalities requiring relocation to a maintenance location, and abnormalities of the airbags.
[0066] If the exception is determined to be one that needs to be notified to ADK10 (yes in S412), processors 411 and 421 send the exception content to ADK10 (S413). If the exception content is not received (no in S411), or if the exception is not one that needs to be notified to ADK10 (no in S412), processors 411 and 421 return the executed processing to the parent process of the calling source of the VCIB process. Alternatively, after S413, processors 411 and 421 return the executed processing to the parent process of the calling source of the VCIB process.
[0067] In ADK10, the processor 101 of the computer 111 of ADS11 determines whether abnormal content has been received from VCIB41 and 42 using communication modules 111A and 111B (S111). If it is determined that abnormal content has been received (yes in S111), the processor 101 determines whether the abnormality indicated by the received abnormal content is an abnormality that requires safe stopping (S112). Anomalies that require safe stopping include, for example, abnormalities of the propulsion system, abnormalities of the steering system, abnormalities of the braking system, and some other abnormalities (e.g., airbag abnormalities, etc., safety-related abnormalities).
[0068] If an abnormality is determined to require a safe stop (yes in S112), the processor 101 determines whether the abnormality indicated in the received abnormality content is a "driving" abnormality, i.e., a propulsion system abnormality (S121). If an abnormality is determined to be a "driving" abnormality (yes in S121), the processor 101 controls the communication modules 111A and 111B by sending a reverse driving instruction to VCIB41 and 42 (S124). The reverse driving instruction here is, for example, an instruction to stop on a nearby shoulder.
[0069] If the error is determined not to be a "driving" error (no in S121), the processor 101 determines whether the error indicated in the received error message is a "turning" error, i.e., a steering system error (S131). If the error is determined to be a "turning" error (yes in S131), the processor 101 controls the communication modules 111A and 111B by sending a reverse driving instruction to VCIB41 and 42 (S132). The reverse driving instruction here is, for example, an instruction to drive to the next service area (SA) or a nearby place where parking is possible and stop.
[0070] If the error is determined not to be a "turning" error (no in S131), the processor 101 determines whether the error indicated in the received error message is a "stopping" error, i.e., a braking system error (S141). If the error is determined to be a "stopping" error (yes in S141), the processor 101 controls the communication modules 111A and 111B by sending a reverse driving instruction to VCIB41 and 42 (S142). This reverse driving instruction is, for example, an instruction to increase the distance between the vehicle and the driver to drive to the next service area (SA) or a nearby place where parking is possible and then stop.
[0071] If the error is determined not to be a "stop" exception (no in S141), the processor 101 controls the communication modules 111A and 111B (S143) by sending a reverse driving instruction to VCIB41 and 42. The reverse driving instruction here is, for example, an instruction to drive to one's own home or repair shop and stop.
[0072] If it is determined that no exception content was received (no in S111), or if it is determined that the exception is not one requiring a safe stop (no in S112), the processor 101 returns the executed process to the parent process of the ADK process. Alternatively, after S124, S132, S142, or S143, the processor 101 returns the executed process to the parent process of the ADK process.
[0073] When VCIB41 and 42 receive an instruction to reverse in S124, S132, S142, or S143, they send control signals for reversing to their respective control systems. Each control system then executes the reversing action according to the control signals.
[0074] By execution Figure 3 This process allows anomalies to be categorized into any one of the propulsion, steering, or deceleration systems. Furthermore, the categorized anomaly content is layered into driving, turning, and stopping, and notified to ADK10. As a result, safer reverse driving is achieved.
[0075] Second Implementation Method The second embodiment is different from the first embodiment. Figure 3 The processing of S124 in the case of abnormal "driving" of ADK processing is modified, and processing corresponding to the modification of ADK processing is added to VCIB processing. In the second embodiment, the parts that are modified from the first embodiment will be described.
[0076] Figure 4 A flowchart illustrating the process flow performed by ADK10, VCIB41, 42, and each control system of the second embodiment. (Refer to...) Figure 4 In ADK10, if an abnormality is determined to be "driving" (yes in S121), the processor 101 of the computer 111 of ADS11 obtains the surrounding conditions of the vehicle 1. Furthermore, in order to confirm the propulsion response of the vehicle 1, the processor 101 controls the communication modules 111A and 111B by sending a request for acceleration corresponding to the surrounding conditions to VCIB41 and 42 (S122).
[0077] The surrounding conditions include, for example, a first condition where safety can be maintained even if vehicle 1 accelerates slightly; a second condition where safety can be maintained if vehicle 1 is traveling at a constant speed; and a third condition that needs to be considered to maintain the safety of vehicle 1. The first condition is a situation with few other vehicles and pedestrians around, such as driving on a highway where there are relatively few other vehicles. The second condition is a situation with more other vehicles and pedestrians than in the first condition. Examples of the second condition include driving on a highway where there are more other vehicles than in the first condition, or driving on a regular road where there are few or no other vehicles and pedestrians around. The third condition is a situation with more other vehicles and pedestrians around than in the second condition. Examples of the third condition include driving on a highway in a congested situation where there are more other vehicles than in the second condition, or driving on a regular road where there are more other vehicles and pedestrians than in the second condition.
[0078] If the surrounding conditions of vehicle 1 are in condition one, the requested acceleration is a slight acceleration that causes vehicle 1 to accelerate slightly in order to confirm the propulsion response of vehicle 1. If the surrounding conditions of vehicle 1 are in condition two, the requested acceleration is an acceleration that causes vehicle 1 to maintain a constant speed in order to confirm the propulsion response of vehicle 1. Furthermore, if the surrounding conditions of vehicle 1 are in condition three, the requested acceleration is not changed in order to confirm the propulsion response of vehicle 1.
[0079] In VCIB41 and 42, if it is determined that no abnormal content has been received (no in S411), or if it is determined that the abnormality does not need to be notified to ADK10 (no in S412), processors 411 and 421 determine whether a request for acceleration has been received from ADK10 (S421). Alternatively, after S413, processors 411 and 421 determine whether a request for acceleration has been received from ADK10 (S421).
[0080] If it is determined that a required acceleration has been received (yes in S421), the processors 411 and 421 send the control signal corresponding to the required acceleration to the propulsion system 343 and the braking systems 321 and 322, etc., respectively (S422).
[0081] Subsequently, processors 411 and 421 obtain responses to control signals from various control systems (e.g., the actual speed and actual acceleration of vehicle 1) (S423). These responses are detected, for example, by wheel speed sensors 51 and 52, a G-sensor, a camera 54, radar sensors 55 and 56, and a lidar sensor. Processors 411 and 421 then send the obtained responses to ADK10 (S424). The responses indicate whether the propulsion system 343 and braking systems 321 and 322 are generating propulsion forces that cause vehicle 1 to accelerate at the required acceleration or maintain a constant speed.
[0082] If it is determined that no requested acceleration has been received (no in S421), or after S424, the processors 411 and 421 will return the executed process to the higher-level process of the calling source of the VCIB process.
[0083] In ADK10, the processor 101 of the computer 111 of ADS11 receives the content of the response to the required acceleration through communication modules 111A and 111B, and judges whether the response shown in the response content is appropriate (S123). For example, if the actual acceleration (or change in actual speed) is within the range of a specified error relative to the required acceleration, the processor 101 judges that the response is appropriate.
[0084] If the response is deemed inappropriate (S123: No), the processor 101 executes the processing described in S124 of the first embodiment. On the other hand, if the response is deemed appropriate (Yes in S123), the processor 101 controls the communication modules 111A and 111B by sending a reversing driving instruction to VCIB41 and 42 (S125). This reversing driving instruction is, for example, an instruction to drive to the next service area (SA) or a nearby parking location and stop. After S125, the processor 101 returns the executed processing to the higher-level processing of the ADK processing source.
[0085] By execution Figure 4 The system processes anomalies, categorizing them into any one of the propulsion, steering, or deceleration systems. Furthermore, the anomaly content, including the categorization, is layered into driving, turning, and stopping, and notified to ADK10. Thus, by actively performing propulsion, steering, and deceleration input tests on the ADK10 side based on the surrounding conditions (environment), remaining functions can be proactively confirmed based on the anomaly state. As a result, safer reverse driving is achieved.
[0086] Change example (1) In the above-described embodiments, such as Figure 3 and Figure 4As shown, ADK10 not only detects abnormalities in the propulsion function, but also in the steering and braking functions. However, it is not limited to this; ADK10 can detect abnormalities in only the propulsion function, or in both the propulsion and steering functions, or even in both the propulsion and braking functions.
[0087] (2) The aforementioned implementation methods can be understood as disclosures of devices such as vehicle 1, ADK10, ADS11, VP20, base vehicle 30, or VCIB41, 42, or as disclosures of control methods or control programs in these devices.
[0088] Summarize (1) such as Figure 1 as well as Figure 2 As shown, ADK10 issues instructions for autonomous driving and can be detached from VP20, which is configured to perform autonomous driving. Figure 1 and Figure 2 As shown, VP20 includes a base vehicle 30, a propulsion function unit that propels the base vehicle 30 according to propulsion instructions from ADK10, and VCIB41 and 42 that relay control communication between ADK10 and the propulsion function unit. The propulsion function unit may be, for example, a propulsion system 343 or braking systems 321 and 322. Figure 3 and Figure 4 As shown, ADK10 receives exception information from VCIB41 and 42 indicating an abnormality in the propulsion function implemented by the propulsion function unit (e.g., S111). Upon receiving exception information, ADK10 takes the condition that the exception indicated by the exception information is an exception requiring a stop, and sends an instruction to perform reverse driving to VCIB41 and 42 (e.g., S112 to S143).
[0089] Therefore, ADK10 can take the abnormality of the propulsion function of the base vehicle 30 as a condition that requires stopping, and send an instruction to perform reverse driving to VCIB41, 42. As a result, reverse driving can be performed appropriately based on the remaining capacity of the propulsion function.
[0090] (2) such as Figure 4As shown, upon receiving abnormal information, ADK10 can also send a requested acceleration corresponding to the surrounding conditions of vehicle 1 to the propulsion function unit via VCIB41 and 42 (e.g., S122). ADK10 can also receive a response from the propulsion function unit corresponding to the requested acceleration via VCIB41 and 42 (e.g., S123). Furthermore, ADK10 can also, based on the receipt of a response, send an instruction for retreating corresponding to whether the response is appropriate to VCIB41 and 42 (e.g., S124, S125).
[0091] Therefore, upon receiving abnormal information from VCIB41 and 42, ADK10 sends a requested acceleration corresponding to the conditions surrounding vehicle 1 to the propulsion function unit. ADK10 can receive the response from the propulsion function unit corresponding to the requested acceleration and send an instruction on whether the response is appropriate to evade movement to VCIB41 and 42. As a result, evasive movement can be performed more appropriately based on the remaining capacity of the propulsion function.
[0092] (3) such as Figure 4 As shown in S122, S423, and S424, the required acceleration is an acceleration that increases or maintains the forward speed of vehicle 1. The response content can also be set to indicate whether the propulsion function unit is generating a propulsion force that causes vehicle 1 to accelerate or maintain a constant speed at the required acceleration.
[0093] Therefore, upon receiving abnormal information from VCIB41 and 42, ADK10 sends a request for acceleration to increase or maintain the forward speed of vehicle 1, corresponding to the surrounding conditions of vehicle 1, to the propulsion function unit. ADK10 can receive a response indicating whether the propulsion function unit is generating propulsion force to accelerate or maintain the required speed of vehicle 1, and sends an instruction for retreating corresponding to whether the response is appropriate to VCIB41 and 42. As a result, retreating can be performed more appropriately based on the remaining capacity of the propulsion function.
[0094] (4) such as Figure 1 and Figure 2 As shown, VP20 also has designated functional units (e.g., braking systems 321, 322, steering systems 331, 332) that perform designated functions different from the propulsion functional units (e.g., braking function, steering function). Figure 1 and Figure 2 As shown, VCIB41 and 42 also relay control communications between ADK10 and the specified functional units. For example... Figure 3 and Figure 4As shown, ADK10 can also receive exception information indicating an exception to the propulsion function implemented by the propulsion function unit or an exception to the specified function implemented by the specified function unit (e.g., S111). Upon receiving exception information, ADK10 may also send a reverse driving instruction corresponding to the content of the exception indicated by the exception information to VCIB41, 42 as a condition that the exception indicated by the exception information requires stopping (e.g., S112 to S143).
[0095] Therefore, ADK10 can take the abnormality of the propulsion function of VP20 or a specified function different from the propulsion function as a condition that requires stopping, and send an instruction to VCIB41, 42 corresponding to the content of the abnormality shown in the abnormality information. As a result, reverse driving can be performed more appropriately based on the remaining capacity of the propulsion function or the specified function.
[0096] The embodiments disclosed herein should be considered illustrative rather than restrictive in all respects. The scope of this disclosure is defined not by the description of the embodiments above but by the claims, and is intended to include all modifications within the meaning and scope equivalent to the claims.
Claims
1. An autonomous driving kit that issues instructions for autonomous driving, wherein, The autonomous driving kit can be installed and removed relative to the vehicle configured to perform autonomous driving. The vehicle has the following features: Vehicle platform; The propulsion function unit propels the vehicle platform according to propulsion instructions from the autonomous driving kit; The vehicle control interface box relays the control communications between the autonomous driving suite and the propulsion function unit. The autonomous driving kit receives an error message from the vehicle control interface box indicating an error in the propulsion function implemented by the propulsion function unit. Upon receiving the error message, it sends an instruction to the vehicle control interface box to perform a reverse driving, taking the condition that the error message indicates an error requiring a stop.
2. The autonomous driving kit as claimed in claim 1, wherein, Upon receiving the abnormal information, the autonomous driving kit sends a required acceleration corresponding to the surrounding conditions of the vehicle platform to the propulsion function unit via the vehicle control interface box, and receives a response from the propulsion function unit corresponding to the required acceleration via the vehicle control interface box. Taking the receipt of the response as a further condition, it sends an instruction to the vehicle control interface box to indicate whether the response is appropriate.
3. The autonomous driving kit as described in claim 2, wherein, The required acceleration is the acceleration that increases or maintains the forward speed of the vehicle platform. The response content indicates whether the propulsion function unit is generating propulsion force to enable the vehicle platform to accelerate or maintain a constant speed at the required acceleration.
4. The autonomous driving kit as described in any one of claims 1 to 3, wherein, The vehicle also includes a designated functional unit that performs a different function from the propulsion functional unit. The vehicle control interface box also relays the control communication between the autonomous driving kit and the specified functional units. The autonomous driving kit receives an anomaly information indicating an anomaly in the propulsion function implemented by the propulsion function unit or an anomaly in the prescribed function implemented by the prescribed function unit. Upon receiving the anomaly information, the kit takes as a condition that the anomaly indicated by the anomaly information is an anomaly requiring a stop, and sends a reverse driving instruction corresponding to the content of the anomaly indicated by the anomaly information to the vehicle control interface box.