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.2 KiB
JSON

{
"name": "illuminant_HP3",
"source": "colour.SDS_ILLUMINANTS['HP3'] (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": [
3.15,
7.49,
10.87,
12.57,
12.97,
21.29,
26.29,
30.18,
43.06,
29.58,
23.18,
35.28,
26.29,
24.29,
22.91,
26.2,
29.31,
25.3,
28.14,
24.05,
21.82,
20.51,
23.05,
26.98,
30.96,
30.72,
27.13,
29.55,
34.22,
29.98,
41.21,
173.14,
141.37,
64.98,
33.83,
34.26,
33.32,
52.8,
74.29,
47.97,
49.2,
96.07,
85.41,
175.18,
153.73,
120.22,
98.9,
90.22,
70.07,
66.84,
57.61,
53.03,
49.85,
48.16,
42.76,
50.64,
48.42,
41.27,
43.44,
40.48,
35.16,
34.94,
24.68,
24.7,
21.49,
19.49,
18.48,
17.55,
17.36,
17.09,
16.32,
16.07,
16.58,
15.78,
17.66,
20.46,
16.59,
17.81,
16.07,
14.83,
14.61
],
"expected": {
"Rf": 83.24152081770636,
"Rg": 97.14478671128319,
"CCT_K": 3146.297680945549,
"Duv": 0.0024009206065169764,
"bins": [
{
"bin": 1,
"ref_a": 23.8286476669202,
"ref_b": 4.8303407413370385,
"test_a": 20.917374718487313,
"test_b": 3.809241836928173,
"ref_a_norm": 0.9800662997374675,
"ref_b_norm": 0.1986707027191188,
"test_a_norm": 0.8603263738306616,
"test_b_norm": 0.15667316098286455,
"Rcs_pct": -12.563247074718026,
"Rhs": -0.017830470044692407,
"Rf_h": 77.14912913047641
},
{
"bin": 2,
"ref_a": 20.436662292904483,
"ref_b": 15.035253926029613,
"test_a": 17.6954805249,
"test_b": 15.515450591370442,
"ref_a_norm": 0.8054949233583872,
"ref_b_norm": 0.5926026733350649,
"test_a_norm": 0.6974534062806798,
"test_b_norm": 0.6115292461091308,
"Rcs_pct": -7.931819787083003,
"Rhs": 0.07576152094532172,
"Rf_h": 80.8115180457146
},
{
"bin": 3,
"ref_a": 14.734334069327955,
"ref_b": 23.02223974682943,
"test_a": 12.037954826798478,
"test_b": 24.011180642447115,
"ref_a_norm": 0.5390563082276398,
"ref_b_norm": 0.8422697291010688,
"test_a_norm": 0.4404091462167492,
"test_b_norm": 0.8784501785016788,
"Rcs_pct": -2.472248254905588,
"Rhs": 0.10212289825619245,
"Rf_h": 80.42443006546664
},
{
"bin": 4,
"ref_a": 3.3127079493736726,
"ref_b": 22.351855010913866,
"test_a": 1.0698798363652258,
"test_b": 23.909931878937062,
"ref_a_norm": 0.14660591120299277,
"ref_b_norm": 0.9891949791625209,
"test_a_norm": 0.04734818483400814,
"test_b_norm": 1.058148621455085,
"Rcs_pct": 4.826449559082257,
"Rhs": 0.11080270526803299,
"Rf_h": 80.87413406330091
},
{
"bin": 5,
"ref_a": -2.3811605516959413,
"ref_b": 16.2399152177074,
"test_a": -4.037701281252853,
"test_b": 17.84675333268641,
"ref_a_norm": -0.14507281462816743,
"ref_b_norm": 0.9894209814107751,
"test_a_norm": -0.24599798156487648,
"test_b_norm": 1.0873180038630397,
"Rcs_pct": 11.570548193369973,
"Rhs": 0.0798871565191306,
"Rf_h": 83.50393732641962
},
{
"bin": 6,
"ref_a": -12.65806127413736,
"ref_b": 17.28974834620605,
"test_a": -13.473688410341495,
"test_b": 18.791383664725966,
"ref_a_norm": -0.5907235232675229,
"ref_b_norm": 0.806874041631285,
"test_a_norm": -0.6287870248683193,
"test_b_norm": 0.8769520169869135,
"Rcs_pct": 7.941465545378824,
"Rhs": -0.007284592178976972,
"Rf_h": 87.01355090730374
},
{
"bin": 7,
"ref_a": -18.494916716671508,
"ref_b": 13.667140244368627,
"test_a": -17.65851732996257,
"test_b": 16.329035970077427,
"ref_a_norm": -0.8042388169036485,
"ref_b_norm": 0.5943062555496281,
"test_a_norm": -0.7678685610365655,
"test_b_norm": 0.71005697246068,
"Rcs_pct": 3.4066890221311255,
"Rhs": -0.11644943524083183,
"Rf_h": 80.9397301322769
},
{
"bin": 8,
"ref_a": -21.468343960045637,
"ref_b": 6.194014661401569,
"test_a": -21.470251782778277,
"test_b": 7.96504436061574,
"ref_a_norm": -0.9608090121871495,
"ref_b_norm": 0.2772111868232482,
"test_a_norm": -0.960894396196209,
"test_b_norm": 0.3564730665016682,
"Rcs_pct": 1.554696900933394,
"Rhs": -0.07772222729186382,
"Rf_h": 87.893260453675
},
{
"bin": 9,
"ref_a": -20.547782456881503,
"ref_b": -3.287155581873763,
"test_a": -19.841831329732802,
"test_b": -1.7910364208210794,
"ref_a_norm": -0.9874443022833965,
"ref_b_norm": -0.15796755960657236,
"test_a_norm": -0.9535191125624946,
"test_b_norm": -0.08607005221283776,
"Rcs_pct": -4.7299834582748295,
"Rhs": -0.0638975407623483,
"Rf_h": 88.62749284314974
},
{
"bin": 10,
"ref_a": -20.1962190763613,
"ref_b": -13.0470097623176,
"test_a": -18.41886034411629,
"test_b": -12.19156019699632,
"ref_a_norm": -0.8399707882131948,
"ref_b_norm": -0.5426316199305973,
"test_a_norm": -0.7660495552528707,
"test_b_norm": -0.507053047379828,
"Rcs_pct": -8.12296547529825,
"Rhs": 0.011485934695797447,
"Rf_h": 84.3508670948744
},
{
"bin": 11,
"ref_a": -11.407626981811614,
"ref_b": -17.394928663613094,
"test_a": -9.351017401689946,
"test_b": -16.911910660530616,
"ref_a_norm": -0.5483944915578085,
"ref_b_norm": -0.8362197567799105,
"test_a_norm": -0.4495278853107806,
"test_b_norm": -0.8129998169417638,
"Rcs_pct": -7.423401784543071,
"Rhs": 0.06930427137930445,
"Rf_h": 84.51904519858525
},
{
"bin": 12,
"ref_a": -5.628091883415613,
"ref_b": -18.855629745352342,
"test_a": -5.652802561019612,
"test_b": -19.163781162275146,
"ref_a_norm": -0.28601432769132173,
"ref_b_norm": -0.9582253411151687,
"test_a_norm": -0.2872701010489904,
"test_b_norm": -0.973885305835719,
"Rcs_pct": 1.56040521182765,
"Rhs": 0.001823463535369356,
"Rf_h": 89.63536725776353
},
{
"bin": 13,
"ref_a": 2.8589216209958943,
"ref_b": -18.219329907726333,
"test_a": 2.5670600071803,
"test_b": -19.245858857637657,
"ref_a_norm": 0.1550200291387481,
"ref_b_norm": -0.987911327278831,
"test_a_norm": 0.13919434313676016,
"test_b_norm": -1.0435730658023197,
"Rcs_pct": 5.150477564723718,
"Rhs": -0.02638066637555819,
"Rf_h": 89.94687382949515
},
{
"bin": 14,
"ref_a": 8.777379308922018,
"ref_b": -14.263130651140767,
"test_a": 7.02985835537061,
"test_b": -15.238850030436852,
"ref_a_norm": 0.5241003767078458,
"ref_b_norm": -0.8516565006707187,
"test_a_norm": 0.4197552917084795,
"test_b_norm": -0.9099170447639223,
"Rcs_pct": -0.9529151177836751,
"Rhs": -0.11912759142780915,
"Rf_h": 85.02493463010806
},
{
"bin": 15,
"ref_a": 17.94572234908664,
"ref_b": -12.242751467720971,
"test_a": 15.99949787430031,
"test_b": -14.28085774785957,
"ref_a_norm": 0.8260766572473346,
"ref_b_norm": -0.5635577666495866,
"test_a_norm": 0.7364881426637314,
"test_b_norm": -0.6573757802274788,
"Rcs_pct": -2.236763182268364,
"Rhs": -0.12777953929969738,
"Rf_h": 79.18254901052585
},
{
"bin": 16,
"ref_a": 16.551557269364356,
"ref_b": -3.9768453174424905,
"test_a": 14.401987640067375,
"test_b": -4.831736840924205,
"ref_a_norm": 0.9723276596052066,
"ref_b_norm": -0.23362132258563498,
"test_a_norm": 0.8460503569443053,
"test_b_norm": -0.2838422571306796,
"Rcs_pct": -11.405330140649202,
"Rhs": -0.07389143300931729,
"Rf_h": 79.89076314330991
}
]
}
}