Skip to content
ITS-Container.asn 210 KiB
Newer Older
tijinkj's avatar
tijinkj committed
-- Draft CDD  ASN.1 module Release 2 (Version 3)
-- Based on the official version available at @https://forge.etsi.org/rep/ITS/asn1/cdd_ts102894_2
tijinkj's avatar
tijinkj committed
-- prepared by Jasja Tijink for ETSI TC ITS WG1 (date 14.02.2022)
tijinkj's avatar
tijinkj committed
-- Note: some descriptions of the data type still need to be harmonized and cleaned up.

Denis Filatov's avatar
Denis Filatov committed
ITS-Container {
tijinkj's avatar
tijinkj committed
itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version3 (3) 
Denis Filatov's avatar
Denis Filatov committed
}

DEFINITIONS AUTOMATIC TAGS ::=

BEGIN
tijinkj's avatar
tijinkj committed
------------------------------------------
-- Specification of CDD Data Elements: 
------------------------------------------
tijinkj's avatar
tijinkj committed
/** 
 * This DE indicates a change of acceleration.
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * The following values are specified:
 * - `accelerate` if the acceleration is positive.
 * - `decelerate` if the acceleration is negative.
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * @category: Kinematics information
 * Revision: Created in V2.1.1
tijinkj's avatar
tijinkj committed
*/
AccelerationChange::= ENUMERATED { accelerate, decelerate } -- tbd add values and/or extension?
Denis Filatov's avatar
Denis Filatov committed

Denis Filatov's avatar
Denis Filatov committed
/**
tijinkj's avatar
tijinkj committed
 * This DE reprents the absolute accuracy of a reported vehicle acceleration value with a  confidence level of 95%. 
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * The following values are specified:
tijinkj's avatar
tijinkj committed
 * - `1` if the acceleration accuracy is equal to or less than 0,1 m/s2.
tijinkj's avatar
tijinkj committed
 * - `n (n > 1 and n < 101)` if the acceleration accuracy is equal to or less than n x 0,1 m/s2, and more than (n-1) x 0,1 m/s2.
tijinkj's avatar
tijinkj committed
 * - `101` if the acceleration accuracy is out of range i.e. greater than 10 m/s2.
 * - `102` if the data is unavailable.
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * @note: The fact that an acceleration value is received with confidence set to 'unavailable(102)' can be caused by several reasons, such as:
 * - the sensor cannot deliver the accuracy at the defined confidence level because it is a low-end sensor,
 * - the sensor cannot calculate the accuracy due to lack of variables, or
 * - there has been a vehicle bus (e.g. CAN bus) error.
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * In all 3 cases above, the reported acceleration value may be valid and used by the application.
 * 
 * If an acceleration value is received and its confidence is set to `outOfRange(101)`, it means that the value is not valid and therefore cannot be trusted. Such value is not useful for the application.
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * @unit 0,1 m/s2
tijinkj's avatar
tijinkj committed
 * @category: Kinematics information
tijinkj's avatar
tijinkj committed
 * Revision: Description revised in V2.1.1
Denis Filatov's avatar
Denis Filatov committed
 */
tijinkj's avatar
tijinkj committed
AccelerationConfidence ::= INTEGER {
    pointOneMeterPerSecSquared(1), 
    outOfRange(101), 
    unavailable(102)} (0 .. 102)
Denis Filatov's avatar
Denis Filatov committed

Denis Filatov's avatar
Denis Filatov committed
/**
tijinkj's avatar
tijinkj committed
 * This DE indicates the current controlling mechanism for longitudinal movement of the vehicle.
 * The data may be provided via the in-vehicle network. It indicates whether a specific in-vehicle
 * acceleration control system is engaged or not. Currently, this DE includes the information of the
 * vehicle brake pedal, gas pedal, emergency brake system, collision warning system, adaptive cruise
 * control system, cruise control system and speed limiter system.
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * The corresponding bit shall be set to 1 under the following conditions:
 * - 0 `brakePedalEngaged`      : Driver is stepping on the brake pedal,
 * - 1 `gasPedalEngaged`        : Driver is stepping on the gas pedal,
 * - 2 `emergencyBrakeEngaged`  : emergency brake system is engaged,
 * - 3 `collisionWarningEngaged`: collision warning system is engaged,
 * - 4 `accEngaged`             : ACC is engaged,
 * - 5 `cruiseControlEngaged`   : cruise control is engaged,
 * - 6 `speedLimiterEngaged`    : speed limiter is engaged.
 * - 7                          : reserved for future use
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * Otherwise (for example when the corresponding system is not available due to non equipped system
 * or information is unavailable), the corresponding bit shall be set to _0_.
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * @note: The system engagement condition is OEM specific and therefore out of scope of the present document.
 * @category: Kinematics information
tijinkj's avatar
tijinkj committed
 * Revision: V1.3.1
tijinkj's avatar
tijinkj committed
 */
AccelerationControl ::= BIT STRING {
    brakePedalEngaged (0),
    gasPedalEngaged (1),
    emergencyBrakeEngaged (2),
    collisionWarningEngaged (3),
    accEngaged (4),
    cruiseControlEngaged (5),
    speedLimiterEngaged (6)
} (SIZE(7))

/** 
 * This DE represents the value of an acceleration component in a defined coordinate system.
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * The following values are specified:
 * - `-160` for values equal to or greater than 16 m/s2.
 * - `n (n > -160 and n < 0)` indicates negative acceleration of value n* 0,1 m/s2.
 * - `0` indicates zero acceleration.
 * - `n (n > 0 and n < 160)`  indicates positive acceleration of value n* 0,1 m/s2.
 * - `160` for acceleration equal to or greater than 16 m/s2.
 * - `161` when the data is unavailable.

 * * @unit 0,1 m/s2
tijinkj's avatar
tijinkj committed
 * @category: Kinematics information
tijinkj's avatar
tijinkj committed
 * Revision: Created in V2.1.1
tijinkj's avatar
tijinkj committed
*/
AccelerationValue ::= INTEGER {
    pointOneMeterPerSecSquared       (1),
    minusPointOneMeterPerSecSquared  (-1),
    unavailable                      (161)  
} (-160 .. 161)


/**
 * This DE indicates an access technology.
 *
 * The following values are specified:
 * - `0`: any access technology class (see clause 7 of TS 103 724).
 * - `1`: ITS-G5 access technology class.
 * - `2`: LTE-V2X access technology class.
 * - `3`: NR-V2X access technology class.
 * 
 * @category: Communication information
tijinkj's avatar
tijinkj committed
 * Revision: Created in V2.1.1
Denis Filatov's avatar
Denis Filatov committed
 */
tijinkj's avatar
tijinkj committed
AccessTechnologyClass ::= ENUMERATED {
   any(0), 
   itsg5Class(1), 
   ltev2xClass(2), 
   nrv2xClass(3),
   ...
Denis Filatov's avatar
Denis Filatov committed
/**
tijinkj's avatar
tijinkj committed
 * This DE represents the value of the sub cause code of the @ref CauseCode `accident`.
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * The following values are specified:
 * - 0 `unavailable`                        : in case the information on the sub cause of the accident is unavailable,
 * - 1 `multiVehicleAccident`               : in case more than two vehicles are involved in accident,
 * - 2 `heavyAccident`                      : in case the airbag of the vehicle involved in the accident is triggered, 
 *                                            the accident requires important rescue and/or recovery work,
 * - 3 `accidentInvolvingLorry`             : in case the accident involves a lorry,
 * - 4 `accidentInvolvingBus`               : in case the accident involves a bus,
 * - 5 `accidentInvolvingHazardousMaterials`: in case the accident involves hazardous material,
 * - 6 `accidentOnOppositeLane`             : in case the accident happens on opposite lanes,
 * - 7 `unsecuredAccident`                  : in case the accident is not secured,
 * - 8 `assistanceRequested`                : in case rescue and assistance are requested,
 * - 9-255 reserved for future usage. 
tijinkj's avatar
tijinkj committed
 *
tijinkj's avatar
tijinkj committed
 * @category: Traffic information
tijinkj's avatar
tijinkj committed
 * Revision: V1.3.1
tijinkj's avatar
tijinkj committed
 */
AccidentSubCauseCode ::= INTEGER {
    unavailable(0),
    multiVehicleAccident(1),
    heavyAccident(2),
    accidentInvolvingLorry(3),
    accidentInvolvingBus(4),
    accidentInvolvingHazardousMaterials(5),
    accidentOnOppositeLane(6),
    unsecuredAccident(7),
    assistanceRequested(8)
} (0..255)

/**
 * This DE represents the value of the sub cause code of the @ref CauseCode `adverseWeatherCondition-Adhesion`. 
 * 
 * The sub causes are described as following:
 * - 0 `unavailable`     : in case information on the cause of the low road adhesion is unavailable
 * - 1 `heavyFrostOnRoad`: in case the low road adhesion is due to heavy frost on the road
 * - 2 `fuelOnRoad`      : in case the low road adhesion is due to fuel on the road
 * - 3 `mudOnRoad`       : in case the low road adhesion is due to mud on the road
 * - 4 `snowOnRoad`      : in case the low road adhesion is due to snow on the road
 * - 5 `iceOnRoad`       : in case the low road adhesion is due to ice on the road
 * - 6 `blackIceOnRoad`  : in case the low road adhesion is due to black ice on the road
 * - 7 `oilOnRoad`       : in case the low road adhesion is due to oil on the road
 * - 8 `looseChippings`  : in case the low road adhesion is due to loose gravel or stone fragments detached from a road surface or from a hazard
 * - 9 `instantBlackIce` : in case the low road adhesion is due to instant black ice on the road surface
 * - 10 `roadsSalted`    : when the low road adhesion is due to salted road
 * - 11-255 reserved for future usage
Denis Filatov's avatar
Denis Filatov committed
 *
tijinkj's avatar
tijinkj committed
 * @category: Traffic information
tijinkj's avatar
tijinkj committed
 * Revision: V1.3.1
Denis Filatov's avatar
Denis Filatov committed
 */
tijinkj's avatar
tijinkj committed
AdverseWeatherCondition-AdhesionSubCauseCode ::= INTEGER {
    unavailable(0),
    heavyFrostOnRoad(1),
    fuelOnRoad(2),
    mudOnRoad(3),
    snowOnRoad(4),
    iceOnRoad(5),
    blackIceOnRoad(6),
    oilOnRoad(7),
    looseChippings(8),
    instantBlackIce(9),
    roadsSalted(10)
} (0..255)
Denis Filatov's avatar
Denis Filatov committed

/**
tijinkj's avatar
tijinkj committed
 * This DE represents the value of the sub cause codes of the @ref CauseCode `adverseWeatherCondition-ExtremeWeatherCondition`.
Denis Filatov's avatar
Denis Filatov committed
 *
Loading full blame...