KR102422990B1 - 스캔을 이용한 로봇의 캘리브레이션 시스템 및 방법 - Google Patents

스캔을 이용한 로봇의 캘리브레이션 시스템 및 방법 Download PDF

Info

Publication number
KR102422990B1
KR102422990B1 KR1020200142939A KR20200142939A KR102422990B1 KR 102422990 B1 KR102422990 B1 KR 102422990B1 KR 1020200142939 A KR1020200142939 A KR 1020200142939A KR 20200142939 A KR20200142939 A KR 20200142939A KR 102422990 B1 KR102422990 B1 KR 102422990B1
Authority
KR
South Korea
Prior art keywords
robot
calibration
pattern structure
image
error value
Prior art date
Application number
KR1020200142939A
Other languages
English (en)
Other versions
KR20220058740A (ko
Inventor
김동엽
전세웅
신동인
김태근
정병진
조민영
정근호
Original Assignee
한국전자기술연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자기술연구원 filed Critical 한국전자기술연구원
Priority to KR1020200142939A priority Critical patent/KR102422990B1/ko
Publication of KR20220058740A publication Critical patent/KR20220058740A/ko
Application granted granted Critical
Publication of KR102422990B1 publication Critical patent/KR102422990B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

본 발명은 3D 패턴 구조물, 상기 3D 패턴 구조물이 놓이는 작업대, 상기 작업대에 놓인 상기 3D 패턴 구조물에 대한 스캐닝 이미지를 수집하는 스캐너, 상기 스캐너가 장착된 엔드 이펙터, 상기 엔드 이펙터가 결합하는 운동 모듈을 적어도 포함하는 로봇 장치, 상기 3D 패턴 구조물에 대한 스캐닝 이미지를 획득하고, 상기 스캐닝 이미지와 기 저장된 참조 이미지 간의 비교를 기반으로 상기 운동 모듈의 캘리브레이션 수행을 위한 오차 값을 산출하고, 상기 오차 값을 기반으로 상기 로봇 장치의 캘리브레이션 수행을 제어하도록 설정된 제어 장치를 포함하는 로봇 캘리브레이션 시스템을 개시한다.

Description

스캔을 이용한 로봇의 캘리브레이션 시스템 및 방법{System and Method for calibration of robot based on a scanning}
본 발명은 로봇의 캘리브레이션에 관한 것으로, 더욱 상세하게는 패턴 구조물에 대한 스캐닝을 기반으로 하는 로봇의 캘리브레이션에 관한 것이다.
머신비전이나 인공지능을 활용한 로봇 작업을 위해서, 카메라와 로봇 간 또는 깊이 센서와 로봇 사이의 캘리브레이션 성능이 매우 중요하다. 상기 캘리브레이션은 좌표계 원점의 위치와 방향을 로봇의 그것과 일치시키는 것을 의미할 수 있다. 상술한 로봇의 캘리브레이션에 이용되는 좌표계는 로봇 좌표계와 카메라 좌표계를 들 수 있다. 상기 로봇 좌표계는 보통 로봇 팔의 받침대를 기준으로, 변화하는 관절 각도에 따라 로봇 팔 끝의 엔드 이펙터의 위치(TCP, Tool Center Point)와 방향을 표현할 때 사용될 수 있다. 상기 카메라 좌표계는 카메라나 센서의 측정값을 표현할 쓰는 좌표계로서, 보통 카메라의 초점을 원점으로 하고, 카메라의 초점을 기준으로 물체가 떨어진 정도를 기반으로 캘리브레이션할 수 있다. 캘리브레이션이 완벽하다면, 센서를 통해 얻어진 정보를 바탕으로 로봇의 작업계획을 수행할 때 정확한 위치와 방향으로 작업을 할 수 있다.
한편, 종래 카메라 좌표계-로봇 좌표계 캘리브레이션 방법들은 2D 이미지가 인쇄된 캘리브레이션 플레이트를 로봇 팔의 TCP에 부착한 후 천장 카메라 또는 로봇 팔 외부에 배치된 카메라로 캘리브레이션 플레이트의 위치를 측정 한 후, 현재의 로봇 TCP 값(캘리브레이션 플레이트 기준점)과 비교하는 방법, 캘리브레이션 플레이트를 엔드 이펙터로부터 일정 거리 이격된 수직한 위치에 배치하고 로봇 팔에 배치된 카메라를 이용하여 촬영을 수행한 후, 카메라 좌표계와 로봇 좌표계를 캘리브레이션 하는 방법 등을 제공하고 있다. 그런데, 이러한 종래 카메라 좌표계-로봇 좌표계 캘리브레이션 방법들은 좌표계의 차이 외에 별도의 오차 원인이 없다는 가정을 가지고 있다. 이에 따라, 로봇 팔 관절의 엔코더 분해능의 정확도가 기준치보다 낮거나, 반복된 작업 과정에서 로봇 팔이 틀어지거나 관절 모듈이 손상되는 경우, 엔코더 신호에 노이즈가 발생하는 경우 또는 엔드 이펙터(그리퍼, 석션, 마그네틱)의 기구가 캘리브레이션을 위해 입력된 정보와 다른 경우 등에는 좌표계와 관계없이 오차가 발생할 수 있다. 특히, 엔드 이펙터가 석션인 경우, 탭(나사산)을 조이는 과정에서 오차가 발생할 수 있다.
본 발명은 카메라 좌표계와 로봇 좌표계를 캘리브레이션하면서, 두 좌표계의 차이뿐만 아니라 그 외의 오차까지 포함하여 캘리브레이션할 수 있는 시스템 및 방법을 제공함에 있다.
본 발명의 실시 예에 따른 로봇 캘리브레이션 시스템은 3D 패턴 구조물, 상기 3D 패턴 구조물이 놓이는 작업대, 상기 작업대에 놓인 상기 3D 패턴 구조물에 대한 스캐닝 이미지를 수집하는 스캐너, 상기 스캐너가 장착된 엔드 이펙터, 상기 엔드 이펙터가 결합하는 운동 모듈을 적어도 포함하는 로봇 장치, 상기 3D 패턴 구조물에 대한 스캐닝 이미지를 획득하고, 상기 스캐닝 이미지와 기 저장된 참조 이미지 간의 비교를 기반으로 상기 운동 모듈의 캘리브레이션 수행을 위한 오차 값을 산출하고, 상기 오차 값을 기반으로 상기 로봇 장치의 캘리브레이션 수행을 제어하도록 설정된 제어 장치를 포함할 수 있다.
여기서, 상기 3D 패턴 구조물은 제1 기판, 상기 제1 기판 상에 일정 두께를 가지고 제1 방향으로 길게 형성되며, 서로 일정 간격 이격되어 배치된 복수개의 레일, 상기 복수개의 레일들 사이에 형성된 복수개의 홈을 포함할 수 있다.
또는, 상기 3D 패턴 구조물은 제2 기판, 상기 제2 기판 상에 일정 두께와 폭을 가지며 서로 일정 간격 이격되어 매트릭스 형태로 배치된 복수개의 돌기, 상기 복수개의 돌기들 사이에 형성된 복수개의 세로 홈 및 복수개의 가로 홈을 포함할 수 있다.
상기 제어 장치는 상기 로봇 장치와 일체화된 형태로 형성될 수 있다.
한편, 상기 제어 장치는 상기 획득된 스캐닝 이미지에 대응하는 노멀 맵을 구성하고, 상기 참조 이미지를 기반으로 어파인 변환을 수행하여 캘리브레이션에 적용할 오차를 산출하도록 설정될 수 있다.
다른 예로서, 상기 로봇 장치는 상기 3D 패턴 구조물의 배치 높이를 일정 단위씩 조절할 수 있는 높이 조절 장치를 더 포함하고, 상기 제어 장치는 상기 높이 조절 장치를 기반으로 복수의 높이에서의 오차 값 산출을 수행하도록 설정될 수 있다.
본 발명의 로봇 캘리브레이션 방법은, 3D 패턴 구조물을 작업대의 지정된 위치에 배치하는 단계, 로봇 장치의 엔드 이펙터에 배치된 스캐너를 이용하여 상기 3D 패턴 구조물에 대한 스캐닝 이미지를 획득하는 단계, 상기 스캐닝된 이미지와 기 저장된 참조 이미지 간의 비교를 기반으로 상기 운동 모듈의 캘리브레이션 수행을 위한 오차 값을 산출하는 단계, 상기 산출된 오차 값을 기반으로 상기 로봇 장치의 운동 모듈에 대한 캘리브레이션을 수행하는 단계를 포함할 수 있다.
여기서, 상기 오차 값을 산출하는 단계는 상기 작업대에서의 상기 3D 패턴 구조물의 높이를 조절하는 단계 및 높이 조절된 위치에서 상기 오차 값 산출을 반복 수행하는 단계를 포함하고, 상기 캘리브레이션을 수행하는 단계는 산출된 복수의 오차 값들로 상기 로봇 장치의 운동 모듈에 대한 캘리브레이션 수행을 반복 수행하는 단계를 포함할 수 있다.
본 발명에 따른 시스템 및 방법은 머신비전 또는 인공지능을 활용한 로봇 팔 시스템에서 정밀한 작업 수행이 가능하도록 지원할 수 있다.
또한, 본 발명의 시스템 및 방법은 작업 중 오차가 허용치 이상일 때 보정을 하거나, 공정 재배치 중에도 간단하게 캘리브레이션을 수행할 수 있다.
도 1은 본 발명의 실시 예에 따른 로봇의 캘리브레이션 시스템 구성을 개략적으로 나타낸 도면이다.
도 2는 본 발명의 실시 예에 따른 로봇의 캘리브레이션 시스템 중 패턴 구조물의 한 예를 나타낸 도면이다.
도 3은 본 발명의 실시 예에 따른 로봇 캘리브레이션 시스템의 구성 중 로봇 장치 구성의 한 예를 보다 상세히 나타낸 도면이다.
도 4는 본 발명의 실시 예에 따른 로봇의 캘리브레이션 시스템의 보강 운용을 위한 추가 구성을 개략적으로 나타낸 도면이다.
도 5는 본 발명의 실시 예에 따른 로봇의 캘리브레이션 시스템 운용에 따라 획득될 수 있는 스캐닝 이미지의 한 예를 나타낸 도면이다.
도 6은 본 발명의 실시 예에 따른 로봇의 캘리브레이션 방법의 한 예를 나타낸 도면이다.
하기의 설명에서는 본 발명의 실시 예를 이해하는데 필요한 부분만이 설명되며, 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않는 범위에서 생략될 것이라는 것을 유의하여야 한다.
이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 바람직한 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 보다 상세하게 설명하고자 한다.
도 1은 본 발명의 실시 예에 따른 로봇의 캘리브레이션 시스템 구성을 개략적으로 나타낸 도면이며, 도 2는 본 발명의 실시 예에 따른 로봇의 캘리브레이션 시스템 중 패턴 구조물의 한 예를 나타낸 도면이다. 도 3은 본 발명의 실시 예에 따른 로봇 캘리브레이션 시스템의 구성 중 로봇 장치 구성의 한 예를 보다 상세히 나타낸 도면이다.
도 1을 참조하면, 본 발명의 실시 예에 따른 로봇의 캘리브레이션 시스템(10)은 작업대(11), 3D 패턴 구조물(100)(또는, 3D 타입의 특정 패턴으로 형성되며, 양각 또는 음각된 패턴을 포함하는 구조물) 및 로봇 장치(200)를 포함하며, 도 3을 참조하면, 상기 로봇의 캘리브레이션 시스템(10)은 작업대(11), 3D 패턴 구조물(100)과 로봇 장치(200)와 더불어 제어 장치(300)를 더 포함할 수 있다. 도 1에서, 상기 제어 장치(300)는 로봇 장치(200) 내에 포함된 구성으로 마련되거나 또는 도 3에 나타낸 바와 같이 별도의 구성으로 마련된 후, 로봇 장치(200)와 통신을 통하여 로봇 장치(200) 제어와 관련한 제어 신호 및 정보를 제공할 수 있다.
상기 작업대(11)는 상기 3D 패턴 구조물(100)이 놓이며, 상기 로봇 장치(200)의 적어도 일부가 놓이거나 또는 인접되게 배치되는 기구를 포함할 수 있다. 상기 작업대(11)는 상기 로봇 장치(200)의 작업을 수행하는 장소의 적어도 일부를 제공할 수 있다. 예를 들어, 상기 작업대(11)는 지정된 물건을 이송하는 이송 장치의 일부를 포함할 수 있다. 상기 작업대(11)에 작업물에 놓이면 상기 로봇 장치(200)는 상기 작업물에 대하여 지정된 작업(예: 작업물의 파지 및 이송, 작업물의 용접, 작업물의 볼트 또는 너트 작업, 작업물에 다른 부품을 조립하는 작업 등)을 수행할 수 있다. 상기 작업대(11) 일측에는 상기 3D 패턴 구조물(100)이 지정된 위치에 놓일 수 있도록 마련된 얼라인 마크가 배치될 수 있다. 상기 얼라인 마크는 상기 작업대(11) 일측에 인쇄되거나 또는 음각될 수 있다. 상기 얼라인 마크의 적어도 일부는 상기 작업대(11)에 위치하는 작업물의 중심부와 얼라인 되는 위치에 배치될 수 있다.
상기 3D 패턴 구조물(100)은 상기 작업대(11)의 일측(예: 얼라인 마크가 형성된 장소)에 배치되어 상기 로봇 장치(200)의 캘리브레이션에 이용되는 구조물이 될 수 있다. 도 2를 참조하면, 상기 3D 패턴 구조물(100)은 제1 타입 패턴 구조물(101) 및 제2 타입 패턴 구조물(102)을 포함할 수 있다.
상기 제1 타입 패턴 구조물(101)은 제1 기판(101a), 제1 기판(101a) 상에 일정 높이와 폭을 가지며 세로 방향으로 배치된 복수개의 레일(101b), 상기 복수개의 레일(101b) 사이에 배치되며 세로 방향으로 형성된 복수개의 홈(101c)들을 포함할 수 있다. 이에 따라, 제1 타입 패턴 구조물(101)은 상기 복수개의 레일(101b)과 상기 복수개의 홈(101c)들이 교번적으로 제1 기판(101a) 상에 배치되는 구조를 가질 수 있다.
상기 제2 타입 패턴 구조물(102)은 제2 기판(102a), 제2 기판(102a) 상에 일정 높이와 폭을 가지며 형성된 복수개의 돌기(102b), 상기 복수개의 돌기(102b) 사이에 세로 방향으로 형성된 복수개의 세로 홈(102c) 및 복수개의 가로 홈(102d)을 포함할 수 있다. 이에 따라, 제2 타입 패턴 구조물(102)은 상기 복수개의 돌기가 일정 간격을 가지며 반복적으로 배치된 매트릭스 구조를 가질 수 있다.
상기 로봇 장치(200)는 상기 작업대(11)에 놓이는 작업물에 대한 지정된 작업을 수행할 수 있다. 상기 로봇 장치(200)는 작업물에 대한 지정된 작업을 오차 없이 수행하기 위하여 주기적으로 또는 특정 조건에 따라 캘리브레이션을 수행할 수 있다. 상기 로봇 장치(200)는 운동 모듈(250), 동력 장치(240), 프로세서(210), 통신 회로(220), 메모리(270), 엔드 이펙터(161) 및 스캐너(163)를 포함할 수 있다.
상기 동력 장치(240)는 상기 운동 모듈(250)의 운동을 위한 동력을 생성하고, 생성된 동력을 프로세서(210) 제어에 따라 운동 모듈(250)에 전달할 수 있다. 예컨대, 동력 장치(240)는 적어도 하나의 모터 또는 적어도 하나의 유압 장치를 포함하여 동력을 생성하고, 생성된 동력을 운동 모듈(250)에 전달할 수 있는 동력 전달 수단을 포함할 수 있다. 상기 동력 장치(240)의 동력 생성 및 동력 전달의 정도는 프로세서(210)에 의해 제어될 수 있다. 예컨대, 동력 장치(240)는 운동 모듈(250)에 포함된 관절의 회전 동작 또는 직선 동작을 위한 동력을 생성 및 전달할 수 있다.
상기 운동 모듈(250)은 예컨대, 받침대, 적어도 하나의 관절 및 복수개의 암을 포함할 수 있다. 상기 운동 모듈(250)의 구성은 로봇 장치(200)의 작업 목적에 따라 변경될 수 있다. 예컨대, 관절의 수, 암의 개수는 로봇 장치(200)의 작업 목적에 따라 변경될 수 있다. 상기 적어도 하나의 관절은 동력 장치(240)로부터 전달된 동력에 따라 지정된 방향 및 각도로 회전할 수 있다.
다양한 예시로서, 로봇 장치(200)는 작업대(11) 방향을 촬영할 수 있는 적어도 하나의 카메라를 포함할 수 있으며, 상기 카메라는 상기 운동 모듈(250)의 특정 암이나 관절에 배치되거나 별도의 장소(예: 작업대(11) 방향의 촬영이 가능한 천장)에 배치될 수 있다. 상기 카메라는 유선 또는 무선 방식으로 프로세서(210)에 연결되고, 프로세서(210) 제어에 따라 작업대(11)의 지정된 위치에 배치된 2D 이미지가 인쇄된 캘리브레이션 플레이트와 관련한 영상을 촬영하고, 촬영된 영상을 프로세서(210)에 전달할 수 있다. 또는, 상기 카메라는 제어 장치(300)와 유선 또는 무선 통신 인터페이스를 통해 연결되고, 제어 장치(300)의 제어에 따라 캘리브레이션과 관련한 영상(예: 작업대(11)에 놓인 캘리브레이션 플레이트 촬영 이미지)을 촬영 및 전달할 수도 있다. 상기 로봇 장치(200)는 캘리브레이션 플레이트를 이용한 카메라 좌표계(예: 캘리브레이션 플레이트를 촬영한 이미지를 기반으로 획득한 값)와, 운동 모듈(250)의 TCP에 엔드 이펙터 값을 더 한 값을 기반으로 획득한 로봇 좌표계를 이용하여 카메라 좌표계-로봇 좌표계 간의 오차 보정을 수행하는 캘리브레이션 과정을 수행할 수 있다. 본 발명의 스캐닝 기반의 오차 발생 검출 방안은, 상술한 2D 이미지가 인쇄된 캘리브레이션 플레이트 촬영을 통한 카메라 좌표계-로봇 좌표계 간의 차이를 보정하는 캘리브레이션 방법 수행 이후 적용될 수 있다.
상기 엔드 이펙터(161)는 상기 운동 모듈(250)의 끝단에 배치될 수 있다. 예컨대, 복수개의 암과 관절을 포함한 운동 모듈(250)에서, 작업대(11)에 놓이는 작업물과 가장 가깝게 근접하는 특정 암의 끝단에 배치될 수 있다. 엔드 이펙터(161)의 운동 모듈(250)의 운동에 따라 위치가 변경될 수 있다. 엔드 이펙터(161)의 종류는 작업의 종류에 따라 달라지거나 교체될 수 있다. 예컨대, 엔드 이펙터(161)는 그리퍼, 석션, 특정 툴 등 다양한 형태를 가질 수 있다. 상기 엔드 이펙터(161)의 끝단 또는 지정된 위치에 스캐너(163)가 배치될 수 있다. 또는, 상기 스캐너(163)는 상기 엔드 이펙터(161)의 특정 위치에 일체화된 형태로 마련될 수도 있다.
상기 스캐너(163)는 작업대(11)의 중심부, 얼라인 마크가 형성된 중심부, 또는 3D 패턴 구조물(100)이 배치된 위치를 향하도록 배치될 수 있다. 상기 스캐너(163)는 고성능의 근접 촬영이 가능한 촬상 소자를 포함할 수 있다. 상기 스캐너(163)는 3D 패턴 구조물(100)의 2D 이미지 및 깊이 값 정보 중 적어도 일부를 획득할 수 있다. 상기 스캐너(163)는 프로세서(210)와 전기적으로 직접 연결되어 스캐닝한 정보를 프로세서(210)에 전달하거나 또는 통신 회로(220)를 통하여 프로세서(210)에 스캐닝한 정보를 전달할 수 있다. 상기 스캐너(163)는 상기 3D 패턴 구조물(100)의 적어도 일부 또는 전체를 한 번에 촬영할 수 있는 성능을 가지거나, 높이에 배치될 수 있다. 또는, 스캐너(163)는 일 방향(예: 세로 방향 또는 가로 방향)의 이미지를 순차적으로 스캐닝할 수 있도록 마련될 수 있다. 이 경우, 운동 모듈(250)은 프로세서(210) 제어에 대응하여 일 방향(예: 가로 방향 또는 세로 방향)으로 스캐너(163)를 이동시킬 수 있으며, 스캐너(163)가 순차적으로 획득한 정보가 프로세서(210)에 전달될 수도 있다.
상기 통신 회로(220)는 로봇 장치(200)의 통신 채널을 형성할 수 있다. 예컨대, 상기 통신 회로(220)는 제어 장치(300)와 통신 채널을 형성하고, 제어 장치(300)로부터 작업 동작과 관련한 정보, 캘리브레이션과 관련한 정보를 수신할 수 있다. 통신 회로(220)는 프로세서(210) 제어에 대응하여 스캐너(163)가 획득한 영상을 제어 장치(300)에 전달할 수도 있다. 상기 통신 회로(220)는 제어 장치(300)와 연결되는 유선 통신 인터페이스 및 무선 통신 인터페이스 중 적어도 하나를 포함할 수 있다. 또한, 상기 통신 회로(220)는 또한, 스캐너(163)가 프로세서(210)와 직접적으로 연결되지 않은 경우, 스캐너(163)와 프로세서(210) 간의 통신 채널을 유선 또는 무선 중 적어도 하나의 방식으로 지원할 수 있다.
상기 메모리(270)는 로봇 장치(200) 운용과 관련한 적어도 하나의 프로그램 및 작업 운용과 관련한 작업 정보, 캘리브레이션 처리와 관련한 정보 등을 저장할 수 있다. 상기 메모리(270)는 스캐너(163)가 획득한 스캔 이미지(예: 3D 패턴 구조물(100) 촬영 이미지)를 임시로 저장할 수 있다. 메모리(270)에 저장된 촬영 이미지는 캘리브레이션 수행에 이용되거나, 제어 장치(300)에 전달될 수 있다.
상기 프로세서(210)는 로봇 장치(200) 운용과 관련한 정보의 처리 및 각 구성들(예: 운동 모듈(250), 동력 장치(240))의 동작 제어를 통한 작업을 수행할 수 있다. 본 발명의 실시 예에 따른 캘리브레이션 작업을 로봇 장치(200)가 독자적으로 수행하도록 구성되는 경우, 프로세서(210)는 운동 모듈(250)과 동력 장치(240)의 운용을 제어하면서, 주기적으로, 필요에 따라, 또는 관리자 입력에 따라 캘리브레이션과 관련한 스캐너(163) 운용을 수행할 수 있다. 상기 프로세서(210)는 동력 장치(240)와 운동 모듈(250)을 조작하여 엔드 이펙터(161)에 배치된 스캐너(163)가 3D 패턴 구조물(100)로부터 지정된 위치에 배치되도록 제어하고, 스캐너(163)를 이용하여 3D 패턴 구조물(100)에 관한 스캔 이미지를 획득하도록 제어할 수 있다. 상기 프로세서(210)는 획득된 스캔 이미지가 메모리(270)에 기 저장된 기준 이미지(또는 참조 이미지, 3D 패턴 구조물에 해당하는 3D 캐드(CAD) 모델)를 비교하여, 엔드 이펙터(161)의 위치에 관한 오차 발생 여부를 확인할 수 있다. 상기 프로세서(210)는 엔드 이펙터(161)의 위치에 관한 오차 발생 시, 캘리브레이션 작업을 요청하는 메시지를 출력할 수 있다. 상기 프로세서(210)는 상기 3D 패턴 구조물(100)을 촬영한 스캐닝 이미지를 기반으로 오차 보정을 수행하는 경우, 3차원 재구성된 결과를 normal map으로 변환한 후, 이에 대한 어파인 변환을 수행하여 오차 값을 검출하고, 그에 따른 보정을 수행할 수 있다. 상기 3D 패턴 구조물(100)을 통한 캘리브레이션 연산을 제어 장치(300)가 처리하도록 설계된 경우, 상기 프로세서(210)는 제어 장치(300) 제어에 대응하여 상기 스캐너(163)를 제어하여 3D 패턴 구조물(100)에 대한 스캐닝 이미지를 획득하여 제어 장치(300)에 전달하고, 제어 장치(300)로부터 오차 보정에 필요한 값들을 수신하여, 운동 모듈(250)의 위치 또는 동작 범위를 조정할 수 있다.
상기 제어 장치(300)는 상기 로봇 캘리브레이션 시스템(10)에서 로봇 장치(200)가 캘리브레이션과 관련한 연산을 처리하도록 마련되는 경우, 로봇 장치(200) 내에 마련될 수 있다. 이 경우, 상기 제어 장치(300)는 로봇 장치(200)의 프로세서(210) 및 메모리(270) 구성으로 구현될 수도 있다. 다른 예로서, 상기 제어 장치(300)는 로봇 장치(200)의 통신 회로(220)와 통신할 수 있는 통신 인터페이스를 포함하고, 로봇 장치(200)로부터 캘리브레이션과 관련한 제어 신호를 로봇 장치(200)에 전달할 수 있다. 상기 제어 장치(300)는 로봇 장치(200)의 캘리브레이션 관련 동작(예: 3D 패턴 구조물(100)의 스캐닝 이미지 획득) 이후, 3D 패턴 구조물(100)을 스캐닝한 이미지를 수신할 수 있다. 상기 제어 장치(300)는 수신된 3D 패턴 구조물(100)의 스캐닝 이미지를 기 지정된 기준 이미지와 비교하면서 normal map으로 변환한 후, 어파인 변환을 수행하여 오차 값을 산출할 수 있다. 상기 제어 장치(300)는 산출한 오차 값을 로봇 장치(200)에 전달할 수 있다.
도 4는 본 발명의 실시 예에 따른 로봇의 캘리브레이션 시스템의 보강 운용을 위한 추가 구성을 개략적으로 나타낸 도면이다.
도 4를 참조하면, 본 발명의 캘리브레이션 시스템(10)은 401 상태에서와 같이, 작업대(11)에 3D 패턴 구조물(100)을 배치하고, 로봇 장치(200)에 배치된 스캐너(163)를 이용하여 상기 3D 패턴 구조물(100)에 대한 스캐닝 이미지를 획득한 후, 일반 맵 구성, 메모리(270)에 기 저장된 참조 이미지와의 비교 및 어파인 변환을 수행하여 오차 값 산출을 수행할 수 있다. 즉, 본 발명의 캘리브레이션 시스템(10)은 3D 패턴 구조물(100)의 고성능 스캐닝된 이미지를 기반으로, x, y, z축 방향으로의 오차 발생을 기 저장된 참조 이미지와의 비교를 통해 산출하는 방식이 될 수 있다.
또한, 캘리브레이션 시스템(10)은 높이 조절 장치(110)를 이용하여 3D 패턴 구조물(100)을 작업대(11)로부터 일정 높이만큼 상승 시킨 상태에서, 캘리브레이션 동작을 반복 수행할 수 있다. 상기 캘리브레이션 시스템(10)은 상술한 높이 조절을 통하여 운동 모듈(250)으 다양한 운동 상태에서의 오차 발생을 검출함으로써, 캘리브레이션 결과가 한쪽에 쏠리는(local minima, 또는 over fitting) 것을 방지할 수 있다. 상기 높이 조절 장치(110)는 작업대(11)의 상부면으로부터의 3D 패턴 구조물(100) 높이를 조절할 수 있는 다양한 구조물을 포함할 수 있다. 한 예로서, 높이 조절 장치(110)는 3D 패턴 구조물(100)을 상하로 이동시킬 수 있는 프레스를 포함할 수 있다. 상기 작업대(11) 상부면으로부터 3D 패턴 구조물(100)의 이격 거리 변화가 발생하더라도, 로봇 장치(200)의 스캐너(163)와 3D 패턴 구조물(100) 사이의 이격 거리는 유지될 수 있다.
도 5는 본 발명의 실시 예에 따른 로봇의 캘리브레이션 시스템 운용에 따라 획득될 수 있는 스캐닝 이미지의 한 예를 나타낸 도면이다.
도 5를 참조하면, 로봇 장치(200)의 캘리브레이션이 완료된 상태 또는 오차 없이 지정된 위치의 작업물에 대한 정상적인 작업을 수행할 수 있는 상태인 경우, 3D 패턴 구조물(100)에 대한 스캐닝 이미지는 501 상태에서와 같이, 획득될 수 있다. 예컨대, 501 상태 스캐닝 이미지는 세로로 배치된 복수개의 레일(101b)과 복수개의 레일(101b)들 사이에 형성된 복수개의 홈(101c)들이 기울어짐 없이 정렬될 수 있다.
한편, 로봇 장치(200)의 적어도 일부분에 오차가 발생한 경우, 3D 패턴 구조물(100)에 대한 스캐닝 이미지는 503 상태에서와 같이, 획득될 수 있다. 예컨대, 503 상태 스캐닝 이미지는 세로로 배치된 복수개의 레일(101b)과 복수개의 레일(101b)들 사이에 형성된 복수개의 홈(101c)들이 기울어진 상태로 정렬될 수 있다. 다른 예로서, x축과 z축 방향으로 오차가 발행하는 경우, 복수개의 레일(101b)과 복수개의 홈(101c)의 폭이 불규칙하게 측정될 수 있다.
상기 로봇 장치(200)(또는 제어 장치(300))는 상기 기울어진 스캐닝 이미지를 참조 이미지(예: 501 이미지)에 비교하여 어파인 변환을 수행함으로써, 오차 값을 산출하고, 산출된 오차 값에 따른 운동 모듈(250) 위치 또는 배치 상태 조절을 수행할 수 있다.
도 6은 본 발명의 실시 예에 따른 로봇의 캘리브레이션 방법의 한 예를 나타낸 도면이다.
도 6을 참조하면, 본 발명의 로봇 캘리브레이션 방법에 있어서, 601 단계에서, 작업대(11)의 지정된 위치(예: 사전 인쇄된 얼라인 마크의 중심점)에 3D 패턴 구조물(100)을 배치할 수 있다.
603 단계에서, 로봇 장치(200)에 배치된 스캐너(163)를 이용하여 상기 3D 패턴 구조물(100)에 대한 스캐닝 이미지를 획득할 수 있다. 여기서, 상기 로봇 장치(200)에 배치된 스캐너(163)의 위치는 사전 지정된 위치로서, 스캐너(163)의 스캐닝 포인트가 3D 패턴 구조물(100)의 중심점을 향하도록 배치되거나, 또는, 적어도 3D 패턴 구조물(100)의 중심점을 포함하는 스캐닝 이미지를 획득할 수 있는 위치에 배치될 수 있다.
605 단계에서, 로봇 장치(200)의 프로세서(210) 또는 제어 장치(300)는 획득된 스캐닝 이미지를 기반으로 캘리브레이션 수행을 위한 오차 값을 산출할 수 있다. 예컨대, 프로세서(210)는 획득된 스캐닝 이미지를 일반 맵(normal map)으로 변환하고, 기 저장된 참조 이미지를 기준으로 어파인 변환을 수행하여 오차 값을 산출할 수 있다.
607 단계에서, 로봇 장치(200)의 프로세서(210) 또는 제어 장치(300)는 오차 값에 따른 캘리브레이션 수행을 처리할 수 있다. 예컨대, 상기 프로세서(210)는 운동 모듈(250)이 x, y, z축 오차를 적용하여 운동 모듈(250)의 위치 또는 상태의 초기 값을 조절할 수 있다. 상기 로봇 장치(200)의 프로세서(210)는 높이 조절 장치(110)를 이용하여 지정된 단위만큼씩 높이를 조절하면서, 상술한 캘리브레이션 동작을 반복 수행할 수 있다. 본 발명의 캘리브레이션 방법은 로봇 팔 기구학 캘리브레이션, 카메라 또는 센서 장착 위치 캘리브레이션, 카메라 내부-외부 캘리브레이션(intrinsic parameter - extrinsic parameter calibration), 또는 Hand-Eye calibration 처럼 캘리브레이션을 수행하고 있는 대상정보 외에는 오차가 없다는 가정을 하지 않는 방법으로서, 머신비전이나 인공지능을 활용한 로봇 팔의 작업에서, 실제 작업을 위한 전체 시스템을 단일 솔루션으로 캘리브레이션을 수행할 수 있도록 지원한다. 이와 관련하여, 본 발명의 로봇 장치(200)는 엔드 이펙터(161)에 스캐너(163)(또는 레이저 스캐너)를 배치하고, 정밀 가공된 3D 패턴 구조물(예: 금속 캘리브레이션 판)을 포함할 수 있다. 본 발명이 캘리브레이션 방법은 3D 패턴 구조물의 높이를 다양하게 하고, 3D 패턴 구조물을 수평 방향으로 이동함으로써, 캘리브레이션 정확도를 높임으로써, 데이터 쏠림(예: local minima, over fitting 문제)을 방지할 수 있다.
한편, 본 명세서와 도면에 개시된 실시 예들은 이해를 돕기 위해 특정 예를 제시한 것에 지나지 않으며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형예들이 실시 가능하다는 것은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게는 자명한 것이다.
10: 로봇 캘리브레이션 시스템
100: 3D 패턴 구조물
200: 로봇 장치
210: 프로세서
220: 통신 회로
240: 동력 장치
250: 운동 모듈
261: 엔드 이펙터
263: 스캐너
270: 메모리
300: 제어 장치

Claims (8)

  1. 로봇 캘리브레이션 시스템에 있어서,
    3D 패턴 구조물;
    상기 3D 패턴 구조물이 놓이는 작업대, 상기 작업대에 놓인 상기 3D 패턴 구조물에 대한 스캐닝 이미지를 수집하는 스캐너, 상기 스캐너가 장착된 엔드 이펙터, 상기 엔드 이펙터가 결합하는 운동 모듈을 적어도 포함하는 로봇 장치;
    상기 3D 패턴 구조물에 대한 스캐닝 이미지를 획득하고, 상기 스캐닝 이미지와 기 저장된 참조 이미지 간의 비교를 기반으로 상기 운동 모듈의 캘리브레이션 수행을 위한 오차 값을 산출하고, 상기 오차 값을 기반으로 상기 로봇 장치의 캘리브레이션 수행을 제어하도록 설정된 제어 장치;를 포함하고,
    상기 제어 장치는,
    상기 획득된 스캐닝 이미지에 대응하는 노멀 맵을 구성하고, 상기 참조 이미지를 기반으로 어파인 변환을 수행하여 캘리브레이션에 적용할 오차를 산출하도록 설정된 것을 특징으로 하는 로봇 캘리브레이션 시스템.
  2. 제1항에 있어서,
    상기 3D 패턴 구조물은
    제1 기판;
    상기 제1 기판 상에 일정 두께를 가지고 제1 방향으로 길게 형성되며, 서로 일정 간격 이격되어 배치된 복수개의 레일;
    상기 복수개의 레일들 사이에 형성된 복수개의 홈;을 포함하는 것을 특징으로 하는 로봇 캘리브레이션 시스템.
  3. 제1항에 있어서,
    상기 3D 패턴 구조물은
    제2 기판;
    상기 제2 기판 상에 일정 두께와 폭을 가지며 서로 일정 간격 이격되어 매트릭스 형태로 배치된 복수개의 돌기;
    상기 복수개의 돌기들 사이에 형성된 복수개의 세로 홈 및 복수개의 가로 홈;을 포함하는 것을 특징으로 하는 로봇 캘리브레이션 시스템.
  4. 제1항에 있어서,
    상기 제어 장치는
    상기 로봇 장치와 일체화된 형태로 형성되는 것을 특징으로 하는 로봇 캘리브레이션 시스템.
  5. 삭제
  6. 제1항에 있어서,
    상기 3D 패턴 구조물의 배치 높이를 일정 단위씩 조절할 수 있는 높이 조절 장치;를 더 포함하고,
    상기 제어 장치는
    상기 높이 조절 장치를 기반으로 복수의 높이에서의 오차 값 산출을 수행하도록 설정된 것을 특징으로 하는 로봇 캘리브레이션 시스템.
  7. 로봇 캘리브레이션 방법에 있어서,
    3D 패턴 구조물을 작업대의 지정된 위치에 배치하는 단계;
    로봇 장치의 엔드 이펙터에 배치된 스캐너를 이용하여 상기 3D 패턴 구조물에 대한 스캐닝 이미지를 획득하는 단계;
    상기 스캐닝된 이미지와 기 저장된 참조 이미지 간의 비교를 기반으로 상기 로봇 장치의 운동 모듈의 캘리브레이션 수행을 위한 오차 값을 산출하는 단계;
    상기 산출된 오차 값을 기반으로 상기 로봇 장치의 운동 모듈에 대한 캘리브레이션을 수행하는 단계;를 포함하며,
    상기 오차 값을 산출하는 단계에서는,
    상기 획득된 스캐닝 이미지에 대응하는 노멀 맵을 구성하고, 상기 참조 이미지를 기반으로 어파인 변환을 수행하여 캘리브레이션에 적용할 오차를 산출하도록 설정된 것을 특징으로 하는 로봇 캘리브레이션 방법.
  8. 제7항에 있어서,
    상기 오차 값을 산출하는 단계는
    상기 작업대에서의 상기 3D 패턴 구조물의 높이를 조절하는 단계;
    높이 조절된 위치에서 상기 오차 값 산출을 반복 수행하는 단계;를 포함하고,
    상기 캘리브레이션을 수행하는 단계는
    산출된 복수의 오차 값들로 상기 로봇 장치의 운동 모듈에 대한 캘리브레이션 수행을 반복 수행하는 단계;를 포함하는 것을 특징으로 하는 로봇 캘리브레이션 방법.
KR1020200142939A 2020-10-30 2020-10-30 스캔을 이용한 로봇의 캘리브레이션 시스템 및 방법 KR102422990B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200142939A KR102422990B1 (ko) 2020-10-30 2020-10-30 스캔을 이용한 로봇의 캘리브레이션 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200142939A KR102422990B1 (ko) 2020-10-30 2020-10-30 스캔을 이용한 로봇의 캘리브레이션 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20220058740A KR20220058740A (ko) 2022-05-10
KR102422990B1 true KR102422990B1 (ko) 2022-07-21

Family

ID=81592143

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200142939A KR102422990B1 (ko) 2020-10-30 2020-10-30 스캔을 이용한 로봇의 캘리브레이션 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102422990B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117119115B (zh) * 2023-10-23 2024-02-06 杭州百子尖科技股份有限公司 基于机器视觉的校准方法、装置、电子设备及存储介质
CN117901120A (zh) * 2024-03-08 2024-04-19 北京纳通医用机器人科技有限公司 机械臂控制方法、装置、设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005515675A (ja) 2001-12-26 2005-05-26 イェダ リサーチ アンド デベロップメント カンパニー リミテッド ビデオの空間または時間解像度を高めるためのシステムおよび方法
JP2007125633A (ja) * 2005-11-02 2007-05-24 Pulstec Industrial Co Ltd 多自由度ロボットの位置決め誤差補正装置、同位置決め誤差補正方法および位置決め誤差補正用校正治具
JP2010139329A (ja) * 2008-12-10 2010-06-24 Fanuc Ltd キャリブレーション用の校正治具および校正治具を備えた画像計測システム
JP6131001B2 (ja) * 2012-05-01 2017-05-17 株式会社安藤・間 カメラキャリブレーション用3次元パターン
WO2019152617A1 (en) 2018-02-03 2019-08-08 The Johns Hopkins University Calibration system and method to align a 3d virtual scene and 3d real world for a stereoscopic head-mounted display

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100603618B1 (ko) * 2004-10-18 2006-07-24 한국전자통신연구원 어파인 변환을 이용한 문서 영상의 기하학적 왜곡 보정장치 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005515675A (ja) 2001-12-26 2005-05-26 イェダ リサーチ アンド デベロップメント カンパニー リミテッド ビデオの空間または時間解像度を高めるためのシステムおよび方法
JP2007125633A (ja) * 2005-11-02 2007-05-24 Pulstec Industrial Co Ltd 多自由度ロボットの位置決め誤差補正装置、同位置決め誤差補正方法および位置決め誤差補正用校正治具
JP2010139329A (ja) * 2008-12-10 2010-06-24 Fanuc Ltd キャリブレーション用の校正治具および校正治具を備えた画像計測システム
JP6131001B2 (ja) * 2012-05-01 2017-05-17 株式会社安藤・間 カメラキャリブレーション用3次元パターン
WO2019152617A1 (en) 2018-02-03 2019-08-08 The Johns Hopkins University Calibration system and method to align a 3d virtual scene and 3d real world for a stereoscopic head-mounted display

Also Published As

Publication number Publication date
KR20220058740A (ko) 2022-05-10

Similar Documents

Publication Publication Date Title
US20230028351A1 (en) Laser patterning skew correction
US20010055069A1 (en) One camera system for component to substrate registration
KR102422990B1 (ko) 스캔을 이용한 로봇의 캘리브레이션 시스템 및 방법
US5671056A (en) Three-dimensional form measuring apparatus and method
US11972589B2 (en) Image processing device, work robot, substrate inspection device, and specimen inspection device
KR102525704B1 (ko) 비전 시스템의 3차원 교정을 위한 시스템 및 방법
KR20130042035A (ko) 레이저 가공장치 및 기판위치 검출방법
KR102230321B1 (ko) 레이저 가공 장치
JPWO2018168757A1 (ja) 画像処理装置、システム、画像処理方法、物品の製造方法、プログラム
JP5457665B2 (ja) 電子部品装着装置
JP6807450B2 (ja) 多関節ロボットの平行度判定方法および多関節ロボットの傾き調整装置
JP6565367B2 (ja) 位置補正システム
JP5572247B2 (ja) 画像歪補正方法
JP6965422B2 (ja) カメラの平行度判定方法
CN110682005B (zh) 一种激光打标实时校正方法和控制装置
JP2004309318A (ja) 位置検出方法、その装置及びそのプログラム、並びに、較正情報生成方法
CN112308919A (zh) 芯片在夹具中的装夹位置的校正方法和装置
JP2664424B2 (ja) レーザ加工機械
KR101801168B1 (ko) 3차원 정렬 오차 측정용 입체형 캘리브레이터와, 이를 이용한 3차원 정렬 오차 산출 방법
JP3859245B2 (ja) チャートの中心位置出し方法
KR102384648B1 (ko) 터치를 이용한 로봇의 캘리브레이션 시스템 및 방법
CN118009889B (zh) 工件点胶槽位置的测量方法
US20230062780A1 (en) Measurement system, measurement method and non-transitory storage medium
JP3779118B2 (ja) 撮像装置におけるカメラの位置ずれ検出方法、撮像装置におけるカメラの傾き検出方法、および、撮像装置におけるカメラの移動量補正方法
JP2539071B2 (ja) 位置合わせ装置

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right