AUTONOMOUS DRIVING KIT, VEHICLE PLATFORM, VEHICLE CONTROL INTERFACE BOX, AND VEHICLE
20230112480 · 2023-04-13
Assignee
Inventors
Cpc classification
B62D15/0225
PERFORMING OPERATIONS; TRANSPORTING
B62D6/002
PERFORMING OPERATIONS; TRANSPORTING
B60W60/00
PERFORMING OPERATIONS; TRANSPORTING
B60W30/00
PERFORMING OPERATIONS; TRANSPORTING
International classification
B62D6/00
PERFORMING OPERATIONS; TRANSPORTING
B62D15/02
PERFORMING OPERATIONS; TRANSPORTING
Abstract
An ADK is attachable to and removable from a VP and issues an instruction for autonomous driving to the VP. The VP includes a steering system for steering of the VP. (An ADS of) the ADK includes a compute assembly and a communication module configured to communicate with the VP. The compute assembly obtains from the VP, a torque value relating to a steering system 33 through the communication module and transmits to the VP, a wheel steer angle command indicating the wheel steer angle in accordance with a driving plan for autonomous driving and the obtained torque value. Even when a user intervenes with an operation while the attachable and removable ADK that issues the instruction for autonomous driving controls the VP, stable steering can be achieved.
Claims
1. 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 including a steering system for steering of the vehicle platform, the autonomous driving kit comprising: a compute assembly; and a communication module configured to communicate with the vehicle platform, wherein the compute assembly obtains from the vehicle platform, a torque value relating to the steering system through the communication module, and transmits to the vehicle platform, a wheel steer angle command indicating a wheel steer angle in accordance with a driving plan for autonomous driving and the obtained torque value through the communication module.
2. The autonomous driving kit according to claim 1, wherein the steering system includes a sensor that detects steering torque, and the torque value is a value detected by the sensor.
3. The autonomous driving kit according to claim 1, wherein the steering system includes a steering motor, and the torque value is a torque value estimated from a current value of the steering motor.
4. The autonomous driving kit according to claim 1, wherein the steering system includes a steering motor, and the torque value is a value of maximum steering torque that the steering motor can output.
5. A vehicle comprising the autonomous driving kit according to claim 1.
6. A vehicle platform that communicates 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 being attachable to and removable from the vehicle platform, the vehicle platform comprising: 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, wherein the vehicle control interface box transmits a torque value relating to the steering system in the vehicle platform to the autonomous driving kit in accordance with a request from the autonomous driving kit that obtains the torque value, 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 wheel steer angle in accordance with a driving plan for autonomous driving and the torque value.
7. The vehicle platform according to claim 6, wherein the steering system includes a sensor that detects steering torque, and the torque value is a value detected by the sensor.
8. The vehicle platform according to claim 6, wherein the steering system includes a steering motor, and the torque value is a torque value estimated from a current value of the steering motor.
9. The vehicle platform according to claim 6, wherein the steering system includes a steering motor, and the torque value is a value of maximum steering torque that the steering motor can output.
10. A vehicle comprising the vehicle platform according to claim 6.
11. A vehicle control interface box that communicates with an autonomous driving kit and issues 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 being attachable to and removable from the vehicle platform, the vehicle platform including a steering system for steering of the vehicle platform, the vehicle control interface box comprising: a processor; and a memory in which a program executable by the processor is stored, wherein in accordance with the program stored in the memory, the processor transmits a torque value relating to the steering system in the vehicle platform to the autonomous driving kit in accordance with a request from the autonomous driving kit that obtains the torque value, 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 wheel steer angle in accordance with a driving plan for autonomous driving and the torque value.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
[0032]
[0033]
DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0034] 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.
Embodiment
[0035] <Overall Configuration>
[0036]
[0037] VP 20 can carry out autonomous driving in accordance with control requests from ADK 10. Though
[0038] 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
[0039] VP 20 includes a base vehicle 30 and a vehicle control interface box (VCIB) 40.
[0040] 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 steering torque sensor 57, a steering motor 58, a camera 54, and radar sensors 55 and 56.
[0041] 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.
[0042] 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.
[0043] 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.
[0044] 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 steering motor 58 as an actuator.
[0045] Pinion angle sensor 53 and steering torque sensor 57 are 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 steering motor 58 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 torque sensor 57 detects torque in a direction of rotation applied to a steering shaft between the steering wheel and the pinion gear and provides a value of detected torque to steering system 33. 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.
[0046] 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
[0047] 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.
[0048] 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.
[0049] 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.
[0050] 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.
[0051] 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.
[0052] 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.
[0053] 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.
[0054] <Detailed Configuration>
[0055]
[0056] 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.
[0057] 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.
[0058] 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.
[0059] 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.
[0060] 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.
[0061] 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.
[0062] 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.
[0063] For example, a control command (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.
[0064] 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.
[0065] 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.
[0066] 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.
[0067] 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.
[0068] 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.
[0069] 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.
[0070] 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.
[0071] 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.
[0072] 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.
[0073] 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.
[0074] 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.
[0075] 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.
[0076] <Control of Wheel Steer Angle>
[0077] In the configuration described above, stable steering when a user intervenes with steering by an operation onto a steering wheel is an issue.
[0078] Compute assembly 111 of ADS 11 of ADK 10 obtains from VP 20, a torque value relating to steering systems 331 and 332 through communication modules 111A and 111B and transmits a wheel steer angle command indicating a wheel steer angle in accordance with a driving plan for autonomous driving and the torque value to VP 20 through communication modules 111A and 111B.
[0079] ADK 10 thus transmits to VP 20, a wheel steer angle command indicating the wheel steer angle in accordance with the driving plan for autonomous driving and the torque value relating to steering systems 331 and 332 that is obtained from VP 20. Therefore, the vehicle can be steered based on the torque value relating to steering systems 331 and 332 on which intervention with steering by the user is reflected. Consequently, stable steering can be achieved even when the user intervenes with steering while attachable and removable ADK 10 that issues an instruction for autonomous driving controls VP 20.
[0080]
[0081] 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 sensor value from steering torque sensor 57, an estimated value of torque generated by steering motor 58, and maximum generated torque that steering motor 58 can output) necessary for calculation of the wheel steer angle (S112).
[0082] 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 or obtained by a sensor of each system (for example, pinion angle sensor 53 of steering system 33, steering torque sensor 57, and a current sensor of steering motor 58) of base vehicle 30 such as integrated control manager 31 (or VCIB 40) and steering system 33. In this embodiment, the value necessary for control of base vehicle 30 includes a torque value relating to steering system 33 such as a torque value detected by steering torque sensor 57, a torque value estimated from a current value of steering motor 58, and a torque value of maximum steering torque that steering motor 58 can output.
[0083] 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, a torque value detected by steering torque sensor 57, a torque value estimated from a current value of steering motor 58, and a torque value of maximum steering torque that steering motor 58 can output) from the memory of integrated control manager 31 (or the memory of VCIB 40) or the sensor of each system of base vehicle 30 (S212). The processor of VCIB 40 transmits the obtained value to ADK 10 (S213).
[0084] 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). Specifically, when it is determined that steering in autonomous driving has been intervened by an operation onto the steering wheel by the user based on the torque value from steering torque sensor 57, the estimated torque value of steering motor 58, or the maximum value of steering torque that steering motor 58 can output, for example, the steer angle the same as in an immediately preceding control cycle is calculated. The steer angle at the time when steering was intervened may be calculated in another manner, and the steer angle may be set, for example, to a value that does not indicate the steer angle. The processor of compute assembly 111 transmits the wheel steer angle command for indicating the calculated wheel steer angle to VP 20 (S115).
[0085] 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).
[0086] [Modification]
[0087] (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.
[0088] (2) In the embodiment described previously, as shown in
[0089] (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.
SUMMARY
[0090] (1) As shown in
[0091] Thus, ADK 10 transmits to VP 20, the wheel steer angle command that indicates the wheel steer angle in accordance with the torque value relating to steering system 33 that is obtained from VP 20 and the driving plan for autonomous driving. Therefore, ADK 10 can steer base vehicle 30 based on the torque value relating to steering system 33 on which intervention with steering by the user is reflected. Consequently, stable steering can be achieved even when the user intervenes with an operation while attachable and removable ADK 10 that issues an instruction for autonomous driving controls VP 20.
[0092] (2) As shown in
[0093] (3) As shown in
[0094] (4) As shown in
[0095] (5) As shown in
[0096] (6) As shown in
[0097] Thus, stable steering can be achieved even when the user intervenes with steering while attachable and removable ADK 10 that issues an instruction for autonomous driving controls VP 20.
[0098] (7) As shown in
[0099] (8) As shown in
[0100] Thus, stable steering can be achieved even when the user intervenes with steering while attachable and removable ADK 10 that issues an instruction for autonomous driving controls VP 20.
Example
[0101] API Specification for TOYOTA Vehicle Platform
[0102] Ver. 1.1
Records of Revision
[0103]
TABLE-US-00001 Date of Revision ver. Overview of Revision Reviser May 23, 2020 1.0 Creating a new material TOYOTA MOTOR Corp. Apr. 14, 2021 1.1 The figure of Front Wheel Steer TOYOTA Angle Rate Limitation is updated. MOTOR Corp. Explanation of Standstill Status is added.
Table of Contents
[0104] 1. Introduction [0105] 1.1. Purpose of this Specification [0106] 1.2. Target Vehicle [0107] 1.3. Definition of Term
[0108] 2. Structure [0109] 2.1. Overall Structure of Autono-MaaS Vehicle [0110] 2.2. System Structure of Autono-MaaS Vehicle
[0111] 3. Application Interfaces [0112] 3.1. Typical Usage of APIs [0113] 3.2. APIs for Vehicle Motion Control [0114] 3.2.1. API List for Vehicle Motion Control [0115] 3.2.2. Details of Each API for Vehicle Motion Control [0116] 3.3. APIs for BODY Control [0117] 3.3.1. API List for BODY Control [0118] 3.3.2. Details of Each API for BODY Control [0119] 3.4. APIs for Power Control [0120] 3.4.1. API List for Power Control [0121] 3.4.2. Details of Each API for Power Control [0122] 3.5. APIs for Failure Notification [0123] 3.5.1. API List for Failure Notification [0124] 3.5.2. Details of Each API for Failure Notification [0125] 3.6. APIs for Security [0126] 3.6.1. API List for Security [0127] 3.6.2. Details of Each API for Security
[0128] 4. API Guides to Control Toyota Vehicles [0129] 4.1. APIs for Vehicle Motion Control [0130] 4.1.1. API List for Vehicle Motion Control [0131] 4.1.2. API Guides in Details for Vehicle Motion Control [0132] 4.2. APIs for BODY Control [0133] 4.2.1. API List for BODY Control [0134] 4.3. APIs for Power Control [0135] 4.3.1. API List for Power Control [0136] 4.4. APIs for Failure Notification [0137] 4.4.1. API List for Failure Notification [0138] 4.5. APIs for Security [0139] 4.5.1. API List for Security [0140] 4.5.2. API Guides in Details for Security
[0141] 1. Introduction
[0142] 1.1. Purpose of this Specification
[0143] 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.
[0144] 1.2. Target Vehicle
[0145] This specification is applied to the Autono-MaaS vehicles defined by [Architecture Specification for TOYOTA Vehicle Platform attached with Automated Driving System].
[0146] 1.3. Definition of Term
TABLE-US-00002 TABLE 1 Definition of Term Term Definition ADS Autonomous Driving System ADK Autonomous Driving Kit VP Vehicle Platform VCIB Vehicle Control Interface Box. This is an ECU for the interface and the signal converter between ADS and VP’s sub systems. PCS Pre-Collision Safety
[0147] 2. Structure
[0148] 2.1. Overall Structure of Autono-MaaS Vehicle
[0149] The overall structure of Autono-MaaS is shown (
[0150] 2.2. System Structure of Autono-MaaS Vehicle
[0151] System Architecture is shown in
[0152] 3. Application Interfaces
[0153] 3.1. Typical Usage of APIs
[0154] In this section, Typical Usage of APIs is described.
[0155] A typical workflow of APIs is as follows (
[0156] 3.2. APIs for vehicle motion control
[0157] In this section, the APIs for vehicle motion control are described.
[0158] 3.2.1. API List for Vehicle Motion Control
[0159] 3.2.1.1. Inputs
TABLE-US-00003 TABLE 3 Signal Name Description Redundancy Propulsion Direction Request for shift change from/to forward N/A Command (D range) to/from back (R range) Immobilization Request for turning on/off WheelLock Applied Command Standstill Command Request for keeping on/off stationary Applied Acceleration Command Request for acceleration/deceleration Applied Front Wheel Steer Angle Request for front wheel steer angle Applied Command Vehicle Mode Command Request for changing from/to manual Applied mode to/from Autonomous Mode High Dynamics Request for increasing braking response Applied Command performance* *Reaction time in VP upon a request from ADK
[0160] 3.2.1.2. Outputs
TABLE-US-00004 TABLE 4 Output APIs for vehicle motion control Signal Name Description Redundancy Propulsion Direction Status Current shift status N/A Immobilization Status Status of immobilization (i.e. EPB and Shift P) Applied Standstill Status Standstill status N/A Estimated Gliding Acceleration Estimated vehicle acceleration/d N/A eceleration when throttle is fully closed Estimated maximum acceleration Estimated maximum acceleration Applied Estimated maximum deceleration Estimated maximum deceleration Applied Front wheel steer angle Front wheel steer angle Applied Front wheel steer angle rate Front wheel steer angle rate Applied Front wheel steer angle rate limitation Road wheel angle rate limit Applied Estimated maximum lateral Estimated max lateral acceleration Applied acceleration Estimated maximum lateral Estimated max lateral acceleration rate Applied acceleration rate Intervention of accelerator pedal This signal shows whether the accelerator pedal is N/A depressed by a driver (intervention) Intervention of brake pedal This signal shows whether the brake pedal N/A is depressed by a driver (intervention) Intervention of steering wheel This signal shows whether the steering N/A wheel is turned by a driver (intervention) Intervention of shift lever This signal shows whether the shift lever is N/A controlled by a driver (intervention) Wheel speed pulse (front left) Pulse from wheel speed sensor N/A (Front Left Wheel) Wheel rotation direction (front left) Rotation direction of wheel (Front Left) N/A Wheel speed pulse (front right) Pulse from wheel speed sensor (Front Right Wheel) N/A Wheel rotation direction (front right) Rotation direction of wheel (Front Right) N/A Wheel speed pulse (rear left) Pulse from wheel speed sensor (Rear Left Wheel) Applied Wheel rotation direction (Rear left) Rotation direction of wheel (Rear Left) Applied Wheel speed pulse (rear right) Pulse from wheel speed sensor (Rear Applied Right Wheel) Wheel rotation direction (Rear right) Rotation direction of wheel (Rear Right) Applied Traveling direction Moving direction of vehicle Applied Vehicle velocity Estimated longitudinal velocity of vehicle Applied Longitudinal acceleration Estimated longitudinal acceleration of vehicle Applied Lateral acceleration Sensor value of lateral acceleration of vehicle Applied Yawrate Sensor value of yaw rate Applied Slipping Detection Detection of tire glide/spin/skid Applied Vehicle mode state State of whether Autonomous Mode, manual mode Applied Readiness for autonomization Situation of whether the vehicle can Applied transition to Autonomous Mode or not Failure status of VP functions for This signal is used to show whether VP Applied Autonomous Mode functions have some failures mode when a vehicle works as Autonomous Mode. PCS Alert Status Status of PCS (Alert) N/A PCS Preparation Status Status of PCS (Prefill) N/A PCS Brake/PCS Brake Hold Status Status of PCS (PB/PBH) N/A ADS/PCS arbitration status ADS/PCS arbitration status N/A
[0161] 3.2.2. Details of Each API for Vehicle Motion Control
[0162] 3.2.2.1. Propulsion Direction Command
[0163] Request for shift change from/to forward (D range) to/from back (R range)
[0164] Values
TABLE-US-00005 Value Description Remarks 0 No Request 2 R Shift to R range 4 D Shift to D range other Reserved
[0165] Remarks [0166] Available only when Vehicle mode state=“Autonomous Mode.” [0167] Available only when a vehicle is stationary (Traveling direction=“standstill”). [0168] Available only when brake is applied.
[0169] 3.2.2.2. Immobilization Command
[0170] Request for turning on/off WheelLock
[0171] Values
[0172] The following table shows a case where EPB and Shift P are used for immobilization.
TABLE-US-00006 Value Description Remarks 0 No Request 1 Applied EPB is turned on and shift position is changed to “P” 2 Released EPB is turned off and shift position is changed to the value of Propulsion Direction Command
[0173] Remarks [0174] This API is used for parking a vehicle. [0175] Available only when Vehicle mode state=“Autonomous Mode.” [0176] Changeable only when the vehicle is stationary (Traveling direction=“standstill”). [0177] Changeable only while brake is applied.
[0178] 3.2.2.3. Standstill Command
[0179] Request for applying/releasing brake holding function
[0180] Values
TABLE-US-00007 Value Description Remarks 0 No Request 1 Applied Brake holding function is allowed. 2 Released
[0181] Remarks [0182] This API is used for choosing a status of whether the brake holding function is allowed. [0183] Available only when Vehicle mode state=“Autonomous Mode.” [0184] Acceleration Command (deceleration request) has to be continued until Standstill Status becomes “Applied”.
[0185] 3.2.2.4. Acceleration Command
[0186] Request for acceleration
[0187] Values
[0188] Estimated maximum deceleration to Estimated maximum acceleration [m/s.sup.2]
[0189] Remarks [0190] Available only when Vehicle mode state=“Autonomous Mode.” [0191] Acceleration (+) and deceleration (−) request based on Propulsion Direction Status direction. [0192] The upper/lower limit will vary based on Estimated maximum deceleration and Estimated maximum acceleration. [0193] When acceleration more than Estimated maximum acceleration is requested, the request is set to Estimated maximum acceleration. [0194] When deceleration more than Estimated maximum deceleration is requested, the request is set to Estimated maximum deceleration. [0195] In case where a driver operates a vehicle (over-ride), the requested acceleration may not be achieved. [0196] When PCS simultaneously works, VP should choose minimum acceleration (maximum deceleration).
[0197] 3.2.2.5. Front Wheel Steer Angle Command
[0198] Values
TABLE-US-00008 Value Description Remarks — [unit: rad]
[0199] Remarks [0200] Available only when Vehicle mode state=“Autonomous Mode” [0201] Left is positive value (+). Right is negative value (−). [0202] Front wheel steer angle is set to value (0) when the vehicle is going straight. [0203] This request is set as a relative value from the current one to prevent misalignment of “Front Wheel Steer Angle” from being accumulated. [0204] The request value should be set within Front wheel steer angle rate limitation.
[0205] In case where a driver operates a vehicle (over-ride), the requested Front Wheel Steer Angle may not be achieved.
[0206] 3.2.2.6. Vehicle Mode Command
[0207] Request for changing from/to manual mode to/from Autonomous Mode
[0208] Values
TABLE-US-00009 Value Description Remarks 0 No Request 1 Request For Autonomy 2 Deactivation Request means transition request to manual mode
[0209] Remarks
[0210] N/A
[0211] 3.2.2.7. High Dynamics Command
[0212] If ADK would like to increase braking response performance* of VP, High Dynamics Command should be set to “High”.
[0213] *Reaction time in VP upon a request from ADK
[0214] Values
TABLE-US-00010 Value Description Remarks 0 No Request 1 High 2-3 Reserved
[0215] Remarks
[0216] N/A
[0217] 3.2.2.8. Propulsion Direction Status
[0218] Current shift Status
[0219] Values
TABLE-US-00011 Value Description Remarks 0 Reserved 1 P 2 R 3 N 4 D 5 Reserved 6 Invalid value
[0220] Remarks [0221] If VP does not know the current shift status, this output is set to “Invalid Value.”
[0222] 3.2.2.9. Immobilization Status
[0223] Each immobilization system status
[0224] Values
[0225] The following table shows a case where EPB and Shift P are used for immobilization.
TABLE-US-00012 Value Shift EPB Description Remarks 0 0 Shift set to other than P, and EPB Released 1 0 Shift set to P and EPB Released 0 1 Shift set to other than P, and EPB applied 1 1 Shift set to P and EPB Applied
[0226] Remarks [0227] N/A
[0228] 3.2.2.10. Standstill Status
[0229] Status of Standstill
[0230] Values
TABLE-US-00013 Value Description Remarks 0 Released 1 Applied 2 Reserved 3 Invalid value
[0231] Remarks [0232] N/A
[0233] 3.2.2.11. Estimated Gliding Acceleration
[0234] Acceleration calculated in VP in case that throttle is closed, considering slope, road load and etc.
[0235] Values
[0236] [unit: m/s.sup.2]
[0237] Remarks [0238] When the Propulsion Direction Status is “D”, acceleration for forward direction shows a positive value. [0239] When the Propulsion Direction Status is “R”, acceleration for reverse direction shows a positive value.
[0240] 3.2.2.12. Estimated Maximum Acceleration
[0241] Acceleration calculated in VP in case that throttle is fully open, considering slope, road load and etc.
[0242] Values
[0243] [unit: m/s.sup.2]
[0244] Remarks [0245] When the Propulsion Direction Status is “D”, acceleration for forward direction shows a positive value. [0246] When the Propulsion Direction Status is “R”, acceleration for reverse direction shows a positive value.
[0247] 3.2.2.13. Estimated Maximum Deceleration
[0248] Maximum deceleration calculated in VP in case that brake in VP is requested as maximum, considering slope, road load and etc.
[0249] Values
[0250] [unit: m/s.sup.2]
[0251] Remarks [0252] When the Propulsion Direction Status is “D”, deceleration for forward direction shows a negative value. [0253] When the Propulsion Direction Status is “R”, deceleration for reverse direction shows a negative value.
[0254] 3.2.2.14. Front wheel steer angle
[0255] Values
TABLE-US-00014 Value Description Remarks Minimum Value Invalid value others [unit: rad]
[0256] Remarks [0257] Left is positive value (+). Right is negative value (−). [0258] This signal should show invalid value until VP can calculate correct value or when the sensor is invalid/failed.
[0259] 3.2.2.15. Front Wheel Steer Angle Rate
[0260] Front wheel steer angle rate
[0261] Values
TABLE-US-00015 Value Description Remarks Minimum Value Invalid value others [unit: rad/s]
[0262] Remarks [0263] Left is positive value (+). Right is negative value (−). [0264] This signal should show invalid value until VP can calculate correct value or when Front wheel steer angle shows the minimum value.
[0265] 3.2.2.16. Front Wheel Steer Angle Rate Limitation
[0266] The limit of the Front wheel steer angle rate
[0267] Values
[0268] [unit: rad/s]
[0269] Remarks
[0270] The limitation is calculated from the “vehicle speed−steering angle rate” map as shown in following Table 5 and
[0271] A) At a low speed or stopped situation, use fixed value (0.751 [rad/s]).
[0272] B) At a higher speed, the steering angle rate is calculated from the vehicle speed using 3.432 m/s.sup.3.
TABLE-US-00016 TABLE 5 “vehicle speed-steering angle rate” map Velocity [km/h] 0.0 36.0 40.0 67.0 84.0 Front Wheel Steer Angle Rate 0.751 0.751 0.469 0.287 0.253 Limitation [rad/s]
[0273] 3.2.2.17. Estimated Maximum Lateral Acceleration
[0274] Values
[0275] [unit: m/s.sup.2] (fixed value: 3.432)
[0276] Remarks [0277] Maximum lateral acceleration defined for VP.
[0278] 3.2.2.18. Estimated Maximum Lateral Acceleration Rate
[0279] Values
[0280] [unit: m/s.sup.3] (fixed value: 3.432)
[0281] Remarks [0282] Maximum lateral acceleration rate defined for VP.
[0283] 3.2.2.19. Intervention of Accelerator Pedal
[0284] This signal shows whether the accelerator pedal is depressed by a driver (intervention).
[0285] Values
TABLE-US-00017 Value Description Remarks 0 Not depressed 1 depressed 2 Beyond autonomy acceleration
[0286] Remarks [0287] When a position of accelerator pedal is higher than a defined threshold, this signal is set to “depressed”. [0288] When the requested acceleration calculated from a position of accelerator pedal is higher than the requested acceleration from ADS, this signal is set as “Beyond autonomy acceleration.”
[0289] 3.2.2.20. Intervention of Brake Pedal
[0290] This signal shows whether the brake pedal is depressed by a driver (intervention).
[0291] Values
TABLE-US-00018 Value Description Remarks 0 Not depressed 1 depressed 2 Beyond autonomy deceleration
[0292] Remarks [0293] When a position of brake pedal is higher than the defined threshold value, this signal is set to “depressed”. [0294] When the requested deceleration calculated from a position of brake pedal is higher than the requested deceleration from ADS, this signal is set as “Beyond autonomy deceleration”.
[0295] 3.2.2.21. Intervention of Steering Wheel
[0296] This signal shows whether the steering wheel is operated by a driver (intervention).
[0297] Values
TABLE-US-00019 Value Description Remarks 0 Not turned 1 ADS and driver collaboratively work 2 Only by human driver
[0298] Remarks [0299] In “Intervention of steering wheel=1”, considering the human driver's intent, EPS system drives the steering with the Human driver collaboratively. [0300] In “Intervention of steering wheel=2”, considering the human driver's intent, the steering request from ADS is not achieved. (The steering will be driven by human driver.)
[0301] 3.2.2.22. Intervention of Shift Lever
[0302] This signal shows whether the shift lever is controlled by a driver (intervention)
[0303] Values
TABLE-US-00020 Value Description Remarks 0 OFF 1 ON Controlled (moved to any shift position)
[0304] Remarks [0305] N/A
[0306] 3.2.2.23. Wheel Speed Pulse (Front Left), Wheel Speed Pulse (Front Right), Wheel Speed Pulse (Rear Left), Wheel Speed Pulse (Rear Right)
[0307] Values
TABLE-US-00021 Value Description Remarks Maximum Value in Invalid value The sensor is invalid. transmission bits others ticks [unit: −] The number of pulses per one round wheel depends on VP.
Remarks
[0308] A pulse value is integrated at the pulse falling timing.
[0309] This wheel speed sensor outputs 96 pulses with a single rotation. [0310] Regardless of invalid/failure of wheel speed sensor, wheel speed pulse will be updated. [0311] When “1” is subtracted from a pulse value which shows “0”, the value changes to “0xFF”. When “1” is added to a pulse value which shows “0xFF”, the value changes to “0”. [0312] Until the rotation direction is determined just after ECU is activated, a pulse value will be added as the rotation direction is “Forward”. [0313] When detected forward rotation, a pulse value will be added. [0314] When detected reverse rotation, a pulse value will be subtracted.
[0315] 3.2.2.24. Wheel Rotation Direction (Front Left), Wheel Rotation Direction (Front Right), Wheel Rotation Direction (Rear Left), Wheel Rotation Direction (Rear Right)
[0316] Values
TABLE-US-00022 Value Description Remarks 0 Forward 1 Reverse 2 Reserved 3 Invalid value The sensor is invalid.
[0317] Remarks [0318] “Forward” is set until the rotation direction is determined after VP is turned on.
[0319] 3.2.2.25. Traveling Direction
[0320] Moving direction of vehicle
[0321] Values
TABLE-US-00023 Value Description Remarks 0 Forward 1 Reverse 2 Standstill 3 Undefined
[0322] Remarks [0323] This signal shows “Standstill” when four wheel speed values are “0” during a constant time. [0324] When shift is changed right after vehicle starts, it is possible to be “Undefined”.
[0325] 3.2.2.26. Vehicle Velocity
[0326] Estimated longitudinal velocity of vehicle
[0327] Values
TABLE-US-00024 Value Description Remarks Maximum Value in Invalid value The sensor is invalid. transmission bits others Velocity [unit: m/s]
[0328] Remarks [0329] The value of this signal is a positive value when both forward direction and reverse direction.
[0330] 3.2.2.27. Longitudinal Acceleration
[0331] Estimated longitudinal acceleration of vehicle
[0332] Values
TABLE-US-00025 Value Description Remarks Minimum Value in Invalid value The sensor is transmission bits invalid. others Acceleration [unit: m/s.sup.2]
Remarks
[0333] Acceleration (+) and deceleration (−) value based on Propulsion Direction Status direction.
[0334] 3.2.2.28. Lateral Acceleration
[0335] lateral acceleration of vehicle
[0336] Values
TABLE-US-00026 Value Description Remarks Minimum Value in Invalid value The sensor is transmission bits invalid. others Acceleration [unit: m/s.sup.2]
[0337] Remarks [0338] A positive value shows counterclockwise. A negative value shows clockwise.
[0339] 3.2.2.29. Yaw Rate
[0340] Sensor value of yaw rate
[0341] Values
TABLE-US-00027 Value Description Remarks Minimum Value in Invalid value The sensor is invalid. transmission bits others Yaw rate [unit: deg/s]
[0342] Remarks [0343] A positive value shows counterclockwise. A negative value shows clockwise.
[0344] 3.2.2.30. Slipping Detection
[0345] Detection of tire glide/spin/skid
[0346] Values
TABLE-US-00028 Value Description Remarks 0 Not Slipping 1 Slipping 2 Reserved 3 Invalid value
[0347] Remarks [0348] This signal is determined as “Slipping” when any of the following systems has been activated. [0349] ABS (Anti-lock Braking System) [0350] TRC (TRaction Control) [0351] VSC (Vehicle Stability Control) [0352] VDIM (Vehicle Dynamics Integrated Management)
[0353] 3.2.2.31. Vehicle Mode State
[0354] Autonomous or manual mode
[0355] Values
TABLE-US-00029 Value Description Remarks 0 Manual Mode The mode starts from Manual mode. 1 Autonomous Mode
[0356] Remarks [0357] The initial state is set to “Manual Mode.”
[0358] 3.2.2.32. Readiness for Autonomization
[0359] This signal shows whether a vehicle can change to Autonomous Mode or not
[0360] Values
TABLE-US-00030 Value Description Remarks 0 Not Ready For Autonomous Mode 1 Ready For Autonomous Mode 3 Invalid The status is not determined yet.
[0361] Remarks [0362] N/A
[0363] 3.2.2.33. Failure Status of VP Functions for Autonomous Mode
[0364] This signal is used to show whether VP functions have some failures mode when a vehicle works as Autonomous Mode.
[0365] Values
TABLE-US-00031 Value Description Remarks 0 No fault 1 Fault 3 Invalid The status is not determined yet.
[0366] Remarks [0367] N/A
[0368] 3.2.2.34. PCS Alert Status
[0369] Values
TABLE-US-00032 Value Description Remarks 0 Normal 1 Alert Request alert from PCS system 3 Unavailable
[0370] Remarks
[0371] N/A
[0372] 3.2.2.35. PCS Preparation Status
[0373] Prefill Status as the preparation of PCS Brake
[0374] Values
TABLE-US-00033 Value Description Remarks 0 Normal 1 Active 3 Unavailable
[0375] Remarks [0376] “Active” is a status in which PCS prepares brake actuator to shorten the latency from a deceleration request issued by PCS. [0377] When a value turns to “Active” during Vehicle mode state=“Autonomous Mode,” “ADS/PCS arbitration status” shows “ADS”.
[0378] 3.2.2.36. PCS Brake/PCS Brake Hold Status
[0379] Values
TABLE-US-00034 Value Description Remarks 0 Normal 1 PCS Brake 2 PCS Brake Hold 7 Unavailable
[0380] Remarks
[0381] N/A
[0382] 3.2.2.37. ADS/PCS Arbitration Status
[0383] Arbitration status
[0384] Values
TABLE-US-00035 Value Description Remarks 0 No Request 1 ADS ADS 2 PCS PCS Brake or PCS Brake Hold 3 Invalid value
[0385] Remarks [0386] When acceleration requested by PCS system in VP is smaller than one requested by ADS, the status is set as “PCS”. [0387] When acceleration requested by PCS system in VP is larger than one requested by ADS, the status is set as “ADS”.
[0388] 3.3. APIs for BODY control
[0389] 3.3.1. API List for BODY control
[0390] 3.3.1.1. Inputs
TABLE-US-00036 TABLE 6 Input APIs for BODY Control Signal Name Description Redundancy Turnsignal command Command to control the turnsignallight mode of N/A the vehicle platform Headlight command Command to control the headlight mode of the N/A vehicle platform Hazardlight command Command to control the hazardlight mode of the N/A vehicle platform Horn pattern command Command to control the pattern of horn ON-time N/A and OFF-time per cycle of the vehicle platform Horn cycle command Command to control the number of horn N/A ON/OFF cycles of the vehicle platform Continuous horn command Command to control of horn ON of the vehicle N/A platform Front windshield wiper command Command to control the front windshield wiper N/A of the vehicle platform Rear windshield wiper command Command to control the rear windshield wiper N/A mode of the vehicle platform HVAC (1st row) operation Command to start/stop 1st row air conditioning N/A command control HVAC (2nd row) operation Command to start/stop 2nd row air conditioning N/A command control Target temperature (1st left) Command to set the target temperature around N/A command front left area Target temperature (1st right) Command to set the target temperature around N/A command front right area Target temperature (2nd left) Command to set the target temperature around N/A command rear left area Target temperature (2nd right) Command to set the target temperature around N/A command rear right area HVAC fan (1st row) command Command to set the fan level on the front AC N/A HVAC fan (2nd row) command Command to set the fan level on the rear AC N/A Air outlet (1st row) command Command to set the mode of 1st row air outlet N/A Air outlet (2nd row) command Command to set the mode of 2nd row air outlet N/A Air recirculation command Command to set the air recirculation mode N/A AC mode command Command to set the AC mode N/A
[0391] 3.3.1.2. Outputs
TABLE-US-00037 TABLE 7 Output APIs for BODY Control Signal Name Description Redundancy Turnsignal status Status of the current turnsignallight N/A mode of the vehicle platform Headlight status Status of the current headlight mode of N/A the vehicle platform Hazardlight status Status of the current hazardlight mode N/A of the vehicle platform Horn status Status of the current horn of the vehicle N/A platform Front windshield wiper status Status of the current front windshield N/A wiper mode of the vehicle platform Rear windshield wiper status Status of the current rear windshield N/A wiper mode of the vehicle platform HVAC (1st row) status Status of activation of the 1.sup.st row HVAC N/A HVAC (2nd row) status Status of activation of the 2.sup.nd row HVAC N/A Target temperature (1st left) Status of set temperature of 1.sup.st row left N/A status Target temperature (1st right) Status of set temperature of 1.sup.st row right N/A status Target temperature (2nd left) Status of set temperature of 2.sup.nd row left N/A status Target temperature (2nd right) Status of set temperature of 2.sup.nd row N/A status right HVAC fan (1st row) status Status of set fan level of 1.sup.st row N/A HVAC fan (2nd row) status Status of set fan level of 2.sup.nd row N/A Air outlet (1st row) status Status of mode of 1.sup.st row air outlet N/A Air outlet (2nd row) status Status of mode of 2.sup.nd row air outlet N/A Air recirculation status Status of set air recirculation mode N/A AC mode status Status of set AC mode N/A Seat occupancy (1st right) Seat occupancy status in 1st right seat N/A status Seat belt (1st left) status Status of driver’s seat belt buckle switch N/A Seat belt (1st right) status Status of passenger’s seat belt buckle N/A switch Seat belt (2nd left) status Seat belt buckle switch status in 2nd left N/A seat Seat belt (2nd right) status Seat belt buckle switch status in 2nd N/A right seat Seat belt (3rd left) status Seat belt buckle switch status in 3rd left N/A seat Seat belt (3rd center) status Seat belt buckle switch status in 3rd N/A center seat Seat belt (3rd right) status Seat belt buckle switch status in 3rd N/A right seat
[0392] 3.3.2. Details of Each API for BODY Control
[0393] 3.3.2.1. Turnsignal command
[0394] Request to control turn-signal
[0395] Values
TABLE-US-00038 Value Description Remarks 0 OFF 1 Right Right blinker ON 2 Left Left blinker ON 3 Reserved
[0396] Remarks [0397] N/A
[0398] 3.3.2.2. Headlight Command
[0399] Request to control headlight
[0400] Values
TABLE-US-00039 Value Description Remarks 0 No Request Keep current mode 1 TAIL mode request Side lamp mode 2 HEAD mode request Lo mode 3 AUTO mode request Auto mode 4 HI mode request Hi mode 5 OFF Mode Request 6-7 Reserved
[0401] Remarks [0402] This command is valid when headlight mode on the combination switch=“OFF” or “Auto mode=ON.” [0403] Driver operation overrides this command.
[0404] 3.3.2.3. Hazardlight Command
[0405] Request to control hazardlight
[0406] Values
TABLE-US-00040 Value Description Remarks 0 No Request 1 ON
[0407] Remarks [0408] Driver operation overrides this command. [0409] Hazardlight is ON while receiving “ON” command.
[0410] 3.3.2.4. Horn Pattern Command
[0411] Request to choose a pattern of ON-time and OFF-time per cycle
[0412] Values
TABLE-US-00041 Value Description Remarks 0 No request 1 Pattern 1 ON-time: 250 ms OFF-time: 750 ms 2 Pattern 2 ON-time: 500 ms OFF-time: 500 ms 3 Pattern 3 Reserved 4 Pattern 4 Reserved 5 Pattern 5 Reserved 6 Pattern 6 Reserved 7 Pattern 7 Reserved
[0413] Remarks
[0414] N/A
[0415] 3.3.2.5. Horn Cycle Command
[0416] Request to choose the number of ON and OFF cycles
[0417] Values
[0418] 0 to 7 [-]
[0419] Remarks
[0420] N/A
[0421] 3.3.2.6. Continuous Horn Command
[0422] Request to turn on/off horn
[0423] Values
TABLE-US-00042 Value Description Remarks 0 No request 1 ON
[0424] Remarks [0425] This command's priority is higher than 3.3.2.4 Horn pattern and 3.3.2.5 Horn cycle command. [0426] Horn is “ON” while receiving “ON” command.
[0427] 3.3.2.7. Front Windshield Wiper Command
[0428] Request to control front windshield wiper
[0429] Values
TABLE-US-00043 Value Description Remarks 0 OFF mode request 1 Lo mode request 2 Hi mode request 3 Intermittent mode request 4 Auto mode request 5 Mist mode request One-time wiping 6,7 Reserved
[0430] Remarks [0431] This command is valid when front windshield wiper mode on a combination switch is “OFF” or “AUTO”. [0432] Driver input overrides this command. [0433] Windshield wiper mode is kept while receiving a command. [0434] Wiping speed of intermittent mode is fixed.
[0435] 3.3.2.8. Rear Windshield Wiper Command
[0436] Request to control rear windshield wiper
[0437] Values
TABLE-US-00044 Value Description Remarks 0 OFF mode request 1 Lo mode request 2 Reserved 3 Intermittent mode request 4-7 Reserved
[0438] Remarks [0439] Driver input overrides this command [0440] Windshield wiper mode is kept while receiving a command. [0441] Wiping speed of intermittent mode is fixed.
[0442] 3.3.2.9. HVAC (1st Row) Operation Command
[0443] Request to start/stop 1st row air conditioning control
[0444] Values
TABLE-US-00045 Value Description Remarks 0 No request 1 ON 2 OFF
[0445] Remarks [0446] N/A
[0447] 3.3.2.10. HVAC (2nd Row) Operation Command
[0448] Request to start/stop 2nd row air conditioning control
[0449] Values
TABLE-US-00046 Value Description Remarks 0 No request 1 ON 2 OFF
[0450] Remarks [0451] N/A
[0452] 3.3.2.11. Target Temperature (1st Left) Command
[0453] Request to set target temperature in front left area
[0454] Values
TABLE-US-00047 Value Description Remarks 0 No request 60 to 85 Target temperature [unit: ° F.] (by 1.0° F.)
[0455] Remarks [0456] In case ° C. is used in VP, value should be set as ° C.
[0457] 3.3.2.12. Target Temperature (1st Right) Command
[0458] Request to set target temperature in front right area
[0459] Values
TABLE-US-00048 Value Description Remarks 0 No request 60 to 85 Target temperature [unit: ° F.] (by 1.0° F.)
[0460] Remarks [0461] In case ° C. is used in VP, value should be set as ° C.
[0462] 3.3.2.13. Target Temperature (2nd Left) Command
[0463] Request to set target temperature in rear left area
[0464] Values
TABLE-US-00049 Value Description Remarks 0 No request 60 to 85 Target temperature [unit: ° F.] (by 1.0° F.)
[0465] Remarks [0466] In case ° C. is used in VP, value should be set as ° C.
[0467] 3.3.2.14. Target Temperature (2nd Right) Command
[0468] Request to set target temperature in rear right area
[0469] Values
TABLE-US-00050 Value Description Remarks 0 No request 60 to 85 Target temperature [unit: ° F.] (by 1.0° F.)
[0470] Remarks [0471] In case ° C. is used in VP, value should be set as ° C.
[0472] 3.3.2.15. HVAC Fan (1st Row) Command
[0473] Request to set fan level of front AC
[0474] Values
TABLE-US-00051 Value Description Remarks 0 No request 1 to 7 (Maximum) Fan level
[0475] Remarks [0476] If you would like to turn the fan level to 0 (OFF), you should transmit “HVAC (1st row) operation command=OFF.” [0477] If you would like to turn the fan level to AUTO, you should transmit “HVAC (1st row) operation command=ON.”
[0478] 3.3.2.16. HVAC Fan (2nd Row) Command
[0479] Request to set fan level of rear AC
[0480] Values
TABLE-US-00052 Value Description Remarks 0 No request 1 to 7 (Maximum) Fan level
[0481] Remarks [0482] If you would like to turn the fan level to 0 (OFF), you should transmit “HVAC (2nd row) operation command=OFF.” [0483] If you would like to turn the fan level to AUTO, you should transmit “HVAC (2nd row) operation command=ON.”
[0484] 3.3.2.17. Air Outlet (1st Row) Command
[0485] Request to set 1st row air outlet mode
[0486] Values
TABLE-US-00053 Value Description Remarks 0 No Operation 1 UPPER Air flows to upper body 2 U/F Air flows to upper body and feet 3 FEET Air flows to feet 4 F/D Air flows to feet and windshield defogger
[0487] Remarks [0488] N/A
[0489] 3.3.2.18. Air Outlet (2nd Row) Command
[0490] Request to set 2nd row air outlet mode
[0491] Values
TABLE-US-00054 Value Description Remarks 0 No Operation 1 UPPER Air flows to upper body 2 U/F Air flows to the upper body and feet 3 FEET Air flows to feet.
[0492] Remarks [0493] N/A
[0494] 3.3.2.19. Air Recirculation Command
[0495] Request to set air recirculation mode
[0496] Values
TABLE-US-00055 Value Description Remarks 0 No request 1 ON 2 OFF
[0497] Remarks [0498] N/A
[0499] 3.3.2.20. AC Mode Command
[0500] Request to set AC mode
[0501] Values
TABLE-US-00056 Value Description Remarks 0 No request 1 ON 2 OFF
[0502] Remarks [0503] N/A
[0504] 3.3.2.21. Turnsignal Status
[0505] Values
TABLE-US-00057 Value Description Remarks 0 OFF 1 Left 2 Right 3 Invalid
[0506] Remarks
[0507] N/A
[0508] 3.3.2.22. Headlight Status
[0509] Values
TABLE-US-00058 Value Description Remarks 0 OFF 1 TAIL 2 Lo 3 Reserved 4 Hi 5-6 Reserved 7 Invalid
[0510] Remarks
[0511] N/A
[0512] 3.3.2.23. Hazardlight Status
[0513] Values
TABLE-US-00059 Value Description Remarks 0 OFF 1 Hazard 2 Reserved 3 Invalid
[0514] Remarks
[0515] N/A
[0516] 3.3.2.24. Horn Status
[0517] Values
TABLE-US-00060 Value Description Remarks 0 OFF 1 ON 2 Reserved 3 Invalid
[0518] Remarks
[0519] In the case that 3.3.2.4 the Horn Pattern Command is active, the Horn status is “1” even if there are OFF periods in some patterns.
[0520] 3.3.2.25. Front Windshield Wiper Status
[0521] Values
TABLE-US-00061 Value Description Remarks 0 OFF 1 Lo 2 Hi 3 INT 4-5 Reserved 6 Fail 7 Invalid
[0522] Remarks
[0523] N/A
[0524] 3.3.2.26. Rear Windshield Wiper Status
[0525] Values
TABLE-US-00062 Value Description Remarks 0 OFF 1 Lo 2 Reserved 3 INT 4-5 Reserved 6 Fail 7 Invalid
[0526] Remarks
[0527] N/A
[0528] 3.3.2.27. HVAC (1st Row) Status
[0529] Values
TABLE-US-00063 Value Description Remarks 0 OFF 1 ON
[0530] Remarks [0531] N/A
[0532] 3.3.2.28. HVAC (2nd Row) Status
[0533] Values
TABLE-US-00064 Value Description Remarks 0 OFF 1 ON
[0534] Remarks [0535] N/A
[0536] 3.3.2.29. Target Temperature (1st Left) Status
[0537] Values
TABLE-US-00065 Value Description Remarks 0 Lo Max cold 60 to 85 [unit: ° F.] Target temperature 100 Hi Max hot FFh Unknown
[0538] Remarks [0539] In case ° C. is used in VP, value should be set as ° C.
[0540] 3.3.2.30. Target Temperature (1st Right) Status
[0541] Values
TABLE-US-00066 Value Description Remarks 0 Lo Max cold 60 to 85 [unit: ° F.] Target temperature 100 Hi Max hot FFh Unknown
[0542] Remarks [0543] In case ° C. is used in VP, value should be set as ° C.
[0544] 3.3.2.31. Target Temperature (2nd Left) Status
[0545] Values
TABLE-US-00067 Value Description Remarks 0 Lo Max cold 60 to 85 [unit: ° F.] Target temperature 100 Hi Max hot FFh Unknown
[0546] Remarks [0547] In case ° C. is used in VP, value should be set as ° C.
[0548] 3.3.2.32. Target Temperature (2nd Right) Status
[0549] Values
TABLE-US-00068 Value Description Remarks 0 Lo Max cold 60 to 85 [unit: ° F.] Target temperature 100 Hi Max hot FFh Unknown
[0550] Remarks [0551] In case ° C. is used in VP, value should be set as ° C.
[0552] 3.3.2.33. HVAC Fan (1st Row) Status
[0553] Values
TABLE-US-00069 Value Description Remarks 0 OFF 1 to 7 Fan Level 8 Undefined
[0554] Remarks [0555] N/A
[0556] 3.3.2.34. HVAC Fan (2nd Row) Status
[0557] Values
TABLE-US-00070 Value Description Remarks 0 OFF 1 to 7 Fan Level 8 Undefined
[0558] Remarks [0559] N/A
[0560] 3.3.2.35. Air Outlet (1st Row) Status
[0561] Values
TABLE-US-00071 Value Description Remarks 0 ALL OFF 1 UPPER Air flows to upper body 2 U/F Air flows to upper body and feet 3 FEET Air flows to feet. 4 F/D Air flows to feet and windshield defogger operates 5 DEF Windshield defogger 7 Undefined
[0562] Remarks [0563] N/A
[0564] 3.3.2.36. Air Outlet (2nd Row) Status
[0565] Values
TABLE-US-00072 Value Description Remarks 0 ALL OFF 1 UPPER Air flows to upper body 2 U/F Air flows to upper body and feet 3 FEET Air flows to feet. 7 Undefined
[0566] Remarks [0567] N/A
[0568] 3.3.2.37. Air Recirculation Status
[0569] Values
TABLE-US-00073 Value Description Remarks 0 OFF 1 ON
[0570] Remarks [0571] N/A
[0572] 3.3.2.38. AC Mode Status
[0573] Values
TABLE-US-00074 Value Description Remarks 0 OFF 1 ON
[0574] Remarks [0575] N/A
[0576] 3.3.2.39. Seat Occupancy (1st Right) Status
[0577] Values
TABLE-US-00075 Value Description Remarks 0 Not occupied 1 Occupied 2 Undecided In case of IG OFF or communication disruption to seat sensor 3 Failed
[0578] Remarks [0579] When there is luggage on the seat, this signal may be set as “Occupied”.
[0580] 3.3.2.40. Seat Belt (1st Left) Status
[0581] Values
TABLE-US-00076 Value Description Remarks 0 Buckled 1 Unbuckled 2 Undetermined In case where sensor does not work just after IG-ON 3 Fault of a switch
[0582] Remarks
[0583] N/A
[0584] 3.3.2.41. Seat Belt (1st Right) Status
[0585] Values
TABLE-US-00077 Value Description Remarks 0 Buckled 1 Unbuckled 2 Undetermined In case where sensor does not work just after IG-ON 3 Fault of a switch
[0586] Remarks
[0587] N/A
[0588] 3.3.2.42. Seat Belt (2nd Left) Status
[0589] Values
TABLE-US-00078 Value Description Remarks 0 Buckled 1 Unbuckled 2 Undetermined In case where sensor does not work just after IG-ON 3 Reserved
[0590] Remarks [0591] cannot detect sensor failure
[0592] 3.3.2.43. Seat Belt (2nd Right) Status
[0593] Values
TABLE-US-00079 Value Description Remarks 0 Buckled 1 Unbuckled 2 Undetermined In case where sensor does not work just after IG-ON 3 Reserved
[0594] Remarks [0595] cannot detect sensor failure
[0596] 3.3.2.44. Seat Belt (3rd Left) Status
[0597] Values
TABLE-US-00080 Value Description Remarks 0 Buckled 1 Unbuckled 2 Undetermined In case where sensor does not work just after IG-ON 3 Reserved
[0598] Remarks [0599] cannot detect sensor failure
[0600] 3.3.2.45. Seat Belt (3rd Center) Status
[0601] Values
TABLE-US-00081 Value Description Remarks 0 Buckled 1 Unbuckled 2 Undetermined In case where sensor does not work just after IG-ON 3 Reserved
[0602] Remarks [0603] cannot detect sensor failure
[0604] 3.3.2.46. Seat Belt (3rd Right) Status
[0605] Values
TABLE-US-00082 Value Description Remarks 0 Buckled 1 Unbuckled 2 Undetermined In case where sensor does not work just after IG-ON 3 Reserved
[0606] Remarks [0607] cannot detect sensor failure
[0608] 3.4. APIs for Power control
[0609] 3.4.1. API List for Power control
[0610] 3.4.1.1. Inputs
TABLE-US-00083 TABLE 8 Input APIs for Power control Signal Name Description Redundancy Power mode command Command to control the N/A power mode of VP
[0611] 3.4.1.2. Outputs
TABLE-US-00084 TABLE 9 Output APIs for Power control Signal Name Description Redundancy Power mode status Status of the current N/A power mode of VP
[0612] 3.4.2. Details of Each API for Power Control
[0613] 3.4.2.1. Power Mode Command
[0614] Request to control power mode
[0615] Values
TABLE-US-00085 Value Description Remarks 0 No request 1 Sleep Turns OFF the vehicle 2 Wake Turns ON VCIB 3 Reserved Reserved for data expansion 4 Reserved Reserved for data expansion 5 Reserved Reserved for data expansion 6 Drive Turns ON the vehicle
[0616] Remarks [0617] The state machine diagram of the power modes is shown in
[0618] [Sleep]
[0619] 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.
[0620] [Wake]
[0621] 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.
[0622] [Driving Mode]
[0623] 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.
[0624] 3.4.2.2. Power Mode Status
[0625] Values
TABLE-US-00086 Value Description Remarks 0 Reserved 1 Sleep 2 Wake 3 Reserved 4 Reserved 5 Reserved 6 Drive 7 Unknown means unhealthy situation would occur
[0626] Remarks [0627] VCIB will transmit [Sleep] as Power_Mode_Status continuously for 3000 [ms] after executing the sleep sequence. And then, VCIB will shut down. [0628] ADS should stop transmitting signals to VCIB while VCIB is transmitting [Sleep].
[0629] 3.5. APIs for Failure Notification
[0630] 3.5.1. API List for Failure Notification
[0631] 3.5.1.1. Inputs
TABLE-US-00087 TABLE 10 Input APIs for Failure Notification Signal Name Description Redundancy N/A N/A N/A
[0632] 3.5.1.2. Outputs
TABLE-US-00088 TABLE 11 Output APIs for Failure Notification Signal Name Description Redundancy Request for ADS operation Applied Impact detection signal N/A Performance deterioration of Applied brake system Performance deterioration of N/A propulsion system Performance deterioration of shift N/A control system Performance deterioration of Applied immobilization system Performance deterioration of Applied steering system Performance deterioration of Applied power supply system Performance deterioration of Applied communication system
[0633] 3.5.2. Details of each API for Failure Notification
[0634] 3.5.2.1. Request for ADS Operation
[0635] Values
TABLE-US-00089 Value Description Remarks 0 No request 1 Need maintenance 2 Need to be back to garage 3 Need to stop immediately Others Reserved
[0636] Remarks [0637] This signal shows a behavior which the ADS is expected to do according to a failure which happened in the VP.
[0638] 3.5.2.2. Impact Detection Signal
[0639] Values
TABLE-US-00090 Value Description Remarks 0 Normal 5 Crash detection with activated airbag 6 Crash detection with shut off high voltage circuit 7 Invalid value Others Reserved
[0640] Remarks [0641] When the event of crash detection is generated, the signal is transmitted 50 consecutive times every 100 [ms]. If the crash detection state changes before the signal transmission is completed, the high signal of priority is transmitted.
[0642] Priority: crash detection>normal [0643] Transmits for 5 s regardless of ordinary response at crash, because the vehicle breakdown judgment system shall be sent a voltage OFF request for 5 s or less after crash in HV vehicle.
[0644] Transmission interval is 100 ms within fuel cutoff motion delay allowance time (1 s) so that data can be transmitted more than 5 times.
[0645] In this case, an instantaneous power interruption is taken into account.
[0646] 3.5.2.3. Performance Deterioration of Brake System
[0647] Values
TABLE-US-00091 Value Description Remarks 0 Normal — 1 Deterioration detected —
[0648] Remarks [0649] N/A
[0650] 3.5.2.4. Performance Deterioration of Propulsion System
[0651] Values
TABLE-US-00092 Value Description Remarks 0 Normal — 1 Deterioration detected —
[0652] Remarks [0653] N/A
[0654] 3.5.2.5. Performance Deterioration of Shift Control System
[0655] Values
TABLE-US-00093 Value Description Remarks 0 Normal — 1 Deterioration detected —
[0656] Remarks [0657] N/A
[0658] 3.5.2.6. Performance Deterioration of Immobilization System
[0659] Values
TABLE-US-00094 Value Description Remarks 0 Normal — 1 Deterioration detected —
[0660] Remarks [0661] N/A
[0662] 3.5.2.7. Performance Deterioration of Steering System
[0663] Values
TABLE-US-00095 Value Description Remarks 0 Normal — 1 Deterioration detected —
[0664] Remarks [0665] N/A
[0666] 3.5.2.8. Performance Deterioration of Power Supply System
[0667] Values
TABLE-US-00096 Value Description Remarks 0 Normal — 1 Deterioration detected —
[0668] Remarks [0669] N/A
[0670] 3.5.2.9. Performance Deterioration of Communication System
[0671] Values
TABLE-US-00097 Value Description Remarks 0 Normal — 1 Deterioration detected —
[0672] Remarks [0673] N/A
[0674] 3.6. APIs for Security
[0675] 3.6.1. API List for Security
[0676] 3.6.1.1. Inputs
TABLE-US-00098 TABLE 12 Input APIs for Security Signal Name Description Redundancy Door Lock (front) command Command to control both 1st doors lock N/A Door Lock (rear) command Command to control both 2nd doors N/A and trunk lock Central door lock command Command to control the all door lock N/A Device Authentication Signature This is the 8th byte from the 1st byte of N/A the 1st word the Signature value. Device Authentication Signature This is the 16th byte from the 9th byte N/A the 2nd word of the Signature value. Device Authentication Signature This is the 24th byte from the 17th byte N/A the 3rd word of the Signature value. Device Authentication Signature This is the 32th byte from the 25th byte N/A the 4th word of the Signature value.
[0677] 3.6.1.2. Outputs
TABLE-US-00099 TABLE 13 Output APIs for Security Signal Name Description Redundancy Door lock (1st left) status Status of the current 1 st-left door lock N/A Door lock (1st right) status Status of the current 1 st-right door lock N/A Door lock (2nd left) status Status of the current 2nd-left door lock N/A Door lock (2nd right) status Status of the current 2nd-right door lock N/A Trunk Lock status Status of the current trunk (back door) N/A lock Central door lock status Status of the current all door lock N/A Alarm system status Status of the current vehicle alarm N/A Device Authentication Seed the This is the 8th byte from the 1st byte of N/A 1st word the Seed value. Device Authentication Seed the This is the 16th byte from the 9th byte of N/A 2nd word the Seed value. Trip Counter This counter is incremented in units of N/A trips by the Freshness Value management master ECU. Reset Counter This counter is incremented periodically N/A by the Freshness Value management master ECU. 1st Left Door Open Status Status of the current 1 st-left door N/A open/close of the vehicle platform 1st Right Door Open Status Status of the current 1 st-right door N/A open/close of the vehicle platform 2nd Left Door Open Status Status of the current 2nd-left door N/A open/close of the vehicle platform 2nd Right Door Open Status Status of the current 2nd-right door N/A open/close of the vehicle platform Trunk Status Status of the current trunk door open of N/A the vehicle platform Hood Open Status Status of the current hood open/close of N/A the vehicle platform
[0678] 3.6.2. Details of Each API for Security
[0679] 3.6.2.1. Door Lock (Front) Command, Door Lock (Rear) Command
[0680] Values
TABLE-US-00100 Value Description Remarks 0 No Request 1 Lock Not supported in Toyota VP 2 Unlock 3 Reserved
[0681] Remarks [0682] If ADK requests for unlocking front side, both front doors are unlocked. [0683] If ADK requests for unlocking rear side, both 2nd row and trunk doors are unlocked. [0684] If ADK requests for locking any door, it should use “Central door lock command.”
[0685] (The functionality for individual locking is not supported in Toyota VP.)
[0686] 3.6.2.2. Central Door Lock Command
[0687] Request to control all doors' lock
[0688] Values
TABLE-US-00101 Value Description Remarks 0 No Request 1 Lock (all) 2 Unlock (all) 3 Reserved
[0689] Remarks [0690] N/A
[0691] 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
[0692] Device Authentication Signature the 1st word is presented in from 1st to 8th bytes of the signature.
[0693] Device Authentication Signature the 2nd word is presented in from 9th to 16th bytes of the signature.
[0694] Device Authentication Signature the 3rd word is presented in from 17th to 24th bytes of the signature.
[0695] Device Authentication Signature the 4th word is presented in from 25th to 32nd bytes of the signature.
[0696] Device Authentication Seed the 1st word is presented in from 1st to 8th bytes of the seed.
[0697] Device Authentication Seed the 2nd word is presented in from 9th to 16th bytes of the seed.
[0698] 3.6.2.4. Door Lock (1st Left) Status
[0699] Values
TABLE-US-00102 Value Description Remarks 0 Reserved 1 Locked 2 Unlocked 3 Invalid
[0700] Remarks [0701] N/A
[0702] 3.6.2.5. Door Lock (1st Right) Status
[0703] Values
TABLE-US-00103 Value Description Remarks 0 Reserved 1 Locked 2 Unlocked 3 Invalid
[0704] Remarks [0705] N/A
[0706] 3.6.2.6. Door Lock (2nd Left) Status
[0707] Values
TABLE-US-00104 Value Description Remarks 0 Reserved 1 Locked 2 Unlocked 3 Invalid
[0708] Remarks [0709] N/A
[0710] 3.6.2.7. Door Lock (2nd Right) Status
[0711] Values
TABLE-US-00105 Value Description Remarks 0 Reserved 1 Locked 2 Unlocked 3 Invalid
[0712] Remarks [0713] N/A
[0714] 3.6.2.8. Door Lock Status of all Doors
[0715] Values
TABLE-US-00106 Value Description Remarks 0 Reserved 1 All Locked 2 Anything Unlocked 3 Invalid
[0716] Remarks [0717] In case any doors are unlocked, “Anything Unlocked.” [0718] In case all doors are locked, “All Locked.”
[0719] 3.6.2.9. Alarm System Status
[0720] Values
TABLE-US-00107 Value Description Remarks 0 Disarmed Alarm System is not activated. 1 Armed Alarm System is activated without alarming. 2 Active Alarm System is activated, and the alarm is beeping. 3 Invalid
[0721] Remarks
[0722] N/A
[0723] 3.6.2.9.1. Trip Counter
[0724] This counter is incremented in a unit of trips by the Freshness Value management master ECU.
[0725] Values
[0726] 0-FFFFh
[0727] Remarks [0728] This value is used to create a Freshness value. [0729] For details, please refer to the other material [the specification of Toyota's MAC module].
[0730] 3.6.2.9.2. Reset Counter
[0731] This counter is incremented periodically by the Freshness Value management master ECU.
[0732] Values
[0733] 0-FFFFFh
[0734] Remarks [0735] This value is used to create a Freshness value. [0736] For details, please refer to the other material [the specification of Toyota's MAC module].
[0737] 3.6.2.10. 1st Left Door Open Status
[0738] Status of the current 1st-left door open/close of the vehicle platform
[0739] Values
TABLE-US-00108 Value Description Remarks 0 Reserved 1 Open 2 Closes 3 Invalid
[0740] Remarks
[0741] N/A
[0742] 3.6.2.11. 1st Right Door Open Status
[0743] Status of the current 1st-right door open/close
[0744] Values
TABLE-US-00109 Value Description Remarks 0 Reserved 1 Open 2 Close 3 Invalid
[0745] Remarks
[0746] N/A
[0747] 3.6.2.12. 2nd Left Door Open Status
[0748] Status of the current 2nd-left door open/close
[0749] Values
TABLE-US-00110 Value Description Remarks 0 Reserved 1 Open 2 Close 3 Invalid
[0750] Remarks
[0751] N/A
[0752] 3.6.2.13. 2nd Right Door Open Status
[0753] Status of the current 2nd-right door open/close
[0754] Values
TABLE-US-00111 Value Description Remarks 0 Reserved 1 Open 2 Close 3 Invalid
[0755] Remarks
[0756] N/A
[0757] 3.6.2.14. Trunk Status
[0758] Status of the current trunk door open/close
[0759] Values
TABLE-US-00112 Value Description Remarks 0 Reserved 1 Open 2 Close 3 Invalid
[0760] Remarks
[0761] N/A
[0762] 3.6.2.15. Hood Open Status
[0763] Status of the current hood open/close
[0764] Values
TABLE-US-00113 Value Description Remarks 0 Reserved 1 Open 2 Close 3 Invalid
[0765] Remarks
[0766] N/A
[0767] 4. API Guides to control Toyota Vehicles
[0768] This section shows in detail the way of using APIs for Toyota vehicles.
[0769] 4.1. APIs for Vehicle Motion Control
[0770] 4.1.1. API List for Vehicle Motion Control
[0771] 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.
[0772] 4.1.1.1. Inputs
TABLE-US-00114 TABLE 14 Input APIs for Vehicle Motion Control Signal Name Description Redundancy Usage Guide Propulsion Direction Request for shift change N/A 4.1.2.1 Command from/to forward (D range) to/from back (R range) Immobilization Request for turning on/off Applied 4.1.2.2 Command WheelLock Standstill Command Request for keeping on/off Applied 4.1.2.3 stationary Acceleration Request for Applied 4.1.2.1 Command acceleration/deceleration 4.1.2.2 4.1.2.3 4.1.2.4 Front Wheel Steer Request for front wheel steer Applied 4.1.2.5 Angle Command angle Vehicle Mode Request for changing from/to Applied 4.1.2.6 Command manual mode to/from Autonomous Mode High Dynamics Request for increasing braking Applied — Command response performance* *Reaction time in VP upon a request from ADK
[0773] 4.1.1.2. Outputs
TABLE-US-00115 TABLE 15 Output APIs for Vehicle Motion Control Signal Name Description Redundancy Usage Guide Propulsion Direction Status Current shift status N/A — Immobilization Status Status of immobilization (e.g. EPB and Shift P) Applied 4.1.2.2 4.1.2.3 Standstill Status Standstill status N/A 4.1.2.3 Estimated Gliding Acceleration Estimated vehicle acceleration/deceleration when N/A — throttle is fully closed Estimated maximum acceleration Estimated maximum acceleration Applied — Estimated maximum deceleration Estimated maximum deceleration Applied — Front wheel steer angle Front wheel steer angle Applied 4.1.2.5 Front wheel steer angle rate Front wheel steer angle rate Applied — Front wheel steer angle rate Road wheel angle rate limit Applied — limitation Estimated maximum lateral Estimated max lateral acceleration Applied — acceleration Estimated maximum lateral Estimated max lateral acceleration rate Applied — acceleration rate Intervention of accelerator pedal This signal shows whether the accelerator pedal is N/A 4.1.2.4 depressed by a driver (intervention) Intervention of brake pedal This signal shows whether the brake pedal is N/A — depressed by a driver (intervention) Intervention of steering wheel This signal shows whether the steering wheel is N/A 4.1.2.5 turned by a driver (intervention) Intervention of shift lever This signal shows whether the shift lever is N/A — controlled by a driver (intervention) Wheel speed pulse (front left) Pulse from wheel speed sensor (Front Left Wheel) N/A — Wheel rotation direction (front left) Rotation direction of wheel (Front Left) N/A — Wheel speed pulse (front right) Pulse from wheel speed sensor (Front Right N/A — Wheel) Wheel rotation direction (front right) Rotation direction of wheel (Front Right) N/A — Wheel speed pulse (rear left) Pulse from wheel speed sensor (Rear Left Wheel) Applied — Wheel rotation direction (Rear left) Rotation direction of wheel (Rear Left) Applied — Wheel speed pulse (rear right) Pulse from wheel speed sensor (Rear Right Applied — Wheel) Wheel rotation direction (Rear right) Rotation direction of wheel (Rear Right) Applied — Traveling direction Moving direction of vehicle Applied 4.1.2.1 4.1.2.3 Vehicle velocity Estimated longitudinal velocity of vehicle Applied 4.1.2.2 Longitudinal acceleration Estimated longitudinal acceleration of vehicle Applied — Lateral acceleration Sensor value of lateral acceleration of vehicle Applied — Yawrate Sensor value of Yaw rate Applied — Slipping Detection Detection of tire glide/spin/skid Applied — Vehicle mode state State of whether Autonomous Mode, manual mode Applied 4.1.2.6 or others Readiness for autonomization Situation of whether the vehicle can transition to Applied 4.1.2.6 Autonomous Mode or not Failure status of VP functions for This signal is used to show whether VP functions Applied — Autonomous Mode have some failures mode when a vehicle works as Autonomous Mode. PCS Alert Status Status of PCS (Alert) N/A — PCS Preparation Status Status of PCS (Prefill) N/A — PCS Brake/PCS Brake Hold Status Status of PCS (PB/PBH) N/A — ADS/PCS arbitration status ADS/PCS arbitration status N/A —
[0774] 4.1.2. API guides in Details for Vehicle Motion Control
[0775] 4.1.2.1. Propulsion Direction Command
[0776] Please refer to 3.2.2.1 for value and remarks in detail.
[0777]
[0778] 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
[0779] Deceleration has to be requested by Acceleration Command until completing shift change.
[0780] After shift position is changed, acceleration/deceleration can be chosen based on Acceleration Command.
[0781] While Vehicle mode state=Autonomous Mode, driver's shift lever operation is not accepted.
[0782] 4.1.2.2. Immobilization Command
[0783] Please refer to 3.2.2.2 for value and remarks in detail.
[0784]
[0785] 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”.
[0786] 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”.
[0787] After Immobilization function is deactivated, the vehicle can be accelerated/decelerated based on Acceleration Command.
[0788] 4.1.2.3. Standstill Command
[0789] Please refer to 3.2.2.3 for value and remarks in detail.
[0790] 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.
[0791]
[0792] To make a vehicle stop, deceleration is requested with Acceleration Command.
[0793] 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.
[0794] 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.
[0795] 4.1.2.4. Acceleration Command
[0796] Please refer to 3.2.2.4 for value and remarks in detail.
[0797] The below shows how a vehicle behaves when an acceleration pedal is operated.
[0798] 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.
[0799] The below shows how a vehicle behaves when a brake pedal is operated.
[0800] Deceleration value in the vehicle is the sum of 1) one calculated from the brake pedal stroke and 2) one requested from ADK.
[0801] 4.1.2.5. Front Wheel Steer Angle Command
[0802] Please refer to 3.2.2.5 for value and remarks in detail.
[0803] The below shows the way of using Front Wheel Steer Angle Command.
[0804] Front Wheel Steer Angle Command is set as a relative value from Front wheel steer angle.
[0805] For example, in case where Front wheel steer angle=0.1 [rad] and a vehicle goes straight;
[0806] If ADK would like to go straight, Front Wheel Steer Angle Command should be set to 0+0.1=0.1[rad].
[0807] 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].
[0808] The below shows how a vehicle behaves when a driver operates the steering.
[0809] A maximum value is selected either from 1) one calculated from steering wheel operation by the driver or 2) one requested by ADK.
[0810] 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.
[0811] 4.1.2.6. Vehicle Mode Command
[0812] The state machine of mode transition for Autono-MaaS vehicle is shown in
[0813] The explanation of each state is shown as follows.
TABLE-US-00116 State Description Manual A vehicle begins with this state and is under a control of a human driver. ADK cannot give any controls (except some commands) to VP. Power mode status and Vehicle mode state are in the followings: Power mode status = Wake or Drive Vehicle mode state = Manual Mode Autonomy ADK can communicate to VP after authentication is successful. VP is under the control of the ADK as a result of being issued ″Request for Autonomy.″ Power mode status and Vehicle mode state are in the followings: Power mode status = Drive Vehicle mode state = Autonomous Mode
[0814] The explanation of each transition is shown as follows.
TABLE-US-00117 Transition Conditions a When the following conditions are established, the mode will be transitioned from Manual to Autonomy: The ADK is authenticated, Power mode status = Drive, Readiness for autonomization = Ready For Autonomy Vehicle Mode Command = Request For Autonomy. b When the following conditions are established, the mode will be transitioned from Autonomy to Manual: Vehicle Mode Command = Deactivation Request.
[0815] 4.2. APIs for BODY Control
[0816] 4.2.1. API List for BODY Control
[0817] 4.2.1.1. Inputs
TABLE-US-00118 TABLE 16 Input APIs for BODY Control Signal Name Description Redundancy Usage Guide Turnsignal command Command to control the turnsignallight N/A — mode of the vehicle platform Headlight command Command to control the headlight N/A — mode of the vehicle platform Hazardlight command Command to control the hazardlight N/A — mode of the vehicle platform Horn pattern command Command to control the pattern of N/A — horn ON-time and OFF-time per cycle of the vehicle platform Horn cycle command Command to control the number of N/A — horn ON/OFF cycles of the vehicle platform Continuous horn command Command to control of horn ON of N/A — the vehicle platform Front windshield wiper Command to control the front N/A — command windshield wiper of the vehicle platform Rear windshield wiper Command to control the rear N/A — command windshield wiper mode of the vehicle platform HVAC (1st row) operation Command to start/stop 1st row air N/A — command conditioning control HVAC (2nd row) operation Command to start/stop 2nd row air N/A — command conditioning control Target temperature (1st left) Command to set the target N/A — command temperature around front left area Target temperature (1st right) Command to set the target N/A — command temperature around front right area Target temperature (2nd left) Command to set the target N/A — command temperature around rear left area Target temperature (2nd right) Command to set the target N/A — command temperature around rear right area HVAC fan (1st row) command Command to set the fan level on the N/A — front AC HVAC fan (2nd row) command Command to set the fan level on the N/A — rear AC Air outlet (1st row) command Command to set the mode of 1st N/A — row air outlet Air outlet (2nd row) command Command to set the mode of 2nd N/A — row air outlet Air recirculation command Command to set the air recirculation N/A — mode AC mode command Command to set the AC mode N/A —
[0818] 4.2.1.2. Outputs
TABLE-US-00119 TABLE 17 Output APIs for BODY Control Signal Name Description Redundancy Usage Guide Turnsignal status Status of the current turnsignallight N/A — mode of the vehicle platform Headlight status Status of the current headlight mode of N/A — the vehicle platform Hazardlight status Status of the current hazardlight mode of N/A — the vehicle platform Horn status Status of the current horn of the vehicle N/A — platform Front windshield wiper Status of the current front windshield N/A — status wiper mode of the vehicle platform Rear windshield wiper Status of the current rear windshield N/A — status wiper mode of the vehicle platform HVAC (1st row) status Status of activation of the 1.sup.st row HVAC N/A — HVAC (2nd row) status Status of activation of the 2.sup.nd row HVAC N/A — Target temperature (1st Status of set temperature of 1.sup.st row left N/A — left) status Target temperature (1st Status of set temperature of 1.sup.st row right N/A — right) status Target temperature (2nd Status of set temperature of 2.sup.nd row left N/A — left) status Target temperature (2nd Status of set temperature of 2.sup.nd row right N/A — right) status HVAC fan (1st row) status Status of set fan level of 1.sup.st row N/A — HVAC fan (2nd row) Status of set fan level of 2.sup.nd row N/A — status Air outlet (1st row) status Status of mode of 1st row air outlet N/A — Air outlet (2nd row) status Status of mode of 2nd row air outlet N/A — Air recirculation status Status of set air recirculation mode N/A — AC mode status Status of set AC mode N/A — Seat occupancy (1st right) Seat occupancy status in 1st left seat N/A — status Seat belt (1st left) status Status of driver's seat belt buckle switch N/A — Seat belt (1st right) status Status of passenger's seat belt buckle N/A — switch Seat belt (2nd left) status Seat belt buckle switch status in 2nd left N/A — seat Seat belt (2nd right) status Seat belt buckle switch status in 2nd N/A — right seat
[0819] 4.3. APIs for Power Control
[0820] 4.3.1. API List for Power Control
[0821] 4.3.1.1. Inputs
TABLE-US-00120 TABLE 18 Input APIs for Power Control Signal Name Description Redundancy Usage Guide Power mode command Command to control the N/A — power mode of VP
[0822] 4.3.1.2. Outputs
TABLE-US-00121 TABLE 19 Output APIs for Power Control Signal Name Description Redundancy Usage Guide Power mode status Status of the current power N/A — mode of VP
[0823] 4.4. APIs for Failure Notification
[0824] 4.4.1. API List for Failure Notification
[0825] 4.4.1.1. Inputs
TABLE-US-00122 TABLE 20 Input APIs for Failure Notification Signal Name Description Redundancy Usage guide N/A — — —
[0826] 4.4.1.2. Outputs
TABLE-US-00123 TABLE 21 Output APIs for Failure Notification Signal Name Description Redundancy Usage guide Request for ADS Operation — Applied — Impact detection signal N/A — Performance deterioration of Brake — Applied — system Performance deterioration of Propulsion — N/A — system Performance deterioration of Shift — N/A — control system Performance deterioration of — Applied — Immobilization system Performance deterioration of Steering Applied — system Performance deterioration of Power Applied — supply system Performance deterioration of Applied — Communication system
[0827] 4.5. APIs for Security
[0828] 4.5.1. API List for Security
[0829] 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.
[0830] 4.5.1.1. Inputs
TABLE-US-00124 TABLE 22 Input APIs for Security Signal Name Description Redundancy Usage Guide Door Lock (front) Command to control 1st N/A — command both doors lock Door Lock (rear) Command to control 2nd N/A — command both doors and trunk lock Central door lock Command to control the N/A — command all door lock Device Authentication This is the 8th byte from N/A 4.5.2.1 Signature the 1st word the 1st byte of the Signature value. Device Authentication This is the 16th byte N/A 4.5.2.1 Signature the 2nd word from the 9th byte of the Signature value. Device Authentication This is the 24th byte N/A 4.5.2.1 Signature the 3rd word from the 17th byte of the Signature value. Device Authentication This is the 32th byte N/A 4.5.2.1 Signature the 4th word from the 25th byte of the Signature value.
[0831] 4.5.1.2. Outputs
TABLE-US-00125 TABLE 23 Output APIs for Security Signal Name Description Redundancy Usage Guide Door lock (1st left) Status of the current 1st-left N/A — status door lock Door lock (1st right) Status of the current 1st-right N/A — status door lock Door lock (2nd left) Status of the current 2nd-left N/A — status door lock Door lock (2nd right) Status of the current 2nd-right N/A — status door lock Central door lock Status of the current all door N/A — status lock Alarm system status Status of the current vehicle N/A — alarm Device Authentication This is the 8th byte from the N/A — Seed the 1st word 1st byte of the Seed value. Device Authentication This is the 16th byte from the N/A — Seed the 2nd word 9th byte of the Seed value. Trip Counter This counter is incremented in N/A — units of trips by the Freshness Value management master ECU. Reset Counter This counter is incremented N/A — periodically by the Freshness Value management master ECU. 1st Left Door Open Status of the current 1st-left N/A — Status door open/close of the vehicle platform 1st Right Door Open Status of the current 1st-right N/A — Status door open/close of the vehicle platform 2nd Left Door Open Status of the current 2nd-left N/A — Status door open/close of the vehicle platform 2nd Right Door Open Status of the current 2nd-right N/A — Status door open/close of the vehicle platform Trunk Status Status of the current trunk door N/A — open of the vehicle platform Hood Open Status Status of the current hood N/A — open/close of the vehicle platform
[0832] 4.5.2. API guides in Details for Security
[0833] 4.5.2.1. Device Authentication Protocol
[0834] Device authentication is applied when the VCIB is activated from “Sleep” mode.
[0835] After the authentication succeeds, the VCIB can start to communicate with ADK.
[0836] Authentication process is as shown in
[0837] Authentication Specification
TABLE-US-00126 Item Specification Note Encryption algorithms AES FIPS 197 Key length 128 bit — Block cipher modes of operation CBC SP 800-38A Hash algorithms SHA-256 FIPS 180-4 Seed length 128 bit — Signature length 256 bit —
[0838] 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.