Эпик. Совместить операции изготовления двусторонней платы друг с другом. Задача распадается на два независимых совмещения с разной физикой.
Две задачи совмещения
- Top ↔ Bottom засветки. Светим верх → переворачиваем плату → светим низ с зеркалом. Низ должен сесть под верхом. Решается физикой приспособы (центрирование + переворот вокруг оси) + минимальной поддержкой в софте.
- Засветка ↔ Сверловка. Плата засвечена/протравлена → переносится на CNC. Станок должен попасть сверлом в графику. Решается центровкой по реперам на станке.
Принципы
- Засветка остаётся тупой: центрирует панель по центру экрана (уже есть) + зеркалит обратную сторону вокруг центральной оси. Приспособу софт НЕ моделирует — это забота пользователя.
- Flow не зашиваем: софт не диктует порядок (резист до/после сверловки, число заходов). Даёт операцию центровки, применяемую там, где у пользователя разрывается базирование.
- Реперы — общий якорь для CNC-операций (сверловка/фреза/контур). К засветке отношения не имеют.
Базирование и бюджет точности
Цель — повесить совмещение на реперы, а не на замер габарита. Чувствительность к ошибке замера габарита ε:
| Схема |
Несовпадение |
| По краю/углу |
ε/2 (чувствительно) |
| По центру (симм. упоры) |
≈ 0 |
| По реперам (штифты) |
люфт + точность станка ~0.05 мм |
Целевая — по реперам: габарит нужен только грубо (±0.5 мм). Изначальная сверловка реперов базируется по углу заготовки (реперов ещё нет) — единственное место, где угол участвует; дальше всё на реперах.
Важно для реализации: авторасстановку реперов привязывать к ЦЕНТРУ панели (симметрично), НЕ к краю — иначе вернётся чувствительность ε/2.
Два режима базирования сверловки
Сейчас базирование сверловки — только по углу (DatumCorner). Центровка по реперам НЕ заменяет угол, а добавляется вторым режимом:
- По углу (есть) — для изначальной сверловки самих реперов.
- По реперам (новое) — для всех последующих операций над размеченной платой.
Состав (sub-issues)
- Засветка: ось зеркала X/Y (flip_y + выбор оси + UI).
- Авторасстановка реперов (ось/N/шаг/диаметр, симметрично центру).
- Математика 2D-трансформы + фит по точкам (лист-крейт, юнит-тесты).
- Применение трансформы в эмиттере G-code сверловки.
- Backend центровки (Tauri-команды + хранение измеренных точек).
- UI операции центровки (захват точек jog'ом, невязка, применить/сброс).
Порядок: 1 и 2 независимы (засветка / реперы). 3→4 (математика → эмиттер). 5→6 поверх 3-4.
Эпик. Совместить операции изготовления двусторонней платы друг с другом. Задача распадается на два независимых совмещения с разной физикой.
Две задачи совмещения
Принципы
Базирование и бюджет точности
Цель — повесить совмещение на реперы, а не на замер габарита. Чувствительность к ошибке замера габарита ε:
Целевая — по реперам: габарит нужен только грубо (±0.5 мм). Изначальная сверловка реперов базируется по углу заготовки (реперов ещё нет) — единственное место, где угол участвует; дальше всё на реперах.
Важно для реализации: авторасстановку реперов привязывать к ЦЕНТРУ панели (симметрично), НЕ к краю — иначе вернётся чувствительность ε/2.
Два режима базирования сверловки
Сейчас базирование сверловки — только по углу (DatumCorner). Центровка по реперам НЕ заменяет угол, а добавляется вторым режимом:
Состав (sub-issues)
Порядок: 1 и 2 независимы (засветка / реперы). 3→4 (математика → эмиттер). 5→6 поверх 3-4.