KR102591942B1 - A method and apparatus for controlling a robot using a model for stiffness and a model for cutting force - Google Patents

A method and apparatus for controlling a robot using a model for stiffness and a model for cutting force Download PDF

Info

Publication number
KR102591942B1
KR102591942B1 KR1020210128490A KR20210128490A KR102591942B1 KR 102591942 B1 KR102591942 B1 KR 102591942B1 KR 1020210128490 A KR1020210128490 A KR 1020210128490A KR 20210128490 A KR20210128490 A KR 20210128490A KR 102591942 B1 KR102591942 B1 KR 102591942B1
Authority
KR
South Korea
Prior art keywords
tool
robot
reference position
model
cutting force
Prior art date
Application number
KR1020210128490A
Other languages
Korean (ko)
Other versions
KR20230046333A (en
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 PCT/KR2021/013384 priority Critical patent/WO2023054751A1/en
Priority to KR1020210128490A priority patent/KR102591942B1/en
Publication of KR20230046333A publication Critical patent/KR20230046333A/en
Application granted granted Critical
Publication of KR102591942B1 publication Critical patent/KR102591942B1/en

Links

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
    • B25J11/00Manipulators not otherwise provided for
    • B25J11/005Manipulators for mechanical processing tasks
    • B25J11/0055Cutting
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1684Tracking a line or surface by means of sensors

Abstract

본 발명의 일 실시 예는 로봇을 이용한 가공 공정에서, 가공대상에 대한 가공경로의 오차 보정이 용이하게 수행되도록 로봇을 제어하는 기술을 제공한다. 본 발명의 실시 예에 따른 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법은, 복수 개의 링크와 복수 개의 관절을 구비하여 구동하는 로봇, 로봇의 말단과 결합하고 공구를 구비하여 가공대상에 대한 가공을 수행하는 가공부 및, 공구가 가공대상에 대한 작업 시, 로봇의 자세를 제어하는 제어부를 마련하는 제1단계; 상기 로봇의 자세에 따라 가변하는 상기 복수 개의 관절 각각에 대한 강성 값인 강성데이터와 상기 공구에 작용되는 힘인 절삭력에 대한 정보를 이용함으로써, 상기 공구에 대해 연산된 가공오차인 컴플라이언스오차를 연산하여 도출하는 제2단계; 가공대상에 따라 사전에 설정된 상기 공구의 가공경로인 참조가공경로 상 상기 공구의 위치 및 방향인 참조위치 및 참조방향, 그리고, 상기 컴플라이언스오차를 이용하여, 상기 공구의 실시간 위치와 방향인 실제위치와 실제방향을 측정하는 제3단계; 가공대상에 따라 사전에 설정된 공구의 가공경로인 참조가공경로를 복수 개의 직선으로 분할하는 제4단계; 복수 개의 직선 중 실제위치에 가장 근접한 참조위치인 최근접참조위치를 통과하는 2개의 직선 각각과 실제위치를 수직 연결한 2개의 수직연결선을 이용하여, 공구의 위치 오차를 보정한 위치인 윤곽기준위치를 도출하는 제5단계; 최근접참조위치에서의 참조방향과 실제방향을 이용하여 공구의 방향 오차를 보정한 방향인 윤곽기준방향을 도출하는 제6단계; 및 윤곽기준위치와 윤곽기준방향을 이용하여 로봇을 제어함으로써 공구의 위치와 방향을 제어하는 제7단계;를 포함한다.One embodiment of the present invention provides a technology for controlling a robot so that error correction of a machining path for a machining object can be easily performed in a machining process using a robot. A robot control method using a rigidity model and a cutting force model according to an embodiment of the present invention performs processing on a processing object by combining a robot driven with a plurality of links and a plurality of joints, the end of the robot, and equipped with a tool. A first step of providing a processing unit that performs processing and a control unit that controls the posture of the robot when the tool works on the processing object; By using stiffness data, which is the stiffness value for each of the plurality of joints that varies depending on the posture of the robot, and information about cutting force, which is the force applied to the tool, the compliance error, which is the machining error calculated for the tool, is calculated and derived. Step 2; The reference position and reference direction, which are the position and direction of the tool, on the reference machining path, which is the machining path of the tool set in advance according to the machining target, and the actual position and direction, which are the real-time position and direction of the tool, using the compliance error. A third step of measuring the actual direction; A fourth step of dividing the reference machining path, which is a preset tool machining path according to the machining target, into a plurality of straight lines; The contour reference position is a position where the position error of the tool is corrected using two straight lines passing through the nearest reference position, which is the reference position closest to the actual position among a plurality of straight lines, and two vertical connecting lines that vertically connect the actual position. The fifth step of deriving; A sixth step of deriving a contour reference direction, which is a direction in which the direction error of the tool is corrected, using the reference direction and the actual direction at the nearest reference position; and a seventh step of controlling the position and direction of the tool by controlling the robot using the outline reference position and outline reference direction.

Description

강성 모델과 절삭력 모델을 이용한 로봇 제어 방법 및 장치 {A METHOD AND APPARATUS FOR CONTROLLING A ROBOT USING A MODEL FOR STIFFNESS AND A MODEL FOR CUTTING FORCE}Robot control method and device using stiffness model and cutting force model {A METHOD AND APPARATUS FOR CONTROLLING A ROBOT USING A MODEL FOR STIFFNESS AND A MODEL FOR CUTTING FORCE}

본 발명은 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법 및 장치에 관한 것으로, 더욱 상세하게는, 로봇을 이용한 가공 공정에서, 가공대상에 대한 가공경로의 오차 보정이 용이하게 수행되도록 로봇을 제어하는 기술에 관한 것이다.The present invention relates to a robot control method and device using a rigidity model and a cutting force model. More specifically, in a machining process using a robot, a technology for controlling a robot so that error correction of the machining path for the machining object can be easily performed. It's about.

최근에는 복수 개의 로봇을 이용한 제조 시스템이 증가하고 있으며, 자동차와 항공기 등과 같은 제품의 생산에 있어서, 로봇을 이용한 자동 제조 효율의 향상 및 가공 정밀도의 증가에 대한 요구가 지속적으로 증가하고 있다.Recently, manufacturing systems using multiple robots have been increasing, and in the production of products such as automobiles and aircraft, the demand for improved automatic manufacturing efficiency and increased processing precision using robots is continuously increasing.

로봇을 이용하여 가공을 수행하는 경우, 로봇의 강성, 기구학 요인 등에 의해 가공오차가 발생하는데, 종래기술의 로봇 제어 장치에서는 상기와 같은 가공오차에 대한 정밀한 측정이 용이하지 않았으며, 이에 따라, 종래기술에서는 가공오차에 대한 정밀도를 향상시키기 위하여 복수 개의 센서를 이용하여 로봇의 가공에 대한 피드백을 수집하고 이와 같은 정보를 분석함으로써 로봇의 가공오차를 감소시키는 방식이 이용되었으나, 이와 같은 방식은 사용자가 개발한 제어 알고리즘을 적용할 수 있는 일부 개방형 로봇 제어기에만 적용할 수 있다는 문제점이 있다.When performing machining using a robot, machining errors occur due to the robot's rigidity, kinematics factors, etc., but it was not easy to precisely measure the machining errors as described above in the robot control device of the prior art. Accordingly, In technology, in order to improve the precision of processing errors, a method has been used to collect feedback on the robot's processing using multiple sensors and analyze this information to reduce the robot's processing errors. However, this method allows the user to There is a problem in that the developed control algorithm can only be applied to some open robot controllers.

대한민국 공개특허 제10-2015-0070370호(발명의 명칭: 산업용 로봇의 인라인 교정을 위한 방법, 이러한 방법을 수행하기 위한 교정 시스템, 및 이러한 교정 시스템을 포함하는 산업용 로봇)에서는, 적어도 세 개의 광선들이 상기 로봇 팔(3)의 상기 말단(6)에 견고하게 연결된 적어도 하나의 광원(7)을 써서 생성되고, 상기 센서에 영향을 주는 광선의 위치를 2-차원 평면 내에 결정하기 위해 적응되는 적어도 하나의 광학 위치센서(12)는, 상기 로봇 팔(3)의 상기 말단(6)의 미리 정의된 교정 장소에서 상기 적어도 하나의 광원(7)에 의해 생성된 적어도 몇몇의 상기 광선들이 상기 센서(12) 또는 상기 센서들(12) 중 적어도 하나에 영향을 주도록 상기 로봇의 베이스부(2)에 대해 고정된 장소에 위치되는 사항이 개시되어 있다.In Korean Patent Publication No. 10-2015-0070370 (title of the invention: method for in-line calibration of an industrial robot, calibration system for performing such method, and industrial robot including such calibration system), at least three light rays At least one light source (7) produced using at least one light source (7) rigidly connected to the end (6) of the robotic arm (3) and adapted to determine the position of the light beam affecting the sensor in a two-dimensional plane. The optical position sensor 12 is configured to detect at least some of the rays generated by the at least one light source 7 at a predefined calibration location at the end 6 of the robotic arm 3. ) or located at a fixed location relative to the base portion 2 of the robot to affect at least one of the sensors 12 is disclosed.

대한민국 공개특허 제10-2015-0070370호Republic of Korea Patent Publication No. 10-2015-0070370

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 로봇을 이용한 가공 공정에서, 가공대상에 대한 가공경로의 오차 보정이 용이하게 수행되도록 로봇을 제어하는 것이다.The purpose of the present invention to solve the above problems is to control the robot so that error correction of the machining path for the machining object can be easily performed in a machining process using a robot.

그리고, 본 발명의 목적은, 추가적인 별도의 장치나 복잡한 연산을 최소화하면서도 로봇에 대한 상기와 같은 제어를 수행할 수 있도록 하는 것이다.And, the purpose of the present invention is to enable the above-mentioned control of the robot to be performed while minimizing additional separate devices or complex calculations.

본 발명이 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problem to be achieved by the present invention is not limited to the technical problem mentioned above, and other technical problems not mentioned can be clearly understood by those skilled in the art from the description below. There will be.

상기와 같은 목적을 달성하기 위한 본 발명의 구성은, 복수 개의 링크와 복수 개의 관절을 구비하여 구동하는 로봇, 상기 로봇의 말단과 결합하고 공구를 구비하여 가공대상에 대한 가공을 수행하는 가공부 및, 상기 공구가 상기 가공대상에 대한 작업 시, 상기 로봇의 자세를 제어하는 제어부를 마련하는 제1단계; 상기 로봇의 자세에 따라 가변하는 상기 복수 개의 관절 각각에 대한 강성 값인 강성데이터와 상기 공구에 작용되는 힘인 절삭력에 대한 정보를 이용함으로써, 상기 공구에 대해 연산된 가공오차인 컴플라이언스오차를 연산하여 도출하는 제2단계; 가공대상에 따라 사전에 설정된 상기 공구의 가공경로인 참조가공경로 상 상기 공구의 위치 및 방향인 참조위치 및 참조방향, 그리고, 상기 컴플라이언스오차를 이용하여, 상기 공구의 실시간 위치와 방향인 실제위치와 실제방향을 측정하는 제3단계; 가공대상에 따라 사전에 설정된 상기 공구의 가공경로인 참조가공경로를 복수 개의 직선으로 분할하는 제4단계; 상기 복수 개의 직선 중 상기 실제위치에 가장 근접한 참조위치인 최근접참조위치를 통과하는 2개의 직선 각각과 상기 실제위치를 수직 연결한 2개의 수직연결선을 이용하여, 상기 공구의 위치 오차를 보정한 위치인 윤곽기준위치를 도출하는 제5단계; 상기 최근접참조위치에서의 상기 참조방향과 상기 실제방향을 이용하여 상기 공구의 방향 오차를 보정한 방향인 윤곽기준방향을 도출하는 제6단계; 및 상기 윤곽기준위치와 상기 윤곽기준방향을 이용하여 상기 로봇을 제어함으로써 상기 공구의 위치와 방향을 제어하는 제7단계;를 포함한다.The configuration of the present invention for achieving the above object includes a robot that is driven by having a plurality of links and a plurality of joints, a processing unit coupled to the end of the robot and equipped with a tool to perform processing on the processing object, and , a first step of providing a control unit that controls the posture of the robot when the tool works on the processing object; By using stiffness data, which is the stiffness value for each of the plurality of joints that varies depending on the posture of the robot, and information about cutting force, which is the force applied to the tool, the compliance error, which is the machining error calculated for the tool, is calculated and derived. Step 2; The reference position and reference direction, which are the position and direction of the tool, on the reference machining path, which is the machining path of the tool set in advance according to the machining target, and the actual position and direction, which are the real-time position and direction of the tool, using the compliance error. A third step of measuring the actual direction; A fourth step of dividing the reference machining path, which is the machining path of the tool set in advance according to the machining target, into a plurality of straight lines; A position where the position error of the tool is corrected using two straight lines passing through the nearest reference position, which is the reference position closest to the actual position among the plurality of straight lines, and two vertical connecting lines vertically connecting the actual position. The fifth step of deriving the outline reference position; A sixth step of deriving a contour reference direction, which is a direction in which a direction error of the tool is corrected, using the reference direction and the actual direction at the closest reference position; and a seventh step of controlling the position and direction of the tool by controlling the robot using the outline reference position and the outline reference direction.

본 발명의 실시 예에 있어서, 상기 제2단계에서, 상기 컴플라이언스오차(Δx)는 하기의 수학식에 의해 도출되며, Δx는 컴플라이언스오차이고, Cx는 데카르트 컴플라이언스 행렬이며, Ф는 절삭력이고, Cθ는 상기 로봇의 관절에 대한 컴플라이언스 행렬이며, T는 전치행렬일 수 있다.In an embodiment of the present invention, in the second step, the compliance error (Δx) is derived by the following equation, where Δx is the compliance error, Cx is the Cartesian compliance matrix, Ф is the cutting force, and C θ is a compliance matrix for the joints of the robot, and T may be a transpose matrix.

본 발명의 실시 예에 있어서, 상기 제4단계에서, 상기 복수 개의 직선은 상기 참조가공경로가 보간기(interpolator)에 의해 분할되어 형성될 수 있다.In an embodiment of the present invention, in the fourth step, the plurality of straight lines may be formed by dividing the reference processing path by an interpolator.

본 발명의 실시 예에 있어서, 상기 제5단계에서, 상기 2개의 직선은, 상기 최근접참조위치에 인접한 2개의 참조위치 각각과 상기 최근접참조위치를 연결하여 형성되는 제1연결직선 및 제2연결직선을 포함할 수 있다.In an embodiment of the present invention, in the fifth step, the two straight lines are a first connecting straight line and a second straight line formed by connecting the closest reference position with each of two reference positions adjacent to the closest reference position. May include connecting straight lines.

본 발명의 실시 예에 있어서, 상기 실제위치로부터 상기 제1연결직선으로 연결되는 제1수직연결선과 상기 제1연결직선의 교점인 제1투영점 및, 상기 실제위치로부터 상기 제2연결직선으로 연결되는 제2수직연결선과 상기 제2연결직선의 교점인 제2투영점이 설정될 수 있다.In an embodiment of the present invention, a first projection point that is an intersection of a first vertical connection line connected from the actual position to the first connection straight line and the first connection straight line, and a first projection point connected from the actual position to the second connection straight line. A second projection point that is the intersection of the second vertical connection line and the second connection straight line may be set.

본 발명의 실시 예에 있어서, 상기 제1연결직선과 상기 제2연결직선 각각에 대한 상기 제1투영점과 상기 제2투영점 각각의 위치에 따라 상기 윤곽기준위치와 상기 윤곽기준방향이 결정될 수 있다.In an embodiment of the present invention, the outline reference position and the outline reference direction may be determined according to the positions of each of the first projection point and the second projection point with respect to each of the first connection straight line and the second connection straight line. there is.

본 발명의 실시 예에 있어서, 상기 제1투영점이 상기 제1연결직선의 연장선 상에 위치하고 상기 제2투영점이 상기 제2연결직선의 연장선 상에 위치하는 경우, 상기 최근접참조위치가 상기 윤곽기준위치로 설정될 수 있다.In an embodiment of the present invention, when the first projection point is located on an extension of the first connection straight line and the second projection point is located on an extension of the second connection straight line, the closest reference position is the contour reference. Can be set to location.

본 발명의 실시 예에 있어서, 상기 제6단계에서, 상기 윤곽기준방향은, 상기 최근접참조위치에서의 참조방향일 수 있다.In an embodiment of the present invention, in the sixth step, the outline reference direction may be a reference direction at the nearest reference position.

본 발명의 실시 예에 있어서, 상기 제1투영점이 상기 제1연결직선의 연장선 상에 위치하고 상기 제2투영점이 상기 제2연결직선 상에 위치하는 경우, 상기 제2투영점이 상기 윤곽기준위치로 설정될 수 있다.In an embodiment of the present invention, when the first projection point is located on an extension of the first connection straight line and the second projection point is located on the second connection straight line, the second projection point is set as the outline reference position. It can be.

본 발명의 실시 예에 있어서, 상기 제1투영점이 상기 제1연결직선 상에 위치하고 상기 제2투영점이 상기 제2연결직선의 연장선 상에 위치하는 경우, 상기 제1투영점이 상기 윤곽기준위치로 설정될 수 있다.In an embodiment of the present invention, when the first projection point is located on the first connection straight line and the second projection point is located on an extension of the second connection straight line, the first projection point is set as the outline reference position. It can be.

본 발명의 실시 예에 있어서, 상기 제1투영점이 상기 제1연결직선 상에 위치하고 상기 제2투영점이 상기 제2연결직선 상에 위치하는 경우, 상기 제1투영점과 상기 제2투영점 중 상기 실제위치에 더 근접한 투영점이 상기 윤곽기준위치로 설정될 수 있다.In an embodiment of the present invention, when the first projection point is located on the first connection straight line and the second projection point is located on the second connection straight line, among the first projection point and the second projection point, the A projection point closer to the actual position may be set as the outline reference position.

본 발명의 실시 예에 있어서, 상기 제6단계에서, 상기 윤곽기준방향은, 상기 최근접참조위치에서의 참조방향과 상기 최근접참조위치에 인접한 참조위치에서의 참조방향을 이용한 쿼터니언(Quternion) 구면선형보간(SLERP) 연산으로 획득될 수 있다.In an embodiment of the present invention, in the sixth step, the outline reference direction is a quaternion sphere using the reference direction at the nearest reference position and the reference direction at the reference position adjacent to the nearest reference position. It can be obtained by linear interpolation (SLERP) operation.

본 발명의 실시 예에 있어서, 상기 제6단계에서, 상기 윤곽기준방향은, 상기 윤곽기준위치에서 상기 공구의 길이 방향을 따라 형성되는 축의 벡터 방향일 수 있다.In an embodiment of the present invention, in the sixth step, the outline reference direction may be a vector direction of an axis formed along the longitudinal direction of the tool at the outline reference position.

상기와 같은 목적을 달성하기 위한 본 발명의 구성은, 상기 로봇에 결합되고 상기 공구를 구비하는 가공부; 및 상기 강성데이터와 상기 절삭력에 대한 정보를 이용하여, 상기 공구의 상기 컴플라이언스오차를 도출하고, 가공대상에 따라 사전에 설정된 상기 공구의 가공경로인 참조가공경로 상 상기 공구의 위치와 방향인 상기 참조위치와 상기 참조방향을 설정함으로써, 상기 컴플라이언스오차 및 상기 참조위치와 상기 참조방향을 이용하여 상기 실제위치와 상기 실제방향에 대한 정보를 생성하고, 상기 윤곽기준위치와 상기 윤곽기준방향을 도출하여, 상기 로봇으로 제어신호를 전달함으로써 상기 공구의 위치와 방향을 제어하는 제어부를 포함한다.The configuration of the present invention for achieving the above object includes a processing unit coupled to the robot and provided with the tool; And using the information on the rigidity data and the cutting force, the compliance error of the tool is derived, and the reference is the position and direction of the tool on the reference machining path, which is a machining path of the tool preset according to the machining target. By setting the position and the reference direction, information about the actual position and the actual direction is generated using the compliance error and the reference position and the reference direction, and the outline reference position and the outline reference direction are derived, It includes a control unit that controls the position and direction of the tool by transmitting a control signal to the robot.

상기와 같은 구성에 따른 본 발명의 효과는, 현재 공구의 위치와 사전에 설정된 참조위치 간 차이를 이용하여 가공대상에 대한 가공경로의 오차 보정을 수행하므로, 오차 보정의 성능을 향상시킬 수 있다는 것이다.The effect of the present invention according to the above configuration is that error correction of the machining path for the machining object is performed using the difference between the current position of the tool and the preset reference position, thereby improving error correction performance. .

그리고, 본 발명의 효과는, 추가적인 별도의 장치나 복잡한 연산을 최소화하면서도 로봇에 대한 오차 보정 제어를 수행할 수 있어, 로봇을 이용한 가공공정에서의 효율을 현저히 향상시킬 수 있다는 것이다.Additionally, the effect of the present invention is that error correction control for the robot can be performed while minimizing additional separate devices or complex calculations, thereby significantly improving the efficiency of the machining process using the robot.

본 발명의 효과는 상기한 효과로 한정되는 것은 아니며, 본 발명의 상세한 설명 또는 특허청구범위에 기재된 발명의 구성으로부터 추론 가능한 모든 효과를 포함하는 것으로 이해되어야 한다.The effects of the present invention are not limited to the effects described above, and should be understood to include all effects that can be inferred from the configuration of the invention described in the detailed description or claims of the present invention.

도 1은 본 발명의 일 실시 예에 따른 가공 장치에 대한 개략도이다.
도 2는 본 발명의 일 실시 예에 따른 가공 장치의 일부에 대한 구성도이다.
도 3은 본 발명의 일 실시 예에 따른 공구의 위치 보정에 대한 모식도이다.
도 4는 본 발명의 일 실시 예에 따른 공구의 위치 보정에 대한 그래프이다.
도 5는 본 발명의 일 실시 예에 따른 윤곽기준위치를 측정하기 위한 각 케이스의 설명을 위한 이미지이다.
도 6은 본 발명의 일 실시 예에 따른 방향윤곽오차의 측정에 대한 이미지이다.
1 is a schematic diagram of a processing device according to an embodiment of the present invention.
Figure 2 is a configuration diagram of a part of a processing device according to an embodiment of the present invention.
Figure 3 is a schematic diagram of position correction of a tool according to an embodiment of the present invention.
Figure 4 is a graph of position correction of a tool according to an embodiment of the present invention.
Figure 5 is an image for explanation of each case for measuring the outline reference position according to an embodiment of the present invention.
Figure 6 is an image of measurement of directional contour error according to an embodiment of the present invention.

이하에서는 첨부한 도면을 참조하여 본 발명을 설명하기로 한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며, 따라서 여기에서 설명하는 실시 예로 한정되는 것은 아니다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, the present invention will be described with reference to the attached drawings. However, the present invention may be implemented in various different forms and, therefore, is not limited to the embodiments described herein. In order to clearly explain the present invention in the drawings, parts that are not related to the description are omitted, and similar parts are given similar reference numerals throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결(접속, 접촉, 결합)"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 부재를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 구비할 수 있다는 것을 의미한다.Throughout the specification, when a part is said to be "connected (connected, contacted, combined)" with another part, this means not only "directly connected" but also "indirectly connected" with another member in between. "Includes cases where it is. Additionally, when a part is said to “include” a certain component, this does not mean that other components are excluded, but that other components can be added, unless specifically stated to the contrary.

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

이하 첨부된 도면을 참고하여 본 발명에 대하여 상세히 설명하기로 한다.Hereinafter, the present invention will be described in detail with reference to the attached drawings.

도 1은 본 발명의 일 실시 예에 따른 가공 장치에 대한 개략도이고, 도 2는 본 발명의 일 실시 예에 따른 가공 장치의 일부에 대한 구성도이다. 또한, 도 3은 본 발명의 일 실시 예에 따른 공구(111)의 위치 보정에 대한 모식도이고, 도 4는 본 발명의 일 실시 예에 따른 공구(111)의 위치 보정에 대한 그래프이다.Figure 1 is a schematic diagram of a processing device according to an embodiment of the present invention, and Figure 2 is a configuration diagram of a part of the processing device according to an embodiment of the present invention. Additionally, FIG. 3 is a schematic diagram of position correction of the tool 111 according to an embodiment of the present invention, and FIG. 4 is a graph of position correction of the tool 111 according to an embodiment of the present invention.

그리고, 도 5는 본 발명의 일 실시 예에 따른 윤곽기준위치를 측정하기 위한 각 케이스의 설명을 위한 이미지이며, 도 6은 본 발명의 일 실시 예에 따른 방향윤곽오차의 측정에 대한 이미지이다.And, Figure 5 is an image for explaining each case for measuring the outline reference position according to an embodiment of the present invention, and Figure 6 is an image for measuring the directional outline error according to an embodiment of the present invention.

먼저, 제1단계에서, 복수 개의 링크와 복수 개의 관절을 구비하여 구동하는 로봇(120), 로봇(120)의 말단과 결합하고 공구(111)를 구비하여 가공대상(10)에 대한 가공을 수행하는 가공부(110) 및, 공구(111)가 가공대상(10)에 대한 작업 시, 로봇(120)의 자세를 제어하는 제어부(130)를 마련할 수 있다.First, in the first step, the robot 120, which is driven by having a plurality of links and a plurality of joints, is coupled to the end of the robot 120 and is provided with a tool 111 to perform processing on the processing object 10. A processing unit 110 that performs processing and a control unit 130 that controls the posture of the robot 120 when the tool 111 works on the processing object 10 may be provided.

그리고, 제어부(130)는, 강성데이터와 절삭력에 대한 정보를 이용하여, 공구의 컴플라이언스오차(Δx)를 도출하고, 가공대상(10)에 따라 사전에 설정된 공구(111)의 가공경로인 참조가공경로 상 공구(111)의 위치와 방향인 참조위치와 참조방향을 설정함으로써, 컴플라이언스오차(Δx) 및 참조위치와 참조방향을 이용하여 실제위치(Pact)와 실제방향(Oact)에 대한 정보를 생성하고, 윤곽기준위치(Pc)와 윤곽기준방향(Oc)을 도출하여, 로봇(120)으로 제어신호를 전달함으로써 상기 공구의 위치와 방향을 제어할 수 있다.And, the control unit 130 uses the information on the rigidity data and cutting force to derive the compliance error (Δx) of the tool and performs the reference machining, which is the machining path of the tool 111 set in advance according to the machining object 10. By setting the reference position and direction, which are the position and direction of the tool 111 on the path, information about the actual position (P act ) and actual direction (O act ) is obtained using the compliance error (Δx) and the reference position and reference direction. By generating a contour reference position (Pc) and a contour reference direction (Oc) and transmitting a control signal to the robot 120, the position and direction of the tool can be controlled.

이와 같은 본 발명의 로봇(120) 제어 장치를 이용한 본 발명의 로봇(120) 제어 방법에 대해서, 하기의 각 단계에서 더욱 상세히 설명하기로 한다.The method of controlling the robot 120 of the present invention using the robot 120 control device of the present invention will be described in more detail in each step below.

상기와 같은 제1단계 이후 제2단계에서, 로봇(120)의 자세에 따라 가변하는 복수 개의 관절 각각에 대한 강성 값인 강성데이터와 공구(111)에 작용되는 힘인 절삭력에 대한 정보를 이용하여, 공구(111)에 대해 연산된 가공오차인 컴플라이언스오차(Δx)를 연산하여 도출할 수 있다.In the second step after the first step as described above, using stiffness data, which is the stiffness value for each of a plurality of joints that varies depending on the posture of the robot 120, and information about the cutting force, which is the force applied to the tool 111, the tool It can be derived by calculating the compliance error (Δx), which is the processing error calculated for (111).

강성데이터에는 각각의 가공공정 수행 시 로봇(120)의 자세에 대한 데이터가 수집 저장되어 있으며, 이와 같은 강성데이터를 이용하여 하기와 같은 강성행렬(Kx)을 도출할 수 있다.In the stiffness data, data on the posture of the robot 120 when performing each processing process is collected and stored, and using such stiffness data, the stiffness matrix (Kx) as shown below can be derived.

제어부(130)에는 가공대상(10)에 대한 공구(111)인 이동경로인 참조가공경로가 사전에 저장되어 있으며, 이와 같은 참조가공경로를 따라 공구(111)가 이동하는 경우, 공구(111)의 이동 경로 상 각각의 위치에서의 로봇(120)의 자세가 제어부(130)에 저장될 수 있으며, 이를 이용하여, 제어부(130)는 참조가공경로를 이용하여 로봇(120)의 자세 변형을 예측할 수 있다.The control unit 130 stores in advance a reference processing path, which is the movement path of the tool 111 for the processing object 10. When the tool 111 moves along this reference processing path, the tool 111 The posture of the robot 120 at each location on the movement path may be stored in the control unit 130, and using this, the control unit 130 can predict the posture deformation of the robot 120 using the reference processing path. You can.

여기서, 로봇(120)의 자세 변형이란, 복수 개의 관절 각각의 3차원 회전각 및 복수 개의 링크 각각의 3차원 위치가 반영되어 로봇(120)의 자세가 변경 및 결정되는 것을 의미할 수 있다.Here, the posture deformation of the robot 120 may mean that the posture of the robot 120 is changed and determined by reflecting the 3D rotation angle of each of the plurality of joints and the 3D position of each of the plurality of links.

제어부(130)는, 가공대상(10)에 형성된 복수 개의 가공부(110)위 각각에 대한 절삭력의 데이터인 절삭력모델링데이터를 저장할 수 있다. 사용자가 제어부(130)에 가공대상(10)의 종류에 대한 정보를 입력하면, 제어부(130)는 해당 가공대상(10)과 관련된 정보를 절삭력모델링데이터에서 서칭하게 되고, 매칭되는 데이터를 이용하여 해당 가공대상(10)에서 복수 개의 가공부(110)위 각각에 대한 절삭력을 도출하여 이용할 수 있다.The control unit 130 may store cutting force modeling data, which is data of cutting force on each of the plurality of machining parts 110 formed on the machining object 10. When the user inputs information about the type of processing object 10 into the control unit 130, the control unit 130 searches for information related to the processing object 10 in the cutting force modeling data and uses the matching data. The cutting force for each of the plurality of processing parts 110 can be derived from the processing object 10 and used.

이와 같은 방식으로 절삭력을 도출하는 경우, offline 상태에서도 로봇(120)의 제어를 수행할 수 있어, 로봇(120)을 이용한 가공의 안정성을 향상시킬 수 있다.When the cutting force is derived in this way, the robot 120 can be controlled even in an offline state, thereby improving the stability of machining using the robot 120.

또는, 가공부(110)는, 절삭력을 측정하는 힘센서(121)를 구비할 수 있다. 여기서, 힘센서(121)는 가공부(110)의 외부 또는 내부에 형성될 수 있으며, 힘센서(121)는 가공부(110) 내 공구(111)와 연결된 스핀들에 가해지는 압력 및 토크를 측정할 수 있다.Alternatively, the processing unit 110 may be provided with a force sensor 121 that measures cutting force. Here, the force sensor 121 may be formed outside or inside the processing unit 110, and the force sensor 121 measures the pressure and torque applied to the spindle connected to the tool 111 within the processing unit 110. can do.

여기서, 스핀들에 가해지는 압력 및 토크는 3차원 방향으로 측정될 수 있으며, 제어부(130)는 이와 같은 스핀들에 대한 압력 및 토크 값을 이용하여 절삭력을 도출할 수 있으며, 이를 위해 제어부(130)는 절삭력 측정을 위한 공구(111)동력계(dynamometer)를 구비할 수 있다.Here, the pressure and torque applied to the spindle can be measured in a three-dimensional direction, and the control unit 130 can derive the cutting force using the pressure and torque values for the spindle, and for this purpose, the control unit 130 The tool 111 may be equipped with a dynamometer for measuring cutting force.

컴플라이언스오차(Δx)는 로봇 머니퓰레이터의 불충분한 구조적 강성으로 인해 발생할 수 있다. 컴플라이언스(Compliance)의 주요 요인은 베어링, 모터 샤프트, 기어 및 기어박스와 같은 로봇의 관절에 설치되는 부품일 수 있다. 링크의 강성은 관절(조인트)보다 훨씬 크기 때문에 링크가 강성인 것으로 가정하고 모든 컴플라이언스는 관절 부분에만 집중될 수 있다. 컴플라이언스오차(Δx)는 모터 엔코더로 측정할 수 없기 때문에 로봇(120) 가공 중 컴플라이언스오차(Δx)를 추정하기 위해 컴플라이언스 모델을 이용할 수 있다.Compliance error (Δx) may occur due to insufficient structural rigidity of the robot manipulator. Key factors in compliance can be parts installed in the robot's joints, such as bearings, motor shafts, gears, and gearboxes. Since the stiffness of the link is much greater than that of the joint, the link can be assumed to be rigid and all compliance can be focused only on the joint portion. Since the compliance error (Δx) cannot be measured with a motor encoder, a compliance model can be used to estimate the compliance error (Δx) during processing of the robot 120.

외력(external wrench)에 의해 유도된 로봇의 관절 토크(τ)는, 하기의 [수학식 1]에 의해 도출될 수 있다. The joint torque (τ) of the robot induced by an external wrench can be derived by [Equation 1] below.

[수학식 1][Equation 1]

여기서, τ는 관절 토크이고, J는 자코비안 행렬이며, Ф는 외력일 수 있다. 그리고, 하기와 같이 외력은 절삭력일 수 있다.Here, τ is the joint torque, J is the Jacobian matrix, and Ф may be an external force. And, as shown below, the external force may be a cutting force.

그리고, 상기와 같은 [수학식 1]에 대한 편도함수는 [수학식 2]와 같이 표현될 수 있으며, [수학식 2]는 [수학식 3]과 같이 데카르트 강성행렬(Kx)의 관점에서 재정렬될 수 있다.In addition, the partial derivative for [Equation 1] as described above can be expressed as [Equation 2], and [Equation 2] is rearranged in terms of the Cartesian stiffness matrix (Kx) as in [Equation 3] It can be.

[수학식 2][Equation 2]

[수학식 3][Equation 3]

여기서, Kθ는 관절 강성행렬이고, 는 상보적 강성행렬일 수 있다. 일반적인 경우에는 상보적 강성행렬의 효과가 관절 강성행렬에 비해 상대적으로 작기 때문에 무시할 수 있다. 따라서, 컴플라이언스 모델에 대한 수학식은 [수학식 4]와 같이 도출될 수 있다.Here, K θ is the joint stiffness matrix, may be a complementary stiffness matrix. In general cases, the effect of the complementary stiffness matrix can be ignored because it is relatively small compared to the joint stiffness matrix. Therefore, the mathematical equation for the compliance model can be derived as [Equation 4].

그리고, 제어부(130)는, 하기의 [수학식 4]를 이용하여 컴플라이언스오차(Δx)를 도출할 수 있다. 여기서, Δx는 컴플라이언스오차이고, Cx는 데카르트 컴플라이언스 행렬이며, Ф는 절삭력이고, Cθ는 로봇(120)의 관절에 대한 컴플라이언스 행렬이며, J는 자코비안 행렬이고, T는 전치행렬(이하, 동일)일 수 있다. 이하, 로봇(120)의 관절(조인트)에 대한 컴플라이언스 행렬은 관절 컴플라이언스 행렬이라고 할 수 있다.And, the control unit 130 can derive the compliance error (Δx) using [Equation 4] below. Here, Δx is the compliance error, Cx is the Cartesian compliance matrix, Ф is the cutting force, C θ is the compliance matrix for the joints of the robot 120, J is the Jacobian matrix, and T is the transpose matrix (hereinafter, the same ) can be. Hereinafter, the compliance matrix for the joints of the robot 120 may be referred to as a joint compliance matrix.

[수학식 4][Equation 4]

데카르트 컴플라이언스 행렬은 자코비안 행렬과 관절 컴플라이언스 행렬을 곱하여 연산될 수 있다. 관절 컴플라이언스 행렬은 각각의 요소가 관절 컴플라이언스 값인 대각 행렬, 즉, Cθ=diag(1/Kθ1, ..., 1/Kθi, ..., 1/Kθ6)일 수 있다. 여기서, Kθi는 로봇(120)의 각 관절에 대한 강성 값을 나타내고, 관절의 강성 값은 각 관절의 힘/변위 관계를 사용하여 식별될 수 있다.The Cartesian compliance matrix can be calculated by multiplying the Jacobian matrix and the joint compliance matrix. The joint compliance matrix may be a diagonal matrix in which each element is a joint compliance value, that is, C θ =diag(1/K θ1 , ..., 1/K θi , ..., 1/K θ6 ). Here, K θi represents the stiffness value for each joint of the robot 120, and the stiffness value of the joint can be identified using the force/displacement relationship of each joint.

가공 중 공구(111)의 실제 자세(실제 위치 및 방향)는 주로 절삭력으로 인한 처짐, 즉, 컴플라이언스 오류 및 운동학적 매개변수의 부정확성으로 인해 원하는 궤적에서 벗어나 윤곽 오류가 발생할 수 있다. 3차원(3-D) 로봇 가공에서, 윤곽 오차는, 공구(111)의 참조위치와 실제위치(Pact)의 차이인 위치윤곽오차(εp) 및, 공구(111)의 참조방향과 실제방향(Oact)의 차이인 방향윤곽오차(εo)로 구성될 수 있다.During machining, the actual posture (actual position and direction) of the tool 111 may deviate from the desired trajectory, resulting in contour errors, mainly due to deflection due to cutting force, i.e., compliance error and inaccuracy of kinematic parameters. In three-dimensional (3-D) robot processing, the contour error is the position contour error (ε p ), which is the difference between the reference position of the tool 111 and the actual position (P act ), and the reference direction of the tool 111 and the actual position. It can be composed of the direction contour error (ε o ), which is the difference in direction (O act ).

도 3과 도 4에서 보는 바와 같이, 참조자세(Reference pose)와 실제자세(Actual pose)를 이용하여, 윤곽기준위치(Pc)와 윤곽기준방향(Oc)를 포함하는 윤곽기준자세(Contour reference pose)를 도출할 수 있으며, 로봇(120) 가공에서의 위치윤곽오차(εp) 및 방향윤곽오차(εo)에 의한 자세오차(εcontour)를 도출할 수 있다.As shown in Figures 3 and 4, using the reference pose and the actual pose, the contour reference pose including the contour reference position (Pc) and the contour reference direction (Oc) ) can be derived, and the posture error (ε contour ) due to the positional contour error (ε p ) and directional contour error (ε o ) in processing of the robot 120 can be derived.

위치윤곽오차(εp)는 실제위치(Pact)에서 직교 좌표의 원하는 참조 궤적까지의 직교 거리로 정의될 수 있고, 위치윤곽오차(εp)는 실제위치(Pact)와 실제위치(Pact)에서 참조 궤적에서 가장 가까운 참조위치인 최근접참조위치(Pn)를 이용하여 연산될 수 있다. 그리고, 방향윤곽오차(εo)는, 원하는 방향(윤곽기준자세의 방향)과 실제 방향을 사용하여 연산할 수 있다. 이와 같은 사항에 대해서는 하기의 나머지 각 단계에서 상세히 설명하도록 한다.The position contour error (ε p ) can be defined as the orthogonal distance from the actual position (P act ) to the desired reference trajectory in orthogonal coordinates, and the position contour error (ε p ) is the difference between the actual position (P act ) and the actual position (P act ), it can be calculated using the nearest reference position (P n ), which is the closest reference position to the reference trajectory. And, the directional contour error (ε o ) can be calculated using the desired direction (direction of the contour reference posture) and the actual direction. These matters will be explained in detail in the remaining steps below.

상기와 같은 제2단계 이후 제3단계에서, 가공대상(10)에 따라 사전에 설정된 공구(111)의 가공경로인 참조가공경로 상 공구(111)의 위치 및 방향인 참조위치 및 참조방향, 그리고, 컴플라이언스오차(Δx)를 이용하여, 공구(111)의 실시간 위치와 방향인 실제위치와 실제방향을 측정할 수 있다.In the third step after the second step as described above, the reference position and direction, which are the position and direction of the tool 111, on the reference machining path, which is the machining path of the tool 111 set in advance according to the machining object 10, and , the actual position and direction, which are the real-time position and direction of the tool 111, can be measured using the compliance error (Δx).

제어부(130)는, 참조가공경로에의 참조위치와 참조방향 및 컴플라이언스오차(Δx)를 이용하여 공구(111)의 실시간 위치와 방향인 실제위치와 실제방향을 도출할 수 있다. 구체적으로, 참조가공경로 상 참조위치는 3차원 위치로 표현되며 참조방향은 3차원 방향으로 설정되며, 컴플라이언스오차(Δx)는 3차원 위치와 방향을 모두 포함할 수 있다. 그리고, 참조위치와 참조방향에서 컴플라이언스오차(Δx)에 의한 오차를 연산함으로서, 3차원 위치와 방향에 있어 공구(111)의 실시간, 즉, 현재 상태에 대한 위치와 방향인 실제위치와 실제방향을 연산할 수 있다.The control unit 130 can derive the real-time position and direction of the tool 111, which are the real-time position and direction, using the reference position and direction of the reference machining path and the compliance error (Δx). Specifically, the reference position on the reference processing path is expressed as a 3-dimensional position, the reference direction is set to a 3-dimensional direction, and the compliance error (Δx) may include both 3-dimensional position and direction. And, by calculating the error due to the compliance error (Δx) in the reference position and reference direction, the real-time, that is, the actual position and direction of the tool 111 in the current state in terms of the three-dimensional position and direction are calculated. It can be calculated.

상기와 같은 제3단계 이후 제4단계에서, 가공대상(10)에 따라 사전에 설정된 공구(111)의 가공경로인 참조가공경로를 복수 개의 직선으로 분할할 수 있다. 여기서, 복수 개의 직선은 참조가공경로가 보간기(interpolator)에 의해 분할되어 형성될 수 있다.In the fourth step after the third step as described above, the reference machining path, which is the machining path of the tool 111 set in advance according to the machining object 10, can be divided into a plurality of straight lines. Here, a plurality of straight lines may be formed by dividing the reference processing path by an interpolator.

로봇(120)을 제어하는 제어부(130)는, 로봇(120)의 가공 경로 계획을 위해 각 샘플링 주기에서 참조위치와 참조방향으로 구성된 참조자세 세트를 하기의 [수학식 5]와 같이 제공할 수 있다.The control unit 130, which controls the robot 120, can provide a reference posture set consisting of a reference position and reference direction at each sampling cycle as shown in [Equation 5] below to plan the machining path of the robot 120. there is.

[수학식 5][Equation 5]

여기서, Pr 및 Or은 데카르트 좌표의 기준 위치 및 방향일 수 있다. 또한, Xr, Yr 및 Zr은 각각 X, Y 및 Z축의 참조위치일 수 있다. 그리고, Rxr, Ryr, Rzr은 각각 오일러 각으로 표시되는 Rx, Ry, Rz축의 참조방향일 수 있다.Here, Pr and Or may be the reference position and direction of Cartesian coordinates. Additionally, Xr, Yr, and Zr may be reference positions of the X, Y, and Z axes, respectively. And, Rx r , Ry r , and Rz r may be reference directions of the Rx, Ry, and Rz axes, respectively, expressed as Euler angles.

위치윤곽오차(εp)와 방향윤곽오차(εo)를 도출하기 위해서는 상기와 같은 참조자세를 찾아야 하며, 참조 가공경로에 의한 참조 궤적은 보간기에 의해 분할된 복수 개의 직선으로 분할되며, 결과적으로 각 샘플링 기간에 대해 참조위치가 생성될 수 있다. 그리고, 각각의 참조위치에서의 공구(111)의 방향인 참조방향이 생성될 수 있다.In order to derive the positional contour error (ε p ) and the directional contour error (ε o ), the reference posture as above must be found, and the reference trajectory by the reference processing path is divided into a plurality of straight lines divided by an interpolator, and as a result, A reference location can be created for each sampling period. And, a reference direction, which is the direction of the tool 111 at each reference position, can be created.

상기와 같은 제4단계 이후 제5단계에서, 복수 개의 직선 중 실제위치(Pact)에 가장 근접한 참조위치인 최근접참조위치(Pn)를 통과하는 2개의 직선 각각과 실제위치(Pact)를 수직 연결한 2개의 수직연결선을 이용하여, 공구(111)의 위치 오차를 보정한 위치인 윤곽기준위치(Pc)를 도출할 수 있다. 여기서, 2개의 직선은, 최근접참조위치(Pn)에 인접한 2개의 참조위치 각각과 최근접참조위치(Pn)를 연결하여 형성되는 제1연결직선 및 제2연결직선을 포함할 수 있다.In the fifth step after the fourth step as described above, each of the two straight lines passing through the nearest reference position (P n ), which is the reference position closest to the actual position (P act ) among the plurality of straight lines, and the actual position (P act ) By using two vertical connecting lines, the contour reference position (Pc), which is a position where the position error of the tool 111 is corrected, can be derived. Here, the two straight lines may include a first connection straight line and a second connection straight line formed by connecting each of the two reference positions adjacent to the nearest reference position (P n ) and the nearest reference position (P n ). .

위치윤곽오차(εp)는 실제위치(Pact)와 보간된 참조위치를 연결하는 선분에서 찾은 윤곽기준위치(Pc) 사이의 거리를 사용하여 연산될 수 있다. 이를 위해, 먼저, 탐색범위를 설정하고 탐색범위 내의 참조가공경로에 복수 개의 참조위치를 설정한 다음, 복수 개의 참조위치 중 공구(111)의 실제위치(Pact)와 가장 근접한 최근접참조위치(Pn)를 연산하여 도출할 수 있다. The position contour error (ε p ) can be calculated using the distance between the contour reference position (Pc) found on the line segment connecting the actual position (P act ) and the interpolated reference position. To this end, first, set the search range and set a plurality of reference positions on the reference machining path within the search range, and then select the closest reference position (P act) that is closest to the actual position (P act ) of the tool 111 among the plurality of reference positions. It can be derived by calculating P n ).

여기서, 탐색범위 내 복수 개의 참조위치는 실험적으로 20개 이상이 바람직할 수 있으나, 반드시 이에 한정되는 것은 아니다.Here, experimentally, it may be desirable to have 20 or more reference positions within the search range, but it is not necessarily limited thereto.

상기와 같은 최근접참조위치(Pn)를 도출한 후, 최근접참조위치(Pn)에 인접한 2개의 참조위치, 즉, 참조가공경로 상 가공 방향에 대해 최근접참조위치(Pn)의 전과 후의 방향에 위치한 2개의 참조위치인 제1인접참조위치(Pn-1)과 제2인접참조위치(Pn+1)가 설정될 수 있다.After deriving the nearest reference position (P n ) as above, two reference positions adjacent to the nearest reference position (P n ), that is, the closest reference position (P n ) with respect to the machining direction on the reference machining path, are Two reference positions located in the front and back directions, a first adjacent reference position (P n-1 ) and a second adjacent reference position (P n+1 ), may be set.

여기서, 제1인접참조위치(Pn-1)와 최근접참조위치(Pn)를 연결하여 제1연결직선이 형성되고, 제2인접참조위치(Pn+1)와 최근접참조위치(Pn)를 연결하여 제2연결직선이 형성될 수 있다.Here, a first connecting straight line is formed by connecting the first adjacent reference position (P n-1 ) and the nearest reference position (P n ), and the second adjacent reference position (P n+1 ) and the nearest reference position (P n) are formed. A second connecting straight line can be formed by connecting P n ).

그리고, 실제위치(Pact)로부터 제1연결직선으로 연결되는 제1수직연결선과 제1연결직선의 교점인 제1투영점(H1) 및, 실제위치(Pact)로부터 제2연결직선으로 연결되는 제2수직연결선과 제2연결직선의 교점인 제2투영점(H2)이 설정될 수 있다.And, the first projection point (H 1 ), which is the intersection of the first vertical connecting line and the first connecting straight line, which is connected from the actual position (P act) to the first connecting straight line, and the actual position (P act ) to the second connecting straight line. A second projection point (H 2 ), which is the intersection of the second vertical connection line and the second connection straight line, may be set.

상기와 같은 최근접참조위치(Pn)와 제1투영점(H1) 및 제2투영점(H1)을 이용하여 각각의 케이스에 따라 윤곽기준위치(Pc)를 도출할 수 있으며, 이에 대해서 하기에 상세히 설명하기로 한다.Using the closest reference position (P n ), first projection point (H 1 ), and second projection point (H 1 ) as described above, the contour reference position (Pc) can be derived according to each case, and thus This will be explained in detail below.

도 5의 (a)는 제1케이스에 대한 것이고, 도 5의 (b)는 제2케이스에 대한 것이며, 도 5의 (c)는 제3케이스에 대한 것이다. 그리고, 도 5의 (d)는 제4케이스에 대한 것이다.Figure 5(a) is for the first case, Figure 5(b) is for the second case, and Figure 5(c) is for the third case. And, (d) in Figure 5 is for the fourth case.

도 5에서 보는 바와 같이, 제1연결직선과 제2연결직선 각각에 대한 제1투영점과 제2투영점 각각의 위치에 따라 윤곽기준위치(Pc)와 윤곽기준방향(Oc)이 결정될 수 있다. 구체적으로, 4개의 케이스가 성립될 수 있으며, 제1연결직선과 제2연결직선 각각에 대한 제1투영점(H1) 및 제2투영점(H1) 각각의 위치를 기준으로 실제위치(Pact)에 대한 윤곽기준위치(Pc)가 결정될 수 있다.As shown in Figure 5, the outline reference position (Pc) and the outline reference direction (Oc) can be determined depending on the positions of the first projection point and the second projection point for each of the first connection straight line and the second connection straight line. . Specifically, four cases can be established , and the actual position ( The contour reference position (Pc) for P act ) can be determined.

그리고, 하기의 [수학식 6-1]과 [수학식 6-2]에서 보는 바와 같이, 제1투영점(H1)과 제2투영점(H1) 및 윤곽기준위치(Pc)의 연산을 위한 가중치를 결정하기 위해 r1 및 r2를 정의할 수 있다.And, as shown in [Equation 6-1] and [Equation 6-2] below, calculation of the first projection point (H 1 ), the second projection point (H 1 ), and the outline reference position (Pc) r1 and r2 can be defined to determine the weight for .

[수학식 6-1][Equation 6-1]

= =

[수학식 6-2][Equation 6-2]

= =

여기서, Pc는 윤곽기준위치를 나타내고, Pn-1은 제1인접참조위치를 나타내며, Pn+1은 제2인접참조위치를 나타낼 수 있다. 그리고, H1은 제1투영점을 나타내고, H2는 제2투영점을 나타낼 수 있다.Here, Pc may represent the outline reference position, P n-1 may represent the first adjacent reference position, and P n+1 may represent the second adjacent reference position. And, H 1 may represent the first projection point, and H 2 may represent the second projection point.

도 5의 (a)에서 보는 바와 같이, 제1케이스로써, 제1투영점(H1)이 제1연결직선의 연장선 상에 위치하고 제2투영점(H2)이 제2연결직선의 연장선 상에 위치하는 경우, 최근접참조위치(Pn)가 윤곽기준위치(Pc)일 수 있다.As shown in (a) of Figure 5, in the first case, the first projection point (H 1 ) is located on the extension line of the first connection straight line and the second projection point (H 2 ) is located on the extension line of the second connection straight line. When located, the closest reference position (P n ) may be the outline reference position (Pc).

제1케이스의 경우, r1>1이고 r2>1이므로, 실제위치(Pact)에 가장 가까운 최근접참조위치(Pn)가 윤곽기준위치(Pc)일 수 있다.In the first case, since r 1 >1 and r 2 >1, the closest reference position (P n ) closest to the actual position (P act ) may be the contour reference position (Pc).

도 5의 (b)에서 보는 바와 같이, 제2케이스로써, 제1투영점(H1)이 제1연결직선의 연장선 상에 위치하고 제2투영점(H2)이 제2연결직선 상에 위치하는 경우, 제2투영점(H2)이 윤곽기준위치(Pc)일 수 있다.As shown in Figure 5 (b), in the second case, the first projection point (H 1 ) is located on the extension of the first connection straight line and the second projection point (H 2 ) is located on the second connection straight line. In this case, the second projection point (H 2 ) may be the outline reference position (Pc).

그리고, 도 5의 (c)에서 보는 바와 같이, 제3케이스로써, 제1투영점(H1)이 제1연결직선 상에 위치하고 제2투영점(H2)이 제2연결직선의 연장선 상에 위치하는 경우, 제1투영점(H1)이 윤곽기준위치(Pc)일 수 있다.And, as shown in Figure 5 (c), in the third case, the first projection point (H 1 ) is located on the first connection straight line and the second projection point (H 2 ) is located on the extension of the second connection straight line. When located, the first projection point (H 1 ) may be the outline reference position (Pc).

제2케이스와 제3케이스의 경우, 제1투영점(H1)과 제2투영점(H2) 중 어느 하나의 투영점은 하나의 연결직선 내부에 위치하고, 다른 투영점은 다른 연결직선의 외부에 위치할 수 있다. 그리고, r1 및 r2이며, 연결직선의 내부, 즉, 연결직선 상에 위치하는 투영점이 윤곽기준위치(Pc)일 수 있다.In the second and third cases, one of the first projection point (H 1 ) and the second projection point (H 2 ) is located inside one connecting straight line, and the other projection point is located inside the other connecting straight line. It can be located outside. And r 1 and r 2 , and the projection point located inside the connecting straight line, that is, on the connecting straight line, may be the outline reference position (Pc).

도 5의 (d)에서 보는 바와 같이, 제4케이스로써, 제1투영점(H1)이 제1연결직선 상에 위치하고 제2투영점(H2)이 제2연결직선 상에 위치하는 경우, 제1투영점(H1)과 제2투영점(H2) 중 실제위치(Pact)에 더 근접한 투영점이 윤곽기준위치(Pc)일 수 있다.As shown in (d) of Figure 5, in the fourth case, when the first projection point (H 1 ) is located on the first connection straight line and the second projection point (H 2 ) is located on the second connection straight line , Among the first projection point (H 1 ) and the second projection point (H 2 ), the projection point that is closer to the actual position (P act ) may be the outline reference position (Pc).

제4케이스의 경우, 제1투영점(H1)과 제2투영점(H2) 각각은 제1연결직선과 제2연결직선 내부에 위치하고, 0≤r1≤1 및 0≤r2≤1이며, 실제위치(Pact)에 가장 가까운 투영점이 윤곽기준위치(Pc)일 수 있다.In the fourth case, the first projection point (H 1 ) and the second projection point (H 2 ) are each located inside the first connection straight line and the second connection straight line, and 0≤r 1 ≤1 and 0≤r 2 ≤ 1, and the projection point closest to the actual position (P act ) may be the contour reference position (Pc).

그리고, 상기와 같은 제2케이스 내지 제4케이스에서, 연결직선 상에 있는 윤곽기준위치(Pc)는, 하기의 [수학식 7-1] 또는 [수학식 7-2]에 의해, 최근접참조위치(Pn)와 인접한 참조위치인 제1인접참조위치(Pn-1)와 제2인접참조위치(Pn+1)의 선형 보간을 사용하여 연산될 수 있다.And, in the second to fourth cases as described above, the outline reference position (Pc) on the connecting straight line is the nearest reference by [Equation 7-1] or [Equation 7-2] below. It can be calculated using linear interpolation of the first adjacent reference position (P n-1 ) and the second adjacent reference position (P n+1 ), which are reference positions adjacent to the position (P n).

[수학식 7-1][Equation 7-1]

[수학식 7-2][Equation 7-2]

여기서, Pc는 윤곽기준위치를 나타내고, Pn-1은 제1인접참조위치를 나타내며, Pn+1은 제2인접참조위치를 나타낼 수 있다.Here, Pc may represent the outline reference position, P n-1 may represent the first adjacent reference position, and P n+1 may represent the second adjacent reference position.

그리고, 위치윤곽오차(εp)는 참조위치와 실제위치(Pact) 사이를 하기의 [수학식 8]과 같이 연산될 수 있다.And, the position contour error (ε p ) can be calculated between the reference position and the actual position (P act ) as shown in [Equation 8] below.

[수학식 8][Equation 8]

여기서, εp는 위치윤곽오차를 나타내고, Pc는 윤곽기준위치를 나타내며, Pa는 실제위치(Pact)를 나타낼 수 있다.Here, ε p represents the position contour error, Pc represents the outline reference position, and Pa may represent the actual position (P act ).

상기와 같은 제5단계 이후 제6단계에서, 최근접참조위치(Pn)에서의 참조방향과 실제방향(Oact)을 이용하여 공구(111)의 방향 오차를 보정한 방향인 윤곽기준방향(Oc)을 도출할 수 있다.In the sixth step after the fifth step as described above, the outline reference direction ( Oc) can be derived.

일반적인 로봇(120) 제어는 직관적이기 때문에 공구(111)의 방향 표현을 위해 오일러각을 이용할 수 있다. 그러나, 오일러각은 하나의 축의 변경이 순차적 회전으로 인해 다른 축에 영향을 미치기 때문에, 방향 보정을 처리하는데 적합하지 않을 수 있다.Because general robot 120 control is intuitive, Euler angles can be used to express the direction of the tool 111. However, Euler angles may not be suitable for handling orientation correction because changes in one axis affect the other axes due to sequential rotation.

따라서, 쿼터니언(Quternion, 사원수)은 회전 축을 동시에 처리하고 회전 행렬에 비해 연산이 더 효율적이기 때문에 방향 연산에 용이할 수 있다. 방향윤곽오차(εo)는, 참조방향과 실제방향(Oact)을 이용하여 연산될 수 있으며, 윤곽기준방향(Oc)은, 상기된 제3단계에서의 각각의 케이스에 따라 방식을 달리하여 도출될 수 있다.Therefore, quaternions can be convenient for direction calculations because they simultaneously process rotation axes and are more efficient than rotation matrices. The directional contour error (ε o ) can be calculated using the reference direction and the actual direction (O act ), and the outline reference direction (Oc) can be calculated using different methods depending on each case in the third step described above. can be derived.

구체적으로, 상기된 제1케이스의 경우, 윤곽기준방향(Oc)은, 최근접참조위치(Pn)에서의 참조방향일 수 있다. 그리고, 상기된 제2케이스 내지 제4케이스의 경우, 윤곽기준방향(Oc)은, 최근접참조위치(Pn)에서의 참조방향과 최근접참조위치(Pn)에 인접한 참조위치(제1인접참조위치(Pn-1)와 제2인접참조위치(Pn+1))에서의 참조방향을 이용한 쿼터니언(Quternion) 구면선형보간(SLERP) 연산으로 획득될 수 있다.Specifically, in the case of the first case described above, the outline reference direction (Oc) may be a reference direction at the nearest reference position (P n ). And, in the case of the second to fourth cases described above, the outline reference direction (Oc) is the reference direction at the nearest reference position (P n ) and the reference position adjacent to the nearest reference position (P n ) (the first It can be obtained by quaternion spherical linear interpolation (SLERP) operation using the reference direction at the adjacent reference position (P n-1 ) and the second adjacent reference position (P n+1 ).

제2케이스 내지 제4케이스에서, 윤곽기준방향(Oc)은, 최근접참조위치(Pn)에서의 참조방향인 최근접참조방향(On) 및 상기된 제1인접참조위치(Pn-1)와 제2인접참조위치(Pn+1) 각각에서의 참조방향인 제1인접참조방향(On-1)과 제2인접참조방향(On+1)의 쿼터니언(Quternion) 구면선형보간(SLERP) 연산으로 획득할 수 있다. 여기서, 쿼터니언(Quternion) 구면선형보간(SLERP) 연산은 하기의 [수학식 9-1]과 [수학식 9-2]에 의해 연산될 수 있다.In the second to fourth cases, the outline reference direction (Oc) is the nearest reference direction (O n ), which is the reference direction at the nearest reference position (P n ), and the above-mentioned first adjacent reference position (P n- 1 ) and the second adjacent reference position (P n+1 ). Quaternion spherical linearity of the first adjacent reference direction (O n-1 ) and the second adjacent reference direction (O n+1 ), respectively. It can be obtained through interpolation (SLERP) operation. Here, the quaternion spherical linear interpolation (SLERP) operation can be calculated using [Equation 9-1] and [Equation 9-2] below.

[수학식 9-1][Equation 9-1]

[수학식 9-2][Equation 9-2]

여기서, 상기된 바와 같이, qc는 윤곽기준방향(Oc)의 쿼터니언을 나타내고, qn은 최근접참조방향(On)의 쿼터니언을 나타내며, qn-1는 제1인접참조방향(On-1)의 쿼터니언을 나타낼 수 있다. 그리고, qn+1은 제2인접참조방향(On+1)의 쿼터니언을 나타낼 수 있다.Here, as described above, q c represents the quaternion of the contour reference direction (Oc), q n represents the quaternion of the nearest reference direction (O n ), and q n-1 represents the first adjacent reference direction (O n -1 ) can represent a quaternion. And, q n+1 may represent a quaternion in the second adjacent reference direction (O n+1 ).

그리고, 상기와 같이 획득되는 윤곽기준방향(Oc)의 3차원 좌표와 실제방향(Oact)의 3차원 좌표 간 차이를 이용하여 방향윤곽오차(εo)에 대한 3차원 좌표를 도출할 수 있다. 이에 대해서는 하기의 제5단계 설명에서 상세히 설명하기로 한다.In addition, the three-dimensional coordinates for the direction outline error (ε o ) can be derived using the difference between the three-dimensional coordinates of the outline reference direction (Oc) obtained as above and the three-dimensional coordinates of the actual direction (O act ). . This will be explained in detail in the fifth step description below.

상기와 같이 윤곽기준방향(Oc)을 도출하는 하나의 방식 외에, 윤곽기준방향(Oc)은, 윤곽기준위치(Pc)에서 공구(111)의 길이 방향을 따라 형성되는 축의 벡터 방향일 수 있다. 여기서, 공구(111)의 길이 방향을 따라 형성되는 축의 벡터는 공구(111)에서 z축 벡터일 수 있다.In addition to one method of deriving the outline reference direction Oc as described above, the outline reference direction Oc may be a vector direction of an axis formed along the longitudinal direction of the tool 111 at the outline reference position Pc. Here, the axis vector formed along the longitudinal direction of the tool 111 may be a z-axis vector in the tool 111.

구체적으로, 방향윤곽오차(εo)를 연산하기 위해 실제위치(Pact)에서의 실제방향(Oact)과 윤곽기준위치(Pc)에서의 참조방향으로부터 z축 벡터를 추출할 수 있다. 그리고, 하기의 [수학식 10]과 같이, 방향윤곽오차(εo)는, 실제방향(Oact)과 윤곽기준위치(Pc)에서의 참조방향 각각의 z축 벡터 간 각도 차이를 이용하여 연산될 수 있다.Specifically, in order to calculate the directional contour error (ε o ), the z-axis vector can be extracted from the actual direction (O act ) at the actual position (P act ) and the reference direction at the outline reference position (Pc). And, as shown in [Equation 10] below, the directional contour error (ε o ) is calculated using the angle difference between the z-axis vector in each reference direction at the actual direction (O act ) and the outline reference position (Pc). It can be.

[수학식 10][Equation 10]

여기서, εo는 방향윤곽오차를 나타내고, ν'c는 윤곽기준위치(Pc)에서의 참조방향의 z축 벡터를 나타내며, νa는 실제방향(Oact)의 z축 벡터를 나타낼 수 있다.Here, ε o represents the directional contour error, ν' c represents the z-axis vector in the reference direction at the outline reference position (Pc), and ν a may represent the z-axis vector in the actual direction (O act ).

그리고, 상기와 같은 방향윤곽오차(εo)를 이용하여 각도 차이를 보정함으로써, 윤곽기준방향(Oc)을 도출할 수 있다.And, by correcting the angle difference using the directional outline error (ε o ) as described above, the outline reference direction (Oc) can be derived.

상기와 같은 제6단계 이후 제7단계에서, 윤곽기준위치(Pc)와 윤곽기준방향(Oc)을 이용하여 로봇(120)을 제어함으로써 공구(111)의 위치와 방향을 제어할 수 있다. 상기와 같이, 공구(111)에 대해서, 실제위치(Pact)와 윤곽기준위치(Pc)를 이용하여 위치윤곽오차(εp)를 도출할 수 있고, 실제방향(Oact)과 윤곽기준방향(Oc)을 이용하여 방향윤곽오차(εo)을 도출할 수 있다. 그리고, 위치윤곽오차(εp)와 방향윤곽오차(εo)가 보정되도록 공구(111)의 위치와 방향이 변경되도록 로봇(120)으로 제어신호를 전달할 수 있다.In the seventh step after the sixth step as described above, the position and direction of the tool 111 can be controlled by controlling the robot 120 using the outline reference position (Pc) and the outline reference direction (Oc). As above, for the tool 111, the positional contour error (ε p ) can be derived using the actual position (P act ) and the contour reference position (Pc), and the actual direction (O act ) and the contour reference direction The directional contour error (ε o ) can be derived using (Oc). Additionally, a control signal can be transmitted to the robot 120 to change the position and direction of the tool 111 so that the positional contour error (ε p ) and the directional contour error (ε o ) are corrected.

상기와 같은 제어신호는 제어부(130)에 의해 생성되며, 로봇(120)의 관절 축은 개별적으로 제어되고, 개별 축 각각에 대한 제어기는 위치, 속도 및 전류 루프와 연결된 캐스케이드 제어 구조로 구성될 수 있다. 이와 같은 제어부(130)에서는 상기와 같은 윤곽제어 알고리즘을 이용하여 위치윤곽오차(εp)와 방향윤곽오차(εo)를 도출할 수 있다.The above control signal is generated by the control unit 130, the joint axes of the robot 120 are individually controlled, and the controller for each individual axis may be configured in a cascade control structure connected to the position, speed, and current loop. . In this control unit 130, the positional contour error (ε p ) and the directional contour error (ε o ) can be derived using the contour control algorithm described above.

종래기술의 로봇 제어기에서는 내부 제어 구조의 수정을 허용하지 않기 때문에, 추가 PI(proportional-integral) 위치 제어 루프를 데카르트 좌표로 설계하여 등고선 오류를 보정할 수 있도록 함으로써, 본 발명의 제어부(130)를 형성할 수 있다.Since the conventional robot controller does not allow modification of the internal control structure, an additional PI (proportional-integral) position control loop is designed in Cartesian coordinates to correct the contour error, thereby enabling the control unit 130 of the present invention. can be formed.

따라서, 상기된 [수학식 5]을 수정하여 하기의 [수학식 11]을 도출할 수 있다.Therefore, the above [Equation 5] can be modified to derive the following [Equation 11].

[수학식 11][Equation 11]

여기서, Pr,m은 수정된 참조위치이고, Or,m은 수정된 참조방향일 수 있다. 그리고, KPI는 각각의 축에 대한 PI제어 게인일 수 있으며, 는 각각의 축에 대한 위치윤곽오차(εp)와 방향윤곽오차(εo)를 나타낼 수 있다.Here, P r,m may be a modified reference position, and O r,m may be a modified reference direction. And, K PI may be the PI control gain for each axis, and may represent the position profile error (ε p ) and direction profile error (ε o ) for each axis.

이에 따라, 공구(111)의 위치 보정량은 하기의 [수학식 12]와 같이 나타날 수 있다.Accordingly, the position correction amount of the tool 111 may be expressed as [Equation 12] below.

[수학식 12][Equation 12]

여기서, 는 각각의 축에 대한 위치윤곽오차(εp)이고, Pc는 윤곽기준위치이며, Pa는 실제위치(Pact)이다.Here, is the position contour error (ε p ) for each axis, Pc is the contour reference position, and Pa is the actual position (P act ).

방향윤곽오차(εo)를 보상하기 위해 상기와 같이 z축 벡터를 이용할 수 있으며, 이와 같은 방식의 경우, [수학식 13]에서 보는 바와 같이, 실제방향(Oact)과 윤곽기준위치(Pc)에서의 참조방향 각각의 z축 벡터에 직교하는 단위방향벡터(n)가 생성될 수 있다. 그 다음, 방향윤곽오차(εo)의 양 만큼 단위방향벡터(n)에 대한 오차 보정을 수행할 수 있다.To compensate for the directional contour error (ε o ), the z-axis vector can be used as above, and in this case, as shown in [Equation 13], the actual direction (O act ) and the outline reference position (Pc ) A unit direction vector (n) orthogonal to each z-axis vector in the reference direction may be generated. Next, error correction for the unit direction vector (n) can be performed by the amount of the direction contour error (ε o ).

[수학식 13][Equation 13]

여기서, n은 단위방향벡터이고, νa는 실제방향(Oact)의 z축 벡터를 나타내고, νc는 윤곽기준위치(Pc)에서의 참조방향의 z축 벡터를 나타낼 수 있다.Here, n is a unit direction vector, ν a represents a z-axis vector in the actual direction (O act ), and ν c may represent a z-axis vector in the reference direction at the outline reference position (Pc).

도 6에서 보는 바와 같이, 방향윤곽오차(εo)를 보상하기 위해 상기와 같이 쿼터니언(Quternion) 구면선형보간(SLERP)을 이용할 수 있으며, 쿼터니언은 단위방향벡터(n)과 회전량(εo)을 사용하여 계산되고 오일러각으로 변환될 수 있다. 하기의 [수학식 14]에 의해서, q->E는 쿼터니언에서 오일러각으로 변환을 나타낼 수 있다.As shown in Figure 6, quaternion spherical linear interpolation (SLERP) can be used as above to compensate for the direction contour error (ε o ), and the quaternion is a unit direction vector (n) and a rotation amount (ε o) . ) and can be converted to Euler angles. By [Equation 14] below, q->E can represent the conversion from quaternion to Euler angle.

[수학식 14][Equation 14]

여기서, n은 단위방향벡터이고, 는 각각의 축에 대한 방향윤곽오차(εo)이다.Here, n is the unit direction vector, and is the direction contour error (ε o ) for each axis.

상기와 같이 형성되는 본 발명의 로봇(120) 제어 장치; 및 로봇(120)의 형상 및 자세 변화, 참조가공경로 및 공구(111)에 대한 윤곽기준위치(Pc)와 윤곽기준방향(Oc) 각각으로의 보정량에 대한 수치를 표시하는 디스플레이 장치를 포함하는 가공 시스템을 형성할 수 있다.A robot 120 control device of the present invention formed as described above; And processing, including a display device that displays values for the shape and posture changes of the robot 120, the reference processing path, and the amount of correction in each of the outline reference position (Pc) and outline reference direction (Oc) for the tool 111. A system can be formed.

디스플레이 장치에는, 로봇(120)의 3차원 형상 및 상기된 각각의 수치 값 중 일부 또는 전체가 표시될 수 있으며, 사용자는 디스플레이 화면을 보면서 로봇(120) 및 공구(111)의 작동 상황 등에 대해 육안으로 확인할 수 있다.On the display device, the three-dimensional shape of the robot 120 and some or all of the above-mentioned numerical values may be displayed, and the user can visually check the operating status of the robot 120 and the tool 111 while looking at the display screen. You can check this.

상기와 같은 본 발명의 로봇(120) 제어 방법 및 장치를 이용하는 경우, 현재 공구(111)의 위치인 실제위치(Pact)와 사전에 설정된 참조위치 간 차이를 이용하여 가공대상(10)에 대한 가공경로의 오차 보정을 수행하므로, 오차 보정의 성능을 향상시킬 수 있다.When using the robot 120 control method and device of the present invention as described above, the difference between the actual position (P act ), which is the current position of the tool 111, and the preset reference position is used to control the processing target 10. Since error correction of the processing path is performed, error correction performance can be improved.

그리고, 추가적인 별도의 장치나 복잡한 연산을 최소화하면서도 로봇(120)에 대한 오차 보정 제어를 수행할 수 있어, 로봇(120)을 이용한 가공공정에서의 효율을 현저히 향상시킬 수 있다.In addition, error correction control for the robot 120 can be performed while minimizing additional devices or complex calculations, thereby significantly improving the efficiency of the machining process using the robot 120.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The description of the present invention described above is for illustrative purposes, and those skilled in the art will understand that the present invention can be easily modified into other specific forms without changing the technical idea or essential features of the present invention. will be. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive. For example, each component described as unitary may be implemented in a distributed manner, and similarly, components described as distributed may also be implemented in a combined form.

본 발명의 범위는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the patent claims described below, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present invention.

10 : 가공대상 110 : 가공부
111 : 공구 120 : 로봇
121 : 힘센서 130 : 제어부
10: Processing object 110: Processing part
111: Tool 120: Robot
121: Force sensor 130: Control unit

Claims (15)

복수 개의 링크와 복수 개의 관절을 구비하여 구동하는 로봇, 상기 로봇의 말단과 결합하고 공구를 구비하여 가공대상에 대한 가공을 수행하는 가공부 및, 상기 공구가 상기 가공대상에 대한 작업 시, 상기 로봇의 자세를 제어하는 제어부를 마련하는 제1단계;
상기 로봇의 자세에 따라 가변하는 상기 복수 개의 관절 각각에 대한 강성 값인 강성데이터와 상기 공구에 작용되는 힘인 절삭력에 대한 정보를 이용함으로써, 상기 공구에 대해 연산된 가공오차인 컴플라이언스오차를 연산하여 도출하는 제2단계;
가공대상에 따라 사전에 설정된 상기 공구의 가공경로인 참조가공경로 상 상기 공구의 위치 및 방향인 참조위치 및 참조방향, 그리고, 상기 컴플라이언스오차를 이용하여, 상기 공구의 실시간 위치와 방향인 실제위치와 실제방향을 측정하는 제3단계;
가공대상에 따라 사전에 설정된 상기 공구의 가공경로인 참조가공경로를 복수 개의 직선으로 분할하는 제4단계;
상기 복수 개의 직선 중 상기 실제위치에 가장 근접한 참조위치인 최근접참조위치를 통과하는 2개의 직선 각각과 상기 실제위치를 수직 연결한 2개의 수직연결선을 이용하여, 상기 공구의 위치 오차를 보정한 위치인 윤곽기준위치를 도출하는 제5단계;
상기 최근접참조위치에서의 상기 참조방향과 상기 실제방향을 이용하여 상기 공구의 방향 오차를 보정한 방향인 윤곽기준방향을 도출하는 제6단계; 및
상기 윤곽기준위치와 상기 윤곽기준방향을 이용하여 상기 로봇을 제어함으로써 상기 공구의 위치와 방향을 제어하는 제7단계;를 포함하는 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
A robot that is driven by having a plurality of links and a plurality of joints, a processing unit coupled to an end of the robot and equipped with a tool to perform processing on the processing object, and when the tool works on the processing object, the robot A first step of providing a control unit to control the posture of;
By using stiffness data, which is the stiffness value for each of the plurality of joints that varies depending on the posture of the robot, and information about cutting force, which is the force applied to the tool, the compliance error, which is the machining error calculated for the tool, is calculated and derived. Step 2;
The reference position and reference direction, which are the position and direction of the tool, on the reference machining path, which is the machining path of the tool set in advance according to the machining target, and the actual position and direction, which are the real-time position and direction of the tool, using the compliance error. A third step of measuring the actual direction;
A fourth step of dividing the reference machining path, which is the machining path of the tool set in advance according to the machining target, into a plurality of straight lines;
A position where the position error of the tool is corrected using two straight lines passing through the nearest reference position, which is the reference position closest to the actual position among the plurality of straight lines, and two vertical connecting lines vertically connecting the actual position. The fifth step of deriving the outline reference position;
A sixth step of deriving a contour reference direction, which is a direction in which a direction error of the tool is corrected, using the reference direction and the actual direction at the closest reference position; and
A seventh step of controlling the position and direction of the tool by controlling the robot using the outline reference position and the outline reference direction. A robot control method using a rigidity model and a cutting force model, comprising a.
청구항 1에 있어서,
상기 제2단계에서, 상기 컴플라이언스오차(Δx)는 하기의 수학식에 의해 도출되며, Δx는 컴플라이언스오차이고, Cx는 데카르트 컴플라이언스 행렬이며, Ф는 절삭력이고, Cθ는 상기 로봇의 관절에 대한 컴플라이언스 행렬이며, J는 자코비안 행렬이고, T는 전치행렬인 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.

In claim 1,
In the second step, the compliance error (Δx) is derived by the following equation, where Δx is the compliance error, Cx is the Cartesian compliance matrix, Ф is the cutting force, and C θ is the compliance for the joints of the robot. A robot control method using a stiffness model and a cutting force model, wherein J is a Jacobian matrix, and T is a transpose matrix.

청구항 1에 있어서,
상기 제4단계에서, 상기 복수 개의 직선은 상기 참조가공경로가 보간기(interpolator)에 의해 분할되어 형성되는 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
In claim 1,
In the fourth step, the plurality of straight lines are formed by dividing the reference processing path by an interpolator.
청구항 1에 있어서,
상기 제5단계에서, 상기 2개의 직선은, 상기 최근접참조위치에 인접한 2개의 참조위치 각각과 상기 최근접참조위치를 연결하여 형성되는 제1연결직선 및 제2연결직선을 포함하는 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
In claim 1,
In the fifth step, the two straight lines include a first connection straight line and a second connection straight line formed by connecting each of two reference positions adjacent to the nearest reference position and the nearest reference position. A robot control method using a rigidity model and cutting force model.
청구항 4에 있어서,
상기 실제위치로부터 상기 제1연결직선으로 연결되는 제1수직연결선과 상기 제1연결직선의 교점인 제1투영점 및, 상기 실제위치로부터 상기 제2연결직선으로 연결되는 제2수직연결선과 상기 제2연결직선의 교점인 제2투영점이 설정되는 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
In claim 4,
A first projection point that is an intersection of a first vertical connection line connected from the actual position to the first connection straight line, and a second vertical connection line connected from the actual position to the second connection straight line and the first projection point. A robot control method using a rigidity model and a cutting force model, characterized in that the second projection point, which is the intersection of two connecting straight lines, is set.
청구항 5에 있어서,
상기 제1연결직선과 상기 제2연결직선 각각에 대한 상기 제1투영점과 상기 제2투영점 각각의 위치에 따라 상기 윤곽기준위치와 상기 윤곽기준방향이 결정되는 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
In claim 5,
Stiffness model and cutting force, wherein the outline reference position and the outline reference direction are determined according to the positions of the first projection point and the second projection point with respect to each of the first connection straight line and the second connection straight line. Robot control method using models.
청구항 6에 있어서,
상기 제1투영점이 상기 제1연결직선의 연장선 상에 위치하고 상기 제2투영점이 상기 제2연결직선의 연장선 상에 위치하는 경우, 상기 최근접참조위치가 상기 윤곽기준위치로 설정되는 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
In claim 6,
When the first projection point is located on an extension of the first connecting straight line and the second projection point is located on an extending line of the second connecting straight line, the closest reference position is set as the outline reference position. Robot control method using rigidity model and cutting force model.
청구항 7에 있어서,
상기 제6단계에서, 상기 윤곽기준방향은, 상기 최근접참조위치에서의 참조방향인 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
In claim 7,
In the sixth step, the outline reference direction is a reference direction at the nearest reference position. A robot control method using a rigidity model and a cutting force model.
청구항 6에 있어서,
상기 제1투영점이 상기 제1연결직선의 연장선 상에 위치하고 상기 제2투영점이 상기 제2연결직선 상에 위치하는 경우, 상기 제2투영점이 상기 윤곽기준위치로 설정되는 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
In claim 6,
When the first projection point is located on an extension of the first connection straight line and the second projection point is located on the second connection straight line, a rigidity model characterized in that the second projection point is set as the outline reference position; Robot control method using cutting force model.
청구항 6에 있어서,
상기 제1투영점이 상기 제1연결직선 상에 위치하고 상기 제2투영점이 상기 제2연결직선의 연장선 상에 위치하는 경우, 상기 제1투영점이 상기 윤곽기준위치로 설정되는 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
In claim 6,
When the first projection point is located on the first connection straight line and the second projection point is located on an extension of the second connection straight line, a rigidity model characterized in that the first projection point is set to the outline reference position; Robot control method using cutting force model.
청구항 6에 있어서,
상기 제1투영점이 상기 제1연결직선 상에 위치하고 상기 제2투영점이 상기 제2연결직선 상에 위치하는 경우, 상기 제1투영점과 상기 제2투영점 중 상기 실제위치에 더 근접한 투영점이 상기 윤곽기준위치로 설정되는 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
In claim 6,
When the first projection point is located on the first connection straight line and the second projection point is located on the second connection straight line, the projection point that is closer to the actual location among the first projection point and the second projection point is the A robot control method using a rigidity model and a cutting force model, which are set to the contour reference position.
청구항 9 내지 청구항 11 중 선택되는 어느 하나의 항에 있어서,
상기 제6단계에서, 상기 윤곽기준방향은, 상기 최근접참조위치에서의 참조방향과 상기 최근접참조위치에 인접한 참조위치에서의 참조방향을 이용한 쿼터니언(Quternion) 구면선형보간(SLERP) 연산으로 획득되는 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
According to any one selected from claims 9 to 11,
In the sixth step, the outline reference direction is obtained through a quaternion spherical linear interpolation (SLERP) operation using the reference direction at the nearest reference position and the reference direction at the reference position adjacent to the nearest reference position. A robot control method using a rigidity model and a cutting force model, characterized in that:
청구항 7 및 청구항 9 내지 청구항 11 중 선택되는 어느 하나의 항에 있어서,
상기 제6단계에서, 상기 윤곽기준방향은, 상기 윤곽기준위치에서 상기 공구의 길이 방향을 따라 형성되는 축의 벡터 방향인 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법.
According to any one selected from claims 7 and 9 to 11,
In the sixth step, the outline reference direction is a vector direction of an axis formed along the longitudinal direction of the tool at the outline reference position. A robot control method using a rigidity model and a cutting force model.
청구항 1의 강성 모델과 절삭력 모델을 이용한 로봇 제어 방법을 수행하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 장치에 있어서,
상기 로봇에 결합되고 상기 공구를 구비하는 가공부; 및
상기 강성데이터와 상기 절삭력에 대한 정보를 이용하여, 상기 공구의 상기 컴플라이언스오차를 도출하고, 가공대상에 따라 사전에 설정된 상기 공구의 가공경로인 참조가공경로 상 상기 공구의 위치와 방향인 상기 참조위치와 상기 참조방향을 설정함으로써, 상기 컴플라이언스오차 및 상기 참조위치와 상기 참조방향을 이용하여 상기 실제위치와 상기 실제방향에 대한 정보를 생성하고, 상기 윤곽기준위치와 상기 윤곽기준방향을 도출하여, 상기 로봇으로 제어신호를 전달함으로써 상기 공구의 위치와 방향을 제어하는 제어부를 포함하는 것을 특징으로 하는 강성 모델과 절삭력 모델을 이용한 로봇 제어 장치.
In the robot control device using a rigidity model and a cutting force model that performs the robot control method using the rigidity model and cutting force model of claim 1,
a processing unit coupled to the robot and equipped with the tool; and
Using the information on the rigidity data and the cutting force, the compliance error of the tool is derived, and the reference position, which is the position and direction of the tool, on the reference machining path, which is the machining path of the tool preset according to the machining target By setting the reference direction, information on the actual position and the actual direction is generated using the compliance error and the reference position and the reference direction, and the outline reference position and the outline reference direction are derived, A robot control device using a rigidity model and a cutting force model, comprising a control unit that controls the position and direction of the tool by transmitting a control signal to the robot.
청구항 14에 의한 강성 모델과 절삭력 모델을 이용한 로봇 제어 장치; 및
상기 로봇의 형상 및 자세 변화, 상기 참조가공경로 및 상기 공구에 대한 상기 윤곽기준위치와 상기 윤곽기준방향 각각으로의 보정량에 대한 수치를 표시하는 디스플레이 장치를 포함하는 것을 특징으로 하는 가공 시스템.
Robot control device using the rigidity model and cutting force model according to claim 14; and
A machining system comprising a display device that displays values for changes in the shape and posture of the robot, the reference machining path, and the amount of correction in each of the outline reference position and the outline reference direction for the tool.
KR1020210128490A 2021-09-28 2021-09-29 A method and apparatus for controlling a robot using a model for stiffness and a model for cutting force KR102591942B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/KR2021/013384 WO2023054751A1 (en) 2021-09-28 2021-09-29 Robot control method using contour control algorithm
KR1020210128490A KR102591942B1 (en) 2021-09-29 2021-09-29 A method and apparatus for controlling a robot using a model for stiffness and a model for cutting force

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210128490A KR102591942B1 (en) 2021-09-29 2021-09-29 A method and apparatus for controlling a robot using a model for stiffness and a model for cutting force

Publications (2)

Publication Number Publication Date
KR20230046333A KR20230046333A (en) 2023-04-06
KR102591942B1 true KR102591942B1 (en) 2023-10-24

Family

ID=85917944

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210128490A KR102591942B1 (en) 2021-09-28 2021-09-29 A method and apparatus for controlling a robot using a model for stiffness and a model for cutting force

Country Status (1)

Country Link
KR (1) KR102591942B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017505240A (en) 2014-02-11 2017-02-16 タイコ エレクトロニクス (シャンハイ) カンパニー リミテッド Automatic calibration method for robotic systems using visual sensors
JP2020049633A (en) 2018-09-28 2020-04-02 三菱重工業株式会社 Teaching work support system for robot and teaching work support method
KR102096897B1 (en) 2018-12-31 2020-04-03 (주) 엠엔비젼 The auto teaching system for controlling a robot using a 3D file and teaching method thereof

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100644174B1 (en) * 2004-05-12 2006-11-15 고등기술연구원연구조합 Method for compensating in welding robot
EP2722136A1 (en) 2012-10-19 2014-04-23 inos Automationssoftware GmbH Method for in-line calibration of an industrial robot, calibration system for performing such a method and industrial robot comprising such a calibration system
KR102312368B1 (en) * 2015-08-04 2021-10-12 한국전기연구원 System, method for controlling redundant robot, and a recording medium having computer readable program for executing the method
CN107214692B (en) * 2016-03-22 2020-04-03 泰科电子(上海)有限公司 Automatic calibration method of robot system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017505240A (en) 2014-02-11 2017-02-16 タイコ エレクトロニクス (シャンハイ) カンパニー リミテッド Automatic calibration method for robotic systems using visual sensors
JP2020049633A (en) 2018-09-28 2020-04-02 三菱重工業株式会社 Teaching work support system for robot and teaching work support method
KR102096897B1 (en) 2018-12-31 2020-04-03 (주) 엠엔비젼 The auto teaching system for controlling a robot using a 3D file and teaching method thereof

Also Published As

Publication number Publication date
KR20230046333A (en) 2023-04-06

Similar Documents

Publication Publication Date Title
Kim et al. Robotic machining: A review of recent progress
CN108748159B (en) Self-calibration method for tool coordinate system of mechanical arm
JP5399624B2 (en) Numerical control method and numerical control device
KR102271941B1 (en) Automated machining head with vision and procedure
Ginani et al. Theoretical and practical aspects of robot calibration with experimental verification
EP2547490B1 (en) Calibration of a base coordinate system for an industrial robot
US8401692B2 (en) System and method for tool testing and alignment
KR20180069031A (en) Direct teaching method of robot
US20080201015A1 (en) System for Calibration of an Industrial Robot and a Method Thereof
JPH0820894B2 (en) Industrial robot operation control method
US10427298B2 (en) Robot system displaying information for teaching robot
JP2010142910A (en) Robot system
WO2015070010A1 (en) Calibration system and method for calibrating industrial robot
JP2012196716A (en) Method of detecting inter-axis offset of six-axis robot
KR20080088165A (en) Robot calibration method
JP3349652B2 (en) Offline teaching method
JP5672173B2 (en) 6-axis robot offset detection method
JP2021059012A (en) Information processing device, information processing method and robot system
JP2002263973A (en) Machine tool
JP5786550B2 (en) 6-axis robot offset detection method
EP4037877B1 (en) A method for determining placement of parallel-kinematic machine joints, and a parallelkinematic machine with high stiffness
KR102591942B1 (en) A method and apparatus for controlling a robot using a model for stiffness and a model for cutting force
CN110026986B (en) Multi-arm cooperative operation compliance control method
KR101205363B1 (en) Method and apparatus for controlling 4-degree of freedom robot using 6-degree of freedom controller
KR102582430B1 (en) A method and apparatus for controlling a robot using feedback from a laser tracker

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant