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_HP2",
"source": "colour.SDS_ILLUMINANTS['HP2'] (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": [
2.64,
2.77,
3.42,
3.68,
4.33,
5.5,
5.94,
7.2,
9.02,
10.27,
12.48,
16.82,
16.04,
15.26,
22.58,
20.07,
15.13,
25.27,
28.04,
15.99,
10.4,
11.1,
13.44,
22.62,
49.71,
17.21,
17.12,
27.26,
20.02,
21.54,
23.36,
25.66,
29.69,
43.12,
98.3,
125.6,
134.57,
149.7,
166.12,
98.77,
30.47,
1.17,
0.39,
1.65,
21.41,
76.11,
126.16,
161.96,
160.06,
158.19,
153.69,
147.4,
140.6,
134.92,
127.59,
124.65,
118.02,
113.94,
118.1,
115.16,
102.85,
90.54,
83.34,
79.44,
76.97,
74.85,
73.12,
71.51,
70.13,
69.04,
67.48,
66.7,
66.31,
65.14,
65.7,
64.79,
64.1,
83.04,
86.25,
63.93,
64.92
],
"expected": {
"Rf": 82.46203215116815,
"Rg": 104.42891028527828,
"CCT_K": 2505.877919319432,
"Duv": 0.0007169978712424309,
"bins": [
{
"bin": 1,
"ref_a": 25.21009690740788,
"ref_b": 5.5804859593889615,
"test_a": 26.382407836326024,
"test_b": 4.904946812407616,
"ref_a_norm": 0.9763651756897543,
"ref_b_norm": 0.21612737841447824,
"test_a_norm": 1.021767760625469,
"test_b_norm": 0.1899643334904448,
"Rcs_pct": 3.942603013805422,
"Rhs": -0.03451793426749361,
"Rf_h": 85.47992830341362
},
{
"bin": 2,
"ref_a": 20.595253728173194,
"ref_b": 14.188100295146329,
"test_a": 20.934497793331552,
"test_b": 13.766315306157107,
"ref_a_norm": 0.823502765826575,
"ref_b_norm": 0.5673122550024644,
"test_a_norm": 0.8370674652294281,
"test_b_norm": 0.5504471505662121,
"Rcs_pct": 0.1908885351942188,
"Rhs": -0.021558965055136582,
"Rf_h": 90.3984150440704
},
{
"bin": 3,
"ref_a": 15.105309662502535,
"ref_b": 22.37474726237849,
"test_a": 13.024211873428184,
"test_b": 23.446426146301274,
"ref_a_norm": 0.5595327892039128,
"ref_b_norm": 0.8288082153343376,
"test_a_norm": 0.48244450193645727,
"test_b_norm": 0.8685054799684283,
"Rcs_pct": -0.9820888485483371,
"Rhs": 0.0861511868903411,
"Rf_h": 80.30027581046143
},
{
"bin": 4,
"ref_a": 3.0574919889473438,
"ref_b": 20.10043179010946,
"test_a": 0.8515015817756874,
"test_b": 21.52801230689014,
"ref_a_norm": 0.1503809764884453,
"ref_b_norm": 0.9886281211407966,
"test_a_norm": 0.04188061319924162,
"test_b_norm": 1.0588428438303137,
"Rcs_pct": 4.769819566851549,
"Rhs": 0.12011377209222505,
"Rf_h": 81.3917863609288
},
{
"bin": 5,
"ref_a": -2.5395388893782984,
"ref_b": 15.856966985210441,
"test_a": -3.693139639905981,
"test_b": 16.85732041103808,
"ref_a_norm": -0.15813768514117096,
"ref_b_norm": 0.9874170712207642,
"test_a_norm": -0.22997267574855051,
"test_b_norm": 1.0497093148028855,
"Rcs_pct": 7.510962703825652,
"Rhs": 0.058302087546079025,
"Rf_h": 82.31486308106543
},
{
"bin": 6,
"ref_a": -10.971520181894952,
"ref_b": 15.572069753452462,
"test_a": -11.042870508199615,
"test_b": 16.92286866145962,
"ref_a_norm": -0.575963678796822,
"ref_b_norm": 0.8174752844623692,
"test_a_norm": -0.5797093034450455,
"test_b_norm": 0.8883871631694235,
"Rcs_pct": 6.104202985481701,
"Rhs": -0.03628215590304667,
"Rf_h": 89.64081473228838
},
{
"bin": 7,
"ref_a": -18.202152811694067,
"ref_b": 13.728145361774743,
"test_a": -18.31081705034748,
"test_b": 15.587459971652954,
"ref_a_norm": -0.7983858491454217,
"ref_b_norm": 0.6021461914554839,
"test_a_norm": -0.8031520980252415,
"test_b_norm": 0.6836997576184056,
"Rcs_pct": 4.927172486495525,
"Rhs": -0.06516132603858357,
"Rf_h": 86.48698606471135
},
{
"bin": 8,
"ref_a": -21.31331882011686,
"ref_b": 4.186966442496566,
"test_a": -17.940049334037187,
"test_b": 5.020914276096417,
"ref_a_norm": -0.981245148649001,
"ref_b_norm": 0.19276399625656215,
"test_a_norm": -0.8259429948062501,
"test_b_norm": 0.23115817000550587,
"Rcs_pct": -14.482773478366344,
"Rhs": -0.06795438766918872,
"Rf_h": 75.85619344174779
},
{
"bin": 9,
"ref_a": -24.127254466756185,
"ref_b": -4.894500885169529,
"test_a": -22.66048431170445,
"test_b": -4.088918979432187,
"ref_a_norm": -0.9800375866815455,
"ref_b_norm": -0.1988122951213331,
"test_a_norm": -0.9204580814811479,
"test_b_norm": -0.16608994174038957,
"Rcs_pct": -6.4818516172471545,
"Rhs": -0.02047021768107513,
"Rf_h": 87.6386696279278
},
{
"bin": 10,
"ref_a": -18.849105653919334,
"ref_b": -13.114612004013484,
"test_a": -15.588467718832922,
"test_b": -14.25618478055868,
"ref_a_norm": -0.8208604757856944,
"ref_b_norm": -0.5711287764531598,
"test_a_norm": -0.678862820517452,
"test_b_norm": -0.6208431761548794,
"Rcs_pct": -9.044689474704214,
"Rhs": 0.120225683071457,
"Rf_h": 75.34360945067854
},
{
"bin": 11,
"ref_a": -10.517149370990213,
"ref_b": -16.623010706716475,
"test_a": -6.713643731393289,
"test_b": -17.90125230371982,
"ref_a_norm": -0.5346617082357045,
"ref_b_norm": -0.8450661854236498,
"test_a_norm": -0.3413023909134328,
"test_b_norm": -0.910048321902272,
"Rcs_pct": -5.339400915677452,
"Rhs": 0.19687453731457388,
"Rf_h": 71.68309744133607
},
{
"bin": 12,
"ref_a": -4.636131216412637,
"ref_b": -18.275747349661007,
"test_a": -1.4246223423795608,
"test_b": -19.362843165085895,
"ref_a_norm": -0.24588835452631433,
"ref_b_norm": -0.9692981569714973,
"test_a_norm": -0.07555826771015958,
"test_b_norm": -1.026954894623997,
"Rcs_pct": 2.3319128119643606,
"Rhs": 0.17830551347411452,
"Rf_h": 75.47364363348022
},
{
"bin": 13,
"ref_a": 4.42171779723458,
"ref_b": -17.431766839234676,
"test_a": 5.978222613175973,
"test_b": -18.286164526208253,
"ref_a_norm": 0.24587188569289917,
"ref_b_norm": -0.9693023345818467,
"test_a_norm": 0.3324221342015075,
"test_b_norm": -1.016811556124485,
"Rcs_pct": 6.348146102455615,
"Rhs": 0.07561862042299582,
"Rf_h": 87.00943316986962
},
{
"bin": 14,
"ref_a": 12.674379697104948,
"ref_b": -15.63396887548457,
"test_a": 15.315870852089242,
"test_b": -16.118689429532477,
"ref_a_norm": 0.6297476574718758,
"ref_b_norm": -0.7767997733706447,
"test_a_norm": 0.760994543460624,
"test_b_norm": -0.8008839211344886,
"Rcs_pct": 9.294210003570653,
"Rhs": 0.0957473618237436,
"Rf_h": 81.66650677521812
},
{
"bin": 15,
"ref_a": 16.378763181982784,
"ref_b": -10.472530882162987,
"test_a": 18.485437979199414,
"test_b": -11.555882884232537,
"ref_a_norm": 0.8425020106570933,
"ref_b_norm": -0.5386931984337238,
"test_a_norm": 0.9508665881734264,
"test_b_norm": -0.5944193988709469,
"Rcs_pct": 12.106167141703967,
"Rhs": 0.01386949130918807,
"Rf_h": 82.94626419044468
},
{
"bin": 16,
"ref_a": 17.851592977256075,
"ref_b": -3.513805127379676,
"test_a": 19.194597353625664,
"test_b": -4.191649731598001,
"ref_a_norm": 0.9811734615215516,
"ref_b_norm": -0.193128554092388,
"test_a_norm": 1.0549887369695181,
"test_b_norm": -0.2303847887344142,
"Rcs_pct": 7.9665266441696865,
"Rhs": -0.022139720683295193,
"Rf_h": 86.96873436152991
}
]
}
}