Commit 797d0b54 authored by mullers's avatar mullers
Browse files

NORDSYS definitions copied

parent 3de0a94c
Loading
Loading
Loading
Loading
+15 −64
Original line number Diff line number Diff line
-- This ASN.1 specification has been checked for conformance with the ASN.1 standard by the OSS ASN.1 Tools

SPAT-PDU-Descriptions 

@@ -7,65 +6,24 @@ DEFINITIONS AUTOMATIC TAGS ::=
BEGIN

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

--	The root data frame for spat
SpatPdu ::= SEQUENCE {
	header	ItsPduHeader,
	spat		SignalPhaseAndTimingData

}

SignalPhaseAndTimingData ::= SEQUENCE {
	id IntersectionID,	-- this provided a unique mapping to the intersection map in question
	status IntersectionStatusObject,	-- general status of the controller
	states SEQUENCE (SIZE(1..255)) OF MovementState	-- each active Movement/lane is given in turn and contains its state, and seconds to the next event etc.
}

IntersectionID ::= INTEGER (0..999999)

IntersectionStatusObject ::= BIT STRING{
	manual (0), 	-- Manual Control is enabled. Timing reported is per programmed values, etc
					--but person at cabinet can manually request that certain intervals are terminated early (e.g. green)
	stopTime (1),	-- Stop Time is activated and all counting/timing has stopped.
	conflict (2),	-- Intersection is in Conflict Flash.
	preempt (3),	-- Preempt is Active
	transit (4),		-- Transit Signal Priority (TSP) is Active
	proceedYel(5),
	reserved1 (6),	-- Reserved
	reserved2 (7),	-- Reserved as zero
	flashYelAll (8),	-- controller is in yellow flash state for all legs (e.g. at night) (see OCIT)
	flashYelMin (9),	-- controller is in yellow flash state for minor legs only,major legs are switched off (see OCIT)
	partOff (10),	-- controller is partially switched off or partially yellow flashing (see OCIT)
	problem (11),	-- controller has communication problems (see OCIT)
	exceptional(12),	-- exceptional operation (e.g. during maintenance) (see OCIT)
	off (13)	 	-- controller is switched off (see OCIT)
	spat	SPAT
}

MovementState ::= SEQUENCE {			-- the collection of lanes, by num, to which some state data applies
	movementId INTEGER OPTIONAL,
	--category TrafficCategory, 			indvidualTraffic, public transport, ..
	lineRef IA5String(SIZE(0..32)), 	-- see PTLineDescription
	laneSet LaneSet,					-- the collection of lanes, to which this state data applies
	currState ColorState OPTIONAL,	-- the state of a Motorised lane
	relevantManeuver TurnDirection, 	-- e.g. right turn
	nextChanges SEQUENCE OF Change	 	-- description of next phase changes
SPAT ::=  SEQUENCE {
   id          IntersectionID,
   states      SEQUENCE (SIZE(1..255)) OF MovementState
}

LaneSet ::= SET( SIZE(1..127)) OF LaneNumber

LaneNumber ::= INTEGER	-- Unique ID of a lane at an intersection or other topology data set.

TurnDirection ::= BIT STRING { -- Direction of turn movement for signal description or vehicle maneuver.
	uTurn (0),
	sharpRight (1),
	right (2),
	slightRight (3),
	straight (4),
	slightLeft (5),
	left (6),
	sharpLeft (7)
MovementState ::= SEQUENCE {
	laneSet LaneSet,					
	currState ColorState,	
	nextChanges SEQUENCE OF Change						-- This value was added to match DRIVE C2X requirements
}

ColorState ::= BIT STRING {
@@ -75,20 +33,13 @@ ColorState ::= BIT STRING {
	flashing(3)
}


Change ::= SEQUENCE{ -- change of signal phase
	minTimeToChange TimeToChange,	-- a count of the minimum time remaining in this state
	maxTimeToChange TimeToChange,	-- a count of the maximum time remaining in this state
	likelyTimeToChange TimeToChange,	-- a count of the most propable time remaining in this State
	confidence Confidence,			-- a confidence value for likelyTimeToChange
	passState BOOLEAN,				-- true, vehicles may pass
	predCnt INTEGER,				-- for which state is this valid?
	...
	minTimeToChange TimeToChange,
	maxTimeToChange TimeToChange,	
	likelyTimeToChange TimeToChange,
	confidence Confidence,								-- Not (yet) used in DRIVE C2X
	passState BOOLEAN,									-- Not used in DRIVE C2X
	predCnt INTEGER										-- Not used in DRIVE C2X
}


TimeToChange ::= INTEGER (0..65535)		-- time interval until signal state change reserved meanings: 0, 65531, 65532, 65533, 65534 and 65535

Confidence ::= INTEGER (0..15)

END
 No newline at end of file