Tag:highway=traffic_signals

From OpenStreetMap Wiki
Jump to navigation Jump to search
Public-images-osm logo.svg highway = traffic_signals
Led traffic lights.jpg
Description
A traffic signal (or a set of those) for regulating circulation. Show/edit corresponding data item.
Rendering in OSM Carto
Traffic light-16.svg
Group: highways
Used on these elements
may be used on nodesshould not be used on waysshould not be used on areasshould not be used on relations (except multipolygon relations)
Useful combination
Status: de facto
Not to be confused with traffic_sign=*

 Traffic signals, also known as traffic lights, traffic lamps, signal lights and stop lights are signalling devices positioned at road intersections, pedestrian crossings and other locations to control competing flows of traffic.

Tagging

Traffic signals for cars

Key Value Element Comment
highway traffic_signals node Required.
ref * node Reference number or code, if present or at least assigned to specific traffic lights.
traffic_signals * node Additionally used to indicate special types of traffic signals, such as signals activated when emergency vehicles are leaving their depot, or signal that is normally blinking and turns red when tram is incoming.
traffic_signals:direction forward / backward node Indicates the traffic signals signal only the traffic moving in the same direction as the OSM (highway) way upon which the they are placed: forward; or in the reverse direction: backward.
traffic_signals:countdown yes / no node When there is display a countdown of the remaining time to wait or the time remaining where crossing.
red_turn:right yes / no node If cars (and cyclists) are allowed to make a right turn also if the traffic signal is red. (There's also a newer more general traffic_signals:turn with right_on_red and left_on_red.)
red_turn:right:bicycle yes / no node If only cyclists are allowed to make a right turn also if the traffic signal is red.

Traffic signals for pedestrians

You can use highway=traffic_signals for pedestrian crossings to indicate the signals, that is, where to stop or where the button is located. For this, the pedestrian crossing should be a way with highway=footway or highway=pedestrian.

If the traffic signal is not separately mapped, the node that is the actual crossing between the road and highway=footway/pedestrian should be tagged with highway=crossing + crossing=traffic_signals.

Key Value Element Comment
highway traffic_signals node Required if the traffic light is mapped as separate node, else highway=crossing + crossing=traffic_signals
button_operated yes / no node Used to indicate that the traffic signals need to be activated by pressing a button.
traffic_signals:sound yes / no / locate / walk node Whether there are sound signals for visually impaired people.
traffic_signals:vibration yes / no node Whether there are vibrating signals for visually impaired and deaf people.
traffic_signals:arrow yes / no node Whether there is a tactile arrow available at the traffic light pole to indicate for blind persons in which direction the pedestrian crossing leads.
traffic_signals:minimap yes / no node Whether there is a small tactile map at the traffic light pole to indicate the crossing layout for blind persons.
traffic_signals:floor_vibration yes / no node Whether there is a device that lets the floor vibrate at walk signal. Often used near homes of deaf-blind persons.
traffic_signals:countdown yes / no node When there is display a countdown of the remaining time to wait or the time remaining where crossing.
traffic_signals:floor_light yes / no node Synchronized traffic light on the ground with green, red and/or yellow lights. Generally used for people who use the smartphone.

Traffic signals for cyclists

If every signal is represented by its own single node (recommended), add a node with highway=traffic_signals on the place the cyclists has to stop and use the following tags to add additional details, see #Tagging also cycleway traffic signals for an example. In countries where cyclists are not legally vehicle drivers, it is good practice to also tag the crossing but only with highway=crossing and crossing=traffic_signals.

If the entire crossing is represented by a single node (not recommended as the attributes mostly differ from the traffic signals used for cars) add highway=traffic_signals to that node.

Key Value Element Comment
highway traffic_signals node Required.
traffic_signals:direction forward / backward node Indicates the traffic signals signal only the cycle traffic moving in the same direction as the OSM (highway) way upon which the they are placed: forward; or in the reverse direction: backward.
button_operated yes / no node Used to indicate that the traffic signals is activated by pressing a button.
traffic_signals:countdown yes / no node When there is display a countdown of the remaining time to wait or the time remaining where crossing.
red_turn:right yes / no node If you are allowed to make a right turn also if the traffic signal is red. (There's also a newer more general traffic_signals:turn with right_on_red and left_on_red.)
traffic_signals:sound yes / no / locate / walk node Whether there are sound signals for visually impaired people.
bicycle yes / no node Whether pedal cyclists are permitted to ride across the crossing.

Other details

One of the most common values of road_marking=* is road_marking=solid_stop_line, corresponding to the line that indicates where vehicles must stop and wait for a red signal.

If the traffic signals are mounted on a mast arm or other gantry structure, draw a way corresponding to where it extends out above the roadway, then tag it as man_made=gantry. Do not connect the gantry to the highway=* way. Depending on the country and type of intersection, a traffic signal gantry may extend over the near and/or far side of the intersection or diagonally across the intersection.

Map the signal controller box as a node and tag it as man_made=street_cabinet, street_cabinet=traffic_control.

How to map

The mapping of traffic signals is an abstraction that the particular junction or way is regulated by traffic lights. It is not a representation of a particular device. Thus, because traffic signals can affect routing decisions, it is important that they are attached to the ways to which they apply, and not placed beside the way.

Simple intersections

Mapnik traffic signals.png

For simple intersections, just tag the intersection node. The same applies to traffic signals which are not part of any intersection, e.g. before tunnels.

Complex intersections

Consider the following intersection:

Traffic signals example 1.png

The horizontal ways are actually one large way, represented by two one-way streets. The problem now is that traffic signals should ideally be applied to each way exactly once. As of now, there is no well established convention on how this problem should be ideally solved, but possible taggings which are currently in use are listed below.

Further discussion is welcome on the discussion page.

Tag all crossings

Traffic signals example 2.png

Add traffic signals to the common nodes in the junction. This will create two separate traffic signals for the vertical way. It is up to the routing software to count nearby signals as one for timing purposes. Many junctions are tagged this way due to simplicity.

Tag all incoming ways

Traffic signals example 3.png

Traffic signals example 4.png

Instead of putting a traffic signal on each crossing, put a traffic signal on all incoming ways of a junction on the place of the stop line. Traffic signals added to dual-ways need to be tagged with either traffic_signals:direction=forward or traffic_signals:direction=backward to indicate the affected direction. In the given example, this applies to the vertical way only, as the horizontal way is mapped with one-ways anyhow. It is up to rendering software to cluster traffic signal icons to avoid visual clutter.

Tagging also cycleway traffic signals

Advanced example showing the "tag all incoming one-ways" approach, including the traffic signals of intersecting cycleways. Location

As before, put a traffic signal on all incoming ways of a junction. The difference is an extended meaning of "incoming ways".

How to map (new)

Image Tagging
Traffic signal without intersection (e.g. before bridge), no pedestrian crossing
On way tagged with oneway=yes/-1
Traffic signals 0 oneway.png highway=traffic_signals + crossing=no[1]
On way tagged without oneway
Traffic signals 0.png highway=traffic_signals + crossing=no[1] + traffic_signals:direction=forward/backward
Pedestrian crossing without intersection
Pedestrian crossings not separately mapped
Traffic signals no intersection.png
Pedestrian crossings separately mapped
Traffic signals no intersection pedestrian separate.png
Simple intersection
Pedestrian crossings not separately mapped
Traffic signals 1 1.png highway=traffic_signals + crossing=traffic_signals
Pedestrians crossings separately mapped
Traffic signals 1 1 pedestrian separate.png
Intersection of undivided and divided highway
Vehicle traffic sign on intersection, pedestrian crossings not separately mapped
Traffic signals 2 1 on junction.png highway=traffic_signals + crossing=traffic_signals
Vehicle traffic signals on intersection, pedestrian crossings separately mapped
Traffic signals 2 1 on junction pedestrian separate.png
Vehicle traffic signals before intersection, pedestrian crossings not separately mapped
Traffic signals 2 1 before junction.png
Vehicle traffic signals before intersection, pedestrian crossings separately mapped
Traffic signals 2 1 before junction separate pedestrian.png
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!

Named traffic signals/traffic signal systems (Japan...)

Traffic signal with name “Rokuchonome” in Sendai, Japan.

In some countries (such as Japan), people orient themselves in the local area using the names of traffic signals or traffic signal systems rather than the names of streets. While street names may also exist, they are less important for orientation. See Named spots instead of street names for details. Note that Korea and Nicaragua used named intersections, but these are tagged as junction=yes and reference_point=* respectively, not highway=traffic_signals.

For simple intersections (single node) or for single traffic signals on the open road (single node) simply use highway=traffic_signals together with a name=* tag.

Note: Do not use junction=yes at all if you have a named traffic signals. junction=yes is only for named junctions (which means that if a node is tagged with highway=traffic_signals + junction=yes + name=*, the tag "name" is the junction name).

Rendering

Notes and references

  1. 1.0 1.1 1.2 1.3 1.4 1.5 E.g. for countries where jaywalking is forbidden, see Legal view by jurisdiction

See also

Proposals