Measured 21-component geometric error maps and reconstruction code for three CNC machining centres (STAN S500, Kondia A10, HAAS VF-3)

Published: 11 June 2026| Version 1 | DOI: 10.17632/82x238xrsf.1
Contributor:
Yaroslav Pimushkin

Description

Supplementary data and code for the study "Reconstruction of smooth CNC volumetric error fields is uncertainty-limited: a traceable three-machine study and the functional case for a tuning-free tensor-product Bézier model." The dataset contains the complete measured 21-component geometric error maps of three structurally different three-axis CNC vertical machining centres — STAN S500 GRAFIT (Russia), Kondia A-10 (Spain) and HAAS VF-3 (USA) — acquired with a Renishaw XL-80 laser interferometer, together with Leica LTD800 laser-tracker validation points measured on a large reference cube of the STAN machine. It also provides the complete Python code that assembles the measured component errors into a dense three-component volumetric error field through the ISO 230-1 rigid-body kinematic model (50 mm functional-point offset) and reconstructs the field from sparse nodes by six methods: trilinear interpolation, inverse-distance weighting, thin-plate radial basis functions, Gaussian-process regression, tensor-product cubic interpolation and a tensor-product Bézier model. Running the provided scripts reproduces the central quantitative results of the paper — the held-out reconstruction residuals, the bootstrap 95% confidence intervals and the paired Wilcoxon p-values reported in Table 3 and Figures 5–6 — for all three machines and the node-density sweep. All residuals lie far below the U = 34 µm (k = 2) measurement screening envelope. Contents: data/ — three measured error maps (STAN_S500_GRAFIT.xlsx, Kondia_A10.xlsx, HAAS_VF3.xlsx) and tracker data (tracker_BigCube.xlsx); code/ — core model and baselines (core.py), data loaders (load_stan.py, load_haas_kondia.py) and the benchmark script (reconstruct.py); plus README.md and requirements.txt.

Files

Steps to reproduce

Requirements: Python 3.10+ with the packages in requirements.txt — numpy ≥ 1.23, scipy ≥ 1.9, openpyxl ≥ 3.0, matplotlib ≥ 3.6. Install with: pip install -r requirements.txt 1. Keep the provided folder structure, with data/ (the four .xlsx files) and code/ as siblings. 2. From the code/ folder run: python3 reconstruct.py The script loads the measured 21-component error maps for each machine, applies the correct per-file angular units (arc-seconds for the Kondia and HAAS files, milliradians for the STAN file) before the Abbe term, assembles the dense volumetric error field through the rigid-body model with a 50 mm functional-point offset, thins each field to the grids of the density sweep (80 → 64 → 36 → 27 → 12 nodes), reconstructs it with all six methods, and prints for each machine the held-out mean residual with its bootstrap 95% confidence interval and the paired Wilcoxon significance against trilinear; it also writes reconstruction_results.json. The printed values reproduce Table 3 and the residual figures of the paper.

Institutions

Categories

Manufacturing Engineering, Mechanical Engineering, Metrology, Precision Engineering

Funders

Licence