14.7 Signal boards

Signals are not always separate signs on a single sheet of metal. Several signs can be coupled on one board. They can be of the following types:

  • static board of @type="staticBoard"

  • variable message board of @type="vmsBoard"

  • multi board with static and dynamic parts of @type="multiBoard"

14.7.1 Static boards

Elements in UML model

<staticBoard> element

UML class:  t_road_signals_staticBoard
XML tag:    <staticBoard> (Multiplicity: 0..*)
Introduced: 1.8.0

A <signal> element that contains a <staticBoard> element. The signs that are displayed on a static board are defined as separate <sign> elements.

<sign> element

UML class:  t_road_signals_board_sign
XML tag:    <sign> (Multiplicity: 0..*)
Introduced: 1.8.0

A <sign> element on a static board defined in the local coordinate system of the <signal> element. A <sign> element may have all attributes and child elements of a signal.

Table 128. Attributes of the <sign> element
Name Type Use Unit Introduced Description

countryRevision

string

optional

Defines the year of the applied traffic rules

country

e_countryCode

optional

Country code of the road, see ISO 3166-1, alpha-2 codes.

dynamic

t_yesNo

required

Indicates whether the signal is dynamic or static. Example: traffic light is dynamic

hOffset

double

optional

rad

Heading offset of the signal (relative to @orientation, if orientation is equal to “+” or “-“)
Heading offset of the signal (relative to road reference line, if orientation is equal to “none” )

height

t_grEqZero

optional

m

Height of the signal, measured from bottom edge of the signal.

id

string

required

Unique ID of the signal within the OpenDRIVE file

length

t_grEqZero

optional

m

1.8.0

Length of the signal’s bounding box.
@length is defined in the local coordinate system u/v along the u-axis

name

string

optional

Name of the signal. May be chosen freely.

orientation

e_orientation

required

"+" = valid in positive s- direction
"-" = valid in negative s- direction
"none" = valid in both directions

pitch

double

optional

rad

Pitch angle of the signal, relative to the inertial system (xy-plane)

roll

double

optional

rad

Roll angle of the signal after applying pitch, relative to the inertial system (x’’y’’-plane)

subtype

string

required

Subtype identifier according to country code or "-1" / "none"

text

string

optional

Additional text associated with the signal, for example, text on city limit "City\nBadAibling"

type

string

required

Type identifier according to country code
or "-1" / "none". See extra document.

unit

e_unit

optional

Unit of @value

v

double

required

m

1.8.0

Local v-coordinate of the sign on the board

value

double

optional

Value of the signal, if value is given, unit is mandatory

width

t_grEqZero

optional

m

Width of the signal’s bounding box.
@width is defined in the local coordinate system u/v along the v-axis

z

double

required

m

1.8.0

Local z-coordinate of the sign on the board

XML example

<signal s="4.0"
        t="1.0"
        id="534"
        name="board"
        dynamic="no"
        orientation="+"
        zOffset="5.00"
        country="OpenDRIVE"
        type="staticBoard"
        subtype="-1"
        hOffset="0"
        pitch="0"
        roll="0"
        height="2.0"
        width="1.5">
    <validity from="-2" to="-2"/>
    <staticBoard>
        <sign id="535" Country="DE" type="274" subtype="60" countryRevision="2017" v="-0.5" z="1.5" width="0.5" height="0.5" value="60" unit="km/h">
            <validity from="-2" to="-2"/>
            <signalDependency id ="536"/>
            <signalDependency id ="537"/>
        </sign>
        <sign id="536" Country="DE" type="1010" subtype="51" countryRevision="2017" v="-0.75" z="0.9" width="0.420" height="0.231"/>
        <sign id="537" Country="DE" type="1040" subtype="30" countryRevision="2017" v="-0.75" z="0.6" width="0.420" height="0.231" value="22000600"/>
        <sign id="538" Country="DE" type="1012" subtype="36" countryRevision="2017" v="-0.75" z="0.3" width="0.420" height="0.231"/>
        <sign id="539" Country="DE" type="274" subtype="80" countryRevision="2017" v="0.75" z="1.5" width="0.420" height="0.231" value="100" unit="km/h">
            <signalDependency id ="540" />
        </sign>
        <sign id="540" Country="DE" type="1040" subtype="30" countryRevision="2017" v="-0.75" z="0.6" width="0.420" height="0.231" value="22000600"/>
        <sign id="541" Country="DE" type="1012" subtype="36" countryRevision="2017" v="-0.75" z="0.3" width="0.420" height="0.231"/>
    </staticBoard>
 </signal>
img
Figure 134. multiStaticSign from XML example above

Rules

  • Static signal boards shall be specified to be @type="staticBoard".

  • Static signal boards shall be specified to be @dynamic="false".

  • The <validity> element of a <sign> element shall override the <validity> element of the parent <signal> element.

  • The <signalDependency> element of a <sign> element shall override the <signalDependency> element of the parent <signal> element.

  • Static boards shall not be used for single signals, for example, a stop sign on a single sheet of metal.

Related topics

14.7.2 Variable message boards (VMS)

Elements in UML model

<vmsBoard> element

UML class:  t_road_signals_vmsBoard
XML tag:    <vmsBoard> (Multiplicity: 0..*)
Introduced: 1.8.0

Variable message boards can change their values during the simulation in ASAM OpenSCENARIO.

Variable message boards are switched off if they are not specified in ASAM OpenSCENARIO.

Table 129. Attributes of the <vmsBoard> element
Name Type Use Unit Introduced Description

displayHeight

double

optional

m

1.8.0

Height of the display

displayType

e_road_signals_displayType

required

1.8.0

Functional type of the display

displayWidth

double

optional

m

1.8.0

Width of the display

v

double

required

m

1.8.0

Local v-coordinate of the board

z

double

required

m

1.8.0

Local z-coordinate of the board

<displayArea> element

UML class:  t_road_signals_displayArea
XML tag:    <displayArea> (Multiplicity: 0..*)
Introduced: 1.8.0

A display area is the recommended position of the signal to be visualized in the simulation. A display area is specified in the <displayArea> element. A <displayArea> element is defined in the local coordinate system of the <signal> element. The @index attribute can be used in ASAM OpenSCENARIO to reference the display area. In ASAM OpenSCENARIO a different local display area position may be specified.

Table 130. Attributes of the <displayArea> element
Name Type Use Unit Introduced Description

height

t_grEqZero

required

m

1.8.0

Height of the <displayArea>

index

int

required

1.8.0

Index of the <displayArea>

v

double

required

m

1.8.0

Local v-coordinate of the <displayArea> on the board

width

t_grEqZero

required

m

1.8.0

Width of the <displayArea>

z

double

required

m

1.8.0

Local z-coordinate of the <displayArea> on the board

XML example

<signal s="4.0"
        t="1.0"
        id="534"
        name="board"
        dynamic="yes"
        orientation="+"
        zOffset="5.00"
        country="OpenDRIVE"
        type="vmsBoard"
        subtype="-1"
        hOffset="0"
        pitch="0"
        roll="0"
        height="1.5"
        width="1.5">
    <vmsBoard displayHeight="1.5" displayWidth="1.5" material="colorGraphics">
        <displayArea index="1" v="7" z="3" width="1.4" height="1.4">
            <validity from="-2" to="-2" />
        </displayArea>
        <displayArea index="2" v="5.5" z="3" width="1.4" height="1.4">
            <validity from="-2" to="-3" />
        </displayArea>
        <displayArea index="3" v="5.5" z="0.5" width="1.4" height="0.4" >
            <validity from="-3" to="-3" />
        </displayArea>
    </vmsBoard>
</signal>

Rules

  • Variable message boards shall be specified to be @type="vmsBoard".

  • Variable message boards shall be specified to be @dynamic="true".

  • The <validity> element of a <displayArea> element shall override the <validity> element of the parent <signal> element.

  • The <signalDependency> of a <displayArea> element shall override the <signalDependency> element of the parent <signal> element.

Related topics

14.7.3 Multi boards

A multi board is a board that consists of static boards and variable message boards. The size of the parent <signal> element covers all static and variable message boards.

XML example

<signal s="4.0"
        t="1.0"
        id="534"
        name="board"
        dynamic="yes"
        orientation="+"
        zOffset="5.00"
        country="OpenDRIVE"
        type="multiBoard"
        subtype="-1"
        hOffset="0"
        pitch="0"
        roll="0"
        height="3.0"
        width="7.5">
    <vmsBoard displayHeight="2.5" displayWidth="7.0" material="colorGraphics" v="0" z="0.5">
        <displayArea index="1" v="7" z="3" width="1.4" height="1.4">
            <validity from="-2" to="-2" />
        </displayArea>
        <displayArea index="2" v="5.5" z="3" width="1.5" height="1.5">
            <validity from="-2" to="-3" />
        </displayArea>
        <displayArea index="3" v="5.5" z="0.5" width="1.5" height="0.5">
            <validity from="-3" to="-3" />
        </displayArea>
    </vmsBoard>
    <staticBoard>
        <sign id="535" country="DE" type="386" subtype="32" countryRevision="2017" v="-7" z="0.2" width="0.5" height="0.2">
            <validity from="-2" to="-2" />
        </sign>
        <sign id="535" country="DE" type="405" subtype="-1" countryRevision="2017" v="-5" z="0.2" width="0.5" height="0.2" text="66">
            <validity from="-2" to="-3" />
        </sign>
        <sign id="535" country="DE" type="386" subtype="32" countryRevision="2017" v="-3.5" z="0.2" width="0.5" height="0.2">
            <validity from="-3" to="-3" />
        </sign>
    </staticBoard>
</signal>

Rules

  • A multi board shall have at least one static signal board and at least one variable message board.

  • Multi boards shall be specified to be @type="multiBoard".

  • Multi boards shall be specified to be @dynamic="true".

Related topics

14.7.4 Gantry

Elements in UML model

<vmsGroup> element

UML class:  t_signalGroup_vmsGroup
XML tag:    <vmsGroup> (Multiplicity: 0..*)
Introduced: 1.8.0

On a gantry there can be one large variable message board or several smaller variable message boards. ASAM OpenSCENARIO requires to treat a gantry that has one large variable message board or several smaller variable message boards the same way. Therefore variable message boards that are on the same gantry shall be grouped and their indexes shall be redefined if not unique.

Table 131. Attributes of the <vmsGroup> element
Name Type Use Introduced Description

id

string

required

1.8.0

Unique id of the <vmsGroup>

img
Figure 135. UML class diagram of the SignalGroup class

Figure 135 shows the UML class diagram of the ASAM OpenDRIVE SignalGroup class.

<vmsBoardReference> element

UML class:  t_signalGroup_vmsBoardReference
XML tag:    <vmsBoardReference> (Multiplicity: 1..*)
Introduced: 1.8.0

Variable message board references list all variable message boards that belong to the same gantry.

Table 132. Attributes of the <vmsBoardReference> element
Name Type Use Introduced Description

groupIndex

int

required

1.8.0

groupIndex the index of the grouped boards shall be unique within the <vmsGroup>

signalId

string

required

1.8.0

Id of the signal that has a <vmsBoard> assigned

vmsIndex

int

required

1.8.0

vmsIndex, the index of the <vmsBoard>

XML example

<vmsGroup id="27" >
    <vmsBoardReference signalId="501" vmsIndex="1" groupIndex="1" />
    <vmsBoardReference signalId="502" vmsIndex="1" groupIndex="2" />
    <vmsBoardReference signalId="503" vmsIndex="1" groupIndex="3" />
</vmsGroup>

Rules

  • Each gantry shall have one <vmsGroup> element with at least one <vmsBoardReference> element.

  • All variable message boards within a <vmsGroup> element shall belong to the same gantry.

Related topics