KR101713195B1 - Joint angle calculation system of robot and method thereof - Google Patents
Joint angle calculation system of robot and method thereof Download PDFInfo
- Publication number
- KR101713195B1 KR101713195B1 KR1020140036482A KR20140036482A KR101713195B1 KR 101713195 B1 KR101713195 B1 KR 101713195B1 KR 1020140036482 A KR1020140036482 A KR 1020140036482A KR 20140036482 A KR20140036482 A KR 20140036482A KR 101713195 B1 KR101713195 B1 KR 101713195B1
- Authority
- KR
- South Korea
- Prior art keywords
- joint
- angle
- rotary arm
- calculated
- robot
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/10—Programme-controlled manipulators characterised by positioning means for manipulator elements
- B25J9/106—Programme-controlled manipulators characterised by positioning means for manipulator elements with articulated links
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
본 발명은 2축/3축 다관절로 이루어진 CNC 선반용 로봇의 관절각을 산업용 PLC 래더 프로그램을 이용하여 산출하여 매니플레이터를 구동시킬 수 있도록 하는 로봇의 관절각 산출 시스템 및 그 방법에 관한 것에 관한 것으로, 제 1 회전암(100), 제 2 회전암(200) 및 제 3 회전암(300)이 마련되어 있으며, 수직상하운전이 가능한 CNC 선반용 로봇의 관절각 산출 시스템에 있어서, 상기 CNC 선반용 로봇에 마련되며, 상기 제 2 회전암(200) 및 상기 제 3 회전암(300)이 연결되어 있는 제 3 조인트(C)의 좌표값을 산출하고, 상기 제 1 회전암(100)이 연결되어 있는 제 1 조인트(A)와 제 3 조인트(C) 사이의 길이(310)를 산출하고, 제 1 조인트(A)와 제 3 조인트(C) 사이의 각도를 산출한 후 제 1 조인트(A), 제 2 조인트(B) 및 제 3 조인트(C)를 상호 각각 연결하여 형성된 삼각형의 3변 길이를 이용하여 제 1 조인트(A), 제 2 조인트(B) 및 제 3 조인트(C)의 각도를 산출하며, 산출된 제 1 조인트(A), 제 2 조인트(B) 및 제 3 조인트(C)의 각도를 기반으로 하여 서보 각도를 산출하여 제공한다. 이에 따라, 고가의 로봇 컨트롤러를 사용하지 않고도 동일한 효과를 제공할 수 있을 뿐만 아니라 고가의 CNC 선반용 로봇을 저가로 공급할 수 있도록 하는 효과가 있다.The present invention relates to a system for calculating a joint angle of a robot and a method thereof for calculating a joint angle of a robot for a CNC lathe having a biaxial / triaxial multi-joint using an industrial PLC ladder program A joint angle calculation system for a robot for a CNC lathe having a first rotary arm (100), a second rotary arm (200), and a third rotary arm (300) And calculates a coordinate value of the third joint C to which the second rotary arm 200 and the third rotary arm 300 are connected, The length 310 between the first joint A and the third joint C is calculated and the angle between the first joint A and the third joint C is calculated and then the first joint A ), The second joint (B), and the third joint (C) (A), the second joint (B), and the third joint (C) by calculating the angles of the first joint (A), the second joint (B) Servo angle is calculated and provided based on angle. Accordingly, the same effect can be provided without using an expensive robot controller, and an expensive CNC lathe robot can be supplied at low cost.
Description
본 발명은 로봇의 관절각 산출 시스템 및 그 방법에 관한 것으로, 특히 2축/3축 다관절로 이루어진 CNC 선반용 로봇의 관절각을 산업용 PLC 래더 프로그램을 이용하여 산출하여 매니플레이터를 구동시킬 수 있도록 하는 로봇의 관절각 산출 시스템 및 그 방법에 관한 것이다.
[0001] The present invention relates to a system for calculating a joint angle of a robot and a method thereof, and more particularly, to a system and a method for calculating a joint angle of a robot for a CNC lathe having two or three axis joints by using an industrial PLC ladder program And more particularly, to a system and a method for calculating a joint angle of a robot.
CNC 공작기계는 제품에 따라 작성된 프로그램에 기초하여 소재를 자동으로 가공함으로써 품질 및 생산성을 향상시킬 수 있도록 구성되어 있으며, 산업발전에 따라 사용범위가 기계, 자동차, 항공, 조선, IT, 전자 산업 등 점차적으로 넓어지고 있는 실정이다.CNC machine tools are designed to improve the quality and productivity by automatically processing the materials based on the programs written according to the products. In accordance with the development of the industry, the range of use is in machinery, automobile, aviation, shipbuilding, IT, It is gradually expanding.
일반적인 공정은 CNC 선반에 공작물을 공급 및 가공 작업 후 취출하는 방법으로 작업자의 수작업으로 이루어졌으며, 이로 인해 작업 소요시간이 과다하게 낭비되고, 작업자의 숙련도에 의해 제품의 품질이 좌우되어 제품 신뢰성 저하 및 생산성 저하의 문제점을 가지고 있다.The general process is manual work of the worker by supplying workpieces to the CNC lathe and taking out the workpieces after the work. This results in excessive waste of the working time and the quality of the product depending on the skill of the worker, There is a problem of productivity deterioration.
따라서, 근래에 들어서는 CNC 선반으로 공작물을 자동 공급하고 취출할 수 있는 장치로, 겐츄리 로더(GANTRY LOADER), 산업용 로봇, 상하 로딩 시스템, 수평식 로딩 시스템 등이 이용되고 있다.Accordingly, a gantry loader, an industrial robot, a vertical loading system, a horizontal loading system, and the like have been used as devices capable of automatically supplying and extracting workpieces with a CNC lathe in the recent years.
특히 산업현장에서는 팔의 기계구조가 평행축인 회전 조인트를 가지며, 축에 직교하는 평면 내에서 컴플라이언스를 가진 로봇인 스카라 로봇 및 사람의 어깨, 팔, 팔꿈치, 손목과 같은 관절을 가지고 있어서 사람이 하는 운동과 비슷하게 운동할 수 있는 다관절 매니플레이터(다관절 로봇)이 많이 적용되고 있다.Especially, in the industrial field, the mechanical structure of the arm has a rotating joint, which is a parallel axis, and a scalar robot, which is a robot having compliance in a plane perpendicular to the axis, and joints such as human shoulders, arms, elbows and wrists, Many articulated manipulators (articulated robots) can be used to exercise similar to exercise.
이러한 스카라 로봇 또는 다관절 로봇을 제어하기 위해서는 PC 또는 별도의 로봇 컨트롤러를 사용하여 로봇의 작업 경로, 토오크, 가감속 및 기타 파라미터를 설정해야 한다.In order to control the scara robot or the articulated robot, the work path, torque, acceleration / deceleration and other parameters of the robot should be set using a PC or a separate robot controller.
그러나 이러한 PC 또는 별도의 로봇 컨트롤러는 로봇 시스템의 30% 이상의 비용이 소요될 정도로 고가이기 때문에 중소기업 및 영세 기업들의 로봇 시스템 운영이 현실적으로 불가능하다는 문제점이 있다.However, since such a PC or a separate robot controller is so expensive as to cost more than 30% of the robot system, there is a problem in that it is practically impossible to operate the robot system of small and medium enterprises and small enterprises.
또한, 로봇 시스템은 공작기계 정면에 장착되어 있기 때문에 작업자의 공구 교환 및 기타 작업을 수행하기 불편하다는 문제점이 있다.Further, since the robot system is mounted on the front face of the machine tool, there is a problem that it is inconvenient for a worker to perform tool change and other work.
또한, 로봇 시스템의 경우 130Kg 이상의 고중량을 가지게 되기 때문에 충돌사고의 위험이 매우 높다는 문제점이 있다.
In addition, since the robot system has a high weight of 130 Kg or more, there is a problem that the risk of collision is very high.
이와 같은 필요성을 충족시키기 위해 본 발명은 2축/3축 다관절로 이루어진 CNC 선반용 로봇의 관절각을 산업용 PLC 래더 프로그램을 이용하여 산출하여 매니플레이터를 구동시킬 수 있도록 하는 로봇의 관절각 산출 시스템 및 그 방법을 제공하는 것을 목적으로 한다.
In order to satisfy such a necessity, the present invention relates to a method for calculating a joint angle of a robot, which can calculate a joint angle of a robot for a CNC lathe having two or three axis joints by using an industrial PLC ladder program, System and a method thereof.
본 발명의 실시예에 따른 로봇의 관절각 산출 시스템은 제 1 회전암(100), 제 2 회전암(200) 및 제 3 회전암(300)이 마련되어 있으며, 수직상하운전이 가능한 CNC 선반용 로봇의 관절각 산출 시스템에 있어서, 상기 CNC 선반용 로봇에 마련되며, 상기 제 2 회전암(200) 및 제 3 회전암(300)이 연결된 제 3 조인트(C)의 좌표값을 산출하고, 상기 제 1 회전암(100)이 연결된 제 1 조인트(A)와 상기 제 3 조인트(C) 각각의 끝단을 연결하여 삼각형을 형성시킨 후 x축을 기준으로 상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 각도를 산출한 후 산출된 상기 제 1 조인트(A)와 제 3 조인트(C) 사이의 각도를 이용하여 상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 길이(310)를 산출하고, 삼각형 세변의 길이(AB, BC, AC)를 이용하여 삼각형의 면적(S)을 산출하며, 산출된 삼각형의 면적(S)과 삼각형의 각 변의 길이를 토대로 상기 제 1 조인트(A), 상기 제 1 회전암(100) 및 상기 제 2 회전암(200)이 연결된 제 2 조인트(B), 상기 제 3 조인트(C)의 관절 각도를 산출하고, 산출된 상기 제 1 조인트(A), 상기 제 2 조인트(B), 상기 제 3 조인트(C)의 관절 각도를 이용하여 상기 제 1 조인트(A), 상기 제 2 조인트(B), 상기 제 3 조인트(C)의 회전각도인 서보 각도를 산출하여 제공하는 로봇 컨트롤러를 포함할 수 있다.The joint angle calculation system of the robot according to the embodiment of the present invention includes a first
본 발명과 관련된 실시예로서, 삼각형 두변의 길이(AB)(BC)는 상기 제 1 회전암(100), 상기 제 2 회전암(200)의 길이와 동일할 수 있다.
As an embodiment related to the present invention, the length AB of the two sides of the triangle AB may be equal to the length of the first
본 발명과 관련된 실시예로서, 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 각도는 하기 수학식 ac_angle=atan(Cy/Cx)에 의해 산출될 수 있다.As an embodiment related to the present invention, the angle between the first joint A and the third joint C can be calculated by the following equation: ac_angle = atan (Cy / Cx).
본 발명과 관련된 실시예로서, 제 1 조인트(A), 제 2 조인트(B), 제 3 조인트(C)의 관절 각도는 수학식 A=asin(2S/(AB*AC)), B=asin(2S/(AB*BC)), C=asin(2S/(AC/BC))에 의해 산출되고, 상기 서보 각도는 수학식 servo_A=ac_angle+A, Servo_B=B, servo_C=t_angle-servo_B-servo_A에 의해 산출될 수 있다. 여기서, S는 삼각형의 면적, AB, AC, BC는 삼각형 각변의 길이이고, A,B,C는 미리 설정된 각 조인트의 서보 각도 값이다.As an embodiment related to the present invention, the joint angles of the first joint A, the second joint B and the third joint C are as follows: A = asin (2S / (AB * AC) (2S / (AB * BC)) and C = asin (2S / (AC / BC)), and the servo angle is calculated by the following equations: servo_A = ac_angle + A, Servo_B = B, servo_C = t_angle- Lt; / RTI > Here, S is the area of the triangle, AB, AC, and BC are the lengths of the sides of the triangle, and A, B, and C are the servo angle values of each joint set in advance.
본 발명의 실시예에 따른 로봇의 관절각 산출 방법은 로봇 컨트롤러(600)는, 제 1 회전암(100), 제 2 회전암(200) 및 제 3 회전암(300)의 관절각을 산출하여 전후 이송 유니트(400) 및 좌우 이송 유니트(500)를 제어하는 로봇 컨트롤러(600)를 포함하고, 수직상하운전이 가능한 CNC 선반용 로봇의 관절각 산출 방법에 있어서, 상기 로봇 컨트롤러(600)는, 상기 제 2 회전암(200) 및 상기 제 3 회전암(300)이 연결된 제 3 조인트(C)의 좌표값(X,Y)을 산출하는 단계; 상기 제 1 회전암(100)이 연결된 제 1 조인트(A)와 상기 제 3 조인트(C) 각각의 끝단을 연결하여 삼각형을 형성시킨 후 x축을 기준으로 상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 각도를 산출하고, 산출된 상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 각도를 이용하여 상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 길이(310)를 산출하는 단계; 산출된 삼각형 면적과 삼각형의 각 변의 길이를 이용하여 상기 제 1 조인트(A), 상기 제 1 회전암(100) 및 상기 제 2 회전암(200)이 연결된 제 2 조인트(B), 상기 제 3 조인트(C)의 관절 각도를 산출하는 단계; 및 상기 산출된 제 1 조인트(A), 상기 제 2 조인트(B), 상기 제 3 조인트(C)의 관절 각도를 이용하여 서보 각도를 산출하는 단계를 포함할 수 있다.The
본 발명과 관련된 실시예로서, 삼각형 두변의 길이(AB)(BC)는 상기 제 1 회전암(100), 상기 제 2 회전암(200)의 길이와 동일할 수 있다.
As an embodiment related to the present invention, the length AB of the two sides of the triangle AB may be equal to the length of the first
본 발명과 관련된 실시예로서, 제 1 조인트(A)와 제 3 조인트(C) 사이의 각도는 하기 수학식 ac_angle=atan(Cy/Cx)에 의해 산출될 수 있다.As an embodiment related to the present invention, the angle between the first joint A and the third joint C can be calculated by the following equation ac_angle = atan (Cy / Cx).
본 발명과 관련된 실시예로서, 제 1 조인트(A), 제 2 조인트(B), 제 3 조인트(C)의 관절 각도는 수학식 A=asin(2S/(AB*AC)), B=asin(2S/(AB*BC)), C=asin(2S/(AC/BC))에 의해 산출되고, 상기 서보 각도는 수학식 servo_A=ac_angle+A, Servo_B=B, servo_C=t_angle-servo_B-servo_A에 의해 산출될 수 있다. 여기서, S는 삼각형의 면적, AB, AC, BC는 삼각형 각변의 길이이고, A,B,C는 미리 설정된 각 조인트의 서보 각도 값이다.As an embodiment related to the present invention, the joint angles of the first joint A, the second joint B and the third joint C are as follows: A = asin (2S / (AB * AC) (2S / (AB * BC)) and C = asin (2S / (AC / BC)), and the servo angle is calculated by the following equations: servo_A = ac_angle + A, Servo_B = B, servo_C = t_angle- Lt; / RTI > Here, S is the area of the triangle, AB, AC, and BC are the lengths of the sides of the triangle, and A, B, and C are the servo angle values of each joint set in advance.
본 발명은 2축/3축 다관절로 이루어진 CNC 선반용 로봇의 관절각을 산업용 PLC 래더 프로그램을 이용하여 산출하여 매니플레이터를 구동시킬 수 있도록 함으로써, 고가의 로봇 컨트롤러를 사용하지 않고도 동일한 효과를 제공할 수 있을 뿐만 아니라 고가의 CNC 선반용 로봇을 저가로 공급할 수 있도록 하는 효과가 있다.The present invention can calculate the joint angles of a robot for a CNC lathe having a biaxial / triaxial multi-joint using an industrial PLC ladder program to drive a manifold, thereby achieving the same effect without using an expensive robot controller It is possible to provide an expensive CNC lathe robot at a low cost.
본 발명은 CNC 선반용 로봇을 저가로 공급할 수 있도록 하여 기업의 인력난 해소와 부가가치 창출, 나아가 기업 및 국가의 경쟁력을 향상시킬 수 있도록 하는 효과가 있다.
The present invention can provide a CNC lathe robot at a low cost, thereby making it possible to eliminate the manpower of the enterprise, to create added value, and to improve the competitiveness of companies and nations.
도 1은 본 발명에 따른 로봇의 관절각 산출 시스템을 설명하기 위한 구성도이다.
도 2는 CNC 선반용 로봇의 관절각 산출 기하학적 해석도이다.
도 3은 본 발명에 따른 로봇의 관절각 산출 방법을 설명하기 위한 동작흐름도이다.1 is a block diagram for explaining a joint angle calculating system of a robot according to the present invention.
Fig. 2 is a geometric analysis diagram of the joint angle calculation of the CNC lathe robot.
FIG. 3 is a flowchart illustrating a method for calculating a joint angle of a robot according to the present invention.
본 발명에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 발명에서 사용되는 기술적 용어는 본 발명에서 특별히 다른 의미로 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 발명에서 사용되는 기술적인 용어가 본 발명의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 당업자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 발명에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.It is noted that the technical terms used in the present invention are used only to describe specific embodiments and are not intended to limit the present invention. In addition, the technical terms used in the present invention should be construed in a sense generally understood by a person having ordinary skill in the art to which the present invention belongs, unless otherwise defined in the present invention, Should not be construed to mean, or be interpreted in an excessively reduced sense. In addition, when a technical term used in the present invention is an erroneous technical term that does not accurately express the concept of the present invention, it should be understood that technical terms can be understood by those skilled in the art. In addition, the general terms used in the present invention should be interpreted according to a predefined or prior context, and should not be construed as being excessively reduced.
또한, 본 발명에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함한다. 본 발명에서, "구성된다" 또는 "포함한다" 등의 용어는 발명에 기재된 여러 구성 요소들, 또는 여러 단계를 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다.
Furthermore, the singular expressions used in the present invention include plural expressions unless the context clearly dictates otherwise. In the present invention, terms such as "comprising" or "comprising" and the like should not be construed as encompassing various elements or stages of the invention, Or may further include additional components or steps.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings, wherein like reference numerals refer to like or similar elements throughout the several views, and redundant description thereof will be omitted.
또한, 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 발명의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 발명의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.
In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail. It is to be noted that the accompanying drawings are only for the purpose of facilitating understanding of the present invention, and should not be construed as limiting the scope of the present invention with reference to the accompanying drawings.
도 1은 본 발명에 따른 로봇의 관절각 산출 시스템을 설명하기 위한 구성도이다. 1 is a block diagram for explaining a joint angle calculating system of a robot according to the present invention.
도 1에 도시된 바와 같이 먼저 CNC 선반용 로봇은 제 1 회전암(100), 제 2 회전암(200) 및 제 3 회전암(300)이 마련되어 있으며, 제 1 회전암(100), 제 2 회전암(200) 및 제 3 회전암(300)의 전후 운동을 제어하는 전후 액추에이터를 가지는 전후 이송 유니트(400)와, 제 1 회전암(100), 제 2 회전암(200) 및 제 3 회전암(300)의 좌우 운동을 제어하는 좌우 액추에이터를 가지는 좌우 이송 유니트(500)와, 제 1 회전암(100), 제 2 회전암(200) 및 제 3 회전암(300)의 관절각(조인트 각도)을 산출하여 전후 이송 유니트(400) 및 좌우 이송 유니트(500)를 제어하는 로봇 컨트롤러(600)로 이루어진다. 여기서 로봇 컨트롤러(600)는 저가로 구현 가능한 산업용 PLC(PROGRAM LOGIC CONTROLLER)로 이루어지며, 산업용 PLC의 래더 프로그램(LADDER PROGRAM)을 이용하여 2 자유도 또는 3 자유도를 가지는 스카라 및 다관절 로봇의 관절각(joint angle)을 산출하는데, 특히 삼각함수를 이용하여 산출하는 로봇 컨트롤러(600)로 이루어진다.1, the CNC lathe robot includes a first
로봇 컨트롤러(600)는 제 1 회전암(100), 제 2 회전암(200) 및 제 3 회전암(300)이 마련되어 있으며, 수직상하운전이 가능한 CNC 선반용 로봇의 관절각 산출 시스템에 있어서, CNC 선반용 로봇에 마련되며, 제 2 회전암(200) 및 제 3 회전암(300)이 연결되어 있는 제 3 조인트(C)의 좌표값을 산출하고, 제 1 회전암(100)이 연결되어 있는 제 1 조인트(A)와 제 3 조인트(C) 각각의 끝단을 연결하여 삼각형을 형성시킨 후 x축을 기준으로 제 1 조인트(A)와 제 3 조인트(C) 사이의 각도를 산출한 후 산출된 제 1 조인트(A)와 제 3 조인트(C) 사이의 각도를 이용하여 제 1 조인트(A)와 제 3 조인트(C) 사이의 길이(310)를 산출하고, 삼각형 세변의 길이(AB, BC, AC)를 이용하여 삼각형의 면적(S)을 산출하며, 삼각형의 면적(S)을 토대로 제 1 조인트(A), 제 1 회전암(100) 및 제 2 회전암(200)이 연결되어 있는 제 2 조인트(B), 제 3 조인트(C)의 관절 각도를 산출하고, 산출된 제 1 조인트(A), 제 2 조인트(B), 제 3 조인트(C)의 관절 각도를 이용하여 제 1 조인트(A), 제 2 조인트(B), 제 3 조인트(C)의 회전각도인 서보 각도를 산출하여 제공한다.The
삼각형 두변의 길이(AB)(BC)는 상기 제 1 회전암(100), 상기 제 2 회전암(200)의 길이와 동일하다.The length AB of the two sides of the triangle is equal to the length of the first
제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 각도는 하기 수학식 ac_angle=atan(Cy/Cx)에 의해 산출된다. The angle between the first joint A and the third joint C is calculated by the following equation ac_angle = atan (Cy / Cx).
제 1 조인트(A), 제 2 조인트(B), 제 3 조인트(C)의 관절 각도는 수학식 A=asin(2S/(AB*AC)), B=asin(2S/(AB*BC)), C=asin(2S/(AC/BC))에 의해 산출되고, 상기 서보 각도는 수학식 servo_A=ac_angle+A, Servo_B=B, servo_C=t_angle-servo_B-servo_A에 의해 산출된다. 여기서, S는 삼각형의 면적, AB, AC, BC는 삼각형 각변의 길이이고, A,B,C는 미리 설정된 각 조인트의 서보 각도 값이다.The joint angles of the first joint A, the second joint B and the third joint C are as follows: ) And C = asin (2S / (AC / BC)), and the servo angle is calculated by the equations servo_A = ac_angle + A, Servo_B = B, servo_C = t_angle-servo_B-servo_A. Here, S is the area of the triangle, AB, AC, and BC are the lengths of the sides of the triangle, and A, B, and C are the servo angle values of each joint set in advance.
상기와 같이 구성된 로봇의 관절각 산출 방법을 설명하면 다음과 같다.A method of calculating the joint angle of the robot configured as described above will be described below.
도 2는 CNC 선반용 로봇의 관절각 산출 기하학적 해석도이다. 도 3은 본 발명에 따른 로봇의 관절각 산출 방법을 설명하기 위한 동작흐름도이다.Fig. 2 is a geometric analysis diagram of the joint angle calculation of the CNC lathe robot. FIG. 3 is a flowchart illustrating a method for calculating a joint angle of a robot according to the present invention.
도 2 및 도 3에 도시된 바와 같이 로봇 컨트롤러(600)는 제 2 회전암(200) 및 제 3 회전암(300)이 연결되어 있는 제 3 조인트(C)의 좌표값(X,Y)을 산출(S110)한다.2 and 3, the
여기서, 제 3 조인트(C)의 좌표값(X,Y)을 산출하기 위한 수학식은 C(x)=Tx-CT*cos(t_angle), C(y)=Ty-CT*sin(t_angle)이고, 제 1 조인트(A)와 제 3 조인트(C) 사이의 길이(310)를 산출하기 위한 수학식은 AC=sqr(Cx2+Cy2)이다. 제 1 조인트(A)와 제 3 조인트(C) 사이의 길이(310)는 피타고라스 정리에 입각하여 산출할 수 있다. 즉, 위의 수학식에 의해 산출된 제 3 조인트(C)의 X 좌표값의 제곱과 제 3 조인트(C)의 Y 좌표값의 제곱을 합산시킨 결과값에 루트를 적용시키게 되면 직각 삼각형의 빗변인 제 1 조인트(A)와 제 3 조인트(C) 사이의 길이(310)가 산출된다. 여기서, AC는 제 1 조인트(A)와 제 3 조인트 사이의 길이로서, Cx, Cy는 상기 AC를 빗변으로 가지는 직각을 낀 두 변의 길이이다. 그리고, CT는 상기 제 3 조인트(C)로부터 시작된 제 3 회전암(300)의 길이이고, T는 공작물의 공급·가공·취출의 목표지점(Target point)으로서, 상기 T의 좌표값(Tx, Ty)은 CNC 선반에 공작물을 공급 및 가공 작업 후 취출하는 방법에 대응하여 미리 정해지며, 상기 t_angle는 제 3 회전아암(300)의 각도로서, 이 역시 CNC 선반에 공작물을 공급 및 가공 작업 후 취출하는 방법에 대응하여 미리 정해진다.The equation for calculating the coordinate values (X, Y) of the third joint C is C (x) = Tx-CT * cos (t_angle) , The equation for calculating the
도 2에 도시된 바와 같이 로봇 컨트롤러(600)는 제 1 조인트(A)와 제 3 조인트(C) 각각의 끝단을 연결하여 삼각형을 형성시킨 후 x축을 기준으로 수학식 ac_angle=atan(Cy/Cx)를 이용하여 제 1 조인트(A)와 제 3 조인트(C) 사이의 각도를 산출하고, 산출된 제 1 조인트(A)와 제 3 조인트(C) 사이의 각도를 이용하여 제 1 조인트(A)와 제 3 조인트(C) 사이의 길이(310)를 산출(S120)한다. 이로써, 로봇 컨트롤러(600)는 제 1 조인트(A), 제 2 조인트(B) 및 제 3 조인트(C)를 꼭지점으로 가지는 삼각형의 세변의 길이(AB, BC, AC)를 가지게 된다. 여기서 삼각형의 두변의 길이(AB, BC)는 제 1 회전암(100) 및 제 2 회전암(200)의 길이로 알 수 있게 된다.2, the
삭제delete
로봇 컨트롤러(600)는 S130 단계를 통해 가지게 된 삼각형 세변의 길이(AB, BC, AC)를 수학식 S=sqr((s*(s-AB)*(s-BC)*(s-AC))에 적용시켜 삼각형의 면적(S)을 산출한다. 여기서, 매개변수 (s) 는 (s)=(AB+BC+AC)/2 이다.
즉, 위에서 언급된 매개변수 (s) 및 삼각형의 면적(S)은 Heron's formula 증명방식에 의해 산출되는 것이다.
여기서 사인 법칙을 이용하면 sin(A)/BC=sin(B)/AC=sin(C)/AB=AB*BC*AC/2S와 같다. 그러므로 로봇 컨트롤러(600)는 수학식인 A=asin(2S/(AB*AC)), B=asin(2S/(AB*BC)), C=asin(2S/(AC/BC))에 위에서 산출된 값들을 적용시켜 관절인 제 1 조인트(A), 제 2 조인트(B), 제 3 조인트(C)의 관절 각도를 산출(S130)한다.
그리고 로봇 컨트롤러(600)는 제 1 조인트(A), 제 2 조인트(B), 제 3 조인트(C)의 관절 각도를 수학식 servo_A=ac_angle+A, Servo_B=B, servo_C=t_angle-servo_B-servo_A에 적용시켜 서보 각도를 산출한다.
위에서 언급된 S는 삼각형의 면적, AB, AC, BC는 삼각형 각변의 길이이고, A,B,C는 미리 설정된 각 조인트의 서보 각도 값이다.
그리고 로봇 컨트롤러(600)는 이렇게 산출된 서보 각도를 전후 이송 유니트(400) 및 좌우 이송 유니트(500) 각각으로 제공(S140)하여, 산출된 제 1 조인트(A), 상기 제 2 조인트(B), 상기 제 3 조인트(C)의 회전각도인 서보 각도를 기반으로 제 1 회전암(100), 제 2 회전암(200), 제 3 회전암(300)이 회전되도록 제어한다.The
That is, the parameters (s) and the area (S) of the triangle mentioned above are calculated by the Heron's formula proof method.
Here, using the sine law, sin (A) / BC = sin (B) / AC = sin (C) / AB = AB * BC * AC / 2S. Therefore, the
The
S is the area of the triangle, AB, AC, and BC are the lengths of the sides of the triangle, and A, B, and C are the servo angle values of each joint set in advance.
The
삭제delete
삭제delete
삭제delete
삭제delete
전술한 내용은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or essential characteristics thereof. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.
100 : 제 1 회전암
200 : 제 2 회전암
300 : 제 3 회전암
A : 제 1 조인트
B : 제 2 조인트
C : 제 3 조인트100: first rotary arm
200: second rotary arm
300: Third rotary arm
A: First joint
B: second joint
C: Third joint
Claims (8)
상기 CNC 선반용 로봇에 마련되며, 상기 제 2 회전암(200) 및 상기 제 3 회전암(300)이 연결된 제 3 조인트(C)의 좌표값을 산출하고, 상기 제 1 회전암(100)이 연결된 제 1 조인트(A)와 상기 제 3 조인트(C) 각각의 끝단을 연결하여 삼각형을 형성시킨 후 x축을 기준으로 상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 각도를 산출한 후 산출된 상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 각도를 이용하여 상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 길이(310)를 산출하고, 삼각형 세변의 길이(AB, BC, AC)를 이용하여 삼각형의 면적(S)을 산출하며, 산출된 삼각형의 면적(S)과 삼각형의 각 변의 길이를 토대로 상기 제 1 조인트(A), 상기 제 1 회전암(100) 및 상기 제 2 회전암(200)이 연결된 제 2 조인트(B), 상기 제 3 조인트(C)의 관절 각도를 산출하고, 상기 산출된 상기 제 1 조인트(A), 상기 제 2 조인트(B), 상기 제 3 조인트(C)의 관절 각도를 이용하여 상기 제 1 조인트(A), 상기 제 2 조인트(B), 상기 제 3 조인트(C)의 회전각도인 서보 각도를 산출하여 제공하는 로봇 컨트롤러를 포함하는 로봇의 관절각 산출 시스템.
A joint angle calculating system for a robot for a CNC lathe having a first rotary arm (100), a second rotary arm (200), and a third rotary arm (300)
The coordinate system of the third joint C provided in the CNC lathe robot and connected to the second rotary arm 200 and the third rotary arm 300 is calculated, The angle between the first joint (A) and the third joint (C) is calculated based on the x-axis after forming the triangle by connecting the ends of the connected first joint (A) and the third joint (C) A length 310 between the first joint A and the third joint C is calculated using the angle between the first joint A and the third joint C calculated after the first joint A and the third joint C, The area S of the triangle is calculated by using the lengths AB, BC, and AC of the triangle three sides, and the first joint A, the second joint A, and the second joint A are calculated based on the area S of the calculated triangle and the lengths of the sides of the triangle. A second joint (B) to which the first rotary arm (100) and the second rotary arm (200) are connected, a joint angle of the third joint (C) (A), the second joint (B), the third joint (C), and the third joint (C) by using the joint angles of the first joint (A), the second joint And a robot controller for calculating and providing a servo angle that is a rotation angle of the robot.
상기 삼각형 두변의 길이(AB)(BC)는 상기 제 1 회전암(100), 상기 제 2 회전암(200)의 길이와 동일한 것을 특징으로 하는 로봇의 관절각 산출 시스템.
The method according to claim 1,
The length AB of the two sides of the triangle is equal to the length of the first rotary arm 100 and the second rotary arm 200.
상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 각도는 하기 수학식 ac_angle=atan(Cy/Cx)에 의해 산출되는 것을 특징으로 하는 로봇의 관절각 산출 시스템.
The method according to claim 1,
Wherein the angle between the first joint (A) and the third joint (C) is calculated by the following equation: ac_angle = atan (Cy / Cx).
상기 제 1 조인트(A), 제 2 조인트(B), 제 3 조인트(C)의 관절 각도는 수학식 A=asin(2S/(AB*AC)), B=asin(2S/(AB*BC)), C=asin(2S/(AC/BC))에 의해 산출되고, 상기 서보 각도는 수학식 servo_A=ac_angle+A, Servo_B=B, servo_C=t_angle-servo_B-servo_A에 의해 산출되는 것을 특징으로 하는 로봇의 관절각 산출 시스템.
여기서, S는 삼각형의 면적, AB, AC, BC는 삼각형 각변의 길이이고, A,B,C는 미리 설정된 각 조인트의 서보 각도 값이다.
The method according to claim 1,
The joint angles of the first joint A, the second joint B and the third joint C are expressed by the following equations: A = asin (2S / (AB * AC)), B = asin (2S / ), And C = asin (2S / (AC / BC)), and the servo angle is calculated by the following equation: servo_A = ac_angle + A, Servo_B = B, servo_C = t_angle-servo_B- Joint Angle Calculation System of Robot.
Here, S is the area of the triangle, AB, AC, and BC are the lengths of the sides of the triangle, and A, B, and C are the servo angle values of each joint set in advance.
상기 로봇 컨트롤러(600)는, 상기 제 2 회전암(200) 및 상기 제 3 회전암(300)이 연결된 제 3 조인트(C)의 좌표값(X,Y)을 산출하는 단계;
상기 제 1 회전암(100)이 연결된 제 1 조인트(A)와 상기 제 3 조인트(C) 각각의 끝단을 연결하여 삼각형을 형성시킨 후 x축을 기준으로 상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 각도를 산출하고, 산출된 상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 각도를 이용하여 상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 길이(310)를 산출하는 단계;
산출된 삼각형 면적과 삼각형의 각 변의 길이를 이용하여 상기 제 1 조인트(A), 상기 제 1 회전암(100) 및 상기 제 2 회전암(200)이 연결된 제 2 조인트(B), 상기 제 3 조인트(C)의 관절 각도를 산출하는 단계; 및
상기 산출된 제 1 조인트(A), 상기 제 2 조인트(B), 상기 제 3 조인트(C)의 관절 각도를 이용하여 서보 각도를 산출하는 단계를 포함하는 로봇의 관절각 산출 방법.
A robot controller 600 for calculating the joint angles of the first rotary arm 100, the second rotary arm 200 and the third rotary arm 300 and controlling the front and rear transfer units 400 and the left and right transfer units 500, A method for computing a joint angle of a robot for a CNC lathe including a vertical up and down operation,
The robot controller 600 may calculate the coordinate values X and Y of the third joint C to which the second rotary arm 200 and the third rotary arm 300 are connected.
A first joint A connecting the first rotary arm 100 and an end of each of the third joint C are connected to form a triangle and then the first joint A and the third joint C, The angle between the joints C is calculated and an angle between the calculated first joint A and the third joint C is used to calculate the angle between the first joint A and the third joint C, Calculating a length (310) of the object;
The second joint (B) to which the first joint (A), the first rotary arm 100 and the second rotary arm 200 are connected by using the calculated triangle area and the length of each side of the triangle, Calculating a joint angle of the joint (C); And
And calculating a servo angle using the calculated joint angles of the first joint (A), the second joint (B), and the third joint (C).
상기 삼각형은, 상기 제 1 조인트(A), 상기 제 2 조인트(B), 상기 제 3 조인트(C)를 각 꼭지점으로 하고,
상기 제 1 조인트(A)와 제 2 조인트(B)를 연결하는 삼각형의 어느 한 변의 길이는 상기 제 1 회전암(100)의 길이와 동일하며, 상기 제 2 조인트(B)와 제 3 조인트(C)를 연결하는 삼각형의 어느 한 변의 길이는 상기 제 2 회전암(200)의 길이와 동일한 것을 특징으로 하는 로봇의 관절각 산출 방법.
6. The method of claim 5,
The triangle is formed such that each of the first joint (A), the second joint (B), and the third joint (C)
The length of either side of the triangle connecting the first joint A and the second joint B is equal to the length of the first rotary arm 100 and the length of the second joint B and the third joint B C) is equal to the length of the second rotary arm (200).
상기 제 1 조인트(A)와 상기 제 3 조인트(C) 사이의 각도는 하기 수학식 ac_angle=atan(Cy/Cx)에 의해 산출되는 것을 특징으로 하는 로봇의 관절각 산출방법.
6. The method of claim 5,
Wherein an angle between the first joint (A) and the third joint (C) is calculated by the following equation: ac_angle = atan (Cy / Cx).
상기 제 1 조인트(A), 제 2 조인트(B), 제 3 조인트(C)의 관절 각도는 수학식 A=asin(2S/(AB*AC)), B=asin(2S/(AB*BC)), C=asin(2S/(AC/BC))에 의해 산출되고, 상기 서보 각도는 수학식 servo_A=ac_angle+A, Servo_B=B, servo_C=t_angle-servo_B-servo_A에 의해 산출되는 것을 특징으로 하는 로봇의 관절각 산출 방법.
여기서, S는 삼각형의 면적, AB, AC, BC는 삼각형 각변의 길이이고, A,B,C는 미리 설정된 각 조인트의 서보 각도 값이다.
6. The method of claim 5,
The joint angles of the first joint A, the second joint B and the third joint C are expressed by the following equations: A = asin (2S / (AB * AC)), B = asin (2S / ), And C = asin (2S / (AC / BC)), and the servo angle is calculated by the following equation: servo_A = ac_angle + A, Servo_B = B, servo_C = t_angle-servo_B- The method of calculating the joint angle of a robot.
Here, S is the area of the triangle, AB, AC, and BC are the lengths of the sides of the triangle, and A, B, and C are the servo angle values of each joint set in advance.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140036482A KR101713195B1 (en) | 2014-03-28 | 2014-03-28 | Joint angle calculation system of robot and method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140036482A KR101713195B1 (en) | 2014-03-28 | 2014-03-28 | Joint angle calculation system of robot and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150112395A KR20150112395A (en) | 2015-10-07 |
KR101713195B1 true KR101713195B1 (en) | 2017-03-07 |
Family
ID=54343656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140036482A KR101713195B1 (en) | 2014-03-28 | 2014-03-28 | Joint angle calculation system of robot and method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101713195B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101985328B1 (en) * | 2017-11-30 | 2019-06-04 | (주)오토로보틱스 | System calculating joint angle of articulated robot |
CN111267111B (en) * | 2020-03-31 | 2021-10-01 | 烟台艾睿光电科技有限公司 | Robot control method, device and system |
CN111331154A (en) * | 2020-04-14 | 2020-06-26 | 陕西诺贝特自动化科技有限公司 | Load automatic lathe that has truss manipulator |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2538287B2 (en) | 1987-11-11 | 1996-09-25 | ファナック株式会社 | Origin adjustment method for horizontal joint robot |
JP5160700B1 (en) | 2011-08-24 | 2013-03-13 | ヤマザキマザック株式会社 | NC machine tool system |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07155947A (en) | 1993-12-09 | 1995-06-20 | Mitsubishi Heavy Ind Ltd | Fine build-up machine tool |
JPH11309683A (en) * | 1998-04-27 | 1999-11-09 | Nachi Fujikoshi Corp | Handling robot and control method thereof |
JP2009202236A (en) | 2008-01-31 | 2009-09-10 | Minoru Kanematsu | Spindle unit with elevating function, cnc machine tool, and machining line |
KR100834919B1 (en) | 2008-03-18 | 2008-06-03 | 유학현 | Apparatus for supplying/drawing out material to/from machine tools |
KR101149361B1 (en) | 2009-11-30 | 2012-05-30 | 이정환 | Loading and unloading apparatus for machine |
-
2014
- 2014-03-28 KR KR1020140036482A patent/KR101713195B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2538287B2 (en) | 1987-11-11 | 1996-09-25 | ファナック株式会社 | Origin adjustment method for horizontal joint robot |
JP5160700B1 (en) | 2011-08-24 | 2013-03-13 | ヤマザキマザック株式会社 | NC machine tool system |
Also Published As
Publication number | Publication date |
---|---|
KR20150112395A (en) | 2015-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9895810B2 (en) | Cooperation system having machine tool and robot | |
KR940003204B1 (en) | Control robot | |
CN110757454B (en) | Path planning method and device for cooperative rotation of double robots | |
US10864632B2 (en) | Direct teaching method of robot | |
US8694160B2 (en) | NC machine tool system | |
US9718189B2 (en) | Robot teaching device for teaching robot offline | |
US9205525B2 (en) | System and method for offsetting measurement of machine tool | |
EP3175958B1 (en) | 5-axis and 6-axis mixing control method for industrial robot and system thereof | |
JP6418483B2 (en) | Processing trajectory generating apparatus and method | |
JP2011041992A (en) | Machining robot system | |
US9662785B2 (en) | Gantry robot system | |
KR101713195B1 (en) | Joint angle calculation system of robot and method thereof | |
WO2020173111A1 (en) | 3d micro-coating robot and coating method therefor | |
CN109927028A (en) | A kind of force-location mix control method of power man-controlled mobile robot polishing processing | |
JP2014208400A (en) | Robot controller and robot attitude interpolation method | |
Xu et al. | A novel kinematic model for five-axis machine tools and its CNC applications | |
CN104959878A (en) | Industrial robot machining system | |
WO2014123054A1 (en) | Robot control device and robot control method | |
Caro et al. | Workpiece placement optimization for machining operations with industrial robots | |
CN110281152B (en) | Robot constant-force polishing path planning method and system based on online touch test | |
JP2014075050A (en) | Machining system and machining method therefor | |
JP6390832B2 (en) | Processing trajectory generating apparatus and method | |
CN110515346A (en) | A kind of industrial robot milling is complex-curved without cutter path interpolating method excessively | |
JPS5916286B2 (en) | Operation control method for industrial robots | |
KR20150063308A (en) | Mobile manipulator system and optimizatiom method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
N231 | Notification of change of applicant | ||
X701 | Decision to grant (after re-examination) |