Разработка систем машинного зрения для инспекции печатных плат обычно выглядит так: берёшь датасет, обучаешь модель, смотришь на метрики. Автор этого проекта, работая над магистерским дипломом по автоматизированному распознаванию дефектов, решил пойти иначе — собрать физический стенд, чтобы понять задачу изнутри: как ведёт себя освещение, насколько повторяемы кадры, как механика перемещения влияет на качество изображения.

Перед сборкой был проведён обзор существующих решений. Промышленные AOI-системы (Automated Optical Inspection) — большие, дорогие, требуют отдельной инфраструктуры. Микроскопоподобные стенды фиксируют камеру над одним участком платы без возможности перемещения. Стационарные сканеры среднего класса всё равно оказались слишком громоздкими и дорогими для одиночного инженера. Мультикамерные системы ограничены зоной съёмки. Наиболее близкой по концепции оказалась группа решений вроде MEK iSpector JDz и VeriSpector Low Cost THT AOI: модульная конструкция на профиле, плата лежит неподвижно, а оптический модуль с камерой и подсветкой перемещается сверху. Такие системы поддерживают Z-ось для работы с компонентами разной высоты и при необходимости интегрируются в конвейерную линию.

РешениеПринцип работыОграничения
Промышленные AOI-системыКонвейерная подача платы, высокоскоростная инспекцияБольшие габариты, высокая цена, сложная инфраструктура
Микроскопоподобные стендыПлата на столе, фиксированная камера с высоким увеличениемОграниченная зона съёмки, нет перемещения
Стационарные сканерыПлата неподвижна, оптический модуль сканирует поверхностьСредние габариты, высокая цена для одиночного инженера
Мультикамерные системыНесколько камер одновременноОграниченная зона съёмки
MEK iSpector JDz / VeriSpectorПодвижный оптический модуль над неподвижной платой, Z-осьКоммерческое решение, но концептуально близко к прототипу
DIY-стенд (данный проект)Камера на CoreXY-механике над неподвижной платойВибрация камеры на ременной передаче влияет на качество кадра

Конвейерный вариант автор рассматривал отдельно. Конвейер даёт скорость, но тянет за собой отдельный пласт сложности: механика подачи, синхронизация, стабильность освещения. Для учебно-исследовательского прототипа это избыточно — и, по собственному признанию автора, лишило бы его столкновения с реальными ограничениями программной части.

Камера движется по двум осям над неподвижной платой, последовательно сканируя поверхность — без конвейера и сложной промышленной инфраструктуры.

В итоге был выбран путь бюджетных DIY-решений: алюминиевый профиль как несущая конструкция, ременная передача, два шаговых двигателя. Схема перемещения напоминает CoreXY, применяемую в недорогих 3D-принтерах, — только вместо печатающей головки по двум осям ездит камера. Управление построено на Arduino-совместимом контроллере, питание — от отдельного блока. Хомуты и стяжки, задуманные как временные крепления, в итоге стали постоянной частью конструкции.

Стенд решает три задачи: автоматизированный сбор изображений платы в контролируемых условиях, проверка гипотезы о перемещении камеры (а не платы) как основного принципа сканирования, и выявление того, какие дефекты вообще различимы при данной оптике и механике. Со второй задачей вышла проблема: камера на ременной передаче вибрирует, и это напрямую влияет на качество кадра. Автор честно фиксирует: перемещать камеру над неподвижной платой неудобно именно из-за этого эффекта.

Главный итог проекта — не технический, а методологический. Физический прототип, собранный буквально «на коленке», дал понимание задачи, которое не извлечь из работы с готовыми датасетами: стало видно, как геометрия съёмки влияет на распознавание, где механика создаёт артефакты и почему промышленные системы устроены именно так, а не иначе. Алюминиевый профиль как основа выбран не случайно — конструкция остаётся модульной: рабочий стол можно заменить конвейером, изменить рабочую область или добавить третью ось.