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_LED_B2",
"source": "colour.SDS_ILLUMINANTS['LED-B2'] (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.0,
0.0,
0.0,
0.01,
0.02,
0.05,
0.11,
0.24,
0.5,
0.96,
1.71,
2.82,
4.71,
7.87,
10.56,
10.24,
7.94,
6.25,
5.23,
4.36,
4.0,
4.17,
4.59,
5.21,
5.96,
6.72,
7.44,
8.11,
8.74,
9.39,
10.06,
10.75,
11.49,
12.25,
13.05,
13.86,
14.7,
15.5,
16.28,
17.0,
17.69,
18.31,
18.83,
19.24,
19.51,
19.59,
19.48,
19.19,
18.72,
18.1,
17.34,
16.47,
15.51,
14.49,
13.42,
12.33,
11.26,
10.24,
9.25,
8.3,
7.42,
6.6,
5.85,
5.17,
4.55,
3.99,
3.49,
3.04,
2.65,
2.31,
2.01,
1.75,
1.52,
1.32,
1.15,
1.0,
0.87,
0.76,
0.67,
0.59,
0.52
],
"expected": {
"Rf": 84.34733207675345,
"Rg": 96.53858249879536,
"CCT_K": 2998.8293567548126,
"Duv": -0.0009382909537549365,
"bins": [
{
"bin": 1,
"ref_a": 23.97915388755696,
"ref_b": 5.027428544445078,
"test_a": 21.50243524549314,
"test_b": 4.432103502172079,
"ref_a_norm": 0.9787207086963913,
"ref_b_norm": 0.20519691608022192,
"test_a_norm": 0.8776322451096874,
"test_b_norm": 0.18089843790996066,
"Rcs_pct": -10.388647503515516,
"Rhs": -0.0041102088123457945,
"Rf_h": 81.24796121748878
},
{
"bin": 2,
"ref_a": 20.534043910556658,
"ref_b": 15.081384300256559,
"test_a": 17.879575569196913,
"test_b": 15.404201156019957,
"ref_a_norm": 0.8059726731907872,
"ref_b_norm": 0.591952743105137,
"test_a_norm": 0.7017833106713988,
"test_b_norm": 0.6046234846952487,
"Rcs_pct": -7.959080200229574,
"Rhs": 0.06841984501057638,
"Rf_h": 81.67619629219601
},
{
"bin": 3,
"ref_a": 14.807417241068373,
"ref_b": 22.92952516106735,
"test_a": 11.674309695808759,
"test_b": 24.051094987128124,
"ref_a_norm": 0.5424935172196838,
"ref_b_norm": 0.8400599882000194,
"test_a_norm": 0.42770708928400525,
"test_b_norm": 0.8811505004643498,
"Rcs_pct": -2.960641021397683,
"Rhs": 0.11827009220686152,
"Rf_h": 76.97026347240579
},
{
"bin": 4,
"ref_a": 2.7162139287694647,
"ref_b": 20.474087922231792,
"test_a": 1.2697450996271702,
"test_b": 20.907360055450184,
"ref_a_norm": 0.13151364225762502,
"ref_b_norm": 0.9913143607857869,
"test_a_norm": 0.06147851648282784,
"test_b_norm": 1.0122925303344925,
"Rcs_pct": 0.6911904663328504,
"Rhs": 0.07278205832367587,
"Rf_h": 87.51036326786442
},
{
"bin": 5,
"ref_a": -2.939990098756877,
"ref_b": 16.859828821013984,
"test_a": -3.7843907504237837,
"test_b": 17.275236951167813,
"ref_a_norm": -0.17178614425084196,
"ref_b_norm": 0.9851342652874423,
"test_a_norm": -0.22112519890075072,
"test_b_norm": 1.009406918790511,
"Rcs_pct": 3.343183333175963,
"Rhs": 0.043655658761541524,
"Rf_h": 92.24464281188973
},
{
"bin": 6,
"ref_a": -12.72110484241996,
"ref_b": 16.997932382940867,
"test_a": -12.536648644843039,
"test_b": 17.909663940821222,
"ref_a_norm": -0.5991753949412286,
"ref_b_norm": 0.800617790270128,
"test_a_norm": -0.5904873433606802,
"test_b_norm": 0.8435611606015859,
"Rcs_pct": 3.0879284639370352,
"Rhs": -0.031081909141038266,
"Rf_h": 92.5498872844645
},
{
"bin": 7,
"ref_a": -18.668717080506205,
"ref_b": 13.265471835601673,
"test_a": -17.107713710392233,
"test_b": 14.147798095273352,
"ref_a_norm": -0.8151627380437267,
"ref_b_norm": 0.5792320005878943,
"test_a_norm": -0.7470020939142863,
"test_b_norm": 0.6177584556506727,
"Rcs_pct": -3.5269352731950634,
"Rhs": -0.06990160159619924,
"Rf_h": 87.08898215297634
},
{
"bin": 8,
"ref_a": -21.45429647151378,
"ref_b": 5.809983484342103,
"test_a": -20.1990447347491,
"test_b": 6.027568886176166,
"ref_a_norm": -0.9652326737114465,
"ref_b_norm": 0.26139220646349093,
"test_a_norm": -0.9087586713284257,
"test_b_norm": 0.27118141299616516,
"Rcs_pct": -5.347909080798207,
"Rhs": -0.020618640984517166,
"Rf_h": 90.40333307010968
},
{
"bin": 9,
"ref_a": -22.564521635070896,
"ref_b": -3.731807599356716,
"test_a": -20.840333956680837,
"test_b": -4.232690133207512,
"ref_a_norm": -0.9865983906702526,
"ref_b_norm": -0.16316744628407837,
"test_a_norm": -0.911210983118514,
"test_b_norm": -0.1850677510990482,
"Rcs_pct": -6.966632213590068,
"Rhs": 0.03618685021409618,
"Rf_h": 87.24344867143996
},
{
"bin": 10,
"ref_a": -18.13701203902219,
"ref_b": -11.850819908497424,
"test_a": -15.787059666220602,
"test_b": -13.291023288079032,
"ref_a_norm": -0.8371386106118205,
"ref_b_norm": -0.5469908103642241,
"test_a_norm": -0.7286733430066318,
"test_b_norm": -0.6134653682234465,
"Rcs_pct": -5.325428840425487,
"Rhs": 0.11553164884913902,
"Rf_h": 80.34672395453201
},
{
"bin": 11,
"ref_a": -10.987369776327254,
"ref_b": -15.751349294295325,
"test_a": -8.424826964888087,
"test_b": -17.351889739471307,
"ref_a_norm": -0.5721135208035061,
"ref_b_norm": -0.8201744444408252,
"test_a_norm": -0.4386816422095158,
"test_b_norm": -0.9035147568103002,
"Rcs_pct": -0.4835842667686087,
"Rhs": 0.1572459491263811,
"Rf_h": 78.72013092673527
},
{
"bin": 12,
"ref_a": -6.73556059295356,
"ref_b": -21.15615282903148,
"test_a": -5.727165616899922,
"test_b": -22.814102380185762,
"ref_a_norm": -0.30336959854486173,
"ref_b_norm": -0.9528729646068932,
"test_a_norm": -0.25795149639311454,
"test_b_norm": -1.0275469999451683,
"Rcs_pct": 6.437856251394521,
"Rhs": 0.05911358765467181,
"Rf_h": 84.22109654124172
},
{
"bin": 13,
"ref_a": 3.142386586548557,
"ref_b": -18.090664652555994,
"test_a": 2.5466691045046246,
"test_b": -19.24637178522403,
"ref_a_norm": 0.17113944895951286,
"ref_b_norm": -0.9852468162901284,
"test_a_norm": 0.1386957127085493,
"test_b_norm": -1.0481884933867796,
"Rcs_pct": 5.540281146768162,
"Rhs": -0.04409965100925057,
"Rf_h": 89.39612161728057
},
{
"bin": 14,
"ref_a": 9.199406119969233,
"ref_b": -14.06935346814885,
"test_a": 8.081833966036967,
"test_b": -16.181335982152156,
"ref_a_norm": 0.5472582587336102,
"ref_b_norm": -0.8369637974535439,
"test_a_norm": 0.4807756420305021,
"test_b_norm": -0.9626023286822475,
"Rcs_pct": 6.7528857997492775,
"Rhs": -0.12507930360596342,
"Rf_h": 82.18196146718284
},
{
"bin": 15,
"ref_a": 18.27079282503619,
"ref_b": -11.929423343033529,
"test_a": 16.548401641187443,
"test_b": -14.001035256670306,
"ref_a_norm": 0.83732343493657,
"ref_b_norm": -0.5467078427332313,
"test_a_norm": 0.7583887922981578,
"test_b_norm": -0.6416467553459866,
"Rcs_pct": -1.2886522908904432,
"Rhs": -0.12279255866649459,
"Rf_h": 81.05119744685643
},
{
"bin": 16,
"ref_a": 16.78679181808261,
"ref_b": -3.8060201667767544,
"test_a": 15.250805158060741,
"test_b": -6.12857462530907,
"ref_a_norm": 0.9752477271272282,
"ref_b_norm": -0.2211150622033143,
"test_a_norm": 0.8860128384529986,
"test_b_norm": -0.3560465000479737,
"Rcs_pct": -6.119644765089141,
"Rhs": -0.14974763126821417,
"Rf_h": 79.28830222371093
}
]
}
}