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_FL10",
"source": "colour.SDS_ILLUMINANTS['FL10'] (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": [
1.11,
0.8,
0.62,
0.57,
1.48,
12.16,
2.12,
2.7,
3.74,
5.14,
6.75,
34.39,
14.86,
10.4,
10.76,
10.67,
10.11,
9.27,
8.29,
7.29,
7.91,
16.64,
16.73,
10.44,
5.94,
3.34,
2.35,
1.88,
1.59,
1.47,
1.8,
5.71,
40.98,
73.69,
33.61,
8.24,
3.38,
2.47,
2.14,
4.86,
11.45,
14.79,
12.16,
8.97,
6.52,
8.31,
44.12,
34.55,
12.09,
12.15,
10.52,
4.43,
1.95,
2.19,
3.19,
2.77,
2.29,
2.0,
1.52,
1.35,
1.47,
1.79,
1.74,
1.02,
1.14,
3.32,
4.49,
2.05,
0.49,
0.24,
0.21,
0.21,
0.24,
0.24,
0.21,
0.17,
0.21,
0.22,
0.17,
0.12,
0.09
],
"expected": {
"Rf": 79.56750526577619,
"Rg": 99.2291970428991,
"CCT_K": 4998.734114560273,
"Duv": 0.0033830977769216952,
"bins": [
{
"bin": 1,
"ref_a": 23.478048548906422,
"ref_b": 4.936029320096617,
"test_a": 21.334629951559386,
"test_b": 3.650071461515925,
"ref_a_norm": 0.978606195346642,
"ref_b_norm": 0.20574234962488896,
"test_a_norm": 0.8892647530962074,
"test_b_norm": 0.15214137317489423,
"Rcs_pct": -9.808180324522974,
"Rhs": -0.035141397979372456,
"Rf_h": 80.64163950414984
},
{
"bin": 2,
"ref_a": 17.83960936345097,
"ref_b": 12.025749276090735,
"test_a": 17.618767668834742,
"test_b": 11.825388001970724,
"ref_a_norm": 0.8291930990230103,
"ref_b_norm": 0.5589622568050694,
"test_a_norm": 0.8189282773320438,
"test_b_norm": 0.5496493743070844,
"Rcs_pct": -1.3708847611232395,
"Rhs": -0.0020405494212637453,
"Rf_h": 91.54573056608551
},
{
"bin": 3,
"ref_a": 14.548311940161327,
"ref_b": 22.06455529358777,
"test_a": 11.67578941345396,
"test_b": 22.826993992709497,
"ref_a_norm": 0.55046540107182,
"ref_b_norm": 0.8348579772768782,
"test_a_norm": 0.44177758414463675,
"test_b_norm": 0.8637064186651966,
"Rcs_pct": -3.6397113399949164,
"Rhs": 0.10639795230681547,
"Rf_h": 78.75691316591744
},
{
"bin": 4,
"ref_a": 4.0765091347059546,
"ref_b": 21.998256825337414,
"test_a": 0.35339496846738416,
"test_b": 23.74174945540553,
"ref_a_norm": 0.18220844070602263,
"ref_b_norm": 0.9832599270464957,
"test_a_norm": 0.01579575662166173,
"test_b_norm": 1.0611891216121465,
"Rcs_pct": 4.396630281808363,
"Rhs": 0.17841834268460446,
"Rf_h": 71.36383996937295
},
{
"bin": 5,
"ref_a": -2.054326416312341,
"ref_b": 19.16069469267776,
"test_a": -4.528320720207391,
"test_b": 20.89169454571495,
"ref_a_norm": -0.1066046840877035,
"ref_b_norm": 0.994301484123684,
"test_a_norm": -0.2349870964966041,
"test_b_norm": 1.084127857879876,
"Rcs_pct": 11.314655135013192,
"Rhs": 0.10839132417167013,
"Rf_h": 75.64945029216233
},
{
"bin": 6,
"ref_a": -10.828656173533247,
"ref_b": 17.503525680508954,
"test_a": -11.716955732083225,
"test_b": 18.969720255122915,
"ref_a_norm": -0.5261136471084243,
"ref_b_norm": 0.850414269827519,
"test_a_norm": -0.5692719589971879,
"test_b_norm": 0.921649791822031,
"Rcs_pct": 8.320764524771935,
"Rhs": -0.0036915106999815114,
"Rf_h": 87.05456873888518
},
{
"bin": 7,
"ref_a": -17.885205521125236,
"ref_b": 11.800516679875843,
"test_a": -16.370232151831484,
"test_b": 13.428811603303464,
"ref_a_norm": -0.8346891905349909,
"ref_b_norm": 0.5507213044762672,
"test_a_norm": -0.763986514303272,
"test_b_norm": 0.6267126130459507,
"Rcs_pct": -1.6568617785616169,
"Rhs": -0.10246476618396348,
"Rf_h": 82.72153711751575
},
{
"bin": 8,
"ref_a": -22.256526198656072,
"ref_b": 4.300785776390535,
"test_a": -20.670583550861394,
"test_b": 5.664985391754845,
"ref_a_norm": -0.9818368318039067,
"ref_b_norm": 0.1897272666573442,
"test_a_norm": -0.9118736717476239,
"test_b_norm": 0.2499083306896226,
"Rcs_pct": -5.687809439236694,
"Rhs": -0.07267383718650906,
"Rf_h": 84.68556771969051
},
{
"bin": 9,
"ref_a": -18.631238026086677,
"ref_b": -2.555202190011908,
"test_a": -16.292387172610905,
"test_b": -2.0165719282833097,
"ref_a_norm": -0.9907260915108704,
"ref_b_norm": -0.13587424921446478,
"test_a_norm": -0.8663564408496248,
"test_b_norm": -0.10723229567253278,
"Rcs_pct": -12.756769063710811,
"Rhs": -0.0038282912393842712,
"Rf_h": 82.40904698894653
},
{
"bin": 10,
"ref_a": -19.802367592246632,
"ref_b": -11.99569767098627,
"test_a": -15.053306832469303,
"test_b": -13.550881034287931,
"ref_a_norm": -0.8553076514577993,
"ref_b_norm": -0.5181204699273555,
"test_a_norm": -0.6501853100936319,
"test_b_norm": -0.5852922474360506,
"Rcs_pct": -13.323435356580807,
"Rhs": 0.16981115879204436,
"Rf_h": 65.47520384695693
},
{
"bin": 11,
"ref_a": -12.899473288119605,
"ref_b": -19.32315722831776,
"test_a": -9.042346525041822,
"test_b": -20.582528169442565,
"ref_a_norm": -0.5552176385179455,
"ref_b_norm": -0.8317051003081297,
"test_a_norm": -0.38919963413688496,
"test_b_norm": -0.8859107988147052,
"Rcs_pct": -4.71642702575841,
"Rhs": 0.16815399828825112,
"Rf_h": 71.70431557405588
},
{
"bin": 12,
"ref_a": -3.1267019351858623,
"ref_b": -20.746825733951585,
"test_a": -0.9169277287715565,
"test_b": -22.099014178161323,
"ref_a_norm": -0.1490246083311743,
"ref_b_norm": -0.9888334875557866,
"test_a_norm": -0.04370253336605678,
"test_b_norm": -1.053281381044015,
"Rcs_pct": 4.2662227765897995,
"Rhs": 0.11587150112119247,
"Rf_h": 81.24856085153684
},
{
"bin": 13,
"ref_a": 2.719435982264411,
"ref_b": -15.57819868362037,
"test_a": 3.289433992712317,
"test_b": -16.946481147391577,
"ref_a_norm": 0.17196623160832197,
"ref_b_norm": -0.9851028449793621,
"test_a_norm": 0.2080106211509462,
"test_b_norm": -1.0716275437055138,
"Rcs_pct": 9.189406246467914,
"Rhs": 0.018471675367692522,
"Rf_h": 82.8017102608967
},
{
"bin": 14,
"ref_a": 13.615717141905293,
"ref_b": -17.945652593830204,
"test_a": 15.291949151044584,
"test_b": -19.00830893861863,
"ref_a_norm": 0.604436459884668,
"ref_b_norm": -0.7966533537003971,
"test_a_norm": 0.6788486800409792,
"test_b_norm": -0.8438273829802105,
"Rcs_pct": 8.05649863277831,
"Rhs": 0.03566301340448031,
"Rf_h": 82.4897167342872
},
{
"bin": 15,
"ref_a": 12.879380505158682,
"ref_b": -8.25859554619101,
"test_a": 12.113561341455846,
"test_b": -10.228374020414362,
"ref_a_norm": 0.8418024448444471,
"ref_b_norm": -0.5397857388389504,
"test_a_norm": 0.7917481395107734,
"test_b_norm": -0.6685313982081278,
"Rcs_pct": 2.990862212613324,
"Rhs": -0.1348567855591888,
"Rf_h": 81.0017165925025
},
{
"bin": 16,
"ref_a": 22.833779955015594,
"ref_b": -4.13047720948513,
"test_a": 23.214490581355108,
"test_b": -6.288328842486212,
"ref_a_norm": 0.9840296997490656,
"ref_b_norm": -0.1780043539123803,
"test_a_norm": 1.0004365567857105,
"test_b_norm": -0.270997721576794,
"Rcs_pct": 3.4233709922236293,
"Rhs": -0.08800570715783108,
"Rf_h": 82.3965310325132
}
]
}
}