1. 시작하기
두산 로봇에서는 물체의 위치를 영상 정보를 통해 측정, 로봇의 작업 명령과 연동할 수 있는 비전 시스템인, 스마트 비전 모듈(Smart Vision Module) 제공 외에도 외부 비전을 연결하여 다양한 작업을 수행할 수 있도록 합니다. 대표적인 외부 비전 시스템으로는 Cognex, SICK 등이 있고, 산업용 통신 중 Ethernet TCP/IP을 이용하여 사용할 수 있습니다.
이 과정에서는 Cognex 사의 비전 시스템 사용 방법을 소개합니다.
2. 비전 센서 설치하기
Cognex 비전 시스템 중, 두산 로봇과 연결하여 사용할 수 있는 제품은 IS2000, IS5600/5705, IS7000, IS8000 시리즈 증이 있습니다. 이 과정에서는 IS2000-23M 모델을 설치해보겠습니다.
2.1 비전 센서 연결
로봇 컨트롤러에 비전 센서와 PC를 케이블로 연결합니다.
2.2 IP 주소 설정
소프트웨어는 Insight Explorer 5.6.0으로 실행경로는 In-sight Explorer → System Menu → Add Sensor/Device To Network 실행하여 IP 주소를 설정합니다.
비전 센서와 PC의 IP 주소는 로봇 컨트롤러 라우터와 호환되어야 합니다. 고정 IP 설정으로 다음과 같이 IP 주소를 입력합니다.
- 컨트롤러(고정): 192.168.137.1
- 비전 센서: 192.168.137.11
- PC: 192.168.137.2
3. 비전 작업 설정하기
컨트롤러에 비전 센서를 연결을 완료하고 참고 이미지 설정, 검출 도구 지정 및 캘리브레이션 그리고 통신 설정을 통해 비전 작업이 진행됩니다. 한 가지 주의사항으로는 서식열(Format String) 에러를 미연에 방지하기 위해, 언어를 영어로 설정하시기 바랍니다. Menu → System → Options → User Interface → Language → English 에서 변경할 수 있습니다.
3.1비전 트리거(Trigger) 설정
스프레드 시트 기반 비전 작업으로 설정되어 있다면 ‘Easy Builder View’ 모드로 전환하고, 트리거 타입을 반드시 ‘Manual’로 선택하세요.
3.2 참고 이미지 설정
라이브 영상을 켜고 초점, 밝기, 노출 등을 설정할 수 있습니다. 초점의 경우, 자동 기능을 사용하고 외부 환경에 따라 수동으로 조절하여 이미지를 선명하게 합니다.
3.3 캘리브레이션(Calibration)
N-Point 캘리브레이션 툴을 이용하여 로봇 월드 좌표계를 구할 수 있고, 이를 캘리브레이션 시 반영할 수 있습니다.
1) 캘리브레이션 점의 중앙을 감지합니다.
2) 점의 중앙을 교시하여 로봇 월드 좌표계를 기록합니다.
3) 입력된 좌표를 종합하여 비전 센서에 적용시킵니다.
4) N-point Tool을 이용하여 로봇 월드 좌표를 ‘Export’ 합니다.
5) Set Up Image 탭으로 가서 캘리브레이션 정보를 ‘import’ 합니다.
3.4 검출 도구 설정
Set Up Tools에서 Locate Part나 Inspect Part를 눌러 도구를 설정합니다. 예를 들어 좌측 하단Location Tools에서 Pattern을 눌러 검출 각도나 유사도를 설정합니다. 검사(Inspect) 툴은 필요 시 추가 할 수 있습니다. 결과 값은 X, Y 좌표와 검출 각도이며, 캘리브레이션 후의 측정 정보입니다.
3.5 통신 설정
Add Device → Device (Other) → Protocol (Serial Native) Select → Format String 을 클릭하여 진행합니다.
현재 입력 되어 있는 툴은 Pattern_1 (Locate Part Tool)과 Pixels_1 (Inspect Part Tool)입니다.
다음과 같이 서식열(Format String)을 설정합니다.
1) Leading Text에 ‘pos,’ 입력합니다.
2) Use Delimiter 선택, ‘Comma’를 지정합니다.
3) Add 버튼 클릭 후, Output 데이터를 선택합니다. Location Tool 데이터(Fixture.X, Fixture.Y, Fixture.Angle)를 선택합니다.
4) 설정한 검사(Inspection), 측정(Measurement) 툴을 추가합니다.
5) 출력 결과값 확인 후, OK를 누릅니다.
※ XML 포맷 예시 (pos, x, y, z, angle, var1, var2)
호출: pos, var=vs_trigger() / 결과: pos=posx(x, y, z, 0, 0, angle), var=[var1, var2]
3.6 작업 저장 및 측정 대기
Save Job을 눌러 작업 이름을 지정하고 저장합니다.
측정 대기 상태가 되기 위해 Run Job을 눌러Online 모드로 전환합니다.
4. 비전 DRL 알아보기
태스크 프로그래밍 환경 (태스크 빌더, 태스크 라이터)에서 아래의 DRL 명령을 사용하여 설정된 레지스터의 값을 읽어올 수 있습니다.
- vs_set_info: 사용할 비전 시스템의 종류를 설정한다.
- vs_connect: 비전 시스템의 통신을 연결한다.
- vs_disconect: 비전 시스템의 통신을 해제한다.
- vs_get_job: 비전 시스템에 현재 로딩되어 있는 작업명을 불러온다.
- vs_set_job: 입력된 작업을 비전 시스템에 로딩한다.
- vs_trigger: 비전 시스템에 측정 명령을 전달한다. 측정이 성공하면, 결과값을 리턴한다.
- vs_set_init_pos: 비전 오프셋 작업을 수행할 대상물의 초기 위치 정보를 입력한다.
- vs_get_offset_pos: 비전 시스템에서 측정된 좌표값을 이용하여 오프셋 된 로봇작업 좌표를 산출한다. 사전에 vs_set_init_pos를 통해 초기값이 입력되어 있어야 한다.
해당 명령어들은 IF문이나, Custom Code 명령 등에서 사용이 가능합니다.
5. 정리
이번 과정에서는 외부 비전 시스템의 연결 방법 중 Cognex 제품의 사용 방법을 알아 보았습니다. 비전 작업 설정 및 로봇과 통신을 통해 검사, 분류 등 다양한 비전 기반 자동화 작업의 구성에 사용이 가능합니다. 보다 상세한 사용 방법은 참조 & 프로그래밍 매뉴얼에서 확인할 수 있습니다.
참고 자료
※ 본 자료의 모든 내용과 도안에 대한 저작권 및 지적재산권은 두산로보틱스에 있습니다. 따라서 두산로보틱스의 서면 허가 없이 사용, 복사, 유포하는 어떠한 행위도 금지됩니다. 또한 특허권을 오용하거나 변용하는데 따르는 책임은 전적으로 사용자에게 있습니다.