Commit c5641737 authored by urhahne's avatar urhahne
Browse files

Version 0.0.5

parent 461fd7b5
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
<?xml version="1.0" encoding="UTF-8" standalone="no" ?><module asnv-version="1" entry-point="PCIM" name="PCIM" tags="automatic"><sequence name="PCIM"><field name="header" type="ItsPduHeader"/><field name="pcim" type="Pcim"/></sequence><sequence name="ItsPduHeader"><field name="protocolVersion" type="ItsPduHeader$protocolVersion"/><field name="messageID" type="ItsPduHeader$messageID"/><field name="stationID" type="StationID"/></sequence><integer max="255" min="0" name="ItsPduHeader$protocolVersion"/><integer max="255" min="0" name="ItsPduHeader$messageID"><value name="denm" value="1"/><value name="cam" value="2"/><value name="poi" value="3"/><value name="spatem" value="4"/><value name="mapem" value="5"/><value name="ivim" value="6"/><value name="ev_rsr" value="7"/><value name="tistpgtransaction" value="8"/><value name="srem" value="9"/><value name="ssem" value="10"/><value name="evcsn" value="11"/><value name="saem" value="12"/><value name="rtcmem" value="13"/><value name="pcim" value="15"/><value name="pcvm" value="16"/></integer><integer max="4294967295" min="0" name="StationID"/><sequence name="Pcim"><field name="autosarProfile4Size" type="UInt16"/><field name="autosarProfile4rollingCounter" type="UInt16"/><field name="autosarProfile4DataID" type="UInt32"/><field name="autosarProfile4CRC32" type="UInt32"/><field name="serverTime" type="UInt42"/><field name="vehicles" type="Pcim$vehicles"/></sequence><integer max="65535" min="0" name="UInt16"/><integer max="4294967295" min="0" name="UInt32"/><integer max="4398046511103" min="0" name="UInt42"/><sequence-of max="32" min="1" name="Pcim$vehicles"><field type="VehicleContainer"/></sequence-of><sequence name="VehicleContainer"><field name="currentSessionID" type="VehicleContainer$currentSessionID"/><field name="currentMissionID" type="VehicleContainer$currentMissionID"/><field name="serverTimeAtPcvm" type="UInt42"/><field name="rollingCounterFromPCVM" type="UInt16"/><field name="vehicleIdentification" optional="true" type="VehicleIdentification"/><field name="drivingPermission" optional="true" type="DrivingPermission"/><field name="driveCommand" type="DriveCommand"/><field name="detectedVehiclePose" optional="true" type="DetectedVehiclePose"/><field name="controlInterface" type="ControlInterface"/><field name="oemSpecific" optional="true" type="UInt16"/></sequence><ia5-string max="17" min="17" name="VehicleContainer$currentSessionID"/><ia5-string max="6" min="6" name="VehicleContainer$currentMissionID"/><sequence name="VehicleIdentification"><field name="seed" type="UInt64"/><field name="codeLength" type="UInt8"/><field name="authorizationState" type="AuthorizationStateEnum"/></sequence><integer max="18446744073709551615" min="0" name="UInt64"/><integer max="255" min="0" name="UInt8"/><enumerated name="AuthorizationStateEnum"><value name="undefined" value="0"/><value name="prepared" value="1"/><value name="successful" value="2"/><value name="authorization_error" value="3"/><value name="new_code" value="4"/></enumerated><sequence name="DrivingPermission"><field name="expirationTime" type="UInt42"/><field name="velocityMax" type="Int16"/><field name="curvatureMin" type="Int16"/><field name="curvatureMax" type="Int16"/></sequence><integer max="32767" min="-32768" name="Int16"/><sequence name="DriveCommand"><field name="driveCommandAction" type="DriveCommandActionEnum"/><field name="terminateReason" type="TerminateReasonEnum"/><field name="drivingDirection" type="DrivingDirectionEnum"/><field name="directionIndicator" type="VehicleDirIndicatorEnum"/><field name="emergencyStop" type="EmergencyStopEnum"/></sequence><enumerated name="DriveCommandActionEnum"><value name="standby" value="0"/><value name="initialize" value="1"/><value name="drive" value="2"/><value name="terminate" value="3"/></enumerated><enumerated name="TerminateReasonEnum"><value name="proceed" value="0"/><value name="destination_reached" value="1"/><value name="infrastructure_error" value="2"/><value name="vehicle_error" value="3"/><value name="backend" value="4"/></enumerated><enumerated name="DrivingDirectionEnum"><value name="neutral" value="0"/><value name="forwards" value="1"/><value name="backwards" value="2"/><value name="park" value="3"/></enumerated><enumerated name="VehicleDirIndicatorEnum"><value name="dir_indicator_off" value="0"/><value name="dir_indicator_right" value="1"/><value name="dir_indicator_left" value="2"/><value name="dir_indicator_both" value="3"/><value name="dir_indicator_unknown" value="4"/></enumerated><enumerated name="EmergencyStopEnum"><value name="inactive" value="0"/><value name="precharge" value="1"/><value name="active" value="2"/></enumerated><sequence name="DetectedVehiclePose"><field name="poseX" type="Int20"/><field name="poseY" type="Int20"/><field name="posePsi" type="UInt16"/><field name="poseMeasurementTime" type="UInt42"/></sequence><integer max="524287" min="-524288" name="Int20"/><choice name="ControlInterface"><field name="pathSnippet" type="PathSnippet"/><field name="directControl" type="DirectControl"/></choice><sequence-of max="5" min="0" name="PathSnippet"><field type="WayPoint"/></sequence-of><sequence name="WayPoint"><field name="index" type="UInt16"/><field name="x" type="Int20"/><field name="y" type="Int20"/><field name="psi" type="UInt16"/><field name="velocity" type="Int16"/><field name="curvature" type="Int16"/></sequence><sequence name="DirectControl"><field name="velocityReq" type="Int16"/><field name="curvatureReq" type="Int16"/></sequence></module>
 No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no" ?><module asnv-version="1" entry-point="PCIM" name="PCIM" tags="automatic"><sequence name="PCIM"><field name="header" type="ItsPduHeader"/><field name="pcim" type="Pcim"/></sequence><sequence name="ItsPduHeader"><field name="protocolVersion" type="ItsPduHeader$protocolVersion"/><field name="messageID" type="ItsPduHeader$messageID"/><field name="stationID" type="StationID"/></sequence><integer max="255" min="0" name="ItsPduHeader$protocolVersion"/><integer max="255" min="0" name="ItsPduHeader$messageID"><value name="denm" value="1"/><value name="cam" value="2"/><value name="poi" value="3"/><value name="spatem" value="4"/><value name="mapem" value="5"/><value name="ivim" value="6"/><value name="ev_rsr" value="7"/><value name="tistpgtransaction" value="8"/><value name="srem" value="9"/><value name="ssem" value="10"/><value name="evcsn" value="11"/><value name="saem" value="12"/><value name="rtcmem" value="13"/><value name="pcim" value="15"/><value name="pcvm" value="16"/></integer><integer max="4294967295" min="0" name="StationID"/><sequence name="Pcim"><field name="length" type="UInt16"/><field name="rollingCounter" type="UInt16"/><field name="dataID" type="UInt32"/><field name="crc32" type="UInt32"/><field name="vehicles" type="Pcim$vehicles"/></sequence><integer max="65535" min="0" name="UInt16"/><integer max="4294967295" min="0" name="UInt32"/><sequence-of max="32" min="1" name="Pcim$vehicles"><field type="VehicleContainer"/></sequence-of><sequence name="VehicleContainer"><field name="currentSessionID" type="VehicleContainer$currentSessionID"/><field name="currentMissionID" type="VehicleContainer$currentMissionID"/><field name="rollingCounterFromPcvm" type="UInt16"/><field name="vehicleIdentification" optional="true" type="VehicleIdentification"/><field name="drivingPermission" optional="true" type="DrivingPermission"/><field name="driveCommand" type="DriveCommand"/><field name="detectedVehiclePose" optional="true" type="DetectedVehiclePose"/><field name="controlInterface" type="ControlInterface"/><field name="oemSpecific" optional="true" type="UInt16"/></sequence><ia5-string max="17" min="17" name="VehicleContainer$currentSessionID"/><ia5-string max="6" min="6" name="VehicleContainer$currentMissionID"/><sequence name="VehicleIdentification"><field name="seed" type="UInt64"/><field name="codeLength" type="UInt8"/><field name="authorizationState" type="AuthorizationStateEnum"/></sequence><integer max="18446744073709551615" min="0" name="UInt64"/><integer max="255" min="0" name="UInt8"/><enumerated name="AuthorizationStateEnum"><value name="undefined" value="0"/><value name="prepared" value="1"/><value name="successful" value="2"/><value name="authorization_error" value="3"/><value name="new_code" value="4"/></enumerated><sequence name="DrivingPermission"><field name="expirationTime" type="UInt42"/><field name="velocityMax" type="Int16"/><field name="curvatureMin" type="Int16"/><field name="curvatureMax" type="Int16"/></sequence><integer max="4398046511103" min="0" name="UInt42"/><integer max="32767" min="-32768" name="Int16"/><sequence name="DriveCommand"><field name="driveCommandAction" type="DriveCommandActionEnum"/><field name="terminateReason" type="TerminateReasonEnum"/><field name="selectGear" type="SelectGearEnum"/><field name="directionIndicator" type="VehicleDirIndicatorEnum"/><field name="emergencyStop" type="EmergencyStopEnum"/></sequence><enumerated name="DriveCommandActionEnum"><value name="standby" value="0"/><value name="initialize" value="1"/><value name="drive" value="2"/><value name="terminate" value="3"/></enumerated><enumerated name="TerminateReasonEnum"><value name="proceed" value="0"/><value name="destination_reached" value="1"/><value name="infrastructure_error" value="2"/><value name="vehicle_error" value="3"/><value name="backend" value="4"/></enumerated><enumerated name="SelectGearEnum"><value name="neutral" value="0"/><value name="forwards" value="1"/><value name="backwards" value="2"/><value name="park" value="3"/></enumerated><enumerated name="VehicleDirIndicatorEnum"><value name="dir_indicator_off" value="0"/><value name="dir_indicator_right" value="1"/><value name="dir_indicator_left" value="2"/><value name="dir_indicator_both" value="3"/><value name="dir_indicator_unknown" value="4"/></enumerated><enumerated name="EmergencyStopEnum"><value name="inactive" value="0"/><value name="precharge" value="1"/><value name="active" value="2"/></enumerated><sequence name="DetectedVehiclePose"><field name="detectedPose" type="Pose"/><field name="poseMeasurementTime" type="UInt42"/></sequence><sequence name="Pose"><field name="x" type="Int20"/><field name="y" type="Int20"/><field name="psi" type="UInt16"/></sequence><integer max="524287" min="-524288" name="Int20"/><choice name="ControlInterface"><field name="pathSnippet" type="PathSnippet"/><field name="directControl" type="DirectControl"/><field name="trajectoryControl" type="TrajectoryControl"/></choice><sequence-of max="5" min="0" name="PathSnippet"><field type="WayPoint"/></sequence-of><sequence name="WayPoint"><field name="index" type="UInt16"/><field name="wayPointPose" type="Pose"/><field name="velocity" type="Int16"/><field name="curvature" type="Int16"/></sequence><sequence name="DirectControl"><field name="velocityReq" type="Int16"/><field name="curvatureReq" type="Int16"/></sequence><sequence name="TrajectoryControl"><field name="timeReference" type="UInt42"/><field name="controlTrajectory" type="ControlTrajectory"/><field name="stateTrajectory" type="StateTrajectory"/></sequence><sequence-of max="50" min="0" name="ControlTrajectory"><field type="ControlPoint"/></sequence-of><sequence name="ControlPoint"><field name="velocity" type="Int16"/><field name="vehiclePose" type="Pose"/></sequence><sequence-of max="50" min="0" name="StateTrajectory"><field type="StatePoint"/></sequence-of><sequence name="StatePoint"><field name="curvature" type="Int16"/><field name="acceleration" type="Int8"/></sequence><integer max="127" min="-128" name="Int8"/></module>
 No newline at end of file
+1 −1
Original line number Diff line number Diff line
<?xml version="1.0" encoding="UTF-8" standalone="no" ?><module asnv-version="1" entry-point="PCVM" name="PCVM" tags="automatic"><sequence name="PCVM"><field name="header" type="ItsPduHeader"/><field name="pcvm" type="Pcvm"/></sequence><sequence name="ItsPduHeader"><field name="protocolVersion" type="ItsPduHeader$protocolVersion"/><field name="messageID" type="ItsPduHeader$messageID"/><field name="stationID" type="StationID"/></sequence><integer max="255" min="0" name="ItsPduHeader$protocolVersion"/><integer max="255" min="0" name="ItsPduHeader$messageID"><value name="denm" value="1"/><value name="cam" value="2"/><value name="poi" value="3"/><value name="spatem" value="4"/><value name="mapem" value="5"/><value name="ivim" value="6"/><value name="ev_rsr" value="7"/><value name="tistpgtransaction" value="8"/><value name="srem" value="9"/><value name="ssem" value="10"/><value name="evcsn" value="11"/><value name="saem" value="12"/><value name="rtcmem" value="13"/><value name="pcim" value="15"/><value name="pcvm" value="16"/></integer><integer max="4294967295" min="0" name="StationID"/><sequence name="Pcvm"><field name="autosarProfile4Size" type="UInt16"/><field name="autosarProfile4rollingCounter" type="UInt16"/><field name="autosarProfile4DataID" type="UInt32"/><field name="autosarProfile4CRC32" type="UInt32"/><field name="sessionID" type="Pcvm$sessionID"/><field name="localTime" type="UInt42"/><field name="rollingCounter" type="UInt16"/><field name="rollingCounterFromPCIM" type="UInt16"/><field name="vehicleState" type="VehicleState"/><field name="vehicleError" optional="true" type="VehicleError"/><field name="vehicleDebug" optional="true" type="VehicleDebug"/><field name="oemSpecific" optional="true" type="UInt16"/></sequence><integer max="65535" min="0" name="UInt16"/><integer max="4294967295" min="0" name="UInt32"/><ia5-string max="17" min="17" name="Pcvm$sessionID"/><integer max="4398046511103" min="0" name="UInt42"/><sequence name="VehicleState"><field name="operationMode" type="VehicleOperationModeEnum"/><field name="vehicleAutorizationState" type="VehicleAuthorizationEnum"/><field name="drivingDirection" type="DrivingDirectionEnum"/><field name="currentVelocity" type="Int16"/><field name="currentCurvature" type="Int16"/><field name="secureStandstill" type="VehicleState$secureStandstill"/><field name="idxLastWayPoint" optional="true" type="UInt16"/><field name="localizedPose" optional="true" type="Pose"/></sequence><enumerated name="VehicleOperationModeEnum"><value name="unknown" value="0"/><value name="initializing" value="1"/><value name="prepared" value="2"/><value name="driving" value="3"/><value name="terminating" value="4"/></enumerated><enumerated name="VehicleAuthorizationEnum"><value name="vehicle_undefined" value="0"/><value name="vehicle_ready" value="1"/><value name="vehicle_flashing_completed" value="2"/><value name="vehicle_authorized" value="3"/></enumerated><enumerated name="DrivingDirectionEnum"><value name="neutral" value="0"/><value name="forwards" value="1"/><value name="backwards" value="2"/><value name="park" value="3"/></enumerated><integer max="32767" min="-32768" name="Int16"/><boolean name="VehicleState$secureStandstill"/><sequence name="Pose"><field name="x" type="Int20"/><field name="y" type="Int20"/><field name="psi" type="UInt16"/></sequence><integer max="524287" min="-524288" name="Int20"/><sequence name="VehicleError"><field name="time" type="UInt42"/><field name="vehCode" type="VehCodeEnum"/><field name="customCode" type="UInt8"/></sequence><enumerated name="VehCodeEnum"><value name="unspecified" value="0"/><value name="path_not_driveable" value="1"/></enumerated><integer max="255" min="0" name="UInt8"/><sequence name="VehicleDebug"><field name="remainingTimeToDrive" type="Int16"/><field name="drivingAllowed" type="VehicleDebug$drivingAllowed"/><field name="safetyViolations" type="SafetyViolationsEnum"/><field name="timeSyncUncertainty" type="Int16"/><field name="requestedVelocity" type="Int16"/><field name="requestedCurvature" type="Int16"/><field name="powertrainActive" type="VehicleDebug$powertrainActive"/></sequence><boolean name="VehicleDebug$drivingAllowed"/><enumerated name="SafetyViolationsEnum"><value name="no_violation" value="0"/><value name="no_driving_permission_received" value="1"/><value name="last_driving_permission_too_old" value="2"/><value name="crc_violation_clock_sync_response" value="3"/><value name="crc_violation_driving_permission" value="4"/><value name="expiration_time_violation" value="5"/><value name="driving_direction_mismatch" value="6"/><value name="velocity_violation" value="7"/><value name="curvature_min_violation" value="8"/><value name="curvature_max_violation" value="9"/><value name="clocks_not_synchronized" value="10"/><value name="expiration_time_too_high" value="11"/><value name="monitoring" value="12"/></enumerated><boolean name="VehicleDebug$powertrainActive"/></module>
 No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no" ?><module asnv-version="1" entry-point="PCVM" name="PCVM" tags="automatic"><sequence name="PCVM"><field name="header" type="ItsPduHeader"/><field name="pcvm" type="Pcvm"/></sequence><sequence name="ItsPduHeader"><field name="protocolVersion" type="ItsPduHeader$protocolVersion"/><field name="messageID" type="ItsPduHeader$messageID"/><field name="stationID" type="StationID"/></sequence><integer max="255" min="0" name="ItsPduHeader$protocolVersion"/><integer max="255" min="0" name="ItsPduHeader$messageID"><value name="denm" value="1"/><value name="cam" value="2"/><value name="poi" value="3"/><value name="spatem" value="4"/><value name="mapem" value="5"/><value name="ivim" value="6"/><value name="ev_rsr" value="7"/><value name="tistpgtransaction" value="8"/><value name="srem" value="9"/><value name="ssem" value="10"/><value name="evcsn" value="11"/><value name="saem" value="12"/><value name="rtcmem" value="13"/><value name="pcim" value="15"/><value name="pcvm" value="16"/></integer><integer max="4294967295" min="0" name="StationID"/><sequence name="Pcvm"><field name="length" type="UInt16"/><field name="rollingCounter" type="UInt16"/><field name="dataID" type="UInt32"/><field name="crc32" type="UInt32"/><field name="sessionID" type="Pcvm$sessionID"/><field name="rollingCounterFromPcim" type="UInt16"/><field name="vehicleState" type="VehicleState"/><field name="vehicleError" optional="true" type="VehicleError"/><field name="vehicleDebug" optional="true" type="VehicleDebug"/><field name="oemSpecific" optional="true" type="UInt16"/></sequence><integer max="65535" min="0" name="UInt16"/><integer max="4294967295" min="0" name="UInt32"/><ia5-string max="17" min="17" name="Pcvm$sessionID"/><sequence name="VehicleState"><field name="operationMode" type="VehicleOperationModeEnum"/><field name="vehicleAutorizationState" type="VehicleAuthorizationEnum"/><field name="gearSelected" type="SelectGearEnum"/><field name="currentVelocity" type="Int16"/><field name="currentCurvature" type="Int16"/><field name="secureStandstill" type="VehicleState$secureStandstill"/><field name="idxLastWayPoint" optional="true" type="UInt16"/><field name="localizedPose" optional="true" type="Pose"/></sequence><enumerated name="VehicleOperationModeEnum"><value name="unknown" value="0"/><value name="initializing" value="1"/><value name="prepared" value="2"/><value name="driving" value="3"/><value name="terminating" value="4"/></enumerated><enumerated name="VehicleAuthorizationEnum"><value name="vehicle_undefined" value="0"/><value name="vehicle_ready" value="1"/><value name="vehicle_flashing_completed" value="2"/><value name="vehicle_authorized" value="3"/></enumerated><enumerated name="SelectGearEnum"><value name="neutral" value="0"/><value name="forwards" value="1"/><value name="backwards" value="2"/><value name="park" value="3"/></enumerated><integer max="32767" min="-32768" name="Int16"/><boolean name="VehicleState$secureStandstill"/><sequence name="Pose"><field name="x" type="Int20"/><field name="y" type="Int20"/><field name="psi" type="UInt16"/></sequence><integer max="524287" min="-524288" name="Int20"/><sequence name="VehicleError"><field name="time" type="UInt42"/><field name="vehCode" type="VehCodeEnum"/><field name="customCode" type="UInt8"/></sequence><integer max="4398046511103" min="0" name="UInt42"/><enumerated name="VehCodeEnum"><value name="unspecified" value="0"/><value name="path_not_driveable" value="1"/></enumerated><integer max="255" min="0" name="UInt8"/><sequence name="VehicleDebug"><field name="remainingTimeToDrive" type="Int16"/><field name="drivingAllowed" type="VehicleDebug$drivingAllowed"/><field name="safetyViolations" type="SafetyViolationsEnum"/><field name="timeSyncUncertainty" type="Int16"/><field name="requestedVelocity" type="Int16"/><field name="requestedCurvature" type="Int16"/><field name="powertrainActive" type="VehicleDebug$powertrainActive"/></sequence><boolean name="VehicleDebug$drivingAllowed"/><enumerated name="SafetyViolationsEnum"><value name="no_violation" value="0"/><value name="no_driving_permission_received" value="1"/><value name="last_driving_permission_too_old" value="2"/><value name="crc_violation_clock_sync_response" value="3"/><value name="crc_violation_driving_permission" value="4"/><value name="expiration_time_violation" value="5"/><value name="driving_direction_mismatch" value="6"/><value name="velocity_violation" value="7"/><value name="curvature_min_violation" value="8"/><value name="curvature_max_violation" value="9"/><value name="clocks_not_synchronized" value="10"/><value name="expiration_time_too_high" value="11"/><value name="monitoring" value="12"/></enumerated><boolean name="VehicleDebug$powertrainActive"/></module>
 No newline at end of file
+65 −44

File changed.

Preview size limit exceeded, changes collapsed.

+30 −33
Original line number Diff line number Diff line
@@ -6,15 +6,12 @@ PCVM ::= SEQUENCE {
}

Pcvm ::= SEQUENCE {
  autosarProfile4Size UInt16,				           -- Autosar Profile4 CRC32
  autosarProfile4rollingCounter UInt16,        	
  autosarProfile4DataID UInt32,
  autosarProfile4CRC32 UInt32,                 		   -- Cyclic redundency check, hamming distance >= 6

  sessionID IA5String (SIZE(17)),                      -- Session ID response, also suitable to carry VIN for special use cases!
  localTime Millisecond42,                			   -- Vehicle’s internal system time (ETSI format from 1.1.2004 onwards) for time synchronization.
  length UInt16,                       -- Autosar Profile4 CRC32
  rollingCounter UInt16,  
  rollingCounterFromPCIM UInt16,                       -- Rolling counter of last received PCIM
  dataID UInt32,
  crc32 UInt32,                        -- Cyclic redundency check, hamming distance >= 6
  sessionID IA5String (SIZE(17)),      -- Session ID response, also suitable to carry VIN for special use cases!
  rollingCounterFromPcim UInt16,       -- Rolling counter of last received PCIM
  vehicleState VehicleState,           -- Relevant vehicle information.
  vehicleError VehicleError OPTIONAL,  -- Optional error information. Depending on the given error, the infrastructure either tries to resolve the issue or aborts the mission.
  vehicleDebug VehicleDebug OPTIONAL,  -- Optional debug information.
@@ -24,7 +21,7 @@ Pcvm ::= SEQUENCE {
VehicleState ::= SEQUENCE {
  operationMode VehicleOperationModeEnum,             -- The current operation mode or state of the vehicle.
  vehicleAutorizationState VehicleAuthorizationEnum,  -- The current authorization/vehicle identification state
  drivingDirection DrivingDirectionEnum,  -- Direction in which the vehicle is currently driving or about to drive.
  gearSelected SelectGearEnum,                        -- Direction in which the vehicle is currently driving or about to drive.
  currentVelocity MetrePerSecond16,                   -- Current vehicle velocity. Negative when driving backwards.
  currentCurvature PerMetre16,                        -- Current vehicle curvature.
  secureStandstill BOOLEAN,                           -- True if the vehicle is currently in secure standstill (i.e. standstill and secured against rolling, even when vehicle is powered down and even on ramps).
@@ -48,6 +45,12 @@ VehicleDebug ::= SEQUENCE {
  powertrainActive BOOLEAN                -- True if the power train is active, e.g. the engine is running/e-motor ready.
}

Pose ::= SEQUENCE {
  x Metre20,
  y Metre20,
  psi Radian16
}

-- *************** DATA DICTONARY ************************************

UInt8 ::= INTEGER (0..255)
@@ -65,13 +68,7 @@ Radian16 ::= UInt16 -- [1] 0.0001 Range: from 0 to 2*pi
Millisecond16 ::= Int16    -- [ms]     1  
Millisecond42 ::= UInt42   -- [ms]     1          Range for TimestampIts ::= INTEGER {utcStartOf2004(0), oneMillisecAfterUTCStartOf2004(1)} (0..4398046511103). Leap seconds are counted, unlike Unix-time

Pose ::= SEQUENCE {
x Metre20,
y Metre20,
psi Radian16
}

DrivingDirectionEnum ::= ENUMERATED {
SelectGearEnum ::= ENUMERATED {
  neutral(0),    -- N: Neutral / Driving direction is unknown
  forwards(1),   -- D: Vehicle is driving forwards
  backwards(2),  -- R: Vehicle is driving backwards