This nonprovisional application is based on Japanese Patent Application No. 2021-158034 filed with the Japan Patent Office on Sep. 28, 2021, the entire contents of which are hereby incorporated by reference.
This disclosure relates to an autonomous driving kit, a vehicle platform, a vehicle control interface box, and a vehicle, and particularly to an autonomous driving kit attachable to and removable from a vehicle platform, the autonomous driving kit issuing an instruction for autonomous driving to the vehicle platform, a vehicle platform capable of communicating with an autonomous driving kit, the vehicle platform being configured to allow autonomous driving in accordance with an instruction for autonomous driving from the autonomous driving kit, a vehicle control interface box capable of communicating with an autonomous driving kit, the vehicle control interface box issuing an instruction for autonomous driving to the vehicle platform in accordance with an instruction for autonomous driving from the autonomous driving kit, and a vehicle including an autonomous driving kit or a vehicle platform.
A technique for autonomous driving of a vehicle has recently been developed. For example, there is a vehicle in which an autonomous driving electronic control unit (ECU) that issues an instruction for autonomous driving controls autonomous driving (see, for example, Japanese Patent Laying-Open No. 2018-132015). In such a vehicle, a reference on which control of a vehicle is premised may be incorporated in advance in the autonomous driving ECU. The autonomous driving ECU can thus carry out control suited to the vehicle.
In the vehicle in Japanese Patent Laying-Open No. 2018-132015, an autonomous driving apparatus that issues an instruction for autonomous driving, such as the autonomous driving ECU, may be configured to be attachable to and removable from the vehicle and replaceable with an autonomous driving apparatus in conformity with other specifications. With a configuration as such, however, unless a reference on which control of a vehicle is premised is incorporated in advance in the autonomous driving apparatus, control suited to that vehicle cannot be carried out.
This disclosure was made to solve the problem described above, and an object thereof is to provide an autonomous driving kit, a vehicle platform, a vehicle control interface box, and a vehicle that allow control suited to a vehicle even when a reference on which control of the vehicle is premised is not stored in advance in an attachable and removable apparatus that issues an instruction for autonomous driving when this apparatus controls the vehicle.
An autonomous driving kit according to this disclosure is an autonomous driving kit attachable to and removable from a vehicle platform, the autonomous driving kit issuing an instruction for autonomous driving to the vehicle platform. The vehicle platform includes a steering system for steering of the vehicle platform. The autonomous driving kit includes a compute assembly and a communication module configured to communicate with the vehicle platform. The compute assembly obtains from the vehicle platform, a prescribed reference on which control of a wheel steer angle is premised, calculates a steer angle in accordance with a driving plan for autonomous driving based on the obtained prescribed reference, and transmits a wheel steer angle command indicating the calculated steer angle to the vehicle platform.
According to such a configuration, the autonomous driving kit obtains from the vehicle platform, the prescribed reference on which control for calculating the wheel steer angle in accordance with the driving plan for autonomous driving is premised. Consequently, the autonomous driving kit that allows control suited to a vehicle even when a prescribed reference on which control of the wheel steer angle is premised is not stored in advance in the attachable and removable autonomous driving kit that issues an instruction for autonomous driving when this autonomous driving kit controls the vehicle platform can be provided.
The prescribed reference may be a fixed value not varied by another indicator. According to such a configuration, the wheel steer angle can be calculated more readily than when the prescribed reference is a variable value varied by another indicator.
The prescribed reference may be a maximum lateral acceleration on which control of the vehicle platform is premised. The maximum lateral acceleration may be 3.432 m/s2. According to such a configuration, the vehicle platform can be controlled based on the maximum lateral acceleration suited to the vehicle platform.
The prescribed reference may be a maximum lateral jerk on which control of the vehicle platform is premised. The maximum lateral jerk may be 3.432 m/s3. According to such a configuration, the vehicle platform can be controlled based on the maximum lateral jerk suited to the vehicle platform.
According to another aspect of this disclosure, a vehicle may include the autonomous driving kit described above. According to such a configuration, the vehicle that allows control suited thereto even when a prescribed reference on which control of the wheel steer angle is premised is not stored in advance in the attachable and removable autonomous driving kit that issues an instruction for autonomous driving when this autonomous driving kit controls the vehicle platform can be provided.
According to yet another aspect of this disclosure, a vehicle platform is a vehicle platform capable of communicating with an autonomous driving kit, the vehicle platform being configured to allow autonomous driving in accordance with an instruction for autonomous driving from the autonomous driving kit. The autonomous driving kit is attachable to and removable from the vehicle platform. The vehicle platform includes a steering system for steering of the vehicle platform and a vehicle control interface box that provides a control command for controlling the steering system. The vehicle control interface box transmits a prescribed reference on which control of a wheel steer angle in the vehicle platform is premised to the autonomous driving kit in accordance with a request from the autonomous driving kit that obtains the prescribed reference and provides to the steering system, a control command in accordance with a wheel steer angle command received from the autonomous driving kit, the wheel steer angle command indicating a steer angle calculated in accordance with a driving plan for autonomous driving based on the prescribed reference.
According to such a configuration, the vehicle platform that allows control suited to a vehicle even when a prescribed reference on which control of the wheel steer angle is premised is not stored in advance in the attachable and removable autonomous driving kit that issues an instruction for autonomous driving when this autonomous driving kit controls the vehicle platform can be provided.
The prescribed reference may be a fixed value not varied by another indicator. According to such a configuration, the wheel steer angle can be calculated more readily than when the prescribed reference is a variable value varied by another indicator.
The prescribed reference may be a maximum lateral acceleration on which control of the vehicle platform is premised. The maximum lateral acceleration may be 3.432 m/s2. According to such a configuration, the vehicle platform can be controlled based on the maximum lateral acceleration suited to the vehicle platform.
The prescribed reference may be a maximum lateral jerk on which control of the vehicle platform is premised. The maximum lateral jerk may be 3.432 m/s3. According to such a configuration, the vehicle platform can be controlled based on the maximum lateral jerk suited to the vehicle platform.
According to still another aspect of this disclosure, a vehicle may include the vehicle platform described above. According to such a configuration, the vehicle that allows control suited thereto even when a prescribed reference on which control of the wheel steer angle is premised is not stored in advance in the attachable and removable autonomous driving kit that issues an instruction for autonomous driving when this autonomous driving kit controls the vehicle platform can be provided.
According to still another aspect of this disclosure, a vehicle control interface box is a vehicle control interface box capable of communicating with an autonomous driving kit, the vehicle control interface box issuing an instruction for autonomous driving to a vehicle platform in accordance with an instruction for autonomous driving from the autonomous driving kit. The autonomous driving kit is attachable to and removable from the vehicle platform. The vehicle platform includes a steering system for steering of the vehicle platform. The vehicle control interface box includes a processor and a memory in which a program executable by the processor is stored. The processor transmits a prescribed reference on which control of a wheel steer angle in the vehicle platform is premised to the autonomous driving kit in accordance with a request from the autonomous driving kit that obtains the prescribed reference and provides to the steering system, a control command in accordance with a wheel steer angle command received from the autonomous driving kit, the wheel steer angle command indicating a steer angle calculated in accordance with a driving plan for autonomous driving based on the prescribed reference.
According to such a configuration, the vehicle control interface box that allows control suited to a vehicle even when a prescribed reference on which control of the wheel steer angle is premised is not stored in advance in the attachable and removable autonomous driving kit that issues an instruction for autonomous driving when this autonomous driving kit controls the vehicle platform can be provided.
The foregoing and other objects, features, aspects and advantages of the present disclosure will become more apparent from the following detailed description of the present disclosure when taken in conjunction with the accompanying drawings.
An embodiment of the present disclosure will be described below in detail with reference to the drawings. The same or corresponding elements in the drawings have the same reference characters allotted and description thereof will not be repeated.
<Overall Configuration>
VP 20 can carry out autonomous driving in accordance with control requests from ADK 10. Though
ADK 10 includes an autonomous driving system (ADS) 11 for autonomous driving of vehicle 1. For example, ADS 11 creates a driving plan of vehicle 1. ADS 11 outputs various control requests for travel of vehicle 1 in accordance with the driving plan to VP 20 in accordance with an application program interface (API) defined for each control request. ADS 11 receives various signals indicating vehicle statuses (statuses of VP 20) from VP 20 in accordance with the API defined for each signal. Then, ADS 11 has the vehicle status reflected on the driving plan. A detailed configuration of ADS 11 will be described with reference to
VP 20 includes a base vehicle 30 and a vehicle control interface box (VCIB) 40.
Base vehicle 30 carries out various types of vehicle control in accordance with a control request from ADK 10 (ADS 11). Base vehicle 30 includes various systems and various sensors for controlling base vehicle 30. More specifically, base vehicle 30 includes an integrated control manager 31, a brake system 32, a steering system 33, a powertrain system 34, an active safety system 35, a body system 36, wheel speed sensors 51 and 52, a pinion angle sensor 53, a camera 54, and radar sensors 55 and 56.
Integrated control manager 31 includes a processor such as a central processing unit (CPU) and a memory such as a read only memory (ROM) and a random access memory (RAM), although none of them is shown, and integrally controls the systems (brake system 32, steering system 33, powertrain system 34, active safety system 35, and body system 36) involved with operations of vehicle 1.
Brake system 32 is configured to control a braking apparatus provided in each wheel of base vehicle 30. The braking apparatus includes, for example, a disc brake system (not shown) that is operated with a hydraulic pressure regulated by an actuator.
Wheel speed sensors 51 and 52 are connected to brake system 32. Wheel speed sensor 51 detects a rotation speed of a front wheel of base vehicle 30 and outputs the detected rotation speed of the front wheel to brake system 32. Wheel speed sensor 52 detects a rotation speed of a rear wheel of base vehicle 30 and outputs the detected rotation speed of the rear wheel to brake system 32. Brake system 32 outputs to VCIB 40, the rotation speed of each wheel as one of pieces of information included in the vehicle statuses. Brake system 32 generates a braking command to a braking apparatus in accordance with a prescribed control request outputted from ADS 11 through VCIB 40 and integrated control manager 31. Brake system 32 controls the braking apparatus based on the generated braking command. Integrated control manager 31 can calculate a speed of vehicle 1 (vehicle speed) based on the rotation speed of each wheel.
Steering system 33 is configured to control a steering angle (wheel steer angle) of a steering wheel of vehicle 1 with a steering apparatus. The steering apparatus includes, for example, rack-and-pinion electric power steering (EPS) that allows adjustment of a steering angle by an actuator.
Pinion angle sensor 53 is connected to steering system 33. Pinion angle sensor 53 detects an angle of rotation of a pinion gear (a pinion angle) coupled to a rotation shaft of the actuator and outputs the detected pinion angle to steering system 33. Steering system 33 outputs to VCIB 40, the pinion angle as one of pieces of information included in the vehicle statuses. Steering system 33 generates a steering command to the steering apparatus in accordance with a prescribed control request outputted from ADS 11 through VCIB 40 and integrated control manager 31. Steering system 33 controls the steering apparatus based on the generated steering command.
Powertrain system 34 controls an electric parking brake (EPB) system 341 provided in at least one of a plurality of wheels, a parking lock (P-Lock) system 342 provided in a transmission of vehicle 1, and a propulsion system 343 including a shift apparatus (not shown) configured to allow selection of a shift range. A detailed configuration of powertrain system 34 will be described with reference to
Active safety system 35 detects an obstacle (a pedestrian, a bicycle, a parked vehicle, a utility pole, or the like) in front or in the rear with the use of camera 54 and radar sensors 55 and 56. Active safety system 35 determines whether or not vehicle 1 may collide with the obstacle based on a distance between vehicle 1 and the obstacle and a direction of movement of vehicle 1. When active safety system 35 determines that there is possibility of collision, it outputs a braking command to brake system 32 through integrated control manager 31 so as to increase braking force.
Body system 36 is configured to control, for example, components such as a direction indicator, a horn, and a wiper (none of which is shown), depending on a state of travel or an environment around vehicle 1. Body system 36 controls each component in accordance with a prescribed control request outputted from ADS 11 through VCIB 40 and integrated control manager 31.
VCIB 40 is configured to communicate with ADS 11 over a controller area network (CAN). VCIB 40 receives various control requests from ADS 11 or outputs a vehicle status to ADS 11 by executing a prescribed API defined for each signal. When VCIB 40 receives the control request from ADK 10, it outputs a control command corresponding to the control request to a system corresponding to the control command through integrated control manager 31. VCIB 40 obtains various types of information on base vehicle 30 from various systems through integrated control manager 31 and outputs the status of base vehicle 30 as the vehicle status to ADS 11.
Vehicle 1 may be used as one of constituent elements of a mobility as a service (MaaS) system. The MaaS system includes, for example, a data server and a mobility service platform (MSPF) (neither of which is shown), in addition to vehicle 1.
The MSPF is an integrated platform to which various mobility services are connected. Autonomous driving related mobility services are connected to the MSPF. In addition to the autonomous driving related mobility services, mobility services provided by a ride-share company, a car-sharing company, a rent-a-car company, a taxi company, and an insurance company may be connected to the MSPF.
Vehicle 1 further includes a data communication module (DCM) (not shown) capable of wirelessly communicating with a data server. The DCM outputs vehicle information such as a speed, a position, or an autonomous driving state to the data server. The DCM receives from the autonomous driving related mobility services through the MSPF and the data server, various types of data for management of travel of an autonomous driving vehicle including vehicle 1 in the mobility services.
The MSPF publishes APIs for using various types of data on vehicle statuses and vehicle control necessary for development of ADS 11. Various mobility services can use various functions provided by the MSPF depending on service contents, by using the APIs published on the MSPF. For example, the autonomous driving related mobility services can obtain operation control data of vehicle 1 or information stored in the data server from the MSPF by using the APIs published on the MSPF. The autonomous driving related mobility services can transmit data for managing an autonomous driving vehicle including vehicle 1 to the MSPF by using the API.
<Detailed Configuration>
Compute assembly 111 includes a processor such as a central processing unit (CPU) and a memory such as a read only memory (ROM) and a random access memory (RAM), although none of them is shown. A program executable by the processor is stored in the memory. During autonomous driving of vehicle 1, compute assembly 111 obtains information indicating an environment around vehicle 1 and information indicating a pose, a behavior, and a position of vehicle 1 from various sensors (which will be described later), and obtains a vehicle status from VP 20 through VCIB 40 and sets a next operation (acceleration, deceleration, or turning) of vehicle 1. Compute assembly 111 outputs various commands for realizing a next operation to VCIB 40. Compute assembly 111 further includes communication modules 111A and 111B. Communication modules 111A and 111B are each configured to communicate with VCIB 40.
HMI 112 presents information to a user and accepts an operation by the user during autonomous driving, during driving requiring an operation by the user, or at the time of transition between autonomous driving and driving requiring an operation by the user. HMI 112 is constructed to be connected to an input and output apparatus (not shown) such as a touch panel display provided in base vehicle 30.
Sensors for perception 113 are sensors that perceive an environment around vehicle 1. Sensors for perception 113 include, for example, at least one of laser imaging detection and ranging (LIDAR), a millimeter-wave radar, and a camera (none of which is shown). The LIDAR measures a distance and a direction to an object, for example, by emitting laser beams of infrared pulses and detecting laser beams reflected by the object. The millimeter-wave radar measures a distance and a direction to an object by emitting millimeter waves and detecting millimeter waves reflected by the object. The camera is arranged, for example, on a rear side of a room mirror and shoots an image of the front of vehicle 1.
Sensors for pose 114 are sensors that detect a pose, a behavior, or a position of vehicle 1. Sensors for pose 114 include, for example, an inertial measurement unit (IMU) and a global positioning system (GPS) (neither of which is shown). The IMU detects, for example, an acceleration in a front-rear direction, a lateral direction, and a vertical direction of vehicle 1 and an angular speed in a roll direction, a pitch direction, and a yaw direction of vehicle 1. The GPS detects a position of vehicle 1 based on information received from a plurality of GPS satellites that orbit the Earth.
Sensor cleaning 115 is configured to remove with a cleaning solution or a wiper, soiling attached to various sensors (a lens of the camera or a portion from which laser beams are emitted) during traveling of vehicle 1.
VCIB 40 includes a VCIB 41 and a VCIB 42. Each of VCIBs 41 and 42 includes a processor such as a central processing unit (CPU) and a memory such as a read only memory (ROM) and a random access memory (RAM), although none of them is shown. A program executable by the processor is stored in the memory. VCIB 41 and communication module 111A are communicatively connected to each other. VCIB 42 and communication module 111B are communicatively connected to each other. VCIB 41 and VCIB 42 are communicatively connected to each other.
VCIBs 41 and 42 each relay control requests and vehicle information between ADS 11 and VP 20. More specifically, VCIB 41 generates a control command from a control request from ADS 11 with the use of an API.
For example, a control command corresponding to a control request supplied from ADS 11 to VCIB 40 includes a propulsion direction command requesting switching of the shift range, an immobilization command requesting activation/deactivation of EPB system 341 and P-Lock system 342, an acceleration command requesting acceleration or deceleration of vehicle 1, a wheel steer angle command requesting a wheel steer angle of a steering wheel, an autonomization command requesting switching between an autonomous mode and a manual mode, and a standstill command requesting keeping on stationary or keeping off stationary of the vehicle.
Then, VCIB 41 outputs the generated control command to a corresponding system of a plurality of systems included in VP 20. VCIB 41 generates information indicating a vehicle status from the vehicle information from each system of VP 20 with the use of the API. The information indicating the vehicle status may be information identical to the vehicle information or may be information extracted from the vehicle information to be used for processing performed by ADS 11. VCIB 41 provides the generated information indicating the vehicle status to ADS 11. This is also applicable to VCIB 42.
Brake system 32 includes brake systems 321 and 322. Steering system 33 includes steering systems 331 and 332. Powertrain system 34 includes EPB system 341, P-Lock system 342, and propulsion system 343.
Though VCIB 41 and VCIB 42 are basically equivalent in function to each other, they are partially different in systems connected to the VCIBs that are included in VP 20. Specifically, VCIB 41, brake system 321, steering system 331, EPB system 341, P-Lock system 342, propulsion system 343, and body system 36 are communicatively connected to one another through a communication bus. VCIB 42, brake system 322, steering system 332, and P-Lock system 342 are communicatively connected to one another through a communication bus.
As VCIBs 41 and 42 equivalent in function relating to an operation of at least one of (for example, braking or steering) systems are thus included in VCIB 40, control systems between ADS 11 and VP 20 are redundant. Thus, when some kind of failure occurs in the system, the function of VP 20 can be maintained by switching between the control systems as appropriate or disconnection of a control system where failure has occurred.
Brake systems 321 and 322 are each configured to control a braking apparatus. Brake system 321 generates a braking command to the braking apparatus in accordance with a control request outputted from ADS 11 through VCIB 41. Brake system 322 generates a braking command to the braking apparatus in accordance with a control request outputted from ADS 11 through VCIB 42. Brake system 321 and brake system 322 may be equivalent in function to each other. Alternatively, one of brake systems 321 and 322 may be configured to independently control braking force of each wheel and the other thereof may be configured to control braking force such that equal braking force is generated in the wheels. For example, brake systems 321 and 322 may control the braking apparatus based on a braking command generated by any one of them, and when a failure occurs in that brake system, they may control the braking apparatus based on a braking command generated by the other of them.
Steering systems 331 and 332 are each configured to control a steering angle of a steering wheel of vehicle 1 with a steering apparatus. Steering system 331 generates a steering command to the steering apparatus in accordance with a control request outputted from ADS 11 through VCIB 41. Steering system 332 generates a steering command to the steering apparatus in accordance with a control request outputted from ADS 11 through VCIB 42. Steering system 331 and steering system 332 may be equivalent in function to each other. Alternatively, steering systems 331 and 332 may control the steering apparatus based on the steering command generated by any one of them, and when a failure occurs in that steering system, they may control the steering apparatus based on a steering command generated by the other of them.
EPB system 341 controls the EPB in accordance with a control request outputted from ADS 11 through VCIB 41. The EPB is provided separately from the braking apparatus (a disc brake system or the like), and fixes a wheel by an operation of an actuator. The EPB, for example, activates with an actuator, a drum brake for a parking brake provided in at least one of a plurality of wheels to fix the wheel, or activates a braking apparatus to fix a wheel with an actuator capable of regulating a hydraulic pressure to be supplied to the braking apparatus separately from brake systems 321 and 322. EPB system 341 performs a brakeholding function, and is configured to switch between activation and release of brakehold.
P-Lock system 342 controls a P-Lock apparatus in accordance with a control request outputted from ADS 11 through VCIB 41. For example, when the control request includes a control request to set the shift range to a parking range (P range), P-Lock system 342 activates the P-Lock apparatus, and when the control request includes a control request to set the shift range to a shift range other than the P range, it deactivates the P-Lock apparatus. The P-Lock apparatus fits a protrusion provided at a tip end of a parking lock pawl, a position of which is adjusted by an actuator, into a tooth of a gear (locking gear) provided as being coupled to a rotational element in the transmission of vehicle 1. Rotation of an output shaft of the transmission is thus fixed and the wheel is fixed.
Propulsion system 343 switches the shift range of the shift apparatus and controls driving force from a drive source (a motor generator and an engine) in accordance with a control request outputted from ADS 11 through VCIB 41. The shift ranges include, for example, a neutral range (N range), a forward travel range (D range), and a rearward travel range (R range) in addition to the P range.
Active safety system 35 is communicatively connected to brake system 321. As described previously, active safety system 35 detects an obstacle in front by using camera 54 and/or radar sensor 55, and when it determines that there is possibility of collision, it outputs a braking command to brake system 321 so as to increase braking force.
Body system 36 controls components such as a direction indicator, a horn, or a wiper in accordance with a control request outputted from ADS 11 through VCIB 41.
For example, when an autonomous mode is selected by an operation by the user onto HMI 112 in vehicle 1, autonomous driving is carried out. During autonomous driving, ADS 11 initially creates a driving plan as described previously. Examples of the driving plan include a plan to continue straight travel, a plan to turn left/right at a prescribed intersection on a predetermined travel path, and a plan to change a travel lane. ADS 11 calculates a controllable physical quantity (an acceleration, a deceleration, and a wheel steer angle) necessary for operations of vehicle 1 in accordance with the created driving plan. ADS 11 splits the physical quantity for each execution cycle time of the API. ADS 11 outputs a control request representing the split physical quantity to VCIB 40 by means of the API. Furthermore, ADS 11 obtains a vehicle status (an actual direction of movement of vehicle 1 and a state of fixation of the vehicle) from VP 20 and creates again the driving plan on which the obtained vehicle status is reflected. ADS 11 thus allows autonomous driving of vehicle 1.
<Control of Wheel Steer Angle>
Unless the prescribed reference on which control of base vehicle 30 is premised is incorporated in advance in ADK 10, control suited to that base vehicle 30 cannot be carried out.
Compute assembly 111 of ADS 11 of ADK 10 obtains from VP 20, the prescribed reference on which control of the wheel steer angle is premised, calculates the steer angle in accordance with a driving plan for autonomous driving based on the obtained prescribed reference, and transmits a wheel steer angle command indicating the calculated steer angle to VP 20.
ADK 10 thus obtains from VP 20, the prescribed reference on which control for calculating the wheel steer angle in accordance with the driving plan for autonomous driving is premised. Consequently, control suited to base vehicle 30 can be carried out even when the prescribed reference on which control of the wheel steer angle is premised is not stored in advance in attachable and removable ADK 10 that issues an instruction for autonomous driving when this ADK 10 controls VP 20.
The processor of compute assembly 111 of ADS 11 determines whether or not steering is required in an immediately following driving plan (S111). When the processor of compute assembly 111 determines that steering is required (YES in S111), it requests VP 20 to transmit a value (for example, a maximum lateral acceleration and a maximum lateral jerk on which control of base vehicle 30 is premised) necessary for calculation of the wheel steer angle (S112).
The processor of VCIB 40 of VP 20 determines whether or not ADS 11 has requested the value necessary for calculation of the wheel steer angle (S211). The value necessary for control of base vehicle 30 is stored in advance in the memory of integrated control manager 31 (or the memory of VCIB 40) at the time of manufacturing of base vehicle 30. In this embodiment, the maximum lateral acceleration and the maximum lateral jerk are each a fixed value not varied by another indicator such as a vehicle velocity, and they are 3.432 m/s2 and 3.432 m/s3, respectively. The value necessary for control of base vehicle 30 may be updated through the DCM after base vehicle 30 is sold.
When the processor of VCIB 40 determines that the request for the necessary value has been issued (YES in S211), it obtains the necessary value (for example, the maximum lateral acceleration and the maximum lateral jerk) from the memory of integrated control manager 31 (or the memory of VCIB 40) (S212). The processor of VCIB 40 transmits the obtained value to ADK 10 (S213).
The processor of compute assembly 111 of ADS 11 of ADK 10 determines whether or not it has received the obtained value from VCIB 40 of VP 20 (S113). When the processor of compute assembly 111 determines that it has received the obtained value (YES in S113), it calculates the wheel steer angle in accordance with the driving plan at the current time point based on the received obtained value (S114). The processor of compute assembly 111 transmits the wheel steer angle command for indicating the calculated wheel steer angle to VP 20 (S115).
The processor of VCIB 40 of VP 20 determines whether or not it has received the wheel steer angle command from ADK 10 (S214). When the processor of VCIB 40 determines that it has received the wheel steer angle command (YES in S214), it controls steering system 33 to set the wheel steer angle indicated in the wheel steer angle command (S215).
[Modification]
(1) In the embodiment described previously, VCIB 40 (or integrated control manager 31) directly controls each functional unit of base vehicle 30 such as steering system 33. Without being limited as such, each functional unit may include an ECU, and VCIB 40 (or integrated control manager 31) may indirectly control the functional unit by issuing a control command to the ECU of each functional unit to have the ECU control the functional unit in accordance with the control command.
(2) In the embodiment described previously, as shown in
(3) The embodiment described previously can be understood as the disclosure of an apparatus such as vehicle 1, ADK 10, ADS 11, VP 20, base vehicle 30, or VCIB 40 or as the disclosure of a control method or a control program in such an apparatus.
(1) As shown in
Thus, ADK 10 obtains from VP 20, the prescribed reference on which control for calculating the wheel steer angle in accordance with the driving plan for autonomous driving is premised. Consequently, control suited to base vehicle 30 can be carried out even when a prescribed reference on which control of the wheel steer angle is premised is not stored in advance in attachable and removable ADK 10 that issues an instruction for autonomous driving when this ADK 10 controls VP 20.
(2) As shown in
(3) As shown in
(4) As shown in
(5) As shown in
(6) As shown in
Control suited to a vehicle can thus be carried out even when a prescribed reference on which control of the wheel steer angle is premised is not stored in advance in attachable and removable ADK 10 that issues an instruction for autonomous driving when this ADK 10 controls VP 20.
(7) As shown in
(8) As shown in
Control suited to a vehicle can thus be carried out even when a prescribed reference on which control of the wheel steer angle is premised is not stored in advance in attachable and removable ADK 10 that issues an instruction for autonomous driving when this ADK 10 controls VP 20.
API Specification for TOYOTA Vehicle Platform
Ver. 1.1
4.5.2. API Guides in Details for Security
1. Introduction
1.1. Purpose of this Specification
This document is an API specification of vehicle control interface for Autono-MaaS vehicles and contains outline, the way to use and note of APIs.
1.2. Target Vehicle
This specification is applied to the Autono-MaaS vehicles defined by [Architecture Specification for TOYOTA Vehicle Platform attached with Automated Driving System].
1.3. Definition of Term
2. Structure
2.1. Overall Structure of Autono-MaaS Vehicle
The overall structure of Autono-MaaS is shown (
2.2. System Structure of Autono-MaaS Vehicle
System Architecture is shown in
3. Application Interfaces
3.1. Typical Usage of APIs
In this section, Typical Usage of APIs is described.
A typical workflow of APIs is as follows (
3.2. APIs for vehicle motion control
In this section, the APIs for vehicle motion control are described.
3.2.1. API List for Vehicle Motion Control
3.2.1.1. Inputs
3.2.1.2. Outputs
3.2.2. Details of Each API for Vehicle Motion Control
3.2.2.1. Propulsion Direction Command
Request for shift change from/to forward (D range) to/from back (R range)
3.2.2.2. Immobilization Command
Request for turning on/off WheelLock
Values
The following table shows a case where EPB and Shift P are used for immobilization.
3.2.2.3. Standstill Command
Request for applying/releasing brake holding function
3.2.2.4. Acceleration Command
Request for acceleration
Values
Estimated maximum deceleration to Estimated maximum acceleration [m/s2]
Remarks
3.2.2.5. Front Wheel Steer Angle Command
3.2.2.6. Vehicle Mode Command
Request for changing from/to manual mode to/from Autonomous Mode
3.2.2.7. High Dynamics Command
If ADK would like to increase braking response performance* of VP, High Dynamics Command should be set to “High”.
*Reaction time in VP upon a request from ADK
3.2.2.8. Propulsion Direction Status
Current Shift Status
3.2.2.9. Immobilization Status
Each immobilization system status
Values
The following table shows a case where EPB and Shift P are used for immobilization.
3.2.2.10. Standstill Status
Status of Standstill
3.2.2.11. Estimated Gliding Acceleration
Acceleration calculated in VP in case that throttle is closed, considering slope, road load and etc.
Values
[unit: m/s2]
Remarks
3.2.2.12. Estimated Maximum Acceleration
Acceleration calculated in VP in case that throttle is fully open, considering slope, road load and etc.
Values
[unit: m/s2]
Remarks
3.2.2.13. Estimated Maximum Deceleration
Maximum deceleration calculated in VP in case that brake in VP is requested as maximum, considering slope, road load and etc.
Values
[unit: m/s2]
Remarks
3.2.2.14. Front Wheel Steer Angle
3.2.2.15. Front Wheel Steer Angle Rate
Front wheel steer angle rate
3.2.2.16. Front Wheel Steer Angle Rate Limitation
The limit of the Front wheel steer angle rate
Values
[unit: rad/s]
Remarks
The limitation is calculated from the “vehicle speed−steering angle rate” map as shown in following Table 5 and
A) At a low speed or stopped situation, use fixed value (0.751 [rad/s]).
B) At a higher speed, the steering angle rate is calculated from the vehicle speed using 3.432 m/s3.
3.2.2.17. Estimated Maximum Lateral Acceleration
Values
[unit: m/s2] (fixed value: 3.432)
Remarks
3.2.2.18. Estimated Maximum Lateral Acceleration Rate
Values
[unit: m/s3] (fixed value: 3.432)
Remarks
3.2.2.19. Intervention of Accelerator Pedal
This signal shows whether the accelerator pedal is depressed by a driver (intervention).
3.2.2.20. Intervention of Brake Pedal
This signal shows whether the brake pedal is depressed by a driver (intervention).
3.2.2.21. Intervention of Steering Wheel
This signal shows whether the steering wheel is operated by a driver (intervention).
3.2.2.22. Intervention of Shift Lever
This signal shows whether the shift lever is controlled by a driver (intervention)
3.2.2.23. Wheel Speed Pulse (Front Left), Wheel Speed Pulse (Front Right), Wheel Speed Pulse (Rear Left), Wheel Speed Pulse (Rear Right)
3.2.2.24. Wheel Rotation Direction (Front Left), Wheel Rotation Direction (Front Right), Wheel Rotation Direction (Rear Left), Wheel Rotation Direction (Rear Right)
3.2.2.25. Traveling Direction
Moving direction of vehicle
3.2.2.26. Vehicle Velocity
Estimated longitudinal velocity of vehicle
3.2.2.27. Longitudinal Acceleration
Estimated longitudinal acceleration of vehicle
3.2.2.28. Lateral Acceleration
lateral acceleration of vehicle
3.2.2.29. Yaw Rate
Sensor value of yaw rate
3.2.2.30. Slipping Detection
Detection of tire glide/spin/skid
3.2.2.31. Vehicle Mode State
Autonomous or manual mode
3.2.2.32. Readiness for Autonomization
This signal shows whether a vehicle can change to Autonomous Mode or not
3.2.2.33. Failure Status of VP Functions for Autonomous Mode
This signal is used to show whether VP functions have some failures mode when a vehicle works as Autonomous Mode.
3.2.2.34. PCS Alert Status
3.2.2.35. PCS Preparation Status
Prefill Status as the preparation of PCS Brake
3.2.2.36. PCS Brake/PCS Brake Hold Status
3.2.2.37. ADS/PCS Arbitration Status
Arbitration status
3.3. APIs for BODY Control
3.3.1. API List for BODY Control
3.3.1.1. Inputs
3.3.1.2. Outputs
3.3.2. Details of Each API for BODY Control
3.3.2.1. Turnsignal Command
Request to control turn-signal
3.3.2.2. Headlight Command
Request to control headlight
3.3.2.3. Hazardlight Command
Request to control hazardlight
3.3.2.4. Horn Pattern Command
Request to choose a pattern of ON-time and OFF-time per cycle
3.3.2.5. Horn Cycle Command
Request to choose the number of ON and OFF cycles
Values
0 to 7 [-]
Remarks
N/A
3.3.2.6. Continuous Horn Command
Request to turn on/off horn
3.3.2.7. Front Windshield Wiper Command
Request to control front windshield wiper
3.3.2.8. Rear Windshield Wiper Command
Request to control rear windshield wiper
3.3.2.9. HVAC (1st Row) Operation Command
Request to start/stop 1st row air conditioning control
3.3.2.10. HVAC (2nd Row) Operation Command
Request to start/stop 2nd row air conditioning control
3.3.2.11. Target Temperature (1st Left) Command
Request to set target temperature in front left area
3.3.2.12. Target Temperature (1st Right) Command
Request to set target temperature in front right area
3.3.2.13. Target Temperature (2nd Left) Command
Request to set target temperature in rear left area
3.3.2.14. Target Temperature (2nd Right) Command
Request to set target temperature in rear right area
3.3.2.15. HVAC Fan (1st Row) Command
Request to set fan level of front AC
3.3.2.16. HVAC Fan (2nd Row) Command
Request to set fan level of rear AC
3.3.2.17. Air Outlet (1st Row) Command
Request to set 1st row air outlet mode
3.3.2.18. Air Outlet (2nd Row) Command
Request to set 2nd row air outlet mode
3.3.2.19. Air Recirculation Command
Request to set air recirculation mode
3.3.2.20. AC Mode Command
Request to set AC mode
Remarks
3.3.2.21. Turnsignal Status
3.3.2.22. Headlight Status
3.3.2.23. Hazardlight Status
3.3.2.24. Horn Status
3.3.2.25. Front Windshield Wiper Status
3.3.2.26. Rear Windshield Wiper Status
3.3.2.27. HVAC (1st Row) Status
3.3.2.28. HVAC (2nd Row) Status
3.3.2.29. Target Temperature (1st Left) Status
3.3.2.30. Target Temperature (1st Right) Status
3.3.2.31. Target Temperature (2nd Left) Status
3.3.2.32. Target Temperature (2nd Right) Status
3.3.2.33. HVAC Fan (1st Row) Status
3.3.2.34. HVAC Fan (2nd Row) Status
3.3.2.35. Air Outlet (1st Row) Status
3.3.2.36. Air Outlet (2nd Row) Status
3.3.2.37. Air Recirculation Status
3.3.2.38. AC Mode Status
3.3.2.39. Seat Occupancy (1st Right) Status
3.3.2.40. Seat Belt (1st Left) Status
3.3.2.41. Seat Belt (1st Right) Status
3.3.2.42. Seat Belt (2nd Left) Status
3.3.2.43. Seat Belt (2nd Right) Status
3.3.2.44. Seat Belt (3rd Left) Status
3.3.2.45. Seat Belt (3rd Center) Status
3.3.2.46. Seat Belt (3rd Right) Status
3.4. APIs for Power Control
3.4.1. API List for Power Control
3.4.1.1. Inputs
3.4.1.2. Outputs
3.4.2. Details of Each API for Power Control
3.4.2.1. Power Mode Command
Request to control power mode
[Sleep]
Vehicle power off condition. In this mode, the main battery does not supply power to each system, and neither VCIB nor other VP ECUs are activated.
[Wake]
VCIB is awake by the auxiliary battery. In this mode, ECUs other than VCIB are not awake except for some of the body electrical ECUs.
[Driving Mode]
Vehicle power on condition. In this mode, the main battery supplies power to the whole VP and all the VP ECUs including VCIB are awake.
3.4.2.2. Power Mode Status
3.5. APIs for Failure Notification
3.5.1. API List for Failure Notification
3.5.1.1. Inputs
3.5.1.2. Outputs
3.5.2. Details of each API for Failure Notification
3.5.2.1. Request for ADS Operation
3.5.2.2. Impact Detection Signal
Transmission interval is 100 ms within fuel cutoff motion delay allowance time (1 s) so that data can be transmitted more than 5 times.
In this case, an instantaneous power interruption is taken into account.
3.5.2.3. Performance Deterioration of Brake System
3.5.2.4. Performance Deterioration of Propulsion System
3.5.2.5. Performance Deterioration of Shift Control System
3.5.2.6. Performance Deterioration of Immobilization System
3.5.2.7. Performance Deterioration of Steering System
3.5.2.8. Performance Deterioration of Power Supply System
3.5.2.9. Performance Deterioration of Communication System
3.6. APIs for Security
3.6.1. API List for Security
3.6.1.1. Inputs
3.6.1.2. Outputs
3.6.2. Details of Each API for Security
3.6.2.1. Door Lock (Front) Command, Door Lock (Rear) Command
3.6.2.2. Central Door Lock Command
Request to control all doors' lock
3.6.2.3. Device Authentication Signature the 1st word, Device Authentication Signature the 2nd word, Device Authentication Signature the 3rd word, Device Authentication Signature the 4th word, Device Authentication Seed the 1st word, Device Authentication Seed the 2nd word
Device Authentication Signature the 1st word is presented in from 1st to 8th bytes of the signature.
Device Authentication Signature the 2nd word is presented in from 9th to 16th bytes of the signature.
Device Authentication Signature the 3rd word is presented in from 17th to 24th bytes of the signature.
Device Authentication Signature the 4th word is presented in from 25th to 32nd bytes of the signature.
Device Authentication Seed the 1st word is presented in from 1st to 8th bytes of the seed.
Device Authentication Seed the 2nd word is presented in from 9th to 16th bytes of the seed.
3.6.2.4. Door Lock (1st Left) Status
3.6.2.5. Door Lock (1st Right) Status
3.6.2.6. Door Lock (2nd Left) Status
3.6.2.7. Door Lock (2nd Right) Status
3.6.2.8. Door Lock Status of all Doors
3.6.2.9. Alarm System Status
3.6.2.9.1. Trip Counter
This counter is incremented in a unit of trips by the Freshness Value management master ECU.
Values
0-FFFFh
Remarks
3.6.2.9.2. Reset Counter
This counter is incremented periodically by the Freshness Value management master ECU.
Values
0-FFFFFh
Remarks
3.6.2.10. 1st Left Door Open Status
Status of the current 1st-left door open/close of the vehicle platform
3.6.2.11. 1st Right Door Open Status
Status of the current 1st-right door open/close
3.6.2.12. 2nd Left Door Open Status
Status of the current 2nd-left door open/close
3.6.2.13. 2nd Right Door Open Status
Status of the current 2nd-right door open/close
3.6.2.14. Trunk Status
Status of the current trunk door open/close
3.6.2.15. Hood Open Status
Status of the current hood open/close
4. API Guides to control Toyota Vehicles
This section shows in detail the way of using APIs for Toyota vehicles.
4.1. APIs for Vehicle Motion Control
4.1.1. API List for Vehicle Motion Control
Input and output APIs for vehicle motion control are shown in Table 14 and Table 15, respectively. Usage guides of some APIs are presented in the following sections as indicated in each table.
4.1.1.1. Inputs
4.1.1.2. Outputs
4.1.2. API guides in Details for Vehicle Motion Control
4.1.2.1. Propulsion Direction Command
Please refer to 3.2.2.1 for value and remarks in detail.
First deceleration is requested by Acceleration Command and the vehicle is stopped. When Traveling direction is set to “standstill”, any shift position can be requested by Propulsion Direction Command. (In
Deceleration has to be requested by Acceleration Command until completing shift change.
After shift position is changed, acceleration/deceleration can be chosen based on Acceleration Command.
While Vehicle mode state=Autonomous Mode, driver's shift lever operation is not accepted.
4.1.2.2. Immobilization Command
Please refer to 3.2.2.2 for value and remarks in detail.
Deceleration is requested with Acceleration Command to make a vehicle stop. When Vehicle velocity goes to zero, Immobilization function is activated by Immobilization Command=“Applied”. Acceleration Command is set to Deceleration until Immobilization Status is set to “Applied”.
When deactivating Immobilization function, Immobilization Command=“Released” has to be requested and simultaneously Acceleration Command has to be set as deceleration until confirming Immobilization Status=“Released”.
After Immobilization function is deactivated, the vehicle can be accelerated/decelerated based on Acceleration Command.
4.1.2.3. Standstill Command
Please refer to 3.2.2.3 for value and remarks in detail.
In case where Standstill Command is set as “Applied”, brakehold function can be ready to be used and brakehold function is activated in a condition where a vehicle stops and Acceleration Command is set as Deceleration (<0). And then Standstill Status is changed to “Applied”. On the other hand, in case where Standstill Command is set as “Released”, brakehold function is deactivated.
To make a vehicle stop, deceleration is requested with Acceleration Command.
When the vehicle stops for a while, Traveling direction is changed to “standstill”. Even during Standstill status=“Applied”, deceleration shall be requested with Acceleration Command.
If you want the vehicle to move forward, Acceleration Command is set as Acceleration (>0). Then brake hold function is released and the vehicle is accelerated.
4.1.2.4. Acceleration Command
Please refer to 3.2.2.4 for value and remarks in detail.
The below shows how a vehicle behaves when an acceleration pedal is operated.
In case where the accelerator pedal is operated, a maximum acceleration value of either 1) one calculated from accelerator pedal stroke or 2) Acceleration Command input from ADK is chosen. ADK can see which value is selected by checking Intervention of accelerator pedal.
The below shows how a vehicle behaves when a brake pedal is operated.
Deceleration value in the vehicle is the sum of 1) one calculated from the brake pedal stroke and 2) one requested from ADK.
4.1.2.5. Front Wheel Steer Angle Command
Please refer to 3.2.2.5 for value and remarks in detail.
The below shows the way of using Front Wheel Steer Angle Command.
Front Wheel Steer Angle Command is set as a relative value from Front wheel steer angle.
For example, in case where Front wheel steer angle=0.1 [rad] and a vehicle goes straight;
If ADK would like to go straight, Front Wheel Steer Angle Command should be set to 0+0.1=0.1[rad].
If ADK requests to steer by −0.3 [rad], Front Wheel Steer Angle Command should be set to −0.3+0.1=−0.2 [rad].
The below shows how a vehicle behaves when a driver operates the steering.
A maximum value is selected either from 1) one calculated from steering wheel operation by the driver or 2) one requested by ADK.
Note that Front Wheel Steer Angle Command is not accepted if the driver strongly operates the steering wheel. This situation can be found by Intervention of steering wheel flag.
4.1.2.6. Vehicle Mode Command
The state machine of mode transition for Autono-MaaS vehicle is shown in
The explanation of each state is shown as follows.
The explanation of each transition is shown as follows.
4.2. APIs for BODY Control
4.2.1. API List for BODY Control
4.2.1.1. Inputs
4.2.1.2. Outputs
4.3. APIs for Power Control
4.3.1. API List for Power Control
4.3.1.1. Inputs
4.3.1.2. Outputs
4.4. APIs for Failure Notification
4.4.1. API List for Failure Notification
4.4.1.1. Inputs
4.4.1.2. Outputs
4.5. APIs for Security
4.5.1. API List for Security
Input and output APIs for Security are shown in Table 22 and Table 23, respectively. Usage guides of some APIs are presented in the following sections as indicated in each table.
4.5.1.1. Inputs
4.5.1.2. Outputs
4.5.2. API guides in Details for Security
4.5.2.1. Device Authentication Protocol
Device authentication is applied when the VCIB is activated from “Sleep” mode.
After the authentication succeeds, the VCIB can start to communicate with ADK.
Authentication process is as shown in
Though an embodiment of the present disclosure has been described, it should be understood that the embodiment disclosed herein is illustrative and non-restrictive in every respect. The scope of the present disclosure is defined by the terms of the claims and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
Number | Date | Country | Kind |
---|---|---|---|
2021-158034 | Sep 2021 | JP | national |