# Indexed conveyor changeover

Parametric CAD and geometry checks for a reference guide-rail mechanism. It includes three independent STEP/STL assemblies, part exports, drawings, a BOM, tolerance budget, an executed static-load screen and a synthetic repeatability study. No physical changeover or wear test is claimed.

Use Python 3.12. In this folder:

```sh
python -m venv .venv
# Linux/macOS: source .venv/bin/activate
# Windows: .venv\Scripts\activate
python -m pip install -r requirements.txt
python run.py
python test_project.py
```

Open `report.html`; CAD and tables are under `outputs/`. Dimensions are mm. Edit carton widths, clearance and tolerance allowances in `inputs.json`, then rerun. The overhead frame dimensions are deliberately fixed and validated; a different frame requires a source geometry revision. The reference frame is 450 mm wide; cartons are 80, 120 and 180 mm wide and 60 mm tall on a belt at Z = 90 mm.

Two overhead shafts allow the guide rails to slide above the carton envelope. Four plungers establish the indexed setting; separate captive slotted clamps hold it. Both supports and both sides must indicate the same size. Replacement UHMW strips carry the wear surface.

The assemblies contain nominal purchased-hardware envelopes, not supplier-approved components. The commissioning model evaluates clamp force and structural deflection inside a declared static-load envelope. Local joint details, impact, fatigue and machine qualification are outside that model. The STEP models are reference design assets and must not be treated as production shop releases.

`verification.json` records geometry and swept-product checks. `test_project.py` tests invalid sizes, bore interference, tolerance loss and mechanism completeness. `outputs/movement-sweep.csv` records 101 adjustment positions; monotone interval margins are checked over the whole travel range. The executed synthetic repeatability trial records 180 changeovers and both approach directions in completion/synthetic-changeovers.csv.

CAD library reference: https://cadquery.readthedocs.io/en/latest/importexport.html

## Completed synthetic and theoretical run-through

30 N maximum reference static side load per guide, 3 N m M 8 clamp torque, friction>=0.10, specified unworn tolerances. Loaded worst-case side clearance 0.744 mm against a 0.25 mm allocation; all four indicators must match the requested width.

Run the added study and its regression checks after the original model:

```sh
python complete_validation.py
python test_completion.py
```

Open `completion/report.html`. `completion.json` contains the acceptance matrix, expected adverse outcomes, and SHA-256 hashes of the relevant source files. `completion-inputs.json` contains the declared operating and fault scenarios. `completion/` holds the generated tables, traces and plots. The commands regenerate the evidence and update the delivery summary. No fabricated bench measurements are included.
