Newer
Older
id IntersectionReferenceID,
-- this provides a unique mapping to the
-- intersection map in question
-- which provides complete location
-- and approach/movement/lane data
-- as well as zones for priority/preemption
sigStatus SignalStatusPackageList,
-- a list of detailed status containing all
-- priority or preemption state data, both
-- active and pending, and who requested it
-- requests which are denied are also listed
-- here for a short period of time
regional SEQUENCE (SIZE(1..4)) OF
RegionalExtension {{Reg-SignalStatus}} OPTIONAL,
...
}
/*FIXME RGY moved to IS-DSRC-REGION-noCircular to cut circular import loop
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
SpeedLimitList ::= SEQUENCE (SIZE(1..9)) OF RegulatorySpeedLimit
SpeedLimitType ::= ENUMERATED {
unknown, -- Speed limit type not available
maxSpeedInSchoolZone, -- Only sent when the limit is active
maxSpeedInSchoolZoneWhenChildrenArePresent, -- Sent at any time
maxSpeedInConstructionZone, -- Used for work zones, incident zones, etc.
-- where a reduced speed is present
vehicleMinSpeed,
vehicleMaxSpeed, -- Regulatory speed limit for general traffic
vehicleNightMaxSpeed,
truckMinSpeed,
truckMaxSpeed,
truckNightMaxSpeed,
vehiclesWithTrailersMinSpeed,
vehiclesWithTrailersMaxSpeed,
vehiclesWithTrailersNightMaxSpeed,
...
}
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
TimeChangeDetails ::= SEQUENCE {
startTime TimeMark OPTIONAL,
-- When this phase 1st started
minEndTime TimeMark,
-- Expected shortest end time
maxEndTime TimeMark OPTIONAL,
-- Expected longest end time
likelyTime TimeMark OPTIONAL,
-- Best predicted value based on other data
confidence TimeIntervalConfidence OPTIONAL,
-- Applies to above time element only
nextTime TimeMark OPTIONAL
-- A rough estimate of time when
-- this phase may next occur again
-- used to support various ECO driving power
-- management needs.
}
TimeMark ::= INTEGER (0..36001)
-- Tenths of a second in the current or next hour
-- In units of 1/10th second from UTC time
-- A range of 0~36000 covers one hour
-- The values 35991..36000 are used when a leap second occurs
-- The value 36001 is used to indicate time >3600 seconds
-- 36002 is to be used when value undefined or unknown
-- Note that this is NOT expressed in GPS time
-- or in local time
TransmissionAndSpeed ::= SEQUENCE {
transmisson TransmissionState,
speed Velocity
}
VehicleID ::= CHOICE {
entityID TemporaryID,
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
}
-- -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
--
-- Start of entries from table Data_Elements...
-- This table typicaly contains data element entries.
-- -_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
--
AdvisorySpeedType ::= ENUMERATED {
none (0),
greenwave (1),
ecoDrive (2),
transit (3),
...
} -- Note: subject to further growth
AllowedManeuvers ::= BIT STRING {
-- With bits as defined:
-- Allowed maneuvers at path end (stop line)
-- All maneuvers with bits not set are therefore prohibited !
-- A value of zero shall be used for unknown, indicating no Maneuver
maneuverStraightAllowed (0),
-- a Straight movement is allowed in this lane
maneuverLeftAllowed (1),
-- a Left Turn movement is allowed in this lane
maneuverRightAllowed (2),
-- a Right Turn movement is allowed in this lane
maneuverUTurnAllowed (3),
-- a U turn movement is allowed in this lane
maneuverLeftTurnOnRedAllowed (4),
-- a Stop, and then proceed when safe movement
-- is allowed in this lane
maneuverRightTurnOnRedAllowed (5),
-- a Stop, and then proceed when safe movement
-- is allowed in this lane
maneuverLaneChangeAllowed (6),
-- a movement which changes to an outer lane
-- on the egress side is allowed in this lane
-- (example: left into either outbound lane)
maneuverNoStoppingAllowed (7),
-- the vehicle should not stop at the stop line
-- (example: a flashing green arrow)
yieldAllwaysRequired (8),
-- the allowed movements above are not protected
-- (example: an permanent yellow condition)
goWithHalt (9),
-- after making a full stop, may proceed
caution (10),
-- proceed past stop line with caution
reserved1 (11)
-- used to align to 12 Bit Field
} (SIZE(12))
Angle ::= INTEGER (0..28800)
-- LSB of 0.0125 degrees
-- A range of 0 to 359.9875 degrees
ApproachID ::= INTEGER (0..15) -- zero to be used when valid value is unknown
BasicVehicleRole ::= ENUMERATED {
-- Values used in the EU and in the US
basicVehicle (0), -- Light duty passenger vehicle type
publicTransport (1), -- Used in EU for Transit us
specialTransport (2), -- Used in EU (e.g. heavy load)
dangerousGoods (3), -- Used in EU for any HAZMAT
roadWork (4), -- Used in EU for State and Local DOT uses
roadRescue (5), -- Used in EU and in the US to include tow trucks.
emergency (6), -- Used in EU for Police, Fire and Ambulance units
safetyCar (7), -- Used in EU for Escort vehicles
-- Begin US unique numbering
none-unknown (8), -- added to follow current SAE style guidelines
truck (9), -- Heavy trucks with additional BSM rights and obligations
motorcycle (10), --
roadSideSource (11), -- For infrastructure generated calls such as
-- fire house, rail infrastructure, roadwork site, etc.
police (12), --
fire (13), --
ambulance (14), -- (does not include private para-transit etc.)
dot (15), -- all roadwork vehicles
transit (16), -- all transit vehicles
slowMoving (17), -- to also include oversize etc.
stopNgo (18), -- to include trash trucks, school buses and others
-- that routinely disturb the free flow of traffic
cyclist (19), --
pedestrian (20), -- also includes those with mobility limitations
nonMotorized (21), -- other, horse drawn, etc.
military (22), --
...
}
/*FIXME RGY moved to IS-DSRC-REGION-noCircular to cut circular import loop
DeltaAngle ::= INTEGER (-150..150)
-- With an angle range from
-- negative 150 to positive 150
-- in one degree steps where zero is directly
-- along the axis or the lane center line as defined by the
-- two closest points
DeltaTime ::= INTEGER (-122 .. 121)
-- Supporting a range of +/- 20 minute in steps of 10 seconds
-- the value of -121 shall be used when more than -20 minutes
-- the value of +120 shall be used when more than +20 minutes
-- the value -122 shall be used when the value is unavailable
DescriptiveName ::= IA5String (SIZE(1..63))
DrivenLineOffsetLg ::= INTEGER (-32767..32767)
-- LSB units are 1 cm.
DrivenLineOffsetSm ::= INTEGER (-2047..2047)
-- LSB units are 1 cm.
DSecond ::= INTEGER (0..65535) -- units of milliseconds
DSRCmsgID ::= INTEGER (0..32767)
mapData DSRCmsgID ::= 18 -- MAP, intersections
signalPhaseAndTimingMessage DSRCmsgID ::= 19 -- SPAT
signalRequestMessage DSRCmsgID ::= 29 -- SRM
signalStatusMessage DSRCmsgID ::= 30 -- SSM
Elevation ::= INTEGER (-4096..61439)
-- In units of 10 cm steps above or below the reference ellipsoid
-- Providing a range of -409.5 to + 6143.9 meters
-- The value -4096 shall be used when Unknown is to be sent
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
IntersectionID ::= INTEGER (0..65535)
-- The values zero through 255 are allocated for testing purposes
-- Note that the value assigned to an intersection will be
-- unique within a given regional ID only
IntersectionStatusObject ::= BIT STRING {
manualControlIsEnabled (0),
-- Timing reported is per programmed values, etc. but person
-- at cabinet can manually request that certain intervals are
-- terminated early (e.g. green).
stopTimeIsActivated (1),
-- And all counting/timing has stopped.
failureFlash (2),
-- Above to be used for any detected hardware failures,
-- e.g. conflict monitor as well as for police flash
preemptIsActive (3),
signalPriorityIsActive (4),
-- Additional states
fixedTimeOperation (5),
-- Schedule of signals is based on time only
-- (i.e. the state can be calculated)
trafficDependentOperation (6),
-- Operation is based on different levels of traffic parameters
-- (requests, duration of gaps or more complex parameters)
standbyOperation (7),
-- Controller: partially switched off or partially amber flashing
failureMode (8),
-- Controller has a problem or failure in operation
off (9),
-- Controller is switched off
-- Related to MAP and SPAT bindings
recentMAPmessageUpdate (10),
-- Map revision with content changes
recentChangeInMAPassignedLanesIDsUsed (11),
-- Change in MAP's assigned lanes used (lane changes)
-- Changes in the active lane list description
noValidMAPisAvailableAtThisTime (12),
-- MAP (and various lanes indexes) not available
noValidSPATisAvailableAtThisTime (13)
-- SPAT system is not working at this time
-- Bits 14,15 reserved at this time and shall be zero
} (SIZE(16))
LaneAttributes-Barrier ::= BIT STRING {
-- With bits as defined:
median-RevocableLane (0),
-- this lane may be activated or not based
-- on the current SPAT message contents
-- if not asserted, the lane is ALWAYS present
median (1),
whiteLineHashing (2),
stripedLines (3),
doubleStripedLines (4),
trafficCones (5),
constructionBarrier (6),
trafficChannels (7),
lowCurbs (8),
highCurbs (9)
-- Bits 10~15 reserved and set to zero
} (SIZE (16))
LaneAttributes-Bike ::= BIT STRING {
-- With bits as defined:
bikeRevocableLane (0),
-- this lane may be activated or not based
-- on the current SPAT message contents
-- if not asserted, the lane is ALWAYS present
pedestrianUseAllowed (1),
-- The path allows pedestrian traffic,
-- if not set, this mode is prohibited
isBikeFlyOverLane (2),
-- path of lane is not at grade
fixedCycleTime (3),
-- the phases use preset times
-- i.e. there is not a 'push to cross' button
biDirectionalCycleTimes (4),
-- ped walk phases use different SignalGroupID
-- for each direction. The first SignalGroupID
-- in the first Connection represents 'inbound'
-- flow (the direction of travel towards the first
-- node point) while second SignalGroupID in the
-- next Connection entry represents the 'outbound'
-- flow. And use of RestrictionClassID entries
-- in the Connect follow this same pattern in pairs.
isolatedByBarrier (5),
unsignalizedSegmentsPresent (6)
-- The lane path consists of one of more segments
-- which are not part of a signal group ID
-- Bits 7~15 reserved and set to zero
} (SIZE (16))
LaneAttributes-Crosswalk ::= BIT STRING {
-- With bits as defined:
-- MUTCD provides no suitable "types" to use here
crosswalkRevocableLane (0),
-- this lane may be activated or not based
-- on the current SPAT message contents
-- if not asserted, the lane is ALWAYS present
bicyleUseAllowed (1),
-- The path allows bicycle traffic,
-- if not set, this mode is prohibited
isXwalkFlyOverLane (2),
-- path of lane is not at grade
fixedCycleTime (3),
-- ped walk phases use preset times
-- i.e. there is not a 'push to cross' button
biDirectionalCycleTimes (4),
-- ped walk phases use different SignalGroupID
-- for each direction. The first SignalGroupID
-- in the first Connection represents 'inbound'
-- flow (the direction of travel towards the first
-- node point) while second SignalGroupID in the
-- next Connection entry represents the 'outbound'
-- flow. And use of RestrictionClassID entries
-- in the Connect follow this same pattern in pairs.
hasPushToWalkButton (5),
-- Has a demand input
audioSupport (6),
-- audio crossing cues present
rfSignalRequestPresent (7),
-- Supports RF push to walk technologies
unsignalizedSegmentsPresent (8)
-- The lane path consists of one of more segments
-- which are not part of a signal group ID
-- Bits 9~15 reserved and set to zero
} (SIZE (16))
LaneAttributes-Parking ::= BIT STRING {
-- With bits as defined:
-- Parking use details, note that detailed restrictions such as
-- allowed hours are sent by way of ITIS codes in the TIM message
parkingRevocableLane (0),
-- this lane may be activated or not based
-- on the current SPAT message contents
-- if not asserted, the lane is ALWAYS present
parallelParkingInUse (1),
headInParkingInUse (2),
doNotParkZone (3),
-- used to denote fire hydrants as well as
-- short disruptions in a parking zone
parkingForBusUse (4),
parkingForTaxiUse (5),
noPublicParkingUse (6)
-- private parking, as in front of
-- private property
-- Bits 7~15 reserved and set to zero
} (SIZE (16))
LaneAttributes-Sidewalk ::= BIT STRING {
-- With bits as defined:
sidewalk-RevocableLane (0),
-- this lane may be activated or not based
-- on the current SPAT message contents
-- if not asserted, the lane is ALWAYS present
bicyleUseAllowed (1),
-- The path allows bicycle traffic,
-- if not set, this mode is prohibited
isSidewalkFlyOverLane (2),
-- path of lane is not at grade
walkBikes (3)
-- bike traffic must dismount and walk
-- Bits 4~15 reserved and set to zero
} (SIZE (16))
LaneAttributes-Striping ::= BIT STRING {
-- With bits as defined:
stripeToConnectingLanesRevocableLane (0),
-- this lane may be activated or not activated based
-- on the current SPAT message contents
-- if not asserted, the lane is ALWAYS present
stripeDrawOnLeft (1),
stripeDrawOnRight (2),
-- which side of lane to mark
stripeToConnectingLanesLeft (3),
stripeToConnectingLanesRight (4),
stripeToConnectingLanesAhead (5)
-- the stripe type should be
-- presented to the user visually
-- to reflect stripes in the
-- intersection for the type of
-- movement indicated
-- Bits 6~15 reserved and set to zero
} (SIZE (16))
LaneAttributes-TrackedVehicle ::= BIT STRING {
-- With bits as defined:
spec-RevocableLane (0),
-- this lane may be activated or not based
-- on the current SPAT message contents
-- if not asserted, the lane is ALWAYS present
spec-commuterRailRoadTrack (1),
spec-lightRailRoadTrack (2),
spec-heavyRailRoadTrack (3),
spec-otherRailType (4)
-- Bits 5~15 reserved and set to zero
} (SIZE (16))
LaneAttributes-Vehicle ::= BIT STRING {
-- With bits as defined:
isVehicleRevocableLane (0),
-- this lane may be activated or not based
-- on the current SPAT message contents
-- if not asserted, the lane is ALWAYS present
isVehicleFlyOverLane (1),
-- path of lane is not at grade
hovLaneUseOnly (2),
restrictedToBusUse (3),
restrictedToTaxiUse (4),
restrictedFromPublicUse (5),
hasIRbeaconCoverage (6),
permissionOnRequest (7) -- e.g. to inform about a lane for e-cars
} (SIZE (8,...))
LaneConnectionID ::= INTEGER (0..255)
LaneDirection ::= BIT STRING {
-- With bits as defined:
-- Allowed directions of travel in the lane object
-- All lanes are described from the stop line outwards
ingressPath (0),
-- travel from rear of path to front
-- is allowed
egressPath (1)
-- travel from front of path to rear
-- is allowed
-- Notes: No Travel, i.e. the lane object type does not support
-- travel (medians, curbs, etc.) is indicated by not
-- asserting any bit value
-- Bi-Directional Travel (such as a ped crosswalk) is
-- indicated by asserting both of the bits
} (SIZE (2))
/*FIXME RGY moved to IS-DSRC-REGION-noCircular to cut circular import loop
LaneID ::= INTEGER (0..255)
-- the value 0 shall be used when the lane ID is
-- not available or not known
-- the value 255 is reserved for future use
LayerID ::= INTEGER (0..100)
LayerType ::= ENUMERATED {
none,
mixedContent, -- two or more of the below types
generalMapData,
intersectionData,
curveData,
roadwaySectionData,
parkingAreaData,
sharedLaneData,
...
}
LaneWidth ::= INTEGER (0..32767) -- units of 1 cm
/*FIXME RGY moved to IS-DSRC-REGION-noCircular to cut circular import loop
MergeDivergeNodeAngle ::= INTEGER (-180..180)
-- In units of 1.5 degrees from north
-- the value -180 shall be used to represent
-- data is not available or unknown
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
MinuteOfTheYear ::= INTEGER (0..527040)
-- the value 527040 shall be used for invalid
MovementPhaseState ::= ENUMERATED {
-- Note that based on the regions and the operating mode not every
-- phase will be used in all transportation modes and that not
-- every phase will be used in all transportation modes
unavailable (0),
-- This state is used for unknown or error
dark (1),
-- The signal head is dark (unlit)
-- Reds
stop-Then-Proceed (2),
-- Often called 'flashing red' in US
-- Driver Action:
-- Stop vehicle at stop line.
-- Do not proceed unless it is safe.
-- Note that the right to proceed either right or left when
-- it is safe may be contained in the lane description to
-- handle what is called a 'right on red'
stop-And-Remain (3),
-- e.g. called 'red light' in US
-- Driver Action:
-- Stop vehicle at stop line.
-- Do not proceed.
-- Note that the right to proceed either right or left when
-- it is safe may be contained in the lane description to
-- handle what is called a 'right on red'
-- Greens
pre-Movement (4),
-- Not used in the US, red+yellow partly in EU
-- Driver Action:
-- Stop vehicle.
-- Prepare to proceed (pending green)
-- (Prepare for transition to green/go)
permissive-Movement-Allowed (5),
-- Often called 'permissive green' in US
-- Driver Action:
-- Proceed with caution,
-- must yield to all conflicting traffic
-- Conflicting traffic may be present
-- in the intersection conflict area
protected-Movement-Allowed (6),
-- Often called 'protected green' in US
-- Driver Action:
-- Proceed, tossing caution to the wind,
-- in indicated (allowed) direction.
-- Yellows / Ambers
-- The vehicle is not allowed to cross the stop bar if it is possible
-- to stop without danger.
permissive-clearance (7),
-- Often called 'permissive yellow' in US
-- Driver Action:
-- Prepare to stop.
-- Proceed if unable to stop,
-- Clear Intersection.
-- Conflicting traffic may be present
-- in the intersection conflict area
protected-clearance (8),
-- Often called 'protected yellow' in US
-- Driver Action:
-- Prepare to stop.
-- Proceed if unable to stop,
-- in indicated direction (to connected lane)
-- Clear Intersection.
caution-Conflicting-Traffic (9)
-- Often called 'flashing yellow' in US
-- Often used for extended periods of time
-- Driver Action:
-- Proceed with caution,
-- Conflicting traffic may be present
-- in the intersection conflict area
}
-- The above number assignments are not used with UPER encoding
-- and are only to be used with DER or implicit encoding
MsgCount ::= INTEGER (0..127)
/*FIXME RGY moved to IS-DSRC-REGION-noCircular to cut circular import loop
Offset-B10 ::= INTEGER (-512..511)
-- a range of +- 5.11 meters
Offset-B11 ::= INTEGER (-1024..1023)
-- a range of +- 10.23 meters
Offset-B12 ::= INTEGER (-2048..2047)
-- a range of +- 20.47 meters
Offset-B13 ::= INTEGER (-4096..4095)
-- a range of +- 40.95 meters
Offset-B14 ::= INTEGER (-8192..8191)
-- a range of +- 81.91 meters
Offset-B16 ::= INTEGER (-32768..32767)
-- a range of +- 327.68 meters
PedestrianBicycleDetect ::= BOOLEAN
-- true if ANY Pedestrians or Bicyclists are
-- detected crossing the target lane or lanes
/*FIXME RGY moved to IS-DSRC-REGION-noCircular to cut circular import loop
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
PrioritizationResponseStatus ::= ENUMERATED {
unknown (0),
-- Unknown state
requested (1),
-- This prioritization request was detected
-- by the traffic controller
processing (2),
-- Checking request
-- (request is in queue, other requests are prior)
watchOtherTraffic (3),
-- Cannot give full permission,
-- therefore watch for other traffic
-- Note that other requests may be present
granted (4),
-- Intervention was successful
-- and now prioritization is active
rejected (5),
-- The prioritization or preemption request was
-- rejected by the traffic controller
maxPresence (6),
-- The Request has exceeded maxPresence time
-- Used when the controller has determined that
-- the requester should then back off and
-- request an alternative.
reserviceLocked (7),
-- Prior conditions have resulted in a reservice
-- locked event: the controller requires the
-- passage of time before another similar request
-- will be accepted
...
}
PriorityRequestType ::= ENUMERATED {
priorityRequestTypeReserved (0),
priorityRequest (1),
priorityRequestUpdate (2),
priorityCancellation (3),
...
}
/*FIXME RGY moved to IS-DSRC-REGION-noCircular to cut circular import loop
RegionId ::= INTEGER (0..255)
noRegion RegionId ::= 0 -- Use default supplied stubs
addGrpA RegionId ::= 1 -- USA
addGrpB RegionId ::= 2 -- Japan
addGrpC RegionId ::= 3 -- EU
-- NOTE: new registered regional IDs will be added here
-- The values 128 and above are for local region use
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
RequestID ::= INTEGER (0..255)
RequestImportanceLevel ::= ENUMERATED {
requestImportanceLevelUnKnown (0),
requestImportanceLevel1 (1), -- The least important request
requestImportanceLevel2 (2), -- The values here shall be assigned
requestImportanceLevel3 (3), -- Meanings based on regional needs
requestImportanceLevel4 (4), -- for each of the basic roles which
requestImportanceLevel5 (5), -- are defined elsewhere
requestImportanceLevel6 (6),
requestImportanceLevel7 (7),
requestImportanceLevel8 (8),
requestImportanceLevel9 (9),
requestImportanceLevel10 (10),
requestImportanceLevel11 (11),
requestImportanceLevel12 (12),
requestImportanceLevel13 (13),
requestImportanceLevel14 (14), -- The most important request
requestImportanceReserved (15) -- Reserved for future use
}
RequestSubRole ::= ENUMERATED {
requestSubRoleUnKnown (0),
requestSubRole1 (1), -- The first type of sub role
requestSubRole2 (2), -- The values here shall be assigned
requestSubRole3 (3), -- Meanings based on regional needs
requestSubRole4 (4), -- to refine and expand the basic
requestSubRole5 (5), -- roles which are defined elsewhere
requestSubRole6 (6),
requestSubRole7 (7),
requestSubRole8 (8),
requestSubRole9 (9),
requestSubRole10 (10),
requestSubRole11 (11),
requestSubRole12 (12),
requestSubRole13 (13),
requestSubRole14 (14), -- The last type of sub role
requestSubRoleReserved (15) -- Reserved for future use
}
RestrictionAppliesTo ::= ENUMERATED {
none, -- applies to nothing
equippedTransit, -- buses etc.
equippedTaxis,
equippedOther, -- other vehicle types with
-- necessary signal phase state
-- reception equipment
emissionCompliant, -- regional variants with more
-- definitive items also exist
equippedBicycle,
weightCompliant,
heightCompliant,
-- Items dealing with traveler needs serviced by the infrastructure
-- These end users (which are not vehicles) are presumed to be suitably equipped
pedestrians,
slowMovingPersons,
wheelchairUsers,
visualDisabilities,
audioDisabilities, -- hearing
otherUnknownDisabilities,
...
}
RestrictionClassID ::= INTEGER (0..255)
-- An index value to identify data about classes of users
-- the value used varies with each intersection's
-- needs and is defined in the map to the assigned
-- classes of supported users.
RoadRegulatorID ::= INTEGER (0..65535)
-- The value zero shall be used for testing only
RoadSegmentID ::= INTEGER (0..65535)
-- The values zero to 255 shall be used for testing only
-- Note that the value assigned to an RoadSegment will be
-- unique within a given regional ID only during its use
/*FIXME RGY moved to IS-DSRC-REGION-noCircular to cut circular import loop
RoadwayCrownAngle ::= INTEGER (-128..127)
-- In LSB units of 0.3 degrees of angle
-- over a range of -38.1 to + 38.1 degrees
-- The value -128 shall be used for unknown
-- The value zero shall be used for angles
-- which are between -0.15 and +0.15
Scale-B12 ::= INTEGER (-2048..2047) -- in steps of 0.05 percent
/*FIXME RGY moved to IS-DSRC-REGION-noCircular to cut circular import loop
SignalGroupID ::= INTEGER (0..255)
-- The value 0 shall be used when the ID is
-- not available or not known
-- the value 255 is reserved to indicate a
-- permanent green movement state
-- therefore a simple 8 phase signal controller
-- device might use 1..9 as its groupIDs
/*FIXME RGY moved to IS-DSRC-REGION-noCircular to cut circular import loop
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
SegmentAttributeXY ::= ENUMERATED {
-- Various values which can be Enabled and Disabled for a lane segment
-- General Items
reserved ,
doNotBlock , -- segment where a vehicle
-- may not come to a stop
whiteLine , -- segment where lane crossing not allowed
-- such as the final few meters of a lane
-- Porous Lane states, merging, turn outs, parking etc.
mergingLaneLeft , -- indicates porous lanes
mergingLaneRight ,
curbOnLeft , -- indicates presence of curbs
curbOnRight ,
loadingzoneOnLeft , -- loading or drop off zones
loadingzoneOnRight ,
turnOutPointOnLeft , -- opening to adjacent street/alley/road
turnOutPointOnRight ,
adjacentParkingOnLeft , -- side of road parking
adjacentParkingOnRight ,
-- Bike Lane Needs
adjacentBikeLaneOnLeft , -- presence of marked bike lanes
adjacentBikeLaneOnRight ,
sharedBikeLane , -- right of way is shared with bikes
-- who may occupy entire lane width
bikeBoxInFront ,
-- Transit Needs
transitStopOnLeft , -- any form of bus/transit loading
-- with pull in-out access to lane on left
transitStopOnRight , -- any form of bus/transit loading
-- with pull in-out access to lane on right
transitStopInLane , -- any form of bus/transit loading
-- in mid path of the lane
sharedWithTrackedVehicle , -- lane is shared with train or trolley
-- not used for crossing tracks
-- Pedestrian Support Attributes
safeIsland , -- begin/end a safety island in path
lowCurbsPresent , -- for ADA support
rumbleStripPresent , -- for ADA support
audibleSignalingPresent , -- for ADA support
adaptiveTimingPresent , -- for ADA support
rfSignalRequestPresent , -- Supports RF push to walk technologies
partialCurbIntrusion , -- path is blocked by a median or curb
-- but at least 1 meter remains open for use
-- and at-grade passage
-- Lane geometry details (see standard for defined shapes)
taperToLeft , -- Used to control final path shape
taperToRight , -- Used to control final path shape
taperToCenterLine , -- Used to control final path shape
-- Parking Lane and Curb Attributes
parallelParking , --
headInParking , -- Parking at an angle with the street
freeParking , -- no restriction on use of parking
timeRestrictionsOnParking , -- Parking is not permitted at all times
-- typically used when the 'parking' lane
-- becomes a driving lane at times
costToPark , -- Used where parking has a cost
midBlockCurbPresent , -- a protruding curb near lane edge
unEvenPavementPresent , -- a disjoint height at lane edge
...
}
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
SpeedAdvice ::= INTEGER (0..500)
-- LSB units are 0.1 m/s^2
-- the value 499 shall be used for values at or greater than 49.9 m/s
-- the value 500 shall be used to indicate that speed is unavailable
TemporaryID ::= OCTET STRING (SIZE(4))
TimeIntervalConfidence ::= INTEGER (0..15)
-- Value Probability
-- 0 21%
-- 1 36%
-- 2 47%
-- 3 56%
-- 4 62%
-- 5 68%
-- 6 73%
-- 7 77%
-- 8 81%
-- 9 85%
-- 10 88%
-- 11 91%
-- 12 94%
-- 13 96%
-- 14 98%
-- 15 100%
TransitVehicleOccupancy ::= ENUMERATED {
occupancyUnknown (0),
occupancyEmpty (1),
occupancyVeryLow (2),
occupancyLow (3),
occupancyMed (4),
occupancyHigh (5),
occupancyNearlyFull (6),
occupancyFull (7)
}
TransitVehicleStatus ::= BIT STRING {
loading (0), -- parking and unable to move at this time
anADAuse (1), -- an ADA access is in progress (wheelchairs, kneeling, etc.)
aBikeLoad (2), -- loading of a bicycle is in progress
doorOpen (3), -- a vehicle door is open for passenger access
charging (4), -- a vehicle is connected to charging point
atStopLine (5) -- a vehicle is at the stop line for the lane it is in
} (SIZE(8))
TransmissionState ::= ENUMERATED {
neutral (0), -- Neutral
park (1), -- Park
forwardGears (2), -- Forward gears
reverseGears (3), -- Reverse gears
reserved1 (4),
reserved2 (5),
reserved3 (6),
unavailable (7) -- not-equipped or unavailable value,
-- Any related speed is relative to the vehicle reference frame used
}
VehicleType ::= ENUMERATED {
none (0), -- Not Equipped, Not known or unavailable
unknown (1), -- Does not fit any other category
special (2), -- Special use
moto (3), -- Motorcycle
car (4), -- Passenger car
carOther (5), -- Four tire single units
bus (6), -- Buses
axleCnt2 (7), -- Two axle, six tire single units
axleCnt3 (8), -- Three axle, single units
axleCnt4 (9), -- Four or more axle, single unit
axleCnt4Trailer (10), -- Four or less axle, single trailer
axleCnt5Trailer (11), -- Five or less axle, single trailer
axleCnt6Trailer (12), -- Six or more axle, single trailer
axleCnt5MultiTrailer (13), -- Five or less axle, multi-trailer
axleCnt6MultiTrailer (14), -- Six axle, multi-trailer
axleCnt7MultiTrailer (15), -- Seven or more axle, multi-trailer
...
}
/*FIXME RGY moved to IS-DSRC-REGION-noCircular to cut circular import loop
Velocity ::= INTEGER (0..8191) -- Units of 0.02 m/s
-- The value 8191 indicates that
-- velocity is unavailable
WaitOnStopline ::= BOOLEAN --
-- True or False
-- If "true", the vehicles on this specific connecting
-- maneuver have to stop on the stop-line
-- and not to enter the collision area
ZoneLength ::= INTEGER (0..10000)
-- Unit = 1 meter, 0 = unknown,
-- The value 10000 to be used for Distances >=10000 m
-- (e.g. from known point to another point along a
-- known path, often against traffic flow direction
-- when used for measuring queues)
END