Files
grabowski 2a3f28001c Lamp testbench in Rust around the HPCS 6500
lampbench station / export / label / tm30 / calibrate replace the Python
lamp_station.py, lamp_export.py, label_printer.py, tm30.py and
calibration.py that lived in HPCS6500-py. The driver is a submodule
(HPCS6500/, like mppt-testbench). Workspace crates: tm30 (TM-30-18 port of
colour-science 0.4.7), brother-ql (raster protocol, byte-identical to
brother_ql) and lamp-label (QR + ID labels for the QL-820NWB).

Bundles are byte-identical to lamp_export.py's (golden tests); the station
runs end to end in a test against the simulated instrument.
2026-10-22 17:26:14 +07:00

403 lines
8.3 KiB
JSON

{
"name": "illuminant_HP5",
"source": "colour.SDS_ILLUMINANTS['HP5'] (380.0, 780.0, 5.0)",
"generator": "crates/tm30/tools/golden.py (tm30.py + colour-science 0.4.7, numpy 2.5.1)",
"wavelengths": [
380.0,
385.0,
390.0,
395.0,
400.0,
405.0,
410.0,
415.0,
420.0,
425.0,
430.0,
435.0,
440.0,
445.0,
450.0,
455.0,
460.0,
465.0,
470.0,
475.0,
480.0,
485.0,
490.0,
495.0,
500.0,
505.0,
510.0,
515.0,
520.0,
525.0,
530.0,
535.0,
540.0,
545.0,
550.0,
555.0,
560.0,
565.0,
570.0,
575.0,
580.0,
585.0,
590.0,
595.0,
600.0,
605.0,
610.0,
615.0,
620.0,
625.0,
630.0,
635.0,
640.0,
645.0,
650.0,
655.0,
660.0,
665.0,
670.0,
675.0,
680.0,
685.0,
690.0,
695.0,
700.0,
705.0,
710.0,
715.0,
720.0,
725.0,
730.0,
735.0,
740.0,
745.0,
750.0,
755.0,
760.0,
765.0,
770.0,
775.0,
780.0
],
"values": [
0.34,
7.11,
11.49,
14.97,
14.95,
29.14,
38.08,
51.56,
62.56,
55.61,
41.98,
50.02,
42.14,
39.04,
40.52,
45.29,
51.01,
49.18,
49.05,
46.12,
45.73,
39.46,
44.39,
46.14,
49.54,
59.76,
48.47,
48.38,
48.7,
44.25,
54.42,
128.93,
81.26,
67.36,
48.48,
51.41,
48.88,
68.52,
80.85,
65.96,
59.43,
67.57,
128.34,
131.85,
101.7,
77.05,
66.27,
77.09,
60.51,
65.23,
57.86,
56.2,
54.32,
56.34,
45.74,
50.79,
56.66,
51.99,
84.31,
47.48,
47.46,
61.78,
34.51,
38.74,
30.98,
25.45,
22.88,
20.82,
21.05,
20.81,
18.69,
17.54,
19.58,
16.42,
23.77,
35.39,
21.37,
34.58,
30.21,
19.71,
15.61
],
"expected": {
"Rf": 90.14162383066547,
"Rg": 97.45299607385583,
"CCT_K": 4041.0695415708938,
"Duv": -0.0016859381838345406,
"bins": [
{
"bin": 1,
"ref_a": 21.51839208880925,
"ref_b": 5.027463531397327,
"test_a": 19.557943760881468,
"test_b": 4.566125762494176,
"ref_a_norm": 0.9737760256595103,
"ref_b_norm": 0.2275087951064062,
"test_a_norm": 0.8850594722385345,
"test_b_norm": 0.20663178639520396,
"Rcs_pct": -9.108479207560185,
"Rhs": -0.0031681218677379747,
"Rf_h": 85.41027815028502
},
{
"bin": 2,
"ref_a": 20.628703529241076,
"ref_b": 14.3980947586504,
"test_a": 18.786672157466054,
"test_b": 14.823814530446937,
"ref_a_norm": 0.8200154638790786,
"ref_b_norm": 0.5723413657942081,
"test_a_norm": 0.7467925292596155,
"test_b_norm": 0.5892642323067542,
"Rcs_pct": -5.148080416796494,
"Rhs": 0.05475133210714862,
"Rf_h": 87.09813417407997
},
{
"bin": 3,
"ref_a": 14.619607852756078,
"ref_b": 22.31178929099372,
"test_a": 12.494009760077494,
"test_b": 22.98537728410452,
"ref_a_norm": 0.5480666239758437,
"ref_b_norm": 0.8364346810622579,
"test_a_norm": 0.46838121911977404,
"test_b_norm": 0.8616864594309441,
"Rcs_pct": -2.327475257398671,
"Rhs": 0.08028512907429794,
"Rf_h": 84.68871922395988
},
{
"bin": 4,
"ref_a": 3.755431696033001,
"ref_b": 22.130790146253307,
"test_a": 2.438430648722726,
"test_b": 23.018149852315418,
"ref_a_norm": 0.16730094790554698,
"ref_b_norm": 0.9859058742242615,
"test_a_norm": 0.10862979064808559,
"test_b_norm": 1.025436914054968,
"Rcs_pct": 2.7325287022573788,
"Rhs": 0.06525593071254625,
"Rf_h": 88.98643869714736
},
{
"bin": 5,
"ref_a": -2.223250264580545,
"ref_b": 19.119793329480082,
"test_a": -3.207286507470118,
"test_b": 20.038181058260477,
"ref_a_norm": -0.11550180554239632,
"ref_b_norm": 0.9933072701417455,
"test_a_norm": -0.16662423857822248,
"test_b_norm": 1.0410191461064287,
"Rcs_pct": 5.676859756979328,
"Rhs": 0.040832004573994496,
"Rf_h": 90.60719558341569
},
{
"bin": 6,
"ref_a": -11.166365768161649,
"ref_b": 17.13630533917806,
"test_a": -11.435449201488725,
"test_b": 17.888711325287684,
"ref_a_norm": -0.5459423664649852,
"ref_b_norm": 0.8378227333383906,
"test_a_norm": -0.559098307208568,
"test_b_norm": 0.8746091250013188,
"Rcs_pct": 3.7895815878488848,
"Rhs": -0.009498659238581222,
"Rf_h": 94.00578682003848
},
{
"bin": 7,
"ref_a": -18.244977932013246,
"ref_b": 11.196364964855587,
"test_a": -17.99657701454371,
"test_b": 12.069728864700725,
"ref_a_norm": -0.8523105866747943,
"ref_b_norm": 0.5230360062577603,
"test_a_norm": -0.8407065862485984,
"test_b_norm": 0.5638350305498909,
"Rcs_pct": 1.3018349697423752,
"Rhs": -0.04036998613124123,
"Rf_h": 93.56448395243272
},
{
"bin": 8,
"ref_a": -22.82118084698473,
"ref_b": 3.5147058947587704,
"test_a": -22.27475128702764,
"test_b": 4.246609002415317,
"ref_a_norm": -0.988347244496596,
"ref_b_norm": 0.1522160448046993,
"test_a_norm": -0.9646822924717128,
"test_b_norm": 0.18391354654841033,
"Rcs_pct": -1.7026360785166708,
"Rhs": -0.03570524624681822,
"Rf_h": 93.55872747085576
},
{
"bin": 9,
"ref_a": -19.360802148248276,
"ref_b": -2.1917787547514487,
"test_a": -18.90392850305898,
"test_b": -1.589704152322095,
"ref_a_norm": -0.9936530266430313,
"ref_b_norm": -0.11248850004841975,
"test_a_norm": -0.9702049341074206,
"test_b_norm": -0.08158826944909224,
"Rcs_pct": -2.902587995045527,
"Rhs": -0.025731995409449638,
"Rf_h": 94.31147315783147
},
{
"bin": 10,
"ref_a": -20.109281466228556,
"ref_b": -11.334832445142103,
"test_a": -18.947425995491507,
"test_b": -11.070813968902277,
"ref_a_norm": -0.8711427556033304,
"ref_b_norm": -0.4910298355088378,
"test_a_norm": -0.8208106749623356,
"test_b_norm": -0.4795924411241596,
"Rcs_pct": -4.820387144038109,
"Rhs": 0.01845315989529921,
"Rf_h": 91.07581155406054
},
{
"bin": 11,
"ref_a": -11.999805616973639,
"ref_b": -17.389558909856557,
"test_a": -11.392481885904415,
"test_b": -17.42406804081723,
"ref_a_norm": -0.5679576635669648,
"ref_b_norm": -0.8230577697801987,
"test_a_norm": -0.5392126839950505,
"test_b_norm": -0.8246911066872921,
"Rcs_pct": -1.4611784994011687,
"Rhs": 0.02480801038637743,
"Rf_h": 93.47836772413297
},
{
"bin": 12,
"ref_a": -7.945030683937738,
"ref_b": -24.359082264707368,
"test_a": -7.542190866638954,
"test_b": -24.789867454685414,
"ref_a_norm": -0.31008592234104737,
"ref_b_norm": -0.9507085361802017,
"test_a_norm": -0.29436352160125795,
"test_b_norm": -0.9675216144777168,
"Rcs_pct": 1.3422731489277744,
"Rhs": 0.018700368077330935,
"Rf_h": 93.66445016239425
},
{
"bin": 13,
"ref_a": 3.322658084279731,
"ref_b": -17.986044768767545,
"test_a": 2.6462186047636447,
"test_b": -18.670781366883716,
"ref_a_norm": 0.18166154921280792,
"ref_b_norm": -0.983361114513688,
"test_a_norm": 0.1446781941155784,
"test_b_norm": -1.0207981026302237,
"Rcs_pct": 2.950255223217351,
"Rhs": -0.043576324366257406,
"Rf_h": 91.62871419995827
},
{
"bin": 14,
"ref_a": 10.304639839895433,
"ref_b": -14.483413677994008,
"test_a": 9.6505796610724,
"test_b": -15.129562008050994,
"ref_a_norm": 0.5797226751429211,
"ref_b_norm": -0.8148138559972672,
"test_a_norm": 0.5429262880335203,
"test_b_norm": -0.8511651350579401,
"Rcs_pct": 0.9782006546630149,
"Rhs": -0.05079076630228647,
"Rf_h": 93.24018962103241
},
{
"bin": 15,
"ref_a": 15.48017415157469,
"ref_b": -10.983067403936753,
"test_a": 13.880321638785796,
"test_b": -12.135726134906973,
"ref_a_norm": 0.8155783210215366,
"ref_b_norm": -0.5786466990139071,
"test_a_norm": 0.7312895389001983,
"test_b_norm": -0.6393749223084673,
"Rcs_pct": -3.634476782525765,
"Rhs": -0.09732201060264081,
"Rf_h": 85.87597224095254
},
{
"bin": 16,
"ref_a": 20.137182473317214,
"ref_b": -3.537439927009866,
"test_a": 18.554642149896633,
"test_b": -4.107375149945439,
"ref_a_norm": 0.9849187000037043,
"ref_b_norm": -0.17301778631982664,
"test_a_norm": 0.907515937223352,
"test_b_norm": -0.20089357577566685,
"Rcs_pct": -7.047719365611888,
"Rhs": -0.042440693893664595,
"Rf_h": 86.63191580916988
}
]
}
}