Heeft u vragen? U kunt ons ook bellen op tel: 0318-695315

iVRI Dutch profiles
Deze tekst is gepubliceerd op 24-06-21

SPaT Data

Datum besluit SC 25-04-2022
D3046-2 / Version 2.3.1
Disclaimer (NL):
Bij het gebruik en toepassen van de Landelijke iVRI standaarden® is en blijft de gebruiker, te weten de wegbeheerder respectievelijk opdrachtnemer van de wegbeheerder, zelf aansprakelijk voor de mogelijke risicos die ontstaan of kunnen ontstaan uit het aanbieden of laten aanbieden van (combinaties van) diensten en producten die conform deze standaarden werken in de eigen organisatie of elders in de keten waarvoor de wegbeheerder verantwoordelijk is. Dit geldt in het bijzonder ten aanzien van het verzamelen, opslaan en delen van gegevens en meer specifiek indien daar waar al dan niet direct of indirect herleidbare persoonsgegevens worden verwerkt op grond van de AVG. Gebruikers zijn zelf verantwoordelijk om bij het gebruik van de standaarden telkens na te gaan of gebruik van standaarden, dan wel de combinatie van data vanuit de standaarden in de basis voldoet aan de wet- en regelgeving, in het bijzonder de AVG. Het gebruik conform de standaarden kan het risico op aansprakelijkheid van de wegbeheerder verkleinen, maar niet altijd wegnemen of geheel uitsluiten. Dit is mede afhankelijk van de wijze waarop de wegbeheerder zelf in haar eigen organisatie of bij gebruik van opdrachtnemers in de keten de data verwerkt en gebruikt. Het is dan ook een dringend advies zowel voorafgaand aan de implementatie en ingebruikname door de gebruiker van de standaarden als periodiek een risico-analyse (zoals Data Protection Impact Assessment (DPIA)) en controle van de keten op het gebruik van de standaarden en bijkomende individuele risico s bij de wegbeheerder en haar opdrachtnemers uit te laten voeren. Het doel van dergelijke analyses en controles is dat mogelijke risico s die onbedoeld kunnen optreden op voorhand gedentificeerd kunnen worden, zodat de wegbeheerder zelf de nodige beheersmaatregelen kan treffen om (alsnog) aan de wettelijke voorschriften te kunnen voldoen. CROW en de opstellers van de standaarden hebben deze documenten met de grootst mogelijke zorg en met aandacht opgesteld, maar kunnen geen aansprakelijkheid aanvaarden voor een mogelijke overtreding van wet- en regelgeving door de wegbeheerder respectievelijk opdrachtnemer van de wegbeheerder, door te verwijzen naar de standaarden als oorzaak van een mogelijke overtreding van de AVG of andere wettelijke voorschriften. CROW en de opstellers van de standaarden wijzen derhalve een aansprakelijkheid door gebruikers ten aanzien van het gebruik van de standaarden Landelijke iVRI standaarden van de hand.
Disclaimer (EN):
When using and applying the Landelijke iVRI standaarden® the end user, being the road authority or its principal, remains solely responsible for the possible risks that emerge or can emerge from the provision of services and products that operate by these standards, either within the own organisation or elsewhere in the chain of the road authoritys responsibility. This especially applies to the activities where data is gathered, stored and shared, and more specifically in cases where, be it directly or by inference, private data of individuals are processed, based on the GDPR and/or its national implementation. The user of these standards are themselves responsible for ascertaining that either the use of these standards, or the combination of data that is processed from applying these standards, are legal, especially in terms of the GDPR and/or its national implementation. The use of these standards can reduce the risks for liability of road users, but they can not eliminate these risks; the beforementioned risks of violating privacy legislation are mainly dependent on the way in wicht the road authority uses and processes the data within the own organisation and in relation to contractors within the chain of responsibility. It is urgently advised that, not alone when preparing a project, but also when implementing and operating a service or product, the road authority performs a periodic risk analysis (like a Data Protection Impact Assessment (DPIA)) and a check on the whole chain of information in terms of compliance to standards and additional individual risks on behalf of the road authority and its contractors. The purpose of these analyses and checks is to identify the possible risks beforehand, in order to take preventive and controlling measures, so that the road authority (eventually) is compliant to the legal framework that is applicable. CROW and the authors of these standards have created this document with the utmost care, but will not accept liability for a possible violation of any legislation by the road authority or its contractors by referring to these standards as the root cause of a possible violation of the GDPR, its national implementation or any other legal prescription. CROW and the authors of the Landelijke iVRI standaarden therefore explicitly waive all responsibility for the use of these standards.
Voorwoord
Met de landelijke publiek private standaarden voor iVRI’s uit 2016 is de afgelopen jaren veel ervaring opgedaan. Enkele van deze standaarden waren al op onderdelen aangescherpt. Eind 2020 is besloten tot een integrale zogenaamde consolidatieslag op al deze standaarden. Met als doel om o.b.v. de opgedane ervaringen en inzichten de ontwikkeling, configuratie, werking en het beheer van (diensten in) de gehele dataketen eenvoudiger en betrouwbaarder te maken. Dit betreft niet alleen standaarden voor iVRI’s, maar ook landelijke afspraken en standaarden over data die cloud service providers aanleveren aan en afnemen van iVRI’s.
Grotere aanpassingen, zoals iVRI security, herziening van beheerinterfaces, ketenbeheer en functionele doorontwikkelingen van diensten (use cases), zijn buiten deze consolidatieslag gehouden en zullen nadien stapsgewijs moeten worden opgepakt. In die zin zal doorontwikkeling van (diensten in) de dataketen doorgaan.
Het voorliggende CROW document is vastgesteld door de landelijke publiek private Strategic Committee en omvat een van de landelijke publiek private iVRI CROW standaarden die is geactualiseerd als onderdeel van de Consolidatie. Aan de actualisatie hebben deskundigen van bedrijven, zowel leveranciers van hardware en software voor iVRI’s als cloud service providers, en overheden actieve bijdragen geleverd. Zoals altijd het geval is bij landelijke standaardisatie, was het niet mogelijk om met de resulterende specificaties en standaarden volledig recht te doen aan alle soms uiteenlopende visies, meningen en standpunten. Door het gevolgde landelijke publieke private proces via de Change Advisory Board en de Strategic Committee zijn al deze visies, meningen en standpunten wel gehoord en gewogen.
De volgende bedrijven hebben actieve bijdragen geleverd aan de iVRI CROW standaarden (in alfabetische volgorde):
  • Be-Mobile
  • Dynniq
  • KPN
  • Monotch
  • RHDHV
  • Siemens Nederland
  • Siemens Vlaanderen
  • Swarco
  • Sweco
  • Van Grinsven software
  • Vialis
Vanuit alle landsdelen hebben overheden actieve bijdragen geleverd aan de landelijke iVRI CROW standaarden, te weten de landsdelen Noord, Noordwest, Oost, Zuid en Zuidwest. Daarnaast hebben het Vlaamse Agentschap Wegen en Verkeer, het ministerie van Infrastructuur en Milieu en Rijkswaterstaat actieve bijdragen geleverd.
Dank gaat uit naar allen voor deze bijdragen.
Verdere gewenste aanpassingen en doorontwikkeling van de nu voorliggende standaarden zal plaatsvinden via het daartoe ingerichte landelijke proces via Change Advisory Board en Strategic Committee.
Contents
1 – Introduction
1.1 – Purpose of this Document
1.2 – SPAT Message
1.3 – Assumptions
1.4 – Legend
2 – Signal Phase and Timing (SPAT) Profile
Annex A: Summary of SPaT profile
Annex B: Bit string example
Annex C: Conformity with European harmonisation
1 Introduction
1.1 Purpose of this Document
This document provides the Dutch Profile for the SPAT message. It offers an interpretation of data elements and describes the use of them as extension to the standards.
1.2 SPAT Message
The Signal Phase and Timing (SPAT) message is used to convey the current status of one or more signalized intersections. Along with the MapData message (which describes a full geometric layout of an intersection) the receiver of this message can determine the state of the signal phasing and when the next expected phase will occur.
The SPAT message sends the current movement state of each active phase in the system as needed (such as values of what states are active and values at what time a state has begun/does begin earliest, is expected to begin most likely and will end latest). The state of inactive movements is not normally transmitted. Movements are mapped to specific approaches and connections of ingress to egress lanes and by use of the SignalGroupID in the MapData message.
The current signal pre-emption and priority status values (when present or active) are also sent. A more complete summary of any pending priority or pre-emption events can be found in the Signal Status message.
1.3 References
A complete list of references for the iTLC standards, specifications and profiles is published in D3200: References for the iTLC standards. This profile has been prepared using [REF001].
1.4 Legend
Chapter 2 contains the actual profile describing how the data frames (DFs) and data elements (DEs) shall be used for the implementation of the SPAT message.
The description of the DFs and DEs can be found in aforementioned standards. The description of the DEs and DFs in this document build upon the descriptions in these standards.
The font style of the name of DEs and DFs indicates the status as defined in the standards:
  • Bold: required by the standard;
  • Italic: these are optional in the standard;
  • Underlined: one of these can be chosen (OR);
The status in the profile is indicated in a separate column by means of one of the following labels:
  • Mandatory. This DF or DE is mandatory in the standard and is thus always provided.
  • Profiled. This DF or DE is mandatory in the profile although optional in the standard. It is therefore assumed that this DF or DE will always be provided.
  • Conditional. This DF or DE is mandatory in specific conditions and not used in other conditions. The conditions are provided in the profile.
  • Optional. This DF or DE is optional in the standard as well as in the profile.
  • Used. This DF or DE is a choice in the standard and used in the profile. It is therefore assumed that this DF or DE can be provided.
  • Not used. This DF or DE is optional or a choice in the standard but not used in the profile. A response to the use of this DF or DE is therefore not guaranteed, but as the message is compliant with the ASN.1 specification, the message is valid.
  • Future use. This DF or DE is not relevant for use cases currently in scope and therefore not profiled in the current version of the profile.
  • Bold. Applies to attributes in an enumeration or bitstring and indicates the attribute shall be assigned if applicable. All non-bold attributes are optional.
2 Signal Phase and Timing (SPAT) Profile
Standard
Profile
Level
Field
Meaning
Status
Content
Value
Header container
h.1
protocol Version
Version of the protocol.
Fixed
Current version is 2.
Set to 2
h.2
messageID
Indicates the type of message.
Fixed
Examples are denm(1), cam(2), spat(4) etc.
Set to 4
h.3
stationID
This is the ID of the station broadcasting the message.
Mandatory
The numerical presentation of the combination of the hexadecimal representation of the RoadRegulatorID and the IntersectionID (which is a multiple of ten).
Set by application.
Standard
Profile
Level
Field
Meaning
Status
Content
Value
Level 0: SPAT
0.1
timeStamp
[MinuteOfTheYear]
The MinuteOfTheYear data element expresses the number of elapsed minutes of the current year in the time system being used (typically UTC time).
Not used
The time stamp used for the IntersectionStateList data frame makes this data element redundant.
-
0.2
name
[DescriptiveName]
The DescriptiveName data element is used to provide a human readable and recognizable name for the feature that follows.
Profiled
Mandatory as opposed to standard and used to provide information of the applicable SPaT-profile-version. Semantic versioning (SemVer) is used, the current version of the profile is: 2.3.0
2.3.0
0.3
intersections
[Intersection-StateList]
(1..32)
The IntersectionStateList data frame consists of a list data IntersectionState entries.
IntersectionState
The IntersectionState data frame is used to convey all the SPAT information for a single intersection.
Mandatory
One IntersectionState for each independent conflict area.
See level 1
0.4
regional
[REGION.Reg-SPAT]
The element is used for additional "regional information , as defined in ISO/PDTS 19091.
Not used
-
-
Level 1: IntersectionStateList IntersectionState
1.1
name
[DescriptiveName]
The DescriptiveName data element is used to provide a human readable and recognizable name for the feature that follows.
Profiled
Mandatory in Dutch profile as opposed to standard. Human readable and recognizable for road authority. Maximum 63 characters. Shorter is better.
Set by application
1.2
id
[Intersection-ReferenceID]
The IntersectionReference-ID is a globally unique value set, consisting of an optional RoadRegulatorID and a required IntersectionID assignment, providing an unique mapping to the intersection MAP.
region
[RoadRegulatorID]
The RoadRegulatorID data element is a globally unique identifier assigned to a regional authority.
Profiled
Mandatory in Dutch profile as opposed to standard. For each road operator a RoadRegulatorID is provided in the document Addendum VRA en geregeld Kruisingsvlak Identificatie 20170728.
Set by application
id
[IntersectionID]
The IntersectionID is used within a region to uniquely define an intersection within that country or region.
Mandatory
The identifier shall be defined by the road operator.
Set by application
1.3
Revision
[MsgCount]
The MsgCount data element is used to provide a sequence number within a stream of messages with the same DSRCmsgID and from the same sender. Depending on the application the sequence number may change with every message or may remain fixed during a stream of messages when the content within each message has not changed from the prior message sent.
Mandatory
The revision number must be increased by 1 each time the MapData of this intersection changes. The revision numbers of SPAT and MAP must be the same as an indication that the right MAP version is used.
Set by application
1.4
status
[Intersection-StatusObject]
The IntersectionStatusObject data element contains Advanced Traffic Controller (ATC) status information.
Mandatory
Types:
manualControlIsEnabled (0),
stopTimeIsActivated (1),
failureFlash (2),
preemptIsActive (3),
signalPriorityIsActive (4),
fixedTimeOperation (5),
trafficDependentOperation (6),
standbyOperation (7),
failureMode (8),
off (9),
recentMAPmessageUpdate (10),
recentChangeInMAPassignedLanesIDsUsed (11),
noValidMAPisAvailableAtThisTime (12),
noValidSPATisAvailableAtThisTime (13)
Bits 14,15 reserved at this time and shall be zero
Set by application
1.5
moy
[MinuteOfTheYear]
The MinuteOfTheYear data element expresses the number of elapsed minutes of the current year in the time system being used (typically UTC time).
Profiled
Mandatory in profile as opposed to standard. To indicate when this message was constructed.
Set by application
1.6
timeStamp
[Dsecond]
The DSRC second expressed in this data element represents the milliseconds within the current UTC minute.
Profiled
Mandatory in profile as opposed to standard. To indicate when this message was constructed.
-
1.7
enabledLanes
[EnabledLaneList]
The Enabled Lane List data frame is a sequence of lane IDs for lane objects that are activated in the current map configuration. These lanes, unlike most lanes, have their RevocableLane bit set to one (asserted). Such lanes are not considered to be part of the current map unless they are in the Enabled Lane List.
LaneID
The LaneID data element conveys an assigned index that is unique within an intersection. It is used to refer to that lane by other objects in the intersection map data structure. Lanes may be ingress (inbound traffic) or egress (outbound traffic) in nature, as well as barriers and other types of specialty lanes.
Conditional
Mandatory in profile for specific situations with dynamic lane configurations, e.g. a lane that is used for different manoeuvres at different times of the day. Otherwise not used.
The valid configuration can be derived from the active variant as indicated by the intersection controller (e.g. VlogIndicator).
Set by application
1.8
states
[MovementList]
(1..255)
The MovementList data frame consists of a list of MovementState entries.
Each Movement is given in turn and contains its signal phase state, mapping to the lanes it applies to, and point in time it will end, and it may contain both active and future states
MovementState
The MovementState data frame is used to convey various information about the current or future movement state of a designated collection of one or more lanes of a common type.
It is used in the SPAT message to convey every active movement in a given intersection so that vehicles, when combined with certain map information, can determine the state of the signal phases.
Mandatory
Shall be provided as profiled in case the status (see 1.4) indicates normal operation, i.e. IntersectionStatusObject bit 3 to 6. Otherwise eventStates shall indicate unavailable (0).
The states shall be updated and a new SPAT message shall be transmitted when:
- The MovementPhaseState of one of the signal groups changes.
- The confidence of one of the signal groups changes.
- The minEndTime of one of the signal groups changes with 1 second or more.
- The maxEndTime of one of the signal groups changes with 1 second or more.
- exceptionalCondition is used for one of the signal groups.
See level 2
1.9
maneuverAssistList
[Maneuver-AssistList]
(1..6)
The ManeuverAssistList data frame consists of a list of ConnectionManeuver-Assist entries.
ConnectionManeuverAssist
The ConnectionManeuver-Assist data frame contains information about the the dynamic flow of traffic for the lane(s) and maneuvers in question (as determined by the LaneConnectionID).
Note that this information can be sent regarding any lane-to-lane movement; it need not be limited to the lanes with active (non-red) phases when sent.
Not used
At this level the values apply to all movements of the intersection. In the Dutch profile this data frame is only used in level 2, where values are assigned to individual movements.
See level 6
1.10
regional
[REGION.Reg-IntersectionState]
The element is used for additional "regional information , as defined in ISO/PDTS 19091.
Not used
Extension allow to transmit activePrioritizations which consists of a sequence of stationID, priorState and signalGroup. Offers an alternative to the SSM message.
-
Level 2: MovementList MovementState
2.1
movementName
[DescriptiveName]
The DescriptiveName data element is used to provide a human readable and recognizable name for the MovementState data frame.
Profiled
Mandatory in profile as opposed to standard. The DescriptiveName data element is set to human readable and recognizable SignalGroupID. For example, fc02, fc21, SG31, SG41, etc.
Set by application
2.2
signalGroup
[SignalGroupID]
The SignalGroupID data element is an index used to map between the internal state of one or more signal controllers and a common numbering system that can represent all possible combinations of active states (movements and phases). All possible movement variations are assigned a unique value within the intersection.
Mandatory
The SignalGroupID data element is used to map to lists of lanes (and their descriptions) to which this MovementState data applies to. Please note that the range for the SignalGroupID is such that the common Dutch number scheme could contain too high numbers. Therefore SignalGroupIDs must be numbered starting at 1 (0 = unknown, 255 = permanent green movement state) and is unique within the intersection. The signalGroupID used in SPAT and MAP must be identical when they refer to the same signalGroup. Every given SignalGroupID in the SPAT message must be present in the MAP message and vice versa.
Set by the application
2.3
state-time-speed
[Movement-EventList]
(1..16)
The MovementEventList data frame consists of a list of MovementEvent entries.
MovementEvent
The MovementEvent data frame contains details about a single movement. It is used by the movement state to convey one of number of movements (typically occurring over a sequence of times) for a SignalGroupID.
Mandatory
At least one MovementEvent must be provided and the current MovementPhaseState must always be provided first. Provision of additional MovementEvents is optional.
See level 3
2.4
maneuverAssistList
[Maneuver-AssistList]
(1..6)
The ManeuverAssistList data frame consists of a list of ConnectionManeuverAssist entries.
-- This information may also be placed in the IntersectionState when common information applies to different lanes in the same way
ConnectionManeuverAssist
The ConnectionManeuver-Assist data frame contains information about the the dynamic flow of traffic for the lane(s) and maneuvers in question (as determined by the LaneConnectionID).
Note that this information can be sent regarding any lane-to-lane movement; it need not be limited to the lanes with active (non-red) phases when sent.
Mandatory
Mandatory in profile as opposed to standard and used to convey the queue length.
See level 6
2.5
regional
[REGION.Reg-MovementState]
The element is used for additional "regional information , as defined in ISO/PDTS 19091.
Not used
-
-
Level 3: MovementEventList MovementEvent
3.1
eventState
[Movement-PhaseState]
The MovementPhaseState data element provides the overall current state of the movement (in many cases a signal state), including its core phase state and an indication of whether this state is permissive or protected.
It is expected that the allowed transitions from one state to another will be defined by regional deployments. Not all
regions will use all states; however, no new states are to be defined.
Permissive is typically referred to as a "round ball", while protected implies it has a directional arrow associated with it. However, traffic signals exist in many different appearances (number of lenses, lens symbols, colour of lenses, lit/blinking) and eventState requires that each appearance is translated to the corresponding MovementPhaseState.
Mandatory
The MovementPhaseState data element can be set to:
0. unavailable
e.g. power outage
1. dark
no signal e.g. outside of operating hours
Reds:
2.
stop-Then-Proceed
- stop at stop line and proceed when safe
3. stop-And-Remain - stop at stop line and do not proceed
Greens:
4. pre-Movement prepare to proceed
5. permissive-Movement-Allowed - proceed, be aware of possible conflicting traffic at the intersection
6. protected-Movement-Allowed - proceed, no conflicting traffic expected at the intersection
Yellows / Ambers:
7. permissive-clearance - prepare to stop and stop if possible, be aware of possible conflicting traffic at the intersection
8. protected-clearance - prepare to stop and stop if possible, no conflicting traffic expected at the intersection
9. caution-Conflicting-Traffic - proceed with caution, conflicting traffic may be present at the intersection,
e.g. outside of operating hours
Set by application
3.2
timing
[TimeChange-Details]
The TimeChangeDetails data frame conveys details about the timing of a phase within a movement. The core data concept expressed is the time stamp (time mark) at which the related phase will change to the next state. This is often found in the MinEndTime element, but the other elements may be needed to convey the full concept when adaptive timing is employed.
The data Element DE_TimeMark is defined as an offset to the UTC full hour with a resolution of 36 000 in units of 1/10th of second. For proper calculation, be aware of time periods beyond the full hour ( TimeMark value > 36 000) to avoid negative values.
For a calculation of the duration of a traffic light signal phase change, the limited range of the TimeMark has to be considered. See the example in TS19091, section G.9.2.3.
Conditional
Mandatory when the iVRI (ITS-CLA, TLC, RIS) is fully operational and an ITS-CLA is in control of the intersection, otherwise not used. Timing must be provided for the current MovementPhaseState , and is optional for the next MovementPhaseState(s), for MovementPhaseStates 0, 1 or 9, or when the data is not available (e.g. for specific movements).
See level 4
3.3
speeds
[AdvisorySpeedList]
(1..16)
The AdvisorySpeedList data frame consists of a list of AdvisorySpeed entries.
AdvisorySpeed
The AdvisorySpeed data frame is used to convey a recommended traveling approach speed to an intersection from the message issuer for different distances to the stop line and various traveller and vehicle types.
Conditional
Mandatory in profile as opposed to standard in case of physical roadside signage displaying dynamic advisory speeds.
AdvisorySpeed is a general recommendation for the particular SignalGroupID and not tied to one specific MovementPhaseState. Therefore, it is provided only one time, with the first MovementEvent.
See level 5
3.4
regional
[REGION.Reg-MovementEvent]
The element is used for additional "regional information , as defined in ISO/PDTS 19091.
Conditional
One extension was defined for this data frame:
exceptionalCondition [ExceptionalCondition]
Mandatory in case of exceptional waiting, priority green or sudden increases and decreases in waiting time. The following types exist:
0. unknown
1. publicTransportPriority
2. emergencyVehiclePriority
3. trainPriority
4. bridgeOpen
5. vehicleHeight
6. weather
7. trafficJam
8. tunnelClosure
9. meteringActive
10. truckPriority
11. bicyclePlatoonPriority
12. vehiclePlatoonPriority
13. ...
The signal (ITS) application sets this DE and deactivates it.
Set by application
Level 4: MovementEvent TimeChangeDetails
4.1
startTime
[TimeMark]
The StartTime element is used to relate when the phase itself started or is expected to start. This in turn allows the indication that a set of time change details refers to a future phase, rather than a currently active phase.
By this method, timing information about "pre" phase events (which are the short transitional phase used to alert OBEs to an impending green/go or yellow/caution phase) and the longer yellow-caution phase data is supported in the same form as various green/go phases.
In theory, the time change details could be sent for a large sequence of phases if the signal timing was not adaptive and the operator wished to do so. In practice, it is expected only the "next" future phase will commonly be sent.
Not used
-
-
4.2
minEndTime
[TimeMark]
The element MinEndTime is used to convey the earliest time possible at which the phase could change, except when unpredictable events relating to a pre-emption or priority call disrupt a currently active timing plan.
Mandatory
The minEndTime shall not decrease with more than 500ms without provision of a valid exceptionalCondition (the use of exceptionalCondition unknown should be minimised). The difference between the minEndTime and maxEndTime is a measure for the reliability of the prediction. 36001 = undefined or unknown (e.g. wachtstand).
Set by application
4.3
maxEndTime
[TimeMark]
The element MaxEndTime is used to convey the latest time possible which the phase could change, except when unpredictable events relating to a pre-emption or priority call come into play and disrupt a currently active timing plan.
Profiled
The maxEndTime shall not increase with more than 500ms without provision of a valid exceptionalCondition (the use of exceptionalCondition unknown should be minimised). The difference between the minEndTime and maxEndTime is a measure for the reliability of the prediction. 36001 = undefined or unknown (e.g. wachtstand.
Set by application
4.4
likelyTime
[TimeMark]
The element likelyTime is used to convey the most likely time the phase changes. This occurs between MinEndTime and MaxEndTime and is only relevant for traffic-actuated control programs.
Optional
Indicates the expected / predicted end time of the phase. Unknown = 36001.
Set by application
4.5
confidence
[TimeIntervalConfidence]
The element confidence is used to convey basic confidence data about the likelyTime. In this profile an alternative meaning for the confidence values is defined compared to the original standard.
Conditional
These values only apply for MovementPhaseStates 2 and 3. For these states they are mandatory, for other states confidence shall not be used.
For MovementPhaseStates 2 and 3 (i.e. red) the confidence value refers to a stage of the control cycle:
1.No demands.
3.Traffic present, time to green unknown.
6.Other conflicting directions may become green first.
9.Signal group is next in line to get green.
12.No conflicting direction is green, signal group will become green, conflicting priority with indication of exceptionalCondition is still possible.
15.Signal group will become green, conflicting priority is not possible.
The confidence value shall not decrease unless the eventState changes or an exceptionalCondition is given.
Set by application
4.6
nextTime
[TimeMark]
The element nextTime is used to express a general (and presumably less precise) value regarding when this phase will next occur. This is intended to be used to alert the OBE when the next green/go may occur so that various ECO driving applications can better manage the vehicle during the intervening stopped time.
Optional
The data element nextTime typically equals likelyTime + the cycle time. Since most signal controllers in the Netherlands use inputs, such as detectors, to dynamically adjust signal timing and phasing, the cycle time is not constant and most likely not available. Therefore, this data element is optional. Unknown = 36001.
This data element is mandatory in case the control programs have a constant cycle time. For example, fixed time or semi-fixed time ( half star) control programs.
Set by application
Level 5: MovementEvent AdvisorySpeed
5.1
type
[Advisory-SpeedType]
The AdvisorySpeedType data element relates the type of travel to which a given speed refers. This element is typically used as part of an AdvisorySpeed data frame for signal phase and timing data.
Mandatory
As the main purpose is (dynamic) green wave the value shall be set to 1.
1
5.2
speed
[SpeedAdvice]
This data element represents the recommended velocity of an object, typically a vehicle speed along a roadway, expressed in unsigned units of 0.1 meters per second.
Profiled
Mandatory in profile as opposed to standard. If the AdvisorySpeed DF is used this is the primary value.
Typically the SpeedAdvice considers one intersection, however, the application may have computed the speed advice considering multiple intersections.
Set by application
5.3
confidence
[SpeedConfidence]
The SpeedConfidence data element is used to provide the 95% confidence level for the currently reported value of DE_Speed, taking into account the current calibration and precision of the sensor(s) used to measure and/or calculate the value.
Not used
As the SpeedAdvice is already described as bandwidth for specific road segments, a confidence value is redundant.
-
5.4
distance
[ZoneLength]
The ZoneLength data element is used to provide an estimated distance from the stop bar, along the lane centreline back in the lane to which it pertains. It is used in various ways to relate this distance value. When used with clearance zones, it represents the point at which the driver can successfully execute the connection maneuver. It is used in the Clearance Maneuver Assist data frame to relate dynamic data about the lane. It is also used to relate the distance from the stop bar to the rear edge of any queue. It is further used within the context of a vehicle's traveling speed to advise on preferred dynamic approach speeds.
-- Unit = 1 meter,
-- The distance indicates the region for which the advised speed is recommended, it is specified upstream from the stop bar along the connected egressing lane
Profiled
Mandatory in profile as opposed to standards.
The distance indicates the region for which the advised speed is recommended, it is specified upstream from the stop bar in units of 1 meter. The first zone starts at the stop line and ends at the indicated distance. 0 = unknown.
Set by application
5.5
class
[RestrictionClassID]
The RestrictionClass data element defines an intersection-unique value to convey data about classes of users.
The typical use of this element is to map additional movement restrictions or rights (in both the MAP and SPAT messages) to special classes of users (trucks, high sided vehicles, special vehicles etc.).
Not used
Absent implies that the AdvisorySpeed applies to all users of the Movement, or in case of a shared lane to all motor vehicle types.
-
5.6
regional
[REGION.Reg-AdvisorySpeed]
The element is used for additional "regional information , as defined in ISO/PDTS 19091.
Not used
-
-
Level 6: ManeuverAssistList ConnectionManeuverAssist
6.1
connectionID
[Lane-ConnectionID]
The LaneConnectionID data entry is used to state a connection index for a lane to lane connection (defined in MAP). It is used to relate this connection and any dynamic clearance data sent in the SPAT.
Mandatory
Unique index value.
Set by application
6.2
queueLength
[ZoneLength]
The queueLength data entry is used to state the distance from the stop line to the back edge of the last vehicle in the queue as measured along the lane centre line.
Optional
Highly recommended as queue information can improve the quality of service considerably. To be considered mandatory if available.
Unit = 1 meter, 0 = no queue. Used to improve the in-vehicle calculation of the SpeedAdvice.
Set by application
6.3
available-StorageLength
[ZoneLength]
Distance (e.g. beginning from the downstream stop-line up to a given distance) with a high probability for successfully executing the connecting manoeuvre between the two lanes during the current cycle. Used for enhancing the awareness of vehicles to anticipate if they can pass the stop line of the lane. Used for optimizing the green wave, due to knowledge of vehicles waiting in front of a red light (downstream).
Not used
Out of scope of current use cases.
-
6.4
waitOnStop
[WaitOnStopline]
The WaitOnStopline data element is used to indicate to the vehicle that it must stop at the stop line and not move past.
Not used
Out of scope of current use cases.
-
6.5
pedBicycleDetect
[Pedestrian-BicycleDetect]
The PedestrianBicycleDetect data element is used to provide an indication of whether Pedestrians and/or Bicyclists have been detected in the crossing lane.
Not used
Out of scope of current use cases.
-
6.6
regional
[REGION.RegConnec tionManeuverAssist]
The element is used for additional "regional information , as defined in ISO/PDTS 19091.
Not used
Extensions allow to transmit vehicleToLanePositions and rsuGNSSOffset.
-
Annex A: Summary of SPaT profile
bold = mandatory/used
bold-italic = conditional
italic = optional
strikethrough = not used
timestamp [MinuteOfTheYear]
name [DescriptiveName]
intersections [Intersection-StateList]
IntersectionState
name [DescriptiveName]
id [Intersection-ReferenceID]
region [RoadRegulatorID]
id [IntersectionID]
Revision [MsgCount]
Status [IntersectionStatusObject]
moy [MinuteOfTheYear]
timestamp [Dsecond]
enabledLanes [EnabledLaneList]
LaneID
states [MovementList]
MovementState
movementName [DescriptiveName]
signalGroup [SignalGroupID]
state-time-speed [MovementEventList]
MovementEvent
eventState [MovementPhaseState]
timing [TimeChangeDetails]
startTime [TimeMark]
minEndTime [TimeMark]
maxEndTime [TimeMark]
likelyTime [TimeMark]
confidence [TimeIntervalConfidence]
nextTime [TimeMark]
speeds [AdvisorySpeedList]
AdvisorySpeed
type [AdvisorySpeedType]
speed [SpeedAdvice]
confidence [SpeedConfidence]
distance [ZoneLength]
class [Restriction-ClassID]
regional [REGION.Reg-AdvisorySpeed]
regional [REGION.Reg-MovementEvent]
addGrpC [MovementEvent-addGrpC]
exceptionalCondition [ExceptionalCondition]
maneuverAssistList [ManeuverAssistList]
ConnectionManeuverAssist
connectionID [LaneConnectionID]
queueLength [ZoneLength]
availableStorageLength [ZoneLength]
waitOnStop [WaitOnStopline]
pedBicycleDetect [PedestrianBicycleDetect]
regional [REGION.Reg-ConnectionManeuverAssist]
regional [REGION.Reg-MovementState]
maneuverAssistList [ManeuverAssistList]
ConnectionManeuverAssist
connectionID [LaneConnectionID]
queueLength [ZoneLength]
availableStorageLength [ZoneLength]
waitOnStop [WaitOnStopline]
pedBicycleDetect [PedestrianBicycleDetect]
regional [REGION.Reg-ConnectionManeuverAssist]
regional [REGION.Reg-IntersectionState]
regional [REGION.Reg-SPAT]
Annex B: Bit string example
A bit string is an arbitrarily long array of bits. Specific bits can be identified by parenthesized integers and assigned names. As an example, the bit string for the data element LaneSharing is shown in Figure 1.
[ link ]

Figure 1 Bit string example

The example shows the 10 bit sting 0001000100, where BIT3and BIT7 are set from left to right. This indicates that user types individualMotorizedVehicleTraffic and cyclistVehicleTraffic can access and use the respective lane.
Annex C: Conformity with European harmonisation
The table below shows a comparison of this Dutch Profile and C-Roads profile [REF143] of SPATEM.
Layer
Data element / data frame in Spat
Dutch Profile
C-Roads
Comment
spat
M
M
+
timestamp
NOT USED
NOT USED
+
name
P
NOT USED
+
intersections (list of IntersectionState)
M
M
++
name
P
O
++
id
P
M
+++
region
M
M
+++
id
M
M
++
revision
M
M
++
status
M
M
C-Roads profiled a usage for all status
++
moy
P
M
++
timestamp
P
M
++
enabledList (list of LaneID)
C
O
++
states (list of MovementState)
M
M
+++
movementName
P
M
+++
signalGroup
M
M
+++
state-time-speed (list of MovementEvent)
M
M
C-Roads requires that two phases are provided plus all transition phases in between
++++
eventState
M
M
++++
timing
C
C
+++++
startTime
NOT USED
NOT USED
+++++
minEndTime
M
M
C-Roads requires the earliest time possible including unpredictable events
+++++
maxEndTime
M
M
C-Roads requires the latest time possible
+++++
likelyTime
O
M
LikelyTime is mandatory
+++++
confidence
C
M
C-Roads profiled a usage that is different from the standard and also different from the Dutch Profile
+++++
nextTime
O
O
++++
speeds (list of AdvisorySpeed)
P
O
+++++
type
M
M
+++++
speed
P
O
+++++
confidence
NOT USED
O
+++++
distance
P
O
+++++
class
NOT USED
O
+++++
regional
NOT USED
NOT USED
++++
regional
C
O
+++++
stateChangeReason
M
O
+++
maneuverAssistList (list of ConnectionManeuverAssist)
P
O
++++
connectionID
M
M
++++
queueLength
M
O
++++
availableStorageLength
NOT USED
NOT USED
++++
waitOnStop
NOT USED
NOT USED
++++
pedBicycleDetect
NOT USED
NOT USED
++++
regional
NOT USED
NOT USED
+++++
itsStationPosition
NOT USED
O
++++++
stationID
NOT USED
M
++++++
laneID
NOT USED
O
++++++
nodeXY
NOT USED
O
++++++
timeReference
NOT USED
O
+++
regional
NOT USED
NOT USED
++
maneuverAssistList (list of ConnectionManeuverAssist)
NOT USED
NOT USED
++++
connectionID
NOT USED
NOT USED
++++
queueLength
NOT USED
NOT USED
++++
availableStorageLength
NOT USED
NOT USED
++++
waitOnStop
NOT USED
NOT USED
++++
pedBicycleDetect
NOT USED
NOT USED
++++
regional
NOT USED
NOT USED
+++++
itsStationPosition
NOT USED
NOT USED
++
regional
NOT USED
O
+++
activePrioritizations
NOT USED
O
++++
stationID
NOT USED
M
++++
priorState
NOT USED
M
++++
signalGroup
NOT USED
M
+++
countryCode
NOT USED
M
+
regional
NOT USED
NOT USED