Skip to content

Совмещение операций: двусторонняя засветка + центровка сверловки по реперам #656

@fixcik

Description

@fixcik

Эпик. Совместить операции изготовления двусторонней платы друг с другом. Задача распадается на два независимых совмещения с разной физикой.

Две задачи совмещения

  1. Top ↔ Bottom засветки. Светим верх → переворачиваем плату → светим низ с зеркалом. Низ должен сесть под верхом. Решается физикой приспособы (центрирование + переворот вокруг оси) + минимальной поддержкой в софте.
  2. Засветка ↔ Сверловка. Плата засвечена/протравлена → переносится на CNC. Станок должен попасть сверлом в графику. Решается центровкой по реперам на станке.

Принципы

  • Засветка остаётся тупой: центрирует панель по центру экрана (уже есть) + зеркалит обратную сторону вокруг центральной оси. Приспособу софт НЕ моделирует — это забота пользователя.
  • Flow не зашиваем: софт не диктует порядок (резист до/после сверловки, число заходов). Даёт операцию центровки, применяемую там, где у пользователя разрывается базирование.
  • Реперы — общий якорь для CNC-операций (сверловка/фреза/контур). К засветке отношения не имеют.

Базирование и бюджет точности

Цель — повесить совмещение на реперы, а не на замер габарита. Чувствительность к ошибке замера габарита ε:

Схема Несовпадение
По краю/углу ε/2 (чувствительно)
По центру (симм. упоры) ≈ 0
По реперам (штифты) люфт + точность станка ~0.05 мм

Целевая — по реперам: габарит нужен только грубо (±0.5 мм). Изначальная сверловка реперов базируется по углу заготовки (реперов ещё нет) — единственное место, где угол участвует; дальше всё на реперах.

Важно для реализации: авторасстановку реперов привязывать к ЦЕНТРУ панели (симметрично), НЕ к краю — иначе вернётся чувствительность ε/2.

Два режима базирования сверловки

Сейчас базирование сверловки — только по углу (DatumCorner). Центровка по реперам НЕ заменяет угол, а добавляется вторым режимом:

  • По углу (есть) — для изначальной сверловки самих реперов.
  • По реперам (новое) — для всех последующих операций над размеченной платой.

Состав (sub-issues)

  1. Засветка: ось зеркала X/Y (flip_y + выбор оси + UI).
  2. Авторасстановка реперов (ось/N/шаг/диаметр, симметрично центру).
  3. Математика 2D-трансформы + фит по точкам (лист-крейт, юнит-тесты).
  4. Применение трансформы в эмиттере G-code сверловки.
  5. Backend центровки (Tauri-команды + хранение измеренных точек).
  6. UI операции центровки (захват точек jog'ом, невязка, применить/сброс).

Порядок: 1 и 2 независимы (засветка / реперы). 3→4 (математика → эмиттер). 5→6 поверх 3-4.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:cnc-drillCNC: сверловкаepicЭпик: связанный workstream (родитель sub-issues)

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions