Add alignment state indicator and pluggable data sources

- AlignmentThresholds dataclass + VisionEngine.__init__ for injection
- alignment_state computed per snapshot (ready/aligning/fault)
- MonitorPlot circle/vector/legend driven by state color
- Status dot + label moved into POSITION VISUALIZATION panel header
- CsvSessionSource + DemoSource pluggable DataSource layer
- Synthetic DATA/ready/ and DATA/aligning/ sessions for visual testing
- Fix CAM 3 label placement (below circle, not above)
This commit is contained in:
Your Name
2026-05-26 14:01:47 -07:00
parent b9adc7c0b8
commit 02327a7a21
60 changed files with 29018 additions and 71 deletions
+468
View File
@@ -0,0 +1,468 @@
# file,S10702P0.CSV
# source,BOARD_LOCAL
# spi,SPI1
# tick_ms,227139
# bit,4
# edge_mode,ORDINARY
# points,460
x,y
172,43
173,43
175,43
163,44
164,44
165,44
166,44
167,44
168,44
169,44
170,44
171,44
172,44
173,44
174,44
175,44
176,44
177,44
178,44
179,44
180,44
181,44
182,44
183,44
184,44
185,44
187,44
188,44
190,44
154,45
156,45
157,45
158,45
159,45
160,45
161,45
162,45
163,45
164,45
165,45
166,45
167,45
168,45
169,45
170,45
171,45
172,45
173,45
174,45
175,45
176,45
177,45
178,45
179,45
180,45
181,45
182,45
183,45
184,45
185,45
186,45
187,45
188,45
189,45
190,45
191,45
192,45
193,45
194,45
195,45
196,45
197,45
150,46
151,46
152,46
153,46
154,46
155,46
156,46
157,46
158,46
159,46
160,46
161,46
162,46
163,46
164,46
165,46
166,46
167,46
185,46
187,46
188,46
189,46
190,46
191,46
192,46
193,46
194,46
195,46
196,46
197,46
198,46
199,46
200,46
201,46
145,47
146,47
147,47
148,47
149,47
150,47
151,47
152,47
153,47
154,47
155,47
156,47
157,47
160,47
195,47
196,47
197,47
198,47
199,47
200,47
201,47
202,47
203,47
204,47
205,47
207,47
143,48
144,48
145,48
146,48
147,48
148,48
149,48
150,48
151,48
153,48
200,48
201,48
202,48
203,48
204,48
205,48
206,48
207,48
208,48
209,48
210,48
139,49
140,49
141,49
142,49
143,49
144,49
145,49
146,49
147,49
148,49
205,49
206,49
207,49
208,49
209,49
210,49
211,49
212,49
213,49
136,50
137,50
138,50
139,50
140,50
141,50
142,50
143,50
144,50
208,50
209,50
210,50
211,50
212,50
213,50
214,50
215,50
216,50
134,51
135,51
136,51
137,51
138,51
139,51
212,51
213,51
214,51
215,51
216,51
217,51
218,51
219,51
131,52
132,52
133,52
134,52
135,52
136,52
137,52
214,52
215,52
216,52
217,52
218,52
219,52
220,52
221,52
128,53
129,53
130,53
131,53
132,53
133,53
217,53
218,53
219,53
220,53
221,53
222,53
223,53
126,54
127,54
128,54
129,54
130,54
131,54
221,54
222,54
223,54
224,54
225,54
226,54
124,55
125,55
126,55
127,55
128,55
129,55
223,55
224,55
225,55
226,55
227,55
123,56
124,56
125,56
126,56
226,56
227,56
228,56
229,56
230,56
121,57
122,57
123,57
124,57
228,57
229,57
230,57
231,57
233,57
118,58
119,58
120,58
121,58
122,58
123,58
229,58
230,58
231,58
232,58
233,58
234,58
116,59
117,59
118,59
119,59
120,59
231,59
232,59
233,59
234,59
235,59
115,60
116,60
117,60
118,60
234,60
235,60
236,60
237,60
113,61
114,61
115,61
116,61
117,61
235,61
236,61
237,61
238,61
239,61
112,62
113,62
114,62
115,62
237,62
238,62
239,62
240,62
241,62
110,63
111,63
112,63
113,63
114,63
239,63
240,63
241,63
242,63
109,64
110,64
111,64
112,64
240,64
241,64
242,64
243,64
244,64
107,65
108,65
109,65
110,65
242,65
243,65
244,65
245,65
105,66
106,66
107,66
108,66
244,66
245,66
246,66
247,66
104,67
105,67
106,67
107,67
245,67
246,67
247,67
103,68
104,68
105,68
106,68
246,68
247,68
248,68
249,68
101,69
102,69
103,69
104,69
105,69
248,69
249,69
250,69
100,70
101,70
102,70
103,70
249,70
250,70
251,70
252,70
99,71
100,71
101,71
102,71
250,71
251,71
252,71
253,71
98,72
99,72
100,72
101,72
252,72
253,72
254,72
255,72
97,73
98,73
99,73
253,73
254,73
255,73
96,74
97,74
98,74
254,74
255,74
256,74
257,74
94,75
95,75
96,75
97,75
255,75
256,75
257,75
258,75
93,76
94,76
95,76
256,76
257,76
258,76
259,76
260,76
92,77
93,77
94,77
257,77
258,77
259,77
260,77
91,78
92,78
93,78
94,78
259,78
260,78
261,78
90,79
91,79
92,79
93,79
259,79
260,79
261,79
262,79
90,80
91,80
260,80
261,80
262,80
91,81
1 # file S10702P0.CSV
2 # source BOARD_LOCAL
3 # spi SPI1
4 # tick_ms 227139
5 # bit 4
6 # edge_mode ORDINARY
7 # points 460
8 x y
9 172 43
10 173 43
11 175 43
12 163 44
13 164 44
14 165 44
15 166 44
16 167 44
17 168 44
18 169 44
19 170 44
20 171 44
21 172 44
22 173 44
23 174 44
24 175 44
25 176 44
26 177 44
27 178 44
28 179 44
29 180 44
30 181 44
31 182 44
32 183 44
33 184 44
34 185 44
35 187 44
36 188 44
37 190 44
38 154 45
39 156 45
40 157 45
41 158 45
42 159 45
43 160 45
44 161 45
45 162 45
46 163 45
47 164 45
48 165 45
49 166 45
50 167 45
51 168 45
52 169 45
53 170 45
54 171 45
55 172 45
56 173 45
57 174 45
58 175 45
59 176 45
60 177 45
61 178 45
62 179 45
63 180 45
64 181 45
65 182 45
66 183 45
67 184 45
68 185 45
69 186 45
70 187 45
71 188 45
72 189 45
73 190 45
74 191 45
75 192 45
76 193 45
77 194 45
78 195 45
79 196 45
80 197 45
81 150 46
82 151 46
83 152 46
84 153 46
85 154 46
86 155 46
87 156 46
88 157 46
89 158 46
90 159 46
91 160 46
92 161 46
93 162 46
94 163 46
95 164 46
96 165 46
97 166 46
98 167 46
99 185 46
100 187 46
101 188 46
102 189 46
103 190 46
104 191 46
105 192 46
106 193 46
107 194 46
108 195 46
109 196 46
110 197 46
111 198 46
112 199 46
113 200 46
114 201 46
115 145 47
116 146 47
117 147 47
118 148 47
119 149 47
120 150 47
121 151 47
122 152 47
123 153 47
124 154 47
125 155 47
126 156 47
127 157 47
128 160 47
129 195 47
130 196 47
131 197 47
132 198 47
133 199 47
134 200 47
135 201 47
136 202 47
137 203 47
138 204 47
139 205 47
140 207 47
141 143 48
142 144 48
143 145 48
144 146 48
145 147 48
146 148 48
147 149 48
148 150 48
149 151 48
150 153 48
151 200 48
152 201 48
153 202 48
154 203 48
155 204 48
156 205 48
157 206 48
158 207 48
159 208 48
160 209 48
161 210 48
162 139 49
163 140 49
164 141 49
165 142 49
166 143 49
167 144 49
168 145 49
169 146 49
170 147 49
171 148 49
172 205 49
173 206 49
174 207 49
175 208 49
176 209 49
177 210 49
178 211 49
179 212 49
180 213 49
181 136 50
182 137 50
183 138 50
184 139 50
185 140 50
186 141 50
187 142 50
188 143 50
189 144 50
190 208 50
191 209 50
192 210 50
193 211 50
194 212 50
195 213 50
196 214 50
197 215 50
198 216 50
199 134 51
200 135 51
201 136 51
202 137 51
203 138 51
204 139 51
205 212 51
206 213 51
207 214 51
208 215 51
209 216 51
210 217 51
211 218 51
212 219 51
213 131 52
214 132 52
215 133 52
216 134 52
217 135 52
218 136 52
219 137 52
220 214 52
221 215 52
222 216 52
223 217 52
224 218 52
225 219 52
226 220 52
227 221 52
228 128 53
229 129 53
230 130 53
231 131 53
232 132 53
233 133 53
234 217 53
235 218 53
236 219 53
237 220 53
238 221 53
239 222 53
240 223 53
241 126 54
242 127 54
243 128 54
244 129 54
245 130 54
246 131 54
247 221 54
248 222 54
249 223 54
250 224 54
251 225 54
252 226 54
253 124 55
254 125 55
255 126 55
256 127 55
257 128 55
258 129 55
259 223 55
260 224 55
261 225 55
262 226 55
263 227 55
264 123 56
265 124 56
266 125 56
267 126 56
268 226 56
269 227 56
270 228 56
271 229 56
272 230 56
273 121 57
274 122 57
275 123 57
276 124 57
277 228 57
278 229 57
279 230 57
280 231 57
281 233 57
282 118 58
283 119 58
284 120 58
285 121 58
286 122 58
287 123 58
288 229 58
289 230 58
290 231 58
291 232 58
292 233 58
293 234 58
294 116 59
295 117 59
296 118 59
297 119 59
298 120 59
299 231 59
300 232 59
301 233 59
302 234 59
303 235 59
304 115 60
305 116 60
306 117 60
307 118 60
308 234 60
309 235 60
310 236 60
311 237 60
312 113 61
313 114 61
314 115 61
315 116 61
316 117 61
317 235 61
318 236 61
319 237 61
320 238 61
321 239 61
322 112 62
323 113 62
324 114 62
325 115 62
326 237 62
327 238 62
328 239 62
329 240 62
330 241 62
331 110 63
332 111 63
333 112 63
334 113 63
335 114 63
336 239 63
337 240 63
338 241 63
339 242 63
340 109 64
341 110 64
342 111 64
343 112 64
344 240 64
345 241 64
346 242 64
347 243 64
348 244 64
349 107 65
350 108 65
351 109 65
352 110 65
353 242 65
354 243 65
355 244 65
356 245 65
357 105 66
358 106 66
359 107 66
360 108 66
361 244 66
362 245 66
363 246 66
364 247 66
365 104 67
366 105 67
367 106 67
368 107 67
369 245 67
370 246 67
371 247 67
372 103 68
373 104 68
374 105 68
375 106 68
376 246 68
377 247 68
378 248 68
379 249 68
380 101 69
381 102 69
382 103 69
383 104 69
384 105 69
385 248 69
386 249 69
387 250 69
388 100 70
389 101 70
390 102 70
391 103 70
392 249 70
393 250 70
394 251 70
395 252 70
396 99 71
397 100 71
398 101 71
399 102 71
400 250 71
401 251 71
402 252 71
403 253 71
404 98 72
405 99 72
406 100 72
407 101 72
408 252 72
409 253 72
410 254 72
411 255 72
412 97 73
413 98 73
414 99 73
415 253 73
416 254 73
417 255 73
418 96 74
419 97 74
420 98 74
421 254 74
422 255 74
423 256 74
424 257 74
425 94 75
426 95 75
427 96 75
428 97 75
429 255 75
430 256 75
431 257 75
432 258 75
433 93 76
434 94 76
435 95 76
436 256 76
437 257 76
438 258 76
439 259 76
440 260 76
441 92 77
442 93 77
443 94 77
444 257 77
445 258 77
446 259 77
447 260 77
448 91 78
449 92 78
450 93 78
451 94 78
452 259 78
453 260 78
454 261 78
455 90 79
456 91 79
457 92 79
458 93 79
459 259 79
460 260 79
461 261 79
462 262 79
463 90 80
464 91 80
465 260 80
466 261 80
467 262 80
468 91 81