KR102111655B1 - Automatic calibration method and apparatus for robot vision system - Google Patents

Automatic calibration method and apparatus for robot vision system Download PDF

Info

Publication number
KR102111655B1
KR102111655B1 KR1020190138460A KR20190138460A KR102111655B1 KR 102111655 B1 KR102111655 B1 KR 102111655B1 KR 1020190138460 A KR1020190138460 A KR 1020190138460A KR 20190138460 A KR20190138460 A KR 20190138460A KR 102111655 B1 KR102111655 B1 KR 102111655B1
Authority
KR
South Korea
Prior art keywords
robot
camera
coordinate system
delete delete
sample
Prior art date
Application number
KR1020190138460A
Other languages
Korean (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 KR1020190138460A priority Critical patent/KR102111655B1/en
Priority to KR1020200055963A priority patent/KR102220173B1/en
Application granted granted Critical
Publication of KR102111655B1 publication Critical patent/KR102111655B1/en
Priority to US17/772,074 priority patent/US11642789B2/en
Priority to PCT/KR2020/015028 priority patent/WO2021086108A1/en
Priority to EP20881234.7A priority patent/EP4052861A4/en

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
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • 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

Abstract

One aspect of the present invention discloses an automatic calibration method in a calibration apparatus connected to a camera disposed on an end effector of a robot and a robot controller for controlling the robot. The method includes the following steps of: obtaining an image for a marker marked on a working area of the robot and a robot reference coordinate system from the camera and the robot controller, wherein the acquired image and the robot reference coordinate system are recorded by moving the end effector with a plurality of sample coordinates; and estimating a location of a robot coordinate system reference marker using the acquired image and the robot reference coordinate system.

Description

로봇 비전 시스템을 위한 자동 캘리브레이션 방법 및 장치{AUTOMATIC CALIBRATION METHOD AND APPARATUS FOR ROBOT VISION SYSTEM}AUTOMATIC CALIBRATION METHOD AND APPARATUS FOR ROBOT VISION SYSTEM

본 발명은 캘리브레이션(calibration) 방법에 관한 것으로, 보다 상세하게는, 로봇 비전 시스템에서의 자동 캘리브레이션 방법에 관한 것이다.The present invention relates to a calibration method, and more particularly, to an automatic calibration method in a robot vision system.

로봇 시스템의 사용성에 있어 비전 센서(vision sensor)는 매우 중요한 컴포넌트이나, 비전 센서의 좌표계와 로봇의 좌표계 사이의 정확한 변환이 선행 되어야 한다. 하지만, 사전에 좌표를 고정한 마커 등의 별도 장치 없이, 임의의 로봇과 임의의 카메라에 대해 캘리브레이션을 수행하는 것은 매우 까다로운 문제이다.The vision sensor is a very important component in the usability of the robot system, but an accurate conversion between the coordinate system of the vision sensor and the coordinate system of the robot must be preceded. However, it is very difficult to perform calibration on an arbitrary robot and an arbitrary camera without a separate device such as a marker having fixed coordinates in advance.

특히, 저가형 카메라의 경우, 카메라의 왜곡이 심해, 캘리브레이션을 통해 고유 매개 변수를 추정하더라도 그 좌표계를 완벽하게 얻을 수 없는 경우가 많다. 이처럼 불완전한 카메라 좌표계를 로봇 작업에 사용하려면 작업 영역에 과적합 시키는 편법이 필요한데, 사전에 정의된 위치를 기준으로 하거나 제약 조건이 있을 경우, 임의의 작업 현장에 맞춰 캘리브레이션을 수행할 수는 없다. In particular, in the case of a low-cost camera, the distortion of the camera is severe, and even if the intrinsic parameters are estimated through calibration, it is often impossible to obtain the coordinate system perfectly. In order to use the incomplete camera coordinate system for robotic work, it is necessary to over-fit the work area. If it is based on a pre-defined position or there are constraints, calibration cannot be performed for any work site.

본 발명의 일 실시예에 따른 목적은 카메라 로봇에 탑재된, 혹은 카메라가 별도로 고정되어 로봇과 함께 사용되는 로봇 비전 시스템에서 초점거리, 오프셋, 왜곡 상수 등 카메라의 고유 매개 변수와 카메라와 로봇 엔드이펙터, 혹은 카메라와 로봇 좌표계 사이의 위치 및 각도 오프셋을 한번에 자동으로 캘리브레이션하는 방법을 제공하는 것이다.The object according to an embodiment of the present invention is a camera robot mounted on the robot, or the camera is fixed separately, the robot vision system used with the robot, such as the focal length, offset, distortion constant, the camera's unique parameters and the camera and the robot end effector Or, it provides a method to automatically calibrate the position and angular offset between the camera and the robot coordinate system at once.

상기한 목적을 달성하기 위한 본 발명의 일 양태에 따른, 로봇의 엔드 이펙터에 배치된 카메라 및 상기 로봇을 제어하는 로봇 제어기와 연결된 캘리브레이션 장치에서의 자동 캘리브레이션 방법은, 로봇의 작업 영역에 마킹된 마커에 대한 이미지 및 로봇 기준 좌표계를 상기 카메라 및 상기 로봇 제어기로부터 획득하는 단계(상기 획득된 이미지 및 로봇 기준 좌표계는 복수 개의 표본 좌표들로 상기 엔드 이펙터를 이동시키며 기록됨) 및 상기 획득된 이미지 및 로봇 기준 좌표계를 이용하여 로봇 좌표계 기준 마커의 위치를 추정하는 단계를 포함할 수 있다.According to an aspect of the present invention for achieving the above object, an automatic calibration method in a calibration device connected to a camera disposed on an end effector of a robot and a robot controller for controlling the robot, a marker marked on the working area of the robot Obtaining an image and a robot reference coordinate system for the camera and the robot controller (the acquired image and robot reference coordinate system are recorded by moving the end effector with a plurality of sample coordinates) and the acquired image and robot reference The method may include estimating the position of the robot coordinate system reference marker using the coordinate system.

상기 획득된 이미지 및 로봇 기준 좌표계를 이용하여 로봇 좌표계 기준 마커의 위치를 추정하는 단계는, 상기 카메라-로봇 오프셋(Toff)을 가정된 값으로 두고 비선형 최적화 알고리즘을 사용하여 복수 개의 자세에서 카메라 기준 마커의 위치(Tm,j)를 로봇 기준 좌표계로 변환한 좌표의 에러율을 최소로 만드는 방식을 통해 카메라-로봇 오프셋(Toff)을 추정하는 단계를 포함할 수 있다.The step of estimating the position of the robot coordinate system reference marker using the acquired image and the robot reference coordinate system is based on the camera in a plurality of postures using the non-linear optimization algorithm with the camera-robot offset (T off ) as the assumed value. The method may include estimating the camera-robot offset (T off ) through a method of minimizing the error rate of the coordinates obtained by converting the position of the marker (T m,j ) into a robot reference coordinate system.

상기 카메라-로봇 오프셋(Toff)은 x-y-z 좌표 및 z-y-x 오일러 각을 포함하는 변수들의 함수로 계산될 수 있다.The camera-robot offset T off may be calculated as a function of variables including xyz coordinates and zyx Euler angles.

상기 카메라-로봇 오프셋(Toff)은 제 1 표본 좌표와 제 2 표본 좌표 간의 틀어짐 정도를 로테이션 매트릭스(R)의 에러 및 포지션(P) 에러의 값으로 표현하고, 이를 최소화하는 비선형 최적화 알고리즘을 이용하여 추정될 수 있다.The camera-robot offset (T off ) expresses the degree of distortion between the first sample coordinates and the second sample coordinates as the values of the error and the position (P) of the rotation matrix (R), and uses a nonlinear optimization algorithm to minimize this Can be estimated.

상기 카메라-로봇 오프셋(Toff)은

Figure 112019112124139-pat00001
을 통해 산출되며, 여기서, j는 표본 좌표의 인덱스를, Tj는 표본 좌표 j의 변환 행렬을, Tm,j는 표본 좌표 j에서 카메라 기준 마커의 위치를, R은 로테이션 매트릭스와 관련된 변수를, P는 포지션 에러와 관련된 변수를 나타낼 수 있다.The camera-robot offset (T off ) is
Figure 112019112124139-pat00001
, Where j is the index of the sample coordinate, T j is the transformation matrix of the sample coordinate j, T m,j is the position of the camera reference marker in the sample coordinate j, R is the variable related to the rotation matrix. , P may indicate a variable related to position error.

상기 엔드 이펙터는 가동영역이 교시된 상태로 구비되며, 상기 가동영역은 캘리브레이션의 기준이 되는 영역으로 복수 개의 기준점으로 정의될 수 있다.The end effector is provided with a movable area taught, and the movable area may be defined as a plurality of reference points as an area that is a reference for calibration.

상기 복수 개의 표본 좌표들은, 상기 복수 개의 기준점 내의 영역에 배치될 수 있다.The plurality of sample coordinates may be arranged in an area within the plurality of reference points.

복수 개의 표본 좌표들은, 상기 복수 개의 기준점에서 로봇의 기준 좌표계로부터 로봇 말단으로의 변환 행렬을 기록하는 단계, 상기 복수 개의 기준점들이 공통적으로 바라보는 동작 중심점을 설정하는 단계, 상기 설정된 동작 중심점을 기준으로 상기 복수 개의 기준좌표들의 위치를 결정짓는 변수들을 기록하고 각 변수들의 최소값 및 최대값을 추출하는 단계 및 상기 복수 개의 기준점들 사이의 난수 가중합을 통해 상기 복수 개의 표본 좌표들을 추출하는 단계를 통해 추출될 수 있다.In the plurality of sample coordinates, recording a transformation matrix from the reference coordinate system of the robot to the robot end at the plurality of reference points, setting a motion center point commonly viewed by the plurality of reference points, based on the set motion center point Record the variables that determine the position of the plurality of reference coordinates, extract the minimum and maximum values of each variable, and extract through the step of extracting the plurality of sample coordinates through random weighting between the plurality of reference points Can be.

상기 변수들은 방위각, 고도각, 롤 및 상기 동작 중심점으로부터의 거리 중 적어도 둘을 포함할 수 있다.The variables may include at least two of azimuth, elevation, roll, and distance from the motion center point.

상기 추출된 복수 개의 표본 좌표들의 변수들로부터 각 표본 좌표계의 변환행렬(Tj)이 산출될 수 있다.A transformation matrix T j of each sample coordinate system may be calculated from the variables of the extracted plurality of sample coordinates.

상기한 목적을 달성하기 위한 본 발명의 다른 양태에 따른, 로봇으로부터 이격된 위치에 배치된 카메라 및 상기 로봇을 제어하는 로봇 제어기와 연결된 캘리브레이션 장치에서의 캘리브레이션 방법은, 로봇 엔드 이펙터에 배치된 마커에 대한 이미지 및 로봇 기준 좌표계를 상기 카메라 및 상기 로봇 제어기로부터 획득하는 단계(복수 개의 표본 좌표들로 상기 엔드 이펙터를 이동시키며 기록됨) 및 상기 획득된 이미지로부터 로봇 베이스 기준 카메라 위치를 추정하는 단계를 포함할 수 있다.According to another aspect of the present invention for achieving the above object, a calibration method in a calibration device connected to a camera disposed at a position spaced apart from a robot and a robot controller for controlling the robot includes a marker disposed in a robot end effector. Obtaining an image and a robot reference coordinate system for the camera from the camera and the robot controller (recorded by moving the end effector with multiple sample coordinates) and estimating a robot base reference camera position from the acquired image. Can be.

상기 획득된 이미지 및 로봇 기준 좌표계를 이용하여 로봇 베이스 기준 카메라의 위치를 추정하는 단계는, 상기 로봇 말단-마커 오프셋(Tem)을 가정된 값으로 두고 비선형 최적화 알고리즘을 사용하여 복수 개의 자세에서 로봇 베이스 기준 카메라의 위치를 로봇 기준 좌표계로 변환한 좌표의 에러율을 최소로 만드는 방식을 통해 로봇 말단-마커 오프셋(Tem)을 추정하는 단계를 포함할 수 있다.The step of estimating the position of the robot base reference camera using the acquired image and the robot reference coordinate system, the robot in a plurality of postures using the non-linear optimization algorithm with the robot end-marker offset (T em ) as the assumed value The method may include estimating the robot end-marker offset (T em ) through a method of minimizing the error rate of coordinates obtained by converting the position of the base reference camera to the robot reference coordinate system.

상기 로봇 말단-마커 오프셋(Tem)은 x-y-z 좌표 및 z-y-x 오일러 각을 포함하는 변수들의 함수로 계산될 수 있다.The robot end-marker offset (T em ) may be calculated as a function of variables including xyz coordinates and zyx Euler angles.

상기 로봇 말단-마커 오프셋(Tem)은 제 1 표본 좌표와 제 2 표본 좌표 간의 틀어짐 정도를 로테이션 매트릭스의 에러 및 포지션 에러의 값으로 표현하고, 이를 최소화하는 비선형 최적화 알고리즘을 이용하여 추정될 수 있다.The robot end-marker offset (T em ) may be estimated by using a nonlinear optimization algorithm that expresses the degree of distortion between the first sample coordinates and the second sample coordinates as the values of the error and the position error of the rotation matrix and minimizes them. .

상기 로봇 말단-마커 오프셋(Tem)은

Figure 112019112124139-pat00002
을 통해 산출되며, 여기서, j는 표본 좌표의 인덱스를, Tj는 로봇의 변환 행렬을 나타낸다. Tem는 로봇 말단으로부터 마커로의 오프셋 추정값을 나타내고, Tm,j는 카메라로부터 마커의 위치를, R은 로테이션 매트릭스와 관련된 변수를, P는 포지션 에러와 관련된 변수를 나타낼 수 있다.The robot end-marker offset (T em ) is
Figure 112019112124139-pat00002
It is calculated from, where j is an index of sample coordinates, and T j is a transformation matrix of the robot. T em may represent an offset estimate from the robot end to the marker, T m,j may indicate the position of the marker from the camera, R may be a variable related to the rotation matrix, and P may be a variable related to position error.

상기한 목적을 달성하기 위한 본 발명의 또 다른 양태에 따른, 로봇의 엔드 이펙터에 배치된 카메라 및 상기 로봇을 제어하는 로봇 제어기와 연결된 캘리브레이션 장치는, 로봇의 작업 영역에 마킹된 마커에 대한 이미지 및 로봇 기준 좌표계를 상기 카메라 및 상기 로봇 제어기로부터 획득하는 입력부(상기 획득된 이미지 및 로봇 기준 좌표계는 복수 개의 표본 좌표들로 상기 엔드 이펙터를 이동시키며 기록됨) 및 상기 획득된 이미지 및 로봇 기준 좌표계를 이용하여 로봇 좌표계 기준 마커의 위치를 추정하는 프로세서를 포함할 수 있다.According to another aspect of the present invention for achieving the above object, the camera disposed on the end effector of the robot and the calibration device connected to the robot controller for controlling the robot, the image for the marker marked on the working area of the robot and Using the input unit for obtaining the robot reference coordinate system from the camera and the robot controller (the acquired image and the robot reference coordinate system are recorded by moving the end effector with a plurality of sample coordinates) and the acquired image and the robot reference coordinate system It may include a processor for estimating the position of the robot coordinate system reference marker.

상기한 목적을 달성하기 위한 본 발명의 다른 양태에 따른, 로봇으로부터 이격된 위치에 배치된 카메라 및 상기 로봇을 제어하는 로봇 제어기와 연결된 캘리브레이션 장치는, 상기 마커에 대한 이미지 및 로봇 기준 좌표계를 상기 카메라 및 상기 로봇 제어기로부터 획득하는 입력부(상기 획득된 이미지 및 로봇 기준 좌표계는 복수 개의 표본 좌표들로 상기 엔드 이펙터를 이동시키며 기록됨) 및 상기 획득된 이미지로부터 로봇 베이스 기준 카메라 위치를 추정하는 프로세서를 포함할 수 있다.According to another aspect of the present invention for achieving the above object, a camera disposed at a position spaced apart from a robot and a calibration device connected to a robot controller for controlling the robot, the image for the marker and the robot reference coordinate system to the camera And an input unit obtained from the robot controller (the acquired image and the robot reference coordinate system are recorded by moving the end effector with a plurality of sample coordinates) and a processor for estimating the robot base reference camera position from the acquired image. Can be.

본 발명의 일 실시예에 따른 자동 캘리브레이션 방법에 따르면, 미리 정확한 좌표에 마커를 위치시킨 기준 좌표계나 별도의 제약 조건 없이, 로봇 비전 시스템을 임의의 환경에서 간편하게 캘리브레이션이 이루어지도록 하는 효과가 있다.According to the automatic calibration method according to an embodiment of the present invention, there is an effect that the robot vision system can be easily calibrated in an arbitrary environment without a reference coordinate system or a separate constraint in which a marker is positioned at an exact coordinate in advance.

특히, 본 발명의 일 실시예에 따른 자동 캘리브레이션 방법에 따르면, 어떠한 작업 영역에서도 그에 맞춰 캘리브레이션을 과적합시킬 수 있기 때문에, 왜곡이 심한 저가형 카메라로도 제약조건이 많은 환경에서 로봇이 정밀한 작업을 수행할 수 있도록 하는 효과가 있다.In particular, according to the automatic calibration method according to an embodiment of the present invention, since the calibration can be overfitted accordingly in any work area, the robot performs precise work in an environment where there are many constraints even with a low-cost camera with severe distortion. It has the effect of making it possible.

도 1은 본 발명의 일 실시예에 따른 자동 캘리브레이션 방법이 사용되는 로봇 비전 시스템을 개략적으로 나타낸 블록도,
도 2는 본 발명의 일 실시예에 따른 자동 캘리브레이션 방법을 개략적으로 나타낸 흐름도,
도 3은 본 발명의 일 실시예에 따른 자동 캘리브레이션 방법에서 기준점 N개를 지정하는 개념을 설명하기 위한 개념도,
도 4는 본 발명의 일 실시예에 따른 자동 캘리브레이션 방법의 표본 좌표를 균일하게 선택하는 방법을 구체적으로 나타낸 상세흐름도,
도 5는 본 발명의 일 실시예에 따른 자동 캘리브레이션 장치를 개략적으로 나타낸 블록도이다.
1 is a block diagram schematically showing a robot vision system using an automatic calibration method according to an embodiment of the present invention,
Figure 2 is a flow chart schematically showing an automatic calibration method according to an embodiment of the present invention,
3 is a conceptual diagram illustrating a concept of designating N reference points in an automatic calibration method according to an embodiment of the present invention;
Figure 4 is a detailed flow chart specifically showing a method for uniformly selecting the sample coordinates of the automatic calibration method according to an embodiment of the present invention,
5 is a block diagram schematically showing an automatic calibration apparatus according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.The present invention can be applied to various changes and can have various embodiments, and specific embodiments will be illustrated in the drawings and described in detail.

그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.

제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from other components. For example, the first component may be referred to as a second component without departing from the scope of the present invention, and similarly, the second component may be referred to as a first component. The term and/or includes a combination of a plurality of related described items or any one of a plurality of related described items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When an element is said to be "connected" or "connected" to another component, it is understood that other components may be directly connected to or connected to the other component, but there may be other components in between. It should be. On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that no other component exists in the middle.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, terms such as “include” or “have” are intended to indicate the presence of features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, one or more other features. It should be understood that the existence or addition possibilities of fields or numbers, steps, operations, components, parts or combinations thereof are not excluded in advance.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by a person skilled in the art to which the present invention pertains. Terms such as those defined in a commonly used dictionary should be interpreted as having meanings consistent with meanings in the context of related technologies, and should not be interpreted as ideal or excessively formal meanings unless explicitly defined in the present application. Does not.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In order to facilitate the overall understanding in describing the present invention, the same reference numerals are used for the same components in the drawings, and duplicate descriptions for the same components are omitted.

도 1은 본 발명의 일 실시예에 따른 자동 캘리브레이션 방법이 사용되는 로봇 비전 시스템을 개략적으로 나타낸 블록도이다. 도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 로봇 비전 시스템은 카메라(110), 로봇 제어기(120) 및 캘리브레이션 장치(130)를 포함할 수 있다.1 is a block diagram schematically illustrating a robot vision system using an automatic calibration method according to an embodiment of the present invention. 1, a robot vision system according to an embodiment of the present invention may include a camera 110, a robot controller 120, and a calibration device 130.

도 1을 참조하면, 캘리브레이션 장치(130)는 카메라(110)와 로봇 제어기(120)와 연동하여 카메라(110)로부터 촬영된 이미지, 특히 마커를 촬영한 이미지 정보를 획득하고, 로봇 제어기(120)로부터 로봇 제어와 관련된 정보를 획득한다. 로봇 제어와 관련된 정보는 로봇이 기준점, 또는 표본 좌표와 같은 특정 영역에 위치할 때 로봇 좌표계에서의 좌표 정보 내지 위치를 결정짓는 변수 정보(고도각, 방위각 등)를 포함할 수 있다. 로봇 제어기(120)는 인코더(encoder)를 포함할 수 있다.Referring to FIG. 1, the calibration device 130 interlocks with the camera 110 and the robot controller 120 to obtain image information taken from the camera 110, particularly a marker, and the robot controller 120 Obtain information related to robot control from. Information related to robot control may include variable information (elevation angle, azimuth, etc.) that determines coordinate information or position in the robot coordinate system when the robot is located in a specific area, such as a reference point or a sample coordinate. The robot controller 120 may include an encoder.

본 발명의 실시예에 따르면, 카메라(110)는 로봇의 말단, 즉, 엔드 이펙터에 탑재되어 로봇의 가동영역 내에 존재하는 마커를 촬영하고 촬영된 이미지 정보를 획득할 수 있다. 이것이 제 1 실시예가 될 수 있다. 또한, 제 2 실시예에서는, 카메라(110)는 로봇과 이격된 위치에 별도로 고정되어 존재하되, 로봇의 말단에 마커를 부착하고 카메라 영상에 마커가 보이는 영역을 가동영역으로 설정하여 캘리브레이션이 이루어지도록 할 수 있다. According to an embodiment of the present invention, the camera 110 is mounted on the end of the robot, that is, the end effector, to photograph a marker existing in the movable region of the robot and acquire the captured image information. This can be the first embodiment. In addition, in the second embodiment, the camera 110 is fixed to the robot and is separated from the robot, but a marker is attached to the end of the robot and the area where the marker is visible in the camera image is set as a movable area so that calibration is performed. can do.

캘리브레이션 장치(130)는 카메라(110)와 로봇 제어기(120)로부터 정보를 획득하여 카메라의 고유 매개 변수뿐만 아니라 로봇-카메라 간의 오프셋 값을 한번에 자동으로 캘리브레이션할 수 있다. 이는 다음의 도 2를 통해 보다 상세히 설명한다.The calibration device 130 may obtain information from the camera 110 and the robot controller 120 to automatically calibrate the offset values between the robot and the camera as well as the unique parameters of the camera at once. This will be described in more detail through FIG. 2 below.

도 2는 본 발명의 일 실시예에 따른 자동 캘리브레이션 방법을 개략적으로 나타낸 흐름도이다. 2 is a flowchart schematically illustrating an automatic calibration method according to an embodiment of the present invention.

도 2를 참조하면, 로봇의 작업 영역의 임의의 위치에 마커(marker)를 두고, 사용자는 로봇을 N 개의 기준점으로 움직이며 가동 영역을 교시한다(S210). 이때, 직접 교시, 간접 교시 등의 방법이 사용될 수 있다. 이 과정은 도 3을 통해 보다 상세히 설명한다. Referring to FIG. 2, a marker is placed at an arbitrary position in the working area of the robot, and the user moves the robot to N reference points and teaches the movable area (S210). At this time, methods such as direct teaching and indirect teaching may be used. This process will be described in more detail through FIG. 3.

도 3은 본 발명의 일 실시예에 따른 자동 캘리브레이션 방법에서 기준점 N개를 지정하는 개념을 설명하기 위한 개념도이다. 3 is a conceptual diagram illustrating a concept of designating N reference points in an automatic calibration method according to an embodiment of the present invention.

도 3을 참조하면, 임의의 작업 위치에서 캘리브레이션을 수행하기 위해, 사용자는 캘리브레이션 수행의 기준이 되는 영역을 가변적으로 지정해주는 것이 바람직하다. 이는 사용자에 의해 직접교시 간접교시 등의 방법을 통해 수행될 수 있다. 본 발명의 실시예에 따르면, 로봇의 베이스(base)가 존재하는 위치 또는 해당 위치로부터 일정 영역(로봇의 작업 영역) 상에 마커를 배치하고, 캘리브레이션을 수행하면서 로봇이 이동할 영역의 가장자리가 되는 기준점 N개를 지정한다. Referring to FIG. 3, in order to perform calibration at an arbitrary working position, it is preferable that a user variably designates an area that is a reference for performing calibration. This may be performed by a user through a method such as direct teaching or indirect teaching. According to an embodiment of the present invention, a marker is placed on a certain area (working area of the robot) from a position where the base of the robot is located or a corresponding position, and a reference point that becomes an edge of an area to be moved while performing calibration N is specified.

본 발명의 실시예에 따르면, 기준점은 4개인 것이 바람직하다. 이러한 기준점으로부터 시드 뷰(seed view)를 N개 획득할 수 있다. According to the embodiment of the present invention, it is preferable that there are four reference points. From this reference point, N seed views can be obtained.

다시 도 2로 돌아가서, 장치는 교시된 기준점들 안쪽의 영역, 즉, 가동영역에서 표본 좌표들을 설정하여 해당 좌표로 이동함에 의해 마커 이미지를 획득한다(S220). 본 발명의 실시예에 따르면, 표본 좌표는 약 15개 내지 25개를 설정하는 것이 바람직하고, 보다 바람직하게는, 20개를 설정하는 것이 좋다. 이때, 표본 좌표들을 균일하게 선택하기 위해 도 4의 과정을 거치는 것이 바람직하다.Returning to FIG. 2 again, the apparatus obtains a marker image by setting sample coordinates in an area inside the taught reference points, that is, a movable area, and moving to the corresponding coordinates (S220). According to an embodiment of the present invention, it is preferable to set about 15 to 25 sample coordinates, and more preferably, set 20 pieces. At this time, it is preferable to go through the process of Figure 4 to uniformly select the sample coordinates.

도 4는 본 발명의 일 실시예에 따른 자동 캘리브레이션 방법의 표본 좌표를 균일하게 선택하는 방법을 구체적으로 나타낸 상세흐름도이다. 4 is a detailed flow chart specifically showing a method of uniformly selecting a sample coordinate of an automatic calibration method according to an embodiment of the present invention.

도 4를 참조하면, 단계(S210)에서 설정한 4개의 기준점에서 로봇 기준 좌표계로부터 로봇 말단으로의 변환 행렬(Ti, i∈{1, ..., N})을 기록한다. 여기서, i는 기준점의 인덱스를 나타낸다(S410). Referring to FIG. 4, the transformation matrix (T i , i∈{1, ..., N}) from the robot reference coordinate system to the robot end is recorded at the four reference points set in step S210. Here, i represents the index of the reference point (S410).

그리고는, 장치는 로봇이 움직일 구면 좌표계의 중심점을 추출하기 위해, 기준점들이 공통적으로 바라보는 동작 중심점을 설정한다(S420). 이를 위해, 다음의 최소화 문제를 풀어, 모든 말단 좌표계의 z축과 가장 가까운 점을 동작 중심점으로 추출하는 것이 바람직하다(S420). Then, in order to extract the center point of the spherical coordinate system to be moved by the robot, the device sets a motion center point common to the reference points (S420). To this end, it is preferable to solve the following minimization problem and extract the point closest to the z-axis of all terminal coordinate systems as the motion center point (S420).

Figure 112019112124139-pat00003
Figure 112019112124139-pat00003

그리고는, 단계(S420)에서 설정한 동작 중심점을 기준으로 기준점들의 방위각 θi, 고도각 Ψi, 롤 ωi, 그리고 상기 동작 중심점으로부터의 거리 di 값을 기록하고, 각각의 변수들의 최소값 및 최대값을 추출한다(S430). 이는 다음의 변수 값으로 표현된다. (θmin, θmax, Ψmin, Ψmax, ωmin, ωmax, dmin, dmax)Then, the azimuth angle θ i of the reference points, the elevation angle Ψ i , the roll ω i , and the distance d i from the center of operation are recorded based on the motion center point set in step S420, and the minimum value of each variable and The maximum value is extracted (S430). This is represented by the following variable values. (θ min , θ max , Ψ min , Ψ max , ω min , ω max , d min , d max )

그 다음으로, 장치는 기준점 사이의 난수 가중합을 통해 임의의 표본 좌표들을 복수 개 추출한다(S440). 이때, 표본 좌표의 수는 약 15개 내지 25개가 적합하며, 보다 바람직하게는 20개가 좋다. 이때, 구면좌표계에서 균일한 표본 좌표를 획득하기 위해, 다음의 수학식을 이용하는 것이 바람직하다.Next, the device extracts a plurality of arbitrary sample coordinates through a random weighted sum between the reference points (S440). At this time, the number of sample coordinates is about 15 to 25 is suitable, more preferably 20 is good. At this time, in order to obtain uniform sample coordinates in the spherical coordinate system, it is preferable to use the following equation.

Figure 112019112124139-pat00004
Figure 112019112124139-pat00004

Figure 112019112124139-pat00005
Figure 112019112124139-pat00005

여기서, r은 0과 1 사이의 난수를 나타낸다.Here, r represents a random number between 0 and 1.

그리고는, 새로 추출된 약 20개의 표본 좌표들의 방위각, 고도각, 롤 및 거리 중 적어도 하나로부터 각 표본 좌표계의 변환행렬 Tj를 산출한다(S450). Then, a transformation matrix T j of each sample coordinate system is calculated from at least one of azimuth, elevation angle, roll, and distance of approximately 20 sample coordinates newly extracted (S450 ).

다시 도 2로 돌아가서, 표본 좌표를 설정 및 그에 대한 변환행렬을 계산한 후, 계산된 표본 좌표들로 로봇의 엔드 이펙터를 이동시켜 각 표본 좌표에서 마커의 이미지를 획득한다. Returning to FIG. 2 again, after setting the sample coordinates and calculating a transformation matrix therefor, the end effector of the robot is moved to the calculated sample coordinates to obtain an image of the marker at each sample coordinate.

그리고는, 획득된 이미지로부터 카메라 고유 매개 변수를 추정하고(S230), 각 이미지로부터 카메라 기준 마커의 위치(Tm,j)를 추정한다(S240). 추정되는 카메라 고유 매개 변수는 초점거리, 오프셋, 왜곡 상수 등이 포함될 수 있다. Then, the camera-specific parameters are estimated from the acquired image (S230), and the position (T m,j ) of the camera reference marker is estimated from each image (S240). Estimated camera-specific parameters may include focal length, offset, and distortion constant.

그리고는, 추정된 카메라 기준 마커의 위치를 이용, 로봇 좌표계 기준 마커의 위치를 추정한다(S250).Then, the position of the reference marker of the robot coordinate system is estimated using the estimated position of the camera reference marker (S250).

본 발명의 실시예에 따르면, 로봇 좌표계 기준 마커의 위치를 추정하기 위해, 장치는 비선형 최적화 알고리즘을 사용한다. 장치는 여러 자세에서 카메라 기준 마커의 위치 값을 로봇 기준 좌표계로 변환한 좌표(Tj, Toff, Tm,j)의 오차가 최소가 되도록 하는 방식을 이용하여 카메라-로봇 오프셋(Toff)를 추정한다. 여기서, Tm,j는 특정 표본 좌표에서의 카메라 기준 마커의 위치를 나타낸다. j는 표본 좌표의 인덱스를 나타낸다. 이때, 비선형 최적화 알고리즘은 BroydenFletcher-GoldfarbShanno 등 다양한 알고리즘을 사용할 수 있다. 특히, 연산의 효율성 및 수렴성을 위해, Toff는 x-y-z 좌표 및 z-y-x 오일러각의 6개 변수의 함수로 두고 계산할 수 있다. 이는 다음의 수학식으로 표현할 수 있다. According to an embodiment of the present invention, to estimate the position of the robot coordinate system reference marker, the device uses a nonlinear optimization algorithm. The device uses a method that minimizes the error of the coordinates (T j , T off , T m,j ) that convert the position value of the camera reference marker to the robot reference coordinate system in various postures to minimize the camera-robot offset (T off ). To estimate. Here, T m,j represents the position of the camera reference marker in a specific sample coordinate. j represents the index of the sample coordinates. At this time, various algorithms such as BroydenFletcher-GoldfarbShanno can be used as the nonlinear optimization algorithm. In particular, for the efficiency and convergence of the operation, T off can be calculated by placing it as a function of 6 variables of xyz coordinate and zyx Euler angle. This can be expressed by the following equation.

Figure 112019112124139-pat00006
Figure 112019112124139-pat00006

여기서, Toff은 가정값으로 들어가고, Toff의 에러를 최소화하는 방식으로 비선형 알고리즘이 실행된다. 수학식 3의 하단 식을 살펴보면, 표본 좌표(j) 이전 표본 좌표인 표본 좌표(j-1)에 대해 표본 좌표계의 변환 행렬, Toff 값, 그리고, 카메라로부터 마커의 위치(Tm,j-1)를 산출하고, 이에 대해 인버스(inverse)를 취한다. 그리고, 표본 좌표(j)와 관련된 항은 정방향으로 계산함에 따라 표본 좌표(j-1)로 갔다가 표본 좌표(j)로 돌아오는 경로에서 두 지점 사이의 틀어짐의 정도 값만 남게 된다. 이것이 상기 하단 식으로 표현된다. 그리고, 수학식 3의 상단 식을 살펴보면, ∥log(ΔRj)∥가 로테이션 매트릭스의 놈(Norm)을 나타내고, r∥ΔRj∥가 포지션 에러의 놈이 되어, 합쳐서 Toff과 관련하여 전체 에러의 놈이 형성되며, 여기에 시그마(Σ) 값을 취함에 따라 전체 표본 좌표에서의 촬영에서의 에러값을 합산한 값이 생성되고, 이를 최소화하는 방향으로 캘리브레이션 프로세스가 동작한다. Here, T off enters an assumption value, and a nonlinear algorithm is executed in a manner that minimizes the error of T off . Looking at the bottom expression of Equation 3, the sample matrix (j) is the transformation matrix of the sample coordinate system, the T off value, and the position of the marker from the camera (T m,j-) 1 ) is calculated, and an inverse is taken. In addition, as the term related to the sample coordinate (j) is calculated in the forward direction, only the degree of distortion between the two points remains in the path to the sample coordinate (j-1) and then to the sample coordinate (j). This is expressed by the above equation. And, looking at the top equation of Equation 3, ∥log(ΔR j )∥ represents the rotation matrix norm, r∥ΔR j ∥ becomes the norm of the position error, and collectively the total error in relation to T off Is formed, and as the sigma (Σ) value is taken, a value obtained by summing the error values in the photographing of the entire sample coordinates is generated, and the calibration process operates in a direction to minimize this.

본 발명의 다른 실시예에 따르면, 카메라가 별도로 설치된 작업 환경에서 로봇 말단에 마커를 부착하고, 카메라 영상에 마커가 보이는 영영에거 기준점을 설정하여 도 2의 일련의 과정을 유사하게 수행함에 따라 로봇 말단-마커 오프셋(Tem)을 추정하고, 이를 통해 로봇 베이스 기준의 카메라 위치(

Figure 112019112124139-pat00007
)를 추정할 수 있다. 여기서, Tj는 로봇의 변환 행렬을 나타낸다. Tem는 로봇 말단으로부터 마커로의 오프셋 추정값을 나타내고, Tm,j는 카메라로부터 마커의 위치이다. 이를 수학식으로 나타내면 다음과 같다. According to another embodiment of the present invention, in a working environment in which the camera is separately installed, a marker is attached to the end of the robot, and the zero point logger reference point where the marker is visible on the camera image is set to similarly perform the series of processes of FIG. 2. The end-marker offset (T em ) is estimated, and through this, the camera position relative to the robot base (
Figure 112019112124139-pat00007
) Can be estimated. Here, T j represents the transformation matrix of the robot. T em represents the offset estimate from the robot end to the marker, and T m,j is the position of the marker from the camera. This is expressed by the following equation.

Figure 112019112124139-pat00008
Figure 112019112124139-pat00008

Tm,j -1은 마커로부터 카메라로의 변환 행렬이 되고, 표본 좌표(j)의 이전 표본 좌표(j-1)에서의 로봇 기준 좌표계로부터 카메라의 위치와 표본 좌표(j)에서의 로봇 기준 좌표계로부터 카메라의 위치 사이의 에러에 대한 로테이션 매트릭스 및 포지션 매트릭스의 에러를 최소화하는 방법으로, 로봇 베이스 기준 카메라 위치뿐만 아니라 로봇 말단-마커 오프셋(Tem)을 추정할 수 있다. T m,j -1 becomes the transformation matrix from the marker to the camera, and the robot's reference in the sample coordinate (j) and the position of the camera from the robot reference coordinate system in the previous sample coordinate (j-1) of the sample coordinate (j). The robot end-marker offset (T em ) as well as the robot base reference camera position can be estimated by minimizing the error of the rotation matrix and the position matrix for errors between the camera positions from the coordinate system.

도 5는 본 발명의 일 실시예에 따른 자동 캘리브레이션 장치를 개략적으로 나타낸 블록도이다. 도 5에 도시된 바와 같이, 본 발명의 일 실시예에 따른 자동 캘리브레이션 장치는 입력부(510), 메모리(520), 프로세서(520), 출력부(540) 및 사용자 인터페이스(550)를 포함할 수 있다. 5 is a block diagram schematically showing an automatic calibration device according to an embodiment of the present invention. As shown in FIG. 5, the automatic calibration device according to an embodiment of the present invention may include an input unit 510, a memory 520, a processor 520, an output unit 540 and a user interface 550. have.

입력부(510)는 카메라 및 로봇 제어기(또는 로봇 인코더)로부터 정보를 획득할 수 있다. 카메라로부터는 촬영된 이미지 정보를 획득할 수 있고, 로봇 제어기로부터는 해당 이미지 촬영시의 로봇의 위치를 로봇 좌표계로 표현한 정보, 로봇의 제어명령과 관련된 정보를 획득할 수 있다. The input unit 510 may acquire information from a camera and a robot controller (or robot encoder). The captured image information can be obtained from the camera, and the robot controller can obtain information representing the position of the robot in the robot coordinate system when the corresponding image is captured, and information related to the control command of the robot.

메모리(520)는 프로세서(530)에서의 자동 캘리브레이션 프로시져(procedure)와 관련된 지시어를 저장하고 있다. The memory 520 stores instructions related to an automatic calibration procedure in the processor 530.

프로세서(530)는 카메라의 고유 매개 변수와 로봇-카메라 오프셋을 한번에 캘리브레이션한다. 프로세서(530)는, 작업 영역의 임의의 위치에 마커를 두고, 로봇을 복수 개의 기준좌표로 움직여 가동영역을 교시하도록 한 후, 로봇이 가동 영역 안에서 자동으로 움직일 때, 입력부(510)를 통해 획득되는 다수의 마커 이미지와 로봇 좌표계를 수신하여, 해당 이미지로부터 카메라 고유 매개 변수를 추정하고 각 이미지에서 카메라 기준 마커의 위치를 추정한다. 이때, 비선형 알고리즘을 사용하여 다양한 자세에서 카메라 기준 마커의 위치를 로봇의 기준 좌표계로 변환했을 때, 에러율이 최소가 되는 카메라-로봇 오프셋을 추정한다. The processor 530 calibrates the unique parameters of the camera and the robot-camera offset at once. The processor 530 places a marker at an arbitrary position in the working area, moves the robot to a plurality of reference coordinates to teach the movable area, and then, when the robot automatically moves in the movable area, acquired through the input unit 510 Receives a number of marker images and a robot coordinate system, estimates camera-specific parameters from the image, and estimates the position of the camera reference marker in each image. At this time, when the position of the camera reference marker is converted to the reference coordinate system of the robot in various postures using a nonlinear algorithm, the camera-robot offset that minimizes the error rate is estimated.

출력부(540)는 추정된 카메라 고유 매개 변수 및 카메라-로봇 오프셋 정보를 출력한다. The output unit 540 outputs estimated camera-specific parameters and camera-robot offset information.

사용자 인터페이스(550)는 해당 장치에서 설정해야 할 다양한 설정값을 설정하는데 사용되는 구성요소이다. The user interface 550 is a component used to set various setting values to be set in the corresponding device.

이상 도면 및 실시예를 참조하여 설명하였지만, 본 발명의 보호범위가 상기 도면 또는 실시예에 의해 한정되는 것을 의미하지는 않으며 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. Although described above with reference to the drawings and examples, the protection scope of the present invention is not meant to be limited by the drawings or examples, and those skilled in the art will think of the present invention described in the claims below And it will be understood that various modifications and changes may be made to the present invention without departing from the scope.

Claims (17)

로봇의 엔드 이펙터에 배치된 카메라 및 상기 로봇을 제어하는 로봇 제어기와 연결된 캘리브레이션 장치에서의 자동 캘리브레이션 방법에 있어서,
로봇의 작업 영역에 마킹된 마커에 대한 이미지 및 로봇 기준 좌표계를 상기 카메라 및 상기 로봇 제어기로부터 획득하는 단계, 상기 획득된 이미지 및 로봇 기준 좌표계는 복수 개의 표본 좌표들로 상기 엔드 이펙터를 이동시키며 기록됨; 및
상기 획득된 이미지 및 로봇 기준 좌표계를 이용하여 로봇 좌표계 기준 마커의 위치를 추정하는 단계를 포함하고,
상기 획득된 이미지 및 로봇 기준 좌표계를 이용하여 로봇 좌표계 기준 마커의 위치를 추정하는 단계는,
카메라-로봇 오프셋(Toff)을 가정된 값으로 두고 비선형 최적화 알고리즘을 사용하여 복수 개의 자세에서 카메라 기준 마커의 위치(Tm,j)를 로봇 기준 좌표계로 변환한 좌표의 에러율을 최소로 만드는 방식을 통해 카메라-로봇 오프셋(Toff)을 추정하는 단계를 포함하며,
상기 카메라-로봇 오프셋(Toff)은 x-y-z 좌표 및 z-y-x 오일러 각을 포함하는 변수들의 함수로 계산되고,
상기 카메라-로봇 오프셋(Toff)은 제 1 표본 좌표와 제 2 표본 좌표 간의 틀어짐 정도를 로테이션 매트릭스(R)의 에러 및 포지션(P) 에러의 값으로 표현하고, 이를 최소화하는 비선형 최적화 알고리즘을 이용하여 추정되며,
상기 카메라-로봇 오프셋(Toff)은
Figure 112020501273969-pat00016
을 통해 산출되며,
여기서, j는 표본 좌표의 인덱스를, Tj는 표본 좌표 j의 변환 행렬을, Tm,j는 표본 좌표 j에서 카메라 기준 마커의 위치를, R은 로테이션 매트릭스와 관련된 변수를, P는 포지션 에러와 관련된 변수를 나타내고,
상기 엔드 이펙터는 가동영역이 교시된 상태로 구비되며,
상기 가동영역은 캘리브레이션의 기준이 되는 영역으로 복수 개의 기준점으로 정의되고,
상기 복수 개의 표본 좌표들은, 상기 복수 개의 기준점 내의 영역에 배치되며,
복수 개의 표본 좌표들은,
상기 복수 개의 기준점에서 로봇의 기준 좌표계로부터 로봇 말단으로의 변환 행렬을 기록하는 단계;
상기 복수 개의 기준점들이 공통적으로 바라보는 동작 중심점을 설정하는 단계;
상기 설정된 동작 중심점을 기준으로 상기 복수 개의 기준좌표들의 위치를 결정짓는 변수들을 기록하고 각 변수들의 최소값 및 최대값을 추출하는 단계; 및
상기 복수 개의 기준점들 사이의 난수 가중합을 통해 상기 복수 개의 표본 좌표들을 추출하는 단계를 통해 추출되고,
상기 변수들은 방위각, 고도각, 롤 및 상기 동작 중심점으로부터의 거리 중 적어도 둘을 포함하며,
상기 추출된 복수 개의 표본 좌표들의 변수들로부터 각 표본 좌표계의 변환행렬(Tj)이 산출되는, 자동 캘리브레이션 방법.
In the automatic calibration method in the calibration device connected to the robot controller for controlling the robot and the camera disposed in the end effector of the robot,
Acquiring an image and a robot reference coordinate system for the markers marked on the working area of the robot from the camera and the robot controller, the acquired image and the robot reference coordinate system recorded by moving the end effector into a plurality of sample coordinates; And
And estimating the position of the robot coordinate system reference marker using the acquired image and the robot reference coordinate system,
Estimating the position of the robot coordinate system reference marker using the acquired image and the robot reference coordinate system,
How to minimize the error rate of the coordinates that convert the position of the camera reference marker (T m,j ) to the robot reference coordinate system in multiple postures using the non-linear optimization algorithm with the camera-robot offset (T off ) as the assumed value. Estimating the camera-robot offset (T off ) through
The camera-robot offset (T off ) is calculated as a function of variables including xyz coordinates and zyx Euler angle,
The camera-robot offset (T off ) expresses the degree of distortion between the first sample coordinates and the second sample coordinates as the values of the error and the position (P) of the rotation matrix (R), and uses a nonlinear optimization algorithm to minimize this Is estimated by
The camera-robot offset (T off ) is
Figure 112020501273969-pat00016
Is calculated through,
Where j is the index of the sample coordinate, T j is the transformation matrix of the sample coordinate j, T m,j is the position of the camera reference marker in the sample coordinate j, R is the variable related to the rotation matrix, and P is the position error. Represents a variable related to
The end effector is provided with a movable area taught,
The movable area is an area that is a reference for calibration, and is defined by a plurality of reference points.
The plurality of sample coordinates are arranged in an area within the plurality of reference points,
Multiple sample coordinates,
Recording a transformation matrix from the reference coordinate system of the robot to the robot end at the plurality of reference points;
Setting an operation center point common to the plurality of reference points;
Recording variables determining the positions of the plurality of reference coordinates based on the set operation center point and extracting minimum and maximum values of each variable; And
It is extracted through the step of extracting the plurality of sample coordinates through a weighted random number between the plurality of reference points,
The variables include at least two of azimuth, elevation, roll and distance from the motion center point,
An automatic calibration method in which a transformation matrix (T j ) of each sample coordinate system is calculated from the extracted variables of a plurality of sample coordinates.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020190138460A 2019-11-01 2019-11-01 Automatic calibration method and apparatus for robot vision system KR102111655B1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020190138460A KR102111655B1 (en) 2019-11-01 2019-11-01 Automatic calibration method and apparatus for robot vision system
KR1020200055963A KR102220173B1 (en) 2019-11-01 2020-05-11 Automatic calibration method and apparatus for robot vision system
US17/772,074 US11642789B2 (en) 2019-11-01 2020-10-30 Automatic calibration method and device for robot vision system
PCT/KR2020/015028 WO2021086108A1 (en) 2019-11-01 2020-10-30 Automatic calibration method and device for robot vision system
EP20881234.7A EP4052861A4 (en) 2019-11-01 2020-10-30 Automatic calibration method and device for robot vision system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190138460A KR102111655B1 (en) 2019-11-01 2019-11-01 Automatic calibration method and apparatus for robot vision system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020200055963A Division KR102220173B1 (en) 2019-11-01 2020-05-11 Automatic calibration method and apparatus for robot vision system

Publications (1)

Publication Number Publication Date
KR102111655B1 true KR102111655B1 (en) 2020-06-04

Family

ID=71081226

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190138460A KR102111655B1 (en) 2019-11-01 2019-11-01 Automatic calibration method and apparatus for robot vision system

Country Status (1)

Country Link
KR (1) KR102111655B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112598752A (en) * 2020-12-24 2021-04-02 东莞市李群自动化技术有限公司 Calibration method based on visual identification and operation method
WO2021086108A1 (en) * 2019-11-01 2021-05-06 주식회사 뉴로메카 Automatic calibration method and device for robot vision system
CN114833825A (en) * 2022-04-19 2022-08-02 深圳市大族机器人有限公司 Cooperative robot control method and device, computer equipment and storage medium
CN115139283A (en) * 2022-07-18 2022-10-04 中船重工鹏力(南京)智能装备系统有限公司 Robot hand-eye calibration method based on random mark dot matrix

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100207722B1 (en) * 1997-03-25 1999-07-15 윤종용 Calibration method for location control system
KR100468857B1 (en) * 2002-11-21 2005-01-29 삼성전자주식회사 Method for calibrating hand/eye using projective invariant shape descriptor for 2-dimensional shape
KR20110046767A (en) * 2009-10-29 2011-05-06 대우조선해양 주식회사 Jig for calibration of robot and laser vision system, and calibration method using the same
KR20140123660A (en) * 2013-04-12 2014-10-23 성균관대학교산학협력단 Apparatus and method for calibration of a robot hand and a camera attached to robot hand
JP2015182144A (en) * 2014-03-20 2015-10-22 キヤノン株式会社 Robot system and calibration method of robot system
KR20190027584A (en) * 2017-09-07 2019-03-15 주식회사 인지 Method and apparatus for calibration of a robot hand and a camera

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100207722B1 (en) * 1997-03-25 1999-07-15 윤종용 Calibration method for location control system
KR100468857B1 (en) * 2002-11-21 2005-01-29 삼성전자주식회사 Method for calibrating hand/eye using projective invariant shape descriptor for 2-dimensional shape
KR20110046767A (en) * 2009-10-29 2011-05-06 대우조선해양 주식회사 Jig for calibration of robot and laser vision system, and calibration method using the same
KR20140123660A (en) * 2013-04-12 2014-10-23 성균관대학교산학협력단 Apparatus and method for calibration of a robot hand and a camera attached to robot hand
JP2015182144A (en) * 2014-03-20 2015-10-22 キヤノン株式会社 Robot system and calibration method of robot system
KR20190027584A (en) * 2017-09-07 2019-03-15 주식회사 인지 Method and apparatus for calibration of a robot hand and a camera
KR101988937B1 (en) * 2017-09-07 2019-06-13 주식회사 인지 Method and apparatus for calibration of a robot hand and a camera

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021086108A1 (en) * 2019-11-01 2021-05-06 주식회사 뉴로메카 Automatic calibration method and device for robot vision system
US11642789B2 (en) 2019-11-01 2023-05-09 Neuromeka Automatic calibration method and device for robot vision system
CN112598752A (en) * 2020-12-24 2021-04-02 东莞市李群自动化技术有限公司 Calibration method based on visual identification and operation method
CN112598752B (en) * 2020-12-24 2024-02-27 东莞市李群自动化技术有限公司 Calibration method and operation method based on visual recognition
CN114833825A (en) * 2022-04-19 2022-08-02 深圳市大族机器人有限公司 Cooperative robot control method and device, computer equipment and storage medium
CN115139283A (en) * 2022-07-18 2022-10-04 中船重工鹏力(南京)智能装备系统有限公司 Robot hand-eye calibration method based on random mark dot matrix
CN115139283B (en) * 2022-07-18 2023-10-24 中船重工鹏力(南京)智能装备系统有限公司 Robot hand-eye calibration method based on random mark dot matrix

Similar Documents

Publication Publication Date Title
KR102111655B1 (en) Automatic calibration method and apparatus for robot vision system
CN110842914B (en) Hand-eye calibration parameter identification method, system and medium based on differential evolution algorithm
US10112301B2 (en) Automatic calibration method for robot systems using a vision sensor
JP6573354B2 (en) Image processing apparatus, image processing method, and program
US9616569B2 (en) Method for calibrating an articulated end effector employing a remote digital camera
CN106767393B (en) Hand-eye calibration device and method for robot
KR20180120647A (en) System and method for tying together machine vision coordinate spaces in a guided assembly environment
KR100468857B1 (en) Method for calibrating hand/eye using projective invariant shape descriptor for 2-dimensional shape
Muis et al. Eye-to-hand approach on eye-in-hand configuration within real-time visual servoing
CN113601503B (en) Hand-eye calibration method, device, computer equipment and storage medium
JP2018111165A (en) Calibration device of visual sensor, method and program
KR20150101484A (en) A method of calibrating a camera and a system therefor
WO2021012122A1 (en) Robot hand-eye calibration method and apparatus, computing device, medium and product
JP2019089188A (en) Operation system and program
KR101021470B1 (en) Generating method of robot motion data using image data and generating apparatus using the same
CN111590593A (en) Calibration method, device and system of mechanical arm and storage medium
JPWO2018043524A1 (en) Robot system, robot system control apparatus, and robot system control method
KR102220173B1 (en) Automatic calibration method and apparatus for robot vision system
US11577400B2 (en) Method and apparatus for managing robot system
KR102432370B1 (en) Vision analysis apparatus for picking robot
JPH06278064A (en) Method for converting coordinate of visual sensor
CN112584041A (en) Image identification dynamic deviation rectifying method
JP3849030B2 (en) Camera calibration apparatus and method
KR102585332B1 (en) Device and method executing calibration between robot hand and camera separated from robot hand
CN113592907B (en) Visual servo tracking method and device based on optical flow

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant