Commit 9d17db8b authored by Denis Filatov's avatar Denis Filatov
Browse files

ETSI EN 302 637-2 v1.3.2

parent 964210cd
Loading
Loading
Loading
Loading

.gitmodules

0 → 100644
+3 −0
Original line number Diff line number Diff line
[submodule "cdd"]
	path = cdd
	url = https://forge.etsi.org/rep/ITS/asn1/cdd_ts102894_2.git
+132 −0
Original line number Diff line number Diff line
CAM-PDU-Descriptions {
itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (302637) cam (2) version (1) 
}

DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

IMPORTS 
ItsPduHeader, CauseCode, ReferencePosition, AccelerationControl, Curvature, CurvatureCalculationMode, Heading, LanePosition, EmergencyPriority, EmbarkationStatus, Speed, DriveDirection, LongitudinalAcceleration, LateralAcceleration, VerticalAcceleration, StationType, ExteriorLights, DangerousGoodsBasic, SpecialTransportType, LightBarSirenInUse, VehicleRole, VehicleLength, VehicleWidth, PathHistory, RoadworksSubCauseCode, ClosedLanes, TrafficRule, SpeedLimit, SteeringWheelAngle, PerformanceClass, YawRate, ProtectedCommunicationZone, PtActivation, Latitude, Longitude, ProtectedCommunicationZonesRSU, CenDsrcTollingZone FROM ITS-Container {
itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (1) 
};


--	The root data frame for cooperative awareness messages

CAM ::= SEQUENCE {
	header ItsPduHeader,
	cam CoopAwareness
}

CoopAwareness ::= SEQUENCE {
	generationDeltaTime GenerationDeltaTime,
	camParameters CamParameters
}

CamParameters ::= SEQUENCE {
	basicContainer BasicContainer,
	highFrequencyContainer HighFrequencyContainer,
	lowFrequencyContainer LowFrequencyContainer OPTIONAL,
	specialVehicleContainer SpecialVehicleContainer OPTIONAL,
	...
}

HighFrequencyContainer ::= CHOICE {
	basicVehicleContainerHighFrequency BasicVehicleContainerHighFrequency,
	rsuContainerHighFrequency RSUContainerHighFrequency,
	...
}

 LowFrequencyContainer ::= CHOICE {
  basicVehicleContainerLowFrequency BasicVehicleContainerLowFrequency,
	...
}

SpecialVehicleContainer ::= CHOICE {
	publicTransportContainer PublicTransportContainer,
	specialTransportContainer SpecialTransportContainer,
	dangerousGoodsContainer DangerousGoodsContainer,
	roadWorksContainerBasic RoadWorksContainerBasic,
	rescueContainer RescueContainer,
	emergencyContainer EmergencyContainer,
	safetyCarContainer SafetyCarContainer,
	...
}

BasicContainer ::= SEQUENCE {
	stationType StationType,
	referencePosition ReferencePosition,
	...
}

BasicVehicleContainerHighFrequency ::= SEQUENCE {
	heading Heading,
	speed Speed,
	driveDirection DriveDirection,
	vehicleLength VehicleLength,
	vehicleWidth VehicleWidth,
	longitudinalAcceleration LongitudinalAcceleration,
	curvature Curvature,
	curvatureCalculationMode CurvatureCalculationMode,
	yawRate YawRate,
	accelerationControl AccelerationControl OPTIONAL,
	lanePosition LanePosition OPTIONAL,
	steeringWheelAngle SteeringWheelAngle OPTIONAL,
	lateralAcceleration LateralAcceleration OPTIONAL,
	verticalAcceleration VerticalAcceleration OPTIONAL,
	performanceClass PerformanceClass OPTIONAL,
	cenDsrcTollingZone CenDsrcTollingZone OPTIONAL
}

BasicVehicleContainerLowFrequency  ::= SEQUENCE {
	vehicleRole VehicleRole,
	exteriorLights ExteriorLights,
	pathHistory PathHistory
}

PublicTransportContainer ::= SEQUENCE {
	embarkationStatus EmbarkationStatus,
	ptActivation PtActivation OPTIONAL
}

SpecialTransportContainer ::= SEQUENCE {
	specialTransportType SpecialTransportType,
	lightBarSirenInUse LightBarSirenInUse
}

 DangerousGoodsContainer ::= SEQUENCE {
  dangerousGoodsBasic DangerousGoodsBasic
 }
 
 RoadWorksContainerBasic ::= SEQUENCE {
  roadworksSubCauseCode RoadworksSubCauseCode OPTIONAL,
  lightBarSirenInUse LightBarSirenInUse,
  closedLanes ClosedLanes OPTIONAL
 }

RescueContainer ::= SEQUENCE {
	lightBarSirenInUse LightBarSirenInUse
}

EmergencyContainer ::= SEQUENCE {
	lightBarSirenInUse LightBarSirenInUse,
	incidentIndication CauseCode OPTIONAL,
	emergencyPriority EmergencyPriority OPTIONAL
}

SafetyCarContainer ::= SEQUENCE {
	lightBarSirenInUse LightBarSirenInUse,
	incidentIndication CauseCode OPTIONAL,
	trafficRule TrafficRule OPTIONAL,
	speedLimit SpeedLimit OPTIONAL
}

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

GenerationDeltaTime ::= INTEGER { oneMilliSec(1) } (0..65535)

END
+13 −2
Original line number Diff line number Diff line
# CAM EN 302 637-2
# Abstract syntax notation for Cooperative Awareness Basic Service

Abstract syntax notation for Cooperative Awareness Basic Service
 No newline at end of file
This repository contains the ASN.1 module for ETSI ITS Cooperative Awareness Basic Service (CAM) in the **CAM-PDU-Descriptions.asn** file.
* The module is published with the **ETSI EN 302 637-2 v1.3.2** at November 2014.

## License

The content of this repository and the files contained are released under the BSD-3-Clause license.

See the attached LICENSE file or visit https://forge.etsi.org/legal-matters.

## Dependencies

- ETSI TS 102 894-2 v1.2.1 - [Common Data Dictionary](https://forge.etsi.org/rep/ITS/asn1/cdd_ts102894_2)
Original line number Diff line number Diff line
Subproject commit df1f3632c89893ee334b6e440e1666735794b701