사용자 메뉴얼 - Helsparrow/OpenpnpDocs_KR GitHub Wiki

소개

OpenPnP는 오픈 소스 SMT 픽 앤 플레이스 시스템으로, 매니아 층을 염두에 두고 설계 및 제작되었지만 상업용 픽 앤 플레이스 작업을 실행할 수 있는 기능과 성능을 갖추고 있습니다. 본 오픈소스의 목표는 몇 가지 이상의 무언가를 만들어야 하는 사람의 책상 위에 픽 앤 플레이스를 제공하는 것입니다.

OpenPnP는 하드웨어/펌웨어/소프트웨어 세 가지 구성 요소로 구성됩니다. 이 사용 설명서는 소프트웨어에만 초점을 맞춥니다. 하드웨어 및 펌웨어에 대한 정보를 얻으려면 http://openpnp.org 를 방문하십시오.

이 설명서의 목적은 소프트웨어를 시작하고 실행하는 데 도움을 주고 환경 설정 및 작동 방법을 알려드리는 것입니다.

시작하기

OpenPnP를 처음 사용하는 경우 빠른 시작 가이드를 참조하여 소프트웨어를 빠르게 시작하고 실행하고 편안하게 사용할 수 있습니다. 완료되면 세부 정보를 얻을 수 있도록 여기로 다시 안내합니다.

설치 및 교정 작업

자신의 장비로 OpenPnP를 설정하려면 설치 및 교정 가이드를 참조하세요. 아직 머신이 없는 경우 시뮬레이터 모드에서 OpenPnP를 사용하여 이 설명서를 계속 작업할 수 있습니다. OpenPnP는 이 방식을 기본값으로 시작됩니다.

기본 사항

핵심적으로 OpenPnP는 컴퓨터 수치 제어(CNC) 컨트롤러입니다. job 파일을 읽은 다음 컴퓨터로 명령어를 전송하여 실행합니다. 3D 프린터, 밀링 머신 및 선반용 일반적인 CNC 컨트롤러와 달리 OpenPnP는 피드백을 위해 카메라를 사용하므로 사용자 인터페이스 내에서 작업을 완벽하게 구성할 수 있습니다.

아래의 정의와 설명은 일반적으로 OpenPnP와 픽 앤 플레이스에서 사용되는 용어를 소개합니다.

좌표계

OpenPnP는 물리학, 수학, 3D 그래픽 및 많은 CAD 패키지에서도 사용되는 오른손 좌표계를 사용합니다.

이 좌표계에 대한 보다 공식적인 정의는 Wikipedia 페이지를 참조하십시오.

이 좌표계에서 우리는 기계 위에 서서 기계를 내려다보고 있습니다.

X축이 좌우로 움직입니다. 우향이 양수입니다. Y축이 전후로 움직입니다. 후향이 양수입니다. Z축이 상하로 움직입니다. 상향이 양수입니다. C 또는 회전 축은 시계 방향 및 시계 반대 방향으로 회전합니다. 시계 반대 방향이 양수입니다.

screen shot 2016-06-18 at 12 56 07 pm

X, Y 및 Z 축의 단위는 GUI에서 설정됩니다. 기본값은 밀리미터입니다. C 축의 단위는 도입니다. OpenPnP는 회전을 도 단위로 측정하고 컨트롤러의 관점에서 밀리미터처럼 취급합니다.

중요한 정의

  • Board: 보드는 PCB의 물리적 버전입니다. PCB의 모든 새 버전은 새 보드입니다. 보드에는 부품을 배치할 위치를 OpenPnP에 알려주는 placements가 포함되어 있습니다.
  • Fiducial: fiducial 또는 fiducial mark는 기계가 매우 정확하게 PCB를 자동으로 찾는 데 도움이 되는 PCB의 작은 점입니다. fiducial은 일반적으로 큰 keepout area 가운데 위치한, 솔더 페이스트가 도포되지 않은 작은 원형 패드입니다.
  • Part: 부품은 보드에 배치하기 위한 특정 구성 요소입니다. 종종 제조업체 부품 번호와 동의어입니다. 값이 다른 두 부품은 서로 다른 부품입니다. 예를 들어 10k 0603 저항은 22k 0603 저항과 다른 부품입니다. 모든 부품에는 패키지도 지정됩니다.
  • Package: 패키지는 길이와 너비, 공간과 같은 부품의 물리적 속성을 설명합니다. 많은 부품에 동일한 패키지가 있습니다. 패키지의 몇 가지 예로는 0603 저항, 0603 커패시터, SOIC-8, TQFP-32 등이 있습니다.
  • Placement: placement는 부품을 배치해야 하는 PCB의 위치입니다. 이들은 일반적으로 PCB를 설계할 때 부품을 배치한 X 및 Y 좌표와 동일합니다. 모든 placement에는 보드의 원점에 상대적인 X 및 Y 좌표와 OpenPnP에 어떤 부품이 배치되는지 알려주는 부품 할당이 있습니다.
  • Job: Job은 시스템이 단일 실행으로 처리할 보드 목록이 포함된 파일입니다. Job에는 동일한 보드의 여러 개를 포함하여 원하는 수의 보드를 혼합하여 포함할 수 있습니다.
  • Footprint: footprint는 부품에 있는 패드의 수와 모양에 대한 정의입니다. footprint는 현재 OpenPnP에서 사용되지 않습니다.
  • Reticle: reticle은 이미지의 중심을 보는 데 도움이 되는 카메라 화면에 오버레이되는 십자선 또는 기타 모양입니다. reticle은 눈금자 또는 임의 모양을 임의의 물리적 크기로 표시할 수도 있습니다.
  • Driver: driver는 OpenPnP의 명령을 기계가 이해할 수 있는 명령으로 변환하는 OpenPnP의 일부입니다. 많은 기계들이 Gcode를 사용하며, 그것은 OpenPnP에서 가장 일반적으로 사용되는 드라이버입니다. OpenPnP는 다른 드라이버를 사용하여 Gcode, ASCII 또는 독점 프로토콜을 사용하든 상관없이 다양한 유형의 시스템과 통신할 수 있습니다.
  • Bottom Vision: 하단 비전은 위쪽을 향한 카메라와 컴퓨터 비전을 사용하여 부품을 배치하기 전에 부품을 자동으로 검사하는 프로세스를 말합니다. 이 검사를 통해 OpenPnP는 피더에서 placement로 직접 이동하는 것보다 훨씬 정확하게 부품을 배치할 수 있습니다.
  • Top Vision: 상단 비전는 일반적으로 헤드에 장착되는 하향식 카메라입니다. 이것은 fiducial을 식별하거나 비전 지원 피더의 컴퓨터 비전에 사용됩니다.
  • Feeder: 피더는 부품을 공급할 수 있는 하드웨어일 수도 있고 하드웨어가 아닌 소스에서 부품을 선택할 수 있는 OpenPnP의 기능일 수도 있습니다. OpenPnP는 오토피더, 컷 테이프립, "드래그" 스타일 공급기, 튜브, 트레이 및 느슨한 부품 상자에서의 공급을 지원합니다.
  • Head: 헤드는 X와 Y축 모두에서 움직일 수 있는 기계의 일부입니다. 헤드는 노즐과 탑 비전 카메라를 운반하기도 합니다.
  • Nozzle: 노즐은 부품을 픽업하기 위해 상하로 움직일 수 있는 기계 부품입니다. 부품을 집어 올리기 위해 실제로 접촉하는 부분이 노즐 팁인데, 이것이 일반적인 혼동의 원인입니다. 노즐은 노즐 팁을 운반하고 노즐 팁은 부품에 접촉합니다. 기계에는 원하는 수 만큼의 노즐을 달 수 있습니다.
  • Nozzle Tip: 노즐 팁은 기계가 실제로 부품에 접촉하고 집어올리는 부분입니다. 노즐 팁은 노즐에 장착되며, 노즐에는 여러 개의 노즐 팁이 할당될 수 있습니다. 노즐 팁은 일반적으로 픽업하도록 설계된 부품의 크기에 따라 선택됩니다. OpenPnP는 또한 노즐 팁을 자동으로 교체하여 다양한 부품을 픽업할 수 있습니다.

유저 인터페이스

OpenPnP에는 여러 섹션으로 나누어진 단일 창 인터페이스가 있습니다. 해당 섹션은 아래에서 자세히 설명합니다.

The Main Window

OpenPnP의 기본 창은 여러 섹션으로 구성되어 있습니다. 주요 섹션은 기계 제어, 디지털 판독(DRO), 카메라 패널, 탭 인터페이스입니다.

screen shot 2017-04-14 at 6 15 55 pm

Machine Controls

screen shot 2017-01-09 at 7 59 34 pm

Machine Controls는 머신과 상호 작용하기 위한 인터페이스입니다. 여기에서 다음을 수행할 수 있습니다:

  • 전원 버튼으로 머신을 켜고 끕니다.
  • 설정 작업에 사용할 노즐을 선택합니다.
  • 조그 버튼으로 현재 선택된 노즐을 조그합니다.
  • 거리 슬라이더를 사용하여 각 조그에서 기계가 이동하는 거리를 변경합니다.
  • 속도 슬라이더를 사용하여 움직임의 속도를 변경합니다.
  • Special, Actuators 및 Dispense 탭을 사용하여 고급 작업을 트리거합니다.
  • Park 버튼을 눌러 X/Y축, Z축 또는 C축을 머리에 정의된 주차 위치로 이동합니다.
  • Home 버튼을 누르면 원점으로 복귀합니다. 장비를 시작할 때마다 이 작업을 수행해야 합니다.

Digital Read Outs (DROs)

screen shot 2017-01-09 at 8 03 00 pm

DRO는 선택한 노즐의 현재 위치를 원하는 단위로 표시합니다. DRO를 클릭하여 상대 모드로 설정하면 0이 되고 파란색으로 바뀝니다. 이것을 사용하여 거리를 측정할 수 있습니다. DRO는 처음 클릭한 위치로부터의 거리를 표시합니다. 일반 모드로 돌아가려면 다시 클릭하십시오.

표시된 좌표가 컨트롤러로 전송된 좌표와 같지 않을 수 있습니다. 이는 OpenPnP에 헤드의 항목이 서로 관련된 위치를 알려주는 헤드 오프셋 때문입니다. DRO에 표시된 좌표는 기계의 좌표와 선택한 노즐의 헤드 오프셋입니다.

The Camera Panel

screen shot 2016-06-18 at 1 23 19 pm

카메라 패널은 카메라의 이미지가 표시되는 곳입니다. 드롭다운에서 현재 표시되는 카메라를 선택하거나 모든 카메라 또는 없음을 선택하여 표시할 수 있습니다. 여러 대의 카메라가 표시되면 여러 대의 카메라 뷰로 분할됩니다.

각 카메라 보기에서 마우스 오른쪽 단추를 눌러 해당 카메라에 대한 옵션을 설정할 수 있습니다. 가장 중요한 것은 여기서 레티클을 선택할 수 있다는 것입니다. 레티클은 카메라 뷰의 오버레이로 대상을 지정하는 데 도움이 됩니다. 십자선 레티클로 시작해서 당신이 선호하는 것을 보기 위해 다른 옵션들 중 몇 가지를 시도해야 합니다.

Shift 키를 누른 상태에서 카메라 보기에서 마우스 왼쪽 버튼을 클릭하여 노즐을 해당 위치로 이동할 수도 있습니다. 이것은 카메라 조깅이라고 불립니다. 카메라 조깅은 카메라를 원하는 곳으로 "드래그" 하기 쉽게 해줍니다.

상단 탭

GUI Tabs

창 오른쪽에 있는 탭은 모든 작업 운영, 작업 설정 및 구성이 이루어지는 곳입니다. 탭에 대한 자세한 내용은 아래 섹션에서 다루지만 간략한 개요는 다음과 같습니다:

  • Job: Job 설정 및 제어.
  • Parts: 신규 부품 생성, 부품 픽업 테스트.
  • Packages: 패키지 생성, 풋프린트 설정. Fiducials에 중요함.
  • Vision: 하단 비전 및 fiducial 비전 설정.
  • Feeders: 피더 셋업 및 공급 부품 지정.
  • Machine Setup: 기계 하드웨어 및 설정의 모든 측면에 대한 환경설정.
  • Issues & Solutions: 당신의 장비 환경 설정을 설정/최적화/트러블슈팅 할 수 있도록 돕습니다.
  • Log: 시스템의 로그 출력을 표시하고 표시할 세부 정보 수준을 선택할 수 있습니다.

탭의 테이블은 논리적으로 연결될 수 있으므로 목록에서 하나의 항목을 선택하면 해당하는 경우 다른 탭의 관련 항목이 자동으로 선택됩니다. 예를 들어, 배치가 선택되면 부품 탭에서 해당 부품이 선택되고, 패키지 탭에서는 패키지가, 비전 탭에서는 비전 설정이, 부품에 대해 하나가 있는 경우 피더 탭에서 피더가 선택됩니다. 이를 원하면 메뉴에서 활성화하십시오:

Linked Tables

Location Buttons

screen shot 2016-06-18 at 4 46 29 pm

위치 버튼은 OpenPnP 전반에 걸쳐 여러 곳에서 사용됩니다. 어디에서나 볼 수 있는 이러한 버튼과 그 기능에 익숙해지는 것이 좋습니다.

왼쪽부터 버튼은 다음과 같습니다:

  • Capture Camera Location : 카메라가 현재 보고 있는 위치를 캡처하는 데 사용됩니다. 일반적으로 연관된 값의 X, Y, Z 및 회전 필드값을 채우는 데 사용됩니다.
  • Capture Nozzle Location : 위와 동일하지만 노즐 위치를 캡처합니다.
  • Move Camera to Location : 카메라를 지정된 위치로 이동합니다. 일반적으로 관련 필드로 식별되는 위치입니다.
  • Move Nozzle to Location : 위와 동일하지만 노즐 위치로 움직입니다.

다음과 같이 필드 집합과 함께 그룹화된 이러한 단추를 자주 볼 수 있습니다:

screen shot 2016-06-18 at 4 52 04 pm

버튼은 필드를 제어하고 필드의 값에 응답합니다. 작업 탭과 같이 해당되는 경우 개별적으로 사용되는 버튼도 표시됩니다. 여기에서 버튼은 선택한 보드와 관련하여 보드 위치를 캡처하거나 보드로 이동하는 데 사용됩니다.

마지막으로 버튼의 색상과 아이콘을 확인하십시오. 이러한 색상과 아이콘은 시스템 전체에서 동일한 의미로 사용됩니다. 빨간색 아이콘은 경고입니다. - 이 아이콘을 클릭하면 문제가 발생할 수 있습니다. 이 경우 기계가 움직이게 되므로 멀리 떨어져 있는지 확인하십시오. 파란색 아이콘은 캡처를 의미합니다. - 파란색은 이 버튼을 클릭하면 값이 필드로 캡처됨을 나타내는 데 사용됩니다.

키보드 단축키

마우스로 OpenPnP에서 모든 작업을 수행할 수 있지만 키보드 단축키를 알면 작업 속도를 높일 수 있습니다. 가장 일반적인 것은 다음과 같습니다:

  • Ctrl+H: 장비 호밍.
  • Ctrl+Arrow Key: 현재 선택된 노즐을 X와 Y 방향으로 조그합니다. 위쪽 및 아래쪽 화살표는 Y 방향으로, 왼쪽 및 오른쪽 화살표는 X 방향으로 조그합니다.
  • Ctrl+/, Ctrl+': 현재 선택된 노즐을 Z에서 위아래로 조그합니다.
  • Ctrl+<, Ctrl+>: 현재 선택된 노즐을 시계 반대 방향 및 시계 방향으로 회전합니다.
  • Ctrl+Plus, Ctrl+Minus: 조그 거리 슬라이더를 변경합니다. 이것은 각 조그 키가 노즐을 움직이는 거리를 변경합니다.
  • Shift+Left Mouse Click: Shift 키를 누른 상태에서 카메라 뷰의 아무 곳이나 마우스 왼쪽 버튼을 클릭하면 카메라가 해당 위치로 이동합니다.
  • Ctrl-Shift-R: job 시작
  • Ctrl-Shift-S: job 다음 단계로
  • Ctrl-Shift-A: job 중단
  • Ctrl-Shift-P: 헤드 Park(Z축 후퇴 후 XY PARK)
  • Ctrl-Shift-L: Z축만 Park
  • Ctrl-Shift-Z: 헤드를 safe Z로 이동
  • Ctrl-Shift-D: 부품 버리기
  • Ctrl-Shift-F1: 0.01mm / 0.001" 조그 증가량
  • Ctrl-Shift-F2: 0.1mm / 0.01" 조그 증가량
  • Ctrl-Shift-F3: 1mm / 0.1" 조그 증가량
  • Ctrl-Shift-F4: 10mm / 1" 조그 증가량
  • Ctrl-Shift-F5: 100mm / 10" 조그 증가량

아래 단축키는 시스템 명령 수정자 키에 연결되어 있습니다. Windows 및 Linux에서는 Ctrl이고 Mac에서는 Cmd입니다.

  • Modifier+O: Job 열기.
  • Modifier+N: 신규 Job 생성.
  • Modifier+S: Job 저장.
  • Modifier+E: 장비 활성화/비활성화 (전원 버튼).
  • Modifier+`: 호밍.

툴팁

OpenPnP는 도움말 시스템에 툴팁을 광범위하게 사용합니다. 대부분의 버튼 위로 마우스를 가져가면 버튼이 수행하는 작업을 설명하는 툴팁을 볼 수 있습니다. 도구 설명은 작은 노란색 상자에 나타납니다.

screen shot 2018-07-24 at 8 36 53 pm

Job 설정

job은 보드에 대한 위치 및 정보와 함께 하나 이상의 보드로 구성됩니다. job에는 여러 개의 보드가 포함될 수 있으며 동일한 보드 또는 여러 개의 다른 보드가 포함될 수 있습니다.

job의 각 보드 항목은 기계 좌표를 사용하여 하나의 특정 보드를 찾을 위치를 OpenPnP에 알려줍니다. 작업을 실행하면 OpenPnP가 작업의 각 보드에 대한 모든 배치를 처리합니다.

job에 각 보드를 개별적으로 추가하지 않고도 패널화 기능을 사용하여 PCB의 패널을 쉽게 설정할 수 있습니다.

job은 확장자가 .job.xml인 파일에 저장됩니다.

job을 설정할 때 Boards, Placements, Parts, Packages 및 Feeders를 구성해야 합니다. 이들은 모두 아래 섹션에서 소개됩니다.

Boards

보드는 OpenPnP에게 어떤 부품을 어디에 배치할지 알려줍니다. 보드는 확장자가 .board.xml인 파일에 저장됩니다. 보드에는 placements 목록이 포함되어 있습니다. placements는 어떤 부분을 어떤 좌표와 회전으로 배치할지 OpenPnP에 알려줍니다.

Board 파일은 모든 사용자 또는 시스템과 독립적입니다. 주어진 PCB 설계에 대한 보드 파일을 공유하고 파일을 사용하여 특정 PCB를 구축할 수 있습니다.

일반적으로 Eagle 또는 KiCAD와 같은 CAD 소프트웨어에서 데이터를 가져와서 새 보드 파일을 만듭니다. 디자인에 대한 보드 파일을 만든 후에는 디자인이 변경되지 않는 한 변경할 필요가 없습니다.

보드 위치는 PCB 상단의 0, 0, 0(X, Y, Z) 원점을 나타냅니다. 이것은 보드에서 0, 0, 0을 찾을 위치를 기계에 알려주고 거기에서 개별 placements를 찾는 데 필요한 수학을 수행합니다. 노즐 팁이 보드 위의 올바른 높이에서 멈추도록 부품을 배치할 때 부품 높이가 추가됩니다.

screen shot 2018-07-24 at 8 38 21 pm

보드에서 버튼을 클릭하여 새 보드 또는 기존 보드를 작업에 추가할 수 있습니다. 부분.

테이블의 열은 다음과 같습니다:

  • Board: 이 위치에 있는 보드의 이름입니다.
  • Width: 베어 PCB의 너비입니다. 이것은 선택 사항이지만 보드의 상단면에 추가로 하단면을 배치할 경우 설정하면 도움이 됩니다.
  • Length: 베어 PCB의 길이 또는 높이. 현재 OpenPnP에서는 사용되지 않습니다.
  • Side: The side of the board you want to place in this job. Selecting the side tells OpenPnP which placements to place during the job run.
  • X, Y, Z, Rot: 기계의 원점을 기준으로 보드의 X, Y, Z 및 회전 좌표입니다. 이는 복잡한 주제일 수 있습니다. 자세한 내용은 기판 위치 이해하기를 참조하세요.
  • Enabled?: 활성화된 보드만 job에서 처리됩니다. job 실행을 건너뛰려면 보드를 선택 해제 하면 됩니다.
  • Check Fids?: 이 항목을 선택하면 OpenPnP는 보드를 처리하기 전에 기준점 확인을 실행하고 찾은 좌표를 사용하여 보드를 더 잘 찾습니다.

Placements

placement는 부품을 배치하려는 보드의 단일 위치입니다. placement 는 일반적으로 PCB를 설계할 때 생성한 참조 지정자에 해당합니다. 게재위치에는 종종 R1, C1, U1 등과 같은 이름이 있습니다.

각 placement 에는 X 및 Y 좌표, 각도 회전, 배치해야 하는 부품에 대한 정보 및 해당 placement와 관련된 추가 정보가 있습니다.

screen shot 2018-07-24 at 8 43 37 pm

Placements는 일반적으로 PCB CAD 파일을 가져와서 설정하지만 ![](https://rawgit.com/openpnp/openpnp/develop/src/main/resources/icons/general -add.svg) 버튼을 클릭하여 추가한 다음 테이블의 필드를 두 번 클릭하여 편집하여 수동으로 설정할 수도 있습니다.

배치할 부품을 선택하면 해당 부품을 해당 위치에 배치할 것임을 OpenPnP에 알리는 것입니다. OpenPnP는 피더를 찾아 부품을 자동으로 선택합니다.

테이블의 열은 다음과 같습니다:

  • ID: placement의 참조 지정자입니다. 이들은 일반적으로 PCB를 설계할 때 설정한 참조 지정자와 동일합니다.
  • Part: 이 위치에 배치해야 하는 부품.
  • Side: placement가 있는 PCB의 면입니다.
  • X, Y, Rot: 보드의 원점과 관련된 배치의 X, Y 및 회전 좌표입니다. 이들은 일반적으로 PCB 소프트웨어의 좌표와 일치합니다.
  • Type: Place, Ignore 또는 Fiducial 중 하나에서 배치 유형을 설정합니다. 이 보드에 대해 이 placement를 배치하지 않으려면 Ignore를 사용할 수 있습니다. 이것은 종종 DNU(사용하지 마십시오) 또는 DNI(설치하지 마십시오)라고 합니다. placement가 Fiducial 표시를 지정하는 경우 Fiducial을 선택하고 일반 placement인 경우 Place를 선택할 수 있습니다.
  • Placed: placement가 이미 배치되었음을 나타냅니다. 작업이 완료되면 활성화된 모든 placement가 Placed으로 표시됩니다. 실행 중에 OpenPnP가 배치할 placement를 세밀하게 제어하기 위해 이 확인란을 사용할 수 있습니다.
  • Status: 작업을 실행할 준비가 되었음을 알 수 있도록 placement와 관련된 모든 오류를 표시합니다. 일반적인 오류는 잘못된 부품 높이 또는 누락된 공급 장치와 같은 것입니다.
  • Check Fids: Placement Check Fids는 배치를 배치하기 전에 OpenPnP가 기점을 다시 확인하게 하는 고급 기능입니다. 기계가 작업 과정에서 정확도를 잃는 경향이 있는 경우 정확도를 개선하는 데 도움이 될 수 있습니다.

Parts

OpenPnP의 모든 것은 결국 부품으로 되돌아갑니다. 부품은 단순히 보드에 배치하려는 고유한 부품에 대해 OpenPnP에 알리는 레코드입니다. 일반적으로 부품은 포장 유형이 아닌 특정 제조업체 부품 번호를 참조해야 합니다. 예를 들어, 10k 0603 5% 저항과 10k 0603 1% 저항은 두 개의 다른 부품이지만 컷 테이프의 10k 0603 5% 저항과 릴의 10k 0603 5% 저항은 같은 부품입니다. 부품은 BOM에서 지정하는 제조업체 부품 번호로 생각하는 것이 가장 쉽습니다.

피더에서 부품을 집어올리고 placement에 배치합니다. 부품 탭의 정보는 OpenPnP가 부품을 정확하게 배치하는 데 사용하는 부품의 물리적 속성을 OpenPnP에 알려주는 데 사용됩니다.

screen shot 2018-07-24 at 9 07 24 pm

테이블의 필드는 다음과 같습니다:

  • ID: 부품의 고유 ID입니다. 일반적으로 여기에서 제조업체 부품 번호를 사용하는 것이 가장 좋습니다.
  • Description: 부품에 대한 사용자 정의 설명입니다. 이 필드는 정보 제공 또는 고유한 식별자로 사용할 수 있습니다.
  • Height: 캘리퍼로 측정하거나 데이터 시트에 명시된 부품의 물리적 높이입니다. 부품 높이는 부품을 배치할 때 보드에서 OpenPnP가 정지하는 높이를 결정하기 때문에 중요합니다. 특정 부품에 대한 부품 높이를 한 번만 측정하면 됩니다. 그런 다음 원하는 만큼 많은 보드에서 부품을 참조할 수 있습니다.
  • Package: 부품의 패키지 유형입니다. 일반적인 패키지는 R0603, C0402, TQFP-32, QFN-48 등과 같은 것입니다. 패키지를 설정하면 OpenPnP에 부품에 대한 자세한 정보를 알릴 수 있으며 이 정보는 컴퓨터 비전 작업에 사용할 수 있습니다. 많은 부품이 동일한 패키지를 공유하지만 높이가 다를 수 있기 때문에 패키지에는 높이가 없습니다. 패키지는 또한 OpenPnP에 Fiducial인식을 위한 Fiducial의 모양을 알려주는 데 사용됩니다. 자세한 내용은 Fiducials를 참조하십시오.
  • Speed %: 기본적으로 모든 부품은 기계 속도의 100%로 배치됩니다. 이동하는 동안 특정 부품이 미끄러지는 경우 여기에서 해당 숫자를 낮출 수 있습니다. 일반적으로 무거운 부품은 더 느린 속도가 필요할 수 있습니다.

Packages

패키지는 부품의 물리적 속성에 대한 자세한 정보를 OpenPnP에 알려줍니다. 부품에 있는 패드 또는 핀의 수와 모양 및 본체 크기에 대한 정보를 지정할 수 있습니다.

screen shot 2018-07-24 at 9 13 38 pm

패키지는 fiducial을 제외하고 현재 OpenPnP에서 많이 사용되지 않습니다. 대부분 무시해도 됩니다. 기점 패키지 설정에 대한 자세한 내용은 Fiducials를 참조하십시오.

Feeders

피더는 OpenPnP가 선택할 부품을 찾기 위해 가는 곳입니다. OpenPnP는 다양한 유형의 피더를 지원하며 각 유형은 다양한 방식으로 구성할 수 있습니다.

대부분의 기계에는 하나 또는 두 가지 유형의 공급 장치가 설치되어 있으며 여러 개의 "가상" 공급 장치가 있을 수 있습니다. 이 공급 장치는 기계 베드에 테이프로 붙인 절단 스트립 조각일 수 있습니다. 가장 일반적인 피더 유형 중 일부는 다음과 같습니다.

  • Drag Feeders: SMT 테이프를 고정하는 단순 공급 장치입니다. 기계의 머리는 테이프를 앞으로 끌어 다음 부분을 노출시키는 데 사용됩니다.
  • Strip Feeders: 컴퓨터 비전을 사용하여 기계에 장착된 절단 테이프 조각에서 부품을 찾는 "가상" 피더입니다. 시작하기 가장 쉬운 피더입니다. 양면 테이프를 사용하여 부품 스트립을 붙이기만 하면 됩니다.
  • Tray Feeders: 균일한 부품 배열에서 부품을 선택하는 "가상" 피더입니다. 많은 대형 부품이 JEDEC 매트릭스 트레이에 들어 있으며 OpenPnP는 트레이의 모든 부품을 쉽게 순환할 수 있습니다.
  • Auto Feeders: 오토 피더는 OpenPnP가 부품을 공급하도록 명령할 수 있는 메커니즘입니다. 이러한 유형의 피더는 일반적으로 상업용 기계에서 부품을 매우 빠르고 정확하게 공급하는 데 사용됩니다.

피더 탭에서 버튼을 클릭하면 다양한 유형의 피더를 모두 볼 수 있습니다.

screen shot 2018-07-24 at 9 22 06 pm

대부분의 피더에는 사용자가 지정한 위치가 있습니다. 위치는 OpenPnP가 부품을 선택하기 위해 이동하려는 위치입니다. 피더 위치는 단순 위치입니다. 일반적으로 수학은 적용되지 않습니다. 설정한 위치는 노즐이 집어올리는 위치입니다. 여기에서는 부품 높이가 사용되지 않습니다.

screen shot 2018-07-24 at 9 23 09 pm

피더를 추가할 때 피더에 설치되는 부품을 설정해야 합니다. 동일한 부품을 공급하는 여러 피더를 가질 수 있습니다. OpenPnP는 비워질 때까지 하나를 사용하고 다음으로 넘어갑니다.

일반적으로 보드에 고유한 부품이 있는 만큼 피더가 필요합니다. 예를 들어 보드에 10k 0603 5% 저항과 0603 빨간색 LED가 있는 경우 각 부품에 하나씩 두 개의 피더가 필요합니다. 하지만 모든 게재위치에 피더가 필요한 것은 아닙니다. 보드에 100개의 0603 빨간색 LED가 있더라도 해당 부품에 대한 피더를 한 번만 설정하면 됩니다.

피더 테이블의 필드는 다음과 같습니다:

  • Name: 피더에 할당하는 이름입니다. 예를 들어 드래그 피더를 사용하는 경우 하나의 피더를 "드래그 슬롯 1"이라고 부를 수 있습니다.
  • Type: 추가할 때 선택하는 피더 유형입니다.
  • Part: 이 피더가 공급하는 부분입니다. 예를 들어 피더에서 하나의 릴을 제거하고 다른 릴을 설치하는 경우 새 부품을 쉽게 선택할 수 있습니다.
  • Enabled: 피더의 활성화 여부입니다. OpenPnP가 부품을 찾을 때 비활성화된 피더는 고려되지 않습니다.

피더는 그 자체로 큰 주제입니다. 자세한 내용은 설정 및 보정 안내서의 피더 섹션을 참조하십시오.

job 준비

이제 job의 모든 부분을 이해했으므로 모두 함께 살펴보겠습니다. 이것은 새 작업을 설정할 때 수행할 작업의 기본 개요입니다. 이러한 점 중 일부는 항상 수행하는 job이지만 동일한 job을 여러 번 실행하거나 다른 job을 실행할 때도 대부분은 동일합니다.

  1. Job 탭을 선택하고 Main Menu -> File -> New Job을 선택하여 새 Job을 만듭니다. 보드와 픽 앤 플레이스 테이블이 정리되어 작업할 깨끗한 슬레이트를 제공합니다.

  2. Add Board 버튼을 클릭하여 새 보드 또는 기존 보드를 추가합니다. 여기서 가장 일반적인 옵션은 새 보드를 추가한 다음 데이터를 가져오는 것입니다.

  3. Main Menu -> File -> Import Board를 선택하고 가져올 보드 정의 유형을 선택합니다. 가져오기에 대한 자세한 내용은 중심 데이터 가져오기에서 확인할 수 있습니다.

  4. OpenPnP는 보드를 가져오고 선택적으로 부품 및 패키지 정의를 생성합니다. 추가 정보를 지정해야 하는 경우 나중에 이러한 정의를 편집할 수 있습니다.

  5. placement 목록을 보고 가져온 placement 의 상태를 확인합니다. fiducial에 사용되거나 무시해야 하는 placement유형을 변경합니다. 상태 필드는 작업을 실행하기 전에 설정해야 할 다른 항목에 대한 자세한 정보를 알려줍니다.

  6. 부품 탭으로 이동하여 높이 값이 누락된 부품의 부품 높이를 설정합니다. 이 작업은 부품당 한 번만 수행하면 됩니다.

  7. Job의 각 부품에 대해 피더를 구성합니다. 이렇게 하는 쉬운 방법은 게재위치를 클릭한 다음 피더 수정 버튼을 클릭하는 것입니다. OpenPnP는 피더를 열거나 새 피더를 생성하라는 메시지를 표시합니다.

  8. Job 탭에서 보드의 위치를 설정합니다. 캡처 카메라를 사용하여 모서리에 정렬하거나 fiducial 찾기를 사용하여 자동으로 찾거나의 두 가지 배치 수동 프로세스를 사용할 수 있습니다.

    fiducial 사용에 대한 추가 정보는 Fiducials를 참조하십시오.

  9. 보드의 Z 위치 또한 설정해야 합니다. 노즐 팁을 보드에 붙이고 캡처 노즐을 사용하여 설정하십시오.

이것들 모두가 job을 설정하는 기본 단계입니다. 각 사람은 자신에게 가장 적합한 작업 순서을 찾을 것입니다. 어떤 사람들은 모든 부품을 먼저 가져온 다음 job을 설정하는 것을 선호하고 다른 사람들은 job을 가져와서 필요한 부분만 수정합니다.

모든 배치가 상태 필드에 준비됨으로 표시되면, 배치를 시작할 시간입니다!

Job 실행

작업 탭에서 작업을 실행합니다. 시작, 일시 중지, 중지 및 단계 버튼을 사용하면 진행 중인 작업을 제어할 수 있습니다. 시작을 누르면 job이 시작되고 오류가 없으면 기계는 job을 완료한 다음 자동으로 중지합니다.

모니터링

job이 진행됨에 따라 기본 창 하단에 있는 상태 표시줄을 보면 어떻게 진행되고 있는지 확인할 수 있습니다.

screen shot 2018-07-24 at 10 07 59 pm

상태 표시줄은 선택한 보드에 대해 전체 job에 있는 총 placement수와 배치 완료된 수를 보여줍니다. 진행률 표시줄은 job의 전체 진행률을 나타냅니다. 왼쪽의 텍스트 필드는 주어진 순간에 OpenPnP가 수행하는 job에 대한 정보를 표시하고 발생하는 모든 오류에 대한 정보를 제공합니다.

에러 처리

작업이 실행 중이고 문제가 발생하면 OpenPnP는 가능한 경우 문제를 복구하려고 시도합니다. 그러나 많은 경우, OpenPnP가 중지되고 어떻게 진행 할 지를 묻습니다. 다음과 같은 에러 메시지가 표시됩니다:

screen shot 2018-07-24 at 10 11 20 pm

에러를 기반으로 진행할 방법을 결정할 수 있습니다:

  • Pause Job: 작업이 일시 중지되고 오류 메시지가 사라지며 OpenPnP에 변경을 적용하여 문제를 해결할 수 있습니다.
  • Ignore and Continue: 문제를 무시하고 다음 단계로 이동합니다.
  • Skip: 이 배치에 대한 나머지 처리를 건너뛰고 다음 배치로 이동합니다.
  • Try Again: 실패한 작업을 다시 시도합니다.

If you choose to pause the job, once you've solved the problem you can hit Start again to continue from where you left off.

Machine 설정

Machine Setup 탭은 OpenPnP의 가장 복잡한 부분이자 가장 단순한 부분입니다. 여기서는 시스템을 구성하는 모든 요소를 환경 설정합니다. 이 구성을 통해 OpenPnP는 특정 장치에서 작동하게 됩니다.

screen shot 2018-07-24 at 9 40 30 pm

Machine Setup 탭은 트리의 뿌리가 시스템 자체이고, 트리의 가지와 잎이 시스템에 연결된 다른 것인 트리 컨트롤입니다. 카메라, 피더, 노즐, 노즐 팁, 작업 처리 설정을 설정할 수 있으며, 가장 중요한 것은 OpenPnP가 시스템 컨트롤러와 통신할 수 있도록 하는 드라이버입니다.

트리의 다른 부분을 클릭하면 해당 구성 요소에 대한 옵션이 표시되도록 탭 아래의 버튼이 변경됩니다. 예를 들어 헤드를 확장하고 노즐을 선택하면 위의 버튼을 클릭하여 노즐을 추가 및 제거할 수 있습니다. 노즐을 클릭하면 노즐 팁을 추가할 수 있습니다.

설치 및 교정 가이드는 기계 설정 탭을 참조하는 데 가장 적합합니다. 사용자 자신의 컴퓨터를 설정하는 과정을 안내하지만 트리의 개체를 클릭하여 각 옵션에 대해 어떤 옵션이 있는지 확인하는 것도 고려해야 합니다.

자주 묻는 질문

Z축 이해하기

일반적인 혼동의 원인은 OpenPnP가 시스템 전체에서 다양한 Z 값과 부품 높이를 사용하는 방식입니다. 간단히 말하면 다음과 같습니다:

  • 부품은 피더에 지정된 Z 값으로 피더에서 픽업됩니다. 모든 피더 유형에는 설정할 수 있는 Z 값이 있으며, 이 값은 노즐을 픽업하기 전에 아래로 내릴 위치입니다.
  • 작업의 모든 보드에는 Z 값을 포함하는 위치가 있습니다. Z 값은 보드의 상단면 기준입니다.
  • 모든 부품에는 연관된 높이 값이 있습니다. 높이 값은 배치할 때 보드의 Z 값에 추가됩니다.

고급 주제

스크립팅

소스 코드를 변경하지 않고 OpenPnP에 새로운 기능을 추가하는 데 사용할 수 있는 OpenPnP의 내장 스크립팅 엔진에 대한 정보는 스크립팅을 참조하십시오.

환경설정 파일

환경설정 파일은 .openpnp라는 하위 디렉토리 아래의 홈 디렉토리에 있습니다.

  • Mac에서는 일반적으로 /Users/[username]/.openpnp입니다.
  • Windows 2000, XP 및 2003에서는 C:\Documents and Settings\[사용자 이름]\.openpnp입니다.
  • Windows Vista 이상에서는 C:\Users\[사용자 이름]\.openpnp입니다.

구성 파일은 XML 형식이며 텍스트 편집기에서 직접 편집할 수 있습니다. OpenPnP는 종료 시 구성 파일을 다시 작성하므로 수동으로 파일을 편집하기 전에 OpenPnP를 종료해야 합니다.

세 가지 핵심 환경설정 파일이 있습니다. 바로:

  1. machine.xml: 기계, 카메라, 피더, 노즐 등에 대한 정보를 포함하여 전체 시스템에 대한 기본 구성을 포함합니다.
  2. parts.xml: 휴대용 부품 데이터베이스. OpenPnP에서 부품을 정의하면 여기에 저장됩니다.
  3. packages.xml: 휴대용 패키지 데이터베이스. 모양 및 치수를 포함한 구성 요소 패키지 정보가 여기에 저장됩니다.

맞춤형 구현 및 통합

현재 지원되지 않는 시스템에서 OpenPnP를 사용하는 데 관심이 있는 경우 하드웨어와 통신할 수 있는 OpenPnP 드라이버가 필요하며 다음을 수행해야 합니다. machine.xml에서 구성하십시오.

시작하려면 아래 패키지의 드라이버 목록을 보고 어떤 드라이버가 있는지 확인하십시오. 귀하의 요구 사항을 충족하는지 확인하십시오.

https://github.com/openpnp/openpnp/tree/develop/src/main/java/org/openpnp/machine/reference/driver

그 중 어느 것도 귀하의 컴퓨터에서 작동하지 않으면 하나를 작성해야 합니다. 드라이버가 있으면 machine.xml에서 클래스 이름과 구성 매개변수를 지정할 수 있습니다.

코드를 작성해야 한다고 결정한 경우 자세한 내용은 개발 섹션을 참조하세요.

Development

OpenPnP 개발, 특히 기여에 대한 자세한 내용은 다음을 참조하세요. https://github.com/openpnp/openpnp/wiki/Developers-Guide.

도움 요청

Discussion Group

http://groups.google.com/group/openpnp에 활성 토론 그룹이 있습니다. 이것은 일반적으로 도움을 받을 수 있는 가장 좋은 장소입니다.

IRC

또한 #openpnp의 Freenode IRC에 IRC 채널이 있습니다. IRC 클라이언트가 없으면 이 웹 기반 클라이언트를 사용할 수 있습니다.