KR20220072331A - Hand eye calibration system and method - Google Patents
Hand eye calibration system and method Download PDFInfo
- Publication number
- KR20220072331A KR20220072331A KR1020200159811A KR20200159811A KR20220072331A KR 20220072331 A KR20220072331 A KR 20220072331A KR 1020200159811 A KR1020200159811 A KR 1020200159811A KR 20200159811 A KR20200159811 A KR 20200159811A KR 20220072331 A KR20220072331 A KR 20220072331A
- Authority
- KR
- South Korea
- Prior art keywords
- value
- calibration
- coordinate system
- robot arm
- calculated
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
- B25J19/021—Optical sensing devices
- B25J19/023—Optical sensing devices including video camera means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme 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/1697—Vision controlled systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30204—Marker
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
Abstract
핸드 아이 캘리브레이션 시스템 및 방법을 개시한다. 본 발명은 카메라를 통해 전달되는 정보를 이용하여 로봇 팔을 운용하는 시스템에서 핸드 아이 캘리브레이션을 위한 입력 정보를 실시간 획득하고, 이를 기초로 카메라와 로봇 시스템의 운용에 대한 유효성을 판단하여 카메라의 좌표 시스템과 로봇 팔의 좌표 시스템 간의 변환 관계를 보정 및 개선할 수 있다.A hand eye calibration system and method are disclosed. The present invention acquires input information for hand eye calibration in real time in a system that operates a robot arm using information transmitted through a camera, and determines the effectiveness of the operation of the camera and the robot system based on this in real time to determine the camera's coordinate system and the transformation relationship between the coordinate system of the robot arm can be corrected and improved.
Description
본 발명은 핸드 아이 캘리브레이션 시스템 및 방법에 관한 발명으로서, 더욱 상세하게는 카메라를 통해 전달되는 정보를 이용하여 로봇 팔을 운용하는 시스템에서 핸드 아이 캘리브레이션을 위한 입력 정보를 실시간 획득하고, 이를 기초로 카메라와 로봇 시스템의 운용에 대한 유효성을 판단하여 카메라의 좌표 시스템과 로봇 팔의 좌표 시스템 간의 변환 관계를 보정 및 개선하는 핸드 아이 캘리브레이션 시스템 및 방법에 관한 것이다.The present invention relates to a hand eye calibration system and method, and more particularly, by using information transmitted through a camera, input information for hand eye calibration is obtained in real time in a system operating a robot arm, and based on this, a camera And to a hand eye calibration system and method for correcting and improving the conversion relationship between the coordinate system of the camera and the coordinate system of the robot arm by determining the effectiveness of the operation of the robot system.
일반적으로, 전기적 또는 자기적인 작용을 이용하여 인간의 동작과 닮은 운동을 행하는 기계장치를 로봇이라고 한다. In general, a mechanical device that performs a motion similar to that of a human using an electrical or magnetic action is called a robot.
초기의 로봇은 생산 현장에서의 작업 자동화ㆍ무인화 등을 목적으로 한 매니퓰레이터(manipulator)나 반송 로봇 등의 산업용 로봇으로 인간을 대신하여 위험한 작업이나 단순한 반복 작업, 큰 힘을 필요로 하는 작업을 수행하였으나, 최근에는 인간과 유사한 관절체계를 가지고 인간의 작업 및 생활공간에서 인간과 공존하며 다양한 서비스를 제공하는 인간형 로봇(humanoid robot)의 연구 개발이 활발하게 진행되고 있다.Early robots were industrial robots, such as manipulators and transport robots, for the purpose of automating and unmanning work at the production site. , Recently, research and development of humanoid robots that provide various services while coexisting with humans in human work and living spaces with a joint system similar to humans are being actively conducted.
이러한 인간형 로봇은 전기적ㆍ기계적 메카니즘에 의해서 팔이나 손의 동작에 가깝게 운동할 수 있도록 만들어진 매니퓰레이터를 이용하여 작업을 수행한다. 현재 사용되고 있는 대부분의 매니퓰레이터는 여러 개의 링크(link)들이 서로 연결되어 구성된다. These humanoid robots perform tasks using a manipulator that is made to move close to the motion of an arm or a hand by an electrical or mechanical mechanism. Most of the manipulators currently used are composed of several links connected to each other.
각 링크들의 연결 부위를 관절(joint)이라 하는데 매니퓰레이터는 이러한 링크와 관절들 사이의 기하학적인 관계에 따라 운동 특성이 결정된다. The joint of each link is called a joint, and the movement characteristics of the manipulator are determined according to the geometric relationship between these links and joints.
이 기하학적인 관계를 수학적으로 표현한 것이 기구학(Kinematics)이며 대부분의 매니퓰레이터는 이러한 기구학적 특성(kinematics characteristic)을 가지고 작업을 수행하기 위한 방향(목표 위치)으로 로봇 팔(예컨대, 엔드 이펙터)을 이동시킨다.Kinematics is a mathematical expression of this geometrical relationship, and most manipulators have this kinematics characteristic to move a robot arm (eg, an end effector) in a direction (target position) to perform a task. .
카메라를 기반으로 하는 로봇 팔 운용 시스템은 일반적으로 로봇 팔의 위치를 카메라에서 출력되는 영상을 통해서 물체의 위치를 인식하고 이를 기반으로 로봇 팔과 부착된 여러 가지 도구들을 이용해서 물체를 집거나 혹은 내려 놓는 등의 기능을 수행한다A camera-based robot arm operating system generally recognizes the position of the robot arm through the image output from the camera, and uses the robot arm and various attached tools based on this to pick up or lower the object. functions such as placing
한편, 카메라를 부착한 로봇 시스템의 보정은 크게 로봇 베이스와 로봇 팔의 보정, 카메라의 보정, 로봇 베이스 또는 로봇 팔과 카메라의 보정(hand/eye calibration)으로 분류된다.On the other hand, the calibration of the robot system to which the camera is attached is largely classified into calibration of the robot base and the robot arm, the calibration of the camera, and the calibration of the robot base or the robot arm and the camera (hand/eye calibration).
카메라를 이용하여 인식된 물체는 카메라 내부를 원점으로 하는 카메라 좌표계에 의해 물체의 위치와 자세를 표현하게 되지만, 로봇 팔을 해당 물체로 이동하기 위해서는 카메라 좌표계가 아닌 로봇 팔의 좌표계를 기반으로 위치 및 자세가 표시되어야 한다.The object recognized using the camera expresses the position and posture of the object by the camera coordinate system with the camera as the origin. posture should be displayed.
따라서, 카메라의 좌표계를 로봇 팔의 좌표계로 변환하는 작업은 카메라 기반의 로봇 팔 운용 시스템에서는 필수적으로 수행되어야 하고 이를 핸드 아이 캘리브레이션이라고 한다.Therefore, the operation of converting the coordinate system of the camera into the coordinate system of the robot arm must be performed in a camera-based robot arm operating system, and this is called hand eye calibration.
도1은 종래 기술에 따른 핸드 아이 캘리브레이션 장치를 나타낸 예시도이다.1 is an exemplary view showing a hand eye calibration apparatus according to the prior art.
도1에 나타낸 바와 같이, 종래 기술에 따른 핸드 아이 캘리브레이션 장치는 로봇 팔(10)과, 로봇 팔(10)에 설치된 마커(20)로 구성될 수 있다.As shown in FIG. 1 , the hand eye calibration apparatus according to the related art may include a
또한, 도2는 일반적인 핸드 아이 캘리브레이션 장치의 캘리브레이션 수행을 위한 격자점 마커를 나타낸 예시도이다.Also, FIG. 2 is an exemplary diagram illustrating a grid point marker for performing calibration of a general hand eye calibration apparatus.
일반적으로 핸드아이 캘리브레이션을 수행하기 위해서는 두 개의 좌표 변환 행렬이 필요하다.In general, two coordinate transformation matrices are required to perform handeye calibration.
하나는 아르코 마커(Aruco Marker) 또는 격자점으로 구성되어 로봇 팔에 부착된 캘리브레이션 보드의 위치와 자세이고, 이는 카메라 좌표계를 통해서 획득된다. One is the position and posture of the calibration board attached to the robot arm composed of Aruco Marker or grid points, which is acquired through the camera coordinate system.
다른 하나는 로봇 팔의 위치를 로봇 기준점을 기반으로 하는 로봇 좌표계로 획득한다.The other is to acquire the position of the robot arm in the robot coordinate system based on the robot reference point.
핸드 아이 캘리브레이션은 상기 표시된 두 좌표계 변환 행렬에 대해서 다양한 위치 및 자세를 변경하면서 관련 데이터들을 수집하고 이를 기반으로 카메라와 로봇 간의 좌표계 변환 행렬을 최종적으로 획득한다.Hand eye calibration collects related data while changing various positions and postures for the two coordinate system transformation matrices displayed above, and finally obtains a coordinate system transformation matrix between the camera and the robot based on this.
따라서, 로봇에 캘리브레이션에 필요한 마커(20)를 부착해야 하기 때문에 로봇 운용 이전에 수행되는 것이 일반적이다. Therefore, since the
그러나 시스템 운용중에 미세한 충격 등이 발생해 카메라 또는 로봇 팔의 위치 또는 자세가 의도하지 않게 변화할 경우, 로봇의 오동작이 발생하는 문제점이 있어 로봇 운용을 중지하고 핸드 아이 캘리브레이션을 재수행해서 새로운 카메라와 로봇 팔 간의 좌표계 변환 행렬을 갱신해야 하는 문제점이 있다.However, if the position or posture of the camera or robot arm is unintentionally changed due to a slight impact during system operation, there is a problem that the robot malfunctions. There is a problem in that the coordinate system transformation matrix between the robot arms needs to be updated.
이러한 문제점을 해결하기 위하여, 본 발명은 카메라를 통해 전달되는 정보를 이용하여 로봇 팔을 운용하는 시스템에서 핸드 아이 캘리브레이션을 위한 입력 정보를 실시간 획득하고, 이를 기초로 카메라와 로봇 시스템의 운용에 대한 유효성을 판단하여 카메라의 좌표 시스템과 로봇 팔의 좌표 시스템 간의 변환 관계를 보정 및 개선하는 핸드 아이 캘리브레이션 시스템 및 방법을 제공하는 것을 목적으로 한다.In order to solve this problem, the present invention acquires input information for hand eye calibration in real time in a system operating a robot arm using information transmitted through a camera, and based on this, the effectiveness of the operation of the camera and the robot system An object of the present invention is to provide a hand eye calibration system and method for correcting and improving the transformation relationship between the coordinate system of the camera and the coordinate system of the robot arm by determining the
상기한 목적을 달성하기 위하여 본 발명의 일 실시 예는 핸드 아이 캘리브레이션 시스템으로서, 카메라가 로봇 팔에 부착된 캘리브레이션 마커를 촬영하면, 관리 단말이 상기 촬영된 캘리브레이션 마커의 이미지로부터 카메라 좌표계 기반의 캘리브레이션 마커 위치 및 자세와, 상기 캘리브레이션 마커의 이미지를 획득한 시점에서 로봇 좌표계 기반의 로봇 팔 위치를 획득하여 상기 캘리브레이션 마커와 로봇 팔 사이의 좌표계 변환 값을 산출하고, 상기 산출된 좌표계 변환 값을 현재 설정된 캘리브레이션 마커와 로봇 팔 사이의 좌표계 변환 값과 비교한 결과에 따라, 캘리브레이션의 재수행 여부를 출력하는 것을 특징으로 한다.In order to achieve the above object, an embodiment of the present invention is a hand eye calibration system. When the camera shoots a calibration marker attached to a robot arm, the management terminal uses the camera coordinate system-based calibration marker from the captured image of the calibration marker. The position and posture and the position of the robot arm based on the robot coordinate system are obtained at the time of acquiring the image of the calibration marker to calculate the coordinate system transformation value between the calibration marker and the robot arm, and the calculated coordinate system transformation value is used for the currently set calibration It is characterized in that, according to the result of comparison with the coordinate system transformation value between the marker and the robot arm, it is characterized in that whether calibration is re-performed is output.
또한, 상기 실시 예에 따른 캘리브레이션 마커와 로봇 팔 사이의 좌표계 변환 값은 상기 로봇 팔의 운용 중에 실시간으로 입력되는 캘리브레이션 마커의 이미지에서 획득한 위치 및 자세와, 상기 캘리브레이션 마커의 이미지를 획득한 시점에서 로봇 팔의 위치 값을 이용하는 것을 특징으로 한다.In addition, the coordinate system conversion value between the calibration marker and the robot arm according to the embodiment is the position and posture obtained from the image of the calibration marker input in real time during operation of the robot arm, and the image of the calibration marker at the time point It is characterized by using the position value of the robot arm.
또한, 상기 실시 예에 따른 핸드 아이 캘리브레이션 시스템은 로봇 팔에 부착된 일정 크기의 캘리브레이션 마커; 상기 캘리브레이션 마커를 촬영하는 카메라; 상기 캘리브레이션 마커와 함께 임의의 동작을 수행하는 로봇 팔; 및 상기 촬영된 캘리브레이션 마커의 이미지로부터 카메라 좌표계 기반의 캘리브레이션 마커 위치 및 자세와, 상기 캘리브레이션 마커의 이미지를 획득한 시점에서 로봇 좌표계 기반의 로봇 팔 위치를 획득하여 상기 캘리브레이션 마커와 로봇 팔 사이의 좌표계 변환 값을 산출하고, 상기 산출된 좌표계 변환 값을 현재 설정된 캘리브레이션 마커와 로봇 팔 사이의 좌표계 변환 값과 비교하며, 상기 비교 결과에 따라 캘리브레이션의 재수행 여부에 대한 결과를 출력하는 관리 단말;을 포함하는 것을 특징으로 한다.In addition, the hand eye calibration system according to the embodiment includes a calibration marker of a certain size attached to the robot arm; a camera for photographing the calibration marker; a robot arm that performs an arbitrary operation together with the calibration marker; and the position and posture of the camera coordinate system-based calibration marker from the photographed image of the calibration marker, and the position of the robot arm based on the robot coordinate system at the time of acquiring the image of the calibration marker, thereby converting the coordinate system between the calibration marker and the robot arm A management terminal that calculates a value, compares the calculated coordinate system transformation value with a coordinate system transformation value between the currently set calibration marker and the robot arm, and outputs a result as to whether or not to re-perform the calibration according to the comparison result; characterized in that
또한, 상기 실시 예에 따른 관리 단말은 로봇 팔의 운용 중에 상기 캘리브레이션 마커에 의해 생성되는 카메라를 기준으로 하는 캘리브레이션 마커의 위치 및 자세와, 로봇을 기준으로 하는 로봇 팔의 TCP(Tool Center Point) 위치를 이용하여 획득한 변환 값과 현재 설정된 변환 값 간에 산출된 차이 값에 따라 캘리브레이션의 재수행에 대한 유효성을 결정하는 것을 특징으로 한다.In addition, the management terminal according to the embodiment includes the position and posture of the calibration marker based on the camera generated by the calibration marker during operation of the robot arm, and the TCP (Tool Center Point) position of the robot arm with respect to the robot. It is characterized in that the validity of re-performation of calibration is determined according to the difference value calculated between the conversion value obtained by using and the currently set conversion value.
또한, 상기 실시 예에 따른 관리 단말은 산출된 차이 값이 미리 설정된 재수행 판단용 기준 값과 동일하거나 또는 재수행 판단용 기준 값 이하면 현재 설정된 변환 값이 유지되도록 하고, 상기 산출된 차이 값이 기준 값 이상이면, 상기 차이 값과 기준 값 사이의 크기에 따라 캘리브레이션이 재수행되도록 하거나 또는 산출된 변환 값을 자동 보정 값으로 저장하는 것을 특징으로 한다.In addition, the management terminal according to the embodiment maintains the currently set conversion value if the calculated difference value is equal to or less than the preset reference value for determination of re-execution, and the calculated difference value is If it is greater than or equal to the reference value, the calibration may be re-performed according to the magnitude between the difference value and the reference value, or the calculated conversion value may be stored as an automatic correction value.
또한, 상기 실시 예에 따른 자동 보정 값은 저장 횟수를 카운트하여 일정 값에 도달하면 저장된 자동 보정 값의 편차를 산출하고, 상기 산출된 편차 값을 미리 설정된 편차 판단용 기준 값과 비교하되, 상기 산출된 편차 값이 편차 판단용 기준 값 이하면, 현재 설정된 변환 값을 자동 보정하며, 상기 산출된 편차 값이 편차 판단용 기준 값 이상이면, 저장된 자동 보정 값을 모두 초기화하는 것을 특징으로 한다.In addition, the automatic correction value according to the embodiment counts the number of times of storage and, when a predetermined value is reached, calculates a deviation of the stored automatic correction value, and compares the calculated deviation value with a preset reference value for determining deviation, but the calculation If the calculated deviation value is less than the reference value for determining the deviation, the currently set conversion value is automatically corrected, and when the calculated deviation value is greater than or equal to the reference value for determining the deviation, all stored automatic correction values are initialized.
또한, 본 발명의 일 실시 예는 핸드 아이 캘리브레이션 방법으로서, a) 카메라가 로봇 팔에 부착된 일정 크기의 캘리브레이션 마커를 촬영하는 단계; b) 관리 단말이 상기 촬영된 캘리브레이션 마커의 이미지로부터 카메라 좌표계 기반의 캘리브레이션 마커 위치 및 자세와, 상기 캘리브레이션 마커의 이미지를 획득한 시점에서 로봇 좌표계 기반의 로봇 팔 위치를 획득하는 단계; c) 상기 관리 단말이 상기 캘리브레이션 마커와 로봇 팔 사이의 좌표계 변환 값을 산출하고, 상기 산출된 좌표계 변환 값을 현재 설정된 캘리브레이션 마커와 로봇 팔 사이의 좌표계 변환 값과 비교하는 단계; 및 d) 상기 관리 단말이 산출된 좌표계 변환 값과 현재 설정된 좌표계 변환 값 사이의 차이 값을 산출하고, 상기 산출된 차이 값이 미리 설정된 재수행 판단용 기준 값 이상이면, 캘리브레이션의 재수행 알람을 출력하는 단계;를 포함한다.In addition, an embodiment of the present invention provides a hand eye calibration method, comprising: a) photographing, by a camera, a calibration marker of a certain size attached to a robot arm; b) acquiring, by the management terminal, the position and posture of the camera coordinate system-based calibration marker from the photographed image of the calibration marker, and the robot arm position based on the robot coordinate system at the time of acquiring the image of the calibration marker; c) the management terminal calculating a coordinate system transformation value between the calibration marker and the robot arm, and comparing the calculated coordinate system transformation value with a coordinate system transformation value between the currently set calibration marker and the robot arm; and d) the management terminal calculates a difference value between the calculated coordinate system transformation value and the currently set coordinate system transformation value, and if the calculated difference value is greater than or equal to a preset reference value for re-performation determination, an alarm of re-performation of calibration is output including;
또한, 상기 실시 예에 따른 d) 단계는 산출된 차이 값이 없거나 또는 미리 설정된 재수행 판단용 기준 값 이하면, 상기 관리 단말이 현재 설정된 변환 값을 유지하는 단계;를 더 포함하는 것을 특징으로 한다.In addition, step d) according to the embodiment further comprises; if there is no calculated difference value or is less than a preset reference value for re-performation determination, the management terminal maintaining the currently set conversion value; characterized in that it further comprises .
또한, 상기 실시 예에 따른 d-1)은 상기 d) 단계에서 산출된 차이 값이 재수행 판단용 기준 값 이상이면, 상기 관리 단말이 차이 값과 기준 값 사이의 크기를 미리 설정된 자동 보정 판단용 기준 값과 비교하되, 상기 차이 값이 자동 보정 판단용 기준 값 이상이면 캘리브레이션을 재수행하고, 상기 차이 값이 자동 보정 판단용 기준 값 이하면 산출된 변환 값을 자동 보정 값으로 저장하는 단계;를 더 포함하는 것을 특징으로 한다.In addition, in d-1) according to the embodiment, if the difference value calculated in step d) is greater than or equal to the reference value for re-execution determination, the management terminal sets a preset size between the difference value and the reference value for automatic correction determination Comparing with a reference value, if the difference value is greater than or equal to the reference value for automatic correction determination, re-performing calibration, and if the difference value is less than or equal to the reference value for automatic correction determination, storing the calculated conversion value as an automatic correction value; further characterized by including.
또한, 상기 실시 예에 따른 d-2)는 상기 d-1) 단계에서 관리 단말이 자동 보정 값의 저장 횟수를 카운트하여 일정 값에 도달하면 저장된 자동 보정 값의 편차를 산출하는 단계; 및 d-3) 상기 관리 단말이 산출된 편차 값을 미리 설정된 편차 판단용 기준 값과 비교하되, 상기 산출된 편차 값이 편차 판단용 기준 값 이하면, 현재 설정된 변환 값을 자동 보정하고, 상기 산출된 편차 값이 편차 판단용 기준 값 이상이면, 저장된 자동 보정 값을 모두 초기화하는 단계;를 더 포함하는 것을 특징으로 한다.In addition, d-2) according to the embodiment includes the steps of calculating, by the management terminal, the number of times the automatic correction value is stored in the step d-1), and calculating a deviation of the stored automatic correction value when a predetermined value is reached; and d-3) the management terminal compares the calculated deviation value with a preset reference value for determining the deviation, and if the calculated deviation value is less than or equal to the reference value for determining the deviation, automatically corrects the currently set conversion value, and the calculation When the determined deviation value is greater than or equal to the reference value for determining the deviation, initializing all stored automatic correction values; characterized in that it further comprises.
본 발명은 카메라를 통해 전달되는 정보를 이용하여 로봇 팔을 운용하는 시스템에서 핸드 아이 캘리브레이션을 위한 입력 정보를 실시간 획득하고, 이를 기초로 카메라와 로봇 시스템의 운용에 대한 유효성을 판단하여 카메라의 좌표 시스템과 로봇 팔의 좌표 시스템 간의 변환 관계를 보정 및 개선할 수 있는 장점이 있다.The present invention acquires input information for hand eye calibration in real time in a system that operates a robot arm using information transmitted through a camera, and determines the effectiveness of the operation of the camera and the robot system based on this in real time to determine the camera's coordinate system It has the advantage of correcting and improving the transformation relationship between the coordinate system of the robot arm and the robot arm.
또한, 본 발명은 기존에 운용 이전에 1회성으로 수행되는 핸드 아이 캘리브레이션 단계를 운용 중에 지속적으로 수행함으로써, 로봇 팔 운용 시스템에서 카메라와 로봇 팔 간의 좌표계 변환으로 인해 발생되는 문제들을 능동적으로 대처할 수 있는 장점이 있다.In addition, the present invention can actively cope with problems caused by the coordinate system conversion between the camera and the robot arm in the robot arm operating system by continuously performing the hand eye calibration step performed once prior to operation during operation. There are advantages.
또한, 본 발명은 사용자가 로봇 팔 운용 시스템에 대한 결정이 요구될 경우, 카메라와 로봇 간의 관계에 대한 객관적 근거를 제공할 수 있는 장점이 있다.In addition, the present invention has an advantage that can provide an objective basis for the relationship between the camera and the robot when the user is required to make a decision on the robot arm operating system.
또한, 본 발명은 핸드아이 캘리브레이션의 미세한 조정이 필요할 경우, 로봇 핸드 운용의 중단 없이 자동으로 최종 좌표계 변환식의 갱신을 수행할 수 있는 장점이 있다.In addition, the present invention has the advantage of being able to automatically update the final coordinate system transformation formula without interruption of robot hand operation when fine adjustment of hand eye calibration is required.
또한, 본 발명은 로봇 팔 운용에 문제가 발생할 경우, 지속적으로 갱신되는 좌표계 변환 업데이트를 이용하여 문제의 원인이 좌표계 변환에 있을 경우 즉시 원인을 인지할 수 있는 기회를 제공할 수 있는 장점이 있다.In addition, the present invention has the advantage of providing an opportunity to immediately recognize the cause when the cause of the problem is in the coordinate system transformation by using the continuously updated coordinate system transformation update when a problem occurs in robot arm operation.
도1은 종래 기술에 따른 핸드 아이 캘리브레이션 장치를 나타낸 예시도.
도2는 일반적인 핸드 아이 캘리브레이션 장치의 캘리브레이션 수행을 위한 격자점 마커를 나타낸 예시도.
도3은 본 발명의 일 실시 예에 따른 핸드 아이 캘리브레이션 시스템을 나타낸 예시도.
도4는 도3의 실시 예에 따른 관리 단말의 구성을 나타낸 블록도.
도5는 도3의 실시 예에 따른 핸드 아이 캘리브레이션의 좌표계 변환 과정을 나타낸 예시도.
도6은 본 발명의 일 실시 예에 따른 핸드 아이 캘리브레이션 방법을 설명하기 위한 흐름도.
도7은 도6의 실시 예에 따른 핸드 아이 캘리브레이션 방법의 자동 보정 및 업데이트 방법을 설명하기 위한 흐름도.1 is an exemplary view showing a hand eye calibration apparatus according to the prior art.
2 is an exemplary view showing a grid point marker for performing calibration of a general hand eye calibration apparatus.
3 is an exemplary view showing a hand eye calibration system according to an embodiment of the present invention.
Fig. 4 is a block diagram showing the configuration of a management terminal according to the embodiment of Fig. 3;
5 is an exemplary diagram illustrating a coordinate system transformation process of hand eye calibration according to the embodiment of FIG. 3 .
6 is a flowchart illustrating a hand eye calibration method according to an embodiment of the present invention.
7 is a flowchart illustrating an automatic correction and update method of the hand eye calibration method according to the embodiment of FIG. 6 ;
이하에서는 본 발명의 바람직한 실시 예 및 첨부하는 도면을 참조하여 본 발명을 상세히 설명하되, 도면의 동일한 참조부호는 동일한 구성요소를 지칭함을 전제하여 설명하기로 한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to preferred embodiments of the present invention and the accompanying drawings.
본 발명의 실시를 위한 구체적인 내용을 설명하기에 앞서, 본 발명의 기술적 요지와 직접적 관련이 없는 구성에 대해서는 본 발명의 기술적 요지를 흩뜨리지 않는 범위 내에서 생략하였음에 유의하여야 할 것이다. Prior to describing the specific content for carrying out the present invention, it should be noted that components not directly related to the technical gist of the present invention are omitted within the scope of not disturbing the technical gist of the present invention.
또한, 본 명세서 및 청구범위에 사용된 용어 또는 단어는 발명자가 자신의 발명을 최선의 방법으로 설명하기 위해 적절한 용어의 개념을 정의할 수 있다는 원칙에 입각하여 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 할 것이다.In addition, the terms or words used in the present specification and claims have meanings and concepts consistent with the technical idea of the invention based on the principle that the inventor can define the concept of an appropriate term to best describe his invention. should be interpreted as
본 명세서에서 어떤 부분이 어떤 구성요소를 "포함"한다는 표현은 다른 구성요소를 배제하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다.In the present specification, the expression that a part "includes" a certain element does not exclude other elements, but means that other elements may be further included.
또한, "‥부", "‥기", "‥모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어, 또는 그 둘의 결합으로 구분될 수 있다.Also, terms such as “… unit”, “… group”, and “… module” mean a unit that processes at least one function or operation, which may be divided into hardware, software, or a combination of the two.
또한, "적어도 하나의" 라는 용어는 단수 및 복수를 포함하는 용어로 정의되고, 적어도 하나의 라는 용어가 존재하지 않더라도 각 구성요소가 단수 또는 복수로 존재할 수 있고, 단수 또는 복수를 의미할 수 있음은 자명하다 할 것이다. In addition, the term "at least one" is defined as a term including the singular and the plural, and even if the term at least one does not exist, each element may exist in the singular or plural, and may mean the singular or plural. will be self-evident.
또한, 각 구성요소가 단수 또는 복수로 구비되는 것은, 실시 예에 따라 변경가능하다 할 것이다.In addition, that each component is provided in singular or plural may be changed according to an embodiment.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시 예에 따른 핸드 아이 캘리브레이션 시스템 및 방법의 바람직한 실시 예를 상세하게 설명한다.Hereinafter, a preferred embodiment of a hand eye calibration system and method according to an embodiment of the present invention will be described in detail with reference to the accompanying drawings.
도3은 본 발명의 일 실시 예에 따른 핸드 아이 캘리브레이션 시스템을 나타낸 예시도이고, 도4는 도3의 실시 예에 따른 관리 단말의 구성을 나타낸 블록도이며, 도5는 도3의 실시 예에 따른 핸드 아이 캘리브레이션의 좌표계 변환 과정을 나타낸 예시도이다.3 is an exemplary diagram showing a hand eye calibration system according to an embodiment of the present invention, FIG. 4 is a block diagram showing the configuration of a management terminal according to the embodiment of FIG. 3, and FIG. 5 is the embodiment of FIG. It is an exemplary diagram showing a coordinate system transformation process of hand eye calibration.
도3 내지 도5를 참조하면, 본 발명의 일 실시 예에 따른 핸드 아이 캘리브레이션 시스템은 캘리브레이션 마커(100)와, 카메라(200)와, 로봇 팔(300)과 관리 단말(400)을 포함하여 구성된다.3 to 5 , the hand eye calibration system according to an embodiment of the present invention includes a
또한, 본 발명의 일 실시 예에 따른 핸드 아이 캘리브레이션 시스템은 카메라(200)가 로봇 팔(300)에 부착된 캘리브레이션 마커(100)를 촬영하면, 관리 단말(400)이 상기 촬영된 캘리브레이션 마커(100)의 이미지로부터 카메라 좌표계 기반의 캘리브레이션 마커(100) 위치 및 자세와, 상기 캘리브레이션 마커(100)의 이미지를 획득한 시점에서 로봇 좌표계 기반의 로봇 팔(300) 위치를 획득하여 상기 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값을 산출한다.In addition, in the hand eye calibration system according to an embodiment of the present invention, when the
또한, 상기 핸드 아이 캘리브레이션 시스템은 산출된 좌표계 변환 값을 현재 설정된 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값과 비교한 결과에 따라, 캘리브레이션의 재수행 여부를 출력한다.In addition, the hand eye calibration system outputs whether calibration is re-performed according to a result of comparing the calculated coordinate system transformation value with the coordinate system transformation value between the currently set
또한, 상기 핸드 아이 캘리브레이션 시스템은 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값이 상기 로봇 팔(300)의 운용 중에 실시간으로 입력되는 캘리브레이션 마커(100)의 이미지에서 획득한 위치 및 자세와, 상기 캘리브레이션 마커(100)의 이미지를 획득한 시점에서 로봇 팔(300)의 위치 값을 기초로 하여 초기 설정된 좌표계 변환 값 또는 현재 설정된 좌표계 변환 값의 유효성을 판단하여 캘리브레이션의 재수행 여부를 결정한다.In addition, in the hand eye calibration system, the coordinate system conversion value between the
상기 캘리브레이션 마커(100)는 로봇 팔(300)에 부착된 일정 크기의 마커로서, 아르코 마커(Aruco Marker) 또는 격자점으로 구성된다.The
또한, 상기 캘리브레이션 마커(100)는 로봇 팔(300)에 부착된 캘리브레이션 보드의 위치와 자세가 나타날 수 있도록 하고, 상기 캘리브레이션 마커(100)의 위치와 자세는 카메라 좌표계를 통해 획득될 수 있다.In addition, the
또한, 상기 캘리브레이션 마커(100)는 예를 들어 2×2 매트릭스 내지 10×10 매트릭스 형태의 패턴이 형성된 소형의 크기로 구성될 수 있다.In addition, the
상기 카메라(200)는 로봇 팔(300)에 부착된 캘리브레이션 마커(100)를 촬영하는 구성으로서, 공지의 2D 기반 카메라로 구성될 수 있고, 상기 카메라(200)에 대한 내부 파라메터는 별도의 계산을 통해 획득하거나 또는 상기 카메라(200)에서 제공하는 파라메터를 사용할 수도 있다.The
상기 로봇 팔(300)은 임의의 위치에 캘리브레이션 마커(100)가 부착되고, 상기 캘리브레이션 마커(100)가 부착된 상태에서 함께 임의의 동작을 수행하는 구성으로서, 로봇(310)을 기준점으로 하는 로봇 팔(300)의 위치를 로봇 좌표계로 획득할 수 있다.The
상기 관리 단말(400)은 카메라(200)를 통해 촬영된 캘리브레이션 마커(100)의 이미지로부터 카메라 좌표계 기반의 캘리브레이션 마커(100) 위치 및 자세를 획득한다.The
또한, 상기 관리 단말(400)은 캘리브레이션 마커(100)의 이미지를 획득한 시점에 로봇 좌표계 기반의 로봇 팔(300) 위치를 획득한다.In addition, the
또한, 상기 관리 단말(400)은 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값을 산출하고, 상기 산출된 좌표계 변환 값을 현재 설정된 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값과 비교한다.In addition, the
또한, 상기 관리 단말(400)은 비교 결과에 따라 캘리브레이션의 재수행 여부에 대한 결과를 알람을 통해 출력하는 구성으로서, 카메라 영상 획득 모듈(410)과, 로봇 위치 자세 획득 모듈(420)과, 핸드 아이 캘리브레이션 모듈(430)과, 캘리브레이션 자동 보정 모듈(440)을 포함하여 구성될 수 있다.In addition, the
상기 카메라 영상 획득 모듈(410)은 카메라(200)를 통해 획득한 이미지로부터 캘리브레이션 마커(100)을 인식하고, 상기 인식된 캘리브레이션 마커(100)의 위치 및 자세를 산출한다.The camera
상기 로봇 위치 자세 획득 모듈(420)은 카메라(200)가 캘리브레이션 마커(100)의 이미지를 획득한 시점에 로봇 좌표계 기반의 로봇 팔(300) 위치를 획득한다.The robot position and
상기 핸드 아이 캘리브레이션 모듈(430)은 획득한 두 좌표계에 대한 변환 행렬을 통해 다양한 위치 및 자세를 변경하면서 관련 데이터들을 수집하고 이를 기반으로 카메라(200)와 로봇 팔(300) 사이의 좌표계 변환 값(변환 행렬)을 최종적으로 획득한다.The hand
즉, 카메라(200)와 캘리브레이션 마커(100) 사이의 좌표계 변환 매트릭스()는 카메라(200)를 통해서 촬영된 캘리브레이션 마커(100)의 영상으로부터 획득하고, 로봇 팔(300)과 로봇(310) 베이스 사이의 좌표계 변환 매트릭스()는 로봇 제조회사에서 제공되는 API를 통해서 획득할 수 있다.That is, the coordinate system transformation matrix between the
또한, 상기 획득한 두 개의 매트릭스는 다양한 위치 및 자세의 로봇 팔 변환을 통해서 여러 개의 데이터를 획득한 후, 캘리브레이션 마커(100)와 로봇 암(300) 사이의 변환 매트릭스()를 획득한다.In addition, the obtained two matrices are converted matrix ( ) is obtained.
이상, 3개의 매트릭스를 이용하여 카메라(200)와 로봇(310) 베이스 간의 최종 변환 매트릭스()를 획득한다.Above, the final transformation matrix between the
상기 캘리브레이션 자동 보정 모듈(440)은 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값이 상기 로봇 팔(300)의 운용 중에 실시간으로 입력되는 캘리브레이션 마커(100)의 이미지에서 획득한 위치 및 자세와, 상기 캘리브레이션 마커(100)의 이미지를 획득한 시점에서 로봇 팔(300)의 위치 값을 기초로 하여 초기 설정된 좌표계 변환 값 또는 현재 설정된 좌표계 변환 값의 유효성을 판단하여 캘리브레이션의 재수행 여부를 결정한다.The automatic
즉, 상기 캘리브레이션 자동 보정 모듈(440)은 초기 좌표계 변환 값의 설정 후, 로봇 팔(300)의 운용 중에 상기 캘리브레이션 마커(100)에 의해 생성되는 카메라를 기준으로 하는 캘리브레이션 마커(100)의 위치 및 자세와, 로봇(310) 베이스를 기준으로 하는 로봇 팔의 TCP(Tool Center Point) 위치를 이용하여 획득한 변환 값과 현재 설정된 변환 값 간에 산출된 차이 값에 따라 캘리브레이션의 재수행에 대한 유효성을 결정한다.That is, the automatic
여기서, 상기 캘리브레이션 자동 보정 모듈(440)은 산출된 차이 값이 미리 설정된 재수행 판단용 기준 값과 동일하거나 또는 재수행 판단용 기준 값 이하면 현재 설정된 변환 값이 유지되도록 한다.Here, the automatic
또한, 상기 캘리브레이션 자동 보정 모듈(440)은 산출된 차이 값이 기준 값 이상이면, 상기 차이 값과 기준 값 사이의 크기에 따라 캘리브레이션이 재수행되도록 하거나 또는 산출된 변환 값을 자동 보정 값으로 저장되도록 한다.In addition, if the calculated difference value is greater than or equal to the reference value, the calibration
즉, 상기 캘리브레이션 자동 보정 모듈(440)은 산출된 차이 값이 재수행 판단용 기준 값 이상이면, 상기 차이 값과 재수행 판단용 기준 값 사이의 크기를 미리 설정된 자동 보정 판단용 기준 값과 비교하고, 상기 차이 값이 자동 보정 판단용 기준 값 이상이면 캘리브레이션을 재수행하도록 알람 신호를 출력하며, 상기 차이 값이 자동 보정 판단용 기준 값 이하면 산출된 변환 값을 자동 보정 값으로 저장되도록 한다.That is, the automatic
또한, 상기 캘리브레이션 자동 보정 모듈(440)은 자동 보정 값을 저장하는 경우, 자동 보정을 위해 저장되는 보정 값의 일관성을 확인하기 위해 저장된 보정 값의 편차를 산출한다.In addition, when the automatic calibration value is stored, the automatic
이를 위해, 상기 캘리브레이션 자동 보정 모듈(440)은 일정 수준의 데이터를 수집하도록 자동 보정 값과, 상기 자동 보정 값의 저장 횟수를 카운트하여 일정 값에 도달하면 저장된 자동 보정 값의 편차를 산출하고, 상기 산출된 편차 값을 미리 설정된 편차 판단용 기준 값과 비교한다.To this end, the automatic
또한, 상기 캘리브레이션 자동 보정 모듈(440)은 산출된 편차 값이 편차 판단용 기준 값 이하면, 현재 설정된 변환 값을 자동 보정하고, 상기 산출된 편차 값이 편차 판단용 기준 값 이상이면, 저장된 자동 보정 값들 간의 편차가 커서 자동 보정이 불가능한 것으로 판단하여 저장된 자동 보정 값을 모두 초기화한다.In addition, when the calculated deviation value is less than the reference value for determining the deviation, the calibration
다음은 본 발명의 일 실시 예에 따른 핸드 아이 캘리브레이션 방법을 설명한다.The following describes a hand eye calibration method according to an embodiment of the present invention.
도6은 본 발명의 일 실시 예에 따른 핸드 아이 캘리브레이션 방법을 설명하기 위한 흐름도이고, 도7은 도6의 실시 예에 따른 핸드 아이 캘리브레이션 방법의 자동 보정 및 업데이트 방법을 설명하기 위한 흐름도이다.6 is a flowchart illustrating a hand eye calibration method according to an embodiment of the present invention, and FIG. 7 is a flowchart illustrating an automatic correction and update method of the hand eye calibration method according to the embodiment of the present invention.
도3 내지 도7을 참조하면, 본 발명의 일 실시 예에 따른 핸드 아이 캘리브레이션 방법은 카메라(200)가 로봇 팔(300)에 부착된 일정 크기의 캘리브레이션 마커(100)를 촬영(S100)하면, 관리 단말(400)이 상기 촬영된 캘리브레이션 마커(100)의 이미지로부터 카메라 좌표계 기반의 캘리브레이션 마커(100) 위치 및 자세와, 상기 캘리브레이션 마커(100)의 이미지를 획득한 시점에서 로봇 좌표계 기반의 로봇 팔(300) 위치를 획득(S110 및 S120)한다.3 to 7, in the hand eye calibration method according to an embodiment of the present invention, the
상기 관리 단말(400)은 상기 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값, 즉, 최종 변환 값(최종 변환 매트릭스)을 산출(S130)한다.The
계속해서, 상기 관리 단말(400)은 상기 S130 단계에서 산출된 좌표계 변환 값을 현재 설정된 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값(또는 초기 설정된 좌표계 변환 값) 사이의 차이 값을 산출하여 차이가 있는지 판단(S140)한다.Subsequently, the
상기 S140 단계의 판단 결과, 차이가 있으면 산출된 차이 값을 미리 설정된 재수행 판단용 기준 값과 비교(S150)한다.As a result of the determination in step S140, if there is a difference, the calculated difference value is compared with a preset reference value for re-execution determination (S150).
상기 S150 단계의 판단 결과, 산출된 차이 값이 없거나 또는 미리 설정된 재수행 판단용 기준 값 이하면, 상기 관리 단말(400)은 현재 설정된 변환 값을 유지한다.As a result of the determination in step S150 , if there is no calculated difference value or is less than a preset reference value for re-execution determination, the
한편, 상기 S150 단계에서 산출된 차이 값이 재수행 판단용 기준 값 이상이면, 상기 관리 단말(400)은 차이 값과 기준 값 사이의 크기를 미리 설정된 자동 보정 판단용 기준 값과 비교하되, 상기 차이 값이 자동 보정 판단용 기준 값 이상이면 사용자에게 로봇 운용 중단 및 캘리브레이션의 재수행 알람을 출력(S161)한다.On the other hand, if the difference value calculated in step S150 is greater than or equal to the reference value for determination of re-execution, the
그러나, 상기 차이 값이 자동 보정 판단용 기준 값 이하면, 상기 관리 단말(400)은 산출된 변환 값을 자동 보정 값으로 저장하는 과정을 수행할 수 있다.However, if the difference value is less than or equal to the reference value for automatic correction determination, the
여기서, 자동 보정 값을 저장하는 경우, 관리 단말(400)은 자동 보정 값을 저장하는 큐에 저장된 자동 보정 값이 있는지 판단(S200)하고, 저장된 값이 있으면, 자동 보정 값을 저장한 다음 상기 자동 보정 값의 저장 횟수를 카운트하며, 일정 값에 도달하면 저장된 자동 보정 값의 편차를 산출(S210)한다.Here, when storing the automatic correction value, the
상기 저장된 자동 보정 값을 확인하는 것은 기존 최종 변환 값(최종 변환 매트릭스)가 다양한 원인으로 인해 보정이 필요할 수 있다고 판단할 수 있기 때문이다.Checking the stored automatic correction value is because it can be determined that the existing final transformation value (final transformation matrix) may need correction due to various reasons.
계속해서, 관리 단말(400)은 산출된 편차 값을 미리 설정된 편차 판단용 기준 값과 비교(S220)한다.Subsequently, the
상기 S220 단계의 비교 결과, 산출된 편차 값이 편차 판단용 기준 값 이하면, 현재 설정된 변환 값 또는 초기 변환 값을 자동 보정(S230)한다.As a result of the comparison in step S220, if the calculated deviation value is less than or equal to the reference value for determining the deviation, the currently set conversion value or the initial conversion value is automatically corrected (S230).
또한, 상기 S220 단계의 비교 결과, 산출된 편차 값이 편차 판단용 기준 값 이상이면, 저장된 자동 보정 값을 모두 제거하여 초기화(S240)한다.In addition, as a result of the comparison in step S220, if the calculated deviation value is greater than or equal to the reference value for determining deviation, all stored automatic correction values are removed and initialized (S240).
따라서, 카메라를 통해 전달되는 정보를 이용하여 로봇 팔을 운용하는 시스템에서 핸드 아이 캘리브레이션을 위한 입력 정보를 실시간 획득하고, 이를 기초로 카메라와 로봇 시스템의 운용에 대한 유효성을 판단하여 카메라의 좌표 시스템과 로봇 팔의 좌표 시스템 간의 변환 관계를 보정 및 개선할 수 있다.Therefore, by using the information transmitted through the camera, input information for hand eye calibration is obtained in real time in a system operating a robot arm, and based on this, the validity of the operation of the camera and the robot system is determined based on the coordinate system of the camera and the It is possible to correct and improve the transformation relationship between the coordinate systems of the robot arm.
상기와 같이, 본 발명의 바람직한 실시 예를 참조하여 설명하였지만 해당 기술 분야의 숙련된 당업자라면 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.As described above, although described with reference to preferred embodiments of the present invention, those skilled in the art can variously modify and change the present invention within the scope without departing from the spirit and scope of the present invention described in the claims below. You will understand that it can be done.
또한, 본 발명의 특허청구범위에 기재된 도면번호는 설명의 명료성과 편의를 위해 기재한 것일 뿐 이에 한정되는 것은 아니며, 실시예를 설명하는 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다.In addition, the reference numbers described in the claims of the present invention are provided only for clarity and convenience of explanation, and are not limited thereto, and in the process of describing the embodiment, the thickness of the lines shown in the drawings or the size of components, etc. may be exaggerated for clarity and convenience of explanation.
또한, 상술된 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있으므로, 이러한 용어들에 대한 해석은 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In addition, the above-mentioned terms are terms defined in consideration of the functions in the present invention, which may vary depending on the intention or custom of the user or operator, so the interpretation of these terms should be made based on the content throughout this specification. .
또한, 명시적으로 도시되거나 설명되지 아니하였다 하여도 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기재사항으로부터 본 발명에 의한 기술적 사상을 포함하는 다양한 형태의 변형을 할 수 있음은 자명하며, 이는 여전히 본 발명의 권리범위에 속한다. In addition, even if it is not explicitly shown or described, a person of ordinary skill in the art to which the present invention pertains can make various types of modifications including the technical idea according to the present invention from the description of the present invention. It is obvious, and this still falls within the scope of the present invention.
또한, 첨부하는 도면을 참조하여 설명된 상기의 실시예들은 본 발명을 설명하기 위한 목적으로 기술된 것이며 본 발명의 권리범위는 이러한 실시예에 국한되지 아니한다.In addition, the above embodiments described with reference to the accompanying drawings have been described for the purpose of explaining the present invention, and the scope of the present invention is not limited to these embodiments.
100 : 캘리브레이션 마커
200 : 카메라
300 : 로봇 팔(Arm)
310 : 로봇
400 : 관리 단말
410 : 카메라 영상 획득 모듈
420 : 로봇 위치 자세 획득 모듈
430 : 핸드 아이 캘리브레이션 모듈
440 : 캘리브레이션 자동 보정 모듈100: calibration marker
200 : camera
300: robot arm (Arm)
310: robot
400: management terminal
410: camera image acquisition module
420: robot position and posture acquisition module
430: hand eye calibration module
440: calibration auto calibration module
Claims (10)
관리 단말(400)이 상기 촬영된 캘리브레이션 마커(100)의 이미지로부터 카메라 좌표계 기반의 캘리브레이션 마커(100) 위치 및 자세와, 상기 캘리브레이션 마커(100)의 이미지를 획득한 시점에서 로봇 좌표계 기반의 로봇 팔(300) 위치를 획득하여 상기 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값을 산출하고,
상기 산출된 좌표계 변환 값을 현재 설정된 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값과 비교한 결과에 따라, 캘리브레이션의 재수행 여부를 출력하는 것을 특징으로 하는 핸드 아이 캘리브레이션 시스템.When the camera 200 takes a picture of the calibration marker 100 attached to the robot arm 300,
When the management terminal 400 acquires the position and posture of the camera coordinate system-based calibration marker 100 and the image of the calibration marker 100 from the photographed image of the calibration marker 100, the robot arm based on the robot coordinate system. (300) calculates the coordinate system conversion value between the calibration marker 100 and the robot arm 300 by acquiring the position,
The hand eye calibration system, characterized in that it outputs whether or not calibration is re-performed according to a result of comparing the calculated coordinate system transformation value with the coordinate system transformation value between the currently set calibration marker 100 and the robot arm 300 .
상기 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값은 상기 로봇 팔(300)의 운용 중에 실시간으로 입력되는 캘리브레이션 마커(100)의 이미지에서 획득한 위치 및 자세와, 상기 캘리브레이션 마커(100)의 이미지를 획득한 시점에서 로봇 팔(300)의 위치 값을 이용하는 것을 특징으로 하는 핸드 아이 캘리브레이션 시스템.The method of claim 1,
The coordinate system conversion value between the calibration marker 100 and the robot arm 300 is the position and posture obtained from the image of the calibration marker 100 input in real time during operation of the robot arm 300, and the calibration marker ( 100) Hand eye calibration system, characterized in that using the position value of the robot arm 300 at the time of acquiring the image.
상기 핸드 아이 캘리브레이션 시스템은 로봇 팔(300)에 부착된 일정 크기의 캘리브레이션 마커(100);
상기 캘리브레이션 마커(100)를 촬영하는 카메라(200);
상기 캘리브레이션 마커(100)와 함께 임의의 동작을 수행하는 로봇 팔(300); 및
상기 촬영된 캘리브레이션 마커(100)의 이미지로부터 카메라 좌표계 기반의 캘리브레이션 마커(100) 위치 및 자세와, 상기 캘리브레이션 마커(100)의 이미지를 획득한 시점에서 로봇 좌표계 기반의 로봇 팔(300) 위치를 획득하여 상기 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값을 산출하고, 상기 산출된 좌표계 변환 값을 현재 설정된 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값과 비교하며, 상기 비교 결과에 따라 캘리브레이션의 재수행 여부에 대한 결과를 출력하는 관리 단말(400);을 포함하는 것을 특징으로 하는 핸드 아이 캘리브레이션 시스템.The method of claim 1,
The hand eye calibration system includes a calibration marker 100 of a certain size attached to the robot arm 300 ;
a camera 200 for photographing the calibration marker 100;
a robot arm 300 that performs an arbitrary operation together with the calibration marker 100; and
The position and posture of the camera coordinate system-based calibration marker 100 from the photographed image of the calibration marker 100, and the robot arm 300 position based on the robot coordinate system at the time of acquiring the image of the calibration marker 100 to calculate the coordinate system transformation value between the calibration marker 100 and the robot arm 300, and compare the calculated coordinate system transformation value with the coordinate system transformation value between the currently set calibration marker 100 and the robot arm 300, , the management terminal 400 for outputting a result of whether or not to re-perform the calibration according to the comparison result; Hand eye calibration system comprising a.
상기 관리 단말(400)은 로봇 팔(300)의 운용 중에 상기 캘리브레이션 마커(100)에 의해 생성되는 카메라를 기준으로 하는 캘리브레이션 마커(100)의 위치 및 자세와, 로봇(310)을 기준으로 하는 로봇 팔의 TCP(Tool Center Point) 위치를 이용하여 획득한 변환 값과 현재 설정된 변환 값 간에 산출된 차이 값에 따라 캘리브레이션의 재수행에 대한 유효성을 결정하는 것을 특징으로 하는 핸드 아이 캘리브레이션 시스템.4. The method of claim 3,
The management terminal 400 is a robot based on the position and posture of the calibration marker 100 based on the camera generated by the calibration marker 100 during operation of the robot arm 300 and the robot 310 . A hand eye calibration system, characterized in that it determines the validity of re-performing the calibration according to the calculated difference value between the conversion value obtained using the TCP (Tool Center Point) position of the arm and the currently set conversion value.
상기 관리 단말(400)은 산출된 차이 값이 미리 설정된 재수행 판단용 기준 값과 동일하거나 또는 재수행 판단용 기준 값 이하면 현재 설정된 변환 값이 유지되도록 하고, 상기 산출된 차이 값이 기준 값 이상이면, 상기 차이 값과 기준 값 사이의 크기에 따라 캘리브레이션이 재수행되도록 하거나 또는 산출된 변환 값을 자동 보정 값으로 저장하는 것을 특징으로 하는 핸드 아이 캘리브레이션 시스템.5. The method of claim 4,
The management terminal 400 maintains the currently set conversion value if the calculated difference value is equal to or less than the preset reference value for determination of re-performance, and the calculated difference value is greater than or equal to the reference value , the hand eye calibration system, characterized in that the calibration is re-performed according to the magnitude between the difference value and the reference value, or the calculated converted value is stored as an automatic correction value.
상기 자동 보정 값은 저장 횟수를 카운트하여 일정 값에 도달하면 저장된 자동 보정 값의 편차를 산출하고, 상기 산출된 편차 값을 미리 설정된 편차 판단용 기준 값과 비교하되, 상기 산출된 편차 값이 편차 판단용 기준 값 이하면, 현재 설정된 변환 값을 자동 보정하며, 상기 산출된 편차 값이 편차 판단용 기준 값 이상이면, 저장된 자동 보정 값을 모두 초기화하는 것을 특징으로 하는 핸드 아이 캘리브레이션 시스템.6. The method of claim 5,
The automatic correction value counts the number of times of storage and when a predetermined value is reached, a deviation of the stored automatic correction value is calculated, and the calculated deviation value is compared with a preset reference value for determining deviation, but the calculated deviation value is determined as deviation Hand eye calibration system, characterized in that if the value is less than the reference value, the currently set conversion value is automatically corrected, and when the calculated deviation value is greater than or equal to the reference value for determining the deviation, all stored automatic correction values are initialized.
b) 관리 단말(400)이 상기 촬영된 캘리브레이션 마커(100)의 이미지로부터 카메라 좌표계 기반의 캘리브레이션 마커(100) 위치 및 자세와, 상기 캘리브레이션 마커(100)의 이미지를 획득한 시점에서 로봇 좌표계 기반의 로봇 팔(300) 위치를 획득하는 단계;
c) 상기 관리 단말(400)이 상기 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값을 산출하고, 상기 산출된 좌표계 변환 값을 현재 설정된 캘리브레이션 마커(100)와 로봇 팔(300) 사이의 좌표계 변환 값과 비교하는 단계; 및
d) 상기 관리 단말(400)이 산출된 좌표계 변환 값과 현재 설정된 좌표계 변환 값 사이의 차이 값을 산출하고, 상기 산출된 차이 값이 미리 설정된 재수행 판단용 기준 값 이상이면, 캘리브레이션의 재수행 알람을 출력하는 단계;를 포함하는 핸드 아이 캘리브레이션 방법.a) the camera 200 photographing the calibration marker 100 of a certain size attached to the robot arm 300;
b) at the time when the management terminal 400 acquires the position and posture of the camera coordinate system-based calibration marker 100 and the image of the calibration marker 100 from the photographed image of the calibration marker 100, the robot coordinate system based acquiring the robot arm 300 position;
c) the management terminal 400 calculates a coordinate system transformation value between the calibration marker 100 and the robot arm 300, and converts the calculated coordinate system transformation value to the currently set calibration marker 100 and the robot arm 300 comparing the coordinate system transformation value between; and
d) the management terminal 400 calculates a difference value between the calculated coordinate system transformation value and the currently set coordinate system transformation value, and if the calculated difference value is greater than or equal to a preset reference value for re-performation determination, calibration re-performation alarm A hand eye calibration method comprising; outputting a.
상기 d) 단계는 산출된 차이 값이 없거나 또는 미리 설정된 재수행 판단용 기준 값 이하면, 상기 관리 단말(400)이 현재 설정된 변환 값을 유지하는 단계;를 더 포함하는 것을 특징으로 하는 핸드 아이 캘리브레이션 방법.8. The method of claim 7,
In step d), if there is no calculated difference value or is less than a preset reference value for re-performation, the management terminal 400 maintains the currently set conversion value; Hand eye calibration, characterized in that it further comprises Way.
d-1) 상기 d) 단계는 산출된 차이 값이 재수행 판단용 기준 값 이상이면, 상기 관리 단말(400)이 차이 값과 기준 값 사이의 크기를 미리 설정된 자동 보정 판단용 기준 값과 비교하되,
상기 차이 값이 자동 보정 판단용 기준 값 이상이면 캘리브레이션을 재수행하고, 상기 차이 값이 자동 보정 판단용 기준 값 이하면 산출된 변환 값을 자동 보정 값으로 저장하는 단계;를 더 포함하는 것을 특징으로 하는 핸드 아이 캘리브레이션 방법.8. The method of claim 7,
d-1) In step d), if the calculated difference value is greater than or equal to the reference value for re-performation determination, the management terminal 400 compares the size between the difference value and the reference value with a preset reference value for automatic correction determination ,
If the difference value is greater than or equal to the reference value for automatic correction determination, re-calibrating, and if the difference value is less than or equal to the reference value for automatic correction determination, storing the calculated conversion value as an automatic correction value; characterized by further comprising: How to calibrate the hand eye.
d-2) 상기 d-1) 단계는 관리 단말(400)이 자동 보정 값의 저장 횟수를 카운트하여 일정 값에 도달하면 저장된 자동 보정 값의 편차를 산출하는 단계; 및
d-3) 상기 관리 단말(400)이 산출된 편차 값을 미리 설정된 편차 판단용 기준 값과 비교하되, 상기 산출된 편차 값이 편차 판단용 기준 값 이하면, 현재 설정된 변환 값을 자동 보정하고, 상기 산출된 편차 값이 편차 판단용 기준 값 이상이면, 저장된 자동 보정 값을 모두 초기화하는 단계;를 더 포함하는 것을 특징으로 하는 핸드 아이 캘리브레이션 방법.10. The method of claim 9,
d-2) step d-1) includes: calculating, by the management terminal 400, a deviation of the stored automatic correction value when a predetermined value is reached by counting the number of times the automatic correction value is stored; and
d-3) The management terminal 400 compares the calculated deviation value with a preset reference value for determination of deviation, and if the calculated deviation value is less than or equal to the reference value for determination of deviation, the currently set conversion value is automatically corrected; If the calculated deviation value is greater than or equal to the reference value for determining deviation, initializing all stored automatic correction values;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200159811A KR102459373B1 (en) | 2020-11-25 | 2020-11-25 | Hand eye calibration system and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200159811A KR102459373B1 (en) | 2020-11-25 | 2020-11-25 | Hand eye calibration system and method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220072331A true KR20220072331A (en) | 2022-06-02 |
KR102459373B1 KR102459373B1 (en) | 2022-10-31 |
Family
ID=81985185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200159811A KR102459373B1 (en) | 2020-11-25 | 2020-11-25 | Hand eye calibration system and method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102459373B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115337072A (en) * | 2022-08-19 | 2022-11-15 | 汕头大学 | Acetabulum rasp angle calibration method and system based on optical positioning |
CN116038707A (en) * | 2023-01-30 | 2023-05-02 | 深圳技术大学 | Intelligent fault automatic diagnosis system based on data driving |
WO2024106610A1 (en) * | 2022-11-15 | 2024-05-23 | 한양대학교 에리카산학협력단 | Method and device for hand-eye calibration using multi-operation |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014180720A (en) * | 2013-03-19 | 2014-09-29 | Yaskawa Electric Corp | Robot system and calibration method |
KR101988937B1 (en) | 2017-09-07 | 2019-06-13 | 주식회사 인지 | Method and apparatus for calibration of a robot hand and a camera |
KR20200091298A (en) * | 2019-01-22 | 2020-07-30 | 삼성전자주식회사 | Hand eye calibration method and system |
-
2020
- 2020-11-25 KR KR1020200159811A patent/KR102459373B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014180720A (en) * | 2013-03-19 | 2014-09-29 | Yaskawa Electric Corp | Robot system and calibration method |
KR101988937B1 (en) | 2017-09-07 | 2019-06-13 | 주식회사 인지 | Method and apparatus for calibration of a robot hand and a camera |
KR20200091298A (en) * | 2019-01-22 | 2020-07-30 | 삼성전자주식회사 | Hand eye calibration method and system |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115337072A (en) * | 2022-08-19 | 2022-11-15 | 汕头大学 | Acetabulum rasp angle calibration method and system based on optical positioning |
WO2024106610A1 (en) * | 2022-11-15 | 2024-05-23 | 한양대학교 에리카산학협력단 | Method and device for hand-eye calibration using multi-operation |
CN116038707A (en) * | 2023-01-30 | 2023-05-02 | 深圳技术大学 | Intelligent fault automatic diagnosis system based on data driving |
CN116038707B (en) * | 2023-01-30 | 2023-08-04 | 深圳技术大学 | Intelligent fault automatic diagnosis system based on data driving |
Also Published As
Publication number | Publication date |
---|---|
KR102459373B1 (en) | 2022-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102459373B1 (en) | Hand eye calibration system and method | |
TWI638249B (en) | Position control device and position control method | |
CN111482959B (en) | Automatic hand-eye calibration system and method of robot motion vision system | |
US11173609B2 (en) | Hand-eye calibration method and system | |
CN110268358B (en) | Position control device and position control method | |
KR102280663B1 (en) | Calibration method for robot using vision technology | |
JP5850962B2 (en) | Robot system using visual feedback | |
KR101988937B1 (en) | Method and apparatus for calibration of a robot hand and a camera | |
US11267142B2 (en) | Imaging device including vision sensor capturing image of workpiece | |
JP6677522B2 (en) | Information processing apparatus, control method for information processing apparatus, and program | |
EP3974779A1 (en) | Robot hand-eye calibration method and apparatus, computing device, medium and product | |
JP2019089188A (en) | Operation system and program | |
CN114174006A (en) | Robot eye calibration method, device, computing equipment, medium and product | |
CN111152243B (en) | Control system | |
JP6885856B2 (en) | Robot system and calibration method | |
CN113878588B (en) | Robot compliant assembly method based on tactile feedback and oriented to buckle type connection | |
CN111203871A (en) | Robotic manipulation using independently actuated vision systems | |
CN113954076B (en) | Robot precision assembling method based on cross-modal prediction assembling scene | |
JP7437343B2 (en) | Calibration device for robot control | |
JP2019077026A (en) | Control device, robot system, and control device operating method and program | |
JP2015145050A (en) | Robot system, robot control device, robot control method and robot control program | |
JP2014144516A (en) | Robot control device, robot system, robot, control method and program | |
CN109313811A (en) | Auto-correction method, the apparatus and system of view-based access control model system vibration displacement | |
CN111331578A (en) | Robot system and adjusting method thereof | |
WO2021145280A1 (en) | Robot system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |