KR20230116502A - Device and method for robot calibration - Google Patents

Device and method for robot calibration Download PDF

Info

Publication number
KR20230116502A
KR20230116502A KR1020220013517A KR20220013517A KR20230116502A KR 20230116502 A KR20230116502 A KR 20230116502A KR 1020220013517 A KR1020220013517 A KR 1020220013517A KR 20220013517 A KR20220013517 A KR 20220013517A KR 20230116502 A KR20230116502 A KR 20230116502A
Authority
KR
South Korea
Prior art keywords
robot
coordinate system
posture
transformation matrix
tool
Prior art date
Application number
KR1020220013517A
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 KR1020220013517A priority Critical patent/KR20230116502A/en
Publication of KR20230116502A publication Critical patent/KR20230116502A/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
    • B25J15/00Gripping heads and other end effectors
    • B25J15/0019End effectors other than grippers
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

일 실시예에 따른 로봇 캘리브레이션 방법은 제1 로봇의 자세를 고정시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계와 제2 로봇 기본 좌표계 사이의 회전 변환 행렬을 산출하는 단계; 제1 로봇의 자세를 변경시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계를 기준으로 제2 로봇 기본 좌표계의 위치 데이터를 산출하는 단계; 및 회전 변환 행렬 및 위치 데이터에 기초하여 제1 로봇의 도구 좌표계와 제2 로봇의 기본 좌표계 사이의 변환 행렬을 결정하는 단계를 포함할 수 있다.The robot calibration method according to an embodiment is obtained by repeatedly changing the position of the first robot and the posture of the second robot so that the center of the robot tool is repeatedly located at a predetermined point in a state in which the posture of the first robot is fixed. Calculating a rotation transformation matrix between the first robot tool coordinate system and the second robot basic coordinate system based on the data; In a state where the posture of the first robot is changed, the first robot tool based on data obtained by repeatedly changing the position of the first robot and the posture of the second robot so that the center of the robot tool is repeatedly located at a predetermined point. Calculating positional data of a second robot basic coordinate system based on the coordinate system; and determining a transformation matrix between the tool coordinate system of the first robot and the basic coordinate system of the second robot based on the rotation transformation matrix and the position data.

Figure P1020220013517
Figure P1020220013517

Description

로봇 캘리브레이션 방법 및 장치{DEVICE AND METHOD FOR ROBOT CALIBRATION}Robot calibration method and apparatus {DEVICE AND METHOD FOR ROBOT CALIBRATION}

본 발명의 다양한 실시예들은 로봇 캘리브레이션 방법 및 장치에 관한 것이다. Various embodiments of the present invention relate to a robot calibration method and apparatus.

최근 산업 현장에서 생산성 향상, 인력 감소, 품질 향상 등을 위해 로봇을 산업 현장에서 많이 사용하고 있고, 그 확산 속도는 점점 빨라지고 있다. 특히 산업 현장에서 공정이 복잡해지고 다양해짐에 따라 자유도가 높은 도구(tool)를 필요로 할 수 있다. 따라서, 로봇(또는 장비)을 로봇의 도구 대신에 부착하여 사용할 수도 있다. 하지만 로봇의 자유도가 높아짐에 따라 로봇 사용 시 누적되는 오차가 많아질 수 있다. 누적되는 오차가 높아질수록 높은 로봇의 정밀도를 확보하기 어려울 수 있다. 로봇의 정밀도에는 반복 정밀도 및/또는 절대 정밀도가 있을 수 있다. 로봇 또는 도구를 만들거나 부착하는 과정에서 생기는 가공 오차 또는 조립 오차는 로봇의 절대 정밀도를 낮출 수 있다. 이를 해결하기 위해서는 로봇의 캘리브레이션(calibration) 과정이 필요할 수 있다. 로봇을 생산할 때 뿐만 아니라 지속적으로 높은 절대 정밀도를 유지하기 위해서는 생산 라인에서도 수행할 수 있는 캘리브레이션 기술이 필요할 수 있다. In recent years, robots have been widely used in industrial sites to improve productivity, reduce manpower, and improve quality, and the rate of their spread is accelerating. In particular, as the process becomes more complex and diverse in the industrial field, a tool with a high degree of freedom may be required. Therefore, the robot (or equipment) may be attached and used instead of a tool of the robot. However, as the degree of freedom of the robot increases, accumulated errors may increase when using the robot. As the accumulated error increases, it may be difficult to secure high robot precision. A robot's precision may include repeatability and/or absolute precision. Machining errors or assembly errors occurring in the process of making or attaching robots or tools can lower the absolute precision of robots. To solve this problem, a robot calibration process may be required. Calibration technology that can be performed not only when producing robots but also on the production line may be required to maintain consistently high absolute precision.

로봇의 끝단에 자유도가 높은 장치(예를 들어, 툴, 로봇, 장비 등)를 부착한 경우, 일반적으로 좌표계가 일치한다고 가정하지만 자유도가 높은 장치의 부착 과정에서 오차가 생길 수 있다. When a device with a high degree of freedom (for example, a tool, robot, equipment, etc.) is attached to the end of the robot, it is generally assumed that the coordinate system is consistent, but an error may occur during the attachment process of the device with a high degree of freedom.

다양한 실시예들에 따르면, 로봇 끝단에 자유도가 높은 장치를 부착하는 경우, 로봇 캘리브레이션을 통해 발생하는 오차를 보정할 수 있다.According to various embodiments, when a device having a high degree of freedom is attached to a robot end, an error occurring through robot calibration may be corrected.

다양한 실시예들에 따르면, 제1 로봇의 도구 좌표계와 제2 로봇의 기본 좌표계 사이를 캘리브레이션 함으로써, 발생하는 오차를 보정할 수 있다.According to various embodiments, errors occurring may be corrected by calibrating between the tool coordinate system of the first robot and the basic coordinate system of the second robot.

일 실시예에 따르면, 로봇 캘리브레이션 방법은 제1 로봇의 자세를 고정시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계와 제2 로봇 기본 좌표계 사이의 회전 변환 행렬을 산출하는 단계; 제1 로봇의 자세를 변경시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계를 기준으로 제2 로봇 기본 좌표계의 위치 데이터를 산출하는 단계; 및 회전 변환 행렬 및 상기 위치 데이터에 기초하여 제1 로봇의 도구 좌표계와 제2 로봇의 기본 좌표계 사이의 변환 행렬을 결정하는 단계를 포함할 수 있다.According to an embodiment, the robot calibration method is to repeatedly change the position of the first robot and the posture of the second robot so that the center of the robot tool is repeatedly located at a predetermined point in a state in which the posture of the first robot is fixed. Calculating a rotation transformation matrix between the first robot tool coordinate system and the second robot basic coordinate system based on the acquired data; In a state where the posture of the first robot is changed, the first robot tool based on data obtained by repeatedly changing the position of the first robot and the posture of the second robot so that the center of the robot tool is repeatedly located at a predetermined point. Calculating positional data of a second robot basic coordinate system based on the coordinate system; and determining a transformation matrix between the tool coordinate system of the first robot and the basic coordinate system of the second robot based on the rotation transformation matrix and the position data.

다른 일 실시예에 따르면, 로봇 캘리브레이션을 수행하기 위한 제어 장치는 제1 로봇의 자세를 고정시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계와 제2 로봇 기본 좌표계 사이의 회전 변환 행렬을 산출하고, 제1 로봇의 자세를 변경시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계를 기준으로 제2 로봇 기본 좌표계의 위치 데이터를 산출하고, 그리고 회전 변환 행렬 및 위치 데이터에 기초하여 제1 로봇의 도구 좌표계와 제2 로봇의 기본 좌표계 사이의 변환 행렬을 결정할 수 있다.According to another embodiment, the control device for performing the robot calibration is in a state where the posture of the first robot is fixed, the position of the first robot and the position of the second robot so that the center of the robot tool is repeatedly located at a predetermined point Based on the data obtained by repeatedly changing the posture, a rotation transformation matrix between the first robot tool coordinate system and the second robot basic coordinate system is calculated, and the robot repeatedly moves to a predetermined point while the posture of the first robot is changed. Based on the data obtained by repeatedly changing the position of the first robot and the posture of the second robot so that the center of the tool is located, position data of the second robot basic coordinate system is calculated based on the first robot tool coordinate system, and rotation is performed. A transformation matrix between the tool coordinate system of the first robot and the basic coordinate system of the second robot may be determined based on the transformation matrix and the position data.

일 실시예에 따르면, 로봇 캘리브레이션 방법은 로봇 끝단에 자유도가 높은 장치(예를 들어, 도구, 로봇, 장비 등) 부착 시 발생하는 오차를 보정함으로써 생산 라인에서도 로봇의 절대 위치 정밀도(absolute pose accuracy)를 유지할 수 있다.According to an embodiment, the robot calibration method corrects an error that occurs when a device with a high degree of freedom (eg, a tool, robot, equipment, etc.) is attached to the end of the robot, thereby improving absolute pose accuracy of the robot even on a production line. can keep

일 실시예에 따르면, 로봇 캘리브레이션 방법은 로봇 끝단 좌표계와 로봇의 끝단에 부착된 장치의 기본 좌표계 간의 캘리브레이션을 수행할 수 있다.According to one embodiment, the robot calibration method may perform calibration between the robot end coordinate system and the basic coordinate system of a device attached to the robot end.

일 실시예에 따르면, 로봇 캘리브레이션 방법은 로봇의 끝단에 부착된 장치의 자유도를 이용하여 좌표계 간의 상대 회전 행렬을 먼저 계산하므로 로봇의 끝단에 부착된 장치의 자세가 변화하더라도 캘리브레이션을 수행할 수 있다.According to an embodiment, the robot calibration method first calculates a relative rotation matrix between coordinate systems using the degree of freedom of a device attached to the end of the robot, so that calibration can be performed even if the posture of the device attached to the end of the robot changes.

일 실시예에 따르면, 로봇 캘리브레이션 방법은 기계 가공 시 가공 위치 보정을 해주는 보조용 기구인 지그(Jig)만을 사용하여, 캘리브레이션을 수행할 수 있다.According to an embodiment, the robot calibration method may perform calibration using only a jig, which is an auxiliary tool for correcting a machining position during machining.

도 1은 일 실시예들에 따른 로봇 캘리브레이션 방법을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 로봇 도구의 중심 및 사전 결정된 지점을 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 로봇 캘리브레이션 과정을 설명하기 위한 흐름도이다.
도 4는 일 실시예에 따른 좌표계 간의 변환 관계를 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 변환 행렬 간의 관계식을 설명하기 위한 도면이다.
1 is a diagram for explaining a robot calibration method according to an exemplary embodiment.
2 is a diagram for explaining a center and a predetermined point of a robot tool according to an embodiment.
3 is a flowchart for explaining a robot calibration process according to an embodiment.
4 is a diagram for explaining a transformation relationship between coordinate systems according to an exemplary embodiment.
5 is a diagram for explaining a relational expression between transformation matrices according to an exemplary embodiment.

본 명세서에서 개시되어 있는 특정한 구조적 또는 기능적 설명들은 단지 기술적 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 실제로 구현된 형태는 다양한 다른 모습을 가질 수 있으며 본 명세서에 설명된 실시예로만 한정되지 않는다. Specific structural or functional descriptions disclosed in this specification are merely exemplified for the purpose of describing embodiments according to technical concepts, and actual implemented forms may have various other appearances and are limited only to the embodiments described in this specification. It doesn't work.

제1 또는 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 이해되어야 한다. 예를 들어 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various components, but these terms should only be understood for the purpose of distinguishing one component from another. For example, a first element may be termed a second element, and similarly, a second element may also be termed a first element.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~간의"와 "바로~간의" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, but other elements may exist in the middle. It should be. On the other hand, when an element is referred to as “directly connected” or “directly connected” to another element, it should be understood that no other element exists in the middle. Expressions describing the relationship between components, such as "between" and "directly between" or "adjacent to" and "directly adjacent to", etc., should be interpreted similarly.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, terms such as "comprise" or "have" are intended to indicate that there is an embodied feature, number, step, operation, component, part, or combination thereof, but one or more other features or numbers However, it should be understood that it does not preclude the presence or addition of steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and unless explicitly defined in this specification, it should not be interpreted in an ideal or excessively formal meaning. don't

이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Like reference numerals in each figure indicate like elements.

도 1은 일 실시예들에 따른 로봇 캘리브레이션 방법을 설명하기 위한 도면이다.1 is a diagram for explaining a robot calibration method according to an exemplary embodiment.

도 1에서는 제1 로봇(110), 제1 좌표계(111), 제2 좌표계(113), 제2 로봇(130), 제3 좌표계(131), 제4 좌표계(133), 제2 로봇의 도구(150), 사전 결정된 지점(170) 및 제어 장치(190)가 도시되어 있다.In Figure 1, the first robot 110, the first coordinate system 111, the second coordinate system 113, the second robot 130, the third coordinate system 131, the fourth coordinate system 133, tools of the second robot 150 , a predetermined point 170 and a control device 190 are shown.

일 실시예에 따른 로봇 캘리브레이션은 반복 가능성이 높지만 정확하지 않은 로봇의 정확도를 개선하는데 사용될 수 있는 프로세스를 포함할 수 있다.Robot calibration according to one embodiment may include a highly repeatable but inaccurate process that may be used to improve the accuracy of a robot.

일 실시예에 따른 제어 장치(190)는 로봇을 제어하기 위한 장치를 포함할 수 있다. 일 실시예에 따른 제어 장치(190)는 복수의 로봇들을 제어할 수 있다. 일 실시예에 따른 제어 장치(190)는 제1 로봇(110) 및/또는 제2 로봇(130)을 제어할 수 있다.The control device 190 according to an embodiment may include a device for controlling a robot. The control device 190 according to an embodiment may control a plurality of robots. The control device 190 according to an embodiment may control the first robot 110 and/or the second robot 130 .

일 실시예에 따른 로봇(예를 들어, 로봇암)은 적어도 하나의 로봇을 포함할 수 있다. 일 실시예에 따른 로봇은 2개의 로봇을 포함할 수 있다. 일 실시예에 따른 로봇은 제1 로봇(110) 및 제2 로봇(130)을 포함할 수 있다. 일 실시예에 따른 제1 로봇(110)과 제2 로봇(130) 서로 연결된 로봇일 수 있다. 일 실시예에 따른 제1 로봇(110)은 로봇의 지지대에 부착된 로봇을 포함할 수 있다. 일 실시예에 따른 제2 로봇(130)은 제1 로봇(110)의 도구 부분에 부착된 로봇을 포함할 수 있다. A robot (eg, a robot arm) according to an embodiment may include at least one robot. A robot according to an embodiment may include two robots. A robot according to an embodiment may include a first robot 110 and a second robot 130 . The first robot 110 and the second robot 130 according to one embodiment may be robots connected to each other. The first robot 110 according to an embodiment may include a robot attached to a support of the robot. The second robot 130 according to an embodiment may include a robot attached to a tool part of the first robot 110 .

다른 일 실시예에 따른 로봇은 3개 이상의 로봇을 포함할 수도 있다. 일 실시예에 따른 제1 로봇(110)은 로봇의 지지대에 부착된 로봇을 포함할 수 있다. 일 실시예에 따른 제2 로봇(130)은 제1 로봇(110)의 도구 부분에 부착된 로봇을 포함할 수 있다. 그리고 제2 로봇(130)의 도구 부분에는 다른 로봇이 부착될 수도 있다. 다른 일 실시예에 따른 로봇의 지지대에 부착된 로봇의 도구에 제1 로봇(110)이 부착될 수 있다. 일 실시예에 따른 제2 로봇(130)은 제1 로봇(110)의 도구 부분에 부착된 로봇을 포함할 수 있다. 일 실시예에 따른 제2 로봇(130)의 도구 부분에는 다른 로봇이 부착될 수도 있다.A robot according to another embodiment may include three or more robots. The first robot 110 according to an embodiment may include a robot attached to a support of the robot. The second robot 130 according to an embodiment may include a robot attached to a tool part of the first robot 110 . Another robot may be attached to the tool part of the second robot 130 . The first robot 110 may be attached to a tool of a robot attached to a support of the robot according to another embodiment. The second robot 130 according to an embodiment may include a robot attached to a tool part of the first robot 110 . Another robot may be attached to the tool part of the second robot 130 according to an embodiment.

일 실시예에 따른 제1 좌표계(111)는 제1 로봇(110)의 기본 좌표계를 포함할 수 있다. 일 실시예에 따른 기본 좌표계는 로봇의 몸통이 기준인 좌표계를 포함할 수 있다. 일 실시예에 따른 기준점 (0, 0, 0)의 위치는 로봇의 하단 베이스에 위치할 수 있다. 일 실시예에 따른 기준점은 하나의 축과 베이스가 만나는 점을 포함할 수 있다. 일 실시예에 따른 기본 좌표계는 기준점을 기준으로 로봇의 일 방향이 +X 방향인 경우, +Y 방향은 + X방향의 반시계 방향으로 90도 회전한 방향이 +Y방향이 될 수 있다. +Z방향은 기준점의 수직 위쪽 방향이 될 수 있다. 전술한 기본 좌표계는 예시일 뿐 본 개시는 이에 제한되지 않는다.The first coordinate system 111 according to an embodiment may include a basic coordinate system of the first robot 110 . The basic coordinate system according to an embodiment may include a coordinate system based on the body of the robot. The location of the reference point (0, 0, 0) according to an embodiment may be located at the lower base of the robot. The reference point according to an embodiment may include a point where one axis and the base meet. In the basic coordinate system according to an embodiment, when one direction of the robot is the +X direction based on the reference point, the +Y direction may be a +Y direction obtained by rotating 90 degrees in a counterclockwise direction of the +X direction. The +Z direction may be a vertical upward direction of the reference point. The above-described basic coordinate system is only an example, and the present disclosure is not limited thereto.

일 실시예에 따른 제2 좌표계(113)는 제1 로봇(110)의 도구 좌표계를 포함할 수 있다. 일 실시예에 따른 도구 좌표계는 좌표 기준점이 도구의 중심(예를 들어, TCP(tool center point))이 되는 좌표계를 포함할 수 있다. 일 실시예에 따른 로봇의 도구에는 다른 장치(예를 들어, 로봇, 또는 도구)가 장착될 수 있다.The second coordinate system 113 according to an embodiment may include a tool coordinate system of the first robot 110 . A tool coordinate system according to an embodiment may include a coordinate system in which a coordinate reference point is a center of a tool (eg, a tool center point (TCP)). Other devices (eg, robots or tools) may be mounted on the tool of the robot according to an embodiment.

일 실시예에 따른 제3 좌표계(131)는 제2 로봇(130)의 기본 좌표계를 포함할 수 있다. 일 실시예에 따른 제3 좌표계(131)의 기준점은 제2 로봇(130)의 하단 베이스에 위치할 수 있다. 일 실시예에 따른 제2 좌표계(113)와 제3 좌표계(131)의 기준점은 같을 수도 있고 다를 수도 있다.The third coordinate system 131 according to an embodiment may include a basic coordinate system of the second robot 130 . The reference point of the third coordinate system 131 according to an embodiment may be located at the bottom base of the second robot 130 . Reference points of the second coordinate system 113 and the third coordinate system 131 according to an embodiment may be the same or different.

일 실시예에 따른 제4 좌표계(133)는 제2 로봇(130)의 도구 좌표계를 포함할 수 있다. 일 실시예에 따른 제4 좌표계(133)의 기준점은 제2 로봇(130) 도구의 중심점이 될 수 있다. The fourth coordinate system 133 according to an embodiment may include a tool coordinate system of the second robot 130 . A reference point of the fourth coordinate system 133 according to an embodiment may be a center point of a tool of the second robot 130 .

일 실시예에 따른 제어 장치(190)는 로봇 캘리브레이션을 수행할 수 있다. 일 실시예에 따른 제어 장치(190)는 제2 좌표계(113)와 제3 좌표계(131) 사이의 변환 행렬을 결정하기 위하여 이하의 동작들을 수행할 수 있다. 일 실시예에 따른 제어 장치(190)는 제2 좌표계(113)와 제3 좌표계(131) 사이의 변환 행렬을 결정함으로써, 정확한 제2 로봇 도구의 위치를 파악할 수 있으며, 로봇의 정밀도가 상승될 수 있다. 따라서, 제2 좌표계(113)와 제3 좌표계(131)가 일치하지 않더라도, 제어 장치(190)는 변환 행렬을 이용하여 로봇 캘리브레이션을 수행할 수 있다.The control device 190 according to an embodiment may perform robot calibration. The control device 190 according to an embodiment may perform the following operations to determine a transformation matrix between the second coordinate system 113 and the third coordinate system 131 . The control device 190 according to an embodiment determines the transformation matrix between the second coordinate system 113 and the third coordinate system 131, thereby accurately determining the position of the second robot tool and increasing the precision of the robot. can Therefore, even if the second coordinate system 113 and the third coordinate system 131 do not match, the control device 190 may perform robot calibration using the transformation matrix.

일 실시예에 따른 제어 장치(190)는 제1 로봇(110)의 자세를 고정시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇(110)의 위치(position) 및 제2 로봇(130)의 자세(orientation)를 반복하여 변경할 수 있다. 일 실시예에 따른 사전 결정된 지점은 로봇 캘리브레이션을 수행하기 위하여 임의로 지정된 지점을 포함할 수 있다. 예를 들어, 사전 결정된 지점은 지그를 포함할 수 있다. 일 실시예에 따른 로봇은 로봇의 자세를 변경하면서 사전 결정된 지점에 반복하여 로봇 도구의 중심이 위치하도록 동작할 수 있다. 로봇이 반복하여 사전 결정된 지점에 로봇 도구의 중심이 위치하도록 동작함으로써, 제어 장치(190)는 변환 행렬을 결정하기 위하여 필요한 데이터들을 수집할 수 있다. The control device 190 according to an embodiment controls the position and position of the first robot 110 so that the center of the robot tool is repeatedly located at a predetermined point while the posture of the first robot 110 is fixed. The orientation of the second robot 130 may be repeatedly changed. The predetermined point according to an embodiment may include an arbitrarily designated point for performing robot calibration. For example, the predetermined spot may include a jig. The robot according to one embodiment may operate so that the center of the robot tool is repeatedly located at a predetermined point while changing the posture of the robot. By repeatedly operating the robot so that the center of the robot tool is located at a predetermined point, the controller 190 may collect necessary data to determine the transformation matrix.

일 실시예에 따른 로봇은 6자유도를 가질 수도 있다. 일 실시예에 따른 로봇의 6 자유도는 로봇의 위치 및 로봇의 자세를 추종할 수 있는 로봇을 설계하기 위한 자유도를 포함할 수 있다. 일 실시예에 따른 로봇의 6 자유도는 3차원 공간에 있는 임의 물체의 위치 및 자세를 결정하기 위한 자유도를 포함할 수 있다. 예를 들어, 로봇의 6자유도는 로봇의 위치에 대응하는 3개의 변수 및 로봇의 자세에 대응하는 3개 변수를 포함할 수 있다. A robot according to an embodiment may have 6 degrees of freedom. Six degrees of freedom of the robot according to an embodiment may include degrees of freedom for designing a robot capable of following the position and posture of the robot. Six degrees of freedom of the robot according to an embodiment may include degrees of freedom for determining the position and posture of an arbitrary object in a 3D space. For example, the 6 degrees of freedom of the robot may include three variables corresponding to the position of the robot and three variables corresponding to the posture of the robot.

일 실시예에 따른 자세는 X축, Y축 및/또는 Z축 방향의 회전 조합에 의해 결정될 수 있다. 일 실시예에 따른 자세는 각각 X축, Y축 및/또는 Z축에 대한 회전각을 포함할 수 있다. 일 실시예에 따른 자세는 롤(roll), 피치(pitch) 및/또는 요(yaw)를 포함할 수 있다. 예를 들어, 롤은 Y축 방향의 회전을 의미할 수 있다. 또 다른 예를 들어, 피치는 X축 방향의 회전을 의미할 수 있다. 또 다른 예를 들어, 요는 Z축 방향의 회전을 의미할 수 있다.The posture according to an embodiment may be determined by a combination of rotations in the X-axis, Y-axis, and/or Z-axis directions. A posture according to an embodiment may include a rotation angle with respect to the X-axis, Y-axis, and/or Z-axis, respectively. A posture according to an embodiment may include roll, pitch, and/or yaw. For example, roll may refer to rotation in the Y-axis direction. As another example, the pitch may mean rotation in the X-axis direction. As another example, yaw may mean rotation in the Z-axis direction.

일 실시예에 따른 위치는 일 로봇 좌표계를 기준으로 한 다른 로봇의 상대 위치를 포함할 수 있다. 예를 들어, 위치는 제1 좌표계(111)를 기준으로 제1 로봇(110)의 도구 위치를 포함할 수 있다. 또 다른 예를 들어, 위치는 제1 좌표계(111)를 기준으로 제1 로봇(110)의 도구 좌표계인 제2 좌표계(113) 기준점의 위치를 포함할 수 있다.A position according to an embodiment may include a relative position of another robot based on a coordinate system of one robot. For example, the position may include a tool position of the first robot 110 based on the first coordinate system 111 . For another example, the position may include the position of the reference point of the second coordinate system 113, which is the tool coordinate system of the first robot 110, based on the first coordinate system 111.

일 실시예에 따른 변환 행렬은 두 좌표계 사이의 변환 관계 정보를 포함하는 행렬을 의미할 수 있다. 일 실시예에 따른 변환 행렬은 일 좌표계를 기준으로 다른 좌표계의 상대 자세 및/또는 상대 위치를 나타내기 위하여 사용되는 행렬을 포함할 수 있다. 예를 들어, 변환 행렬은 로 표현된 수 있으며, 4x4 행렬일 수 있다. 예를 들어, 변환 행렬은 Homogeneous Transformation Matrix를 포함할 수 있다. 일 실시예에 따른 변환 행렬을 회전 변환 행렬 및 전위(translation) 중 적어도 하나를 포함할 수 있다. 일 실시예에 따른 회전 변환 행렬은 일 좌표계를 기준으로 다른 좌표계의 상대 자세(또는 상대 방향)을 나타내기 위하여 사용되는 행렬을 포함할 수 있다. 예를 들어, 회전 변환 행렬은 로 표현될 수 있으며, 3x3 행렬일 수 있다. 일 실시예에 따른 전위는 일 좌표계를 기준으로 다른 좌표계의 상대 위치를 나타내기 위하여 사용되는 행렬을 포함할 수 있다. 예를 들어, 전위는 로 표현될 수 있으며, 3x1 행렬일 수 있다. 따라서 변환 행렬 로 표현될 수 있다.A transformation matrix according to an embodiment may refer to a matrix including transformation relation information between two coordinate systems. A transformation matrix according to an embodiment may include a matrix used to indicate a relative posture and/or a relative position of another coordinate system with respect to one coordinate system. For example, the transformation matrix is It can be expressed as , and it can be a 4x4 matrix. For example, the transformation matrix may include a homogeneous transformation matrix. A transformation matrix according to an embodiment may include at least one of a rotation transformation matrix and a translation. A rotation transformation matrix according to an embodiment may include a matrix used to indicate a relative posture (or relative direction) of another coordinate system with respect to one coordinate system. For example, the rotation transformation matrix is It can be expressed as , and it can be a 3x3 matrix. A potential according to an embodiment may include a matrix used to represent a relative position of another coordinate system based on one coordinate system. For example, potential It can be expressed as , and it can be a 3x1 matrix. Hence the transformation matrix Is can be expressed as

일 실시예에 따른 제어 장치(190)는 제1 로봇의 자세를 고정시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써 데이터를 획득할 수 있다. 일 실시예에 따른 제어 장치(190)는 로봇 도구의 중심이 사전 결정된 지점에 반복해서 위치하도록 제2 좌표계(113)의 위치 및 제2 로봇(130)의 자세를 반복하여 변경시킴으로써, 복수의 위치 데이터들 및/또는 복수의 회전 변환 행렬들을 획득할 수 있다. The control device 190 according to an embodiment repeatedly changes the position of the first robot and the posture of the second robot so that the center of the robot tool is repeatedly located at a predetermined point while the posture of the first robot is fixed. By doing so, you can get the data. The control device 190 according to an embodiment repeatedly changes the position of the second coordinate system 113 and the posture of the second robot 130 so that the center of the robot tool is repeatedly located at a predetermined point, thereby forming a plurality of positions. Data and/or a plurality of rotation transformation matrices may be obtained.

일 실시예에 따른 제어 장치(190)는 제1 로봇(110)의 위치 및 제2 로봇(130)의 자세를 반복하여 변경시킴으로써 제1 로봇(110) 도구의 복수의 위치들에 각각 대응하는 위치 데이터를 획득할 수 있다. 일 실시예에 따른 복수의 위치 데이터들은 제1 로봇(110)의 자세를 고정시킨 상태에서 획득한 제1 좌표계(111)를 기준으로 제2 좌표계(113)의 복수의 제1 위치 데이터들 및 제3 좌표계(131)를 기준으로 제2 로봇의 도구(150) 좌표계인 제4 좌표계(133)의 복수의 제3 위치 데이터들을 포함할 수 있다. 예를 들어, 제1 위치 데이터는 로 표현될 수 있다. 에서 A는 제1 로봇을 의미하고, TA는 제1 로봇의 도구를 의미할 수 있다. 또 다른 예를 들어, 제3 위치 데이터는 로 표현될 수 있다. 에서 B는 제2 로봇을 의미하고, TB는 제2 로봇의 도구를 의미할 수 있다. 일 실시예에 따른 제1 위치 데이터는 제1 좌표계(111)를 기준으로 한 제2 좌표계(113)의 상대 위치 데이터를 포함할 수 있다. 일 실시예에 따른 제3 위치 데이터는 제3 좌표계(131)를 기준으로 한 제4 좌표계(133)의 상대 위치 데이터를 포함할 수 있다.The control device 190 according to an embodiment repeatedly changes the position of the first robot 110 and the posture of the second robot 130 to positions respectively corresponding to a plurality of positions of the tool of the first robot 110. data can be obtained. The plurality of positional data according to an embodiment includes a plurality of first positional data of the second coordinate system 113 based on the first coordinate system 111 obtained in a state in which the posture of the first robot 110 is fixed, and the first position data of the second coordinate system 113. Based on the 3 coordinate system 131, it may include a plurality of third position data of the fourth coordinate system 133, which is the coordinate system of the tool 150 of the second robot. For example, the first location data is can be expressed as In , A may mean a first robot, and TA may mean a tool of the first robot. As another example, the third location data is can be expressed as In , B denotes a second robot, and TB denotes a tool of the second robot. The first location data according to an embodiment may include relative location data of the second coordinate system 113 based on the first coordinate system 111 . The third location data according to an embodiment may include relative location data of the fourth coordinate system 133 based on the third coordinate system 131 .

일 실시예에 따른 회전 변환 행렬은 제3 좌표계(131)와 제4 좌표계(133) 사이의 제3 회전 변환 행렬(예를 들어, 제3 회전 변환 행렬은 로 표현될 수도 있다.)을 포함할 수 있다. 일 실시예에 따른 복수의 회전 변환 행렬들은 제1 좌표계(111)와 제4 좌표계(133) 사이의 제4 회전 변환 행렬(예를 들어, 제4 회전 변환 행렬은 로 표현될 수도 있다.)을 포함할 수도 있다. 일 실시예에 따른 제3 회전 변환 행렬 및/또는 제4 회전 변환 행렬은 제2 회전 변환 행렬을 산출하는 과정에서 사용되지 않을 수도 있거나 사용될 수도 있다.The rotation transformation matrix according to an embodiment is a third rotation transformation matrix between the third coordinate system 131 and the fourth coordinate system 133 (eg, the third rotation transformation matrix is may be expressed as). A plurality of rotation transformation matrices according to an embodiment is a fourth rotation transformation matrix between the first coordinate system 111 and the fourth coordinate system 133 (eg, the fourth rotation transformation matrix is may be expressed as). The third rotation transformation matrix and/or the fourth rotation transformation matrix according to an embodiment may or may not be used in the process of calculating the second rotation transformation matrix.

일 실시예에 따른 제1 로봇의 자세를 고정시킨 상태는 제1 로봇의 기본 좌표계(base coordinate system)인 제1 좌표계(111)를 기준으로 제1 로봇의 도구 좌표계(tool coordinate system)인 제2 좌표계(113)의 자세를 고정시킨 상태를 포함할 수 있다. 일 실시예에 따른 제1 좌표계(111)를 기준으로 제2 좌표계(113)의 자세를 고정시킴으로써, 제1 좌표계(111)와 제2 좌표계(113) 사이의 회전 변환 행렬은 고정될 수 있다. 일 실시예에 따른 제1 좌표계(111)와 제2 좌표계(113) 사이의 회전 변환 행렬은 제1 회전 변환 행렬을 포함할 수 있다. 예를 들어, 제1 회전 변환 행렬은 로 표현될 수 있다. The state in which the posture of the first robot is fixed according to an embodiment is based on the first coordinate system 111, which is the base coordinate system of the first robot, and the second coordinate system, which is the tool coordinate system of the first robot. It may include a state in which the posture of the coordinate system 113 is fixed. By fixing the posture of the second coordinate system 113 based on the first coordinate system 111 according to an embodiment, a rotation transformation matrix between the first coordinate system 111 and the second coordinate system 113 may be fixed. A rotation transformation matrix between the first coordinate system 111 and the second coordinate system 113 according to an embodiment may include a first rotation transformation matrix. For example, the first rotation transformation matrix is can be expressed as

일 실시예에 따른 제어 장치(190)는 제1 회전 변환 행렬, 복수의 위치 데이터들 및 복수의 회전 변환 행렬들 중 적어도 하나에 기초하여 제2 좌표계(113)와 제2 로봇의 기본 좌표계인 제3 좌표계(131) 사이의 제2 회전 변환 행렬을 산출할 수 있다. 예를 들어, 제2 회전 변환 행렬은 로 표현될 수 있다. 일 실시예에 따른 제2 회전 변환 행렬은 수학식1에 의하여 산출될 수 있다.The control device 190 according to an embodiment establishes a second coordinate system 113 and a basic coordinate system of the second robot based on at least one of the first rotation transformation matrix, a plurality of position data, and a plurality of rotation transformation matrices. A second rotation transformation matrix between three coordinate systems 131 may be calculated. For example, the second rotation transformation matrix is can be expressed as The second rotation transformation matrix according to an embodiment may be calculated by Equation 1.

수학식 1은 수학식2로부터 유도될 수 있다. 이하에서는 수학식2에 기초하여 수학식 1을 유도하는 과정이 구체적으로 서술된다.Equation 1 can be derived from Equation 2. Hereinafter, the process of deriving Equation 1 based on Equation 2 will be described in detail.

수학식 2는 제1 좌표계(111) 제2 좌표계(113) 사이의 변환 행렬인 , 제2 좌표계(113)와 제3 좌표계(131) 사이의 변환 행렬인 , 제3 좌표계(131)와 제4 좌표계(133) 사이의 변환 행렬인 및 제1 좌표계(111)와 제4 좌표계(133) 사이의 변환 행렬인 의 관계식을 포함할 수 있다.Equation 2 is a transformation matrix between the first coordinate system 111 and the second coordinate system 113 , which is a transformation matrix between the second coordinate system 113 and the third coordinate system 131 , which is a transformation matrix between the third coordinate system 131 and the fourth coordinate system 133 And a transformation matrix between the first coordinate system 111 and the fourth coordinate system 133 may include a relational expression of

수학식 2를 행렬식으로 표현하면 수학식 3이 될 수 있다.If Equation 2 is expressed as a determinant, Equation 3 may be obtained.

수학식 3을 전개하여 정리하면 수학식 4가 도출될 수 있다.Equation 4 can be derived by expanding and rearranging Equation 3.

일 실시예에 따른 제4 위치 데이터()는 로봇이 동작하더라도 고정된 값일 수 있다. 그 이유는 사전 결정된 지점(예를 들어, 지그)의 위치가 변경되지 않으므로 고정된 값일 수 있다. 일 실시예에 따른 로봇 도구의 중심은 사전 결정된 지점에 일치될 수 있다. 따라서, 제1 좌표계(111)를 기준으로 한 로봇 도구의 중심이 제4 위치 데이터()가 될 수 있고, 제4 위치 데이터()는 고정된 값일 수 있다.Fourth location data according to an embodiment ( ) may be a fixed value even if the robot operates. The reason may be a fixed value because the location of a predetermined point (eg, a jig) does not change. The center of the robot tool according to one embodiment may coincide with a predetermined point. Therefore, the center of the robot tool based on the first coordinate system 111 is the fourth position data ( ), and the fourth location data ( ) may be a fixed value.

일 실시예에 따른 제1 회전 변환 행렬()은 제1 좌표계(111)를 기준으로 제2 좌표계(113)의 자세가 고정된 상태이므로 로봇이 동작하더라도 고정된 값일 수 있다. A first rotation transformation matrix according to an embodiment ( ) may be a fixed value even if the robot operates because the posture of the second coordinate system 113 is fixed with respect to the first coordinate system 111.

일 실시예에 따른 제어 장치(190)는 로봇 도구의 중심이 사전 결정된 지점에 반복해서 위치하도록 제2 좌표계(113)의 위치 및 제2 로봇(130)의 자세를 반복하여 변경시키므로, 각각의 위치 및 자세에 대응하여 복수의 제3 위치 데이터()들 및/또는 복수의 제1 위치 데이터()들을 획득할 수 있다. 일 실시예에 따른 제어 장치(190)는 복수의 제3 위치 데이터()들 및/또는 복수의 제1 위치 데이터()들을 수학식4에 대입할 수 있고, 대입된 수식들의 집합을 수학식 5로 표현할 수 있다.Since the control device 190 according to an embodiment repeatedly changes the position of the second coordinate system 113 and the posture of the second robot 130 so that the center of the robot tool is repeatedly located at a predetermined point, each position And a plurality of third position data corresponding to the posture ( ) and/or a plurality of first location data ( ) can be obtained. The control device 190 according to an embodiment includes a plurality of third location data ( ) and/or a plurality of first location data ( ) can be substituted into Equation 4, and a set of substituted equations can be expressed as Equation 5.

수학식 5를 i번째 식에서 j번째 식을 빼는 방식으로 정리하면 수학식 6이 도출될 수 있다.Equation 6 can be derived by rearranging Equation 5 by subtracting the j-th equation from the i-th equation.

수학식 6에서 , 라고 표현하면, 수학식 7이 도출될 수 있다.in Equation 6 cast , cast Expressed as , Equation 7 can be derived.

수학식 7에서 로 표현하는 경우, 수학식 4()가 도출될 수 있다.in Equation 7 When expressed as Equation 4 ( ) can be derived.

일 실시예에 따른 제어 장치(190)는 수학식 4를 이용하여 제2 회전 변환 행렬()을 산출할 수 있다.The control device 190 according to an embodiment may use Equation 4 to obtain a second rotation transformation matrix ( ) can be calculated.

일 실시예에 따른 제어 장치(190)는 제1 로봇(110)의 자세를 변경시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇(110)의 위치 및 제2 로봇(130)의 자세를 반복하여 변경시킬 수 있다. 일 실시예에 따른 제1 로봇(110)의 고정된 자세를 제1 자세로 정의하는 경우, 제어 장치(190)는 제1 자세와 다른 제2 자세로 제1 로봇(110)의 자세를 변경시킬 수 있다. 일 실시예에 따른 제어 장치(190)는 제2 자세에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇(110)의 위치 및 제2 로봇(130)의 자세를 반복하여 변경시킬 수 있다.The control device 190 according to an embodiment changes the position of the first robot 110 and the second robot so that the center of the robot tool is repeatedly located at a predetermined point in a state where the posture of the first robot 110 is changed. The posture of (130) can be repeatedly changed. When the fixed posture of the first robot 110 according to an embodiment is defined as the first posture, the controller 190 may change the posture of the first robot 110 to a second posture different from the first posture. can The control device 190 according to an embodiment repeatedly changes the position of the first robot 110 and the posture of the second robot 130 so that the center of the robot tool is repeatedly located at a predetermined point in the second posture. can make it

일 실시예에 따른 제어 장치(190)는 제1 로봇(110)의 자세를 변경시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇(110)의 위치 및 제2 로봇(130)의 자세를 반복하여 변경시킴으로써 데이터를 획득할 수 있다. 일 실시예에 따른 해당하는 데이터는 복수의 위치 데이터들 및 복수의 회전 변환 행렬들 중 적어도 하나를 포함할 수 있다. 일 실시예에 따른 해당하는 데이터는 제1 로봇(110)의 제2 자세에서 획득한 데이터이므로, 제1 로봇(110)의 제1 자세에서 획득한 복수의 위치 데이터들 및/또는 복수의 회전 변환 행렬들과 다를 수도 있다.The control device 190 according to an embodiment changes the position of the first robot 110 and the second robot so that the center of the robot tool is repeatedly located at a predetermined point in a state where the posture of the first robot 110 is changed. Data can be obtained by repeatedly changing the posture of (130). Corresponding data according to an embodiment may include at least one of a plurality of position data and a plurality of rotation transformation matrices. Since corresponding data according to an embodiment is data acquired in the second posture of the first robot 110, a plurality of positional data obtained in the first posture of the first robot 110 and/or a plurality of rotation transformations. It may be different from matrices.

일 실시예에 따른 복수의 위치 데이터들은 제1 로봇(110)의 자세를 변경시킨 상태(예를 들어, 제1 로봇(110)의 제2 자세)에서 획득한 제1 좌표계(111)를 기준으로 제2 좌표계(113)의 복수의 제1 위치 데이터()들 및 제3 좌표계(131)를 기준으로 제4 좌표계(133)의 복수의 제3 위치 데이터()들을 포함할 수 있다. 일 실시예에 따른 제1 로봇(110)의 제1 자세에서 획득한 복수의 제1 위치 데이터()들 및 복수의 제3 위치 데이터()들은 제2 로봇(130)의 제2 자세에서 획득한 복수의 제1 위치 데이터()들 및 복수의 제3 위치 데이터()들과 다를 수도 있다. 일 실시예에 따른 제2 좌표계(113)의 위치 및 제2 로봇(130)의 자세가 반복하여 변경되므로, 제3 위치 데이터들은 으로 표현될 수 있다. 또한 제1 위치 데이터들은 으로 표현될 수 있다. A plurality of location data according to an embodiment is based on the first coordinate system 111 obtained in a state in which the posture of the first robot 110 is changed (eg, the second posture of the first robot 110). A plurality of first position data of the second coordinate system 113 ( ) and a plurality of third position data of the fourth coordinate system 133 based on the third coordinate system 131 ( ) may be included. A plurality of first position data acquired in the first posture of the first robot 110 according to an embodiment ( ) and a plurality of third location data ( ) is a plurality of first position data acquired in the second posture of the second robot 130 ( ) and a plurality of third location data ( ) may be different. Since the position of the second coordinate system 113 and the posture of the second robot 130 are repeatedly changed according to an embodiment, the third position data can be expressed as In addition, the first location data can be expressed as

일 실시예에 따른 복수의 회전 변환 행렬들은 제1 좌표계(111)와 제2 좌표계(113) 사이의 복수의 제1 회전 변환 행렬()들을 포함할 수 있다. 일 실시예에 따른 제1 회전 변환 행렬()은 제1 로봇의 자세가 달라짐에 따라 변경될 수 있다. 따라서 제1 로봇(110)의 자세가 N번 변경되는 경우, 이 존재할 수 있다.A plurality of rotation transformation matrices according to an embodiment are a plurality of first rotation transformation matrices between the first coordinate system 111 and the second coordinate system 113 ( ) may be included. A first rotation transformation matrix according to an embodiment ( ) may change as the attitude of the first robot changes. Therefore, when the posture of the first robot 110 is changed N times, may exist.

일 실시예에 따른 제어 장치(190)는 제2 회전 변환 행렬(), 복수의 위치 데이터들 및 복수의 회전 변환 행렬들에 기초하여 제2 좌표계(113)를 기준으로 제3 좌표계(131)의 제2 위치 데이터()를 산출할 수 있다.The control device 190 according to an embodiment includes a second rotation transformation matrix ( ), second position data of the third coordinate system 131 based on the second coordinate system 113 based on a plurality of position data and a plurality of rotation transformation matrices ( ) can be calculated.

일 실시예에 따른 제2 회전 변환 행렬()은 제1 로봇(110)의 자세를 고정시킨 상태에서 획득한 데이터를 기초로 산출된 행렬을 포함할 수 있다.A second rotation transformation matrix according to an embodiment ( ) may include a matrix calculated based on data acquired while the posture of the first robot 110 is fixed.

일 실시예에 따른 제어 장치(190)는 수학식 4를 이용하여 제2 위치 데이터()를 산출할 수 있다. 일 실시예에 따른 제2 회전 변환 행렬()은 제1 로봇(110)의 자세를 고정시킨 상태에서 수학식 4를 이용하여 산출된 행렬일 수 있다. The control device 190 according to an embodiment uses Equation 4 to obtain the second location data ( ) can be calculated. A second rotation transformation matrix according to an embodiment ( ) may be a matrix calculated using Equation 4 in a state in which the posture of the first robot 110 is fixed.

일 실시예에 따른 제1 로봇(110)의 자세를 변경시킨 상태에서, 제어 장치(190)는 제2 좌표계(113)의 위치 및 제2 로봇(130)의 자세를 반복하여 변경시킴으로써 획득한 데이터(예를 들어, 제1 위치 데이터들(), 제3 위치 데이터들(), 제1 회전 변환 행렬들())을 수학식 4에 대입시킴으로써 수학식 8이 도출될 수 있다.Data obtained by repeatedly changing the position of the second coordinate system 113 and the posture of the second robot 130 in a state in which the posture of the first robot 110 according to an embodiment is changed, the control device 190 (For example, the first location data ( ), the third location data ( ), first rotation transformation matrices ( )) into Equation 4, Equation 8 can be derived.

수학식 8에 나열된 i번째 식에서 j번째 식을 빼면, 수학식 9가 도출될 수 있다.Equation 9 can be derived by subtracting the j-th equation from the i-th equation listed in Equation 8.

수학식 9에서 , , 라고 하면, 수학식 10으로 수학식 9가 정리될 수 있다.in Equation 9 cast , cast , cast If so, Equation 9 can be arranged as Equation 10.

수학식 10에서 , , 라고 하면, 수학식 10이 수학식 11로 정리될 수 있다.in Equation 10 , , If so, Equation 10 can be summarized as Equation 11.

일 실시예에 따른 제어 장치(190)는 수학식 11을 이용하여 제2 위치 데이터()를 산출할 수 있다.The control device 190 according to an embodiment uses Equation 11 to obtain the second location data ( ) can be calculated.

일 실시예에 따른 제어 장치(190)는 회전 변환 행렬 및 위치 데이터에 기초하여 제1 로봇(110)의 도구 좌표계를 제2 로봇의 기본 좌표계로 변환할 수 있다. 일 실시예에 따른 제어 장치(190)는 제2 회전 변환 행렬() 및 제2 위치 데이터()에 기초하여 제1 로봇의 도구 좌표계를 제2 로봇의 기본 좌표계로 변환할 수 있다. 일 실시예에 따른 제어 장치(190)는 제2 회전 변환 행렬() 및 제2 위치 데이터()에 기초하여 제2 좌표계(113)와 제3 좌표계(131) 사이의 관계를 나타내는 변환 행렬을 결정할 수 있다. 일 실시예에 따른 제어 장치(190)는 제2 회전 변환 행렬() 및 제2 위치 데이터()에 기초하여 제2 좌표계(113)와 제3 좌표계(131) 사이의 변환 행렬()을 결정할 수 있다. 따라서 제어 장치(190)는 변환 행렬()을 이용함으로써, 제2 좌표계(113)를 제3 좌표계(131)로 캘리브레이션 할 수 있다.The control device 190 according to an embodiment may convert the tool coordinate system of the first robot 110 to the basic coordinate system of the second robot based on the rotation transformation matrix and the position data. The control device 190 according to an embodiment includes a second rotation transformation matrix ( ) and the second location data ( ), it is possible to convert the tool coordinate system of the first robot to the basic coordinate system of the second robot. The control device 190 according to an embodiment includes a second rotation transformation matrix ( ) and the second location data ( ), a transformation matrix representing the relationship between the second coordinate system 113 and the third coordinate system 131 may be determined. The control device 190 according to an embodiment includes a second rotation transformation matrix ( ) and the second location data ( ) Based on the transformation matrix between the second coordinate system 113 and the third coordinate system 131 ( ) can be determined. Therefore, the control device 190 is a conversion matrix ( ), it is possible to calibrate the second coordinate system 113 to the third coordinate system 131.

일 실시예에 따른 로봇 캘리브레이션 방법 통해 로봇의 절대 정밀도를 확보할 수 있다. 일 실시예에 따른 로봇 캘리브레이션 방법으로 인하여 로봇이 연쇄 구조로 연결되어 있는 경우에도, 작업 현장에서 로봇 부착 시 생길 수 있는 오차를 보정할 수 있다. 따라서, 제어 장치(190)는 로봇의 절대 정밀도를 확보할 수 있다. 일 실시예에 따른 로봇 캘리브레이션 방법은 간단한 장비만을 이용하여 로봇 캘리브레이션을 수행할 수 있으므로, 로봇 생산 시 측정 장비 비용이 감소될 수 있다. 나아가 적은 비용으로 복수의 로봇들의 캘리브레이션을 동시에 수행할 수 있게 되어 로봇 설치 시간 감소 효과를 기대할 수 있다.Absolute precision of the robot may be secured through the robot calibration method according to an embodiment. Even when robots are connected in a chain structure due to the robot calibration method according to an embodiment, it is possible to correct an error that may occur when the robot is attached at a work site. Therefore, the control device 190 can ensure absolute precision of the robot. Since the robot calibration method according to an embodiment can perform robot calibration using only simple equipment, cost of measurement equipment can be reduced during robot production. Furthermore, since it is possible to simultaneously perform calibration of a plurality of robots at a low cost, an effect of reducing robot installation time can be expected.

도 2는 일 실시예에 따른 로봇 도구의 중심 및 사전 결정된 지점을 설명하기 위한 도면이다. 2 is a diagram for explaining a center and a predetermined point of a robot tool according to an embodiment.

도 2에서는 로봇 도구의 중심이 사전 결정된 지점에 위치하도록 하는 로봇의 다양한 동작들(210, 230, 250, 270), 로봇 도구의 중심(231) 및 사전 결정된 지점(233)이 도시되어 있다.In FIG. 2 , various motions 210, 230, 250, and 270 of the robot to position the center of the robot tool at a predetermined point, the center 231 of the robot tool, and the predetermined point 233 are shown.

일 실시예에 따른 제어 장치(190)는 사전 결정된 지점(233)에 반복해서 로봇 도구의 중심(231)이 위치하도록 로봇의 동작을 변경시킬 수 있다. 일 실시예에 따른 제어 장치(190)는 사전 결정된 지점(233)에 반복해서 로봇 도구의 중심(231)이 위치하도록 제1 로봇의 위치 및 제2 로봇의 자세를 반복하여 변경시킬 수 있다. 일 실시예에 따른 제어 장치(190)는 로봇 도구의 중심(231)이 사전 결정된 지점(233)에 위치하도록 하는 로봇의 다양한 동작들(210, 230, 250, 270)로부터 획득한 데이터에 기초하여 제2 좌표계(113)와 제3 좌표계(131) 사이의 회전 변환 행렬 및/또는 위치 데이터를 산출할 수 있다. The control device 190 according to an embodiment may repeatedly change the operation of the robot so that the center 231 of the robot tool is positioned at a predetermined point 233 . The control device 190 according to an embodiment may repeatedly change the position of the first robot and the posture of the second robot so that the center 231 of the robot tool is located at the predetermined point 233 repeatedly. The control device 190 according to an embodiment is based on data obtained from various motions 210, 230, 250, and 270 of the robot so that the center 231 of the robot tool is positioned at a predetermined point 233. A rotation transformation matrix and/or positional data between the second coordinate system 113 and the third coordinate system 131 may be calculated.

도 3은 일 실시예에 따른 로봇 캘리브레이션 과정을 설명하기 위한 흐름도이다. 3 is a flowchart for explaining a robot calibration process according to an embodiment.

일 실시예에 따른 제1 로봇(110) 및/또는 제2 로봇(130)이 설치(310)될 수 있다. 제1 로봇(110) 및/또는 제2 로봇(130)은 사람 또는 다른 기계 장치에 의하여 설치될 수도 있다. The first robot 110 and/or the second robot 130 according to an embodiment may be installed (310). The first robot 110 and/or the second robot 130 may be installed by humans or other mechanical devices.

일 실시예에 따른 제어 장치(190)는 로봇 도구의 중심을 사전 결정된 지점에 일치시키고 제1 로봇의 자세를 고정(320)시킬 수 있다. 다른 일 실시예에 따른 로봇 도구의 중심은 사람에 의하여 사전 결정된 지점에 일치될 수 있다. The control device 190 according to an embodiment may match the center of the robot tool to a predetermined point and fix the posture of the first robot ( 320 ). The center of the robot tool according to another embodiment may be aligned with a point predetermined by a person.

일 실시예에 따른 제어 장치(190)는 제1 로봇(110)의 위치 및 제2 로봇(130)의 자세를 N회 반복(330)하여 변경시킬 수 있다. 일 실시예에 따른 제어 장치(190)는 제2 좌표계(113)의 위치 및 제2 로봇(130)의 자세를 반복하여 변경시킬 수 있다. 일 실시예에 따른 제2 로봇(130)의 자세는 제3 좌표계(131)와 제4 좌표계(133) 사이의 회전각을 포함할 수 있다.The control device 190 according to an embodiment may change the position of the first robot 110 and the posture of the second robot 130 by repeating 330 N times. The control device 190 according to an embodiment may repeatedly change the position of the second coordinate system 113 and the posture of the second robot 130 . The posture of the second robot 130 according to an embodiment may include a rotation angle between the third coordinate system 131 and the fourth coordinate system 133 .

일 실시예에 따른 제어 장치(190)는 제1 로봇(110)의 위치 및 제2 로봇(130)의 자세를 N회 반복하여 변경함으로써, 복수의 위치 데이터들 및/또는 복수의 회전 변환 행렬들을 획득할 수 있다. 일 실시예에 따른 제어 장치(190)는 복수의 위치 데이터들 및/또는 복수의 회전 변환 행렬들에 기초하여 제2 회전 변환 행렬을 산출(340)할 수 있다.The control device 190 according to an embodiment converts a plurality of position data and/or a plurality of rotation transformation matrices by repeatedly changing the position of the first robot 110 and the posture of the second robot 130 N times. can be obtained The control device 190 according to an embodiment may calculate (340) a second rotation transformation matrix based on a plurality of position data and/or a plurality of rotation transformation matrices.

일 실시예에 따른 제어 장치(190)는 로봇 도구의 중심을 사전 결정된 지점에 일치시키고 제1 로봇(110)의 자세를 변경(350)시킬 수 있다. 일 실시예에 따른 로봇 도구의 중심은 사람에 의하여 사전 결정된 지점에 일치될 수도 있다. The control device 190 according to an embodiment may match the center of the robot tool to a predetermined point and change the posture of the first robot 110 (350). The center of the robot tool according to an embodiment may be coincident with a point previously determined by a person.

일 실시예에 따른 변경된 제1 로봇(110)의 자세에서, 제어 장치(190)는 제1 로봇(110)의 위치 및 제2 로봇(130)의 자세를 N회 반복(360)하여 변경함으로써, 복수의 위치 데이터들 및/또는 복수의 회전 변환 행렬들을 획득할 수 있다. 일 실시예에 따른 제어 장치(190)는 복수의 위치 데이터들 및/또는 복수의 회전 변환 행렬들에 기초하여 제2 위치 데이터를 산출(370)할 수 있다.In the changed posture of the first robot 110 according to an embodiment, the control device 190 changes the position of the first robot 110 and the posture of the second robot 130 by repeating 360 N times, A plurality of position data and/or a plurality of rotation transformation matrices may be obtained. The control device 190 according to an embodiment may calculate (370) second position data based on a plurality of position data and/or a plurality of rotation transformation matrices.

일 실시예에 따른 제어 장치(190)는 제2 회전 변환 행렬 및 제2 위치 데이터에 기초하여 제2 좌표계(113)와 제3 좌표계(131) 사이의 변환 행렬을 결정할 수 있다. 일 실시예에 따른 제어 장치(190)는 해당하는 변환 행렬을 이용하여, 제2 좌표계(113)를 제3 좌표계(131)로 캘리브레이션 할 수 있다.The control device 190 according to an embodiment may determine a transformation matrix between the second coordinate system 113 and the third coordinate system 131 based on the second rotation transformation matrix and the second position data. The control device 190 according to an embodiment may calibrate the second coordinate system 113 to the third coordinate system 131 using a corresponding transformation matrix.

도 4는 일 실시예에 따른 좌표계 간의 변환 관계를 설명하기 위한 도면이다. 4 is a diagram for explaining a transformation relationship between coordinate systems according to an exemplary embodiment.

도 4에서는 제1 좌표계(111), 제2 좌표계(113), 제3 좌표계(131), 제4 좌표계(133), 제1 변환 행렬(410), 제2 변환 행렬(430), 제3 변환 행렬(450) 및 제4 변환 행렬(470)이 도시되어 있다.4, the first coordinate system 111, the second coordinate system 113, the third coordinate system 131, the fourth coordinate system 133, the first transformation matrix 410, the second transformation matrix 430, and the third transformation A matrix 450 and a fourth transformation matrix 470 are shown.

일 실시예에 따른 제1 변환 행렬(410)은 제1 좌표계(111)와 제2 좌표계(113) 사이의 변환 관계 정보를 포함할 수 있다. 일 실시예에 따른 제1 변환 행렬(410)은 제1 좌표계(111)와 제2 좌표계(113) 사이의 변환 행렬을 포함할 수 있다. 예를 들어, 제1 변환 행렬은 로 표현될 수 있다.The first transformation matrix 410 according to an embodiment may include transformation relation information between the first coordinate system 111 and the second coordinate system 113 . The first transformation matrix 410 according to an embodiment may include a transformation matrix between the first coordinate system 111 and the second coordinate system 113 . For example, the first transformation matrix is can be expressed as

일 실시예에 따른 제2 변환 행렬(430)은 제2 좌표계(113)와 제3 좌표계(131) 사이의 변환 관계 정보를 포함할 수 있다. 일 실시예에 따른 제2 변환 행렬(430)은 제2 좌표계(113)와 제3 좌표계(131) 사이의 변환 행렬을 포함할 수 있다. 예를 들어, 제2 변환 행렬은 로 표현될 수 있다.The second transformation matrix 430 according to an embodiment may include transformation relation information between the second coordinate system 113 and the third coordinate system 131 . The second transformation matrix 430 according to an embodiment may include a transformation matrix between the second coordinate system 113 and the third coordinate system 131 . For example, the second transformation matrix is can be expressed as

일 실시예에 따른 제3 변환 행렬(450)은 제3 좌표계(131)와 제4 좌표계(133) 사이의 변환 관계 정보를 포함할 수 있다. 일 실시예에 따른 제3 변환 행렬(450)은 제3 좌표계(131)와 제4 좌표계(133) 사이의 변환 행렬을 포함할 수 있다. 예를 들어, 제3 변환 행렬은 로 표현될 수 있다.The third transformation matrix 450 according to an embodiment may include transformation relation information between the third coordinate system 131 and the fourth coordinate system 133 . The third transformation matrix 450 according to an embodiment may include a transformation matrix between the third coordinate system 131 and the fourth coordinate system 133 . For example, the third transformation matrix is can be expressed as

일 실시예에 따른 제4 변환 행렬(470)은 제1 좌표계(111)와 제4 좌표계(133) 사이의 변환 관계 정보를 포함할 수 있다. 일 실시예에 따른 제4 변환 행렬(470)은 제1 좌표계(111)와 제4 좌표계(133) 사이의 변환 행렬을 포함할 수 있다. 예를 들어, 제4 변환 행렬은 로 표현될 수 있다.The fourth transformation matrix 470 according to an embodiment may include transformation relation information between the first coordinate system 111 and the fourth coordinate system 133 . The fourth transformation matrix 470 according to an embodiment may include a transformation matrix between the first coordinate system 111 and the fourth coordinate system 133 . For example, the fourth transformation matrix is can be expressed as

일 실시예에 따른 로봇 캘리브레이션 방법은 제1 로봇의 자세를 고정시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계와 제2 로봇 기본 좌표계 사이의 회전 변환 행렬을 산출하는 단계; 제1 로봇의 자세를 변경시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계를 기준으로 제2 로봇 기본 좌표계의 위치 데이터를 산출하는 단계; 및 회전 변환 행렬 및 위치 데이터에 기초하여 제1 로봇의 도구 좌표계와 제2 로봇의 기본 좌표계 사이의 변환 행렬을 결정하는 단계를 포함할 수 있다.The robot calibration method according to an embodiment is obtained by repeatedly changing the position of the first robot and the posture of the second robot so that the center of the robot tool is repeatedly located at a predetermined point in a state in which the posture of the first robot is fixed. Calculating a rotation transformation matrix between the first robot tool coordinate system and the second robot basic coordinate system based on the data; In a state where the posture of the first robot is changed, the first robot tool based on data obtained by repeatedly changing the position of the first robot and the posture of the second robot so that the center of the robot tool is repeatedly located at a predetermined point. Calculating positional data of a second robot basic coordinate system based on the coordinate system; and determining a transformation matrix between the tool coordinate system of the first robot and the basic coordinate system of the second robot based on the rotation transformation matrix and the position data.

일 실시예에 따른 제1 로봇의 자세를 고정시킨 상태는 제1 로봇의 기본 좌표계인 제1 좌표계를 기준으로 제1 로봇의 도구 좌표계인 제2 좌표계의 자세를 고정시킨 상태를 포함할 수 있다.According to an embodiment, the state in which the posture of the first robot is fixed may include a state in which the posture of the second coordinate system, which is the tool coordinate system of the first robot, is fixed based on the first coordinate system, which is the basic coordinate system of the first robot.

일 실시예에 따른 회전 변환 행렬을 산출하는 단계는 로봇 도구의 중심이 사전 결정된 지점에 반복해서 위치하도록 제2 좌표계의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써, 복수의 위치 데이터들 및 복수의 회전 변환 행렬들 중 적어도 하나를 획득하는 단계; 및 제1 회전 변환 행렬, 복수의 위치 데이터들 및 복수의 회전 변환 행렬들 중 적어도 하나에 기초하여 제2 좌표계와 제2 로봇의 기본 좌표계인 제3 좌표계 사이의 제2 회전 변환 행렬을 산출하는 단계를 포함할 수 있다.Calculating a rotation transformation matrix according to an embodiment may include a plurality of positional data and a plurality of positional data and a plurality of positions by repeatedly changing the position of the second coordinate system and the posture of the second robot so that the center of the robot tool is repeatedly located at a predetermined point. Obtaining at least one of the rotation transformation matrices of ; and calculating a second rotation transformation matrix between the second coordinate system and the third coordinate system, which is the basic coordinate system of the second robot, based on at least one of the first rotation transformation matrix, a plurality of position data, and a plurality of rotation transformation matrices. can include

일 실시예에 따른 복수의 위치 데이터들은 제1 로봇의 자세를 고정시킨 상태에서 획득한 제1 좌표계를 기준으로 제2 좌표계의 복수의 제1 위치 데이터들 및 제3 좌표계를 기준으로 제2 로봇 도구 좌표계인 제4 좌표계의 복수의 제3 위치 데이터들을 포함할 수 있다.A plurality of position data according to an embodiment is a plurality of first position data of a second coordinate system based on the first coordinate system obtained in a state in which the posture of the first robot is fixed, and a second robot tool based on the third coordinate system. It may include a plurality of third position data of a fourth coordinate system, which is a coordinate system.

일 실시예에 따른 제1 회전 변환 행렬은, 제1 좌표계와 제2 좌표계 사이의 회전 변환 행렬을 포함할 수 있다.The first rotation transformation matrix according to an embodiment may include a rotation transformation matrix between the first coordinate system and the second coordinate system.

일 실시예에 따른 제1 로봇의 자세를 변경시킨 상태는 제1 좌표계를 기준으로 제2 좌표계의 자세를 변경시킨 상태를 포함할 수 있다.According to an embodiment, the state in which the posture of the first robot is changed may include a state in which the posture of the second coordinate system is changed based on the first coordinate system.

일 실시예에 따른 위치 데이터를 산출하는 단계는 로봇 도구의 중심이 사전 결정된 지점에 반복해서 위치하도록 제2 좌표계의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써, 복수의 위치 데이터들 및 복수의 회전 변환 행렬들 중 적어도 하나를 획득하는 단계; 및 제2 회전 변환 행렬, 복수의 위치 데이터들 및 복수의 회전 변환 행렬들에 기초하여 제2 좌표계를 기준으로 제3 좌표계의 제2 위치 데이터를 산출하는 단계를 포함할 수 있다.Calculating position data according to an embodiment may include repeatedly changing the position of the second coordinate system and the posture of the second robot so that the center of the robot tool is repeatedly located at a predetermined point, thereby generating a plurality of position data and a plurality of positions. obtaining at least one of the rotation transformation matrices; and calculating second position data of a third coordinate system based on the second coordinate system based on the second rotation transformation matrix, the plurality of position data, and the plurality of rotation transformation matrices.

일 실시예에 따른 복수의 위치 데이터들은 제1 로봇의 자세를 변경시킨 상태에서 획득한 제1 좌표계를 기준으로 제2 좌표계의 복수의 제1 위치 데이터들 및 제3 좌표계를 기준으로 제4 좌표계의 복수의 제3 위치 데이터들을 포함할 수 있다.The plurality of position data according to an embodiment is a plurality of first position data of a second coordinate system based on the first coordinate system obtained in a state in which the posture of the first robot is changed, and a fourth coordinate system based on the third coordinate system. It may include a plurality of third location data.

일 실시예에 따른 복수의 회전 변환 행렬들은 제1 좌표계와 제2 좌표계 사이의 복수의 제1 회전 변환 행렬들을 포함할 수 있다.The plurality of rotation transformation matrices according to an embodiment may include a plurality of first rotation transformation matrices between the first coordinate system and the second coordinate system.

일 실시예에 따른 캘리브레이션 하는 단계는 제2 회전 변환 행렬 및 제2 위치 데이터에 기초하여 제1 로봇의 도구 좌표계를 제2 로봇의 기본 좌표계로 캘리브레이션 하는 단계를 포함할 수 있다.The calibrating step according to an embodiment may include calibrating the tool coordinate system of the first robot to the basic coordinate system of the second robot based on the second rotation transformation matrix and the second position data.

도 5는 일 실시예에 따른 변환 행렬 간의 관계식을 설명하기 위한 도면이다.5 is a diagram for explaining a relational expression between transformation matrices according to an exemplary embodiment.

도 5에서는 변환 행렬 간의 관계식, 변환 행렬 간의 관계식을 행렬식으로 표현한 식, 제1 회전 변환 행렬(510), 제1 위치 데이터(520), 제2 회전 변환 행렬(530), 제2 위치 데이터(540), 제3 회전 변환 행렬(550), 제3 위치 데이터(560), 제4 회전 변환 행렬(570) 및 제4 위치 데이터(580)가 도시되어 있다.In FIG. 5 , a relational expression between transformation matrices, an expression expressing a relational expression between transformation matrices as a matrix formula, a first rotation transformation matrix 510, first position data 520, a second rotation transformation matrix 530, and second position data 540 ), the third rotation transformation matrix 550, the third position data 560, the fourth rotation transformation matrix 570, and the fourth position data 580 are shown.

일 실시예에 따른 변환 행렬 간의 관계식은 도 1에서의 수학식 2에 대응할 수 있다.A relational expression between transformation matrices according to an embodiment may correspond to Equation 2 in FIG. 1 .

일 실시예에 따른 변환 행렬 간의 관계식을 행렬식으로 표현한 식은 도 1에서의 수학식 3에 대응할 수 있다.An equation expressing a relational equation between transformation matrices according to an embodiment as a matrix equation may correspond to Equation 3 in FIG. 1 .

일 실시예에 따른 제1 변환 행렬(410)은 제1 회전 변환 행렬()(510) 및 제1 위치 데이터()(520)를 포함할 수 있다. 일 실시예에 따른 제1 변환 행렬은 으로 표현될 수 있다.The first transformation matrix 410 according to an embodiment is a first rotation transformation matrix ( ) 510 and the first location data ( ) 520 may be included. The first transformation matrix according to an embodiment is can be expressed as

일 실시예에 따른 제2 변환 행렬(430)은 제2 회전 변환 행렬()(530) 및 제2 위치 데이터()(540)를 포함할 수 있다. 일 실시예에 따른 제2 변환 행렬은 으로 표현될 수 있다.The second transformation matrix 430 according to an embodiment is a second rotation transformation matrix ( ) 530 and the second location data ( ) 540 may be included. The second transformation matrix according to an embodiment is can be expressed as

일 실시예에 따른 제3 변환 행렬(450)은 제3 회전 변환 행렬()(550) 및 제1 위치 데이터()(560)를 포함할 수 있다. 일 실시예에 따른 제3 변환 행렬은 으로 표현될 수 있다.The third transformation matrix 450 according to an embodiment is a third rotation transformation matrix ( ) 550 and the first location data ( ) 560 may be included. The third transformation matrix according to an embodiment is can be expressed as

일 실시예에 따른 제4 변환 행렬(470)은 제4 회전 변환 행렬()(570) 및 제4 위치 데이터()(580)를 포함할 수 있다. 일 실시예에 따른 제4 변환 행렬은 으로 표현될 수 있다.The fourth transformation matrix 470 according to an embodiment is a fourth rotation transformation matrix ( ) 570 and the fourth location data ( ) 580 may be included. A fourth transformation matrix according to an embodiment is can be expressed as

Claims (11)

제1 로봇의 자세(orientation)를 고정시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심(Tool Center Point)이 위치하도록 제1 로봇의 위치(position) 및 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계와 제2 로봇 기본 좌표계 사이의 회전 변환 행렬(rotation transformation matrix)을 산출하는 단계;
상기 제1 로봇의 자세를 변경시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 상기 제1 로봇의 위치 및 상기 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계를 기준으로 제2 로봇 기본 좌표계의 위치 데이터를 산출하는 단계; 및
상기 회전 변환 행렬 및 상기 위치 데이터에 기초하여 상기 제1 로봇의 도구 좌표계와 상기 제2 로봇의 기본 좌표계 사이의 변환 행렬을 결정하는 단계;
를 포함하는,
로봇 캘리브레이션 방법.
While the orientation of the first robot is fixed, the position of the first robot and the posture of the second robot are repeatedly changed so that the tool center point of the robot is repeatedly located at a predetermined point. Calculating a rotation transformation matrix between the first robot tool coordinate system and the second robot basic coordinate system based on data obtained by doing so;
In a state where the posture of the first robot is changed, the position of the first robot and the posture of the second robot are repeatedly changed so that the center of the robot tool is repeatedly located at a predetermined point. Calculating position data of a second robot basic coordinate system based on a first robot tool coordinate system; and
determining a transformation matrix between a tool coordinate system of the first robot and a basic coordinate system of the second robot based on the rotation transformation matrix and the position data;
including,
Robot calibration method.
제1항에 있어서,
상기 제1 로봇의 자세를 고정시킨 상태는
상기 제1 로봇의 기본 좌표계(base coordinate system)인 제1 좌표계를 기준으로 상기 제1 로봇의 도구 좌표계(tool coordinate system)인 제2 좌표계의 자세를 고정시킨 상태를 포함하는,
로봇 캘리브레이션 방법.
According to claim 1,
The state in which the posture of the first robot is fixed is
Including a state in which the posture of the second coordinate system, which is the tool coordinate system of the first robot, is fixed based on the first coordinate system, which is the base coordinate system of the first robot,
Robot calibration method.
제1항에 있어서,
상기 회전 변환 행렬을 산출하는 단계는
상기 로봇 도구의 중심이 사전 결정된 지점에 반복해서 위치하도록 제2 좌표계의 위치 및 상기 제2 로봇의 자세를 반복하여 변경시킴으로써, 복수의 위치 데이터들 및 복수의 회전 변환 행렬들 중 적어도 하나를 획득하는 단계; 및
제1 회전 변환 행렬, 상기 복수의 위치 데이터들 및 상기 복수의 회전 변환 행렬들 중 적어도 하나에 기초하여 상기 제2 좌표계와 상기 제2 로봇의 기본 좌표계인 제3 좌표계 사이의 제2 회전 변환 행렬을 산출하는 단계
를 포함하는,
로봇 캘리브레이션 방법.
According to claim 1,
Calculating the rotation transformation matrix
Obtaining at least one of a plurality of position data and a plurality of rotation transformation matrices by repeatedly changing the position of the second coordinate system and the posture of the second robot so that the center of the robot tool is repeatedly located at a predetermined point step; and
A second rotation transformation matrix between the second coordinate system and the third coordinate system that is the basic coordinate system of the second robot based on at least one of the first rotation transformation matrix, the plurality of position data, and the plurality of rotation transformation matrices steps to calculate
including,
Robot calibration method.
제3항에 있어서,
상기 복수의 위치 데이터들은
상기 제1 로봇의 자세를 고정시킨 상태에서 획득한 제1 좌표계를 기준으로 상기 제2 좌표계의 복수의 제1 위치 데이터들 및 상기 제3 좌표계를 기준으로 제2 로봇 도구 좌표계인 제4 좌표계의 복수의 제3 위치 데이터들을 포함하는,
로봇 캘리브레이션 방법.
According to claim 3,
The plurality of location data is
A plurality of first position data of the second coordinate system based on the first coordinate system obtained in a state in which the posture of the first robot is fixed, and a plurality of fourth coordinate systems that are the second robot tool coordinate system based on the third coordinate system Including the third location data of,
Robot calibration method.
제3항에 있어서,
상기 제1 회전 변환 행렬은,
제1 좌표계와 상기 제2 좌표계 사이의 회전 변환 행렬을 포함하는,
로봇 캘리브레이션 방법.
According to claim 3,
The first rotation transformation matrix,
Including a rotation transformation matrix between the first coordinate system and the second coordinate system,
Robot calibration method.
제1항에 있어서,
상기 제1 로봇의 자세를 변경시킨 상태는
제1 좌표계를 기준으로 제2 좌표계의 자세를 변경시킨 상태를 포함하는,
로봇 캘리브레이션 방법.
According to claim 1,
The state in which the posture of the first robot is changed is
Including a state in which the posture of the second coordinate system is changed based on the first coordinate system,
Robot calibration method.
제1항에 있어서,
상기 위치 데이터를 산출하는 단계는
상기 로봇 도구의 중심이 상기 사전 결정된 지점에 반복해서 위치하도록 제2 좌표계의 위치 및 상기 제2 로봇의 자세를 반복하여 변경시킴으로써, 복수의 위치 데이터들 및 복수의 회전 변환 행렬들 중 적어도 하나를 획득하는 단계; 및
제2 회전 변환 행렬, 상기 복수의 위치 데이터들 및 상기 복수의 회전 변환 행렬들에 기초하여 상기 제2 좌표계를 기준으로 제3 좌표계의 제2 위치 데이터를 산출하는 단계;
를 포함하는,
로봇 캘리브레이션 방법.
According to claim 1,
The step of calculating the location data is
At least one of a plurality of position data and a plurality of rotation transformation matrices is obtained by repeatedly changing the position of the second coordinate system and the posture of the second robot so that the center of the robot tool is repeatedly located at the predetermined point. doing; and
Calculating second position data of a third coordinate system based on the second coordinate system based on a second rotation transformation matrix, the plurality of position data, and the plurality of rotation transformation matrices;
including,
Robot calibration method.
제7항에 있어서,
상기 복수의 위치 데이터들은
상기 제1 로봇의 자세를 변경시킨 상태에서 획득한 제1 좌표계를 기준으로 상기 제2 좌표계의 복수의 제1 위치 데이터들 및 제3 좌표계를 기준으로 제4 좌표계의 복수의 제3 위치 데이터들을 포함하는,
로봇 캘리브레이션 방법.
According to claim 7,
The plurality of location data is
Includes a plurality of first position data of the second coordinate system based on the first coordinate system obtained in a state in which the posture of the first robot is changed, and a plurality of third position data of a fourth coordinate system based on the third coordinate system doing,
Robot calibration method.
제7항에 있어서,
상기 복수의 회전 변환 행렬들은
제1 좌표계와 상기 제2 좌표계 사이의 복수의 제1 회전 변환 행렬들을 포함하는,
로봇 캘리브레이션 방법.
According to claim 7,
The plurality of rotation transformation matrices are
Including a plurality of first rotation transformation matrices between the first coordinate system and the second coordinate system,
Robot calibration method.
제1항에 있어서,
상기 변환 행렬을 결정하는 단계는
제2 회전 변환 행렬 및 제2 위치 데이터에 기초하여 상기 제1 로봇의 도구 좌표계와 상기 제2 로봇의 기본 좌표계 사이의 변환 행렬을 결정하는 단계
를 포함하는,
로봇 캘리브레이션 방법.
According to claim 1,
Determining the transformation matrix
Determining a transformation matrix between a tool coordinate system of the first robot and a basic coordinate system of the second robot based on a second rotation transformation matrix and second position data
including,
Robot calibration method.
로봇 캘리브레이션을 수행하기 위한 제어 장치로서, 상기 제어 장치는
제1 로봇의 자세를 고정시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 제1 로봇의 위치 및 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계와 제2 로봇 기본 좌표계 사이의 회전 변환 행렬을 산출하고,
상기 제1 로봇의 자세를 변경시킨 상태에서, 사전 결정된 지점에 반복해서 로봇 도구의 중심이 위치하도록 상기 제1 로봇의 위치 및 상기 제2 로봇의 자세를 반복하여 변경시킴으로써 획득한 데이터를 기초로 제1 로봇 도구 좌표계를 기준으로 제2 로봇 기본 좌표계의 위치 데이터를 산출하고, 그리고
상기 회전 변환 행렬 및 상기 위치 데이터에 기초하여 상기 제1 로봇의 도구 좌표계와 상기 제2 로봇의 기본 좌표계 사이의 변환 행렬을 결정하는,
로봇 제어 장치.


A control device for performing robot calibration, the control device comprising:
In a state where the posture of the first robot is fixed, the first robot tool based on data obtained by repeatedly changing the position of the first robot and the posture of the second robot so that the center of the robot tool is repeatedly located at a predetermined point. Calculating a rotation transformation matrix between the coordinate system and the second robot basic coordinate system;
In a state where the posture of the first robot is changed, the position of the first robot and the posture of the second robot are repeatedly changed so that the center of the robot tool is repeatedly located at a predetermined point. 1 Calculate the positional data of the second robot basic coordinate system based on the robot tool coordinate system, and
Determining a transformation matrix between the tool coordinate system of the first robot and the basic coordinate system of the second robot based on the rotation transformation matrix and the position data,
robot control device.


KR1020220013517A 2022-01-28 2022-01-28 Device and method for robot calibration KR20230116502A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220013517A KR20230116502A (en) 2022-01-28 2022-01-28 Device and method for robot calibration

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220013517A KR20230116502A (en) 2022-01-28 2022-01-28 Device and method for robot calibration

Publications (1)

Publication Number Publication Date
KR20230116502A true KR20230116502A (en) 2023-08-04

Family

ID=87568738

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220013517A KR20230116502A (en) 2022-01-28 2022-01-28 Device and method for robot calibration

Country Status (1)

Country Link
KR (1) KR20230116502A (en)

Similar Documents

Publication Publication Date Title
KR102280663B1 (en) Calibration method for robot using vision technology
US10279479B2 (en) Robot calibrating apparatus and robot calibrating method, and robot apparatus and method of controlling robot apparatus
US10695910B2 (en) Automatic calibration method for robot system
JP4267005B2 (en) Measuring apparatus and calibration method
JP6468741B2 (en) Robot system and robot system calibration method
JP5670416B2 (en) Robot system display device
JP6108860B2 (en) Robot system and control method of robot system
JP4171488B2 (en) Offline programming device
WO2016208467A1 (en) Calibration device and robot system using same
US20160279800A1 (en) Robot, robot control device, and robotic system
JP5618770B2 (en) Robot calibration apparatus and calibration method
CN111203861B (en) Calibration method and calibration system for robot tool coordinate system
US8761936B2 (en) Teaching line correcting apparatus, teaching line correcting method, and program thereof
US6823604B2 (en) Method for adjusting assembly jig
JP6568172B2 (en) ROBOT CONTROL DEVICE, MEASUREMENT SYSTEM, AND CALIBRATION METHOD FOR CALIBRATION
KR102561103B1 (en) Robot calibration system and calibration method thereof
CN109311163B (en) Method for correcting motion control command of robot and related equipment thereof
CN113799114A (en) Origin correction method of robot arm
JP6912529B2 (en) How to correct the visual guidance robot arm
US20230191611A1 (en) Robot system
KR20230116502A (en) Device and method for robot calibration
JP2005157784A (en) Method for calibrating moving mechanism using compact artifact
US20230031819A1 (en) Positioning method and positioning device
KR100336459B1 (en) Method for off-line control of robot
KR100637378B1 (en) Robot calibration system using perceptron sensor