VAM-PDU-Descriptions {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) ts(103300) vam(3) version(1)} DEFINITIONS AUTOMATIC TAGS ::= BEGIN IMPORTS ItsPduHeader, ReferencePosition, AccelerationControl, Heading, HeadingValue, Speed, StationID, VehicleLength, VehicleWidth, PathHistory, ProtectedCommunicationZone, PtActivation, Latitude, Longitude, ProtectedCommunicationZonesRSU FROM ITS-Container {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) ts(102894) cdd(2) version(2)} GenerationDeltaTime FROM CAM-PDU-Descriptions {itu-t(0) identified-organization(4) etsi(0) itsDomain(5) wg1(1) en(302637) cam(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 } VamParameters ::= SEQUENCE { activeProfile VruProfileId, physicalProperties VruPhysicalProperties, dyanmicProperties VruDynamicProperties, ... } VruProfileId ::= ENUMERATED { pedestrian(1), lowSpeedTwoWheel(2), fullSpeedTwoWheel(3), animal(4), ... } VruPhysicalProperties ::= CHOICE { singleVruPhysInfo SingleVruPhysicalInfo, clusterPhysInfo VruClusterPhysicalInfo, ... } SingleVruPhysicalInfo ::= SEQUENCE { referencePoint ReferencePosition, orientation Heading, clusterJoinInfo ClusterJoinInfo OPTIONAL, clusterExitInfo StationID OPTIONAL, ... } ClusterJoinInfo ::= SEQUENCE { clusterId StationID, countdown INTEGER(0..7), ... } 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 ... } VruClusterSideLength ::= INTEGER {tenCentimeters(1), outOfRange(61), unavailable(62)} (1..62) -- 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, ... } VamExtension ::= CHOICE { dummy NULL, ... } END