Loading VAM-PDU-Descriptions.asn +274 −51 Original line number Diff line number Diff line -- ETSI TS 103 300-3 V0.4.0 (2020-07) VAM-PDU-Descriptions {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) ts(103300) vam(3) version(1)} wg1(1) ts(103300) part-3 (3) vam(1) version(1)} DEFINITIONS AUTOMATIC TAGS ::= BEGIN IMPORTS ItsPduHeader, ReferencePosition, AccelerationControl, Heading, HeadingValue, Speed, StationID, VehicleLength, VehicleWidth, PathHistory, ProtectedCommunicationZone, PtActivation, Latitude, Longitude, ProtectedCommunicationZonesRSU Curvature, CurvatureCalculationMode, ExteriorLights, Heading, LanePosition, LateralAcceleration, LongitudinalAcceleration, PathHistory, ReferencePosition, Speed, StationID, SteeringWheelAngle, VerticalAcceleration, YawRate FROM ITS-Container {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) ts(102894) cdd(2) version(2)} Loading @@ -15,88 +17,309 @@ BEGIN FROM CAM-PDU-Descriptions {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) en(302637) cam(2) version(2)} -- Note: sVAM-Temp-Imports defines types that are intended to be updated within -- or added to the Common Data Dictionary. Once the CDD has been updated, -- VAM-Temp-Imports will also be updated to import the new types directly -- from the CDD. The use of WITH SUCCESSORS ensures that the import -- statement below will not have to change. AreaCircular, AreaPolygon, AreaRectangle, BasicContainer, ItsPduHeader FROM VAM-Temp-Imports {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) ts(103300) part-3(3) temp-imports(255) version(1)} IntersectionReferenceID, LaneID FROM DSRC {iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version (2)} ; VAM ::= SEQUENCE { header ItsPduHeaderVam, vam VruAwareness } -- contains StationId -- StationId should change when certificate changes, or when VRU -- enters or leaves a cluster (as leader or otherwise) ItsPduHeaderVam ::= ItsPduHeader(WITH COMPONENTS { ..., messageID(vam) }) VruAwareness ::= SEQUENCE { generationDeltaTime GenerationDeltaTime, vamParameters VamParameters, vamExtensions SEQUENCE (SIZE(0..MAX)) OF VamExtension generationDeltaTime GenerationDeltaTime, -- from CAM-PDU-Descriptions vamParameters VamParameters } VamParameters ::= SEQUENCE { activeProfile VruProfileId, physicalProperties VruPhysicalProperties, dyanmicProperties VruDynamicProperties, basicContainer BasicContainer, -- from VAM-Temp-Imports vruHighFrequencyContainer VruHighFrequencyContainer OPTIONAL, vruLowFrequencyContainer VruLowFrequencyContainer OPTIONAL, vruClusterInformationContainer VruClusterInformationContainer OPTIONAL, vruClusterOperationContainer VruClusterOperationContainer OPTIONAL, vruMotionPredictionContainer VruMotionPredictionContainer OPTIONAL, ... } VruProfile ::= ENUMERATED { unavailable(0), pedestrian(1), cyclist(2), motorcyclist(3), animal(4), max(15) } VruHighFrequencyContainer ::= SEQUENCE { heading Heading, -- from ITS-Container speed Speed, -- from ITS-Container longitudinalAcceleration LongitudinalAcceleration, -- from ITS-Container curvature Curvature OPTIONAL, -- from ITS-Container curvatureCalculationMode CurvatureCalculationMode OPTIONAL, -- from ITS-Container yawRate YawRate OPTIONAL, -- from ITS-Container lateralAcceleration LateralAcceleration OPTIONAL, -- from ITS-Container verticalAcceleration VerticalAcceleration OPTIONAL, -- from ITS-Container vruLanePosition VruLanePosition OPTIONAL, environment VruEnvironment OPTIONAL, movementControl VruMovementControl OPTIONAL, orientation VruOrientation OPTIONAL, rollAngle VruRollAngle OPTIONAL, deviceUsage VruDeviceUsage OPTIONAL, ... } VruLanePosition ::= CHOICE { offRoadLanePosition OffRoadLanePosition, vehicularLanePosition LanePosition, -- from ITS-Container trafficIslandPosition TrafficIslandPosition, mapPosition MapPosition, ... } VruProfileId ::= ENUMERATED { pedestrian(1), lowSpeedTwoWheel(2), fullSpeedTwoWheel(3), animal(4), ... OffRoadLanePosition ::= ENUMERATED { unavailable(0), sidewalk(1), parkingLane(2), bikeLane(3), max(15) } VruPhysicalProperties ::= CHOICE { singleVruPhysInfo SingleVruPhysicalInfo, clusterPhysInfo VruClusterPhysicalInfo, TrafficIslandPosition ::= SEQUENCE { oneSide NonIslandLanePosition, otherSide NonIslandLanePosition } NonIslandLanePosition ::= CHOICE { offRoadLanePosition OffRoadLanePosition, vehicularLanePosition LanePosition, -- from ITS-Container mapPosition MapPosition, ... } SingleVruPhysicalInfo ::= SEQUENCE { referencePoint ReferencePosition, orientation Heading, MapPosition ::= SEQUENCE { intersectionId IntersectionReferenceID, lane LaneID } VruEnvironment ::= ENUMERATED { unavailable (0), intersectionCrossing(1), zebraCrossing(2), sidewalk (3), onVehicleRoad(4), protectedGeographicArea(5), max (255) -- values 6-254 reserved for later use } VruMovementControl ::= ENUMERATED { unavailable (0), braking(1), hardBraking(2), stopPedaling (3), noReaction(4), max (255) -- values 5-254 reserved for later use } VruOrientation ::= Heading -- from ITS-Container VruRollAngle ::= SteeringWheelAngle -- from ITS-Container VruDeviceUsage ::= ENUMERATED { unavailable(0), other(1), idle(2), listeningToAudio(3), typing(4), calling(5), playingGames(6), reading(7), viewing(8), max(255) -- values 9-254 reserved for later use } VruLowFrequencyContainer ::= SEQUENCE { profileAndSubprofile VruProfileAndSubprofile OPTIONAL, exteriorLights VruExteriorLights OPTIONAL, sizeClass VruSizeClass OPTIONAL, ... } VruProfileAndSubprofile ::= CHOICE { pedestrian VruSubProfilePedestrian, bicyclist VruSubProfileBicyclist, motorcylist VruSubProfileMotorcyclist, animal VruSubProfileAnimal, ... } VruSubProfilePedestrian ::= ENUMERATED { unavailable(0), ordinary-pedestrian(1), road-worker(2), first-responder(3), max(15) } VruSubProfileBicyclist ::= ENUMERATED { unavailable(0), bicyclist(1), wheelchair-user(2), horse-and-rider(3), rollerskater(4), e-scooter(5), personal-transporter(6), pedelec(7), speed-pedelec(8), max(15) } VruSubProfileMotorcyclist ::= ENUMERATED { unavailable(0), moped(1), motorcycle(2), motorcycle-and-sidecar-right(3), motorcycle-and-sidecar-left(4), max(15) } VruSubProfileAnimal ::= ENUMERATED { unavailable(0), max(15) } VruExteriorLights ::= SEQUENCE { vruSpecific VruSpecificExteriorLights, -- defined below generic ExteriorLights -- should be extensible? } VruSpecificExteriorLights ::= BIT STRING { unavailable (0), backFlashLight (1), helmetLight (2), armLight (3), legLight (4), wheelLight (5) } (SIZE(8)) VruSizeClass ::= ENUMERATED { unavailable (0), low(1), medium(2), high (3), max(15) -- values 4-14 reserved for later use } VruClusterInformationContainer ::= SEQUENCE { clusterId ClusterId, clusterBoundingBoxShape ClusterBoundingBoxShape, clusterCardinalitySize INTEGER(0..255), -- 0 means unknown clusterProfiles ClusterProfiles, ... } ClusterId ::= INTEGER(0..255) ClusterBoundingBoxShape::= CHOICE { clusterRectangle AreaRectangle, -- from VAM-Temp-Imports clusterCircle AreaCircular, -- from VAM-Temp-Imports clusterPolygon AreaPolygon, -- from VAM-Temp-Imports ... } ClusterProfiles ::= BIT STRING { pedestrian(0), bicyclist(1), motorcyclist(2), animal(3) } (SIZE(4)) -- this is OPTIONAL elements rather than a CHOICE because a -- VRU ITS-S could be leaving one cluster and joining another. VruClusterOperationContainer ::= SEQUENCE { clusterJoinInfo ClusterJoinInfo OPTIONAL, clusterExitInfo StationID OPTIONAL, clusterLeaveInfo ClusterLeaveInfo OPTIONAL, clusterBreakupInfo ClusterBreakupInfo OPTIONAL, clusterIdChangeInfo VruClusterOpTimestamp OPTIONAL, ... } VruClusterOpTimestamp ::= INTEGER (1..255) ClusterJoinInfo ::= SEQUENCE { clusterId StationID, countdown INTEGER(0..7), clusterId ClusterId, joinTime VruClusterOpTimestamp, ... } ClusterLeaveInfo ::= SEQUENCE { clusterId ClusterId, clusterLeaveReason ClusterLeaveReason, ... } VruClusterPhysicalInfo ::= SEQUENCE { referencePoint ReferencePosition, -- middle of front edge of cluster heading HeadingValue, -- direction of perp. line through referencePoint width VruClusterSideLength, -- width (with referencePoint in the -- middle) in units of 10 cm length VruClusterSideLength, -- length (from referencePoint to rear of -- cluster) in units of 10 cm number INTEGER(0..255), -- 0 means unknown ClusterBreakupInfo ::= SEQUENCE { clusterBreakupReason ClusterBreakupReason, breakupTime VruClusterOpTimestamp, ... } VruClusterSideLength ::= INTEGER {tenCentimeters(1), outOfRange(61), unavailable(62)} (1..62) ClusterLeaveReason ::= ENUMERATED { notProvided (0), clusterLeaderLost (1), clusterDisbandedByLeader (2), outOfClusterBoundingBox (3), outOfClusterSpeedRange (4), joiningAnotherCluster (5), max(15) } ClusterBreakupReason ::= ENUMERATED { notProvided (0), clusteringPurposeCompleted (1), leaderMovedOutOfClusterBoundingBox (2), joiningAnotherCluster (3), max(15) } -- none of these fields are OPTIONAL as each of the types below has an "unknown" value, which -- should be used if the value isn't provided. VruDynamicProperties ::= SEQUENCE { heading Heading, speed Speed, longitudinalAcceleration LongitudinalAcceleration, laterialAcceleration LateralAcceleration, verticalAcceleration VerticalAcceleration, yawRate YawRate, pastLocations PathHistory, predictedLocations PathHistory, VruMotionPredictionContainer ::= SEQUENCE { pathHistory PathHistory OPTIONAL, pathPrediction PathPrediction OPTIONAL, safeDistance SequenceOfVruSafeDistanceIndication OPTIONAL, trajectoryChangeIndication SequenceOfTrajectoryInterceptionIndication OPTIONAL, accelerationChangeIndication AccelerationChangeIndication OPTIONAL, headingChangeIndication HeadingChangeIndication OPTIONAL, stabilityChangeIndication StabilityChangeIndication OPTIONAL, ... } VamExtension ::= CHOICE { dummy NULL, PathPrediction ::= PathHistory SequenceOfVruSafeDistanceIndication ::= SEQUENCE(SIZE(0..8)) OF VruSafeDistanceIndication VruSafeDistanceIndication ::= SEQUENCE { subjectStation StationID OPTIONAL, stationSafeDistanceIndication BOOLEAN, timeToCollision ActionDeltaTime OPTIONAL, ... } SequenceOfTrajectoryInterceptionIndication ::= SEQUENCE (SIZE(1..8)) OF TrajectoryInterceptionIndication TrajectoryInterceptionIndication ::= SEQUENCE { subjectStation StationID OPTIONAL, trajectoryInterceptionIndication BOOLEAN } HeadingChangeIndication ::= SEQUENCE { direction LeftOrRight, actionDeltaTime ActionDeltaTime } LeftOrRight ::= ENUMERATED { left, right } ActionDeltaTime ::= INTEGER {zero(0), hundredMs(1), twoHundredMs(2), unavailable (127) } (0..127) AccelerationChangeIndication ::= SEQUENCE { accelOrDecel AccelOrDecel, actionDeltaTime ActionDeltaTime } AccelOrDecel ::= ENUMERATED { accelerate, decelerate } StabilityChangeIndication ::= SEQUENCE { lossProbability StabilityLossProbability, actionDeltaTime ActionDeltaTime } StabilityLossProbability ::= INTEGER { zero(0), twoPercent (1), fourPercent(2), unavailable (63) } (0..63) END VAM-Temp-Imports.asn +11 −3 Original line number Diff line number Diff line -- This module defines types that are intended to be updated within -- Note: This module defines types that are intended to be updated within -- or added to the Common Data Dictionary. Defining the types in this -- module allows them to be used by the VAM before the CDD has been -- updated. Once the CDD has been updated, this module will also be Loading @@ -14,7 +14,7 @@ BEGIN IMPORTS ReferencePosition, SpeedConfidence, VehicleWidth ReferencePosition, SpeedConfidence, StationID, VehicleWidth FROM ITS-Container {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2)} Loading @@ -23,7 +23,7 @@ NodeOffsetPointXY, Offset-B10, Offset-B11, Offset-B12, Offset-B13, Offset-B14, Offset-B16 FROM DSRC {iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2 (2)} version (2)} ; Loading @@ -34,6 +34,14 @@ BasicContainer ::= SEQUENCE { ... } ItsPduHeader ::= SEQUENCE { protocolVersion INTEGER (0..255), messageID INTEGER{ denm(1), cam(2), poi(3), spatem(4), mapem(5), ivim(6), ev-rsr(7), tistpgtransaction(8), srem(9), ssem(10), evcsn(11), saem(12), rtcmem(13), vam(14) } (0..255), -- Mantis #7209, #7005 stationID StationID } AreaCircular ::= SEQUENCE { nodeCenterPoint OffsetPoint OPTIONAL, Loading Loading
VAM-PDU-Descriptions.asn +274 −51 Original line number Diff line number Diff line -- ETSI TS 103 300-3 V0.4.0 (2020-07) VAM-PDU-Descriptions {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) ts(103300) vam(3) version(1)} wg1(1) ts(103300) part-3 (3) vam(1) version(1)} DEFINITIONS AUTOMATIC TAGS ::= BEGIN IMPORTS ItsPduHeader, ReferencePosition, AccelerationControl, Heading, HeadingValue, Speed, StationID, VehicleLength, VehicleWidth, PathHistory, ProtectedCommunicationZone, PtActivation, Latitude, Longitude, ProtectedCommunicationZonesRSU Curvature, CurvatureCalculationMode, ExteriorLights, Heading, LanePosition, LateralAcceleration, LongitudinalAcceleration, PathHistory, ReferencePosition, Speed, StationID, SteeringWheelAngle, VerticalAcceleration, YawRate FROM ITS-Container {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) ts(102894) cdd(2) version(2)} Loading @@ -15,88 +17,309 @@ BEGIN FROM CAM-PDU-Descriptions {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) en(302637) cam(2) version(2)} -- Note: sVAM-Temp-Imports defines types that are intended to be updated within -- or added to the Common Data Dictionary. Once the CDD has been updated, -- VAM-Temp-Imports will also be updated to import the new types directly -- from the CDD. The use of WITH SUCCESSORS ensures that the import -- statement below will not have to change. AreaCircular, AreaPolygon, AreaRectangle, BasicContainer, ItsPduHeader FROM VAM-Temp-Imports {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) ts(103300) part-3(3) temp-imports(255) version(1)} IntersectionReferenceID, LaneID FROM DSRC {iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version (2)} ; VAM ::= SEQUENCE { header ItsPduHeaderVam, vam VruAwareness } -- contains StationId -- StationId should change when certificate changes, or when VRU -- enters or leaves a cluster (as leader or otherwise) ItsPduHeaderVam ::= ItsPduHeader(WITH COMPONENTS { ..., messageID(vam) }) VruAwareness ::= SEQUENCE { generationDeltaTime GenerationDeltaTime, vamParameters VamParameters, vamExtensions SEQUENCE (SIZE(0..MAX)) OF VamExtension generationDeltaTime GenerationDeltaTime, -- from CAM-PDU-Descriptions vamParameters VamParameters } VamParameters ::= SEQUENCE { activeProfile VruProfileId, physicalProperties VruPhysicalProperties, dyanmicProperties VruDynamicProperties, basicContainer BasicContainer, -- from VAM-Temp-Imports vruHighFrequencyContainer VruHighFrequencyContainer OPTIONAL, vruLowFrequencyContainer VruLowFrequencyContainer OPTIONAL, vruClusterInformationContainer VruClusterInformationContainer OPTIONAL, vruClusterOperationContainer VruClusterOperationContainer OPTIONAL, vruMotionPredictionContainer VruMotionPredictionContainer OPTIONAL, ... } VruProfile ::= ENUMERATED { unavailable(0), pedestrian(1), cyclist(2), motorcyclist(3), animal(4), max(15) } VruHighFrequencyContainer ::= SEQUENCE { heading Heading, -- from ITS-Container speed Speed, -- from ITS-Container longitudinalAcceleration LongitudinalAcceleration, -- from ITS-Container curvature Curvature OPTIONAL, -- from ITS-Container curvatureCalculationMode CurvatureCalculationMode OPTIONAL, -- from ITS-Container yawRate YawRate OPTIONAL, -- from ITS-Container lateralAcceleration LateralAcceleration OPTIONAL, -- from ITS-Container verticalAcceleration VerticalAcceleration OPTIONAL, -- from ITS-Container vruLanePosition VruLanePosition OPTIONAL, environment VruEnvironment OPTIONAL, movementControl VruMovementControl OPTIONAL, orientation VruOrientation OPTIONAL, rollAngle VruRollAngle OPTIONAL, deviceUsage VruDeviceUsage OPTIONAL, ... } VruLanePosition ::= CHOICE { offRoadLanePosition OffRoadLanePosition, vehicularLanePosition LanePosition, -- from ITS-Container trafficIslandPosition TrafficIslandPosition, mapPosition MapPosition, ... } VruProfileId ::= ENUMERATED { pedestrian(1), lowSpeedTwoWheel(2), fullSpeedTwoWheel(3), animal(4), ... OffRoadLanePosition ::= ENUMERATED { unavailable(0), sidewalk(1), parkingLane(2), bikeLane(3), max(15) } VruPhysicalProperties ::= CHOICE { singleVruPhysInfo SingleVruPhysicalInfo, clusterPhysInfo VruClusterPhysicalInfo, TrafficIslandPosition ::= SEQUENCE { oneSide NonIslandLanePosition, otherSide NonIslandLanePosition } NonIslandLanePosition ::= CHOICE { offRoadLanePosition OffRoadLanePosition, vehicularLanePosition LanePosition, -- from ITS-Container mapPosition MapPosition, ... } SingleVruPhysicalInfo ::= SEQUENCE { referencePoint ReferencePosition, orientation Heading, MapPosition ::= SEQUENCE { intersectionId IntersectionReferenceID, lane LaneID } VruEnvironment ::= ENUMERATED { unavailable (0), intersectionCrossing(1), zebraCrossing(2), sidewalk (3), onVehicleRoad(4), protectedGeographicArea(5), max (255) -- values 6-254 reserved for later use } VruMovementControl ::= ENUMERATED { unavailable (0), braking(1), hardBraking(2), stopPedaling (3), noReaction(4), max (255) -- values 5-254 reserved for later use } VruOrientation ::= Heading -- from ITS-Container VruRollAngle ::= SteeringWheelAngle -- from ITS-Container VruDeviceUsage ::= ENUMERATED { unavailable(0), other(1), idle(2), listeningToAudio(3), typing(4), calling(5), playingGames(6), reading(7), viewing(8), max(255) -- values 9-254 reserved for later use } VruLowFrequencyContainer ::= SEQUENCE { profileAndSubprofile VruProfileAndSubprofile OPTIONAL, exteriorLights VruExteriorLights OPTIONAL, sizeClass VruSizeClass OPTIONAL, ... } VruProfileAndSubprofile ::= CHOICE { pedestrian VruSubProfilePedestrian, bicyclist VruSubProfileBicyclist, motorcylist VruSubProfileMotorcyclist, animal VruSubProfileAnimal, ... } VruSubProfilePedestrian ::= ENUMERATED { unavailable(0), ordinary-pedestrian(1), road-worker(2), first-responder(3), max(15) } VruSubProfileBicyclist ::= ENUMERATED { unavailable(0), bicyclist(1), wheelchair-user(2), horse-and-rider(3), rollerskater(4), e-scooter(5), personal-transporter(6), pedelec(7), speed-pedelec(8), max(15) } VruSubProfileMotorcyclist ::= ENUMERATED { unavailable(0), moped(1), motorcycle(2), motorcycle-and-sidecar-right(3), motorcycle-and-sidecar-left(4), max(15) } VruSubProfileAnimal ::= ENUMERATED { unavailable(0), max(15) } VruExteriorLights ::= SEQUENCE { vruSpecific VruSpecificExteriorLights, -- defined below generic ExteriorLights -- should be extensible? } VruSpecificExteriorLights ::= BIT STRING { unavailable (0), backFlashLight (1), helmetLight (2), armLight (3), legLight (4), wheelLight (5) } (SIZE(8)) VruSizeClass ::= ENUMERATED { unavailable (0), low(1), medium(2), high (3), max(15) -- values 4-14 reserved for later use } VruClusterInformationContainer ::= SEQUENCE { clusterId ClusterId, clusterBoundingBoxShape ClusterBoundingBoxShape, clusterCardinalitySize INTEGER(0..255), -- 0 means unknown clusterProfiles ClusterProfiles, ... } ClusterId ::= INTEGER(0..255) ClusterBoundingBoxShape::= CHOICE { clusterRectangle AreaRectangle, -- from VAM-Temp-Imports clusterCircle AreaCircular, -- from VAM-Temp-Imports clusterPolygon AreaPolygon, -- from VAM-Temp-Imports ... } ClusterProfiles ::= BIT STRING { pedestrian(0), bicyclist(1), motorcyclist(2), animal(3) } (SIZE(4)) -- this is OPTIONAL elements rather than a CHOICE because a -- VRU ITS-S could be leaving one cluster and joining another. VruClusterOperationContainer ::= SEQUENCE { clusterJoinInfo ClusterJoinInfo OPTIONAL, clusterExitInfo StationID OPTIONAL, clusterLeaveInfo ClusterLeaveInfo OPTIONAL, clusterBreakupInfo ClusterBreakupInfo OPTIONAL, clusterIdChangeInfo VruClusterOpTimestamp OPTIONAL, ... } VruClusterOpTimestamp ::= INTEGER (1..255) ClusterJoinInfo ::= SEQUENCE { clusterId StationID, countdown INTEGER(0..7), clusterId ClusterId, joinTime VruClusterOpTimestamp, ... } ClusterLeaveInfo ::= SEQUENCE { clusterId ClusterId, clusterLeaveReason ClusterLeaveReason, ... } VruClusterPhysicalInfo ::= SEQUENCE { referencePoint ReferencePosition, -- middle of front edge of cluster heading HeadingValue, -- direction of perp. line through referencePoint width VruClusterSideLength, -- width (with referencePoint in the -- middle) in units of 10 cm length VruClusterSideLength, -- length (from referencePoint to rear of -- cluster) in units of 10 cm number INTEGER(0..255), -- 0 means unknown ClusterBreakupInfo ::= SEQUENCE { clusterBreakupReason ClusterBreakupReason, breakupTime VruClusterOpTimestamp, ... } VruClusterSideLength ::= INTEGER {tenCentimeters(1), outOfRange(61), unavailable(62)} (1..62) ClusterLeaveReason ::= ENUMERATED { notProvided (0), clusterLeaderLost (1), clusterDisbandedByLeader (2), outOfClusterBoundingBox (3), outOfClusterSpeedRange (4), joiningAnotherCluster (5), max(15) } ClusterBreakupReason ::= ENUMERATED { notProvided (0), clusteringPurposeCompleted (1), leaderMovedOutOfClusterBoundingBox (2), joiningAnotherCluster (3), max(15) } -- none of these fields are OPTIONAL as each of the types below has an "unknown" value, which -- should be used if the value isn't provided. VruDynamicProperties ::= SEQUENCE { heading Heading, speed Speed, longitudinalAcceleration LongitudinalAcceleration, laterialAcceleration LateralAcceleration, verticalAcceleration VerticalAcceleration, yawRate YawRate, pastLocations PathHistory, predictedLocations PathHistory, VruMotionPredictionContainer ::= SEQUENCE { pathHistory PathHistory OPTIONAL, pathPrediction PathPrediction OPTIONAL, safeDistance SequenceOfVruSafeDistanceIndication OPTIONAL, trajectoryChangeIndication SequenceOfTrajectoryInterceptionIndication OPTIONAL, accelerationChangeIndication AccelerationChangeIndication OPTIONAL, headingChangeIndication HeadingChangeIndication OPTIONAL, stabilityChangeIndication StabilityChangeIndication OPTIONAL, ... } VamExtension ::= CHOICE { dummy NULL, PathPrediction ::= PathHistory SequenceOfVruSafeDistanceIndication ::= SEQUENCE(SIZE(0..8)) OF VruSafeDistanceIndication VruSafeDistanceIndication ::= SEQUENCE { subjectStation StationID OPTIONAL, stationSafeDistanceIndication BOOLEAN, timeToCollision ActionDeltaTime OPTIONAL, ... } SequenceOfTrajectoryInterceptionIndication ::= SEQUENCE (SIZE(1..8)) OF TrajectoryInterceptionIndication TrajectoryInterceptionIndication ::= SEQUENCE { subjectStation StationID OPTIONAL, trajectoryInterceptionIndication BOOLEAN } HeadingChangeIndication ::= SEQUENCE { direction LeftOrRight, actionDeltaTime ActionDeltaTime } LeftOrRight ::= ENUMERATED { left, right } ActionDeltaTime ::= INTEGER {zero(0), hundredMs(1), twoHundredMs(2), unavailable (127) } (0..127) AccelerationChangeIndication ::= SEQUENCE { accelOrDecel AccelOrDecel, actionDeltaTime ActionDeltaTime } AccelOrDecel ::= ENUMERATED { accelerate, decelerate } StabilityChangeIndication ::= SEQUENCE { lossProbability StabilityLossProbability, actionDeltaTime ActionDeltaTime } StabilityLossProbability ::= INTEGER { zero(0), twoPercent (1), fourPercent(2), unavailable (63) } (0..63) END
VAM-Temp-Imports.asn +11 −3 Original line number Diff line number Diff line -- This module defines types that are intended to be updated within -- Note: This module defines types that are intended to be updated within -- or added to the Common Data Dictionary. Defining the types in this -- module allows them to be used by the VAM before the CDD has been -- updated. Once the CDD has been updated, this module will also be Loading @@ -14,7 +14,7 @@ BEGIN IMPORTS ReferencePosition, SpeedConfidence, VehicleWidth ReferencePosition, SpeedConfidence, StationID, VehicleWidth FROM ITS-Container {itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2)} Loading @@ -23,7 +23,7 @@ NodeOffsetPointXY, Offset-B10, Offset-B11, Offset-B12, Offset-B13, Offset-B14, Offset-B16 FROM DSRC {iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2 (2)} version (2)} ; Loading @@ -34,6 +34,14 @@ BasicContainer ::= SEQUENCE { ... } ItsPduHeader ::= SEQUENCE { protocolVersion INTEGER (0..255), messageID INTEGER{ denm(1), cam(2), poi(3), spatem(4), mapem(5), ivim(6), ev-rsr(7), tistpgtransaction(8), srem(9), ssem(10), evcsn(11), saem(12), rtcmem(13), vam(14) } (0..255), -- Mantis #7209, #7005 stationID StationID } AreaCircular ::= SEQUENCE { nodeCenterPoint OffsetPoint OPTIONAL, Loading