Encoding a right on red lane maneuver is a common need for the right-most lane in many intersections. This article addresses how encode this and other “static” or “semi-static” maneuvers in a motor vehicle lane. Often, defining this type of maneuver does not involve the use of the SPaT message. At other times, such as when the right to make the maneuver varies with the time of day, the SPaT message is used to express the current lane rules and conditions.
Aside: And of course the reciprocal left-on-red mode is also supported for those countries that elect to drive on the other side of the road.
Note: Be sure to check local regulatory convention regarding what default behavior is expected/allowed at intersections when creating MAPs. The legal ability to turn right on red in the absence of signage varies considerably throughout the US and the world in general. This is not a legal forum, we just teach how to fill out the message.
Some key concepts are covered in these three other articles:
Time of Day Variations
text or article to be developed/provided. Review the general concept that SPaT expresses any changing items while MAP is static, and that SPaT invokes which lane description to be used any any given time. We could use a standalone article on this topic as well
This concept is generally not required or used with channelized right turn lanes. Such lanes can be modeled as normal ingress lanes up to the point of merger with the egress lane and provided with a suitable (non signalized, i.e. signalGroupId =0) ConnectsTo entry to the egress lane.
How to encode a right-on-red
text to be provided.
All you do it put it in the generic lane maneuvers for that lane.
It is really not a big deal and SPaT is not used
(hence no signal group ID is needed / used either).
Note: There a unique flag for “maneuverRightTurnOnRedAllowed” – read the codes for AllowedManeuvers here. It simply implies that once the vehicle comes to a stop a unprotected right turn is allowed with suitable caution. And that there is not a “on red” flag combination that could be used with the “maneuverRightAllowed” flag. This is in contrast with the right-on-yellow use case (see below). Adding the “maneuverRightAllowed” flag in the generic lane would still be commonly found (as that maneuver will map the the SPaT message SignalGroupID that enables it). The “maneuverRightAllowed” flag would not be found if the intersection was unsignalized.
How to encode a right-on-yellow
Use the flag for “maneuverRightTurnOnRedAllowed” and the “yieldAllwaysRequired” flag in combination. The yieldAllwaysRequired is used to reflect permanent states as described in the article on maneuvers.
Other similar maneuvers
Further text to be provided.
And again, the alternative use case exists for those that prefer to drive on the other side of the road.
How to encode a right-on-red with time restrictions
text to be provided – use MTCUD signage image from Lone Hill example