rsmp_schema 0.1.0 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/rsmp_schema/convert/export/json_schema.rb +96 -54
- data/lib/rsmp_schema/schema.rb +80 -24
- data/lib/rsmp_schema/version.rb +1 -1
- data/lib/rsmp_schema.rb +2 -0
- data/schemas/tlc/1.0.10/sxl.yaml +20 -65
- data/schemas/tlc/1.0.13/sxl.yaml +20 -80
- data/schemas/tlc/1.0.14/sxl.yaml +20 -80
- data/schemas/tlc/1.0.15/sxl.yaml +20 -87
- data/schemas/tlc/1.0.7/sxl.yaml +20 -61
- data/schemas/tlc/1.0.8/sxl.yaml +20 -65
- data/schemas/tlc/1.0.9/sxl.yaml +20 -65
- data/schemas/tlc/1.1/alarms/A0303.json +111 -0
- data/schemas/tlc/1.1/alarms/A0304.json +137 -0
- data/schemas/tlc/1.1/alarms/alarms.json +33 -1
- data/schemas/tlc/1.1/commands/M0001.json +2 -2
- data/schemas/tlc/1.1/commands/M0005.json +1 -1
- data/schemas/tlc/1.1/commands/M0013.json +1 -1
- data/schemas/tlc/1.1/commands/M0019.json +1 -1
- data/schemas/tlc/1.1/commands/M0022.json +335 -0
- data/schemas/tlc/1.1/commands/M0023.json +64 -0
- data/schemas/tlc/1.1/commands/commands.json +32 -0
- data/schemas/tlc/1.1/statuses/S0001.json +3 -3
- data/schemas/tlc/1.1/statuses/S0002.json +1 -1
- data/schemas/tlc/1.1/statuses/S0003.json +1 -1
- data/schemas/tlc/1.1/statuses/S0004.json +1 -1
- data/schemas/tlc/1.1/statuses/S0007.json +1 -1
- data/schemas/tlc/1.1/statuses/S0008.json +1 -1
- data/schemas/tlc/1.1/statuses/S0009.json +1 -1
- data/schemas/tlc/1.1/statuses/S0010.json +1 -1
- data/schemas/tlc/1.1/statuses/S0011.json +1 -1
- data/schemas/tlc/1.1/statuses/S0012.json +1 -1
- data/schemas/tlc/1.1/statuses/S0013.json +2 -2
- data/schemas/tlc/1.1/statuses/S0020.json +1 -1
- data/schemas/tlc/1.1/statuses/S0032.json +96 -0
- data/schemas/tlc/1.1/statuses/S0033.json +93 -0
- data/schemas/tlc/1.1/statuses/S0034.json +40 -0
- data/schemas/tlc/1.1/statuses/S0205.json +8 -2
- data/schemas/tlc/1.1/statuses/S0206.json +8 -2
- data/schemas/tlc/1.1/statuses/S0207.json +8 -2
- data/schemas/tlc/1.1/statuses/S0208.json +72 -18
- data/schemas/tlc/1.1/statuses/statuses.json +48 -0
- data/schemas/tlc/1.1/sxl.yaml +596 -241
- metadata +9 -2
data/schemas/tlc/1.0.9/sxl.yaml
CHANGED
@@ -97,7 +97,6 @@ objects:
|
|
97
97
|
signalgroupstatus:
|
98
98
|
type: string
|
99
99
|
description: Signal group status as text field
|
100
|
-
range: "[text]"
|
101
100
|
pattern: "^[a-hA-G0-9N-P]*$"
|
102
101
|
cyclecounter:
|
103
102
|
type: integer
|
@@ -120,7 +119,6 @@ objects:
|
|
120
119
|
detectorlogicstatus:
|
121
120
|
type: string
|
122
121
|
description: Detector logic status as text field
|
123
|
-
range: "[text]"
|
124
122
|
S0003:
|
125
123
|
description: |-
|
126
124
|
Input status.
|
@@ -130,11 +128,9 @@ objects:
|
|
130
128
|
inputstatus:
|
131
129
|
type: string
|
132
130
|
description: Input status as text field
|
133
|
-
range: "[text]"
|
134
131
|
extendedinputstatus:
|
135
132
|
type: string
|
136
133
|
description: Extended input status as text field
|
137
|
-
range: "[text]"
|
138
134
|
S0004:
|
139
135
|
description: |-
|
140
136
|
Output status.
|
@@ -144,11 +140,9 @@ objects:
|
|
144
140
|
outputstatus:
|
145
141
|
type: string
|
146
142
|
description: Output status as text field
|
147
|
-
range: "[text]"
|
148
143
|
extendedoutputstatus:
|
149
144
|
type: string
|
150
145
|
description: Extended output status as text field
|
151
|
-
range: "[text]"
|
152
146
|
S0005:
|
153
147
|
description: |-
|
154
148
|
Traffic Light Controller starting.
|
@@ -183,15 +177,13 @@ objects:
|
|
183
177
|
During maintenance work the controller might be using dark mode (no output to the signal heads).
|
184
178
|
arguments:
|
185
179
|
intersection:
|
186
|
-
|
187
|
-
type: integer
|
180
|
+
type: integer_list
|
188
181
|
description: |-
|
189
182
|
0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
|
190
183
|
Other value: Intersection number
|
191
184
|
range: "[0-255]"
|
192
185
|
status:
|
193
|
-
|
194
|
-
type: boolean
|
186
|
+
type: boolean_list
|
195
187
|
description: |-
|
196
188
|
False: Traffic Light Controller in dark mode
|
197
189
|
True: Traffic Light Controller not in dark mode
|
@@ -202,15 +194,13 @@ objects:
|
|
202
194
|
Signal timings is controlled manually by service personnel using the operating panel of the controller.
|
203
195
|
arguments:
|
204
196
|
intersection:
|
205
|
-
|
206
|
-
type: integer
|
197
|
+
type: integer_list
|
207
198
|
description: |-
|
208
199
|
0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
|
209
200
|
Other value: Intersection number
|
210
201
|
range: "[0-255]"
|
211
202
|
status:
|
212
|
-
|
213
|
-
type: boolean
|
203
|
+
type: boolean_list
|
214
204
|
description: |-
|
215
205
|
False: Manual control inactive
|
216
206
|
True: Manual control active
|
@@ -221,15 +211,13 @@ objects:
|
|
221
211
|
Usually only used in case normal detectors can't be used, e.g. during maintenance work.
|
222
212
|
arguments:
|
223
213
|
intersection:
|
224
|
-
|
225
|
-
type: integer
|
214
|
+
type: integer_list
|
226
215
|
description: |-
|
227
216
|
0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
|
228
217
|
Other value: Intersection number
|
229
218
|
range: "[0-255]"
|
230
219
|
status:
|
231
|
-
|
232
|
-
type: boolean
|
220
|
+
type: boolean_list
|
233
221
|
description: |-
|
234
222
|
False: Fixed time control inactive
|
235
223
|
True: Fixed time control active
|
@@ -240,15 +228,13 @@ objects:
|
|
240
228
|
Used to determine if the controller is operating independently or operating with other controllers (coordination).
|
241
229
|
arguments:
|
242
230
|
intersection:
|
243
|
-
|
244
|
-
type: integer
|
231
|
+
type: integer_list
|
245
232
|
description: |-
|
246
233
|
0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
|
247
234
|
Other value: Intersection number
|
248
235
|
range: "[0-255]"
|
249
236
|
status:
|
250
|
-
|
251
|
-
type: boolean
|
237
|
+
type: boolean_list
|
252
238
|
description: |-
|
253
239
|
False: Isolated control disabled
|
254
240
|
True: Isolated control enabled (Vehicle actuated control or Fixed time control)
|
@@ -259,15 +245,13 @@ objects:
|
|
259
245
|
Yellow flash may be used during a serious fault (depending on configuration) or maintenance work. It can also be manually set using M0001.
|
260
246
|
arguments:
|
261
247
|
intersection:
|
262
|
-
|
263
|
-
type: integer
|
248
|
+
type: integer_list
|
264
249
|
description: |-
|
265
250
|
0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
|
266
251
|
Other value: Intersection number
|
267
252
|
range: "[0-255]"
|
268
253
|
status:
|
269
|
-
|
270
|
-
type: boolean
|
254
|
+
type: boolean_list
|
271
255
|
description: |-
|
272
256
|
False: Yellow flash disabled
|
273
257
|
True: Yellow flash enabled
|
@@ -278,15 +262,13 @@ objects:
|
|
278
262
|
All red can be manually set using the controllers operating panel during maintenance work.
|
279
263
|
arguments:
|
280
264
|
intersection:
|
281
|
-
|
282
|
-
type: integer
|
265
|
+
type: integer_list
|
283
266
|
description: |-
|
284
267
|
0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
|
285
268
|
Other value: Intersection number
|
286
269
|
range: "[0-255]"
|
287
270
|
status:
|
288
|
-
|
289
|
-
type: boolean
|
271
|
+
type: boolean_list
|
290
272
|
description: |-
|
291
273
|
False: All red disabled
|
292
274
|
True: All red enabled
|
@@ -297,15 +279,13 @@ objects:
|
|
297
279
|
The "police key" is a external control switch present in some controllers that manually switches the controller to either dark mode or yellow flash.
|
298
280
|
arguments:
|
299
281
|
intersection:
|
300
|
-
|
301
|
-
type: integer
|
282
|
+
type: integer_list
|
302
283
|
description: |-
|
303
284
|
0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
|
304
285
|
Other value: Intersection number
|
305
286
|
range: "[0-255]"
|
306
287
|
status:
|
307
|
-
|
308
|
-
type: integer
|
288
|
+
type: integer_list
|
309
289
|
values:
|
310
290
|
0: disabled
|
311
291
|
1: dark mode
|
@@ -373,15 +353,13 @@ objects:
|
|
373
353
|
Can be used for the management system to check the current control mode (startup, normal, standby, failure, test).
|
374
354
|
arguments:
|
375
355
|
intersection:
|
376
|
-
|
377
|
-
type: integer
|
356
|
+
type: integer_list
|
378
357
|
description: |-
|
379
358
|
0: Not applicable (only one intersection exists or applicable for all intersection of the traffic light controller)
|
380
359
|
Other value: Intersection number
|
381
360
|
range: "[0-255]"
|
382
361
|
controlmode:
|
383
|
-
|
384
|
-
type: string
|
362
|
+
type: string_list
|
385
363
|
values:
|
386
364
|
startup: Startup mode
|
387
365
|
control: Normal control
|
@@ -397,7 +375,6 @@ objects:
|
|
397
375
|
detectorlogics:
|
398
376
|
type: string
|
399
377
|
description: Manually set detector logics (1/0) as text field
|
400
|
-
range: "[text]"
|
401
378
|
pattern: "^[01]*$"
|
402
379
|
S0091:
|
403
380
|
description: |-
|
@@ -437,7 +414,6 @@ objects:
|
|
437
414
|
status:
|
438
415
|
type: string
|
439
416
|
description: Manufacturer, product name and version of traffic light controller
|
440
|
-
range: "[text]"
|
441
417
|
S0096:
|
442
418
|
description: |-
|
443
419
|
Current date and time
|
@@ -477,29 +453,25 @@ objects:
|
|
477
453
|
Requires security code 2.
|
478
454
|
arguments:
|
479
455
|
status:
|
480
|
-
|
456
|
+
type: string_list
|
481
457
|
description: Set operating mode
|
482
|
-
type: string
|
483
458
|
values:
|
484
459
|
NormalControl: Normal Control
|
485
460
|
YellowFlash: Enables yellow flash
|
486
461
|
Dark: Enables dark mode
|
487
462
|
securityCode:
|
488
|
-
|
463
|
+
type: string_list
|
489
464
|
description: Security code 2
|
490
|
-
type: string
|
491
465
|
timeout:
|
492
|
-
|
466
|
+
type: integer_list
|
493
467
|
description: |-
|
494
468
|
Time in minutes until controller automatically reverts to previous functional position.
|
495
469
|
0=no automatic return
|
496
|
-
type: integer
|
497
470
|
min: 0
|
498
471
|
max: 1440
|
499
472
|
intersection:
|
500
|
-
|
473
|
+
type: integer_list
|
501
474
|
description: Intersection number
|
502
|
-
type: integer
|
503
475
|
min: 0
|
504
476
|
max: 255
|
505
477
|
command: setValue
|
@@ -519,7 +491,6 @@ objects:
|
|
519
491
|
securityCode:
|
520
492
|
type: string
|
521
493
|
description: Security code 2
|
522
|
-
range: "[text]"
|
523
494
|
timeplan:
|
524
495
|
type: integer
|
525
496
|
description: designation of time plan
|
@@ -540,7 +511,6 @@ objects:
|
|
540
511
|
securityCode:
|
541
512
|
type: string
|
542
513
|
description: Security code 2
|
543
|
-
range: "[text]"
|
544
514
|
traficsituation:
|
545
515
|
type: integer
|
546
516
|
description: designation of traficsituation
|
@@ -558,7 +528,6 @@ objects:
|
|
558
528
|
securityCode:
|
559
529
|
type: string
|
560
530
|
description: Security code 2
|
561
|
-
range: "[text]"
|
562
531
|
command: setRestart
|
563
532
|
M0005:
|
564
533
|
description: |-
|
@@ -575,7 +544,6 @@ objects:
|
|
575
544
|
securityCode:
|
576
545
|
type: string
|
577
546
|
description: Security code 2
|
578
|
-
range: "[text]"
|
579
547
|
emergencyroute:
|
580
548
|
type: integer
|
581
549
|
description: Number of emergency route
|
@@ -598,7 +566,6 @@ objects:
|
|
598
566
|
securityCode:
|
599
567
|
type: string
|
600
568
|
description: Security code 2
|
601
|
-
range: "[text]"
|
602
569
|
input:
|
603
570
|
type: integer
|
604
571
|
description: Number of Input
|
@@ -619,7 +586,6 @@ objects:
|
|
619
586
|
securityCode:
|
620
587
|
type: string
|
621
588
|
description: Security code 2
|
622
|
-
range: "[text]"
|
623
589
|
command: setFixedTime
|
624
590
|
M0012:
|
625
591
|
description: |-
|
@@ -656,11 +622,9 @@ objects:
|
|
656
622
|
"5,4143,65:22,1,4"
|
657
623
|
|
658
624
|
Such a message would order signal group 6,7,10,17,22 to green and signal group 5,11,24 to red
|
659
|
-
range: "[text]"
|
660
625
|
securityCode:
|
661
626
|
type: string
|
662
627
|
description: Security code 2
|
663
|
-
range: "[text]"
|
664
628
|
command: setStart
|
665
629
|
M0013:
|
666
630
|
description: |-
|
@@ -691,11 +655,9 @@ objects:
|
|
691
655
|
"5,4143:65:22,1,4"
|
692
656
|
|
693
657
|
Such a message would activate input 6,7,10,17,22 and deactivate input 5,11,24
|
694
|
-
range: "[text]"
|
695
658
|
securityCode:
|
696
659
|
type: string
|
697
660
|
description: Security code 2
|
698
|
-
range: "[text]"
|
699
661
|
command: setInput
|
700
662
|
M0019:
|
701
663
|
description: |-
|
@@ -712,7 +674,6 @@ objects:
|
|
712
674
|
securityCode:
|
713
675
|
type: string
|
714
676
|
description: Security code 2
|
715
|
-
range: "[text]"
|
716
677
|
input:
|
717
678
|
type: integer
|
718
679
|
description: Number of Input
|
@@ -737,11 +698,9 @@ objects:
|
|
737
698
|
oldSecurityCode:
|
738
699
|
type: string
|
739
700
|
description: Previous security code
|
740
|
-
range: "[text]"
|
741
701
|
newSecurityCode:
|
742
702
|
type: string
|
743
703
|
description: New security code
|
744
|
-
range: "[text]"
|
745
704
|
command: setSecurityCode
|
746
705
|
M0104:
|
747
706
|
description: |-
|
@@ -752,7 +711,6 @@ objects:
|
|
752
711
|
securityCode:
|
753
712
|
type: string
|
754
713
|
description: Security code 1
|
755
|
-
range: "[text]"
|
756
714
|
year:
|
757
715
|
type: integer
|
758
716
|
description: |-
|
@@ -859,7 +817,6 @@ objects:
|
|
859
817
|
securityCode:
|
860
818
|
type: string
|
861
819
|
description: Security code 2
|
862
|
-
range: "[text]"
|
863
820
|
command: setStart
|
864
821
|
M0011:
|
865
822
|
description: |-
|
@@ -876,7 +833,6 @@ objects:
|
|
876
833
|
securityCode:
|
877
834
|
type: string
|
878
835
|
description: Security code 2
|
879
|
-
range: "[text]"
|
880
836
|
command: setStop
|
881
837
|
Detector logic:
|
882
838
|
description:
|
@@ -1050,7 +1006,6 @@ objects:
|
|
1050
1006
|
securityCode:
|
1051
1007
|
type: string
|
1052
1008
|
description: Security code 2
|
1053
|
-
range: "[text]"
|
1054
1009
|
mode:
|
1055
1010
|
type: boolean
|
1056
1011
|
description: |-
|
@@ -0,0 +1,111 @@
|
|
1
|
+
{
|
2
|
+
"allOf" : [
|
3
|
+
{
|
4
|
+
"description" : "Serious detector error (hardware).\nIs a “major fault” defined according to 3.8 i EN12675 which causes the controller to switch to a “failure mode” according to 3.6 in EN12675.",
|
5
|
+
"properties" : {
|
6
|
+
"n" : {
|
7
|
+
"enum" : [
|
8
|
+
"detector",
|
9
|
+
"errormode",
|
10
|
+
"manual",
|
11
|
+
"type"
|
12
|
+
]
|
13
|
+
}
|
14
|
+
}
|
15
|
+
},
|
16
|
+
{
|
17
|
+
"if" : {
|
18
|
+
"required" : [
|
19
|
+
"n"
|
20
|
+
],
|
21
|
+
"properties" : {
|
22
|
+
"n" : {
|
23
|
+
"const" : "detector"
|
24
|
+
}
|
25
|
+
}
|
26
|
+
},
|
27
|
+
"then" : {
|
28
|
+
"properties" : {
|
29
|
+
"v" : {
|
30
|
+
"description" : "Designation of the detector (hardware)",
|
31
|
+
"type" : "string"
|
32
|
+
}
|
33
|
+
}
|
34
|
+
}
|
35
|
+
},
|
36
|
+
{
|
37
|
+
"if" : {
|
38
|
+
"required" : [
|
39
|
+
"n"
|
40
|
+
],
|
41
|
+
"properties" : {
|
42
|
+
"n" : {
|
43
|
+
"const" : "type"
|
44
|
+
}
|
45
|
+
}
|
46
|
+
},
|
47
|
+
"then" : {
|
48
|
+
"properties" : {
|
49
|
+
"v" : {
|
50
|
+
"description" : "Type of detector.",
|
51
|
+
"type" : "string",
|
52
|
+
"enum" : [
|
53
|
+
"input",
|
54
|
+
"loop"
|
55
|
+
]
|
56
|
+
}
|
57
|
+
}
|
58
|
+
}
|
59
|
+
},
|
60
|
+
{
|
61
|
+
"if" : {
|
62
|
+
"required" : [
|
63
|
+
"n"
|
64
|
+
],
|
65
|
+
"properties" : {
|
66
|
+
"n" : {
|
67
|
+
"const" : "errormode"
|
68
|
+
}
|
69
|
+
}
|
70
|
+
},
|
71
|
+
"then" : {
|
72
|
+
"properties" : {
|
73
|
+
"v" : {
|
74
|
+
"description" : "Detector forced on/off while detector error",
|
75
|
+
"type" : "string",
|
76
|
+
"enum" : [
|
77
|
+
"off",
|
78
|
+
"on"
|
79
|
+
]
|
80
|
+
}
|
81
|
+
}
|
82
|
+
}
|
83
|
+
},
|
84
|
+
{
|
85
|
+
"if" : {
|
86
|
+
"required" : [
|
87
|
+
"n"
|
88
|
+
],
|
89
|
+
"properties" : {
|
90
|
+
"n" : {
|
91
|
+
"const" : "manual"
|
92
|
+
}
|
93
|
+
}
|
94
|
+
},
|
95
|
+
"then" : {
|
96
|
+
"properties" : {
|
97
|
+
"v" : {
|
98
|
+
"allOf" : [
|
99
|
+
{
|
100
|
+
"description" : "Manually controlled detector logic (True/False)"
|
101
|
+
},
|
102
|
+
{
|
103
|
+
"$ref" : "../../../core/3.1.1/definitions.json#/boolean"
|
104
|
+
}
|
105
|
+
]
|
106
|
+
}
|
107
|
+
}
|
108
|
+
}
|
109
|
+
}
|
110
|
+
]
|
111
|
+
}
|
@@ -0,0 +1,137 @@
|
|
1
|
+
{
|
2
|
+
"allOf" : [
|
3
|
+
{
|
4
|
+
"description" : "Serious detector error (logic error).\nFor instance; detector continuously on or off during an extended time.\nIs a “major fault” defined according to 3.8 i EN12675 which causes the controller to switch to a “failure mode” according to 3.6 in EN12675",
|
5
|
+
"properties" : {
|
6
|
+
"n" : {
|
7
|
+
"enum" : [
|
8
|
+
"detector",
|
9
|
+
"errormode",
|
10
|
+
"logicerror",
|
11
|
+
"manual",
|
12
|
+
"type"
|
13
|
+
]
|
14
|
+
}
|
15
|
+
}
|
16
|
+
},
|
17
|
+
{
|
18
|
+
"if" : {
|
19
|
+
"required" : [
|
20
|
+
"n"
|
21
|
+
],
|
22
|
+
"properties" : {
|
23
|
+
"n" : {
|
24
|
+
"const" : "detector"
|
25
|
+
}
|
26
|
+
}
|
27
|
+
},
|
28
|
+
"then" : {
|
29
|
+
"properties" : {
|
30
|
+
"v" : {
|
31
|
+
"description" : "Designation of the detector (hardware)",
|
32
|
+
"type" : "string"
|
33
|
+
}
|
34
|
+
}
|
35
|
+
}
|
36
|
+
},
|
37
|
+
{
|
38
|
+
"if" : {
|
39
|
+
"required" : [
|
40
|
+
"n"
|
41
|
+
],
|
42
|
+
"properties" : {
|
43
|
+
"n" : {
|
44
|
+
"const" : "type"
|
45
|
+
}
|
46
|
+
}
|
47
|
+
},
|
48
|
+
"then" : {
|
49
|
+
"properties" : {
|
50
|
+
"v" : {
|
51
|
+
"description" : "Type of detector.",
|
52
|
+
"type" : "string",
|
53
|
+
"enum" : [
|
54
|
+
"input",
|
55
|
+
"loop"
|
56
|
+
]
|
57
|
+
}
|
58
|
+
}
|
59
|
+
}
|
60
|
+
},
|
61
|
+
{
|
62
|
+
"if" : {
|
63
|
+
"required" : [
|
64
|
+
"n"
|
65
|
+
],
|
66
|
+
"properties" : {
|
67
|
+
"n" : {
|
68
|
+
"const" : "errormode"
|
69
|
+
}
|
70
|
+
}
|
71
|
+
},
|
72
|
+
"then" : {
|
73
|
+
"properties" : {
|
74
|
+
"v" : {
|
75
|
+
"description" : "Detector forced on/off while detector error",
|
76
|
+
"type" : "string",
|
77
|
+
"enum" : [
|
78
|
+
"off",
|
79
|
+
"on"
|
80
|
+
]
|
81
|
+
}
|
82
|
+
}
|
83
|
+
}
|
84
|
+
},
|
85
|
+
{
|
86
|
+
"if" : {
|
87
|
+
"required" : [
|
88
|
+
"n"
|
89
|
+
],
|
90
|
+
"properties" : {
|
91
|
+
"n" : {
|
92
|
+
"const" : "manual"
|
93
|
+
}
|
94
|
+
}
|
95
|
+
},
|
96
|
+
"then" : {
|
97
|
+
"properties" : {
|
98
|
+
"v" : {
|
99
|
+
"allOf" : [
|
100
|
+
{
|
101
|
+
"description" : "Manually controlled detector logic (True/False)"
|
102
|
+
},
|
103
|
+
{
|
104
|
+
"$ref" : "../../../core/3.1.1/definitions.json#/boolean"
|
105
|
+
}
|
106
|
+
]
|
107
|
+
}
|
108
|
+
}
|
109
|
+
}
|
110
|
+
},
|
111
|
+
{
|
112
|
+
"if" : {
|
113
|
+
"required" : [
|
114
|
+
"n"
|
115
|
+
],
|
116
|
+
"properties" : {
|
117
|
+
"n" : {
|
118
|
+
"const" : "logicerror"
|
119
|
+
}
|
120
|
+
}
|
121
|
+
},
|
122
|
+
"then" : {
|
123
|
+
"properties" : {
|
124
|
+
"v" : {
|
125
|
+
"description" : "Type of logic error",
|
126
|
+
"type" : "string",
|
127
|
+
"enum" : [
|
128
|
+
"always_off",
|
129
|
+
"always_on",
|
130
|
+
"intermittent"
|
131
|
+
]
|
132
|
+
}
|
133
|
+
}
|
134
|
+
}
|
135
|
+
}
|
136
|
+
]
|
137
|
+
}
|
@@ -16,7 +16,9 @@
|
|
16
16
|
"A0201",
|
17
17
|
"A0202",
|
18
18
|
"A0301",
|
19
|
-
"A0302"
|
19
|
+
"A0302",
|
20
|
+
"A0303",
|
21
|
+
"A0304"
|
20
22
|
]
|
21
23
|
},
|
22
24
|
"rvs" : {
|
@@ -246,6 +248,36 @@
|
|
246
248
|
"then" : {
|
247
249
|
"$ref" : "A0302.json"
|
248
250
|
}
|
251
|
+
},
|
252
|
+
{
|
253
|
+
"if" : {
|
254
|
+
"required" : [
|
255
|
+
"aCId"
|
256
|
+
],
|
257
|
+
"properties" : {
|
258
|
+
"aCId" : {
|
259
|
+
"const" : "A0303"
|
260
|
+
}
|
261
|
+
}
|
262
|
+
},
|
263
|
+
"then" : {
|
264
|
+
"$ref" : "A0303.json"
|
265
|
+
}
|
266
|
+
},
|
267
|
+
{
|
268
|
+
"if" : {
|
269
|
+
"required" : [
|
270
|
+
"aCId"
|
271
|
+
],
|
272
|
+
"properties" : {
|
273
|
+
"aCId" : {
|
274
|
+
"const" : "A0304"
|
275
|
+
}
|
276
|
+
}
|
277
|
+
},
|
278
|
+
"then" : {
|
279
|
+
"$ref" : "A0304.json"
|
280
|
+
}
|
249
281
|
}
|
250
282
|
]
|
251
283
|
}
|
@@ -88,7 +88,7 @@
|
|
88
88
|
"description" : "Time in minutes until controller automatically reverts to previous functional position.\n0=no automatic return"
|
89
89
|
},
|
90
90
|
{
|
91
|
-
"$ref" : "../../../core/3.1.1/definitions.json#/
|
91
|
+
"$ref" : "../../../core/3.1.1/definitions.json#/integer"
|
92
92
|
}
|
93
93
|
]
|
94
94
|
}
|
@@ -111,7 +111,7 @@
|
|
111
111
|
"v" : {
|
112
112
|
"allOf" : [
|
113
113
|
{
|
114
|
-
"description" : "
|
114
|
+
"description" : "Comma separated list of intersections which the status relates to, e.g. “1,2”.\nUse “0” for all intersections of the TLC."
|
115
115
|
},
|
116
116
|
{
|
117
117
|
"$ref" : "../../../core/3.1.1/definitions.json#/integer_list"
|
@@ -31,7 +31,7 @@
|
|
31
31
|
"v" : {
|
32
32
|
"allOf" : [
|
33
33
|
{
|
34
|
-
"description" : "False:
|
34
|
+
"description" : "False: Deactivate emergency route\nTrue: Activate emergency route"
|
35
35
|
},
|
36
36
|
{
|
37
37
|
"$ref" : "../../../core/3.1.1/definitions.json#/boolean"
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"allOf" : [
|
3
3
|
{
|
4
|
-
"description" : "Activate a series of inputs
|
4
|
+
"description" : "Activate a series of inputs\n\nSet given inputs (1-255) of the controllers general purpose I/O to either true or false. This command was introduced due to coordination requirements needing to set many inputs to true/false at the same time and M0006 being to slow to send a message for each input individually. With this command many inputs can be set to true/false at the same time using a single command message. It can be used for all types of input where the traffic light controller must react to external control. Typical usages are bus priority, coordination between traffic controllers, external control systems, and much more.\n\nRequires security code 2.\n\nThe parameter ‘status’ sets/unsets a block of 16 inputs at a time. It can be repeated to set several blocks of 16 inputs. Values are separated with comma. Blocks are separated with semicolon. Format: [Offset];[Bits to set];[Bits to unset];…\n\n- ‘Offset’ defines where the 16 inputs starts from\n- ‘Bits to set’ defines which bit(s) to set. ‘0’ if unsed\n- ‘Bits to unset’ defines which bit(s) to unset. ‘0’ if unused\n\nExample 1: “3,4134,65” sets input 4,5,8,15 and unsets 3,9 - Input starts from no. 5 - “4134” is 1 0000 0010 0110 in binary, but since input starts from 3, it is shifted 3 bits, e.g. 1000 0001 0011 0000 which are bits 4,5,8,15 - “65” is 100 0001 in binary, but since input starts from 3, it is shifted 3 bits, e.g. 10 0000 1000 which are bits 3,9\n\nExample 2: “12,1,4” sets input 12 and unsets 14 - Input starts from no. 12 - “1” is 1 in binary, but since input starts at 12 it is shifted 12 bits, e.g. 1 0000 0000 0000, which is bit 12 - “4” is 100 in binary, but since input starts at 12 it is shifted 12 bits, e.g. 100 0000 0000 0000, which is bit 14\n\nAnd both these examples could be sent in the same message as: “3,4143,65;12,1,4”\n\nSuch a message would set input 4,5,8,12,15 and unset input 3,9,14\n\nExample 3: “0,1,2” sets input 0 and unsets 1 - Input starts from 0 - “1” is 1 in binary, which is bit 0 - “2” is 10 in binary, which is bit 1",
|
5
5
|
"properties" : {
|
6
6
|
"n" : {
|
7
7
|
"enum" : [
|