The idea
How do software decisions become safe, coordinated physical motion? I built a digital twin of an automated material handling system (AMHS) to explore that question through the movement of 300 mm wafer carriers, known as FOUPs, inside a simulated semiconductor fab.
The approach
A deterministic state machine coordinates overhead hoist transport (OHT), from pickup to delivery. The model connects dispatch logic to acceleration-limited servo motion, position feedback, timed hoist transfers, and emergency-stop recovery.
My contribution
- Modeled multi-vehicle transport, FIFO dispatch, and pickup/drop-off sequencing in typed Python.
- Connected a proportional position-to-velocity controller with acceleration limits and target-crossing detection.
- Built a browser control room with vehicle animation, telemetry, time controls, pause/reset, and fault injection.
- Added automated tests, GitHub Actions CI, and system architecture documentation.
What I learned
The project makes control boundaries visible: scheduling requests, controller states, plant motion, sensor feedback, and the operator interface can be inspected together.