14.1 Introduction to signals
Signals are traffic signs, traffic lights, and specific road marking for the control and regulation of road traffic.
Figure 124 shows exemplary signal definitions for ASAM OpenDRIVE.
Signals have different functions and properties:
-
They are used to control traffic behavior, for example, with speed limits and turn restrictions, and to alert road traffic about dangerous situations.
-
They can be static or dynamic. Static signals, such as stop signs, do not change their meaning. Dynamic signals, like traffic lights or variable message boards, may change their meaning during the simulation. Their dynamic content may be defined in ASAM OpenSCENARIO.
Signals shall be placed in relation to a specific road. The position of the signal is described relative to the road reference line, using the s- and t- coordinates. Signals shall be positioned in such a way that it is clear to which road or lane they belong and where their validity starts. Ambiguity about their interpretation shall be avoided.
Traffic rules are different for each country.
The country of the signal is specified in the @country attribute.
When placing signals in ASAM OpenDRIVE, country-specific legislation and traffic rules should be considered.
Legislative changes are indicated by the year when the rules come into force.
Traffic rules for the entire ASAM OpenDRIVE file can be defined in the <defaultRegulations>
element in the <header>
element.
The @height and @width attributes of a signal are not required but are recommended for proper representation of the signal. The @length attribute can be used to specify a thickness of the signal.
Road marks, that are not binding to traffic, are not defined as signals, but only as objects.
A signal with the @type and @subtype attributes is only unique in combination with the @country and @countryRevision attributes. Since some elements that are considered signals in ASAM OpenDRIVE, for example traffic lights, do not have any official @type and @subtype representation, these are specified in the Signal reference 1.0.0 . They can be used with the appropriate @type, @subtype and the @country="OpenDRIVE".
Figure 125 shows the attributes ASAM OpenDRIVE provides for a speed regulation signal. It is pointed out how height and width are measured.
A signal with an @orientation of +
applies to traffic traveling in the positive road reference line direction.
This means the signal with an @hOffset of 0
faces to the drivers traveling in a positive road reference line direction.
Any @hOffset given to this signal is applied counter-clockwise from the negative road reference line direction.
A signal with an @orientation of -
applies to traffic traveling in the negative road reference line direction.
This means the signal with an @hOffset of 0
faces to the drivers traveling in the negative road reference line direction.
Any @hOffset given to this signal is applied counter-clockwise from the positive road reference line direction.
Figure 126 shows a signal which applies to traffic traveling in the positive road reference line direction and which is turned counter-clockwise from the negative road reference line direction.
For the <signal>
element, the @orientation attribute and @hOffset attribute are defined.
To the @orientation attribute the +
value is assigned and to the @hOffset attribute a value of 5.7595865
is assigned.
Elements in UML model
<signals>
element
In ASAM OpenDRIVE, signals are represented by the <signals>
element within the <road>
element.
UML class: t_road_signals XML tag: <signals> (Multiplicity: 0..1)
Signals are traffic signs, traffic lights, and specific road markings for the control and regulation of road traffic.
The <signals>
element is the container for all signals along a road.
Figure 127 shows the UML class diagram of the ASAM OpenDRIVE Signals class.
<signal>
element
In ASAM OpenDRIVE, a signal is represented by the <signal>
element within the <signals>
element.
UML class: t_road_signals_signal_road XML tag: <signal> (Multiplicity: 0..*)
Used to provide information about signals along a road.
Consists of a main element and an optional lane validity element.
The element for a signal is <signal>
.
Name | Type | Use | Unit | Introduced | Description |
---|---|---|---|---|---|
|
string |
optional |
Defines the year of the applied traffic rules |
||
|
optional |
Country code of the road, see ISO 3166-1, alpha-2 codes. |
|||
|
required |
Indicates whether the signal is dynamic or static. Example: traffic light is dynamic |
|||
|
double |
optional |
rad |
Heading offset of the signal (relative to @orientation, if orientation is equal to “+” or “-“) |
|
|
optional |
m |
Height of the signal, measured from bottom edge of the signal. |
||
|
string |
required |
Unique ID of the signal within the OpenDRIVE file |
||
|
optional |
m |
1.8.0 |
Length of the signal’s bounding box. |
|
|
string |
optional |
Name of the signal. May be chosen freely. |
||
|
required |
"+" = valid in positive s- direction |
|||
|
double |
optional |
rad |
Pitch angle of the signal, relative to the inertial system (xy-plane) |
|
|
double |
optional |
rad |
Roll angle of the signal after applying pitch, relative to the inertial system (x’’y’’-plane) |
|
|
required |
m |
s-coordinate |
||
|
string |
required |
Subtype identifier according to country code or "-1" / "none" |
||
|
double |
required |
m |
t-coordinate |
|
|
string |
optional |
Additional text associated with the signal, for example, text on city limit "City\nBadAibling" |
||
|
string |
required |
Type identifier according to country code |
||
|
optional |
Unit of @value |
|||
|
double |
optional |
Value of the signal, if value is given, unit is mandatory |
||
|
optional |
m |
Width of the signal’s bounding box. |
||
|
double |
required |
m |
z-offset of signal’s origin relative to the elevation of the road reference line |
XML example
<signals>
<signal s="3981.4158159146"
t="-14.0503"
id="5000162"
name="Vorschriftzeichen"
dynamic="no"
orientation="+"
zOffset="3.8835"
country="DE"
countryRevision="2017"
type="274"
subtype="100"
value="100"
unit="km/h"
height="0.77"
width="0.77"
hOffset="5.7595865">
</signal>
</signals>
Rules
The following rules apply to signals:
-
Signals shall have a specific type and subtype.
-
If present, signals shall be used in priority to other traffic rules.
-
A country code shall be added to refer to country-specific rules using the @country attribute.
-
The year the traffic rules come into force may be specified in the @countryRevision attribute.
-
Signals may be valid for one direction or both directions.
-
Signals may be dynamic or static.
Related topics