User, 19 Oct 2026: check github.com/qitechgmbh/control and
shop.qitech.de/collections/ethercat.
- QiTech Control (LGPL-3.0, Rust on an EtherCrab fork, NixOS, runs
QiTech's own machines): plan now uses its EtherCAT library qitech_lib,
pinned, as the layer under our station service; not the full Electron
app. It has DC SYNC0, SDO/PDO handling, EK1100/EL2809/EL3021/EL3024
drivers and a CiA402 MINAS A6 servo driver to copy for the A6-EC.
Drivers to write: EK1101, EL1809, EL3152, EL5101, A6-EC (upstream).
Kernel: start from QiTech's tested settings (6.18, preempt=full,
isolcpus 2,3); 6.12 PREEMPT_RT stays the fallback for IgH.
- QiTech shop (new Beckhoff stock from an insolvency, ships worldwide):
EK1101 EUR 85.13, EL1809 EUR 16.53, EL2809 EUR 41.03, EL9011 EUR 1.76
replace the geizhals offers, EUR 207.57 less. TwinSAFE and Beckhoff
STO servo terminals noted, not taken.
- EtherCAT parts EUR 1,684 to 1,897 + 2 servo kits (THB 72k to 80k);
bench parts about THB 56k; spare coupler/DI/DO now stocked.
- BOM total USD 16,671 to 32,681 (THB 0.55M to 1.08M).
User, 19 Oct 2026: plan the current EtherCAT setup, keep the 100 W servo,
check prices on geizhals.de.
- New docs/equipment/inline-qc-control-plan.md: decisions, bus layout
(drives at the end of the line because the A6-200EC takes control
power from the main supply), I/O list for EL1809/EL2809/EL3152/EL5101
and the drive touch probe, PDO and DC notes from the A6-EC manual,
geizhals.de price table (EUR 1,891.60 to 2,104.39 + USD 246.58 for the
servo kits, THB 80k to 88k), NixOS/EtherCrab software, safety circuit
(PNOZ s3, two contactors, dump valve), bench test with pass marks
(parts about THB 64k, all reused), build order, spares, open points.
- EL3102 replaced by EL3152: the optoNCDT 1420 output is 4 to 20 mA.
- Spindle encoder index goes to an EL5101 instead of the drive touch
probe; encoder 2,000 to 2,500 pulses.
- BOM: control lines split per part with geizhals.de prices (+30% high
end for shipping and Thai duty/VAT, estimate); total USD 16,912 to
33,061 (THB 0.56M to 1.09M). Doc, render caption and fleet calculator
text now say USD 17k to 33k.
- README links the plan.
User, 18 Oct 2026: use an EtherCAT based system.
- Spindle and conveyor on the StepperOnline A6-EC100L2A1-M17 kit
(100 W, A6-200EC drive, USD 123.29), spindle through a 1:6 belt in
cyclic synchronous position, conveyor in cyclic synchronous velocity.
- The A6-EC drive has no divided encoder output, so an RS-422
incremental encoder on the spindle shaft clocks both line-scans; its
index goes to the drive touch probe for one angle reference.
- Station controller: fanless N100 mini PC with 2x Intel i226, NixOS
PREEMPT_RT, EtherCAT master EtherCrab (Rust, MIT/Apache) first, IgH
(nixpkgs, igc native driver on 6.12 LTS) as fallback; no PLC.
- EtherCAT I/O: EK1100, EL1809, EL2809, EL3102 (warp lasers sampled with
the spindle position, ~1,000 points a turn at 1 ms).
- Safety stays hardwired (safety relay, contactor; no STO at 100 W).
- Edge PC with the GPU stays off the real-time loop.
- BOM: drives, encoder, controller and I/O lines with sources; total
USD 16,112 to 32,938 (THB 0.53M to 1.09M). Next step: EtherCAT bench.
- Investor render: cabinet and outfeed labels.
User, 18 Oct 2026, asked about the StepperOnline A6-EC100L2A1-M17
(100 W EtherCAT kit).
- The motor fits: torque about 0.02 N m needed at the motor through a
1:6 belt (0.32 rated); the belt brings the load inertia (about 25 to
35 kg cm2, estimate; record 20.5) to about 28x the 0.03 kg cm2 rotor.
- Take the pulse/RS-485 twin A6-RS100L2A1-M17 (USD 108.78): its drive
outputs the encoder as divided A/B/Z pulses for the line-scans and
takes pulse/direction from the planned PLC. The EtherCAT drive has no
divided output (A6-EC manual, CN1: 5 DI, 3 DO) and needs an EtherCAT
master.
- inline-optical-qc.md: spindle servo paragraph, sensor table, BOM
group; BOM line 109 to 250 (was 300 to 700). Total USD 16,073 to
32,734, THB 0.53M to 1.08M.
User, 18 Oct 2026: list the sensors the optical QC station uses.
- inline-optical-qc.md: sensor table in the station setup (4 cameras,
2 warp lasers, spindle encoder, 3 presence sensors and a through-beam,
6 cylinder position switches, door switch; thermal camera option and
laser line profiler alternative), with where each sits, what it
measures and the price signal.
- BOM: cylinder position switches were missing (6, SMC D-M9 class,
USD 25 to 60 each, estimate). Total now USD 16,264 to 33,184, still
16k to 33k; THB 0.54M to 1.10M.
User, 18 Oct 2026: for now one QC station for both machines; let the
records cool in a queue before testing them.
- inline-optical-qc.md "Where it sits": launch setup. Spindle stacks
from the Duplex system and the Classic, labelled at the press (press,
stamper set, first and last cycle), cool in FIFO racks (24 h accepted
practice, 8 h at the shortest, Stamper Discs; about one day of output,
2,800 to 3,100 records); the finishing operator feeds the station from
the cooled stacks. Gains: warp and centring measured on settled records
(the release value), one station instead of two, no Classic unloader
change, no warm-record sag or thermal camera. Cost: defects found hours
later, covered by the Duplex operator, per-cycle telemetry and an early
lane for the first records of each run and after stamper changes.
Record key from the stack label and stack position, checked against the
run-out stamper number. Capacity 10 to 12 a minute against 5 to 6:
one station to about two Duplex systems and two Classics. A station at
each press stays the later option. Cost table, open points, infeed row,
thermal camera note and the Newbilt question follow.
- Fleet calculator: the per-press stations and the release station are
gone; the finishing block shows the cooling racks with record stacks
and the one optical station by the corridor glass; tooltips, corridor
and conveyor texts; machine park back to its legend, finishing box
"cooling, QC, packing".
- quality-automation.md layer 1, digital-factory.md QC row,
process-flow.md stage 6, site-candidates.md block ground floor,
crane-workshop-tours.md tour stop 6.
- Investor render: infeed label "the operator sets each cooled record
down".
Checks: node --check; pw_bp_calc.py 0 fails; pw_iso_view_check.py OK;
info for every data-id at all presets, levels and rotations; GF nodes
2,414 at the full preset; zoomed shots in two rotations.
User, 18 Oct 2026: use real 40x40 profiles, make a render with text
pointing out the parts to show the investor; the ring lights looked
like they were floating.
- build_station.py: frame drawn from the real 8-slot 40 series section
(profile_shape: slots, centre bore, corner cavities; 40x80 with centre
cavity) and 24 cast angle brackets; top beams now butt between the
uprights; label-camera posts moved beside the cameras so both ring
lights clamp straight to them; top line-scan on a side post with
visible camera plate and light hangers; slide strips on carrier angles,
pulley axles, end-stop posts, presence-sensor brackets, backlight post,
cabinet on base crosses, chute on two supports and clear of the rail,
pneumatics rail, stack light on the back upright, touch screen on the
front end upright. A connectivity check at the end lists any part that
does not reach the floor through touching parts: none.
- render_annotated.py (FreeCAD): front three-quarter view, camera backed
off so nothing is clipped, no navigation cube or preselection, label
positions projected from the camera and checked with marker renders.
- annotate_render.py (Pillow): title, 16 labels in two columns, leaders
assigned so none cross -> inline-qc-station-annotated.png.
- render_station.py: same camera and preselection fixes; all six views
re-rendered.
- BOM: 32 m of 40x40 in 45 pieces; total still USD 16k to 33k.
- inline-optical-qc.md and README updated; .gitignore for the render
intermediates.
User, 18 Oct 2026: create a setup for the inline optical QC, an
aluminium extrusion frame with all sensors and a conveyor mounted to it.
- docs/equipment/inline-qc-station/: FreeCAD script (build_station.py)
and model (.FCStd) of one station, 1.9 x 0.65 x 1.5 m on 27 m of
40x40 and 3.8 m of 40x80 profile: rim-belt conveyor (two 6 mm PU round
belts under the unrecorded rim, open centre), label gate with top and
bottom colour cameras on the fly, inspection position with a lift and
rotate chuck (75 mm lift, expanding mandrel, belt-driven servo), top and
bottom 4k line-scans on opposite radii with coaxial, dark-field and
backlights, two warp lasers, optional thermal camera, light-tight black
tunnel with door switch, rodless-cylinder reject pusher with chute and
bin, outfeed stop, cabinet, PLC, NixOS edge PC, HMI, stack light.
- render_station.py renders six views (open and closed iso, front, plan,
inspection detail and elevation via clipped temporary documents).
- inline-qc-station-bom.csv: 32 lines with sources; USD 16k to 33k per
station without the thermal camera.
- inline-optical-qc.md: new section "The station setup" (flow table,
inspection zone, cycle ~5 to 6 s, control, BOM by group, open points);
cost table updated (two launch stations ~USD 50k to 105k, still inside
the metrology launch tier); Duplex/Classic flow now via the conveyor.
- README bullet and tree.