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_HP1",
"source": "colour.SDS_ILLUMINANTS['HP1'] (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.9,
2.2,
2.5,
2.7,
3.1,
4.3,
3.8,
4.2,
4.8,
5.19,
5.89,
7.39,
7.89,
5.69,
12.89,
6.69,
4.3,
20.78,
12.99,
6.69,
1.4,
1.5,
3.2,
18.18,
56.24,
2.9,
2.1,
13.39,
2.1,
2.0,
2.2,
2.3,
2.6,
5.1,
11.39,
15.48,
20.78,
55.64,
254.03,
56.14,
111.78,
297.98,
142.55,
334.84,
189.4,
117.78,
79.92,
108.09,
46.85,
38.16,
32.47,
28.37,
25.37,
22.98,
20.38,
19.78,
17.78,
16.78,
19.18,
17.98,
13.69,
9.99,
8.19,
7.59,
6.99,
6.79,
6.49,
6.39,
6.09,
5.99,
5.79,
5.79,
5.79,
5.79,
6.39,
5.99,
5.59,
31.97,
27.87,
5.89,
6.69
],
"expected": {
"Rf": 34.49133955456195,
"Rg": 54.238088602828604,
"CCT_K": 1962.2467646128093,
"Duv": 0.0008317336845445266,
"bins": [
{
"bin": 1,
"ref_a": 26.522392695676434,
"ref_b": 5.538917270016329,
"test_a": 11.979886218177473,
"test_b": 4.628841379743432,
"ref_a_norm": 0.9788814180412501,
"ref_b_norm": 0.20442888595683206,
"test_a_norm": 0.44215045542003684,
"test_b_norm": 0.17084004696265226,
"Rcs_pct": -53.297068509106495,
"Rhs": 0.07176757746247336,
"Rf_h": 15.249343574169036
},
{
"bin": 2,
"ref_a": 20.64134418827906,
"ref_b": 13.925478425443089,
"test_a": 6.530193885694615,
"test_b": 16.175814357446516,
"ref_a_norm": 0.8289870017450796,
"ref_b_norm": 0.5592678704679032,
"test_a_norm": 0.2622622732675516,
"test_b_norm": 0.6496446996208244,
"Rcs_pct": -42.10037142374142,
"Rhs": 0.3900009765551438,
"Rf_h": 17.615999445996422
},
{
"bin": 3,
"ref_a": 13.872125145026702,
"ref_b": 22.34326869343094,
"test_a": 0.4704416056747909,
"test_b": 26.024971627773915,
"ref_a_norm": 0.527469617379876,
"ref_b_norm": 0.8495738948091138,
"test_a_norm": 0.017887933618723043,
"test_b_norm": 0.9895658872242398,
"Rcs_pct": -16.67093271308394,
"Rhs": 0.501477068880314,
"Rf_h": 10.01242160292253
},
{
"bin": 4,
"ref_a": 2.952021728153385,
"ref_b": 18.856994407623603,
"test_a": -2.257697013425893,
"test_b": 21.53978166398952,
"ref_a_norm": 0.154664116316497,
"ref_b_norm": 0.9879671103452974,
"test_a_norm": -0.11828663392336891,
"test_b_norm": 1.128525330602894,
"Rcs_pct": 8.46073837094865,
"Rhs": 0.2951276265623474,
"Rf_h": 59.81691336123931
},
{
"bin": 5,
"ref_a": -1.954581068472175,
"ref_b": 11.97670830236876,
"test_a": -2.1653034234957795,
"test_b": 13.043935185580805,
"ref_a_norm": -0.16106769572564547,
"ref_b_norm": 0.9869433607829939,
"test_a_norm": -0.1784323191270496,
"test_b_norm": 1.0748884338567812,
"Rcs_pct": 8.964290312582582,
"Rhs": -0.00012626559385446256,
"Rf_h": 86.80230951575427
},
{
"bin": 6,
"ref_a": -10.189843644693763,
"ref_b": 13.84710460132965,
"test_a": -5.925967544140233,
"test_b": 15.061669711337274,
"ref_a_norm": -0.5926980656619317,
"ref_b_norm": 0.8054247345100622,
"test_a_norm": -0.3446872810866236,
"test_b_norm": 0.8760706066571636,
"Rcs_pct": -7.904751345295263,
"Rhs": -0.24546217454831967,
"Rf_h": 67.91442096597942
},
{
"bin": 7,
"ref_a": -18.137998406674225,
"ref_b": 11.572915402138298,
"test_a": -9.00725506390704,
"test_b": 13.653968031396388,
"ref_a_norm": -0.8430176914359037,
"ref_b_norm": 0.5378858354019741,
"test_a_norm": -0.4186391022812735,
"test_b_norm": 0.6346089767287603,
"Rcs_pct": -29.912140282859102,
"Rhs": -0.3161944644848351,
"Rf_h": 36.674789227044634
},
{
"bin": 8,
"ref_a": -18.75333954171441,
"ref_b": 4.109891440949631,
"test_a": -8.43384068394474,
"test_b": 3.8319940467700078,
"ref_a_norm": -0.976817320397588,
"ref_b_norm": 0.2140745724537971,
"test_a_norm": -0.4392989120271601,
"test_b_norm": 0.19959955122762058,
"Rcs_pct": -53.00140794276933,
"Rhs": -0.09066775162642542,
"Rf_h": 26.808698567767802
},
{
"bin": 9,
"ref_a": -25.28798391663808,
"ref_b": -6.202879104203643,
"test_a": -13.234960310935383,
"test_b": -9.466108436952936,
"ref_a_norm": -0.9712093684433988,
"ref_b_norm": -0.2382275438478402,
"test_a_norm": -0.5083013927614785,
"test_b_norm": -0.36355500806139524,
"Rcs_pct": -42.956315337919676,
"Rhs": 0.21322819817053737,
"Rf_h": 19.19704055206871
},
{
"bin": 10,
"ref_a": -18.563353752229023,
"ref_b": -13.964628854573254,
"test_a": -7.8103216045588395,
"test_b": -17.178127367978774,
"ref_a_norm": -0.7991289499102557,
"ref_b_norm": -0.6011596471947631,
"test_a_norm": -0.3362244875370668,
"test_b_norm": -0.7394967023859655,
"Rcs_pct": -30.803504387473176,
"Rhs": 0.37219899767339104,
"Rf_h": 25.752332736364355
},
{
"bin": 11,
"ref_a": -10.830689828633624,
"ref_b": -17.149427752721262,
"test_a": -3.1524680439698103,
"test_b": -19.57836922884756,
"ref_a_norm": -0.5339743932376466,
"ref_b_norm": -0.8455006489450421,
"test_a_norm": -0.15542289896711192,
"test_b_norm": -0.9652522595484009,
"Rcs_pct": -11.074211664081941,
"Rhs": 0.38128449438505146,
"Rf_h": 43.85225188598025
},
{
"bin": 12,
"ref_a": -4.468061401408513,
"ref_b": -20.150889438571983,
"test_a": -0.7316583363144833,
"test_b": -21.65047014288559,
"ref_a_norm": -0.21647271351455957,
"ref_b_norm": -0.9762886685318249,
"test_a_norm": -0.035448050328407615,
"test_b_norm": -1.0489417220674162,
"Rcs_pct": 3.594088565020806,
"Rhs": 0.19172023265264387,
"Rf_h": 58.400892217943465
},
{
"bin": 13,
"ref_a": 3.4939200010968703,
"ref_b": -12.583437581201393,
"test_a": 1.1250311848351677,
"test_b": -14.397952910756814,
"ref_a_norm": 0.26753870053320045,
"ref_b_norm": -0.9635471154629681,
"test_a_norm": 0.08614661502141892,
"test_b_norm": -1.1024893560450157,
"Rcs_pct": 10.088466401544613,
"Rhs": -0.20501297390839346,
"Rf_h": 77.05150280621464
},
{
"bin": 14,
"ref_a": 12.934690300090042,
"ref_b": -22.003557838957814,
"test_a": 3.2729902715781187,
"test_b": -28.045914091535433,
"ref_a_norm": 0.5067703923925617,
"ref_b_norm": -0.8620810689223426,
"test_a_norm": 0.1282330327006851,
"test_b_norm": -1.0988155540976927,
"Rcs_pct": -1.3466558523249845,
"Rhs": -0.4462649447976786,
"Rf_h": 19.545609528012314
},
{
"bin": 15,
"ref_a": 16.18189855240571,
"ref_b": -10.759914142954427,
"test_a": 7.911157770431405,
"test_b": -16.15500040969368,
"ref_a_norm": 0.8327151457289224,
"ref_b_norm": -0.5537016218810088,
"test_a_norm": 0.4071055614614459,
"test_b_norm": -0.8313309762042065,
"Rcs_pct": -19.96388309487055,
"Rhs": -0.4672963875097732,
"Rf_h": 33.35343779913493
},
{
"bin": 16,
"ref_a": 19.633908762069808,
"ref_b": -3.6665025430120437,
"test_a": 9.120101016970796,
"test_b": -8.676651866092985,
"ref_a_norm": 0.9830066430304568,
"ref_b_norm": -0.1835699859944214,
"test_a_norm": 0.4566141155810288,
"test_b_norm": -0.4344120433170876,
"Rcs_pct": -46.73411848983852,
"Rhs": -0.34871628521512715,
"Rf_h": 25.338050603208952
}
]
}
}