Commit 1cf974f3 authored by Yann Garcia's avatar Yann Garcia
Browse files

Update CAM-PDU-Descriptions.asn to version TS 103 900 V2.2.1 (0.0.5)

parent b96bfef8
Loading
Loading
Loading
Loading
Loading
+211 −4
Original line number Diff line number Diff line
/** CAM module for TS 103 900 V2.2.1 (0.0.5) integrating:
- ITSWG1(24)000011r8 containing the following:
	ExtensionContainers: 
	- GeneralizedLanePositionsContainer
	- eHorizonLocationSharingContainer
	- PathPredictionContainer
	- TwoWheelerContainer
- ITSWG1(24)000002r1 containing the Very Low Frequency Container
- ITSWG1(24)000163r1 VehicleMovementControlContainer
*/

CAM-PDU-Descriptions  {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) camPduRelease2 (103900) major-version-2 (2) minor-version-1 (1)} 

DEFINITIONS AUTOMATIC TAGS ::=
@@ -8,9 +19,11 @@ IMPORTS
ItsPduHeader, CauseCodeV2, ReferencePosition, AccelerationControl, Curvature, CurvatureCalculationMode, Heading, LanePosition, EmergencyPriority, EmbarkationStatus, Speed, 
DriveDirection, AccelerationComponent, StationType, ExteriorLights, DangerousGoodsBasic, SpecialTransportType, LightBarSirenInUse, 
VehicleRole, VehicleLength, VehicleWidth, Path, RoadworksSubCauseCode, ClosedLanes, TrafficRule, SpeedLimit, SteeringWheelAngle, PerformanceClass, YawRate, 
PtActivation, ProtectedCommunicationZonesRSU, CenDsrcTollingZone, GenerationDeltaTime, BasicContainer
PtActivation, ProtectedCommunicationZonesRSU, CenDsrcTollingZone, GenerationDeltaTime, BasicContainer, BrakeControl, VehicleHeight2, WiperStatus,
GeneralizedLanePositions, PathPredictedList, CartesianAngle, Wgs84Angle, StabilityChangeIndication, VruSubProfileBicyclist, VruMovementControl,
BasicLaneConfiguration, PolygonalLine, MetaInformation, ConfidenceLevels, VehicleMovementControl

FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-1 (1)} WITH SUCCESSORS
FROM ETSI-ITS-CDD {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) 102894 cdd (2) major-version-4 (4) minor-version-2 (2)} WITH SUCCESSORS
;


@@ -55,13 +68,16 @@ CamPayload ::= SEQUENCE {
*
* @field specialVehicleContainer: The special container of the CAM shall be present as defined in clause 6.1.2. 
* The content of the container shall be set according to the value of the vehicleRole component as specified in Table 5. 
*
* @field extensionContainers: the list of CAM extension containers, including its container type identifier and the container itself.
*/
CamParameters ::= SEQUENCE {
	basicContainer           BasicContainer,
	highFrequencyContainer   HighFrequencyContainer,
	lowFrequencyContainer    LowFrequencyContainer OPTIONAL,
	specialVehicleContainer  SpecialVehicleContainer OPTIONAL,
	...
	...,
	extensionContainers		 WrappedExtensionContainers OPTIONAL
}

/**
@@ -326,11 +342,202 @@ SafetyCarContainer ::= SEQUENCE {
* @field protectedCommunicationZonesRSU: an optional Information about position of a CEN DSRC Tolling Station operating in the 5,8 GHz frequency 
* band. If this information is provided by RSUs a receiving vehicle ITS-S is prepared to adopt mitigation techniques when being in the vicinity of
* CEN DSRC tolling stations. 

*/
RSUContainerHighFrequency ::= SEQUENCE {
	protectedCommunicationZonesRSU ProtectedCommunicationZonesRSU OPTIONAL,
	...	
}

/**
* This information object class is an abstract template to instantiate containers.
*
* It shall include the following components:
*
* @field &id: the identifier of the container type.
*
* @field &Type: the container content.
*
*/
EXTENSION-CONTAINER-ID-AND-TYPE ::= CLASS {
    &id     ExtensionContainerId UNIQUE,
    &Type
} WITH SYNTAX {&Type IDENTIFIED BY &id}

/**
* This DE represents the identifier of the container type.
*/
ExtensionContainerId ::= INTEGER (1..16,...)

/**
* These value assignments represent specific values of the container type identifier. 
*/
twoWheelerContainer ExtensionContainerId ::= 1
eHorizonLocationSharingContainer ExtensionContainerId ::= 2
veryLowFrequencyContainer ExtensionContainerId ::= 3
pathPredictionContainer ExtensionContainerId ::= 4
generalizedLanePositionsContainer ExtensionContainerId ::= 5
vehicleMovementControlContainer ExtensionContainerId ::= 6

/**
* This information object set represents the association between the container type and the container content.
*/
ExtensionContainers EXTENSION-CONTAINER-ID-AND-TYPE ::= {
    {TwoWheelerContainer IDENTIFIED BY twoWheelerContainer} |
    {EHorizonLocationSharingContainer IDENTIFIED BY eHorizonLocationSharingContainer} |
    {VeryLowFrequencyContainer IDENTIFIED BY veryLowFrequencyContainer} |
    {PathPredictionContainer IDENTIFIED BY pathPredictionContainer} |
    {GeneralizedLanePositionsContainer IDENTIFIED BY generalizedLanePositionsContainer} |
    {VehicleMovementControlContainer IDENTIFIED BY vehicleMovementControlContainer},
	...
}

/**
* This DF represents a CAM container preceded by its type identifier and a length indicator.
*
* It shall include the following components:
*
* @field containerId: the identifier of the container type.
*
* @field containerData: the container content consistent with the container type.
*
*/
WrappedExtensionContainer ::= SEQUENCE {
   containerId     EXTENSION-CONTAINER-ID-AND-TYPE.&id( {ExtensionContainers} ),
   containerData   EXTENSION-CONTAINER-ID-AND-TYPE.&Type( {ExtensionContainers}{@containerId} )
}

/**
* This DF represents a list of CAM containers, each with their type identifier.
*/
WrappedExtensionContainers ::= SEQUENCE SIZE(1..8,...) OF WrappedExtensionContainer

/**
* This type contains detailed information about two wheelers. It is meant to use for StationType
* cyclist, moped and motorcycle.
*
* It shall include the following components:
*
* @field typeSpecificInformation: this data field contains type specific information about two wheelers.
*
* @field rollAngle: this data field describes the roll angle of the two wheeler.
*
* @field orientation: this data field describes the orientation of the two wheeler.
*
* @field stabilityChangeIndication: this data field describes if the two wheeler is about to lose control.
*
*/
TwoWheelerContainer ::= SEQUENCE {
    typeSpecificInformation     TwoWheelerTypeSpecificInformation OPTIONAL,
    rollAngle                   CartesianAngle OPTIONAL,
    orientation                 Wgs84Angle OPTIONAL,
    stabilityChangeIndication   StabilityChangeIndication OPTIONAL,
    ...
}

/**
* This type contains type specific information about a two wheeler.
*
* It includes one of the following components:
*
* @field cyclist: it contains cyclist-specific information.
*
*/
TwoWheelerTypeSpecificInformation ::= CHOICE {
    cyclist CyclistTypeSpecificInformation,
    ...
}

/**
* This type contains type-specific information about cyclists.
*
* It shall include the following components:
*
* @field vruSubProfileBicyclist: it indicates the detailed type of the cyclist.
*
* @field vruMovementControl: it includes information about the movement control of the bicycle.
*
*/
CyclistTypeSpecificInformation ::= SEQUENCE {
    vruSubProfileBicyclist  VruSubProfileBicyclist (unavailable | bicyclist | e-scooter | pedelec | speed-pedelec | roadbike | childrensbike) OPTIONAL,
    vruMovementControl      VruMovementControl OPTIONAL,
    ...
}

/**
* This type contains contextual, map-based location information.
* eHorizon is defined as a tool to convey the part of the road network and its characteristics derived from map data located in front of or behind the vehicle along the road.
*
* It shall include the following components:
*
* @field segmentAhead: the road segment that the vehicle is predicted to reach, starting from the reference position.
* At least one node must be filled in so that the current map position can be calculated on the receiver side.
*
* @field nodeProbabilities: confidence values for each node in segmentAhead, indicating how confident we are that the ITS station will reach that point.
*
* @field segmentBehind: the road segment that the vehicle has passed, based on the collected data, starting from the reference position.
* At least one node must be filled in so that the current map position can be calculated on the receiver side.
*
* @field laneLevelDetails: provides information about the configuration of the road at the position indicated by the component referencePosition of the Basic Container and for a given reference direction.
*
* @field segmentSource: it represents the origin of the map-specific data.
*
*/
EHorizonLocationSharingContainer ::= SEQUENCE {
    segmentAhead        PolygonalLine,
    nodeProbabilities   ConfidenceLevels OPTIONAL,
    segmentBehind       PolygonalLine,
    laneLevelDetails    BasicLaneConfiguration OPTIONAL,
    segmentSource       MetaInformation (WITH COMPONENTS {..., confidenceValue ABSENT}) OPTIONAL,
    ...
}

/**
* This type represents the very low frequency container.
*
* It shall include the following components:
*
* @field vehicleHeight: this component represents the height of the vehicle that originates the CAM.
*
* @field wiperStatus: this component represents the status of the wipers of the vehicle that originates the CAM, at the time indicated by generationDeltaTime.
*
* @field brakeControl: this component represents the status of the brake control system of the vehicle that originates the CAM, 
* at the time indicated by generationDeltaTime and during the period 10 seconds before that time.
*/
VeryLowFrequencyContainer ::= SEQUENCE {
    vehicleHeight  VehicleHeight2 OPTIONAL,
    wiperStatus    WiperStatus OPTIONAL,
    brakeControl   BrakeControl OPTIONAL,
    ...
}

/**
* This type represents the path prediction container.
*
* Contains information about the possible future paths of ITS station.
*/
PathPredictionContainer ::= PathPredictedList

/**
* This type represents the generalized lane positions container.
*
* Contains detailed information about the road layout that the ITS station is currently using.
*/
GeneralizedLanePositionsContainer ::= GeneralizedLanePositions

/**
* This type represents the vehicle movement control container.
*
* Contains information about the current vehicle movement control status 
* of ITS station.
*  This contains: 
*	- brake and acceleration pedal position status information
* 	- mechanism for lateral, longitudinal movements dimensions 
*	  of the vehicle 
*/
VehicleMovementControlContainer ::= SEQUENCE {   
	vehicleMovementControl	VehicleMovementControl,
	...
}


END