Вы установили камеру, написали программу распознавания, запустили систему — а робот стабильно промахивается на 2–3 мм. Или того хуже: камера «видит» деталь, но координаты, которые она передаёт роботу, не соответствуют реальному положению объекта в пространстве. Знакомая ситуация?
Причина почти всегда одна — калибровка камеры технического зрения либо не выполнена, либо выполнена некорректно. Калибровка — это не «настройка на глаз», а строгий математический процесс, который связывает пиксели на изображении с реальными координатами в пространстве. Без неё система технического зрения бесполезна, как линейка без делений.
В этой статье мы разберём практические шаги калибровки и настройки систем технического зрения, которые можно выполнить на предприятии: от внутренней калибровки камеры до hand-eye calibration и устранения типичных ошибок. Вы получите пошаговое руководство, которое поможет настроить систему самостоятельно или грамотно поставить задачу интегратору.
Что такое калибровка технического зрения и зачем она нужна
Калибровка системы технического зрения решает три ключевые задачи:
- Внутренняя калибровка (intrinsic calibration) — определение параметров самой камеры: фокусное расстояние, оптический центр, коэффициенты дисторсии (искажений объектива).
- Внешняя калибровка (extrinsic calibration) — определение положения камеры относительно рабочей сцены или робота.
- Hand-eye calibration — привязка системы координат камеры к системе координат робота-манипулятора.
Без внутренней калибровки камера «не знает» своих собственных параметров. Без внешней — не понимает, где находится относительно деталей. Без hand-eye — не может передать роботу корректные координаты для захвата.
Практическое правило: если система технического зрения работает нестабильно, в 80% случаев проблема не в алгоритмах распознавания, а в калибровке или условиях съёмки.
Шаг 1. Внутренняя калибровка камеры (intrinsic calibration)
Внутренняя калибровка определяет матрицу внутренних параметров камеры и коэффициенты дисторсии. Это фундамент, без которого невозможны никакие точные измерения.
Подготовка калибровочной мишени
Вам понадобится калибровочная мишень — любой контрастный объект с заведомо известной геометрией. Классический пример — шахматная доска (checkerboard) или ChArUco-доска (комбинация шахматной доски и ArUco-маркеров). На практике часто используют что-то из того, с чем камера будет работать на производстве: эталонную деталь, контрольный образец с чёткими метками, специальную пластину с нанесённым паттерном.
Требования к мишени:
- Матовая поверхность (без бликов).
- Жёсткое основание (не бумага — она деформируется).
- Известный размер клетки (например, 30 мм).
- Чёткие контрастные границы.
ChArUco-доска предпочтительнее: она устойчива к частичному перекрытию и обеспечивает более точное определение углов.
Сбор изображений
Камера должна «увидеть» мишень в разных положениях и под разными углами. Это критически важно: если все снимки сделаны с одного ракурса, калибровка будет неточной.
Правила съёмки:
- Количество изображений: 20–30 штук.
- Разнообразие ракурсов: мишень должна появляться в центре, по краям, в углах кадра.
- Наклоны: углы наклона до 45°, но не более.
- Резкость: без смазывания, мишень в фокусе.
- Освещение: равномерное, без бликов на мишени.
Типичная ошибка: все снимки сделаны с фронтального положения, только с разного расстояния. Это не даёт информации о наклонах и приводит к ошибочным коэффициентам дисторсии.
Обработка и вычисление параметров
Для обработки используются инструменты:
- Matlab Camera Calibration Toolbox — простой графический интерфейс.
- OpenCV (cv2.calibrateCamera) — для программной интеграции.
- ROS camera_calibration — для робототехнических систем.
Что вы получите на выходе:
- Матрица внутренних параметров (fx, fy, cx, cy).
- Коэффициенты дисторсии (k1, k2, p1, p2, k3).
- Ошибка репроекции — ключевой показатель качества калибровки. Для хорошей калибровки она должна быть менее 1 пикселя.
Важно: если ошибка репроекции велика, удалите изображения с наибольшей ошибкой и пересчитайте калибровку.
Шаг 2. Внешняя калибровка и привязка к рабочей сцене
После внутренней калибровки камера «знает» свои параметры, но ещё не понимает, где находится в пространстве. Внешняя калибровка решает эту задачу.
Калибровка для стационарной камеры (Eye-to-Hand)
Если камера закреплена стационарно (над конвейером, на кронштейне), внешняя калибровка определяет её положение относительно рабочей зоны или базы робота.
Метод с роботом (основной для Eye-to-Hand): робот перемещает калибровочную мишень (или инструмент) в 9 и более точек в поле зрения камеры. Для каждой точки записываются координаты робота и соответствующие координаты в изображении. По этим данным вычисляется матрица преобразования «камера — база робота».
Дополнение: вместо сбора координат с нескольких точек робота можно построить матрицу преобразований по одному контрастному предмету с заведомо известными размерами и положением — например, по упомянутой выше калибровочной мишени. Этот способ проще, но менее точен: он не компенсирует погрешности кинематики робота.
Калибровка для камеры на руке (Eye-in-Hand)
Если камера закреплена на фланце робота (рядом с захватом), внешняя калибровка — это hand-eye calibration, которая определяет фиксированное преобразование между камерой и захватом.
Процесс:
- Камера закреплена на руке. В рабочей зоне фиксируется калибровочная мишень — например, шахматная доска или контрастный эталонный объект с известной геометрией. Важно: мишень должна быть неподвижна на протяжении всей калибровки.
- Робот перемещается в разные позиции и ориентации (минимум 10–15 положений).
- Для каждой позиции записываются: положение захвата относительно базы робота (из контроллера) и положение мишени относительно камеры (из изображения).
- По этим данным вычисляется матрица преобразования «камера — захват».
Ключевое требование: разнообразие позиций робота. Если все позиции близки, калибровка будет неустойчивой.
Шаг 3. Практическая настройка системы на предприятии
После математической калибровки наступает этап практической настройки. Здесь важно учесть реальные условия производства.
Настройка освещения и проверка качества изображения
Перед запуском системы в работу обязательно проверьте:
- Равномерность освещения: яркость в центре и по краям кадра не должна отличаться более чем на 10–15%.
- Отсутствие бликов: на глянцевых поверхностях используйте поляризационные фильтры.
- Стабильность экспозиции: настройте время экспозиции так, чтобы движущиеся детали не смазывались.
- Независимость от природного освещения: убедитесь, что изображение на камере не меняется в течение дня. Если в цехе есть окна или прозрачные конструкции, естественный свет будет «гулять» по сцене в зависимости от времени суток и погоды. Это одна из самых частых причин нестабильной работы систем технического зрения. Решение — локальная светозащита (шторки, кожухи) и искусственное освещение с постоянными параметрами.
Flat-field calibration: если неравномерность яркости значительна, выполните плоскополевую калибровку — снимите изображение однородной белой поверхности и используйте его для коррекции яркости каждого пикселя. Это снижает ложные срабатывания и пропуски дефектов.
Интеграция с роботом и PLC
Система технического зрения должна не просто «видеть», но и передавать решения роботу или PLC в машиночитаемом виде.
Ключевой принцип: система зрения определяет, что она видит (координаты, дефекты, классы), а PLC управляет когда и как выполняется действие (тайминг, безопасность, пневматика).
Интерфейсы для передачи данных:
- OPC UA — для интеграции с АСУТП.
- Modbus TCP — простой и распространённый протокол.
- EtherNet/IP — для Rockwell/Allen-Bradley.
- Profinet — для Siemens.
- Дискретные сигналы — для простых задач «годен/брак».
Система зрения передаёт в PLC результат проверки: признак завершения инспекции, решение «годен/брак», код дефекта и уровень уверенности. PLC, получив эти сигналы, управляет отбраковочным механизмом и передаёт данные в MES.
Периодическая проверка и обслуживание
Калибровка — не разовое мероприятие. Вибрации, температурные деформации, замена оборудования — всё это «сдвигает» калибровку.
Рекомендуемая периодичность:
- Ежедневно: визуальный осмотр оптики, проверка чистоты.
- Еженедельно: проверка по контрольной точке (известный объект в известном месте).
- Ежемесячно: проверка калибровки, при необходимости — перекалибровка.
- Ежегодно: полная проверка системы с участием интегратора.
Типичные ошибки при калибровке и как их избежать
Ошибка 1. Недостаточное разнообразие поз при внутренней калибровке
Симптом: высокая ошибка репроекции, нестабильные результаты.
Причина: все снимки сделаны с фронтального ракурса, без наклонов.
Решение: обеспечьте минимум 3–5 разных пространственных положений мишени, с наклонами по осям X, Y, Z не менее 10–20°.
Ошибка 2. Игнорирование дисторсии объектива
Симптом: прямые линии на изображении выглядят изогнутыми, особенно по краям кадра.
Причина: коэффициенты дисторсии не вычислены или не применены.
Решение: обязательно включайте модель дисторсии в калибровку. Для широкоугольных объективов используйте модель с несколькими коэффициентами.
Ошибка 3. Калибровка на «холодной» системе
Симптом: утром система работает, к обеду — ошибки растут.
Причина: температурные деформации меняют геометрию системы.
Решение: калибруйте систему после прогрева (30–60 минут работы) или используйте термокомпенсацию.
Ошибка 4. Недостаточное количество поз при hand-eye calibration
Симптом: робот промахивается, ошибка нестабильна при разных ориентациях.
Причина: робот двигался в близких позах, данные не покрывают все степени свободы.
Решение: используйте минимум 15–20 разных поз с широким разбросом по вращению и перемещению.
Ошибка 5. Игнорирование ошибки TCP (инструмента)
Симптом: даже при идеальной калибровке камеры робот «мажет» на несколько миллиметров.
Причина: неправильно определён центр инструмента (TCP). Камера откалибрована, но робот не знает, где находится его рабочий орган.
Решение: калибруйте TCP отдельно для каждого сменного захвата. Используйте быстросменные крепления с предварительно откалиброванными TCP.
Ограничения и что нельзя исправить калибровкой
- Механический люфт робота. Если редукторы изношены, никакая калибровка не даст точности выше люфта. Требуется ремонт или замена робота.
- Нестабильное освещение. Если свет «гуляет» от смены к смене, калибровка не спасёт. Нужна стабилизация освещения.
- Деформация заготовок. Если детали «гуляют» по геометрии, калибровка не поможет — нужны адаптивные алгоритмы и техническое зрение с обратной связью.
- Вибрации. Если камера или робот вибрируют, изображения смазываются. Требуется виброизоляция.
Рекомендации по организации калибровки на предприятии
- Назначьте ответственного. Калибровка — это регулярный процесс, а не разовая акция. Назначьте инженера, который отвечает за её выполнение и документирование.
- Создайте «золотой образец». Храните контрольную деталь или мишень, по которой можно быстро проверить калибровку (1–2 минуты).
- Документируйте всё. Записывайте: дату калибровки, параметры, ошибку репроекции, кто выполнял. Это поможет при диагностике проблем.
- Используйте автоматизацию. Если калибровка выполняется часто (сменные захваты, частая переналадка), рассмотрите автоматические системы калибровки с закреплёнными мишенями.
- Обучайте персонал. Оператор должен понимать, когда калибровка «поплыла» и что делать. Простая проверка по контрольной точке — навык, который окупается.
- Привлекайте интегратора на старте. Первая калибровка должна выполняться специалистом. Наблюдайте, задавайте вопросы, записывайте процесс — это лучший способ научиться.
Заключение
Калибровка камеры технического зрения — это не «настройка на глаз», а строгий инженерный процесс, который определяет, будет ли система работать вообще. Внутренняя калибровка даёт камере «зрение», внешняя — «пространственное понимание», hand-eye calibration — «связь с роботом».
Практическое руководство на предприятии включает не только математику, но и организацию: регулярную проверку, документирование, обучение персонала. Типичные ошибки — недостаточное разнообразие поз, игнорирование дисторсии, калибровка на «холодной» системе — предотвратимы, если следовать чёткому алгоритму.
Хотите настроить систему технического зрения на вашем производстве? Пришлите нам описание вашей задачи — тип камеры, условия съёмки, требуемую точность. Наши инженеры помогут с калибровкой и настройкой системы.
