Commit 126cd0b6 authored by urhahne's avatar urhahne
Browse files

changes from drafting session #7

parent 4c2c08a4
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -74,7 +74,7 @@ SafetyViolationsEnum ::= ENUMERATED {
  monitoring(12)
}

SessionMissionID ::= IA5String (SIZE(2..34))  -- Session ID response, also suitable to carry VIN for special use cases!
SessionMissionID ::= IA5String (SIZE(32))  -- Session ID response, also suitable to carry VIN for special use cases!
                                              -- The data size and the datatype should be reviewed.
                                              -- Waiting for contribution.

+9 −9
Original line number Diff line number Diff line
@@ -20,11 +20,11 @@ FROM ETSI-ITS-CDD {

PCIM ::= SEQUENCE {
  header ItsPduHeader,
  e2eProtection ParkingControlE2EProtection,           -- Mandatory AUTOSAR container
  pcim Pcim  
}

Pcim ::= SEQUENCE {
  e2eProtection ParkingControlE2EProtection,           -- Mandatory AUTOSAR container
  vehicles SEQUENCE (SIZE(1..32)) OF VehicleContainer  -- Max. 32 vehicles at a time based on size of VehicleContainerSeq options.
}

@@ -78,7 +78,7 @@ DriveCommand ::= SEQUENCE {
  selectGear GearEnum,                         		-- Requested gear (in line with the driving direction request), incl. request for neutral gear.
  directionIndicator VehicleDirIndicatorEnum,  		-- The currently requested direction indicator.
													-- Option: Using CDD's ExteriorLights can be considered as well. It would support multiple light request commands.
  emergencyStopRequest EmergencyStopEnum       -- Signal for triggering an emergency stop or brake prefill.
  emergencyStopRequest EmergencyStopEnum OPTIONAL	-- Signal for triggering an emergency stop or brake prefill.
}

DetectedVehiclePose ::= SEQUENCE {
+4 −4
Original line number Diff line number Diff line
@@ -20,11 +20,11 @@ FROM AVP-Commons-PDU-Descriptions {

PCVM ::= SEQUENCE {
  header ItsPduHeader,
  e2eProtection ParkingControlE2EProtection,           -- Mandatory AUTOSAR container
  pcvm Pcvm
}

Pcvm ::= SEQUENCE {
  e2eProtection ParkingControlE2EProtection, 						-- Mandatory AUTOSAR container
  sessionID SessionMissionID,
  rollingCounterFromPcim RollingCounter,     						-- Rolling counter of last received PCIM
  vehicleState VehicleState,                 						-- Relevant vehicle information.
@@ -61,14 +61,14 @@ VehCodeEnum ::= ENUMERATED {
  path-not-driveable(1)  -- The vehicle can’t follow the given waypoints, based on the given DetectedVehiclePose. Infrastructure tries to plan a different path or aborts the mission otherwise.
}

VehicleDebug ::= SEQUENCE {               -- Option: this container is a matter of discussion. If it is never used, we could remove it. Waiting for contribution.
VehicleDebug ::= SEQUENCE (SIZE(1..5)) OF DebugContainer   -- up to 5 debug containers for 20 ms debugging

DebugContainer ::= SEQUENCE {             -- Option: this container is a matter of discussion. If it is never used, we could remove it. Waiting for contribution.
  remainingTimeToDrive Millisecond16,     -- The time which the vehicle is allowed to keep driving until brakes must be engaged. Signed value.
                                          -- Option: CPM's relative time unit could be used if -1500..1500 is enough
  drivingAllowed BOOLEAN,                 -- True if the vehicle is currently allowed to drive, false if a safety stop happened.
  safetyViolations SafetyViolationsEnum,  -- List of violations which currently lead to stopping the vehicle.
                                          -- Option: Currently this is an enum, only 1 error is reported at a time
  timeSyncUncertainty Millisecond16,      -- The estimated uncertainty of the estimatedServerTime.
                                          -- Option: CPM's relative time unit could be used if -1500..1500 is enough
  requestedVelocity CentimetrePerSecond,  -- The currently requested velocity sent to the vehicle. Negative when driving backwards.
  requestedCurvature HighResCurvature,    -- The currently requested curvature sent to the vehicle.
  powertrainActive BOOLEAN                -- True if the power train is active, e.g. the engine is running/e-motor ready.
+28 −37
Original line number Diff line number Diff line
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<asnv>
  <protocol name="PCIM">
    <encoding entry-point="PCIM" method="per" />
    <lower-layer name="btp" value1="-1" value2="2018" />
    <source path="ASNV_Module_PCIM.xml" />
  </protocol>
  <protocol name="PCVM">
    <encoding entry-point="PCVM" method="per" />
    <lower-layer name="btp" value1="-1" value2="2019" />
    <source path="ASNV_Module_PCVM.xml" />
  </protocol>
<?xml version="1.0" encoding="UTF-8" standalone="no" ?><asnv>
  
  
  <network>
    <comment><![CDATA[]]></comment>
  </network>
  <nodes>
    <node name="PCIM_sender" key="02:00:00:00:00:00">
    <node key="02:00:00:00:00:00" name="PCIM_sender">
      <attributes>
        <nodeAttributes>
          <attribute name="NodeAttrUseBasicStackValues" displayname="Stack Values" value="Off" type="enum" />
          <attribute name="NodeAttrUseBasicStackTiming" displayname="Stack Timing" value="Off" type="enum" />
          <attribute name="NodeAttrUseGnssSysvars" displayname="Use GNSS Sysvars" value="Off" type="enum" />
          <attribute name="NodeAttrMessageSendingActive" displayname="Message Sending" value="Active" type="enum" />
          <attribute name="NodeAttrStartNodeOn" displayname="Start Node On" value="Measurement Start" type="enum" />
          <attribute name="NodeAttrStationID" displayname="Station ID" value="00" type="int64" />
          <attribute name="NodeAttrVehicleLength" displayname="Vehicle Length [dm]" value="40" type="int32" />
          <attribute name="NodeAttrVehicleWidth" displayname="Vehicle Width [dm]" value="20" type="int32" />
          <attribute name="lpvGNAddrStationType" displayname="Station Type" value="Passenger Car" type="enum" />
          <attribute displayname="Stack Values" name="NodeAttrUseBasicStackValues" type="enum" value="Off"/>
          <attribute displayname="Stack Timing" name="NodeAttrUseBasicStackTiming" type="enum" value="Off"/>
          <attribute displayname="Use GNSS Sysvars" name="NodeAttrUseGnssSysvars" type="enum" value="Off"/>
          <attribute displayname="Message Sending" name="NodeAttrMessageSendingActive" type="enum" value="Active"/>
          <attribute displayname="Start Node On" name="NodeAttrStartNodeOn" type="enum" value="Measurement Start"/>
          <attribute displayname="Station ID" name="NodeAttrStationID" type="int64" value="00"/>
          <attribute displayname="Vehicle Length [dm]" name="NodeAttrVehicleLength" type="int32" value="40"/>
          <attribute displayname="Vehicle Width [dm]" name="NodeAttrVehicleWidth" type="int32" value="20"/>
          <attribute displayname="Station Type" name="lpvGNAddrStationType" type="enum" value="Passenger Car"/>
        </nodeAttributes>
      </attributes>
      <txmessages>
        <message name="PCIM"/>
      </txmessages>
    </node>
    <node name="PCVM_sender" key="02:00:00:00:00:01">
    <node key="02:00:00:00:00:01" name="PCVM_sender">
      <attributes>
        <nodeAttributes>
          <attribute name="NodeAttrUseBasicStackValues" displayname="Stack Values" value="Off" type="enum" />
          <attribute name="NodeAttrUseBasicStackTiming" displayname="Stack Timing" value="Off" type="enum" />
          <attribute name="NodeAttrUseGnssSysvars" displayname="Use GNSS Sysvars" value="Off" type="enum" />
          <attribute name="NodeAttrMessageSendingActive" displayname="Message Sending" value="Active" type="enum" />
          <attribute name="NodeAttrStartNodeOn" displayname="Start Node On" value="Measurement Start" type="enum" />
          <attribute name="NodeAttrStationID" displayname="Station ID" value="01" type="int64" />
          <attribute name="NodeAttrVehicleLength" displayname="Vehicle Length [dm]" value="40" type="int32" />
          <attribute name="NodeAttrVehicleWidth" displayname="Vehicle Width [dm]" value="20" type="int32" />
          <attribute name="lpvGNAddrStationType" displayname="Station Type" value="Passenger Car" type="enum" />
          <attribute displayname="Stack Values" name="NodeAttrUseBasicStackValues" type="enum" value="Off"/>
          <attribute displayname="Stack Timing" name="NodeAttrUseBasicStackTiming" type="enum" value="Off"/>
          <attribute displayname="Use GNSS Sysvars" name="NodeAttrUseGnssSysvars" type="enum" value="Off"/>
          <attribute displayname="Message Sending" name="NodeAttrMessageSendingActive" type="enum" value="Active"/>
          <attribute displayname="Start Node On" name="NodeAttrStartNodeOn" type="enum" value="Measurement Start"/>
          <attribute displayname="Station ID" name="NodeAttrStationID" type="int64" value="01"/>
          <attribute displayname="Vehicle Length [dm]" name="NodeAttrVehicleLength" type="int32" value="40"/>
          <attribute displayname="Vehicle Width [dm]" name="NodeAttrVehicleWidth" type="int32" value="20"/>
          <attribute displayname="Station Type" name="lpvGNAddrStationType" type="enum" value="Passenger Car"/>
        </nodeAttributes>
      </attributes>
      <txmessages>
@@ -57,4 +48,4 @@
      <item instance-name="" message="PCVM"/>
    </capl_message_map>
  </properties>
</asnv>
 No newline at end of file
<protocol name="PCIM"><encoding entry-point="PCIM" method="per"/><lower-layer name="btp" value2="2018"/><source path="ASNV_Module_PCIM.xml"/></protocol><protocol name="PCVM"><encoding entry-point="PCVM" method="per"/><lower-layer name="btp" value2="2019"/><source path="ASNV_Module_PCVM.xml"/></protocol></asnv>
 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="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="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="Pcim"><field name="e2eProtection" type="ParkingControlE2EProtection"/><field name="vehicles" type="Pcim$vehicles"/></sequence><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-of max="32" min="1" name="Pcim$vehicles"><field type="VehicleContainer"/></sequence-of><sequence name="VehicleContainer"><field name="currentSessionID" type="SessionMissionID"/><field name="currentMissionID" 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"/></sequence><ia5-string max="34" min="2" 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="4398046511103" min="0" name="TimestampIts"/><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" type="GearEnum"/><field name="directionIndicator" type="VehicleDirIndicatorEnum"/><field name="emergencyStopRequest" type="EmergencyStopEnum"/></sequence><enumerated name="DriveCommandActionEnum"><value name="unknown" 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="GearEnum"><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="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="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="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="acceleration" type="LongitudinalAccelerationValue"/></sequence><integer max="161" min="-160" name="LongitudinalAccelerationValue"><value name="negativeOutOfRange" value="-160"/><value name="positiveOutOfRange" value="160"/><value name="unavailable" value="161"/></integer><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"/></sequence><sequence-of max="32" min="1" name="Pcim$vehicles"><field type="VehicleContainer"/></sequence-of><sequence name="VehicleContainer"><field name="currentSessionID" type="SessionMissionID"/><field name="currentMissionID" 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"/></sequence><ia5-string max="32" min="32" 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="4398046511103" min="0" name="TimestampIts"/><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" type="GearEnum"/><field name="directionIndicator" type="VehicleDirIndicatorEnum"/><field name="emergencyStopRequest" optional="true" type="EmergencyStopEnum"/></sequence><enumerated name="DriveCommandActionEnum"><value name="unknown" 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="GearEnum"><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="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="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="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="acceleration" type="LongitudinalAccelerationValue"/></sequence><integer max="161" min="-160" name="LongitudinalAccelerationValue"><value name="negativeOutOfRange" value="-160"/><value name="positiveOutOfRange" value="160"/><value name="unavailable" value="161"/></integer><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
Loading