Commit dd7f568d authored by mullers's avatar mullers
Browse files

added ASN.1 module for Communications system for the planning and reservation...

added ASN.1 module for Communications system for the planning and reservation of EV energy supply using wireless networks
parent 47d0deff
Loading
Loading
Loading
Loading
+157 −0
Original line number Diff line number Diff line
EV-RechargingSpotReservation-PDU-Descriptions {
 itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (101556) ev-rsr (4) version (1) 
}

DEFINITIONS AUTOMATIC TAGS ::= 

BEGIN

IMPORTS 
   ItsPduHeader FROM ITS-Container {
 itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (1) 
};

EV-RSR ::= SEQUENCE {
	header		ItsPduHeader,
	messageBody	EV-RSR-MessageBody
}

EV-RSR-MessageBody ::= CHOICE {
 preReservationRequestMessage		PreReservationRequestMessage,
 preReservationResponseMessage		PreReservationResponseMessage,
 reservationRequestMessage				ReservationRequestMessage,
 reservationResponseMessage			ReservationResponseMessage,
 cancellationRequestMessage			CancellationRequestMessage,
 cancellationResponseMessage			CancellationResponseMessage,
 updateRequestMessage						UpdateRequestMessage,
 updateResponseMessage					UpdateResponseMessage,
...
}

PreReservationRequestMessage ::= SEQUENCE {
 evse-ID 			EVSE-ID,
 arrivalTime		TimestampUTC,
 departureTime	TimestampUTC OPTIONAL,
 rechargingType	RechargingType,
 batteryType		BatteryType OPTIONAL,
 ...
}

PreReservationResponseMessage ::= SEQUENCE {
 preReservation-ID						PreReservation-ID,
 availabilityStatus					AvailabilityStatus,
 preReservationExpirationTime	TimestampUTC,
 supportedPaymentTypes 				SupportedPaymentTypes,
 ...
}
 
ReservationRequestMessage ::= SEQUENCE {
 currentTime			TimestampUTC,
 preReservation-ID	PreReservation-ID,
 arrivalTime			TimestampUTC,
 departureTime		TimestampUTC OPTIONAL,
 eAmount				EAmount,
 eAmountMin			EAmount,
 paymentType			PaymentType,
 payment-ID 			Payment-ID,
 secondPayment-ID	Payment-ID OPTIONAL,
 pairing-ID			Pairing-ID OPTIONAL,
 ...
}

ReservationResponseMessage ::= SEQUENCE {
 reservationResponseCode			ReservationResponseCode,
 reservation-ID							Reservation-ID OPTIONAL,
 reservation-Password					Reservation-Password OPTIONAL,
 stationDetails							StationDetails OPTIONAL,
 chargingSpotLabel						ChargingSpotLabel OPTIONAL,
 expirationTime							TimestampUTC,
 freeCancelTimeLimit					TimestampUTC OPTIONAL,
 ...
}

CancellationRequestMessage ::= SEQUENCE {
 reservation-ID				Reservation-ID,
 reservation-Password		Reservation-Password,
 currentTime					TimestampUTC,
 ...
}

CancellationResponseMessage ::= SEQUENCE {
 reservation-ID					Reservation-ID,
 cancellationResponseCode	CancellationResponseCode,
 ...
}

UpdateRequestMessage ::= SEQUENCE {
 reservation-ID				Reservation-ID,
 reservation-Password		Reservation-Password,
 updatedArrivalTime		TimestampUTC,
 updatedDepartureTime		TimestampUTC,
 ...
}

UpdateResponseMessage ::= SEQUENCE {
 reservation-ID			Reservation-ID,
 updateResponseCode	UpdateResponseCode,
 chargingSpotLabel		ChargingSpotLabel OPTIONAL,
 ...
}



AvailabilityStatus ::= ENUMERATED { available, no-free-capacity }

BatteryType ::= UTF8String (SIZE(1..16))

CancellationResponseCode ::= ENUMERATED { ok, unknown-Reservation-ID, mismatching-Reservation-Password }

ChargingSpotLabel ::= UTF8String (SIZE(1..4))

ContractID ::= UTF8String (SIZE(1..24))

EAmount ::= INTEGER { oneWh(1) } (1..500000)

ChargingPower ::= INTEGER { oneW(1) } (1..200000)

EVSE-ID ::= OCTET STRING (SIZE(1..32))

ExternalIdentificationMeans ::= UTF8String (SIZE(1..24))

Pairing-ID ::= VisibleString (SIZE(1..64))

PaymentType ::= ENUMERATED {contract, externalIdentification}

Payment-ID ::= CHOICE {
 contractID ContractID,
 externalIdentificationMeans	ExternalIdentificationMeans
}

RechargingType ::= SEQUENCE {
 rechargingMode RechargingMode,
 powerSource PowerSource
}

RechargingMode ::=  INTEGER { mode1(0), mode2(1), mode3(2), mode4(3), quickDrop(8), inductiveChargingWhileStationary(12), inductiveChargingWhileDriving(14) } (0..15)

PowerSource::=  INTEGER { notApplicable(0), ac1Phase(1), ac2Phase(2), ac3Phase(3), dcc(4), chaDeMo(5) } (0..7)
ReservationResponseCode ::= ENUMERATED {ok, invalid-EVSE-ID, payment-type-not-supported, payment-error, authentication-error, insufficient-power-availability }

Reservation-ID ::= VisibleString (SIZE(8))

PreReservation-ID ::= Reservation-ID

Reservation-Password ::= VisibleString (SIZE(8))


StationDetails ::= UTF8String (SIZE(1..32))

SupportedPaymentTypes ::= BIT STRING { contract(0), externalIdentification (1) } (SIZE(2))

TimestampUTC ::= INTEGER { utcStartOf2013(0), oneSecondAfterUTCStartOf2013(1) }

UpdateResponseCode ::= ENUMERATED { ok, unknown-Reservation-ID, mismatching-Reservation-Password, invalid-Arrival-Time, invalid-Departure-Time }

StatusResponseCode ::= ENUMERATED { charging-Spot-Occupied, charging-Spot-Unoccupied, charging-Ongoing, reservation-Limit-Exceeded, reservation-Cancelled, unknown-Reservation-ID, expired-Reservation-ID }

END
 No newline at end of file