WO2023211007A1 - Robot for assembling furniture - Google Patents

Robot for assembling furniture Download PDF

Info

Publication number
WO2023211007A1
WO2023211007A1 PCT/KR2023/004789 KR2023004789W WO2023211007A1 WO 2023211007 A1 WO2023211007 A1 WO 2023211007A1 KR 2023004789 W KR2023004789 W KR 2023004789W WO 2023211007 A1 WO2023211007 A1 WO 2023211007A1
Authority
WO
WIPO (PCT)
Prior art keywords
robot
assembly
furniture
controller
frames
Prior art date
Application number
PCT/KR2023/004789
Other languages
French (fr)
Korean (ko)
Inventor
박재흥
박수한
이해성
Original Assignee
서울대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020230042190A external-priority patent/KR20230151462A/en
Application filed by 서울대학교산학협력단 filed Critical 서울대학교산학협력단
Publication of WO2023211007A1 publication Critical patent/WO2023211007A1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/06Programme-controlled manipulators characterised by multi-articulated arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls

Abstract

A robot for assembling furniture according to one embodiment of the present invention assembles furniture by assembling a plurality of frames and connection parts for connecting each of the plurality of frames, and comprises: a base stand which forms a working space in which the plurality of frames are assembled; a plurality of robot arms installed on the base stand; gripping parts which are installed on the robot arms and grip at least a portion of the plurality of frames; and a controller which controls the operations of the plurality of robot arms and the gripping parts installed on each of the plurality of robot arms, wherein the controller can control the operations of the plurality of robot arms and the gripping parts to assemble the frames according to a work template including assembly sequence information and motion information about the plurality of robot arms for assembling the furniture.

Description

가구 조립 로봇furniture assembly robot
본 발명은 가구 조립 로봇에 관한 것으로서, 더욱 상세하게는 조립설명서에 의해 도출된 가구 프레임의 연결 관계 및 조립 순서를 기초로 가구를 조립하기 위한 가구 조립 로봇과 그를 이용한 로봇의 조립 자동화 방법에 관한 것이다.The present invention relates to a furniture assembly robot, and more specifically, to a furniture assembly robot for assembling furniture based on the connection relationship and assembly sequence of the furniture frame derived from the assembly instructions, and a method of automating the assembly of the robot using the same. .
대량생산이 주력이었던 공정에서는 주로 로봇을 직접 교시하여 주어진 작업을 수행해왔다. 직접 교시 방법은 사람이 직접 로봇이 움직일 수 있는 관절 설정과 목표 위치를 알려주어 반복하는 작업을 쉽게 수행할 수 있도록 한다. 하지만 직접 교시 방법은 다품종 소량생산과 같이 생산공정이 자주 바뀌는 환경에서는 사람의 개입이 많아져 효율성이 떨어지는 단점이 있고 직접 교시 방법을 사용하지 않고 작업을 수행하는 것은 물체 인식, 계획, 제어 등에서 많은 불확실성을 유발한다. 따라서 직접 교시가 아닌 지능 로봇이 상황에 맞추어 자율적으로 작업을 수행하도록 하는 문제는 극복해야 할 많은 문제를 가진 분야로 여겨지며 많은 연구가 활발하게 진행되어왔다.In processes where mass production was the main focus, robots were mainly taught directly to perform given tasks. The direct teaching method allows a person to easily perform repetitive tasks by directly informing the robot of the joint settings and target positions at which the robot can move. However, the direct teaching method has the disadvantage of being less efficient due to increased human intervention in environments where the production process changes frequently, such as small quantity production of many types, and performing work without using the direct teaching method involves many uncertainties in object recognition, planning, and control. causes Therefore, the problem of allowing intelligent robots to perform tasks autonomously according to the situation rather than through direct teaching is considered a field with many problems to overcome, and much research has been actively conducted.
가구 조립, 요리 등의 기존에 직접교시만으로 해결하기 어려웠던 작업을 협동로봇의 자율 계획 및 제어로 해결해 나가는 연구 또한 수행되고 있는데, 대표적으로 싱가포르의 난양 공과대학교의 연구팀에서 시판용 의자를 조립한 선례가 있다.Research is also being conducted to solve tasks that were previously difficult to solve through direct teaching, such as furniture assembly and cooking, through autonomous planning and control of collaborative robots. A representative example is the precedent of assembling commercial chairs by a research team at Nanyang Technological University in Singapore. .
로봇의 조립 자동화는 크게 두 가지 분야에서 발전해왔다. 첫 번째는 작업 계획 분야로, 조립 작업의 제한 조건들을 바탕으로 가능한 조립 순서를 계획하는 데에 초점이 맞춰져 있다. 이 분야에서는 실제 로봇의 물리적 한계를 고려하지 않은 채 가능성(feasibility)만을 고려하여 불확실성이 존재하는 실제 상황에 적용하기 어렵다는 단점이 있다. 두 번째는 조립 제어와 모션 계획 분야이다. 제어 방법 중 불확실성을 극복하는 방법으로써, 가장 대표적으로 펙인홀(peg-in-hole) 작업이 있다. 펙인홀 작업에 관한 연구는 대부분 금속 재질의 펙과 홀을 삽입하는 연구인데, 목재의 펙인홀 작업은 금속 재질과는 다르게 더욱 많은 마찰력을 극복해야 한다. 또한, 제한된 공간에서 수많은 조립작업을 수행하기 위해서는 가용 조립 영역을 활용하는 것이 중요하다. 이를 해결하는 방법으로써 샘플링 기반 모션 계획 기술이 개발되어왔다. 로봇의 관절 공간에서 주어진 작업을 만족하는 해를 구하기 때문에 다양한 해를 산출할 수 있다. 하지만 기존 방법에서는 모션 계획에서 구해진 경로를 따라간 후의 작업 공간 제어를 고려하지 않아 도착 위치가 특이점이나 관절 제한 근처에 있으면 작업 공간 상 조립 제어에 실패할 수 있는 문제가 있다.Robotic assembly automation has developed in two major areas. The first is the work planning area, which focuses on planning possible assembly sequences based on the constraints of the assembly task. In this field, there is a disadvantage that it is difficult to apply to actual situations where uncertainty exists, considering only feasibility without considering the physical limitations of the actual robot. The second is the field of assembly control and motion planning. Among control methods, the most representative method of overcoming uncertainty is peg-in-hole operation. Most studies on peg-in-hole work involve inserting pegs and holes made of metal, but peg-in-hole work on wood, unlike metal materials, requires overcoming more friction. Additionally, in order to perform numerous assembly tasks in a limited space, it is important to utilize the available assembly area. As a way to solve this problem, sampling-based motion planning technology has been developed. Since a solution that satisfies a given task is found in the robot's joint space, a variety of solutions can be calculated. However, the existing method does not consider work space control after following the path obtained from the motion plan, so there is a problem that assembly control in the work space may fail if the arrival position is near a singularity or joint limit.
본 발명은 상술한 종래 기술의 문제점을 해결하기 위한 것으로서, 비정형 실제 환경에서 큰 힘을 요구하는 조립 작업을 복수의 로봇 암을 활용함으로써 협소한 작업 공간에서도 조립 작업을 성공적으로 수행하는 가구 조립 로봇과 그를 이용한 로봇의 조립 자동화 방법에 관한 것이다.The present invention is intended to solve the problems of the prior art described above, and includes a furniture assembly robot that successfully performs assembly work even in a narrow work space by utilizing a plurality of robot arms for assembly work that requires large force in an unstructured real environment. It is about a method of automating the assembly of robots using it.
상기 목적을 달성하기 위해서, 본 발명의 일 실시예에 따른 가구 조립 로봇은 복수의 프레임과 상기 복수의 프레임 각각을 연결하는 연결 부품을 조립하여 가구를 조립하고, 복수의 프레임을 조립하는 작업 공간을 형성하는 기대, 기대에 설치되는 복수의 로봇 암, 로봇 암에 설치되어 복수의 프레임 중 적어도 일부를 파지하는 파지부 및 복수의 로봇 암 및 복수의 로봇 암 각각에 설치된 파지부의 동작을 제어하는 컨트롤러를 포함하고, 컨트롤러는 가구를 조립하기 위한 복수의 로봇 암의 모션 정보 및 조립 순서 정보를 포함하는 작업 템플릿에 의해 프레임의 조립을 수행하도록 복수의 로봇 암 및 파지부의 동작을 제어할 수 있다.In order to achieve the above object, the furniture assembly robot according to an embodiment of the present invention assembles furniture by assembling a plurality of frames and connecting parts connecting each of the plurality of frames, and provides a work space for assembling the plurality of frames. A base forming base, a plurality of robot arms installed on the base, a gripping unit installed on the robot arm and gripping at least a portion of the plurality of frames, and a controller controlling the operation of the plurality of robot arms and the gripping unit installed on each of the plurality of robot arms. It includes, and the controller may control the operation of the plurality of robot arms and the gripper to perform assembly of the frame by a work template including motion information and assembly order information of the plurality of robot arms for assembling furniture.
또한, 컨트롤러는 가구의 조립 과정에서 복수의 로봇 암이 가구 조립을 수행할 수 없는 제한 조건을 설정하고, 제한 조건을 회피하도록 작업 템플릿을 수정 또는 생성할 수 있다.Additionally, during the furniture assembly process, the controller may set a restriction condition that prevents the plurality of robot arms from performing furniture assembly and modify or create a work template to avoid the restriction condition.
또한, 제한 조건은 작업 공간의 크기에 따른 공간적 제한, 복수의 로봇 암 각각의 파지 상태 및 복수의 로봇 암 각각에 설치되는 파지부의 종류 중 적어도 하나 이상에 따라 설정될 수 있다.Additionally, the limiting condition may be set according to at least one of spatial limitations according to the size of the work space, the gripping state of each of the plurality of robot arms, and the type of gripper installed in each of the plurality of robot arms.
또한, 컨트롤러는 제한 조건에 해당하는 경우에, 복수의 로봇 암 중 어느 하나의 로봇 암이 파지하고 있는 복수의 프레임 중 적어도 일부를 릴리스(release)한 후 파지 위치를 변경하여 다시 파지하거나, 복수의 로봇 암 중 다른 하나의 로봇 암이 파지하도록 제어할 수 있다.In addition, when a limiting condition is met, the controller releases at least a portion of the plurality of frames held by any one of the plurality of robot arms, then changes the gripping position and grips them again, or holds the plurality of frames. One of the robot arms can be controlled to grip the other robot arm.
또한, 컨트롤러는 파지부가 복수의 프레임 중 적어도 일부를 파지할 경우 연결 부품이 프레임에 최대한 다수가 삽입되도록 작업 템플릿을 생성할 수 있다.Additionally, the controller may create a work template so that when the gripper grips at least a portion of the plurality of frames, as many connection parts as possible are inserted into the frame.
또한, 컨트롤러는 서로 다른 프레임을 조립할 때 서로 다른 프레임 중 어느 하나의 프레임에 형성된 홀이 외부로 노출되지 않는 경우, 어느 하나의 프레임을 회전시켜 홀을 외부로 노출시키는 작업 템플릿을 생성할 수 있다.Additionally, when assembling different frames, if a hole formed in one of the different frames is not exposed to the outside, the controller may generate a work template that exposes the hole to the outside by rotating one of the frames.
컨트롤러는 서로 다른 프레임을 조립할 때 서로 다른 프레임 중 어느 하나에 조립된 연결 부품을 다른 하나의 프레임에 형성된 홀에 펙인홀 방식으로 삽입하도록 복수의 로봇 암의 동작을 제어하고, 펙인홀 방식은 연결 부품을 홀에 삽입하기 위하여 가압하는 동시에 홀의 위치를 탐색하기 위하여 소정의 궤적으로 이동시킨다.When assembling different frames, the controller controls the operation of a plurality of robot arms to insert the connecting parts assembled in one of the different frames into the hole formed in the other frame using the peck-in-hole method, and the peck-in-hole method is used to insert the connecting parts assembled in one of the different frames In order to insert it into the hole, it is pressed and at the same time moved along a predetermined trajectory to search for the location of the hole.
또한, 컨트롤러는 서로 다른 프레임을 연결할 때 서로 다른 프레임 중 어느 하나에 조립된 연결 부품의 개수를 탐지하고, 탐지된 연결 부품의 개수에 따라 복수의 로봇 암의 동작을 제어할 수 있다.Additionally, when connecting different frames, the controller may detect the number of connection parts assembled in any one of the different frames and control the operation of a plurality of robot arms according to the number of detected connection parts.
또한, 컨트롤러는 홀에 삽입되는 연결 부품이 2개일 경우 연결 부품이 위글(wiggle) 모션을 하면서 소정의 궤적으로 이동하는 이중 펙인홀 방식을 수행하도록 복수의 로봇 암의 동작을 제어할 수 있다.Additionally, when two connection parts are inserted into the hole, the controller can control the operation of the plurality of robot arms to perform a double pick-in-hole method in which the connection parts move in a predetermined trajectory while making a wiggle motion.
또한, 컨트롤러는 홀에 삽입되는 연결 부품이 3개 이상일 경우 펙인홀 방식 및 이중 펙인홀 방식을 조합하여 연결 부품을 홀에 삽입하도록 복수의 로봇 암의 동작을 제어할 수 있다.Additionally, when there are three or more connection parts inserted into the hole, the controller can control the operation of a plurality of robot arms to insert the connection parts into the hole by combining the pick-in-hole method and the double pick-in-hole method.
또한, 연결 부품은 나사를 포함하고, 컨트롤러는 나사의 체결 시 복수의 로봇 암 중 적어도 하나 이상이 드릴 모듈을 파지하고, 드릴 모듈을 파지하지 않은 다른 로봇 암은 프레임들을 파지하여 고정하도록 복수의 로봇 암의 동작을 제어할 수 있다.In addition, the connection part includes a screw, and the controller includes a plurality of robots so that at least one of the plurality of robot arms grips the drill module when the screw is fastened, and the other robot arm that does not grip the drill module grips and fixes the frames. The movement of the arm can be controlled.
또한, 복수의 로봇 암 각각은 다관절 로봇 암이고, 컨트롤러는 작업 공간의 크기에 따른 공간적 제한에 의해 복수의 로봇 암이 가구 조립을 수행할 수 없는 제한 조건을 설정하고, 제한 조건에 해당하지 않는 다관절 로봇 암의 관절 해를 계산할 수 있다.In addition, each of the plurality of robot arms is an articulated robot arm, and the controller sets a restriction condition under which the plurality of robot arms cannot perform furniture assembly due to spatial limitations according to the size of the work space, and sets a restriction condition under which the plurality of robot arms cannot perform furniture assembly, and The joint solution of an articulated robot arm can be calculated.
또한, 제한 조건에 해당하지 않는 다관절 로봇 암의 관절 해는 조작도(manipulability) 및 관절 제한(joint limit)의 비용함수를 경사 하강법(gradient descent)에 의해 계산될 수 있다.In addition, the joint solution of the multi-joint robot arm that does not correspond to the limiting conditions can be calculated by gradient descent using the cost functions of manipulability and joint limit.
또한, 컨트롤러는 다관절 로봇 암의 동작 시에 변화된 관절 해가 제한 조건에 해당하는지 판단하고, 관절 해가 제한 조건에 해당하지 않는다면 관절 해를 탐색 스택에 저장 및 선택할 수 있다.Additionally, the controller may determine whether the joint solution changed during operation of the articulated robot arm corresponds to the constraint condition, and if the joint solution does not correspond to the constraint condition, the controller may store and select the joint solution in the search stack.
또한, 컨트롤러는 관절 해가 제한 조건에 해당한다면 탐색 스택에 저장된 관절 해가 n(n은 2 이상의 자연수)개를 초과하는지 판단하고, 탐색 스택에 저장된 관절 해가 n개를 초과하는 경우 탐색 스택에서 최근에 저장된 n개의 관절 해를 삭제하고, 가장 최근의 관절 해를 선택하고, 탐색 스택에 저장된 관절 해가 n개를 초과하지 않는 경우 다관절 로봇 암의 동작 시에 변화된 관절 해가 제한 조건에 해당하는지 다시 판단할 수 있다.Additionally, if the joint solution meets the constraint condition, the controller determines whether the joint solution stored in the search stack exceeds n (n is a natural number of 2 or more). If the joint solution stored in the search stack exceeds n, the controller determines whether the joint solution stored in the search stack exceeds n. Delete n recently stored joint solutions, select the most recent joint solution, and if the number of joint solutions stored in the search stack does not exceed n, the joint solution changed during the motion of the articulated robot arm corresponds to the constraint condition. You can re-evaluate whether you do it or not.
또한, 컨트롤러는 서로 다른 프레임의 조립이 수행된 후 서로 다른 프레임을 파지하는 로봇 암을 소정의 궤적으로 이동시키면서 로봇 암의 말단에 가해지는 힘을 계산하고, 로봇 암의 말단에 가해지는 힘이 소정의 기준 값에 도달하지 않는 경우 서로 다른 프레임의 조립이 실패한 것으로 판단할 수 있다.In addition, after assembly of different frames is performed, the controller calculates the force applied to the end of the robot arm while moving the robot arm holding the different frames to a predetermined trajectory, and determines the force applied to the end of the robot arm by a predetermined amount. If the reference value is not reached, it can be determined that the assembly of different frames has failed.
또한, 컨트롤러는 서로 다른 프레임의 조립이 실패한 경우 서로 다른 프레임의 조립을 다시 수행할 수 있다.Additionally, the controller can re-perform the assembly of different frames if the assembly of different frames fails.
상기 목적을 달성하기 위해서, 본 발명의 다른 일 실시예에 따른 로봇을 이용한 가구 조립 방법은, 로봇을 이용하여 복수의 프레임과 상기 복수의 프레임 각각을 연결하는 연결 부품을 조립하는 가구 조립 자동화 방법으로서, 조립 과정에서 가구 조립을 수행할 수 없는 제한 조건을 설정하는 단계; 상기 제한 조건을 회피하도록 작업 템플릿을 생성하는 단계; 및 상기 로봇은 상기 작업 템플릿에 따라서 프레임의 조립을 수행하는 단계;를 포함할 수 있다.In order to achieve the above object, a furniture assembly method using a robot according to another embodiment of the present invention is a furniture assembly automation method of assembling a plurality of frames and connecting parts connecting each of the plurality of frames using a robot. , setting constraints under which furniture assembly cannot be performed during the assembly process; creating a task template to avoid the constraint condition; and performing, by the robot, assembling the frame according to the work template.
또한, 상기 로봇은 상술한 실시예 중 어느 하나의 가구 조립 로봇인 것일 수 있다.Additionally, the robot may be a furniture assembly robot of any one of the above-described embodiments.
또한, 서로 다른 프레임을 조립할 때 서로 다른 프레임 중 어느 하나의 프레임에 조립된 연결 부품을 다른 하나의 프레임에 형성된 홀에 펙인홀 방식으로 삽입하는 것을 포함하는 것일 수 있다.Additionally, when assembling different frames, it may include inserting a connection part assembled to one of the different frames into a hole formed in the other frame using a peck-in-hole method.
또한, 상기 로봇은 다관절 암을 포함하는 것이고, 상기 제한 조건을 회피하도록 작업 템플릿을 생성하는 과정은, 다관절 로봇 암의 조작도 및 관절 제한의 비용함수를 경사 하강법에 의해 계산하여 상기 제한 조건에 해당하지 않는 관절 해를 계산하는 단계를 포함하는 것일 수 있다.In addition, the robot includes an articulated arm, and the process of creating a work template to avoid the constraint condition includes calculating the manipulability of the articulated robot arm and the cost function of the joint limitations using a gradient descent method. It may include a step of calculating joint solutions that do not meet the conditions.
본 발명의 일 실시예에 따른 가구 조립 로봇은 불확실성이 매우 높고 적응 제어가 필수적인 가구 조립을 조립설명서의 인식 결과로부터 로봇 작업을 생성하여 작업 영역의 한계가 존재하는 실제 환경에서도 가구 조립을 성공적으로 수행할 수 있게 한다.The furniture assembly robot according to an embodiment of the present invention successfully performs furniture assembly even in a real environment with limitations in the work area by generating robot tasks from the recognition results of the assembly instructions for furniture assembly where uncertainty is very high and adaptive control is essential. make it possible
또한, 본 발명의 일 실시예에 따른 가구 조립 로봇은 작업 간 제한조건을 바탕으로 로봇 작업 계획을 자동 생성하고, 협소한 공간에서 조립 작업을 고려한 조립 위치를 선정할 수 있으며, 조립에 큰 힘이 필요하며 불확실성이 존재하는 상황에서의 조립도 성공적으로 수행할 수 있다.In addition, the furniture assembly robot according to an embodiment of the present invention automatically generates a robot work plan based on constraints between tasks, can select an assembly position considering assembly work in a narrow space, and requires great force for assembly. Assembly is necessary and can be performed successfully even in situations where uncertainty exists.
도 1은 본 발명의 일 실시예에 따른 가구 조립 로봇을 도시하는 도면이다.1 is a diagram illustrating a furniture assembly robot according to an embodiment of the present invention.
도 2는 가구 조립 로봇에 의해 가구 조립을 수행하는 과정을 도시한 예시적인 도면이다.Figure 2 is an exemplary diagram showing a process of performing furniture assembly by a furniture assembly robot.
도 3은 가구 조립 로봇의 작업 템플릿과 가구 조립 로봇에 의한 조립 작업과의 관계를 도시한 예시적인 도면이다.Figure 3 is an exemplary diagram showing the relationship between a work template of a furniture assembly robot and an assembly operation by the furniture assembly robot.
도 4는 본 발명의 일 실시예에 가구 조립 로봇이 연결 부품을 펙인홀 방식에 의해 프레임에 삽입하는 과정을 도시하는 순서도이다.Figure 4 is a flowchart illustrating a process in which a furniture assembly robot inserts connecting parts into a frame by the pick-in-hole method according to an embodiment of the present invention.
도 5는 도 4에 도시된 연결 부품을 펙인홀 방식에 의해 프레임에 삽입하는 작업 템플릿의 일 예시를 도시한 도면이다.FIG. 5 is a diagram illustrating an example of a work template for inserting the connection parts shown in FIG. 4 into a frame using the pick-in-hole method.
도 6은 연결 부품을 펙인홀 방식에 의해 프레임에 삽입하는 경우에 연결 부품의 모션 궤적을 도시한 예시적인 도면이다.Figure 6 is an exemplary diagram showing the motion trajectory of the connecting part when the connecting part is inserted into the frame by the pick-in-hole method.
이하, 본 발명의 실시예들을 첨부 도면을 참조하여 상세하게 설명한다. 각 도면의 구성요들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명의 실시예를 설명함에 있어 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 실시예에 대한 이해를 방해한다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. When adding reference numerals to components in each drawing, it should be noted that the same components are given the same reference numerals as much as possible even if they are shown in different drawings. Additionally, when describing an embodiment of the present invention, if a detailed description of a related known configuration or function is judged to impede understanding of the embodiment of the present invention, the detailed description will be omitted.
도 1은 본 발명의 일 실시예에 따른 가구 조립 로봇을 도시하는 도면이다.1 is a diagram illustrating a furniture assembly robot according to an embodiment of the present invention.
도 1을 참조하면, 가구 조립 로봇(1)은 복수의 프레임과 상기 복수의 프레임 각각을 연결하는 연결 부품을 조립하여 가구를 조립한다. 이를 위해, 가구 조립 로봇(1)은 복수의 프레임(30)을 조립하는 작업 공간을 형성하는 기대(10), 기대(10)에 설치되는 복수의 로봇 암(20a, 20b, 20c), 각각의 로봇 암(20a, 20b, 20c)에 설치되어 복수의 프레임(30) 중 적어도 일부를 파지하는 파지부(21a, 21b, 21c) 및 복수의 로봇 암(20a, 20b, 20c) 및 복수의 로봇 암(20a, 20b, 20c) 각각에 설치된 파지부(21a, 21b, 21c)의 동작을 제어하는 컨트롤러를 포함한다.Referring to Figure 1, the furniture assembly robot 1 assembles furniture by assembling a plurality of frames and connection parts connecting each of the plurality of frames. For this purpose, the furniture assembly robot 1 includes a base 10 forming a work space for assembling a plurality of frames 30, a plurality of robot arms 20a, 20b, and 20c installed on the base 10, each Holding parts (21a, 21b, 21c) installed on the robot arms (20a, 20b, 20c) and holding at least a part of the plurality of frames (30), a plurality of robot arms (20a, 20b, 20c), and a plurality of robot arms (20a, 20b, 20c) includes a controller that controls the operation of the gripping parts (21a, 21b, 21c) installed on each.
기대(機臺, 10)는 복수의 프레임(30)을 조립하는 작업 공간을 형성하기 위한 평판 형상의 부재일 수 있다. 기대(10)의 일면 상에는 복수의 로봇 암(20a, 20b, 20c)이 설치되고, 복수의 로봇 암(20a, 20b, 20c)들의 사이의 공간이 작업 공간이 될 수 있다.The base 10 may be a flat member for forming a work space for assembling a plurality of frames 30. A plurality of robot arms (20a, 20b, 20c) are installed on one surface of the base 10, and the space between the plurality of robot arms (20a, 20b, 20c) can be a work space.
도 1에 도시된 실시예와 같이, 가구 조립 로봇(1)은 작업 공간에 배치되며, 조립 중인 프레임(30)을 지지하는 보조 박스(11)를 포함할 수 있다. 가구 조립 로봇(1)은 가구를 조립하는 과정에서 필요에 따라 조립 중인 프레임(30)을 보조 박스(11) 상에 올려놓은 채로 프레임(30)의 조립을 진행할 수 있다.As in the embodiment shown in FIG. 1, the furniture assembly robot 1 is placed in a work space and may include an auxiliary box 11 that supports the frame 30 being assembled. The furniture assembly robot 1 may proceed with assembling the frame 30 while placing the frame 30 being assembled on the auxiliary box 11 as necessary during the process of assembling furniture.
가구 조립 로봇(1)은 복수의 로봇 암을 포함하고 있으며, 도 1에 도시된 실시예에서 가구 조립 로봇(1)은 3개의 로봇 암(20a, 20b, 20c)을 포함하고 있다. 3개의 로봇 암(20a, 20b, 20c)은 다관절 로봇 암이고, 컨트롤러에 의해 독립적으로 작동하거나 서로 관련되어 동작할 수 있다. 각각의 로봇 암(20a, 20b, 20c)의 관절에는 구동용 서보 모터 및 서보 모터의 회전각을 검출하는 인코더가 설치되어 있다(모두 미도시). 각각의 서보 모터는 로봇 암(20a, 20b, 20c)이 교시된 궤도를 따라 이동하도록 컨트롤러에 의해 서보 제어된다.The furniture assembly robot 1 includes a plurality of robot arms, and in the embodiment shown in FIG. 1, the furniture assembly robot 1 includes three robot arms 20a, 20b, and 20c. The three robot arms 20a, 20b, and 20c are articulated robot arms and can operate independently or in relation to each other by a controller. A driving servo motor and an encoder for detecting the rotation angle of the servo motor are installed at the joints of each robot arm (20a, 20b, and 20c) (all not shown). Each servo motor is servo-controlled by a controller so that the robot arms 20a, 20b, and 20c move along a taught trajectory.
파지부(21a, 21b, 21c)는 복수의 로봇 암(20a, 20b, 20c) 각각에 설치되어 물체를 파지할 수 있다. 본 발명의 일 실시예에 따른 가구 조립 로봇(1)은 파지부(21a, 21b, 21c)에 의해 프레임 및 연결 부품을 파지할 수 있으나, 상술한 바에 의해 제한되는 것은 아니다. 필요에 따라 파지부(21a, 21b, 21c)는 다른 물체, 예를 들어 연결 부품의 체결을 위한 드릴 모듈을 파지할 수도 있다.The gripping units 21a, 21b, and 21c may be installed on each of the plurality of robot arms 20a, 20b, and 20c to grip objects. The furniture assembly robot 1 according to an embodiment of the present invention can grip the frame and connecting parts by the gripping parts 21a, 21b, and 21c, but is not limited by the above. If necessary, the gripping parts 21a, 21b, and 21c may grip other objects, for example, a drill module for fastening connection parts.
컨트롤러는 가구 조립 로봇(1)의 전반적인 동작을 제어할 수 있다. 예를 들어, 컨트롤러는 복수의 로봇 암(20a, 20b, 20c) 및 복수의 로봇 암(20a, 20b, 20c) 각각에 설치된 파지부(21a, 21b, 21c)의 동작을 제어할 수 있으며, 또한 컨트롤러는 가구를 조립하기 위한 복수의 로봇 암(20a, 20b, 20c)의 모션 정보 및 조립 순서 정보를 포함하는 작업 템플릿에 의해 프레임의 조립을 수행하도록 복수의 로봇 암(20a, 20b, 20c)의 동작을 제어할 수 있다. 한편, 컨트롤러가 제어하는 대상은 상술한 바에 의해 제한되는 것은 아니다. 예를 들어, 컨트롤러는 로봇 암(20a, 20b, 20c)의 상태에 따라 모션 정보에 관한 작업 템플릿을 수정하거나, 새로운 작업 템플릿을 생성할 수 있다.The controller can control the overall operation of the furniture assembly robot 1. For example, the controller may control the operation of the plurality of robot arms (20a, 20b, 20c) and the gripping portions (21a, 21b, 21c) installed on each of the plurality of robot arms (20a, 20b, 20c), and also The controller is configured to perform assembly of the frame by a work template including motion information and assembly sequence information of the plurality of robot arms 20a, 20b, 20c for assembling furniture. Movement can be controlled. Meanwhile, the object controlled by the controller is not limited by the above. For example, the controller may modify a task template related to motion information or create a new task template depending on the status of the robot arms 20a, 20b, and 20c.
컨트롤러는 적어도 하나의 프로세서를 포함한다. 프로세서는 다수의 논리 게이트들의 어레이로 구현될 수도 있고, 범용적인 마이크로 프로세서와 이 마이크로 프로세서에서 실행될 수 있는 프로그램이 저장된 메모리의 조합으로 구현될 수도 있다. 또한, 다른 형태의 하드웨어로 구현될 수도 있음을 본 실시예가 속하는 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.The controller includes at least one processor. The processor may be implemented as an array of multiple logic gates, or as a combination of a general-purpose microprocessor and a memory storing a program that can be executed on the microprocessor. Additionally, those skilled in the art can understand that the present embodiment may be implemented with other types of hardware.
프레임(30)은 가구의 형상을 이루는 주요 부품으로써 예를 들어, 나무 판자, 나무 다리 등과 같은 부품이며, 조립을 위해 홀이 형성되어 있는 물체이다. 연결 부품은 프레임(30)을 연결시키는 부품으로써 예를 들어, 나무 핀, 브라켓, 펙(peg), 나사 등과 같은 부품이다.The frame 30 is a major part that forms the shape of furniture, for example, a wooden board, a wooden leg, etc., and is an object in which holes are formed for assembly. Connecting parts are parts that connect the frame 30, such as wooden pins, brackets, pegs, screws, etc.
도 2는 가구 조립 로봇에 의해 가구 조립을 수행하는 과정을 도시한 예시적인 도면이다.Figure 2 is an exemplary diagram showing a process of performing furniture assembly by a furniture assembly robot.
도 2를 참조하면, 가구 조립 로봇(1)은 가구의 프레임 각각의 연결 관계 및 프레임 각각을 연결하는 순서로부터 가구의 조립 작업에 필요한 작업 및 모션 계획, 조립 제어 및 복구 방법을 통합된 방법으로 제공한다. 이를 위해서, 가구 조립 로봇(1)은 조립설명서를 읽고(S1), 조립설명서로부터 인식 알고리즘을 통하여 가구의 프레임 각각의 연결 관계 및 프레임 각각을 연결하는 순서를 도출하고(S2), 작업 컴파일러(Task compiler)를 통해 조립설명서가 나타내는 조립 작업에 대한 작업 템플릿을 생성한다(S3). 각각의 조립 작업은 현재 조립 환경 정보를 반영하여 충돌을 회피하고 조립 위치로 이동하는 모션 계획을 수행하며(S4), 조립 위치로 이동한 후에 조립 제어를 수행하여 조립을 수행한다(S5). 조립 이후에는 조립이 완료되었는지 확인한 후, 실패했을 경우 복구하는 작업을 수행한다.Referring to FIG. 2, the furniture assembly robot 1 provides tasks and motion planning, assembly control, and recovery methods required for furniture assembly in an integrated manner, from the connection relationship between each frame of furniture and the order of connecting each frame. do. To this end, the furniture assembly robot 1 reads the assembly instructions (S1), derives the connection relationship between each frame of the furniture and the order of connecting each frame through a recognition algorithm from the assembly instructions (S2), and runs a task compiler (Task). compiler) to create a work template for the assembly work indicated by the assembly instructions (S3). Each assembly task reflects the current assembly environment information to avoid collisions and performs a motion plan to move to the assembly position (S4), and after moving to the assembly position, assembly control is performed to perform assembly (S5). After assembly, check whether assembly is complete and then perform recovery work if it fails.
한편, 가구 조립 로봇(1)이 조립설명서를 읽고, 가구의 프레임 각각의 연결 관계 및 프레임 각각을 연결하는 순서를 도출하는 과정(S2)은 본 발명에서 청구하고자 하는 범위에서 벗어나므로 이에 대해서는 상세한 설명을 생략하기로 한다.Meanwhile, the process (S2) in which the furniture assembly robot 1 reads the assembly instructions and derives the connection relationship between each frame of the furniture and the order of connecting each frame is outside the scope of the present invention, so detailed description thereof Let's omit it.
컨트롤러는 조립설명서가 연결 관계와 조립 순서로 변환된 조립 정보로부터 작업 컴파일러를 통해 로봇의 조립 작업으로 변환시킨다. 이때, 각각의 조립 작업은 가구의 조립에 사용되는 작업을 분류하는 작업 템플릿(Task template)으로 정의될 수 있다. 예를 들어, 작업 템플릿은 모션 계획 기술, 조립 제어 기술, 실패 복구 계획 등을 포함할 수 있다. 작업 템플릿에서 조립 제어 전략은 모듈화되어 매크로 모션, 마이크로 모션으로 구성된다. 예를 들어, 펙인홀 방식으로 프레임을 조립하는 작업에 관한 작업 템플릿은 마이크로 모션인 선형 운동 및 회전 운동이 조합된 제1 매크로 모션과, 나선형 운동 및 가압 동작이 조합된 제2 매트로 모션 등으로 모듈화되어 구성될 수 있다. 컨트롤러는 작업 템플릿에 따라 복수의 로봇 암(20a, 20b, 20c) 및 파지부(21a, 21b, 21c)의 동작을 제어하여 프레임의 조립을 수행한다.The controller converts the assembly information from the assembly instructions into connection relationships and assembly sequences into the robot's assembly work through a task compiler. At this time, each assembly task can be defined as a task template that classifies the tasks used to assemble furniture. For example, task templates may include motion planning techniques, assembly control techniques, failure recovery plans, etc. In the work template, the assembly control strategy is modularized and consists of macro motion and micro motion. For example, the work template for assembling a frame using the pick-in-hole method includes a first macro motion that combines linear motion and rotational motion, which are micro motions, and a second macro motion that combines spiral motion and pressing motion, etc. It can be configured modularly. The controller performs the assembly of the frame by controlling the operation of the plurality of robot arms (20a, 20b, 20c) and the gripping parts (21a, 21b, 21c) according to the work template.
도 2에 도시된 예시와 같이, 컨트롤러는 작업 컴파일러를 통해 조립설명서를 통해 주어진 조립 순서와 연결관계를 분석하여 적절한 작업 템플릿을 나열한다. 이때, 컨트롤러는 작업 템플릿에 적용되어 있는 제한 조건을 회피하여 작업 계획을 수행한다. 제한 조건은 가구의 조립 과정에서 복수의 로봇 암(20a, 20b, 20c)을 통해 가구의 조립을 수행할 수 없는 조건을 의미한다. 제한 조건은 예를 들어, 작업 공간의 크기에 따른 공간적 제한, 복수의 로봇 암 각각의 파지 상태 및 복수의 로봇 암 각각에 설치되는 파지부의 종류 등에 따라 설정될 수 있다. 다만, 이와 같은 제한 조건은 상술한 바에 의해 제한되지 않으며, 조립되는 가구의 크기, 종류, 무게 등에 의해 설정될 수 있다.As shown in the example shown in Figure 2, the controller analyzes the assembly sequence and connection relationships given through the assembly instructions through a task compiler and lists appropriate task templates. At this time, the controller performs the work plan by avoiding the constraints applied to the work template. The restriction condition refers to a condition in which furniture assembly cannot be performed using a plurality of robot arms 20a, 20b, and 20c during the furniture assembly process. Restriction conditions may be set according to, for example, spatial limitations according to the size of the work space, the gripping state of each of the plurality of robot arms, and the type of gripper installed in each of the plurality of robot arms. However, such limiting conditions are not limited by the above, and may be set depending on the size, type, weight, etc. of the furniture being assembled.
컨트롤러는 작업 템플릿에 의해 조립 순서 및 조립 작업의 종류가 이미 정해진 경우에도 제한 조건을 회피하도록 작업 템플릿을 수정 또는 생성할 수 있다. 예를 들어, 컨트롤러는 복수의 로봇 암(20a, 20b, 20c)에 의한 조립 작업이 제한 조건에 해당될 때에는 [파지], [릴리스], [이양/재파지] 등의 작업 템플릿을 추가적으로 생성하거나, 이미 정해진 작업 템플릿의 순서 등을 조정하여 조립 작업을 수행할 수 있다. The controller can modify or create a work template to avoid constraints even when the assembly sequence and type of assembly work are already determined by the work template. For example, when the assembly operation by the plurality of robot arms 20a, 20b, and 20c meets a constraint condition, the controller additionally creates work templates such as [Grip], [Release], and [Transfer/Re-Grap]. , assembly work can be performed by adjusting the order of already established work templates.
예를 들어, 컨트롤러는 제한 조건에 해당하는 경우에 복수의 로봇 암 중 어느 하나의 로봇 암이 파지하고 있는 복수의 프레임 중 적어도 일부를 릴리스한 후 파지 위치를 변경하여 다시 파지하거나, 복수의 로봇 암 중 다른 하나의 로봇 암이 복수의 프레임 중 적어도 일부를 파지하도록 제어한다.For example, when a constraint condition is met, the controller releases at least some of the frames held by one of the plurality of robot arms, then changes the gripping position and grips them again, or changes the gripping position of the plurality of frames held by one of the plurality of robot arms. Another robot arm is controlled to grip at least some of the plurality of frames.
다른 예시로서, 다수의 연결 관계(예를 들어, 여러 개의 핀이 프레임에 동시에 삽입되어야 하는 등의 경우)를 요구하는 프레임의 연결 작업은 조립 대상인 프레임에 삽입되어야 하는 연결 부품의 개수에 의해 작업의 종류가 결정된다. 예를 들어, 컨트롤러는 파지부가 복수의 프레임 중 적어도 일부를 파지할 경우 연결 부품이 프레임에 최대한 다수가 삽입되도록 작업 템플릿을 생성할 수 있다. 일반적으로 프레임에는 다수의 연결 부품이 삽입되므로, 상술한 바와 같이 작업 템플릿을 생성함으로써 가구 조립이 효율적으로 이루어질 수 있다. As another example, the connection work of a frame that requires multiple connection relationships (for example, when several pins must be inserted into the frame at the same time) depends on the number of connection parts that must be inserted into the frame to be assembled. The type is determined. For example, when the gripper grips at least a portion of a plurality of frames, the controller may create a work template so that as many connection parts as possible are inserted into the frame. Since a number of connected parts are generally inserted into a frame, furniture assembly can be efficiently performed by creating a work template as described above.
또 다른 예시로서, 컨트롤러는 서로 다른 프레임을 조립할 때 서로 다른 프레임 중 어느 하나의 프레임에 형성된 홀이 외부로 노출되지 않는 경우, 상기 어느 하나의 프레임을 회전시켜 홀을 외부로 노출시키는 작업 템플릿을 생성할 수 있다. 가구 조립 과정에서 조립 대상인 프레임의 홀(예를 들어, 펙이 삽입되는 홀, 나사 홀 등)이 바닥 등에 의해 가려져 외부로 노출되지 않는 경우 조립 작업을 수행할 수 없다. 따라서, 가구 조립 로봇은 조립 대상인 프레임을 회전시킴으로써 조립 작업을 수행할 수 있게 한다. 이때, 가구의 조립이 완전하게 되지 않은 상태(예를 들어, 나사가 체결되지 않고 나무 핀으로만 조립되어 있는 상태로 프레임들이 결합된 상태)이기 때문에 회전 작업은 다수의 로봇 암이 조립 대상인 프레임들이 파손/분리되지 않도록 힘과 위치를 유지하면서 수행된다.As another example, when assembling different frames, if a hole formed in one of the different frames is not exposed to the outside, the controller generates a work template to expose the hole to the outside by rotating one of the frames. can do. During the furniture assembly process, if the holes of the frame to be assembled (for example, holes where pegs are inserted, screw holes, etc.) are covered by the floor or the like and are not exposed to the outside, the assembly work cannot be performed. Therefore, the furniture assembly robot can perform assembly work by rotating the frame that is the object of assembly. At this time, because the furniture is not completely assembled (for example, the frames are assembled with only wooden pins and not screws fastened), the rotation work is performed by multiple robot arms on the frames to be assembled. It is performed while maintaining force and position to prevent breakage/separation.
도 3은 가구 조립 로봇의 작업 템플릿과 가구 조립 로봇에 의한 조립 작업과의 관계를 도시한 예시적인 도면이다.Figure 3 is an exemplary diagram showing the relationship between a work template of a furniture assembly robot and an assembly operation by the furniture assembly robot.
도 3을 참조하여 작업 템틀릿에 대해 좀 더 상세하게 설명하면, 도 3의 (a)는 가구 조립 로봇(1)이 가구를 조립하는 과정에서 사용되는 작업 템플릿의 일 예시이며, 도 3의 (b)는 도 3의 (a)에 도시된 작업 템플릿을 통하여 수행되는 조립 작업의 일 예시이다. To describe the work template in more detail with reference to FIG. 3, (a) in FIG. 3 is an example of a work template used in the process of assembling furniture by the furniture assembly robot 1, and (in FIG. 3) b) is an example of an assembly work performed through the work template shown in (a) of FIG. 3.
가구 조립 로봇(1)에 의한 가구의 조립은 연결부품 삽입, 프레임 연결, 나사 체결 및 필요한 경우 조립 대상의 회전을 포함하는 조립 작업에 의해 수행될 수 있다. 상술한 4 개의 조립 작업들을 더욱 구체적으로 분류하면, 조립 작업은 [연결부품 삽입], [(연결부품을 포함하는) 프레임 연결], [(연결부품을 포함하지 않는)프레임 연결], [(완전한) 나사 체결], [(불완전한) 나사 체결], [조립 물품의 회전]으로 분류될 수 있다. 다만, 상술한 조립 작업은 예시적으로 분류한 것에 불과하며, 필요에 따라 다양한 조립 작업이 분류될 수 있다. Assembly of furniture by the furniture assembly robot 1 can be performed by assembly operations including inserting connecting parts, connecting frames, fastening screws, and rotating the assembly object if necessary. If we classify the above-mentioned four assembly operations more specifically, the assembly operations are [insertion of connection parts], [connection of frame (including connection parts)], [connection of frame (without connection parts)], [(complete assembly) ) screw fastening], [(incomplete) screw fastening], and [rotation of assembled articles]. However, the above-described assembly operations are merely illustrative classifications, and various assembly operations may be classified as needed.
도 3의 (a)에 도시된 예시에서 가구 조립 로봇(1)이 조립 작업을 수행하기 위한 작업 템플릿은 [파지], [릴리스], [이양(handover)/재파지]로 구성되어 있다. 이때, [이양/재파지]는 예를 들어, 가구 조립 로봇(1)의 파지부(21a, 21b, 21c) 중 어느 하나의 파지부(21a)가 파지하고 있는 물품을 릴리스한 후에 이를 다시 파지하거나 다른 파지부(21b 또는 21c)가 물품을 파지하는 작업을 의미한다.In the example shown in (a) of FIG. 3, the work template for the furniture assembly robot 1 to perform the assembly task consists of [grasp], [release], and [handover/re-grasp]. At this time, [transfer/re-grip] is, for example, releasing the item being held by any one of the gripping parts 21a, 21b, and 21c of the furniture assembly robot 1 and then gripping it again. Alternatively, it means an operation in which another gripper (21b or 21c) grips the article.
도 4는 본 발명의 일 실시예에 가구 조립 로봇이 연결 부품을 펙인홀 방식에 의해 프레임에 삽입하는 과정을 도시하는 순서도이고, 도 5는 연결 부품을 펙인홀 방식에 의해 프레임에 삽입하는 작업 템플릿의 일 예시를 도시한 도면이고, 도 6은 연결 부품을 펙인홀 방식에 의해 프레임에 삽입하는 경우에 연결 부품의 모션 궤적을 도시한 예시적인 도면이다.Figure 4 is a flow chart showing a process in which a furniture assembly robot inserts connecting parts into a frame by the pick-in-hole method in an embodiment of the present invention, and Figure 5 is a work template for inserting the connecting parts into the frame by the pick-in-hole method. This is a diagram illustrating an example, and FIG. 6 is an exemplary diagram illustrating the motion trajectory of the connecting component when the connecting component is inserted into the frame by the pick-in-hole method.
도 4를 참조하면, 컨트롤러는 가구의 조립 과정에서 서로 다른 프레임을 조립할 때 서로 다른 프레임 중 어느 하나에 조립된 연결 부품을 다른 하나의 프레임에 형성된 홀에 펙인홀 방식으로 삽입하도록 복수의 로봇 암의 동작을 제어한다. 펙인홀 방식은 접근 단계(S11), 탐색 단계(S12), 확인 단계(S13), 삽입 단계(S15), 분리 단계(S16) 및 선택적으로 확인 단계(S13) 이후의 복구 단계(S14)를 포함한다.Referring to FIG. 4, when assembling different frames during the furniture assembly process, the controller uses a plurality of robot arms to insert the connecting parts assembled in one of the different frames into a hole formed in the other frame in a peck-in-hole manner. Controls movement. The peck-in-hole method includes an access step (S11), a search step (S12), a confirmation step (S13), an insertion step (S15), a separation step (S16), and optionally a recovery step (S14) after the confirmation step (S13). do.
접근 단계(S11)는 가구의 조립을 위하여 프레임과 연결 부품이 최초로 접촉을 발생시키는 단계이다. 이를 위하여 컨트롤러는 프레임과 연결 부품이 접촉하도록 프레임과 연결 부품을 각각 파지한 로봇 암을 제어한다.The approach step (S11) is the step in which the frame and connecting parts first come into contact for furniture assembly. For this purpose, the controller controls the robot arm that holds the frame and the connection parts respectively so that the frame and the connection parts come into contact.
탐색 단계(S12)는 프레임에 형성된 홀과 연결 부품 사이의 위치 오차를 극복하면서 조립 목표를 찾는 단계이다. 컨트롤러는 연결 부품을 프레임에 형성된 홀에 삽입하기 위하여 가압하는 동시에 홀의 위치를 탐색하기 위하여 소정의 궤적으로 이동시킬 수 있다. 예를 들어, 도 6에 도시된 예시와 같이, 소정의 궤적은 나선(sprial) 궤적(T1)일 수 있으며, 필요에 따라 나선 궤적에 삽입축 회전(yawing), 다축 회전(예를 들어 위글(wiggle)) 모션을 추가되어 도 6의 궤적(T2)과 같이 연결 부품이 이동할 수 있다. 또한, 가구와 같은 목재 부품의 조립 시에는 금속 부품의 펙인홀 작업에 비해 강한 마찰력을 극복해야 한다. 본 발명에 따른 가구 조립 로봇은 탐색 단계(S12)에서 연결 부품은 상술한 소정의 궤적으로 이동시킴에 따라 정지 마찰력을 유발하는 스틱(stick) 상태를 방지하고 연결 부품 삽입의 불확실성을 극복할 수 있다.The search step (S12) is a step to find the assembly target while overcoming the positional error between the hole formed in the frame and the connecting parts. The controller can pressurize the connecting component to insert it into the hole formed in the frame and move it along a predetermined trajectory to search for the location of the hole. For example, as shown in the example shown in FIG. 6, the predetermined trajectory may be a spiral trajectory (T1), and, if necessary, insert axis rotation (yawing) or multi-axis rotation (e.g. wiggle) into the spiral trajectory. By adding wiggle) motion, the connected parts can move as shown in the trajectory (T2) of FIG. 6. Additionally, when assembling wooden parts such as furniture, stronger friction must be overcome compared to peck-in-hole work on metal parts. The furniture assembly robot according to the present invention moves the connecting parts in the above-described predetermined trajectory in the search step (S12), thereby preventing a stick state that causes static friction and overcoming uncertainty in inserting the connecting parts. .
확인 단계(S13)는 프레임의 조립이 성공하였는지 실패하였는지를 판단하는 단계이다. 예를 들어, 컨트롤러는 상술한 탐색 단계(S13) 이후에 연결 부품을 십자 형태로(예를 들어, x축, y축 방향으로) 이동시키도록 로봇 암을 제어한다. 이때, 연결 부품이 프레임의 홀 내부에 삽입되었다면 연결 부품은 십자 형태의 이동이 불가능하므로, 컨트롤러는 조립이 성공된 것으로 판단할 수 있다. 그러나, 연결 부품이 프레임의 홀 내부에 삽입되지 않았다면, 연결 부품은 십자 형태에서 이동이 가능한 방향이 발생하므로, 컨트롤러는 조립이 실패한 것으로 판단할 수 있다. 조립의 실패 상황에서 컨트롤러는 연결 부품의 이동이 가능한 방향과 이동이 불가능한 방향을 판별하여 프레임과 연결 부품 사이의 상대적인 위치를 파악할 수 있다.The confirmation step (S13) is a step to determine whether assembly of the frame was successful or failed. For example, the controller controls the robot arm to move the connecting parts in a cross shape (eg, in the x-axis and y-axis directions) after the above-described search step (S13). At this time, if the connecting part is inserted into the hole of the frame, the connecting part cannot move in a cross shape, so the controller can determine that the assembly is successful. However, if the connecting part is not inserted into the hole of the frame, the connecting part has a movable direction in a cross shape, so the controller may determine that the assembly has failed. In an assembly failure situation, the controller can identify the relative positions between the frame and the connection parts by determining the directions in which the connection parts can and cannot move.
다른 예시로서, 컨트롤러는 서로 다른 프레임의 조립이 수행된 후 서로 다른 프레임을 파지하는 로봇 암을 소정의 궤적으로 이동시키면서 로봇 암의 말단에 가해지는 힘을 계산하고, 로봇 암의 말단에 가해지는 힘이 소정의 기준 값에 도달하지 않는 경우 서로 다른 프레임의 조립이 실패한 것으로 판단할 수 있다.As another example, after assembly of different frames is performed, the controller calculates the force applied to the end of the robot arm while moving the robot arm holding the different frames in a predetermined trajectory, and calculates the force applied to the end of the robot arm If this predetermined reference value is not reached, it may be determined that the assembly of different frames has failed.
복구 단계(S14)는 확인 단계(S13)에서 프레임에 대한 연결 부품의 삽입이 실패한 경우에 이를 복구하는 단계이다. 예를 들어, 컨트롤러는 확인 단계(S13)에서 실패를 인식한 경우에 이전의 상태로 돌아간 후 다시 접근 단계(S11)를 실행하여 프레임의 조립을 다시 수행할 수 있다.The recovery step (S14) is a step to recover if the insertion of the connection part into the frame fails in the confirmation step (S13). For example, if the controller recognizes a failure in the confirmation step (S13), it can return to the previous state and then re-execute the access step (S11) to re-assemble the frame.
삽입 단계(S15)는 확인 단계(S13)에서 프레임에 대한 연결 부품의 삽입이 성공한 경우에 프레임과 연결 부품 사이에 강한 체결을 형성하는 단계이다. 예를 들어, 컨트롤러는 프레임이 움직이지 않도록 고정하고, 연결 부품을 프레임을 향해 가압하는 동시에 회전하도록 프레임 및 연결 부품을 파지하는 로봇 암을 제어할 수 있다.The insertion step (S15) is a step of forming a strong connection between the frame and the connection component when insertion of the connection component into the frame is successful in the confirmation step (S13). For example, a controller can control a robot arm that holds the frame and connecting components to rotate while holding the frame still and pressing the connecting components toward the frame.
분리 단계(S16)는 프레임에 체결이 완료된 연결 부품과 파지부를 분리하는 단계이다. 예를 들어, 컨트롤러는 프레임에 체결이 완료된 연결 부품을 파지하는 파지부를 릴리스 하도록 제어할 수 있다.The separation step (S16) is a step of separating the holding part from the connection part that has been fully fastened to the frame. For example, the controller can control the release of the gripper that grips the connection part that has been fastened to the frame.
도 5를 참조하면, 펙인홀 작업의 각각의 단계에 대하여 마이크로/매크로 모션으로 구현되어 있는 작업 템플릿의 예시가 도시되어 있다. 펙인홀 작업을 위하여 컨트롤러는 타겟 물체(Target object), 파지 포즈(Grasp pose), 조립 인덱스(Assembly index), 연결 부품(Connector), 매니퓰레이터(Manipulators)에 관한 변수를 입력 받은 후, 가구 조립 로봇은 전술한 단계에 따라 펙인홀 작업을 실행한다.Referring to FIG. 5, an example of a work template implemented in micro/macro motion for each step of the pick-in-hole work is shown. For the pick-in-hole operation, the controller receives variables related to the target object, grasp pose, assembly index, connector, and manipulator, and then the furniture assembly robot Execute the peck-in-hole operation according to the steps described above.
전술한 펙인홀 방식에 의한 조립 작업은 하나의 연결 부품을 프레임에 삽입하는 경우를 예를 들어 설명한 것이며, 이하에서는 프레임에 다수의 연결 부품을 삽입할 경우에 대해서 설명하기로 한다.The assembly operation by the above-described peck-in-hole method is explained by taking the case of inserting one connection part into a frame, and hereinafter, the case of inserting multiple connection parts into the frame will be explained.
컨트롤러는 서로 다른 프레임을 연결할 때 서로 다른 프레임 중 어느 하나에 조립된 연결 부품의 개수를 탐지하고, 탐지된 연결 부품의 개수에 따라 복수의 로봇 암의 동작을 제어할 수 있다.When connecting different frames, the controller can detect the number of connected parts assembled in any one of the different frames and control the operation of a plurality of robot arms according to the number of detected connected parts.
예를 들어, 컨트롤러는 프레임의 홀에 삽입되는 연결 부품이 1개일 경우 전술한 펙인홀 방식을 수행한다. 컨트롤러는 프레임의 홀에 삽입되는 연결 부품이 2개일 경우 연결 부품이 위글(wiggle) 모션을 하면서 소정의 궤적으로 이동하는 이중 펙인홀 방식을 수행하도록 복수의 로봇 암의 동작을 제어할 수 있다. 또한, 컨트롤러는 프레임의 홀에 삽입되는 연결 부품이 3개 이상일 경우 전술한 펙인홀 방식 및 이중 펙인홀 방식을 조합하여 연결 부품을 프레임의 홀에 삽입하도록 복수의 로봇 암의 동작을 제어할 수 있다.For example, the controller performs the above-described peck-in-hole method when there is only one connection part inserted into the hole of the frame. When there are two connection parts inserted into the hole of the frame, the controller can control the operation of a plurality of robot arms to perform a double pick-in-hole method in which the connection parts move in a predetermined trajectory while making a wiggle motion. In addition, when there are three or more connection parts inserted into the holes of the frame, the controller can control the operation of a plurality of robot arms to insert the connection parts into the holes of the frame by combining the above-described peck-in-hole method and the double peck-in-hole method. .
만약, 가구의 조립 시에 연결 부품이 나사일 경우에 컨트롤러는 나사의 체결 시 복수의 로봇 암 중 적어도 하나 이상이 드릴 모듈을 파지하고, 드릴 모듈을 파지하지 않은 다른 로봇 암은 프레임들을 파지하여 고정하도록 복수의 로봇 암의 동작을 제어할 수 있다.If the connecting part is a screw when assembling furniture, the controller causes at least one of the plurality of robot arms to grip the drill module when the screw is fastened, and the other robot arm that does not grip the drill module grips and fixes the frames. The operation of a plurality of robot arms can be controlled to do so.
가구 조립 로봇이 자동으로 모든 조립 작업을 수행하기 위해서는 조립 작업을 수행하는 조립 위치의 선정이 중요하다. 가구 조립 로봇의 물리적 한계(예를 들어, 로봇 암의 관절 제한, 특이점 등)로 인해 조립 위치에 따라 조립 제어의 수행 성공률이 다르다. 따라서, 다양한 장애물이 혼재되어 있는 작업 공간에서 물리적 한계를 최소화하기 위한 조립 작업의 위치 선정이 필요하다.In order for a furniture assembly robot to automatically perform all assembly tasks, it is important to select an assembly location to perform the assembly task. Due to the physical limitations of the furniture assembly robot (for example, joint limitations and singularities of the robot arm, etc.), the success rate of assembly control is different depending on the assembly location. Therefore, it is necessary to select the location of the assembly work to minimize physical limitations in a work space mixed with various obstacles.
가구 조립 로봇은 제한된 작업 공간에서 가구의 조립을 수행하기 위해 최소한의 제한 조건으로 모션 계획을 수행한다. 예를 들어, 핀과 같은 연결 부품을 프레임에 삽입하는 작업은 조립이 이루어지는 위치를 별도로 지정하지 않고 조립 상대 위치에 대한 제한 조건만을 목표로 하여 모션 계획을 수행한다.Furniture assembly robots perform motion planning with minimal constraints to perform furniture assembly in a limited work space. For example, when inserting a connecting part such as a pin into a frame, motion planning is performed by targeting only the constraints on the relative position of the assembly without separately specifying the location where the assembly takes place.
모션 계획의 목표 위치를 선정할 때, 컨트롤러는 제한 조건에 해당하지 않도록 다관절 로봇 암의 관절 해를 계산할 수 있으며, 제한 조건에 해당하지 않는 다관절 로봇 암의 관절 해는 조작도(manipulability) 및 관절 제한(joint limit)의 비용함수를 경사 하강법(gradient descent)에 의해 계산될 수 있으며, 필요에 따라 경사 하강법이 반복하여 계산될 수 있다. 예를 들어, 프레임에 연결 부품을 체결하는 상황에서 프레임과 연결 부품 사이의 제한조건, 즉 로봇 암의 자세 제한조건을 회피하는 임의의 해를 무작위 초기 위치로부터 구하고, 이 해를 로봇 암의 조작도와 관절 제한으로부터 최대한 멀어지도록 해를 계산하여 앞서 언급한 펙인홀 모션을 성공적으로 수행할 수 있도록 한다.When selecting the target position of the motion plan, the controller can calculate the joint solution of the articulated robot arm so that it does not fall under the constraint conditions, and the joint solution of the articulated robot arm that does not fall under the constraint condition can be calculated by calculating the manipulability and The cost function of the joint limit can be calculated by gradient descent, and gradient descent can be calculated repeatedly as needed. For example, in a situation where a connection part is fastened to a frame, a random solution that avoids the constraint between the frame and the connection part, that is, the posture constraint condition of the robot arm, is obtained from a random initial position, and this solution is combined with the manipulability of the robot arm. The solution is calculated to be as far away from the joint limits as possible so that the previously mentioned pick-in-hole motion can be successfully performed.
컨트롤러는 다관절 로봇 암의 동작 시에 변화된 관절 해가 제한 조건을 회피하는지 판단한다. 이때, 컨트롤러는 관절 해가 제한 조건을 회피한다면 제한 조건을 회피하는 관절 해를 메모리의 탐색 스택에 저장 및 선택할 수 있다.The controller determines whether the changed joint solution avoids the constraint condition during operation of the articulated robot arm. At this time, if the joint solution avoids the constraint condition, the controller may store and select the joint solution that avoids the constraint condition in the search stack of the memory.
만약, 컨트롤러는 관절 해가 제한 조건에 해당한다면 탐색 스택에 저장된 관절 해가 n(n은 2 이상의 소정의 자연수)개를 초과하는지 판단한다. 컨트롤러는 탐색 스택에 저장된 관절 해가 n개를 초과하는 경우 탐색 스택에서 최근에 저장된 n개의 관절 해를 삭제하고, 가장 최근의 관절 해를 선택하고, 탐색 스택에 저장된 관절 해가 n개를 초과하지 않는 경우 다관절 로봇 암의 동작 시에 변화된 관절 해가 제한 조건을 회피하는지 다시 판단하여 상술한 과정을 다시 진행한다. 예를 들어, 관절 해를 변화시키는 과정 중에 변화된 관절 해가 장애물과 충돌하는 등 제한 조건에 해당하여 이용할 수 없는 해로 결정됐을 경우 탐색 스택에 저장된 관절 해를 n개 제거함으로써 장애물과 근접한 해가 산출되지 않도록 한다.If the joint solution meets the constraint condition, the controller determines whether the joint solution stored in the search stack exceeds n (n is a predetermined natural number of 2 or more). If the number of joint solutions stored in the search stack exceeds n, the controller deletes n recently stored joint solutions from the search stack, selects the most recent joint solution, and makes sure that the joint solutions stored in the search stack do not exceed n. If not, it is determined again whether the changed joint solution avoids the limiting condition during operation of the articulated robot arm, and the above-described process is performed again. For example, during the process of changing the joint solution, if the changed joint solution is determined to be an unusable solution due to a limiting condition such as colliding with an obstacle, a solution close to the obstacle is not produced by removing n joint solutions stored in the search stack. Avoid doing so.
상기 목적을 달성하기 위해서, 본 발명의 다른 일 실시예에 따른 로봇을 이용한 가구 조립 방법은, 로봇을 이용하여 복수의 프레임과 상기 복수의 프레임 각각을 연결하는 연결 부품을 조립하는 가구 조립 자동화 방법으로서, 조립 과정에서 가구 조립을 수행할 수 없는 제한 조건을 설정하는 단계; 상기 제한 조건을 회피하도록 작업 템플릿을 생성하는 단계; 및 상기 로봇은 상기 작업 템플릿에 따라서 프레임의 조립을 수행하는 단계;를 포함할 수 있다.In order to achieve the above object, a furniture assembly method using a robot according to another embodiment of the present invention is a furniture assembly automation method of assembling a plurality of frames and connecting parts connecting each of the plurality of frames using a robot. , setting constraints under which furniture assembly cannot be performed during the assembly process; creating a task template to avoid the constraint condition; and performing, by the robot, assembling the frame according to the work template.
또한, 상기 로봇은 상술한 실시예 중 어느 하나의 가구 조립 로봇인 것일 수 있다.Additionally, the robot may be a furniture assembly robot of any one of the above-described embodiments.
또한, 서로 다른 프레임을 조립할 때 서로 다른 프레임 중 어느 하나의 프레임에 조립된 연결 부품을 다른 하나의 프레임에 형성된 홀에 펙인홀 방식으로 삽입하는 것을 포함하는 것일 수 있다.Additionally, when assembling different frames, it may include inserting a connection part assembled to one of the different frames into a hole formed in the other frame using a peck-in-hole method.
또한, 상기 로봇은 다관절 암을 포함하는 것이고, 상기 제한 조건을 회피하도록 작업 템플릿을 생성하는 과정은, 다관절 로봇 암의 조작도 및 관절 제한의 비용함수를 경사 하강법에 의해 계산하여 상기 제한 조건에 해당하지 않는 관절 해를 계산하는 단계를 포함하는 것일 수 있다.In addition, the robot includes an articulated arm, and the process of creating a work template to avoid the constraint condition includes calculating the manipulability of the articulated robot arm and the cost function of the joint limitations using a gradient descent method. It may include a step of calculating joint solutions that do not meet the conditions.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양하게 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely an illustrative explanation of the technical idea of the present invention, and those skilled in the art will be able to make various modifications and variations without departing from the essential characteristics of the present invention. Accordingly, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention, but are for illustrative purposes, 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 interpreted in accordance with the claims below, and all technical ideas within the equivalent scope should be construed as being included in the scope of rights of the present invention.

Claims (20)

  1. 복수의 프레임과 상기 복수의 프레임 각각을 연결하는 연결 부품을 조립하여 가구를 조립하는 가구 조립 로봇으로서,A furniture assembly robot that assembles furniture by assembling a plurality of frames and connecting parts connecting each of the plurality of frames,
    상기 복수의 프레임을 조립하는 작업 공간을 형성하는 기대;a base forming a work space for assembling the plurality of frames;
    상기 기대에 설치되는 복수의 로봇 암;a plurality of robot arms installed on the base;
    상기 로봇 암에 설치되어 상기 복수의 프레임 중 적어도 일부를 파지하는 파지부; 및a gripper installed on the robot arm to grip at least a portion of the plurality of frames; and
    상기 복수의 로봇 암 및 상기 복수의 로봇 암 각각에 설치된 파지부의 동작을 제어하는 컨트롤러를 포함하고,Comprising a plurality of robot arms and a controller that controls the operation of a gripper installed on each of the plurality of robot arms,
    상기 컨트롤러는,The controller is,
    상기 가구를 조립하기 위한 상기 복수의 로봇 암의 모션 정보 및 조립 순서 정보를 포함하는 작업 템플릿에 의해 상기 프레임의 조립을 수행하도록 상기 복수의 로봇 암 및 상기 파지부의 동작을 제어하는, 가구 조립 로봇.A furniture assembly robot that controls the operation of the plurality of robot arms and the gripping portion to perform assembly of the frame by a work template including assembly sequence information and motion information of the plurality of robot arms for assembling the furniture. .
  2. 제1항에 있어서,According to paragraph 1,
    상기 컨트롤러는, 상기 가구의 조립 과정에서 상기 복수의 로봇 암이 상기 가구 조립을 수행할 수 없는 제한 조건을 설정하고, 상기 제한 조건을 회피하도록 상기 작업 템플릿을 수정 또는 생성하는, 가구 조립 로봇.The controller sets a restriction condition under which the plurality of robot arms cannot perform the furniture assembly during the furniture assembly process, and modifies or creates the work template to avoid the restriction condition.
  3. 제2항에 있어서,According to paragraph 2,
    상기 제한 조건은 상기 작업 공간의 크기에 따른 공간적 제한, 상기 복수의 로봇 암 각각의 파지 상태 및 상기 복수의 로봇 암 각각에 설치되는 파지부의 종류 중 적어도 하나 이상에 따라 설정되는, 가구 조립 로봇.The limiting condition is set according to at least one of a spatial limitation according to the size of the work space, a gripping state of each of the plurality of robot arms, and a type of gripper installed in each of the plurality of robot arms. A furniture assembly robot.
  4. 제2항에 있어서,According to paragraph 2,
    상기 컨트롤러는, 상기 제한 조건에 해당하는 경우에, 상기 복수의 로봇 암 중 어느 하나의 로봇 암이 파지하고 있는 상기 복수의 프레임 중 적어도 일부를 릴리스(release)한 후 파지 위치를 변경하여 다시 파지하거나, 상기 복수의 로봇 암 중 다른 하나의 로봇 암이 파지하도록 제어하는, 가구 조립 로봇.When the limiting condition is met, the controller releases at least a portion of the plurality of frames held by one of the plurality of robot arms and then changes the gripping position to grip them again. , A furniture assembly robot that controls another robot arm among the plurality of robot arms to grip.
  5. 제1항에 있어서,According to paragraph 1,
    상기 컨트롤러는, 상기 파지부가 상기 복수의 프레임 중 적어도 일부를 파지할 경우 상기 연결 부품이 상기 프레임에 최대한 다수가 삽입되도록 상기 작업 템플릿을 생성하는, 가구 조립 로봇.The controller is a furniture assembly robot that generates the work template so that as many of the connecting parts as possible are inserted into the frames when the gripping unit grips at least a portion of the plurality of frames.
  6. 제1항에 있어서,According to paragraph 1,
    상기 컨트롤러는, 서로 다른 프레임을 조립할 때 상기 서로 다른 프레임 중 어느 하나의 프레임에 형성된 홀이 외부로 노출되지 않는 경우, 상기 어느 하나의 프레임을 회전시켜 상기 홀을 외부로 노출시키는 작업 템플릿을 생성하는, 가구 조립 로봇.When assembling different frames, if a hole formed in one of the different frames is not exposed to the outside, the controller generates a work template that exposes the hole to the outside by rotating the one frame. , furniture assembly robot.
  7. 제1항에 있어서,According to paragraph 1,
    상기 컨트롤러는, 서로 다른 프레임을 조립할 때 상기 서로 다른 프레임 중 어느 하나에 조립된 연결 부품을 다른 하나의 프레임에 형성된 홀에 펙인홀 방식으로 삽입하도록 상기 복수의 로봇 암의 동작을 제어하고,When assembling different frames, the controller controls the operation of the plurality of robot arms to insert a connection part assembled in one of the different frames into a hole formed in the other frame in a peck-in-hole manner,
    상기 펙인홀 방식은 상기 연결 부품을 상기 홀에 삽입하기 위하여 가압하는 동시에 상기 홀의 위치를 탐색하기 위하여 소정의 궤적으로 이동시키는, 가구 조립 로봇.The pick-in-hole method is a furniture assembly robot that presses the connecting part to insert it into the hole and moves it along a predetermined trajectory to search for the location of the hole.
  8. 제7항에 있어서,In clause 7,
    상기 컨트롤러는, 서로 다른 프레임을 연결할 때 상기 서로 다른 프레임 중 어느 하나에 조립된 연결 부품의 개수를 탐지하고, 탐지된 상기 연결 부품의 개수에 따라 상기 복수의 로봇 암의 동작을 제어하는, 가구 조립 로봇.The controller detects the number of connection parts assembled in any one of the different frames when connecting different frames, and controls the operation of the plurality of robot arms according to the number of the detected connection parts, furniture assembly. robot.
  9. 제8항에 있어서,According to clause 8,
    상기 컨트롤러는, 상기 홀에 삽입되는 상기 연결 부품이 2개일 경우 상기 연결 부품이 위글(wiggle) 모션을 하면서 상기 소정의 궤적으로 이동하는 이중 펙인홀 방식을 수행하도록 상기 복수의 로봇 암의 동작을 제어하는, 가구 조립 로봇.The controller controls the operation of the plurality of robot arms to perform a double pick-in-hole method in which, when there are two connecting parts inserted into the hole, the connecting parts move along the predetermined trajectory while making a wiggle motion. A furniture assembly robot.
  10. 제9항에 있어서,According to clause 9,
    상기 컨트롤러는, 상기 홀에 삽입되는 상기 연결 부품이 3개 이상일 경우 상기 펙인홀 방식 및 상기 이중 펙인홀 방식을 조합하여 상기 연결 부품을 상기 홀에 삽입하도록 상기 복수의 로봇 암의 동작을 제어하는, 가구 조립 로봇.The controller controls the operation of the plurality of robot arms to insert the connecting parts into the hole by combining the pecking-in-hole method and the double pecking-in-hole method when there are three or more connecting parts inserted into the hole. Furniture assembly robot.
  11. 제7항에 있어서,In clause 7,
    상기 연결 부품은 나사를 포함하고,The connecting part includes a screw,
    상기 컨트롤러는, 상기 나사의 체결 시 상기 복수의 로봇 암 중 적어도 하나 이상이 드릴 모듈을 파지하고, 상기 드릴 모듈을 파지하지 않은 다른 로봇 암은 상기 프레임들을 파지하여 고정하도록 상기 복수의 로봇 암의 동작을 제어하는, 가구 조립 로봇.The controller operates the plurality of robot arms so that when the screw is tightened, at least one of the plurality of robot arms grasps the drill module, and the other robot arm that does not grip the drill module grasps and fixes the frames. Controlling a furniture assembly robot.
  12. 제1항에 있어서,According to paragraph 1,
    상기 복수의 로봇 암 각각은 다관절 로봇 암이고, Each of the plurality of robot arms is an articulated robot arm,
    상기 컨트롤러는, 상기 작업 공간의 크기에 따른 공간적 제한에 의해 상기 복수의 로봇 암이 상기 가구 조립을 수행할 수 없는 제한 조건을 설정하고, 상기 제한 조건에 해당하지 않는 상기 다관절 로봇 암의 관절 해를 계산하는, 가구 조립 로봇.The controller sets a limiting condition under which the plurality of robot arms cannot perform the furniture assembly due to spatial limitations according to the size of the work space, and the joint solution of the multi-joint robot arm that does not correspond to the limiting condition A furniture assembly robot that calculates.
  13. 제12항에 있어서,According to clause 12,
    상기 제한 조건에 해당하지 않는 상기 다관절 로봇 암의 상기 관절 해는 조작도(manipulability) 및 관절 제한(joint limit)의 비용함수를 경사 하강법(gradient descent)에 의해 계산되는, 가구 조립 로봇.The joint solution of the articulated robot arm that does not meet the limiting conditions is calculated by gradient descent using the cost function of manipulability and joint limit.
  14. 제12항에 있어서,According to clause 12,
    상기 컨트롤러는, 상기 다관절 로봇 암의 동작 시에 변화된 관절 해가 상기 제한 조건을 회피하는지 판단하고,The controller determines whether the changed joint solution avoids the limiting condition during operation of the articulated robot arm,
    상기 관절 해가 상기 제한 조건을 회피한다면 상기 관절 해를 탐색 스택에 저장 및 선택하는, 가구 조립 로봇.A furniture assembly robot that stores and selects the joint solution in a search stack if the joint solution avoids the constraint condition.
  15. 제14항에 있어서,According to clause 14,
    상기 컨트롤러는, 상기 관절 해가 상기 제한 조건에 해당한다면, 상기 탐색 스택에 저장된 관절 해가 n(n은 2 이상의 소정의 자연수)개를 초과하는지 판단하고,The controller determines whether the joint solution stored in the search stack exceeds n (where n is a predetermined natural number of 2 or more) if the joint solution satisfies the constraint condition,
    상기 탐색 스택에 저장된 관절 해가 n개를 초과하는 경우 상기 탐색 스택에서 최근에 저장된 n개의 관절 해를 삭제하고, 가장 최근의 관절 해를 선택하고,If the number of joint solutions stored in the search stack exceeds n, delete n recently stored joint solutions from the search stack and select the most recent joint solution,
    상기 탐색 스택에 저장된 관절 해가 n개를 초과하지 않는 경우 상기 다관절 로봇 암의 동작 시에 변화된 관절 해가 상기 제한 조건에 해당하는지 다시 판단하는, 가구 조립 로봇.A furniture assembly robot that re-determines whether a joint solution changed during operation of the articulated robot arm meets the limitation condition when the number of joint solutions stored in the search stack does not exceed n.
  16. 제1항에 있어서,According to paragraph 1,
    상기 컨트롤러는, 서로 다른 프레임의 조립이 수행된 후 상기 서로 다른 프레임을 파지하는 로봇 암을 소정의 궤적으로 이동시키면서 상기 로봇 암의 말단에 가해지는 힘을 계산하고,The controller calculates a force applied to the end of the robot arm while moving the robot arm holding the different frames along a predetermined trajectory after assembly of the different frames is performed,
    상기 로봇 암의 말단에 가해지는 힘이 소정의 기준 값에 도달하지 않는 경우 상기 서로 다른 프레임의 조립이 실패한 것으로 판단하는, 가구 조립 로봇.A furniture assembly robot that determines that the assembly of the different frames has failed when the force applied to the end of the robot arm does not reach a predetermined reference value.
  17. 제16항에 있어서,According to clause 16,
    상기 컨트롤러는, 상기 서로 다른 프레임의 조립이 실패한 경우 상기 서로 다른 프레임의 조립을 다시 수행하는, 가구 조립 로봇.The controller is a furniture assembly robot that re-performs the assembly of the different frames when the assembly of the different frames fails.
  18. 로봇을 이용하여 복수의 프레임과 상기 복수의 프레임 각각을 연결하는 연결 부품을 조립하는 가구 조립 자동화 방법으로서, A furniture assembly automation method that uses a robot to assemble a plurality of frames and connection parts connecting each of the plurality of frames,
    조립 과정에서 가구 조립을 수행할 수 없는 제한 조건을 설정하는 단계; Setting constraints under which furniture assembly cannot be performed during the assembly process;
    상기 제한 조건을 회피하도록 작업 템플릿을 생성하는 단계; 및 creating a task template to avoid the constraint condition; and
    상기 로봇은 상기 작업 템플릿에 따라서 프레임의 조립을 수행하는 단계;를 포함하는,Comprising: the robot performing assembly of the frame according to the work template,
    로봇을 이용한 가구 조립 방법.How to assemble furniture using a robot.
  19. 제18항에 있어서,According to clause 18,
    서로 다른 프레임을 조립할 때 서로 다른 프레임 중 어느 하나의 프레임에 조립된 연결 부품을 다른 하나의 프레임에 형성된 홀에 펙인홀 방식으로 삽입하는 것을 포함하는 것인,When assembling different frames, it includes inserting the connecting parts assembled in one of the different frames into a hole formed in the other frame in a peck-in-hole manner,
    로봇을 이용한 가구 조립 방법.How to assemble furniture using a robot.
  20. 제18항에 있어서,According to clause 18,
    상기 로봇은 다관절 암을 포함하는 것이고,The robot includes an articulated arm,
    상기 제한 조건을 회피하도록 작업 템플릿을 생성하는 것은,Creating a task template to avoid the above constraints involves:
    다관절 로봇 암의 조작도 및 관절 제한의 비용함수를 경사 하강법에 의해 계산하여 상기 제한 조건에 해당하지 않는 관절 해를 계산하는 단계를 포함하는 것인,Comprising the step of calculating the manipulability of the articulated robot arm and the cost function of the joint limitations by gradient descent to calculate a joint solution that does not correspond to the limitation conditions,
    로봇을 이용한 가구 조립 방법.How to assemble furniture using a robot.
PCT/KR2023/004789 2022-04-25 2023-04-10 Robot for assembling furniture WO2023211007A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2022-0050579 2022-04-25
KR20220050579 2022-04-25
KR1020230042190A KR20230151462A (en) 2022-04-25 2023-03-30 Robot For Assembling Furniture
KR10-2023-0042190 2023-03-30

Publications (1)

Publication Number Publication Date
WO2023211007A1 true WO2023211007A1 (en) 2023-11-02

Family

ID=88519293

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2023/004789 WO2023211007A1 (en) 2022-04-25 2023-04-10 Robot for assembling furniture

Country Status (1)

Country Link
WO (1) WO2023211007A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008207262A (en) * 2007-02-23 2008-09-11 Matsushita Electric Works Ltd Manipulator system
JP2018144223A (en) * 2017-03-06 2018-09-20 キヤノン株式会社 Teaching method for teaching motion to plurality of robots and teaching device to be used in the same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008207262A (en) * 2007-02-23 2008-09-11 Matsushita Electric Works Ltd Manipulator system
JP2018144223A (en) * 2017-03-06 2018-09-20 キヤノン株式会社 Teaching method for teaching motion to plurality of robots and teaching device to be used in the same

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
BAEK SEUNG-HYEOK, SEONGHO SHIN, RAE- YOUNG KANG, SEONGJU LEE, JOO SOON LEE: "Item assembly AI - Robot work plan creation system based on assembly instructions", JOURNAL OF ROBOTS AND HUMANS, KOREAN SOCIETY OF ROBOTICS., KOREA, vol. 18, no. 1, 1 January 2021 (2021-01-01), Korea, pages 3 - 15, XP093009202, ISSN: 1738-4796 *
HAESEONG LEE, SEUNGYEON KIM, SUHAN PARK, KEUNWOO JANG, JAEHEUNG PARK: "Control Strategy to Overcome Jamming in Bolt Fastening", THE 16TH KOREA ROBOTICS SOCIETY ANNUAL CONFERENCE; MAY 19-22, 2021, KOREA ROBOTICS SOCIETY, KOREA, 20 May 2021 (2021-05-20) - 22 May 2021 (2021-05-22), Korea, pages 1 - 2, XP009550532 *
JEONG HYEON-CHEOL: "Verification and optimization of assembly sequence for IKEA furniture assembled by combining holes and pins", THESIS HANYANG UNIVERSITY, 1 February 2021 (2021-02-01), pages 1 - 36, XP093104364 *
KIM, MYEONGSOO ET AL.: "Static Equilibrium Verification Algorithm for Detachable Object about Multiple Grasp Points", THE 16TH KOREA ROBOTICS SOCIETY ANNUAL CONFERENCE; MAY 19-22, 2021, KOREA ROBOTICS SOCIETY, KOREA, 20 May 2021 (2021-05-20) - 22 May 2021 (2021-05-22), Korea, pages 1 - 2, XP009550531 *
LEE HAESEONG, PARK SUHAN, JANG KEUNWOO, KIM SEUNGYEON, PARK JAEHEUNG: "Contact State Estimation for Peg-in-Hole Assembly Using Gaussian Mixture Model", IEEE ROBOTICS AND AUTOMATION LETTERS, vol. 7, no. 2, 1 April 2022 (2022-04-01), pages 3349 - 3356, XP093104376, DOI: 10.1109/LRA.2022.3146949 *
LEE HAESEONG; LEE SANG YUP; JANG KEUNWOO; KIM SEUNGYEON; KO JONGSEONG; PARK JAEHEUNG: "Search trajectory with twisting motion for dual peg-in-hole assembly", INTELLIGENT SERVICE ROBOTICS, SPRINGER BERLIN HEIDELBERG, BERLIN/HEIDELBERG, vol. 14, no. 4, 1 September 2021 (2021-09-01), Berlin/Heidelberg , pages 597 - 609, XP037583505, ISSN: 1861-2776, DOI: 10.1007/s11370-021-00382-7 *
SU-HAN ET AL.: "Furniture Assembly Robot - Flexible Assembly System Using Multi-Robots", KOREA ROBOTICS SOCIETY REVIEW, vol. 18, no. 1, January 2021 (2021-01-01), pages 16 - 25 *

Similar Documents

Publication Publication Date Title
EP2868441A1 (en) Robot control device, robot system, and robot
Nguyen et al. Adaptive control of a Stewart platform‐based manipulator
Kofman et al. Teleoperation of a robot manipulator using a vision-based human-robot interface
Xu et al. Control system of the self-mobile space manipulator
Song et al. Electric connector assembly based on vision and impedance control using cable connector-feeding system
US20200276714A1 (en) Systems, methods and associated components for robotic manipulation of physical objects
Suomalainen et al. Improving dual-arm assembly by master-slave compliance
Gorjup et al. Combining compliance control, cad based localization, and a multi-modal gripper for rapid and robust programming of assembly tasks
Nechyba et al. Human-robot cooperation in space: SM/sup 2/for new space station structure
Li Hybrid control approach to the peg-in hole problem
WO2023211007A1 (en) Robot for assembling furniture
Kim et al. Papras: Plug-and-play robotic arm system
Rojas et al. Analysis of autonomous cooperative assembly using coordination schemes by heterogeneous robots using a control basis approach
Mu et al. Cartesian space robot manipulator clamping movement in ROS simulation and experiment
Riedel et al. Grasp planning for a reconfigurable parallel robot with an underactuated arm structure
Wittmann et al. Robotic framework for autonomous assembly: a report from the robothon 2021 grand challenge
KR20230151462A (en) Robot For Assembling Furniture
Rastegarpanah et al. Autonomous vision-guided bi-manual grasping and manipulation
Koveos et al. A fast robot deployment strategy for successful snap assembly
Najjari et al. Integrated sensor-based control system for a flexible assembly cell
Topp et al. A knowledge based approach to user support for robot programming
Hyonyoung et al. Development of unit robot skill based task recipe for task planning
Chaves-Arbaiza et al. Smart placement of a two-arm assembly for an everyday object manipulation humanoid robot based on capability maps
Mizuuchi et al. Adaptive pick-and-place behaviors in a whole-body humanoid robot with an autonomous layer based on parallel sensor-motor modules
Rojas et al. Strategies, controllers, and coordination: Bi-manual snap assembly automation

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23796656

Country of ref document: EP

Kind code of ref document: A1