Loading cooperative_parking.asn +115 −104 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ PODAM ::= SEQUENCE { * @revision: Created in V2.1.1 */ PodasParameters ::= SEQUENCE { basicContainer BasicContainer, -- Idea: introduce management container detections ParkingSpaceDetections OPTIONAL, intentIndication ParkingSpaceIntentIndication OPTIONAL, Loading @@ -48,13 +47,12 @@ PodasParameters ::= SEQUENCE { } /** * This DE describes the level of the parking space in case of multilevel parking facilities. TODO: this concept needs to be refined. * This DF describes the list of space detections * * @unit: 1 Level in case there are entire levels and 2 in case of shifter levels * @category: * @revision: Created in V2.1.1 */ LevelInformation ::= INTEGER(-40..87) ParkingSpaceDetections ::= SEQUENCE (SIZE(1..32, ...)) OF ParkingSpaceDetection /** * This DF indicates the space intended to be allocated by the ego vehicle Loading @@ -69,19 +67,11 @@ LevelInformation ::= INTEGER(-40..87) * @revision: Created in V2.1.1 */ ParkingSpaceIntentIndication ::= SEQUENCE { spaceId Identifier2B, spaceId Identifier2B, -- TODO: how to tell which to use in segment reporter StationId, estimatedArrivalTime TimestampIts OPTIONAL } /** * This DF describes the list of space detections * * @category: * @revision: Created in V2.1.1 */ ParkingSpaceDetections ::= SEQUENCE (SIZE(1..32, ...)) OF ParkingSpaceDetection /** * This DF describes parking space detection parameters * Loading @@ -89,8 +79,6 @@ ParkingSpaceDetections ::= SEQUENCE (SIZE(1..32, ...)) OF ParkingSpaceDetection * * @field source: The stationId of the sender vehicle. Shall only be filled if the sender is not the detector. * * @field orientation: The orientation of the parking space. * * @field levelInformation: The level of the parking space in a parking facility. * * @field location: The location description of the parking space. Loading @@ -102,64 +90,95 @@ ParkingSpaceDetections ::= SEQUENCE (SIZE(1..32, ...)) OF ParkingSpaceDetection * @category: * @revision: Created in V2.1.1 */ ParkingSpaceDetection ::= SEQUENCE { spaceId Identifier2B, source StationId OPTIONAL, orientation Wgs84Angle OPTIONAL, levelInformation LevelInformation OPTIONAL, location ParkingSpaceDetectionLocation, detectionTime TimestampIts, detectionMethod ParkingSpaceDetectionMethod, ParkingSpaceDetection ::= CHOICE { individualSpace IndividualParkingSpace, segmentOfParkingSpaces SegmentOfParkingSpaces, ... } /** * This DF represents the location of parking space * This DF represents the location of an individual parking space * * @field position: The position of the individual space. * * @field orientation: The orientation of the parking space. * * @field observedWidth: The observed width of the physical space available for parking measured perpendicular * to the anticipated orientation of the parking vehicle. * * @field individualSpace: The location information of an individual space * @note: With this approach, the vehicle driver can easily decide if the vehicle fits in the parking space considering * the current occupation. * * @field subsequentSpaces: The location information of subsequent spaces * @field nominalWidth: The width of a parking space. This field indicates the length between * the center of the width markings, if there are any. * * @field nominalLength: The length of a parking space. This field indicates the length between * the center of the length markings, if there are any. * * @field externalMessageIds: Represents links to external systems, e.g., to electric vehicle charging stations. * * @category: * @revision: Created in V2.1.1 */ ParkingSpaceDetectionLocation ::= CHOICE { individualSpace IndividualParkingSpace, subsequentSpaces SubsequentParkingSpaceSegments, IndividualParkingSpace ::= SEQUENCE { metaData ParkingSpaceDetectionMetaData, position GeoPosition, arrangementType ParkingAreaArrangementType OPTIONAL, occupancyRule ParkingOccupancyInfo OPTIONAL, reservationType SEQUENCE (SIZE(1..4,...)) OF ParkingReservationType OPTIONAL, observedWidth StandardLength1BWithConfidence OPTIONAL, nominalWidth StandardLength1BWithConfidence OPTIONAL, nominalLength StandardLength1BWithConfidence OPTIONAL, -- TODO: add depth in an unambiguous way externalMessageIds ExternalMessageIdentifiers OPTIONAL, ... } ParkingSpaceDetectionMetaData ::= SEQUENCE { detectionId Identifier2B, source StationId OPTIONAL, detectionMethod ParkingSpaceDetectionMethod, detectionStartTime TimestampIts, ... } /** * This DF represents the location of an individual parking space * This DF represents subsequent parking spaces * * @field position: The position of the individual space relative to the reference position. * @field path: The path of the ego vehicle. A new point shall be added each time the heading of the * vehicle changes more then X degrees, the closest distance between the current position and line calculated * from the last two path points exceeds Y meters, or the or the detection segment is ended. The pathDeltaTime in * the path points should not be filled. * * @field entrySpace: The distance between two objects blocking the space from the side. In case of parallel parking * spaces, the direction is measured in parallell to the direction of the parking space. Otherwise the distance is * measured perpendicular to the direction of the parking space. * @field spacesOnTheLeft: The list of parking space segments on the left of the vehicle. * * @note: With this approach, the vehicle driver can easily decide if the vehicle fits in the parking space considering * the current occupation. * @field spacesOnTheRight: The list of parking space segments on the right of the vehicle. * * @field spaceWidth: The width of a parking space. This field indicates the length between * the center of the width markings, if there are any. * the center of the width markings, if there are any. The data field is relevant for the whole segment. * * @field spaceLength: The length of a parking space. This field indicates the length between * the center of the length markings, if there are any. * the center of the length markings, if there are any. The data field is relevant for the whole segment. * * @field externalLinks: Represents links to external systems, e.g., to electric vehicle charging stations. * @field externalMessageIds: Represents links to external systems, e.g., to electric vehicle charging stations. * * @note: The entrySpace can be calculated from the subsequent distances and in the right or left distances * and the orientation information. * @category: * @revision: Created in V2.1.1 */ IndividualParkingSpace ::= SEQUENCE { position DeltaPosition, entrySpace StandardLength1B OPTIONAL, spaceWidth StandardLength1B OPTIONAL, spaceLength StandardLength1B OPTIONAL, externalLinks ExternalLinks OPTIONAL, SegmentOfParkingSpaces ::= SEQUENCE { metaData ParkingSpaceDetectionMetaData, path Path, spacesOnTheLeft ParkingSegments OPTIONAL, spacesOnTheRight ParkingSegments OPTIONAL, externalMessageIds ExternalMessageIdentifiers OPTIONAL, ... } ((WITH COMPONENTS {..., spacesOnTheLeft PRESENT}) | (WITH COMPONENTS {..., spacesOnTheRight PRESENT})) /** * This DF represents external ids Loading @@ -171,20 +190,12 @@ IndividualParkingSpace ::= SEQUENCE { * @category: * @revision: Created in V2.1.1 */ ExternalLinks ::= SEQUENCE { ExternalMessageIdentifiers ::= SEQUENCE { evId EvId OPTIONAL, parkingSpaceId Identifier2B OPTIONAL, ... } /** * This DE represents the electric vehicle charging station ID * * @category: * @revision: Created in V2.1.1 */ EvId ::= INTEGER(0..4294967295) -- TODO: figure out real evids /** * This DE indicates the method that was used to detect a parking space * Loading @@ -207,58 +218,13 @@ ParkingSpaceDetectionMethod ::= BIT STRING { staticMapInformation (3) } (SIZE(4,...)) /** * This DF describes a list of subsequent parking spaces * * @category: * @revision: Created in V2.1.1 */ SubsequentParkingSpaceSegments ::= SEQUENCE SIZE(1..16) OF SubsequentParkingSpaceSegment /** * This DF represents subsequent parking spaces * * @field path: The path of the ego vehicle. A new point shall be added each time the heading of the * vehicle changes more then X degrees, the closest distance between the current position and line calculated * from the last two path points exceeds Y meters, or the or the detection segment is ended. The pathDeltaTime in * the path points should not be filled. * * @field spacesOnTheLeft: The list of parking space segments on the left of the vehicle. * * @field spacesOnTheRight: The list of parking space segments on the right of the vehicle. * * @field spaceWidth: The width of a parking space. This field indicates the length between * the center of the width markings, if there are any. The data field is relevant for the whole segment. * * @field spaceLength: The length of a parking space. This field indicates the length between * the center of the length markings, if there are any. The data field is relevant for the whole segment. * * @field externalLinks: Represents links to external systems, e.g., to electric vehicle charging stations. * * @note: The entrySpace can be calculated from the subsequent distances and in the right or left distances * and the orientation information. * @category: * @revision: Created in V2.1.1 */ SubsequentParkingSpaceSegment ::= SEQUENCE { path Path, spacesOnTheLeft ParkingSpaceSegmentDetections OPTIONAL, spacesOnTheRight ParkingSpaceSegmentDetections OPTIONAL, spaceWidth StandardLength1B OPTIONAL, spaceLength StandardLength1B OPTIONAL, externalLinks ExternalLinks OPTIONAL, ... } ((WITH COMPONENTS {..., spacesOnTheLeft PRESENT}) | (WITH COMPONENTS {..., spacesOnTheRight PRESENT})) /** * This DF describes a list of subsequent parking space segments * * @category: * @revision: Created in V2.1.1 */ ParkingSpaceSegmentDetections ::= SEQUENCE SIZE(1..32, ...) OF ParkingSpaceSegmentDetection ParkingSegments ::= SEQUENCE SIZE(1..32, ...) OF ParkingSegment /** * This DF represents a parking space segment Loading @@ -281,12 +247,57 @@ ParkingSpaceSegmentDetections ::= SEQUENCE SIZE(1..32, ...) OF ParkingSpaceSegme * @category: * @revision: Created in V2.1.1 */ ParkingSpaceSegmentDetection ::= SEQUENCE { ParkingSegment ::= SEQUENCE { distanceFromLastPoint StandardLength12b, status ParkingSpaceStatus, timeDelta DeltaTimeTenthOfSecond, offsetToPath StandardLength1B OPTIONAL, orientation ParkingAreaArrangementType OPTIONAL, occupancyRule ParkingOccupancyInfo OPTIONAL, nominalSpaceWidth StandardLength1B OPTIONAL, nominalSpaceLength StandardLength1B OPTIONAL, reservationType SEQUENCE (SIZE(1..4,...)) OF ParkingReservationType OPTIONAL, ... } -- Move to CDD /** * This DE represents the electric vehicle charging station ID * * @category: * @revision: Created in V2.1.1 */ EvId ::= INTEGER(0..4294967295) -- TODO: figure out real evids -> its is Identifier2b in CDD parking StandardLength1BWithConfidence ::= SEQUENCE { length StandardLength1B, confidence StandardLength1BConfidence } StandardLength1BConfidence ::= INTEGER { oneDecimeter (1), unavailable (15) } (0..15) -- An alternative to IndividualParkingSpace ParkingSpaceDetailed ::= SEQUENCE{ COMPONENTS OF ParkingSpaceBasic, arrangementType ParkingAreaArrangementType OPTIONAL, boundary DeltaPositions OPTIONAL, orientation Wgs84Angle OPTIONAL, occupancyRule ParkingOccupancyInfo, chargingStationId Identifier2B OPTIONAL, accessViaLane Identifier2B OPTIONAL, accessViaParkingSpaces SEQUENCE (SIZE(0..7)) OF Identifier2B OPTIONAL, reservationType SEQUENCE (SIZE(1..4,...)) OF ParkingReservationType OPTIONAL, ..., observedWidth StandardLength1BWithConfidence OPTIONAL, nominalWidth StandardLength1BWithConfidence OPTIONAL, nominalLength StandardLength1BWithConfidence OPTIONAL, source StationId OPTIONAL, detectionMethod ParkingSpaceDetectionMethod, detectionStartTime TimestampIts, } END Loading
cooperative_parking.asn +115 −104 Original line number Diff line number Diff line Loading @@ -40,7 +40,6 @@ PODAM ::= SEQUENCE { * @revision: Created in V2.1.1 */ PodasParameters ::= SEQUENCE { basicContainer BasicContainer, -- Idea: introduce management container detections ParkingSpaceDetections OPTIONAL, intentIndication ParkingSpaceIntentIndication OPTIONAL, Loading @@ -48,13 +47,12 @@ PodasParameters ::= SEQUENCE { } /** * This DE describes the level of the parking space in case of multilevel parking facilities. TODO: this concept needs to be refined. * This DF describes the list of space detections * * @unit: 1 Level in case there are entire levels and 2 in case of shifter levels * @category: * @revision: Created in V2.1.1 */ LevelInformation ::= INTEGER(-40..87) ParkingSpaceDetections ::= SEQUENCE (SIZE(1..32, ...)) OF ParkingSpaceDetection /** * This DF indicates the space intended to be allocated by the ego vehicle Loading @@ -69,19 +67,11 @@ LevelInformation ::= INTEGER(-40..87) * @revision: Created in V2.1.1 */ ParkingSpaceIntentIndication ::= SEQUENCE { spaceId Identifier2B, spaceId Identifier2B, -- TODO: how to tell which to use in segment reporter StationId, estimatedArrivalTime TimestampIts OPTIONAL } /** * This DF describes the list of space detections * * @category: * @revision: Created in V2.1.1 */ ParkingSpaceDetections ::= SEQUENCE (SIZE(1..32, ...)) OF ParkingSpaceDetection /** * This DF describes parking space detection parameters * Loading @@ -89,8 +79,6 @@ ParkingSpaceDetections ::= SEQUENCE (SIZE(1..32, ...)) OF ParkingSpaceDetection * * @field source: The stationId of the sender vehicle. Shall only be filled if the sender is not the detector. * * @field orientation: The orientation of the parking space. * * @field levelInformation: The level of the parking space in a parking facility. * * @field location: The location description of the parking space. Loading @@ -102,64 +90,95 @@ ParkingSpaceDetections ::= SEQUENCE (SIZE(1..32, ...)) OF ParkingSpaceDetection * @category: * @revision: Created in V2.1.1 */ ParkingSpaceDetection ::= SEQUENCE { spaceId Identifier2B, source StationId OPTIONAL, orientation Wgs84Angle OPTIONAL, levelInformation LevelInformation OPTIONAL, location ParkingSpaceDetectionLocation, detectionTime TimestampIts, detectionMethod ParkingSpaceDetectionMethod, ParkingSpaceDetection ::= CHOICE { individualSpace IndividualParkingSpace, segmentOfParkingSpaces SegmentOfParkingSpaces, ... } /** * This DF represents the location of parking space * This DF represents the location of an individual parking space * * @field position: The position of the individual space. * * @field orientation: The orientation of the parking space. * * @field observedWidth: The observed width of the physical space available for parking measured perpendicular * to the anticipated orientation of the parking vehicle. * * @field individualSpace: The location information of an individual space * @note: With this approach, the vehicle driver can easily decide if the vehicle fits in the parking space considering * the current occupation. * * @field subsequentSpaces: The location information of subsequent spaces * @field nominalWidth: The width of a parking space. This field indicates the length between * the center of the width markings, if there are any. * * @field nominalLength: The length of a parking space. This field indicates the length between * the center of the length markings, if there are any. * * @field externalMessageIds: Represents links to external systems, e.g., to electric vehicle charging stations. * * @category: * @revision: Created in V2.1.1 */ ParkingSpaceDetectionLocation ::= CHOICE { individualSpace IndividualParkingSpace, subsequentSpaces SubsequentParkingSpaceSegments, IndividualParkingSpace ::= SEQUENCE { metaData ParkingSpaceDetectionMetaData, position GeoPosition, arrangementType ParkingAreaArrangementType OPTIONAL, occupancyRule ParkingOccupancyInfo OPTIONAL, reservationType SEQUENCE (SIZE(1..4,...)) OF ParkingReservationType OPTIONAL, observedWidth StandardLength1BWithConfidence OPTIONAL, nominalWidth StandardLength1BWithConfidence OPTIONAL, nominalLength StandardLength1BWithConfidence OPTIONAL, -- TODO: add depth in an unambiguous way externalMessageIds ExternalMessageIdentifiers OPTIONAL, ... } ParkingSpaceDetectionMetaData ::= SEQUENCE { detectionId Identifier2B, source StationId OPTIONAL, detectionMethod ParkingSpaceDetectionMethod, detectionStartTime TimestampIts, ... } /** * This DF represents the location of an individual parking space * This DF represents subsequent parking spaces * * @field position: The position of the individual space relative to the reference position. * @field path: The path of the ego vehicle. A new point shall be added each time the heading of the * vehicle changes more then X degrees, the closest distance between the current position and line calculated * from the last two path points exceeds Y meters, or the or the detection segment is ended. The pathDeltaTime in * the path points should not be filled. * * @field entrySpace: The distance between two objects blocking the space from the side. In case of parallel parking * spaces, the direction is measured in parallell to the direction of the parking space. Otherwise the distance is * measured perpendicular to the direction of the parking space. * @field spacesOnTheLeft: The list of parking space segments on the left of the vehicle. * * @note: With this approach, the vehicle driver can easily decide if the vehicle fits in the parking space considering * the current occupation. * @field spacesOnTheRight: The list of parking space segments on the right of the vehicle. * * @field spaceWidth: The width of a parking space. This field indicates the length between * the center of the width markings, if there are any. * the center of the width markings, if there are any. The data field is relevant for the whole segment. * * @field spaceLength: The length of a parking space. This field indicates the length between * the center of the length markings, if there are any. * the center of the length markings, if there are any. The data field is relevant for the whole segment. * * @field externalLinks: Represents links to external systems, e.g., to electric vehicle charging stations. * @field externalMessageIds: Represents links to external systems, e.g., to electric vehicle charging stations. * * @note: The entrySpace can be calculated from the subsequent distances and in the right or left distances * and the orientation information. * @category: * @revision: Created in V2.1.1 */ IndividualParkingSpace ::= SEQUENCE { position DeltaPosition, entrySpace StandardLength1B OPTIONAL, spaceWidth StandardLength1B OPTIONAL, spaceLength StandardLength1B OPTIONAL, externalLinks ExternalLinks OPTIONAL, SegmentOfParkingSpaces ::= SEQUENCE { metaData ParkingSpaceDetectionMetaData, path Path, spacesOnTheLeft ParkingSegments OPTIONAL, spacesOnTheRight ParkingSegments OPTIONAL, externalMessageIds ExternalMessageIdentifiers OPTIONAL, ... } ((WITH COMPONENTS {..., spacesOnTheLeft PRESENT}) | (WITH COMPONENTS {..., spacesOnTheRight PRESENT})) /** * This DF represents external ids Loading @@ -171,20 +190,12 @@ IndividualParkingSpace ::= SEQUENCE { * @category: * @revision: Created in V2.1.1 */ ExternalLinks ::= SEQUENCE { ExternalMessageIdentifiers ::= SEQUENCE { evId EvId OPTIONAL, parkingSpaceId Identifier2B OPTIONAL, ... } /** * This DE represents the electric vehicle charging station ID * * @category: * @revision: Created in V2.1.1 */ EvId ::= INTEGER(0..4294967295) -- TODO: figure out real evids /** * This DE indicates the method that was used to detect a parking space * Loading @@ -207,58 +218,13 @@ ParkingSpaceDetectionMethod ::= BIT STRING { staticMapInformation (3) } (SIZE(4,...)) /** * This DF describes a list of subsequent parking spaces * * @category: * @revision: Created in V2.1.1 */ SubsequentParkingSpaceSegments ::= SEQUENCE SIZE(1..16) OF SubsequentParkingSpaceSegment /** * This DF represents subsequent parking spaces * * @field path: The path of the ego vehicle. A new point shall be added each time the heading of the * vehicle changes more then X degrees, the closest distance between the current position and line calculated * from the last two path points exceeds Y meters, or the or the detection segment is ended. The pathDeltaTime in * the path points should not be filled. * * @field spacesOnTheLeft: The list of parking space segments on the left of the vehicle. * * @field spacesOnTheRight: The list of parking space segments on the right of the vehicle. * * @field spaceWidth: The width of a parking space. This field indicates the length between * the center of the width markings, if there are any. The data field is relevant for the whole segment. * * @field spaceLength: The length of a parking space. This field indicates the length between * the center of the length markings, if there are any. The data field is relevant for the whole segment. * * @field externalLinks: Represents links to external systems, e.g., to electric vehicle charging stations. * * @note: The entrySpace can be calculated from the subsequent distances and in the right or left distances * and the orientation information. * @category: * @revision: Created in V2.1.1 */ SubsequentParkingSpaceSegment ::= SEQUENCE { path Path, spacesOnTheLeft ParkingSpaceSegmentDetections OPTIONAL, spacesOnTheRight ParkingSpaceSegmentDetections OPTIONAL, spaceWidth StandardLength1B OPTIONAL, spaceLength StandardLength1B OPTIONAL, externalLinks ExternalLinks OPTIONAL, ... } ((WITH COMPONENTS {..., spacesOnTheLeft PRESENT}) | (WITH COMPONENTS {..., spacesOnTheRight PRESENT})) /** * This DF describes a list of subsequent parking space segments * * @category: * @revision: Created in V2.1.1 */ ParkingSpaceSegmentDetections ::= SEQUENCE SIZE(1..32, ...) OF ParkingSpaceSegmentDetection ParkingSegments ::= SEQUENCE SIZE(1..32, ...) OF ParkingSegment /** * This DF represents a parking space segment Loading @@ -281,12 +247,57 @@ ParkingSpaceSegmentDetections ::= SEQUENCE SIZE(1..32, ...) OF ParkingSpaceSegme * @category: * @revision: Created in V2.1.1 */ ParkingSpaceSegmentDetection ::= SEQUENCE { ParkingSegment ::= SEQUENCE { distanceFromLastPoint StandardLength12b, status ParkingSpaceStatus, timeDelta DeltaTimeTenthOfSecond, offsetToPath StandardLength1B OPTIONAL, orientation ParkingAreaArrangementType OPTIONAL, occupancyRule ParkingOccupancyInfo OPTIONAL, nominalSpaceWidth StandardLength1B OPTIONAL, nominalSpaceLength StandardLength1B OPTIONAL, reservationType SEQUENCE (SIZE(1..4,...)) OF ParkingReservationType OPTIONAL, ... } -- Move to CDD /** * This DE represents the electric vehicle charging station ID * * @category: * @revision: Created in V2.1.1 */ EvId ::= INTEGER(0..4294967295) -- TODO: figure out real evids -> its is Identifier2b in CDD parking StandardLength1BWithConfidence ::= SEQUENCE { length StandardLength1B, confidence StandardLength1BConfidence } StandardLength1BConfidence ::= INTEGER { oneDecimeter (1), unavailable (15) } (0..15) -- An alternative to IndividualParkingSpace ParkingSpaceDetailed ::= SEQUENCE{ COMPONENTS OF ParkingSpaceBasic, arrangementType ParkingAreaArrangementType OPTIONAL, boundary DeltaPositions OPTIONAL, orientation Wgs84Angle OPTIONAL, occupancyRule ParkingOccupancyInfo, chargingStationId Identifier2B OPTIONAL, accessViaLane Identifier2B OPTIONAL, accessViaParkingSpaces SEQUENCE (SIZE(0..7)) OF Identifier2B OPTIONAL, reservationType SEQUENCE (SIZE(1..4,...)) OF ParkingReservationType OPTIONAL, ..., observedWidth StandardLength1BWithConfidence OPTIONAL, nominalWidth StandardLength1BWithConfidence OPTIONAL, nominalLength StandardLength1BWithConfidence OPTIONAL, source StationId OPTIONAL, detectionMethod ParkingSpaceDetectionMethod, detectionStartTime TimestampIts, } END