본문으로 건너뛰기

OpenPnP Fiducial Detection 실패: 실제로 작동하는 5가지 수정 방법

· 약 4분
PikkoBot Team
Precision Robotics

OpenPnP가 PCB fiducial을 찾을 수 없으면 전체 작업이 중단됩니다. PikkoBot 기계로 수백 개의 보드를 처리한 경험을 바탕으로, "fiducial not found" 오류의 거의 모든 원인을 해결하는 다섯 가지 수정 방법을 제시합니다.

1. 보드 표면의 반사율이 너무 높음

광택 솔더마스크가 링 라이트를 카메라로 반사시켜 fiducial 원형을 씻어냅니다. 해결 방법은 소프트웨어가 아닌 기계적 조정입니다.

  • PCB를 이소프로필 알코올로 닦아 손자국을 제거하십시오.
  • 보드가 광택 녹색 또는 적색 솔더마스크인 경우, 얇은 디퓨저 링(PETG로 출력 가능, 약 30° 각도)을 사용하여 링 라이트 광원을 약간 기울이십시오.
  • Machine Setup → Cameras → Top Camera → Device Settings에서 상단 카메라 노출을 20-30% 낮추십시오. 히스토그램 피크는 약 60% 밝기에 위치해야 하며, 95%가 아니어야 합니다.

이 문제의 명확한 징후: 보드 모서리에서는 감지가 작동하지만 반사가 가장 강한 중앙 근처에서는 실패합니다.

2. 비전 파이프라인의 블롭 감지기 임계값이 잘못 설정됨

OpenPnP의 기본 fiducial 감지 파이프라인은 보수적인 기본값을 가진 BlobDetector 단계를 사용합니다. 표준 솔더마스크의 1.0mm 구리 fiducial의 경우 이러한 기본값이 작동합니다. 비표준의 경우에는 작동하지 않습니다.

파이프라인 편집기를 엽니다: Job → PCB Fiducials → fiducial 우클릭 → Edit Pipeline.

다음 단계를 순서대로 조정하십시오:

단계확인 사항일반 값
ImageCapture선택된 카메라 = Top Camera
ThresholdthresholdValue가 솔더마스크 밝기와 일치100–140 (녹색), 60–80 (적색)
BlobDetectorminAreamaxArea가 fiducial 크기(픽셀²)를 포함1.0mm fiducial, 0.05mm/px의 경우: ~400–2000
BlobDetectorminCircularity0.85 (무광택 보드의 경우 완화)
MaskCircle예상 위치 주변 검색 반경20–40 px

각 변경 후, 정지된 보드 이미지로 Process Pipeline을 클릭하여 각 단계에서 무엇이 남아 있는지 확인하십시오.

3. 카메라 초점이 맞지 않음

상단 카메라 렌즈는 제조 시 설정된 고정 초점 거리를 가지고 있습니다. 부품 비전(더 가까운 초점)을 위해 조정한 경우, PCB 높이에서의 fiducial 감지는 흐릿하게 보이며 BlobDetector는 부드러운 가장자리를 거부합니다.

빠른 테스트:

  1. 상단 카메라를 fiducial 위로 이동하십시오.
  2. 라이브 피드를 확인하십시오 — 가장자리가 선명합니까, 흐릿합니까?
  3. 흐릿한 경우 두 가지 선택이 있습니다:
    • fiducial 높이에 맞게 카메라 초점 링을 조정하십시오(부품 픽업 확인의 선명도가 떨어짐 — 일반적으로 권장되지 않음).
    • 더 나은 방법: BlobDetector minCircularity를 0.7로 낮추어 더 부드러운 가장자리를 허용하고, MaskCircle을 강화하여 오탐지를 보상하십시오.

4. mm/픽셀 보정이 변경됨

OpenPnP는 하나의 카메라 픽셀이 몇 밀리미터를 나타내는지 알아야 합니다. 이 값이 5%만 틀려도 MaskCircle의 검색 창이 실제 fiducial 위치에 중앙 정렬되지 않습니다.

캘리퍼스로 측정한 알려진 기준(fiducial)을 사용하여 재보정하십시오:

  1. 기준 보드를 스테이징 플레이트 높이에 놓으십시오.
  2. Machine Setup → Cameras → Top Camera → Calibration → mm/Pixel Calibration.
  3. 알려진 fiducial 직경으로 마법사를 따르십시오.
  4. 저장하십시오. fiducial 감지를 다시 실행하십시오.

이를 가리키는 증상: 감지가 무언가를 찾지만 실제 fiducial에서 일관되게 1–3mm 떨어져 있습니다.

5. fiducial이 OpenPnP가 생각하는 위치에 없음

PCB를 가져왔지만 PCB 파일의 fiducial 좌표가 실제 보드와 일치하지 않는 경우(예: 잘못된 원점, 미러링된 설계, 또는 보드를 뒤집은 경우), OpenPnP는 빈 공간을 찾습니다.

다음으로 확인하십시오:

  • OpenPnP에서 PCB 파일을 열고 fiducial X/Y를 확인하십시오.
  • 헤드를 해당 좌표로 수동 이동하십시오.
  • 라이브 카메라 피드를 보십시오. fiducial이 대략 중앙에 있어야 합니다.

보드의 너비 또는 높이만큼 정확히 벗어난 경우 원점 불일치입니다. 원점을 왼쪽 하단 fiducial로 설정하여 PCB를 다시 내보내십시오.

빠른 점검 목록

fiducial 감지가 실패하면 다음을 확인하십시오:

  • PCB를 IPA로 세척함
  • 링 라이트가 카메라를 직접 비추지 않음
  • 상단 카메라 노출이 최대가 아님
  • 비전 파이프라인 ThresholdBlobDetector를 파이프라인 편집기에서 검토함
  • 카메라가 PCB 높이에서 초점이 맞음
  • mm/픽셀 보정이 지난 한 달 이내에 수행됨
  • PCB 파일 좌표가 실제 보드와 일치하는지 확인함

모든 항목을 확인했는데도 여전히 실패하는 경우, 일반적으로 문제는 솔더마스크 자체입니다. 다른 테스트 보드나 다른 fiducial 모양(1.0mm 원 대신 1.5mm 원)을 시도해 보십시오.


fiducial 감지를 위해 사전 보정된 상태로 제공되는 기계 설정은 PikkoBot JUKI config를 참조하십시오 — 표준 녹색 및 검정색 솔더마스크에 맞게 조정된 파이프라인이 포함되어 있습니다. OpenPnP 외부에서 카메라 및 조명을 직접 테스트하려면 PikkoBot Debug Tool을 사용하십시오.