Commit 1c8564b8 authored by urhahne's avatar urhahne
Browse files

changes from TS 103 882 drafting session #9 and #10

parent e8b48ea2
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -9,6 +9,7 @@ Int16 ::= INTEGER (-32768..32767)
Int20 ::= INTEGER (-524288..524287)
UInt16 ::= INTEGER (0..65535)
UInt32 ::= INTEGER (0..4294967295)
UInt64 ::= INTEGER(0..18446744073709551615)

RollingCounter ::= UInt16

+9 −11
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@ DEFINITIONS AUTOMATIC TAGS ::= BEGIN -- Park Control Infrastucture Message

IMPORTS

RollingCounter, CentimetrePerSecond, Centimetre, HighResCurvature, GearEnum, WaypointIndex, Pose, ParkingControlE2EProtection, OEMSpecificData, SessionMissionID, UInt8, UInt16, UInt32
RollingCounter, CentimetrePerSecond, Centimetre, HighResCurvature, GearEnum, WaypointIndex, Pose, ParkingControlE2EProtection, OEMSpecificData, SessionMissionID, UInt8, UInt16, UInt32, UInt64
FROM AVP-Commons-PDU-Descriptions {
  itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103882) avpCommons (5) major-version-1 (1) minor-version-1(1)
}
@@ -57,10 +57,8 @@ SafetyTimeSyncRequest ::= SEQUENCE {
  checksum UInt32   -- See safety checksum calculation
}

BlinkingSeed ::= INTEGER(0..18446744073709551615)

Blinking ::= SEQUENCE {
  seed BlinkingSeed,                         -- Seed for calculating codes for flashing indicator lights  .
  vidRvoPublicKey UInt64,					 -- Public Key used by RVO to derive vehicle identification secret
  codeLength UInt8,                          -- Value that indicated how many bits (8 - 20) from the seed shall be used for blinking. 
  currentState VidRequestStateEnum           -- current authorization request status
                                             -- For now, we kept the authorization state technology-agnostic.
@@ -94,7 +92,6 @@ DetectedVehiclePose ::= SEQUENCE {

ControlInterface ::= CHOICE {
  pathSnippet PathSnippet,
  directControl DirectControl,
  trajectoryControl TrajectoryControl
}

@@ -107,13 +104,9 @@ WayPoint ::= SEQUENCE {
  curvature HighResCurvature        -- Signed curvature value.
}

DirectControl ::= SEQUENCE {
  velocityReq CentimetrePerSecond,  -- Signed velocity value. Positive: drive forwards / Negative: reverse.
  curvatureReq HighResCurvature     -- Signed curvature value.
}

TrajectoryControl ::= SEQUENCE {
  timeReference TimestampIts,
  driveDirection DriveDirectionEnum OPTIONAL,
  controlTrajectory ControlTrajectory,
  stateTrajectory StateTrajectory OPTIONAL
}  
@@ -134,7 +127,7 @@ ControlAcceleration ::= LongitudinalAccelerationValue -- Signed acceleratio

ControlVelocity ::= SEQUENCE {
  velocity CentimetrePerSecond,  				-- Signed velocity value. Positive: drive forwards / Negative: reverse.
  distanceToStop Centimetre  					-- Unsigned distance-to-stop value
  distanceToStop Centimetre OPTIONAL			-- Unsigned distance-to-stop value
}

StateTrajectory ::= SEQUENCE (SIZE(0..50)) OF StatePoint
@@ -198,4 +191,9 @@ VidRequestStateEnum ::= ENUMERATED {
  new-code(3) 		-- A new Subject Vehicle identification cycle was started.
}

DriveDirectionEnum ::= ENUMERATED {
  forwards(0),         -- D: Vehicle shall drive forwards
  backwards(1)		   -- R: Vehicle shall drive backwards
}

END
 No newline at end of file
+11 −5
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@ DEFINITIONS AUTOMATIC TAGS ::= BEGIN -- Park Control Vehicle Message

IMPORTS

RollingCounter, OEMSpecificData, GearEnum, CentimetrePerSecond, Centimetre, RadPerSecond, HighResCurvature, WaypointIndex, Pose, SessionMissionID, Description, ParkingControlE2EProtection, VidVehicleStateEnum , UInt8, UInt16, UInt32, Millisecond16, SafetyViolationsEnum 
RollingCounter, OEMSpecificData, GearEnum, CentimetrePerSecond, Centimetre, RadPerSecond, HighResCurvature, WaypointIndex, Pose, SessionMissionID, Description, ParkingControlE2EProtection, VidVehicleStateEnum , UInt8, UInt16, UInt32, UInt64, Millisecond16, SafetyViolationsEnum 
FROM AVP-Commons-PDU-Descriptions {
  itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (103882) avpCommons (5) major-version-1 (1) minor-version-1(1)
}
@@ -30,6 +30,7 @@ Pcvm ::= SEQUENCE {
  missionID SessionMissionID OPTIONAL,           					-- optional missionID 32 character ID
  rollingCounterFromPcim RollingCounter,     						-- Rolling counter of last received PCIM
  vehicleState VehicleState,                 						-- Relevant vehicle information.
  vidResponse VidResponse OPTIONAL, 								-- The current vehicle identification stat
  safetyTimeSyncResponse SafetyTimeSyncResponse OPTIONAL,			-- Functional Safety related container
  safeVehicleTypeConfirmation SafeVehicleTypeConfirmation OPTIONAL,	-- Functional Safety related container
  vehicleError VehicleError OPTIONAL,        						-- Optional error information. Depending on the given error, the infrastructure either tries to resolve the issue or aborts the mission.
@@ -43,7 +44,6 @@ Pcvm ::= SEQUENCE {
VehicleState ::= SEQUENCE {
  vehicleStateGenerationTime  TimestampIts OPTIONAL,  -- checks on the Data Freshness on receive side 
  operationMode VehicleOperationModeEnum,             -- The current operation mode or state of the vehicle.
  vehicleAutorizationState VidVehicleStateEnum,       -- The current authorization/vehicle identification state
  gearSelected GearEnum,                              -- Direction in which the vehicle is currently driving or about to drive.
  currentVelocity CentimetrePerSecond,                -- Current vehicle velocity. Negative when driving backwards.
  currentCurvature HighResCurvature,                  -- Current vehicle curvature.
@@ -52,6 +52,11 @@ VehicleState ::= SEQUENCE {
  localizedPose Pose OPTIONAL                         -- The current vehicle pose estimated by the vehicle. (Usually close to the pose estimated by the GMS, prediction by the vehicle) 
}

VidResponse ::= SEQUENCE {
 vidVehicleState VidVehicleStateEnum, 				  -- The current vehicle identification state
 vidVehiclePublicKey UInt64 						  -- Public Key used by vehicle to derive vehicle identification secret
}

VehicleError ::= SEQUENCE {
  time TimestampIts,    				-- Timestamp when the error occurred.
  vehCode VehCodeEnum,  				-- Depending on the given error, the infrastructure either tries to resolve the issue or aborts the mission, saves this message for logging and forwards its content to the backend.
@@ -81,7 +86,8 @@ SafetyViolationsContainer ::= SEQUENCE (SIZE(0..5)) OF SafetyViolationsEnum -- u

SafetyTimeSyncResponse ::= SEQUENCE {
  challenge UInt16,                           			-- Challenge received in the SafetyTimeSyncRequest message
  currentVehicleSafetyClockTime TimestampIts, -- Time of the Vehicle Safety Clock when SafetyTimeSyncRequest was received
  vehicleSafetyClockReceiveTimestamp TimestampIts,		-- Time of the Vehicle Safety Clock when SafetyTimeSyncRequest arrived in the vehicle
  vehicleSafetyClockTransmitTimestamp TimestampIts,		-- Time of the Vehicle Safety Clock when this response left for the RV
  checksum UInt32                             			-- See safety checksum calculation
}

+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="e2eProtection" type="ParkingControlE2EProtection"/><field name="pcim" type="Pcim"/></sequence><sequence name="ItsPduHeader"><field name="protocolVersion" type="OrdinalNumber1B"/><field name="messageId" type="MessageId"/><field name="stationId" type="StationId"/></sequence><integer max="255" min="0" name="OrdinalNumber1B"/><integer max="255" min="0" name="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="cpm" value="14"/><value name="imzm" value="15"/><value name="vam" value="16"/><value name="dsm" value="17"/><value name="pcim" value="18"/><value name="pcvm" value="19"/><value name="mcm" value="20"/><value name="pam" value="21"/></integer><integer max="4294967295" min="0" name="StationId"/><sequence name="ParkingControlE2EProtection"><field name="length" type="UInt16"/><field name="rollingCounter" type="UInt16"/><field name="dataID" type="UInt32"/><field name="crc32" type="UInt32"/></sequence><integer max="65535" min="0" name="UInt16"/><integer max="4294967295" min="0" name="UInt32"/><sequence name="Pcim"><field name="vehicles" type="Pcim$vehicles"/><extension/></sequence><sequence-of max="32" min="1" name="Pcim$vehicles"><field type="VehicleContainer"/></sequence-of><sequence name="VehicleContainer"><field name="checksum" optional="true" type="UInt32"/><field name="msgGenerationTime" optional="true" type="TimestampIts"/><field name="sessionID" type="SessionMissionID"/><field name="missionID" optional="true" type="SessionMissionID"/><field name="rollingCounterFromPcvm" type="UInt16"/><field name="vehicleIdentification" optional="true" type="VidRequest"/><field name="drivingPermission" optional="true" type="DrivingPermission"/><field name="safetyTimeSyncRequest" optional="true" type="SafetyTimeSyncRequest"/><field name="driveCommand" type="DriveCommand"/><field name="detectedVehiclePose" optional="true" type="DetectedVehiclePose"/><field name="controlInterface" type="ControlInterface"/><field name="oemSpecific" optional="true" type="UInt16"/><extension/></sequence><integer max="4398046511103" min="0" name="TimestampIts"/><ia5-string max="32" min="17" name="SessionMissionID"/><choice name="VidRequest"><field name="blinking" type="Blinking"/><extension/></choice><sequence name="Blinking"><field name="seed" type="BlinkingSeed"/><field name="codeLength" type="UInt8"/><field name="currentState" type="VidRequestStateEnum"/></sequence><integer max="18446744073709551615" min="0" name="BlinkingSeed"/><integer max="255" min="0" name="UInt8"/><enumerated name="VidRequestStateEnum"><value name="undefined" value="0"/><value name="flashing" value="1"/><value name="successful" value="2"/><value name="new_code" value="3"/></enumerated><sequence name="DrivingPermission"><field name="expirationTime" type="TimestampIts"/><field name="velocityMax" type="Int16"/><field name="curvatureMin" type="Int16"/><field name="curvatureMax" type="Int16"/><field name="checksum" type="UInt32"/></sequence><integer max="32767" min="-32768" name="Int16"/><sequence name="SafetyTimeSyncRequest"><field name="challenge" type="UInt16"/><field name="checksum" type="UInt32"/></sequence><sequence name="DriveCommand"><field name="driveCommandAction" type="DriveCommandActionEnum"/><field name="terminateReason" type="TerminateReasonEnum"/><field name="selectGear" optional="true" type="GearEnum"/><field name="directionIndicator" type="VehicleDirIndicatorEnum"/><field name="emergencyStopRequest" optional="true" type="EmergencyStopEnum"/><field name="interlockRequest" optional="true" type="InterlockEnum"/><field name="hornRequest" optional="true" type="VehicleHornRequestEnum"/></sequence><enumerated name="DriveCommandActionEnum"><value name="unknown" value="0"/><value name="initialize" value="1"/><value name="wait" value="2"/><value name="drive" value="3"/><value name="terminate" value="4"/></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="GearEnum"><value name="park" value="0"/><value name="backwards" value="1"/><value name="neutral" value="2"/><value name="forwards" value="3"/><value name="unknown" value="4"/></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"/><value name="temp_error" value="3"/><value name="suspend" value="4"/></enumerated><enumerated name="InterlockEnum"><value name="none" value="0"/><value name="zonal_interlock" value="1"/><value name="global_stop" value="2"/></enumerated><enumerated name="VehicleHornRequestEnum"><value name="none" value="0"/><value name="single_horn" value="1"/><value name="double_horn" value="2"/><value name="hold_horn" value="3"/></enumerated><sequence name="DetectedVehiclePose"><field name="detectedPose" type="Pose"/><field name="poseMeasurementTime" type="TimestampIts"/></sequence><sequence name="Pose"><field name="x" type="Int20"/><field name="y" type="Int20"/><field name="psi" type="Psi"/></sequence><integer max="524287" min="-524288" name="Int20"/><integer max="62831" min="0" name="Psi"><value name="xDirection" value="0"/></integer><choice name="ControlInterface"><field name="pathSnippet" type="PathSnippet"/><field name="directControl" type="DirectControl"/><field name="trajectoryControl" type="TrajectoryControl"/></choice><sequence-of max="50" 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="TimestampIts"/><field name="controlTrajectory" type="ControlTrajectory"/><field name="stateTrajectory" optional="true" type="StateTrajectory"/></sequence><sequence-of max="50" min="0" name="ControlTrajectory"><field type="ControlPoint"/></sequence-of><sequence name="ControlPoint"><field name="curvature" type="Int16"/><field name="controlParameter" type="ControlParameter"/></sequence><choice name="ControlParameter"><field name="controlAcceleration" type="LongitudinalAccelerationValue"/><field name="controlVelocity" type="ControlVelocity"/></choice><integer max="161" min="-160" name="LongitudinalAccelerationValue"><value name="negativeOutOfRange" value="-160"/><value name="positiveOutOfRange" value="160"/><value name="unavailable" value="161"/></integer><sequence name="ControlVelocity"><field name="velocity" type="Int16"/><field name="distanceToStop" type="Int20"/></sequence><sequence-of max="50" min="0" name="StateTrajectory"><field type="StatePoint"/></sequence-of><sequence name="StatePoint"><field name="statePose" type="Pose"/><field name="velocity" 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="e2eProtection" type="ParkingControlE2EProtection"/><field name="pcim" type="Pcim"/></sequence><sequence name="ItsPduHeader"><field name="protocolVersion" type="OrdinalNumber1B"/><field name="messageId" type="MessageId"/><field name="stationId" type="StationId"/></sequence><integer max="255" min="0" name="OrdinalNumber1B"/><integer max="255" min="0" name="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="cpm" value="14"/><value name="imzm" value="15"/><value name="vam" value="16"/><value name="dsm" value="17"/><value name="pcim" value="18"/><value name="pcvm" value="19"/><value name="mcm" value="20"/><value name="pam" value="21"/></integer><integer max="4294967295" min="0" name="StationId"/><sequence name="ParkingControlE2EProtection"><field name="length" type="UInt16"/><field name="rollingCounter" type="UInt16"/><field name="dataID" type="UInt32"/><field name="crc32" type="UInt32"/></sequence><integer max="65535" min="0" name="UInt16"/><integer max="4294967295" min="0" name="UInt32"/><sequence name="Pcim"><field name="vehicles" type="Pcim$vehicles"/><extension/></sequence><sequence-of max="32" min="1" name="Pcim$vehicles"><field type="VehicleContainer"/></sequence-of><sequence name="VehicleContainer"><field name="checksum" optional="true" type="UInt32"/><field name="msgGenerationTime" optional="true" type="TimestampIts"/><field name="sessionID" type="SessionMissionID"/><field name="missionID" optional="true" type="SessionMissionID"/><field name="rollingCounterFromPcvm" type="UInt16"/><field name="vehicleIdentification" optional="true" type="VidRequest"/><field name="drivingPermission" optional="true" type="DrivingPermission"/><field name="safetyTimeSyncRequest" optional="true" type="SafetyTimeSyncRequest"/><field name="driveCommand" type="DriveCommand"/><field name="detectedVehiclePose" optional="true" type="DetectedVehiclePose"/><field name="controlInterface" type="ControlInterface"/><field name="oemSpecific" optional="true" type="UInt16"/><extension/></sequence><integer max="4398046511103" min="0" name="TimestampIts"/><ia5-string max="32" min="17" name="SessionMissionID"/><choice name="VidRequest"><field name="blinking" type="Blinking"/><extension/></choice><sequence name="Blinking"><field name="vidRvoPublicKey" type="UInt64"/><field name="codeLength" type="UInt8"/><field name="currentState" type="VidRequestStateEnum"/></sequence><integer max="18446744073709551615" min="0" name="UInt64"/><integer max="255" min="0" name="UInt8"/><enumerated name="VidRequestStateEnum"><value name="undefined" value="0"/><value name="flashing" value="1"/><value name="successful" value="2"/><value name="new_code" value="3"/></enumerated><sequence name="DrivingPermission"><field name="expirationTime" type="TimestampIts"/><field name="velocityMax" type="Int16"/><field name="curvatureMin" type="Int16"/><field name="curvatureMax" type="Int16"/><field name="checksum" type="UInt32"/></sequence><integer max="32767" min="-32768" name="Int16"/><sequence name="SafetyTimeSyncRequest"><field name="challenge" type="UInt16"/><field name="checksum" type="UInt32"/></sequence><sequence name="DriveCommand"><field name="driveCommandAction" type="DriveCommandActionEnum"/><field name="terminateReason" type="TerminateReasonEnum"/><field name="selectGear" optional="true" type="GearEnum"/><field name="directionIndicator" type="VehicleDirIndicatorEnum"/><field name="emergencyStopRequest" optional="true" type="EmergencyStopEnum"/><field name="interlockRequest" optional="true" type="InterlockEnum"/><field name="hornRequest" optional="true" type="VehicleHornRequestEnum"/></sequence><enumerated name="DriveCommandActionEnum"><value name="unknown" value="0"/><value name="initialize" value="1"/><value name="wait" value="2"/><value name="drive" value="3"/><value name="terminate" value="4"/></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="GearEnum"><value name="park" value="0"/><value name="backwards" value="1"/><value name="neutral" value="2"/><value name="forwards" value="3"/><value name="unknown" value="4"/></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"/><value name="temp_error" value="3"/><value name="suspend" value="4"/></enumerated><enumerated name="InterlockEnum"><value name="none" value="0"/><value name="zonal_interlock" value="1"/><value name="global_stop" value="2"/></enumerated><enumerated name="VehicleHornRequestEnum"><value name="none" value="0"/><value name="single_horn" value="1"/><value name="double_horn" value="2"/><value name="hold_horn" value="3"/></enumerated><sequence name="DetectedVehiclePose"><field name="detectedPose" type="Pose"/><field name="poseMeasurementTime" type="TimestampIts"/></sequence><sequence name="Pose"><field name="x" type="Int20"/><field name="y" type="Int20"/><field name="psi" type="Psi"/></sequence><integer max="524287" min="-524288" name="Int20"/><integer max="62831" min="0" name="Psi"><value name="xDirection" value="0"/></integer><choice name="ControlInterface"><field name="pathSnippet" type="PathSnippet"/><field name="trajectoryControl" type="TrajectoryControl"/></choice><sequence-of max="50" 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="TrajectoryControl"><field name="timeReference" type="TimestampIts"/><field name="driveDirection" optional="true" type="DriveDirectionEnum"/><field name="controlTrajectory" type="ControlTrajectory"/><field name="stateTrajectory" optional="true" type="StateTrajectory"/></sequence><enumerated name="DriveDirectionEnum"><value name="forwards" value="0"/><value name="backwards" value="1"/></enumerated><sequence-of max="50" min="0" name="ControlTrajectory"><field type="ControlPoint"/></sequence-of><sequence name="ControlPoint"><field name="curvature" type="Int16"/><field name="controlParameter" type="ControlParameter"/></sequence><choice name="ControlParameter"><field name="controlAcceleration" type="LongitudinalAccelerationValue"/><field name="controlVelocity" type="ControlVelocity"/></choice><integer max="161" min="-160" name="LongitudinalAccelerationValue"><value name="negativeOutOfRange" value="-160"/><value name="positiveOutOfRange" value="160"/><value name="unavailable" value="161"/></integer><sequence name="ControlVelocity"><field name="velocity" type="Int16"/><field name="distanceToStop" optional="true" type="Int20"/></sequence><sequence-of max="50" min="0" name="StateTrajectory"><field type="StatePoint"/></sequence-of><sequence name="StatePoint"><field name="statePose" type="Pose"/><field name="velocity" type="Int16"/></sequence></module>
 No newline at end of file
+1 −1

File changed.

Preview size limit exceeded, changes collapsed.

Loading