Update README with data descriptions and alignment states; remove old screenshot

- Clarified sections on real and fabricated data in the README.
- Added detailed descriptions of alignment states with corresponding conditions and visual indicators.
- Removed outdated screenshot and added new images for each alignment state (Ready, Aligning, Fault).
This commit is contained in:
Your Name
2026-05-28 11:21:28 -07:00
parent 958fde9050
commit c7174c476e
5 changed files with 25 additions and 5 deletions
+25 -5
View File
@@ -1,6 +1,6 @@
# Wafer Position Monitor (demo)
PySide6 desktop demo: load NanoBerry edge CSVs from `MASTER_SD/`, fit a wafer circle, show **X / Y / theta** offset and **sigma** vs a calibration baseline. No live camera required.
PySide6 desktop demo: load NanoBerry edge CSVs from `MASTER_SD/`, fit a wafer circle, show **X / Y / theta** offset and **sigma** vs a calibration baseline. No live camera integrated yet.
**Stack:** Python 3.11+, PySide6, NumPy.
@@ -14,11 +14,11 @@ wafer-user # or: python src/wafer_edge/App.py
Click **Read Wafer** to load the demo CSVs. Tests: `python -m pytest tests/` (UI smoke needs a display).
## Demo data
## Data
CSV files in `[MASTER_SD/](MASTER_SD/)`. Names: `{S|R}{1|2}{seq}P0.CSV` — local/remote board, SPI camera, 4-digit sequence (e.g. `S10540P0.CSV`).
**Real data** `[MASTER_SD/](MASTER_SD/)`: CSV files from actual NanoBerry camera captures. Names: `{S|R}{1|2}{seq}P0.CSV` — local/remote board, SPI camera, 4-digit sequence (e.g. `S10540P0.CSV`).
Default cameras: `CsvSource.DEMO_CAMERA_PATHS`. Change that dict or use `parse_csv_filename()` for other captures.
**Fabricated data**`[DATA/0610/](DATA/)`: Generated test data used by `CsvSource.DEMO_CAMERA_PATHS` (the default demo source). Change that dict or use `parse_csv_filename()` for other captures.
## Calibration
@@ -36,4 +36,24 @@ First run creates `baseline.json` (gitignored). Key fields: `center_mm`, `radius
**Pipeline:** `DEMO_CAMERA_PATHS``load_camera_records_from_csv()``snapshot_from_records()` → UI.
![APP screenshot](screenshot.png)
## Alignment states
The monitor derives one of three states from the fitted circle on every read:
| State | Condition | Dot |
| ------------ | ------------------------------------ | -------- |
| **Ready** | offset ≤ 0.10 mm **and** σ ≤ 0.05 mm | 🟢 green |
| **Aligning** | offset ≤ 0.50 mm **and** σ ≤ 0.20 mm | 🟡 amber |
| **Fault** | offset > 0.50 mm **or** σ > 0.20 mm | 🔴 red |
### Ready — wafer within tolerance
![Ready state](screenshots/state_ready.png)
### Aligning — wafer correcting, noisy cameras
![Aligning state](screenshots/state_aligning.png)
### Fault — wafer out of range
![Fault state](screenshots/state_fault.png)
BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 724 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB